- 1、本文档共22页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
数字系统EDA技术实验报告
数字系统EDA 技术
实验报告
实验名称:处理器核心电路的设计及验证
指导教师: 陈学英
学生姓名: 尹康
学号 : 2012029010010
电子科技大学 电子工程学院
一. 实验要求
1、利用层次化的设计方法使用VHDL 语言设计一个简单的处理器;
2、设计一个应用程序用于验证所设计的处理器的功能。
二. 实验目的
1、进一步掌握Altera DE2-115 开发平台的使用;
2、掌握Quartus 软件设计流程;
3、掌握一个处理器核心电路的基本结构及设计方法;
4、掌握状态机的设计方法;
5、进一步掌握如何编写testBench ,并利用Modelsim 进行仿真。
三 设计文件
1. 设计思路
Ⅰ. 一个最基本处理器的主要部件的构成
如下图所示,一个最基本的处理器应该包括一些寄存器,一个多路选择器、
一个加法/减法单元、计数器和一个控制单元。其中,寄存器的位宽可以选择 8
位、16 位、32 位、64 位。以下均以16 位为例来说明所设计的处理器的基本结构。
处理器所处理的输入数据通过多路复用器加载到不同的寄存器内,寄存器分
别定义为R0、R1、R2、R3、R4、R5、R6、R7 和A 。各个寄存器之间可以相互
传递数据。复用器的输出称之为总线。该总线容许数据从一个位置传递到另一个
位置。
加法/减法单元首先通过多路复用器将一个16 位数加载到寄存器A 中,寄存
器A 固定作为加法/减法单元的一个操作数。加法/减法单元的第二个操作数将
通过总线传至加法/ 减法单元的另一个数据输入接口,完成运算操作后的数据存
入寄存器G 内。寄存器G 的值可通过复用器将其搬移到需要的位置。
电子科技大学 电子工程学院
图1 处理器内部结构图
在控制单元的控制下,每个时钟周期可完成不同的操作。这个控制单元决定
什么数据放在总线上,并且控制哪个寄存器加载总线上的数据。例如,将寄存器
R0 的值加载到寄存器A 内,可在两个时钟周期内完成,第一个时钟周期是将R0
的值放在总线上,第二个周期则将总线上的数据加载到寄存器A 内。
Ⅱ. 处理器的操作
处理器可通过各种指令来进行所需要的操作。下表列出了本次实验需要完成
的4 条指令及相应的功能。
mv Rx, Ry 表示将Ry 寄存器内的数据移到Rx 寄存器内。
mvi Rx, #D 表示将立即数送到Rx 寄存器内。
add Rx, Ry 表示将Rx 和Ry 寄存器内的数据相加,结果存入Rx 寄存器内。
sub Rx,Ry 表示将Rx 和Ry 寄存器内的数据相加减,结果存入Rx 寄存器内。
指令可通过编码后存入 IR 寄存器内。IR 寄存器可以使用 9 位表示。如
IIIXXXYYY 。其中III 表示指令,XXX 代表Rx 寄存器,YYY 代表Ry 寄存器。
IR 必须连接到16 位数据输入脚上(可以是低9 位或高9 位) 。对于mvi 指令,YYY
域不用,立即数#D 在mvi 指令存入IR 寄存器后由16 位数据输入口送入。
对于加法和减法指令,由于该类操作需要多次占用总线,因此完成这类操作
电子科技大学 电子工程学院
需要多个时钟周期。为此可增加一个2 位的计数器counter 。当RUN 有效时计数
器counter 开始计数,即检测到开始执行加法/减法操作,当指令执行完毕后Done
有效,此时清空counter 计数器,可以进行下一指令的操作。
表1 处理器操作指令
操作
文档评论(0)