东北大学秦皇岛分校计算机组成原理课设-2153313

上传人:小** 文档编号:69699201 上传时间:2019-01-14 格式:PDF 页数:24 大小:1.13MB
返回 下载 相关 举报
东北大学秦皇岛分校计算机组成原理课设-2153313_第1页
第1页 / 共24页
东北大学秦皇岛分校计算机组成原理课设-2153313_第2页
第2页 / 共24页
东北大学秦皇岛分校计算机组成原理课设-2153313_第3页
第3页 / 共24页
东北大学秦皇岛分校计算机组成原理课设-2153313_第4页
第4页 / 共24页
东北大学秦皇岛分校计算机组成原理课设-2153313_第5页
第5页 / 共24页
点击查看更多>>
资源描述

《东北大学秦皇岛分校计算机组成原理课设-2153313》由会员分享,可在线阅读,更多相关《东北大学秦皇岛分校计算机组成原理课设-2153313(24页珍藏版)》请在金锄头文库上搜索。

1、 东北大学秦皇岛分校东北大学秦皇岛分校 计算机与通信工程学院计算机与通信工程学院 计算机组成原理计算机组成原理课程设计课程设计 专业名称 计 算 机 科 学 与 技 术计 算 机 科 学 与 技 术 班级学号 21533132153313 学生姓名 花 叶 程花 叶 程 指导教师 王 和 兴王 和 兴 设计时间 20201717. .1212. .1818- -20201 17 7.1.12 2. .2929 课程设计任务书课程设计任务书 专业:专业:计算机科学与技术 学号学号:2153313 学生姓名:学生姓名: 设计题目:设计题目:指令系统及专用寄存器设计 一、设计实验条件一、设计实验条件

2、 硬件:PC 机 软件:Xilinx ISE ModelSim 编程语言:VHD 二、设计任务及要求二、设计任务及要求 1. 4 号指令的设计; 2. 23 号指令的设计; 3. 29 号指令的设计; 4. 42 号指令的设计; 5. 输出寄存器 OUT;堆栈寄存器 ST 6. 带异步清零和计数使能的8 位二进制计数。 三、设计报告的内容三、设计报告的内容 1.设计题目与设计任务设计题目与设计任务 题目: 1、16 位模型机设计指令系统及计数器设计 表 1.指令系统设计 指令编 号 指令助记符 机器码 1 机器码 2 指令功能 4 DEC R? 000011 R?中内容自减 1 23 AND

3、A, MM 010110 MM 累加器 A “与” 存储 器 MM 地址的值 29 MOV A, R? 011100 将寄存器 R?的值送 到累加器 A 中 42 JZ MM 101001 MM 当零标志R_Z=1时, 跳转到 MM 地址 2、模型机硬件设计:输出寄存器 OUT、堆栈寄存器 ST 3、逻辑电路设计:带异步清零和计数使能的8 位二进制计数器 2.2.前言前言 1、融会贯通计算机组成原理课程的内容,通过知识的综合运用,加深对计算机系统各个 模块的工作原理及相互联系的认识; 2、运用 VHDL 进行 FPGA/CPLD 设计的基本步骤和方法,熟悉 EDA 的设计、模拟调试工具 的使用

4、,体会 FPGA/CPLD 技术相对于传统开发技术的优点; 3、科学研究的独立工作能力,取得工程设计与组装调试的实践经验。 3.设计主体设计主体 【系统设计】【系统设计】 1、模型机设计框图 图 1 整机逻辑结构框图 图 2 芯片引脚: 图 3 cpu 逻辑结构框图 2、指令系统设计 表 2 第第 4 4 条指令条指令:DEC R? 指令类型:算术运算指令 寻址方式:寄存器直接寻址 第第 2323 条指令:条指令:AND A, MM 指令类型:逻辑运算指令 寻址方式:存储器直接寻址 第第 2929 条指令:条指令:MOV A, R? 指令类型:数据传送指令 寻址方式:寄存器直接寻址 第第 42

5、42 条指令:条指令:JZ MM 指令类型:程序跳转类指令 寻址方式:存储器直接寻址 3、微操作控制信号 XRD : 外部设备读信号,当给出了外设的地址后,输出此信号,从指定外设读数据。 EMWR: 程序存储器 EM 写信号。 EMRD: 程序存储器 EM 读信号。 PCOE: 将程序计数器 PC 的值送到地址总线 ABUS 上(MAR)。 EMEN: 将程序存储器 EM 与数据总线 DBUS 接通,由 EMWR 和 EMRD 决定是将 DBUS 数据写 到 EM 中,还是从 EM 读出数据送到 DBUS。 IREN: 将程序存储器 EM 读出的数据打入指令寄存器 IR。 EINT: 中断返回

6、时清除中断响应和中断请求标志,便于下次中断。 ELP: PC 打入允许,与指令寄存器 IR3、IR2 位结合,控制程序跳转。 FSTC:进位置 1,CY=1 FCLC:进位置 0,CY=0 MAREN:将地址总线 ABUS 上的地址打入地址寄存器 MAR。 MAROE:将地址寄存器 MAR 的值送到地址总线ABUS 上。 OUTEN:将数据总线 DBUS 上数据送到输出端口寄存器 OUT 里。 STEN: 将数据总线 DBUS 上数据存入堆栈寄存器 ST 中。 RRD: 读寄存器组 R0-R3,寄存器 R?的选择由指令的最低两位决定。 RWR: 写寄存器组 R0-R3,寄存器 R?的选择由指令

7、的最低两位决定。 CN: 决定运算器是否带进位移位,CN=1 带进位,CN=0 不带进位。 FEN: 将标志位存入 ALU 内部的标志寄存器。 WEN: 将数据总线 DBUS 的值打入工作寄存器 W 中。 AEN: 将数据总线 DBUS 的值打入累加器 A 中。 X2 X0 : X2、X1、X0 三位组合来译码选择将数据送到 DBUS 上的寄存器。 S2 S0 : S2、S1、S0 三位组合决定 ALU 做何种运算。 4、指令执行流程 表 3 编号 助记符 功能 机器 码 周期 总数 CT 节拍 数 微操作 控制信号 涉及 的硬 件 1 _FATCH_ 取指令 0000 00XX 010 T2

8、 PCMAR PCOE MAREN PC, MAR , EM, W , IR T1 EMW EMEN EMRD WEN T0 WIR PC + 1 IREN 4 DEC R? R?中内容 自减 1 0000 11XX 100 T4 1W R?DBUSA WEN RRD AEN W R? DBUS A ALU T3 A-WALU DBUSR? AEN S() 23 AND A, MM 累加器 A “与”存 储器 MM 地址的值 0101 10XX 101 T5 PCMAR PCOE MAREN PC, MAR, EM, W, A,ALU , F T4 EMDBUSW PC+1PC EMRD EM

9、EN WEN T3 A+WALUF ALUA FEN AEN 29 MOV A, R? 将寄存器 R?的值送 到累加器 A 中 0111 00XX 100 T4 R?DBUSW RRD WEN R? DBUS W A T3 WA AEN 42 JZ MM 当零标志 R_Z=1时, 跳转到MM 地址 1010 01XX 101 或 011 T5 若 Z=1,则 PC MAR EM W DBUS PC MAR PCOE MAREN PC MAR EM W DBUS T4 EMW EMRD EMEN WEN T3 W DBUS PC ELP T3 否则:PC PC PC DEC R? AND A,M

10、M MOV A,R? JZ MM Z=1 Y N T5 T5 T4 T4 T4 T3 T3 T3 T3 图 4 指令执行流程图 1W R?DBUSA A-WALU DBUSR? A+WALUF ALUA EMDBUSW PC+1PC PCMAR R?DBUSW WA PCMAR EMW WDBUSPC PC PC 【系统系统实现实现与测试与测试】 输出寄存器输出寄存器 OUT 1、逻辑电路图 图 5 图 6 2、VDHLM 程序 LIBRARY ieee; USE ieee.std_logic_1164.ALL; - Uncomment the following library declar

11、ation if using - arithmetic functions with Signed or Unsigned values -USE ieee.numeric_std.ALL; ENTITY wave IS END wave; ARCHITECTURE behavior OF wave IS - Component Declaration for the Unit Under Test (UUT) COMPONENT reg PORT( reset : IN std_logic; s1 : IN std_logic; clk : IN std_logic; a : IN std_

12、logic; b : IN std_logic; c : IN std_logic; d : IN std_logic; e : IN std_logic; f : IN std_logic; g : IN std_logic; h : IN std_logic; q : OUT std_logic_vector(7 downto 0) ); END COMPONENT; -Inputs signal reset : std_logic := 1; signal s1 : std_logic := 1; signal clk : std_logic := 0; signal a : std_l

13、ogic := 0; signal b : std_logic := 0; signal c : std_logic := 1; signal d : std_logic := 0; signal e : std_logic := 1; signal f : std_logic := 0; signal g : std_logic := 0; signal h : std_logic := 0; -Outputs signal q : std_logic_vector(7 downto 0); - Clock period definitions constant clk_period : t

14、ime := 10 ns; BEGIN - Instantiate the Unit Under Test (UUT) uut: reg PORT MAP ( reset = reset, s1 = s1, clk = clk, a = a, b = b, c = c, d = d, e = e, f = f, g = g, h = h, q = q ); - Clock process definitions clk_process :process begin clk 0); -Outputs signal a : std_logic; signal b : std_logic; sign

15、al c : std_logic; signal d : std_logic; signal e : std_logic; signal f : std_logic; signal g : std_logic; signal h : std_logic; - Clock period definitions constant clk_period : time := 10 ns; BEGIN - Instantiate the Unit Under Test (UUT) uut: reg PORT MAP ( a = a, b = b, c = c, d = d, e = e, f = f, g = g, h = h, s1 = s1, clk = clk, reset = reset, q = q ); - Clock process definitions clk_process :process begin clk clk, reset = reset, en = en, q = q, bout = bout ); - Clock process definitions clk_process :process begin clk = 0; wait for clk_period/2; clk = 1; wait for clk_pe

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

当前位置:首页 > 商业/管理/HR > 管理学资料

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