为什么在Z80上添加4个循环?
我将此ALU方框图用作学习材料: 我对电子学不熟悉。我目前认为,需要一个时钟周期来将数据从寄存器或锁存器移动到另一个寄存器或锁存器,最终通过逻辑门网络 以下是我对发生的事情的理解,并补充:为什么在Z80上添加4个循环?,z80,cpu-cycles,Z80,Cpu Cycles,我将此ALU方框图用作学习材料: 我对电子学不熟悉。我目前认为,需要一个时钟周期来将数据从寄存器或锁存器移动到另一个寄存器或锁存器,最终通过逻辑门网络 以下是我对发生的事情的理解,并补充: 循环1:将寄存器移动到内部闭锁 循环2:将低位半字节内部闩锁移动到内部结果闩锁(通过ALU) 第3次循环,平行进行: 将高位半字节内部闩锁移动到目标寄存器(通过ALU) 将内部结果锁存器移动到寄存器 我认为操作周期3是并行完成的,因为有两个4位总线(用于高位和低位半字节),寄存器总线似乎是8位。Per
- 循环1:将寄存器移动到内部闭锁
- 循环2:将低位半字节内部闩锁移动到内部结果闩锁(通过ALU)
- 第3次循环,平行进行:
- 将高位半字节内部闩锁移动到目标寄存器(通过ALU)
- 将内部结果锁存器移动到寄存器
因此,它似乎主要是关于内存接口来读取操作码,而不是实际执行加法-解码和执行完全发生在时钟状态T3和T4内。考虑到z80,执行8位加法需要两次操作。这很可能解释了使用两个循环的原因。哦,天哪!我认为我的第一个周期实际上是两个周期。由于寄存器总线是8位的,它不能同时加载2个寄存器!是吗?T3用来解码指令,T4用来执行指令。因此,加法在一个时钟周期内进行。不,Z-80有一个8位ALU和一个16位加法器。上面的4位alu链路是死链路。@PeterCamilleri不,Z80有一个4位alu。链接已修复。如果你不相信这个链接,请参阅的第10页-这是直接从设计师口中说出来的。