1、value 即 +/-进制数字size 为对应二进制数的宽度;base为进制;value是基于进制的数字序列。进制有如下4种表示形式: 二进制(b或B)、十进制(d或D或缺省)、十六进制(h或H)、八进制(o或O)9、定义reg型标量型变量:reg qout; /变量名 qout10、定义wire型向量:wire7:0 databus; /databus的宽度是8位11、在状态机设计中使用一位热码定义5种状态,并定义状态变量:parameter s0=5b00001,s1=5b 00010,s2=5b 00100,s3=5b 01000,s4=5b 10000;reg 4:0 state,ne
2、xt_state;12、在状态机设计中使用顺序码定义5种状态,并定义状态变量:parameter s0=3b 000,s1=3b 001,s2=3b 010,s3=3b 011,s4=3b 100;reg 2:一、 选择题(多选)1、成为IEEE标准的HDL有( CD ) A、ABEL-HDL B、AHDL C、VHDL D、Verilog HDL2、Quartus II 是 ( A )公司的( D )开发工具。A、Altera B、Xilinx C、Lattice D、集成 E、专用F、第三方3、ModelSim 是Mentor公司的出色的(C )软件,它属于编译型( C )器,速度快,功能
3、强。A、综合B、编译C、仿真、D、布局布线E、编程配置4、使用Altera 公司的Quartus II 和FPGA器件能够进行( BEF )设计。A、模拟电路设计B、数字电路设计C、PCB设计D、高速电路设计E、DSP设计F、SOPC设计5、使用Verilog HDL进行逻辑设计,端口类型有( ABC )A、input B、outputC、inout D、buffer6、使用Verilog HDL进行逻辑设计,可综合的变量类型有( ABF )A、regB、wireC、bufferD、stringE、doubleF、integer7、a=5b11001; b=5b10101;下面那个是正确的 (
4、 ABCD )A、a=5b00110;B、 a&b=5b10001;C、 a|b=5b11101; 8、下面那些语句可以被综合成电路 ( BCDE )F、whileA、initial B、always C、assign D、define E、for二、 判断题1、VHDL 和 Verilog HDL是一种HDL的两种名称 ( )2Verilog HDL 是IEEE标准 ()3、相同的电路逻辑即可使用原理图方法输入也可使用HDL语言输入 ( )4、Verilog HDL语言编写的程序都是可以被综合的,都能形成网表电路。 ( 5、Verilog HDL语言即可用来做可综合的功能模块设计,又可以编写
5、仿真文件实现对模块的测试。 ( )6、“?”是高阻Z的另一种表述符号。 ( ) 7COUNT与count是相同的标识符名称。8、Verilog语言内部已经使用的词称为关键字或保留字,这些保留字用户不能作为变量或节点名字使用。关键字都是大写的。 ) 9、下面3中连接符的使用能实现相同的功能 ( )A、 3 a,b ;B、 a,b , a,b , a,b ;C、 a , b , a , b , a , b 10initial语句可以被综合器综合成电路。三、编程题6、用for语句描述七人投票表决器module voter7(pass,vote);output pass;input6:0 vote;r
6、eg2:0 sum;integer i;reg pass;always (vote) begin sum=0;for(i=0;i=6;i=i+1) /for语句if(votei) sum=sum+1;if(sum2) pass=1; /超过4人赞成,则通过else pass=0; End endmodule8、4选1数据选择器module mux4_1(out,in0,in1,in2,in3,sel);output out;input in0,in1,in2,in3;input1:0 sel; reg out;always (in0 or in1 or in2 or in3 or sel) /
7、敏感信号列表case(sel) 2b00: out=in0;b01: out=in1;b10: out=in2;b11: out=in3; default: out=x;endcaseendmodule13、带同步清0/同步置1(低电平有效)的D触发器module dff_syn(q,qn,d,clk,set,reset);input d,clk,set,reset; output reg q,qn;always (posedge clk) begin if(reset) begin q=1b0;qnb1;end /同步清0,低电平有效else if(set) begin qend /同步置1
8、,低电平有效else begin q=d; qn=d; end14、带异步清0/异步置1(低电平有效)的D触发器module dff_asyn(q,qn,d,clk,set,reset);always (posedge clk or negedge set or negedge reset)if(reset) begin q end /异步清0,低电平有效 /异步置1,低电平有效else begin q18、分频器设计(偶数等占空比分频;1:15占空比分频)A、module div6(clk,rst,clk6);input rst,clk;output clk6;reg clk6;reg 1:
9、0 cnt;always(posedge clk or posedge rst)begin if(rst=1b1) cnt=2b00; else if(cnt=2)begin clk6=clk6; end else cnt=cnt+1;endmodule B、module div1_15(clk,rst, clk16);output clk16;reg clk16;reg 3:=4b0000; clk16=1b0; else if(clk16=15) =1b1; else clk1619、画出状态转移图,并采用有限状态机设计一个彩灯控制器,要求控制8个LED灯实现如下的演示花型:从两边往中间逐
10、个亮;全灭;从中间往两头逐个亮;循环执行上述过程LIBRARY IEEE;USE IEEE.STD_LOGIC_1164.ALL;USE IEEE.STD_LOGIC_Arith.ALL;USE IEEE.STD_LOGIC_Unsigned.ALL;ENTITY sfwy ISPORT(clk:IN STD_LOGIC;led: OUT STD_LOGIC_VECTOR(7 DOWNTO 0);end;ARCHITECTURE one OF sfwy ISsignal led_r: std_logic_vector(8 DOWNTO 0);signal tmp:std_logic_vecto
11、r(25 downto 0);signal q:std_logic;beginprocess(clk)if clk event and clk=1then tmp=tmp+1;end if;end process;q=tmp(25);led=led_r(7 DOWNTO 0);process(q) if qevent and q=then led_r=led_r(7 DOWNTO 0) &0; if led_r=000000000 THEN-循环完毕吗? led_r=111111111-是,则重新赋初值 end if; end if;end one;20、画出状态转移图,并采用有限状态机设计一个“1001”串行数据检测器。其输入、输出如下所示:输入x:000 101 010 010 011 101 001 110 101输出z:000 000 000 010 010 000 001 000 000 初始状态设为s0,此时检测数据序列为“0000”,当再检测到一个0时,仍为s0,当检测到1时,进入下一个状态s1,此时序列为“0001”;当在状态s1检测到0时,进入到状态s2,此时序列为“0010”,当检测到1时,仍为s1;当在状态s2检测
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1