下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、精选优质文档-倾情为你奉上FPGA电路设计FIFO源代码define ADDR_WIDTH 8 /地址位宽define DATA_WIDTH 8 /数据位宽define RAM_WIDTH 8 /RAM数据位宽define RAM_DEPTH 256 /RAM深度module fifo_test(clk_100M,/写时钟clk_5M, /读时钟rst_n,/ 全局复位信号wr_en,/ 写使能 低有效rd_en,/ 读使能 低有效wr_data,/8位数据输入rd_data,/8位数据输出wr_full,/ 写满标志 高有效rd_empty);/ 读空标志 高有效/输入信号 input cl
2、k_100M; input clk_5M; input rst_n; input wr_en; input rd_en; inputDATA_WIDTH-1:0 wr_data; output reg DATA_WIDTH-1:0 rd_data; output reg wr_full; output reg rd_empty; reg RAM_WIDTH-1:0 memRAM_DEPTH-1:0;/ 8位256单元regADDR_WIDTH-1:0 wr_addr; / 8位写地址 regADDR_WIDTH-1:0 rd_addr; / 8读地址reg rd_flag;reg wr_fla
3、g;/写地址产生逻辑 always (posedge clk_100M or negedge rst_n) begin if(!rst_n)beginwr_addr <= 8'h0;wr_flag <= 0;end else if(!wr_en)beginif(!wr_full && (rd_addr!=(wr_addr+1)beginwr_flag <= 1;wr_addr <= wr_addr + 1'b1;endelsewr_flag <= 0;end end/ 写数据产生逻辑 always (posedge clk_100M
4、) begin if(!wr_en && !wr_full && wr_flag) memwr_addr <= wr_data; end/写满产生标志 always (posedge clk_100M or negedge rst_n) begin if(!rst_n)wr_full <= 0; else if(rd_addr = (wr_addr+1)wr_full <= 1'b1;elsewr_full <= 1'b0; end/读地址产生逻辑 always (posedge clk_5M or negedge rst
5、_n) begin if(!rst_n)beginrd_flag <= 0;rd_addr <= 8'd0;end else if(!rd_en)beginif(!rd_empty && (wr_addr!=(rd_addr+1)beginrd_flag <= 1;rd_addr <= rd_addr + 1'b1;endelserd_flag <= 0;end end/读数据产生逻辑 always (posedge clk_5M) begin if(!rd_en && !rd_empty && rd
6、_flag) rd_data <= memrd_addr; end/读空产生标志 always (posedge clk_5M or negedge rst_n) begin if(!rst_n)rd_empty <= 1'b1; else if(wr_addr = (rd_addr+1)|(wr_addr = rd_addr)rd_empty <= 1'b1;else rd_empty <= 1'b0; endendmodule/ 激励源代码:module fifo_test_IB; reg clk_100M;reg clk_5M; reg r
7、st_n; / 全局复位信号 reg wr_en; / 写使能 reg rd_en; / 读使能 regDATA_WIDTH-1:0 wr_data; wire7:0 rd_data;wire wr_full;wire rd_empty;reg7:0 cnt;fifo_test fifo1(clk_100M,clk_5M, rst_n,wr_en,rd_en,wr_data,rd_data,wr_full,rd_empty);always #15 clk_5M = clk_5M; /读时钟always #5 clk_100M = !clk_100M; /写时钟initialbegin rst_n = 0; clk_100M = 0; clk_5M = 1; wr_en = 0; rd_en = 0; #25 rst_n = 1; endalways (posedge clk_100M or negedge rst_n)beginif(!rst_n)wr_data <= 8'd0;else wr_data <= cnt;endalways
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 北京理工大学《植物生物学》2024 - 2025 学年第一学期期末试卷
- 软件项目质量管理
- 心理咨询和辅导
- 2026年剧本杀运营公司市场费用预算管理制度
- 2025年智能垃圾桶清洁十年技术报告
- 2026年文化娱乐产业虚拟现实报告
- 2026年及未来5年中国车厢底板市场运行态势及行业发展前景预测报告
- 小学道德与法治教学中生命教育的实施路径课题报告教学研究课题报告
- 企业盘点和对账制度
- 艺术研究院试题及答案
- 安全生产责任保险培训课件
- 机械工程的奥秘之旅-揭秘机械工程的魅力与价值
- 《益生菌与药食同源植物成分协同作用评价》-编制说明 征求意见稿
- 送货单回签管理办法
- 鲁科版高中化学必修第一册全册教案
- 原发性高血压患者糖代谢异常:现状、关联与防治探索
- 2025年存算一体芯片能效比:近内存计算架构突破与边缘AI设备部署成本
- 国有企业服务采购操作规范TCFLP 0054-2022
- 2025年兽医公共卫生学考试试题(附答案)
- 热电材料研究进展汇报
- 公安部保密管理办法
评论
0/150
提交评论