Z80 是一种流行的 8 位处理器,带有 4 位 ALU。
为寄存器实现零标志应该是直截了当的,这将是NOR
寄存器上所有位的逻辑。
类似的东西适用于少量输入。对于 64 位处理器,您无法制作一个NOR
具有 64 个输入的巨大门。扇入会太高。8个晶体管串联。电路电容会很高,从而减慢其他一切。
我可以看到一些其他选项。
- 可以使用 2 级逻辑直接从 8 位结果生成零标志。
- 可以使用 3 级逻辑直接从 8 位结果生成零标志。
- 零标志可以从每个半字节生成,然后放在一起,就像有一个“半”零标志一样。在等待计算高半字节结果时,将使用触发器保存较低的结果。
Ken Shirriff写了一篇关于对 Z80 ALU 进行逆向工程的好文章。然而,当谈到零旗时,他说:
框图中未显示计算奇偶校验、测试零以及检查 4 位值是否小于 10的简单电路。这些值用于设置条件标志。
因此,虽然它们是简单的电路,但我想确切地知道它们是如何实现的,以及它们是否使用了上面提出的任何实现或其他完全不同的实现。