8位CPU和内存读取的时钟周期

问题描述 投票:-1回答:1

8位CPU是否可以在不到3个时钟周期的时间内读取内存?我知道6502可与异步存储器一起使用,但是其他带有时钟存储器的8位CPU呢?我需要一个时钟分频器来使CPU变慢吗?

我的理解是,在周期1:CPU输出一个地址,在周期2:存储器读取该地址,然后给出相应的字节,而在周期3:CPU最终接收字节。这是正确的吗?

verilog emulation cpu 8-bit cpu-cycles
1个回答
0
投票

我的理解是,在周期1:CPU输出一个地址,在周期2:存储器读取该地址,然后给出相应的字节,而在周期3:CPU最终接收字节。这是正确的吗?

不太正确。特别是,CPU必须在存储器“提供”该字节的同一周期内“接收”该字节。通常,该值通过时钟的上升沿或下降沿锁存。

究竟发生了什么,取决于执行的指令。例如,一个LDA立即需要两个周期。第一个周期,CPU读取操作码。第二个周期,CPU读取操作数并将其存储在累加器中。

另一个示例:LDA零页。 CPU在第一个周期中读取指令。它在第二个周期中读取地址。然后,它在指令的第三个也是最后一个周期将数据读入累加器。

注意在6502上每个周期如何进行存储器访问。输出地址,并读取或写入8位值。总是。

© www.soinside.com 2019 - 2024. All rights reserved.