2026/4/9 6:55:30
网站建设
项目流程
建站模板外贸,个人博客网站logo,软件公司主要做哪些,响应式网站建设方案一、pipieline的目的1.pipeline的目的是让II1或者尽可能的接近1二、pipeline优化分类
1.对操作或者表达式pipeline
对内置函数单元#xff0c;例如adder,multiplier,memory进行pipeline
sequence of operations进行pipeline2.对循环pipeline
对while循环#xff0c;for循环进…一、pipieline的目的1.pipeline的目的是让II1或者尽可能的接近1二、pipeline优化分类1.对操作或者表达式pipeline对内置函数单元例如adder,multiplier,memory进行pipelinesequence of operations进行pipeline2.对循环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的pipeline4.task的pipeline三、pipeline的flush怎么用关于pipeline的flush四、pipeline被限制1.loop with可变边界会阻止循环pipeline对于循环边界是变量的for循环通过优化实现了pipeline功能2.数据的依赖会阻碍循环pipeline3.IO的带宽memory访问速度bram的port都会阻碍pipline4.branch控制分支会阻碍pipeline参考资料1. HLS Textbook. https://www.boledu.org/textbooks/hls-textbook2. 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)