Libero SoC Simulation
Mga Instruksyon sa Pag-setup sa Library
Pasiuna
Ang katuyoan niini nga dokumento mao ang paghulagway sa pamaagi sa pag-set up sa simulation environment gamit ang Libero SoC project isip input. Kini nga dokumentasyon katumbas sa pre-compiled nga mga librarya nga gihatag para magamit sa Libero SoC v11.9 ug mas bag-ong software releases. Ang gihatag nga mga librarya gihugpong para sa Verilog. Ang mga tiggamit sa VHDL nanginahanglan usa ka lisensya nga gitugotan ang managsama nga mode nga simulation.
Ang gihugpong nga simulation library anaa alang sa mosunod nga mga himan:
- Aldec Aktibo-HDL
- Aldec Riviera-PRO
- Cadence Incisive Enterprise ug Xcelium
- Siemens QuestaSim
- Synopsys VCS
Para mangayo ug library para sa lain nga simulator, kontaka Suporta sa Teknikal nga Microchip.
Paghiusa sa Libero SoC
Gisuportahan sa Libero SoC ang simulation gamit ang ModelSim ME pinaagi sa pagmugna og run.do file. Kini file gigamit sa ModelSim ME/ModelSim Pro ME sa pag-set up ug pagpadagan sa simulation. Aron magamit ang ubang mga himan sa simulation, mahimo nimong mamugna ang ModelSim ME/ModelSim Pro ME run.do ug usbon ang Tcl script file sa paggamit sa mga sugo nga compatible sa imong simulator.
1.1 Libero SoC Tcl File Kaliwatan (Pangutana)
Human sa paghimo ug paghimo og disenyo sa Libero SoC, pagsugod ug ModelSim ME/ModelSim Pro ME simulation ubos sa tanang hugna sa disenyo (presynth, postsynth, ug post-layout). Kini nga lakang nagmugna sa run.do file alang sa ModelSim ME/ModelSim Pro ME para sa matag hugna sa disenyo.
Importante: Human magsugod sa matag simulation run, ilisan ang ngalan sa auto-generated run.do file ubos sa direktoryo sa simulation aron mapugngan ang Libero SoC nga ma-overwrit kana file. Kay example, ang files mahimong ilisan sa ngalan sa presynth_run.do, postsynth_run.do ug postlayout_run.do.
Aldec Setup para sa Active-HDL ug Riviera-Pro (Pangutana)
Ang run.do file nga gigamit sa ModelSim ME/ModelSim Pro ME mahimong usbon ug gamiton alang sa simulation gamit ang Aldec simulators.
2.1 Variable sa Kalikopan (Pangutana)
Ibutang ang imong environment variable sa imong lisensya file lokasyon:
LM_LICENSE_FILE: kinahanglan maglakip sa usa ka pointer sa server sa lisensya.
2.2 I-download ang Gihugpong Library (Pangutana)
I-download ang mga librarya para sa Aldec Active-HDL ug sa Aldec Riviera-PRO gikan sa Microchip website.
2.3 Pag-convert sa run.do para sa Aldec simulation (Pangutana)
Ang run.do files nga namugna sa Libero SoC alang sa mga simulation gamit ang Active-HDL ug Riviera-Pro nga himan mahimong gamiton alang sa mga simulation gamit ang Active-HDL ug Riviera-Pro nga adunay usa ka pagbag-o. Ang mosunod nga lamesa naglista sa Aldec-katumbas nga mga sugo aron usbon sa ModelSim run.do file.
Talaan 2-1. Aldec Equivalent Commands
ModelSim | Aktibo-HDL |
vlog | alog |
vcom | acom |
vlib | alib |
vsim | asim |
vmap | amap |
Ang mosunod mao angample run.do nga may kalabutan sa Aldec simulators.
- Ibutang ang lokasyon sa kasamtangan nga direktoryo sa pagtrabaho.
gibutang dsn - Paghimo ug ngalan sa librarya nga nagtrabaho, mapa ang lokasyon niini, ug dayon mapa ang lokasyon sa pamilyang Microchip FPGA
precompiled nga mga librarya (alang sa example, SmartFusion2) diin imong gipadagan ang imong disenyo.
alib presynth
amap presynth presynth
amap SmartFusion2 - I-compile ang tanang gikinahanglan nga HDL files gigamit sa disenyo uban sa gikinahanglan nga librarya.
alog –work presynth temp.v (para sa Verilog)
alog –trabaho presynth testbench.v
acom –work presynth temp.vhd (para sa Vhdl)
acom –work presynth testbench.vhd - I-simulate ang disenyo.
asim –L SmartFusion2 –L presynth –t 1ps presynth.testbench
dagan 10us
2.4 Nahibal-an nga mga Isyu (Pangutana)
Kini nga seksyon naglista sa nahibal-an nga mga isyu ug mga limitasyon.
- Ang mga librarya nga gihugpong gamit ang Riviera-PRO kay espesipiko sa plataporma (ie ang 64-bit nga mga librarya dili mapadagan sa 32-bit nga plataporma ug vice versa).
- Para sa mga disenyo nga adunay SERDES/MDDR/FDDR, gamita ang mosunod nga opsyon sa imong run.do files samtang nagpadagan sa mga simulation human sa pag-compile sa ilang mga disenyo:
– Aktibo-HDL: asim –o2
– Riviera-PRO: asim –O2 (para sa presynth ug post-layout simulations) ug asim –O5 (para sa post-layout simulations)
Ang Aldec setup para sa Active-HDL ug Riviera-Pro adunay mga mosunod nga pending SARs. Para sa dugang nga impormasyon, kontaka Suporta sa Teknikal nga Microchip. - SAR 49908 – Aktibo-HDL: VHDL Error para sa Math block simulations
- SAR 50627 - Riviera-PRO 2013.02: Mga kasaypanan sa simulation alang sa mga disenyo sa SERDES
- SAR 50461 - Riviera-PRO: asim -O2/-O5 nga kapilian sa mga simulation
Pag-set up sa Cadence Incisive (Pangutana)
Kinahanglan ka nga maghimo usa ka script file susama sa ModelSim ME/ModelSim Pro ME run.do sa pagpadagan sa
Simulator sa Cadence Incisive. Sunda kini nga mga lakang ug paghimo og script file para sa NCSim o gamita ang script file
gihatag aron mabag-o ang ModelSim ME/ModelSim Pro ME run.do files ngadto sa configuration files
gikinahanglan sa pagpadagan sa mga simulation gamit ang NCSim.
Importante: Kadayon mihunong sa pagpagawas sa bag-ong mga bersyon sa Incisive Enterprise
simulator ug nagsugod sa pagsuporta sa Xcelium simulator.
3.1 Mga Variable sa Kalikopan (Pangutana)
Aron mapadagan ang Cadence Incisive simulator, i-configure ang mosunod nga mga variable sa palibot:
- LM_LICENSE_FILE: kinahanglan maglakip sa usa ka pointer sa lisensya file.
- cds_root: kinahanglan itudlo ang lokasyon sa direktoryo sa balay sa Cadence Incisive Installation.
- PATH: kinahanglan itudlo ang lokasyon sa bin sa ilawom sa direktoryo sa mga himan nga gitudlo sa cds_root nga mao,
$cds_root/tools/bin/64bit (alang sa 64-bit machine ug $cds_root/tools/bin para sa 32-bit machine).
Adunay tulo ka mga paagi sa pag-set up sa simulation environment sa kaso sa switch tali sa 64-bit ug 32-bit operating system:
Kaso 1: PATH Variable
Pagdalagan ang mosunod nga sugo:
set path = (install_dir/tools/bin/64bit $path) para sa 64bit nga makina ug
set path = (install_dir/tools/bin $path) para sa 32bit nga makina
Kaso 2: Paggamit sa -64bit Command-line Option
Sa command-line ipiho ang -64bit nga opsyon aron ma-invoke ang 64bit executable.
Kaso 3: Pagbutang sa INCA_64BIT o CDS_AUTO_64BIT Environment Variable
Ang INCA_64BIT variable giisip nga boolean. Mahimo nimong itakda kini nga variable sa bisan unsang kantidad o sa usa ka null string.
setenv INCA_64BIT
Importante: Ang INCA_64BIT environment variable dili makaapekto sa ubang mga himan sa Cadence, sama sa IC tool. Bisan pa, alang sa Incisive nga mga himan, ang INCA_64BIT variable nag-override sa setting alang sa CDS_AUTO_64BIT environment variable. Kung ang INCA_64BIT environment variable gitakda, ang tanan nga Incisive nga mga himan modagan sa 64-bit mode. setenv CDS_AUTO_64BIT INCLUDE:INCA
Importante: Ang string INCA kinahanglan nga sa uppercase. Ang tanan nga mga executable kinahanglan nga ipadagan sa 32-bit mode o sa 64-bit mode, ayaw ibutang ang variable nga maglakip sa usa ka executable, sama sa mosunod:
setenv CDS_AUTO_64BIT INCLUDE:ncelab
Ang ubang mga gamit sa Cadence, sama sa IC tools, naggamit usab sa CDS_AUTO_64BIT environment variable aron makontrol ang pagpili sa 32-bit o 64-bit executables. Ang mosunud nga talaan nagpakita kung giunsa nimo mabutang ang variable nga CDS_AUTO_64BIT aron mapadagan ang mga tool sa Incisive ug mga himan sa IC sa tanan nga mga mode.
Talaan 3-1. CDS_AUTO_64BIT Variables
CDS_AUTO_64BIT Variable | Mga Kagamitan nga Madasigon | Mga gamit sa IC |
setenv CDS_AUTO_64BIT TANAN | 64 gamay | 64 gamay |
setenv CDS_AUTO_64BIT WALA | 32 gamay | 32 gamay |
setenv CDS_AUTO_64BIT WALA KINI:ic_binary | 64 gamay | 32 gamay |
setenv CDS_AUTO_64BIT GAWAS:INCA | 32 gamay | 64 gamay |
Importante: Ang tanan nga Incisive nga mga himan kinahanglan nga modagan sa 32-bit mode o sa 64-bit mode, ayaw gamita ang EXCLUDE aron dili iapil ang usa ka piho nga executable, sama sa mosunod: setenv CDS_AUTO_64BIT EXCLUDE:ncelab
Kung imong gibutang ang CDS_AUTO_64BIT variable aron dili iapil ang Incisive nga mga himan (setenv CDS_AUTO_64BIT EXCLUDE:INCA), ang tanan nga Incisive nga himan gipadagan sa 32-bit mode. Bisan pa, ang -64bit nga kapilian sa command-line nag-override sa variable sa palibot.
Ang mosunod nga configuration files makatabang kanimo sa pagdumala sa imong datos ug pagkontrolar sa operasyon sa mga himan ug mga gamit sa simulation:
- Pagmapa sa librarya file (cds.lib)—Naghubit sa usa ka lohikal nga ngalan alang sa lokasyon sa imong disenyo.
- Mga librarya ug i-associate kini sa pisikal nga mga ngalan sa direktoryo.
- Mga variable file (hdl.var)—Naghubit sa mga baryable nga makaapekto sa kinaiya sa mga himan ug mga gamit sa simulation.
3.2 I-download ang Gihugpong Library (Pangutana)
I-download ang mga librarya para sa Cadence Incisive gikan sa Microsemi's website.
3.3 Paghimo sa NCSim Script File (Pangutana)
Human sa paghimo og kopya sa run.do files, himoa kini nga mga lakang sa pagpadagan sa imong simulation gamit ang NCSim:
- Paghimo og cds.lib file nga naghubit sa mga librarya nga ma-access ug ang ilang lokasyon. Ang file adunay mga pahayag nga nag-mapa sa mga lohikal nga ngalan sa librarya sa ilang pisikal nga mga agianan sa direktoryo. Kay example, kung nagdagan ka presynth simulation, ang cds.lib file gisulat sama sa gipakita sa mosunod nga codeblock.
PAGHULAGWAY presynth ./presynth
PAGHULAGWAY COREAHBLITE_LIB ./COREAHBLITE_LIB
PAGHULAGWAY sa smartfusion2 - Paghimo og hdl.var file, usa ka opsyonal nga configuration file nga adunay mga variable sa pag-configure, nga nagtino kung giunsa ang pag-configure sa imong disenyo nga palibot. Ang mosunod nga variable files naglakip:
- Mga variable nga gigamit aron mahibal-an ang librarya sa trabaho kung diin gitipigan sa compiler ang mga gihugpong nga mga butang ug uban pang nakuha nga datos.
- Alang sa Verilog, mga variable (LIB_MAP, VIEW_MAP, WORK) nga gigamit sa pagtino sa mga librarya ug views sa pagpangita kung ang elaborator nagsulbad sa mga higayon.
- Mga variable nga nagtugot kanimo sa paghubit sa compiler, elaborator, ug simulator nga mga kapilian sa command-line ug mga argumento.
Sa kaso sa presynth simulation exampAng gipakita sa ibabaw, ingnon ta adunay tulo ka RTL files: av, bv, ug testbench.v, nga kinahanglang i-compile sa presynth, COREAHBLITE_LIB, ug presynth nga librarya. Ang hdl.var file mahimong isulat sama sa gipakita sa mosunod nga codeblock.
PAGHUBOG TRABAHO presynth
PAGHITABO NGA PROYEKTO_DIR files>
PAGHIMO SA LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/av => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/bv => COREAHBLITE_LIB )
PAGHIMO SA LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/testbench.v => presynth )
PAGHIMO SA LIB_MAP ($LIB_MAP, + => presynth ) - I-compile ang desinyo files gamit ang opsyon sa ncvlog.
ncvlog +incdir+ –cdslib ./cds.lib –hdlvar ./hdl.var –logfile
ncvlog.log –update –linedebug av bv testbench.v - I-elaborate ang disenyo gamit ang ncelab. Ang elaborator nagtukod ug usa ka design hierarchy base sa instantiation ug configuration nga impormasyon sa disenyo, nag-establisar sa signal connectivity, ug nag-compute sa mga inisyal nga value sa tanang butang sa design. Ang detalyado nga hierarchy sa disenyo gitipigan sa usa ka simulation snapshot, nga mao ang representasyon sa imong disenyo nga gigamit sa simulator sa pagpadagan sa simulation.
ncelab –Mensahe –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax 15 –
access +rwc –status worklib. :modul
Elaborasyon Atol sa Post-layout simulation
Sa kaso sa post-layout simulations, una ang SDF file kinahanglan nga i-compile sa dili pa ang elaborasyon gamit ang ncsdfc command.
ncsdfcfilengalan>.sdf –outputfilengalan>.sdf.X
Atol sa elaborasyon gamita ang gihugpong nga SDF output nga adunay –autosdf nga kapilian sama sa gipakita sa mosunod nga codeblock.
ncelab -autosdf –Mensahe –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax
15 – access + rwc – status worklib. :module –sdf_cmd_file ./
sdf_cmd_file
Ang sdf_cmd_file kinahanglan nga ingon sa gipakita sa mosunod nga codeblock.
COMPILED_SDF_FILE = “ file>” - Simulate gamit ang ncsim. Human sa elaborasyon usa ka simulation snapshot gihimo, nga gikarga sa ncsim alang sa simulation. Mahimo kang modagan sa batch mode o GUI mode.
ncsim –Mensahe –batch/-gui –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncsim.log –
errormax 15 -status worklib. :modul
Importante: Ang tanan nga tulo ka mga lakang sa ibabaw sa pag-compile, pag-elaborate, ug pag-simulate mahimong ibutang sa usa ka script sa shell file ug gikan sa command-line. Imbis nga gamiton kining tulo ka mga lakang, ang disenyo mahimong ma-simulate sa usa ka lakang gamit ang ncverilog o irun nga kapilian sama sa gipakita sa mosunod nga codeblock.
ncverilog +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var
files gigamit sa disenyo>
irun +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var files
gigamit sa disenyo>
3.3.1 Nahibal-an nga mga Isyu (Pangutana)
Pagsulbad sa Testbench
Ang paggamit sa mosunod nga pahayag alang sa pagtino sa frequency sa orasan sa testbench nga gihimo sa user, o ang default nga testbench nga gihimo sa Libero SoC dili molihok sa NCSim.
kanunay @(SYSCLK)
#(SYSCLK_PERIOD / 2.0) SYSCLK <= !SYSCLK;
Usba ingon sa mosunod aron modagan ang simulation:
kanunay #(SYSCLK_PERIOD / 2.0) SYSCLK = ~SYSCLK;
Importante: Gihugpong Ang mga librarya para sa NCSim maoy espesipiko sa plataporma (ie ang 64 bit nga mga librarya dili compatible sa 32 bit nga plataporma ug vice versa).
Postsynth ug Post-layout Simulations Gamit ang MSS ug SERDES Samtang nagpadagan sa postsynth simulation sa mga disenyo nga adunay sulod sa MSS block o ang post-layout simulation sa mga disenyo gamit ang SERDES, ang BFM simulations dili molihok kung ang –libmap nga opsyon mao ang
wala gipiho sa panahon sa elaborasyon. Kini tungod kay sa panahon sa elaborasyon, ang MSS masulbad gikan sa work library (tungod sa default binding ug ang worklib kay postsynth/post-layout) diin usa ra kini ka Fixed Function.
Ang ncelab command kinahanglang isulat sama sa gipakita sa mosunod nga code block aron masulbad ang MSS
block gikan sa SmartFusion2 precompiled library.
ncelab -libmap lib.map -libverbose -Mensahe -access +rwc cfg1
ug ang lib.map file kinahanglan nga ingon sa mosunod:
config cfg1;
disenyo ;
default liblist smartfusion2 ;
endconfig
Gisulbad niini ang bisan unsang cell sa SmartFusion2 library sa dili pa motan-aw sa work library ie postsynth/post-layout.
Ang –libmap nga opsyon mahimong gamiton pinaagi sa default atol sa elaborasyon sa matag simulation (presynth, postsynth, ug post-layout). Gilikayan niini ang mga isyu sa simulation nga gipahinabo tungod sa resolusyon sa mga higayon gikan sa mga librarya.
ncelab: *F,INTERR: INTERNAL EXCEPTION
Kining ncelab tool exception kay usa ka caveat para sa mga disenyo nga adunay FDDR sa SmartFusion 2 ug IGLOO 2 atol sa postsynth ug post-layout simulations gamit ang –libmap option.
Importante: Kini nga isyu gi-report sa Cadence support team (SAR 52113).
3.4 Sample Tcl ug Shell Script Files (Pangutana)
Ang mosunod files mao ang configuration files gikinahanglan alang sa pag-set up sa disenyo ug shell script file alang sa pagpadagan sa mga sugo sa NCSim.
Cds.lib
NE smartfusion2 /scratch/krydor/tmpspace/users/me/nc-vlog64/SmartFusion2
PAGHULAGWAY COREAHBLITE_LIB ./COREAHBLITE_LIB
PAGHULAGWAY presynth ./presynth
Hdl.var
PAGHUBOG TRABAHO presynth
PAGHULAGWAY PROJECT_DIR /scratch/krydor/tmpspace/sqausers/me/3rd_party_simulators/Cadence/IGLOO2/
ENVM/M2GL050/envm_fic1_ser1_v/eNVM_fab_master
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_addrdec.v => COREAHBLITE_LIB )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_defaultslavesm.v => COREAHBLITE_LIB )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_masterstagev => COREAHBLITE_LIB )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavearbiter.v => COREAHBLITE_LIB )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavestagev => COREAHBLITE_LIB )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_matrix2x16.v => COREAHBLITE_LIB )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite.v => COREAHBLITE_LIB )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB/CCC_0/SB_CCC_0_FCCC.v =>
presynth)
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigMaster/
2.0.101/rtl/vlog/core/coreconfigmaster.v => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigP/4.0.100/rtl/
vlog/core/coreconfigp.v => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp_pcie_hotreset.v => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp.v => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB/FABOSC_0/SB_FABOSC_0_OSC.v =>
presynth)
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB_HPMS/SB_HPMS.v => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB/SB.v => presynth )
PAGHIMO SA LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/SERDES_IF_0/
SB_top_SERDES_IF_0_SERDES_IF.v => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/SB_top.v => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/testbench.v => presynth )
PAGHIMO SA LIB_MAP ($LIB_MAP, + => presynth )
Commands.csh
ncvlog +incdir+../../component/work/SB_top -cdslib ./cds.lib -hdlvar ./hdl.var -logfile
ncvlog.log -errormax 15 -update -linedebug
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_addrdec.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/
coreahblite_defaultslavesm.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_masterstagev
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_slavearbiter.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_slavestagev
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_matrix2x16.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite.v
../../component/work/SB/CCC_0/SB_CCC_0_FCCC.v
../../component/Actel/DirectCore/CoreConfigMaster/2.0.101/rtl/vlog/core/coreconfigmaster.v
../../component/Actel/DirectCore/CoreConfigP/4.0.100/rtl/vlog/core/coreconfigp.v
../../component/Actel/DirectCore/CoreResetP/5.0.103/rtl/vlog/core/coreresetp_pcie_hotreset.v
../../component/Actel/DirectCore/CoreResetP/5.0.103/rtl/vlog/core/coreresetp.v
../../component/work/SB/FABOSC_0/SB_FABOSC_0_OSC.v ../../component/work/SB_HPMS/SB_HPMS.v
../../component/work/SB/SB.v ../../component/work/SB_top/SERDES_IF_0/
SB_top_SERDES_IF_0_SERDES_IF.v
../../component/work/SB_top/SB_top.v ../../component/work/SB_top/testbench.v
ncelab -Mensahe -cdslib ./cds.lib -hdlvar ./hdl.var
-trabaho presynth -logfile ncelab.log -errormax 15 -access +rwc -status presynth.testbench:module
ncsim -Mensahe -batch -cdslib ./cds.lib -hdlvar ./
hdl.var -logfile ncsim.log -errormax 15 -status presynth.testbench:module
3.5 Automation (Pangutana)
Ang mosunod nga script file gikabig ang ModelSim run.do files ngadto sa configuration files gikinahanglan sa pagpadagan sa mga simulation gamit ang NCSim.
Script File Paggamit
perl cadence_parser.pl presynth_run.do postsynth_run.do
postlayout_run.do Microsemi_Family
Location_of_Cadence_Precompiled_libraries
Cadence_parser.pl
#!/usr/bin/perl -w
#################################################### ##############################################
##################
#Paggamit: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
Microsemi_Family Precompiled_Libraries_location#
#################################################### ##############################################
##################
gamita ang POSIX;
paggamit sa estrikto;
akong ($presynth, $postsynth, $postlayout, $pamilya, $lib_location) = @ARGV;
&questa_parser ($presynth, $pamilya, $lib_location);
&questa_parser($postsynth, $pamilya, $lib_location);
&questa_parser($postlayout, $pamilya, $lib_location);
sub questa_parser {
akong $ModelSim_run_do = $_[0];
akong $actel_family = $_[1];
akong $lib_location = $_[2];
akong $estado;
kon (-e “$ModelSim_run_do” )
{
bukas (INFILE,"$ModelSim_run_do");
akong @ModelSim_run_do =FILE>;
akong $line;
kon ($ ModelSim_run_do =~ m/(presynth)/)
{
`mkdir QUESTA_PRESYNTH`;
bukas (OUTFILE,”>QUESTA_PRESYNTH/presynth_questa.do”);
$estado = $1;
} elsif ($ModelSim_run_do =~ m/(postsynth)/)
{
`mkdir QUESTA_POSTSYNTH`;
bukas (OUTFILE,”>QUESTA_POSTSYNTH/postsynth_questa.do”);
$estado = $1;
} elsif ($ModelSim_run_do =~ m/(postlayout)/ )
{
`mkdir QUESTA_POSTLAYOUT`;
bukas (OUTFILE,”>QUESTA_POSTLAYOUT/postlayout_questa.do”);
$estado = $1;
} uban pa
{
print “Sayup nga mga Input nga gihatag sa file\n”;
print “#Usage: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
\"Libraries_location\"\n";
}
para sa $line (@ModelSim_run_do)
{
# Kinatibuk-ang mga operasyon
$line =~ s/..\/designer.*simulation\///g;
$linya =~ s/$estado/$estado\_questa/g;
#print OUTFILE “$linya \n”;
kon ($linya =~ m/vmap\s+.*($actel_family)/)
{
print OUTFILE "vmap $actel_family \"$lib_location\"\n";
} elsif ($linya =~ m/vmap\s+(.*._LIB)/)
{
$line =~ s/..\/component/..\/..\/component/g;
print OUTFILE “$linya \n”;
} elsif ($linya =~ m/vsim/)
{
$line =~ s/vsim/vsim -novopt/g;
print OUTFILE “$linya \n”;
} uban pa
{
print OUTFILE “$linya \n”;
}
}
hapit (INFILE);
hapit (OUTFILE);
} uban pa {
print "$ ModelSim_run_do wala anaa. Balika ang simulation pag-usab \n”;
}
}
Pag-setup sa Cadence Xcelium (Pag-login sa Microchip)
Kinahanglan ka nga maghimo usa ka script file susama sa ModelSim ME/ModelSim Pro ME run.do sa pagpadagan sa Cadence Xcelium simulator. Sunda kini nga mga lakang ug paghimo og script file para sa Xcelium o gamita ang script file gihatag aron mabag-o ang ModelSim ME/ModelSim Pro ME run.do files ngadto sa configuration files gikinahanglan sa pagpadagan sa mga simulation gamit ang Xcelium.
4.1 Mga Variable sa Kalikopan (Pangutana)
Aron mapadagan ang Cadence Xcelium, i-configure ang mosunod nga mga variable sa palibot:
- LM_LICENSE_FILE: kinahanglan maglakip sa usa ka pointer sa lisensya file.
- cds_root: kinahanglan itudlo ang lokasyon sa direktoryo sa balay sa Cadence Incisive Installation.
- PATH: kinahanglan magtudlo sa lokasyon sa bin sa ilawom sa direktoryo sa mga himan nga gitudlo sa cds_root (ie
$cds_root/tools/bin/64bit (alang sa 64 bit machine ug $cds_root/tools/bin para sa 32 bit
makina).
Adunay tulo ka mga paagi sa pag-set up sa simulation environment sa kaso sa switch tali sa 64-bit ug 32-bit operating system:
Kaso 1: PATH Variable
set path = (install_dir/tools/bin/64bit $path) para sa 64bit nga makina ug
set path = (install_dir/tools/bin $path) para sa 32bit nga makina
Kaso 2: Paggamit sa -64bit Command-line Option
Sa command-line ipiho ang -64bit nga opsyon aron ma-invoke ang 64-bit executable.
Kaso 3: Pagbutang sa INCA_64BIT o CDS_AUTO_64BIT Environment Variable
Ang INCA_64BIT variable giisip nga boolean. Mahimo nimong itakda kini nga variable sa bisan unsang kantidad o sa usa ka null
hilo.
setenv INCA_64BIT
Importante: Ang INCA_64BIT environment variable dili makaapekto sa ubang mga himan sa Cadence, sama sa IC tool. Bisan pa, alang sa Incisive nga mga himan, ang INCA_64BIT variable nag-override sa setting alang sa CDS_AUTO_64BIT environment variable. Kung ang INCA_64BIT environment variable mao ang et, ang tanan nga Incisive nga mga himan modagan sa 64-bit mode.
setenv CDS_AUTO_64BIT INCLUDE:INCA
Importante: Ang string INCA kinahanglan nga sa uppercase. Ang tanan nga mga executable kinahanglan nga ipadagan sa 2-bit mode o sa 64-bit mode, ayaw ibutang ang variable nga maglakip sa usa ka executable, sama sa mosunod:
setenv CDS_AUTO_64BIT INCLUDE:ncelab
Ang ubang mga gamit sa Cadence, sama sa IC tools, naggamit usab sa CDS_AUTO_64BIT environment variable aron makontrol ang pagpili sa 32-bit o 64-bit executables. Ang mosunud nga talaan nagpakita kung giunsa nimo mabutang ang variable nga CDS_AUTO_64BIT aron mapadagan ang mga tool sa Incisive ug mga himan sa IC sa tanan nga mga mode.
Talaan 4-1. CDS_AUTO_64BIT Variables
CDS_AUTO_64BIT Variable | Mga Kagamitan nga Madasigon | Mga gamit sa IC |
setenv CDS_AUTO_64BIT TANAN | 64-gamay | 64-gamay |
setenv CDS_AUTO_64BIT WALA | 32-gamay | 32-gamay |
setenv CDS_AUTO_64BIT WALA: ic_binary |
64-gamay | 32-gamay |
setenv CDS_AUTO_64BIT GAWAS:INCA | 32-gamay | 64-gamay |
Importante: Ang tanan nga Incisive nga mga himan kinahanglan nga modagan sa bisan asa nga 32-bit mode o sa 64-bit mode, ayaw gamita ang EXCLUDE aron dili iapil ang usa ka piho nga executable, sama sa mosunod:
setenv CDS_AUTO_64BIT EXCLUDE:ncelab
Kung imong gibutang ang CDS_AUTO_64BIT variable aron dili iapil ang Incisive nga mga himan (setenv
CDS_AUTO_64BIT EXCLUDE:INCA), ang tanan nga Incisive nga mga himan gipadagan sa 32-bit mode. Apan, ang
-64bit nga command-line nga opsyon nag-override sa environment variable.
Ang mosunod nga configuration files makatabang kanimo sa pagdumala sa imong datos ug pagkontrolar sa operasyon sa mga himan ug mga gamit sa simulation:
- Pagmapa sa librarya file (cds.lib) naghubit sa usa ka lohikal nga ngalan alang sa lokasyon sa imong disenyo.
- Mga librarya ug i-associate kini sa pisikal nga mga ngalan sa direktoryo.
- Mga variable file (hdl.var) naghubit sa mga baryable nga makaapekto sa kinaiya sa mga himan sa simulation ug mga gamit.
4.2 I-download ang Gihugpong Library (Pangutana)
I-download ang mga librarya para sa Cadence Xcelium gikan sa Microsemi's website.
4.3 Paghimo sa Xcelium script file (Pangutana)
Human sa paghimo og kopya sa run.do files, himoa ang mosunod nga mga lakang sa pagpadagan sa imong simulation gamit ang Xcelium script file.
- Paghimo og cds.lib file nga naghubit kung unsang mga librarya ang magamit ug kung diin sila nahimutang.
Ang file adunay mga pahayag nga nag-mapa sa mga lohikal nga ngalan sa librarya sa ilang pisikal nga mga agianan sa direktoryo. Kay example, kung nagdagan ka presynth simulation, ang cds.lib file mahimong isulat sama sa gipakita sa mosunod nga codeblock.
PAGHULAGWAY presynth ./presynth
PAGHULAGWAY COREAHBLITE_LIB ./COREAHBLITE_LIB
PAGHULAGWAY sa smartfusion2 - Paghimo og hdl.var file nga usa ka opsyonal nga configuration file nga adunay mga variable sa pag-configure, nga nagtino kung giunsa ang pag-configure sa imong disenyo nga palibot. Kini naglakip sa:
- Mga variable nga gigamit aron mahibal-an ang librarya sa trabaho kung diin gitipigan sa compiler ang mga gihugpong nga mga butang ug uban pang nakuha nga datos.
- Alang sa Verilog, mga variable (LIB_MAP, VIEW_MAP, WORK) nga gigamit sa pagtino sa mga librarya ug views sa pagpangita kung ang elaborator nagsulbad sa mga higayon.
- Mga variable nga nagtugot kanimo sa paghubit sa compiler, elaborator, ug simulator nga mga kapilian sa command-line ug mga argumento.
Sa kaso sa presynth simulation exampAng gipakita sa ibabaw, ingnon ta nga adunay 3 RTL files av, bv, ug testbench.v, nga kinahanglang i-compile sa presynth, COREAHBLITE_LIB, ug presynth nga mga librarya. Ang hdl.var file mahimong isulat sama sa gipakita sa mosunod nga codeblock.
PAGHUBOG TRABAHO presynth
PAGHITABO NGA PROYEKTO_DIR files>
PAGHIMO SA LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/av => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/bv => COREAHBLITE_LIB )
PAGHIMO SA LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/testbench.v => presynth )
PAGHIMO SA LIB_MAP ($LIB_MAP, + => presynth ) - I-compile ang desinyo files gamit ang opsyon sa ncvlog.
xmvlog +incdir+ –cdslib ./cds.lib –hdlvar ./hdl.var –logfile
ncvlog.log –update –linedebug av bv testbench.v - I-elaborate ang disenyo gamit ang ncelab. Ang elaborator nagtukod ug usa ka design hierarchy base sa instantiation ug configuration nga impormasyon sa disenyo, nag-establisar sa signal connectivity, ug nag-compute sa mga inisyal nga value sa tanang butang sa design. Ang detalyado nga hierarchy sa disenyo gitipigan sa usa ka simulation snapshot, nga mao ang representasyon sa imong disenyo nga gigamit sa simulator sa pagpadagan sa simulation.
Xcelium –Mensahe –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax 15 –
access +rwc –status worklib. :modul
Elaborasyon Atol sa Post-layout simulation
Sa kaso sa post-layout simulations, una ang SDF file kinahanglan nga i-compile sa dili pa ang elaborasyon gamit ang ncsdfc command.
Xceliumfilengalan>.sdf –outputfilengalan>.sdf.X
Atol sa elaborasyon gamita ang gihugpong nga SDF output nga adunay –autosdf nga kapilian sama sa gipakita sa mosunod nga codeblock.
xmelab -autosdf –Mensahe –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax
15 – access + rwc – status worklib. :module –sdf_cmd_file ./
sdf_cmd_file
Ang sdf_cmd_file kinahanglan nga ingon sa gipakita sa mosunod nga codeblock.
COMPILED_SDF_FILE = “ file>” - Pag-simulate gamit ang Xcelium. Human sa elaborasyon usa ka simulation snapshot ang gihimo nga gikargahan sa Xcelium para sa simulation. Mahimo kining ipadagan sa batch mode o GUI mode.
xmsim –Mensahe –batch/-gui –cdslib ./cds.lib –hdlvar ./hdl.var –logfile xmsim.log –
errormax 15 -status worklib. :modul
Pag-setup sa Cadence Xcelium
Importante: Tanan ang tulo ka mga lakang sa ibabaw sa pag-compile, pag-elaborate ug pag-simulate mahimong ibutang sa shell script file ug gikan sa command-line. Imbis nga gamiton kining tulo ka mga lakang, ang disenyo mahimong ma-simulate sa usa ka lakang gamit ang ncverilog o xrun nga kapilian sama sa gipakita sa mosunod nga codeblock.
xmverilog +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var
files gigamit sa disenyo>
xrun +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var files
gigamit sa disenyo>
4.3.1 Nahibal-an nga mga Isyu (Pangutana)
Pagsulbad sa Testbench
Ang paggamit sa mosunod nga pahayag alang sa pagtino sa frequency sa orasan sa testbench nga namugna sa user o ang default testbench nga gihimo sa Libero SoC dili mogana sa Xcelium.
kanunay @(SYSCLK)
#(SYSCLK_PERIOD / 2.0) SYSCLK <= !SYSCLK;
Usba ingon sa mosunod aron modagan ang simulation:
kanunay #(SYSCLK_PERIOD / 2.0) SYSCLK = ~SYSCLK;
Importante: Ang gihugpong nga mga librarya para sa Xcelium maoy espesipiko sa plataporma (ie ang 64 bit nga mga librarya dili uyon sa 32 bit nga plataporma ug vice versa).
Postsynth ug Post-layout Simulations gamit ang MSS ug SERDES
Samtang nagpadagan sa mga postsynth simulation sa mga disenyo nga adunay MSS block, o post-layout nga mga simulation sa mga disenyo gamit ang SERDES, ang BFM nga mga simulation dili molihok kung ang -libmap nga kapilian wala gitino sa panahon sa pag-elaborate. Kini tungod kay sa panahon sa elaborasyon, ang MSS masulbad gikan sa work library (tungod sa default binding ug ang worklib kay postsynth/post-layout) diin usa ra kini ka Fixed Function.
Ang ncelab command kinahanglang isulat sama sa gipakita sa mosunod nga code block aron masulbad ang MSS block gikan sa SmartFusion2 precompiled library.
xmelab -libmap lib.map -libverbose -Mensahe -access +rwc cfg1
ug ang lib.map file kinahanglan nga ingon sa mosunod:
config cfg1;
disenyo ;
default liblist smartfusion2 ;
endconfig
Kinahanglang sulbaron niini ang bisan unsang cell sa SmartFusion2 library sa dili pa motan-aw sa work library ie postsynth/post-layout.
Ang –libmap nga opsyon mahimong gamiton nga default atol sa elaborasyon sa matag simulation (presynth, postsynth ug post-layout). Gilikayan niini ang mga isyu sa simulation nga gipahinabo tungod sa resolusyon sa mga higayon gikan sa mga librarya.
xmelab: *F,INTERR: INTERNAL EXCEPTION
Kining ncelab tool exception kay usa ka caveat para sa mga disenyo nga adunay FDDR sa SmartFusion2 ug IGLOO2
atol sa postsynth ug post-layout simulations gamit ang –libmap option.
Importante: Kini nga isyu gi-report sa Cadence support team (SAR 52113).
4.4 Sample Tcl ug shell script files (Pangutana)
Ang mosunod files mao ang configuration files gikinahanglan alang sa pag-set up sa disenyo ug shell script file alang sa pagpadagan sa mga sugo sa Xcelium.
Cds.lib
PAGHUBOG ang smartfusion2 /scratch/krydor/tmpspace/users/me/nc-vlog64/SmartFusion2
PAGHULAGWAY COREAHBLITE_LIB ./COREAHBLITE_LIB
PAGHULAGWAY presynth ./presynth
Hdl.var
PAGHUBOG TRABAHO presynth
PAGHULAGWAY PROJECT_DIR /scratch/krydor/tmpspace/sqausers/me/3rd_party_simulators/Cadence/IGLOO2/
ENVM/M2GL050/envm_fic1_ser1_v/eNVM_fab_master
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_addrdec.v => COREAHBLITE_LIB )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_defaultslavesm.v => COREAHBLITE_LIB )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_masterstagev => COREAHBLITE_LIB )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavearbiter.v => COREAHBLITE_LIB )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavestagev => COREAHBLITE_LIB )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_matrix2x16.v => COREAHBLITE_LIB )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite.v => COREAHBLITE_LIB )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB/CCC_0/SB_CCC_0_FCCC.v =>
presynth)
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigMaster/
2.0.101/rtl/vlog/core/coreconfigmaster.v => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigP/4.0.100/rtl/
vlog/core/coreconfigp.v => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp_pcie_hotreset.v => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp.v => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB/FABOSC_0/SB_FABOSC_0_OSC.v =>
presynth)
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB_HPMS/SB_HPMS.v => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB/SB.v => presynth )
PAGHIMO SA LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/SERDES_IF_0/
SB_top_SERDES_IF_0_SERDES_IF.v => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/SB_top.v => presynth )
PAGHULAGWAY LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/testbench.v => presynth )
PAGHIMO SA LIB_MAP ($LIB_MAP, + => presynth )
Commands.csh
ncvlog +incdir+../../component/work/SB_top -cdslib ./cds.lib -hdlvar ./hdl.var -logfile
ncvlog.log -errormax 15 -update -linedebug
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_addrdec.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/
coreahblite_defaultslavesm.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_masterstagev
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_slavearbiter.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_slavestagev
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_matrix2x16.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite.v
../../component/work/SB/CCC_0/SB_CCC_0_FCCC.v
../../component/Actel/DirectCore/CoreConfigMaster/2.0.101/rtl/vlog/core/coreconfigmaster.v
../../component/Actel/DirectCore/CoreConfigP/4.0.100/rtl/vlog/core/coreconfigp.v
../../component/Actel/DirectCore/CoreResetP/5.0.103/rtl/vlog/core/coreresetp_pcie_hotreset.v
../../component/Actel/DirectCore/CoreResetP/5.0.103/rtl/vlog/core/coreresetp.v
../../component/work/SB/FABOSC_0/SB_FABOSC_0_OSC.v ../../component/work/SB_HPMS/SB_HPMS.v
../../component/work/SB/SB.v ../../component/work/SB_top/SERDES_IF_0/
SB_top_SERDES_IF_0_SERDES_IF.v
../../component/work/SB_top/SB_top.v ../../component/work/SB_top/testbench.v
ncelab -Mensahe -cdslib ./cds.lib -hdlvar ./hdl.var
-trabaho presynth -logfile ncelab.log -errormax 15 -access +rwc -status presynth.testbench:module
ncsim -Mensahe -batch -cdslib ./cds.lib -hdlvar ./
hdl.var -logfile ncsim.log -errormax 15 -status presynth.testbench:module
4.5 Automation (Pag-login sa Microchip)
Ang mosunod nga script file nagkabig sa ModelSim run.do files ngadto sa configuration files gikinahanglan sa pagpadagan sa mga simulation gamit ang Xcelium.
Script File Paggamit
perl cadence_parser.pl presynth_run.do postsynth_run.do
postlayout_run.do Microsemi_Family
Location_of_Cadence_Precompiled_libraries
Cadence_parser.pl
#!/usr/bin/perl -w
#################################################### ##############################################
##################
#Paggamit: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
Microsemi_Family Precompiled_Libraries_location#
#################################################### ##############################################
##################
gamita ang POSIX;
paggamit sa estrikto;
akong ($presynth, $postsynth, $postlayout, $pamilya, $lib_location) = @ARGV;
&questa_parser ($presynth, $pamilya, $lib_location);
&questa_parser($postsynth, $pamilya, $lib_location);
&questa_parser($postlayout, $pamilya, $lib_location);
sub questa_parser {
akong $ModelSim_run_do = $_[0];
akong $actel_family = $_[1];
akong $lib_location = $_[2];
akong $estado;
kon (-e “$ModelSim_run_do” )
{
bukas (INFILE,"$ModelSim_run_do");
akong @ModelSim_run_do =FILE>;
akong $line;
kon ($ ModelSim_run_do =~ m/(presynth)/)
{
`mkdir QUESTA_PRESYNTH`;
bukas (OUTFILE,”>QUESTA_PRESYNTH/presynth_questa.do”);
$estado = $1;
} elsif ($ModelSim_run_do =~ m/(postsynth)/)
{
`mkdir QUESTA_POSTSYNTH`;
bukas (OUTFILE,”>QUESTA_POSTSYNTH/postsynth_questa.do”);
$estado = $1;
} elsif ($ModelSim_run_do =~ m/(postlayout)/ )
{
`mkdir QUESTA_POSTLAYOUT`;
bukas (OUTFILE,”>QUESTA_POSTLAYOUT/postlayout_questa.do”);
$estado = $1;
} uban pa
{
print “Sayup nga mga Input nga gihatag sa file\n”;
print “#Usage: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
\"Libraries_location\"\n";
}
para sa $line (@ModelSim_run_do)
{
# Kinatibuk-ang mga operasyon
$line =~ s/..\/designer.*simulation\///g;
$linya =~ s/$estado/$estado\_questa/g;
#print OUTFILE “$linya \n”;
kon ($linya =~ m/vmap\s+.*($actel_family)/)
{
print OUTFILE "vmap $actel_family \"$lib_location\"\n";
} elsif ($linya =~ m/vmap\s+(.*._LIB)/)
{
$line =~ s/..\/component/..\/..\/component/g;
print OUTFILE “$linya \n”;
} elsif ($linya =~ m/vsim/)
{
$line =~ s/vsim/vsim -novopt/g;
print OUTFILE “$linya \n”;
} uban pa
{
print OUTFILE “$linya \n”;
}
}
hapit (INFILE);
hapit (OUTFILE);
} uban pa {
print "$ ModelSim_run_do wala anaa. Balika ang simulation pag-usab \n”;
}
}
Siemens QuestaSim Setup/ModelSim Setup (Pangutana)
Ang run.do files, nga gihimo sa Libero SoC alang sa mga simulation gamit ang ModelSim Microsemi Editions, mahimong gamiton alang sa mga simulation gamit ang QuestaSim/ModelSim SE/DE/PE nga adunay usa ka kausaban. Sa ModelSim ME/ModelSim Pro ME run.do file, kinahanglan nga usbon ang lokasyon sa na-precompiled nga mga librarya.
Importante:
Sa kasagaran, ang himan sa simulation gawas sa ModelSim Pro ME nagpahigayon sa pag-optimize sa disenyo sa panahon sa simulation nga mahimong makaapekto sa visibility ngadto sa simulation artifacts sama sa design objects ug input stimulus.
Kini kasagaran makatabang sa pagpakunhod sa simulation runtime alang sa komplikado nga mga simulation, gamit ang verbose, self-checking testbenches. Bisan pa, ang mga default nga pag-optimize mahimo’g dili angay alang sa tanan nga mga simulation, labi na sa mga kaso diin gipaabut nimo nga graphic nga susihon ang mga resulta sa simulation gamit ang window window.
Aron matubag ang mga isyu nga gipahinabo sa kini nga pag-optimize, kinahanglan nimo nga idugang ang angay nga mga mando ug may kalabutan nga mga argumento sa panahon sa simulation aron mabalik ang visibility sa disenyo. Para sa mga sugo nga espesipiko sa himan, tan-awa ang dokumentasyon sa simulator nga gigamit.
5.1 Mga Variable sa Kalikopan (Pangutana)
Ang mosunod mao ang gikinahanglan nga mga variable sa palibot.
- LM_LICENSE_FILE: kinahanglan maglakip sa dalan sa lisensya file.
- MODEL_TECH: kinahanglan mahibal-an ang agianan padulong sa lokasyon sa direktoryo sa balay sa pag-install sa QuestaSim.
- PATH: kinahanglan magtudlo sa executable nga lokasyon nga gitudlo sa MODEL_TECH.
5.2 Pag-convert sa run.do para sa Mentor QuestaSim (Pangutana)
Ang run.do files nga namugna sa Libero SoC alang sa mga simulation gamit ang ModelSim Microsemi Editions mahimong magamit alang sa mga simulation gamit ang QuestaSim/ModelSim_SE nga adunay usa ka pagbag-o.
Importante: Tanan ang mga laraw nga gi-simulate gamit ang QuestaSim kinahanglan nga maglakip -novopt
opsyon uban sa vsim command sa run.do script files.
5.3 I-download ang Gihugpong Library (Pangutana)
I-download ang mga librarya para sa Mentor Graphics QuestaSim gikan sa Microsemi's website.
Synopsys VCS Setup (Pangutana)
Ang dagan nga girekomenda sa Microsemi nagsalig sa Elaborate ug Compile nga dagan sa VCS. Kini nga dokumento naglakip sa usa ka script file nga naggamit sa run.do script files namugna sa Libero SoC ug nagmugna sa setup files gikinahanglan alang sa VCS simulation. Ang script file naggamit sa run.do file sa pagbuhat sa mosunod.
- Paghimo og library mapping file, nga gihimo gamit ang synopsys_sim.setup file nahimutang sa samang direktoryo diin ang VCS simulation nagdagan.
- Paghimo og shell script file sa pagdetalye ug pag-compile sa imong disenyo gamit ang VCS.
6.1 Mga Variable sa Kalikopan (Pangutana)
Ibutang ang angay nga mga variable sa palibot alang sa VCS base sa imong setup. Ang mga variable sa palibot nga gikinahanglan sumala sa dokumentasyon sa VCS mao ang:
- LM_LICENSE_FILE: kinahanglan maglakip sa usa ka pointer sa server sa lisensya.
- VCS_HOME: kinahanglan itudlo ang lokasyon sa direktoryo sa balay sa pag-install sa VCS.
- PATH: kinahanglang maglakip ug pointer sa bin directory ubos sa VCS_HOME directory.
6.2 I-download ang Gihugpong Library (Pangutana)
I-download ang mga librarya para sa Synopsys VCS gikan sa Microsemi's website.
6.3 VCS Simulation Script File (Pangutana)
Human sa pag-set up sa VCS ug paghimo sa disenyo ug sa lain-laing run.do filegikan sa Libero SoC, kinahanglan nimo:
- Paghimo sa library mapping file synopsys_sim.setup; kini file adunay mga punto sa lokasyon sa tanan nga mga librarya nga gamiton sa disenyo.
Importante: Ang file Ang ngalan kinahanglan dili usbon ug kini kinahanglan nga nahimutang sa parehas nga direktoryo diin ang simulation nagdagan. Ania ang usa ka example para sa ingon a file alang sa presynthesis simulation.
TRABAHO > EFAULT
SmartFusion2 :
presynth : ./presynth
DEFAULT : ./trabaho - I-elaborate ang lain-laing disenyo files, lakip ang testbench, gamit ang vlogan command sa VCS. Kini nga mga sugo mahimong maapil sa usa ka shell script file. Ang nagsunod kay example sa mga sugo nga gikinahanglan sa pagdetalye sa usa ka disenyo nga gihubit sa rtl.v uban sa iyang testbench nga gihubit sa
testbench.v.
vlogan +v2k -trabaho presynth rtl.v
vlogan +v2k -work presynth testbench.v - I-compile ang disenyo gamit ang VCS gamit ang mosunod nga command.
vcs –sim_res=1fs presynth.testbench
Mubo nga sulat: Ang timing resolution sa simulation kinahanglang ibutang sa 1fs para sa saktong functional simulation. - Sa diha nga ang disenyo gihugpong, sugdi ang simulation gamit ang mosunod nga sugo.
./simv - Para sa back-annotated simulation, ang VCS command kinahanglan nga sama sa gipakita sa mosunod nga codeblock.
vcs postlayout.testbench –sim_res=1fs –sdf max: .
ngalan>: file dalan> –gui –l postlayout.log
6.4 Mga Limitasyon/Mga Eksepsiyon (Pangutana)
Ang mosunod mao ang mga limitasyon/mga eksepsiyon sa Synopsys VCS setup.
- Ang mga simulation sa VCS mahimong ipadagan lamang alang sa mga proyekto sa Verilog sa Libero SoC. Ang VCS simulator adunay estrikto nga VHDL nga mga kinahanglanon sa pinulongan nga wala matuman sa Libero SoC nga auto-generated VHDL files.
- Kinahanglan nga adunay usa ka $ finish nga pahayag sa Verilog testbench aron mahunong ang simulation bisan kanus-a nimo gusto.
Importante: Kanus-a Ang mga simulation gipadagan sa GUI mode, ang oras sa pagdagan mahimong matino sa GUI.
6.5 Sample Tcl ug Shell Script Files (Pangutana)
Ang mosunod nga Perl nag-automate sa henerasyon sa synopsys_sim.setup file ingon man ang katugbang nga script sa shell files gikinahanglan sa pagdetalye, pag-compile, ug pag-simulate sa disenyo.
Kung ang disenyo naggamit ug MSS, kopyaha ang test.vec file nahimutang sa simulation folder sa Libero SoC project ngadto sa VCS simulation folder. Ang mosunod nga mga seksyon naglangkob sa sample run.do files namugna sa Libero SoC, lakip ang katugbang nga library mapping ug shell script files gikinahanglan alang sa VCS simulation.
6.5.1 Pre-synthesis (Pangutana)
Presynth_run.do
hilom nga gibutang ang ACTELLIBNAME SmartFusion2
hilom nga ibutang ang PROJECT_DIR "/sqa/users/me/VCS_Tests/Test_DFF"
kon {[file anaa ang presynth/_info]} {
echo "INFO: Ang simulation library presynth naa na"
} uban pa {
vlib presynth
}
vmap presynth presynth
vmap SmartFusion2 “/captures/lin/11_0_0_23_11prod/lib/ModelSim/precompiled/vlog/smartfusion2”
vlog -work presynth “${PROJECT_DIR}/component/work/SD1/SD1.v”
vlog “+incdir+${PROJECT_DIR}/stimulus” -work presynth “${PROJECT_DIR}/stimulus/SD1_TB1.v”
vsim -L SmartFusion2 -L presynth -t 1fs presynth.SD1_TB1
idugang ang wave /SD1_TB1/*
idugang ang log -r /*
dagan 1000ns
presynth_main.csh
#!/bin/csh -f
ibutang ang PROJECT_DIR = "/sqa/users/Me/VCS_Tests/Test_DFF"
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k -work presynth “${PROJECT_DIR}/component/
trabaho/SD1/SD1.v”
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k “+incdir+${PROJECT_DIR}/stimulus” -trabaho
presynth “${PROJECT_DIR}/stimulus/SD1_TB1.v”
/cad_design/tools/vcs.dir/E-2011.03/bin/vcs -sim_res=1fs presynth.SD1_TB1 -l compile.log
./simv -l run.log
Synopsys_sim.setup
TRABAHO > DEFAULT
SmartFusion2 : /VCS/SmartFusion2
presynth : ./presynth
DEFAULT : ./trabaho
6.5.2 Post-synthesis (Pangutana)
postsynth_run.do
hilom nga gibutang ang ACTELLIBNAME SmartFusion2
hilom nga gibutang ang PROJECT_DIR "/sqa/users/Me/VCS_Tests/Test_DFF"
kon {[file naay postsynth/_info]} {
echo "INFO: Ang simulation library postsynth anaa na"
} uban pa {
vlib postsynth
}
vmap postsynth postsynth
vmap SmartFusion2 “//idm/captures/pc/11_0_1_12_g4x/Designer/lib/ModelSim/precompiled/vlog/
SmartFusion2”
vlog -work postsynth "${PROJECT_DIR}/synthesis/SD1.v"
vlog “+incdir+${PROJECT_DIR}/stimulus” -work postsynth “${PROJECT_DIR}/stimulus/SD1_TB1.v”
vsim -L SmartFusion2 -L postsynth -t 1fs postsynth.SD1_TB1
idugang ang wave /SD1_TB1/*
idugang ang log -r /*
dagan 1000ns
log SD1_TB1/*
paggawas
Postynth_main.csh
#!/bin/csh -f
ibutang ang PROJECT_DIR = "/sqa/users/Me/VCS_Tests/Test_DFF"
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k -work postsynth “${PROJECT_DIR}/synthesis/
SD1.v”
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k “+incdir+${PROJECT_DIR}/stimulus” -trabaho
postsynth “${PROJECT_DIR}/stimulus/SD1_TB1.v”
/cad_design/tools/vcs.dir/E-2011.03/bin/vcs -sim_res=1fs postsynth.SD1_TB1 -l compile.log
./simv -l run.log
Synopsys_sim.setup
TRABAHO > DEFAULT
SmartFusion2 : /VCS/SmartFusion2
postsynth : ./postsynth
DEFAULT : ./trabaho
6.5.3 Post-layout (Pangutana)
postlayout_run.do
hilom nga gibutang ang ACTELLIBNAME SmartFusion2
hilom nga ibutang ang PROJECT_DIR "E:/ModelSim_Work/Test_DFF"
kon {[file anaa ../designer/SD1/simulation/postlayout/_info]} {
echo "INFO: Simulation library ../designer/SD1/simulation/postlayout anaa na"
} uban pa {
vlib ../designer/SD1/simulation/postlayout
}
vmap postlayout ../designer/SD1/simulation/postlayout
vmap SmartFusion2 “//idm/captures/pc/11_0_1_12_g4x/Designer/lib/ModelSim/precompiled/vlog/
SmartFusion2”
vlog -work postlayout “${PROJECT_DIR}/designer/SD1/SD1_ba.v”
vlog “+incdir+${PROJECT_DIR}/stimulus” -work postlayout “${PROJECT_DIR}/stimulus/SD1_TB1.v”
vsim -L SmartFusion2 -L postlayout -t 1fs -sdfmax /SD1_0=${PROJECT_DIR}/designer/SD1/
SD1_ba.sdf postlayout.SD1_TB1
idugang ang wave /SD1_TB1/*
idugang ang log -r /*
dagan 1000ns
Postlayout_main.csh
#!/bin/csh -f
ibutang ang PROJECT_DIR = "/VCS_Tests/Test_DFF"
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k -work postlayout “${PROJECT_DIR}/
tigdesinyo/SD1/SD1_ba.v”
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k “+incdir+${PROJECT_DIR}/stimulus” -trabaho
postlayout “${PROJECT_DIR}/stimulus/SD1_TB1.v”
/cad_design/tools/vcs.dir/E-2011.03/bin/vcs -sim_res=1fs postlayout.SD1_TB1 -sdf
max:SD1_TB1.SD1_0:${PROJECT_DIR}/designer/SD1/SD1_ba.sdf -l compile.log
./simv -l run.log
Synopsys_sim.setup
TRABAHO > DEFAULT
SmartFusion2 : /VCS/SmartFusion2
postlayout : ./postlayout
DEFAULT : ./workVCS
6.6 Automation (Pangutana)
Ang dagan mahimong awtomatiko gamit ang mosunod nga Perl script file aron ma-convert ang ModelSim run.do files ngadto sa VCS compatible shell script files, paghimo og tukma nga mga direktoryo sulod sa Libero SoC simulation directory, ug dayon pagpadagan sa mga simulation.
Pagdalagan ang script file gamit ang mosunod nga syntax.
perl vcs_parse.pl presynth_run.do postsynth_run.do postlayout_run.do
Vcs_parse_pl
#!/usr/bin/perl -w
#################################################### ############################
#
#Paggamit: perl vcs_parse.pl presynth_run.do postsynth_run.do postlayout_run.do
#
#################################################### ##############################
akong ($presynth, $postsynth, $postlayout) = @ARGV;
kung(sistema("mkdir VCS_Presynth")) {print "napakyas ang mkdir:\n";}
kung(sistema("mkdir VCS_Postsynth")) {print "napakyas ang mkdir:\n";}
kung(sistema("mkdir VCS_Postlayout")) {print "napakyas ang mkdir:\n";}
chdir(VCS_Presynth);
`cp ../$ARGV[0] .` ;
&parse_do ($presynth,"presynth");
chdir (“../”);
chdir(VCS_Postsynth);
`cp ../$ARGV[1] .` ;
&parse_do ($postsynth,"postsynth");
chdir (“../”);
chdir(VCS_Postlayout);
`cp ../$ARGV[2] .` ;
&parse_do ($postlayout,"postlayout");
chdir (“../”);
sub parse_do {
akong $vlog = “/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k” ;
akong %LIB = ();
akong $file = $_[0] ;
akong $estado = $_[1];
bukas (INFILE,”$file”) || mamatay “Dili maabli File Rason tingali:$!”;
kung ($ estado eq "presynth")
{
open(OUT1,”>presynth_main.csh”) || mamatay "Dili makahimo og Command File Rason tingali:$!”;
}
elsif ($ estado eq “postsynth” )
{
open(OUT1,”>postsynth_main.csh”) || mamatay "Dili makahimo og Command File Rason tingali:$!”;
}
elsif ($ estado eq “postlayout” )
{
open(OUT1,”>postlayout_main.csh”) || mamatay "Dili makahimo og Command File Rason tingali:$!”;
}
lain
{
print "Simulation State is missing \n" ;
}
bukas(OUT2,”>synopsys_sim.setup”) || mamatay "Dili makahimo og Command File Rason tingali:$!”;
# .csh file
print OUT1 “#!/bin/csh -f\n\n\n” ;
#SET UP FILE
print OUT2 “WORK > DEFAULT\n” ;
print OUT2 “SmartFusion2 : /sqa/users/Aditya/VCS/SmartFusion2\n” ;
samtang ($ linya =FILE>)
{
Synopsys VCS Setup
kung ($linya =~ m/hilom nga ibutang ang PROJECT_DIR\s+\”(.*?)\”/)
{
print OUT1 “set PROJECT_DIR = \”$1\”\n\n\n” ;
}
elsif ($line =~ m/vlog.*\.v\”/ )
{
kon ($linya =~ m/\s+(\w*?)\_LIB/)
{
#print “\$1 =$1 \n” ;
$temp = “$1″.”_LIB”;
#print “Temp = $temp \n” ;
$LIB{$temp}++;
}
chomp($linya);
$linya =~ s/^vlog/$vlog/ ;
$linya =~ s/ //g;
print OUT1 "$linya\n";
}
elsif ( ($linya =~ m/vsim.*presynth\.(.*)/) || ($line =~ m/vsim.*postsynth\.(.*)/) || ($line
=~ m/vsim.*postlayout\.(.*)/) )
{
$tb = $1 ;
$tb =~ s/ //g;
chomp($tb);
#print "Ngalan sa TB : $tb \n";
kon ($ linya =~ m/sdf(.*)\.sdf/)
{
chomp($linya);
$linya = $1 ;
#print “LINYA : $linya \n” ;
kon ($linya =~ m/max/)
{
$linya =~ s/max \/// ;
$linya =~ s/=/:/;
print OUT1 “\n\n/cad_design/tools/vcs.dir/E-2011.03/bin/vcs -sim_res=1fs postlayout.$tb -sdf
max:$tb.$line.sdf -l compile.log\n” ;
}
elsif ($linya =~ m/min/)
{
$linya =~ s/min \/// ;
$linya =~ s/=/:/;
print OUT1 “\n\n/cad_design/tools/vcs.dir/E-2011.03/bin/vcs -sim_res=1fs postlayout.$tb -sdf
min:$tb.$line.sdf -l compile.log\n” ;
}
elsif ($linya =~ m/typ/)
{
$linya =~ s/typ \/// ;
$linya =~ s/=/:/;
print OUT1 “\n\n/cad_design/tools/vcs.dir/E-2011.03/bin/vcs -sim_res=1fs postlayout.$tb -sdf
typ:$tb.$line.sdf -l compile.log\n” ;
}
#-sdfmax /M3_FIC32_0=${PROJECT_DIR}/designer/M3_FIC32/M3_FIC32_ba.sdf — ModelSim SDF format
#$sdf = “-sdf max:testbench.M3_FIC32_0:${PROJECT_DIR}/designer/M3_FIC32/M3_FIC32_ba.sdf”; -VCS
SDF nga porma
}
}
}
imprinta
OUT1 “\n\n”
;
if
($ estado eq "presynth"
)
{
imprinta
OUT2 “presynth
: ./presynth\n”
;
imprinta
OUT1 "/cad_design/tools/vcs.dir/E-2011.03/bin/vcs
-sim_res=1fs presynth.$tb -l
compile.log\n”
;
}
elsif
($ estado eq "postsynth"
)
{
imprinta
OUT2 “postsynth
: ./postsynth\n”
;
imprinta
OUT1 "/cad_design/tools/vcs.dir/E-2011.03/bin/vcs
-sim_res=1fs postsynth.$tb -l
compile.log\n”
;
}
elsif
($ estado eq "postlayout"
)
{
print OUT2 “postlayout : ./postlayout\n” ;
}
lain
{
print "Simulation State is missing \n" ;
}
foreach $i ( mga yawe %LIB)
{
#print “Key : $i Value : $LIB{$i} \n” ;
print OUT2 “$i : ./$i\n” ;
}
print OUT1 “\n\n” ;
print OUT1 “./simv -l run.log\n” ;
print OUT2 “DEFAULT : ./work\n” ;
duol sa INFILE;
duol OUT1;
duol OUT2;
}
Kasaysayan sa Pagbag-o (Pag-login sa Microchip
Ang kasaysayan sa rebisyon naghulagway sa mga kausaban nga gipatuman sa dokumento. Ang mga pagbag-o
gilista pinaagi sa rebisyon, sugod sa pinakabag-o nga publikasyon.
Rebisyon | Petsa | Deskripsyon |
A | 12/2023 | Ang mosunod nga mga pagbag-o gihimo niini nga rebisyon: • Dokumento nga nakabig sa Microchip template. Inisyal nga Rebisyon. • Gi-update nga seksyon 5. Siemens QuestaSim Setup/ModelSim Setup aron maapil ang bag-ong nota nga nagpatin-aw sa epekto sa visibility atol sa simulation ug optimization. |
Suporta sa Microchip FPGA
Ang grupo sa mga produkto sa Microchip FPGA nagpaluyo sa mga produkto niini nga adunay nagkalain-laing serbisyo sa suporta, lakip ang Customer Service, Customer Technical Support Center, a website, ug mga opisina sa pagbaligya sa tibuok kalibutan.
Gisugyot ang mga kustomer nga bisitahan ang Microchip online nga mga kapanguhaan sa wala pa makontak ang suporta tungod kay lagmit nga ang ilang mga pangutana natubag na.
Kontaka ang Technical Support Center pinaagi sa website sa www.microchip.com/support. Hisguti ang FPGA Device Part number, pilia ang angay nga kategorya sa kaso, ug i-upload ang disenyo files samtang nagmugna og teknikal nga suporta nga kaso.
Kontaka ang Customer Service alang sa dili teknikal nga suporta sa produkto, sama sa pagpresyo sa produkto, pag-upgrade sa produkto, impormasyon sa pag-update, status sa order, ug pagtugot.
- Gikan sa North America, tawag sa 800.262.1060
- Gikan sa ubang bahin sa kalibutan, tawag sa 650.318.4460
- Fax, gikan sa bisan asa sa kalibutan, 650.318.8044
Impormasyon sa Microchip
Ang Microchip Website
Ang Microchip naghatag online nga suporta pinaagi sa among website sa www.microchip.com/. Kini website gigamit sa paghimo files ug impormasyon nga dali makuha sa mga kustomer. Pipila sa mga sulod nga anaa naglakip sa:
- Suporta sa Produkto - Mga sheet sa datos ug sayup, mga nota sa aplikasyon ug sampmga programa, mga kapanguhaan sa disenyo, mga giya sa tiggamit ug mga dokumento sa suporta sa hardware, pinakabag-o nga pagpagawas sa software ug gi-archive nga software
- Kinatibuk-ang Suporta sa Teknikal - Kanunay nga Gipangutana nga mga Pangutana (FAQs), mga hangyo sa teknikal nga suporta, mga grupo sa diskusyon sa online, listahan sa miyembro sa programa sa kasosyo sa disenyo sa Microchip
- Negosyo sa Microchip - Pagpili sa produkto ug mga giya sa pag-order, pinakabag-o nga press release sa Microchip, listahan sa mga seminar ug mga panghitabo, listahan sa mga opisina sa pagbaligya sa Microchip, mga distributor ug mga representante sa pabrika
Serbisyo sa Pagpahibalo sa Pagbag-o sa Produkto
Ang serbisyo sa pagpahibalo sa pagbag-o sa produkto sa Microchip makatabang sa pagpadayon sa mga kostumer sa mga produkto sa Microchip. Ang mga subscriber makadawat og pahibalo sa email sa matag higayon nga adunay mga pagbag-o, mga pag-update, mga pagbag-o o mga sayup nga may kalabutan sa usa ka piho nga pamilya sa produkto o himan sa pagpalambo sa interes.
Para magparehistro, adto sa www.microchip.com/pcn ug sunda ang mga instruksyon sa pagrehistro.
Suporta sa Kustomer
Ang mga tiggamit sa mga produkto sa Microchip makadawat og tabang pinaagi sa daghang mga channel:
- Distributor o Representante
- Lokal nga Opisina sa Pagbaligya
- Naka-embed nga Solutions Engineer (ESE)
- Teknikal nga Suporta
Kinahanglang kontakon sa mga kustomer ang ilang distributor, representante o ESE alang sa suporta. Anaa usab ang mga lokal nga opisina sa pagpamaligya aron matabangan ang mga kustomer. Ang usa ka lista sa mga opisina sa pagpamaligya ug mga lokasyon gilakip sa kini nga dokumento.
Ang teknikal nga suporta anaa pinaagi sa website sa: www.microchip.com/support
Feature sa Pagpanalipod sa Code sa Microchip Device
Matikdi ang mosunod nga mga detalye sa feature sa pagpanalipod sa code sa mga produkto sa Microchip:
- Ang mga produkto sa Microchip nakab-ot ang mga detalye nga anaa sa ilang partikular nga Microchip Data Sheet.
- Nagtuo ang Microchip nga ang pamilya sa mga produkto niini luwas kung gigamit sa gituyo nga paagi, sulod sa mga detalye sa pag-operate, ug sa ilawom sa normal nga mga kondisyon.
- Ang mga mithi sa Microchip ug agresibo nga nanalipod sa mga katungod sa intelektwal nga kabtangan niini. Ang mga pagsulay sa paglapas sa mga bahin sa pagpanalipod sa code sa produkto sa Microchip hugot nga gidili ug mahimong makalapas sa Digital Millennium Copyright Act.
- Bisan ang Microchip o bisan unsang ubang tiggama sa semiconductor dili makagarantiya sa seguridad sa code niini. Ang pagpanalipod sa code wala magpasabut nga gigarantiyahan namon ang produkto nga "dili mabuak".
Ang pagpanalipod sa code kanunay nga nag-uswag. Gipasalig sa Microchip ang padayon nga pagpaayo sa mga bahin sa pagpanalipod sa code sa among mga produkto.
Legal nga Pahibalo
Kini nga publikasyon ug ang impormasyon dinhi mahimong gamiton lamang sa mga produkto sa Microchip, lakip ang pagdesinyo, pagsulay, ug paghiusa sa mga produkto sa Microchip sa imong aplikasyon. Ang paggamit niini nga impormasyon sa bisan unsang laing paagi naglapas niini nga mga termino. Ang impormasyon bahin sa mga aplikasyon sa device gihatag lamang para sa imong kasayon ug mahimong mapulihan sa mga update. Imong responsibilidad ang pagsiguro nga ang imong aplikasyon nagtagbo sa imong mga detalye. Kontaka ang imong lokal nga opisina sa pagbaligya sa Microchip alang sa dugang nga suporta o, pagkuha og dugang nga suporta sa www.microchip.com/en-us/support/design-help/client-support-services.
KINI NGA IMPORMASYON GIHATAG SA MICROCHIP "AS IS". ANG MICROCHIP WALAY MGA REPRESENTASYON O WARRANTY SA BISAN UNSANG KLASE MAPASABOT O GIPAHIBALO, GISULAT O ORAL, STATUTORY O UBAN PA, MAY KALAMBOAN SA IMPORMASYON LAKIP APAN DILI LIMITADO SA BISAN UNSANG GIPASABOT NGA WARRANTY SA DILI, PAGBASA KATUYOAN, O MGA WARRANTY NGA MAY MALABATI SA IYANG KONDISYON, KALIDAD, O PERFORMANCE.
BISAN WALA MAN ANG MICROCHIP MAHIMONG TUBAG ALANG SA BISAN UNSANG INDIRECT, ESPESYAL, PUNITIVE, INCIDENTAL, O KONSEQUENTIAL NGA PAGKAWAL, KADOT, GASTO, O GASTO SA BISAN UNSANG KLASE NGA MAY MALAIT SA IMPORMASYON O PAGGAMIT KINI, BISAN UNSAY HINUNGDANON, BISAN KON NAHIMO ANG POSIBILIDAD O ANG MGA KADOT MAHITABO. HANGTOD SA KATAPUSAN NGA GITUGOT SA BALAOD, ANG TOTAL LIABILIDAD SA MICROCHIP SA TANANG MGA PANGANGINLAN SA UNSANG PAAGI NGA MAY KALAMBOAN SA IMPORMASYON O ANG PAGGAMIT NIINI DILI MOLABAW SA KANTIDAD SA BAYARAN, KUNG NAA MAN, NGA IMONG GIBAYAD DIREKTA SA MICROCHIP ALANG SA IMPORMASYON.
Ang paggamit sa mga gamit sa Microchip sa suporta sa kinabuhi ug/o mga aplikasyon sa kaluwasan hingpit nga naa sa peligro sa pumapalit, ug ang pumapalit miuyon nga depensahan, bayran ug huptan nga dili makadaot ang Microchip gikan sa bisan unsa ug tanan nga mga kadaot, pag-angkon, mga demanda, o mga gasto nga resulta sa ingon nga paggamit. Wala’y mga lisensya nga gihatag, sa tinuud o kung dili, sa ilawom sa bisan unsang mga katungod sa intelektwal nga kabtangan sa Microchip gawas kung gipahayag.
Mga marka sa pamatigayon
Ang Microchip nga ngalan ug logo, ang Microchip logo, Adaptec, AVR, AVR logo, AVR Freaks, BesTime, BitCloud, CryptoMemory, CryptoRF, dsPIC, flexPWR, HELDO, IGLOO, JukeBlox, KeeLoq, Kleer, LANCheck, LinkMD, maXStylus, maXTouch MediaLB, megaAVR, Microsemi, Microsemi logo, MOST, MOST logo, MPLAB, OptoLyzer, PIC, picoPower, PICSTART, PIC32 logo, PolarFire, Prochip Designer, QTouch, SAM-BA, SenGenuity, SpyNIC, SST, SST Logo, SuperFlash, Symmetricom , SyncServer, Tachyon, TimeSource, tinyAVR, UNI/O, Vectron, ug XMEGA kay mga rehistradong trademark sa Microchip Technology Incorporated sa USA ug ubang mga nasud.
AgileSwitch, APT, ClockWorks, The Embedded Control Solutions Company, EtherSynch, Flashtec, Hyper Speed Control, HyperLight Load, Libero, motorBench, mTouch, Powermite 3, Precision Edge, ProASIC, ProASIC Plus, ProASIC Plus logo, Quiet- Wire, SmartFusion, Ang SyncWorld, Temux, TimeCesium, TimeHub, TimePictra, TimeProvider, TrueTime, ug ZL kay mga rehistradong trademark sa Microchip Technology Incorporated sa USA
Kasikbit nga Key Suppression, AKS, Analog-for-the-Digital Age, Bisan unsang Capacitor, AnyIn, AnyOut, Augmented Switching, BlueSky, BodyCom, Clockstudio, CodeGuard, CryptoAuthentication, CryptoAutomotive, CryptoCompanion, CryptoController, dsPICDEM, dsPICDEM.net Average Matching, Dynamic Matching , DAM, ECAN, Espresso T1S, EtherGREEN, GridTime, IdealBridge, In-Circuit Serial Programming, ICSP, INICnet, Intelligent Parallel, IntelliMOS, Inter-Chip Connectivity, JitterBlocker, Knob-on-Display, KoD, maxCrypto, maxView, memBrain, Mindi, MiWi, MPASM, MPF, MPLAB Certified logo, MPLIB, MPLINK, MultiTRAK, NetDetach, Omniscient Code Generation, PICDEM, PICDEM.net,
PICkit, PICtail, PowerSmart, PureSilicon, QMatrix, REAL ICE, Ripple Blocker, RTAX, RTG4, SAMICE, Serial Quad I/O, simpleMAP, SimpliPHY, SmartBuffer, SmartHLS, SMART-IS, storClad, SQI, SuperSwitcher,
SuperSwitcher II, Switchtec, SynchroPHY, Total nga Paglahutay, Gisaligan nga Oras, TSHARC, USBCheck, VariSense, VectorBlox, VeriPHY, ViewSpan, WiperLock, XpressConnect, ug ZENA kay mga marka sa Microchip Technology Incorporated
sa USA ug uban pang mga nasud.
Ang SQTP usa ka marka sa serbisyo sa Microchip Technology Incorporated sa USA
Ang logo sa Adaptec, Frequency on Demand, Silicon Storage Technology, ug Symmcom kay mga rehistradong tatak sa Microchip Technology Inc. sa ubang mga nasud.
Ang GestIC usa ka rehistradong marka sa Microchip Technology Germany II GmbH & Co. KG, usa ka subsidiary sa Microchip Technology Inc., sa ubang mga nasud.
Ang tanan nga uban pang mga marka sa pamatigayon nga gihisgutan dinhi mga kabtangan sa ilang mga kompanya.
© 2023, Microchip Technology Incorporated ug mga subsidiary niini. Tanang Katungod Gigahin.
ISBN: 978-1-6683-3694-6
Sistema sa Pagdumala sa Kalidad
Alang sa kasayuran bahin sa Mga Sistema sa Pagdumala sa Kalidad sa Microchip, palihug bisitaha www.microchip.com/quality.
AMERIKA | ASIA/PACIFIC | ASIA/PACIFIC | EUROPE |
Opisina sa Kumpanya 2355 West Chandler Blvd. Chandler, AZ 85224-6199 Tel: 480-792-7200 Fax: 480-792-7277 Teknikal nga Suporta: www.microchip.com/support Web adres: www.microchip.com Atlanta Duluth, GA Tel: 678-957-9614 Fax: 678-957-1455 Austin, TX Tel: 512-257-3370 Boston Westborough, MA Tel: 774-760-0087 Fax: 774-760-0088 Chicago Itasca, IL Tel: 630-285-0071 Fax: 630-285-0075 Dallas Addison, TX Tel: 972-818-7423 Fax: 972-818-2924 Detroit Novi, MI Tel: 248-848-4000 Houston, TX Tel: 281-894-5983 Indianapolis Noblesville, IN Tel: 317-773-8323 Fax: 317-773-5453 Tel: 317-536-2380 Los Angeles Mission Viejo, CA Tel: 949-462-9523 Fax: 949-462-9608 Tel: 951-273-7800 Raleigh, NC Tel: 919-844-7510 New York, NY Tel: 631-435-6000 San Jose, CA Tel: 408-735-9110 Tel: 408-436-4270 Canada - Toronto Tel: 905-695-1980 Fax: 905-695-2078 |
Australia - Sydney Tel: 61-2-9868-6733 China - Beijing Tel: 86-10-8569-7000 China - Chengdu Tel: 86-28-8665-5511 China - Chongqing Tel: 86-23-8980-9588 China - Dongguan Tel: 86-769-8702-9880 China - Guangzhou Tel: 86-20-8755-8029 China - Hangzhou Tel: 86-571-8792-8115 China - Hong Kong SAR Tel: 852-2943-5100 China - Nanjing Tel: 86-25-8473-2460 China - Qingdao Tel: 86-532-8502-7355 China - Shanghai Tel: 86-21-3326-8000 China - Shenyang Tel: 86-24-2334-2829 China - Shenzhen Tel: 86-755-8864-2200 China - Suzhou Tel: 86-186-6233-1526 China - Wuhan Tel: 86-27-5980-5300 China – Xian Tel: 86-29-8833-7252 China - Xiamen Tel: 86-592-2388138 China - Zhuhai Tel: 86-756-3210040 |
India - Bangalore Tel: 91-80-3090-4444 India - Bag-ong Delhi Tel: 91-11-4160-8631 India - Pune Tel: 91-20-4121-0141 Japan - Osaka Tel: 81-6-6152-7160 Japan - Tokyo Tel: 81-3-6880-3770 Korea – Daegu Tel: 82-53-744-4301 Korea - Seoul Tel: 82-2-554-7200 Malaysia - Kuala Lumpur Tel: 60-3-7651-7906 Malaysia – Penang Tel: 60-4-227-8870 Pilipinas – Manila Tel: 63-2-634-9065 Singapore Tel: 65-6334-8870 Taiwan - Hsin Chu Tel: 886-3-577-8366 Taiwan - Kaohsiung Tel: 886-7-213-7830 Taiwan - Taipei Tel: 886-2-2508-8600 Thailand - Bangkok Tel: 66-2-694-1351 Vietnam – Ho Chi Minh Tel: 84-28-5448-2100 |
Austria - Wels Tel: 43-7242-2244-39 Fax: 43-7242-2244-393 Denmark – Copenhagen Tel: 45-4485-5910 Fax: 45-4485-2829 Finland - Espoo Tel: 358-9-4520-820 France - Paris Tel: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79 Alemanya - Garching Tel: 49-8931-9700 Alemanya - Haan Tel: 49-2129-3766400 Alemanya - Heilbronn Tel: 49-7131-72400 Alemanya - Karlsruhe Tel: 49-721-625370 Alemanya - Munich Tel: 49-89-627-144-0 Fax: 49-89-627-144-44 Alemanya - Rosenheim Tel: 49-8031-354-560 Israel - Ra'anana Tel: 972-9-744-7705 Italy - Milan Tel: 39-0331-742611 Fax: 39-0331-466781 Italy - Padova Tel: 39-049-7625286 Netherlands – Drunen Tel: 31-416-690399 Fax: 31-416-690340 Norway – Trondheim Tel: 47-72884388 Poland - Warsaw Tel: 48-22-3325737 Romania – Bucharest Tel: 40-21-407-87-50 Espanya - Madrid Tel: 34-91-708-08-90 Fax: 34-91-708-08-91 Sweden - Gothenberg Tel: 46-31-704-60-40 Sweden - Stockholm Tel: 46-8-5090-4654 UK – Wokingham Tel: 44-118-921-5800 Fax: 44-118-921-5820 |
© 2023 Microchip Technology Inc. ug mga subsidiary niini
DS50003627A –
Mga Dokumento / Mga Kapanguhaan
![]() |
MICROCHIP Libero SoC Simulation Library Software [pdf] Giya sa Gumagamit DS50003627A, Libero SoC Simulation Library Software, SoC Simulation Library Software, Simulation Library Software, Library Software, Software |