基于FPGA的存储解决方案——外部SRAM
扫描二维码
随时随地手机看文章
所谓外部RAM" title="SRAM">SRAM是指连接在FPGA外部的静态RAM(SRAM)。外部SRAM存储器也有不少种类。对于外部SRAM的选择是由应用需求的性质决定的。使用外部SRAM存储器既有优点又有缺点。
优点
外部SRAM存储器提供比片内存储器更大的存储容量,速度也相当快,但是略逊于片内存储器。常用的外部SRAM的容量可达128KB至10MB。特殊的SRAM可以具有更小或更大的容量。SRAM通常是具有很低的反应时间和高吞吐量的设备,由于是通过共享的双向总线连接到FPGA上,外部SRAM的速度较片上存储器略低。SRAM的接口很简单,这使得将SRAM连接到FPGA成为一项简单的设计工作。你还可以使用多个外部SRAM共享总线,甚至使用不同种类外部存储器,比如闪存或SDRAM。
缺点
在基于FPGA的嵌入系统中使用外部SRAM的主要缺点就是成本高以及占用板上空间。SRAM设备要比其它高容量的存储器诸如SDRAM,每MB的平均售价更昂贵。而且SRAM也比SDRAM和“零空间”的FPGA片内存储器平均每MB占用更多的板上空间。
最佳应用场合
外部SRAM作为存储中等大小的数据模块的缓冲表现良好。可以使用外部SRAM作为不适合片内存储器且反应时间又低于SDRAM的数据缓存。还可以将多个SRAM相组合以增加容量。
SRAM也是随机寻址数据的最佳选择。很多SRAM器件都可以存取无序地址的数据,反应时间与存取有序地址的数据一样短,而SDRAM在这一点上做得并不好。SRAM是大型LUT的理想存储器种类,能够储存诸如对于片内存储器来说过于巨大的色彩转换运算法则数据。
外部SRAM作为执行存储器为无缓存的CPU工作时表现相对良好。当CPU没有缓存来缓冲其它种类存储器的高反应时间时,外部SRAM的低反映时间特性有助于改善CPU的性能。
不适于应用场合
外部SRAM不适用的系统包括:需要使用大数据量存储器的系统和成本受限的系统。如果系统需求一个大于10MB的存储模块,设计者将更倾向于考虑其它种类的存储器,比如更低廉的SDRAM。
外部SRAM的种类
有多种SRAM器件可供选择。最常见的种类如下:
异步SRAM – 由于其不依靠时钟,所以是最慢的一种SRAM。
同步SRAM(SSRAM)– 同步SRAM运行同步于一个时钟信号 。同步SRAM的速度比异步SRAM快,但是也更昂贵。
伪SRAM – 伪SRAM(PSRAM)是指具有SSRAM接口的动态RAM(DRAM)
零总线周转时间SRAM –零总线周转时间SRAM(ZBT SRAM)从读到写的转换需要零个时钟周期,这使得它的反应时间很短。ZBT SRAM通常需要一个专用的控制器使其低反应时间的优势发挥出来。
注意事项
为使外部SRAM器件达到出最佳性能,建议遵循以下原则:
使用与连接的主系统控制器的接口数据带宽相同的SRAM。
如果管脚使用或板上空间的限制高于系统性能要求,可以使用较连接的控制器的数据带宽小一些的SRAM设备,以便减少管脚数量并减少PCB板上可能的存储器数量。然而,这种变化将导致降低SRAM接口的性能。