9.8. Reset Minimization
DSP Builder distinguishes control flow from data flow: control flow is the logic you connect to the ChannelIn and ChannelOut valid signal path. DSP Builder applies little or no reset minimization to control logic and aggressive minimzation to data flow.
By default, DSP Builder chooses reset minimization options for you automatically. It automatically applies reset minimization if your target device includes the HyperFlex architecture.
You may override the default automatic reset minimization options, for example as part of design space optimization.
When you globally apply reset minimization, DSP Builder determines a local reset minimization setting for each of your synthesizable subsystems. DSP Builder applies this local reset minimization conditionally, if your subsystem contains ChannelIn or ChannelOut blocks.
|Global Enable||Local Setting||Synthesizable Subsystem||Reset Minimization|
|On||Conditional||ChannelIn and ChannelOut||Yes|
|On||Conditional||GPIn and GPOut||No|
|On||On||ChannelIn and ChannelOut||Yes|
|On||On||GPIn and GPOut||Yes|
DSP Builder does not apply reset minimization to blocks with innate state, user-constructed cycles, and enable logic in your design, as that can give undefined initial values.
Reset minimization only detects local cycles within a subsystem. You should avoid broader feedback cycles.
Reset minimization may affect the behavior of your design during Simulink simulation and on hardware.
The DSP Builder simulation engine within Simulink is unaware of the reset minimization optimization and therefore always simulates your design behavior with reset present.
In general there is no difference in behavior, and this is aided by the testbench inputs defaulting typically to zero and a longer minimum reset pulse-width allowing such defaults to propagate through the datapath register stages.
However in some cases mismatches may occur, because data entering a Sample Delay in your design during reset is non-zero.
If an input does not default to zero or the internal behavior is incompatible with Sample Delay blocks resetting to zeros (or the minimum reset-pulse width is less than the design latency), the Simulink simulation might be different than the HDL simulation.
Implementation on Hardware
Removing a reset on the datapath means that when DSP Builder releases a reset, your data flow logic may contain values clocked in during reset, which might affect the initial post-reset behavior of your system.
Reset minimization detects and avoids optimizing cycles in your synthesizable subsystem. It does not detect cycles constructed outside of a single synthesizable subsystem. Do not enable it for such designs.