ImageVerifierCode 换一换
格式:DOCX , 页数:19 ,大小:2.57MB ,
资源ID:6760610      下载积分:12 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/6760610.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(pld实验报告.docx)为本站会员(b****6)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

pld实验报告.docx

1、pld实验报告数字系统设计与PLD应用实验报告041010204 欧阳琼一、实验目的1、了解并学习HDPLD设计数字系统的设计思路和设计过程。2、通过自行设计数字系统实例,更好的掌握数字系统设计方法以及设计软件的使用,让书本知识在教学实践中得到成功应用.二、实验内容1、高速并行乘法器的设计(1)、实验原理采用以下算法:被乘数的数值位左移,它和乘数的各个数值位进行累加运算.且用与门、4位加法器来实现.(2)、设计输入器件选定以后,用相应的设计开发软件(quartus 2),并采用原理图输入方式。图形输入文件如图1所示(使用图形输入方式时应注意软件所能提供的库函数,以便正确调用):图1(3)、逻辑

2、仿真逻辑仿真是设计校验的重要步骤。本例使用开发软件的波形编辑器直接画出输入激励波形,启动仿真器,得到显示功能仿真的结果如图2所示:图22、十字路口交通管理器的设计(1)、实验原理用一片HDPLD和若干外围电路实现十字路口交通管理器。该管理器控制甲乙两道的的红黄绿三色灯,指挥车辆和行人安全通行。该交通管理器是由控制器和受其控制的三个定时器及六个交通管理灯组成。(2)设计输入本设计采用分层次描述方式,且用图形输入和文本输入结合的方式建立描述文件。在顶层图形输入文件中的各模块,其功能用第二层次VHDL原文件描述如下:控制器control源文件LIBRARY IEEE;USE IEEE.STD_LOG

3、IC_1164.ALL;ENTITY traffic_control IS PORT( clk:IN STD_LOGIC; c1,c2,c3:OUT STD_LOGIC; w1,w2,w3:IN STD_LOGIC; r1,r2:OUT STD_LOGIC; y1,y2:OUT STD_LOGIC; g1,g2:OUT STD_LOGIC; reset:IN STD_LOGIC); END traffic_control;ARCHITECTURE a OF traffic_control IS TYPE STATE_SPACE IS(S0,S1,S2,S3); SIGNAL state:STA

4、TE_SPACE; BEGIN PROCESS(reset,clk) BEGIN IF reset=1THEN state=S0; ELSIF(clkEVENT AND clk=1)THEN CASE state IS WHEN S0= IF w1=1THEN state=S1; END IF; WHEN S1= IF w2=1THEN state=S2; END IF; WHEN S2= IF w3=1THEN state IF w2=1THEN state=S0; END IF; END CASE; END IF; END PROCESS; c1=1 WHEN state=S0 ELSE

5、0; c2=1 WHEN state=S1 OR state=S3 ELSE 0; c3=1 WHEN state=S2 ELSE 0; r1=1 WHEN state=S1 OR state=S0 ELSE 0; y1=1 WHEN state=S3 ELSE 0; g1=1 WHEN state=S2 ELSE 0; r2=1 WHEN state=S2 OR state=S3 ELSE 0; y2=1 WHEN state=S1 ELSE 0; g2=1 WHEN state=S0 ELSE 0;END a; 模30计数器LIBRARY IEEE;USE IEEE。STD_LOGIC_1

6、164.ALL;ENTITY count30 ISPORT( clk :IN STD_LOGIC; enable :IN STD_LOGIC; c :OUT STD_LOGIC);END count30;ARCHITECTURE a OF count30 ISBEGIN PROCESS(clk) VARIABLE cnt:INTEGER RANGE 30 DOWNTO 0; BEGIN IF(clkEVENT AND clk=1)THEN IF enable=1AND cnt30 THEN cnt:=cnt+1; ELSE cnt:=0; END IF; END IF; IF cnt=30 T

7、HEN C=1; ELSE C=0; END IF; END PROCESS;END a; 模5计数器LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY count05 ISPORT( clk :IN STD_LOGIC; enable :IN STD_LOGIC; c :OUT STD_LOGIC);END count05;ARCHITECTURE a OF count05 ISBEGIN PROCESS(clk) VARIABLE cnt:INTEGER RANGE 05 DOWNTO 0; BEGIN IF(clkEVENT AND clk=1

8、)THEN IF enable=1AND cnt05 THEN cnt:=cnt+1; ELSE cnt:=0; END IF; END IF; IF cnt=05 THEN C=1; ELSE C=0; END IF; END PROCESS;END a; 模26计数器LIBRARY IEEE;USE IEEE.STD_LOGIC_1164。ALL;ENTITY count26 ISPORT( clk :IN STD_LOGIC; enable :IN STD_LOGIC; c :OUT STD_LOGIC);END count26;ARCHITECTURE a OF count26 ISB

9、EGIN PROCESS(clk) VARIABLE cnt:INTEGER RANGE 26 DOWNTO 0; BEGIN IF(clkEVENT AND clk=1)THEN IF enable=1AND cnt26 THEN cnt:=cnt+1; ELSE cnt:=0; END IF; END IF; IF cnt=26 THEN C=1; ELSE C=0; END IF; END PROCESS;END a; 其电路图如图3所示:图3(3)、逻辑仿真仿真结果波形文件如图4所示:图43、九九乘法表系统的设计(1)、设计输入对于此较复杂的系统,采用层次化设计思路.首先,建立VHDL

10、文本输入文件:程序包PLUS_LIB的描述源文件:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;PACKAGE PLUS_LIB IS COMPONENT PLUSCONTROL PORT(CLK :IN STD_LOGIC; START,ARH,TT,EE :IN STD_LOGIC; DONE,CRT,S,ENT :OUT STD_LOGIC);END COMPONENT; COMPONENT COUNT8 PORT(CLK :IN STD_LOGIC; CRT,ENT :IN STD_LOGIC; TT :OUT STD_LOGIC);END COMP

11、ONENT;COMPONENT CNT1PORT(CLK : IN STD_LOGIC; CRT :IN STD_LOGIC; OC :OUT STD_LOGIC; QA :OUT INTEGER RANGE 0 TO 9);END COMPONENT;COMPONENT CNT2PORT(CLK :IN STD_LOGIC; CRT :IN STD_LOGIC; EN2 :IN STD_LOGIC; EE :OUT STD_LOGIC; QB :OUT INTEGER RANGE 0 TO 9);END COMPONENT;COMPONENT MUX1PORT(BB,QB:IN INTEGE

12、R RANGE 0 TO 9; S:IN STD_LOGIC; B:OUT INTEGER RANGE 0 TO 9);END COMPONENT;COMPONENT MUX2PORT(AA,QA :IN INTEGER RANGE 0 TO 9; S :IN STD_LOGIC; A :OUT INTEGER RANGE 0 TO 9);END COMPONENT;系统顶层设计的源文件:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164。ALL;USE WORK.PLUS_LIB.ALL; ENTITY PLUS_TOP ISPORT(CLK:IN STD_LOGIC;

13、 AA,BB: IN INTEGER RANGE 0 TO 9; A,B:BUFFER INTEGER RANGE 0 TO 9; EE,OC: BUFFER STD_LOGIC; BD1,BD2:OUT INTEGER RANGE 0 TO 9; START,ARH:IN STD_LOGIC);END PLUS_TOP;ARCHITECTURE XYB OF PLUS_TOP ISSIGNAL ENT,CRT,DONE,S,TT:STD_LOGIC;SIGNAL QA,QB,TA,TB:INTEGER RANGE 0 TO 9;SIGNAL M: INTEGER RANGE 0 TO 81;

14、BEGIN A=TA; B=TB; CONTROL:PLUSCONTROL PORT MAP(CLK,START,ARH,TT,EE,DONE,CRT,S,ENT); COUNT1:COUNT8 PORT MAP(CLK,CRT,ENT,TT); COUNT2:CNT1 PORT MAP(CLK,CRT,OC,QA); COUNT3:CNT2 PORT MAP(CLK,CRT,OC,EE,QB); M1:MUX1 PORT MAP(BB,QB,S,TB); M2:MUX2 PORT MAP(AA,QA,S,TA); P1:PLUS PORT MAP(TA,TB,M); P2:TRANS POR

15、T MAP(M,BD1,BD2);END XYB;系统第二层描述含较多模块的VHDL源文件,分别如下所示:LIBRARY IEEE;USE IEEE。STD_LOGIC_1164。ALL;ENTITY CNT1 ISPORT(CLK : IN STD_LOGIC; CRT:IN STD_LOGIC; OC:OUT STD_LOGIC; QA:OUT INTEGER RANGE 0 TO 9);END;ARCHITECTURE XYB OF CNT1 ISBEGIN PROCESS(CLK) VARIABLE COUNT:INTEGER RANGE 0 TO 9; BEGIN IF CLKEVE

16、NT AND CLK=1 THEN IF CRT=1 THEN IF COUNT=9 THEN COUNT:=0; OC=0; ELSIF COUNT=8 THEN COUNT:=COUNT+1; OC=1; ELSE COUNT:=COUNT+1; OC=0; END IF; END IF; END IF; QA=COUNT; END PROCESS;END XYB;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY CNT2 ISPORT(CLK :IN STD_LOGIC; CRT :IN STD_LOGIC; EN2 :IN STD_LOGI

17、C; EE :OUT STD_LOGIC; QB :OUT INTEGER RANGE 0 TO 9);END;ARCHITECTURE XYB OF CNT2 ISBEGIN PROCESS(CLK) VARIABLE COUNT:INTEGER RANGE 0 TO 9; BEGIN IF CLKEVENT AND CLK=1 THEN IF CRT=1 THEN IF EN2=1 THEN IF COUNT=9 THEN COUNT:=0; EE=1; ELSE COUNT:=COUNT+1; END IF; ELSE EE=0; END IF; END IF; END IF; QB=C

18、OUNT; END PROCESS;END XYB;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY COUNT8 ISPORT(CLK : IN STD_LOGIC; CRT,ENT:IN STD_LOGIC; TT:OUT STD_LOGIC);END;ARCHITECTURE XYB OF COUNT8 ISBEGIN PROCESS(CLK) VARIABLE COUNT:INTEGER RANGE 0 TO 7; BEGIN IF CLKEVENT AND CLK=1 THEN IF CRT=1 AND ENT=1 THEN IF COU

19、NT=7 THEN COUNT:=0; TT=1; ELSE COUNT:=COUNT+1; TT=0; END IF; END IF; END IF; END PROCESS;END XYB;LIBRARY IEEE;USE IEEE。STD_LOGIC_1164.ALL;ENTITY MUX1 ISPORT(BB,QB:IN INTEGER RANGE 0 TO 9;S:IN STD_LOGIC;B:OUT INTEGER RANGE 0 TO 9);END MUX1;ARCHITECTURE XYB OF MUX1 ISBEGIN B=QB WHEN S=1ELSE BB;END XYB

20、;LIBRARY IEEE;USE IEEE。STD_LOGIC_1164。ALL;ENTITY MUX2 ISPORT(AA,QA:IN INTEGER RANGE 0 TO 9;S:IN STD_LOGIC;A:OUT INTEGER RANGE 0 TO 9);END MUX2;ARCHITECTURE XYB OF MUX2 ISBEGIN A=QA WHEN S=1ELSE AA;END XYB;LIBRARY IEEE;USE IEEE.STD_LOGIC_1164。ALL;ENTITY plus ISPORT(a:IN INTEGER RANGE 0 TO 9;b:IN INTE

21、GER RANGE 0 TO 9;m:OUT INTEGER RANGE 0 TO 81);END plus;ARCHITECTURE XYB OF plus ISBEGIN m IF START=1THEN STATE=S1; END IF; WHEN S1= IF ARH=1THEN STATE=S3; ELSE STATE=S2; END IF; WHEN S2= IF TT=1THEN STATE IF EE=1THEN STATE=S1; END IF; END CASE; END IF; END PROCESS; DONE=1 WHEN STATE=S0 ELSE 0; CRT=0

22、 WHEN STATE=S0 ELSE 1; S=1 WHEN STATE=S3 ELSE 0; ENT=1 WHEN STATE=S2 ELSE 0;END XYB;LIBRARY IEEE;USE IEEE。STD_LOGIC_1164。ALL;ENTITY trans ISPORT(m:IN INTEGER RANGE 0 TO 81;bd2,bd1:out INTEGER RANGE 0 TO 9);END trans;ARCHITECTURE XYB OF trans ISBEGIN process(m)beginif m=9 thenbd2=0;bd1=m;elsif m=19 t

23、henbd2=1;bd1=m10;elsif m=29 thenbd2=2;bd1=m20;elsif m=39 thenbd2=3;bd1=m-30;elsif m=49 thenbd2=4;bd1=m40;elsif m=59 thenbd2=5;bd1=m50;elsif m=69 thenbd2=6;bd1=m60;elsif m=79 thenbd2=7;bd1=m70;elsebd2=8;bd1=m-80;end if;end process;end xyb;本题的实验电路如图5所示图5(2)、逻辑仿真设计输入文件经适当的软件开发系统编译处理,由功能仿真器进行逻辑模拟,获得该电路仿真结果如图6所示:图6三、实验心得通过这三个数字系统的设计,我学会了用QUARTUS 2这个软件,利用它进行数字系统的设计与仿真。这三个实验由简到繁,由易到难,由功能电路到系统的原则排序,有些实例给出图形,有些是VHDL文本输入方式,有些是图形文本结合。多种多样的设计方法让我更好更熟练的掌握了数字系统设计软件的操作与应用。

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

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