2.7 fifo模式
在7系列中还包括专用逻辑,每个blockram转换成专用的fifo。这样的结构的最大好处在于可以不占用clb资源,可以直接利用硅片里面专用单元,可以直接转化ram为fifo使用, 而且从性能上讲也比消耗逻辑资源的fifo性能要好一点。xilinx 7系列中的fifo是支持同步和异步读写操作,不需要时钟和数据之间有一个相位的便宜。空信号,满信号,和可以编程的空满信号都可以被用作控制fifo的信号,从而可以实现不同的功能。同步fifo可以消除异步fifo的固有的不确定性。它有一个first-word-fall-through的选项,在空模式下,它可以使第一个数据能够立马从输出口可以读取到。
fifo像blockram一样可以提供各种不同的配置模式,当blockram被分为两个18kb的时候,它也可以使用blockram的一部分。需要注意的是fifo对应blockram的端口a,写端口对应着blockram的端口b。也blockram一样可以级联出更大的存储空间,可以配置成64kb
fifo支持使用异步时钟,它能够支持标准和first-word-fall-through模式。这在生成fifo的属性里面可以选择使用,gui默认的模式是同步模式。同步模式只能支持标准模式,无法支持first-word-fall-through模式。这种模式没有信号的一个相互交互使用,就可以获得一个非常低的延时。
至于选用什么模式,是用户根据自己需求来完成的,有一点需要进一步强调一下,无论用户需用什么模式,都不会额外占用资源。
关于时钟的对应关系,也就啰嗦一句:读取从fifo数据是同步的rdclk的上升沿;写入数据到fifo是同步的wrclk的上升沿。
fifo核同时可以产生大量的标志,当用户使用 gui界面进行例化的时候,这个都是可以用户来选择使用什么信号,不使用什么信号。同样地,这些标志不要求任何额外的逻辑。最常用的信号有full,almost_full,empty,almost_empty 4个信号,full,almost_full的同步时钟是写时钟,empty,almost_empty的时钟是读时钟。
当尝试对一个满的fifo进行写操作的时候,fifo还提供wrerr信号来声明出错,当尝试对一个满的fifo进行读操作的时候,fifo还提供rderr信号来声明出错。rdcount和wrcount是当前指针指到底层blockram地址(它俩分别对应在rdclk和wrclk。)。
在同步模式下,almost_empty 可以编程的数值为1到fifo深度减2的之间。在异步模式中,almost_empty在标准模式可以编程的数值范围为5至深度减6,在fwft模式下可以编程的数值范围为6到深度减6。在同步模式下,almost_full 可以编程的数值为1到fifo深度减2的之间。在异步模式中,almost_full在标准模式可以编程的数值范围为4至深度减7之间,在fwft模式下可以编程的数值范围为4到深度减8之间。
最后对fifo的两种模式在做一个简单的说明:
在标准模式下,数据的第一个字必须积极从fifo读出。当空信号无效时,有读使能才可以读数据。在first-word-fall-through模式下,只要数据被推入fifo中那么数据立即出现在读端口。
英特尔有望成为2018年iPhone独家供应商
携号转网是国家促进行业充分竞争保障消费者权益的重要举措
纯电动汽车需要发动机吗?本文告诉你答案
一文解析网络压缩算法的原理实现及结果
5G即将爆发 智能手机射频器件发展趋势预测
FPGA从Xilinx 的7系列学起(8)
红色版iPhone7和新版本iPhone SE, 谁能打动你?
超声波手势控制或将很快应用于手机
盘点总结家用投影仪的好用功能,如何感受极致视觉体验?
洲明科技提出的光显概念不断提升客户的需求
MetaCert正在试图利用区块链技术来打击网络钓鱼邮件
光端机、光纤收发器和光猫三者之间的区别
配置静态路由
柔性电流探头DK-2000的产品规格及其应用
超刺激!世界上最奇葩的房子,你敢住么?
恩智浦为创新者提供成熟框架,助力开发新颖、安全的物联网应用
5G网络是怎样工作的
安瑞达公司量产干法隔膜薄膜结晶度可达±3%
领跑海尔知识产权竞争力全国第一
170秒语音芯片IC,otp/Flash电子发声芯片厂家,唯创知音WT588F