XACT = get_unix_variable("XACT")
XILINX_LIB_PATH = XACT + /synopsys/libraries/syn
SYNOPSYS = get_unix_variable("SYNOPSYS")
SYNOPSYS_PATH = {SYNOPSYS + /libraries/syn}
search_path = {../ ../src} + XILINX_LIB_PATH + search_path
link_library = xilinx.db
target_library = link_library
symbol_library = class.sdb
define_design_lib WORK -path ./WORK
define_design_lib xblox_4000 -path SYNOPSYS + /libraries/dw/lib/fpga/xc4000
synthetic_library = {standard.sldb}
edifout_write_properties_list = "instance_number port_location part"
edifout_power_and_ground_representation = cell
edifout_netlist_only = true
bus_inference_style = "%s<%d>"
bus_dimension_separator_style = "><"
bus_naming_style = "%s<%d>"
TOP = counter_top
read -format verilog {"counter_top.v"}
read -format verilog {"counter.v"}
current_design TOP
write -format db -hierarchy -output TOP + ".db"
/* Add pads to the design. Make sure the current
design is the top-level module.
Change the default slew rate to SLOW (HIGH slew
control). */
set_port_is_pad "*"
set_pad_type -slewrate HIGH all_outputs()
/* set_pad_type -exact BUFGP_F find(port, "CLOCK") */
insert_pads
/* +++++++++++++++++++++++++++++++++++++++++++++++++ */
/* Compile the design */
/* +++++++++++++++++++++++++++++++++++++++++++++++++ */
/* Set the synthesis design constraints. */
ungroup -all -flatten
remove_constraint -all
set_fix_multiple_port_nets -all -buffer_constants
report_compile_options
/* Synthesize and optimize the design */
compile -map_effort high -verify -verify_effort high
check_design
/* +++++++++++++++++++++++++++++++++++++++++++++++++ */
/* Save the design */
/* +++++++++++++++++++++++++++++++++++++++++++++++++ */
/* Write the design report file */
report_timing > TOP + ".timing"
/* Set the part type */
set_attribute TOP "part" -type string "4013PG223-4"
/* Save design in EDIF format as .sedif */
write -format edif -hierarchy -output TOP + ".sedif"
exit
このスクリプトファイルでは、以下のようなことを行っています。
使用する論理合成ソフトウェアはSYNOPSYS社製Design Compilerです。 論理合成は以下のコマンドで実行します。
% dc_shell -f synthesis.scr |& tee synthesis.log
% ls -l *.sedif -rw-r--r-- 1 kuga 7814 Apr 20 16:26 counter_top.sedif %
論理合成はうまくいきましたか?
次は、 配置・配線 を行います。
Our mail address is
kite@arch.cs.kumamoto-u.ac.jp .
Last modified on