实验2时序逻辑电路实验

上传人:桔**** 文档编号:511577299 上传时间:2023-11-23 格式:DOCX 页数:8 大小:97.05KB
返回 下载 相关 举报
实验2时序逻辑电路实验_第1页
第1页 / 共8页
实验2时序逻辑电路实验_第2页
第2页 / 共8页
实验2时序逻辑电路实验_第3页
第3页 / 共8页
实验2时序逻辑电路实验_第4页
第4页 / 共8页
实验2时序逻辑电路实验_第5页
第5页 / 共8页
点击查看更多>>
资源描述

《实验2时序逻辑电路实验》由会员分享,可在线阅读,更多相关《实验2时序逻辑电路实验(8页珍藏版)》请在金锄头文库上搜索。

1、时序逻辑电路实验1、实验名称:可逆计数器设计2、实验目的:1 )进一步熟练ISE开发工具,巩固FPGA开发的基本步骤,掌握功能仿真方法;2) 掌握时序逻辑电路设计的一般方法,掌握时钟分频程序设计方法;3 )理解VHDL的层次结构设计;4) 巩固程序下载方法;5) 了解开发板时钟资源,以及时钟分频方法。3、实验内容:3.1、建立工程文件,顶层文件为原理图;诃 uounterS自 O xc3 s500&-4fg 3 20D ;f电 counters (counterB.&ch)uhd XE_X1_2 - counter!2 - Behavioral (counter!2.vhd)勾 XLXI_4

2、- div2 - Behavioral (div2.vhd) XLX1_5 - fenp - Behavioral (fenp.vhd)cf; counterB.ucf3.2、首先实现如下基本的可逆计数器可逆计数器电路图及功能表如图3-1和表3-1所示。表3-1可逆计数器功能表clrenUp/DnelkY7 Y01XXX0000000000XX停止计数011t计数器+1操作010计数器-1操作图3-1可逆计数器原理图编写计数器模块主程序模块如下use IEEE.STDLOGIC11C4.ALL;use IEEE.STD LOGIC UNSIGNED.ALL;use IEEE.STDLOG工CA

3、R工TH.ALL;-Uncoirir.ent the following library declardtion if ising-drit.nir.etic finctionB with Signed or Unsigned values一一ise IEEE.NUMERIC_5TD.ALL;-Uncoirir.ent the following library declardtion if Inst ant id ting-any Xilinx prirait.ives in this code.一一library UNISIM;-ise UMI5IM. VCorr.ponents . al

4、l;entity coanterlS isFort ( clr : in STD_LOGIC;elk : in 5TD_LOGIC;en : in 5TD_LOGIC;jpdn : in STD_LCGIC;Y : ojt STD_LOGIC_VECTOR (7 downto 0);end coint.erl2;drcnitecfjre behavioral of cointerl2 issignal result: stci_lcigic_vector (7 downto 0:= 00000000;begin(process (clr)beginif (clr = 1) tnenresult

5、 = ir00000000;elsif (en = 111) thenif (elk1event and elk = 111) thenif (updn = 111) tnenresult = result + 1;elseresult. = resnlt -1;end i;end if;end if;end process;Y= resnlt;end behavioral;3.3实现如下图所示的分频器计数时钟频率为1Hz,通过对50Mhz系统时钟分频得到,分频电路独立编写 一模块,如图3-2所示;SOMdock1/50000001Hz clock分频模块程序如下,要求输入为50MHz系统时钟

6、,输出为1Hz计数时钟library ZEES;use ZZEE.5TD_L0GIC_lLfi4.ALL;use ZEEE.STD_LOGIC_ASITH.ALL;use ZEEE.5TD_LOGIC_UNSIGLED.ALL;一一 Uncorcnsent: tSie fallowing library declaration if using一一 arithmetic functioiiB witli Signed or Uns 1 oned values 一一use IEEE.NUMERIC_STD.ALL;一一 Uncorimsent the following litrary decl

7、aration if ins t ant i at inc 一一 any Xilinx prind-tives in tills code.一一library UNISIM;一一use UNISIM. VCoirponents . all;entity fenp isFort ( clkO : Itl 5TD_LOGIC;clkl : out SrD_LDGIC;end fenp;architecture Behavioral of fenp isteginprocess(clkOvarist-le ent: integer := 0;begiTiif (clkO 1 event and cl

8、kO = 1 ) tlienent := ent + 1;if (ent = 2500Q000 tlienclkl = O;elsif (ent = 50Q000Q0 then 一一50000000ent := Q;elseclkl = 1;end if;end if;end process;end Behavioral;3.4扩展:实现二选一选择器可以对按键次数进行计数(按键为BTN_SOUTH),即通过SW2选择计数源。二选一电路如图3-3所示。DoutIniIn2编写2选1模块如下,输入为按键、1Hz时钟和开关SW2,输出为计数源;3.5、资源使用要求及实现方法: 1 )用LED0LED

9、7作为计数器输出显示,LED7为高位,LEDO为低位;2)SW0为计数方向up/dn控制;3)SW1为计数允许EN控制端;4)BTN_EAST 为 clr 按钮;5)计数时钟频率为1Hz,通过对50Mhz系统时钟分频得到,分频电路独立编写一模块,如上图3-2所示;6 )扩展:可以对按键次数进行计数(按键为BTN_SOUTH),即通过SW2选择 计数源。二选一电路如上图3-3所示。7 )将图3-1,3-2,3-3三个模块连接起来,构成一个完整计数器。如图3-4所 示。3.6、对各个器件进行引脚约束。NETnYnLOC = F9JIOSTANDARD = nLn?TjSLEW =SLOW |NET

10、LOC=迟9JIOSTANDARD = LVTT|SLEW =SLOW |NETLOC=DllIIOSIALIDARD = rTLH:TLn jSLEW =SLOWNETLOC=CllIIOSIALIDARD = rTLH:TLn jSLEW =SLOWNETLOC=FllIIOSIALIDARD = rTLH:TLn jSLEW =SLOWNETLOC=EllIIOSIALIDARD = rTLH:TLn jSLEW =SLOWNETLOC=E12IIOSTALIDARD = nLTTLn jS 匚EPJ =SLOWNETLOC=F12II03TANDARD = nLTTLn jS 匚EPJ

11、 =SLOWNETRkrh LOC =:KI 7 jI05IAMDARD =| FiJLLDOWN;NETnclknLOC =09 |IOSTANDARD = nLVCMOS33n;NETrr门工LOG =Hl 35I05IANDARD = nLYITLn |FiJLLDOWN;NETE-iipcin17LOC=L13IIOSTALIDARD =jPULLUFfNETe已LO匚=Ll |IOSTAtlDARD = PH: TH ( EU 匚 LUP;NETe吕” LOG =:tilS jIOSIALIDARD = nLT?TLn | FUJI LUF;DRIXT = 0;DRIVE = 0;| DRIVE = 3; | DRIVE = 3;I DRIVE = 3;| DRIVE = 3;| DRIVE = 3;| DRIVE = 3;37将程序到器件上进行验证。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号