In the above timing diagram for opcode fetch machine cycle , can we not do the entire operation in just 2 T states like this : In T1 state we first latch the lower order address by making ALE high for some time .Then we make READ signal low in the same clock period .Data is available on lower order multiplexed address/data bus .At this point we make enable input of instruction register(IR) active so that at the end of first clock cycle the data will be loaded into the IR.Then the process of decoding can be done in T2 state i-e., Second clock cycle . Doing the fetch part in 3 clock cycles seems unnecessary to me and a waste of time .in this timing diagram opcode 4FH is being fetched from memory location 2005H


You also have to take the memory into account.

Let's assumes the data is clocked into the CPU on the falling edge of T2. In your scheme the memory must do an address decode and output the data before the end of T2.

Looking at the diagram it seems the data is clocked in halfway T3. Probably on the rising clock edge in the middle of T3. Your memory than has to be faster. My estimate is that the memory then has to be about four times as fast.

Also this idea "Then the process of decoding can be done in T2 state" is using non-stable input data. You are describing an input latch. This is not a good idea.
You are also assuming that the data from the memory can go trough the decoder logic and the result is available at the end of T2. Thus you now have pushed all the decoder processing which is done in T4 also in T2.

Bottom line: Throughout you 'optimizations' you ignore the signal propagation times. But signals need some time to rise, fall, go from/to tri-state, pass through logic and become stable.

| improve this answer | |
  • \$\begingroup\$ Just a note from a wiki on it: "enhanced 8051 silicon IP cores now run at one clock cycle per machine cycle, and have clock frequencies of up to 450 MHz." \$\endgroup\$ – jonk Apr 12 at 8:45
  • \$\begingroup\$ @jonk: We're talking about the 8085 here, not the 8051. \$\endgroup\$ – Dave Tweed Apr 12 at 10:23
  • \$\begingroup\$ Ah. I don't recall seeing a boosted 8085. I still have a box a parts for the 8085 (vast improvement over the 8080A, which I also still have parts for ) Thanks for the catch. Boosted z80s definitely exist, though. Had there been interest, the 8085 could be boosted. Even I could set down and do that, though I would spend a month or more thinking through it to detail out the design. \$\endgroup\$ – jonk Apr 12 at 10:41

Not the answer you're looking for? Browse other questions tagged or ask your own question.