- Critial path estimation, see section "Strategy 2: Estimate Critical Path Without Running Synthesis". This is the fastest way to get critical path, without need to run synthesis tool. You can use this feature to get quick estimate and iteratively improve your design.
- Generic ASIC/FPGA workflow, see section "Strategy 3: Annotate Critical Path By Using Backannotation". You can get more accurate timing result by running sythesis tool. You can continue improve your design until you can meet timing in this workflow
the compilation failed due to timing violation
5 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Madhusudan
am 6 Sep. 2024
Bearbeitet: Walter Roberson
am 6 Sep. 2024
Hello,
I am working on generating an NI FPGA Bitfile from Simulink. During the generation process, I encountered an error. I have attached the error message and the HDL code generation report. Could you please help me resolve this issue?
%% Set Model ‘PB’ HDL parameters
hdlset_param(‘PB’, 'AdaptivePipelining', 'on');
hdlset_param(‘PB’, 'Backannotation', 'on');
hdlset_param(‘PB’, 'CriticalPathEstimation', 'on');
hdlset_param(‘PB’, 'FloatingPointTargetConfiguration', hdlcoder.createFloatingPointTargetConfig('NativeFloatingPoint' ...
, 'LatencyStrategy', 'Zero') ...
);
hdlset_param(‘PB’, 'HDLSubsystem', ‘PB’);
hdlset_param(‘PB’, 'MulticyclePathConstraints', 'on');
hdlset_param(‘PB’, 'OptimizationReport', 'on');
hdlset_param(‘PB’, 'Oversampling', 61);
hdlset_param(‘PB’, 'ReferenceDesign', 'Default system');
hdlset_param(‘PB’, 'ResourceReport', 'on');
hdlset_param(‘PB’, 'SynthesisTool', 'NI LabVIEW');
hdlset_param(‘PB’, 'SynthesisToolChipFamily', 'Kintex7');
hdlset_param(‘PB’, 'SynthesisToolDeviceName', 'xc7k325t');
hdlset_param(‘PB’, 'SynthesisToolPackageName', 'fbg676');
hdlset_param(‘PB’, 'SynthesisToolSpeedValue', '-1');
hdlset_param(‘PB’, 'TargetDirectory', 'hdl_prj\hdlsrc');
hdlset_param(‘PB’, 'TargetFrequency', 40);
hdlset_param(‘PB’, 'TargetPlatform', 'PXIe-7868R');
hdlset_param(‘PB’, 'Traceability', 'on');
hdlset_param(‘PB’, 'Workflow', 'NI FPGA Bitfile Generation');
Thank you.
0 Kommentare
Akzeptierte Antwort
Wang Chen
am 6 Sep. 2024
To clarify, it looks like you are trying to run the HDL Coder generated HDL code using 40MHz clock, and the NI FPGA compilation reports that the logic cannot meet 40MHz requrement (25ns).
The recommentation is to use the HDL Coder features to find out the critical path in your design, and then use HDL Coder optimization features to insert pipeline registers to reduce the critical path to be less than 25ns.
You can use several HDL Coder features mentioned in this page:
After you identified the critical path in your design, there are several recommendations for improve the design in "Step 3: Resolve Timing Failures" section.
Thanks,
Wang
0 Kommentare
Weitere Antworten (0)
Siehe auch
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!