Does anybody know about the special reset of the Z80 processor ?
This has been patented from ZILOG but never really documented except in the patent script.
I think ZILOG developed some ICE (in circuit emulators) for debug purposes of Z80 systems.
It works quite simple and this reset pulse has to be short and exactly during rising edge of T2 only and does only a partial reset of the program counter to address 0. That's maybe the reason why the reset pulse is described to stay for minimum 3 T states in the datasheet to avoid an accidently partial reset. Curious feature, isn't it ? Found this document yesterday on the web.
http://www.primrosebank.net/computers/z ... _reset.htm
Z80 special reset
Re: Z80 special reset
A most interesting read, thanks
what's that Smell.... smells like fresh flux and solder fumes...
- RetroTechie
- Posts: 379
- Joined: Tue Nov 01, 2011 12:16 am
- Location: Hengelo, NL
- Contact:
Re: Z80 special reset
Indeed! (read it earlier this year). Not of much practical use I think, but a local copy did make it into my Z80 documentation...
3 T states is a pretty low number for that, compared to some other CPU's / SoC's. Which you could see as an indicator of the relative 'simplicity' of a Z80. Of course most systems will use a reset pulse that is waaaaayyyyy longer than a few cpu cycles.
Usually with a complex mix of sequential & combinatorial logic like a CPU, a reset needs a number of clock pulses to 'ripple through' such that all affected registers / flip-flops are returned to a defined state.PokeMon wrote:That's maybe the reason why the reset pulse is described to stay for minimum 3 T states in the datasheet to avoid an accidently partial reset.
3 T states is a pretty low number for that, compared to some other CPU's / SoC's. Which you could see as an indicator of the relative 'simplicity' of a Z80. Of course most systems will use a reset pulse that is waaaaayyyyy longer than a few cpu cycles.
Re: Z80 special reset
That's the reason why the Z80 functions properly with simple R/C combination for a reset connected to power. This could result in several fast resets one after eachother if the reset input does not have a schmitt trigger characteristic which the Z80 doesn't have, I think. But in fact there is really no technical reason why the reset pulse has to be quite long - okay you should avoid spikes on the reset for sure. But in the same way as the CPU "stores" a very short NMI pulse to be executed later at the end of the current instruction it would be possible to the same with a short reset pulse, keep it inside the CPU as long as it needs and reset the internal flipflop when reset is completed. As I understood the documents, the reset pulse for minimum 3T states is necessary only to avoid a short reset or distinct it from a regular reset with when the reset occures at a wrong point (during T1 of M1 for example).RetroTechie wrote:3 T states is a pretty low number for that, compared to some other CPU's / SoC's. Which you could see as an indicator of the relative 'simplicity' of a Z80. Of course most systems will use a reset pulse that is waaaaayyyyy longer than a few cpu cycles.
When I think about that modern CPU's have millions or even billions of transistors it wouldn't be hard to realise a reset latch inside.
- 1024MAK
- Posts: 5123
- Joined: Mon Sep 26, 2011 10:56 am
- Location: Looking forward to summer in Somerset, UK...
Re: Z80 special reset
ZX81 Variations
ZX81 Chip Pin-outs
ZX81 Video Transistor Buffer Amp
Standby alert
There are four lights!
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb
Looking forward to summer later in the year.
ZX81 Chip Pin-outs
ZX81 Video Transistor Buffer Amp
Standby alert
There are four lights!
Step up to red alert. Sir, are you absolutely sure? It does mean changing the bulb
Looking forward to summer later in the year.
Re: Z80 special reset
Thanks, this one was an interesting read, too.
http://www.z80.info/zip/ZilogProductSpe ... 29-143.pdf
http://www.z80.info/zip/ZilogProductSpe ... 29-143.pdf