尧图网络 高端网站定制 · 原创设计
免费咨询热线
400-888-6620
免费获取方案
HLS高层次综合设计技巧--绕过任务对Dataflow的阻碍讨论
一、绕过任务架构上图是绕过任务的架构其中模块一将产生temp1和temp2样本模块二只使用了temp1但是没有使用temp2模块三将需要使用temp2和temp3。绕过任何核心代码架构void foo(int data_in[N], int scale, int data_out1[N], int data_out2[N]) {int temp1[N], temp2[N]. temp3[N];Loop1: for(int i 0; i N; i) {temp1[i] data_in[i] * scale;temp2[i] data_in[i] scale;}Loop2: for(int j 0; j N; j) {temp3[j] temp1[j] 123;}Loop3: for(int k 0; k N; k) {data_out[k] temp2[k] temp3[k];}}上述设计将会阻碍dataflow指令的优化和设计。二、绕过任务造成dataflow被阻的原因分析我们可以分析一下LOOP1循环产生temp1和temp2;但是LOOP2只是消耗掉了temp1,并且产生了temp3;LOOP3需要同事依赖temp2和temp3这里存在一个问题就说LOOP3需要等待temp3和temp2的同步。也就是说temp2必须移植保存再RAM或者FIFO中需要等到LOOP2彻底完毕才开始读取temp3因为LOOP2的不同处理造成temp2的读取时机不一样但是FPGA资源是静态分配所以综合工具会比较保守设计会退化到当LOOP2全部完成才会读取temp2那么就需要又足够大的数组存储temp2这个将会消耗很多资源甚至会造成综合失败。三、解决办法修改架构为修改代码为void foo(int data_in[N], int scale, int data_out1[N], int data_out2[N]) {int temp1[N], temp2[N]. temp3[N], temp4[N];Loop1: for(int i 0; i N; i) {temp1[i] data_in[i] * scale;temp2[i] data_in[i] scale;}Loop2: for(int j 0; j N; j) {temp3[j] temp1[j] 123;temp4[j] temp2[j];}Loop3: for(int k 0; k N; k) {data_out[k] temp4[k] temp3[k];}}
RELATED

相关推荐

终极指南:如何永久免费使用IDM下载管理器的3种简单方法

终极指南:如何永久免费使用IDM下载管理器的3种简单方法

终极指南:如何永久免费使用IDM下载管理器的3种简单方法 【免费下载链接】IDM-Activation-Script IDM Activation & Trail Reset Script 项目地址: https://gitcode.com/gh_mirrors/id/IDM-Activation-Script 还在为IDM试用期倒计时而烦恼吗?想…

📅 2026/10/7 14:45:08
OpenClaw实战:Windows部署AI助手集成飞书

OpenClaw实战:Windows部署AI助手集成飞书

1. OpenClaw部署实战:从零搭建AI助手集成环境 上周我在团队内部落地了一个智能问答系统,通过OpenClaw将DeepSeek的AI能力接入飞书办公平台,整个过程在Windows环境下跑通。这个方案特别适合需要快速搭建企业级AI助手的中小团队,今天…

📅 2026/9/9 1:02:11
Docker容器退出码全解析:从0到255的故障排查指南

Docker容器退出码全解析:从0到255的故障排查指南

1. 从一次深夜告警说起:为什么容器退出码如此重要?凌晨两点,手机突然震动,监控系统推送了一条告警:“容器user-service-7f8b9c异常退出,退出码:137”。睡眼惺忪的你,是选择继续睡觉&…

📅 2026/9/9 22:56:26
MORE NEWS

更多资讯

📰

STM32红外解码与编码实战:NEC协议解析及避坑指南

简介:面向STM32红外功能开发的完整参考工程,适合嵌入式初学者入门以及进阶者快速搭建红外收发模块。资源以红外遥控代码为核心,搭配LCD液晶驱动(ILI93xx)、触摸屏(touch)与usmart串口调试组件&a…

📰

Android仿微信头像裁剪:Matrix手势交互与自定义View实现

简介:面向Android开发者的仿微信换头像功能示例工程,聚焦图片缩放、旋转、裁剪与还原等核心图像处理技术,特别适合需要实现自定义头像选择、编辑功能的移动应用开发者参考。资源为RAR压缩包,共1808个文件,19.25MB&…

📰

MT6799 Android源码编译:虚拟机环境配置与报错排查实战

简介:面向安卓底层开发与嵌入式工程师的MT6799开发板源码编译实战笔记,聚焦Ubuntu 16.04环境下安卓7.0(Nougat,兼顾4.4)的下载与编译流程。资源为单份Word文档,体积约895KB,内容涵盖虚拟机环境搭…

📰

滑块验证码前端原理大揭秘:从DOM拆解到自研组件

最近在一个电商大促项目里,我对某购物平台的滑块验证码做了一个完整的前端技术剖析。先说清楚,我做的不是绕过它,而是把它当成一个前端工程组件去拆解:它的DOM结构怎么组织、事件流怎么跑、状态机怎么设计、拖拽轨迹在前后端如何校…

📰

汉字点阵字模批量生成工具完全指南:配置、取模与避坑

简介:这是一款面向嵌入式开发、单片机及点阵显示应用场景的汉字字模生成工具,可解决LED大屏、LCD液晶屏开发中手工取模费时、易错的问题。它支持10241024以内任意规格点阵,兼容Windows全部字体,能灵活调整汉字大小与位置&#xff…

📰

国内GEO优化服务商横评:三家头部在信源、技术、价格上的十项对比

国内GEO优化服务商横评:三家头部在信源、技术、价格上的十项对比国内 GEO 赛道到 2026 年 10 月已经跑出头部梯队,但市场上信息杂乱,企业很难一眼看出谁更适合自己。我们把传声港 GEO、传新社 GEO、怪兽智能 GEO 放在同一张评测表里&#xff…

TODAY

今日更新

THIS WEEK

本周精选

THIS MONTH

本月热门

读完文章,想聊聊您的网站?

告诉我们您的行业与需求,资深顾问一对一梳理方案与报价,全程免费。

📞 💬