38译码器quretus II仿真教程

合集下载

实验三-quartus-ii的设计处理(3-8译码器设计)

实验三-quartus-ii的设计处理(3-8译码器设计)

实验三-quartus-ii的设计处理(3-8译码器设计)
《可编程逻辑器件的设计与仿真》
实验报告
实验项目实验三Quartus II的设计处理(3-8译码器设计)
实验目的1.设计一个3-8译码器;
2.学习用VHDL进行逻辑描述。

实验器材PC机,Quartus II
授课形式集中训练任课教师:彭铁牛实验时间:2013-03-17
实验说明本设计实现一个3-8译码器,其逻辑功能如表所示
C B A Q7 Q6 Q5 Q4 Q3 Q2 Q1 Q0
0 0 0 1 1 1 1 1 1 1 0
0 0 1 1 1 1 1 1 1 0 1
***********
0 1 1 1 1 1 1 0 1 1 1
1 0 0 1 1 1 0 1 1 1 1
1 0 1 1 1 0 1 1 1 1 1
1 1 0 1 0 1 1 1 1 1 1
1 1 1 0 1 1 1 1 1 1 1
本设计练习用VHDL语言描述仿真译码器。

要求编写3-8译码器的VHDL设计文件。

注意VHDL文件的结构和语法,并掌Quartus II 平台中文本编辑器的使用方法。

实验内容和体会
1
Ⅰ.VHDL源程序Ⅱ.仿真波形Ⅲ.元件符号Ⅳ.实验体会。

实验三 3-8译码器的功能测试及仿真

实验三  3-8译码器的功能测试及仿真

实验三3-8译码器功能测试及仿真一、实验目的1、掌握中规模集成3-8译码器的逻辑功能和使用方法。

2、进一步掌握VHDL语言的设计。

二、预习要求复习有关译码器的原理。

三、实验仪器和设备1.数字电子技术实验台1台2.数字万用表1块3.导线若干4.MUX PLUSII软件5.74LS138集成块若干四、实验原理译码器是一个多输入、多输出的组合逻辑电路。

它的作用是把给定的代码进行“翻译”,变成相应的状态,使输出通道中相应的一路有信号输出。

译码器在数字系统中有广泛的用途,不仅用于代码的转换、终端的数字显示,还用于数据分配,存贮器寻址和组合控制信号等。

不同的功能可选用不同种类的译码器。

译码器分为通用译码器和显示译码器两大类。

前者又分为变量译码器和代码变换译码器。

1.变量译码器(又称二进制译码器)用以表示输入变量的状态,如2线-4线、3线-8线和4线-16线译码器。

若有n个输入变量,则有2n个不同的组合状态,就有2n个输出端供其使用。

而每一个输出所代表的函数对应于n个输入变量的最小项。

以3线-8线译码器74LS138为例进行分析,下图(a)、(b)分别为其逻辑图及引脚排列。

其中 A2、A1、A0为地址输入端,0Y~7Y为译码输出端,S1、2S、3S为使能端。

下表为74LS138功能表,当S1=1,2S+3S=0时,器件使能,地址码所指定的输出端有信号(为0)输出,其它所有输出端均无信号(全为1)输出。

当S1=0,2S+3S=X时,或 S1=X,2S+3S=1时,译码器被禁止,所有输出同时为1。

3-8线译码器74LS138逻辑图及引脚排列图74LS138功能表输入输出S12S+3S A2A1A00Y1Y2Y3Y4Y5Y6Y7Y1 0 0 0 0 0 1 1 1 1 1 1 11 0 0 0 1 1 0 1 1 1 1 1 11 0 0 1 0 1 1 0 1 1 1 1 11 0 0 1 1 1 1 1 0 1 1 1 11 0 1 0 0 1 1 1 1 0 1 1 11 0 1 0 1 1 1 1 1 1 0 1 11 0 1 1 0 1 1 1 1 1 1 0 11 0 1 1 1 1 1 1 1 1 1 1 00 ×××× 1 1 1 1 1 1 1 1× 1 ××× 1 1 1 1 1 1 1 1二进制译码器实际上也是负脉冲输出的脉冲分配器。

实验三3-8译码器的功能测试及仿真

实验三3-8译码器的功能测试及仿真

实验三3-8译码器的功能测试及仿真实验三3-8译码器功能测试及仿真⼀、实验⽬的1、掌握中规模集成3-8译码器的逻辑功能和使⽤⽅法。

2、进⼀步掌握VHDL语⾔的设计。

⼆、预习要求复习有关译码器的原理。

三、实验仪器和设备1.数字电⼦技术实验台1台2.数字万⽤表1块3.导线若⼲4.MUX PLUSII软件5.74LS138集成块若⼲四、实验原理译码器是⼀个多输⼊、多输出的组合逻辑电路。

它的作⽤是把给定的代码进⾏“翻译”,变成相应的状态,使输出通道中相应的⼀路有信号输出。

译码器在数字系统中有⼴泛的⽤途,不仅⽤于代码的转换、终端的数字显⽰,还⽤于数据分配,存贮器寻址和组合控制信号等。

不同的功能可选⽤不同种类的译码器。

译码器分为通⽤译码器和显⽰译码器两⼤类。

前者⼜分为变量译码器和代码变换译码器。

1.变量译码器(⼜称⼆进制译码器)⽤以表⽰输⼊变量的状态,如2线-4线、3线-8线和4线-16线译码器。

若有n个输⼊变量,则有2n个不同的组合状态,就有2n个输出端供其使⽤。

⽽每⼀个输出所代表的函数对应于n个输⼊变量的最⼩项。

以3线-8线译码器74LS138为例进⾏分析,下图(a)、(b)分别为其逻辑图及引脚排列。

其中 A2、A1、A0为地址输⼊端,0Y~7Y为译码输出端,S1、2S、3S为使能端。

下表为74LS138功能表,当S1=1,2S+3S=0时,器件使能,地址码所指定的输出端有信号(为0)输出,其它所有输出端均⽆信号(全为1)输出。

当S1=0,2S+3S=X时,或 S1=X,2S+3S=1时,译码器被禁⽌,所有输出同时为1。

3-8线译码器74LS138逻辑图及引脚排列图74LS138功能表输⼊输出S12S+3S A2A1A00Y1Y2Y3Y4Y5Y6Y7Y1 0 0 0 0 0 1 1 1 1 1 1 11 0 0 0 1 1 0 1 1 1 1 1 11 0 0 1 0 1 1 0 1 1 1 1 11 0 0 1 1 1 1 1 0 1 1 1 11 0 1 0 0 1 1 1 1 0 1 1 11 0 1 0 1 1 1 1 1 1 0 1 11 0 1 1 0 1 1 1 1 1 1 0 11 0 1 1 1 1 1 1 1 1 1 1 00 ×××× 1 1 1 1 1 1 1 1× 1 ××× 1 1 1 1 1 1 1 1⼆进制译码器实际上也是负脉冲输出的脉冲分配器。

初识EDA--2三八译码器

初识EDA--2三八译码器

2021/4/4
15
5-11 保存设计文件对话框
3、对设计文件进行编译
QUARTUSII编译器窗口包含了对设计文件处理的全过程。在 QUARTUSII软件中选择Tool>Compiler Tool菜单项,则出现 QUARTUSII的编译器窗口,如图5-12所示,图中标明了全编译过 程各个模块的功能。
2021/4/4
5-4 器件选择界面
6
首先在对话框的左上方的Family下拉菜单中选取Cyclone,在中 间右边的Speed grade下拉菜单中选取8,在左下方的Available devices框中选取EP1C6Q240C8 ,点击NEXT完成器件的选取, 进入EDA TOOL设定界面如图1-7所示。
2021/4/4
14
5-10 设计文件的输入
6)完成图形编辑的输入之后,需要保存设计文件或重新命名设计 文件。选择File>Save As…项,出现如图5-11所示对话框,选择 好文件保存目录,并在文件名栏输入设计文件名。如需要将设计文 件添加到当前工程中,则选择对话框下面的Add file to current project复选框,单击保存按钮即可保存文件。需要注意的是,在 整个设计文件保存的过程当中,都需要遵循设计输入法的一般规则。
一、实验目的
1、通过一个简单的3—8译码器的设计,掌握组合逻辑电路的设 计方法。
2、初步了解QUARTUSII原理图输入设计的全过程。 3、掌握组合逻辑电路的静态测试方法。
二、实验内容 在本实验中,用三个拨动开关来表示三八译码器的三个输入用八
个LED来表示三八译码器的八个输出。通过输入不同的值来观察输 入的结果与三八译码器的真值表是否一致。当开关闭合时其输出为 低电平,反之输出高电平。

实验三+3-8译码器仿真及实现

实验三+3-8译码器仿真及实现

实验三3-8译码器仿真及实现姓名:学号:班级:日期:一、实验目的和要求本次实验使用Verilog 硬件描述语言在DE1开发平台上设计一个基本组合逻辑电路3-8 译码器,并完成功能仿真和时序仿真。

二、实验环境1、PC机,Pentium 4 2.0G以上,内存1G以上,硬盘500G以上,1024×768彩显,USB接口,网络接口,串口。

2、友晶DE1开发板和相关配件。

3、软件:Windows XP或者Windows 7操作系统,DE1配套光盘。

三、实验内容1、编写3-8的Verilog程序。

2、构建仿真波形文件,实现QuartusII的功能仿真和时序仿真。

3、下载设计到DE1,观察译码输出。

四、实验步骤1、建立Quartus 工程:1)打开Quartus II 工作环境。

2)点击菜单项File->New Project Wizard 帮助新建工程。

3)输入工程目录、工程文件名以及顶层实体名。

自己起名字,例如学号加38等。

注意:输入的顶层实体名必须与之后设计文件的顶层实体名相同,默认的顶层实体名与工程文件名相同,本类实验均采用这种命名方法以便于管理。

不要使用Quartus II的根目录作为工程目录。

4)添加设计文件。

如果用户之前已经有设计文件(比如.v 文件)。

那么直接添加相应文件,如果没有完成的设计文件,点击Next 之后添加并且编辑新的设计文件。

5)选择设计所用器件。

由于本次实验使用 Altera 公司提供的DE1 开发板,用户必须选择与之相对应的FPGA 器件型号,如下图:6)设置 EDA 工具。

设计中可能会用到的EDA 工具有综合工具、仿真工具以及时序分析工具。

本次实验中不使用这些工具,因此点击Next 直接跳过设置。

7)查看新建工程总结。

在基本设计完成后,Quartus II 会自动生成一个总结让用户核对之前的设计,确认后点击Finish 完成新建。

8)培养良好的文件布局。

Quartus II 默认把所有编译结果放在工程的根目录,为了让Quartus II 像Visual Studio 等IDE 一样把编译结果放在一个单独的目录中,需要指定编译结果输出路径。

QUARTUSII使用图解

QUARTUSII使用图解

创建一个新的工程
输入工程路径输入工程名和实体名,必须一样
点击NEXT
点击NEXT
点击NEXT
点击NEXT
点击结束
点击创建新文件图标
选择新文件类型为VHDL,然后点击OK
在编辑窗口录入源文件
顶层文件的实体名必须和工程名一致
保存源文件
点击编译图标,开始编译
在编译过程中如果有错会给出错误提示,否则
还是创建一个新文件,并选
选中波形文件
击OK
一个空的波形文件被建立
波形文件窗口
按图中所示设置所有端口信号会被列出来.
如图,将输入输出信号拖动到波形文件窗口
Tool
此处应为刚才保存的波形文件
出下面的窗口,改变仿真类型(选Timing),点击Start运行.运行结束后,关闭该窗口.。

eda第二次实验 38译码器

eda第二次实验 38译码器

实验二组合逻辑电路的VHDL模型实验一、实验目的1、掌握组合逻辑和时序逻辑电路的设计方法。

2、掌握组合逻辑电路的静态测试方法。

加深FPGA设计的过程,并比较原理图输入和文本输入的优劣。

3、了解通用同步计数器,异步计数器的使用方法。

4、理解积分分频器的原理。

二、硬件要求拨位开关、FPGA主芯片EP1K30QC208、LED显示模块三、实验原理译码器是输入数码和输出数码之间的对应关系,也就是说,“输入码和输出码之间的对应表”这应该算是设计译码器的必须条件。

译码器常用来做码和码之间的转换器,也常被用于地址总线或用作电路的控制线。

例如下面为常见的3×8译码器的真值表:实验中可根据需要,为3×8译码器加入使能控制脚。

一般的分频器可获得的分频频率种类分布不均匀,积分分频,能比较好的解决这个问题。

1、分频结果=来源频率×N/(2ⁿ-1);2、频率波形不均匀。

四、实验内容及步骤本实验内容是完成38译码器和5/8分频器的设计,然后将3×8译码器的结果在实验箱上实现,5/8分频器则能正确仿真、显示,实验步骤如下:1、编写3×8译码器的VHDL代码。

2、用MaxPlusII对其进行编译仿真。

3、在仿真确定无误后,选择芯片ACEX1K EP1K30QC208。

4、给芯片进行管脚绑定,在此进行编译。

5、根据自己绑定的管脚,在实验箱上对键盘接口、显示接口和FPGA之间进行正确连线。

6、给目标板下载代码,在开关输入键值,观看实验结果。

7、编写5/8分频器的VHDL代码。

8、用MaxPlusII对其进行编译仿真。

9、使用WaveForm进行波形仿真。

五、程序代码1. 38译码器library ieee;use ieee.std_logic_1164.all;entity a3toy8 isport (en:in std_logic;a:in std_logic_vector(2 downto 0);b:in std_logic_vector(2 downto 0);y:out std_logic_vector(7 downto 0);YM: out std_logic_vector(7 downto 0));end entity a3toy8;architecture a3y8 of a3toy8 issignal t:std_logic_vector(3 downto 0);signal v:std_logic_vector(3 downto 0);begint <= en & a(2 downto 0);process(t(3 downto 0))begincase t(3 downto 0) iswhen "1000" => Y(7 downto 0) <= "00000001";when "1001" => Y(7 downto 0) <= "00000010";when "1010" => Y(7 downto 0) <= "00000100";when "1011" => Y(7 downto 0) <= "00001000";when "1100" => Y(7 downto 0) <= "00010000";when "1101" => Y(7 downto 0) <= "00100000";when "1110" => Y(7 downto 0) <= "01000000";when "1111" => Y(7 downto 0) <= "10000000";when others => Y(7 downto 0) <= "00000000";end case;end process;v <= t;process(v(3 downto 0))begincase v(3 downto 0) isWHEN "1000" => YM(7 downto 0) <= "01100000";WHEN "1001" => YM(7 downto 0) <= "11011010";WHEN "1010" => YM(7 downto 0) <= "11110010";WHEN "1011" => YM(7 downto 0) <= "01100110";WHEN "1100" => YM(7 downto 0) <= "10110110";WHEN "1101" => YM(7 downto 0) <= "10111110";WHEN "1110" => YM(7 downto 0) <= "11100000";WHEN "1111" => YM(7 downto 0) <= "11111110";when others => YM(7 downto 0) <= "00000000";end case;end process;end architecture a3y8;本代码是通过控制拨动开关来控制led灯,并且在数码管上显示发亮的是第几盏led。

附录QuartusII操作

附录QuartusII操作

附录EDA软件QuartusII的基本操作QuartusII是一款推出的专门针对Altera公司CPLD/FPGA开发的EDA软件,可完成设计输入、设计综合、布局布线、时序分析、仿真、编程和配置等功能。

本节内容主要介绍利用QuartusII软件完成数字电路仿真,主要操作包括原理图输入、设计编译、设计仿真等操作。

数字电路设计完成以后,一般要对其进行功能仿真,以判断所设计的数字电路是否满足相应的逻辑功能。

以下以图3.5-1所示的3线—8线译码器为例,说明利用QuartusII软件对数字电路仿真方法。

图3.5-1 3线-8线译码器原理图1.建立工作文件夹和设计项目QuartusII软件对任何一个设计都视作一项工程(Project),在设计输入之前,必须为工程文件建立一个文件夹,此文件夹将被QuartusII软件默认为工作库(Work Libray)。

需要注意的是,文件夹不能用中文字符命名,也不要有空格,只能用英文字母和数字命名,长度最好控制在8个字符之内。

针对3线-8线译码器的设计,可在E盘建立一个文件夹,取名为decoder,路径为E:\szdl\decoder。

选择File→New Project Wizard→Next,打开出现如图1所示的新建项目对话框。

2 附录QuartusII操作图1 创建工程FMTER图2 选择目标芯片图中最上面一栏指示工作目录,第二栏为项目名称,可以为任何名字,但推荐顶层设计名作为项目名,第三栏为顶层设计的实体名。

译码器的顶层原理图文件名取为decoder,设置完成后,单击“Next”按钮。

出现一个将设计文件加入工程的对话框,由于还没有设计文件加入,直接单击“Next”按钮,出现如图2所示的选择目标芯片对话框。

由于QuartusII 的操作不涉及具体的可编程器件,因此可直接单击“Next”,出现如图3所示的用于选择仿真器和综合器类型的对话框。

由于本设计采用Quartuss II自带的仿真器和综合器,不需要选择,直接单击“Next”按钮,出现如图4所示的对话框,列出了此项工程的相关设置情况,最后单击“Finish”按钮结束该工程的设置。

EDA实验一38译码器设计

EDA实验一38译码器设计

《电子设计自动化》实验报告实验一实验名称:3-8译码器的设计专业及班级:姓名:学号:一、实验目的:1.掌握组合逻辑电路的设计方法。

2.掌握 VHDL 语言的基本构造及设计的输入方法。

3.掌握 VHDL 语言的基本描绘语句的使用方法。

二、实验步骤(附源代码及仿真结果图):1.成立工程, Quartus II -- project wizard (注意工程目录中不可以出现中文字符,不可以成立在桌面上);弹出窗口如图 2-3 所示。

图 2-3 New Project Wizard 窗口2.点击next,在出现的对话框中输入以下项目信息:a.项目路径,如: D:\EDA experiment\decoder38; b.项目名称,如: decoder38。

如图 2-4 所示:图 2-4 项目路径和项目名称对话框3.点击 2 次 next 后,出现如图 2-5 所示的对话框:a.Device family 中选择 Cyclone IV E;b.Available devices 中选择 EP4CE115F29C7.图 2-5器件选择窗口4.点击next后,出现EDA工具设置对话框。

在Simulation一行中, Tool Name 选择ModelSim-Altera , Fomat(s)选择 VHDL ,如图 2-6 所示。

图 2-6 EDA 工具设置对话框5.点击 next,出现如图 2-7 所示的对话框:图 2-7 新建项目汇总对话框6. 点击 Finish 后,出现如图2-8 所示的界面:图 2-8 decoder38 项目界面7.点击 File->New->VHDL File ,如图 2-9 所示。

点击 ok 封闭对话框。

图 2-9 新建 VHDL 文件窗口8.在文本编写框内键入以下程序:LIBRARY ieee;USE ieee.std_logic_1164.ALL;ENTITY decoder38 ISPORT(A, B,C,G1,G2A,G2B: IN STD_LOGIC;Y: OUT STD_LOGIC_VECTOR(7 DOWNTO 0)); END decoder38;ARCHITECTURE Behavior OF decoder38 ISSIGNAL indata: STD_LOGIC_VECTOR(2 DOWNTO 0); BEGINindata <= C&B&A;PROCESS (indata, G1, G2A,G2B)BEGINIF (G1='1' AND G2A='0' AND G2B='0') THENCASE indata ISWHEN "000"=>Y<="11111110";WHEN "001"=>Y<="11111101";WHEN "010"=>Y<="11111011";WHEN "011"=>Y<="11110111";WHEN "100"=>Y<="11101111";WHEN "101"=>Y<="11011111";WHEN "110"=>Y<="10111111";WHEN "111"=>Y<="01111111";WHEN OTHERS =>Y<="XXXXXXXX";END CASE;ELSEY<="11111111";END IF;END PROCESS;END Behavior;9. 将文件保留为decoder38.vhd 后,开始编译,点击Processing->Start Compilation ,编译成功后,出现如图2-10 所示界面:图 2-10 编译成功界面10.再次新建一个 vhdl 文件,键入以下的 modelsim 测试程序:LIBRARY ieee;USE ieee.std_logic_1164.ALL;ENTITY decoder38_tb ISEND decoder38_tb;ARCHITECTURE Behavior OF decoder38_tb ISCOMPONENT decoder38PORT (A,B,C,G1,G2A,G2B: IN STD_LOGIC;Y:OUT STD_LOGIC_VECTOR(7 DOWNTO 0));END COMPONENT;SIGNAL A: STD_LOGIC:='0';SIGNAL B : STD_LOGIC:='0';SIGNAL C: STD_LOGIC:='0';SIGNAL G1: STD_LOGIC:='1';SIGNAL G2A: STD_LOGIC:='0';SIGNAL G2B: STD_LOGIC:='0';SIGNAL Y: STD_LOGIC_VECTOR(7 DOWNTO 0);CONSTANT CLK_PERIOD: TIME:=10ns;BEGINA<=not A after CLK_PERIOD;B<=not B after 20ns;C<=not C after 40ns;U1: decoder38 port map(A=>A,B=>B,C=>C,G1=>G1,G2A=>G2A,G2B=>G2B,Y=>Y);END behavior;11.将文件保留为 decoder38_tb.vhd ,编译经过。

QUARTUSII仿真流程示例

QUARTUSII仿真流程示例

Q U A R T U S I I仿真流程示

Document number:BGCG-0857-BTDO-0089-2022
QUARTUSII72 时序仿真流程(以encoder
为例)
1.点击File->new,见如下图:
依如下图选择:
点击OK,出现如下图:
在name下的空白页双击,出现如下图:
点击Node Finder...按钮,出现如下图:
将如上图的Filter设为Pins:all,点击list按钮,出现如下图:
点击》按钮,见如下图:
点击OK,见下图:
在小窗口中点击OK,见如下图:
点击I,出现如下图:
设置信号输入,点击I[7],右边信号输入部分变蓝,见图下图:
选择如图所示的Overwrite Clock 图标
出现如下图:
设置Time period 后点击OK,见如下图:
用同样的方法设置I[6],I[5],I[4],I[3],I[2],I[1],I[0]的输入值,并设置Enable的值为1(H),见如下图:
保存文件为(与vhd文件名一致)
点击Assignment 下的Setting…见如下图:
再点击SimulatorSettings,见如下图:
将Simulation mode 设为Timimg,Simulation input设为,见如下图:
点击OK,再点击Processing 下的Start Simulation,出现最终的仿真图像,见如下图:。

练习1.2QuartusII仿真工具的使用

练习1.2QuartusII仿真工具的使用

练习1.2QuartusII仿真工具的使用练习1.2 Quartus II仿真工具的使用1.首先,打开Quartus II开发软件,新建一个名称为Encoder4_2工程(路径可自行指定,如D:\Design_Project\Altera\Practice1_2),选择器件类型EP2C8Q208C8。

(有关工程的创建,请参考练习1.1)。

2.在菜单栏中,选择“File”->“New”,新建一个名为Encoder4_2.v(或是Encoder4_2.vhd)的文件,编辑好代码并保存,并将此文件添加至工程。

(详细步骤请参见练习1.1)3.接下来,选择菜单栏的“Processing”->“Analyze Current File”,或者在工具栏中找到快捷键并单击,于是Quartus II便开始了分析和综合,以检查代码的语法正确性,并得到电路的逻辑网表。

4.接下来,我们将新建一个向量波形文件,并通过此文件实现对我们编写的源文件的仿真。

5.在菜单栏中,选择“File”->“New”,在如下所示的窗口中,我们在“V erification/DebuggingFiles”的子目录中,选中“V ector Waveform File”,然后点击下方的“OK”按钮。

6.新建的*.vwf文件的视图如下所示,接下来我们需要在这个文件里添加待观测的仿真信号。

我们在其左侧空白处双击,见图。

7.在弹出的“Insert Node or Bus”窗口中,我们点击“Node Finder”按钮。

8.在如下窗口中,我们保持“Named”一栏中的“*”不变,在“Filter”一栏中选择“Pins :all”,然后单击其后的“List”按钮。

9.我们在找到的信号列表中(左侧方框中),选中我们想要添加的信号(按住ctrl键可多选),并点击连个方框中间的按钮,如下图所示。

10.我们在如下图所示的对话框中点击“OK”按钮。

Quartus-II使用教程-完整实例2(精编文档).doc

Quartus-II使用教程-完整实例2(精编文档).doc

【最新整理,下载后即可编辑】Quartus Ⅱ入门教程(一个Verilog 程序的编译和功能仿真)Quartus Ⅱ 是Altera 公司推出的专业EDA 工具,支持原理图输入、硬件描述语言的输入等多种输入方式。

硬件描述语言的输入方式是利用类似高级程序的设计方法来设计出数字系统。

接下来我们对这种智能的EDA 工具进行初步的学习。

使大家以后的数字系统设计更加容易上手。

第一步:打开软件● 快捷工具栏:提供设置(setting ),编译(compile )等快捷方式,方便用户使用,用户也可以在菜单栏的下拉菜单找到相应的选项。

● 菜单栏:软件所有功能的控制选项都可以在其下拉菜单中找到。

● 信息栏:编译或者综合整个过程的详细信息显示窗口,包括编译通过信息和报错信息。

快捷工具栏菜单栏工作区资源管理窗口任务管理窗口第二步:新建工程(file>new Project Wizard )1 工程名称:2添加已有文件(没有已有文件的直接跳过next )所建工程的保存路径 工程名称顶层模块名(芯片级设计为实体名),要求与工程名称相同如果有已经存在的文件就在该过程中添加,软件将直接将用户所添加的文件添加到工程中。

3 选择芯片型号(我们选择cylone II系列下的EP2C70F896C6芯片)(注:如果不下载到开发板上进行测试,这一步可以不用设置)所选的芯片的系列型号快速搜索所需的芯片选择芯片4 选择仿真,综合工具(第一次实验全部利用quartus做,三项都选None,然后next)5 工程建立完成(点finish)选择第三方综合工具,如果使用Quartus内部综合工具则选择none选择第三方仿真工具,如果使用Quartus内部仿真工具则选择none选择时序分析仪工程建立完成,该窗口显示所建立工程所有的芯片,其他第三方EDA工具选择情况,以及模块名等等信息。

第三步:添加文件(file>new> VHDL file),新建完成之后要先保存。

Quartus_II使用教程完整实例

Quartus_II使用教程完整实例

Quartus Ⅱ入门教程(一个Verilog 程序的编译与功能仿真)Quartus Ⅱ 就是Altera 公司推出的专业EDA 工具,支持原理图输入、硬件描述语言的输入等多种输入方式。

硬件描述语言的输入方式就是利用类似高级程序的设计方法来设计出数字系统。

接下来我们对这种智能的EDA 工具进行初步的学习。

使大家以后的数字系统设计更加容易上手。

第一步:打开软件● 快捷工具栏:提供设置(setting),编译(compile)等快捷方式,方便用户使用,用户也可以在菜单栏的下拉菜单找到相应的选项。

● 菜单栏:软件所有功能的控制选项都可以在其下拉菜单中找到。

●信息栏:编译或者综合整个过程的详细信息显示窗口,包括编译通过信息与报错信息。

快捷工具栏菜单栏工作区资源管理窗口任务管理窗口第二步:新建工程( Project Wizard)1 工程名称:2添加已有文件(没有已有文件的直接跳过next) 所建工程的保存路径工程名称顶层模块名(芯片级设计为实体名),要求与工程名称相同如果有已经存在的文件就在该过程中添加,软件将直接将用户所添加的文件添加到工程中。

3 选择芯片型号(我们选择MAX3000A 系列下的EPM3256AQC208-10芯片) (注:如果不下载到开发板上进行测试,这一步可以不用设置)4 选择仿真,综合工具(第一次实验全部利用quartus 做,三项都选None,然后next)所选的芯片的系列型号快速搜索所需的芯片选择芯片5 工程建立完成(点finish )选择第三方综合工具,如果使用Quartus内部综合工具则选择none选择第三方仿真工具,如果使用Quartus内部仿真工具则选择none选择时序分析仪工程建立完成,该窗口显示所建立工程所有的芯片,其她第三方EDA工具选择情况,以及模块名等等信息。

第三步:添加文件(> VHDL file),新建完成之后要先保存。

我们选择Verilog HDL File设计文件格式既选择Verilog文本输入形式第四步:编写程序以实现一个与门与或门为例,Verilog描述源文件如下:module test(a,b,out1,out2);input a,b;Output out1,out2;assign out1=a&b;assign out2=a | b;endmodule然后保存源文件;第五步:检查语法(点击工具栏的这个按钮(start Analysis & synthesis))点击确定完成语法检查第六步:(锁定引脚,点击工具栏的(pin planner)) (注:如果不下载到开发板上进行测试,引脚可以不用分配)双击location 为您的输入输出配置引脚。

初识EDA--3三八译码器(下)

初识EDA--3三八译码器(下)

5-14
进入引脚分配界面
首先将要分配管脚的信号放置在To下方。双击To下方的 《New》,如图5-14所示则会出现如图5-15所示界面。
5-15
信号选择对话框
选择Node Finder…进入如图5-16所示的Node Finder对话框界面。 按图5-16中样例设置参数。在Filter窗口选择Pins:all,在Named窗 口中输入“*”,点击List在Nodes Found窗口出现所有信号的名称, 点击中间的 按钮则Selected Nodes窗口下方出现被选择的端口 名称。
5)如果软件已运行一个工程,则在打开编程器的时候,编程器 窗口会自动出现这个工程文件要加载到目标器件的文件,如果要加 载其它文件可以从其它地方进行添加更改。选好加载文件后,再点 选Progam/Configure,编程模式选取JTAG模式,点击STRAT进 行文件加载,直到加载进度变为100%,文件成功加载完成。 6)手动控制实验箱上的K1、K2、K3即可观察到实验结果
步骤一:在Assignment Name栏内双击后,在下拉菜单中选中Location (Accepts wildcards/groups)选项
步骤二:在Value栏下填入实验箱管脚121,注意各实验箱对应的管脚也不同, 也可选择该实验箱上其他任意不同的管脚
步骤三:管脚填写完毕后,字体颜色自动变黑,则填写正确 5-18 给A端口进行管脚分配
器件EP1C6Q240C8进行加载的方法。
在程序加载之前,注意,一定要先完成管脚的分配和 定义,然后将管脚分配的文件保存,让 图标上方的*消失后,再进行编译,编译正确无误之后, 才可以进行程序下载!
1)将实验箱插上电源插头。 2)使用USB下载电缆插入USB-Blaster端口中,用手轻轻握住 USB-Blaster 连接盒,注意在没有下载完成前不要轻易放下,以免 连接盒磕碰后造成USB指示灯熄灭。观察连接盒上中间的USB指示 灯点亮后,则可进入到下一步设置。若不亮则需要重新拔出下载电 缆,再重新操作,直至USB指示灯点亮。 3)选择QUARTUSII软件的Tool>Programmer命令,弹出编 程器窗口,无论图中的No Hardware项,是否曾经设置,都需要 对其进行重新设置,如图5-32所示。

3-8译码器 EDA 仿真

3-8译码器 EDA 仿真

项目题目: 3-8译码器的设计姓名:院系:应用技术学院专业:电子信息工程(仪器)学号:指导教师:综合成绩:完成时间: 2011 年5月 3 日一、 项目实验内容摘要(1)实验目的1、 通过一个简单的 3-8译码器的设计,掌握组合逻辑电路的设计方法。

2、 掌握组合逻辑电路的静态测试方法。

3、 初步掌握QUARTUS Ⅱ原理图输入方法设计的全过程。

(2) 实验的硬件要求:1、 输入:DIP 拨码开关3位。

2、输出:LED 灯。

3、主芯片:EP1K1OTC100-3。

(3) 实验原理:三-八译码器为三输入,八输出。

当输入信号按二进制方式的表示值为N 时(输入端低电平有效),输出端从零到八记,标号为N 输出端输出低电平表示有信号产生,而其它则为高电平表示无信号产生。

因为三个输入端能产生的组合状态有八种,所以输出端在每种组合中仅有一位为低电平的情况下,能表示所有的输入组合,因此不需要像编码器实验那样再用一个输出端指示输出是否有效。

但可以在输入中加入一个输出使能端,用来指示是否将当前的输入进行有效的译码,当使能端指示输入信号无效或不用对当前信号进行译码时,输出端全为高电平,表示无任何信号。

本例设计中没有考虑使能端,自己设计时可以考虑加入使能输入端时,程序如何设计。

三-八译码器真值表:三八译码器逻辑函数表达式如下:1270126012501240123012201210120...................................................................A A A Y A A A Y A A A Y A A A Y A A A Y A A A Y A A A Y A A A Y ========二、项目实验项目源代码Library ieee;Use ieee.std_logic_1164.all;Use ieee.std_logic_arith.all;Use ieee.std_logic_unsigned.all;Entity three_eight isPort(a,b,c:in std_logic;D0,d1,d2,d3,d4,d5,d6,d7:out std_logic);End three_eight;Architecture s_b of three_eight isSignal O_11, O_22, O_33:std_logic; --注“O”为字母O,不是数字0。

实验三 3-8译码器的功能测试及仿真

实验三  3-8译码器的功能测试及仿真

实验三3-8译码器功能测试及仿真一、实验目的1、掌握中规模集成3-8译码器的逻辑功能和使用方法。

2、进一步掌握VHDL语言的设计。

二、预习要求复习有关译码器的原理。

三、实验仪器和设备1.数字电子技术实验台1台2.数字万用表1块3.导线若干4.MUX PLUSII软件5.74LS138集成块若干四、实验原理译码器是一个多输入、多输出的组合逻辑电路。

它的作用是把给定的代码进行“翻译”,变成相应的状态,使输出通道中相应的一路有信号输出。

译码器在数字系统中有广泛的用途,不仅用于代码的转换、终端的数字显示,还用于数据分配,存贮器寻址和组合控制信号等。

不同的功能可选用不同种类的译码器。

译码器分为通用译码器和显示译码器两大类。

前者又分为变量译码器和代码变换译码器。

1.变量译码器(又称二进制译码器)用以表示输入变量的状态,如2线-4线、3线-8线和4线-16线译码器。

若有n个输入变量,则有2n个不同的组合状态,就有2n个输出端供其使用。

而每一个输出所代表的函数对应于n个输入变量的最小项。

以3线-8线译码器74LS138为例进行分析,下图(a)、(b)分别为其逻辑图及引脚排列。

其中 A2、A1、A0为地址输入端,0Y~7Y为译码输出端,S1、2S、3S为使能端。

下表为74LS138功能表,当S1=1,2S+3S=0时,器件使能,地址码所指定的输出端有信号(为0)输出,其它所有输出端均无信号(全为1)输出。

当S1=0,2S+3S=X时,或 S1=X,2S+3S=1时,译码器被禁止,所有输出同时为1。

3-8线译码器74LS138逻辑图及引脚排列图74LS138功能表输入输出S12S+3S A2A1A00Y1Y2Y3Y4Y5Y6Y7Y1 0 0 0 0 0 1 1 1 1 1 1 11 0 0 0 1 1 0 1 1 1 1 1 11 0 0 1 0 1 1 0 1 1 1 1 11 0 0 1 1 1 1 1 0 1 1 1 11 0 1 0 0 1 1 1 1 0 1 1 11 0 1 0 1 1 1 1 1 1 0 1 11 0 1 1 0 1 1 1 1 1 1 0 11 0 1 1 1 1 1 1 1 1 1 1 00 ×××× 1 1 1 1 1 1 1 1× 1 ××× 1 1 1 1 1 1 1 1二进制译码器实际上也是负脉冲输出的脉冲分配器。

zQuartusII下的-38译码器练习

zQuartusII下的-38译码器练习

二. 3-8译码器设计练习
1 与D触发器设计相似,先为工程新建文件夹。

新建Verilog文件,输入程序代码并保存,文件名与module模块名相同。

2 利用新建工程向导,建立工程。

并设置要产生的烧写文件类型。

3 进行分析综合,无错误后,全程编译。

加入要仿真观察的信号
设置输入信号
5 针对开发板系统分配程序输入输出信号对应的引脚。

重新适配并全程编译。

6 连接开发板系统与电脑,烧写配置文件。

与D触发器实验相似,有2种烧写方式。

JTAG烧写方式,烧写到FPGA器件;
AS 烧写方式,烧些到专用配置芯片EPCS1
7 拿掉下载线,观察硬件实验结果。

************************************************************************。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

验 3-8 译码 验一、实验目的Quartus II 设计工具支持多种设计输入模型,本次实验使用 Verilog 硬件描述语言在 DE0 开发平台上设计一个基本组合逻辑电路——3-8 译码器。

通过这个实验,读者可以了解使用 Quartus 工具设计硬件的基本流程。

二、实验任务(1)设计一个译码器电路,实现3-8 译码器的逻辑功能。

即,译码器根据输入信号SW[0],SW[1],SW[2]译码输出。

输 入 输 出SW[0] SW[1] SW[2] Y0 Y1 Y2 Y3 Y4 Y5 Y6 Y70 0 0 1 0 0 0 0 0 0 01 0 0 0 1 0 0 0 0 0 00 1 0 0 0 1 0 0 0 0 01 1 0 0 0 0 1 0 0 00 0 1 0 0 0 0 1 0 0 01 0 1 0 0 0 0 0 1 0 00 1 1 0 0 0 0 0 0 1 01 1 1 0 0 0 0 0 0 0 1 注:SW[0],SW[1],SW[2],0代表低电平,1代表高电平;Y0-Y7,0代表熄灭,1代表亮。

(2)编写测试激励程序模块,用仿真器检测模块设计的正确与否,给出仿真波形。

(3)进行系统编程,并验证设计结果。

(4)写出实验总结报告。

三、实验步骤3.1 建立 Quartus 工程1. 打开 Quartus II 工作环境,如图 2-1 所示。

图 1-1 Quartus II 工作环境界面2. 点击菜单项 File->New Project Wizard 帮助新建工程。

参看图 1-2。

图 1-2 选择 New Project Wizard打开 Wizard 之后,界面如图1-3 所示。

点击 Next,图 1-3 New Project Wizard 界面3. 输入工程工作路径、工程文件名以及顶层实体名。

注意:这里输入的顶层实体名必须与之后设计文件的顶层实体名相同,默认的顶层实 体名与工程文件名相同,本次实验采用这种命名方法。

用户也可以根据需要输入不同的顶 层实体名。

输入结束后,如图 2-4 所示。

点击 Next。

图 1-4 输入设计工程信息4. 添加设计文件。

界面如图1-5 所示。

如果用户之前已经有设计文件(比如.v 文件)。

那么再次添加相应文件,如果没有完成的设计文件,点击 Next 之后添加并且编辑设计文件。

图 1-5 添加设计文件5. 选择设计所用器件。

由于本次实验使用 Altera 公司提供的 DE0 开发板,用户必须选择与 DE0 开发板相对应的 FPGA 器件型号。

在 Family 菜单中选择 Cyclone II,Package 选 FBGA,Pin Count 选 484,Speed grade 选 6,确认 Available devices 中选中 EP3C16F484C6,如图1-6 所示。

图 1-6 选择相应器件6. 设置 EDA 工具。

设计中可能会用到的 EDA 工具有综合工具、仿真工具以及时序 分析工具。

本次实验中不使用这些工具,因此点击 Next 直接跳过设置,如图1-7 所示。

图 1-7 设置 EDA 工具7. 查看新建工程总结。

在基本设计完成后,Quartus II 会自动生成一个总结让用户核 对之前的设计,类似如下图,确认后点击 Finish 完成新建。

图 1-8 新建工程总结在完成新建后,Quartus II 界面中 Project Navigator 的 Hierarchy 标签栏中会出现用户正在设计的工程名以及所选用的器件型号,如图 1-9 所示。

图 1-9 观察正在设计的工程8. 培养良好的文件布局。

Quartus II 默认把所有编译结果放在工程根目录,为了让 Quartus II 像 Visual Studio 等 IDE 一样把编译结果放在一个单独的目录中,需要指定编译结 果输出路径。

点击菜单项 Assignments->Device,选中 Compilation Process Settings 选项卡,勾上右边 的 Save Project output files in specified directory,输入路径(一般为 debug 或者 release),如图 1-10 所示。

图 1-10 指定单独的编译结果文件目录3.2 使用 Verilog HDL 完成硬件设计9. 添加所需设计文件。

本次实验通过 Verilog HDL 来描述所设计的硬件,因此要添 加 Verilog 设计文件到工程文件中去。

点击菜单项 File->New、点击图标或者使用快捷键 Ctrl+N 新建一个设计文件,选择 Verilog HDL File,如图 2-11 所示,点击 OK。

图 1-11 选择设计文件类型10. 输入硬件描述。

在 Quartus II 环境提供的文本编辑器中输入用户设计的硬件描述 语言,在本次实验设计的是一个 3-8 译码器,输入代码如图 1-12 所示。

图 1-12 输入设计代码11. 保存设计。

点击菜单项 File->Save、点击图标或者使用快捷键 Ctrl+S 保存设计,如图 1-13 所示。

给设计文件命名 Q_DECODE_38,与 3-8 译码器的模块名相同,点击保存。

图 1-13 保存设计文件12. 分析与综合。

点击菜单项 Processing->start->Start Analysis & Synthesis、点击图标或者使用快捷键 Ctrl+K 执行分析与综合。

参看图 1-14。

图 1-14 执行 start Analysis & Synthesis(开始分析与综合) 注意:Start Analysis & Synthesis(分析与综合) = Start Analysis & Elaboration(分析与 解析)+ Mapping(映射)。

如果仅仅需要检查语法,那么执行 Analysis & Elaboration 即可,但是这一步生成的数 据库并不对应 FPGA 器件的物理结构,生成的网表中结点的名称也不与 FPGA 器件的 Cell 名称对应。

而且这一操 作没有快捷 键支持,更 多的情况下 直接执行 Start Analysis & Synthesis。

Start Analysis & Synthesis 后,生成的数据库已经对应了 FPGA 器件的物理结构, “映 射”后的数据库包含了 FPGA 底层 Cell 的位置信息和 Cell 本身的时序信息。

实验一 3-8 译码器实验分析与综合完成后,状态窗口如图 1-15 所示。

图 1-15 执行 start Analysis & Synthesis 后13. 全编译文 件 。

点击菜 单 项 Processing->start com p ilati on 、点击图标 或使 用 CTRL+L 执行全编译,如图 1-16。

图 1-16 执行 start comp ilation编译结果如图 2-17 所示。

图 1-17 全编译结果显示注意:进行这次全编译仅仅是为了利用 Assignments->Pins 来手工分配引脚,分配完 成后需要再次全编译。

如使用 qsf 文件分配引脚则只需全编译一次即可。

3.3 电路仿真14. 功能仿真。

它是为了检查设计是否在理论上达到预期功能,该仿真不考虑器件实 际物理特性。

首先创建仿真输入波形文件。

仿真时需要对顶层实体的输入管脚提供激励信 号,在 Quartus 软件中可以通过波形文件方便的输入。

点击菜单项 File->New->Vector Waveform File,如图 1-18 所示。

实验一 3-8 译码器实验图 1-18 创建波形文件15. 添加信号结点。

在空波形文件中点击右键,如图 1-19 进行选择(或者直接双击)。

图 1-19 添加结点右键菜单单击 Insert Node or Bus 后,出现如图 1-20 所示对话框。

图 1-20 添加结点对话框选择 Node Finder 按钮可以从结点列表中选择我们需要的,而避免一个一个输入结点实验一 3-8 译码器实验的麻烦。

图 1-21 Node Finder 对话框Fitter 选择 Pin:all,点击 List 按钮。

出现如图 1-22 所示的结点列表。

图 1-22 结点列表选择所需的结点,点≥按钮,将结点加入右侧 Select Nodes 栏中。

完成后如图1-23 所示。

点击 OK 按钮确认。

实验一 3-8 译码器实验图1-23 添加结点到右侧 点击 OK 后返回添加结点对话框。

如图 1-24 所示。

图 1-24 添加结点后的对话框 点击 OK 确定,波形文件将如图 1-25 所示。

图 1-25 波形文件16. 将 data_in【0】设为方波。

右击data_in【0】信号,选择 value->clock..,如图1-26所示。

图 1-26将data_in【0】 改为方波在弹出的 clock 设定对话框中把周期调整为 10ns,如图 1-27。

Duty cycle 的意思是占空 比,即是指高电平在一个周期之内所占的时间比率。

图 1-27 时钟的周期设置17. 将 data_in【1】和data_in【2】按相同的步骤设为方波,周期分别改为20ns,40ns。

完成后波形如图 1-28 所示。

输出波形可不管。

图 1-28 波形文件18. 保存波形文件Q_DECODE_38.vwf,如图1-29,这里的命名随意。

图 1-29 保存波形文件19. 波形文件生成后,直接点击仿真按钮会提示错误,见图1-30,这是因为没有先产 生功能仿真网表。

图 1-30 未生成网表错误20. 要生成功能仿真网表,首先设置仿真模式。

点击菜单项 Assignment->Settings,选 中 Simulator Settings 选项卡,出现图 1-31 所示对话框。

在 Simulation mode 中选择 Functional, Simulation input 选择刚才建立的波形文件,完成后点击 OK。

图 3-31 仿真模式设置对话框点击菜单项 Processing->Generate Functional Simulation Netlist,产生功能仿真所需的网表,参看图 1-32。

完成后结果显示如图1-33。

图3-32 生成功能仿真网表的操作菜单项图 1-33 功能仿真网表产生结果显示图21. 点击菜单项 Processing->Start Simulation 或工具按钮启动功能仿真。

相关文档
最新文档