HLS Optimization: Pipeline
Posted wordchao
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HLS Optimization: Pipeline相关的知识,希望对你有一定的参考价值。
Optimization
Using Vivado HLS, you can apply different optimization directives to the design, including:
• Instruct a task to execute in a pipeline, allowing the next execution of the task to begin
before the current execution is complete.
• Specify a latency for the completion of functions, loops, and regions.
• Specify a limit on the number of resources used.
• Override the inherent or implied dependencies in the code and permit specified
operations. For example, if it is acceptable to discard or ignore the initial data values,
such as in a video stream, allow a memory read before write if it results in better
performance.
• Select the I/O protocol to ensure the final design can be connected to other hardware
blocks with the same I/O protocol.
Function and Loop Pipelining
Pipelining allows operations to happen concurrently.
Functions or loops are pipelined using the PIPELINE directive. The directive is specified in
the region that constitutes the function or loop body. The initiation interval defaults to 1 if
not specified but may be explicitly specified.
Pipelining is applied only to the specified region and not to the hierarchy below: all loops
in the hierarchy below are automatically unrolled. Any sub-functions in the hierarchy below
the specified function must be pipelined individually. If the sub-functions are pipelined, the
pipelined functions above it can take advantage of the pipeline performance. Conversely,
any sub-function below the pipelined top-level function that is not pipelined, may be the
limiting factor in the performance of the pipeline.
There is a difference in how pipelined functions and loops behave.
• In the case of functions, the pipeline runs forever and never ends.
• In the case of loops, the pipeline executes until all iterations of the loop are completed.
Rewinding Pipelined Loops for Performance
Loops which are the top-level loop in a function or are used in a region where the
DATAFLOW optimization is used can be made to continuously execute using the PIPELINE
directive with the rewind option.
Reference:
1.Xilinx UG902
以上是关于HLS Optimization: Pipeline的主要内容,如果未能解决你的问题,请参考以下文章
18-Jenkisn-Pipelin-声明式流水线语法-triggers/stage/tool
System.Web.Optimization 和 Microsoft.Web.Optimization 不会在 vs 2012 中加载参考