EDA实验报告12份Word格式.docx
- 文档编号:14332705
- 上传时间:2022-10-22
- 格式:DOCX
- 页数:24
- 大小:463.75KB
EDA实验报告12份Word格式.docx
《EDA实验报告12份Word格式.docx》由会员分享,可在线阅读,更多相关《EDA实验报告12份Word格式.docx(24页珍藏版)》请在冰豆网上搜索。
5.试验总结:
从仿真波形可以看出此2选1多路选择器是当s为低电平时,y输出为b,当s为高电平时,y输出为a(y<
),完成2路选择输出。
实验二时序电路的设计
熟悉MAX+plusIIVHDL文本设计过程,学习简单的时序电路设计、仿真和测试。
2.实验验内容:
设计一个锁存器,并进行仿真测试,给出仿真波形。
entitysuocun7is
port(clk:
instd_logic;
en:
D:
instd_logic_vector(7downto0);
B:
outstd_logic_vector(7downto0));
endsuocun7;
architectureoneofsuocun7is
signalK:
std_logic_vector(7downto0);
process(clk,en,D)
begin
ifclk'
eventandclk='
1'
then
ifen='
then
K<
=D;
endif;
endprocess;
B<
=K;
endone;
4.仿真波形(如图2-1所示)
图2-18位锁存器仿真波形
5实验总结:
此程序完成的是一个8位锁存器,当时钟上升沿到来(clk'
)、使能端为低电平(en='
)时,输出为时钟上升沿时的前一个数,从仿真波形看,实现了此功能。
实验三异步清零和同步时钟使能的加法计数器的设计
学习计数器的设计、仿真和硬件测实,进一步熟悉VHDL设计技术。
设计一个6位加法计数器,并进行仿真测试,给出仿真波形。
entitycnt6is
port(clk,enb,clr:
inbit;
q:
bufferintegerrange63downto0;
cout:
outbit);
endcnt6;
architectureoneofcnt6is
process(clk,clr,enb)
ifclr='
thenq<
=0;
elsifclk'
ifenb='
ifq=63thenq<
cout<
='
;
elseq<
=q+1;
endone;
4.仿真波形(如图3-1所示)
图3-16位异步清零和同步时钟使能的加法计数器仿真波形
5.实验总结:
此程序实现的是一个6位异步清零和同步时钟使能的加法计数器,其异步清零端(clr)为低电平有效,使能端(enb)为高电平有效。
当异步清零端为高电平、时钟信号为上升沿(clk'
)、使能端(enb)为高电平(enb='
)时,开始计数,计数最大值为63,从仿真波形看,实现了该功能。
实验四用原理图输入法设计8位全加器
熟悉利用Max+plusII的原理图输入方法设计简单组合电路,掌握层次化设计的方法,并通过一个8位全加器的设计把握利用EDA软件进行原理图输入方式的电子线路设计的详细流程。
完成一个8位全加器的设计,并进行仿真测试,给出仿真波形。
3.8位全加器的设计原理
一个8位全加器可以由8个1位全加器构成,加法器间的进位可以串行方式实现,即将低位加法器的进位输出cout与相邻的高位加法器的最低进位输入信号cin相接,而1位全加器可由两个半加器和一个或门连接而成。
而在设计时应先设计一个半加器(如图4-1所示),再由半加器构成1位全加器(如图4-2所示),进而由8个1位全加器构成8位全加器(如图4-3所示)。
图4-1半加器设计原理图
图4-21位全加器设计原理图
图4-38位全加器原理图
4.仿真波形(如图4-4所示)
图4-48位全加器仿真波形
5.实验总结
设计8位全加器时应先设计一个半加器,再由半加器构成1位全加器,进而由8个1位全加器构成8位全加器。
实验五2位十进制频率计的设计
熟悉原理图输入法中74系列等宏功能元件的使用方法,掌握更复杂的原理图层次化设技术和数字系统设计方法。
完成2位十进制频率计的设计,并进行仿真测试,给出仿真波形。
3.实验原理(如图5-1所示)
图5-12位十进制频率计设计原理图
4.仿真波形(如图5-2所示)
图5-22位十进制频率计仿真波形
F_IN是待测频率信号,CNT_EN是对待测频率脉冲计数允许信号CNT_EN高电平时允许计数,低电平时禁止计数。
仿真波形显示,当CNT_EN为高电平时允许conter8对F_IN计数,低电平时conter8停止计数,由锁存信号LOCK发出的脉冲,将conter8中的二个4位十进制数锁存进74374中,并由74374分高低位通过总线H[6..0]和L[6..0]输给74248译码输出显示,即测得的频率值。
此后由清零信号CLR对计数器conter8清零,以备下一周期计数之用。
实验六7段数码显示译码器设计
学习7段数码显示译码器设计;
学习VHDL的CASE语句应用及多层次设计方法。
设计一个7段数码显示译码器,并进行仿真测试,给出仿真波形。
entityshumaguanis
port(a:
instd_logic_vector(3downto0);
q:
outstd_logic_vector(6downto0));
endshumaguan;
architectureoneofshumaguanis
process(a)
caseais
when"
0000"
=>
q<
="
0111111"
0001"
0000110"
0010"
1011011"
0011"
1001111"
0100"
1100110"
0101"
1101101"
0110"
1111101"
0111"
0000111"
1000"
1111111"
1001"
1101111"
whenothers=>
null;
endcase;
4.仿真波形(如图6-1所示)
图6-17段数码显示译码器仿真波形
输出信号q的7位分别接数码管的7个段g、f、e、d、c、b、a,高位在左,低位在右。
例如q输出为“1101101”时,数码管的7个段分别接1、1、0、1、1、0、1,接有高电平的段发亮,数码管显示“5”。
实验七数控分频器的设计
学习数控分频器的设计、分析和测试方法。
设计一个数控分频器,并进行仿真测试,给出仿真波形。
LIBRARYIEEE;
USEIEEE.STD_LOGIC_1164.ALL;
USEIEEE.STD_LOGIC_UNSIGNED.ALL;
ENTITYPULSEIS
PORT(CLK:
INSTD_LOGIC;
D:
INSTD_LOGIC_VECTOR(7DOWNTO0);
FOUT:
OUTSTD_LOGIC);
END;
ARCHITECTUREoneOFPULSEIS
SIGNALFULL:
STD_LOGIC;
BEGIN
P_REG:
PROCESS(CLK)
VARIABLECNT8:
STD_LOGIC_VECTOR(7DOWNTO0);
BEGIN
IFCLK'
EVENTANDCLK='
THEN
IFCNT8="
11111111"
THEN
CNT8:
=D;
FULL<
='
ELSECNT8:
=CNT8+1;
ENDIF;
ENDPROCESSP_REG;
P_DIV:
PROCESS(FULL)
VARIABLECNT2:
BEGIN
IFFULL'
EVENTANDFULL='
THENCNT2:
=NOTCNT2;
IFCNT2='
THENFOUT<
ELSEFOUT<
ENDIF;
ENDPROCESSP_DIV;
4.仿真波形(如图7-1所示)
图7-1数控分频器仿真波形
数控分频器的功能就是当在输入端给定不同输入数据时,将对输入的时钟信号有不同的分频比,本设计中的数控分频器就是用计数值可并行预置的加法计数器设计完成的,方法是将计数溢出位与预置数加载输入信号相接即可。
实验八正弦波发生器的设计
进一步熟悉Max+plusII及其LPM_ROM与FPGA硬件资源的使用方法。
设计一个正弦波发生器,并进行仿真测试,给出仿真波形。
3.实验原理(如图8-1所示)
图8-1正弦波发生器原理图
LPM_ROM中的波形数据文件(.mif文件):
width=8;
depth=64;
address_radix=hex;
data_radix=hex;
contentbegin
0:
ff;
1:
fe;
2:
fc;
3:
f9;
4:
f5;
5:
f0;
6:
ea;
7:
e3;
8:
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- EDA 实验 报告 12