数据传输中FIFO或缓冲存在的意义


在项目设计中,我们通常需要在两个模块之间传输数据,如果两个模块的数据处理速率相同,那么自然没有什么问题,直接进行数据之间的对接就可以,可若是两个模块的数据处理速度不同呢?如果说数据接收模块和数据发送模块的速度不一致的话,必然会导致采集数据出现遗漏的现象,那么又该如何解决这一问题呢?

这里教大家一种比较简单的方法就是引用FIFO(先进先出)数据缓冲器,所有数据都先经过缓存器去缓存,然后再输入数据接收模块。这样就通过一个数据缓存的方法解决了速度不一致而导致的遗漏数据的问题。FIFO或者缓冲是为解决两侧数据时钟不同步而诞生的,即存入数据和搬走数据速率不同。举个栗子,如果存入数据时钟和搬走数据时钟不同步,且没有FIFO缓冲存在的话,那就是搬走时钟直接来读存入数据的寄存器,可能的一种情况是:搬数据的时候,这个寄存器中的数据正在被存入数据时钟刷新呢,导致搬运数据出错!FIFO的出现等效临时“固化”了这些数据。很好的解决了两侧时钟不同步的问题。

点击数: 72    打印  添加到收藏   发布时间: 2019-05-17




上一篇:关于静电防护的一些解释
下一篇:金菊茶的功效





» 相关内容
  GPRS和NB-IOT的特点及选用原则
  金菊茶的功效
  数据传输中FIFO或缓冲存在的意..
  关于静电防护的一些解释
  串口通讯影响鼠标指针乱蹿的终..
  GC气相色谱原理简介-物理分离..
  使用STM32提供的DSP库函数进行..
  设置VB.NET 窗体的全局热键
  产生随机注册名称和信息的方法
  wintoUSB实现独立操作系统随你..
  提升FPGA扇出能力方法及扇出效..
  原子力显微镜的那些事儿
  FPGA中nCEO引脚的重新分配
  PIC18F4550实现鼠标操作代码
  .Net下PostMessage发送字符串..