.
I / 14
课 程 设 计 报 告
课程设计名称:计算机组成原理课程设计
课程设计题目:定点原码两位乘法器的设计
院〔系:计算机学院
专 业:计算机科学与技术
班 级:
学 号:
姓 名:
数模块,一个被乘数模块和部分积模块以及选择器模块和移位电路模块封装而成的一个完整的设计实体,输入和输出组成。
可利用Xilinx Foundation ,INTA为乘数输入端,INTB为被乘数输入端,CLK为脉冲输入端,OUTC为两数积高位输出端,OUTD为两数积低位输出端。
定点原码两位器顶层图形文件
〔1器件的选择
由于硬件设计环境是基于伟福COP2000型计算机组成原理实验仪和XCV200实验板,故采用的目标芯片为Xlinx XCV200可编程逻辑芯片。
〔2引脚锁定
把顶层图形文件中的输入/输出信号安排到Xlinx XCV200芯片指定的引脚上去,实现芯片的引脚锁定,各信号及Xlinx XCV200芯片引脚对应关系。
4 / 14
.
图形文件中的输入/输出信号
XCV200芯片引脚
INTA
94,95,96,97,100,101,102,103
INTB
79,80,81,82,84,85,86,87
CLK
213
OUTC
224,228,229,230,231,232,234,235
OUTD
215,216,217,218,220,221,222,223
基本功能模块的组成及工作原理
定点原码两位乘法器是由一个乘数模块,一个被乘数模块和部分积模块以及选择器模块和移位电路模块为基础而实现的,设计时被乘数模块,部分积模块以及选择器模块用图形设计输入方式实现,移位电路模块采用Verilog语言设计方式实现。
〔1被乘数模块的组成
被乘数模块由4个寄存器,1个移位寄存器,1个加法器等组成。
〔2被乘数模块的工作原理
被乘数模块主要的功能是实现把X转换成0,X,2X以及-X然后再由选择器模块选择出那一个送到加法器里。对2X的实现才用移位寄存器来实现,用其左移的功能将X左移一位得到2X,-X用加法器和寄存器得到,采用取反加一的办法实现。
6 / 14
.
〔3被乘模块部结构
〔1乘数模块的组成
乘数模块由寄存器和移位电路组成。
〔2乘数模块的工作原理
乘数模块主要功能是右移两位将乘数最低两位移出,所移出的两位去控制被乘数模块去选择向加法器所送的数,移位由一个移位电路实现右移两位,在移位的同时乘数本身右移两位。
〔3乘数模块部结构
〔1选择模块的组成
选择模块由8个4选1的选择器组成,8个4路选择器分别去选择由被乘数模块转换完的0,X,2X,-X,由8个4路选择器分别表示8位,再组合成一个数输出。
〔2选择模块的工作原理
选择模块的控制信号来自于乘数所移出的两位,然后选择被乘数的0,X,2X,-X其中一个输出,其主要工作原理就是8个4选1的选择器。
4选一数据选择器逻辑输出表达式为:
F=〔S0S1D0+S0S1D1+S0S1D2+S0S1D3E
它的功能表为:
地址
使能端
输入
输出
S0
S1
E
D
F
* *
1
*
0
0 0
0
D0---D3
D0
0 1
0
D0---D3
D1
1 0
0
D0---D3
D2
1 1
0
D0---D3
D3
从表上我们可以看出当使能端E为"1"时输出为"0"即禁止,只有当使能端为"0"时选择器才有效
〔3选择模块的部结构
6 / 14
.
〔1创建Verilog源文件
module BFI <D, CLK, CLR, CE, LOAD, Q, Y1, Y0> ;
input [7:0] D ;
input CLK ;
input CLR ;
input CE ;
input LOAD ;
output [7:0] Q ;
reg [7:0] Q ;
output Y1 ;
reg Y1 ;
output Y0 ;
reg Y0 ;
always<posedge CLK or negedge CLR>
begin
if<!CLR> Q<=0;
else if<LOAD> Q<=D;
定点原码两位乘法器的设计说明 来自淘豆网www.taodocs.com转载请标明出处.