使用VHDL语言设计一个T触发器
触发器真值表
任务1触发器电路一、实验目的1、掌握D触发器、JK触发器等基本触发电路的原理与设计2、掌握时序电路的分析与设计的方法3、学习VHDL语言中构造体的不同描述方式的异同二、实验内容1、编写VHDL语言源程序,实现D触发器、JK触发器等基本触发电路2、扩展任务:设计其他如RS触发器,并分析它们相互转化的方法3、通过模拟和仿真,分析和验证各种出发器的逻辑功能及其触发方式三、实验要求1、列写D触发器、JK触发器的真值表2、编写实现D触发器、JK触发器功能的VHDL语言程序3、利用实验装置验证程序正确性,分析触发的方式4、写出完整的实验报告(包括上述图表和程序等)四、实验原理说明1、正边沿触发的D触发器的电路符号如图2-4所示。
从输入输出引脚而言,它有一个数据输入端d,一个时钟输入端clk和一个数据输出端q。
D触发器的真值表如表2-2所示。
从表中可以看出:D触发器的输出端只有在正边沿脉冲过后,输入端d的数据才可以被传递到输出端q。
表1D触发器真值表数据输入端时钟输入端clk 数据输出端qdX 0 不变X 1 不变0 - 01 - 12、带复位和置位功能的JK触发器电路符号如图2-5所示。
JK触发器的输入端有置位输s 复位输入clr,控制输入j和k,时钟输入clk;输出端有数据输出q和反向输出qb。
JK触发器的真值表如表2-3所示。
表2-3JK触发器真值表输入端输出端st clr clk j k Q qb0 1 X X X 1 01 0 X X X 0 10 0 X X X X X1 1 - 0 1 0 11 1 - 1 1 翻转翻转1 1 - 0 0 保持保持1 1 - 1 0 1 01 1 0 X X 保持保持编辑本段真值表定义表征逻辑事件输入和输出之间全部可能状态的表格。
真值表列出命题公式真假值的表。
通常以1表示真,0 表示假。
命题公式的取值由组成命题公式的命题变元的取值和命题联结词决定,命题联结词的真值表给出了真假值的算法。
《数字逻辑与数字系统》期末考试试题(A)
北京邮电大学2008——2009学年第一学期《数字逻辑与数字系统》期末考试试题(A )考试注意事项一、学生参加考试须带学生证或学院证明,未带者不准进入考场。
学生必须按照监考教师指定座位就坐。
二、书本、参考资料、书包等物品一律放到考场指定位置。
三、学生不得另行携带、使用稿纸,要遵守《北京邮电大学考场规则》,有考场违纪或作弊行为者,按相应规定严肃处理。
四、学生必须将答题内容做在试题答卷上,做在草稿纸上一律无效。
五、学生的姓名、班级、学号、班内序号等信息由教材中心统一印制。
考试 课程 数字逻辑与数字系统 考试时间 2009年1月13日 题号 一 二 三 四 五 六 七 八 总分满分 10 20 10 10 10 12 14 14 得分 阅卷 教师一、选择题(每小题1分,共10分。
)1. )D C B (B )B A (A F ++++==( )A .B B . A+BC . 1D .AB2.同步时序电路和异步时序电路比较,其差异在于后者( ) A . 没有稳定状态 B . 没有统一的时钟脉冲控制 C . 输入数据是异步的 D . 输出数据是异步的 3.(10000011)8421BCD 的二进制码为( )。
A .( 10000011)2B .(10100100)2C . (1010011)2D . (11001011)24. 74LS85为四位二进制数据比较器。
如果只进行4位数据比较,那么三个级联输入端a<b 、a>b 、a=b 应为( )。
A . a<b 接地,a>b 接地,a=b 接地B . a<b 接高电平,a>b 接高电平,a=b 接高电平C . a<b 接高电平,a>b 接高电平,a=b 接地5. N 个触发器可以构成能寄存( )位二进制数码的寄存器。
A. NB. 2NC. 2ND. N 26.时序电路中对于自启动能力的描述是( )。
A . 无效状态自动进入有效循环,称为具有自启动能力。
第11章++硬件描述语言VHDL简介
实体部分最核心的内容是由关键字port引导的端口说明。A和B是输入引脚,使 用了关键字in来描述。Bit的意思是指A和B的数据类型是位类型。位类型数据只可取 0和1这两个数值。S和CO是输出信号,用out来描述,数据类型也是bit型。 实体说明的是部件的名称和端口信号类型,它可以描述小至一个门,大到一个复杂 的CPU芯片、一块印制电路板甚至整个系统。实体的电路意义相当于器件,在电路 原理图上相当于元件符号,它是一个完整的、独立的语言模块,并给出了设计模块 和外部接口。 具体语法如下: entity 实体名 is ——实体名自选,通常用反映模块功能特征的名称 port(端口名称1:端口方式1 端口类型1; 端口名称2:端口方式2 端口类型2;…); end 实体名; ——这里的实体名要和开始的实体名一致 其中端口方式可以有5种,分别是: in:输入端口,信号从该端口进入实体。 out:输出端口,信号从实体内部经该端口输出。 inout:输入输出(双向)端口,信号既可从该端口输入也可从该端口输出。 buffer:缓冲端口,工作于缓冲模式。 Linkage:无指定方向,可与任何方向的信号连接。
(2)用户自定义的数据类型 VHDL语言允许用户自定义数据类型。其书写格式为: type 数据类型名 is 数据类型定义; 例如: type digit is integer range 0 to 9; ——定义digit的数据类型是0~9的整 数 可由用户定义的数据类型有: 枚举(Enumerated)类型; 整数(Integer)类型; 实数(Real)、浮点数(Floating)类型; 数组(Array)类型; 存取(Access)类型; 文件(File)类型; 记录(Record)类型; 时间(Time)类型(物理类型)。
11.1 VHDL语言基础
时序逻辑VHDL设计---触发器
实验名称:时序逻辑VHDL设计---触发器一、同步清零(低电平有效)和异步置数(高电平有效)的D触发器的VHDL设计1.实体框图Dclk Reset set QD_FFinst2.程序设计①编译前的程序library ieee;use ieee.std_logic_1164.all;Entity D_FF isport(D,clk,Reset,set:in std_logic;Q:out std_logic);End Entity D_FF;Architecture one of D_FF issignal Q1:std_logic;Beginprocess(clk,Reset,set)Beginif set='1' thenQ1<='1';Elseif clk'event and clk='1' thenif Reset='0' thenQ1<='0';elseQ1<=D;end if;end if;end process;Q<=Q1;End architecture one;②程序编译错误情况错误1:Error (10500): VHDL syntax error at D_FF.vhd(22) near text "process"; expecting "if"错误2:Error (10500): VHDL syntax error at D_FF.vhd(24) near text "architecture"; expecting "if"分析:经检查,发现原程序少了END if,没有与if匹配,添加即可。
③正确的程序library ieee;use ieee.std_logic_1164.all;Entity D_FF isport(D,clk,Reset,set:in std_logic;Q:out std_logic);End Entity D_FF;Architecture one of D_FF issignal Q1:std_logic;Beginprocess(clk,Reset,set)Beginif set='1' thenQ1<='1';Elseif clk'event and clk='1' thenif Reset='0' thenQ1<='0';elseQ1<=D;end if;end if;end if;end process;Q<=Q1;End architecture one;3.仿真波形图4.仿真波形分析当置数端SET出现高电平时,此时不管CP脉冲和D的状态如何,输出立即置为‘1’,实现异步置数的功能;当清零端RESET出现低电平时,而且必须当CP脉冲为上升沿时,输出清零,实现同步清零;除此之外,当CP脉冲为上升沿状态时,D=0,Q=0;D=1,Q=1;二、异步清零(高电平有效)和同步置数(低电平有效)的JK触发器的VHDL设计1.实体框图clk reset setJK[0..1]QJK_FFinst2.程序设计①编译前的程序Library ieee;use ieee.std_logic_1164.all;Entity JK_FF isport( clk,reset,set,J,K:in std_logic;Q:out std_logic);End entity JK_FF;Architecture two of JK_FF issignal Q1:std_logic;beginprocess(clk,reset,set,J,K)beginif reset='1' thenQ1<='0';elseif clk'event and clk='1' thenif set='0' thenQ1<='1';elsecase JK iswhen "00" => Q1<=Q1;when "10" => Q1<='1';when "11" => Q1<=not Q1;when others =>NULL;end case;end if;end if;end if;end process;Q<=Q1;end architecture two;②程序编译错误情况错误1:Error (10482): VHDL error at JK-FF.vhd(19): object "JK" is used but not declared错误2:Error (10523): Ignored construct two at JK-FF.vhd(7) due to previous errors分析:JK为两位,需要定义如下:JK:in std_logic_vector(0 to 1);③正确的程序Library ieee;use ieee.std_logic_1164.all;Entity JK_FF isport( clk,reset,set:in std_logic;JK:in std_logic_vector(0 to 1);Q:out std_logic);End entity JK_FF;Architecture two of JK_FF issignal Q1:std_logic;beginprocess(clk,reset,set,JK)beginif reset='1' thenQ1<='0';elseif clk'event and clk='1' thenif set='0' thenQ1<='1';elsecase JK iswhen "00" => Q1<=Q1;when "01" => Q1<='0';when "10" => Q1<='1';when "11" => Q1<=not Q1;end case;end if;end if;end if;end process;Q<=Q1;end architecture two;3.仿真波形图4.仿真波形分析当清零端ResET出现高电平时,此时不管CP脉冲和JK的状态如何,输出立即清零,实现异步清零的功能;当置数端SET出现低电平时,而且必须当CP脉冲为上升沿时,输出立即置数‘1‘,实现同步置数的功能;除此之外,当CP脉冲为上升沿状态时,J=K=0,Q保持;J=0,K=1,Q置零;J=1,K=0,Q置1;J=K=1,Q翻转一、8位锁存器的VHDL设计1.实体框图D[0..7] clk Q[0..7]latch8a2.程序设计①编译前的程序Library ieee;use ieee.std_logic_1164.all;Entity latch8a isport(D:in std_logic_vector(7 to 0);clk:in std_logic;Q:out std_logic_vector(7 to 0));End latch8a;Architecture three of latch8a issignal q1:std_logic_vector(7 to 0);beginprocess (clk,D)beginif clk'event and clk='1' thenQ1<=D;end if;end process;Q<=Q1;End architecture three;②程序编译错误情况错误:无③正确的程序Library ieee;use ieee.std_logic_1164.all;Entity latch8a isport(D:in std_logic_vector(0 to 7);clk:in std_logic;Q:out std_logic_vector(0 to 7));End latch8a;Architecture three of latch8a issignal q1:std_logic_vector(0 to 7);beginprocess (clk,D)beginif clk'event and clk='1' thenend if;end process;Q<=Q1;End architecture three;3.仿真波形图4.仿真波形分析当CLK脉冲为高电平时,输出为与其相对应的输出。
计算机组成原理实验报告1
计算机组成原理实验报告实验:4位2进制计数器姓名:王雄专业:数媒2班学号:110511623指导老师:蒋丽华【实验环境】1. Windows 2000 或 Windows XP2. QuartusII9.1 sp2、DE2-115计算机组成原理教学实验系统一台,排线若干。
【实验目的】1、熟悉VHDL 语言的编写。
2、验证计数器的计数功能。
【实验要求】本实验要求设计一个4位二进制计数器。
要求在时钟脉冲的作用下,完成计数功能,能在输出端看到0-9,A-F 的数据显示。
(其次要求下载到实验版实现显示)【实验原理】计数器是一种用来实现计数功能的时序部件,计数器在数字系统中主要是对脉冲的个数进行计数,以实现测量、计数和控制的功能,同时兼有分频功能。
计数器由基本的计数单元和一些控制门所组成,计数单元则由一系列具有存储信息功能的各类触发器构成,这些触发器有RS 触发器、T 触发器、D 触发器及JK 触发器等。
计数器在数字系统中应用广泛,如在电子计算机的控制器中对指令地址进行计数,以便顺序取出下一条指令,在运算器中作乘法、除法运算时记下加法、减法次数,又如在数字仪器中对脉冲的计数等等。
计数器按计数进制不同,可分为二进制计数器、十进制计数器、其他进制计数器和可变进制计数器,若按计数单元中各触发器所接收计数脉冲和翻转顺序或计数功能来划分,则有异步计数器和同步计数器两大类,以及加法计数器、减法计数器、加/减计数器等,如按预置和清除方式来分,则有并行预置、直接预置、异步清除和同步清除等差别,按权码来分,则有“8421”码,“5421”码、余“3”码等计数器,按集成度来分,有单、双位计数器等等,其最基本的分类如下:计数器的种类⎪⎪⎪⎪⎪⎪⎩⎪⎪⎪⎪⎪⎪⎨⎧⎪⎩⎪⎨⎧⎪⎩⎪⎨⎧⎩⎨⎧进制计数器十进制计数器二进制计数器进制可逆计数器减法计数器加法计数器功能异步计数器同步计数器结构N 、、、321 下面对同步二进制加法计数器做一些介绍。
VHDL语言实例
VHDL 语言实例例1:设计一七段显示译码器,用它来驱动七段发光管 到9和字母A 到F 。
LED 显示数码管为共阳极。
LIBRARY ieee;USE ieee.std_logic_1164.all; ENTITY HEX2LED ISP ORT(LED : OUT std_logic_vector(6 TO图例1七段显示译码器实体ARCHITECTURE HEX2LED_arc OF HEX2LED IS BEGIN--HEX-TO-SEVEN-SEGMENT DECODER --SEGMENT ENCODING--5 | |1-- — — — — --4 | |20);HEX2LEDHEX :IN std_logic_vector(3 DOWNTO HEXES. . 0]"0) );LED 显示十六进制数字0ENDHEX2LED;WITH HEX SELECTLED<= "1111001" when "0001","0100100" when "0010","0110000" when "0011","0011001" when "0100","0010010" when "0101","0000010" when "0110","1111000" when "0111","0000000" when "1000","0010000" when "1001","0001000" when "1010","0000011" when "1011","1000110" when "1100","0100001" when "1101","0000110" when "1110","0001110" when "1111","1000000" when others;END HEX2LED_arc;例 2 :设计一个八选一数据选择器1)s 是通道选择信号,d0,d1,d2,d3,d4,d5,d6,d7 数据输入out1 是数据输出ENTITY sels ISP ORT(d0,d1,d2,d3,d4,d5,d6,d7:IN BIT;s :INTEGERRANGE0 TO 7;END sels;ARCHITECTURE sels_arc OF sels IS BEGINWITH s SELECTout1 <= d0 WHEN 0, d1 WHEN 1, d2 WHEN 2, d3 WHEN 3,d4 WHEN 4,d5 WHEN 5, d6 WHEN 6, d7 WHEN 7;END sels_arc;LIBRARY ieee;USE ieee.std_logic_1164.all;ENTITY mux8 ISPORT(IO,I1,I2,I3,I4,I5,I6,I7,A,B,C:IN std_logic; END mux8;sels图例2 (a)八选一数据选择器实体图例2 (b)八选一数据选择器实体out1 :OUT BIT);2)A,B,C 是通道选择信号,据输出10,11,12,13,14,15,16,17数据输入 Q 是数Q :OUT std_logic);ARCHITECTURE mux8_arc OF mux8 ISSIGNAL sel :INTEGER ;BEGINQ <= 10 AFTER 10 ns WHEN sel= 0 ELSE11 AFTER 10 ns WHEN sel= 1 ELSE 12 AFTER 10 ns WHEN sel= 2 ELSE 13 AFTER 10 ns WHEN sel= 3 ELSE 14 AFTER 10 ns WHEN sel= 4 ELSE 15 AFTER 10 ns WHEN sel= 5 ELSE 16 AFTER 10 ns WHEN sel= 6 ELSE 17 AFTER 10 ns ;sel <= 0 WHEN A=‘ 0' AND B= ‘ 0' AND C= ‘ 0' ELSE1 WHEN A= '1' AND B= ‘ 0'AND C='0' ELSE2 WHEN A='0' AND B=‘1' AND C= '0' ELSE3 WHEN A='1' AND B=‘1' AND C='0' ELSE4 WHEN A='0' AND B=‘ 0'AND C= '1' ELSE5 WHEN A='1' AND B=‘ 0'AND C= '1' ELSE6 WHEN A='0' AND B=‘ 0'AND C= '1' ELSE7;END mux8_arc;例3:设计一 D 触发器 d 是输入端,clk 是时钟信号控制端,q 是触发器的输出端。
VHDL触发器
三、串入/并出移位寄存器(2) 四位串入/并出移位寄存器的逻辑电路图:
三、串入/并出移位寄存器(3) VHDL语言描述:
LIBRARY IEEE; USE IEEE.std_logic_1164.ALL; USE WORK.example.ALL; ENTITY shift_reg IS PORT (d1 : IN std_logic; cp : IN std_logic; q : OUT std_logic_vector(3 DOWNTO 0)); END shift_reg; ARCHITECTURE structure_arc OF shift_reg IS
二、串入/串出移位寄存器(1) 移位功能的定义:指寄存器里面存储的代码能 够在时钟的作用下进行依次左移或者是右移。 移位寄存器的定义:通常把具有存储和移位功 能的寄存器称为移位寄存器。 移位寄存器的分类:串入/串出移位寄存器、串 入/并出移位寄存器和循环移位寄存器等。
二、串入/串出移位寄存器(2) 串入/串出移位寄存器的定义: 所谓串入/串出移位寄存器是指它的第一 个触发器的输入端口用来接收外来的输入信号, 而其余的每一个触发器的输入端口均与前面一 个触发器的Q端相连。这样,移位寄存器输入 端口的数据将在时钟边沿的作用下逐级向后移 动,然后从输出端口串行输出。例如前面第六 章中介绍过的串入/串出四位移位寄存器。
同步复位的D触发器(1) 电路符号和功能表:
同步复位的D触发器(2) VHDL语言描述:
ARCHITECTURE rtl_arc OF sync_rdff IS BEGIN PROCESS (clk) BEGIN IF (clk’event AND clk =’1’) THEN IF (reset =’0’) THEN q <= ’0’; qb <= ’1’; ELSE q <= d; qb <= NOT d; END IF; END IF; END PROCESS; END rtl_arc;
EDA复习(1)
一、名词解释1逻辑综合——将电路的高级语言描述转换成低级的,可与FPGA/CPLD或构成ASIC的门阵列基本结构相映射的网表文件的过程。
2. 逻辑适配——将由综合器产生的网表文件针对某一具体的目标器进行逻辑映射操作,其中包括底层器件配置、逻辑分割、逻辑优化、布线与操作等,配置于指定的目标器件中,产生最终的下载文件的过程。
3 时序仿真——将布线器/适配器所产生的VHDL网表文件送到VHDL仿真器中所进行的仿真。
该仿真已将器件特性考虑进去了,因此可以得到精确的时序仿真结果二、填空题1. EDA的中文含义是电子设计自动化,CAD的中文含义是计算机辅助设计,FPGA的中文含义是现场可编程门阵列,CPLD的中文含义是复杂可编程逻辑器件。
2.CPLD在结构上主要分为三个部分,即可编程逻辑宏单元、可编程输入/输出单元和可编程内部连线三个部分。
3.VHDL的数据对象有常量、变量和信号三种。
VHDL程序设计中常用的库有 IEEE库、 STD库、WORK库和VITAL库。
4.VHDL是一种强数据类型语言,强数据类型的具体含义是:(1) 各参量必须具有确定的数据类型 (2)相同的数据类型的量才能进行操作。
5.IEEE_1076标准程序包中定义的四种常用端口模式分别是IN模式、OUT 模式、BUFFER模式和 INOUT 模式。
6 ISP的中文含义是在系统可编程特性,ASIC的中文含义是专用集成电路7常用的硬件描述语言有三种,分别是:(1) VHDL ;(2) Verilog ;(3)ABEL .8 最流行的第三方EDA工具有:逻辑综合性能最好的Synplify,仿真功能最强大的ModelSim9 VHDL的基本标识符就是以字母开头,不连续使用下划线,不以下划线“_”结尾的,由字母、数字以及下划线“_”组成的字符串10两种典型的状态机是摩尔状态机和米立状态机。
状态机的两种基本操作分别是状态机内部状态转换和产生输出信号序列三、问答题1.什么叫EDA技术?使用EDA技术进行电子系统设计有什么优点?答: EDA技术有狭义的EDA技术和广义的EDA技术之分。
EDA技术(VHDL)试卷及答案
班级 学号 姓名密 封 线 内 不 得 答 题一、单项选择题(30分)1.以下描述错误的是 CA .QuartusII 是Altera 提供的FPGA/CPLD 集成开发环境B .Altera 是世界上最大的可编程逻辑器件供应商之一C .MAX+plusII 是Altera 前一代FPGA/CPLD 集成开发环境QuartusII 的更新换代新产品D .QuartusII 完全支持VHDL 、Verilog 的设计流程2.以下工具中属于FPGA/CPLD 开发工具中的专用综合器的是 BA .ModelSimB .Leonardo SpectrumC .Active HDLD .QuartusII 3.以下器件中属于Xilinx 公司生产的是 CA .ispLSI 系列器件B .MAX 系列器件C .XC9500系列器件D .FLEX 系列器件 4.以下关于信号和变量的描述中错误的是 BA .信号是描述硬件系统的基本数据对象,它的性质类似于连接线B .信号的定义范围是结构体、进程 //在整个结构体的任何地方都能使用C .除了没有方向说明以外,信号与实体的端口概念是一致的D .在进程中不能将变量列入敏感信号列表中 5.以下关于状态机的描述中正确的是 BA .Moore 型状态机其输出是当前状态和所有输入的函数//Mealy 型状态机其输出信号是当前状态和当前输入的函数B .与Moore 型状态机相比,Mealy 型的输出变化要领先一个时钟周期C .Mealy 型状态机其输出是当前状态的函数D .以上都不对6.下列标识符中, B 是不合法的标识符。
A .PP0B .ENDC .Not_AckD .sig7.大规模可编程器件主要有FPGA 、CPLD 两类,下列对CPLD 结构与工作原理的描述中,正确的是 C 。
A//.FPGA 即是现场可编程逻辑器件的英文简称CPLD 复杂可编程逻辑器件 B .CPLD 是基于查找表结构的可编程逻辑器件 C .早期的CPLD 是从GAL 的结构扩展而来D .在Altera 公司生产的器件中,FLEX10K 系列属CPLD 结构 8.综合是EDA 设计流程的关键步骤,在下面对综合的描述中, D 是错误的.A .综合就是把抽象设计层次中的一种表示转化成另一种表示的过程B .综合就是将电路的高级语言转化成低级的,可与FPGA / CPLD 的基本结构相映射的网表文件C .为实现系统的速度、面积、性能的要求,需要对综合加以约束,称为综合约束D .综合可理解为,将软件描述与给定的硬件结构用电路网表文件表示的映射过程,并且这种映射关系是唯一的(即综合结果是唯一的)9.嵌套使用IF 语句,其综合结果可实现 A .A .带优先级且条件相与的逻辑电路B .条件相或的逻辑电路C .三态控制电路D .双向控制电路 10.在VHDL 语言中,下列对时钟边沿检测描述中,错误的是 D 。
数字电路EDA设计题库 2
1.EDA设计流程一般包括设计准备、设计输入、设计处理和器件编程4个步骤;2.EDA的设计输入法中常用的有文本输入法、图形输入法和波形输入法3种;3.功能仿真是在设计输入完成后,选择具体器件进行编译之前进行的逻辑功能验证,因此又称为前仿真;4.当前最流行的并成为IEEE标准的硬件描述语言包括VHDL 和Verilog-HDL ;5.硬件描述语言HDL给PLD和教学系统的设计带来了更新的设计方法和理念,产生了目前最常用的并称之为自顶向下的方法;6.将硬件描述语言转化为硬件电路的重要工具软件称为HDL综合器;7.用MAX+PLUSⅡ的输入法设计的文件不能直接保存在根目录下,因此设计者在进入设计之前,应当在计算机中建立保存设计文件的文件夹;8.图形文件设计结束后一定要通过编译,检查设计文件是否正确;9.指定设计电路的输入/输出端口与目标芯片引脚的锁定后,再次对设计电路的仿真称为后仿真10.以EDA方式实现的电路设计文件,最终可以编程下载到FPGA 或CPLD 芯片中,完成硬件设计和验证;11.一般将一个完整的VHDL程序称为独立实体;12.用VHDL设计的电路,既可以被高层次的系统调用,成为系统的一部分,也可以作为一个电路的功能块独立实体和结构体;13.VHDL设计实体的基本结构由库、程序包、实体、结构体和配置部分组成;14.实体和结构体是设计实体的基本组成部分,它们可以构成最基本的VHDL程序;15.IEEE于1987年公布了VHDL的VHDL’87 标准;16.IEEE于1993年公布了VHDL的VHDL’93 语法标准;17.在VHDL中最常用的库是IEEE 标准库;18.VHDL的实体是由实体说明部分和结构体部分组成;19.VHDL的实体声明部分指定了设计单元的输入/输出端口或引脚,它是设计实体对外的一个通信界面,是外界可以看到的部分;20.VHDL的结构体用来描述设计实体的逻辑结构和逻辑功能,它由VHDL语句构成是外界看不到部分;21.在VHDL的数据端口声明语句中,端口方向包括IN 、OUT 、INOUT和BUFFER;22.VHDL的数据对象包括变量、常量和信号,它们是用来存放各种类型数据的容器。
2012-2013-1_pld期末复习题试题
复习题(开卷)一、填空题(本大题共10小题,每空1分,共20 分)1.一般把EDA技术的发展分为MOS时代、MOS时代和ASIC三个阶段。
2.EDA设计流程包括设计输入、设计实现、实际设计检验和下载编程四个步骤。
3.EDA设计输入主要包括图形输入、HDL文本输入和状态机输入。
4.时序仿真是在设计输入完成之后,选择具体器件并完成布局、布线之后进行的时序关系仿真,因此又称为功能仿真。
5.VHDL的数据对象包括变量、常量和信号,它们是用来存放各种类型数据的容器。
6.图形文件设计结束后一定要通过仿真,检查设计文件是否正确。
7.以EDA方式设计实现的电路设计文件,最终可以编程下到FPGA和CPLD芯片中,完成硬件设计和验证。
8.MAX+PLUS的文本文件类型是(后缀名).VHD。
9.在PC上利用VHDL进行项目设计,不允许在根目录下进行,必须在根目录为设计建立一个工程目录。
10.VHDL源程序的文件名应与实体名相同,否则无法通过编译。
一、填空题与简答题1、ASIC的中文含义是:专用集成电路。
2、在VHDL中主要有哪三种重载现象参数类型的重载;参数数目的重载;函数返回类型的重载。
3、简单可编程逻辑器件的主要有PROM、PLA、PAL、GAL4、CPLD内部含有多个逻辑单元块,每个逻辑单元块相当于一个GAL器件:5、在设计中,常常采用的设计方法有直接设计方法、自顶向下和自底向上的设计方法。
6、CPLD的一般采用“与-或阵列”结构。
7、一个完整的VHDL程序包括库、程序包、实体、结构体和配置五个部分。
8、PLD的中文含义是:可编程逻辑器件。
9、“与-或”结构的可编程逻辑器件主要由四部分构成:输入电路、可编程“与”阵列、可编程或阵列、输出电路10、FPGA的一般采用“查找表”结构。
11.VHDL的全拼Very high speed integrated Hardware Description Language12.子程序有即过程(PROCEDURE)、函数〔FUNCTION〕两种类型。
数字电路EDA设计题库
1.EDA设计流程一般包括、、和4个步骤;2.EDA的设计输入法中常用的有、和3种;3.功能仿真是在设计输入完成后,选择具体器件进行编译之前进行的逻辑功能验证,因此又称为;4.当前最流行的并成为IEEE标准的硬件描述语言包括和;5.硬件描述语言HDL给PLD和教学系统的设计带来了更新的设计方法和理念,产生了目前最常用的并称之为的方法;6.将硬件描述语言转化为硬件电路的重要工具软件称为;7.用MAX+PLUSⅡ的输入法设计的文件不能直接保存在根目录下,因此设计者在进入设计之前,应当在计算机中建立保存设计文件的;8.图形文件设计结束后一定要通过,检查设计文件是否正确;9.指定设计电路的输入/输出端口与目标芯片引脚的锁定后,再次对设计电路的仿真称为;10.以EDA方式实现的电路设计文件,最终可以编程下载到或芯片中,完成硬件设计和验证;11.一般将一个完整的VHDL程序称为;12.用VHDL设计的电路,既可以被高层次的系统调用,成为系统的一部分,也可以作为一个电路的功能块和;13.VHDL设计实体的基本结构由、、、和部分组成;14.和是设计实体的基本组成部分,它们可以构成最基本的VHDL程序;15.IEEE于1987年公布了VHDL的标准;16.IEEE于1993年公布了VHDL的语法标准;17.在VHDL中最常用的库是标准库;18.VHDL的实体是由部分和部分组成;19.VHDL的实体声明部分指定了设计单元的或,它是设计实体对外的一个通信界面,是外界可以看到的部分;20.VHDL的结构体用来描述设计实体的和,它由VHDL语句构成是外界看不到部分;21.在VHDL的数据端口声明语句中,端口方向包括、、和;22.VHDL的数据对象包括、和,它们是用来存放各种类型数据的容器。
23.VHDL的变量(V ARIABLE)是一个,只能在进程、函数和过程中声明和使用;24.VHDL的信号(SIGNAL)是一种数值容器,不仅可以容纳,也可以保持;25.VHDL的数据类型包括、、和;26.在VHDL中,标准逻辑位数据有种逻辑值;27.VHDL的操作符包括、、和4类;28.VHDL的基本描述语句包括和;29.VHDL的顺序语句只能出现在、和中,是按程序书写的顺序上而下,一条一条执行;30.VHDL的并行语句在结构体中的执行是的,其执行方式与语句书写顺序无关;31.VHDL的PROCESS语句是由组成的,但其本身却是;32.VHDL的并行信号赋值语句的赋值目标必须都是;33.元件例化是将预先设计好的设计实体作为一个,连接到当前设计实体中一个指定的。
EDA技术-VHDL-4.2T触发器a
4.2 T 触发器程序设计与仿真实验1 实验目的(1) 掌握T触发器的逻辑功能(2) 学会用VHDL语言设计T触发器2 实验原理对于T触发器,当控制信号t=1时每来一个clk脉冲信号它的状态就翻转一次,而当t=0时,clk脉冲信号到达后它的状态保持不变。
T触发器的特性表如表4.2.1所示。
表4.2.1 T触发器特性表由表4.2.1写出T触发器的特性方程为:n q+1n=q⊕t3 实验内容(1) 用VHDL语言编写T触发器源程序。
(2) 将源程序进行综合、优化及功能仿真。
4 实验预习思考(1) 复习T触发器的工作原理。
(2)将T触发器改成'T触发器如何修改程序。
5 VHDL仿真实验(1)为此工程新建一个文件夹。
启动QuartusⅡ软件工作平台。
新建工程设计文件名为tcfq.vhd。
在新建的VHDL模型窗口下编写的源程序如下:library IEEE;use IEEE.STD_LOGIC_1164.ALL;use IEEE.STD_LOGIC_ARITH.ALL;use IEEE.STD_LOGIC_UNSIGNED.ALL;entity tcfq isPort ( clk : in std_logic;res : in std_logic;t : in std_logic;q : out std_logic);end tcfq;architecture Behavioral of tcfq issignal q1:std_logic;beginprocess(clk,res,t)beginif res='0' thenq1<='0';elsif (clk'event and clk='0') thenif t='0' then q1<=q1;else q1<=not q1;end if;end if;end process;q<=q1;end Behavioral;(2) 创建工程及全程编译完成源代码输入后即可创建工程。
VHDL语言实验指导书
浙江工商大学计算机与信息工程学院 开放实验项目实验指导书
基于 VHDL 的数字逻辑电路设计
指导教师:
傅均
开放地点: 信息楼 119 室
图 1. HST 实验板及包含硬件资源
《基于 VHDL 的数字逻辑电路设计》实验指导书 傅均 V3.0
第2页
图 2. EPM240T100C5 芯片引脚和对应板上资源连接
注意 1: CPLD 的第 9、13、31、45、59、63、80、94 引脚已经接 Vcc 3V;CPLD 的第 10、11、32、46、60、65、79、93 引脚已经接 GND 0V。CPLD 的第 22、 23、24、25 引脚已经用于 JTAG 下载器连接。第 64 引脚已经设置为时钟输入 GCLK3(11MHz)。
开放时间: 第 11-15 周三 10-12 节
电子邮箱: junfu@mail.
2012 年 4 月-6 月 版本 V3.0
目录
1、实验说明和注意事项………………………………………………...(1) 2、实验设备与资源介绍………………………………………………...(1) 3、实验内容与要求…………………………………………………...…(4)
实验一 常用组合逻辑电路设计
一、 实验目的
1 .初步掌握 VHDL 语言的基本单元及其构成。 2 .了解 VHDL 中的顺序语句和并行语句,掌握 process 语句、信号赋值语句等。 3 .学习 Quartus II 9.1 软件的基本操作,掌握文本输入法设计数字电路的过程。 4 .学会编写 3-8 译码器、数值比较器等简单的常用组合逻辑电路。
EDA技术实用教程--VHDL版本(第五版)潘松课后习题答案
《EDA技术实用教程(第五版)》习题1 习题1-1EDA技术与ASIC设计和FPGA开发有什么关系?FPGA在ASIC设计中有什么用途?P3~4EDA技术与ASIC设计和FPGA开发有什么关系?答:利用EDA技术进行电子系统设计的最后目标是完成专用集成电路ASIC的设计和实现;FPGA和CPLD是实现这一途径的主流器件。
FPGA和CPLD的应用是EDA技术有机融合软硬件电子设计技术、SoC(片上系统)和ASIC设计,以及对自动设计与自动实现最典型的诠释。
FPGA在ASIC设计中有什么用途?答:FPGA和CPLD通常也被称为可编程专用IC,或可编程ASIC。
FPGA实现ASIC设计的现场可编程器件。
1-2 与软件描述语言相比,VHDL有什么特点? P4~6答:编译器将软件程序翻译成基于某种特定CPU的机器代码,这种代码仅限于这种CPU 而不能移植,并且机器代码不代表硬件结构,更不能改变CPU的硬件结构,只能被动地为其特定的硬件电路结构所利用。
综合器将VHDL程序转化的目标是底层的电路结构网表文件,这种满足VHDL设计程序功能描述的电路结构,不依赖于任何特定硬件环境;具有相对独立性。
综合器在将VHDL(硬件描述语言)表达的电路功能转化成具体的电路结构网表过程中,具有明显的能动性和创造性,它不是机械的一一对应式的“翻译”,而是根据设计库、工艺库以及预先设置的各类约束条件,选择最优的方式完成电路结构的设计。
l-3什么是综合?有哪些类型?综合在电子设计自动化中的地位是什么?P6什么是综合? 答:在电子设计领域中综合的概念可以表示为:将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程。
有哪些类型?答:(1)从自然语言转换到VHDL语言算法表示,即自然语言综合。
(2)从算法表示转换到寄存器传输级(RegisterTransport Level,RTL),即从行为域到结构域的综合,即行为综合。
FPGA应用设计考试试卷+答案+超详细解答
试题区:(试题区必须与答题区同时交回,含答题纸、试题纸、草稿纸的装订试卷不能分拆)一、单项选择题:(20分)1.在VHDL语言中,下列对进程(PROCESS)语句的语句结构及语法规则的描述中,不正确的是___C___。
A.PROCESS为一无限循环语句;敏感信号发生更新时启动进程,执行完成后,等待下一次进程启动。
B.敏感信号参数表中,不一定要列出进程中使用的所有输入信号;C.进程由说明部分、结构体部分、和敏感信号三部分组成;(进程由声明语句、顺序语句、敏感信号列表组成)D.当前进程中声明的变量不可用于其他进程。
2.在一个VHDL设计中idata是一个信号,数据类型为integer,数据范围0 to 127,下面哪个赋值语句是正确的___C___。
(信号赋值符号 <= )A.idata := 32;B.idata <= 16#A0#; (十进制数为:10*16= 160,idata范围为0~127)C.idata <= 16#7#E1;(十进制数为:7*16^1= 112)D.idata := B#1010#;3.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是___C___。
A.FPGA是基于乘积项结构的可编程逻辑器件;(FPGA芯片基于查找表的可编程逻辑结构)B.FPGA是全称为复杂可编程逻辑器件;(FPGA 现场可编程逻辑门阵列,CPLD才是复杂可编程逻辑器件)C.基于SRAM的FPGA器件,在每次上电后必须进行一次配置;D.在Altera公司生产的器件中,MAX7000系列属FPGA结构。
(MAX7000系列属CPLD结构)4.进程中的变量赋值语句,其变量更新是___A___。
(变量(variable)是立即完成的,信号(signal)有延时)A.立即完成;B.按顺序完成;C.在进程的最后完成;D.都不对。
5.VHDL语言是一种结构化设计语言;一个设计实体(电路模块)包括实体与结构体两部分,结构体描述___D___。
复杂可编程逻辑器件CPLD
- -进程语句,用a、b信号触发进程执行
MAX
65 64
23
63
24 25
EPM7128SLC84
62 61
26
60
27
59
28
58
29
57
30
56
31
55
32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54
CPU编程数据经过此端口下
GND
I/O.TD0 载到CPLD中旳
暂存数据。 如: VARIABLE a,b:STD_LOGIC;- -定义a,b为原则逻辑位变量
✓信号阐明语句: 信号有IN、OUT、INOUT、BUFFER4种流动方向。分外部端
口和内部信号,其作用是在设计旳单元电路之间实现互连 如:SIGNAL b:BIT; - -定义b为位逻辑型信号
3.变量与信号旳赋值语句
1脚: 全局清零端
2、83脚: 2个全局时钟输入端
VCCIO
GND VCCINT GND VCCIO
取得最高旳工作速度
专用输入脚,不用时不允许悬空,预防CMOS器件输 入击穿损坏。
VCCIO
GND INPUT/GCLK1
INPUT/OE1 INPUT/GCLRn INPUT/OE2/GCVLCCKIN2T
VHDL语言对硬件系统旳描述, 有三种描述方式:行为描述、 数据流描述、构造化描述。
输入端口描述
逻辑关系描述
输出端口描述
实体(ENTITY)描述
构造体 (ARCHITECTURE) 描述
VHDL 程序
库支持: 定义程序中所涉及旳数据类型、元件和子程序等。
T触发器的设计
摘要在数字系统中,除了能够进行逻辑运算和算术运算的组合逻辑电路外,还需要具有记忆功能的时序逻辑电路。
触发器是最基本、最重要的时序单元电路,也是构成时序逻辑电路的基本单元电路。
触发器由集成逻辑门电路加上适当的反馈电路组成,有两个互补的输出端,其输出状态不仅与输入有关,而且还与原先的输出状态有关。
触发器具有不同的逻辑功能,根据电路结构和触发方式可分成不同的种类。
在所有的触发器中,基本RS触发器是构成其他各种触发器的基础。
将两个RS触发器串联可以组成主从型JK触发器,再将JK触发器的两个输入端J、K连接起来作为一个输入信号,则构成了T触发器。
Altera Quartus II 作为一种可编程逻辑的设计环境,提供了完全集成且与电路结构无关的开发包环境,具有数字设计逻辑的全部特性。
我们可以用这个软件进行T触发器的设计与仿真。
关键词:数字电路T触发器 Quartus目录摘要 (1)1 设计原理说明 (3)1.1 RS触发器和JK触发器的电路结构和逻辑功能 (3)1.2 T触发器原理说明 (5)1.3 EDA技术及设计软件Quartus II介绍 (6)2 T触发器的设计与仿真 (8)2.1 T触发器的硬件实现 (8)2.2 T触发器的编程实现 (10)心得体会 (13)参考文献 (14)T触发器的设计1 设计原理说明1.1 RS触发器和JK触发器的电路结构和逻辑功能在所有的触发器中,结构最简单的是基本RS触发器,基本RS触发器是构成其他各种触发器的基础,其电路形式有两种:与非门结构和或非门结构。
把两个与非门G1、G2的输入、输出端交叉连接,即可构成基本RS触发器,其逻辑电路如图1-1所示。
它有两个输入端R、S和两个输出端Q、_ Q。
图1-1 基本RS触发器结构图基本RS触发器的逻辑方程为:Q1+n=_S+RQ n(1-1)约束方程为:R+S=1 (1-2)表1-1 两个与非门组成的基本RS触发器的功能表R S Q n Q1+n功能000不用不允许001不用0100Q1+n=0,置0 01101001Q1+n=1,置1为了提高触发器工作的可靠性,希望触发器的翻转在某一时刻进行,即要求触发器的输出在一个CP周期内,输出状态只能改变一次。
触发器真值表
任务1触发器电路一、实验目的1、掌握D触发器、JK触发器等基本触发电路的原理与设计2、掌握时序电路的分析与设计的方法3、学习VHDL语言中构造体的不同描述方式的异同二、实验内容1、编写VHDL语言源程序,实现D触发器、JK触发器等基本触发电路2、扩展任务:设计其他如RS触发器,并分析它们相互转化的方法3、通过模拟和仿真,分析和验证各种出发器的逻辑功能及其触发方式三、实验要求1、列写D触发器、JK触发器的真值表2、编写实现D触发器、JK触发器功能的VHDL语言程序3、利用实验装置验证程序正确性,分析触发的方式4、写出完整的实验报告(包括上述图表和程序等)四、实验原理说明1、正边沿触发的D触发器的电路符号如图2-4所示。
从输入输出引脚而言,它有一个数据输入端d,一个时钟输入端clk和一个数据输出端q。
D触发器的真值表如表2-2所示。
从表中可以看出:D触发器的输出端只有在正边沿脉冲过后,输入端d的数据才可以被传递到输出端q。
表1D触发器真值表数据输入端时钟输入端clk 数据输出端qdX 0 不变X 1 不变0 - 01 - 12、带复位和置位功能的JK触发器电路符号如图2-5所示。
JK触发器的输入端有置位输s 复位输入clr,控制输入j和k,时钟输入clk;输出端有数据输出q和反向输出qb。
JK触发器的真值表如表2-3所示。
表2-3JK触发器真值表输入端输出端st clr clk j k Q qb0 1 X X X 1 01 0 X X X 0 10 0 X X X X X1 1 - 0 1 0 11 1 - 1 1 翻转翻转1 1 - 0 0 保持保持1 1 - 1 0 1 01 1 0 X X 保持保持编辑本段真值表定义表征逻辑事件输入和输出之间全部可能状态的表格。
真值表列出命题公式真假值的表。
通常以1表示真,0 表示假。
命题公式的取值由组成命题公式的命题变元的取值和命题联结词决定,命题联结词的真值表给出了真假值的算法。