简单运算器的数据通路课程设计.docx

上传人:b****6 文档编号:7730777 上传时间:2023-01-26 格式:DOCX 页数:15 大小:157.40KB
下载 相关 举报
简单运算器的数据通路课程设计.docx_第1页
第1页 / 共15页
简单运算器的数据通路课程设计.docx_第2页
第2页 / 共15页
简单运算器的数据通路课程设计.docx_第3页
第3页 / 共15页
简单运算器的数据通路课程设计.docx_第4页
第4页 / 共15页
简单运算器的数据通路课程设计.docx_第5页
第5页 / 共15页
点击查看更多>>
下载资源
资源描述

简单运算器的数据通路课程设计.docx

《简单运算器的数据通路课程设计.docx》由会员分享,可在线阅读,更多相关《简单运算器的数据通路课程设计.docx(15页珍藏版)》请在冰豆网上搜索。

简单运算器的数据通路课程设计.docx

简单运算器的数据通路课程设计

编号:

B04911053

学号:

 

课程设计

教学院

计算机学院

课程名称

计算机组成原理课程设计

题目

简单运算器数据通路的设计

专业

计算机科学与技术

班级

计算机科学与技术(3)班

姓名

廖万君

同组人员

刘政华刘涛陈茂源

指导教师

高芹

 

2013

1

22

 

课程设计任务书

2012~2013学年第1学期

学生姓名:

廖万君专业班级:

计算机科学与技术(3)班

指导教师:

杨斐工作部门:

计算机学院

一、课程设计题目简单运算器数据通路的设计

二、课程设计内容(含技术指标)

1.利用QUARTUS软件设计一个8位简单运算器数据通路。

2.运算器可实现两个8位二进制数的加法、减法、传送运算三种运算。

3.包括R1、R2、R3三个通用寄存器和DR。

4.数据有IN输入,经过运算后结果写入某寄存器中。

同时将结果显示在数码管上。

总体框图参考下图:

 

三、进度安排

1.2012年12月29日,课题讲解,布置任务

2.2012年12月30日到2013年1月4日,查阅资料,分析、讨论与设计

3.2013年1月5日到8日,进行各子模块的设计,并进行调试

4.2013年1月9日到10日完成各模块联调,进行测试

5.2013年1月11日,成果验收,进行答辩

四、基本要求

(1)能够熟练掌握计算机中运算器和寄存器之间数据通路的工作原理;

(2)掌握硬件描述语言VHDL及原理图设计方法;

(3)熟练掌握QuartusII软件平台;

(4)各小组按模块分工,每人独立完成自己负责的模块;

(5)合作完成最终的硬件下载及调试;

(6)独立撰写符合要求的课程设计报告。

 

1课程设计概述

1.1课设目的

计算机组成原理是计算机专业的核心专业基础课。

课程设计属于设计型实验,不仅锻炼学生简单计算机系统的设计能力,而且通过进行设计及实现,进一步提高分析和解决问题的能力。

通过对知识的综合运用,加深对计算机系统各模块的工作原理及相互联系的认识,建立计算机整机概念。

对计算机的基本组成、部件的设计、部件间的连接、微程序控制器的设计、微指令和微程序的编制与调试等过程有更深的了解,加深对理论课程的理解。

锻炼学生的独立思考和动手能力。

1.2设计任务

本课程设计的题目是简单运算器数据通路。

具体设计任务如下:

(7)利用QUARTUS软件设计一个8位简单运算器数据通路。

(8)运算器可实现两个8位二进制数的加法、减法、传送运算三种运算。

(9)包括R1、R2、R3三个通用寄存器和DR。

(10)数据有IN输入,经过运算后结果写入某寄存器中。

同时将结果显示在数码管上。

1.3设计要求

根据理论课程所学的至少,设计出简单计算机系统的总体方案,结合各单元实验积累和课堂上所学知识,选择适当芯片,设计简单的计算机系统,具体要求如下:

(1)能够熟练掌握计算机中运算器和寄存器之间数据通路的工作原理;

(2)掌握硬件描述语言VHDL及原理图设计方法;

(3)熟练掌握QuartusII软件平台;

(4)各小组按模块分工,每人独立完成自己负责的模块;

(5)合作完成最终的硬件下载及调试;

(6)独立撰写符合要求的课程设计报告。

2实验原理与环境

2.1实验原理

计算机的一个最主要的功能就是处理各种算术和逻辑运算,这个功能要由CPU中的运算去来实现,运算器也称作算术逻辑部件ALU。

算术逻辑运算部件ALU主要完成二进制代码的定点算术和逻辑运算,有时也叫多功能函数发生器。

总线是计算机中连接各个功能部件的纽带,是计算机各部件之间进行信息传输的公共通路。

总线不只是一组简单的信号传输线,它还是一组协议。

分时与共享是总线的两大特征。

所谓共享,在总线上可以挂接多个部件,它们都可以使用这一信息通路来和其它部件传送信息。

所谓分时,同一总线在同一时刻,只能有一个部件占领总线发送信息,其它部件要发送信息得在该部件发送完释放总线后才能申请使用。

总线结构是决定计算机性能、可扩展和标准化程度的重要因素。

2.2实验环境

计算机组成原理教学试验仪,PC机,TD-CMA试验系统。

3总体方案设计

3.1需求分析

运算器可以实现两个8位二进制的加法、减法、传送运算三种运算,同时接收来自两个选择器的数据,ALU对操作数进行何种运算由控制信号+、-和M决定,但任何时候ALU只能选择其中一种运算。

由于存储器和输入输出设备最终是要挂在总线上,所以需要总线提供数据信号、地址信号以及控制信号。

首先,设计三个8位的寄存器和DR,通过控制信号来判断输入;然后,用三选一的选择器分别从R1、R2、R3和DR中选择一个信号输入到X、Y;最后,将X和Y的值传送到ALU中,分别用一个信号控制,来进行+、-或者M运算,再将结果输出。

3.2硬件设计

3.2.1总体设计

利用QUARTUS软件设计一个8位简单运算器数据通路,包括R1、R2、R3三个通用寄存器和DR。

数据有IN输入,经过运算后结果写入某寄存器中。

同时将结果显示在数码管上。

总体结构图如图表3.1所示:

 

图表3.1简单运算器通路总体框架图

3.2.2寄存器

设计了三个寄存器R1、R2和R3,用来存放IN输入的数据,由输入端1,2和3分别进行控制数据的存放。

3.2.3控制器

需要两个三选一控制器,其中一个控制器由微操作4、6和8分别控制R1、R2和DR的输出,另一个控制器由微操作5、7和9分别控制R1、R2和R3的输出,三选一控制器相应的控制操作如表格3.1所示。

 

表格3.1三选一控制器相应的控制操作

部件

信号序号

控制输出

说明

三选一

选择器(左)

4

R1

信号4、6、8互斥,每次只输入一个信号

6

R2

8

DR

三选一

选择器(右)

5

R1

信号5、7、9互斥,每次只输入一个信号

7

R2

9

R3

3.2.4ALU逻辑处理单元

ALU的操作(加、减和传送)在同一个CPU周期内只能单独地选择一种进行预算,控制信号“+”控制“X+Y”的输出,控制信号“-”控制“X-Y”的输出,控制信号“M”控制“X”的输出,ALU相应的控制操作如表格3.2所示。

表格3.2ALU相应的控制操作

部件

运算

控制信号

控制输出

说明

ALU

(运算器)

Add

+

Z=X+Y

每次只能单独进行一种运算

Subtraction

-

Z=X-Y

Move

M

Z=X

4详细设计与实现

4.1选用芯片

4.1.1EMP240T100C5

系统采用的芯片是MAXII:

EMP240T100C5这款芯片,它是一款可编程芯片,其总体的原理图参见图表4.1。

图表4.1基本原理图

4.2硬件实现

4.2.1硬件原理图

本次我们采用的是方案是微程序控制,实现一个8位简单运算器数据通路的设计,硬件原理图如图表4.2所示。

图表4.2硬件原理图

4.2.2运算通路实现

(1)使用的VHDL语言如下:

LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

USEIEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITYalu1IS

PORT(

add:

INSTD_lOGIC;

x:

INSTD_LOGIC_VECTOR(7DOWNTO0);

y:

INSTD_LOGIC_VECTOR(7DOWNTO0);

substrance:

INSTD_LOGIC;

m:

INSTD_LOGIC;

cout:

OUTSTD_LOGIC_VECTOR(7DOWNTO0)

);

ENDENTITYalu1;

ARCHITECTUREaluStructOFalu1IS

BEGIN

PROCESS(add,substrance,m,x,y)

BEGIN

IFM='1'

THENcout<=x;

ELSEIFadd='1'

THENcout<=x+y;

ELSEIFsubstrance='1'

THENcout<=x-y;

ENDIF;

ENDIF;

ENDIF;

ENDPROCESS;

ENDaluStruct;

(2)通过VHDL语言设计的ALU如图表4.3所示。

图表4.3ALU

4.2.3寄存器实现

(1)使用的VHDL语言如下:

LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

ENTITYsolutionIS

PORT(

d:

INSTD_lOGIC_VECTOR(7DOWNTO0);

lda:

INSTD_LOGIC;

q:

OUTSTD_LOGIC_VECTOR(7DOWNTO0)

);

ENDENTITYsolution;

ARCHITECTUREbhvOFsolutionIS

BEGIN

PROCESS(d,lda)

BEGIN

IFlda='1'

THENq<=d;

ENDIF;

ENDPROCESS;

ENDbhv;

(2)通过VHDL语言设计的寄存器如图表4.4所示。

图表4.4寄存器

4.2.4选择通路实现

(1)三选一控制器具体的VHDL语言如下:

LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

ENTITYselectOneIS

PORT(

in1:

INSTD_lOGIC;

in2:

INSTD_LOGIC;

in3:

INSTD_LOGIC;

cout:

OUTSTD_LOGIC_VECTOR(7DOWNTO0);

cin1:

INSTD_LOGIC_VECTOR(7DOWNTO0);

cin2:

INSTD_LOGIC_VECTOR(7DOWNTO0);

cin3:

INSTD_LOGIC_VECTOR(7DOWNTO0)

);

ENDENTITYselectOne;

ARCHITECTUREchooseOFselectOneIS

BEGIN

PROCESS(in1,in2,in3,cin1,cin2,cin3)

BEGIN

IFin1='1'

THENcout<=cin1;

ELSEIFin2='1'

THENcout<=cin2;

ELSEIFin3='1'

THENcout<=cin3;

ENDIF;

ENDIF;

ENDIF;

ENDPROCESS;

ENDchoose;

(2)通过VHDL语言设计的三选一控制器如图表4.5所示。

图表4.5三选一控制器

 

5实验过程与调试

5.1仿真

测试数据用的是十六进制的22和16,对应的十进制数据是34和22。

分别进行了加、减、M运算,加运算的仿真图见图表5.1,减运算的仿真图见图表5.2,M运算这里取的是第一个操作数,仿真图见图表5.3。

图表5.1加法仿真图

图表5.2减法仿真图

图表5.3M运算仿真图

5.2主要故障与调试

5.2.1故障1

故障:

ALU逻辑控件的编写时后,VHDL报错。

解决方案:

用加法减法等运算时,需要在VHDL代码的文件头加上

USEIEEE.STD_LOGIC_UNSIGNED.ALL;语句。

5.2.2故障2

故障:

设计完成后,无法连接到计算机。

解决方案:

安装相应的驱动。

5.3实验流程图

(1)2012年12月29日,课题讲解,布置任务;

(2)2012年12月30日到2013年1月4日,查阅资料,分析、讨论与设计;

(3)2013年1月5日到8日,进行各子模块的设计,并进行调试;

(4)2013年1月9日到10日完成各模块联调,进行测试;

(5)2013年1月11日,成果验收,进行答辩。

6设计总结与心得

6.1课设总结

基于对象的存储是为了克服当前基于块的存储存在的诸多难题,在存储接口和结构层次的重要发展。

可以根据应用负载选择优化的存储策略。

作了如下几点工作:

1)运算器是计算机中对数据进行运算操作的重要部件,它的核心是算数逻辑单元ALU,可以通过选用ALU不同的控制信号,运算器可以完成不同的运算功能。

2)编写VHDL语言设计出寄存器、三选一控制器、ALU逻辑处理单元,快速而又方便。

最终的结果通过仿真进行加、减和传送的实现。

6.2课设心得

初次接触计算机组成原理课程设计时,加上电子技术学的不怎么样,感觉还是有点难的,但是随着老师耐心地讲解,课程设计实验慢慢地向前进展,发现实验本身其实并不是我们想象的那么困难,只是自己没有了解各部件实现的功能。

通过这次实验,自己更清楚的明白了如何用VHDL语言快速而又方便地设计出寄存器、三选一控制器、ALU逻辑处理单元,而且进一步熟悉了计算机的数据通路原理,加深了对理论知识的学习,这也很好的为在以后的学习中奠定了实践基础。

本次实验中由于组员间协调的合作,实验操作过程也不会那么的复杂、繁琐,使得这次实验的过程很有趣,并且让我们对机器内部数据通路的理解有更进一步的启发。

同时,使我对专业知识有了更深的了解,也激发了我对学习的兴趣,从中积累了宝贵的实践操作经验。

参考文献

[1]秦磊华,王小兰.计算机组成原理实验指导及课程设计指导书(基于EDA平台).武汉:

华中科技大学出版社,2010年。

[2]秦磊华,吴非,莫正坤.计算机组成原理.北京:

清华大学出版社,2011年。

[3]DAVIDA.PATTERSON(美).计算机组成与设计硬件/软件接口(原书第3版).北京:

机械工业出版社.2007年。

[4]袁春风编著.计算机组成与系统结构.北京:

清华大学出版社,2011年。

[5]张志刚,FPGA与SOPC设计教程-DE2实践.西安:

电子科技大学出版社,2007年。

 

计算机组成原理课程设计成绩评定表

1、课程设计答辩或质疑记录

1)

2)

3)

2、答辩情况

a)未能完全理解题目,答辩情况较差□c)理解题目较清楚,问题回答基本正确□

b)部分理解题目,答辩情况较差□d)理解题目透彻,问题回答流利□

3、课程设计报告

a)内容:

不完整□完整□详细□

b)方案设计:

较差□合理□非常合理□

c)实现:

未实现□部分实现□全部实现□

d)文档格式:

不规范□基本规范□规范□

考勤成绩:

占总成绩比例10%

答辩成绩:

占总成绩比例30%

课程设计论文成绩:

占总成绩比例60%

课程设计总成绩:

4、课程设计评语

指导教师签字:

年月日

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 语文

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1