EDA技术实验指导书.docx

上传人:b****1 文档编号:3186653 上传时间:2023-05-05 格式:DOCX 页数:27 大小:264.50KB
下载 相关 举报
EDA技术实验指导书.docx_第1页
第1页 / 共27页
EDA技术实验指导书.docx_第2页
第2页 / 共27页
EDA技术实验指导书.docx_第3页
第3页 / 共27页
EDA技术实验指导书.docx_第4页
第4页 / 共27页
EDA技术实验指导书.docx_第5页
第5页 / 共27页
EDA技术实验指导书.docx_第6页
第6页 / 共27页
EDA技术实验指导书.docx_第7页
第7页 / 共27页
EDA技术实验指导书.docx_第8页
第8页 / 共27页
EDA技术实验指导书.docx_第9页
第9页 / 共27页
EDA技术实验指导书.docx_第10页
第10页 / 共27页
EDA技术实验指导书.docx_第11页
第11页 / 共27页
EDA技术实验指导书.docx_第12页
第12页 / 共27页
EDA技术实验指导书.docx_第13页
第13页 / 共27页
EDA技术实验指导书.docx_第14页
第14页 / 共27页
EDA技术实验指导书.docx_第15页
第15页 / 共27页
EDA技术实验指导书.docx_第16页
第16页 / 共27页
EDA技术实验指导书.docx_第17页
第17页 / 共27页
EDA技术实验指导书.docx_第18页
第18页 / 共27页
EDA技术实验指导书.docx_第19页
第19页 / 共27页
EDA技术实验指导书.docx_第20页
第20页 / 共27页
亲,该文档总共27页,到这儿已超出免费预览范围,如果喜欢就下载吧!
下载资源
资源描述

EDA技术实验指导书.docx

《EDA技术实验指导书.docx》由会员分享,可在线阅读,更多相关《EDA技术实验指导书.docx(27页珍藏版)》请在冰点文库上搜索。

EDA技术实验指导书.docx

EDA技术实验指导书

EDA技术实验

实验指导书

(配DXT-B3型EDA实验开发系统)

 

海南师范大学物理与电子工程学院

实验一简单门电路设计与仿真

一、实验目的

1、熟悉MAX+plusⅡ软件的使用方法

2、通过实验掌握组合逻辑电路的EDA原理图输入设计法,通过电路的仿真和硬件验证,学会对实验板上的FPGA/CPLD进行编程下载,进一步了解门电路的功能。

二、实验仪器设备

1、PC机一台

2、DXT-B3型EDA实验开发系统一套

三、实验原理

在多路数据传送过程中,能够根据需要将其中任意一路挑选出来的电路,叫做数据选择器,也称为多路选择器或多路开关。

1、输入、输出信号分析

输入信号:

4路数据,用D0、D1、D2、D3表示;两个选择控制信号,用S1、S0表示。

输出信号:

用Y表示,它可以是4路输入数据中的任意一路,究意是哪一路完全由选择控制信号决定。

示意框图如图1-1所示。

 

2、真值表

表1-14选1数据选择器的真值表

输入

输出

D

S1

S0

Y

D0

0

0

D0

D1

0

1

D1

D2

1

0

D2

D3

1

1

D3

3、逻辑表达式

四、实验内容

1、编辑4选1数据选择器的原理图

在MAX+plusⅡ图形编辑方式下,从maxplus2\max2lib\prim元件库中调出4选1数据选择器设计所需要的元件,包括4个三输入端与非门、1个四输入端与非门和2个非门。

按照图1-2所示的原理电路,完成4选1数据选择器原理图输入设计。

图1-2所示的原理电路

图1-2中,D3、D2、D1和D0是数据输入端,S1和S0是控制输入端,Y是数据输出端。

2、设计文件存盘与编译

以mux41.gdf为文件名保存在工程目录中。

执行MAX+plusⅡ的“Compiler”命令对设计文件进行编译。

3、仿真设计文件

在MAX+plusⅡ波形编辑方式下,编辑mux41.gdf的波形文件,并完成输入信号D3、D2、D1和D0,控制信号S1和S0电平的设置。

波形文件编辑结束后以mux41.scf为波形文件名存盘。

执行启动仿真器“Simulator”命令,仿真开始,观察仿真波形进行设计电路的功能验证。

4、引脚锁定

本实验选择的目标芯片为EPF10K10LC84-4,在DXT-B3实验开发系统中进行硬件验证。

5、编程下载与硬件验证

完成引脚锁定后,再次对设计文件编译,然后打开DXT-B3的电源,执行MAX+plusⅡ的“Programmer”命令,将4选1数据选择器设计文件下载到DXT-B3的EPF10K10LC84-4目标芯片中。

硬件验证数据选择器的功能是否正确。

五、实验报告

详细叙述4选1数据选择器的设计流程;给出仿真图和选择器的延时情况;最后给出硬件测试流程和结果。

 

实验二七人表决器的设计

一、实验目的

1、初步了解VHDL语言;

2、学会用行为描述方式来设计电路。

二、实验仪器设备

1、PC机一台

2、DXT-B3型EDA实验开发系统一套

三、实验原理

1、用七个开关作为表决器的7个输入变量,输入变量为逻辑“1”时表示表决者“赞同”;输入变量为“0”时,表示表决者“不赞同”。

输出逻辑“1”时,表示表决“通过”;输出逻辑“0”时,表示表决“不通过”。

当表决器的七个输入变量中有4个以上(含4个)为“1”时,则表决器输出为“1”;否则为“0”。

2、七人表决器设计方案很多,比如用多个全加器采用组合电路实现。

用VHDL语言设计七人表决器时,也有多种选择。

常见的VHDL语言描述方式有行为描述、寄存器传输(RTL)描述、结构描述以及这几种描述在一起的混合描述。

我们可以用结构描述的方式用多个全加器来实现电路,也可以用行为描述。

3、采用行为描述时,可用一变量来表示选举通过的总人数。

当选举人大于或等于4时为通过,绿灯亮;反之不通过时,黄灯亮。

描述时,只须检查每一个输入的状态(通过为“1”不通过为“0”)并将这些状态值相加,判断状态值和即可选择输出。

四、实验内容

1.编写上述电路的VHDL源程序,并进行编译。

2.锁定引脚。

3.编程下载与硬件验证。

五、设计提示

1.初次接触VHDL语言应注意语言程序的基本结构,数据类型及运算操作符;

2.了解变量和信号的区别;

3.了解进程内部顺序执行语句及进程外部并行执行语句的区别。

六、实验报告要求

根据以上的实验内容写出实验报告,包括七人表决器的工作原理叙述,程序设计、软件编译、仿真分析、引脚锁定、硬件测试和详细实验过程:

给出程序分析报告、仿真波形图及其分析报告。

实验三四位全加器

一、实验目的

通过实验让学生熟悉MAX+plusⅡ的VHDL文本设计流程全过程,掌握组合逻辑电路的文本输入设计法,通过对设计电路的仿真和硬件验证,让学生进一步了解加法器的功能。

二、实验仪器设备

1、PC机一台

2、DXT-B3型EDA实验开发系统一套

C0C0

C2C0

C1C0

三、实验原理

4位全加器可看作4个1位全加器串行构成,具体连接方法如下图所示:

由1位全加器构成4位全加器连接示意图

采用VHDL语言设计时调用其附带的程序包,其系统内部会自行生成此结构。

四、实验内容

4.编写1位全加器full_add1的VHDL源程序,并进行编译。

5.利用元件例化语句编写4位全加器full_adder4的VHDL源程序,并进行编译和仿真。

6.锁定引脚。

7.编程下载与硬件验证。

五、设计提示

调用STD_LOGIC_UNSIGNED包。

先设计一个一位的全加器包括三个输入端:

a,b,cin(进位输入),两个输出端:

s(和),cout(进位输出)。

四位串行进位的全加器可以利用四个一位的全加器搭建而成,其结构如上图所示,其输入端口分别为a0,a1,a2,a3,b0,b1,b2,b3,cin输出端口分别为s0,s1,s2,s3,cout。

在实验中只需要先描述一位全加器,然后用component语句进行元件说明,再利用元件例化语句就可以实现四位的全加器。

六、实验报告要求

根据以上的实验内容写出实验报告,包括4位全加器的工作原理叙述,程序设计、软件编译、仿真分析、引脚锁定、硬件测试和详细实验过程:

给出程序分析报告、仿真波形图及其分析报告。

 

实验四七段译码器的设计

一、实验目的

1、学习7段数码显示译码器设计;

2、学习VHDL的多层设计方法。

二、实验仪器设备

1、PC机一台

2、DXT-B3型EDA实验开发系统一套

三、实验原理

1、七段数码显示工作原理(共阴极接法)

 

2、显示代码概念

 

9的显示代码

 

四、实验内容

1、画出7段译码器的原理框图。

2、编写7段译码器VHDL源程序。

3、在MAX+plusⅡ软件上编译和仿真。

4、锁定管脚。

5、编程下载与硬件验证。

6、记录系统仿真和硬件验证结果。

五、实验报告要求

根据以上的实验内容写出实验报告,包括7段译码器的工作原理叙述,程序设计、软件编译、仿真分析、引脚锁定、硬件测试和详细实验过程,给出程序分析报告、仿真波形图及其分析报告。

实验五用状态机实现序列检测器的设计

一、实验目的

1、了解状态机的设计;

2、用状态机实现序列检测器的设计。

二、实验仪器设备

1、PC机一台

2、DXT-B3型EDA实验开发系统一套

二、实验原理

序列检测器在数据通讯,雷达和遥测等领域中用于检测同步识别标志。

它是用来检测一组或多组由二进制码组成的脉冲序列信号。

当序列检测器连续收到一组串行二进制码后,如果这组码与检测器中预先设置的码相同,则输出标志1,否则,输出0。

由于这种检测的关键在于正确码的收到必须是连续的,这就要求检测器必须记住前一次的正确码及正确序列,直到在连续的检测中所收到的每一位都与预置数的对应码相同。

对于“1110010”序列信号,电路需记忆初始状态、1、11、111、1110、11100、111001、1110010这8种状态。

三、实验内容与要求

1、预习序列检测器原理并写出预习报告;

2、设计一个7位检测序列信号“1110010”的序列检测器;

3、画出ASM图;

4、用VHDL语言编写出源程序;

5、在MAX+plusⅡ软件上编译和仿真,并下载到下载板FPGA芯片中验证结果。

四、实验报告要求

根据以上的实验内容写出实验报告,包括序列检测器原理的叙述,程序设计、软件编译、仿真分析、引脚锁定、硬件测试和详细实验过程,给出程序分析报告、仿真波形图及其分析报告。

实验提示:

在clk的上升沿将待检测的序列Din与预置数D的高位到低位依次进行比较,再设置一个计数器,如果相同,那么计数器的值加1,否则计数器的值为0,到最后如果计数值为7,则Din与D相同。

实验六分频器的设计

一、实验目的

1、学习分频电路的设计方法;

2、进一步学习用VHDL语言进行电路设计的方法。

二、实验仪器设备

1、PC机一台

2、DXT-B3型EDA实验开发系统一套

二、实验原理

在数字系统设计中,分频器是一种基本电路。

分频器通常用来对某个给定频率进行分频,得到所需的频率。

二分频电路的作用就是将时钟的频率降低一半,但是分频后的信号的占空比仍为1:

1。

分频电路跟计数器有一定的类似,对于2分频、4分频…2N分频等分频次数为2的N次幂的分频电路,其结构较为简单,只需要一个计数器就可以了。

对于分频次数不是2的N次方的分频器来说,我们只需要对源代码中计数器的模进行调整并对计数进行适当的控制就可以了。

三、实验内容与要求

1、预习分频器原理并写出预习报告;

2、设计一个分频器,对时钟信号进行2分频、4分频、8分频和16分频,

分频占空比为1:

1。

3、用VHDL语言编写出源程序;

4、在MAX+plusⅡ软件上编译和仿真。

四、实验报告要求

根据以上的实验内容写出实验报告,包括分频器原理的叙述,程序设计、软件编译、仿真分析和详细实验过程,给出程序分析报告、仿真波形图及其分析报告。

实验七交通灯控制器的设计

一、实验目的

1、熟悉交通灯控制器的基本原理;

2、进一步掌握用状态机设计数字系统的方法。

二、实验仪器设备

1、PC机一台

2、DXT-B3型EDA实验开发系统一套

三、实验内容与要求

1、预习交通灯控制器的设计原理并写出预习报告;

2、能显示十字路口东西、南北两个方向的红、黄、绿的指示状态,用两组红、黄、绿三色灯作为两个方向的红、黄、绿灯。

按下SA键时,计时器迅速递增,并按24小时循环,计满23小时后在回00;

3、能实现正常的到计时功能

用两组数码管作为东西和南北方向的到计时显示,显示时间为红灯35秒、绿灯50秒、黄灯5秒。

4、能实现特殊状态的功能

(1)按S1键后,能实现特殊状态功能;

(2)显示到计时的两组数码管闪烁;

(3)计数器停止计数并保持在原来的状态;

(4)东西、南北、路口均显示红灯状态;

(5)特殊状态解除后能继续计数。

5、能实现总体清零功能

按下SB键后,系统实现总清零,计数器由初始状态计数,对应状态的指示灯亮。

6、用VHDL语言设计符合上述功能要求的交通灯控制器,并用层次化设计方法设计该电路。

7、控制器、置数器的功能用功能仿真的方法验证,可通过有关波形确认电路设计是否正确。

8、用VHDL语言编写出源程序;

9、在MAX+plusⅡ软件上编译和仿真,并下载到下载板FPGA芯片中验证设计的正确性。

四、设计说明与提示

交通灯控制器框图如图18-1所示。

各模块电路功能如下:

1、从电路框图可以看到由减计数器、控制器组成了最基本的电路,其中计数器A、B经过数据选择器MUX82以BCD码输出的形式通过译码器与外部数码管相连;控制器控制各信号灯的状态以及计数器的置数、暂停计数。

2、基准频率分频器可以分出标准的1Hz频率信号,用于减计数器的时钟信号以及控制器内触发器的时钟信号。

3、MUX82是八二选一数据选择器,用于特殊情况发生时对显示器闪烁信号的产生。

4、置数器A、B通过控制器的控制对减计数器进行预置。

5、控制器电路模块如图6-1所示。

 

图6-1交通灯控制器电路框图

 

图6-2主控制器电路框图

其中K1为特殊状态,S2为清零信号,A、B分别为计数器A、B。

 

6-3交通灯控制器ASM图

四、实验报告要求

根据以上的实验内容写出实验报告,对照交通灯电路框图分析电路工作原理,程序设计、软件编译、仿真分析、引脚锁定、硬件测试和详细实验过程,给出程序分析报告、仿真波形图及其分析报告。

实验八数字频率计的设计

一、实验目的

1、巩固和加深对本课程所学知识的理解和综合设计应用;

2、掌握运用FPGA进行数字频率计的设计方法。

二、实验仪器设备

1、PC机一台

2、DXT-B3型EDA实验开发系统一套

三、实验任务及要求

1、设计一个4位十进制频率计,其测量范围为1MHz。

分为3挡,1挡量程为0~9999Hz;2挡量程为10.00~99.99kHz;3挡量程为100.0~999.9kHz。

2、显示方式如下:

(1)采用记忆显示方式,即计数过程中不显示数据,待计数过程结束后,显示计数结果,并将此显示结果保持到下一次计数结束。

显示时间应不小于1s。

(2)小数点位置随量程变换自动移位。

3、送入信号应是符合CMOS电路要求的脉冲或正弦波。

4、设计符合上述功能的频率计,并用层次化方法设计该电路。

5、控制器、计数器、锁存器的功能,用功能仿真方法验证,还可通过观察有关波形确认电路设计是否正确。

6、完成电路设计后在实验系统上下载,验证课题的正确性。

四、设计说明与提示

频率计测频原理框图如图7-1所示。

图7-1频率计测频原理图

模块电路功能如下:

1、每次测量时,用由时基信号产生的闸门信号启动计数器,对输入脉冲信号计数,闸门信号结束即将计数结果送入锁存器,然后计数器清零,准备下一次计数。

但下一次计数的开始,需待设定的显示时间结束。

为与时基信号同步,在此时时间结束后还有一段准备时间。

2、显示电路为四位动态扫描电路,可以参阅以前的动态扫描电路。

注意这里只用4位。

3、计数器为模9999十进制加法计数器,可由4个模10十进计数器级联而成。

4、锁存器为保持电路。

5、控制器由时序机组成能够完成对量程的选择调整。

五、实验报告要求

根据以上的实验内容写出实验报告,分析频率计电路的作原理,VHDL程序设计、软件编译、仿真分析、引脚锁定、硬件测试和详细实验过程,给出程序分析报告、仿真波形图及其分析报告。

附录1MAX+PLUSII软件使用指导

1、VHDL源文件的编辑和输入

首先建好工作目录,以便将设计好的文件存储于该目录,注意不要用中文作为文件或者文件夹的名称。

然后打开maxplusII,选择file->new,再选择texteditorfile,此时即可在maxplusII的文本框中输入VHDL程序。

程序输入完成之后,选择saveas,在filename框中键入文件名,文件的扩展名为.vhd,将文件存在建好的工作目录中。

需要注意的是所存的VHDL程序的文件名必须与该VHDL程序的实体名称一致。

2、将当前的设计定为项目

在对用VHDL进行的设计进行编译/综合之前,必须将此文件设置为项目文件,做法是选择file->project->setprojecttocurrentfile。

在设定好项目之后,选择所用的可编程器件的型号。

具体做法是,在maxplusII中选择assign->device,devicefamily选择FLEX10K,device型号选择EPF10K10LC84-4。

3、对VHDL程序进行编译

选择MAXplusII->compiler,在点击start进行编译前,还应在菜单Interfaces->VHDLnetlistreadersetting中选择VHDL’1993。

4、时序仿真

为当前的VHDL设计建立波形仿真文件。

选择菜单file及new,然后在弹出的窗口中选择waveformeditorfile,此时就可以进行波形编辑。

在菜单中选择node->enternodesfromSNF,就可以引入本设计中所涉及的节点。

对所有输入节点的波形进行编辑,编辑好波形文件后,将波形文件保存为与VHDL源文件名称相同的文件,此时就可以进行仿真了。

选择maxplusII->simulator就可以进行仿真了。

通过分析仿真的输出波形可以判断项目

设计的正确性。

如果时序仿真正确,就可以进行下一步的引脚配置和程序下载了。

 

附录2EDA实验装置使用说明

DXT-B3型EDA实验开发系统是使用EPF10K10LC84-4为目标芯片的实验板;RAM型芯片,管脚与外围信号已连接好,必须按下表手工进行管脚分配。

表1管脚对应表(EPF10K10)

主要器件名称

信号名

兼容器件名称

信号名

F10K10A

引脚

输出发光管

L12R

25

输出发光管

L12G

24

输出发光管

L11

23

输出发光管

L10

22

输出发光管

L9

21

输出发光管

L8

19

输出发光管

L7

18

输出发光管

L6

65

输出发光管

L5

64

输出发光管

L4

62

输出发光管

L3

61

输出发光管

L2

60

输出发光管

L1G

59

输出发光管

L1R

58

数码管

M4

M4A

 

动态显示

 

MS1~MS8

七段显示

器信号

a

17

M4B

b

16

M4C

c

11

M4D

d

10

数码管

M3

M3A

e

9

M3B

f

8

M3C

g

7

M3D

dot

6

数码管

M2

M2A

MS5

5

M2B

MS6

3

M2C

MS7

83

M2D

MS8

81

数码管

M1

M1A

MS4

80

M1B

MS3

79

M1C

MS2

78

M1D

MS1

73

数据开关

K1

28

数据开关

K2

29

数据开关

K3

30

数据开关

K4

35

数据开关

K5

36

数据开关

K6

37

数据开关

K7

38

数据开关

K8

39

数据开关

K9

47

数据开关

K10

48

数据开关

K11

49

数据开关

K12

50

数据开关

K13

51

数据开关

K14

52

数据开关

K15

53

数据开关

K16

54

扬声器

SP

27

时钟信号

CP1

1

时钟信号

CP2

43

注:

1、千万不要选择自动分配管脚。

MAX+PLUSII在管脚分配时按照此表进行手动分配管脚,

2、在实验板上所有连线已经接好。

3、三色数码管:

有两个输入端;一个为红色,另一个为绿色,当两个脚同时亮时为黄色。

4、两路时钟信号源在实验板上。

表2实验板右上部CZ1开关控制功能表:

编号

控制名称

作用

实验选定

1

静态/动态

控制八个七段显示器

静态显示/动态显示

动态(左)

2

开关、小键盘控制

K1~K16和小键盘

D1~D16起作用/失效

按键(左)

3

电平/脉冲

(1)

K1~K8电平信号/脉冲信号

电平A(右)

4

电平/脉冲

(2)

K9~K16电平信号/脉冲信号

电平B(右)

5

L7~L12

L7~L12工作/不工作

L1~L6(右)

6

L1~L6

L1~L6工作/不工作

L7~L12(右)

7

232(T1-IN)

232工作

任意

8

232(R1-OUT)

232工作

任意

9

A/D信号OUT

A/D工作/不工作

任意

附录3 EDA技术实验报告范例

海南师范大学

物理与电子工程学院

 

实验报告

(20----20学年第学期)

课程名称:

实验名称:

专业班级:

学号:

姓名:

实验时间:

年月日(第周)

实验室名称:

EDA技术学时数:

 节

注:

报告内容根据具体实验课程或实验项目的要求确定,一般包括实验目的、实验仪器、原理摘要、数据记录及结果分析等。

如纸张不够请自行加纸。

一、实验目的

1、通过实验让学生熟悉MAX+plusⅡ的VHDL文本设计流程全过程。

2、掌握组合逻辑电路的文本输入设计法。

3、通过对设计电路的仿真和硬件验证,让学生进一步了解加法器的功能。

二、实验内容

4位全加器可看作4个1位全加器串行构成。

可先设计一位全加器,并通过编译;然后用component语句进行元件说明,再利用元件例化语句就可以实现四位的全加器。

三、实验条件

1、开发软件:

MAX+plusⅡ10.2或QuartusⅡ。

2、实验设备:

DXT-B型EDA实验开发系统

3、拟用芯片:

EPF10K10LC84-4。

四、实验设计

1、系统的原理框图

一个4位的全加器可以由4个1位的全加器构成,全加器间的进位可以串行方式实现,即将低位加法器的进位输出cout与相临的高位的最低进位输入信号cin相接。

先设计1位全加器,然后再通过下图的连接方法构成4位的全加器。

2、VHDL源程序

--1位全加器的描述

libraryieee;

useieee.std_logic_1164.all;

entityf_adder1is

port(a,b,cin:

instd_logic;

sum,cout:

outstd_logic);

endf_adder1;

architecturebehavioroff_adder1is

begin

process(a,b,cin)

variabletemp:

std_logic_vector(2downto0);

begin

temp:

=a&b&cin;

casetempis

when"000"=>sum<='0';cout<='0';

when"001"|"010"|"100"=>sum<='1';cout<='0';

when"011"|"101"|"110"=>sum<='0';cout<='1';

when"111"=>sum<='1';cout<='1';

whenothers=>sum<='X';cout<='X';

endcase;

endprocess;

endbehavior;

--4位全器的描述

libraryieee;

useieee.std_logic_1164.all;

entityf_adder4is

port(A,B:

instd_logic_vector(3downto0);

CIN:

instd_logic;

S:

outstd_logic_

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

当前位置:首页 > 工作范文 > 制度规范

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2