EEVblog #1249 - TUTORIAL: Timing Diagrams Explained

preview_player
Показать описание
A tutorial on how to read timing diagrams. An essential skill for designing and understanding digital logic, FPGA and microcontroller designs and datasheets.

Bitcoin Donations: 38y7DE8HEHNj8fGDtUr4PkCn9nWxiorvvy
Litecoin: ML7oQokTwB38bgzzjLDbRV97HKAHuwRfHA
Ethereum: 0x11AceA38DCA9DbFfB4F35f3F746af65F9dED28ce

Support the EEVblog through Patreon!

Buy anything through that link and Dave gets a commission at no cost to you.

Stuff I recommend:

Donate With Bitcoin & Other Crypto Currencies!

Рекомендации по теме
Комментарии
Автор

Once again a topic that I would have killed for when I was a student :)
Keep them coming, you're doing an amazing job. EE is still something there's very little real teaching material online that's RELIABLE and coming from a real EE :)

Mtaalas
Автор

Love the distilled knowledge in this video. Years of experience summed up in less than an hour.

shifter
Автор

9:11 That's called a zero se-tup time, so that means that there's zero set-up time. Thanks Dave! ;)

Radiofreak
Автор

Thanks Dave, you had the right timing :D for this video

JakobWierzbowski
Автор

did anyone notice how many of Daves (fundamentals) videos start with a (lengthy) justification, why something should be understood? It's like the target group of those videos is a guy who just said "Nah, I don't read datasheets.... I just put some wires together and if it doesn't work, I'll call it a piece of crap.... Timing diagrams are just show off for fancy people"

Schwuuuuup
Автор

Dave, you should give Shenzen IO a try. It'd be funny to do a "let's play" but it actually has some quality engineering concepts to go through. I mention it here because the goal of the game is to match a data output signal using different chips and assembly language.

jamisonw.
Автор

This is the kind of content that got me into your channel when I was back in high school! Great to see it more of it!

idkEngineering
Автор

perfect timing (no pun intended), I was looking for tutorials. Thanks Dave!

tomservo
Автор

I was just developing some timing diagrams, too! This is perfect

jon
Автор

I don't believe in frequencies above my audio threshold ( DC to 12 kHz ) so reading timing diagrams is easier. ;-)
I'm stuck in the 1980's (CMOS, TTL) era

CaspaB
Автор

Very helpful! I've kinda just been guessing my way through those up till now. Very informative!!

IsaacMorton
Автор

I’m working on a z80 and have got quite far into it but this makes more sense

crazyboycashier
Автор

This is a great explanation, timing is a simple concept but when implemented gets complex very quickly. Its a case of seeing the wood for the trees, I look at some datasheet timing diagrams and my mind just panics! Knowing the very basics mean you can break it down into chunks and find the stuff that is relevant to you and what you want to achieve with a circuit.

markpitt
Автор

This could do with a Part 2 describing pipelined logic comparing, say, hold time outputs of registers to setup times of succeeding registers. It's easy to violate these timings especially if you have long PCB traces. A trap is to feed high speed logic into low speed like a 74F logic feeding 74LS logic. Also, how to deal with meta-stability issues in asynchronous systems.

dogastus
Автор

An excellent fundamentals video, thank you.

rhama
Автор

I still remember the first time I discovered timing diagrams when working with SPI communication between an Arduino and a digital potentiometer. I bought a logic analyzer to study the timings and worked through getting it to work. One of my top moments in learning electronics for sure.

twjonckheere
Автор

This is a perfect video. So much good information. Thank you!

TimeWasted
Автор

Can you please help me with this diagram?

digitalWrite(PIN_CS, 0);
delay(1);
digitalWrite(PIN_WRITE, 0);
delay(1);
digitalWrite(PIN_B0, 0);
digitalWrite(PIN_B1, 1);
digitalWrite(PIN_B2, 0);
digitalWrite(PIN_B3, 1);
digitalWrite(PIN_B4, 0);
digitalWrite(PIN_B5, 0);
digitalWrite(PIN_B6, 0);
digitalWrite(PIN_B7, 0);
digitalWrite(PIN_WRITE, 1);
delay(1);
digitalWrite(PIN_CS, 1);

leoramikam
Автор

Good tutorial as always, Dave. I've been reading timing diagrams for decades. Timing diagrams for microprocessors are fun to look with how they are marked up. They can look quite intimidating to the newbie. Always interesting deciphering address and data bus set up and hold times.

kevincozens
Автор

A nice follow up would be an introduction to reading through a more complex digital circuit made out of logic elements. For ex. a full adder or even something that has flip-flops mixed in.

worroSfOretsevraH