正点原子FPGA学习笔记3.2——FIFO IP核的使用,基于达芬奇开发板 A7

目录

FIFO IP核的使用——篇2

1.编写FIFO“读模块”

2.例化 读/写/IP核 模块

 1.例化

 2.管脚约束:打开原理图——I/O planning

 3.ILA逻辑分析仪(10根信号)+ 激励

 1.创建ILA+例化

 2.生成bit流文件,下载到板子,联调

 3.分析结果

 4.整体实验符合预期


FIFO IP核的使用——篇2

完成:1.读模块,

           2.整合到顶层文件、例化,管脚约束

           3.编写激励、使用ILA逻辑分析联调硬件

1.编写FIFO“读模块”

因为“读模块”和“写模块”几乎完全对应,所以写起来会轻松很多

 直接复制所有的fifo_wr代码,然后做修改即可

没有读空,就将读使能打开,一直读数据
和写模块组成循环:
因为本次实验,想展示:写——写满——再读——读空——再写,的一个功能。

2.例化 读/写/IP核 模块

 1.例化

//虽然IP核创建使用的异步时钟,但实际上输入时钟用的同一个(意思一下)
//如果需要使用不同的时钟,使用MMRC 时钟IP核,创建两个不同的时钟输出即可——见笔记1
//但是注意:重新定义FIFO IP核的位宽,输入输出速度要一致,否则出现上/下溢出,需要写等待的功能,如果没写,会造成数据的丢失!

//不要读数据的输出fifo_rd_data,直接在顶层做一个ILA的软核看输出数据
//wire        fifo_rd_data    ;

例化

 修改完以后,保存代码,在Vivado中综合一下——成功!

 

 2.管脚约束:打开原理图——I/O planning

 
管脚约束操作:

 

 3.ILA逻辑分析仪(10根信号)+ 激励

 1.创建ILA+例化

在顶层文件例化好

 2.生成bit流文件,下载到板子,联调

这次遇到一个问题,一开始一直打不开program device这个界面,最后重启了Vivado才终于有了!

 3.分析结果

1.从0开始写数据,写到254!

 2.从0开始读出数据,读到254

 3. 将空/将满 空/满信号——符合一个时钟差

 4.整体实验符合预期!

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Sean--Lu

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值