UltraRAM是UltraScale Plus芯片中独有的一种存储资源,它具有如下特征:
-每个UltraRAM大小为288Kb(4K x 72)
-类似于Block RAM,每个UltraRAM有两个端口Port A和Port B
-只有一个时钟管脚,所有输入输出均与该时钟同步
-上电初始化时,UltraRAM存储内容均为0,不支持用户定义的初始化值
对于单个的UltraRAM,其基本结构如下图所示。图中蓝色框内的寄存器是可选的,红色框内的寄存器是必需的。由此可见,对于输入控制信号(BWE, RD_WR, ADDR, EN, INJECT_SBITERR)和输入数据(din),UltraRAM提供了可选寄存器。同样地,对输出数据也提供了可选寄存器(OREG_ECC并不是只有在使用ECC时才可用)。从而,不难看出单个UltraRAM从输入到输出最大Latency为4,最小为1。
(图片来源:ug573,figure 2-3)
除级联管脚之外,UltraRAM主要管脚如下图所示。这里列出了端口A对应的管脚,同样地,端口B也有一套与之一致的对应管脚。管脚的含义与Block RAM一致。需要注意的是RDB_WR_A为0时,端口A执行读操作,若为1,则执行写操作。这就是为什么在同一个时钟周期,端口A只能执行一种操作。这是与Block RAM相比的主要区别之一。另外一个管脚RDACCESS_A可理解为输出数据有效标记信号。
级联管脚以CAS打头,若为输入管脚则为CAS_IN_,若为输出管脚则为CAS_OUT_。只有在级联时才会使用到该管脚,且CAS_OUT_连接到相应的CAS_IN_,如下图所示。
除了专用的级联管脚,UltraRAM为级联提供了专门的寄存器,以保证系统性能。若CAS_NUM个UltraRAM级联,输出的最大Latency为CAS_NUM+3,最小为1。
结论:
-UltraRAM只有一个时钟管脚,不支持用户定义的初始化值
-UltraRAM有专门的级联寄存器,可改善系统性能
-若CAS_NUM个UltraRAM级联,输出数据最大Latency为CAS_NUM+3,最小为1
上期内容:
下期内容:
UltraRAM的实例化方式