【发布时间】:2012-05-26 09:19:37
【问题描述】:
我正在学习“管道数据路径”课程,我发现这三个术语“符号扩展偏移量、分支地址、零信号”与管道寄存器 ID/EX 和 ID/MEM 有关,但我不知道关于那三个。任何人都可以简单地解释这三个术语。因为我只是一个初学者,所以很难从网上获得简单的想法。
谢谢!
【问题讨论】:
标签: computer-science pipeline computer-architecture
我正在学习“管道数据路径”课程,我发现这三个术语“符号扩展偏移量、分支地址、零信号”与管道寄存器 ID/EX 和 ID/MEM 有关,但我不知道关于那三个。任何人都可以简单地解释这三个术语。因为我只是一个初学者,所以很难从网上获得简单的想法。
谢谢!
【问题讨论】:
标签: computer-science pipeline computer-architecture
它们都与I型MIPS分支指令有关,比较一个或2个寄存器的值,如果它们不相等则进行分支。
MIPS PC 是 32 位长,但分支指令只有 16 位相对地址。如果出现分支,则需要将这 2 个相加来计算新的 PC 值。为此,16 位地址扩展为 32 位(符号扩展 + 左移 2 个位置)。
这是符号扩展偏移量,然后将其添加到当前PC以获得目标地址(分支地址)。
ALU 单元检查分支条件,如果需要,它将断言 零信号。 然后,这个零信号由来自控制单元的分支信号选通,而这 2 个信号控制多路复用器,该多路复用器选择将写入 PC 的新值。
如果零信号为 1 且当前指令是分支指令,则 PC 将加载计算出的分支地址,否则 PC +4。