西工大_数电实验_第二次实验_实验报告材料.doc
《西工大_数电实验_第二次实验_实验报告材料.doc》由会员分享,可在线阅读,更多相关《西工大_数电实验_第二次实验_实验报告材料.doc(20页珍藏版)》请在课桌文档上搜索。
1、数电实验2一实验目的1.学习并掌握硬件描述语言(VHDL 或 Verilog HDL);熟悉门电路的逻辑功能,并用硬件描述语言实现门电路的设计。2.熟悉中规模器件译码器的逻辑功能,用硬件描述语言实现其设计。3.熟悉时序电路计数器的逻辑功能,用硬件描述语言实现其设计。4.熟悉分频电路的逻辑功能,并用硬件描述语言实现其设计。二.实验设备1.Quartus开发环境2.ED0开发板三.实验容要求1:编写一个异或门逻辑电路,编译程序如下。1)用 QuartusII 波形仿真验证;2)下载到DE0 开发板验证。要求2:编写一个将二进制码转换成 0-F 的七段码译码器。1)用 QuartusII 波形仿真验
2、证;2)下载到 DE0 开发板,利用开发板上的数码管验证。要求3:编写一个计数器。1)用QuartusII 波形仿真验证;2)下载到 DE0 开发板验证。要求4:编写一个能实现占空比 50%的 5M 和50M 分频器即两个输出,输出信号频率分别为 10Hz 和 1Hz。1) 下载到 DE0 开发板验证。(提示:利用 DE0 板上已有的 50M 晶振作为输入信号,通过开发板上两个的 LED 灯观察输出信号)。2) 电路框图如下:扩展容:利用已经实现的 VHDL 模块文件,采用原理图方法,实现 0-F 计数自动循环显示,频率 10Hz。(提示:如何将 VHDL 模块文件在逻辑原理图中应用,参考参考
3、容 5)四.实验原理1.实验1实现异或门逻辑电路,VHDL源代码如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY EXORGATE ISPORT(A,B:IN STD_LOGIC;C:OUT STD_LOGIC);END EXORGATE;ARCHITECTURE fwm OF EXORGATE ISBEGINCdis_outdis_outdis_outdis_outdis_outdis_outdis_outdis_outdis_outdis_outdis_outdis_outdis_outdis_outdis_outdis_out dis_
4、out=1111111;-灭灯,不显示END CASE;END PROCESS;END fwm;3.实验3完成一个计数器,VHDL源代码如下:LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY counter ISPORT ( clk,RST : IN STD_LOGIC;DOUT : OUT STD_LOGIC_VECTOR (3 DOWNTO 0); -四位计数COUT : OUT STD_LOGIC); -进位位END counter;ARCHITECTURE fwm OF cou
5、nter ISSIGNAL Q1 : STD_LOGIC_VECTOR (3 DOWNTO 0);BEGINPROCESS(clk,RST)BEGINIF RST = 0 THEN Q1 0); COUT= 0;ELSIF clkEVENT AND clk=1 THENQ1=Q1+1;COUT= 1001 THEN Q1 0); COUT= 1;END IF;END IF;END PROCESS;DOUT=Q1 ;END fwm;4.实验4编写一个能实现占空比 50%的 5M 和50M 分频器即两个输出,输出信号频率分别为 10Hz 和 1Hz,VHDL源代码如下:LIBRARY IEEE;U
6、SE IEEE.STD_LOGIC_1164.ALL;ENTITY fpq ISPORT(clk:IN STD_LOGIC;clk_out,clk_out1:OUT STD_LOGIC);END fpq;ARCHITECTURE fwm OF fpq ISCONSTANT m : INTEGER:= 25000000; -50M 分频到 1Hz 时=25000000。CONSTANT m1 : INTEGER:= 2500000; -5M 分频到 10Hz 时=2500000。SIGNAL tmp :STD_LOGIC;SIGNAL tmp1 :STD_LOGIC;BEGINPROCESS(c
7、lk, tmp)VARIABLE cout : INTEGER:=0;BEGINIF clkEVENT AND clk=1 THENcout:=cout+1; -计数器+1IF cout=m THEN tmp=0; -计数小于等于 25000000,输出 0ELSIF coutm*2 THEN tmp=1; -计数小于 50000000,输出 1ELSE cout:=0; -计数器清零END IF;END IF;END PROCESS;clk_out=tmp; -50M分频器输出PROCESS(clk, tmp1)VARIABLE cout1 : INTEGER:=0;BEGINIF clkE
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 西工大 实验 第二次 报告 材料

链接地址:https://www.desk33.com/p-15228.html