视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
组成原理课设阵列乘法器
2025-10-02 13:59:24 责编:小OO
文档
沈阳航空工业学院

课 程 设 计 报 告

课程设计名称:计算机组成原理课程设计

课程设计题目:阵列乘法器的设计

 

院(系):计算机学院

专    业:计算机科学与技术

班    级:4401102

学    号:20040*******

*    *** * *

*****    *

完成日期:2006年12月31日

第1章  总体设计方案

1.1  设计原理

串行方法毕竟太慢,执行一次乘法的时间至少是执行一次加法时间的n倍,不能满足科学技术对高速乘法所提出的要求。自从大规模集成电路问世以来,高速的单元阵列乘法器应运而生,出现了各种形式的硬件乘法器的常规设计是适用“串行移位”和“并行加法”相结合的方法,这种方法并不需要很多器件。然而流水线阵列乘法器,它们属于并行乘法器,提供了极快的速度。

 如图所示的一个阵列乘法器完成X*Y乘法运算(X=X1X2X3X4,Y=Y1Y2Y3Y4)。阵列的每一行送入乘数Y的每一位数位,而各行错开形成的每一斜列则送入被乘数的每一数位。图中每一个方框包括一个与门和一个两位全加器。    

阵列乘法器的原理框图如图1.1所示,X[4:1],Y[4:1]分别是乘数和被乘数输入端,MULT[8:1]为乘积输出端。

图1.1  阵列乘法器原理框图

阵列乘法器实现的功能是计算两个四位二进制间的算法,由数据总线将乘数Y[4:1]和被乘数X[4:1]送到乘法器中,经阵列乘法器计算出结果由总线MULT[8:1]输出。阵列乘法器是由相同的细胞块构成,呈阵列阵型。

阵列乘法器完X*Y乘法运算X=X1X2X3X4,Y=Y1Y2Y3Y4)。阵列的每一行送入乘数Y的每一位数位,而各行错开形成的每一斜列则送入被乘数的每一数位。在设计的电路中,有许多相同的细胞块组成,而细胞块包括一个与门和一个2位全加器。 X、Y、PIN、CIN是输入,COUT、POUT是输出。 

在设计的过程中,采用的是由内到外封装,也就是先将最底层电路封装到创建的器件中,由外到内一层套一层。整个阵列乘法器主要由阵列块组成,而  阵列块是由与门和二位全加器组成,所以在封装的时候,先把二位全加器封装到ADD2中,然后将ADD2和与门封装到细胞块PART中,最后将PART封装到乘法器MUX中,和输入、输出组成完整的电路。

阵列乘法器的整体设计主要是由相同的细胞块实现的,而细胞块包含两输入与门模块和二位全加器模块,两输入与门模块和全加器模块作为底层设计,采用原理图设计输入方式,顶层的全加器采用原理图设计输入方式。

1.3  设计环境

·硬件环境:伟福COP2000型计算机组成原理实验仪、XCV200实验板、微机。 

·EDA环境:FOUNDATION设计软件。主要用于百万逻辑门设计。该系统由设计入口工具、设计实现工具、设计验证工具三大部分组成。设计入口工具包括原理图编辑器、有限状态机编辑器、硬件描述语言(HDL)编辑器、LogiBLOX模块生成器、Xilinx内核生成器等软件。气功能是:接收各种图形或文字的设计输入,并最终生成网络表文件。设计实现工具包括流程引擎、编辑器、基片规划器、FPGA编辑器、FPGA写入器等软件。设计实现工具用于将网络表转化为配置比特流,并下载到器件。时设计验证工具包括功能和时序仿真器、静态时序分析器等,可用来对设计中的逻辑关系及输出结果进行检验,并详尽分析各个时序的满足情况。

COP2000 集成开发环境是为COP2000 实验仪与PC 机相连进行高层次实验的配套软件,该软件在Windows 下运行。

第2章  详细设计方案

2.1  顶层方案图的设计与实现

顶层方案图实现阵列乘法的逻辑功能,采用原理图设计输入方式完成,电路实现基于XCV200可编程逻辑芯片。在完成原理图的功能设计后,把输入/输出信号安排到XCV200指定的引脚上去,实现芯片的引脚锁定。

2.1.1创建顶层图形设计文件

顶层图形文件主要由三大块组成:分别是乘数、被乘数的输入、乘积输出、和自己封装的乘法器件MUX组装而成的一个完整的设计实体。可利用Xilinx ISE ECS模块实现顶层图形文件的设计,顶层图形文件结构如图2.1所示。

图2.1  阵列乘法器的顶层图形文件结构

2.1.2器件的选择与引脚锁定

(1)器件的选择

由于硬件设计环境是基于伟福COP2000型计算机组成原理实验仪和XCV200实验板,故采用的目标芯片为Xlinx XCV200可编程逻辑芯片。

(2)引脚锁定

把顶层图形文件中的输入/输出信号安排到Xlinx XCV200芯片指定的引脚上去,实现芯片的引脚锁定,各信号及Xlinx XCV200芯片引脚对应关系如表2.1所示。

                芯片和管脚对应表:

芯片内部信号图形文件中的输入、输出信号对应的管脚
X1A1P94
X2A2P95
X3A3P96
X4A4P97
Y1B1P100
Y2B2P101
Y3B3P12
Y4B4P103
MULT1M1P215
MULT2M2P216
MULT3M3P217
MULT4M4P218
MULT5M5P220
MULT6M6P221
MULT7M7P222
MULT8M8P223
2.2  功能模块的设计与实现

功能模块中,包括乘法器(MUX)、细胞块(PART)、全加器都是由逻辑框图设计实现的。

2.2细胞块PART的设计与实现

(1)创建元件图形符号:

细胞块由一个与门和一个全加器实现,其中X、Y、PIN、CIN是输入端,COUT、POUT是输出端

(2)实现器件功能:

(3)功能仿真

对创建的半加器元件(H_ADDER)进行功能仿真,验证其功能的正确性,可用Xilinx ISE编译器的Simulator模块实现。

XYPINCINPOUTCOUT
111111
011101
101010
001010
110101
010110
功能仿真波形结果如图所示,仿真数据结果如表所示。对表与表的内容进行对比,可以看出功能仿真结果是正确的,进而说明电路设计正确性。

2.2.3 乘法器的设计与实现

(1)创建图形符号

其中X[4:1]是被乘数输入、Y[4:1]是乘数输入,MULT[8:1]是乘积输出,都是经过总线传输的。

 

(2)器件实现

(2)功能仿真

被乘数X

乘数Y

乘积MULT

050414
030818
0A095A
040B2C

功能仿真波形结果如图所示,仿真数据结果如表所示。对表与表的内容进行对比,可以看出功能仿真结果是正确的,进而说明电路设计正确性。

2.3仿真调试

仿真调试主要验证设计电路逻辑功能、时序的正确性,本设计中主要采用功能仿真方法对设计的电路进行仿真。

(1)建立仿真波形文件及仿真信号选择

功能仿真时,首先建立仿真波形文件,选择仿真信号,对选定的输入信号设置参数,选定的仿真信号和设置的参数如表2.2所示。

表2.2 仿真信号选择和参数设置

被乘数乘数乘积
X1X2X3X4

Y1Y2Y3Y4

MULT( M1M2M3M4M5M6M7M8)

0000100101100011
1000001100011000
0010011000001100
1010011101000110
(2)功能仿真结果与分析

功能仿真波形结果如图所示,仿真数据结果如表所示。对表与表的内容进行对比,可以看出功能仿真结果是正确的,进而说明电路设计正确性。

第3章  编程下载与硬件测试

3.1  编程下载

利用编程下载功能,将得到的farewell.bit文件下载到XCV200实验板的XCV200可编程逻辑芯片中。

3.2  硬件测试及结果分析

利用XCV200实验板进行硬件功能测试。阵列乘法的输入数据通过XCV200实验板的输入开关实现,输出数据通过XCV200实验板的LED指示灯实现,其对应关系如表3.1所示。

                  XCV200实验板信号对应关系

 

图形的输入、输出信号对应的管脚控制开关
被乘数

X1X2X3X4

A1A2A3A4

P94 P95 P96 P97

K0

乘数

Y1Y2Y3Y4

B1B2B3B4

P100 P101 P102 P103

K0

乘积M1M2M3M4

M5M6M7M8

P215 P216 P217 P218

P220 P221 P222 P223

D0
 

利用表中的输入参数作为输入数据,逐个测试输出结果,即用XCV200实验板的开关K0输入数据,同时观察D0的输出,得到如表3.2所示的硬件测试结果。

表3.2 硬件测试结果

控制开关K0(S0S1S2S3 S4S5S6S7)

数码管显示

S0S1S2S3

S4S5S6S7

1011100163
001101000C
1010010132

对表与图的内容进行对比,可以看出硬件测试结果是正确的,说明电路设计完全正确。

参考文献

[1] 曹昕燕. EDA技术实验与课程设计[M].北京:清华大学出版社,2006

[2] 范延滨.微型计算机系统原理、接口与EDA设计技术[M].北京:北京邮电大学出版社,2006

[3] 王爱英.计算机组成与结构(第4版)[M].北京:清华大学出版社,2006

[4] 李勇.  计算机原理与设计(修订本).长沙:国防科技大学出版社,19

[5] 王尔乾.数字逻辑与数字集成电路.北京:清华大学出版社,1996

[6]白中英.计算机组成原理.北京:科学出版社,1994

[7]葛本修.计算机组织与结构.北京:北京航空航天大学出版社,1992

附录:电路图

课程设计总结:

紧张而有充实的十天过去了,在这次计算机组成原理课程设计中我得到了很多,也失去了很多,也发现了很多问题,先从以下三个方面对自己这十来天的课设做个总结:

1、在这次课程设计中遇到了许许多多的问题。我的课程设计的题目是〈〈阵列乘法器的设计〉〉,对什么是阵列是个很陌生的概念,还有后来在机器上实现算法时,没有输出结果,以及后来仿真成功但下载失败等等。对于第一个,只有上网或是去图书馆找资料,第二个几经调试发现是与总线相连的分支在起名时发生了错误,最后一个问题是由于没有在执行时修改里面的时钟选项,当然这是我遇到很多问题中的几个;

这次课程设计除了要完成任务书上的各项功能,也使得自己学会了使

软件,以及调式,也从老师那里学到了很多平时学不到的知识和怎么去学习;

在这次课程设计中,我想了很多也认识了许多。在我们面对陌生或是棘的问题时,不应该选择逃避或是放弃的态度,有许多事情并不是我们想象中的那样复杂或是困难,要试着接触它,慢慢把它给弄明白。还有,就是应该多和老师沟通沟通,别以为的沿着固有的思路走下去,要学会变通。

总的来说,这次的课程设计收获很大,当然也曾沮丧过,受益非浅啊。
指导教师评语:

指导教师(签字):                        年   月   日

课程设计成绩

下载本文
显示全文
专题