目录
- 1 FIFO简介
- 2 使用Quartus软件创建FIFO ip核
-
- 2.1 创建一个空工程
- 2.2 打开 MegaWizard Plug-In Manager
- 2.3 创建一个空的IP核
- 2.4 创建FIFO
- 2.4 FIFO配置
-
- 2.4.1 位宽深度设置
- 2.4.2 亚稳态选择
- 2.4.3 标志位
- 2.4.4 请求模式
- 2.4.5 保护功能
- 2.5 EDA 配置
- 2.6 总结页面
- 2.7 创建成功
- 3 FIFO 编程应用
1 FIFO简介
英文名称:First-in-first-out
功能:FIFO一般用于不同时钟域之间的数据传输(如下图所示),也常用于实现不同位宽接口的数据匹配。
2 使用Quartus软件创建FIFO ip核
2.1 创建一个空工程
2.2 打开 MegaWizard Plug-In Manager
2.3 创建一个空的IP核
2.4 创建FIFO
2.4 FIFO配置
2.4.1 位宽深度设置
2.4.2 亚稳态选择
2.4.3 标志位
2.4.4 请求模式
2.4.5 保护功能
2.5 EDA 配置
2.6 总结页面
2.7 创建成功
3 FIFO 编程应用
FIFO 例化模块
fifo fifo_inst (.data ( data_sig ), // 写入FIFO的数据.rdclk ( rdclk_sig ), // 读时钟.rdreq ( rdreq_sig ), // 读请求.wrclk ( wrclk_sig ), // 写时钟.wrreq ( wrreq_sig ), // 写请求.q ( q_sig ), // 从FIFO输出的数据.rdempty ( rdempty_sig ), // 读空信号.rdfull ( rdfull_sig ), // 读满信号.rdusedw ( rdusedw_sig ), // 读侧数据量.wrempty ( wrempty_sig ), // 写空信号.wrfull ( wrfull_sig ), // 写满信号.wrusedw ( wrusedw_sig ) // 写侧数据量);