EDA课后题答案
- 格式:doc
- 大小:342.00 KB
- 文档页数:5
作业3-6module Mux3_1(a1,a2,a3,s0,s1,outy); input a1,a2,a3,s0,s1;output outy;reg outy;reg temp;always @(a2,a3,s0)beginif(s0 == 1'b0)temp = a2;elsetemp = a3;endalways @(a1, temp,s1)beginif(s1 == 1'b0)outy = a1;elseouty = temp;endendmodule作业3-7 半减器module H_suber(x,y,diff,s_out);input x,y;output diff,s_out;reg s_out;wire diff;assign diff = x ^ y;always @(x,y)beginif(x < y)s_out = 1'b1;elses_out = 1'b0;endendmodule全减器module F_suber(x,y,sub_in,diffr,sub_out); input x,y,sub_in;output diffr,sub_out;wire diffr,sub_out;wire H_diff,H_sout,s_out;assign sub_out = s_out || H_sout;H_suber U1 (.x(x),.y(y),.diff(H_diff),.s_out(H_sout));H_suber U2 (.x(H_diff),.y(sub_in),.diff(diffr),.s_out(s_out));Endmodule8位全减器module Bit8_suber(X,Y,Sub_in,Diff,Sub_out);input[7:0] X,Y;input Sub_in;output[7:0] Diff;output Sub_out;wire[7:0] Diff;wire Sub_out;wire[6:0] sub_out;F_suber U1(.x(X[0]),.y(Y[0]),.sub_in(Sub_in),.diffr(Diff[0]),.sub_out(sub_out[0]));F_suber U2(.x(X[1]),.y(Y[1]),.sub_in(sub_out[0]),.diffr(Diff[1]),.sub_out(sub_out[1])); F_suber U3(.x(X[2]),.y(Y[2]),.sub_in(sub_out[1]),.diffr(Diff[2]),.sub_out(sub_out[2])); F_suber U4(.x(X[3]),.y(Y[3]),.sub_in(sub_out[2]),.diffr(Diff[3]),.sub_out(sub_out[3])); F_suber U5(.x(X[4]),.y(Y[4]),.sub_in(sub_out[3]),.diffr(Diff[4]),.sub_out(sub_out[4])); F_suber U6(.x(X[5]),.y(Y[5]),.sub_in(sub_out[4]),.diffr(Diff[5]),.sub_out(sub_out[5])); F_suber U7(.x(X[6]),.y(Y[6]),.sub_in(sub_out[5]),.diffr(Diff[6]),.sub_out(sub_out[6])); F_suber U8(.x(X[7]),.y(Y[7]),.sub_in(sub_out[6]),.diffr(Diff[7]),.sub_out(Sub_out)); Endmodule作业3-13Amodule DFF_A(D,EN,CLK,RST,Q,Q1);input D,EN,CLK,RST;output Q,Q1;reg Q;wire Q1;wire D_temp;assign D_temp = D && EN;assign Q1 = (~D_temp)||RST;always @(negedge RST or posedge CLK)beginif(!RST)Q <= 1'b0;elseif(EN)Q <= D;elseQ <= Q;endmoduleBmodule DFF_B (A,B,C,D,Y);input A,B,C,D;output Y;reg Y;wire temp1,temp2,temp3;assign temp1 = A || B;assign temp2 = C && D;assign temp3 = temp1 ^ temp2; always @(A,temp1,temp3)beginif(temp1)Y = temp3;elseY = A;endendmoduleCmodule DFF_C(RST,D,CLK,Q,DOUT); input RST,D,CLK;output Q,DOUT;reg Q,DOUT;reg D_temp1;wire D_temp2;assign D_temp2 = D ^ D_temp1; always @(RST,D)beginif(RST)D_temp1 = 1'b0;elseD_temp1 = D;endalways @(posedge CLK)beginQ <= D_temp1;DOUT <= D_temp2;endmoduleDmodule DFF_D(SET,D,CLK,EN,RESET,Q);input SET,D,CLK,EN,RESET;output Q;reg Q;wire SET_temp;assign SET_temp = (~RESET) && SET;always @(posedge CLK or posedge RESET or posedge SET_temp) beginif(RESET)Q <= 1'b0;elseif(SET_temp)Q <= 1'b1;elseif(EN)Q <= D;elseQ <= Q;endendmodule8-2.用Mealy机类型,写出控制ADC0809采样的状态机。
红外多路遥控系统单片机红外发射红外接收本文介绍了红外多路遥控系统。
红外多路遥控系统可实现16路的红外开关控制。
以码分制多通道红外遥控为设计的基本思路。
通过键盘及代码生成电路、编码、脉冲调制振荡和红外发射构成红外发射电路。
通过红外接收,解码以及由单片机控制的医码控制电路组成红外接收电路。
1.前言1.1序言随着电子技术的飞速发展,尤其是跨入2000年后,红外技术得到了迅猛发展。
红外遥控已渗透到国民经济的各行各业和人们日常生活的方方面面,在工业自动化、生产控制过程、采集和处理、通信、红外制导、激光武器、电子对抗、环境监测、红外育种安全防范、家用电器控制及日常生活各个方面都得到了广泛的应用。
1.2国内外研究概况目前国内外都在进行红外的研究开发,已取得了相当不错的成绩。
红外技术的研究开发是自动化控制的主要方向。
它的研究针对国民经济的各行各业和人们日常生活的方方面面,在工业自动化、生产控制过程、采集和处理、通信、红外制导、激光武器、电子对抗、环境监测、红外育种安全防范、家用电器控制及日常生活各个方面都在进行红外研究开发和控制。
1.3主要工作概述针对国内外的发展情况,可见红外遥控系统是我国未来智能化发展方向。
本课题要设计的红外多路遥控系统,主要红外发射和红外接收这两部分,本设计依托市面上常见的红外发射和红外接收元器件,使设计具有传输距离一般、硬件简单、安装方便、价格便宜的优点。
本文所介绍的红外多路遥控系统,是采用码分制多通道红外遥控系统装置。
早期的码分制的脉冲指令编码多采用分离元器件及小规模数字集成电路,编码、译码电路弄得很复杂,可靠性也差。
但随着大规模数字集成技术的发展和日趋成熟,各种大规模专用集成编、译码集成器件的层出不穷,使外围元器件很少,电路简单,功能完善。
2.系统总体方案设计2.1方案比较方案一:采用频分制多通道红外遥控发射和接收系统。
频分制的频率编码一般采用频道编码开关,通过改变振荡电路的参数来改变振荡电路的振荡参数和频率。
EDA习题第一章1.1 EDA的英文全称是什么?EDA的中文含义是什么?答:EDA即Electronic Design Automation的缩写,直译为:电子设计自动化。
1.2 什么叫EDA技术?答:EDA技术有狭义和广义之分,狭义EDA技术就是以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件的方式设计的电子系统到硬件系统的逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形成集成电子系统或专用集成芯片的一门新技术,或称为IES/ASIC自动设计技术。
1.3 利用EDA技术进行电子系统的设计有什么特点?答:①用软件的方式设计硬件;②用软件方式设计的系统到硬件系统的转换是由有关的开发软件自动完成的;③设计过程中可用有关软件进行各种仿真;④系统可现场编程,在线升级;⑤整个系统可集成在一个芯片上,体积小、功耗低、可靠性高。
1.4 从使用的角度来讲,EDA技术主要包括几个方面的内容?这几个方面在整个电子系统的设计中分别起什么作用?答:EDA技术的学习主要应掌握四个方面的内容:①大规模可编程逻辑器件;②硬件描述语言;③软件开发工具;④实验开发系统。
其中,硬件描述语言是重点。
对于大规模可编程逻辑器件,主要是了解其分类、基本结构、工作原理、各厂家产品的系列、性能指标以及如何选用,而对于各个产品的具体结构不必研究过细。
对于硬件描述语言,除了掌握基本语法规定外,更重要的是要理解VHDL的三个“精髓”:软件的强数据类型与硬件电路的惟一性、硬件行为的并行性决定了VHDL语言的并行性、软件仿真的顺序性与实际硬件行为的并行性;要掌握系统的分析与建模方法,能够将各种基本语法规定熟练地运用于自己的设计中。
对于软件开发工具,应熟练掌握从源程序的编辑、逻辑综合、逻辑适配以及各种仿真、硬件验证各步骤的使用。
1. 一个项目的输入输出端口是定义在 A 。
A. 实体中B. 结构体中C. 任何位置D. 进程体2. 描述项目具有逻辑功能的是 B 。
A. 实体B. 结构体C. 配置D. 进程3. 关键字ARCHITECTURE定义的是 A 。
A. 结构体B. 进程C. 实体D. 配置4. MAXPLUSII中编译VHDL源程序时要求 C 。
A. 文件名和实体可以不同名B. 文件名和实体名无关C. 文件名和实体名要相同D. 不确定5. 1987标准的VHDL语言对大小写是 D 。
A. 敏感的B. 只能用小写C. 只能用大写D. 不敏感6. VHDL语言中变量定义的位置是 D 。
A. 实体中中任何位置B. 实体中特定位置C. 结构体中任何位置D. 结构体中特定位置7. VHDL语言中信号定义的位置是 D 。
A. 实体中任何位置B. 实体中特定位置C. 结构体中任何位置D. 结构体中特定位置8. 变量是局部量可以写在 B 。
A. 实体中B. 进程中C. 线粒体D. 种子体中9. 变量和信号的描述正确的是 A 。
A. 变量赋值号是:=B. 信号赋值号是:=C. 变量赋值号是<=D. 二者没有区别10. 变量和信号的描述正确的是 B 。
A. 变量可以带出进程B. 信号可以带出进程C. 信号不能带出进程D. 二者没有区别11. 关于VHDL数据类型,正确的是 B 。
A. 数据类型不同不能进行运算B. 数据类型相同才能进行运算C. 数据类型相同或相符就可以运算D. 运算与数据类型无关12. 下面数据中属于实数的是 B 。
A. 4.2B. 3C. …1‟D. “11011”13. 下面数据中属于位矢量的是 D 。
A. 4.2B. 3C. …1‟D. “11011”14. 关于VHDL数据类型,正确的是 B 。
A. 用户不能定义子类型B. 用户可以定义子类型C. 用户可以定义任何类型的数据D. 前面三个答案都是错误的15. 可以不必声明而直接引用的数据类型是 C 。
答案由个人做出,可能有不全或错误之处,欢迎大家批评指正。
欧阳歌谷(2021.02.01)第一章1.EDA的英文全称及其中文含义是什么?答:EDA是Electronic Design Automation,其中文含义是“电子设计自动化”。
2.什么叫EDA技术?简述EDA技术的发展历程。
答:EDA技术有狭义和广义之分,狭义EDA技术就是以大规模可编程逻辑器件为设计载体,以硬件描述语言为系统逻辑描述的主要表达方式,以计算机、大规模可编程逻辑器件的开发软件及实验开发系统为设计工具,通过有关的开发软件,自动完成用软件的方式设计的电子系统到硬件系统的逻辑编译、逻辑化简、逻辑分割、逻辑综合及优化、逻辑布局布线、逻辑仿真,直至完成对于特定目标芯片的适配编译、逻辑映射、编程下载等工作,最终形成集成电子系统或专用集成芯片的一门新技术,或称为IES/ASIC自动设计技术。
3.简述用EDA技术设计电路的设计流程。
答EDA设计流程包括:设计准备、设计输入、设计处理、设计校验、器件编程、器件测试和设计验证。
4.什么叫”综合”和”网表文件”?答:(A)在电子设计领域中综合的概念可以表示为:将用行为和功能层次表达的电子系统转换为低层次的便于具体实现的模块组合装配的过程。
(1)从自然语言转换到VHDL 语言算法表示,即自然语言综合。
(2)从算法表示转换到寄存器传输级(RegisterTransport Level,RTL),即从行为域到结构域的综合,即行为综合。
(3)从RTL 级表示转换到逻辑门(包括触发器)的表示,即逻辑综合。
(4)从逻辑门表示转换到版图表示(ASIC 设计),或转换到 FPGA 的配置网表文件,可称为版图综合或结构综合。
综合在电子设计自动化中处于核心地位。
(B)文件是描述电路的连接关系的文件,一般以文本文件的形式存在。
英文为 netlist file格式有cdl, spice, aucdl...等5.从使用的角度来讲,EDA技术主要包括几个方面的内容?这几个方面在整个电子系统的设计中分别起什么作用?答: EDA技术的学习主要应掌握4个方面的内容:①大规模可编程逻辑器件;②硬件描述语言;③软件开发工具;④实验开发系统。
eda技术及应用课后习题答案eda技术及应用课后习题答案【篇一:eda技术实用教程(第四版)》习题答案】ss=txt>1 习题1-1 eda技术与asic设计和fpga开发有什么关系?fpga在asic 设计中有什么用途?p3~41-2 与软件描述语言相比,vhdl有什么特点? p6l-3 什么是综合?有哪些类型?综合在电子设计自动化中的地位是什么? p51-4 在eda技术中,自顶向下的设计方法的重要意义是什么?p7~101-5 ip在eda技术的应用和发展中的意义是什么? p22~141-6 叙述eda的fpga/cpld设计流程,以及涉及的eda工具及其在整个流程中的作用。
(p11~13)2 习题2-1 olmc(输出逻辑宏单元)有何功能?说明gal是怎样实现可编程组合电路与时序电路的。
p34~362-2 什么是基于乘积项的可编程逻辑结构? p33~34,40 什么是基于查找表的可编程逻辑结构? p40~412-3 fpga系列器件中的lab有何作用? p43~452-5 解释编程与配置这两个概念。
p582-6 请参阅相关资料,并回答问题:按本章给出的归类方式,将基于乘积项的可编程逻辑结构的pld器件归类为cpld;将基于查找表的可编程逻辑结构的pld器什归类为fpga,那么,apex系列属于什么类型pld器件? max ii系列又属于什么类型的pld器件?为什么? p54~563 习题3-1 画出与以下实体描述对应的原理图符号元件:entity buf3s is --实体1:三态缓冲器port(input:in std_logic; --输入端enable:in std_logic; --使能端output:out std_logic); --输出端end buf3s ;entity mux21 is --实体2: 2选1多路选择器port(in0, in1,sel: in std_logic;output:out std_logic);3-2 图3-16所示的是4选1多路选择器,试分别用if_then语句和case语句的表达方式写出此电路的vhdl程序,选择控制信号s1和s0的数据类型为std_logic_vector;当s1=’0’,s0=’0’;s1=’0’,s0=’1’;s1=’1’,s0=’0’和s1=’1’,s0=’1’时,分别执行y=a、y=b、y=c、y=d。
EDA技术与应用课后习题答案(2)END IF;END PROCESS;PR02:PROCESS(s1)BEGINIF s1=”0” THEN outy<=a1;ELSE outy<=tmp;END IF;END PROCESS;END ARCHITECTURE ONE;END CASE;4-4.下图是一个含有上升沿触发的D触发器的时序电路,试写出此电路的VHDL设计文件。
4-4.答案LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;ENTITY MULTI ISPORT(CL:IN STD_LOGIC; --输入选择信号CLK0:IN STD_LOGIC; --输入信号OUT1:OUT STD_LOGIC);--输出端END ENTITY;ARCHITECTURE ONE OF MULTI ISSIGNAL Q : STD_LOGIC;BEGINPR01: PROCESS(CLK0)BEGINIF CLK ‘EVENT AND CLK=’1’THEN Q<=NOT(CL OR Q);ELSEEND IF;END PROCESS;PR02: PROCESS(CLK0)BEGINOUT1<=Q;END PROCESS;END ARCHITECTURE ONE;END PROCESS;4-5.给出1位全减器的VHDL描述。
要求:(1) 首先设计1位半减器,然后用例化语句将它们连接起来,图3-32中h_suber是半减器,diff是输出差,s_out是借位输出,sub_in 是借位输入。
(2) 以1位全减器为基本硬件,构成串行借位的8位减法器,要求用例化语句来完成此项设计(减法运算是 x – y - sun_in = diffr) 4-5.答案底层文件1:or2a.VHD实现或门操作LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY or2a ISPORT(a,b:IN STD_LOGIC;c:OUT STD_LOGIC);END ENTITY or2a;ARCHITECTURE one OF or2a ISBEGINc <= a OR b;END ARCHITECTURE one;底层文件2:h_subber.VHD实现一位半减器LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY h_subber ISPORT(x,y:IN STD_LOGIC;diff,s_out::OUT STD_LOGIC);END ENTITY h_subber;ARCHITECTURE ONE OF h_subber ISSIGNAL xyz: STD_LOGIC_VECTOR(1 DOWNTO 0); BEGINxyz <= x & y;PROCESS(xyz)BEGINCASE xyz ISWHEN "00" => diff<='0';s_out<='0';WHEN "01" => diff<='1';s_out<='1';WHEN "10" => diff<='1';s_out<='0';WHEN "11" => diff<='0';s_out<='0';WHEN OTHERS => NULL;END CASE;END PROCESS;END ARCHITECTURE ONE;顶层文件:f_subber.VHD实现一位全减器LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_UNSIGNED.ALL;ENTITY f_subber ISPORT(x,y,sub_in:IN STD_LOGIC;diffr,sub_out:OUT STD_LOGIC);END ENTITY f_subber;ARCHITECTURE ONE OF f_subber IS COMPONENT h_subberPORT(x,y:IN STD_LOGIC;diff,S_out:OUT STD_LOGIC);END COMPONENT;COMPONENT or2aPORT(a,b:IN STD_LOGIC;c:OUT STD_LOGIC);END COMPONENT;SIGNAL d,e,f: STD_LOGIC;BEGINu1: h_subber PORT MAP(x=>x,y=>y,diff=>d,s_out=>e);u2: h_subber PORT MAP(x=>d,y=>sub_in,diff=>diffr,s_out=>f);u3: or2a PORT MAP(a=>f,b=>e,c=>sub_out);END ARCHITECTURE ONE;END ARCHITECTURE ART;4-6.根据下图,写出顶层文件MX3256.VHD的VHDL设计文件。
第一章
1.什么叫EDA技术及狭义定义(书P1)
Electronic Design Automation--电子设计自动化。
EDA的广义定义范围包括:半导体工艺设计自动化、可编程器件设计自动化、电子系统设计自动化、印刷电路板设计自动化、仿真与测试、故障诊断自动化、形式验证自动化统称EDA 工程。
发展历程:CAD- CAE -EDA
3 .EDA技术的主要内容
实现载体(硬件基础):大规模可编程逻辑器件(PLD_Programmable Logic Device)
描述方式:硬件描述语言(HDL_Hard descripation Lauguage,VHDL,Verilog HDL等)
设计工具:开发软件、开发系统硬件验证:实验开发系统
FPGA 在结构上主要分为三个部分,即可编程逻辑单元,可编程输入/输出单元和可编程连线三个部分。
CPLD在结构上主要包括三个部分,即可编程逻辑宏单元,可编程输入/输出单元和可编程内部连线。
4.硬件描述语言(HDL_Hardware Description Language)
VHDL:IEEE标准硬件描述语言,在电子工程领域,已成为事实上的通用硬件描述语言。
系统级抽象描述能力较强。
Verilog:支持的EDA工具较多,适用于RTL级和门电路级的描述,其综合过程较VHDL稍简单,门级开关电路描述能级较强,但其在高级描述方面不如VHDL。
ABEL:一种支持各种不同输入方式的HDL,系统级抽象描述能力差,适应于门级电路描述。
5. 仿真工具
功能仿真(也叫前仿真、系统级仿真、行为仿真)验证系统的功能。
时序仿真(也叫后仿真、电路级仿真):验证系统的时序特性、系统性能。
6. EDA的工程设计流程(P8)
第二章
1.在系统可编程技术(ISP)定义
ISP(In_System Programmability/Programming)是指对器件、电路板、整个电子系统进行逻辑重构和修改功能的能力。
可在制造前、制造过程中、甚至在交付用户使用后进行。
技术的优越性
设计:设计修改方便,产品面市速度快,减少原材料成本,提高器件及板级的可测试性。
制造:减少制造成本,免去单独编程工序,免去重做印刷电路板的工作(直接编程),大量减少库存,减少预处理成本,提高系统质量及可靠性。
现场服务/支持:提供现场系统重构或现场系统用户化的可能(无需重做电路板),提供遥控现场升级及维护(通过因特网)的可能。
3. CPLD和FPGA的主要区别:
(1)结构上的不同: 最基本的逻辑单元结构差异
(2)集成度的不同(生产工艺决定)CPLD:500-50000门,EEPROM工艺
FPGA: 1K-10M门,SROM工艺
(3)应用范围的不同
CPLD逻辑能力强而寄存器少(1K左右),输入变量多,适应于控制密集型系统;FPGA 逻辑能力较弱(四输入查找表)但寄存器多(100多K),适用于数据密集型系统,输入变量多,需要利用相邻器件,造成器件资源浪费。
(4)使用方法的不同(与生产工艺关联)
4. Altera公司PLD分为两大系列:
MAX(Multiple Array Matrix):多阵列矩阵内部结构:可编程的“与”阵列和固定“或”阵列实现逻辑功能;采用EPROM工艺或EEPROM工艺;属CPLD。
FLEX系列:灵活逻辑单元阵列(Flexible Logic Element Matrix)
5. FLEX10K系列中集成度最小的是EPF10KLC84。
EPF代表是FLEX系列;10代表门数,可用门或系统门,单位以K,即芯片内部包含了10K系统门;LC代表器件封装形式;84代表管脚数。
第三章
1.什么是VHDL
2. 2选1选择器的VHDL描述:
3.VHDL程序基本结构
实体(Entity)结构体(Architecture)配置(Configuration)库(Library)、程序包(Package)4.实体定义
实体是一个设计实体的表层设计单元,定义系统的输入输出端口,是设计实体经封装后对外的一个通信界面。
5.结构体定义
结构体是用于描述设计实体的内部结构以及实体端口间的逻辑关系。
6. VHDL语言要素
四类语言要素:数据对象、数据类型、操作数、操作符
7. 基本标识符中的英文字母不分大小写;VHDL的保留字不能作为标识符使用。
8.数据对象
常量(Constant)变量(Variable)信号(Signal)
三种对象的物理含义:
常量代表数字电路中的电源、地、恒定逻辑值等常数;
变量代表暂存某些值的载体,常用于描述算法;
信号代表物理设计中的某一条硬件连接线,包括输入、输出端口(一般其它高级语言没有)。
9.操作符
VHDL语言
1. 顺序描述语句:
执行顺序与书写顺序一致,与传统软件设计语言的特点相似。
顺序语句只能用在进程与子程序中。
2. case 语句特点
case 语句常用来描述总线或编码、译码行为。
可读性比if 语句强。
Case 语句使用注意:
1)分支条件的值必须在表达式的取值范围内。
2)两个分支条件不能重叠。
3)CASE语句执行时必须选中,且只能选中一个分支条件。
4)如果没有others分支条件存在,则分支条件必须覆盖表达式所有可能的值。
对std_logc, std_logic_vector数据类型要特别注意使用others分支条件。
3. 并发语句
4.进程(process)语句特点
1、进程与进程,或其它并发语句之间的并发性;
2、进程内部的顺序性;
3、进程的启动(执行)与挂起;--仿真
4、进程与进程,或其它并发语句之间的通信。
5. VHDL的层次化设计与元件声明
6. 端口映射方式:
名称关联方式:低层次端口名=>当前层次端口名、信号名
例:or2 port map(o=>n6,i1=>n3,i2=>n1)
位置关联方式:当前层次端口名,当前层次端口名,┈)
例:or2 port map( n3, n1,n6 )
7.基本逻辑电路设计:基本逻辑电路、组合逻辑电路、时序逻辑电路
8.基本门电路(直接调用逻辑运算符)
9.编码器
设计一个8 输入优先级编码器,y0 级别最低,y7 级别最高;输出为3位编码。
方法1:利用if 多选择语句自顶向下的优先特性
方法2:进程内为顺序语句,最先描述优先级最低,最后描述优先级最高,可实现优先级编码。
方法3:利用条件赋值语句
architecture behavior of priority is
begin
vec <= “111” when y7 = ‘1’ else--先判断优先级别最高
“110” when y6 = ‘1’ else
“101” when y5 = ‘1’ else
“100” when y4 = ‘1’ else
“011” when y3 = ‘1’ else
“010” when y2 = ‘1’ else
“001” when y1 = ‘1’ else
“000” when y0 = ‘1’ else
“XXX”; -- 仿真有用,综合被忽略end behavior;
10.译码器:译码器是编码器的逆过程。
如3-8 译码器
方法1:使用process语句
library ieee;
use use entity decoder is
port(inp : in std_logic_vector(2 downto 0);
outp : out std_logic_vector(7 downto 0));
end decoder;
architecture rtl of decoder is
begin
process(inp)
begin
outp<=(others=>’0’);--所有元素全部赋0
outp(conv_integer(inp))<=‘1’;-- 对某一位赋1
end process;
end rtl;
方法3:使用case 语句实现。
方法4:使用条件赋值语句
12.时序逻辑电路设计
触发器、寄存器、计数器、分频器、信号发生器等。
D触发器
异步置位/复位D触发器。