@@ -2689,22 +2689,8 @@ void add_original_sdc_to_post_implemented_sdc_file(std::ofstream& sdc_os,
2689
2689
*
2690
2690
* @param sdc_os
2691
2691
* The file stream to add the propagated clock commands to.
2692
- * @param clock_modeling
2693
- * The type of clock modeling used by VPR during the CAD flow.
2694
2692
*/
2695
- void add_propagated_clocks_to_sdc_file (std::ofstream& sdc_os,
2696
- e_clock_modeling clock_modeling) {
2697
-
2698
- // Ideal and routed clocks are handled by the code below. Other clock models
2699
- // like dedicated routing are not supported yet.
2700
- // TODO: Supporting dedicated routing should be simple; however it should
2701
- // be investigated. Tried quickly but found that the delays produced
2702
- // were off by 0.003 ns. Need to investigate why.
2703
- if (clock_modeling != e_clock_modeling::ROUTED_CLOCK && clock_modeling != e_clock_modeling::IDEAL_CLOCK) {
2704
- VPR_FATAL_ERROR (VPR_ERROR_IMPL_NETLIST_WRITER,
2705
- " Only ideal and routed clock modeling are currentlt "
2706
- " supported for post-implementation SDC file generation" );
2707
- }
2693
+ void add_propagated_clocks_to_sdc_file (std::ofstream& sdc_os) {
2708
2694
2709
2695
// The timing constraints contain information on all the clocks in the circuit
2710
2696
// (provided by the user-provided SDC file).
@@ -2751,18 +2737,15 @@ void add_propagated_clocks_to_sdc_file(std::ofstream& sdc_os,
2751
2737
2752
2738
/* *
2753
2739
* @brief Generates a post-implementation SDC file with the given file name
2754
- * based on the timing info and clock modeling set for VPR.
2740
+ * based on the timing info used for VPR.
2755
2741
*
2756
2742
* @param sdc_filename
2757
2743
* The file name of the SDC file to generate.
2758
2744
* @param timing_info
2759
2745
* Information on the timing used in the VPR flow.
2760
- * @param clock_modeling
2761
- * The type of clock modeling used by VPR during its flow.
2762
2746
*/
2763
2747
void generate_post_implementation_sdc (const std::string& sdc_filename,
2764
- const t_timing_inf& timing_info,
2765
- e_clock_modeling clock_modeling) {
2748
+ const t_timing_inf& timing_info) {
2766
2749
if (!timing_info.timing_analysis_enabled ) {
2767
2750
VTR_LOG_WARN (" Timing analysis is disabled. Post-implementation SDC file "
2768
2751
" will not be generated.\n " );
@@ -2783,7 +2766,7 @@ void generate_post_implementation_sdc(const std::string& sdc_filename,
2783
2766
add_original_sdc_to_post_implemented_sdc_file (sdc_os, timing_info);
2784
2767
2785
2768
// Add propagated clocks to SDC file if needed.
2786
- add_propagated_clocks_to_sdc_file (sdc_os, clock_modeling );
2769
+ add_propagated_clocks_to_sdc_file (sdc_os);
2787
2770
}
2788
2771
2789
2772
} // namespace
@@ -2797,7 +2780,6 @@ void netlist_writer(const std::string basename,
2797
2780
std::shared_ptr<const AnalysisDelayCalculator> delay_calc,
2798
2781
const LogicalModels& models,
2799
2782
const t_timing_inf& timing_info,
2800
- e_clock_modeling clock_modeling,
2801
2783
t_analysis_opts opts) {
2802
2784
std::string verilog_filename = basename + " _post_synthesis.v" ;
2803
2785
std::string blif_filename = basename + " _post_synthesis.blif" ;
@@ -2822,8 +2804,7 @@ void netlist_writer(const std::string basename,
2822
2804
VTR_LOG (" Writing Implementation SDC : %s\n " , sdc_filename.c_str ());
2823
2805
2824
2806
generate_post_implementation_sdc (sdc_filename,
2825
- timing_info,
2826
- clock_modeling);
2807
+ timing_info);
2827
2808
}
2828
2809
}
2829
2810
0 commit comments