对应 hls::stream<>
对象的基本访问为阻塞读取和阻塞写入。这些访问是使用类方法完成的。这些方法会暂停(阻止)对空的串流 FIFO 尝试执行的读操作以及对满的串流 FIFO 尝试执行的写操作,直至针对映射到 ap_hs
接口协议的串流完成完整握手为止。
在 C/RTL 协同仿真中可观测到如下停滞现象:持续执行仿真器,但传输事务毫无进展。以下显示了停滞状况的经典示例,其中 RTL 仿真时间不断增加,但传输事务间或事务内部毫无进展。
// RTL Simulation : "Inter-Transaction Progress" ["Intra-Transaction Progress"] @
"Simulation Time"
///////////////////////////////////////////////////////////////////////////////////
// RTL Simulation : 0 / 1 [0.00%] @ "110000"
// RTL Simulation : 0 / 1 [0.00%] @ "202000"
// RTL Simulation : 0 / 1 [0.00%] @ "404000"