简单CPU系统设计及实现.doc

上传人:龙*** 文档编号:1005434 上传时间:2018-11-14 格式:DOC 页数:30 大小:2.17MB
下载 相关 举报
简单CPU系统设计及实现.doc_第1页
第1页 / 共30页
简单CPU系统设计及实现.doc_第2页
第2页 / 共30页
简单CPU系统设计及实现.doc_第3页
第3页 / 共30页
简单CPU系统设计及实现.doc_第4页
第4页 / 共30页
简单CPU系统设计及实现.doc_第5页
第5页 / 共30页
点击查看更多>>
资源描述

1、数字电路综合实验报告简单 CPU 系统设计与实现 1 设计课题的任务要求设计一个简单的 CPU 及其外部模块,能够完成机器代码的输入、存储、执行和结果显示。基本要求:指令要求至少有空指令,跳转指令,加法指令,存取数据指令。 利用自己设计的指令系统编写一段机器语言,可以完成求两个小于 256 的数的最大公约数。机器语言通过拨码开关和按键逐条输入,通过程序执行开关控制北京邮电大学数字电路与逻辑设计实验报告 程序执行,最后在数码管或 LED 灯上显示结果。提高要求:设计并实现其它指令。 2 系统设计2.1 设计思路设计的简易 CPU 系统主要由指令存储器(可以通过拨码和按键读入指令) 、控制器、内部

2、寄存器、内存以及 ALU 构成。设计过程重点考虑如下事项:读/写寄存器,读/写存储器以及执行指令。通过执行读入的指令以及编写好的求两个数的最大公约数的程序来测试该系统的功能。2.2 总体框图2.2.1 系统总体框图由设计思路,可绘制如下的简单 CPU 系统总体框图:最终在 quartusII 中连接好的 CPU 系统图如下所示(其中的 ACC属于 ALU 部件):北京邮电大学数字电路与逻辑设计实验报告 2.2.2 系统状态转移图北京邮电大学数字电路与逻辑设计实验报告 录入指令开始执行指令指令执行结束,等待再次执行或等待录入指令如上图,系统共有 3 个状态:S0、S1 、S2。分别为 S0:在这

3、一状态,通过拨码和按键录入要执行的指令。S1:在这一状态,CPU 执行程序,即 S0 录入的指令。S2 :在这一状态, CPU 执行完全部程序,等待再次执行或等待录入指令。2.2.3 求解最大公约数的程序框图设 a,b 为给定的两个整数,用辗转相减法求解他们的最大公约数:北京邮电大学数字电路与逻辑设计实验报告 开始ab 是否成立?不成立a、 b 交换成立成立b 为所求最大公约数。程序结束北京邮电大学数字电路与逻辑设计实验报告 2.3 分块设计2.3.1 DIV(分频器 ) DIV将电路板所提供的时钟分频,产生CPU工作所需要的时钟以及数码管扫描所需要的时钟。 2.3.2 MCU (控制器 )

4、MCU 用来产生系统内部所有寄存器、运算单元所需的控制信号,以及执行各条指令所需要的微操作。它是整个系统设计的核心所在。 2.3.3 ALU(算术逻辑运算单元 )ALU 完成数据的算术和逻辑运算。ALU 有 5 个输入端和 2 个输出端,其中一个操作数固定来自累加器 acc(具体编程时可用变量或信号表示) ,另一个操作数来自端口 mbr_in(通过数据总线接到寄存器 MBR) 。参加运算的操作数在 ALU中进行规定的操作运算,运算结束后,一方面将结果送至累加器,同时将操作结果的特征状态送标志寄存器。北京邮电大学数字电路与逻辑设计实验报告 2.3.4 MAR (地址寄存器 ) MAR 存放着要被

5、读取或写入的内存单元地址。其中,读操作时,CPU从内存读。而写操作时,CPU把数据写入内存。2.3.5 MBR (缓冲寄存器 ) MBR存放了将要存储到内存的数据或者从内存中读取的最新数据。MBR 连接到系统总线中的地址总线。2.3.6 RAM(随机存取存储器 ) 北京邮电大学数字电路与逻辑设计实验报告 RAM 有着相对独立的输入输出管脚,在本系统设计中它作为内存使用。它不是CPU内部的寄存器,不属于CPU 的一部分。但要测试所设计的CPU 的性能,需要把RAM加进系统设计中。2.3.7 SMG (数码管显示 )SMG负责将运算结果转化为BCD 码形式,然后用数码馆显示。3 仿真波形及波形分析

6、北京邮电大学数字电路与逻辑设计实验报告 根据波形图可以看出状态机的运行,其中一个状态占两个时钟周期。该仿真相当于 CPU 执行指令的时序图,反映了程序运行情况。还包括了辗转相减法的仿真,和 rst 的清零仿真。可以看出该 CPU 系统的仿真结果正确,达到下载的要求。北京邮电大学数字电路与逻辑设计实验报告 4 源程序(含注释)各个部件对应的源程序如下(最后的连接是用图形连接完成的):4.1 DIV(分频器 ) library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity DIV isport(clk_in:in std_logic;clk_out1:out std_logic;clk_out2:out std_logic);end DIV;

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

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。