EDA实验报告四选一四位比较器加法器计数器巴克码发生器Word文档格式.docx

上传人:b****3 文档编号:15142860 上传时间:2022-10-28 格式:DOCX 页数:19 大小:381.55KB
下载 相关 举报
EDA实验报告四选一四位比较器加法器计数器巴克码发生器Word文档格式.docx_第1页
第1页 / 共19页
EDA实验报告四选一四位比较器加法器计数器巴克码发生器Word文档格式.docx_第2页
第2页 / 共19页
EDA实验报告四选一四位比较器加法器计数器巴克码发生器Word文档格式.docx_第3页
第3页 / 共19页
EDA实验报告四选一四位比较器加法器计数器巴克码发生器Word文档格式.docx_第4页
第4页 / 共19页
EDA实验报告四选一四位比较器加法器计数器巴克码发生器Word文档格式.docx_第5页
第5页 / 共19页
点击查看更多>>
下载资源
资源描述

EDA实验报告四选一四位比较器加法器计数器巴克码发生器Word文档格式.docx

《EDA实验报告四选一四位比较器加法器计数器巴克码发生器Word文档格式.docx》由会员分享,可在线阅读,更多相关《EDA实验报告四选一四位比较器加法器计数器巴克码发生器Word文档格式.docx(19页珍藏版)》请在冰豆网上搜索。

EDA实验报告四选一四位比较器加法器计数器巴克码发生器Word文档格式.docx

4选1数据选择器的原理图:

仿真波形图:

管脚分配:

实验2四位比较器

1.设计四位二进制码比较器,并在实验开发系统上验证。

2.学习层次化设计方法。

5.其它器件与材料若干

本实验实现两个4位二进制码的比较器,输入为两个4位二进制码和,输出为M(A=B),G(A>

B)和L(A<

B)(如图所示)。

用高低电平开关作为输入,发光二极管作为输出,具体管脚安排可根据试验系统的实际情况自行定义。

1.用硬件描述语言编写四位二进制码

比较器的源文件;

2.对设计进行仿真验证;

3.编程下载并在实验开发系统上进行

硬件验证。

四位比较器功能框图

四位比较器VHDL源文件:

libraryieee;

useieee.std_logic_1164.all;

useieee.std_logic_arith.all;

useieee.std_logic_unsigned.all;

entitycomp4is

port(A:

instd_logic_vector(3downto0);

B:

M,G,L:

outstd_logic);

endcomp4;

architecturebehaveofcomp4is

begin

p1:

process(A,B)

begin

if(A>

B)thenG<

='

1'

;

M<

0'

L<

elsif(A<

elsif(A=B)thenG<

elseG<

endif;

endprocessp1;

endbehave;

试验3并行加法器设计

一、试验目的

1.设计一个4位加法器。

2.体会用VHDL进行逻辑描述的优点。

3,熟悉层次化设计方法。

二、试验仪器与器材

1.EDA开发软件一套

2.微机一台

3.试验开发系统一台

4.打印机一台

5.其他器材和材料若干

三、试验说明

a3

本试验实现一个4位二进制数加法器,其功能框图如图所示。

试验时用高低电平开关作为输入,用数码管作为输出(或用发光二极管),管脚锁定可根据试验系统自行安排。

adder4

a2

a1

a0

b3

b2

b1

b0

ci

s3

s2

s1

s0

co

全加器功能框图

1.用硬件描述语言编写4位二进制数全加器的源文件;

2.对设计文件进行编译;

3.仿真设计文件;

4.编程下载并进行试验验证。

五、试验结果

4位二进制全加器的源文件:

entityadd4is

port(a:

b:

ci:

instd_logic;

s:

outstd_logic_vector(3downto0);

co:

endadd4;

architecturebehaveofadd4is

signalaa,bb,sum:

std_logic_vector(4downto0);

aa<

&

a;

bb<

b;

sum<

=aa+bb+ci;

s<

=sum(3downto0);

co<

=sum(4);

实验4计数器设计

计数器是实际中最为常用的时序电路模块之一,本实验的主要目的是掌握使用HDL描述计数器类型模块的基本方法。

1.EDA开发软件一套

2.微机一台

3.实验开发系统一台

4.打印机一台

5.其他器材与材料若干

计数器是数字电路系统中最重要的功能模块之一,设计时可以采用原理图或HDL语言完成。

下载验证时的计数时钟可选连续或单脉冲,并用数码管显示计数值。

1.设计一个带有计数允许输入端、复位输入端和进位输入端的十进制计数器。

2.编制仿真测试文件,并进行功能仿真。

3.下载并验证计数器功能。

4.为上述设计建立元件符号。

5.在上述基础上分别设计按8421BCD码和二进制计数的100进制同步计数器。

十进制计数器程序:

libraryieee;

entitycounter10is

port(

reset,clk,en:

inbit;

co:

outbit;

q:

outstd_logic_vector(0to3)

);

endentitycounter10;

architecturear_counter10ofcounter10is

signalcq:

std_logic_vector(0to3);

p1:

process(clk,en,reset)

variablecnt:

integerrange0to10:

=0;

if(reset='

)then

if(clk'

eventandclk='

if(en='

)then

cnt:

=cnt+1;

cq<

=cq+1;

if(cnt=10)then

co<

cnt:

=0;

cq<

="

0000"

else

endif;

endif;

else

cnt:

cq<

endif;

q<

=cq;

endprocessp1;

endarchitecturear_counter10;

4_7译码器程序:

entityBCDis

port(a:

b:

outstd_logic_vector(6downto0));

endBCD;

architecturertofBCDis

signalindata:

std_logic_vector(3downto0);

indata<

=a;

process(indata)

begin

caseindatais

when"

=>

b<

1000000"

0001"

1111001"

0010"

0100100"

0011"

0110000"

0100"

0011001"

0101"

0010010"

0110"

0000010"

0111"

1111000"

1000"

0000000"

1001"

0010000"

whenothers=>

1111111"

endcase;

endprocess;

endrt;

BCD引脚分配

BCD仿真波形

分频器程序

entityfenpinqiis

clk:

oclk:

outbit

endentityfenpinqi;

architecturear_fpqoffenpinqiis

signalinclk:

bit;

signalnumber:

integerrange0to30000000:

p0:

process(clk)

if(clk'

)then

if(number=24999999)then

number<

inclk<

=notinclk;

else

number<

=number+1;

inclk<

=inclk;

endif;

oclk<

endprocessp0;

endarchitecturear_fpq;

10进制计数器原理图

100进制计数器原理图:

100进制计数器的另一种做法:

100进制计数器程序:

useieee.std_logic

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 考试认证 > 公务员考试

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1