c语言sscanf函数的用法是什么
314
2022-11-05
Vivado HLS中常见的接口类型
图1 通过TCL配置改变端口类型 此外,我们还可以通过在Vivado HLS中的Directive视图中选择INTERFACE来进行更改,如图2所示。
图3 默认情况下的端口综合结果 如果按照图1中的示例对端口类型进行指定,则C综合之后的结果如图4所示。
图4 自定义端口类型之后的端口综合结果 在图1的示例中,我们指定了端口的类型,所以对比图3与图4,可以看出,端口in1和in2的类型从默认的ap_none变为自定义的ap_vld,并且分别具有了对应的数据有效指示位in1_ap_vld和in2ap_vld。 一、Block-level接口协议(块级接口协议,与函数本身相关联,不与任何数据端口相关联) Block-Level Interface端口: 顾名思义,Block端口的作用就是用来控制Block的操作。它在c参数中没有直接的对应,但是它对应了c函数的调用/返回过程。默认Block端口都会加上,如果不需要,可以对函数顶层设置ap_none。 ap_ctrl_none:没有块级I/O控制协议 ap_ctrl_chain:它同ap_ctrl_hs几乎一样,除了多出一个输入信号ap_continue,它可以使得下游模块控制上游模块的运行/终止。不过这种模式比较不常用,所以有兴趣的读者,可以自己去研究相关的文档。 ap_ctrl_hs:块级I/O控制握手协议,我们已经采用的(ap_start,ap_ready,ap_idle,ap_done) ap_ctrl_hs是默认的端口类型,它综合出来的端口会有额外的4个系统控制信号,如下所示: 图片居中使用:
其端口行为时序如下:
2.可以对设计添加全局使能端口。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~