计算机设计及实践给定指令系统处理器设计实验报告

上传人:第*** 文档编号:61736191 上传时间:2018-12-11 格式:PDF 页数:24 大小:1.21MB
返回 下载 相关 举报
计算机设计及实践给定指令系统处理器设计实验报告_第1页
第1页 / 共24页
计算机设计及实践给定指令系统处理器设计实验报告_第2页
第2页 / 共24页
计算机设计及实践给定指令系统处理器设计实验报告_第3页
第3页 / 共24页
计算机设计及实践给定指令系统处理器设计实验报告_第4页
第4页 / 共24页
计算机设计及实践给定指令系统处理器设计实验报告_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《计算机设计及实践给定指令系统处理器设计实验报告》由会员分享,可在线阅读,更多相关《计算机设计及实践给定指令系统处理器设计实验报告(24页珍藏版)》请在金锄头文库上搜索。

1、 1 计算机设计与实践给定指令系统的计算机设计与实践给定指令系统的 处理器设计实验报告处理器设计实验报告 学院:计算机科学与技术 姓名:王帆 学号:1140310602 指导老师:黄庆成 2016 年 7 月 26 日 2 目录 实验目的实验目的 . 4 4 实验环境实验环境 . 4 4 设计思想设计思想 . 4 4 指令格式的设计 4 微操作的定义 4 节拍的划分 5 处理器结构设计框图及功能描述 . 6 各功能模块结构设计框图及功能描述 6 时钟管理模块 6 取指模块 7 运算管理模块 7 存储管理模块 7 回写模块 8 访存控制模块 8 各模块接口信号定义 8 时钟管理模块 8 取指模块

2、 8 运算管理模块 9 存储管理模块 9 回写模块 9 访存控制模块 . 10 控制器 . 10 实实验测试与结果分析验测试与结果分析 1111 时钟管理模块 . 11 取指模块 . 11 运算管理模块 . 11 存储管理模块 . 13 回写模块 . 13 访存控制模块 . 14 综合测试 . 14 3 Reset 测试 . 15 SUB 测试 . 15 ADD 测试 . 15 STA 和 LDA 测试 . 16 MVI 测试 . 16 MOV 测试 . 17 IN 和 OUT 测试 17 JMP 测试 . 18 JZ 测试 18 管脚定义与测试程序管脚定义与测试程序 18 实实验感悟与思考验

3、感悟与思考 24 关于 PC 更新的问题 24 关于数据总线与传输数据长度不匹配的问题 . 24 实验感悟 . 24 4 一、 实验目的 1. 掌握 Xilinx ISE 集成开发环境使用方法 2. 掌握 VHDL 语言 3. 掌握 FPGA 编程方法及硬件调试手段 4. 深刻理解处理器结构和计算机系统的整体工作原理 二、 实验环境 Xilinx ISE 集成开发环境,ISim 仿真工具,SD2100 实验平台 三、 设计思想 1. 指令格式的设计 转 移 类 指令 JMP 无条件跳转指 令 00000 XXX XXXXXXXX R7/IR(7 downto 0 PC JZ 零条件跳转指 令

4、00010 XXX XXXXXXXX if Ri=0 then R7/IR(7 downto 0 PC 非 访 存 指令 SUB 减法指令 00100 XXX 00000 XXX Ri - Rj Ri ADD 加法指令 00110 XXX 00000 XXX Ri + Rj Ri MVI 立即数传送指 令 01000 XXX XXXXXXXX X Ri MOV 寄存器传送指 令 01010 XXX 00000 XXX Rj Ri 访 存 指 令 STA 存数指令 01100 XXX XXXXXXXX Ri R7/IR(7 downto 0) LDA 取数指令 01110 XXX XXXXXXX

5、X R7/IR(7 downto 0) Ri I/O 指令 IN 输入指令 10000 XXX 000000 XX PORT Ri OUT 输出指令 10010 XXX 000000 XX Ri PORT 2. 微操作的定义 取指阶段 PCMAR;1R; M(MAR)MDR; MDRIR; PC+1PC; 执行阶段 1) 非访存指令 加法指令 ADD Ri, Rj Reg(Ad1(IR) + Reg(Ad2(IR) Reg(Ad1(IR) 减法指令 SUB Ri, Rj Reg(Ad1(IR) - Reg(Ad2(IR) Reg(Ad1(IR) 5 寄存器传送指令 MOV Ri, Rj Reg

6、(Ad2(IR) Reg(Ad1(IR) 立即数传送指令 MVI Ri, X X Reg(Ad1(IR) 2) 访存指令 存数指令 STA Ri, X Reg(R7)/Ad(IR)MAR;1W; Reg(Ad1(IR)MDR; MDRM(MAR) 取数指令 LDA Ri, X Reg(R7)/Ad(IR)MAR;1R; M(MAR)MDR; MDRReg(Ad1(IR) 3) 转移类指令 条件转移(零则转)指令 JZ Ri, X Zero(Reg(Ad1(IR)Reg(R7)/Ad(IR) +Nzero(Reg(Ad1(IR)+PCPC 无条件转移指令 JMP X Reg(R7)/Ad(IR)

7、+PCPC 4) I/O 指令 输入指令 IN Ri,PORT PORT Reg(Ad1(IR) 输出指令 OUT Ri,PORT Reg(Ad1(IR) PORT 3. 节拍划分 每个指令周期包含 4 个机器周期:取指周期,运算周期,访存周期,回写周期,每个机 器周期包含一个节拍。 取指周期:M(PC) IR 1 R PC+1 PC 运算周期: T1:操作数的准备 Reg(Ad1(IR) A, Reg(Ad1(IR) B Reg(R7)/Ad(IR) Addr T2: 运算 ADD:A+BALUOUT SUB:A-BALUOUT MVI:Ad(IR) ALUOUT MOV:AALUOUT J

8、Z:AALUOUT STA:AALUOUT 访存周期: 取数:M(Addr) Rtemp,1R 存数:ALUOUTM(Addr),1W 6 回写周期: LDA:RTempReg(A) ADD,SUB,MVI,MOV:ALUOUTReg(A) JMP:AddrPC JZ:if A=0 then AddrPC 4. 处理器结构设计框图及功能描述 系统主要分为四个模块,取指管理模块掌管取指周期,运算管理模块掌管运算周期, 存储管理模块掌管访存周期,回写模块掌管回写周期。在一个指令周期中,取指、运算、 访存、回写四个周期依次进行,由时钟管理模块统一进行调度。 位于各管理模块与主存之间的访存控制模块接收

9、取指模块的 PC,访存后将 IR 内容返 回至取指模块;接受来自存储管理模块的数据、地址以及相应的访存命令,并通过数据总 线与存储管理模块进行数据交流。 5. 各功能模块结构设计框图及功能描述 1) 时钟模块 Reset 有效时不输出有效的时钟节拍, 无效时根据 clk 输入依次产生有效的时钟节 拍。 7 2) 取指模块 若复位信号有效,所有输出变量清零,若复位信号无效,则根据输入信号进行 PC 的更新以及发出取指命令信号。 3) 运算管理模块 由指令 IR 译码进行不同的运算,ADD,SUB,MOV,MVI 指令由 aluout 输出结果, STA,LDA 指令的合成地址由 addr 进行输

10、出,STA 的待存数由 aluout 进行输出,IN, OUT 指令则由 IO 地址码选择相应的端口并通过 IOout 进行数据传送。 4) 存储管理模块 暂存需要回写的数据以及寄存器地址,data 接收数据,根据 IR 指令码判断具体操 作类型,将接受的数据输出为 Rtemp,如果是访存指令则发出相应的访存控制信号。 8 5) 回写模块 根据操作码回写数据或 PC,回写数据分别存放于 PCdata 和 Rdata 中,回写控制信 号则为 PCupdate 和 Rupdate。 6) 访存控制模块 根据输入的控制信号进行不同的访存操作。 6. 各模块接口信号定义 1) 时钟管理模块 信号源 位

11、数 方向 来源/去向 说明 clk 1 I 时钟管理模块 时钟信 号 reset 1 I 时钟管理模块 复位信 号 T0 1 O 取指模块 时钟节 拍 T1 1 O 运算管理模块 时钟节 拍 T2 1 O 存储管理模块 时钟节 拍 T3 1 O 回写模块 时钟节 拍 9 2) 取指模块 信号源 位 数 方向 来源/去向 说明 IR 16 I 访存控制模块 指令码 Pcnew 16 I 回写模块 PC 更新内容 Pcupdate 1 I 回写模块 PC 更新信号 reset 1 I 取指模块 复位信号 T0 1 O 时钟管理模块 时钟节拍 Irout 16 O 运算管理模块,访存控制模块,回写模

12、块 指令码 Pcout 16 O 运算管理模块,存储管理模块,回写模块 PC Irread 1 O 访存控制模块 取指命令 3) 运算管理模块 信号源 位数 方向 来源/去向 说明 Rupdate 1 I 回写模块 寄存器回写命令 T1 1 I 时钟管理模块 时钟节拍 reset 1 I 运算管理模块 复位信号 IR 16 I 取指模块 指令码 PC 16 I 取指模块 PC Rdata 8 I 回写模块 寄存器回写内容 IO0 8 I 运算管理模块 外设输入 IO1 8 I 运算管理模块 外设输入 IO2 8 I 运算管理模块 外设输入 IO3 8 I 运算管理模块 外设输入 Ioout 8

13、 O 运算管理模块 I/O 输出 Addr 16 O 存储管理模块,回写模块 合成地址 aluout 8 O 存储管理模块,回写模块 运算结果 4) 存储管理模块 信号源 位数 方向 来源/去向 说明 T2 1 I 时钟管理模块 时钟节拍 reset 1 I 存储管理模块 复位信号 IR 16 I 取指模块 指令码 Addr 16 I 运算管理模块 地址码 RD 1 O 访存控制模块 读信号 WR 1 O 访存控制模块 写信号 Rtemp 8 O 访存控制模块,回写模块 待回写、待写入的数据 data 8 I 运算管理模块 输入数据 datar 8 O 访存控制模块 读出数据 10 5) 回写

14、模块 信号源 位数 方向 来源/去向 说明 Addr 16 I 运算管理模块 地址码 aluin 8 I 运算管理模块 待回写运算结果 IR 16 I 取指模块 指令码 PC 16 I 取指模块 PC Rtemp 8 I 存数管理模块 待存储数据 T3 1 I 时钟管理模块 时钟节拍 reset 1 I 回写模块 复位信号 Pcdata 16 O 取指模块 PC 更新数据 Rdata 8 O 运算管理模块 寄存器更新数据 Pcupdate 1 O 取指模块 PC 更新信号 Rupdate 1 O 运算管理模块 寄存器更新新号 6) 访存控制模块 信号源 位数 方向 来源/去向 说明 reset

15、 1 I 访存控制模块 复位信号 addr 16 I 运算管理模块 地址码 dataw 8 I 存储管理模块 待写入数据 Pcin 16 I 取指模块 PC rdn 1 I 存储管理模块 读信号 wrn 1 I 存储管理模块 写信号 Irread 1 I 取指模块 读指令信号 Abus 16 O 访存控制模块 地址总线 Dbus 16 I/O 访存控制模块 数据总线 Iro 16 O 取指模块 输出指令码 nBHE 1 O 访存控制模块 高位控制信号 nBLE 1 O 访存控制模块 低位控制信号 nMreq 1 O 访存控制模块 片选信号 nRD 1 O 访存控制模块 读信号 nWR 1 O

16、访存控制模块 写信号 7) CPU 接口信号定义 信号源 位数 方向 来源/去向 说明 clk 1 I 处理器板 时钟节拍 reset 1 I 处理器板 复位信号 Dbus 16 I/O 主存储器 数据总线 Abus 16 I 主存储器 地址总线 IO0 8 I FPGA1 外设输入 IO1 8 I FPGA1 外设输入 IO2 8 I FPGA1 外设输入 IO3 8 I FPGA1 外设输入 Ioout 8 I FPGA1 外设输出 11 nBHE 1 O 主存储器 高字节允许访问 nBLE 1 O 主存储器 低字节允许访问 nMreq 1 O 主存储器 片选信号 nRD 1 O 主存储器 存储器读 nWR 1 O 主存储器 存储器写 四、 实验测试与结果分析 1. 时钟管理模块 说明:在 rst 高位有效时,没有有效的

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号