EDAboard.com | EDAboard.eu | EDAboard.de | EDAboard.co.uk | RTV forum PL | NewsGroups PL

what are the possible reasons that successful pre-synthesis

Ask a question - edaboard.com

elektroda.net NewsGroups Forum Index - Synthesis - what are the possible reasons that successful pre-synthesis

walala
Guest

Sun Sep 07, 2003 4:30 pm   



Dear all,

I have run the pre-synthesis successfully using Modelsim successfully, and
then I do a Synopsys DC synthesis successfully(only have some warnings, no
errors), but when it came to post-synthesis using Modelsim, the outputs
became "XXXXXXXXXXXXX"(no values); some internal nodes have "0", some
internal nodes have "1", and the other internal nodes have "X"... but the
internal nodes were stuck with their values: the "0"s were always "0", the
"1"s were always "1", the "X"s were always "X"...

Worth noting is that I follow the same workflow for some very small designs,
it worked perfectly... but now it failed for medium-big size design...

I feel the errors are so systemetic, which may be caused by some hidden
tricks(for large size design) in Synopsys DC that I did not know...

Can anybody help me out of this swamp?

Thanks:

--------------------------------------------------------------
My script file:

$SYNOPSYS/sparcOS5/syn/bin/dc_shell-t <<!
redirect myidct.log {
analyze -format vhdl -lib WORK {myidct.vhd}
elaborate myidct -arch "flex" -lib WORK -update
ungroup -all -flatten
create_clock "clk" -name "clk" -period 10
compile -map_effort medium
current_design .
report_timing -path full -delay max -max_paths 1 -nworst 1 >
reports/\$current_d
esign.rep
report_area >> reports/\$current_design.rep
change_names -rules vhdl
write -format vhdl -hierarchy -output "mapped/\$current_design.vhd"
write -format verilog -hierarchy -output "mapped/\$current_design.v"
plot -hierarchy -output "schematic/\$current_design.ps"
echo "\nScript Done\n"
echo "\nChecking Design\n"
check_design
}
!

---------------------------------------------------------

Chi
Guest

Fri Sep 12, 2003 5:27 am   



When you say your design is large I assume it has hierarchy. In your
script,
you remove all hierarchies which allows Design Compiler to optimize
logics
across the old hierarchy assumed they still exist. Simulation mismatch
then
could happen if your stimulus is applied to the hierarchy signal pins
which
may or may have changed during optimization. You can easily rule this
out by
removing the "ungroup -all -flatten" command from your script. If this
is the
case that cause mismatch but you want to flatten your design then you
must rewrite your test bench.

Good luck,
Chi

"walala" <mizhael_at_yahoo.com> wrote in message news:<bjfium$693$1_at_mozo.cc.purdue.edu>...
Quote:
Dear all,

I have run the pre-synthesis successfully using Modelsim successfully, and
then I do a Synopsys DC synthesis successfully(only have some warnings, no
errors), but when it came to post-synthesis using Modelsim, the outputs
became "XXXXXXXXXXXXX"(no values); some internal nodes have "0", some
internal nodes have "1", and the other internal nodes have "X"... but the
internal nodes were stuck with their values: the "0"s were always "0", the
"1"s were always "1", the "X"s were always "X"...

Worth noting is that I follow the same workflow for some very small designs,
it worked perfectly... but now it failed for medium-big size design...

I feel the errors are so systemetic, which may be caused by some hidden
tricks(for large size design) in Synopsys DC that I did not know...

Can anybody help me out of this swamp?

Thanks:

--------------------------------------------------------------
My script file:

$SYNOPSYS/sparcOS5/syn/bin/dc_shell-t <<!
redirect myidct.log {
analyze -format vhdl -lib WORK {myidct.vhd}
elaborate myidct -arch "flex" -lib WORK -update
ungroup -all -flatten
create_clock "clk" -name "clk" -period 10
compile -map_effort medium
current_design .
report_timing -path full -delay max -max_paths 1 -nworst 1
reports/\$current_d
esign.rep
report_area >> reports/\$current_design.rep
change_names -rules vhdl
write -format vhdl -hierarchy -output "mapped/\$current_design.vhd"
write -format verilog -hierarchy -output "mapped/\$current_design.v"
plot -hierarchy -output "schematic/\$current_design.ps"
echo "\nScript Done\n"
echo "\nChecking Design\n"
check_design
}
!

---------------------------------------------------------


elektroda.net NewsGroups Forum Index - Synthesis - what are the possible reasons that successful pre-synthesis

Ask a question - edaboard.com

Arabic versionBulgarian versionCatalan versionCzech versionDanish versionGerman versionGreek versionEnglish versionSpanish versionFinnish versionFrench versionHindi versionCroatian versionIndonesian versionItalian versionHebrew versionJapanese versionKorean versionLithuanian versionLatvian versionDutch versionNorwegian versionPolish versionPortuguese versionRomanian versionRussian versionSlovak versionSlovenian versionSerbian versionSwedish versionTagalog versionUkrainian versionVietnamese versionChinese version
RTV map EDAboard.com map News map EDAboard.eu map EDAboard.de map EDAboard.co.uk map