郑州航院EDA实验报告模板
EDA技术及应用实验报告(完整版纯手打)
聲附MU塞农程舉龜Zhengzhou In^lituleof Aeronautical Industry Management《EDA技术及应用》实验报告系部: _________________________指导教师:________________________学号:___________________________姓名:___________________________实验一点亮LED设计一、实验目的通过此实验让用户逐步了解、熟悉和掌握FPGA开发软件Quartusll的使用方法及Verilog HDL的编程方法。
本实验力求以详细的步骤和讲解让读者以最快的方式了解EDA技术开发以及软件的使用,从而快速入门并激起读者对EDA技术的兴趣。
二、实验内容SmartSOPC实验箱上有8个发光二极管LED1~8,并分别与FPGA的50、53~55、176和47~49引脚相连。
本实验的内容是建立可用于控制LED亮/灭的简单硬件电路,要求点亮SmartSOPC实验箱上的4个发光二极管(LED1、LED3、LED5 和LED7 )。
三、实验原理FPGA器件同单片机一样,为用户提供了许多灵活独立的输入/输出I/O 口(单元)。
FPGA每个I/O 口可以配置为输入、输出、双向I/O、集电极开路和三态门等各种组态。
作为输出口时,FPGA的I/O 口可以吸收最大为24mA的电流,可以直接驱动发光二极管LED等器件。
所以只要正确分配并锁定引脚后,在相应的引脚上输出低电平“0”就可以实现点亮该发光二级管的功能。
四、实验步骤1、启动Quarters II建立一个空白工程,命名为led_test.qpf。
然后分别建立图形设计文件,命名为led_test.bdf,以及文本编辑文件led1.v,将他们都添加进工程中。
2、对工程进行设计。
在led1.v中输入程序代码,并保存,进行综合编译,若在编译中发现错误,则找出并更正错误,直至编译成功为止。
EDA实验报告(12份).pdf
实验一组合电路的设计1. 实验目的:熟悉MAX + plus II 的VHDL 文本设计流程全过程,学习简单组合电路的设计、多层次电路设计、仿真和硬件测试。
2. 实验内容:设计一个2选1多路选择器,并进行仿真测试,给出仿真波形。
3. 实验程序如下:library ieee;use ieee.std_logic_1164.all; entity mux21a isport(a,b,s:in std_logic;y:out std_logic); end entity mux21a; architecture one of mux21a is beginy<=a when s='0' else b ; end architecture one ;4. 仿真波形(如图1-1所示)图1-1 2选1多路选择器仿真波形5. 试验总结:从仿真波形可以看出此2选1多路选择器是当s为低电平时,y输出为b, 当s为高电平时,y输出为a(y<=a when s='0' else b ;),完成2路选择输出。
实验二时序电路的设计1. 实验目的:熟悉MAX + plus II VHDL文本设计过程,学习简单的时序电路设计、仿真和测试。
2. 实验验内容:设计一个锁存器,并进行仿真测试,给出仿真波形。
3. 实验程序如下:library ieee;use ieee.std_logic_1164.all;entity suocun7 isport(clk: in std_logic;en: in std_logic;D: in std_logic_vector(7 downto 0);B:out std_logic_vector(7 downto 0)); end suocun7;architecture one of suocun7 issignal K: std_logic_vector(7 downto 0); beginprocess(clk,en,D)beginif clk'event and clk='1' thenif en ='0'thenK<=D;end if;end if;end process;B<=K;end one;4.仿真波形(如图2-1所示)图2-1 8位锁存器仿真波形此程序完成的是一个8位锁存器,当时钟上升沿到来(clk'event and clk='1')、使能端为低电平(en ='0')时,输出为时钟上升沿时的前一个数,从仿真波形看,实现了此功能。
EDA课程设计报告-格式
郑州航空工业管理学院
EDA课程设计报告题目
姓名
学号
指导教师
二О一一年月日
一.设计任务
主要说明你的设计任务及功能。
二.设计方案
主要说明用什么方法实现的,用到哪些元件等,画出电路原理图。
(照着发的板子测出来),说明电路工作原理。
三.设计程序
主要分析程序的设计流程,主要部分进行说明,并将完整程序附上。
四.总结及心得
总结设计过程有哪些问题,怎么解决的,还有什么需要完善的。
设计过程中有什么心得和收获。
电路板的管脚连接关系如下:
Seg0 seg1 seg2 seg3 seg4 seg5 seg6 (小数点seg7没有用到)
24 25 26 27 28 29 31
时钟GCLK1 43
Dig0 dig1 dig2 dig3
34 36 37 39
Key0 key1 key2
14 16 17。
EDA实验报告完结版
EDA实验报告完结版一、实验目的本次 EDA 实验的主要目的是通过实际操作和设计,深入理解和掌握电子设计自动化(EDA)技术的基本原理和应用。
具体而言,包括熟悉 EDA 工具的使用方法,学会运用硬件描述语言(HDL)进行逻辑电路的设计与描述,以及通过综合、仿真和实现等流程,将设计转化为实际的硬件电路,并对其性能进行评估和优化。
二、实验环境本次实验所使用的 EDA 工具为_____,该工具提供了丰富的功能模块和强大的设计支持,包括原理图编辑、HDL 代码编写、综合、仿真和下载等。
实验所使用的硬件平台为_____开发板,其具备多种接口和资源,便于对设计的电路进行实际验证和测试。
三、实验内容1、基本逻辑门电路的设计与实现使用 HDL 语言(如 Verilog 或 VHDL)设计常见的基本逻辑门电路,如与门、或门、非门等。
通过编写代码,对逻辑门的输入输出关系进行描述,并进行综合和仿真,验证设计的正确性。
2、组合逻辑电路的设计与实现设计并实现较为复杂的组合逻辑电路,如加法器、减法器、编码器、译码器等。
运用 HDL 语言描述电路的功能,进行综合和仿真,确保电路在各种输入情况下的输出结果符合预期。
3、时序逻辑电路的设计与实现设计常见的时序逻辑电路,如计数器、寄存器、移位寄存器等。
在设计过程中,考虑时钟信号、同步复位和异步复位等因素,通过仿真验证时序逻辑的正确性,并对电路的性能进行分析。
4、有限状态机(FSM)的设计与实现设计一个有限状态机,实现特定的功能,如交通信号灯控制器、数字密码锁等。
明确状态转移条件和输出逻辑,通过编写 HDL 代码实现状态机,并进行综合和仿真,验证其功能的准确性。
5、综合与优化对设计的电路进行综合,生成门级网表,并通过优化工具对电路进行面积、速度等方面的优化,以满足特定的设计要求。
6、硬件实现与测试将综合后的设计下载到硬件开发板上,通过实际的输入输出信号,对电路的功能进行测试和验证。
观察电路在实际运行中的表现,对出现的问题进行分析和解决。
EDA实验报告范例
EDA技术的相关网址:
• END F_ADDER_1;
• ARCHITECTURE a OF F_ADDER_1 IS • COMPONENT XOR_1 • PORT (A1,B1:IN std_logic; • C1: OUT std_logic); • END COMPONENT; • COMPONENT NAND_2 • PORT (A1,B1:IN std_logic; • C1: OUT std_logic); • END COMPONENT; • SIGNAL S1,S2,S3: std_logic ; • BEGIN
• 三、 实验条件
• (1) 电脑。 • (2) 开发软件: QuartusII 。 • (3) 实验设备: EL- EDA-V型 • EDA 实 验 开 发 系 统。 • (3) 拟用芯片: ACEX1K: • EP1K100QC2083。
•
四、 实验设计
1)全加器的逻辑图
由异或门和二输入端与非门构 成的1位二进制全加器如图所示。
实验教学目的:
了解一类可编程逻辑器件,掌握一门硬件描述 语言,熟悉使用一种EDA设计工具,设计自己的芯片。
教材及参考资料
教材:
《EDA技术及应用》谭会生、张昌凡 编著 西安电子科技大学出版社
参考资料:
《CPLD技术及其应用》宋万杰 等编著 西安电子科大出版社出版 《VHDL硬件描述语言与数字逻辑电路设计》 侯伯亨 顾新 等编著 西安电子科技大学出版社 《CPLD/FPGA的开发和应用》徐光辉 等编著 电子工业出版社出版
• --与非门的VHDL描述
• • • • • • • • • • LIBRARY ieee; USE ieee.std_logic_1164.ALL; ENTITY NAND_2 IS PORT( A1,B1: IN std_logic; C1: OUT std_logic); END NAND_2; ARCHITECTURE c OF NAND_2 IS BEGIN C1<=A1 NAND B1; END c;
EDA实验报告模板
《EDA技术》实验报告系别:专业:班级:学号:姓名:指导教师:实验课程:实验地点:EDA实验室年月日实验教师填阅实习报告要求1 封面——指定样稿2 纸张——A4纸3.格式要求如下实验课程名称:EDA技术(居中,三号宋体,加粗,占4行)一、实验目的(左顶格,四号宋体,加粗,占2行,不接排)1、了解EDA技术及常用EDA软件的用途(小4号宋体,)(正文)×××××(小4号宋体,接排)2、了解电路设计中常用器件并能正确选择(同上)。
3、掌握Protel99 Se的基本使用(同上)。
二、实验课时:16学时(左顶格,四号宋体,加粗,占2行,不接排)三、实验地点:EDA实验室(左顶格,四号宋体,加粗,占2行,不接排)四、实验内容:在电路板设计软件Protel99 Se环境下,完成稳压电源的原理图、PCB板的设计(或8051按键实验板原理图、PCB板的设计)五、实验步骤:(要求详细描述各步骤的操作过程)1.电路原理图的设计(小4号宋体,加粗)(要求截入设计的原理图,并列出设计步骤,可用流程图表示)图1. 稳压电源原理图(五号字体)2.报表的生成(包括网络报表、元器件列表。
电气规则测试报告,并列出报表生成步骤)。
正文(小四,行距20磅)3.印制电路板的设计(截入设计的原理图,并列出设计步骤)。
六实验总结:1、总结设计电路板的过程或流程,及设计过程中应注意的问题。
a、电路原理图的设计流程。
b、生成报表,包括(网络报表,原件列表,电气规则测试报告)。
c、印制电路板的设计流程。
2、什么是元器件的封装,列出你所知道的电子元器件的基本封装类型,并说明其含义(至少列出六种)。
3、网络报表在电路板设计过程中起什么作用,并说明网络报表的内容都包括那些?。
4、在电路板的设计过程中你都遇到的那些问题?是如何解决的?。
5、总结本课程的实验心得,提出你的意见和建议。
eda实训报告(全)
《EDA技术及其应用》实训报告班级电信一班姓名 xxxx学号 103001231 指导教师 xxxx2012年05月21 日xxxxxxxx学院10级机械电子工程系目录1.1 课题 (3)1.2 实验的目的及意义 (3)1.3 实验的内容及要求 (3)1.4 实验的地点 (3)1. 5 实验的器材 (3)1. 6 实验设计思想 (3)1. 7 各模块的设计程序和元件介绍 (3)1. 8 实验感想 (11)1.1实验的课题:万年历1.2实验的目的及意义:(1)掌握EDA技术及FPGA技术的开发流程。
(2)掌握系统设计的方法和层次化设计的方法。
(3)掌握QuartusII软件的使用方法。
(4)掌握VHDL语言的程序设计、编写、编译和错误修改。
(5)掌握熟悉EDA实验箱的各个模块(6)掌握EDA试验箱与pc机的连接、下载和引脚绑定的全过程和方法,实现功能仿真。
1.3 实验的内容及要求:(1)实现年、月、日、时、分、秒的显示并具有闰年判断计数的功能(2)在试验箱上通过按键实现年月日和时分秒的显示切换。
(3)利用试验箱和pc机进行功能测试并实现万年历的显示功能。
1.4 实验的地点:郑州信息科技职业学院EDA实验室1.5 实验的器材:硬件:计算机、EDA试验箱软件:QuartusII软件1.6 实验设计思想:将万年历分为各个模块分项处理,每个小模块实现一个小的功能,最后在万年历的顶层文件中将各个模块整好在一起,实现万年历的整体功能。
这是万年历实验整体的设计思想。
其中组成模块有:秒计时模块cnt60、分计时模块cnt60、时计时模块cnt24、日计时模块tian、月计时模块yue、年计时模块nian、调整模块tz、控制模块mux21,然后在顶层文件中连接个各个模块组成万年历的完整连接图,之后再pc机上进行编译,完成引脚绑定再下载到实验箱上,根据程序内容及引脚绑定通过按键控制和led 灯的显示最终完成测试。
1.7各模块设计:1、秒分时、年月日、调整模块、控制模块设计程序(1)秒计时模块cnt60(六十进制计数器)程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_unsigned.all;entity CNT60 isport( CLK:in std_logic;CQ1,CQ2:out std_logic_vector(3 downto 0);COUT:OUT std_logic);end entity CNT60;architecture art of CNT60 issignal s1,s2:std_logic_vector(3 downto 0);beginprocess(clk)beginIF clk'event AND clk='1' then S1<=S1+1;IF S1=9 THEN S1<="0000"; S2<=S2+1; END IF;IF s2=5 AND S1=9 then s1<="0000"; s2<="0000"; COUT<='1';else COUT<='0'; end if;end if;CQ1<=S1; CQ2<=S2;end process;END art;将程序用QuartusII软件编译之后生成的cnt60模块元件如图所示:(此模块实现六十进制计数,用它实现分和秒功能)(2)分计时模块cnt60:(六十进制计数器)分计时模块和秒计时秒快一样,同样是用六十进制计数器cnt60,程序和生成元件同上所述。
EDA实验报告含结果图
EDA电子课程实验报告专业:班级:姓名:学号:实验一四人表决器一实验目的1、熟悉Quartus II软件的使用。
2、熟悉EDA-IV实验箱。
3、熟悉EDA开发的基本流程。
二硬件需求1、RC-EDA-IV型实验箱一台;2、RC-EDA-IV型实验箱配套USB-Blaster下载器一个;3、PC机一台。
三实验原理所谓表决器就是对于一个行为,由多个人投票,如果同意的票数过半,就认为此行为可行;否则如果否决的票数过半,则认为此行为无效。
四人表决器顾名思义就是由四个人来投票,当同意的票数大于或者等于3人时,则认为同意;反之,当否决的票数大于或者等于2人时,则认为不同意。
实验中用4个拨挡开关来表示4个人,当对应的拨挡开关输入为‘1’时,表示此人同意;否则若拨挡开关输入为‘0’时,则表示此人反对。
表决的结果用一个LED表示,若表决的结果为同意,则LED被点亮;否则,如果表决的结果为反对,则LED不会被点亮。
四实验内容VHDL程序:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;--------------------------------------------------------------------entity EXP3 isport(k1,K2,K3,K4 : in std_logic;ledag : out std_logic_vector(3 downto 0);m_Result : out std_logic);end EXP3;--------------------------------------------------------------------architecture behave of EXP3 issignal K_Num : std_logic_vector(2 downto 0); signal K1_Num,K2_Num: std_logic_vector(2 downto 0); signal K3_Num,K4_Num: std_logic_vector(2 downto 0);beginprocess(K1,K2,K3,K4)beginK1_Num<='0'&'0'&K1;K2_Num<='0'&'0'&K2;K3_Num<='0'&'0'&K3;K4_Num<='0'&'0'&K4;end process;process(K1_Num,K2_Num,K3_Num,K4_Num,)beginK_Num<=K1_Num+K2_Num+K3_Num+K4_Num;end process;process(K_Num) beginif(K_Num>2) thenm_Result<='1';elsem_Result<='0';end if;end process;end behave;实验电路实验二格雷码转换一实验目的1、了解格雷码变换的原理。
eda实验报告完整版
EDA实验报告焦中毅201300121069实验1 4选1数据选择器的设计一、实验目的1.学习EDA软件的基本操作。
2.学习使用原理图进行设计输入。
3.初步掌握器件设计输入、编译、仿真和编程的过程。
4.学习实验开发系统的使用方法。
二、实验仪器与器材1.EDA开发软件一套2.微机一台3.实验开发系统一台4.打印机一台三、实验说明本实验通过使用基本门电路完成4选1数据选择器的设计,初步掌握EDA设计方法中的设计输入、编译、综合、仿真和编程的过程。
实验结果可通过实验开发系统验证,在实验开发系统上选择高、低电平开关作为输入,选择发光二极管显示输出电平值。
本实验使用Quartus II 软件作为设计工具,要求熟悉Quartus II 软件的使用环境和基本操作,如设计输入、编译和适配的过程等。
实验中的设计文件要求用原理图方法输入,实验时,注意原理图编辑器的使用方法。
例如,元件、连线、网络名的放置方法和放大、缩小、存盘、退出等命令的使用。
学会管脚锁定以及编程下载的方法等。
四、实验要求1.完成4选1数据选择器的原理图输入并进行编译;2.对设计的电路进行仿真验证;3.编程下载并在实验开发系统上验证设计结果。
五、实验结果4选1数据选择器的原理图:仿真波形图:管脚分配:实验2 四位比较器一、实验目的1.设计四位二进制码比较器,并在实验开发系统上验证。
2.学习层次化设计方法。
二、实验仪器与器材1.EDA 开发软件 一套 2.微机 一台 3.实验开发系统 一台 4.打印机 一台 5.其它器件与材料 若干 三、实验说明本实验实现两个4位二进制码的比较器,输入为两个4位二进制码0123A A A A 和0123B B B B ,输出为M (A=B ),G (A>B )和L (A<B )(如图所示)。
用高低电平开关作为输入,发光二极管作为输出,具体管脚安排可根据试验系统的实际情况自行定义。
四、实验要求1.用硬件描述语言编写四位二进制码 比较器的源文件; 2.对设计进行仿真验证; 3.编程下载并在实验开发系统上进行 硬件验证。
EDA实验实验报告2
EDA实验实验报告学号:姓名:彭文勇院系:微电子技术系专业:嵌入式教师:李海2010年12月实验一一位全加器的设计实验地点:第二实验楼405同组人员:孙腾坤一、实验目的通过次实验我们逐步了解、熟悉和掌握FPGA开发软件Quartus II 的使用及Verilog HDL的编程方法。
学习用Verilog HDL语言以不同的方式来描述1位全加器及电路的设计仿真和硬件测试。
二、实验原理和内容本实验的内容是建立一个1位全加器。
具体内容包括:(1)使用Quartus II建立工程、编写程序;(2)进行波形仿真验证;(3)进行硬件测试。
通过SmartSOPC试验箱上的按键KEY1~KEY3输入信号,分别为A、B和cin,并通过LED1~LED3指示相应的状态。
输出Sum和cout通过LED7和LED8指示(灯亮表示输入或输出为“1”)。
三、实验步骤(1)启动Quartus II建立一个空白工程,然后命名为full_add。
(2)新建Verilog HDL源文件full_add.v,输入程序代码并保存,然后进行综合编译。
若在编译过程中发现错误,则找出并更正错误,直至编译成功为止,并生成图形符号文件full_add.bdf。
(3)波形仿真验证。
(4)新建图形设计文件命名为full_add.bdf并保存。
微电子技术系(5)选择目标器件并对相应的引脚进行锁定,我们选Altera公司Cyclone系列的EP1C6Q240C8芯片,引脚锁定方法参考实验书后面的附录A引脚分配。
将为使用的引脚设置为三态输入(一定要设置否则可能损坏芯片)。
(6)将full_add.bdf设置为顶层实体。
对该工程文件进行全程便已处理。
若在编译过程中发现错误,则找出并更正错误,直至编译成功为止。
(7)将跳线短接帽调解到JP6的KEY1~KEY3、LED0~LED2、LED6和LED7,使KEY1~KEY3、LED1~LED3、LED7、LED8与芯片对应的引脚相连。
EDA实训报告模板-正文
一、课题分析正文为五号宋体字,单倍行距,主要讲述本次实训有何意义及价值;在设计开始前,你对题目的分析和理解,包括简单介绍原理图的构成及你自己准备如何绘制原理图和制板的大致过程等。
二、原理图绘制绘图前的情况简介2.1原理图符号的制作图2.1 CA T1161的符号图2.2 CA T1161的符号其中元器件CA T1161为自制元器件,如图2.1所示。
2.2 IC卡与看门狗电路的绘制原理图如图2.2所示:图2.2 IC卡与看门狗电路的绘制在原理图中有这样几个文字“SLE4442卡座”,我开始的时候以为是网络标号,所以使用网络标号来标志,但是ERC检查时,总是指示出错,经过老师提示才知道是普通的文字2.2并行口扩展电路的绘制以下内容依次类推。
三、ERC检查3.1 总图的ERC检查在第一次ERC检查的时候,出现了一些错误,如下:Error Report For : Documents\电子游戏机电路.prj 8-Jan-2007 19:21:50#1 Error Duplicate Sheet Numbers 1 电子游戏机电路.prj And Convertor.sch#2 Error Duplicate Sheet Numbers 0 Clock.sch And Control.sch#3 Error Duplicate Designators Source.sch At (300,445) And Convertor.sch At (840,240)#4 Warning Unconnected Input Sheet Entry On Net N00003电子游戏机电路.prj TV INPUT#5 Warning Unconnected Input Sheet Entry On Net N00004电子游戏机电路.prj FROM CLK#6 Warning Unconnected Input Pin On Net NetU2_2Control.sch(U2-2 @540,350)End Report第一个错误的意思是:原因是……,是这样消除的……第二个错误的意思是:原因是……,是这样消除的……以此类推四、印制电路图板的制作4.1 封装的制作有些特殊的器件封装在库中找不到合适的,因此自制了封装,其中主要自制的元件封装介1.**元件,封装为***,如图4.1 所示。
EDA实验报告
EDA课程实践感悟EDA是电子设计自动化(Electronic Design Automation)的英文缩写,是随着集成电路和计算机技术飞速发展应运而生的一种快速、有效、高级的电子设计自动化工具。
这次学校为我们安排的EDA 课程包括了课堂讲授、课后自修以及课程实验三个环节,从这次课程当中我学习到了很多关于电子设计自动化的基础知识,锻炼提高了多方面的综合能力。
一自己对EDA的了解通过课堂老师的讲述和课后对书本的自习,我初步了解了EDA的特征和优势,目标和流程并知道了一些EDA公司和工具,并学习了可编程逻辑器件基础。
1 EDA的特征和优势在现代电子设计中,几乎所有的设计工作都需要在计算机上进行。
,设计者只需完成对系统功能的描述,就可以由计算机软件进行处理得到设计结果。
EDA以硬件描述语言(Hardware Description Language)为系统逻辑描述手段完成的设计文件可以自动完成逻辑编译、逻辑化简、逻辑分割、逻辑综合、布局布线和仿真测试,直至实现既定的电子线路系统功能。
飞速发展EDA 技术使得“自定而下”的设计方法被广泛使用。
在这种新的设计方法中,由用户也对整个系统进行方案设计和功能划分,系统的关键电路用一片或几片专用集成电路ASIC来实现。
用户首先从系统级设计入手,在顶层进行功能方框图的划分和结构设计;在方框图以及进行仿真、纠错看,并用硬件描述语言对高层次的系统行为进行描述;用逻辑综合优化工具生成具体的门级逻辑电路的网表,其对应的物理实现可以是印制电路板或专用集成电路。
EDA技术便利了复杂系统的设计,为用户提供了强大的系统建模和电路仿真功能,全方位地利用计算机和自动设计、仿真和测试技术,降低了设计者的硬件知识和硬件经验的要求。
2 EDA的设计流程一个典型的EDA 设计流程主要包括设计准备,设计输入、设计处理、器件变成和设计验证等五个基本步骤。
设计输入有多种方式,包括采用硬件描述语言进行设计的文本输入方式、图形输入方式和波形输入方式,或者采用文本、图形两者混合的设计输入方式,也可以采用“自顶向下”的层次设计方法,将多个输入和并为一个设计文件。
EDA实验报告
EDA 实验报告交通灯实验一.实验目的通过此实验让用户进一步了解、熟悉和掌握 CPLD/FPGA 开发软件的的使用方法及Verilog HDL 的编程方法。
学习简单状态机的设计和硬件测试。
二.实验内容本实验的内容是设计一个简易的交通灯控制器,要求能实现红、绿、黄灯三种信号的控制并通过数码管显示倒计时时间。
整个设计在SmartSOPC 实验箱上实现,用第一、第二个数码管显示A方向的倒计时时间,用第七、第八个数码管显示B方向的倒计时时间。
此外,由于缺少交通灯模块,本实验用第一、第二、第三个LED灯代表A方向的红、绿、黄灯三种信号,用第六、第七、第八个LED 灯代表B方向的红、绿、黄等三种信号。
三.实验原理本实验设计的交通灯控制器要求实现对 A、B 两个方向的红、绿、黄灯三种信号的控制,并能实现时间显示的倒计时。
因此每个方向的信号可用一个状态机实现(参考交通灯.ppt),状态的跳转顺序为红灯-绿灯-黄灯-红灯(另一个的状态应为绿-黄-红-绿),同时设计一个计时器,来记录每种灯的倒计时时间。
最后将交通灯的状态信息输出至数码管和对应LED灯。
注意,一个方向的红灯时间应和另一个方向的绿黄灯时间总和相等。
四.实验步骤1) 启动Quartus II 建立一个空白工程,然后命名为traffic_test.qpf(器件为:EP3C55F484C8)。
2)加入并完成交通灯控制模块traffic_ctrl.v,加入顶层模块traffic_test 及交通灯显示模块traffic_display.v,进行综合编译,若在编译过程中发现错误,则找出并更正错误,直至编译成功为止。
3)运行引脚绑定脚本文件setup.tcl;文件进行全程编译处理,若在编译过程中发现错误,则找出并更正错误,直至编译成功为止。
5)确保JP6上的LED0-LED7已通过跳线与FPGA引脚相连。
6)按核芯板上的复位按键,观察交通灯是否正常运作。
五. 结构图六.实验代码//*********************************************************//** 交通灯实验//** 控制模块:traffic_ctrl.v//*********************************************************module traffic_ctrl(clock,rst_n,lampa,lampb,acount,bcount);input clock; //系统时钟48MHzinput rst_n; //同步复位信号,低电平有效output [2:0] lampa; //控制A 方向三盏灯的亮灭;其中lampa[2:0]分//别控制A 方向的黄灯、绿灯、红灯(低电平灯亮) output [2:0] lampb; //控制B 方向三盏灯的亮灭;其中lampb[2:0]分//别控制B 方向的黄灯、绿灯、红灯(低电平灯亮) output [7:0] acount; //用于A 方向灯的时间显示,8 位BCD 码输出output [7:0] bcount; //用于B 方向灯的时间显示,8 位BCD 码输出reg [26:0]clk_cnt;wire clken;//设置各种灯的计数器的预置数parameter ared =8'd30, //30秒ared = bgreen + byellowayellow =8'd5, //5秒agreen =8'd15, //15秒bred =8'd20, //20秒bred = agreen + ayellowbyellow =8'd5, //5秒bgreen =8'd25; //25秒//产生1Hz时钟使能信号always @(posedge clock)beginif(clken)clk_cnt <= 26'h0;elseclk_cnt <= clk_cnt + 26'h1;endassign clken = (clk_cnt >= 26'd4*******);//// A方向信号灯控制//reg[2:0] lampa;reg[7:0] acount;reg acount_startred, acount_startgreen, acount_startyellow; // 用于倒数计数器的复位//状态机Areg[1:0] currentstate_A, nextstate_A; parameter s0=0,s1=1,s2=2,s3=3,s4=4;// 以下状态机A的代码自己完成always@(posedge clock or negedge rst_n) beginif(!rst_n) currentstate_A<=s0;else currentstate_A<=nextstate_A;endalways@(currentstate_A or acount)begincase(currentstate_A)s0:begin lampa=3'b111;acount_startred=1'b1;acount_startgreen=1'b0;acount_startyellow=1'b0;nextstate_A<=s1;ends1:begin lampa=3'b110;acount_startred=1'b0;acount_startyellow=1'b0;if(acount==0)beginnextstate_A<=s2;acount_startgreen=1'b1;endelse beginnextstate_A<=s1;acount_startgreen=1'b0;endends2:begin lampa=3'b101;acount_startgreen=1'b0;acount_startred=1'b0;if(acount==0)beginnextstate_A<=s3;acount_startyellow=1'b1;endelse beginnextstate_A<=s2;acount_startyellow=1'b0;endends3:begin acount_startgreen=1'b0;acount_startyellow=1'b0;lampa<=3'b011;if(acount==0)beginnextstate_A<=s1;acount_startred=1'b1;endelse beginnextstate_A<=s3;acount_startred=1'b0;endenddefault:begin bcount_startgreen=1'b0;bcount_startred=1'b0;lampb<=3'b101;if(acount==0)beginnextstate_A<=s2;acount_startyellow=1'b1;endelse beginnextstate_A<=s1;acount_startgreen=1'b0;endendendcaseend// 倒数计数器Aalways @(posedge clock)beginif(acount_startred)acount <= ared;else if (acount_startgreen)acount <= agreen;else if (acount_startyellow)acount <= ayellow;else if (clken)acount <= acount - 1'b1;end//// B方向信号灯控制//reg[2:0] lampb;reg[7:0] bcount;reg bcount_startred, bcount_startgreen, bcount_startyellow; // 用于倒数计数器的复位//状态机Breg[1:0] currentstate_B, nextstate_B;// 以下状态机B的代码自己完成always@(posedge clock or negedge rst_n)beginif(!rst_n) currentstate_B<=s0;else currentstate_B<=nextstate_B;endalways@(currentstate_B or bcount)begincase(currentstate_B)s0: beginlampb=3'b111;bcount_startgreen=1'b1;bcount_startred=1'b0;bcount_startyellow=1'b0;nextstate_B<=s1;ends1:begin bcount_startgreen=1'b0;bcount_startred=1'b0;lampb<=3'b101;if(bcount==0)beginnextstate_B<=s2;bcount_startyellow=1'b1;endelsebeginnextstate_B<=s1;endends2:begin bcount_startyellow=1'b0;lampb<=3'b011;bcount_startgreen=1'b0;if(bcount==0)beginnextstate_B<=s3;bcount_startred=1'b1;endelsebeginnextstate_B<=s2;bcount_startred=1'b0;endends3:beginbcount_startred=1'b0;bcount_startyellow=1'b0;lampb<=3'b110;if(bcount==0)beginnextstate_B<=s1;bcount_startgreen=1'b1;endelsebeginnextstate_B<=s3;bcount_startgreen=1'b0;endenddefault:beginbcount_startgreen=1'b0;bcount_startred=1'b0;lampb<=3'b101;if(bcount==0)beginnextstate_B<=s2;bcount_startyellow=1'b1;endelse beginnextstate_B<=s1;endendendcaseend// 倒数计数器Balways @(posedge clock) beginif(bcount_startred)bcount <= bred;else if (bcount_startgreen)bcount <= bgreen;else if (bcount_startyellow)bcount <= byellow;else if (clken)bcount <= bcount - 1'b1; endendmodule七.实验现象1.A方向红灯,B方向黄灯。
EDA技术实验报告模板
n、输入顶层文件xx(见pXX页或见附录),引脚锁定……下载,硬件验证。
实验结果及分析
注:给出顶层文件的仿真波形和最后的硬件验证结果(要实事求是)。
实验过程中所遇到的问题及相应的解决方法
注:按照实际情况写出。
本人在实验中所起的作用
附录
(原理图或VHDL代码)
注:书上有的原理图或VHDL代码就不用给出了。给出你自己设计的原理图或VHDL代码。
注:每个同学都需要写实验报告。若发现同一小组同学的实验报告完全相同,该小组同学全部给60分。
EDA技术与应用实验报告
Байду номын сангаас姓名
学号
专业年级
同组同学姓名
同组同学学号(与左边姓名对应)
实验题目
实验目的
实验原理
实验内容
实验步骤
注:不要照抄老师的一般步骤,而是体现你本次实验思路的具体的大概的步骤。
1、输入xx文件(见pXX页或见附录),编译、仿真,形成符号入库;
2、输入xx文件(见pXX页或见附录),……;
eda课程设计实验报告
eda课程设计实验报告一、课程目标知识目标:1. 学生能理解EDA(电子设计自动化)的基本概念,掌握EDA工具的使用方法。
2. 学生能运用所学知识,设计并实现基本的数字电路。
3. 学生了解数字电路的设计流程,掌握设计规范,具备初步的电路分析能力。
技能目标:1. 学生能独立操作EDA软件,完成电路的原理图绘制、仿真和布局布线。
2. 学生通过实验报告的撰写,提高实验数据分析、总结归纳的能力。
3. 学生在小组合作中,提高沟通协调能力和团队协作能力。
情感态度价值观目标:1. 学生培养对电子科学的兴趣,激发创新意识,增强实践能力。
2. 学生在实验过程中,形成严谨的科学态度,提高问题解决能力。
3. 学生通过课程学习,认识到科技发展对国家和社会的重要性,增强社会责任感。
课程性质:本课程为实践性较强的电子设计课程,旨在培养学生的实际操作能力、创新意识和团队合作精神。
学生特点:六年级学生具有一定的电子知识基础,好奇心强,喜欢动手实践,但需加强对理论知识的理解和应用。
教学要求:结合学生特点,注重理论与实践相结合,充分调动学生的积极性,提高学生的实践能力和创新能力。
将课程目标分解为具体的学习成果,便于教学设计和评估。
二、教学内容根据课程目标,本章节教学内容主要包括以下几部分:1. EDA基本概念与工具介绍- 电子设计自动化原理简介- 常用EDA软件功能与操作方法2. 数字电路设计基础- 数字电路基本元件及功能- 原理图绘制与仿真分析3. 布局布线与PCB设计- PCB设计流程与方法- 布局布线技巧与规范4. 实验报告撰写- 实验数据整理与分析- 实验总结与反思教学大纲安排如下:第一周:- EDA基本概念与工具介绍- 数字电路基本元件及功能第二周:- 原理图绘制与仿真分析第三周:- 布局布线与PCB设计第四周:- 实验报告撰写教学内容与教材关联性:本教学内容与教材《电子技术基础与实践》第六章“电子设计自动化”相关章节紧密相连,确保了教学内容的科学性和系统性。
eda原理与实践实验报告模板
EDA原理与实践实验报告学院:信息工程学院专业:电子信息工程班级:姓名:学号:实验一EDA软件的熟悉与使用【实验目的】1.熟悉MAX+plusⅡ软件的基本操作;2. 熟悉ZY11EDA13BE型实验箱。
【实验内容】1、学习MAX+plusⅡChina课件。
2、学习MAX+plusⅡ软件的安装,重要菜单命令含义。
3、参考第一部分实验箱简介,熟悉ZY11EDA13BE型实验箱的结构与组成。
4、模仿课件中实例动手操作一遍,掌握采用图形输入的设计流程。
【实验原理】参考MAX+plusChina学习课件。
【实验步骤】1 先画图2 编译3 建立其时序图进行校验,模拟时序4 器件选择(EP1Q30QC208-2 + EPC2LC20)5 管脚锁定(直接用鼠标拖过去(有些端口拖不过去)或Assign”菜单中选择“Pin/location/chip )再次编译6 下载管脚绑定具体说明(必须有)管脚锁定、管脚锁定可采用如下方法:管脚锁定可采用如下方法:从菜单“ ⑴从菜单“Assign”下“Pin/location/chip”,下,在“node name”区,填上信号名,如“clk”;区填上信号名,;⑵在“pin”区,填上对应的管脚号,如“1” ;区填上对应的管脚号,区选择信号输入/⑶在“pin type”区选择信号输入/输出类型区选择信号输入编译后一般不用选择,(编译后一般不用选择,系统会自动显示出类型),对于信号“ ),对于信号选择“ 类型;类型),对于信号“clk”选择“input”类型;选择类型此时按钮“ 变亮,⑷此时按钮“Add”变亮,单击之,可将信变亮单击之,锁定在1号管脚上号“clk”锁定在号管脚上。
锁定在号管脚上。
重复上述步骤,将所有管脚锁定好。
⑸重复上述步骤,将所有管脚锁定好。
写出测试结果:(请大家截图,打印出贴在练习本上)【波形仿真】功能分析:Q初值为0,每经过一个CLK的上升沿,Q就累加1;当Q=15时,再过一个上升沿,Q为0,重新进行循环计数。
EDA课报告
郑州航空工业管理学院EDA课程设计报告题目EDA课程设计姓名学号0913081指导教师王春彦二О一一年 6 月25 日一.设计任务:数字秒表基本功能:1.精度达到0.1秒。
2.有一个开始计时、一个停止计时、一个复位按键。
其它功能:有倒计时功能二.设计方案通过verilog HDL编写相应的程序,下载到相应的芯片中,利用外部电源驱动电路,芯片控制,采用12Mhz的有源晶振做提供时钟信号,通过四位数码管显示,3个按键控制,实现一个带有倒计时功能的秒表(精确到0.1秒,最大计时999秒,),3个按键的功能分别是:控制正倒计时,控制开始暂停计时,控制清零。
用到的器件:型号为ALTERA 的EPM7064SL-44芯片,12Mhz的有源晶振,印刷电路板,四位数码管,按键等。
电路图如下:电路图主要包含开关电路,复位电路,芯片管脚分布,数码管驱动电路,电源电路,时钟电路等。
通过芯片中的程序控制芯片各个管脚的高低电平从而控制外部电路,实现秒表计时功能。
三.设计程序设计流程:1.建立秒表工程stopwatch.qpf,在该项目下建立verilogHDL源程序件stopwatch.v,编写相应的程序。
2.选择器件,在DEVICE中选择提供的EPM7064SL-44芯片,将为使用的引脚设置为三态输入。
3.对工程进行全编译处理,修改其中的错误,直至编译成功为止。
4.下载程序,检验功能是否实现。
完整程序如下:module stopwatch(clk,key,dig,seg);input clk;input [2:0]key;output[3:0]dig;output[7:0]seg;reg[3:0]dig_r;reg[7:0]seg_r;reg[24:0]count;reg[15:0]dat; //计数数据寄存器reg[3:0]disp_dat;//显示数据寄存器reg sec,keyen,keyen1;reg[2:0]dout1,dout2;wire[2:0]key_done;assign seg=seg_r;assign dig=dig_r;always@(posedge clk)begincount=count+1'b1;if(count==25'd600000)begincount=25'd0;sec=~sec;endend//按键消抖key_done[0]计时开始控制key_done[1]是清零控制keyen_done[2]控制正倒计时assign key_done=(dout1|dout2);always@(posedge count[17])begindout1<=key;dout2<=dout1;end//乒乓开关always@(negedge key_done[0])beginkeyen=~keyen;endalways@(negedge key_done[2])beginkeyen1=~keyen1;end//动态扫描显示always@(posedge clk)begincase(count[16:15])2'd1:disp_dat=dat[7:4];//1秒位2'd2:disp_dat=dat[11:8];//10秒位2'd3:disp_dat=dat[15:12];//100秒位endcasecase(count[17:15])3'd0:dig_r=4'b1110;3'd1:dig_r=4'b1101;3'd2:dig_r=4'b1011;3'd3:dig_r=4'b0111;endcaseend//数码管译码always@(posedge clk)begincase(disp_dat)4'd0:seg_r=8'hc0;4'd1:seg_r=8'hf9;4'd2:seg_r=8'ha4;4'd3:seg_r=8'hb0;4'd4:seg_r=8'h99;4'd5:seg_r=8'h92;4'd6:seg_r=8'h82;4'd7:seg_r=8'hf8;4'd8:seg_r=8'h80;4'd9:seg_r=8'h90;default:seg_r=8'hff;endcaseend//计时or倒计时always@(negedge clk,negedge key_done[1])beginif(!key_done[1])//判断清零begindat=16'h0;endelse if(keyen==0)//正计时begindat[3:0]=dat[3:0]+1'b1;if(dat[3:0]==4'ha)begindat[3:0]=4'h0;dat[7:4]=dat[7:4]+1'b1;if(dat[7:4]==4'ha)begindat[7:4]=4'ha;dat[11:8]=dat[11:8]+1'b1;if(dat[11:8]==4'ha)begindat[11:8]=4'h0;dat[15:12]=dat[15:12]+1'b1;if(dat==16'd9999)begindat=16'h0;endendendendendelse if(keyen==0&&keyen1==0)//倒计时begindat[3:0]=dat[3:0]-1'b1;if(dat[3:0]==4'h0)begindat[3:0]=4'ha;dat[7:4]=dat[7:4]-1'b1;if(dat[7:4]==4'h0)begindat[7:4]=4'ha;dat[11:8]=dat[11:8]-1'b1;if(dat[11:8]==4'h0)begindat[11:8]=4'ha;dat[15:12]=dat[15:12]-1'b1;if(dat==16'd0)begindat=16'd9999;endendendendendendendmodule四.总结及心得此次设计的收获还是很大的,在实际操作中遇到了各种想都想不到的问题,好在同学们一起想办法把一个个困难克服。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《EDA技术及应用》实验报告系部:电子通信工程系指导教师:张松炜学号:121307214 ____ 姓名:李俊杰_______2014___年_6___月__19_日实验一点亮LED设计一、实验目的通过此试验可以让大家逐步了解,熟悉和掌握FPGA开发软件Quartus II的使用方法及VerilogHDL的编程方法。
二、实验内容本实验是一个简单的点亮LED灯的实验,具体包括:1)使用Quartus II建立一个工程;2)Quartus II工程设计;3)设置编译选项并编译硬件系统;4)下载硬件设计到目标FPGA;5)观察LED的状态;三、实验原理和单片机一样,向片子里写进数据,输出高电平(对于共阴极的),或者输出低电平(对于共阳极)。
根据Cyclone片子已经分配好的针脚设置好针脚。
四、实验步骤建立-----个工程-----输入程序-----软件编译------生成下载文件-----下载—调试。
五、实验程序module led1(led); //模块名led1output[7:0] led; //定义输出端口reg[7:0] led; //定义寄存器always //过程1beginled = 8'b10101010; //输出0xAAendendmodule六、思考题(1)写出使用QuartusII软件开发工程的完整的流程。
建立一个工程—输入程序—软件编译综合—生成下载文件—下载—硬件调。
实验二流水灯实验一、实验目的通过此试验让大家进一步了解熟悉和掌握FPGA开发软件的使用方法及软件编程方法。
学习简单的时序电路的设计和硬件测试。
二、实验内容本实验的内容是建立用于控制LED流水灯的简单硬件电路,要求在SmartSOPC上实现LED1-LED8发光二极管流水灯的显示。
三、实验原理这里的显示用分频模块(int_div)得到的较低的始终作为信号,在此时钟下,对输入数据进行移位,就得到了流水灯的效果。
四、实验步骤建立工程—输入源程序—调用模块—生成符号—调用符号—连成电路图—编译—下载—调试五、实验程序 原理图VCCclockINPUT led[7..0]OUTPUTclk led[7..0]ledwaterinstF_DIV 24000000F_DIV_WIDTH 25Parameter Valueclockclk_outint_divinst1六、思考题1.本实验顶层采用了图形输入的方式,若采用文本输入方式,如何编写顶层文件?写出相应程序。
module led2(clock,led); input clock; output [7:0]led; wire p;int_div u1( .clock(clock),.clk_out(p)); ledwater u2(.clk(p),.led(led)); endmodule实验三键盘、LED发光实验一、实验目的本实验的主要目的是联系顶层模块的设计。
学习和体会分支条件语句case的使用及FPGA的I/O控制。
二、实验内容用跳线把key1-key8和指定的引脚连起来,以实现功能控制。
三、实验原理FPGA的所有的I/O控制块允许每个引脚单独的配置为输入口。
只要配置正确,则一暗淡几个键中有键输入,在检测到键盘输入的情况下,继续判断其键盘值并作出相应的处理。
四、实验步骤1:按以前的步骤建立工程,并按说明书进行配置引脚,未用的按三态处理。
2:对文件进行编译,并检错。
3:按说明短接跳帽和连接跳线。
4:观察输入情况。
五、实验程序module keyled(key,led); //模块名keyledinput[7:0] key; //定义键盘输入口output[7:0] led; //定义发光管输出口reg[7:0] led_r; //定义寄存器reg[7:0] buffer_r;assign led = led_r; //输出键值always@(key) //过程1beginbuffer_r = key; //读取键值case(buffer_r)8'b11111110:led_r = 8'b11111110; //是键KEY1,则给寄存器赋值0xfe8'b11111101:led_r = 8'b11111100; //是键KEY2,则给寄存器赋值0xfc8'b11111011:led_r = 8'b11111000; //是键KEY3,则给寄存器赋值0xf88'b11110111:led_r = 8'b11110000; //是键KEY4,则给寄存器赋值0xf08'b11101111:led_r = 8'b11100000; //是键KEY5,则给寄存器赋值0xe08'b11011111:led_r = 8'b11000000; //是键KEY6,则给寄存器赋值0xc08'b10111111:led_r = 8'b10000000; //是键KEY7,则给寄存器赋值0x808'b01111111:led_r = 8'b00000000; //是键KEY8,则给寄存器赋值0x00default: led_r = 8'b11111111; //否则给寄存器赋值0xff endcaseendendmodule六、思考题1.能否用if语句改写本实验程序?如果能,写出相应程序。
module keyled(key,led); //模块名keyledinput[7:0] key; //定义键盘输入口output[7:0] led; //定义发光管输出口reg[7:0] led_r; //定义寄存器reg[7:0] buffer_r;assign led = led_r; //输出键值always@(key) //过程1beginbuffer_r = key; //读取键值if (buffer_r==8'b11111110) led_r = 8'b11111110;else if (buffer_r==8'b11111101) led_r = 8'b11111100;else if (buffer_r==8'b11111011) led_r = 8'b11111000;else if (buffer_r==8'b11110111) led_r =8'b11110000;else if (buffer_r==8'b11101111) led_r = 8'b11100000;else if (buffer_r==8'b10111111) led_r = 8'b10000000;else (buffer_r==8'b01111111) led_r = 8'b00000000;endendmodule实验四静态数码管显示实验一、实验目的学习LPM兆模块的调用。
二、实验内容建立7段译码显示模块,用于控制LED数码管的静态显示。
要求在实验箱上的数码管依显示0—9和A-F16个字符。
三、实验原理本实验通过分频模块int_div 分频得到1HZ的频率信号,加载4位计数器的时钟输入端,计数循环输出0-9,A-F 16个数,最后通过七段译码后在数码显示出来。
四、实验步骤1:立源程序文件dec17s.v,输入程序代码并保存,并对此生成符号。
2:添加LPM模块并按需要生成相应的文件。
五、实验程序VCCclockINPUT seg[7..0]OUTPUTdig[7..0]OUTPUT up counterclockq[3..0]counterinstd[3..0]seg[7..0]decl7sinst1F_DIV 48000000F_DIV_WIDTH 26Parameter Value clock clk_outint_divinst2GND数码管位码输出数码管段码输出六、思考题1.本实验采用的是共阳极数码管,若采用共阴极数码管,有什么不同?答:对应显示相同的数时,输入的不同。
2.如何显示HHHHHHHH 和PPPPPPPP? 答:H 对应的89h, P 对应的时73h ;实验五 动态数码管显示实验一、实验目的学习动态扫描显示的原理图及电路的设计。
二、实验内容1:在SmartSOPC 试验箱上完成LED 数码管的动态显示“1-8”个数字。
2:放慢扫描速度演示动态显示的原理过程。
三、实验原理虽然每次只有一个LED 显示,但只要扫描显示速率够快,由于人的视觉余辉效应,使我们仍会感觉所有的数码管都在同时显示。
四、实验步骤1:建立一个空白工程,并命名。
2:对该工程文件进行全程编译处理,若在编译过程中发现错误,则找出并更改,直至编译成功为止。
3:从设计文件创建模块。
4:将光盘中EDA目录文件拷贝到工程目录。
5:添加常量兆功能模块。
五、实验程序module scan_led(clk_1k,d,dig,seg); //模块名scan_ledinput clk_1k; //输入时钟input[31:0] d; //输入要显示的数据output[7:0]dig; //数码管选择输出引脚output[7:0] seg; //数码管段输出引脚reg[7:0] seg_r; //定义数码管输出寄存器reg[7:0] dig_r; //定义数码管选择输出寄存器reg[3:0] disp_dat; //定义显示数据寄存器reg[2:0]count; //定义计数寄存器assign dig = dig_r; //输出数码管选择assign seg = seg_r; //输出数码管译码结果always @(posedge clk_1k) //定义上升沿触发进程begincount <= count + 1'b1;endalways @(posedge clk_1k)begincase(count) //选择扫描显示数据3'd0:disp_dat = d[31:28]; //第一个数码管3'd1:disp_dat = d[27:24]; //第二个数码管3'd2:disp_dat = d[23:20]; //第三个数码管3'd3:disp_dat = d[19:16]; //第四个数码管3'd4:disp_dat = d[15:12]; //第五个数码管3'd5:disp_dat = d[11:8]; //第六个数码管3'd6:disp_dat = d[7:4]; //第七个数码管3'd7:disp_dat = d[3:0]; //第八个数码管endcasecase(count) //选择数码管显示位3'd0:dig_r = 8'b01111111; //选择第一个数码管显示3'd1:dig_r = 8'b10111111; //选择第二个数码管显示3'd2:dig_r = 8'b11011111; //选择第三个数码管显示3'd3:dig_r = 8'b11101111; //选择第四个数码管显示3'd4:dig_r = 8'b11110111; //选择第五个数码管显示3'd5:dig_r = 8'b11111011; //选择第六个数码管显示3'd6:dig_r = 8'b11111101; //选择第七个数码管显示3'd7:dig_r = 8'b11111110; //选择第八个数码管显示endcaseendalways @(disp_dat)begincase(disp_dat) //七段译码4'h0:seg_r = 8'hc0; //显示04'h1:seg_r = 8'hf9; //显示14'h2:seg_r = 8'ha4; //显示24'h3:seg_r = 8'hb0; //显示34'h4:seg_r = 8'h99; //显示44'h5:seg_r = 8'h92; //显示54'h6:seg_r = 8'h82; //显示64'h7:seg_r = 8'hf8; //显示74'h8:seg_r = 8'h80; //显示84'h9:seg_r = 8'h90; //显示94'ha:seg_r = 8'h88; //显示a4'hb:seg_r = 8'h83; //显示b4'hc:seg_r = 8'hc6; //显示c4'hd:seg_r = 8'ha1; //显示d4'he:seg_r = 8'h86; //显示e4'hf:seg_r = 8'h8e; //显示fendcaseendendmodule六、思考题1.说出数码管动态显示的原理。