全球旧事资料 分类
存器外部接口
图34所示,指令寄存器的指令流向是:4位操作码IR指令送往控制单元已做译码使用,而根据不同指令分离出来的要操作的立即数DATA、源操作寄存器RR、目的操作寄存器RD送到寄存器堆TRAM模块。指令寄存器外部输入控制信号e
是来自控制单元的输入信号,E
高电平有效,与PC模块的使能e
信号功能上基本一致,它控制着指令寄存器是否可以从程序存储器中加载指令。当e
有效时指令寄存器才能更新来自程序存储器的指令。
34时钟发生器模块
时钟发生器TIME_CTRL利用时钟信号CLK生成从时钟信号CLKR并送往CPU的寄存器堆TRAM中,作为其进行读写操作的时钟信号。CLKR是将CLK延迟半个周期产生的,有利于流水线的完成。时钟发生器的外部接口如图35。
图35时钟发生器的外部接口
35寄存器堆TRAM
寄存器堆与程序存储器设计相同,都是直接使用一个数组存放二进制数据,通过VHDL编写一个一定长度的数组实现,同样可以通过集成器数组元素和输入地址间的相互赋值实现“读存储器”,“写存储器”。在本次CPU设计中TRAM模块用以完成以下几个操作:1、将立即数写入指定寄存器中。2、将指定目的操作寄存器地址中的数据读出并输出。3、将指定源操作寄存器地址中的数据读出。
f图36寄存器堆TRAM外部接口
如图12所示,fclkr时钟信号是来自时钟发生器,控制寄存器是否能进行读写操作。在CPU时钟的前半周期,控制器进行译码并发出控制信号,为操作的施行铺好路,在时钟的后半周期,也就是从时钟信号fclkr的上升沿,TRAM在控制信号ram_ctrl、load、store的控制下进行读写操作。Ifrisi
g_edgefclkrthe
Iffstore’1’the
ramco
v_i
tegerfromrdfR0存储上条指令运算得到的结果elsiffromram_ctrl
好听全球资料 返回顶部