文章列表

2.8k 3 分钟

# CPU 设计文档及思考题 # 设计草稿 # 思路 工程主要分成两个部分:IO 支持以及异常 / 中断处理,结合教程大致按照以下顺序进行实现: CPU 封装 添加外设 Timer 实现系统桥 实现协处理器 CP0 异常检测和流水 添加异常处理指令 进行中断响应 异常处理程序(mips) # 各步实现 CPU 封装后与外界的接口主要是 clk,reset,IM 的地址和数据,内存空间的地址、数据和字节使能信号以及宏观 PC。另外由于输出需要还要实现 W 级各信号的接口。 系统桥是纯组合逻辑模块,需要 CPU 的地址、数据、字节使能、PC 以及外设的相应信号。 CPU->...
4.9k 4 分钟

# CPU 设计文档及思考题 # 设计草稿 # 思路 在 P5 草稿基础上进行修订,加入了乘除模块和存储器外置,先画出流水线 CPU 的设计示意图如下。其中正三角表示转发的供给者,倒三角表示转发的需求者。部分控制信号连线省略了。 # 工程化设计 先对需要实现的指令进行分类,对每个类别设计数据通路。分成以下几类:Cal,immCal,irCal,Load,Store,Branch,jWrite,jUse,mdCal,mdSet,mdGet,...
5k 5 分钟

# CPU 设计文档及思考题 # 设计草稿 # 思路 在单周期 CPU 的基础上,加入流水线寄存器以分割 CPU 的 5 个执行阶段。为了处理冒险,需要加入暂停和转发的模块。为了使得思路更加清晰,先画出流水线 CPU 的设计示意图如下。其中正三角表示转发的供给者,倒三角表示转发的需求者。部分控制信号连线省略了。 # 工程化设计 数据通路的设计如下,其中标记橙色部分为转发的需求者,需要替换为转发需求者多路选择器的输出: 控制信号的设计如下: 暂停转发的设计如下: 暂停 / 转发的策略信号:rs-Tuse,rt-Tuse 是从存到 D 级开始,过多少周期用到。Tnew...
4.5k 4 分钟

# CPU 设计文档及思考题 # 设计草稿 # 顶层模块设计 在 P3 的基础上,将其顶层结构翻译映射为 Verilog HDL 的工程文件。 因此,对 P3...
7k 6 分钟

# CPU 设计文档及思考题 # 设计草稿 # 顶层模块草稿 整个 CPU 模块大致分为上游和下游两个有限状态机。上游是 Moore 型的取指模块,输出将要执行的下一条指令;下游则是 Mealy 型的译码、执行、访存、回写全过程模块。 各个子模块以及粗略连接关系的初版草稿如下图所示。接下来,将要详细讨论各个模块的输入输出和连接关系。 # 顶层模块工程设计 每条指令相应数据通路如下表所示。 <table> <tr> <td rowspan = "2"> 指令...