一、为什么要选用SRAM外扩芯片
FPGA内部自带Block RAM与分布式RAM资源,能够实现高速存储访问,但片内存储容量受芯片型号约束。中低端FPGA片内RAM资源通常只有几Mb到十几Mb级别,一旦项目需要中等容量、低确定延迟的数据缓存,完全依靠升级更高规格FPGA来换取片上内存,会带来BOM成本大幅上涨,还会造成逻辑资源浪费。
伟凌创芯EMI的SRAM外扩芯片就是外挂在FPGA硬件总线之上的静态存储芯片。市面上通用SRAM外扩芯片容量区间大多落在128KB~10MB区间,特殊型号可向更小或更大容量延伸。对比SDRAM这类动态存储器,SRAM不需要刷新操作,随机地址读写延迟稳定可控。
从访问速度维度对比,EMI SRAM外扩芯片性能弱于FPGA片内BRAM,但是远优于SDRAM的随机访问表现。因为采用双向共享并行总线和FPGA完成数据交互,总线时序、PCB信号损耗会带来一部分性能损耗,这是外扩器件固有的特性。
接口实现层面,常规SRAM外扩芯片控制逻辑并不复杂,只需要编写简单状态机即可完成读写驱动,部分场景还支持多片SRAM挂接同一组系统总线,也可以和Flash、SDRAM等其他外部存储器件做混合总线设计,硬件架构灵活性较高。
二、SRAM外扩芯片的优势与现实短板
2.1工程优势
1.容量灵活扩充:不用更换更高等级FPGA,通过外接SRAM外扩芯片,直接补充中等规模高速缓存空间,匹配业务实际存储需求,避免为获取片内内存而过度选型FPGA主芯片。
2.访问延迟确定性强:静态RAM无需刷新,随机读写不同地址的数据,访问时延基本保持一致,不会出现SDRAM随机访问时的行激活、预充电等待开销,非常看重实时性的系统十分适合。
3.驱动开发门槛低:异步SRAM无需时钟同步,逻辑状态机开发工作量小;同步SRAM时序逻辑清晰,无需复杂的刷新控制器,对比SDRAM的IP调试难度更低。
4.多芯片可并联扩容:多颗SRAM外扩芯片可以通过片选信号并联,实现总存储容量、位宽的扩展,适配不同带宽的业务。
2.2主要缺点
1.单位存储成本偏高:按每MB存储容量核算,SRAM外扩芯片采购单价明显高于SDRAM。对于大容量存储需求,SRAM方案物料成本压力会快速上升。
2.占用PCB板卡空间:并行SRAM外扩芯片需要地址总线、数据总线、控制信号大量引脚,相比FPGA片内零板占的BRAM,器件本体以及布线都会占用较多PCB面积,小型化硬件设计需要重点评估。
3.消耗FPGA的IO资源:并行SRAM会占用大量FPGA普通IO口,IO资源紧张的FPGA方案会受限制。
三、主流SRAM外扩芯片分类及选型特点
市面上用于FPGA外扩的SRAM器件,按照接口工作模式,主要分为异步SRAM、同步SRAM(SSRAM)、伪SRAM(PSRAM)、ZBT零总线翻转SRAM四大类,各类器件的工程取舍各不相同。
1.异步SRAM
异步SRAM不需要同步时钟信号,依靠地址、片选、读写控制信号直接完成时序交互。它是开发最简单的一类SRAM外扩芯片,但整体运行速度是这几类里面最低。优势在于控制器逻辑极简,非常适合低速工业、老式硬件改造项目;缺点是访问速度上限有限,高带宽场景不适用。
2.同步SRAM(SSRAM)
同步SRAM需要跟随系统时钟工作,相比异步SRAM,能够实现更高的读写带宽,但是器件采购价格更高,硬件逻辑需要做时钟域匹配与时序约束,适合中等高速缓存业务。
3.伪SRAM PSRAM
PSRAM底层存储介质实际是DRAM,但对外封装出SRAM一样的访问接口,把DRAM刷新逻辑集成在芯片内部。对于FPGA侧,软件逻辑和操作SRAM保持一致,不需要处理刷新,兼顾一定成本优势;缺点是芯片内部依然存在DRAM的刷新行为,极端条件下访问延迟会出现微小波动。目前也有QSPI、HyperBus接口的串行PSRAM,能够大幅减少引脚占用。
4.ZBT SRAM(零总线周转时间SRAM)
普通SRAM在读操作切换写操作时,总线需要留出若干时钟周转周期;ZBT SRAM可以实现读写切换零时钟开销,进一步拉高持续吞吐性能。但该类SRAM外扩芯片不能直接简单挂接总线,需要专门设计配套控制器逻辑,器件价格也更高,多用于网络交换等高带宽场景。
随着集成电路制造工艺的不断提升,存储器占据芯片的功耗比例越来越大,高速SRAM设计变得越来越重要。EMI专注于提供创新、高品质的SRAM芯片,EMI代理可以提供技术指导及产品解决方案。