Speed and Area Optimization
Improvements through resource sharing and RAM mapping
For your target hardware, generate High-Level Synthesis code from a MATLAB® function that meets timing and area requirements by using speed and area optimizations. Area optimizations reduce resource usage of your design. Speed optimizations improve the timing of your design on the target hardware so that your design runs at higher frequencies by optimizing the critical path.
Classes
hdl.WorkingSet | Working set object that generates working sets form input image for HLS code generation (Since R2023a) |
Functions
coder.hdl.arraydistance | Specify minimum or maximum array distance inside pipelined
for -loop (Since R2022b) |
coder.hdl.constrainlatency | Specify the minimum and maximum acceptable hardware latency for a MATLAB function for High-Level Synthesis (HLS) code generation (Since R2022a) |
coder.hdl.literaltext | Specify the literal text to define in the pragma (Since R2024b) |
coder.hdl.loopspec | Unroll or stream loops in generated HDL and High-Level Synthesis (HLS) code |
coder.hdl.stable | Define stable inputs in MATLAB design (Since R2022b) |
coder.inline | Control inlining of current function in generated code |
coder.hdl.interface | Map input or output variable to interface in generated HLS code (Since R2023a) |
getWorkingSet | Get working set from the input image at specified position (Since R2023a) |
nextWorkingSet | Get next working set from input image from last pixel position (Since R2024a) |
hasNextWorkingSet | Check whether another working set can be constructed from input image (Since R2024a) |
currentWorkingSet | Get current working set or the last generated working set from input image (Since R2024a) |
Topics
- Map Persistent Arrays to RAM
To map persistent array variables to RAMs in the generated High-Level Synthesis (HLS) code, use the RAM mapping optimization.
- Pipelining of for-Loops
Pipelining allows concurrent execution of multiple iterations.