当前位置:首页 > 前端设计 > 正文

异步fifo的实现原理?同步fifo和异步fifo的区别

异步fifo的实现原理?同步fifo和异步fifo的区别

很多朋友对于异步fifo的实现原理和同步fifo和异步fifo的区别不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!同步电路与异步电路最主要的区...

很多朋友对于异步fifo的实现原理和同步fifo和异步fifo的区别不太懂,今天就由小编来为大家分享,希望可以帮助到大家,下面一起来看看吧!

同步电路与异步电路最主要的区别

一、原理不同同步电路利用时钟脉冲使其子系统同步运作,而异步电路不使用时钟脉冲做同步,其子系统是使用特殊的“开始”和“完成”信号使之同步。

二、优点不同由于异步电路具有下列优点--无时钟歪斜问题、低电源消耗、平均效能而非最差效能、模块性、可组合和可复用性--因此近年来对异步电路研究增加快速,论文发表数以倍增,而IntelPentium4处理器设计,也开始采用异步电路设计。v异步电路主要是组合逻辑电路,用于产生地址译码器、FIFO或RAM的读写控制信号脉冲,其逻辑输出与任何时钟信号都没有关系,译码输出产生的毛刺通常是可以监控的。同步电路是由时序电路(寄存器和各种触发器)和组合逻辑电路构成的电路,其所有操作都是在严格的时钟控制下完成的。这些时序电路共享同一个时钟CLK,而所有的状态变化都是在时钟的上升沿(或下降沿)完成的。

三、分析不同异步时序逻辑电路分析时,还需考略各触发器的时钟信号,当某触发器时钟有效信号到来时,该触发器状态按状态方程进行改变,而无时钟有效信号到来时,该触发器状态将保持原有的状态不变。

fpga基础知识及工作原理

一、FPGA原理

FPGA中的基本逻辑单元是CLB模块,一个CLB模块一般包含若干个基本的查找表、寄存器和多路选择器资源,因此FPGA中的逻辑表达式基于LUT的。

FPGA内部的编程信息一般存储在SRAM单元中,因此通常的FPGA都是基于SRAM的,所以掉电后信息会丢失,下次上电需要先配置才能使用。

二、FPGA产品的速度等级

速度等级一般反映一款芯片的性能,速度等级越高,说明芯片内的逻辑延时和布线延时越小,设计的性能要求也越容易达到,随之付出的成本也越大。

对XilinxFPGA,速度等级一般有“-1”、“-2”、“-3”等,数字越大,速度等级越高,芯片价钱也越贵。

对IntelFPGA,速度等级一般有“-6”、“-7”、“-8”,数字越小表示速度等级越高、价钱越贵。

三、FPGA内部资源

逻辑资源块是FPGA内部最重要的资源,Xilinx称其为CLB(configurablelogicblock);

7系列中,FPGA内部三大主要资源:可编程逻辑单元、可编程I/O单元、布线资源

1、可配置逻辑单元(configurablelogicblock)

CLB在FPGA中最为丰富,由两个SLICE构成,SLICE分为SLICEL(L:Logic)和SLICEM(M:Memory),因此CLB可分为CLBLL和CLBLM两类;

SLICEL和SLICEM内部都包含4个6输入查找表(LUT6)、3个数据选择器(MUX)、1个进位链(carrychain)和8个触发器(Flip-Flop);

2、存储单元(BlockRAM)

BlockRAM可以被配置为同步、异步、单端口、双端口的RAM或FIFO,或者ROM;

3、运算单元(DSP48E1)

当FPGA需要复杂的运算时,会使用DSP48E1,例如乘法。

fifo工作原理

根据FIFO工作的时钟域分为同步/异步FIFO。同步FIFO是指读时钟和写时钟为同一个时钟在时钟沿来临时同时发生读写。异步FIFO读写时钟不一致,读写相互独立。

异步FIFO最核心的部分就是精确产生空满标志位,这直接关系到设计的成败。

为了定位读取和写入的位置需要进行读写指针的设置。

读指针:总是指向下一个将要读取的单元,复位时指向第一个单元(编号为0)。

写指针:总是指向当前要被读出的数据,复位时指向第一个单元(编号为0)。

当第一次读写指针相等时,表明FIFO为空,这种情况发生在复位操作时或者当读指针读出FIFO中最后一个字后,追赶上写指针时,此时读空信号有效。

当读写指针再次相等时,表明FIFO为满,这种情况发生在,当写指针转了一圈折回来(wrappedaround)又追上了读指针。

文章分享结束,异步fifo的实现原理和同步fifo和异步fifo的区别的答案你都知道了吗?欢迎再次光临本站哦!

最新文章