FPGA复习题(3)

2019-08-17 14:13

答:FPGA和CPLD的区别

主要特性 1、结构 2、速度 3、密度 4、互联 5、功耗

11、 电路设计

1.用Verilog HDL描述反相器、八输入与门、八输入或门、八输入异或门、一位D触发器、一位锁存器、四选一电路、两位比较器、两位加法器、两位乘法器。 答:详王金明例题

2.用基本的逻辑单元,如D触发器、比较器、选择器和逻辑门等器件设计一个双口RAM,RAM的深度位16,宽度为8;RAM的模型如下

module ram16X8( w_clk,wr_en,wr_addr,data_in,

r_clk,rd_en,rd_addr,data_out );

input w_clk,wr_en,r_clk,rd_en; input [7:0] data_in;

input [3:0] wr_addr,rd_addr; output [7:0] data_out;

CPLD 类似PLA 快、可预测 低等到中等 纵横连接方式 高 FPGA 类似门阵列 取决于应用 中等到高等 路径选择方式 低 reg [7:0] data_out; reg [7;0] mem [15:0]; always @(posedge wr_clk)

if(wr_en)

mem[wr_addr] <= data_in;

always @(posedge rd_clk)

if(rd_en)

data_out <= mem[rd_addr];

endmodule

? 画出电路结构图 ? 用Verilog HDL写出电路

3.异步FIFO电路的设计,FIFO的深度为16,宽度为8位,CLKA写入,CLKB读出,给出读空和写满指示。 /////////RAM模块

module RAM16X8( wr_clk,wr_en,wr_addr,data_in, rd_clk,rd_en,rd_addr,data_out ); input wr_clk,wr_en,rd_clk,rd_en; input [7:0] data_in; input [3:0] wr_addr,rd_addr; output [7:0] data_out; reg [7:0] data_out;

reg [7:0] mem [15:0]; always @(posedge wr_clk) if(wr_en)

mem[wr_addr] <= data_in; always @(posedge rd_clk) if(rd_en)

data_out <= mem[rd_addr]; endmodule

////////肈触发器打两下的模块

module D_D(clock,reset_n,data_in,data_out);

input clock,reset_n; input [3:0] data_in; output [3:0] data_out; reg [3:0] data_out,data0; wire [3:0] data_w;

assign data_w=data0;

always @ (posedge clock or negedge reset_n)

begin

if(!reset_n) begin data0<=4'h0; end

else begin

data0<=data_in; end

end

always @ (posedge clock or negedge reset_n)

begin

if(!reset_n) begin

data_out<=4'h0; end

else begin

data_out<=data_w; end

end

endmodule //////////FIFO模块

module

FIFO(clock_in,data_in,wr_en,clock_out,data_out,rd_en,reset_n,F_flag,E_flag);

input clock_in,wr_en,clock_out,rd_en,reset_n; input [7:0] data_in; output F_flag,E_flag; output [7:0] data_out; reg F_flag,E_flag;

reg [3:0] wr_addr,rd_addr;

wire [3:0] wr_addr_w,rd_addr_w,wr_addr_bijiao,rd_addr_bijiao;

//////////生成写地址

assign wr_addr_bijiao=wr_addr; always @ (clock_in or reset_n) begin

if(!reset_n) begin

wr_addr<=4'h0; end

else if(wr_en) begin

wr_addr<=wr_addr+1'b1;


FPGA复习题(3).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:spss数据分析教程之SPSS信度分析和效度分析

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: