💦 CREATE AND FUCK YOUR OWN AI CUMSLUT 🔥 TRY NOW ♥
Create AI Cumsluts 💦
February 15, 2020

RAM and bus timing — 6502 part 6

So here's part 6 of the 6502 series. As you can see from the comments and edit I made to the previous post, I decided to split this into two videos, the first of which is here.

That means part 7 will basically be everything after 33:00 in the previous post's video. I plan to make part 7 public in about 2 weeks to keep the public releases spaced more evenly.

I plan to flip this video public in the morning, so if you notice any big goofs, please let me know! I made a lot of changes at the last minute, so hopefully all is well.

RAM and bus timing (YouTube)

Comments (7)

B
BigDaddy MRI · February 16, 2020

I’m using ~RD for OE on both the EPROM and the SRAM on my Z80 project. It works well because the ~RD only becomes active when the addresses are stable. I’m using ~WR (write) for the SRAM, and the same is true for the timing, the address and data bus are both stable at ~WR. Of course, the Z80 has separate ~RD and ~WR signal lines, so memory is easy to interface. I loved the timing tutorial, it was a great logical look at the timing signals, and I did review the Z80 timing as a good refresher. I’m running at 2.5MHz, so have a shorter timing for SRAM, and had to have a close look at it’s timing diagrams. But I think it is OK for this project.

J
Jaap Verhoeven · February 16, 2020

I have been studying that 65C02 timing diagram for over a year now, for my VIC20 @ 8mhz project (my first of this scale), and I bumped into the same ambiguities. I knew 90% already, the other 10% really cleared up some things for me. Great in-depth explanation!

S
Scritch · February 15, 2020

Those timing diagrams are terrifying... I'm in the planning stages of my own retro PC (z80 based) and honestly didn't know how I was gonna get through verifying the timings and everything. This video has given me I think a good primer into how to understand those diagrams, but of course the proof will be in the doing it myself when the time comes. :3 Thanks Ben ^.^

C
Chris Bates-Keegan · February 15, 2020

Thanks for this video and the whole series. One super quick question about the tADS and the tAH values: in the video you seem to use the 14MHz values from the RAM data sheet; 30ns for tADS and 10ns for tAH. But would it not be the case that tADS would be significantly higher when running @1Mhz (@2Mhz the datasheet says 150ns, so presumably ~300ns)? That would eat a fair way into the 500ns clock pulse switch, or am I missing something? Not enough to throw off the timing for the read/writes, but the 30 on the diagram was eating me up through the video :/

B
Ben Eater · February 15, 2020

The way I read it, the different columns are based on the voltage the chip is run at. So it's not that the times get longer if you run the clock slower; the times get longer if you run at a lower voltage, and because the times get longer, the clock must get slower. In other words, at 1.8 volts, tADS is max 150ns, but the clock cycle time, tCYC, is a min of 500ns, so the clock can only run at 2Mhz. But at 5 volts, tADS is max 30ns and tCYC is min of 70ns, so the clock *can* run up to 14Mhz, but it doesn't have to go that fast because tCYC is only a minimum. Hopefully that makes sense

T
Tony Bell · February 15, 2020

Thanks Ben... things are always better the 2 nd time i look at them... like the inclusion about propagation delays on the logic gates.... off to do some scoping around and see this timing in action....

A
Andrew Cornwall · February 15, 2020

No big goofs, but maybe add a quick comment about why we care about RAM timing but didn't worry when hooking the EPROM up?