EDA实验报告Word下载.docx
- 文档编号:5613005
- 上传时间:2023-05-05
- 格式:DOCX
- 页数:10
- 大小:32.12KB
EDA实验报告Word下载.docx
《EDA实验报告Word下载.docx》由会员分享,可在线阅读,更多相关《EDA实验报告Word下载.docx(10页珍藏版)》请在冰点文库上搜索。
2)一个十进制计数器即为一个4位二进制计数器,若将两个4位二进制计数器连接起来就可构成100进制以内的计数器。
实验程序
1、3-8译码器
libraryIEEE;
useIEEE.STD_LOGIC_1164.ALL;
useIEEE.STD_LOGIC_ARITH.ALL;
useIEEE.STD_LOGIC_UNSIGNED.ALL;
--Uncommentthefollowinglinestousethedeclarationsthatare
--providedforinstantiatingXilinxprimitivecomponents.
--libraryUNISIM;
--useUNISIM.VComponents.all;
entityT138is
port(A,B,C,G1,G2A,G2B:
instd_logic;
Y:
outstd_logic_vector(7downto0));
endT138;
architectureBehavioralofT138is
signalD_IN:
std_logic_vector(2downto0);
begin
D_IN<
=C&
B&
A;
process(D_IN,G1,G2A,G2B)
if(G1='
1'
andG2A='
0'
andG2B='
)then
caseD_INis
when"
000"
=>
Y<
="
00000001"
;
001"
00000010"
010"
00000100"
011"
00001000"
100"
00010000"
101"
00100000"
110"
01000000"
111"
10000000"
whenothers=>
null;
endcase;
elseY<
11111111"
endif;
endprocess;
endBehavioral;
仿真结果:
2.60进制计数器
实验程序:
entityjishuqiis
port(clk:
en,clr:
q,qd:
outstd_logic_vector(3downto0));
endjishuqi;
architectureBehavioralofjishuqiis
signalco:
std_logic;
signalql,qh:
std_logic_vector(3downto0);
q(3)<
=qh(3);
q
(2)<
=qh
(2);
q
(1)<
=qh
(1);
q(0)<
=qh(0);
qd(3)<
=ql(3);
qd
(2)<
=ql
(2);
qd
(1)<
=ql
(1);
qd(0)<
=ql(0);
P1:
process(clk,en,clr)
begin
if(clr='
ql<
0000"
elsif(clk'
eventandclk='
if(en='
if(ql="
1001"
ql<
else
=ql+'
endif;
endif;
endprocessP1;
co<
=ql(3)andql(0);
P2:
process(clk,clr)
qh<
elsif
(clk'
if(co='
if(qh="
0101"
qh<
else
=qh+'
endif;
endif;
endprocessP2;
实验二、四位全加器和8位移位寄存器设计实验
1)学习了解加法器工作原理。
2)学习用VHDL语言设计全加器的设计方法。
3)学习使用元件例化的方法设计多位加法器。
4)了解移位寄存器的工作原理
5)学习移位寄存器设计方法
1)用VHDL语言设计全加器。
2)用元件例化方法设计一个四位二进制加法器。
3)用VHDL语言设计一个双向可控移位寄存器
3、实验步骤
1)4位二进制加法器可以由4个一位全加器通过级联的方式构成。
全加器:
完成加数、被加数、低位的进位数三个1位数相加,并产生本位“和”及向高位“进位”。
2)移位寄存器是由D-型触发器构成的,将前一个触发器的输出作为下一个触发器的输入,每个触发器的时钟连接成同步方式。
常用的移位寄存器有并行输入串行输出移位寄存器和串行输入并行输出移位寄存器。
这些移位寄存器经常用作串并转换电路。
试验程序:
1.用元件例化方法设计一个四位二进制加法器。
entityquanjiais
port(a,b,cin:
cout,sum:
outstd_logic);
endquanjia;
architectureBehavioralofquanjiais
signalint:
std_logic;
int<
=axorb;
cout<
=(aandb)or(intandcin);
sum<
=intxorcin;
四位加法器:
entitysiweiis
generic(n:
integer:
=4);
port(a,b:
instd_logic_vector(ndownto1);
cin:
instd_logic;
sum:
outstd_logic_vector(ndownto1);
cout:
outstd_logic
);
endsiwei;
architectureBehavioralofsiweiis
componentquanjia
sum,cout:
endcomponent;
signalcarry:
std_logic_vector(ndownto1);
U1:
quanjiaportmap(a
(1),b
(1),cin,sum
(1),carry
(1));
U2:
quanjiaportmap(a
(2),b
(2),carry
(1),sum
(2),carry
(2));
U3:
quanjiaportmap(a(3),b(3),carry
(2),sum(3),carry(3));
U4:
quanjiaportmap(a(4),b(4),carry(3),sum(4),cout);
实验截图:
2.用VHDL语言设计一个8位双向可控移位寄存器。
程序代码:
entityyiweiis
port(Dim:
S:
clk:
Q:
endyiwei;
architectureBehavioralofyiweiis
signalqtemp:
std_logic_vector(7downto0):
00000000"
process(clk,S)
if(clk'
if(S='
qtemp<
=qtemp(6downto0)&
Dim;
elseqtemp<
=Dim&
qtemp(7downto1);
endprocess;
Q<
=qtemp;
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 实验 报告