So the red line here is my synthesised 'block' line.
The idea is when this goes low, I'll shut down AS to the board, that should cause DSP_CS to go high sooner, closer mimicking the native timing.
Here's the first attempt at applying it to the output:
Here we see the difference between real_AS (green) from the 030 and the AS line the board sees (white). This doesn't work, though. There's a delay between this happening and the CS line going high. Perhaps I need to wind back another half clock cycle.
The highlighted green delay between real_AS and AS that the board sees at the start is there to stop that little 'runt' DSACK activation (see earlier). Perhaps this is also a problem and should happen on a different edge, or even be removed with this DTACK fix?
There are a few next steps at least.
BW.
You will not be able to post if you are still using Microsoft email addresses such as Hotmail etc
See here for more information viewtopic.php?f=20&t=7296
See here for more information viewtopic.php?f=20&t=7296
BOOKMARK THIS PAGE !
https://www.exxosforum.co.uk:8085/IP_CHECK/
You can unban yourself if needed. It also sends me reports to investigate the ban.
https://www.exxosforum.co.uk:8085/IP_CHECK/
You can unban yourself if needed. It also sends me reports to investigate the ban.
DO NOT USE MOBILE / CGNAT DEVICES WHERE THE IP CHANGES CONSTANTLY!
At this time, it is unfortunately not possible to whitelist users when your IP changes constantly.
You may inadvertently get banned because a previous attack may have used the IP you are now on.
So I suggest people only use fixed IP address devices until I can think of a solution for this problem!
At this time, it is unfortunately not possible to whitelist users when your IP changes constantly.
You may inadvertently get banned because a previous attack may have used the IP you are now on.
So I suggest people only use fixed IP address devices until I can think of a solution for this problem!
DFB1r4 design discussion thread
-
Badwolf
- Site sponsor

- Posts: 3038
- Joined: 19 Nov 2019 12:09
Re: DFB1r4 design discussion thread
You do not have the required permissions to view the files attached to this post.
DFB1 Open source 50MHz 030 and TT-RAM accelerator for the Falcon
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
-
Badwolf
- Site sponsor

- Posts: 3038
- Joined: 19 Nov 2019 12:09
Re: DFB1r4 design discussion thread
Nope, no joy. Adjusting the AS holdoff a little bit (switched clock edges) reduces the real_AS to AS delay, but there's still a long gap between AS asserting an DSP_CS going low. That's very odd. It's more than one cycle lost.
No combination of AS holdoff and the DSP write AS block have made any difference to it working. When I get the timing so it can read the registers, it can't write the bloody things.
I can't see what's wrong with this, bar the odd CS delay mentioned above. The bit highlighted looks completely legitimate to me!
I think that's enough for today. Not sure what's left to try.
BW
No combination of AS holdoff and the DSP write AS block have made any difference to it working. When I get the timing so it can read the registers, it can't write the bloody things.
I can't see what's wrong with this, bar the odd CS delay mentioned above. The bit highlighted looks completely legitimate to me!
I think that's enough for today. Not sure what's left to try.
BW
You do not have the required permissions to view the files attached to this post.
DFB1 Open source 50MHz 030 and TT-RAM accelerator for the Falcon
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
-
Badwolf
- Site sponsor

- Posts: 3038
- Joined: 19 Nov 2019 12:09
Re: DFB1r4 design discussion thread
Couple of things tried today.
* I've hard-wired the CPU to the motherboard clock so no CPLD skew delays: absolutely no difference at all.
* I've stopped the CPU switching to 16MHz, by blocking access to the bus control register: exactly the same at 8MHz, but in slow motion!
The two cycle delay on DSP_CS being asserted it still there. Very odd. I think that's got to be my next big line of attack, although I might try slowing down the response to DSACK first and get the one working board back out and do some measuring.
BW
* I've hard-wired the CPU to the motherboard clock so no CPLD skew delays: absolutely no difference at all.
* I've stopped the CPU switching to 16MHz, by blocking access to the bus control register: exactly the same at 8MHz, but in slow motion!
The two cycle delay on DSP_CS being asserted it still there. Very odd. I think that's got to be my next big line of attack, although I might try slowing down the response to DSACK first and get the one working board back out and do some measuring.
BW
DFB1 Open source 50MHz 030 and TT-RAM accelerator for the Falcon
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
-
exxos
- Site Admin

- Posts: 28217
- Joined: 16 Aug 2017 23:19
- Location: UK
Re: DFB1r4 design discussion thread
Is it valid timing to set write before as or cs ?
-
Badwolf
- Site sponsor

- Posts: 3038
- Joined: 19 Nov 2019 12:09
Re: DFB1r4 design discussion thread
Yeah, that's normal. It should be valid when AS goes low. I was worried about it deserting too soon, but that doesn't seem to be the problem.
BW
DFB1 Open source 50MHz 030 and TT-RAM accelerator for the Falcon
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
-
Badwolf
- Site sponsor

- Posts: 3038
- Joined: 19 Nov 2019 12:09
Re: DFB1r4 design discussion thread
Well I drew enough blanks on this that I got fed up and did some software work this week.
I fell back to probing the GAL outputs and trying to mimic them in the CPLD. Sure enough, they all seem to be triggering when they ought (with the possible exception of the AS1DLY line, which I can't quite wrap my head around, but there are ways around that by slowing things down).
So back to getting the only known working board out and plugging it in (and sure enough it still works). Here's the trace.
Now, this is also slower than on stock (like it's running in slow-mo), but the only other obvious difference is that AS goes low some considerable time *after* the clock does (20ns to be exact). My timings since are a lot tighter. I *think* this is caused by the clock line actually running a bit behind the Falcon clock on this board, for whatever reason.
So previously my efforts were all about trying to reduce clock skew and if anything having the CPU clock running slightly ahead of the mobo's clock such that once it's run through the CPLD lines fire at the right time (Stephen's sample, invert and delay technique). That really didn't work, but I wonder if actually intentionally delaying it would make any difference?
Anyway, we're getting very close to the last roll of the dice here. The only other thing I could think to try would be to lift the GAL's DSP_CS pin and try to supply that line myself.
BW
I fell back to probing the GAL outputs and trying to mimic them in the CPLD. Sure enough, they all seem to be triggering when they ought (with the possible exception of the AS1DLY line, which I can't quite wrap my head around, but there are ways around that by slowing things down).
So back to getting the only known working board out and plugging it in (and sure enough it still works). Here's the trace.
Now, this is also slower than on stock (like it's running in slow-mo), but the only other obvious difference is that AS goes low some considerable time *after* the clock does (20ns to be exact). My timings since are a lot tighter. I *think* this is caused by the clock line actually running a bit behind the Falcon clock on this board, for whatever reason.
So previously my efforts were all about trying to reduce clock skew and if anything having the CPU clock running slightly ahead of the mobo's clock such that once it's run through the CPLD lines fire at the right time (Stephen's sample, invert and delay technique). That really didn't work, but I wonder if actually intentionally delaying it would make any difference?
Anyway, we're getting very close to the last roll of the dice here. The only other thing I could think to try would be to lift the GAL's DSP_CS pin and try to supply that line myself.
BW
You do not have the required permissions to view the files attached to this post.
DFB1 Open source 50MHz 030 and TT-RAM accelerator for the Falcon
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
-
exxos
- Site Admin

- Posts: 28217
- Joined: 16 Aug 2017 23:19
- Location: UK
Re: DFB1r4 design discussion thread
Was thinking could you do a new GAL to get it to behave better ?Badwolf wrote: 07 Nov 2021 21:17 Anyway, we're getting very close to the last roll of the dice here. The only other thing I could think to try would be to lift the GAL's DSP_CS pin and try to supply that line myself.
-
Steve
- Posts: 3289
- Joined: 15 Sep 2017 11:49
Re: DFB1r4 design discussion thread
Yes but if he does a new GAL, that complicates making a 'stock' 'compatible' accelerator doesn't it? Of course the GAL could be included but still...
-
Badwolf
- Site sponsor

- Posts: 3038
- Joined: 19 Nov 2019 12:09
Re: DFB1r4 design discussion thread
It does feel like a proper Hail Mary though as I can't find anything at all wrong with what U44's doing. And it works with the first rev3 board!
It looks fine on both the scope and the logic analyser and, unless I've misunderstood the data sheet, the final communication with the DSP should be completely asynchronous anyway without any system clock dependence at all!
I wonder if the DSP itself is in some locked state, not getting properly reset or something?
BW
DFB1 Open source 50MHz 030 and TT-RAM accelerator for the Falcon
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
-
Badwolf
- Site sponsor

- Posts: 3038
- Joined: 19 Nov 2019 12:09
Re: DFB1r4 design discussion thread
*Twitching*
OK, that might not look like much, and it's not 100% reliable, but that's the most I've got out of *any* card bar this one freak one that works.
This is *intentionally* giving the external CPU a delayed clock. Pretty haphazardly at the moment -- gating it through the negedge of a 50MHz oscillator, but FFS! Who'd have thought running the external CPU *behind* the mainboard was part of the answer? :roll:
EDIT: I made a mistake, it wasn't this. I checked and I'd typo'd in that logic so it certainly *wasn't* do what's above. I'm not actually sure *what* it is yet. Investigating & trying to repeat.
BW
OK, that might not look like much, and it's not 100% reliable, but that's the most I've got out of *any* card bar this one freak one that works.
This is *intentionally* giving the external CPU a delayed clock. Pretty haphazardly at the moment -- gating it through the negedge of a 50MHz oscillator, but FFS! Who'd have thought running the external CPU *behind* the mainboard was part of the answer? :roll:
EDIT: I made a mistake, it wasn't this. I checked and I'd typo'd in that logic so it certainly *wasn't* do what's above. I'm not actually sure *what* it is yet. Investigating & trying to repeat.
BW
You do not have the required permissions to view the files attached to this post.
DFB1 Open source 50MHz 030 and TT-RAM accelerator for the Falcon
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
Smalliermouse ST-optimised USB mouse adapter based on SmallyMouse2
FrontBench The Frontier: Elite 2 intro as a benchmark
Who is online
Users browsing this forum: CCBot, trendiction [bot] and 28 guests