EDA实验总结报告Word文件下载.docx

上传人:b****2 文档编号:15083909 上传时间:2022-10-27 格式:DOCX 页数:19 大小:687.03KB
下载 相关 举报
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数据选择器:

(1)原理框图:

如右图。

D0、D1、D2、D3:

输入数据

A1、A0:

地址变量

由地址码决定从4路输入中选择哪1路输出。

(2)真值表如下图:

(3)逻辑图

数据选择器的原理比较简单,首先必须设置一个选择标志信号,目的就是为了从多路信号中选择所需要的一路信号,选择标志信号的一种状态对应着一路信号。

在应用中,设置一定的选择标志信号状态即可得到相应的某一路信号。

这就是数据选择器的实现原理。

三.实验容

1、分别采用原理图和VHDL语言的形式设计4选1数据选择器

2、对所涉及的电路进行编译及正确的仿真。

电路图:

四、实验程序

libraryieee;

useieee.std_Logic_1164.all;

ENTITYmux4IS

PORT(

a0,a1,a2,a3:

INSTD_LOGIC;

s:

INSTD_LOGIC_VECTOR(1DOWNTO0);

y:

OUTSTD_LOGIC);

ENDmux4;

ARCHITECTUREarchmuxOFmux4IS

BEGIN

y<

=a0WHENs="

00"

else--当s=00时,y=a0

a1WHENs="

01"

else--当s=01时,y=a1

a2WHENs="

10"

else--当s=10时,y=a2

a3;

--当s取其它值时,y=a2

ENDarchmux;

五、运行结果

六.实验总结

真值表分析:

当js=0时,a1,a0取00,01,10,11时,分别可取d0,d1,d2,d3.

实验二血型配对器的设计

1、进一步熟悉QuartusII软件的使用。

2、掌握简单组合逻辑电路的设计方法与功能仿真技巧。

3、进一步学习QuartusII中基于原理图设计的流程。

人类有O、A、B、AB4种基本血型,输血者与受血者的血型必须符合图示原则。

设计一血型配对电路,用以检测输血者与受血者之间的血型关系是否符合,如果符合,输出为1,否则为0。

已知:

AB血型是万能受血者,O血型是万能献血者!

如果要输血给O型血,那么可以的血型是O型!

如果要输血给A型血,那么可以的血型是A,O型!

如果要输血给B型血,那么可以的血型是B,O型!

如果要输血给AB型血,那么可以的血型是A,B,AB,O型!

1、用VHDL语言编写程序实现血型配对器的功能

LIBRARYIEEE;

USEIEEE.STD_LOGIC_1164.ALL;

USEIEEE.STD_LOGIC_ARITH.ALL;

USEIEEE.STD_LOGIC_UNSIGNED.ALL;

ENTITYVxuexingIS

PORT(

P,Q,R,S:

F:

OUTSTD_LOGIC

);

ENDVxuexing;

ARCHITECTUREAOFVxuexingIS

BEGIN

F<

=((NOTP)AND(NOTQ))OR(RANDS)OR((NOTP)ANDS)OR((NOTQ)ANDR);

ENDA;

2、对所编写的电路进行编译及正确的仿真。

实验分析

真值表

P,Q表示输血者的血型;

R,S,表示受血者的血型。

当两者符合血型配合原则时,F=1,否则为0.

四、运行结果

五、实验总结

本实验给出了四种不同的血型编码,PQ(1,1),RS(1,1)表示AB型血,P,Q(1,0),RS(1,0)表示B型血,PQ(0,1),RS(0,1)表示A型血,PQ(0,0),RS(0,0)表示O型血。

根据真值表,并根据实验的原理图,画出电路图并进行连接。

实验三简单数字钟的设计

1、了解数字钟的工作原理。

2、进一步学习QuartusII中基于VHDL设计的流程。

3、掌握VHDL编写中的一些小技巧。

4、掌握简单时序逻辑电路的设计方法与功能仿真技巧。

简单数字钟应该具有显示时-分-秒的功能。

首先要知道钟表的工作机理,整个钟表的工作应该是在1Hz信号的作用下进行,这样每来一个时钟信号,秒增加1秒,当秒从59秒跳转到00秒时,分钟增加1分,同时当分钟从59分跳转

1、用原理图的方式编写一个12/24进制的计数器,并创建为SYMBOL文件。

2、用VHDL的方式编写一个60进制的计数器,并创建为SYMBOL文件。

3、创建顶层文件。

调用已编写的SYMBOL文件,设计简单的数字钟电路。

二十四进制VHDL

ENTITYCNT24ISPORT(

CP,EN,Rd,LD:

D:

INSTD_LOGIC_VECTOR(5DOWNTO0);

Co:

OUTSTD_LOGIC;

Q:

OUTSTD_LOGIC_VECTOR(5DOWNTO0));

ENDCNT24;

ARCHITECTURESTROFCNT24IS

SIGNALQN:

STD_LOGIC_VECTOR(5DOWNTO0);

Co<

='

1'

WHEN(QN="

010111"

ANDEN='

ELSE'

0'

;

PROCESS(CP,RD)

BEGIN

IF(Rd='

)THEN

QN<

="

000000"

ELSIF(CP'

EVENTANDCP='

IF(LD='

QN<

=D;

ELSIF(EN='

=QN+1;

ENDIF;

ENDPROCESS;

Q<

=QN;

ENDSTR;

六十进制VHDL

ENTITYjsq60IS

PORT(en,rd,cp:

qh:

bufferSTD_LOGIC_VECTOR(3DOWNTO0);

ql:

Co:

OUTSTD_LOGIC);

ENDjsq60;

ARCHITECTUREbOFjsq60IS

Co<

='

when(qh="

0101"

andql="

1001"

anden='

)else'

PROCESS(cp,rd)

IF(rd='

qh<

="

0000"

ql<

ELSIF(cp'

EVENTANDcp='

IF(en='

IF(ql=9)THEN

ql<

IF(qh=5)THEN

qh<

ELSEqh<

=qh+1;

endif;

else

=ql+1;

ENDPROCESS;

ENDb;

原理图

24进制

60进制

时钟仿真结果

此设计问题可分为主控电路,计数器模块和扫描显示三大部分,计数器在之前的学习中已经非常熟悉,只要掌握60,12进制的技术规律,用同步或异步计数器都可以实现。

二扫描电路我们学过两种驱动方式:

BCD码驱动方式和直接驱动方式。

实验四简单交通灯的设计

1、了解交通灯的亮灭规律。

2、了解交通灯控制器的工作原理。

3、进一步熟悉VHDL语言编程,了解实际设计中的优化方案。

交通灯的显示有很多方式,如十字路口、丁字路口等,而对于同一个路口又有很多不同的显示要求,比如十字路口,车子如果只要东西和南北方向通行就很简单,而如果车子可以左右转弯的通行就比较复杂,本实验仅针对最简单的南北和东西直行的情况。

要完成本实验,首先必须了解交通路灯的亮灭规律。

依人们的交通常规,“红灯停,绿灯行,黄灯提醒”。

其交通灯的亮灭规律为:

初始态是两个路口的红灯全亮,之后东西路口的绿灯亮,南北路口的红灯亮,东西方向通车,延时一段时间后,东西路口绿灯灭,黄灯开始闪烁。

闪烁若干次后,东西路口红灯亮,而同时南北路口的绿灯亮,南北方向开始通车,延时一段时间后,南北路口的绿灯灭,黄灯开始闪烁。

闪烁若干次后,再切换到东西路口方向,重复上述过程。

1、用VHDL的方式编写一个简单的交通控制灯电路

程序:

useieee.std_logic_1164.all;

useieee.std_logic_unsigned.all;

entitytrafficis

port(clk,enb:

instd_logic;

ared,agreen,ayellow,bred,bgreen,byellow:

bufferstd_logic;

acounth,acountl,bcounth,bcountl:

bufferstd_logic_vector(3downto0));

endtraffic;

architectureoneoftrafficis

begin

process(clk,enb)

variablelightstatus:

std_logic_vector(5downto0);

begin

if(clk'

eventandclk='

)then

lightstatus:

=ared&

agreen&

ayellow&

bred&

bgreen&

byellow;

if((acounth="

andacountl="

)or(bcounth="

andbcountl="

))then

Caselightstatusis

When"

010100"

=>

lightstatus:

001100"

acountl<

aco

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

当前位置:首页 > 表格模板 > 合同协议

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

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