8位二进制全加器设计实验报告Word文档格式.docx
- 文档编号:20682239
- 上传时间:2023-01-25
- 格式:DOCX
- 页数:13
- 大小:130.41KB
8位二进制全加器设计实验报告Word文档格式.docx
《8位二进制全加器设计实验报告Word文档格式.docx》由会员分享,可在线阅读,更多相关《8位二进制全加器设计实验报告Word文档格式.docx(13页珍藏版)》请在冰豆网上搜索。
自己写程序
一、设计原理
先写一个半加器,然后用两个半加器例化出一个全加器,再用八个全加器例化出一个八位全加器。
原理如图。
关于上升沿触发,使用D触发器和八位全加器进行例化,D触发器接同一个时钟。
最终完成上升沿触发的八位全加器的设计。
二、实验程序
半加器描述
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
ENTITYh_adderIS
PORT(A,B:
INSTD_LOGIC;
CO,SO:
OUTSTD_LOGIC);
ENDENTITYh_adder;
ARCHITECTUREFH1OFh_adderIS
BEGIN
SO<
=NOT(AXOR(NOTB));
CO<
=AANDB;
ENDARCHITECTUREFH1;
一位二进制全加器设计顶层描述
ENTITYf_adderIS
PORT(AIN,BIN,CIN:
COUT,SUM:
ENDENTITYf_adder;
ARCHITECTUREFD1OFf_adderIS
COMPONENTh_adderIS
PORT(A,B:
CO,SO:
ENDCOMPONENT;
SIGNALD,E,F:
STD_LOGIC;
U1:
h_adderPORTMAP(A=>
AIN,B=>
BIN,CO=>
D,SO=>
E);
U2:
E,B=>
CIN,CO=>
F,SO=>
SUM);
COUT<
=DORF;
ENDARCHITECTUREFD1;
D触发器描述
ENTITYDEF1IS
PORT(CLK:
D:
Q:
OUTSTD_LOGIC);
END;
ARCHITECTUREbhvOFDEF1IS
SIGNALQ1:
STD_LOGIC;
PROCESS(CLK)
IFCLK'
EVENTANDCLK='
1'
THENQ1<
=D;
ENDIF;
Q<
=Q1;
ENDPROCESS;
ENDbhv;
8位二进制加法器顶层描述
USEIEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITYf_adder8IS
PORT(AIN,BIN:
INSTD_LOGIC_VECTOR(7DOWNTO0);
ASEGIN1,ASEGIN2,BSEGIN1,BSEGIN2:
BUFFERSTD_LOGIC_VECTOR(6DOWNTO0);
CIN:
CLK:
SUM:
BUFFERSTD_LOGIC_VECTOR(7DOWNTO0);
SEG1:
SEG2:
COUT:
ENDf_adder8;
ARCHITECTUREONEOFf_adder8IS
COMPONENTf_adderIS
PORT(AIN,BIN,CIN:
COUT,SUM:
COMPONENTDEF1IS
PORT(CLK:
D:
Q:
SIGNALC,C1,C2,C3,C4,C5,C6,C7:
SIGNALa:
STD_LOGIC_VECTOR(7DOWNTO0);
SIGNALb:
SIGNALs:
SIGNALss:
STD_LOGIC_VECTOR(3DOWNTO0);
SIGNALsss:
f_adderPORTMAP(AIN=>
a(0),BIN=>
b(0),CIN=>
CIN,SUM=>
s(0),COUT=>
C1);
a
(1),BIN=>
b
(1),CIN=>
C1,SUM=>
s
(1),COUT=>
C2);
U3:
a
(2),BIN=>
b
(2),CIN=>
C2,SUM=>
s
(2),COUT=>
C3);
U4:
a(3),BIN=>
b(3),CIN=>
C3,SUM=>
s(3),COUT=>
C4);
U5:
a(4),BIN=>
b(4),CIN=>
C4,SUM=>
s(4),COUT=>
C5);
U6:
a(5),BIN=>
b(5),CIN=>
C5,SUM=>
s(5),COUT=>
C6);
U7:
a(6),BIN=>
b(6),CIN=>
C6,SUM=>
s(6),COUT=>
C7);
U8:
a(7),BIN=>
b(7),CIN=>
C7,SUM=>
s(7),COUT=>
C);
U9:
DEF1PORTMAP(Q=>
a(0),D=>
AIN(0),CLK=>
CLK);
U10:
a
(1),D=>
AIN
(1),CLK=>
U11:
a
(2),D=>
AIN
(2),CLK=>
U12:
a(3),D=>
AIN(3),CLK=>
U13:
a(4),D=>
AIN(4),CLK=>
U14:
a(5),D=>
AIN(5),CLK=>
U15:
a(6),D=>
AIN(6),CLK=>
U16:
a(7),D=>
AIN(7),CLK=>
U17:
b(0),D=>
BIN(0),CLK=>
U18:
b
(1),D=>
BIN
(1),CLK=>
U19:
b
(2),D=>
BIN
(2),CLK=>
U20:
b(3),D=>
BIN(3),CLK=>
U21:
b(4),D=>
BIN(4),CLK=>
U22:
b(5),D=>
BIN(5),CLK=>
U23:
b(6),D=>
BIN(6),CLK=>
U24:
b(7),D=>
BIN(7),CLK=>
U25:
SUM(0),D=>
s(0),CLK=>
U26:
SUM
(1),D=>
s
(1),CLK=>
U27:
SUM
(2),D=>
s
(2),CLK=>
U28:
SUM(3),D=>
s(3),CLK=>
U29:
SUM(4),D=>
s(4),CLK=>
U30:
SUM(5),D=>
s(5),CLK=>
U31:
SUM(6),D=>
s(6),CLK=>
U32:
SUM(7),D=>
s(7),CLK=>
U33:
COUT,D=>
C,CLK=>
PROCESS(CLK,AIN,BIN)
VARIABLEsSeg1:
VARIABLEsSeg2:
BEGIN
ss(3DOWNTO0)<
=SUM(3DOWNTO0);
sss(3DOWNTO0)<
=SUM(7DOWNTO4);
sSeg1(7DOWNTO0):
=AIN(7DOWNTO0);
sSeg2(7DOWNTO0):
=BIN(7DOWNTO0);
CASEssIS
WHEN"
0000"
=>
SEG1<
="
1000000"
;
--0
0001"
1111001"
0010"
="
0100100"
0011"
0110000"
0100"
0011001"
0101"
0010010"
0110"
0000010"
0111"
1111000"
1000"
0000000"
1001"
0011000"
--9
1010"
0001000"
1011"
0000011"
1100"
1001110"
1101"
0100001"
1110"
0000110"
1111"
0001110"
WHENOTHERS=>
NULL;
ENDCASE;
CASEsssIS
SEG2<
1001010"
CASEsSeg1(3DOWNTO0)IS
ASEGIN1<
ASEGIN1<
ENDCASE;
CASEsSeg1(7DOWNTO4)IS
ASEGIN2<
ASEGIN2<
CASEsSeg2(3DOWNTO0)IS
BSEGIN1<
BSEGIN1<
CASEsSeg2(7DOWNTO4)IS
BSEGIN2<
BSEGIN2<
ENDPROCESS;
--U1:
AIN(0),BIN=>
BIN(0),CIN=>
SUM(0),COUT=>
--U2:
AIN
(1),BIN=>
BIN
(1),CIN=>
SUM
(1),COUT=>
--U3:
AIN
(2),BIN=>
BIN
(2),CIN=>
SUM
(2),COUT=>
--U4:
AIN(3),BIN=>
BIN(3),CIN=>
SUM(3),COUT=>
--U5:
AIN(4),BIN=>
BIN(4),CIN=>
SUM(4),COUT=>
--U6:
AIN(5),BIN=>
BIN(5),CIN=>
SUM(5),COUT=>
--U7:
AIN(6),BIN=>
BIN(6),CIN=>
SUM(6),COUT=>
--U8:
AIN(7),BIN=>
BIN(7),CIN=>
SUM(7),COUT=>
COUT);
ENDONE;
三、编译及仿真结果
程序波形仿真图
时间分析
使用LPM创立元件
一、打开MegaWizar
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 二进制 全加器 设计 实验 报告