news 2026/1/28 19:57:29

pipeline设计总结

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
pipeline设计总结

一、pipieline的目的

1.pipeline的目的是让II=1或者尽可能的接近1

二、pipeline优化分类
1.对操作或者表达式pipeline
对内置函数单元,例如adder,multiplier,memory进行pipeline
sequence of operations进行pipeline

2.对循环pipeline
对while循环,for循环进行pipeline
对循环pipeline,循环中的迭代草是overlap重叠的

下图的for循环的三种类型的pipeline

第一种,复用加法器

第二种,内层循环全部被展开

第三种,for循环被全部展开

3.function函数的pipeline
函数是overlap重叠的

对function进行pipeline后
如果这个函数run forever and never ends的情况下,
函数是自动rewind的,函数之间的bubble被挤掉了
并且,函数中的所有loops将全部被unroll展开。
pipeline函数可以使用dataflow并行化替代

注意:对function进行pipeline的代价比较大,因为会将所有的loop展开,
所以一般使用dataflow来替代function的pipeline

4.task的pipeline

三、pipeline的flush怎么用

关于pipeline的flush

四、pipeline被限制
1.loop with可变边界会阻止循环pipeline

对于循环边界是变量的for循环,通过优化实现了pipeline功能


2.数据的依赖会阻碍循环pipeline
3.IO的带宽,memory访问速度,bram的port都会阻碍pipline
4.branch控制分支,会阻碍pipeline

参考资料:

1. HLS Textbook. https://www.boledu.org/textbooks/hls-textbook

2. Kastner, R., Matai, J., and Neuendorffer, S.. Parallel Programming for FPGAs. (https://kastner.ucsd.edu/hlsbook/)

3. Fingeroff, Michael. High-Level Synthesis Blue Book. Xlibris Corporation, 2010.

4. Xilinx Vivado Design Suite User Guide: High-Level Synthesis (UG902). (https://docs.xilinx.com/v/u/en-US/ug902-vivado-high-level-synthesis)

5. Xilinx Vivado Design Suite Tutorial: High-Level Synthesis (UG871). (https://docs.xilinx.com/v/u/en-US/ug871-vivado-high-level-synthesis-tutorial)

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

linux——进程状态

❀保持低旋律节奏->个人主页 专栏链接:《C学习》、《Linux学习》 文章目录前置知识1.操作系统中的进程状态和Linux中的进程状态👍2.偏移量起始地址 &目标地址👍3.正式开始剖析!操作系统内核里面的数据结构那么为什么操作系…

作者头像 李华
网站建设 2026/1/26 19:04:17

推荐一个langchain开发工具包:langchain-dev-utils

在 LangChain 或 LangGraph 生态下做开发的同学,大概率都踩过这些坑:切换不同厂商的大模型要改一堆适配代码、工具调用时参数解析繁琐、多智能体协作逻辑混乱、状态图组合调试困难……这些重复且低效的工作,往往占据了我们大量开发时间。 最…

作者头像 李华
网站建设 2026/1/27 18:48:54

有序二叉树节点的删除

一、细节思考和分类我们删除二叉树的节点时候,要保证删除以后的数据继续保持有序状态,那么就会分为三种情况a.删除叶子节点;b.删除只有一个子节点的节点;c.删除有两个子节点的节点。二、实现思路和代码实现1.删除叶子节点实现思路…

作者头像 李华
网站建设 2026/1/29 8:44:52

“即插即用”的智能升级:具身智能模块如何破解机器人产业化难题

当为传统机器人植入一颗“智能心脏”的成本降至百元级,机器人普及的最后一道壁垒正在被拆除。在机器人技术飞速发展的今天,一个巨大的矛盾日益凸显:一方面,实验室中的机器人越来越智能,甚至能表现出丰富的情感&#xf…

作者头像 李华
网站建设 2026/1/27 23:12:31

AI驱动的芯片设计革命:当算法开始替代“老师傅”的经验

在3纳米及更先进的工艺节点上,传统设计方法正面临瓶颈,而数据驱动的AI正成为破局的关键。在半导体行业,经验曾是最宝贵的财富。一位资深工程师的“设计直觉”,往往能决定一款芯片的性能与成败。然而,当芯片制程从28纳米…

作者头像 李华
网站建设 2026/1/28 18:48:57

基于深度学习的交通标志检测系统(YOLOv10+YOLO数据集+UI界面+Python项目源码+模型)

一、项目介绍 本项目致力于开发一个基于YOLOv10的交通标志检测系统,旨在通过计算机视觉技术实现对交通标志的高效检测与识别。该系统能够实时处理来自交通监控摄像头的视频流或图片,自动识别并标注出其中的交通标志,为自动驾驶、智能交通系统…

作者头像 李华