MICROCHIP logo Libero SoC Simulaasje
Biblioteek Setup Ynstruksjes

Ynlieding

(Stel in fraach)

It doel fan dit dokumint is om de proseduere te beskriuwen om de simulaasjeomjouwing op te setten mei in Libero SoC-projekt as ynput. Dizze dokumintaasje komt oerien mei de pre-kompilearre bibleteken levere foar gebrûk mei Libero SoC v11.9 en nijere software releases. De oanbeane biblioteken binne gearstald foar Verilog. VHDL-brûkers hawwe in lisinsje nedich dy't simulaasje fan mingde modus mooglik makket.
De gearstalde simulaasjebibleteken binne beskikber foar de folgjende ark:

  • Aldec Active-HDL
  • Aldec Riviera-PRO
  • Cadence Incisive Enterprise en Xcelium
  • Siemens QuestaSim
  • Synopsys VCS

Om in biblioteek oan te freegjen foar in oare simulator, nim dan kontakt op Microchip Technyske stipe.

Libero SoC-yntegraasje

(Stel in fraach)

Libero SoC stipet simulaasje mei ModelSim ME troch it generearjen fan in run.do file. Dit file wurdt brûkt troch ModelSim ME/ModelSim Pro ME om de simulaasje yn te stellen en út te fieren. Om oare simulaasje-ark te brûken, kinne jo de ModelSim ME/ModelSim Pro ME run.do generearje en it Tcl-skript feroarje file om de kommando's te brûken dy't kompatibel binne mei jo simulator.
1.1 Libero SoC Tcl File Generaasje (Stel in fraach)
Nei it meitsjen en generearjen fan ûntwerp yn Libero SoC, begjin in ModelSim ME / ModelSim Pro ME-simulaasje ûnder alle ûntwerpfazen (presynth, postsynth, en post-layout). Dizze stap genereart de run.do file foar de ModelSim ME / ModelSim Pro ME foar elke ûntwerpfaze.
MICROCHIP Libero SoC Simulation Library Software - ikoan Belangryk: Nei it starten fan elke simulaasje run, omneame de auto-generearre run.do file ûnder de simulaasjemap om foar te kommen dat Libero SoC dat oerskriuwt file. Bygelyksample, de files kin wurde omneamd ta presynth_run.do, postsynth_run.do en postlayout_run.do.

Aldec opset foar Active-HDL en Riviera-Pro (Stel in fraach)

De run.do file brûkt troch de ModelSim ME/ModelSim Pro ME kin wizige wurde en brûkt wurde foar simulaasje mei de Aldec-simulators.
2.1 Omjouwingsfariabele (Stel in fraach)
Stel jo omjouwingsfariabele yn op jo lisinsje file lokaasje:
LM_LICENSE_FILE: moat in oanwizer befetsje nei de lisinsjetsjinner.
2.2 Download gearstalde biblioteek (Stel in fraach)
Download de bibleteken foar de Aldec Active-HDL en de Aldec Riviera-PRO fan de Microchip website.
2.3 Run.do konvertearje foar Aldec-simulaasje (Stel in fraach)
De run.do files generearre troch Libero SoC foar simulaasjes mei help fan de Active-HDL en Riviera-Pro ark kin brûkt wurde foar simulaasjes mei help fan Active-HDL en Riviera-Pro mei in inkele feroaring. De folgjende tabel lit de Aldec-lykweardige kommando's sjen om te wizigjen yn 'e ModelSim run.do file.
Tabel 2-1. Aldec Equivalent Commands

ModelSim Aktive HDL
vlog alog
vcom acom
vlib alib
vsim asim
vmap amap

Folgjende is asample run.do relatearre oan Aldec simulators.

  1. Stel de lokaasje fan 'e aktive wurkmap yn.
    set dsn
  2. Stel in wurk bibleteek namme, map syn lokaasje, en dan map de lokaasje fan Microchip FPGA famylje
    foarkompilearre bibleteken (bglample, SmartFusion2) wêrop jo jo ûntwerp útfiere.
    alib presynth
    amap presynth presynth
    amap SmartFusion2
  3. Kompilearje alle nedige HDL files brûkt yn it ûntwerp mei de fereaske bibleteek.
    alog –work presynth temp.v (foar Verilog)
    alog –work presynth testbench.v
    acom –work presynth temp.vhd (foar Vhdl)
    acom –work presynth testbench.vhd
  4. Simulearje it ûntwerp.
    asim –L SmartFusion2 –L presynth –t 1ps presynth.testbench
    rinne 10us

2.4 Bekende problemen (Stel in fraach)
Dizze seksje listet de bekende problemen en beheiningen.

  • Biblioteken gearstald mei Riviera-PRO binne platfoarm spesifyk (dat wol sizze 64-bit biblioteken kinne net rinne op 32-bit platfoarm en oarsom).
  • Foar ûntwerpen mei SERDES / MDDR / FDDR, brûk de folgjende opsje yn jo run.do files wylst se simulaasjes útfiere nei it kompilearjen fan har ûntwerpen:
    - Aktive HDL: asim -o2
    - Riviera-PRO: asim -O2 (foar presynth en post-layout-simulaasjes) en asim -O5 (foar post-layout-simulaasjes)
    De Aldec-opset foar Active-HDL en Riviera-Pro hat de neikommende SAR's. Foar mear ynformaasje, kontakt Microchip Technyske stipe.
  • SAR 49908 - Aktive-HDL: VHDL-flater foar wiskundige bloksimulaasjes
  • SAR 50627 - Riviera-PRO 2013.02: Simulaasjefouten foar SERDES-ûntwerpen
  • SAR 50461 - Riviera-PRO: asim -O2/-O5 opsje yn simulaasjes

Cadence Incisive Setup (Stel in fraach)

Jo moatte in skript meitsje file fergelykber mei de ModelSim ME / ModelSim Pro ME run.do te rinnen de
Cadence Incisive simulator. Folgje dizze stappen en meitsje skript file foar NCSim of brûk it skript file
foarsjoen om de ModelSim ME/ModelSim Pro ME run.do te konvertearjen files yn de konfiguraasje files
nedich om de simulaasjes út te fieren mei NCSim.
MICROCHIP Libero SoC Simulation Library Software - ikoan Wichtich: Cadence is stoppe mei it útbringen fan nije ferzjes fan 'e Incisive Enterprise
simulator en begon Xcelium-simulator te stypjen.

3.1 Omjouwingsfariabelen (Stel in fraach)
Om de Cadence Incisive simulator út te fieren, konfigurearje de folgjende omjouwingsfariabelen:

  1. LM_LICENSE_FILE: moat befetsje in oanwizer nei de lisinsje file.
  2. cds_root: moat wize op de lokaasje fan 'e thúsmap fan' e Cadence Incisive Installation.
  3. PATH: moat wize op de bin-lokaasje ûnder de arkmap oanwiisd troch cds_root dat is,
    $cds_root/tools/bin/64bit (foar in 64-bit masine en $cds_root/tools/bin foar in 32-bit masine).
    D'r binne trije manieren om de simulaasjeomjouwing yn te stellen yn gefal fan in skeakel tusken 64-bit en 32-bit bestjoeringssystemen:

Gefall 1: PATH Fariabel
Run it folgjende kommando:
set paad = (install_dir/tools/bin/64bit $path) foar 64bit masines en
set paad = (install_dir/tools/bin $path) foar 32bit masines
Gefal 2: Mei help fan de -64bit kommando-rigelopsje
Spesifisearje yn 'e kommandorigel -64bit opsje om de 64bit útfierbere op te roppen.
Gefal 3: Ynstelle fan de INCA_64BIT of CDS_AUTO_64BIT omjouwingsfariabele
De INCA_64BIT fariabele wurdt behannele as boolean. Jo kinne dizze fariabele ynstelle op elke wearde of op in nul tekenrige.
setenv INCA_64BIT

MICROCHIP Libero SoC Simulation Library Software - ikoan Wichtich: De INCA_64BIT omjouwingsfariabele hat gjin ynfloed op oare Cadence-ark, lykas IC-ark. Lykwols, foar Incisive ark, de INCA_64BIT fariabele oerskriuwt de ynstelling foar de CDS_AUTO_64BIT omjouwingsfariabele. As de INCA_64BIT omjouwingsfariabele is ynsteld, rinne alle Incisive-ark yn 64-bit modus. setenv CDS_AUTO_64BIT INCLUDE:INCA
MICROCHIP Libero SoC Simulation Library Software - ikoan Wichtich: De string INCA moat yn haadletters wêze. Alle útfierbere bestannen moatte wurde útfierd yn beide 32-bit modus of yn 64-bit modus, set de fariabele net yn om ien útfierbere op te nimmen, lykas yn it folgjende:
setenv CDS_AUTO_64BIT INCLUDE:ncelab

Oare Cadence-ark, lykas IC-ark, brûke ek de CDS_AUTO_64BIT-omjouwingsfariabele om de seleksje fan 32-bit of 64-bit útfierbere te kontrolearjen. De folgjende tabel lit sjen hoe't jo de fariabele CDS_AUTO_64BIT kinne ynstelle om de Incisive-ark en IC-ark yn alle modi út te fieren.
Tabel 3-1. CDS_AUTO_64BIT Fariabelen

CDS_AUTO_64BIT Fariabele Incisive Tools IC Tools
setenv CDS_AUTO_64BIT ALL 64 byt 64 byt
setenv CDS_AUTO_64BIT NONE 32 byt 32 byt
setenv CDS_AUTO_64BIT EXCLUDE:ic_binary 64 byt 32 byt
setenv CDS_AUTO_64BIT EXCLUDE:INCA 32 byt 64 byt

MICROCHIP Libero SoC Simulation Library Software - ikoan Belangryk: Alle Incisive-ark moatte wurde útfierd yn beide 32-bit modus of yn 64-bit modus, brûk gjin EXCLUDE om in spesifyk útfierber út te sluten, lykas yn it folgjende: setenv CDS_AUTO_64BIT EXCLUDE:ncelab
As jo ​​de fariabele CDS_AUTO_64BIT ynstelle om de Incisive-ark út te sluten (setenv CDS_AUTO_64BIT EXCLUDE: INCA), wurde alle Incisive-ark yn 32-bit modus útfierd. De kommando-rigelopsje -64bit oerskriuwt lykwols de omjouwingsfariabele.
De folgjende konfiguraasje files helpe jo jo gegevens te behearjen en de wurking fan 'e simulaasje-ark en nutsbedriuwen te kontrolearjen:

  • Bibleteek mapping file (cds.lib)—Definieart in logyske namme foar de lokaasje fan jo ûntwerp.
  • Biblioteken en assosjearret se mei fysike mapnammen.
  • Fariabelen file (hdl.var)-Define fariabelen dy't ynfloed op it gedrach fan simulaasje ark en nutsbedriuwen.

3.2 Download gearstalde biblioteek (Stel in fraach)
Download de biblioteken foar Cadence Incisive fan Microsemi's website.
3.3 It NCSim-skript oanmeitsje File (Stel in fraach)
Nei it meitsjen fan in kopy fan de run.do files, fier dizze stappen út om jo simulaasje út te fieren mei NCSim:

  1. Meitsje in cds.lib file dat definiearret de biblioteken dy't tagonklik binne en harren lokaasje. De file befettet útspraken dy't map bibleteek logyske nammen oan harren fysike triemtafel paden. Bygelyksample, as jo rinne presynth simulaasje, de cds.lib file wurdt skreaun lykas werjûn yn it folgjende koadeblok.
    DEFINE presynth ./presynth
    DEFINE COREAHBLITE_LIB ./COREAHBLITE_LIB
    DEFINE smartfusion2
  2. Meitsje in hdl.var file, in opsjonele konfiguraasje file dat befettet konfiguraasje fariabelen, dat bepaalt hoe't jo design omjouwing is ynsteld. De folgjende fariabele files binne opnommen:
    - Fariabelen dy't wurde brûkt om de wurkbibleteek oan te jaan wêr't de kompilator kompilearre objekten en oare ôflaat gegevens opslacht.
    - Foar Verilog, fariabelen (LIB_MAP, VIEW_MAP, WORK) dy't wurde brûkt om de biblioteken en views om te sykjen as de útwurker eksimplaren oplost.
    - Fariabelen wêrmei jo kompilator, útwurker en simulator kommando-rigelopsjes en arguminten kinne definiearje.
    Yn gefal fan presynth simulaasje example werjûn hjirboppe, sizze wy hawwe trije RTL files: av, bv, en testbench.v, dat moat wurde kompilearre yn respektivelik presynth, COREAHBLITE_LIB, en presynth bibleteken. De hdl.var file kin skreaun wurde lykas werjûn yn it folgjende koadeblok.
    DEFINE WORK presynth
    DEFINE PROJECT_DIR files>
    DEFINE LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/av => presynth)
    DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/bv => COREAHBLITE_LIB)
    DEFINE LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/testbench.v => presynth)
    DEFINE LIB_MAP ( $LIB_MAP, + => presynth )
  3. Kompilearje it ûntwerp files mei ncvlog opsje.
    ncvlog +incdir+ –cdslib ./cds.lib –hdlvar ./hdl.var –logfile
    ncvlog.log –update –linedebug av bv testbench.v
  4. Wurkje it ûntwerp út mei ncelab. De útwurker konstruearret in ûntwerphierargy basearre op de ynstânsje- en konfiguraasjeynformaasje yn it ûntwerp, stelt sinjaalferbining yn, en berekkent begjinwearden foar alle objekten yn it ûntwerp. De útwurke ûntwerphierarchy wurdt opslein yn in simulaasje-snapshot, dat is de foarstelling fan jo ûntwerp dat de simulator brûkt om de simulaasje út te fieren.
    ncelab –Berjocht –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax 15 –
    tagong +rwc –status worklib. :module
    Útwurking Tidens Post-layout simulaasje
    Yn gefal fan post-layout simulaasjes, earst de SDF file moat foar útwurking kompilearre wurde mei it kommando ncsdfc.
    ncsdfcfilenamme>.sdf –útfierfilenamme>.sdf.X
    Tidens útwurking brûke de kompilearre SDF-útfier mei -autosdf-opsje lykas werjûn yn it folgjende koadeblok.
    ncelab -autosdf –Berjocht –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax
    15 –access +rwc –status worklib. :module –sdf_cmd_file ./
    sdf_cmd_file
    De sdf_cmd_file moat wêze lykas werjûn yn it folgjende koadeblok.
    COMPILED_SDF_FILE = " file>"
  5. Simulearje mei ncsim. Nei útwurking wurdt in simulaasje-snapshot makke, dat wurdt laden troch ncsim foar simulaasje. Jo kinne rinne yn batch modus of GUI modus.
    ncsim –Message –batch/-gui –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncsim.log -
    errormax 15 -status worklib. :module

MICROCHIP Libero SoC Simulation Library Software - ikoan Belangryk: Alle boppesteande trije stappen fan kompilearjen, útwurkjen en simulearjen kinne wurde pleatst yn in shellskript file en komt fan kommando-rigel. Yn stee fan dizze trije stappen te brûken, kin ûntwerp wurde simulearre yn ien stap mei ncverilog of irun-opsje lykas werjûn yn 'e folgjende codeblock.
ncverilog +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var
files brûkt yn it ûntwerp>
irun +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var files
brûkt yn it ûntwerp>

3.3.1 Bekende problemen (Stel in fraach)
Testbench Workaround
It brûken fan de folgjende ferklearring foar it opjaan fan de klokfrekwinsje yn 'e testbank generearre troch brûker, of de standert testbench generearre troch Libero SoC wurket net mei NCSim.
altyd @(SYSCLK)
#(SYSCLK_PERIOD / 2.0) SYSCLK <= !SYSCLK;
Feroarje as folget om simulaasje út te fieren:
altyd #(SYSCLK_PERIOD / 2.0) SYSCLK = ~SYSCLK;
MICROCHIP Libero SoC Simulation Library Software - ikoan Wichtich: gearstald biblioteken foar NCSim binne platfoarm spesifyk (ie 64 bit biblioteken binne net kompatibel mei 32 bit platfoarm en oarsom).
Postsynth en post-layout-simulaasjes mei MSS en SERDES By it útfieren fan postsynth-simulaasjes fan ûntwerpen dy't it MSS-blok befetsje as de post-layout-simulaasjes fan ûntwerpen mei SERDES, wurkje de BFM-simulaasjes net as de -libmap-opsje is
net oantsjutte by útwurking. Dit komt om't by útwurking, MSS wurdt oplost út de wurk bibleteek (fanwege de standert bining en de worklib being postsynth / post-layout) dêr't it is gewoan in Fêste funksje.
It kommando ncelab moat skreaun wurde lykas werjûn yn it folgjende koadeblok om de MSS op te lossen
blok út 'e SmartFusion2 precompiled bibleteek.

ncelab -libmap lib.map -libverbose -Berjocht -tagong +rwc cfg1
en de lib.map file moat sa wêze:
konfiguraasje cfg1;
ûntwerp ;
standert liblist smartfusion2 ;
endconfig
Dit lost elke sel yn 'e SmartFusion2-bibleteek op foardat jo yn' e wurkbibleteek sykje, ie postsynth / post-layout.
De -libmap-opsje kin standert brûkt wurde by útwurking foar elke simulaasje (presynth, postsynth, en post-layout). Dit foarkomt simulaasjeproblemen dy't wurde feroarsake troch resolúsje fan eksimplaren fan biblioteken.
ncelab: *F,INTERR: INTERNE UITSONDERING
Dizze útsûndering foar ncelab-ark is in warskôging foar ûntwerpen dy't FDDR befetsje yn SmartFusion 2 en IGLOO 2 tidens postsynth- en post-layout-simulaasjes mei -libmap-opsje.
MICROCHIP Libero SoC Simulation Library Software - ikoan Belangryk: Dit probleem is rapportearre oan Cadence-stipeteam (SAR 52113).

3.4 Sample Tcl en Shell Script Files (Stel in fraach)
De folgjende files binne de konfiguraasje files nedich foar it ynstellen fan it ûntwerp en shell skript file foar it útfieren fan NCSim-kommando's.
Cds.lib
NE smartfusion2 /scratch/krydor/tmpspace/users/me/nc-vlog64/SmartFusion2
DEFINE COREAHBLITE_LIB ./COREAHBLITE_LIB
DEFINE presynth ./presynth

Hdl.var
DEFINE WORK presynth
DEFINE PROJECT_DIR /scratch/krydor/tmpspace/sqausers/me/3rd_party_simulators/Cadence/IGLOO2/
ENVM/M2GL050/envm_fic1_ser1_v/eNVM_fab_master
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_addrdec.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_defaultslavesm.v => COREAHBLITE_LIB)
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_masterstagev => COREAHBLITE_LIB)
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavearbiter.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavestagev => COREAHBLITE_LIB)
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_matrix2x16.v => COREAHBLITE_LIB)
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB/CCC_0/SB_CCC_0_FCCC.v =>
presynth)
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigMaster/
2.0.101/rtl/vlog/core/coreconfigmaster.v => presynth )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigP/4.0.100/rtl/
vlog/core/coreconfigp.v => presynth )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp_pcie_hotreset.v => presynth )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp.v => presynth )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB/FABOSC_0/SB_FABOSC_0_OSC.v =>
presynth)
DEFINE LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB_HPMS/SB_HPMS.v => presynth)
DEFINE LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB/SB.v => presynth)
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/SERDES_IF_0/
SB_top_SERDES_IF_0_SERDES_IF.v => presynth)
DEFINE LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/SB_top.v => presynth)
DEFINE LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/testbench.v => presynth)
DEFINE 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 -Berjocht -cdslib ./cds.lib -hdlvar ./hdl.var
-wurk presynth -logfile ncelab.log -errormax 15 -access +rwc -status presynth.testbench:module
ncsim -Berjocht -batch -cdslib ./cds.lib -hdlvar ./
hdl.var -logfile ncsim.log -errormax 15 -status presynth.testbench: module

3.5 Automatisearring (Stel in fraach)
It folgjende skript file konvertearret de ModelSim run.do files yn konfiguraasje files nedich foar in run simulaasjes mei help NCSim.
Skrift File Gebrûk
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

############################################## ##########################################
#################
#Gebrûk: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
Microsemi_Family Precompiled_Libraries_location#

############################################## ##########################################
#################
brûke POSIX;
strikt brûke;
my ($presynth, $postsynth, $postlayout, $family, $lib_location) = @ARGV;
&questa_parser($presynth, $family, $lib_location);
&questa_parser($postsynth, $family, $lib_location);
&questa_parser($postlayout, $family, $lib_location);
sub questa_parser {
myn $ModelSim_run_do = $_[0];
myn $actel_family = $_[1];
myn $lib_lokaasje = $_[2];
myn $steat;
if (-e “$ModelSim_run_do”)
{
iepen (INFILE"$ModelSim_run_do");
myn @ModelSim_run_do =FILE>;
myn $line;
if ($ModelSim_run_do =~ m/(presynth)/)
{
`mkdir QUESTA_PRESYNTH`;
iepen (útFILE,">QUESTA_PRESYNTH/presynth_questa.do");
$state = $1;
} elsif ( $ModelSim_run_do =~ m/(postsynth)/)
{
`mkdir QUESTA_POSTSYNTH`;
iepen (útFILE,">QUESTA_POSTSYNTH/postsynth_questa.do");
$state = $1;
} elsif ( $ModelSim_run_do =~ m/(postlayout)/ )
{
`mkdir QUESTA_POSTLAYOUT`;
iepen (útFILE,">QUESTA_POSTLAYOUT/postlayout_questa.do");
$state = $1;
} oar
{
print "Ferkearde Ynputs jûn oan de file\n";
print "#Gebrûk: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
\”Bibliotheken_lokaasje\”\n”;
}
foreach $line (@ModelSim_run_do)
{
#Algemiene operaasjes
$line =~ s/..\/ûntwerper.*simulaasje\///g;
$line =~ s/$state/$state\_questa/g;
#print OUTFILE "$line \n";
if ($line =~ m/vmap\s+.*($actel_family)/)
{
print OUTFILE "vmap $actel_family \"$lib_lokaasje\"\n";
} elsif ($line =~ m/vmap\s+(.*._LIB)/)
{
$line =~ s/..\/komponint/..\/..\/komponint/g;
print OUTFILE "$line \n";
} elsif ($line =~ m/vsim/)
{
$line =~ s/vsim/vsim -novopt/g;
print OUTFILE "$line \n";
} oar
{
print OUTFILE "$line \n";
}
}
ticht(INFILE);
útsluteFILE);
} oars {
print "$ModelSim_run_do bestiet net. Simulaasje opnij útfiere \n";
}
}

Cadence Xcelium opset (Microchip Login)

Jo moatte in skript meitsje file fergelykber mei de ModelSim ME/ModelSim Pro ME run.do om de Cadence Xcelium-simulator út te fieren. Folgje dizze stappen en meitsje skript file foar Xcelium of brûk it skript file foarsjoen om de ModelSim ME/ModelSim Pro ME run.do te konvertearjen files yn de konfiguraasje files nedich om simulaasjes út te fieren mei Xcelium.
4.1 Omjouwingsfariabelen (Stel in fraach)
Om de Cadence Xcelium út te fieren, konfigurearje de folgjende omjouwingsfariabelen:

  1. LM_LICENSE_FILE: moat befetsje in oanwizer nei de lisinsje file.
  2. cds_root: moat wize op de thúsmap lokaasje fan Cadence Incisive Ynstallaasje.
  3. PATH: moat wize op de bin-lokaasje ûnder de arkmap oanwiisd troch cds_root (bgl
    $cds_root/tools/bin/64bit (foar in 64-bit masine en $cds_root/tools/bin foar in 32-bit
    masine).

D'r binne trije manieren om de simulaasjeomjouwing yn te stellen yn gefal fan in skeakel tusken 64-bit en 32-bit bestjoeringssystemen:
Gefall 1: PATH Fariabel
set paad = (install_dir/tools/bin/64bit $path) foar 64bit masines en
set paad = (install_dir/tools/bin $path) foar 32bit masines
Gefal 2: Mei help fan de -64bit kommando-rigelopsje
Spesifisearje yn 'e kommando-rigel -64bit opsje om de 64-bit útfierbere op te roppen.
Gefal 3: Ynstelle fan de INCA_64BIT of CDS_AUTO_64BIT omjouwingsfariabele
De INCA_64BIT fariabele wurdt behannele as boolean. Jo kinne dizze fariabele ynstelle op elke wearde of op in nul
string.
setenv INCA_64BIT

MICROCHIP Libero SoC Simulation Library Software - ikoan Wichtich: De INCA_64BIT omjouwingsfariabele hat gjin ynfloed op oare Cadence-ark, lykas IC-ark. Lykwols, foar Incisive ark, de INCA_64BIT fariabele oerskriuwt de ynstelling foar de CDS_AUTO_64BIT omjouwingsfariabele. As de INCA_64BIT omjouwingsfariabele is et, rinne alle Incisive ark yn 64-bit modus.
setenv CDS_AUTO_64BIT INCLUDE:INCA
MICROCHIP Libero SoC Simulation Library Software - ikoan Wichtich: De string INCA moat yn haadletters wêze. Alle útfierbere bestannen moatte wurde útfierd yn beide 2-bit modus of yn 64-bit modus, set de fariabele net yn om ien útfierbere op te nimmen, lykas yn it folgjende:
setenv CDS_AUTO_64BIT INCLUDE:ncelab
Oare Cadence-ark, lykas IC-ark, brûke ek de CDS_AUTO_64BIT-omjouwingsfariabele om de seleksje fan 32-bit of 64-bit útfierbere te kontrolearjen. De folgjende tabel lit sjen hoe't jo de fariabele CDS_AUTO_64BIT kinne ynstelle om de Incisive-ark en IC-ark yn alle modi út te fieren.

Tabel 4-1. CDS_AUTO_64BIT Fariabelen

CDS_AUTO_64BIT Fariabele Incisive Tools IC Tools
setenv CDS_AUTO_64BIT ALL 64-bit 64-bit
setenv CDS_AUTO_64BIT NONE 32-bit 32-bit
setenv CDS_AUTO_64BIT
EXCLUDE:ic_binary
64-bit 32-bit
setenv CDS_AUTO_64BIT EXCLUDE:INCA 32-bit 64-bit

MICROCHIP Libero SoC Simulation Library Software - ikoan Belangryk: Alle Incisive-ark moatte wurde útfierd yn beide 32-bit modus of yn 64-bit modus, brûk gjin EXCLUDE om in spesifyk útfierber út te sluten, lykas yn it folgjende:
setenv CDS_AUTO_64BIT EXCLUDE:ncelab
As jo ​​​​de CDS_AUTO_64BIT-fariabele ynstelle om de Incisive-ark út te sluten (setenv
CDS_AUTO_64BIT EXCLUDE: INCA), alle Incisive-ark wurde útfierd yn 32-bit modus. Lykwols, de
-64bit kommando-rigel opsje oerskriuwt de omjouwingsfariabele.
De folgjende konfiguraasje files helpe jo jo gegevens te behearjen en de wurking fan 'e simulaasje-ark en nutsbedriuwen te kontrolearjen:

  • Bibleteek mapping file (cds.lib) definiearret in logyske namme foar de lokaasje fan jo ûntwerp.
  • Biblioteken en assosjearret se mei fysike mapnammen.
  • Fariabelen file (hdl.var) definiearret fariabelen dy't beynfloedzje it gedrach fan simulaasje ark en nutsbedriuwen.

4.2 Download gearstalde biblioteek (Stel in fraach)
Download de biblioteken foar Cadence Xcelium fan Microsemi's website.
4.3 It Xcelium-skript oanmeitsje file (Stel in fraach)
Nei it meitsjen fan in kopy fan de run.do files, útfiere de folgjende stappen om jo simulaasje út te fieren mei Xcelium-skript file.

  1. Meitsje in cds.lib file dat definiearret hokker biblioteken tagonklik binne en wêr't se lizze.
    De file befettet útspraken dy't map bibleteek logyske nammen oan harren fysike triemtafel paden. Bygelyksample, as jo rinne presynth simulaasje, de cds.lib file kin skreaun wurde lykas werjûn yn it folgjende koadeblok.
    DEFINE presynth ./presynth
    DEFINE COREAHBLITE_LIB ./COREAHBLITE_LIB
    DEFINE smartfusion2
  2. Meitsje in hdl.var file dat is in opsjonele konfiguraasje file dat befettet konfiguraasje fariabelen, dat bepaalt hoe't jo design omjouwing is ynsteld. Dêr heart by:
    - Fariabelen dy't wurde brûkt om de wurkbibleteek oan te jaan wêr't de kompilator kompilearre objekten en oare ôflaat gegevens opslacht.
    - Foar Verilog, fariabelen (LIB_MAP, VIEW_MAP, WORK) dy't wurde brûkt om de biblioteken en views om te sykjen as de útwurker eksimplaren oplost.
    - Fariabelen wêrmei jo kompilator, útwurker en simulator kommando-rigelopsjes en arguminten kinne definiearje.
    Yn gefal fan presynth simulaasje example werjûn hjirboppe, sizze wy hawwe 3 RTL files av, bv, en testbench.v, dat moat wurde gearstald yn respektivelik presynth, COREAHBLITE_LIB, en presynth bibleteken. De hdl.var file kin skreaun wurde lykas werjûn yn it folgjende koadeblok.
    DEFINE WORK presynth
    DEFINE PROJECT_DIR files>
    DEFINE LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/av => presynth)
    DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/bv => COREAHBLITE_LIB)
    DEFINE LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/testbench.v => presynth)
    DEFINE LIB_MAP ( $LIB_MAP, + => presynth )
  3. Kompilearje it ûntwerp files mei ncvlog opsje.
    xmvlog +incdir+ –cdslib ./cds.lib –hdlvar ./hdl.var –logfile
    ncvlog.log –update –linedebug av bv testbench.v
  4. Wurkje it ûntwerp út mei ncelab. De útwurker konstruearret in ûntwerphierargy basearre op de ynstânsje- en konfiguraasjeynformaasje yn it ûntwerp, stelt sinjaalferbining yn, en berekkent begjinwearden foar alle objekten yn it ûntwerp. De útwurke ûntwerphierarchy wurdt opslein yn in simulaasje-snapshot, dat is de foarstelling fan jo ûntwerp dat de simulator brûkt om de simulaasje út te fieren.
    Xcelium –Message –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax 15 –
    tagong +rwc –status worklib. :module
    Útwurking Tidens Post-layout simulaasje
    Yn gefal fan post-layout simulaasjes, earst de SDF file moat foar útwurking kompilearre wurde mei it kommando ncsdfc.
    Xceliumfilenamme>.sdf –útfierfilenamme>.sdf.X
    Tidens útwurking brûke de kompilearre SDF-útfier mei -autosdf-opsje lykas werjûn yn it folgjende koadeblok.
    xmelab -autosdf –Berjocht –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax
    15 –access +rwc –status worklib. :module –sdf_cmd_file ./
    sdf_cmd_file
    De sdf_cmd_file moat wêze lykas werjûn yn it folgjende koadeblok.
    COMPILED_SDF_FILE = " file>"
  5. Simulearje mei Xcelium. Nei útwurking wurdt in simulaasje-snapshot makke dy't wurdt laden troch Xcelium foar simulaasje. Dit kin wurde útfierd yn batch modus of GUI modus.
    xmsim –Berjocht –batch/-gui –cdslib ./cds.lib –hdlvar ./hdl.var –logfile xmsim.log -
    errormax 15 -status worklib. :module
    Cadence Xcelium opset
    MICROCHIP Libero SoC Simulation Library Software - ikoan Wichtich: allegear de boppesteande trije stappen fan kompilearjen, útwurkjen en simulearjen kinne yn in shellskript pleatst wurde file en komt fan kommando-rigel. Yn stee fan dizze trije stappen te brûken, kin ûntwerp wurde simulearre yn ien stap mei ncverilog of xrun-opsje lykas werjûn yn 'e folgjende codeblock.
    xmverilog +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var
    files brûkt yn it ûntwerp>
    xrun +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var files
    brûkt yn it ûntwerp>

4.3.1 Bekende problemen (Stel in fraach)
Testbench Workaround
It brûken fan de folgjende útspraak foar it opjaan fan de klokfrekwinsje yn 'e testbench generearre troch brûker as de standert testbench generearre troch Libero SoC wurket net mei Xcelium.
altyd @(SYSCLK)
#(SYSCLK_PERIOD / 2.0) SYSCLK <= !SYSCLK;
Feroarje as folget om simulaasje út te fieren:
altyd #(SYSCLK_PERIOD / 2.0) SYSCLK = ~SYSCLK;

MICROCHIP Libero SoC Simulation Library Software - ikoan Belangryk: Kompilearre biblioteken foar Xcelium binne platfoarm spesifyk (ie 64 bit biblioteken binne net kompatibel mei 32 bit platfoarm en oarsom).
Postsynth en Post-layout Simulaasjes mei MSS en SERDES
Wylst postsynth-simulaasjes útfiere fan ûntwerpen dy't MSS-blok befetsje, as post-layout-simulaasjes fan ûntwerpen mei SERDES, wurkje de BFM-simulaasjes net as -libmap-opsje net wurdt oantsjutte tidens útwurking. Dit komt om't by útwurking, MSS wurdt oplost út de wurk bibleteek (fanwege de standert bining en de worklib being postsynth / post-layout) dêr't it is gewoan in Fêste funksje.
It kommando ncelab moat skreaun wurde lykas werjûn yn it folgjende koadeblok om it MSS-blok op te lossen fan 'e SmartFusion2 foarôf kompilearre bibleteek.
xmelab -libmap lib.map -libverbose -Berjocht -tagong +rwc cfg1
en de lib.map file moat sa wêze:
konfiguraasje cfg1;
ûntwerp ;
standert liblist smartfusion2 ;
endconfig
Dit moat elke sel yn 'e SmartFusion2-bibleteek oplosse foardat jo yn' e wurkbibleteek sykje, ie postsynth / post-layout.
De -libmap-opsje kin standert brûkt wurde by útwurking foar elke simulaasje (presynth, postsynth en post-layout). Dit foarkomt simulaasjeproblemen dy't wurde feroarsake troch resolúsje fan eksimplaren fan biblioteken.
xmelab: *F,INTERR: INTERNE UITSONDERING
Dizze útsûndering foar ncelab-ark is in warskôging foar ûntwerpen dy't FDDR befetsje yn SmartFusion2 en IGLOO2
tidens postsynth en post-layout simulaasjes mei -libmap opsje.
MICROCHIP Libero SoC Simulation Library Software - ikoan Belangryk: Dit probleem is rapportearre oan Cadence-stipeteam (SAR 52113).

4.4 Sample Tcl en shell skript files (Stel in fraach)
De folgjende files binne de konfiguraasje files nedich foar it ynstellen fan it ûntwerp en shell skript file foar it útfieren fan Xcelium-kommando's.
Cds.lib
DEFINE smartfusion2 /scratch/krydor/tmpspace/users/me/nc-vlog64/SmartFusion2
DEFINE COREAHBLITE_LIB ./COREAHBLITE_LIB
DEFINE presynth ./presynth
Hdl.var
DEFINE WORK presynth
DEFINE PROJECT_DIR /scratch/krydor/tmpspace/sqausers/me/3rd_party_simulators/Cadence/IGLOO2/
ENVM/M2GL050/envm_fic1_ser1_v/eNVM_fab_master
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_addrdec.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_defaultslavesm.v => COREAHBLITE_LIB)
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_masterstagev => COREAHBLITE_LIB)
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavearbiter.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavestagev => COREAHBLITE_LIB)
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_matrix2x16.v => COREAHBLITE_LIB)
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB/CCC_0/SB_CCC_0_FCCC.v =>
presynth)
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigMaster/
2.0.101/rtl/vlog/core/coreconfigmaster.v => presynth )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigP/4.0.100/rtl/
vlog/core/coreconfigp.v => presynth )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp_pcie_hotreset.v => presynth )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp.v => presynth )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB/FABOSC_0/SB_FABOSC_0_OSC.v =>
presynth)
DEFINE LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB_HPMS/SB_HPMS.v => presynth)
DEFINE LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB/SB.v => presynth)
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/SERDES_IF_0/
SB_top_SERDES_IF_0_SERDES_IF.v => presynth)
DEFINE LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/SB_top.v => presynth)
DEFINE LIB_MAP ($LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/testbench.v => presynth)
DEFINE 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 -Berjocht -cdslib ./cds.lib -hdlvar ./hdl.var
-wurk presynth -logfile ncelab.log -errormax 15 -access +rwc -status presynth.testbench:module
ncsim -Berjocht -batch -cdslib ./cds.lib -hdlvar ./
hdl.var -logfile ncsim.log -errormax 15 -status presynth.testbench: module

4.5 Automatisearring (Microchip Login)
It folgjende skript file konvertearret ModelSim run.do files yn konfiguraasje files nedich om simulaasjes út te fieren mei Xcelium.
Skrift File Gebrûk
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

############################################## ##########################################
#################
#Gebrûk: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
Microsemi_Family Precompiled_Libraries_location#

############################################## ##########################################
#################
brûke POSIX;
strikt brûke;
my ($presynth, $postsynth, $postlayout, $family, $lib_location) = @ARGV;
&questa_parser($presynth, $family, $lib_location);
&questa_parser($postsynth, $family, $lib_location);

&questa_parser($postlayout, $family, $lib_location);
sub questa_parser {
myn $ModelSim_run_do = $_[0];
myn $actel_family = $_[1];
myn $lib_lokaasje = $_[2];
myn $steat;
if (-e “$ModelSim_run_do”)
{
iepen (INFILE"$ModelSim_run_do");
myn @ModelSim_run_do =FILE>;
myn $line;
if ($ModelSim_run_do =~ m/(presynth)/)
{
`mkdir QUESTA_PRESYNTH`;
iepen (útFILE,">QUESTA_PRESYNTH/presynth_questa.do");
$state = $1;
} elsif ( $ModelSim_run_do =~ m/(postsynth)/)
{
`mkdir QUESTA_POSTSYNTH`;
iepen (útFILE,">QUESTA_POSTSYNTH/postsynth_questa.do");
$state = $1;
} elsif ( $ModelSim_run_do =~ m/(postlayout)/ )
{
`mkdir QUESTA_POSTLAYOUT`;
iepen (útFILE,">QUESTA_POSTLAYOUT/postlayout_questa.do");
$state = $1;
} oar
{
print "Ferkearde Ynputs jûn oan de file\n";
print "#Gebrûk: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
\”Bibliotheken_lokaasje\”\n”;
}
foreach $line (@ModelSim_run_do)
{
#Algemiene operaasjes
$line =~ s/..\/ûntwerper.*simulaasje\///g;
$line =~ s/$state/$state\_questa/g;
#print OUTFILE "$line \n";
if ($line =~ m/vmap\s+.*($actel_family)/)
{
print OUTFILE "vmap $actel_family \"$lib_lokaasje\"\n";
} elsif ($line =~ m/vmap\s+(.*._LIB)/)
{
$line =~ s/..\/komponint/..\/..\/komponint/g;
print OUTFILE "$line \n";
} elsif ($line =~ m/vsim/)
{
$line =~ s/vsim/vsim -novopt/g;
print OUTFILE "$line \n";
} oar
{
print OUTFILE "$line \n";
}
}
ticht(INFILE);
útsluteFILE);
} oars {
print "$ModelSim_run_do bestiet net. Simulaasje opnij útfiere \n";
}
}

Siemens QuestaSim Setup/ModelSim Setup (Stel in fraach)

De run.do files, oanmakke troch de Libero SoC foar simulaasjes mei help fan de ModelSim Microsemi Editions, kin brûkt wurde foar simulaasjes mei help fan de QuestaSim / ModelSim SE / DE / PE mei in inkele feroaring. Yn de ModelSim ME/ModelSim Pro ME run.do file, moat de foarkompilearre biblioteken lokaasje wizige wurde.
MICROCHIP Libero SoC Simulation Library Software - ikoan Belangryk: 
Standert fiert it simulaasje-ark oars as de ModelSim Pro ME ûntwerpoptimalisaasje by simulaasje dy't de sichtberens kin beynfloedzje yn simulaasje-artefakten lykas ûntwerpobjekten en ynputstimulus.
Dit is typysk nuttich by it ferminderjen fan simulaasje-runtime foar de komplekse simulaasjes, mei verbose, selskontrôle testbanken. De standertoptimisaasjes kinne lykwols net passend wêze foar alle simulaasjes, foaral yn gefallen wêr't jo ferwachtsje om de simulaasjeresultaten grafysk te ynspektearjen mei it wellefinster.
Om problemen oan te pakken feroarsake troch dizze optimalisaasje, moatte jo passende kommando's en relatearre arguminten tafoegje tidens simulaasje om de sichtberens yn it ûntwerp te herstellen. Foar ark-spesifike kommando's, sjoch de dokumintaasje fan 'e simulator yn gebrûk.

5.1 Omjouwingsfariabelen (Stel in fraach)
Folgje binne de fereaske omjouwingsfariabelen.

  • LM_LICENSE_FILE: moat befetsje it paad nei de lisinsje file.
  • MODEL_TECH: moat identifisearje it paad nei it thús triemtafel lokaasje fan QuestaSim ynstallaasje.
  • PATH: moat wize op de útfierbere lokaasje oanwiisd troch MODEL_TECH.

5.2 Run.do konvertearje foar Mentor QuestaSim (Stel in fraach)
De run.do files oanmakke troch Libero SoC foar simulaasjes mei help fan ModelSim Microsemi Editions kinne brûkt wurde foar simulaasjes mei help fan QuestaSim / ModelSim_SE mei in inkele feroaring.
MICROCHIP Libero SoC Simulation Library Software - ikoan Wichtich: allegear de ûntwerpen dy't wurde simulearre mei QuestaSim moatte -novopt befetsje
opsje tegearre mei vsim kommando yn it run.do skript files.
5.3 Download de gearstalde biblioteek (Stel in fraach)
Download de biblioteken foar Mentor Graphics QuestaSim fan Microsemi's website.

Synopsys VCS Setup (Stel in fraach)

De troch Microsemi oanrikkemandearre stream fertrout op 'e útwurke en kompilearje stream yn VCS. Dit dokumint befettet in skript file dat it run.do-skript brûkt files generearre troch Libero SoC en genereart de opset files nedich foar VCS simulaasje. It skript file brûkt de run.do file om it folgjende te dwaan.

  • Meitsje in biblioteekmapping file, wat dien wurdt mei de synopsys_sim.setup file leit yn deselde map dêr't VCS simulaasje rint.
  • Meitsje in shell skript file om jo ûntwerp út te wreidzjen en te kompilearjen mei VCS.

6.1 Omjouwingsfariabelen (Stel in fraach)
Stel de passende omjouwingsfariabelen foar VCS yn op basis fan jo opset. De omjouwingsfariabelen dy't nedich binne neffens de VCS-dokumintaasje binne:

  • LM_LICENSE_FILE: moat in oanwizer befetsje nei de lisinsjetsjinner.
  • VCS_HOME: moat wize op de thúsmap lokaasje fan de VCS ynstallaasje.
  • PATH: moat in oanwizer befetsje nei de bin-map ûnder de VCS_HOME-map.

6.2 Download gearstalde biblioteek (Stel in fraach)
Download de biblioteken foar Synopsys VCS fan Microsemi's website.
6.3 VCS Simulaasje Script File (Stel in fraach)
Nei it opsetten fan VCS en it generearjen fan it ûntwerp en de ferskillende run.do files fan Libero SoC, moatte jo:

  1. Meitsje de biblioteekmapping file synopsys_sim.setup; dit file befettet oanwizings nei de lokaasje fan alle bibleteken dy't wurde brûkt troch it ûntwerp.
    MICROCHIP Libero SoC Simulation Library Software - ikoan  Wichtich: De file namme moat net feroarje en it moat lizze yn deselde map dêr't simulaasje rint. Hjir is in eksample foar sa'n file foar presynthesis simulaasje.
    WERK > EFAULT
    SmartFusion 2:
    presynth : ./presynth
    DEFAULT: ./wurk
  2. Untwikkelje it ferskillende ûntwerp files, ynklusyf de testbench, mei it vlogan kommando yn VCS. Dizze kommando's kinne opnommen wurde yn in shell-skript file. Folgjende is in eksample fan 'e kommando's dy't nedich binne om in ûntwerp út te wurkjen definieare yn rtl.v mei syn testbench definieare yn
    testbank.v.
    vlogan +v2k -wurk presynth rtl.v
    vlogan + v2k -wurk presynth testbench.v
  3. Kompilearje it ûntwerp mei VCS mei it folgjende kommando.
    vcs –sim_res=1fs presynth.testbench
    Opmerking: De timing resolúsje fan simulaasje moat wurde ynsteld op 1fs foar korrekt funksjonele simulaasje.
  4. Sadree't it ûntwerp is kompilearre, begjin simulaasje mei it folgjende kommando.
    ./simv
  5. Foar werom-annotearre simulaasje moat it VCS-kommando wêze lykas werjûn yn it folgjende koadeblok.
    vcs postlayout.testbench –sim_res=1fs –sdf max: .
    namme >>: file paad> –gui –l postlayout.log

6.4 Beheinings/útsûnderings (Stel in fraach)
Folgje binne de beheiningen / útsûnderingen fan Synopsys VCS opset.

  • VCS-simulaasjes kinne allinich wurde útfierd foar Verilog-projekten fan Libero SoC. De VCS-simulator hat strikte VHDL-taaleasken dy't net foldien wurde troch de Libero SoC auto-generearre VHDL files.
  • Jo moatte in $finish statement hawwe yn 'e Verilog testbank om de simulaasje te stopjen as jo wolle.
    MICROCHIP Libero SoC Simulation Library Software - ikoan Wichtich: wannear simulaasjes wurde útfierd yn GUI modus, run tiid kin oantsjutte yn de GUI.

6.5 Sample Tcl en Shell Script Files (Stel in fraach)
De folgjende Perl automatisearret de generaasje fan 'e synopsys_sim.setup file likegoed as it oerienkommende shell skript files nedich om it ûntwerp út te wreidzjen, te kompilearjen en te simulearjen.
As it ûntwerp brûkt in MSS, kopiearje de test.vec file leit yn 'e simulaasjemap fan it Libero SoC-projekt yn' e VCS-simulaasjemap. De folgjende seksjes befetsje sample run.do files generearre troch Libero SoC, ynklusyf de oerienkommende biblioteek mapping en shell skript files nedich foar VCS simulaasje.
6.5.1 Pre-synteze (Stel in fraach)
Presynth_run.do
rêstich ynsteld ACTELLIBNAME SmartFusion2
stil PROJECT_DIR "/sqa/users/me/VCS_Tests/Test_DFF" ynstelle
as {[file bestiet presynth/_info]} {
echo "INFO: Simulaasjebibleteek presynth bestiet al"
} oars {
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
add wave /SD1_TB1/*
add log -r /*
rinne 1000ns
presynth_main.csh
#!/bin/csh -f
set 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/
wurk/SD1/SD1.v”
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k “+incdir+${PROJECT_DIR}/stimulus” -wurk
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
WERK > STANDAARD
SmartFusion2: /VCS/SmartFusion2
presynth : ./presynth
DEFAULT: ./wurk

6.5.2 Postsynteze (Stel in fraach)
postsynth_run.do
rêstich ynsteld ACTELLIBNAME SmartFusion2
stil PROJECT_DIR "/sqa/users/Me/VCS_Tests/Test_DFF" ynstelle
as {[file bestiet postsynth/_info]} {
echo "INFO: Simulaasjebibleteek postsynth bestiet al"
} oars {
vlib postsynth
}
vmap postsynth postsynth
vmap SmartFusion2 “//idm/captures/pc/11_0_1_12_g4x/Designer/lib/ModelSim/precompiled/vlog/
SmartFusion 2"
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
add wave /SD1_TB1/*
add log -r /*
rinne 1000ns
log SD1_TB1/*
útgong
Postsynth_main.csh
#!/bin/csh -f
set 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” -wurk
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
WERK > STANDAARD
SmartFusion2: /VCS/SmartFusion2
postsynth : ./postsynth
DEFAULT: ./wurk
6.5.3 Post-yndieling (Stel in fraach)
postlayout_run.do
rêstich ynsteld ACTELLIBNAME SmartFusion2
stil PROJECT_DIR "E:/ModelSim_Work/Test_DFF"
as {[file bestiet ../designer/SD1/simulation/postlayout/_info]} {
echo "INFO: Simulaasjebibleteek ../designer/SD1/simulaasje/postlayout bestiet al"
} oars {
vlib ../designer/SD1/simulaasje/postlayout
}
vmap postlayout ../designer/SD1/simulaasje/postlayout
vmap SmartFusion2 “//idm/captures/pc/11_0_1_12_g4x/Designer/lib/ModelSim/precompiled/vlog/
SmartFusion 2"
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
add wave /SD1_TB1/*
add log -r /*
rinne 1000ns
Postlayout_main.csh
#!/bin/csh -f
set PROJECT_DIR = "/VCS_Tests/Test_DFF"
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k -work postlayout “${PROJECT_DIR}/
ûntwerper/SD1/SD1_ba.v"
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k “+incdir+${PROJECT_DIR}/stimulus” -wurk
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
WERK > STANDAARD
SmartFusion2: /VCS/SmartFusion2
postlayout : ./postlayout
DEFAULT: ./workVCS
6.6 Automatisearring (Stel in fraach)
De stream kin automatisearre wurde mei it folgjende Perl-skript file om de ModelSim run.do te konvertearjen files yn VCS kompatibel shell skript files, meitsje juste mappen yn 'e Libero SoC-simulaasjemap, en rinne dan simulaasjes.
Run it skript file mei help fan de folgjende syntaksis.
perl vcs_parse.pl presynth_run.do postsynth_run.do postlayout_run.do
Vcs_parse_pl
#!/usr/bin/perl -w
############################################## ###########################
#
#Gebrûk: perl vcs_parse.pl presynth_run.do postsynth_run.do postlayout_run.do
#
############################################## ############################
my ($presynth, $postsynth, $postlayout) = @ARGV;
if(systeem(“mkdir VCS_Presynth”)) {print “mkdir mislearre:\n”;}
if(system(“mkdir VCS_Postsynth”)) {print “mkdir mislearre:\n”;}
if(system(“mkdir VCS_Postlayout”)) {print “mkdir mislearre:\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 {
myn $vlog = "/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k" ;
myn %LIB = ();
myn $file = $_[0];
myn $state = $_[1];
iepen (INFILE"$file”) || die "Kin net iepenje File Reden kin wêze:$!”;
if ($state eq "presynth")
{
iepen(OUT1,">presynth_main.csh") || die "Kin Command net oanmeitsje File Reden kin wêze:$!”;
}
elsif ($state eq "postsynth")
{
iepen(OUT1,">postsynth_main.csh") || die "Kin Command net oanmeitsje File Reden kin wêze:$!”;
}
elsif ($state eq "postlayout")
{
iepen(OUT1,">postlayout_main.csh") || die "Kin Command net oanmeitsje File Reden kin wêze:$!”;
}
oars
{
print "Simulaasjetastân mist \n" ;
}
iepen(OUT2,">synopsys_sim.setup") || die "Kin Command net oanmeitsje File Reden kin wêze:$!”;
# .csh file
print OUT1 "#!/bin/csh -f\n\n\n" ;
#OPSETTE FILE
print OUT2 "WORK > STANDARD\n" ;
print OUT2 "SmartFusion2: /sqa/users/Aditya/VCS/SmartFusion2\n";
wylst ($line =FILE>)
{

Synopsys VCS Setup

if ($line =~ m/stille PROJECT_DIR\s+\”(.*?)\”/)
{
print OUT1 "set PROJECT_DIR = \"$1\"\n\n\n" ;
}
elsif ($line =~ m/vlog.*\.v\”/)
{
if ($line =~ m/\s+(\w*?)\_LIB/)
{
#print "\$1 =$1 \n" ;
$temp = “$1″.”_LIB”;
#print "Temp = $temp \n" ;
$LIB{$temp}++;
}
chomp($line);
$line =~ s/^vlog/$vlog/ ;
$line =~ s/ //g;
print OUT1 "$line\n";
}
elsif (($line =~ m/vsim.*presynth\.(.*)/) || ($line =~ m/vsim.*postsynth\.(.*)/) || ($line
=~ m/vsim.*postlayout\.(.*)/))
{
$tb = $1 ;
$tb =~ s/ //g;
chomp($tb);
#print "TB Namme: $tb \n";
if ( $line =~ m/sdf(.*)\.sdf/)
{
chomp($line);
$line = $1 ;
#print "LINE : $line \n" ;
if ($line =~ m/max/)
{
$line =~ s/max \/// ;
$line =~ 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 ($line =~ m/min/)
{
$line =~ s/min \/// ;
$line =~ 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 ($line =~ m/typ/)
{
$line =~ s/typ \/// ;
$line =~ 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-formaat
#$sdf = "-sdf max:testbench.M3_FIC32_0:${PROJECT_DIR}/designer/M3_FIC32/M3_FIC32_ba.sdf"; -VCS
SDF-formaat
}
}
}
ôfdrukke
OUT1 "\n\n"
;
if
($state eq "presynth"
)
{
ôfdrukke
OUT2 "presynth
: ./presynth\n"
;
ôfdrukke
OUT1 “/cad_design/tools/vcs.dir/E-2011.03/bin/vcs
-sim_res=1fs presynth.$tb -l
compile.log\n"
;
}
elsif
($state eq "postsynth"
)
{
ôfdrukke
OUT2 "postsynth
: ./postsynth\n"
;
ôfdrukke
OUT1 “/cad_design/tools/vcs.dir/E-2011.03/bin/vcs
-sim_res=1fs postsynth.$tb -l
compile.log\n"
;
}
elsif
($state eq "postlayout"
)
{
print OUT2 "postlayout : ./postlayout\n" ;
}
oars
{
print "Simulaasjetastân mist \n" ;
}
foreach $i (kaaien %LIB)
{
#print "Kaai : $i Wearde : $LIB{$i} \n" ;
print OUT2 "$i : ./$i\n" ;
}
print OUT1 "\n\n" ;
print OUT1 "./simv -l run.log\n" ;
print OUT2 "DEFAULT : ./work\n" ;
slute INFILE;
slute OUT1;
slute OUT2;
}

Ferzjeskiednis (Microchip Login

De revyzjeskiednis beskriuwt de wizigingen dy't yn it dokumint ynfierd binne. De feroarings
wurde listed by revyzje, begjinnend mei de meast aktuele publikaasje.

Revyzje Datum Beskriuwing
A 12/2023 De folgjende feroarings wurde makke yn dizze ferzje:
• Dokumint omboud ta Microchip template. Inisjele revyzje.
• Updated seksje 5. Siemens QuestaSim Setup / ModelSim Setup om in nije notysje op te nimmen dy't de ynfloed op sichtberens ûnder simulaasje en optimisaasje ferklearret.

Microchip FPGA Support
Microchip FPGA-produktengroep stipet har produkten mei ferskate stipetsjinsten, ynklusyf Customer Service, Customer Technical Support Center, in website, en wrâldwide ferkeapkantoaren.
Klanten wurde suggerearre om Microchip online boarnen te besykjen foardat se kontakt opnimme mei stipe, om't it heul wierskynlik is dat har fragen al beantwurde binne.
Kontakt Technical Support Center fia de website at www.microchip.com/support. Neam it FPGA Device Part number, selektearje passende saakkategory, en upload ûntwerp files wylst it meitsjen fan in technyske stipe saak.
Nim kontakt op mei Customer Service foar net-technyske produktstipe, lykas produktprizen, produktupgrades, update-ynformaasje, bestelstatus en autorisaasje.

  • Ut Noard-Amearika, skilje 800.262.1060
  • Fan 'e rest fan' e wrâld, ring 650.318.4460
  • Fax, fan oeral yn 'e wrâld, 650.318.8044

Microchip Ynformaasje
De mikrochip Website
Microchip biedt online stipe fia ús website at www.microchip.com/. Dit website wurdt brûkt om te meitsjen files en ynformaasje maklik beskikber foar klanten. Guon fan 'e beskikbere ynhâld omfettet:

  • Produktstipe - Gegevensblêden en errata, applikaasjenotysjes en sample programma's, ûntwerpboarnen, brûkershantliedingen en hardware-stipedokuminten, lêste softwarereleases en argivearre software
  • Algemiene technyske stipe - Faak stelde fragen (FAQ's), oanfragen foar technyske stipe, online diskusjegroepen, lidlist fan lidmaatskip fan Microchip-ûntwerppartners
  • Business of Microchip - Produktseleksje- en bestelgidsen, lêste Microchip-parseberjochten, list fan seminars en eveneminten, listings fan Microchip-ferkeapkantoaren, distributeurs en fabryksfertsjintwurdigers

Produkt Change Notification Service
Microchip's notifikaasjetsjinst foar produktferoaring helpt klanten op 'e hichte te hâlden oer Microchip-produkten. Abonnees sille e-postnotifikaasje krije as d'r feroarings, updates, ferzjes of errata binne relatearre oan in spesifisearre produktfamylje of ûntwikkelingsark fan belang.
Om te registrearjen, gean nei www.microchip.com/pcn en folgje de ynstruksjes foar registraasje.
Klant Support
Brûkers fan Microchip-produkten kinne help krije fia ferskate kanalen:

  • Distributeur of fertsjintwurdiger
  • Lokaal Sales Office
  • Embedded Solutions Engineer (ESE)
  • Technyske stipe

Klanten moatte kontakt opnimme mei har distributeur, fertsjintwurdiger of ESE foar stipe. Lokale ferkeapkantoaren binne ek beskikber om klanten te helpen. In list fan ferkeapkantoaren en lokaasjes is opnommen yn dit dokumint.
Technyske stipe is beskikber fia de webside op: www.microchip.com/support
Microchip Apparaten Code Protection Feature
Notysje de folgjende details fan 'e koadebeskermingsfunksje op Microchip-produkten:

  • Microchip produkten foldogge oan de spesifikaasjes befette yn harren bysûndere Microchip Data Sheet.
  • Microchip is fan betinken dat syn famylje fan produkten feilich is as se brûkt wurde op 'e bedoelde manier, binnen operasjonele spesifikaasjes, en ûnder normale omstannichheden.
  • Microchip wearden en agressyf beskermet syn yntellektuele eigendomsrjochten. Pogingen om te brekken de koade beskerming funksjes fan Microchip produkt is strang ferbean en kin yn striid mei de Digital Millennium Copyright Act.
  • Noch Microchip noch in oare semiconductor fabrikant kin garandearje de feiligens fan syn koade. Koadebeskerming betsjut net dat wy garandearje dat it produkt "ûnbrekber" is.
    Koadebeskerming is konstant yn ûntwikkeling. Microchip set him yn om de funksjes foar koadebeskerming fan ús produkten kontinu te ferbetterjen.

Juridyske Notysje
Dizze publikaasje en de ynformaasje hjiryn meie allinich brûkt wurde mei Microchip-produkten, ynklusyf om Microchip-produkten te ûntwerpen, te testen en te yntegrearjen mei jo applikaasje. Gebrûk fan dizze ynformaasje op in oare manier skeint dizze betingsten. Ynformaasje oangeande apparaatapplikaasjes wurdt allinich foar jo gemak levere en kin wurde ferfongen troch updates. It is jo ferantwurdlikens om te soargjen dat jo applikaasje foldocht oan jo spesifikaasjes. Nim kontakt op mei jo lokale Microchip ferkeap kantoar foar ekstra stipe of, krije ekstra stipe by www.microchip.com/en-us/support/design-help/client-support-services.
DIT YNFORMAASJE WORDT LJOCHT FAN MICROCHIP "AS IS". MICROCHIP MAAKT GEEN FERSENTASJES OF GARANTIES FAN ELKE SOART, SY EXPRESS OF YMPLYD, SKRIFTLIK OF Mûnling, STATUTORY OF EARSOON, FERGESE AAN DE YNFORMAASJE YNLEFT MAAR NET BEPERKTE TOT ELKE IMPLICEERDE GARANJANSJES-EN GARANTIES, FITNESS FOAR IN BEPAALDE DOEL, OF GARANTIES FERGESE TOT DE TEST, KWALITEIT, OF PERFORMANCE.
YN GEEN GEVAL SIL MICROCHIP AANSPRAKELIJK Wêze FOAR ELKE INDIREKTE, SPESIALE, STRAFFENDE, INSIDENTELE, OF GEVOLGLIKE FERLIEZEN, SKADE, KOSTEN, OF UITGAVEN FAN ELKE SOART WAT HÊT HÊT HÊT HÊT HÊT OP DE YNFORMAASJE OF SY GEBRUIK, HÛÛKLIK FERGESE, HOOFDÊÛÛÛÛRJOCHT, HÌÊÛÛÛÛNÊLÊN FERGESE MOOGLIKHEID OF DE SKADES binne foarsjoenber. FAN DE FOLLE MATE DAT BY DE WET tastien is, sil MICROCHIP'S TOTALE AANSPRAKELIJKHEID OP ALLE EIDERINGEN OP ELKE MANIER FERGESE AAN DE YNFORMAASJE OF SY GEBRUK NET it BELANG FAN FERGESE HEBBEN DAT JO DIREKTE FOAR DE MICROCHIP BETAALD HAVEN.
Gebrûk fan Microchip-apparaten yn libbensstipe- en / of feiligensapplikaasjes is folslein op it risiko fan 'e keaper, en de keaper stimt yn om Microchip te ferdigenjen, te beskermjen en harmless te hâlden fan alle skea, oanspraken, suits of útjeften dy't fuortkomme út sa'n gebrûk. Gjin lisinsjes wurde oerbrocht, ymplisyt of oars, ûnder alle Microchip yntellektuele eigendomsrjochten, útsein as oars oanjûn.
Handelsmerken
De Microchip namme en logo, it 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, en XMEGA binne registrearre hannelsmerken fan Microchip Technology Incorporated yn 'e FS en oare lannen.
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, SyncWorld, Temux, TimeCesium, TimeHub, TimePictra, TimeProvider, TrueTime, en ZL binne registrearre hannelsmerken fan Microchip Technology Incorporated yn 'e FS
Adjacent Key Suppression, AKS, Analog-for-the-Digital Age, Any Capacitor, AnyIn, AnyOut, Augmented Switching, BlueSky, BodyCom, Clockstudio, CodeGuard, CryptoAuthentication, CryptoAutomotive, CryptoCompanion, CryptoController, dsPICDEM, dsPICDEM.net, dsPICDEM.net, DsPICDEM.net MatchEEN Dynamic, DSPICDEM.net, EGREEN , GridTime, IdealBridge, In-Circuit Serial Programming, ICSP, INICnet, Intelligent Paralleling, 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 Endurance, Trusted Time, TSHARC, USBCheck, VariSense, VectorBlox, VeriPHY, ViewSpan, WiperLock, XpressConnect, en ZENA binne hannelsmerken fan Microchip Technology Incorporated
yn 'e FS en oare lannen.
SQTP is in tsjinstmerk fan Microchip Technology Incorporated yn 'e FS
It Adaptec-logo, Frequency on Demand, Silicon Storage Technology, en Symmcom binne registrearre hannelsmerken fan Microchip Technology Inc. yn oare lannen.
GestIC is in registrearre hannelsmerk fan Microchip Technology Germany II GmbH & Co. KG, in dochterûndernimming fan Microchip Technology Inc., yn oare lannen.
Alle oare hier neamde hannelsmerken binne eigendom fan har respektive bedriuwen.
© 2023, Microchip Technology Incorporated en syn dochterûndernimmingen. Alle rjochten foarbehâlden.
ISBN: 978-1-6683-3694-6
Kwaliteitsbehearsysteem
Foar ynformaasje oer Microchip's Quality Management Systems, besykje asjebleaft www.microchip.com/quality.

AMERIKA ASIA / PASIFIC ASIA / PASIFIC EUROPA
Corporate Office
2355 West Chandler Blvd.
Chandler, AZ 85224-6199
Tel: 480-792-7200
Fax: 480-792-7277
Technyske stipe:
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
Kanada - Toronto
Tel: 905-695-1980
Fax: 905-695-2078
Austraalje - Sydney
Tel: 61-2-9868-6733
Sina - Peking
Tel: 86-10-8569-7000
Sina - Chengdu
Tel: 86-28-8665-5511
Sina - Chongqing
Tel: 86-23-8980-9588
Sina - Dongguan
Tel: 86-769-8702-9880
Sina - Guangzhou
Tel: 86-20-8755-8029
Sina - Hangzhou
Tel: 86-571-8792-8115
Sina - Hong Kong SAR
Tel: 852-2943-5100
Sina - Nanjing
Tel: 86-25-8473-2460
Sina - Qingdao
Tel: 86-532-8502-7355
Sina - Shanghai
Tel: 86-21-3326-8000
Sina - Shenyang
Tel: 86-24-2334-2829
Sina - Shenzhen
Tel: 86-755-8864-2200
Sina - Suzhou
Tel: 86-186-6233-1526
Sina - Wuhan
Tel: 86-27-5980-5300
Sina - Xian
Tel: 86-29-8833-7252
Sina - Xiamen
Tel: 86-592-2388138
Sina - Zhuhai
Tel: 86-756-3210040
Yndia - Bangalore
Tel: 91-80-3090-4444
Yndia - Nij-Delhi
Tel: 91-11-4160-8631
Yndia - Pune
Tel: 91-20-4121-0141
Japan - Osaka
Tel: 81-6-6152-7160
Japan - Tokio
Tel: 81-3-6880-3770
Korea - Daegu
Tel: 82-53-744-4301
Korea - Seoul
Tel: 82-2-554-7200
Maleizje - Kuala Lumpur
Tel: 60-3-7651-7906
Maleizje - Penang
Tel: 60-4-227-8870
Filipinen - Manila
Tel: 63-2-634-9065
Singapoer
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
Tailân - Bangkok
Tel: 66-2-694-1351
Fietnam - Ho Chi Minh
Tel: 84-28-5448-2100
Eastenryk - Wels
Tel: 43-7242-2244-39
Fax: 43-7242-2244-393
Denemarken - Kopenhagen
Tel: 45-4485-5910
Fax: 45-4485-2829
Finlân - Espoo
Tel: 358-9-4520-820
Frankryk - Parys
Tel: 33-1-69-53-63-20
Fax: 33-1-69-30-90-79
Dútslân - Garching
Tel: 49-8931-9700
Dútslân - Haan
Tel: 49-2129-3766400
Dútslân - Heilbronn
Tel: 49-7131-72400
Dútslân - Karlsruhe
Tel: 49-721-625370
Dútslân - München
Tel: 49-89-627-144-0
Fax: 49-89-627-144-44
Dútslân - Rosenheim
Tel: 49-8031-354-560
Israel - Ra'anana
Tel: 972-9-744-7705
Itaalje - Milaan
Tel: 39-0331-742611
Fax: 39-0331-466781
Itaalje - Padua
Tel: 39-049-7625286
Nederlân – Drunen
Tel: 31-416-690399
Fax: 31-416-690340
Noarwegen - Trondheim
Tel: 47-72884388
Poalen - Warsjau
Tel: 48-22-3325737
Roemenië - Boekarest
Tel: 40-21-407-87-50
Spanje - Madrid
Tel: 34-91-708-08-90
Fax: 34-91-708-08-91
Sweden - Göteborg
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

MICROCHIP logo© 2023 Microchip Technology Inc. en har dochterûndernimmingen
DS50003627A -

Dokuminten / Resources

MICROCHIP Libero SoC Simulation Library Software [pdf] Brûkersgids
DS50003627A, Libero SoC Simulation Library Software, SoC Simulation Library Software, Simulation Library Software, Library Software, Software

Referinsjes

Lit in reaksje efter

Jo e-mailadres sil net publisearre wurde. Ferplichte fjilden binne markearre *