@@ -1307,6 +1307,7 @@ set_false_path -hold -fall_through [get_pins u_padring/gen_mio_pads_11__u_mio_pa
13071307# IOB3
13081308set_false_path -hold -fall_through [get_pins u_padring/gen_mio_pads_12__u_mio_pad/gen_techlib_u_impl_techlib/gen_bidir_u_pad_macro_PBIDIR_33_33_FS_DR/OE]
13091309
1310+ # For SPI_HOST1, I/O timing is only closed on pads IOB0, IOB1, IOB2, and IOB3 (see below for details).
13101311set_false_path -from IO_DIV2_CLK -through [get_cells -hierarchical -filter " full_name =~ *u_spi_host1*" ] -to IOA0
13111312set_false_path -from IO_DIV2_CLK -through [get_cells -hierarchical -filter " full_name =~ *u_spi_host1*" ] -to IOA1
13121313set_false_path -from IO_DIV2_CLK -through [get_cells -hierarchical -filter " full_name =~ *u_spi_host1*" ] -to IOA2
@@ -1319,7 +1320,6 @@ set_false_path -from IO_DIV2_CLK -through [get_cells -hierarchical -filter "ful
13191320set_false_path -from IO_DIV2_CLK -through [get_cells -hierarchical -filter " full_name =~ *u_spi_host1*" ] -to IOB10
13201321set_false_path -from IO_DIV2_CLK -through [get_cells -hierarchical -filter " full_name =~ *u_spi_host1*" ] -to IOB11
13211322set_false_path -from IO_DIV2_CLK -through [get_cells -hierarchical -filter " full_name =~ *u_spi_host1*" ] -to IOB12
1322- set_false_path -from IO_DIV2_CLK -through [get_cells -hierarchical -filter " full_name =~ *u_spi_host1*" ] -to IOB3
13231323set_false_path -from IO_DIV2_CLK -through [get_cells -hierarchical -filter " full_name =~ *u_spi_host1*" ] -to IOB4
13241324set_false_path -from IO_DIV2_CLK -through [get_cells -hierarchical -filter " full_name =~ *u_spi_host1*" ] -to IOB5
13251325set_false_path -from IO_DIV2_CLK -through [get_cells -hierarchical -filter " full_name =~ *u_spi_host1*" ] -to IOB6
@@ -1357,6 +1357,44 @@ set_false_path -from IO_DIV2_CLK -through [get_cells -hierarchical -filter "ful
13571357set_false_path -from IO_DIV2_CLK -through [get_cells -hierarchical -filter " full_name =~ *u_spi_host1*" ] -through IOR1 -to IO_DIV2_CLK
13581358set_false_path -from SPI_HOST1_INTERNAL_CLK -through [get_cells -hierarchical -filter " full_name =~ *u_spi_host1*" ] -through IOR1 -to IO_DIV2_CLK
13591359
1360+ # SPI_HOST1 CSB (MioOut 51 -> mux sel 54) drives IOB0 (MIO pad 9):
1361+ set_case_analysis 0 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_9/q[0]
1362+ set_case_analysis 1 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_9/q[1]
1363+ set_case_analysis 1 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_9/q[2]
1364+ set_case_analysis 0 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_9/q[3]
1365+ set_case_analysis 1 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_9/q[4]
1366+ set_case_analysis 1 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_9/q[5]
1367+ set_case_analysis 0 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_9/q[6]
1368+
1369+ # SPI_HOST1 SD0 (MioOut 38 -> mux sel 41) drives IOB1 (MIO pad 10):
1370+ set_case_analysis 1 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_10/q[0]
1371+ set_case_analysis 0 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_10/q[1]
1372+ set_case_analysis 0 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_10/q[2]
1373+ set_case_analysis 1 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_10/q[3]
1374+ set_case_analysis 0 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_10/q[4]
1375+ set_case_analysis 1 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_10/q[5]
1376+ set_case_analysis 0 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_10/q[6]
1377+
1378+ # IOB2 (MIO pad 11 -> mux sel 13) drives SPI_HOST1 SD1 (MioIn 39):
1379+ set_case_analysis 1 top_earlgrey/u_pinmux_aon/u_reg/u_mio_periph_insel_39/q[0]
1380+ set_case_analysis 0 top_earlgrey/u_pinmux_aon/u_reg/u_mio_periph_insel_39/q[1]
1381+ set_case_analysis 1 top_earlgrey/u_pinmux_aon/u_reg/u_mio_periph_insel_39/q[2]
1382+ set_case_analysis 1 top_earlgrey/u_pinmux_aon/u_reg/u_mio_periph_insel_39/q[3]
1383+ set_case_analysis 0 top_earlgrey/u_pinmux_aon/u_reg/u_mio_periph_insel_39/q[4]
1384+ set_case_analysis 0 top_earlgrey/u_pinmux_aon/u_reg/u_mio_periph_insel_39/q[5]
1385+
1386+ # SPI_HOST1 does not drive IOB2.
1387+ set_false_path -from IO_DIV2_CLK -through [get_cells -hierarchical -filter " full_name =~ *u_spi_host1*" ] -to IOB2
1388+
1389+ # SPI_HOST1 SCK (MioOut 50 -> mux 53) drives IOB3 (MIO pad 12):
1390+ set_case_analysis 1 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_12/q[0]
1391+ set_case_analysis 0 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_12/q[1]
1392+ set_case_analysis 1 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_12/q[2]
1393+ set_case_analysis 0 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_12/q[3]
1394+ set_case_analysis 1 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_12/q[4]
1395+ set_case_analysis 1 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_12/q[5]
1396+ set_case_analysis 0 top_earlgrey/u_pinmux_aon/u_reg/u_mio_outsel_12/q[6]
1397+
13601398if { $synopsys_program_name eq " pt_shell" } {
13611399set_false_path -from SPI_HOST1_INTERNAL_CLK -through [get_cells -hierarchical -filter " full_name =~ *u_spi_host1*" ] -through IOB0 -to IO_DIV2_CLK
13621400set_false_path -from SPI_HOST1_INTERNAL_CLK -through [get_cells -hierarchical -filter " full_name =~ *u_spi_host1*" ] -through IOB1 -to IO_DIV2_CLK
@@ -1374,7 +1412,6 @@ set_false_path -from SPI_HOST1_INTERNAL_CLK -to IOA8
13741412set_false_path -from SPI_HOST1_INTERNAL_CLK -to IOB10
13751413set_false_path -from SPI_HOST1_INTERNAL_CLK -to IOB11
13761414set_false_path -from SPI_HOST1_INTERNAL_CLK -to IOB12
1377- set_false_path -from SPI_HOST1_INTERNAL_CLK -to IOB3
13781415set_false_path -from SPI_HOST1_INTERNAL_CLK -to IOB4
13791416set_false_path -from SPI_HOST1_INTERNAL_CLK -to IOB5
13801417set_false_path -from SPI_HOST1_INTERNAL_CLK -to IOB6
0 commit comments