阵列乘法.docx
- 文档编号:6696756
- 上传时间:2023-01-09
- 格式:DOCX
- 页数:13
- 大小:162.83KB
阵列乘法.docx
《阵列乘法.docx》由会员分享,可在线阅读,更多相关《阵列乘法.docx(13页珍藏版)》请在冰豆网上搜索。
阵列乘法
沈阳航空工业学院
课程设计报告
课程设计名称:
计算机组成原理课程设计
课程设计题目:
阵列乘法器的设计
院(系):
计算机学院
专业:
计算机科学与技术
班级:
4401102
学号:
200403011037
姓名:
倪晓娇
指导教师:
刘泽显
完成日期:
2006年12月31日
目录
第1章总体设计方案1
1.1设计原理1
1.2设计环境3
第2章详细设计方案4
2.1顶层方案图的设计与实现4
2.1.1创建顶层图形设计文件4
2.1.2器件的选择与引脚锁定4
2.2功能模块的设计与实现5
2.2.1四位阵列乘法模块的设计与实现5
2.2.2细胞模块的设计与实现7
2.3仿真调试9
第3章编程下载与硬件测试11
3.1编程下载11
3.2硬件测试及结果分析11
参考文献14
第1章总体设计方案
1.1设计原理
由于采用普通的方法计算两个数的相乘比较慢,为了进一步提高乘法运算的运算速度,可以采用类似于人工计算的方法,用阵列乘法器来进行计算,给人们带来了很大的方便。
四位阵列乘法器的原理框图如图1.1所示,X=X1X2X3X4Y=Y1Y2Y3Y4且X为被乘数的输入端,Y为乘数的输入端,M=M0M1M2M3M4M5M6M7为乘积的输出端。
其基本原理是阵列的每一行送入乘数Y的每一位数位,而各行错开形成的每一斜列则送入被乘数的每一数位。
四位阵列乘法器的整体设计包含十六个加法器模块,加法器模块中由一个与门和一个全加器构成,由四个与门、两个异或门、一个三端接口的或门构成的全加器为底层设计,采用原理图设计输入方式,所谓的全加器就是两个数X、Y及进位输入Cn相加可得全加和Fn和进位输出Cn。
顶层的四位阵列乘法器也采用原理图设计输入方式,在以十六个加法器为基础而构成的四位阵列乘法器,其主要以四个被乘数输入端、四个乘数输入端以及八个乘积输出端为主,外加还包括中间过程参与计算的进位输入端、部分积输入端和进位输出端、部分积输出端,这样一来就构成了一个完整的四位阵列乘法器。
采用硬件描述语言进行电路设计并实现四位阵列乘法的功能,设计的原理图经编译、调试后形成*.bit文件并下载到XCV200可编程逻辑芯片中,若以上过程全部正确,最后经硬件测试验证设计的正确性。
图1.1四位阵列乘法器原理框图
四位阵列乘法器实现的功能如表1.1所示,设计的电路应实现表1.1中给定的功能。
表1.1四位阵列乘法器功能表(举例)
X1X2X3X4
Y1Y2Y3Y4
M0M1M2M3
M4M5M6M7
0000
0001
0000
0000
0010
0001
0000
0010
0011
0001
0000
0011
0100
0001
0000
0100
0101
0001
0000
0101
0110
0001
0000
0110
0111
0001
0000
0111
1000
0001
0000
1000
1001
0001
0000
1001
1010
0001
0000
1010
1011
0001
0000
1011
1100
0001
0000
1100
1101
0001
0000
1101
1110
0001
0000
1110
1111
0001
0000
1111
1.2设计环境
·硬件环境:
伟福COP2000型计算机组成原理实验仪、XCV200实验板、微机;
·EDA环境:
XilinxFoundation3.1设计软件、。
第2章详细设计方案
2.1顶层方案图的设计与实现
顶层方案图实现四位阵列乘法器的逻辑功能,采用原理图设计输入方式完成,电路实现基于XCV200可编程逻辑芯片。
在完成原理图的功能设计后,把输入/输出信号安排到XCV200指定的引脚上去,实现芯片的引脚锁定。
2.1.1创建顶层图形设计文件
顶层图形文件主要由四位被乘数输入端、四位乘数输入端和八位乘积输出模块组装而成的一个完整的设计实体。
可利用XilinxFoundation3.1模块实现顶层图形文件的设计,顶层图形文件结构如图2.1所示。
图2.1四位阵列乘法器顶层图形文件结构
2.1.2器件的选择与引脚锁定
(1)器件的选择
由于硬件设计环境是基于伟福COP2000型计算机组成原理实验仪和XCV200实验板,故采用的目标芯片为XlinxXCV200可编程逻辑芯片。
(2)引脚锁定
把顶层图形文件中的输入/输出信号安排到XlinxXCV200芯片指定的引脚上去,实现芯片的引脚锁定,各信号及XlinxXCV200芯片引脚对应关系如表2.1所示。
表2.1信号和芯片引脚对应关系
四位阵列乘法器内部信号
图形文件中的输入/输出信号
XCV200芯片引脚
X1
X1
P33
X2
X2
P34
X3
X3
P35
X4
X4
P36
Y1
Y1
P38
Y2
Y2
P39
Y3
Y3
P40
Y4
Y4
P41
M0
N0
P215
M1
N1
P216
M2
N2
P217
M3
N3
P218
M4
N4
P220
M5
N5
P221
M6
N6
P222
M7
N7
P223
2.2功能模块的设计与实现
四位阵列乘法器是以十六个加法器模块为基础而实现的,加法器模块中还包括一个两端输入的与门和一个全加器,设计时这两个模块用原理图设计输入方式实现。
2.2.1四位阵列乘法模块的设计与实现
四位阵列乘法模块由十六个基本加法器模块构成,共有四个被乘数输入端四个乘数输入端和八个乘积的输出端。
加法器模块由四个两端接口的与门、两个两端接口的异或门和一个三端接口的或门构成如图2.2所示,其设计过程如下:
X=X1X2X3X4Y=Y1Y2Y3Y4X*Y=M0M1M2M3M4M5M6M7
(1)原理图设计输入方式
图2.2阵列乘法模块原理图
(2)创建元件图形符号
为了能在图形编辑器(原理图设计输入方式)中调用此十六个基本加法器模块,需要为这十六个加法器模块创建一个元件图形符号,可用XilinxFoundation3.1编译器的CreateSymbol模块实现。
(3)功能仿真
对创建的十六个基本加法器模块进行功能仿真,验证其功能的正确性,可用XilinxFoundation3.1编译器的Simulator模块实现。
四位阵列乘法器的功能表如表2.2所示。
表2.2阵列乘法功能表
输入被乘数
输入乘数
输出乘积
X1X2X3X4
Y1Y2Y3Y4
N0N1N2N3
N4N5N6N7
0000
0001
0000
0001
1111
0001
0000
1111
0001
1110
0000
1110
1111
1111
1110
0001
2.2.2细胞模块的设计与实现
细胞模块是以加法器为基础的模块,它包括四个输入端分别为被乘数X、乘数Y、部分积输入PIN、进位输入CIN,相乘部分积输出用POUT表示,进位输出用COUT表示,形成的原理图设计如图2.3表示,其设计过程如下:
部分积输出:
POUT=(XY)
PIN
CIN
进位输出:
CIN=XYPIN+XYCIN+PINCIN
(1)原理图设计输入方式
图2.3加法器运算原理图
(2)创建元件图形符号
为了能在图形编辑器(原理图设计输入方式)中调用此加法器,需要为加法器创建一个元件图形符号,可用XilinxFoundation3.1编译器的CreateSymbol模块实现。
(3)功能仿真
对创建的加法器元件进行功能仿真,验证其功能的正确性,可用XilinxFoundation3.1编译器的Simulator模块实现。
加法器的功能仿真波形如图2.4所示。
图2.4加法器功能仿真波形
表2.3加法器的功能表
输入信号
输出信号
XY
PINCIN
POUT
COUT
00
00
0
0
00
01
1
0
00
10
1
0
00
11
0
1
01
00
0
0
01
10
1
0
01
11
0
1
10
00
0
0
11
10
0
1
11
11
1
1
2.3仿真调试
仿真调试主要验证设计电路逻辑功能、时序的正确性,本设计中主要采用功能仿真方法对设计的电路进行仿真。
(1)建立仿真波形文件及仿真信号选择
功能仿真时,首先建立仿真波形文件,选择仿真信号,对选定的输入信号设置参数,选定的仿真信号和设置的参数如表2.4所示。
表2.4仿真信号选择和参数设置(举例)
输入信号
输出信号
X1X2X3X4
Y1Y2Y3Y4
N0N1N2N3
N4N5N6N7
0000
0001
1111
0001
0001
1110
1111
1111
(2)功能仿真结果与分析
功能仿真波形结果如图2.5所示,仿真数据结果如表2.5所示。
对表2.5与表1.1的内容进行对比,可以看出功能仿真结果是正确的,进而说明电路设计的正确性。
图2.5功能仿真波形结果
表2.5仿真数据结果(举例)
输入信号
输出信号
X1X2X3X4
Y1Y2Y3Y4
N0N1N2N3
N4N5N6N7
0000
0001
0000
0001
1111
0001
0000
1111
0001
1110
0000
1110
1111
1111
1110
0001
第3章编程下载与硬件测试
3.1编程下载
利用COP2000实验箱、XCV200实验板的编程下载功能,将得到的1037*.bit文件下载到XCV200实验板的XCV200可编程逻辑芯片中,此时该元件可实现四位阵列乘法器的功能。
3.2硬件测试及结果分析
利用XCV200实验板进行硬件功能测试。
一位全加器的输入数据通过XCV200实验板的输入开关实现,输出数据通过XCV200实验板的液晶显示管实现,其对应关系如表3.1所示。
表3.1XCV200实验板信号对应关系
XCV200芯片引脚信号
XCV200实验板
X1
K4(7)
X2
K4(6)
X3
K4(5)
X4
K4(4)
Y1
K4(3)
Y2
K4
(2)
Y3
K4
(1)
Y4
K4(0)
N0
D1
N1
N2
N3
N4
D0
N5
N6
N7
利用表2.4中的输入参数作为输入数据,逐个测试输出结果,即用XCV200实验板的开关K4(7)、K4(6)、K4(5)、K4(4)、K4(3)、K4
(2)、K4
(1)、K4(0)输入数据,同时观察液晶显示管D1和D0的输出,得到如表3.2所示的硬件测试结果。
表3.2硬件测试结果(举例)
输入信号控制开关
输出信号(十六进制)
K4(7)
K4(6)
K4(5)
K4(4)
K4(3)
K4
(2)
K4
(1)
K4(0)
D
(1)
D(0)
0
0
0
0
0
0
0
1
0
0
0
0
0
1
0
0
0
1
0
1
0
0
1
0
0
0
0
1
0
2
0
0
1
1
0
0
0
1
0
3
0
1
0
0
0
0
0
1
0
4
0
1
0
1
0
0
0
1
0
5
0
1
1
0
0
0
0
1
0
6
0
1
1
1
0
0
0
1
0
7
1
0
0
0
0
0
0
1
0
8
1
0
0
1
0
0
0
1
0
9
1
0
1
0
0
0
0
1
0
A
1
0
1
1
0
0
0
1
0
B
1
1
0
0
0
0
0
1
0
C
1
1
0
1
0
0
0
1
0
D
1
1
1
0
0
0
0
1
0
E
1
1
1
1
0
0
0
1
0
F
对表3.2与表1.1的内容进行对比,可以看出硬件测试结果是正确的,说明电路设计完全正确并下载成功。
下面以被乘数X=1111,乘数Y=0011为例其乘积结果则在XCV200实验板上显示为如图所示:
理论计算结果得:
X=1111Y=0011
X*Y=(00101101)2=(2d)16
从而验正了测试结果是正确的,说明电路设计完全正确。
参考文献
[1]曹昕燕.EDA技术实验与课程设计[M].北京:
清华大学出版社,2006
[2]范延滨.微型计算机系统原理、接口与EDA设计技术[M].北京:
北京邮电大学出版社,2006
[3]王爱英.计算机组成与结构(第4版)[M].北京:
清华大学出版社,2006
[4]百中英.计算机组成原理题解、题库与实验(第3版)[M].北京:
科学出版社,2001
[5]王尔乾.数字逻辑及数字集成电路.北京:
清华大学出版社,1996
[6]杨天行.计算机技术.北京:
国防工业出版社,1999
[7]李勇、裘式纲等.计算机原理与设计.长沙:
国防大学出版社,1989
课程设计总结:
1.在课程设计中遇到的困难以及解决的方法:
本次课设题目是阵列乘法器的设计,可实现四位阵列乘法的功能。
起初设计该电路的时候遇到了很多困难,尤其在对电路原理图进行封装时,完全没有头绪。
后来向老师和同学进行请教才把问题得以解决,导致出现这样问题的原因是自己本身对系统软件的操作并不是很了解,所以才发生这样的问题。
封装问题解决完以后,在对原理图进行验证的时候出现了问题,验证出现的结果并不是想象中的正确结果,后来通过一步步耐心的检查并验证才发现错误的所在,接下来对其进行修改。
最后,才达到了课可设题目所要求的实验结果目的,可以实现阵列的乘法的设计。
2.在整个课程设计中的感受:
课设实验结束了,我的感受颇多,尤其在这将近十天的时间里,与老师和同学建立了非常友好的感情。
我在这将近十天的时间里在实验学到了平时在课堂上学不到的很多东西,自己的基础知识也得到进一步的巩固,动手能力也得到了很大的提高。
最重要的一点是我的心血没有白费,因为我凭借自己的所知和向老师、同学请教,成功地将课设做完并达到了题目所要求的目的。
指导教师评语:
指导教师(签字):
年月日
课程设计成绩
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 阵列 乘法