《eda技术及应用》实验指导书指导_第1页
《eda技术及应用》实验指导书指导_第2页
《eda技术及应用》实验指导书指导_第3页
《eda技术及应用》实验指导书指导_第4页
《eda技术及应用》实验指导书指导_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、EDA技术及应用实验指导书实验一 组合逻辑器件设计一实验目的1、 通过一个简单的3-8译码器的设计,掌握组合逻辑电路的设计方法2、 掌握组合逻辑电路的静态测试方法3、 初步了解QUARTUS II原理图输入设计的全过程二实验主要仪器与设备1、 输入:DIP拨码开关3位2、 输出:LED灯3、 主芯片:EP1K10TC100-3三实验内容及原理三-八译码器即三输入,八输出输出与输入之间的对应关系如表1-1-1所示表1-1 三-八译码器真值表输入输出A2A1A0Y7Y6Y5Y4Y3Y2Y1Y000000000001001000000100100000010001100001000100000100

2、0010100100000110100000011110000000四预习要求做实验前必须认真复习数字电路中组合逻辑电路设计的相关内容(编码器译码器)五实验步骤1利用原理图设计输入法画图1-1-12选择芯片ACEX1K EP1K10TC100-33编译4时序仿真5管脚分配,并再次编译6实验连线7编程下载,观察实验结果图1-1 三-八译码器原理图六实验连线用拨码开关的低三位代表译码器的输入(A,B,C),将之与EP1K10TC100-3的管脚相连;用LED灯来表示译码器的输出(D0D7),将之与EP1K10TC100-3芯片的管脚相连拨动拨档开关,可以观察发光二极管与输入状态的对应关系同真值表中

3、所描述的情况是一致的七实验结果八思考题在输入端加入使能端后应如何设计? 附:用硬件描述语言完成译码器的设计: LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY T2 ISPORT(A: INSTD_LOGIC_VECTOR(2 DOWNTO 0);Y: OUTSTD_LOGIC_VECTOR(7 DOWNTO 0);END T2;ARCHITECTURE A OF T2 ISBEGINWITH A SELECTY =0101 and D=1001) then Y=1; elsif D=0101 then Y=0; else YYYYYYYYYYYY

4、YYYYYY=Z;end case;end process;end;(3)Library IEEE;Use IEEE.std_logic_1164.all;Entity t2_3 isport(A,B,C:In std_logic; Y:Out std_logic_vector(2 downto 0);end t2_3;Architecture struct of t2_3 isbegin process(A,B,C) begin if A=1 then Y=100; elsif B=1 then Y=010; elsif C=1 then Y=001; else Y=000; end if;

5、 end process;end;实验三 触发器功能模拟一实验目的1、 掌握触发器功能的测试方法2、 掌握基本RS触发器的组成及工作原理3、 掌握集成JK触发器和逻辑功能及触发方式4、 掌握几种主要触发器之间相互转换的方法5、 通过实验,体会FPGA芯片的高集成度和多I/O口二实验主要仪器与设备1输入:按键开关(常高);拨码开关;时钟源2输出:LED灯5、 主芯片:EP1K10TC100-3三实验内容及原理图3-1 四种触发器电路原理图将基本RS触发器,同步RS触发器,集成J-K触发器,D触发器同时集成在一个CPLD芯片中模拟其功能,并研究其相互转化的方法四预习要求做实验前必须认真复习数字电路

6、中触发器的相关内容,基本RS触发器,同步RS触发器,J-K触发器,D触发器,T触发器的电路结构及工作原理五实验步骤1利用原理图设计输入法画图3-12选择芯片ACEX1K EP1K10TC100-33编译4时序仿真5管脚分配,并再次编译6实验连线7编程下载,观察实验结果六实验连线输入信号Sd,Rd对应的管脚接按键开关,CLK接时钟源(频率40HZ,如图4-1)图4-12编一个简单的从0F轮换显示十六进制的电路参考电路(时钟频率2HZ,如图4-2) 图4-2四预习要求做实验前必须认真复习数字电路中计数器的实现方法,74161的构成及功能,七段显示译码器的实现,以及VHDL编程等相关内容五实验步骤1

7、利用VHDL文本输入法设计DELED模块,并生成元件符号2利用原理图设计输入法画图4-13选择芯片ACEX1K EP1K10TC100-34编译5仿真6管脚分配,并再次编译7实验连线8编程下载,观察实验结果同理,完成图4-2的设计过程六实验连线输入信号:D3,D2,D1,D0所对应的管脚同四位拨码开关相连;清零信号RESET 所对应的管脚同按键开关相连;时钟CLK 所对应的管脚同实验箱上的时钟源相连;输出信号:代表扫描片选地址信号SEL2,SEL1,SEL0的管脚同四位扫描驱动地址的低3位相连,最高位地址接“0”(也可悬空);代表7段字码驱动信号A,B,C,D,E,F,G的管脚分别同扫描数码管

8、的段输入a,b,c,d,e,f,g相连观察数码管所显示的数字与输入之间的关系七实验结果八思考题1、 字形编码的种类,即一个7段数码管可产生多少种字符,产生所有字符需多少根被译码信号线?2、 字符显示亮度同扫描频率的关系,且让人眼感觉不出光烁现象的最低扫描频率是多少?附:模块DELED的源代码:LIBRARY ieee;USE ieee.std_logic_1164.ALL;ENTITY deled ISPORT(a: INSTD_LOGIC_VECTOR(3 DOWNTO 0);y: OUTSTD_LOGIC_VECTOR(6 DOWNTO 0);END deled;ARCHITECTURE

9、a OF deled ISBEGINwith a selecty = 0111111 when 0000,0000110 when 0001,1011011 when 0010,1001111 when 0011,1100110 when 0100,1101101 when 0101,1111101 when 0110,0000111 when 0111,1111111 when 1000,1101111 when 1001,1110111 when 1010,1111100 when 1011,0111001 when 1100,1011110 when 1101,1111001 when

10、1110,1110001 when 1111,0000000 when others;END a;实验五 计数器及时序电路设计(一)一实验目的1、 掌握时序电路的经典设计方法(D触发器和JK触发器和一般逻辑门组成的时序逻辑电路)2、 掌握通用同步计数器,异步计数器的设计方法3、 了解用同步计数器通过清零法和置数法得到循环任意进制计数器的方法二实验主要仪器与设备1输入:时钟源2输出:四位七段数码显示管3主芯片:EP1K10TC100-3三实验内容及原理1用D触发器设计异步四位二进制加法计数器原理图如图5-1所示图5-12、 用JK 触发器设计异步二十进制减法计数器原理图如图5-2所示图5-23、

11、 用74LS161两个宏连接成八位二进制同步计数器原理图如图5-3所示图5-3四预习要求做实验前必须认真复习数字电路中计数器的实现方法,74161的构成及功能,七段显示译码器的实现,以及硬件描述语言编程等相关内容五实验步骤1利用VHDL文本输入法设计DELED模块,并生成元件符号2利用原理图设计输入法画图5-13选择芯片ACEX1K EP1K10TC100-34编译5仿真6管脚分配,并再次编译7实验连线8编程下载,观察实验结果同理,完成图5-25-3的设计过程六实验连线输入信号:清零信号RESET 所对应的管脚同按键开关相连;计数时钟CLK扫描时钟CKDSP 所对应的管脚同实验箱上的时钟源相连

12、(计数时钟频率CKCNT40Hz);输出信号:代表扫描片选地址信号SEL2,SEL1,SEL0的管脚同四位扫描驱动地址的低3位相连,最高位地址接“0”(也可悬空);代表7段字码驱动信号A,B,C,D,E,F,G的管脚分别同扫描数码管的段输入a,b,c,d,e,f,g相连七实验结果八思考题 在FPGA设计中,同步设计和异步设计有何不同 附:模块sh8_4的源代码LIBRARY ieee;USE ieee.std_logic_1164.ALL;ENTITY sh8_4 ISPORT(sel: INSTD_LOGIC;da: INSTD_LOGIC_VECTOR(7 DOWNTO 0);q: OUT

13、 STD_LOGIC_VECTOR(3 DOWNTO 0);END sh8_4;ARCHITECTURE a OF sh8_4 ISBEGINProcessbeginIf sel=0 Then q=da(3 DOWNTO 0);Else q=da(7 DOWNTO 4);End if;End process;END a;实验六 计数器及时序电路设计(二)一实验目的1理解时序电路和同步计数器加译码电路的联系,设计任意编码计数器2了解同步芯片和异步芯片的区别二实验主要仪器与设备1输入:时钟源2输出:四位七段数码显示管3主芯片:EP1K10TC100-3三实验内容及原理用74LS161清零和置数法组

14、成六进制和十二进制计数器原理图如图6-1所示计数时钟频率CKCNT40HZ;清零法分别完成040B的顺序计数;置位法分别完成393F的顺序计数;用八位数码管显示四个计数状态图6-1四预习要求做实验前必须认真复习数字电路中计数器的实现方法,74161的构成及功能,七段显示译码器的实现,以及VHDL编程等相关内容五实验步骤1利用VHDL文本输入法设计DELEDHB1HB2HB3HB4SEL4模块,并生成相应的元件符号2利用原理图设计输入法画图6-13选择芯片ACEX1K EP1K10TC100-34编译5仿真6管脚分配,并再次编译7实验连线8编程下载,观察实验结果六实验连线输入信号:清零信号RES

15、ET 所对应的管脚同按键开关相连;计数时钟CLK扫描时钟CKDSP 所对应的管脚同实验箱上的时钟源相连;输出信号:代表扫描片选地址信号SEL2,SEL1,SEL0的管脚同四位扫描驱动地址的低3位相连,最高位地址接“0”(也可悬空);代表7段字码驱动信号A,B,C,D,E,F,G的管脚分别同扫描数码管的段输入a,b,c,d,e,f,g相连七实验报告与思考题 1写出实验步骤和实验结果 2用74161实现任意进制计数器的方法3状态机的VHDL实现代码 4体会同步设计和异步设计的不同之处附:各模块的VHDL代码LIBRARY ieee;USE ieee.std_logic_1164.ALL;ENTIT

16、Y hb1 ISPORT(d:INSTD_LOGIC_VECTOR(3 DOWNTO 0); out1:OUT STD_LOGIC );END hb1;ARCHITECTURE a OF hb1 ISBEGIN process begin If d0100 Then out1=0; Else out11001 or d0011 Then out1=0; Else out11011 Then out1=0; Else out1=1; End if; end process;END a;LIBRARY ieee;USE ieee.std_logic_1164.ALL;ENTITY hb4 ISPO

17、RT(d:INSTD_LOGIC_VECTOR(3 DOWNTO 0); out1:OUT STD_LOGIC );END hb4;ARCHITECTURE a OF hb4 ISBEGIN process begin If d=1111 or d0011 Then out1=0; Else out1qqqqqqqqNULL; END CASE; end process;END a;实验七 数字钟实验一实验目的1、 掌握多位计数器相连的设计方法2、 掌握十进制六十进制二十四进制计数器的设计方法3、 继续巩固多位共阴极扫描显示数码管的驱动及编码4、 了解和掌握分频电路实现的方法5、 掌握扬声器的

18、驱动6、 LED 灯的花样显示7、 掌握FPGA技术的层次化设计方法二实验主要仪器与设备1输入:三个按键开关(清零,调小时,调分钟)2输出:8个LED灯;扬声器;8位七段扫描共阴极数码显示管3主芯片:EP1K10TC100-3三实验内容及原理在同一块FPGA芯片EP1K10TC100-3上集成了如下电路模块:1时钟计数:秒60进制BCD码计数;分60进制BCD码计数;时24进制BCD码计数;同时整个计数器有清零,调分,调时功能在接近整点时能提供报时信号2有驱动8位七段共阴极扫描数码管的片选驱动信号输出和七段字行译码输出编码和扫描可参照“实验四”3扬声器在整点时有报时驱动信号产生4LED灯按个人

19、要求在整点时有花样显示信号产生四预习要求做实验前必须认真复习数字电路中计数器分频电路数码驱动,以及硬件VHDL编程等相关内容五实验步骤1利用VHDL文本输入法设计secondminutehouralertseltimeDELED模块,并生成相应的元件符号2利用原理图设计输入法画图7-13选择芯片ACEX1K EP1K10TC100-34编译5仿真6管脚分配,并再次编译7实验连线8编程下载,观察实验结果图7-1 原理图如图7-1,各模块分别为:各种进制的计数及时钟控制模块;扫描分时显示,译码,分频模块;彩灯,扬声器编码模块各模块都是由VHDL语言编写六实验连线输入接口:1、 代表清零,调时,调分

20、信号RESET,SETHOUR,SETMIN的管脚分别连接按键开关2、 代表计数时钟信号CLK和扫描时钟信号CKDSP的管脚分别同1HZ时钟源和32HZ(或更高)时钟源相连输出接口:1、 代表扫描显示的驱动信号管脚SEL2,SEL1,SEL0和A.G参照实验四与数码管的信号连接点连接;2、 代表扬声器的驱动信号的管脚SPEAK同扬声器驱动接口SPEAKER相连;3、 代表花样LED灯显示的信号管脚LAMP0LAMP2同3个LED灯相连七实验结果实验八 A/D转换实验一实验目的1、 了解ADC0809的工作原理2、 了解用扫描方式驱动七段码管显示的工作原理3、 了解时序电路FPGA的实现4、 学

21、习用VHDL语言来描述时序电路的过程二实验主要仪器与设备1可变时钟源2七段码显示3A/D转换芯片ADC08094主芯片EP1K10TC100-35、 三个拨动开关,进行地址选择三实验原理该实验是利用FPGA控制ADC0809的时序,进行AD转换,然后将ADC0809转换后的数据以十六进制的数据显示出来ADC0809是8位8通道的逐次比较式AD转换芯片该芯片管脚如右图所示芯片引脚及其说明如下:D0-D7(2-8-2-1):8位双先三态数据线ADDAADDBADDC:通道选择地址OUTPUT ENABLE:输出允许控制Clock:ADC转换时钟Vref+Vref-:正负参考电压IN0-IN7:8个

22、模拟信号输入通道START:AD转换启动信号EOC:AD转换结束信号ALE:通道地址锁存信号ADC0809的工作时序如下图所示其详细工作过程可查阅其他资料本实验FPGA实现时必须严格遵守ADC0809的工作时序,在编写其驱动代码时尤其要注意ADC0809的时钟信号从FPGA获取,FPGA的时钟在500KHz至800KHz都可以选择现具体介绍代码编写思想:首先将要转换的ADC0809的地址输出,然后产生ALE信号的,在该信号的上升沿,地址被打入ADC0809的地址锁存器,这样就选中了对应的通道地址产生结束后,便可产生START信号,使ADC0809开始进行AD转换,需要注意的是,在ADC0809

23、转换期间,输入的模拟信号必须稳定,否则可能出现比较大的误差在地址锁存并且启动转换后,EOC便会呈现低电平,知道AD转换结束,所以FPGA在EOC从低电平变成高电平之前,不能读取ADC的转换数据在EOC变成高电平之后,FPGA便可将OUTPUT INPUT信号拉高,这样ADC转换的数据就会呈现在数据线上,FPGA读入该数据后,在8位七段码管上显示出来,这就是整个实验过程的工作流程四预习要求做实验前必须认真复习ADC0809的工作原理,数码显示,以及时序电路的VHDL设计等相关内容五实验内容及步骤本实验的内容就是用FPGA模拟产生ADC0809的时序,使其正常工作,对ADC0809输入一个模拟量,

24、进行A/D转换,然后将读入后的数据进行显示,实验步骤如下:1、 编写ADC0809时序的VHDL代码2、 用Quartus II对其进行编译仿真3、 在时序确定无误后,选择芯片ACEX1K EP1K10TC100-34、 给芯片进行管脚绑定,再次进行编译5、 根据自己绑定的管脚,在实验箱上对ADC0809显示七段码和FPGA之间进行正确连线6、 对选定的通道输入一个模拟量,给目标板下载代码,调节电位器改变输入的模拟量,观看实验结果六实验连线如果是调用的本书提供的VHDL代码,则实验连线如下:Clk:时钟输入信号,500KHz至800KHz之间均可EOC:输出信号,接ADC0809的EOC信号D

25、in:数据输入,接ADC0809的数据总线D0-D7;Start:输出信号,接ADC0809的START信号Ale:地址锁存,接ADC0809的ALE信号OE: 输出允许,接ADC0809的OUTPUT ENABLE信号 SaSbSc:七段显示选通信号,接七段码显示SEL0SEL1和SEL2ABCDEFG:分别连接至七段码显示的abcdefgADC0809的地址选择信号AB和C分别到三个拨挡开关通过ABC选取输入通道CH0CH7其中的相应通道输入一个可变模拟量七实验结果八思考题1对于外部模拟信号Vtest范围超出05V的情况下,应如何修改设计和显示模块?2为什么引入CLK信号?用与不用CLK信

26、号对显示可能产生什么影响?附 vhdl代码:library ieee;use ieee.std_logic_1164.all;use ieee.std_logic_arith.all;use ieee.std_logic_unsigned.all;-entity adc is port( clk,eoc : in std_logic; -Clock Signal din : in std_logic_vector(7 downto 0); -data bus clock,start : out std_logic; -clock of adc0809 ale : out std_logic;

27、-ale signal of adc0809 oe : buffer std_logic; -out enable signal a,b,c,d,e,f,g : out std_logic; -7 segment driver sa,sb,sc : out std_logic); -Display Selectend adc;-architecture behave of adc is signal dcount : std_logic_vector(2 downto 0); signal adh,adl : std_logic_vector(6 downto 0); signal displ

28、ay : std_logic_vector(6 downto 0); signal adcount : std_logic_vector(19 downto 0); signal din_h,din_l : std_logic_vector(3 downto 0); signal disp_flag : std_logic; begin process(clk) begin clock=clk; end process; process(clk) -accumulate adcount begin if(clkevent and clk=1) then adcount=adcount+1; end if; end process; process(clk) -start ad0809 convert be

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论