Altera为FLEX10K®(非E)器件提供哪些先进先出(FIFO)解决方案?-Altera-Intel社区-FPGA CPLD-ChipDebug

Altera为FLEX10K®(非E)器件提供哪些先进先出(FIFO)解决方案?

先进先出(FIFO)缓冲器用于缓冲设计中从一个子系统传输到另一个子系统的数据。例如,FIFO缓冲区保存从多个源驱动到共享总线的数据。总线忙时,数据存储在FIFO缓冲区中;当总线空闲时,FIFO缓冲器将数据发送到总线。 Altera公司的FLEX®器件提供了几个FIFO缓冲区设计解决方案。

对于大多数FIFO缓冲器,FLEX 10K嵌入式阵列模块(EAB)提供高性能和大RAM模块,而无需逻辑/存储器权衡。由于Altera器件具有成本效益,因此仅由逻辑元件(LE)组成的FIFO缓冲器也可提供有竞争力的解决方案。

使用FIFO缓冲区时,应考虑各种系统要求。例如,您必须考虑是否需要同时读取和写入FIFO缓冲区。某些FIFO缓冲区需要单独的读写时钟,而其他FIFO缓冲区则使用相同的时钟进行读写。 Altera提供FIFO解决方案以满足所有这些要求。

本文讨论以下FIFO设计:

  • 交错存储器FIFO缓冲器
  • 循环共享FIFO缓冲区
  • 基于LE的同步FIFO缓冲器
  • 基于异步LE的FIFO缓冲区

交错存储器FIFO缓冲器

交错存储器FIFO缓冲器适用于具有一个读/写时钟的相对较深的缓冲器。对于这种类型的FIFO缓冲器,每8位宽度使用两个EAB。您可以在不使用其他EAB的情况下实现最多512字深的FIFO缓冲区。

每个EAB可以在给定的时钟周期内读取或写入。通过使用两个EAB,您可以实现同时读取和写入。数据是从未写入的EAB中预取的,这可以防止在需要同时读取和写入相同EAB时发生的冲突。该FIFO缓冲器可在FLEX 10KA器件中实现80 MHz的性能。

循环共享FIFO缓冲器

循环共享FIFO缓冲区适用于使用许多EAB的设计,因为它使用的交叉存储器FIFO缓冲区的EAB较少。该FIFO缓冲器具有一个读/写时钟,其EAB采用双倍时钟进行时域复用。也就是说,在随后的双倍时钟周期中读取和写入EAB。使用66 MHz时钟,您可以实现具有33 MHz吞吐量的循环共享FIFO缓冲区。该FIFO缓冲器可在FLEX 10KA器件中实现40 MHz的性能。

仲裁FIFO缓冲区

在某些FIFO应用中,不需要同时读写。例如,异步传输模式(ATM)设计可以具有FIFO缓冲器,其中在一个突发中读取或写入整个53字节的单元。 ATM设计可以具有多个FIFO缓冲器,其中一个端口将单元写入一个FIFO缓冲器,而另一个端口从不同的FIFO缓冲器读取单元。在这种情况下,不需要同时读写。不需要同时读写的应用程序可以使用仲裁FIFO缓冲区,该缓冲区使用EAB存储数据。由于仲裁FIFO不需要同时读写,因此不需要特殊技术来使用EAB。您可以使用参数来确定读取或写入的优先级。仲裁FIFO缓冲器使用一个读/写时钟,在FLEX 10KA器件中运行超过80 MHz。

基于LE的同步FIFO缓冲器

有时需要比目标器件的EAB更多的FIFO缓冲区。或者,在针对没有EAB的器件(例如,FLEX 6000器件)的设计中可能需要FIFO缓冲器。在这种情况下,基于LE的同步FIFO缓冲器使用移位寄存器将数据存储在FIFO缓冲器中,提供了一种经济高效的解决方案。该FIFO缓冲器非常适用于具有一个读/写时钟的多个浅,宽FIFO缓冲器。基于LE的同步FIFO缓冲器最适用于高速应用,可实现超过100 MHz的性能。

基于异步LE的FIFO缓冲器

对于需要不同读写时钟的应用,基于异步LE的FIFO缓冲器提供了理想的解决方案。例如,FIFO缓冲器可以将来自33-MHz PCI总线的数据缓冲到50-MHz后端。这些FIFO缓冲区称为“异步”,“双时钟”或“双同步”。异步的基于LE的FIFO缓冲区使用一组寄存器来存储数据。写计数器被解码以确定写入哪些寄存器并且使用多路复用器来确定读取哪些寄存器。

由寄存器和多路复用器创建的存储器结构可以同时读取和写入,因为读取多路复用器独立于写入解码器。可以用不同的时钟写入和读取该结构。 FIFO缓冲器控制电路可防止系统中的任何亚稳态干扰。

基于异步LE的FIFO缓冲器非常适用于具有独立读写时钟的应用,并且可以与其他FIFO缓冲器组合,以创建具有独立读写时钟的更大FIFO缓冲器。它可以在FLEX 10KA器件中实现60 MHz的性能。

MAX + PLUS II支持

您可以从Altera Applications获取本文中提到的F​​IFO缓冲区的设计文件。 FIFO缓冲区是可参数化的,这使您可以轻松设置系统要求的参数并自定义设计功能。另外,FIFO缓冲器被提供有Altera的MAX + PLUS®II软件(如周期共享FIFO缓冲器,csfifo)。 Altera计划在未来版本的MAX + PLUS II软件中提供附加功能。

结论

FLEX器件为具有FIFO要求的设计提供了出色的解决方案。这些解决方案满足各种FIFO要求,并以低成本提供高性能和大尺寸。如果您的设计符合FIFO要求,请联系您当地的现场应用工程师以获取更多信息。

请登录后发表评论

    没有回复内容