温州医科大学2014-2015学年第1学期《EDA技术与VHDL》作业2
- 格式:docx
- 大小:13.66 KB
- 文档页数:1
eda技术与vhdl设计答案eda技术与vhdl设计答案【篇一:eda技术与vhdl复习练习题】/p> 一、填空题1、pld的中文含义是:________。
2、asic的中文含义是:________。
3、“与-或”结构的可编程逻辑器件主要由四部分构成:________、________、____________和____________。
4、可编程逻辑器件结构图中一般用“x”表示此编程单元为________。
6、可编程逻辑器件结构图中无任何标记表示此编程单元为________。
7、可编程逻辑器件按规模的大小一般分为________和_________。
8、低密度可编程逻辑器件的主要有________和_________。
9、gal器件________取代全部pal器件。
10、pal器件只能________次编程。
11、gal器件能________次编程。
12、gal器件________取代ttl器件。
13、gal器件采用________擦除。
14、pal和gal器件________在系统编程。
15、pal和gal器件需要使用________编程。
二、选择题1、可编程逻辑器件pld的基本结构形式是_______:a:与——与b:与——或c:或——与d:或——或2、可以多次编程的器件是_______:a:prom b:plac:pal d:gal3、pld器件未编程时_______:a:有逻辑功能 b:没有逻辑功能c:pal器件有逻辑功能d:gal 器件有逻辑功能 4、gal器件可以用擦除:a:普通光 b:紫外线c:红外线 d:电5、gal16v8器件的输出引脚最多有______:a:16b:4 c:8 d:206、pal16v8器件的输入引脚最多有_______:a:16 b:4 c:8 d:207、gal16v8不能取代_________:a:pal16v b:74ls138c:74ls373 d:isplsi1032e-70plcc848、gal16v8的_______不可编程:a:与阵列b:或阵列c:输出逻辑宏单元olmc d:a、b都三、判断题1、gal器件的输出逻辑宏单元olmc不能实现pal器件的所有输出形式。
4.大规模可编程器件主要有FPGA、CPLD两类,下列对FPGA结构与工作原理的描述中,正确的是C。
A. FPGA是基于乘积项结构的可编程逻辑器件;B. FPGA是全称为复杂可编程逻辑器件;C. 基于SRAM的FPGA器件,在每次上电后必须进行一次配置;D. 在Altera公司生产的器件中,MAX3000系列属FPGA结构。
5.以下对于进程PROCESS的说法,正确的是: AA. 进程语句本身是并行语句B. 进程内部由一组并行语句来描述进程功能C. 进程之间可以通过变量进行通信D. 一个进程可以同时描述多个时钟信号的同步时序逻辑6.在VHDL语言中,下列对时钟上升沿检测描述中,错误的是C。
A. if clk’event and clk = ‘1’ thenB. if rising_edge(clk) thenC. if clk’event and clk = ‘0’ thenD. if not clk’stable and clk = ‘1’ then7.关于VHDL中的数字,请找出以下数字中数值最大的一个:BA. 2#1111_1110#B. 8#366#C. 10#169#D. 16#F#E18.下列标识符中,B是不合法的标识符。
A. State0B. 9moonC. Not_Ack_0D. signall9.下列语句中,不属于并行语句的是:DA.进程语句B.条件信号赋值语句C.元件例化语句D.IF语句10. 状态机编码方式中,其中 C 占用触发器较多,但其实现比较适合FPGA的应用A. 状态位直接输出型编码B. 顺序编码C. 一位热码编码D. 以上都不是1.在程序中存在两处错误,试指出,并说明理由:14行,TMP和A矢量位宽不一致19行,CASE语句缺少WHEN OTHERS语句处理剩余条件2.修改相应行的程序(如果是缺少语句请指出大致的行数):错误1 行号:9程序改为:SIGNAL TMP : STD_LOGIC_VECTOR(3 DOWNTO 0);错误2 行号:29 程序改为:这行后添加when others => null;SEL COUT 00011011OTHERSA orB A xor B A nor B A and B “XX ”Begin Process (sel, ain, bin) Begin Case sel is when “00” => cout <= ain or bin; when “01” => cout <= ain xor bin; when “10” => cout <= ain and bin; when others => cout <= ain nor bin; End case; End process;End rtl;2. 看下面原理图,写出相应VHDL 描述(10分)DQDFFDQ DFFORyoutOUTPUTxinINPUTclkINPUTLIBARRY IEEE;USE IEEE.STD_LOGIC_1164.ALL; ENTITY MYCIR IS PORT ( XIN, CLK : IN STD_LOGIC; YOUT : OUT STD_LOGIC); END MYCIR;ARCHITECTURE ONE OF MYCIR IS SIGNAL A, B, C; BEGIN B <= XIN OR A; PROCESS (CLK) BEGIN IF CLK’EVENT AND CLK = ‘1’ THEN A <= C; C <= B; END IF; END PROCESS; YOUT <= C; END ONE;六、综合题:(20分)(一)已知状态机状态图如图(a)所示;完成下列各题:1.试判断该状态机类型,并说明理由。
2023年EDA技术与VHDL第二版(潘松著)课后习题答案下载EDA技术与VHDL第二版(潘松著)课后答案下载第1章 EDA技术概述1.1 EDA技术及其发展1.1.1 EDA技术的发展1.1.2 EDA技术的涵义1.1.3 EDA技术的基本特征1.2 EDA技术的主要内容及主要的EDA厂商1.2.1 EDA技术的主要内容1.2.2 主要EDA厂商概述1.3 EDA技术实现目标1.3.1 超大规模可编程逻辑器件1.3.2 半定制或全定制ASIC1.3.3 混合ASIC1.4 EDA技术应用1.4.1 EDA技术应用形式1.4.2 EDA技术应用场合1.5 EDA技术的发展趋势1.5.1 可编程器件的发展趋势1.5.2 软件开发工具的发展趋势1.5.3 输入方式的发展趋势__小结思考题和习题第2章大规模可编程逻辑器件2.1 可编程逻辑器件概述2.1.1 PLD的'发展进程2.1.2 PLD的种类及分类方法2.2 简单可编程逻辑器件2.2.1 PLD电路的表示方法及有关符号 2.2.2 PROM基本结构2.2.3 PLA基本结构2.2.4 PAL基本结构2.2.5 GAL基本结构2.3 复杂可编程逻辑器件2.3.1 CPLD基本结构2.3.2 Altera公司器件2.4 现场可编程逻辑器件2.4.1 FPGA整体结构2.4.2 Xilinx公司FPGA器件2.5 在系统可编程逻辑器件2.5.1 ispLSl/pLSl的结构2.5.2 Lattice公司ispLSI系列器件 2.6 FPGA和CPLD的开发应用2.6.1 CPLD和FPGA的编程与配置2.6.2 FPGA和CPLD的性能比较2.6.3 FPGA和CPLD的应用选择__小结思考题和习题第3章 EDA设计流程与开发3.1 EDA设计流程3.1.1 设计输入3.1.2 综合3.1.3 适配3.1.4 时序仿真与功能仿真3.1.5 编程下载3.1.6 硬件测试3.2 ASIC及其设计流程3.2.1 ASIC设计方法3.2.2 一般的ASIC设计流程3.3 可编程逻辑器件的开发环境 3.4 硬件描述语言3.5 IP核__小结思考题和习题第4章硬件描述语言VHDL4.1 VHDL概述4.1.1 VHDL的发展历程4.1.2 VHDL的特点4.2 VHDL程序基本结构4.2.1 实体4.2.2 结构体4.2.3 库4.2.4 程序包4.2.5 配置4.3 VHDL基本要素4.3.1 文字规则4.3.2 数据对象4.3.3 数据类型4.3.4 运算操作符4.3.5 VHDL结构体描述方式 4.4 VHDL顺序语句4.4.1 赋值语句4.4.2 IF语句4.4.3 等待和断言语句4.4.4 cASE语句4.4.5 LOOP语句4.4.6 RETIARN语句4.4.7 过程调用语句4.4.8 REPORT语句4.5 VHDL并行语句4.5.1 进程语句4.5.2 块语句4.5.3 并行信号代人语句4.5.4 并行过程调用语句4.5.5 并行断言语句4.5.6 参数传递语句4.5.7 元件例化语句__小结思考题和习题第5章 QuartusⅡ软件及其应用5.1 基本设计流程5.1.1 建立工作库文件夹和编辑设计文件 5.1.2 创建工程5.1.3 编译前设计5.1.4 全程编译5.1.5 时序仿真5.1.6 应用RTL电路图观察器5.2 引脚设置和下载5.2.1 引脚锁定5.2.2 配置文件下载5.2.3 AS模式编程配置器件5.2.4 JTAG间接模式编程配置器件5.2.5 USBBlaster编程配置器件使用方法 __小结思考题和习题第6章 VHDL应用实例6.1 组合逻辑电路设计6.1.1 基本门电路设计6.1.2 译码器设计6.1.3 数据选择器设计6.1.4 三态门设计6.1.5 编码器设计6.1.6 数值比较器设计6.2 时序逻辑电路设计6.2.1 时钟信号和复位信号6.2.2 触发器设计6.2.3 寄存器和移位寄存器设计6.2.4 计数器设计6.2.5 存储器设计6.3 综合实例——数字秒表的设计__小结思考题和习题第7章状态机设计7.1 一般有限状态机7.1.1 数据类型定义语句7.1.2 为什么要使用状态机 7.1.3 一般有限状态机的设计 7.2 Moore型有限状态机设计 7.2.1 多进程有限状态机7.2.2 单进程有限状态机7.3 Mealy型有限状态机7.4 状态编码7.4.1 状态位直接输出型编码 7.4.2 顺序编码7.4.3 一位热码编码7.5 状态机处理__小结思考题和习题第8章 EDlA实验开发系统8.1 GW48型实验开发系统原理与应用8.1.1 系统性能及使用注意事项8.1.2 GW48系统主板结构与使用方法8.2 实验电路结构图8.2.1 实验电路信号资源符号图说明8.2.2 各实验电路结构图特点与适用范围简述8.3 GW48CK/GK/EK/PK2系统信号名与芯片引脚对照表 __小结思考题和习题第9章 EnA技术实验实验一:全加器的设计实验二:4位加减法器的设计实验三:基本D触发器的设计实验四:同步清零计数器的设计实验五:基本移位寄存器的设计串人/串出移位寄存器实验六:同步预置数串行输出移位寄存器的设计实验七:半整数分频器的设计实验八:音乐发生器的设计实验九:交通灯控制器的设计实验十:数字时钟的设计EDA技术与VHDL第二版(潘松著):内容简介《EDA技术与VHDL》主要内容有Altera公司可编程器件及器件的选用、QuartusⅡ开发工具的使用;VHDL硬件描述语言及丰富的数字电路和电子数字系统EDA设计实例。
第3章 VHDL 基础3-1 如图所示inputoutputenablebuf3smux21in0in1outputsel3-2程序: IF_THEN 语句 LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ; ENTITY mux21 SPORT ( s1,s0 : IN STD_LOGIC_VECTOR ; a,b,c,d : IN STD_LOGIC ; y : OUT STD_LOGIC ) ; END ENTITY mux21 ;ARCHITECTURE one OF mux21 IS BEGINPROCESS ( s0,s1,a,b,c,d ) BEGINIF s1=‟0‟ AND s0=‟0‟ THEN y<=a ; ELSIF s1=‟0‟ AND s0=‟1‟ THEN y<=b ; ELSIF s1=‟1‟ AND s0=‟0‟ THEN y<=c ; ELSIF s1=‟1‟ AND s0=‟1‟ THEN y<=d ; ELSE y<=NULL ; END IF ;END PROCESS ; END ARCHITECTURE one ;CASE 语句LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ; ENTITY mux21 ISPORT ( s1,s0 : IN STD_LOGIC_VECTOR ;a,b,c,d : IN STD_LOGIC ;y : OUT STD_LOGIC ) ;END ENTITY mux21 ;ARCHITECTURE two OF mux21 ISSIGNAL s : STD_LOGIC_VECTOR ( 1 DOWNTO 0 ) ;BEGINs<=s1 & s0 ;PROCESS ( s )BEGINCASE s ISWHEN “00” => y<=a ;WHEN “01” => y<=b ;WHEN “10” => y<=c ;WHEN “11” => y<=d ;WHEN OTHERS => NULL ;END CASE ;END PROCESS ;END ARCHITECTURE two ;3-3 程序:LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;ENTITY MUXK ISPORT ( s0,s1 : IN STD_LOGIC ;a1,a2,a3 : IN STD_LOGIC ;outy : OUT STD_LOGIC ) ;END ENTITY MUXK ;ARCHITECTURE double OF MUXK ISSIGNAL tmp : STD_LOGIC ; --内部连接线SIGNAL u1_s, u1_a, u1_b, u1_y : STD_LOGIC ;SIGNAL u2_s, u2_a, u2_b, u2_y : STD_LOGIC ;BEGINp_MUX21A_u1 : PROCESS ( u1_s, u1_a, u1_b, u1_y )BEGINCASE u1_s ISWHEN …0‟ => u1_y<= u1_a ;WHEN …1‟ => u1_y<= u1_b ; WHEN OTHERS => NULL ; END CASE ;END PROCESS p_ MUX21A_u1 ;p_ MUX21A_u2 : PROCESS ( u2_s, u2_a, u2_b, u2_y ) BEGINCASE u2_s ISWHEN …0‟ => u2_y<= u2_a ;WHEN …1‟ => u2_y<= u2_b ; WHEN OTHERS => NULL ; END CASE ;END PROCESS p_ MUX21A_u2 ; u1_s<= s0 ; u1_a<= a2 ; u1_b<= a3 ; tmp<= u1_y ;u2_s<=s1 ; u2_a<= a1 ; u2_b<= tmp; outy <= u2_y ;END ARCHITECTURE double ; 3-4 程序:(1)1位半减器x y 00011011被减数减数高位低位0000s_out diff 111 s_out= x · y diff= x · y + x · y(2)1位半减器的设计选用(2)图,两种表达方式:一、LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;ENTITY h_suber ISPORT ( x,y : IN STD_LOGIC ;s_out ,diff : OUT STD_LOGIC ) ;END ENTITY h_suber ;ARCHITECTURE fhd1 OF h_suber ISBEGINdiff<=x XOR y ; s_out<= ( NOT a ) AND b ;END ARCHITECTURE fhd1 ;二、LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;ENTITY h_suber ISPORT ( x,y : IN STD_LOGIC ;s_out ,diff : OUT STD_LOGIC ) ;END ENTITY h_suber ;ARCHITECTURE fhd1 OF h_suber ISSIGNAL s : STD_LOGIC_VECTOR ( 1 DOWNTO 0 ) ;BEGINs<= x & y ;PROCESS ( s )BEGINCASE s ISWHEN “00” => s_out <=‟0‟ ; diff<=‟0‟ ;WHEN “01” => s_out <=‟1‟ ; diff<=‟1‟ ;WHEN “10” => s_out <=‟0‟ ; diff<=‟1‟ ;WHEN “11” => s_out <=‟0‟ ; diff<=‟0‟ ;WHEN OTHERS => NULL ;END CASE ;END PROCESS ;LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;ENTITY or ISPORT ( a,b : IN STD_LOGIC ;c : OUT STD_LOGIC ) ;END ENTITY or ;ARCHITECTURE one OF or ISBEGINc<= a OR b ;END ARCHITECTURE one ;1位全减器:LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;ENTITY f_suber ISPORT ( x,y,sub_in : IN STD_LOGIC ;sub_out ,diffr : OUT STD_LOGIC ) ;END ENTITY f_suber ;ARCHITECTURE fhd1 OF f_suber ISCOMPONENT h_suber ISPORT ( x,y : IN STD_LOGIC ;s_out ,diff : OUT STD_LOGIC ) ;END COMPONENT h_suber ;COMPONENT or ISPORT ( a,b : IN STD_LOGIC ;c : OUT STD_LOGIC ) ;END COMPONENT or ;SIGNAL d,e,f : STD_LOGIC ;BEGINu1 : h_suber PORT MAP ( x=>x, y=>y, diff=>d, s_out=>e ) ;u2 : h_suber PORT MAP ( x=>d, y=>sub_in, diff=>diffr, s_out=>f ) ;u3 : or PORT MAP ( a=>f, b=>e, c=>sub_out ) ;END ARCHITECTURE fhd1 ;(2)8位减法器:f_suber sub_in x ysub_out4f_subersub_in x ysub_out5f_subersub_in x ysub_out6f_subersub_in x ysub_out7sub_out e f gu4u5u6u7LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;ENTITY 8f_suber ISPORT ( x0,x1,x2,x3,x4,x5,x6,x7 : IN STD_LOGIC ;y0,y1,y2,y3,y4,y5,y6,y7 : IN STD_LOGIC ;sub_in : IN STD_LOGIC ;sub_out : OUT STD_LOGIC ;diffr0,diffr1,diffr2,diffr3 : OUT STD_LOGIC ;diffr4,diffr5,diffr6,diffr7 : OUT STD_LOGIC ) ;END ENTITY 8f_suber ;ARCHITECTURE 8fhd1 OF 8f_suber ISCOMPONENT f_suber ISPORT ( x,y,sub_in : IN STD_LOGIC ;sub_out ,diffr : OUT STD_LOGIC ) ;END COMPONENT f_suber ;SIGNAL a,b,c,d,e,f,g : STD_LOGIC ;BEGINu0 : f_suber PORT MAP ( x=>x0, y=>y0, sub_in=>, sub_out=>a, diff=>diff0 ) ;u1 : f_suber PORT MAP ( x=>x1, y=>y1, sub_in=>a, sub_out=>b, diff=>diff1 ) ;u2 : f_suber PORT MAP (x=>x2, y=>y2, sub_in=>b, sub_out=>c, diff=>diff2 ) ;u3 : f_suber PORT MAP (x=>x3, y=>y3, sub_in=>c, sub_out=>d, diff=>diff3 ) ;u4 : f_suber PORT MAP (x=>x4, y=>y4, sub_in=>d, sub_out=>e, diff=>diff4 ) ;u5 : f_suber PORT MAP (x=>x5, y=>y5, sub_in=>e, sub_out=>f, diff=>diff5 ) ;u6 : f_suber PORT MAP (x=>x6, y=>y6, sub_in=>f, sub_out=>g, diff=>diff6 ) ;u7 : f_suber PORT MAP (x=>x7, y=>y7, sub_in=>g, sub_out=> sub_out, diff=>diff7 ) ;END ARCHITECTURE 8fhd1 ;3-5 程序:或非门逻辑描述:LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;ENTITY nor ISPORT ( d, e : IN STD_LOGIC ;f : OUT STD_LOGIC ) ;END ENTITY nor ;ARCHITECTURE one OF nor ISBEGINf <= NOT ( d OR e ) ;END ARCHITECTURE one ;时序电路描述:LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;ENTITY circuit ISPORT ( CL, CLK0 : IN STD_LOGIC ;OUT1 : OUT STD_LOGIC ) ;END ENTITY circuit ;ARCHITECTURE one OF circuit ISCOMPONENT DFF1 ISPORT ( CLK : IN STD_LOGIC ;D : IN STD_LOGIC ;Q : OUT STD_LOGIC ) ;END COMPONENT DFF1 ;COMPONENT nor ISPORT ( d, e : IN STD_LOGIC ;f : OUT STD_LOGIC ) ;END COMPONENT nor ;COMPONENT not ISPORT ( g : IN STD_LOGIC ;h : OUT STD_LOGIC ) ;END COMPONENT not ;SIGNAL a, b : STD_LOGIC ;BEGINu0 : nor PORT MAP ( d=>b, e=>CL, f=>a ) ;u1 : DFF1 PORT MAP ( CLK=>CLK0, D=>a, Q=>b ) ;u2 : not PORT MAP ( g=>b, h=>OUT1 ) ;END ARCHITECTURE one ;3-6 LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;ENTITY MX3256 ISPORT( INA,INB,INCK,INC: IN STD_LOGIC ;E,OUT1: OUT STD_LOGIC) ;END ENTITY MX3256;ARCHITECTURE one OF MX3256 ISCOMPONENT LK35 ISPORT ( A1,A2,CLK: IN STD_LOGIC ;O1,O2: OUT STD_LOGIC) ;END COMPONENT LK35;BEGIN3-7LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;USE IEEE.STD_LOGIC_unsigned.ALL ;ENTITY CNT ISPORT( CLK,EN,RST,opcode: IN STD_LOGIC ;CQ: OUT STD_LOGIC_VECTOR(15 DOWNTO 0) ;COUT: OUT STD_LOGIC) ;END ENTITY CNT;ARCHITECTURE behav1 OF CNT ISBEGINPROCESS( RST,EN,CLK,opcode )VARIABLE CQI: STD_LOGIC_VECTOR( 15 DOWNTO 0) ;beginIF RST=‟1‟ THEN CQI:=( OTHERS=>‟0‟) ;ELSIF EN=‟1‟ THENIF CLK‟EVENT AND CLK=‟1‟ THENCASE opcode ISWHEN …0‟ =>CQI:=CQI+1;WHEN …1‟ =>CQI:=CQI-1;WHEN OTHERS =>NULL;END CASE;END IF;END IF;CASE opcode ISWHEN …0‟ => IF CQI=65535 THEN COUT<=‟1‟;ELSE COUT<=‟0‟;END IF;WHEN …1‟ => IF CQI=0 THEN COUT<=‟1‟;ELSE COUT<=‟0‟;END IF;WHEN OTHERS =>NULL;END CASE;CQ<=CQI;END PROCESS;END behav1;3-83-93-103-113-123-133-14程序1:SIGNAL A,EN : STD_LOGIC ;PROCESS ( A, EN )VARIABLE B : STD_LOGIC ;BEGINIF EN = …1‟THEN B := A ;END IF ;END PROCESS ;程序2:ARCHITECTURE one OF sample ISBEGINPROCESS ( )VARIABLE a,b,c : integer range…;BEGINc := a+b ;END PROCESS;END ARCHITECTURE one ;程序3:LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;ENTITY mux21 ISPORT ( a,b : IN STD_LOGIC ;sel : IN STD_LOGIC ;c : OUT STD_LOGIC ) ;END ENTITY mux21 ;ARCHITECTURE one OF mux21 ISBEGINPROCESS ( )BEGINIF sel = …0‟THEN c<=a ;ELSE c<=b ;END IF ;END PROCESS;END ARCHITECTURE one ;第4章Quartus II使用方法习题4-1第5章VHDL状态机习题5-1 例5-4(两个进程):LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;ENTITY MOORE1 ISPORT ( DATAIN : IN STD_LOGIC_VECTOR ( 1 DOWNTO 0 ) ;CLK,RST : IN STD_LOGIC ;Q : OUT STD_LOGIC_VECTOR ( 3 DOWNTO 0 ) ) ;END ENTITY MOORE1 ;ARCHITECTURE behav OF MOORE1 ISTYPE ST_TYPE IS ( ST0,ST1,ST2,ST3,ST4 ) ;SIGNAL C_ST ,N_ST : ST_TYPE ;BEGINREG : PROCESS ( RST ,CLK )BEGINIF RST=‟1‟THEN C_ST<=ST0; Q<=”0000”;ELSIF CLK ‟EVENT AND CLK=‟1‟THENC_ST<=N_ST ;END IF ;END PROCESS ;COM : PROCESS (C_ST , DATAIN)BEGINCASE C_ST ISWHEN ST0 =>IF DATAIN = “10”THEN N_ST <= ST1 ;ELSE N_ST <= ST0 ;END IF ;Q <=”1001” ;WHEN ST1 =>IF DATAIN = “11”THEN N_ST <= ST2 ;ELSE N_ST <= ST1 ;END IF ;Q <=” 0101” ;WHEN ST2 =>IF DATAIN = “01”THEN N_ST <= ST3 ;ELSE N_ST <= ST0 ;END IF ;Q <=” 1100” ;WHEN ST3 =>IF DATAIN = “00”THEN N_ST <= ST4 ;ELSE N_ST <= ST2 ;END IF ;Q <=” 0010” ;WHEN ST4 =>IF DATAIN = “11”THEN N_ST <= ST0 ;ELSE N_ST <= ST3 ;END IF ;Q <=” 1001” ;WHEN OTHERS => N_ST <= ST0 ;END CASE ;END PROCESS ;END ARCHITECTURE behav ;5-2 例5-5(单进程):LIBRARY IEEE ;USE IEEE.STD_LOGIC_1164.ALL ;ENTITY MEALY1 ISPORT ( CLK, DATAIN ,RESET : IN STD_LOGIC ;Q : OUT STD_LOGIC_VECTOR ( 4 DOWNTO 0 ) ) ;END ENTITY MEALY1 ;ARCHITECTURE behav OF MEALY1 ISTYPE states IS ( st0,st1,st2,st3,st4 ) ;SIGNAL STX : states ;BEGINPROCESS ( CLK, RESET )BEGINIF RESET = …1‟THEN STX<= st0 ;ELSIF CLK‟ EVENT AND CLK = …1‟THENCASE STX ISWHEN st0 =>IF DATAIN = …1‟THEN STX<= st1; Q<=”10000” ;ELSE Q<=”01010” ;END IF ;WHEN st1 =>IF DATAIN = …0‟THEN STX<= st2; Q<=”10111” ;ELSE Q<=” 10100” ;END IF ;WHEN st2 =>IF DATAIN = …1‟THEN STX<= st3; Q<=”10101” ;ELSE Q<=” 10011” ;END IF ;WHEN st3 =>IF DATAIN = …0‟THEN STX<= st4; Q<=”11011” ;ELSE Q<=” 01001” ;END IF ;WHEN st4 =>IF DATAIN = …1‟THEN STX<= st0; Q<=”11101” ;ELSE Q<=” 01101” ;END IF ;WHEN OTHERS => STX<=st0; Q<=”00000” ;END CASE ;END PROCESS ;END ARCHITECTURE behav ;5-3 序列检测器:要求1:要求2:要求3:5-45-5第6章16位CISC CPU设计习题6-16-26-36-46-56-66-76-8第7章VHDL语句习题7-17-27-37-4 因为每条并行赋值语句在结构体中是同时执行的,所以每条并行赋值语句都相当于一条缩写的进程语句,这条语句的所有输入信号都被隐性地列入此缩写进程的敏感信号表中。
EDA試卷答案一、单项选择题1、2. 基于EDA软件的FPGA/CPLD设计流程为:原理图/HDL文本输入→__A__→综合→适配→____B____→编程下载→硬件测试。
P14A. 功能仿真B. 时序仿真C。
逻辑综合D。
配置3. IP核在EDA技术和开发中具有十分重要的地位;提供用VHDL等硬件描述语言描述的功能块,但不涉及实现该功能块的具体电路的IP核为__A___.P25A. 软IPB. 固IPC。
硬IP D。
全对4。
综合是EDA设计流程的关键步骤,在下面对综合的描述中,_____D____是错误的。
P15A。
综合就是把抽象设计层次中的一种表示转化成另一种表示的过程。
B. 综合就是将电路的高级语言转化成低级的,可与FPGA / CPLD的基本结构相映射的网表文件。
C. 为实现系统的速度、面积、性能的要求,需要对综合加以约束,称为综合约束。
D. 综合可理解为,将软件描述与给定的硬件结构用电路网表文件表示的映射过程,并且这种映射关系是唯一的(即综合结果是唯一的)。
5. 大规模可编程器件主要有FPGA、CPLD两类,其中CPLD通过___A__实现其逻辑功能。
P42A. 可编程乘积项逻辑B. 查找表(LUT)C。
输入缓冲 D. 输出缓冲6。
VHDL语言是一种结构化设计语言;一个设计实体(电路模块)包括实体与结构体两部分,结构体描述_____B___.P274A. 器件外部特性B。
器件的内部功能C. 器件外部特性与内部功能D. 器件的综合约束7. 电子系统设计优化,主要考虑提高资源利用率减少功耗(即面积优化),以及提高运行速度(即速度优化);下列方法中___A___不属于面积优化.P238A。
流水线设计B。
资源共享C。
逻辑优化 D. 串行化8. 进程中的信号赋值语句,其信号更新是___B____。
P134A. 立即完成B。
在进程的最后完成C。
按顺序完成 D. 都不对9。
不完整的IF语句,其综合结果可实现__A__。
《VHDL语言与EDA技术》课程试卷(1)答案一、分析下列代码。
1、试分析,该代码描述的是什么功能电路?答:模8计数器2、试分析,该代码描述的是什么功能电路?答:四位二进制码输入,LED七段码显示电路若不写第24行代码,是否可以?说明理由。
答:不可以,否则输入0000-1001以外的数据时就无法继续执行代码。
3、试分析,在该代码中,第8行“f<=temp1 XOR temp2;”写在第九行“temp1<=a AND b; ”和第十行“temp2<=c OR d;”前面,这种书写顺序对功能的实现有没有影响?答:没有该代码中有一个错误,在第4行,此行语句应改为END exam;4、试分析,该代码描述的是什么功能电路?答:通用译码器第4句中的端口ena 是使能信号输入端,在此代码描述的电路中,ena为0还是为1时电路能有效完成期望功能?答:1此代码描述中,第11句和第12句中,x'high 代表的值是多少?答:7二、填空,补全下列代码。
1、output: OUT std_logic_vector( 7 downto 0) );(OTHERS=>' Z');2、q:OUT STD_LOGIC_VECTOR (1 DOWNTO 0));SIGNAL q_tmp: STD_LOGIC_VECTOR(1 DOWNTO 0);process( clk)IF(clk'event and clk=' 1 ')thenq_tmp <= ( others =>'0');end if;end process ;end rtl;三、设计程序,完成下列功能1、LIBRARY ieee;USE ieee.std_logic_1164.all;ENTITY fulladder ISPORT (a, b, cin: IN BIT;s, cout: OUT BIT);END fulladder;ARCHITECTURE rtl OF fulladder ISBEGINs<=a XOR b XOR cin;cout<=(a AND B) OR (a AND cin) OR (b AND cin);END rtl;2、LIBRARY ieee;USE ieee.std_logic_1164.all;ENTITY dff1 ISPORT(d, clk, rst: IN STD_LOGIC;q: OUT STD_LOGIC);END dff1;ARCHITECTURE behavior OF dff1 ISBEGINPROCESS (rst, clk)BEGINIF (rst='1') THENq<='0';ELSIF ( clk'EVENT AND clk='1' ) THENq<=d;END IF;END PROCESS;END behavior;四、简答题1、进程(process)内部的语句是一种顺序描述语句,其内部经常包括if,wait,case或loop语句。
班级 学号 姓名密 封 线 内 不 得 答 题一、单项选择题(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 。
一、VHDL基本结构1. 一个项目的输入输出端口是定义在A. 实体中B. 结构体中C. 任何位置D. 进程中2. 描述项目逻辑功能的是A. 实体B. 结构体C. 配置D. 进程3. 关键字ARCHITECTURE定义的是A. 结构体B. 进程C. 实体D. 配置4.VHDL语言共支持四种常用库,其中哪种库是用户的VHDL设计现行工作库:A.IEEE库B.VITAL库C.STD库D.WORK工作库5. VHDL语言是一种结构化设计语言;一个设计实体(电路模块)包括实体与结构体两部分,结构体描述是A.器件外部特性;B.器件的内部功能;C.器件的综合约束;D.器件外部特性与内部功能。
6. 在VHDL中,库可以包含一个或多个A. 程序包B. 结构体C. 输入D. 输出7. 一个能为VHDL综合器接受,并能作为一个独立的设计单元的完整的VHDL程序成为A.设计输入 B. 设计输出 C. 设计实体 D. 设计结构8. Q为输出信号,但内部设计会用到其反馈信号,其正确的端口说明是:A. Q:IN BIT;B. Q:OUT BIT;C. Q:INOUT BIT;D. Q:BUFFER BIT;9.VHDL语言程序结构的特点是把一个设计实体分成A.外部和内部B.实体和实体说明C.结构体和结构体说明D.图形部分和文本部分10. VHDL设计文件的实体说明部分描述的是A.电路系统的内部结构B.电路系统的逻辑功能C.电路系统的主要参数D.电路系统的外部端口11.VHDL语言程序结构中必不可少的部分是:A.库B.程序包C.配置D.实体和结构体12. 下列选项中,哪些项在VHDL程序设计文件中属于可选部分A.库和实体B.实体和结构体C.结构体和配置D. 库、程序包和配置13. 关于VHDL中实体说明的格式,以下叙述不正确的是A.实体说明以“ENTITY 实体名 IS”开头,以“END 实体名”结束B.实体说明中包含类属表和端口说明两部分C.端口说明中只需要规定端口的模式即可D.实体名一定要与设计文件同名14. 在VHDL的实体说明中,端口名表的作用是A.列出所有输入端口的名称B.列出所有输出端口的名称C.说明实体输入、输出端口的信号类型及端口模式D.只定义输入、输出端口的数目15. 在VHDL中,为了使已声明的数据类型、子程序、元件能被其他设计实体调用或共享,可以把它们汇集在中。