rcp_partition.ss 4.51 KB

search_path = search_path + "../src" + "../inc" + \
   "../../lib/verilog/user" + "../syn"

synthetic_library = synthetic_library + dw02.sldb

link_library = link_library + dw02.sldb


/* read the rcp verilog sources */
read -f verilog ../src/rcp.v
read -f verilog ../src/pad.v
read -f verilog ../src/vclk_driver.v
read -f verilog ../src/syn_clk_buf.v

/* lib/verilog/user */
read -f verilog cbus_driver.v
read -f verilog dbus_driver.v
read -f verilog ebus_driver.v
read -f verilog cp0_driver.v

/* mi */
read -f verilog ../mi/src/mi.v
/* pi */
read -f verilog ../pi/src/pi.v
read -f verilog ../pi/src/pi_controller.v
read -f verilog ../pi/src/pi_dma.v
/* si */
read -f verilog ../si/src/si.v
read -f verilog ../si/src/si_dma.v
read -f verilog ../si/src/si_control.v
read -f verilog ../si/src/si_pchclk.v
read -f verilog ../si/src/si_pif_if.v
/* ai */
read -f verilog ../ai/src/ai.v
read -f verilog ../ai/src/ai_abus.v
read -f verilog ../ai/src/ai_controller.v
read -f verilog ../ai/src/ai_dma.v
/* ar */
read -f verilog ../ar/src/arb.v
/* ri */
read -f verilog ../ri/src/ri.v
/* tst */
read -f verilog ../tst/src/tst.v
/* vi */
read -f verilog ../vi/src/vi.v
read -f verilog ../vi/src/vi_clock.v
read -f verilog ../vi/src/vi_controller.v
read -f verilog ../vi/src/vi_divot.v
read -f verilog ../vi/src/vi_divot_median.v
read -f verilog ../vi/src/vi_dma.v
read -f verilog ../vi/src/vi_filter.v
read -f verilog ../vi/src/vi_filter_csa.v
read -f verilog ../vi/src/vi_filter_and.v
read -f verilog ../vi/src/vi_filter_csa_add8.v
read -f verilog ../vi/src/vi_filter_csa_add9.v
read -f verilog ../vi/src/vi_filter_csa_and.v
read -f verilog ../vi/src/vi_filter_csa_fa7.v
read -f verilog ../vi/src/vi_filter_csa_fa8.v
read -f verilog ../vi/src/vi_filter_csa_faso.v
read -f verilog ../vi/src/vi_filter_csa_faco.v
read -f verilog ../vi/src/vi_filter_csa_ha1.v
read -f verilog ../vi/src/vi_filter_csa_haso.v
read -f verilog ../vi/src/vi_filter_csa_haco.v
read -f verilog ../vi/src/vi_filter_csa_nand.v
read -f verilog ../vi/src/vi_filter_max.v
read -f verilog ../vi/src/vi_filter_penult.v
read -f verilog ../vi/src/vi_gamma.v
read -f verilog ../vi/src/vi_gamma_sqrt.v
read -f verilog ../vi/src/vi_lerp.v
read -f verilog ../vi/src/vi_lerp_booth.v
read -f verilog ../vi/src/vi_lerp_booth0.v
read -f verilog ../vi/src/vi_lerp_booth7.v
read -f verilog ../vi/src/vi_lerp_csa.v
read -f verilog ../vi/src/vi_lerp_csa_add10.v
read -f verilog ../vi/src/vi_lerp_csa_fa4.v
read -f verilog ../vi/src/vi_lerp_csa_fa5.v
read -f verilog ../vi/src/vi_lerp_csa_fa6.v
read -f verilog ../vi/src/vi_lerp_csa_ha1.v
read -f verilog ../vi/src/vi_lerp_csa_ha2.v
read -f verilog ../vi/src/vi_lerp_csa_ha3.v
read -f verilog ../vi/src/vi_lerp_csa_haco.v
read -f verilog ../vi/src/vi_lerp_csa_haso.v
read -f verilog ../vi/src/vi_pipe.v
read -f verilog ../vi/src/vi_rand.v
read -f verilog ../vi/src/vi_sync.v
read -f verilog ../vi/src/vi_sync_fsm.v

/* rdp, rsp sub-blocks compiled netlists */
read -f edif ../rdp/syn/rdp.edf_p
read -f edif ../rdp/syn/cs_ew_cv.edf
read -f edif ../rdp/syn/bl_logic.edf
read -f edif ../rdp/syn/cc_logic.edf
read -f edif ../rdp/syn/tc_logic.edf
read -f edif ../rdp/syn/tm_tf.edf
read -f edif ../rdp/syn/memspan.edf

read -f edif ../rsp/syn/rsp.edf_p
read -f edif ../rsp/syn/data_unit.edf
read -f edif ../rsp/syn/iu.edf
read -f edif ../vu/syn/vu.edf
read -f edif ../sb/syn/rspbusses.edf
read -f edif ../io/syn/io_cmd_dma.edf
read -f edif ../io/syn/io_mem_dma.edf

current_design = rcp

link 

check_design > rcp_partition.lint

set_dont_touch data_unit
set_dont_touch iu
set_dont_touch div
set_dont_touch vusl
set_dont_touch rspbusses
set_dont_touch io_cmd_dma
set_dont_touch io_mem_dma

set_dont_touch mi
set_dont_touch si
set_dont_touch ai
set_dont_touch arb
set_dont_touch vclk_driver
set_dont_touch syn_clk_buf

set_dont_touch cs_ew_cv
set_dont_touch tm_tf
set_dont_touch tc_logic
set_dont_touch cc_logic
set_dont_touch bl_logic
set_dont_touch memspan

set_dont_touch ri
set_dont_touch vi
set_dont_touch pi
set_dont_touch tst

ungroup -flatten -all


/* combine io_cmd_dma, io_mem_dma, ri */
group {rsp_0/io_cmd_dma, rsp_0/io_mem_dma, ri_0, rsp_0/rspbusses} \
       -design_name io_ri -cell_name io_ri

/* combine ai, si, and mi */
group {ai_0, si_0, mi_0, arb_0} -design_name if_logic -cell_name if_logic

current_design = rcp

report_reference

/* enforce naming restrictions for Compass tools */
change_names -rules compass_rules -hierarchy

/*  Write out partitioned edif netlists for synth & layout */

write -f edif -o rcp.edf_p rcp
write -f edif -o io_ri.edf_p io_ri
write -f edif -o if_logic.edf_p if_logic

quit