电子设计自动化实验讲义.docx
- 文档编号:10857490
- 上传时间:2023-05-28
- 格式:DOCX
- 页数:64
- 大小:770.19KB
电子设计自动化实验讲义.docx
《电子设计自动化实验讲义.docx》由会员分享,可在线阅读,更多相关《电子设计自动化实验讲义.docx(64页珍藏版)》请在冰点文库上搜索。
电子设计自动化实验讲义
电子设计自动化实验讲义
辽宁大学信息科学与技术学院
二零一零年八月
实验一EDA设计软件的使用……………………………………1
实验二组合逻辑电路设计………………………………………21
实验三N进制计数器设计………………………………………22
实验四移位寄存器设计…………………………………………23
实验五用状态机设计实现ADC0809采样控制器………………24
实验六数字频率计设计…………………………………………26
实验七任意波形发生器设计……………………………………28
实验八电子秒表设计……………………………………………31
实验九VGA彩条控制器设计……………………………………32
实验十PS/2键盘接口设计………………………………………33
附录……………………………………………………………34
实验一EDA设计软件的使用
一、实验目的
通过本次实验熟悉EDA设计软件——QuartusⅡ。
掌握原理图输入、文本编辑、波形编辑、时序仿真、引脚设置和下载等设计方法。
二、实验仪器与器件
PC机、EDA综合实验箱
三、预习内容
QuartusⅡ软件的原理图输入、文本编辑、波形编辑、时序仿真、引脚设置和下载等设计方法。
四、实验原理
1、1位全加器逻辑原理图
图11位半加器逻辑原理图
图2在顶层编辑窗中设计好全加器
2、一个8位全加器可以由8个1位全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出cout与相邻的高位加法器的最低进位输入信号cin相接。
五、实验内容
1、通过2选1多路选择器的设计,熟悉使用文本输入、波形编辑、模拟仿真等设计方法,以及引脚锁定、编程下载/配置。
见《EDA技术实用教程》95页-111页
2、通过1位全加器的设计,熟悉使用原理图输入、波形编辑、模拟仿真等设计方法,以及引脚锁定、编程下载/配置。
《EDA技术实用教程》116页-119页
3、通过8位全加器的设计方法,熟悉应用原理图输入设计方法实现层次化设计和应用文本输入设计方法实现层次化设计,以及引脚锁定、编程下载/配置。
应用所设计的1位全加器实现设计8位全加器,分别应用原理图输入法和文本输入法实现,注意元件例化语句的使用。
六、实验报告要求
1、叙述设计原理、设计步骤,给出所设计实现的VHDL代码或原理图。
2、对仿真结果进行理论分析,找出产生误差的原因,提出较少实验误差的措施。
3、详细记录组装、调试和测试过程中发生的故障和问题,进行故障分析和说明故障排除的过程及方法。
4、认真写出对本次实验的心得体会及意见,以及改进实验的建议。
实验二组合逻辑电路设计
一、实验目的
学习组合逻辑电路的设计、仿真和硬件测试。
二、实验仪器与器件
PC机、EDA综合实验箱
三、预习内容
1、8-3编码器和一个16-4优先编码器的基本原理、逻辑真值表。
2、4-16译码器的基本原理、逻辑真值表。
3、4位二进制数据比较器的设计原理。
4、CASE语句和IF语句的使用格式。
四、实验原理
参考《数字电子技术》中编码器、优先编码器、数据比较器的基本原理。
五、实验内容
1、应用文本输入方式设计实现8-3编码器和16-4优先编码器,要求进行编译、仿真,仿真结果正确。
掌握CASE语句和IF语句的使用方法。
2、应用文本输入方式设计实现4-16译码器,要求进行编译、仿真,仿真结果正确。
3、设计实现一个4位二进制数据比较器,要求:
对输入的两个4位信号A、B进行比较,当A>B时,输出为“01”;当A
要求进行编译、仿真,仿真结果正确。
六、实验报告要求
1、叙述设计原理、设计步骤,给出所设计实现的VHDL代码或原理图。
2、对仿真结果进行理论分析,找出产生误差的原因,提出较少实验误差的措施。
3、详细记录组装、调试和测试过程中发生的故障和问题,进行故障分析和说明故障排除的过程及方法。
4、认真写出对本次实验的心得体会及意见,以及改进实验的建议。
实验三N进制计数器设计
一、实验目的
学习时序逻辑电路——计数器的设计、仿真和硬件测试。
二、实验仪器与器件
PC机、EDA综合实验箱
三、预习内容
1、应用VHDL语言描述不同复位方式、清零方式
2、N进制计数器和可逆计数器的设计原理。
四、实验原理
参考《数字电子技术》中计数器的基本原理及《VHDL实用教程》中VHDL描述复位方式、清零方式的相关语句。
五、实验内容
1、设计并实现一个带计数使能、进位输出及同步清0的增1十进制计数器。
2、设计并实现一个带计数使能及异步清0的增1的8位计数器。
3、设计并实现一个带计数使能及异步清0的增1/减1的8位进制计数器。
六、实验报告要求
1、叙述设计原理、设计步骤,给出所设计实现的VHDL代码或原理图。
2、对仿真结果进行理论分析,找出产生误差的原因,提出较少实验误差的措施。
3、详细记录组装、调试和测试过程中发生的故障和问题,进行故障分析和说明故障排除的过程及方法。
4、认真写出对本次实验的心得体会及意见,以及改进实验的建议。
实验四移位寄存器设计
一、实验目的
学习时序逻辑电路——移位寄存器的设计、仿真和硬件测试。
二、实验仪器与器件
PC机、EDA综合实验箱
三、预习内容
1、应用VHDL语言描述不同移位方式的移位寄存器。
2、移位寄存器的设计原理。
四、实验原理
应用VHDL语言描述不同输入方式和输出方式移位寄存器的设计原理。
五、实验内容
1、设计4位串入/并出左移移位寄存器
要求:
输入的数据是每次一位依序进入,故输入、输出信号之间有4个CLK时间的延迟。
为了过滤中间没用的数据,只读取完整的存储数据,实用上可将取样脉冲的周期设定成CLK脉冲的四倍,也就是说,每经过4个CLK脉冲后再读取数据一次,便能每次读取都得到正确的数据。
2、设计4位并入/串出右移移位寄存器
要求:
输入的数据是4位一次进入,每经过1个CLK脉冲后串行输出1位数据。
3、设计4位串入/串出右移移位寄存器
要求:
输入的数据是每次一位依序进入,故输入、输出信号之间有4个CLK时间的延迟。
经过4个CLK脉冲后依次串行输出4位数据。
4、设计4位并入/并出左移移位寄存器。
要求:
输入的数据是4位一次进入,每经过1个CLK脉冲后并行输出4位数据,其中数据发生左移。
六、实验报告要求
1、叙述设计原理、设计步骤,给出所设计实现的VHDL代码或原理图。
2、对仿真结果进行理论分析,找出产生误差的原因,提出较少实验误差的措施。
3、详细记录组装、调试和测试过程中发生的故障和问题,进行故障分析和说明故障排除的过程及方法。
4、认真写出对本次实验的心得体会及意见,以及改进实验的建议。
实验五用状态机设计实现ADC0809采样控制器
一、实验目的
学习用状态机对ADC0809的采样控制电路的实现。
二、实验仪器与器件
PC机、EDA综合实验箱
三、预习内容
1、应用VHDL语言描述状态机的方法。
2、ADC0809采样控制器的工作原理及工作时序。
四、实验原理
ADC0809为单极性输入,8位转换逐次逼近A/D转换器,可对0~5V的INT0~INT7的8路模拟信号分时进行转换,完成一次转换的时间约为100微秒。
其中D7~D0为A/D变换数据输出;ADD-CBA为8路通道选择地址;START信号是转换启动信号,上升沿有效;EOC为状态结束标志,低电平转为高电平时转换结束;OE为数据输出允许信号,高电平有效;ALE为地址锁存允许信号;LOCK为数据锁存信号。
在转换开始前,ADC0809需要在ALE上升沿控制下,将3位8路通道选择地址锁入锁存器,以确定转换信号通道;然后在时钟的下降沿产生START信号启动转换,这时ADC0809的EOC信号由高电平转为低电平,开始数据转换,直到EOC信号低电平转为高电平时转换结束;之后使能OE信号,使转换数据输出。
图1A/D采样控制器与ADC0809连接图
图2ADC0809工作时序
五、实验内容
1、分析ADC0809采样控制器的时序,划分状态,并画出状态图,实现VHDL描述,进行仿真测试及硬件测试。
2、利用QuartusII对例8-2进行文本编辑输入和仿真测试;给出仿真波形。
最后进行引脚锁定并进行测试,硬件验证例8-2电路对ADC0809的控制功能。
3、测试步骤:
建议选择电路模式No.5,由对应的电路图可见,ADC0809的转换时钟CLK已经事先接有750kHz的频率,引脚锁定为:
START接PIO34,OE(ENABLE)接PIO35,EOC接PIO8,ALE接PIO33,状态机时钟CLK接clock0,ADDA接PIO32(ADDB和ADDC都接GND),ADC0809的8位输出数据线接PIO23~PIO16,锁存输出Q显示于数码8/数码7(PIO47~PIO40)。
4、实验操作:
将GW48EDA系统左下角的拨码开关的4、6、7向下拨,其余向上,即使0809工作使能,及使FPGA能接受来自0809转换结束的信号(对于GW48-CK系统,左下角选择插针处的“转换结束”和“A/D使能”用二短路帽短接)。
下载ADC0809中的ADCINT.sof到实验板的FPGA中;clock0的短路帽接可选12MHz、6MHz、65536Hz等频率;按动一次右侧的复位键;用螺丝刀旋转GW48系统左下角的精密电位器,以便为ADC0809提供变化的待测模拟信号(注意,这时必须在例8-2中赋值:
ADDA<='1',这样就能通过实验系统左下的AIN1输入端与电位器相接,并将信号输入0809的IN1端)。
这时数码管8和7将显示ADC0809采样的数字值(16进制),数据来自FPGA的输出。
数码管2和1也将显示同样数据,此数据直接来自0809的数据口。
实验结束后注意将拨码开关拨向默认:
仅“4”向下。
六、实验报告要求
1、叙述设计原理、设计步骤,给出所设计实现的VHDL代码或原理图。
2、对仿真结果进行理论分析,找出产生误差的原因,提出较少实验误差的措施。
3、详细记录组装、调试和测试过程中发生的故障和问题,进行故障分析和说明故障排除的过程及方法。
4、认真写出对本次实验的心得体会及意见,以及改进实验的建议。
实验六数字频率计设计
一、实验目的
设计8位十进制频率计,学习较复杂的数字系统设计方法。
二、实验仪器与器件
PC机、EDA综合实验箱
三、预习内容
频率的定义和频率测量的基本原理。
四、实验原理
根据频率的定义和频率测量的基本原理,测定信号的频率必须有一个脉宽为1秒的对输入信号脉冲计数允许的信号;1秒计数结束后,计数值锁入锁存器的锁存信号和为下一测频计数周期作准备的计数器清0信号。
这3个信号可以由一个测频控制信号发生器产生,即图6-24中的TESTCTL,它的设计要求是,TESTCTL的计数使能信号CNT_EN能产生一个1秒脉宽的周期信号,并对频率计的每一计数器CNT10的ENA使能端进行同步控制。
当CNT_EN高电平时,允许计数;低电平时停止计数,并保持其所计的脉冲数。
在停止计数期间,首先需要一个锁存信号LOAD的上跳沿将计数器在前1秒钟的计数值锁存进各锁存器REG4B中,并由外部的7段译码器译出,显示计数值。
设置锁存器的好处是,显示的数据稳定,不会由于周期性的清零信号而不断闪烁。
锁存信号之后,必须有一清零信号RST_CNT对计数器进行清零,为下1秒钟的计数操作作准备。
其工作时序波形如图1。
图1频率计测频控制器TESTCTL测控时序图
五、实验内容
1、描述的8位十进制频率计的工作原理,并根据图1,写出频率计的顶层文件,并给出其测频时序波形,及其分析。
2、频率计设计硬件验证。
编译、综合和适配频率计顶层设计文件,并编程下载进入目标器件中。
如果目标器件是EP1C6Q280-8,建议选实验电路模式0,8个数码管(数码8-1)显示测频输出;待测频率输入FIN由clock0输入,频率可选4Hz、256HZ...或更高;1HZ测频控制信号F1HZ可由clock2输入(用电路帽选选1Hz)。
六、实验报告要求
1、叙述设计原理、设计步骤,给出所设计实现的VHDL代码或原理图。
2、对仿真结果进行理论分析,找出产生误差的原因,提出较少实验误差的措施。
并实现下载调试。
3、详细记录组装、调试和测试过程中发生的故障和问题,进行故障分析和说明故障排除的过程及方法。
4、认真写出对本次实验的心得体会及意见,以及改进实验的建议。
实验七任意波形发生器设计
一、实验目的
学习用VHDL设计波形发生器和扫频信号发生器,掌握FPGA对D/A的接口和控制技术,学会LPM_ROM在波形发生器设计中的实用方法。
二、实验仪器与器件
PC机、EDA综合实验箱
三、预习内容
1、波形发生器的设计原理。
2、D/A控制接口的设计实现。
3、LPM_ROM在波形发生器设计中的应用方法
四、实验原理
完整的波形发生器由4部分组成:
FPGA中的波形发生器控制电路,它通过外来控制信号和高速时钟信号,向波形数据ROM发出地址信号,输出波形的频率由发出的地址信号的速度决定;当以固定频率扫描输出地址时,模拟输出波形是固定频率,而当以周期性时变方式扫描输出地址时,则模拟输出波形为扫频信号。
波形数据ROM中存有发生器的波形数据,如正弦波或三角波数据。
当接受来自FPGA的地址信号后,将从数据线输出相应的波形数据,地址变化得越快,则输出数据的速度越快,从而使D/A输出的模拟信号的变化速度越快。
波形数据ROM可以由多种方式实现,如在FPGA外面外接普通ROM;由逻辑方式在FPGA中实现(如例1);或由FPGA中的EAB模块担当,如利用LPM_ROM实现。
相比之下,第1种方式的容量最大,但速度最慢;,第2种方式容量最小,但速度最最快;第3种方式则兼顾了两方面的因素;
D/A转换器负责将ROM输出的数据转换成模拟信号,经滤波电路后输出。
输出波形的频率上限与D/A器件的转换速度有重要关系,本例采用DAC0832器件。
DAC0832是8位D/A转换器,转换周期为1µs,其引脚信号以及与FPGA目标器件典型的接口方式如附图2-15所示。
其参考电压与+5V工作电压相接(实用电路应接精密基准电压)。
DAC0832的引脚功能简述如下:
ILE(PIN19):
数据锁存允许信号,高电平有效,系统板上已直接连在+5V上。
WR1、WR2(PIN2、18):
写信号1、2,低电平有效。
XFER(PIN17):
数据传送控制信号,低电平有效。
VREF(PIN8):
基准电压,可正可负,-10V~+10V。
RFB(PIN9):
反馈电阻端。
IOUT1/IOUT2(PIN11、12):
电流输出1和2。
D/A转换量是以电流形式输出的,所以必须如实验结构图NO.5C所示的连接方式将电流信号变为电压信号。
AGND/DGND(PIN3、10):
模拟地与数字地。
在高速情况下,此二地的连接线必须尽可能短,且系统的单点接地点须接在此连线的某一点上。
例1中的正弦波波型数据由64个点构成,此数据经DAC0832,并经滤波器后,可在示波器上观察到光滑的正弦波(若接精密基准电压,可得到更为清晰的正弦波形)。
图1波形发生器电路系统结构图
五、实验内容
根据图1,及以上的设计原理,完成能够产生正弦波、三角波和锯齿波波形发生器设计,仿真测试及实验系统上的硬件测试。
硬件实验中注意DAC0832及滤波电路须接+/-12V电压。
然后将实验系统左下角选择插针处用短路帽短路“D/A直通”,而“滤波1”,“滤波0”处通过短路或不接短路帽达到不同的滤波方式。
将示波器的地与EDA实验系统的地相接,信号端与“AOUT”信号输出端相接;建议CLK接clock0,由此50MHz频率,此频率扫描波形数据;CLK1接clock5,由此接“1024Hz”,此频率决定扫频速度;选电路模式1;KK接键8,当为高电平时,正弦波点频输出,11位输入数据DATA由键3、键2和键1控制,信号源的输出频率由此3键输入的12位二进制数决定,数值越大,输出频率越高;“FD0”时为最高频率;键8低电平时,正弦波扫频输出,扫频速度由clock5的频率决定。
输向0832的8位数据由DD输出。
六、实验报告要求
1、叙述设计原理、设计步骤,给出所设计实现的VHDL代码或原理图。
2、对仿真结果进行理论分析,找出产生误差的原因,提出较少实验误差的措施。
并实现下载调试。
3、详细记录组装、调试和测试过程中发生的故障和问题,进行故障分析和说明故障排除的过程及方法。
4、认真写出对本次实验的心得体会及意见,以及改进实验的建议。
实验八电子秒表设计
一、实验目的
设计电子秒表,学习较复杂的数字系统设计方法。
二、实验仪器与器件
PC机、EDA综合实验箱
三、预习内容
电子秒表的设计原理和自顶向下的设计方法。
四、实验内容
设计一个计时范围为0.01秒~1小时的秒表,能够由按键控制开始计时,并具有归零功能。
五、实验报告要求
1、叙述设计原理、设计步骤,给出所设计实现的VHDL代码或原理图。
2、对仿真结果进行理论分析,找出产生误差的原因,提出较少实验误差的措施。
并实现下载调试。
3、详细记录组装、调试和测试过程中发生的故障和问题,进行故障分析和说明故障排除的过程及方法。
4、认真写出对本次实验的心得体会及意见,以及改进实验的建议。
实验九VGA彩条控制器设计
一、实验目的
通过本次实验熟悉VGA显示控制器的设计原理,应用VHDL语言设计实现VGA显示控制器,学习较复杂的数字系统设计方法。
二、实验仪器与器件
PC机、EDA综合实验箱、VGA显示器
三、预习内容
VGA显示控制器的工作原理及VGA工业标准,自顶向下的设计方法。
四、实验原理
对于普通的VGA显示器,其引出线共含5个信号:
R、G、B:
三基色信号
HS:
行同步信号
VS:
场同步信号
对这5个信号的时序驱动,对于VGA显示器要严格遵循“VGA工业标准”,即640×480×60Hz模式,否则会损害VGA显示器。
图12-9VGA行扫描、场扫描时序示意图
VGA工业标准要求的频率:
时钟频率(Clockfrequency):
25.175MHz(像素输出的频率)
行频(Linefrequency):
31469Hz
场频(Fieldfrequency):
59.94Hz(每秒图像刷新频率)
行扫描时序要求:
(单位:
像素,即输出一个像素Pixel的时间间隔)
行同步头
行图像
行周期
对应位置
Tf
Ta
Tb
Tc
Td
Te
Tg
时间(Pixels)
8
96
40
8
640
8
800
场扫描时序要求:
(单元:
行,即输出一行Line的时间间隔)
行同步头
行图像
行周期
对应位置
Tf
Ta
Tb
Tc
Td
Te
Tg
时间(Lines)
2
2
25
8
480
8
525
五、实验内容
1、设计实现VGA彩条控制器;
2、设计实现VGA图像控制器。
六、实验报告要求
1、叙述设计原理、设计步骤,给出所设计实现的VHDL代码或原理图。
2、对仿真结果进行理论分析,找出产生误差的原因,提出较少实验误差的措施。
并实现下载调试。
3、详细记录组装、调试和测试过程中发生的故障和问题,进行故障分析和说明故障排除的过程及方法。
4、认真写出对本次实验的心得体会及意见,以及改进实验的建议。
实验十PS/2键盘接口设计
一、实验目的
通过本次实验熟悉PS/2键盘接口的设计原理,应用VHDL语言设计实现PS/2键盘接口,学习较复杂的数字系统设计方法。
二、实验仪器与器件
PC机、EDA综合实验箱、PS/2键盘
三、预习内容
PS/2键盘接口逻辑和自顶向下的设计方法。
四、实验原理
PS/2键盘接口通常使用专用芯片实现,由于PS/2键盘或鼠标穿行输出信号速度较高,普通单片机无法接收,所以利用VHDL在FPGA/CPLD上实现一个键码接收部分及一个译码器,来实现PS/2键盘接口。
五、实验内容
利用VHDL设计实现PS/2键盘接口的键码接收部分和键码译码器,来实现PS/2键盘接口的基本功能。
将PS/2键盘接到实验箱上,每按下一个键,该键的码值即可在数码管上显示。
六、实验报告要求
1、叙述设计原理、设计步骤,给出所设计实现的VHDL代码或原理图。
2、对仿真结果进行理论分析,找出产生误差的原因,提出较少实验误差的措施。
并实现下载调试。
3、详细记录组装、调试和测试过程中发生的故障和问题,进行故障分析和说明故障排除的过程及方法。
4、认真写出对本次实验的心得体会及意见,以及改进实验的建议。
附录一:
MAX+plusII应用向导
第一节原理图输入设计方法
利用EDA工具进行原理图输入设计的优点是,设计者能利用原有的电路知识迅速入门,完成较大规模的电路系统设计,而不必具备许多诸如编程技术、硬件语言等新知识。
MAX+plusII提供了功能强大,直观便捷和操作灵活的原理图输入设计功能,同时还配备了适用于各种需要的元件库,其中包含基本逻辑元件库(如与非门、反向器、D触发器等)、宏功能元件(包含了几乎所有74系列的器件),以及功能强大,性能良好的类似于IPCore的巨功能块LPM库。
但更为重要的是,MAX+plusII还提供了原理图输入多层次设计功能,使得用户能设计更大规模的电路系统,以及使用方便精度良好的时序仿真器。
以传统的数字电路实验相比为例,MAX+plusII提供原理图输入设计功能具有显著的优势:
能进行任意层次的数字系统设计。
传统的数字电路实验只能完成单一层次的设计,
使得设计者无法了解和实现多层次的硬件数字系统设计;
对系统中的任一层次,或任一元件的功能能进行精确的时序仿真,精度达0.1ns,
因此能发现一切对系统可能产生不良影响的竞争冒险现象;
通过时序仿真,能对迅速定位电路系统的错误所在,并随时纠正;
能对设计方案作随时更改,并储存入档设计过程中所有的电路和测试文件;
通过编译和编程下载,能在FPGA或CPLD上对设计项目随时进行硬件测试验证。
如果使用FPGA和配置编程方式,将不会有如何器件损坏和损耗;
符合现代电子设计技术规范。
传统的数字电路实验利用手工连线的方法完成元件连接,容易对学习者产生误导,以为只要将元件间的引脚用引线按电路图连上即可,而不必顾及引线的长短、粗细、弯曲方式、可能产生的分布电感和电容效应以及电磁兼容性等等十分重要的问题。
以下将详细介绍原理图输入设计方法,但读者应该更多地关注设计流程,因为除了最初的图形编辑输入外,其它处理流程都与文本(如VHDL文件)输入设计完全一致。
一1位全加器设计向导
1位全加器可以用两个半加器及一个或门连接而成,因此需要首先完成半加器的设计。
以下将给出使用原理图输入的方法进行底层元件设计和层次化设计的完整步骤,其主要流程与数字系统设
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 电子设计 自动化 实验 讲义
![提示](https://static.bingdoc.com/images/bang_tan.gif)