FIFO pointers in verilog gray code utilization for synchronius
标签: utilization synchronius pointers verilog
上传时间: 2014-11-24
上传用户:silenthink
用vhdl设计的一个FIFO存储器
上传时间: 2017-09-09
上传用户:stampede
异步FIFO的FPGA实现,XILINX FPGA, ISE ,VHDL语言实现
上传时间: 2017-09-09
上传用户:秦莞尔w
利用sram技术设计的一个FIFO
上传时间: 2013-12-17
上传用户:agent
16×4bit的FIFO设计代码,学习代码,请在下载24小时后删除。
上传时间: 2013-12-26
上传用户:二驱蚊器
altera单时钟和双时钟FIFO IP核用户向导,描述了该IP核各个输入和输出端口的含义以及使用方法和注意事项
上传时间: 2016-08-02
上传用户:liber
拜读了Clifford E. Cummings大神的关于FIFO的文章有感,感觉其设计的FIFO算法很好,特拿出来分享
标签: Verilog语言的FIFO设计
上传时间: 2016-08-24
上传用户:xiaohanhaowei
FIFO先进先出原理图解,及两个模型的源代码。
标签: FIFO
上传时间: 2016-09-21
上传用户:zeroseawind
该文档为基于FPGA异步FIFO的研究与实现简介文档,是一份很不错的参考资料,具有较高参考价值,感兴趣的可以下载看看………………
上传时间: 2021-11-23
上传用户:
FPGA片内FIFO读写测试Verilog逻辑源码Quartus工程文件+文档说明,使用 FPGA 内部的 FIFO 以及程序对该 FIFO 的数据读写操作。FPGA型号Cyclone4E系列中的EP4CE6F17C8,Quartus版本17.1。timescale 1ns / 1ps//////////////////////////////////////////////////////////////////////////////////module FIFO_test( input clk, //50MHz时钟 input rst_n //复位信号,低电平有效 );//-----------------------------------------------------------localparam W_IDLE = 1;localparam W_FIFO = 2; localparam R_IDLE = 1;localparam R_FIFO = 2; reg[2:0] write_state;reg[2:0] next_write_state;reg[2:0] read_state;reg[2:0] next_read_state;reg[15:0] w_data; //FIFO写数据wire wr_en; //FIFO写使能wire rd_en; //FIFO读使能wire[15:0] r_data; //FIFO读数据wire full; //FIFO满信号 wire empty; //FIFO空信号 wire[8:0] rd_data_count; wire[8:0] wr_data_count; ///产生FIFO写入的数据always@(posedge clk or negedge rst_n)begin if(rst_n == 1'b0) write_state <= W_IDLE; else write_state <= next_write_state;endalways@(*)begin case(write_state) W_IDLE: if(empty == 1'b1) //FIFO空, 开始写FIFO next_write_state <= W_FIFO; else next_write_state <= W_IDLE; W_FIFO: if(full == 1'b1) //FIFO满 next_write_state <= W_IDLE; else next_write_state <= W_FIFO; default: next_write_state <= W_IDLE; endcaseendassign wr_en = (next_write_state == W_FIFO) ? 1'b1 : 1'b0; always@(posedge clk or negedge rst_n)begin if(rst_n == 1'b0) w_data <= 16'd0; else if (wr_en == 1'b1) w_data <= w_data + 1'b1; else w_data <= 16'd0; end///产生FIFO读的数据always@(posedge clk or negedge rst_n)begin if(rst_n == 1'b0) read_state <= R_IDLE; else read_state <= next_read_state;endalways@(*)begin case(read_state) R_IDLE: if(full == 1'b1) //FIFO满, 开始读FIFO next_read_state <= R_FIFO; else next_read_state <= R_IDLE; R_FIFO: if(empty == 1'b1)
上传时间: 2021-12-19
上传用户:20125101110