6. ap_ovld 对于输入信号,其效果与ap_none是一样的。 对于输出信号,其效果与ap_vld是一样的。 对于双向(inout)类型的信号,输入使用ap_none,输出使用ap_vld进行处理。 7. ap_memory 把对数组的读写等效为对外部RAM的引用。 8. ap_fifo 把对数组、指针和参数引用的读写用FIFO的方式来实现。 9. ap_bus...
ap_bus — 这个协议是泛泛的没有指定具体总线标准的总线接口,可以用于和总线桥的通信,这样就能受系统总线的仲裁了。ap_bus 协议支持单次读操作、单次写操作和批量传输,这些是由一组控制信号所协调的。除了这个通用的总线结构之外,对 AXI 总线接口的特殊支持,可以在较晚的阶段,用接口综合指令来集成进去。 axis —...
对于输入信号,其效果与ap_none是一样的。 对于输出信号,其效果与ap_vld是一样的。 对于双向(inout)类型的信号,输入使用ap_none,输出使用ap_vld进行处理。 7. ap_memory 把对数组的读写等效为对外部RAM的引用。 8. ap_fifo 把对数组、指针和参数引用的读写用FIFO的方式来实现。 9. ap_bus 把对指针和参...
添加FIFO接口: Directive-> Interface -> mode: ap_fifo,包括输出的写使能和输入的FIFO满信号; 添加HLS总线协议: Directive-> Interface -> mode: ap_bus Block-level Protocol: 用于模块的控制端口的协议设计 当模块内消耗多于1个时钟周期,ap_clk和ap_rst会被自动添加; 对顶层模块进行Directive -> Interface -...
ap_ack,ap_bus,ap_fifo,ap_hs,ap_memory,ap_none,ap_ovld,ap_stable,ap_vld,axis,m_axi,s_axilite; 对led_ctrl这个顶层设计加指令约束 对led_ctrl这个顶层设计加指令约束-接口约束 顶层接口约束,可以选择的就上面四种类型 看看这个rtl代码接口,是不是你想要的接口设计 ...
如果按顺序访问数组,可使用 ap_fifo 接口。就像 ap_hs 接口一样,如果 Vivado HLS 判定未按顺序进行数据访问,那么它将停止;如果无法判定是否采用顺序访问,则将发出警告;如果判定已采用顺序方式访问,则不发出任何消息。ap_fifo 接口只能用于读取或写入,不能用于同时读写。 ap_bus 接口可与总线网桥进行通信。此接口...
当这种情况在硬件应用时,需要某种格式的数据索引,这种情况对于wire类型,或者握手类型还是Fifo类型来说,都不支持。像上例1-2指针运算的代码,只能综合成ap_bus接口,因为这种接口带有地址,当数据存取(读写)时,用于对应的数据索引指示。 还有一种方法,代码必须修改成如下例子1-4的风格,用数据array作为接口替代指针。这种...
添加FIFO接口: Directive-> Interface -> mode: ap_fifo,包括输出的写使能和输入的FIFO满信号; 添加HLS总线协议: Directive-> Interface -> mode: ap_bus Block-level Protocol: 用于模块的控制端口的协议设计 当模块内消耗多于1个时钟周期,ap_clk和ap_rst会被自动添加; ...
#pragma HLS INTERFACE ap_bus depth=1024 port=p_a 为指p_a生成AXI Stream接口的约束: #pragma HLS INTERFACE axis port= p_a ui_vector_length是一个输入参数,指定buffer的长度。转换成硬件模块后,会生成一个可写的寄存器,可以由AXI Lite总线访问,由CPU写入长度。为输入参数ui_vector_length生成AXI Lite寄存...
ap_bus,这个协议没有指定具体的总线标准,可以用于和总线桥的通信. axis,AXI流操作. s_axilite,AXI Slave Lite,简化从机协议. m_axi,AXI主机协议. 进一步的数据可以在最上面的[18]里找到. 根据参数类型的默认协议,将上文中提到的函数接口图更新.