文档详情

请给出FPGA的设计流程.doc

发布:2017-05-28约4.33千字共4页下载文档
文本预览下载声明
请给出FPGA的设计流程,包含哪几个主要流程。 简述有限状态机FSM分为哪两类?有何区别?(p178) 有限状态机(FSM)分为Moore型有限状态机和Mealy型有限状态机。 区别:Moore型状态机的输出只依赖于状态,而与其输入无关,为这种有限状态机的行为进行建模,可以通过在always语句块内使用case语句实现,在每个case分支都应当有输出值及状态转换。在Mealy有限状态机中,输出不仅取决于当前的状态而且和当前的输入值有关。描述Mealy型状态机的办法是使用两个always语句,一个用来描述时序逻辑,另一个用来描述组合逻辑,Moore型状态机进行行为建模,可以通过always语句块内使用case语句来实现。 FIFO是一种什么设备?有什么特点?常作为什么设备使用?(p185) 、FIFO(先入先出电路)是一种可以实现数据先入先出的存储器件。FIFO就像一个单向管道,数据只能按固定的方向从管道一头进来,再按相同的顺序从管道另一头出去,最先进来的数据必定是最先出去。FIFO被普遍用作数据缓冲器。 通用异步收发器(UART) 分为哪两部分?分别实现什么功能?(p196) 通用异步收发器(UART) 分为发射端和接收端两部分。发射端 使用行为建模方法给出全加器的程序描述. module A DD(A , B, cin,cout,sum); input A,B,cin; output sum,cout; reg sum,cout; reg T1,T2,T3; always @(A or B or cin) begin sum=(A^B)^cin; T1=Acin; T2=Bcin; T3=AB; Cout=(T1|T2)|T3; end endmodule 给出一个带同步复位端的下降沿触发器程序. module dff (data,clk,reset,out); input data,clk,reset; output out; reg out; always@( negdge clk) if(! reset) out=1’b0; else out =data; endmodule 给出一个异步复位端的8位计数器的程序. module count (out,date,clk,reset); parameter Width=8; input clk,reset; input [Width-1:0] data; output [Width-1:0] out; reg [Width-1:0] out; always @(posedge clk or negedge reset) if (!reset) out=8`b0; else out=out+1; endmodule 给出异步复位端的锁存器程序. module d (reset ,enable,data,q); input reset, enable,data; output q; reg q; always @ (reset or enable or data) if(~reset) q=1`b0; else if (enable) q=data; endmodule 给出序列检测器检测“01101”的状态机流程图以及状态机的主要程序部分. module deltect (in, out, clock,reset) input in,clock,reset; output out; reg [2:0] state; wire out parameter START=3`b000, A=3`b001, B=3`b010, C=3`b011, D=3`b100, E=3`b101, F=3`b110, G=3`b111; assign out =(state ==Din==1)?1:0; always @(posedge clock or negedge reset) if(!reset) begin state =START; end else Case x (state) START; if (in==0) state=A; else state=START; A: if (in==1) state=B; else state=A; B: if (in==1) state=C; else state=F; C: if (in==0
显示全部
相似文档