FPGA的通用FIFO设计verilog,1024*8bit仿真,源码和视频

名称:FIFO存储器设计1024*8bit

软件:Quartus

语言:Verilog

本代码为FIFO通用代码,其他深度和位宽可简单修改以下参数得到

复制代码
reg [7:0] ram [1023:0];//RAM。深度1024,宽度8

代码功能:

设计一个基于FPGA的FIFO存储器,使之能提供以下功能

1.存储空间至少1024 储器

2.存储位宽8bit

3.拓展功能:存储器空、满报警

演示视频:http://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=206

FPGA代码资源下载网:hdlcode.com

代码下载:

设计一个基于FPGA的FIFO存储器,使之能提供以下功能 1.存储空间至少1024 储器 2.存储位宽8bit 3.拓展功能:存储器空、满报警名称:FIFO存储器设计1024*8bit(代码在文末付费下载)软件:Quartus语言:Verilog代码功能:设计一个基于FPGA的FIFO存储器,使之能提供以下功能 1.存储空间至少1024 储器 2.存储位宽8bit 3.拓展功能:存储器空、满报警演示视频:FPGA代码资源下载网:hdlcode.com部分代码展示//fifo 1024*8bit fifo//存储空间1024//位宽8bihttp://www.hdlcode.com/index.php?m=home&c=View&a=index&aid=206

部分代码展示

复制代码
//fifo 1024*8bit fifo
//存储空间1024
//位宽8bit
module a_fifo
(
input clk,//时钟
input rst,//复位
input [7:0] din,//fifo写数据
input wr_en,//写使能
input rd_en,//读使能
output reg [7:0] dout,//读数据
output empty,//空信号
output full//满信号
);
reg [7:0] ram [1023:0];//RAM。深度1024,宽度8
reg [11:0] count=12'd0;
reg [11:0] rp=12'd0;
reg [11:0] wp=12'd0;
integer i;
always@(posedge clk)
if(rst)begin//复位
wp<=12'd0;
rp<=12'd0;
dout<=8'd0;
count<=12'd0;
for(i=0;i<1024;i=i+1)
ram[i]<=8'b00000000;//清零
end
else
case({rd_en,wr_en})
2'b00:count<=count;
2'b01://单写FIFO
if(~full)begin//未满
ram[wp]<=din;//存入fifo
if(wp>=12'd1023)
wp<=12'd0;//写地址循环累加
else
wp<=wp+12'd1;
count<=count+12'd1;
rp<=rp;
end
2'b10://单读FIFO
if(~empty)begin//未空
dout<=ram[rp];//读fifo
if(rp>=12'd1023)
rp<=12'd0;//读地址循环累加
else
rp<=rp+12'd1;
count<=count-12'd1;
end
2'b11://同时读写FIFO
if(empty)begin//FIFO为空,只能写

设计文档:

设计文档.doc

  1. 工程文件
  1. 程序文件
  1. 程序编译
  1. Testebnch
  1. 仿真图

仿真图依次仿真了如下功能:

具体功能1/2/3对应如下:

1:写FIFO 20次,再读20次,FIFO读空

  1. 写FIFO 10次,然后同时读写20次,最后读10次,FIFO读空
  1. 连续写FIFO 2048次,FIFO写满
相关推荐
月光技术杂谈3 天前
上海RISC-V峰会-香山开源RISC-V CPU随想随记
verilog·risc-v·chisel·vhdl·香山·开源cpu·xiangshan
lwd_up4 天前
多片RFSoC同步,64T 64R
fpga开发·无线通信·信号处理·fpga
XINVRY-FPGA5 天前
XC7A35T‑2FGG484I Xilinx FPGA Artix‑7 AMD
嵌入式硬件·fpga开发·云计算·硬件架构·硬件工程·fpga·pcb工艺
可编程芯片开发5 天前
基于FPGA的多级流水线加法器verilog实现,包含testbench测试文件
fpga开发·verilog·加法器·多级流水线
FPGAmaster创新者6 天前
基于FPGA的智能小车设计(包含代码)/ 全栈FPGA智能小车:Verilog实现蓝牙/语音/多传感器融合的移动平台
fpga开发·毕业设计·智能家居·fpga·毕设
小眼睛FPGA12 天前
【RK3568+PG2L50H开发板实验例程】FPGA部分 | 以太网传输实验例程
科技·单片机·嵌入式硬件·ai·fpga开发·fpga
稀液蟹-plus13 天前
zynq-PS篇——bperez77中DMA驱动注意事项
linux·fpga
小眼睛FPGA14 天前
【RK3568+PG2L50H开发板实验例程】FPGA部分 | DDR3 读写实验例程
科技·嵌入式硬件·ai·fpga开发·fpga
最好有梦想~15 天前
LVDS TX RX IP调试笔记
fpga·lvds
XINVRY-FPGA15 天前
XCZU47DR-2FFVG1517I Xilinx FPGA AMD ZynqUltraScale+ RFSoC
人工智能·嵌入式硬件·fpga开发·信息与通信·信号处理·射频工程·fpga