Intel® Stratix® 10嵌入式存储器用户指南

ID 683423
日期 11/19/2019
Public
文档目录

4.4.6.1. SCFIFO信号

表 55.  SCFIFO输入和输出端口说明
信号 方向 是否需要 说明
clk Input Yes FIF写时钟和读时钟。
aclr Input No 高电平有效复位信号,驱动clk域触发器的异步清零管脚。

此复位不在IP内同步,因此,用户逻辑应该确保在适当的时候此复位要被同步地置低到clk

此信号仅在USE_ACLR_PORT使能时有效。

  • 0 = reset inactive
  • 1 = reset active
sclr Input No 高电平有效复位信号,驱动 clk域触发器的同步清零管脚。必须遵循复位顺序要求。
  • 0 = request inactive
  • 1 = request active
w_req Input Yes FIFO Write Request。此信号在复位期间应该是无效的。
  • 0 = request inactive
  • 1 = request active
w_data[FIFO_WIDTH-1:0] Input Yes FIFO Write Data。当有写请求时,此总线显示要存储在FIFO中的数据。仅当w_req有效,并且FIFO没有满时(例如:w_full = 1),此值才被FIFO使用。
w_full Output No FIFO Write Full。此信号指示FIFO中剩余的空间是否即将用尽。当此信号置位时,进一步w_req被忽略。
注: 由于内部流水线阶段提高Fmax,实际可用空间要比正在配置以防止数据丢失的入口少几个。
  • 0 = FIFO is not full
  • 1 = FIFO is (near) full
r_req Input Yes FIFO Read Request / Read Ready。要实现最高的Fmax,此信号的使用模型与正常零读取到数据就绪延迟FIFO略有不同。

用户应用应该在适当的时候置位此信号,表明从现在开始的几个时钟周期(L)准备接收数据。在稍后的L时钟上,如果有可用的数据,那么r_valid将被置位。如果在r_data端口上没有可用数据,那么它将被置低。

这类似于Avalon ST非零读延迟有效/就绪接口语义,并意味着下游用户应用中分配了足够的缓冲空间,以消耗正在运行的数据。

  • L = 5,当RAM_BLK_TYPE是“MLAB”时
  • L = 6,当RAM_BLK_TYPE是“M20K”时
  • 0 = read request inactive
  • 1 = read request active
r_data[FIFO_WIDTH-1:0] Output Yes FIFO Read Data。 此总线显示数据对应于每个读请求,这已经在几个时钟周期前发生。仅当r_valid置位时,读数据才在时钟周期中有效。
r_empty Output No FIFO Read Empty。表明在FIFO中是否仍有数据字。这实际上是流水线版本的r_usedw == 0的流水线版本。

用户应用可以使用此信号进行监控,或者启动一系列读请求。

  • 0 = RAM block is not empty
  • 1 = RAM block is empty
r_valid Output No FIFO Read Data Valid。表明r_data输出端口上的数据是否有效。每个r_valid置位对应于一个之前的read request/ready。由于内部流水线阶段导致的读请求到数据就绪延迟,r_empty置位后此信号仍然可以被置位几个时钟。当r_valid置位时,数据必须被用户应用使用用;否则,数据将丢失。

r_validr_req接口类似于具有非零读延迟的Avalon ST有效和就绪语义。

  • 0 = data is not valid
  • 1 = data is valid
w_ready Output Yes 低电平有效写保护信号,在延迟的w_full置位前门控(gate)写端口上的数据。