news 2026/7/22 7:56:13

Stable数组的使用

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Stable数组的使用


一、stable说明
1.使用stable修饰数组,用于标记stream数据流区域的输入变量或者输出变量
2.stable修饰数组的目的,是用于移除对应的同步,但是移除同步之前,用户需要确保
设计是正确无误的,确实能够移去掉,才去做stable修饰,否则不要使用stable修饰数组

二、案例
void dataflow_region(int A[...], src,dst)
#pragma HLS stable variable=A
#pragma HLS dataflow
proc1(src,temp);
proc2(A,temp,dst);
}
上述代码如果不使用stable修饰数组,那么proc2准备好,才能启动Proc1;
这样组织数据流迭代重叠,导致性能下降。
如果使用stable修饰数组,那么无需要这个等待同步,proc1不需要等待proc2;
如无 stable 编译指示并假定 A 由 proc2 读取(因为 proc2 当前绕过任务),将出现性能损失。

需要注意的是:
仅当数据流区域尚未开始执行或者已完成执行时,调用程序才会更新或读取这些变量。


三、axilite+ap_memory+ap_stable对数组的综合优化
void stream_top
(
hls::stream<ap_uint<32> >& src,
hls::stream<ap_uint<32> >& dst,
ap_uint<32> param_cfg[1024]
){
#pragma HLS INTERFACE ap_stable port=param_mem
#pragma HLS RESOURCE variable=param_mem core=RAM_2P_BRAM
#pragma HLS INTERFACE axis register both port=src
#pragma HLS INTERFACE axis register both port=dst
#pragma HLS INTERFACE s_axilite port=return
#pragma HLS INTERFACE s_axilite port=param_mem

#pragma HLS DATAFLOW

static hls::stream<ap_uint<32> > temp;
#pragma HLS STREAM variable=temp depth=2 dim=1

proc1(src,temp);
proc2(param_cfg,temp,dst);//param_cfg为单口RAM,使用双口RAM需要中间定义一个局部数组进行一次缓存

}

四、stable修饰数组需要注意

仅当数据流区域尚未开始执行或者已完成执行时,调用程序才会更新或读取这些变量。

如果你不满足这个要求,不要使用stable数组。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/7/15 5:12:56

stm32毕业论文(毕设)必过选题思路

【单片机毕业设计项目分享系列】 &#x1f525; 这里是DD学长&#xff0c;单片机毕业设计及享100例系列的第一篇&#xff0c;目的是分享高质量的毕设作品给大家。 &#x1f525; 这两年开始毕业设计和毕业答辩的要求和难度不断提升&#xff0c;传统的单片机项目缺少创新和亮点…

作者头像 李华
网站建设 2026/7/21 21:38:22

北大联合阿里达摩院:让AI代码生成告别“只会跑不会快“的困境

当我们打开手机App或者使用各种软件时&#xff0c;背后都有无数行代码在默默运转。而现在&#xff0c;人工智能已经能够帮助程序员写代码了——这听起来很酷&#xff0c;但问题是&#xff0c;AI写出的代码往往像一个刚学会开车的新手&#xff1a;能把车开到目的地&#xff0c;但…

作者头像 李华
网站建设 2026/7/17 21:11:17

计算机Java毕设实战-基于SpringBoot的汽车服务管理系统基于springboot车辆综合服务平台【完整源码+LW+部署说明+演示视频,全bao一条龙等】

博主介绍&#xff1a;✌️码农一枚 &#xff0c;专注于大学生项目实战开发、讲解和毕业&#x1f6a2;文撰写修改等。全栈领域优质创作者&#xff0c;博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java、小程序技术领域和毕业项目实战 ✌️技术范围&#xff1a;&am…

作者头像 李华
网站建设 2026/7/17 5:25:15

农产品运输服务平台开题

目录 农产品运输服务平台的背景与意义平台核心功能设计技术支持与创新点商业模式与推广策略预期社会效益 项目技术支持可定制开发之功能亮点源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作 农产品运输服务平台的背景与意义 农产品运输是连…

作者头像 李华
网站建设 2026/7/16 20:04:18

NVIDIA推出Fast-ThinkAct框架:让机器人思考速度提升9倍

这项由英伟达&#xff08;NVIDIA&#xff09;公司联合国立台湾大学、伊利诺伊大学厄巴纳-香槟分校等多个研究机构共同完成的研究发表于2026年1月15日&#xff0c;论文编号为arXiv:2601.09708v1。有兴趣深入了解的读者可以通过该编号查询完整论文。 当今世界&#xff0c;机器人正…

作者头像 李华
网站建设 2026/7/15 6:41:49

健康咨询平台的设计与实现

目录 健康咨询平台的设计与实现核心功能模块技术架构设计安全与合规措施扩展功能方向 项目技术支持可定制开发之功能亮点源码获取详细视频演示 &#xff1a;文章底部获取博主联系方式&#xff01;同行可合作 健康咨询平台的设计与实现 健康咨询平台旨在为用户提供在线医疗咨询…

作者头像 李华