Efelychiad Libero SoC
Cyfarwyddiadau Gosod Llyfrgell
Rhagymadrodd
Pwrpas y ddogfen hon yw disgrifio'r weithdrefn ar gyfer sefydlu'r amgylchedd efelychu gan ddefnyddio prosiect Libero SoC fel mewnbwn. Mae'r ddogfennaeth hon yn cyfateb i'r llyfrgelloedd a luniwyd ymlaen llaw a ddarperir i'w defnyddio gyda Libero SoC v11.9 a datganiadau meddalwedd mwy newydd. Mae'r llyfrgelloedd a ddarperir wedi'u llunio ar gyfer Verilog. Mae angen trwydded ar ddefnyddwyr VHDL sy'n caniatáu efelychu modd cymysg.
Mae'r llyfrgelloedd efelychu cryno ar gael ar gyfer yr offer canlynol:
- Aldec Actif-HDL
- Aldec Riviera-PRO
- Diweddeb Menter Incisive a Xcelium
- Siemens QuestaSim
- Crynodeb VCS
I wneud cais am lyfrgell ar gyfer efelychydd gwahanol, cysylltwch Cymorth Technegol Microsglodyn.
Integreiddiad Libero SoC
Mae Libero SoC yn cefnogi efelychu gan ddefnyddio ModelSim ME trwy gynhyrchu run.do file. hwn file yn cael ei ddefnyddio gan ModelSim ME/ModelSim Pro ME i sefydlu a rhedeg yr efelychiad. I ddefnyddio offer efelychu eraill, gallwch gynhyrchu'r run.do ModelSim ME/ModelSim Pro ME ac addasu'r sgript Tcl file i ddefnyddio'r gorchmynion sy'n gydnaws â'ch efelychydd.
1.1 Libero SoC Tcl File cenhedlaeth (Gofyn Cwestiwn)
Ar ôl creu a chynhyrchu dyluniad yn Libero SoC, dechreuwch efelychiad ModelSim ME / ModelSim Pro ME o dan bob cam dylunio (presynth, postsynth, ac ôl-osodiad). Mae'r cam hwn yn cynhyrchu'r run.do file ar gyfer y ModelSim ME/ModelSim Pro ME ar gyfer pob cam dylunio.
Pwysig: Ar ôl dechrau pob rhediad efelychiad, ailenwi'r run.do a gynhyrchir yn awtomatig file o dan y cyfeiriadur efelychu i atal Libero SoC rhag trosysgrifo hynny file. Am gynample, yr files gellir ei ailenwi i presynth_run.do, postsynth_run.do a postlayout_run.do.
Gosod Aldec ar gyfer Active-HDL a Riviera-Pro (Gofyn Cwestiwn)
Mae'r rhedeg.do file a ddefnyddir gan y ModelSim ME/ModelSim Pro ME gellir ei addasu a'i ddefnyddio ar gyfer efelychu gan ddefnyddio'r efelychwyr Aldec.
2.1 Amrywiol Amgylchedd (Gofyn Cwestiwn)
Gosodwch eich newidyn amgylchedd i'ch trwydded file lleoliad:
LM_LICENSE_FILE: rhaid cynnwys pwyntydd i'r gweinydd trwydded.
2.2 Lawrlwythwch y Llyfrgell a Gyfansoddwyd (Gofyn Cwestiwn)
Dadlwythwch y llyfrgelloedd ar gyfer yr Aldec Active-HDL a'r Aldec Riviera-PRO o'r Microsglodyn websafle.
2.3 Trosi run.do ar gyfer efelychiad Aldec (Gofyn Cwestiwn)
Mae'r rhedeg.do files a gynhyrchir gan Libero SoC ar gyfer efelychiadau sy'n defnyddio'r offeryn Active-HDL a Riviera-Pro ar gyfer efelychiadau gan ddefnyddio Active-HDL a Riviera-Pro gydag un newid. Mae'r tabl canlynol yn rhestru'r gorchmynion Aldec-cyfwerth i'w haddasu yn y run.do ModelSim file.
Tabl 2-1. Gorchymyn Cyfwerth Aldec
ModelSim | Actif-HDL |
vlog | alog |
vcom | acom |
vlib | alib |
vsim | asim |
vmap | amap |
Yn dilyn felample run.do yn ymwneud ag efelychwyr Aldec.
- Gosodwch leoliad y cyfeiriadur gweithio cyfredol.
gosod dsn - Gosodwch enw llyfrgell weithredol, mapiwch ei lleoliad, ac yna mapiwch leoliad teulu Microsglodyn FPGA
llyfrgelloedd wedi'u llunio ymlaen llaw (ar gyfer cynample, SmartFusion2) ar yr ydych yn rhedeg eich dyluniad.
alib presynth
amap presynth presynth
aap SmartFusion2 - Lluniwch yr holl HDL angenrheidiol files a ddefnyddir yn y dyluniad gyda'r llyfrgell ofynnol.
alog –work presynth temp.v (ar gyfer Verilog)
alog –work presynth testbench.v
acom –work presynth temp.vhd (ar gyfer Vhdl)
acom –work presynth testbench.vhd - Efelychu'r dyluniad.
asim –L SmartFusion2 –L presynth –t 1ps presynth.testbench
rhedeg 10us
2.4 Materion Hysbys (Gofyn Cwestiwn)
Mae'r adran hon yn rhestru'r materion a'r cyfyngiadau hysbys.
- Mae llyfrgelloedd a grynhoir gan ddefnyddio Riviera-PRO yn blatfform benodol (hy ni ellir rhedeg llyfrgelloedd 64-bit ar blatfform 32-did ac i'r gwrthwyneb).
- Ar gyfer dyluniadau sy'n cynnwys SERDES/MDDR/FDDR, defnyddiwch yr opsiwn canlynol yn eich run.do files wrth redeg efelychiadau ar ôl llunio eu dyluniadau:
– Active-HDL: asim –o2
– Riviera-PRO: asim –O2 (ar gyfer efelychiadau presynth ac ar ôl gosodiad) ac asim –O5 (ar gyfer efelychiadau ôl-osod)
Mae gan y gosodiad Aldec ar gyfer Active-HDL a Riviera-Pro y SARs canlynol yn yr arfaeth. Am fwy o wybodaeth, cysylltwch Cymorth Technegol Microsglodyn. - SAR 49908 - Active-HDL: Gwall VHDL ar gyfer efelychiadau bloc Mathemateg
- SAR 50627 - Riviera-PRO 2013.02: Gwallau efelychu ar gyfer dyluniadau SERDES
- SAR 50461 - Riviera-PRO: opsiwn asim -O2 / - O5 mewn efelychiadau
Gosod Cadence Incisive (Gofyn Cwestiwn)
Mae angen i chi greu sgript file yn debyg i'r ModelSim ME/ModelSim Pro ME run.do i redeg y
Diweddeb efelychydd Incisive. Dilynwch y camau hyn a chreu sgript file ar gyfer NCSim neu defnyddiwch y sgript file
a ddarperir i drosi'r run.do ModelSim ME/ModelSim Pro ME files i mewn i'r cyfluniad files
sydd ei angen i redeg yr efelychiadau gan ddefnyddio NCSim.
Pwysig: Diweddeb wedi rhoi'r gorau i ryddhau fersiynau newydd o'r Incisive Enterprise
efelychydd a dechreuodd gefnogi efelychydd Xcelium.
3.1 Newidynnau Amgylcheddol (Gofyn Cwestiwn)
I redeg yr efelychydd Cadence Incisive, ffurfweddwch y newidynnau amgylchedd canlynol:
- LM_LICENSE_FILE: rhaid iddo gynnwys pwyntydd i'r drwydded file.
- cds_root: mae'n rhaid iddo bwyntio at leoliad cyfeiriadur cartref y Gosodiad Cadence Incisive.
- LLWYBR: rhaid pwyntio at leoliad y bin o dan y cyfeiriadur offer a nodir gan cds_root hynny yw,
$ cds_root/tools/bin/64bit (ar gyfer peiriant 64-bit a $ cds_root/tools/bin ar gyfer peiriant 32-bit).
Mae tair ffordd o sefydlu'r amgylchedd efelychu rhag ofn y bydd newid rhwng systemau gweithredu 64-bit a 32-bit:
Achos 1: PATH Amrywiol
Rhedeg y gorchymyn canlynol:
llwybr gosod = (install_dir/tools/bin/64bit $path) ar gyfer peiriannau 64bit a
llwybr gosod = (install_dir/tools/bin $path) ar gyfer peiriannau 32bit
Achos 2: Defnyddio'r Opsiwn Llinell Reoli -64bit
Yn y llinell orchymyn nodwch opsiwn -64bit er mwyn gweithredu'r gweithredadwy 64bit.
Achos 3: Gosod yr Amgylchedd INCA_64BIT neu CDS_AUTO_64BIT Amrywiol
Mae'r newidyn INCA_64BIT yn cael ei drin fel boolean. Gallwch chi osod y newidyn hwn i unrhyw werth neu i linyn nwl.
setenv INCA_64BIT
Pwysig: Mae'r Nid yw newidyn amgylchedd INCA_64BIT yn effeithio ar offer Diweddeb eraill, megis offer IC. Fodd bynnag, ar gyfer offer Incisive, mae'r newidyn INCA_64BIT yn diystyru'r gosodiad ar gyfer y newidyn amgylchedd CDS_AUTO_64BIT. Os yw'r newidyn amgylchedd INCA_64BIT wedi'i osod, mae'r holl offer Incisive yn rhedeg yn y modd 64-bit. setenv CDS_AUTO_64BIT CYNNWYS: INCA
Pwysig: Mae'r Rhaid i llinyn INCA fod mewn priflythrennau. Rhaid rhedeg pob gweithredadwy naill ai yn y modd 32-did neu yn y modd 64-bit, peidiwch â gosod y newidyn i gynnwys un gweithredadwy, fel yn y canlynol:
setenv CDS_AUTO_64BIT CYNNWYS:ncelab
Mae offer Diweddeb eraill, megis offer IC, hefyd yn defnyddio'r newidyn amgylchedd CDS_AUTO_64BIT i reoli'r dewis o weithrediadau 32-bit neu 64-bit. Mae'r tabl canlynol yn dangos sut y gallwch chi osod y newidyn CDS_AUTO_64BIT i redeg yr offer Incisive ac offer IC ym mhob modd.
Tabl 3-1. Newidynnau CDS_AUTO_64BIT
CDS_AUTO_64BIT Newidyn | Offer Treiddgar | Offer IC |
setenv CDS_AUTO_64BIT PAWB | 64 did | 64 did |
setenv CDS_AUTO_64BIT DIM | 32 did | 32 did |
setenv CDS_AUTO_64BIT EXCLUDE:ic_deuaidd | 64 did | 32 did |
setenv CDS_AUTO_64BIT EXCLUDE:INCA | 32 did | 64 did |
Pwysig: Rhaid rhedeg pob teclyn Incisive naill ai yn y modd 32-bit neu yn y modd 64-bit, peidiwch â defnyddio EXCLUDE i eithrio gweithredadwy benodol, fel yn y canlynol: setenv CDS_AUTO_64BIT EXCLUDE:ncelab
Os ydych chi'n gosod y newidyn CDS_AUTO_64BIT i eithrio'r Offer Incisive (setenv CDS_AUTO_64BIT EXCLUDE:INCA), mae'r holl offer Incisive yn cael eu rhedeg yn y modd 32-bit. Fodd bynnag, mae'r opsiwn llinell orchymyn -64bit yn diystyru'r newidyn amgylchedd.
Y cyfluniad canlynol files eich helpu i reoli eich data a rheoli gweithrediad yr offer efelychu a chyfleustodau:
- Mapio llyfrgell file (cds.lib) — Yn diffinio enw rhesymegol ar gyfer lleoliad eich dyluniad.
- Llyfrgelloedd ac yn eu cysylltu ag enwau cyfeiriadur corfforol.
- Newidynnau file (hdl.var) - Diffinio newidynnau sy'n effeithio ar ymddygiad offer efelychu a chyfleustodau.
3.2 Lawrlwythwch y Llyfrgell a Gyfansoddwyd (Gofyn Cwestiwn)
Lawrlwythwch y llyfrgelloedd ar gyfer Cadence Incisive o Microsemi's websafle.
3.3 Creu'r Sgript NCSim File (Gofyn Cwestiwn)
Ar ôl creu copi o'r run.do files, perfformiwch y camau hyn i redeg eich efelychiad gan ddefnyddio NCSim:
- Creu cds.lib file sy'n diffinio'r llyfrgelloedd sy'n hygyrch a'u lleoliad. Mae'r file yn cynnwys datganiadau sy'n mapio enwau rhesymegol llyfrgelloedd i'w llwybrau cyfeiriadur ffisegol. Am gynample, os ydych yn rhedeg efelychiad presynth, y cds.lib file wedi'i ysgrifennu fel y dangosir yn y bloc cod canlynol.
DIFFINIO presynth ./presynth
DEFINE COREAHBLITE_LIB ./COREHBLITE_LIB
DIFFINIO smartfusion2 - Creu hdl.var file, cyfluniad dewisol file sy'n cynnwys newidynnau cyfluniad, sy'n pennu sut mae eich amgylchedd dylunio wedi'i ffurfweddu. Y newidyn canlynol files yn cael eu cynnwys:
- Newidynnau a ddefnyddir i nodi'r llyfrgell waith lle mae'r casglwr yn storio gwrthrychau a gasglwyd a data arall sy'n deillio ohono.
– Ar gyfer Verilog, newidynnau (LIB_MAP, VIEW_MAP, GWAITH) a ddefnyddir i nodi'r llyfrgelloedd a views chwilio pan fydd yr ymhelaethwr yn datrys achosion.
- Newidynnau sy'n eich galluogi i ddiffinio opsiynau a dadleuon llinell orchymyn casglwr, ymhelaethwr ac efelychydd.
Mewn achos o efelychiad presynth exampgyda'r uchod, dywedwch fod gennym dri RTL files:av, bv, a testbench.v, y mae angen eu crynhoi yn llyfrgelloedd presynth, COREHBLITE_LIB, a presynth yn y drefn honno. Yr hdl.var file Gellir ei ysgrifennu fel y dangosir yn y bloc cod canlynol.
DIFFINIO GWAITH presynth
DEFINE PROJECT_DIR files>
DEFINE LIB_MAP ( $LIB_MAP, ${ PROJECT_DIR}/av => presynth )
DEFINE LIB_MAP ( $LIB_MAP, ${ PROJECT_DIR}/bv => COREHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${ PROJECT_DIR}/testbench.v => presynth )
DIFFINIO LIB_MAP ( $LIB_MAP, + => presynth ) - Lluniwch y dyluniad files gan ddefnyddio opsiwn ncvlog.
ncvlog +incdir+ –cdslib ./cds.lib –hdlvar ./hdl.var –logfile
ncvlog.log –diweddaru –linedebug av bv testbench.v - Manylwch ar y dyluniad gan ddefnyddio ncelab. Mae'r ymhelaethwr yn llunio hierarchaeth ddylunio yn seiliedig ar y wybodaeth am ennyd a chyfluniad yn y dyluniad, yn sefydlu cysylltedd signal, ac yn cyfrifo gwerthoedd cychwynnol ar gyfer pob gwrthrych yn y dyluniad. Mae'r hierarchaeth ddylunio fanwl yn cael ei storio mewn ciplun efelychiad, sef cynrychiolaeth eich dyluniad y mae'r efelychydd yn ei ddefnyddio i redeg yr efelychiad.
ncelab –Neges –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax 15 –
mynediad +rwc –lib worklib. : modiwl
Ymhelaethu Yn ystod efelychiad Ôl-osod
Yn achos efelychiadau ôl-osod, yn gyntaf y SDF file angen ei lunio cyn ymhelaethu gan ddefnyddio'r gorchymyn ncsdfc.
ncsdfcfileenw>.sdf – allbwnfileenw>.sdf.X
Yn ystod ymhelaethu defnyddiwch yr allbwn SDF a luniwyd gydag opsiwn -autosdf fel y dangosir yn y bloc cod canlynol.
ncelab -autosdf –Neges –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax
15 –mynediad +rwc –lib gwaith statws. : modiwl -sdf_cmd_file ./
sdf_cmd_file
Mae'r sdf_cmd_file rhaid iddo fod fel y dangosir yn y bloc cod canlynol.
COMPILED_SDF_FILE = “ file>” - Efelychu gan ddefnyddio ncsim. Ar ôl ymhelaethu mae ciplun efelychiad yn cael ei greu, sy'n cael ei lwytho gan ncsim ar gyfer efelychiad. Gallwch redeg yn y modd swp neu fodd GUI.
ncsim –Neges –batch/-gui –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncsim.log -
errormax 15 –libr gwaith statws. : modiwl
Pwysig: Gellir rhoi'r tri cham uchod o lunio, ymhelaethu ac efelychu mewn sgript cragen file ac yn dod o'r llinell orchymyn. Yn lle defnyddio'r tri cham hyn, gellir efelychu dyluniad mewn un cam gan ddefnyddio opsiwn ncverilog neu irun fel y dangosir yn y bloc cod canlynol.
ncverilog +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var
files a ddefnyddir yn y dyluniad>
irun +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var files
a ddefnyddir yn y dyluniad>
3.3.1 Materion Hysbys (Gofyn Cwestiwn)
Workaround Testbench
Nid yw defnyddio'r datganiad canlynol ar gyfer nodi amlder cloc yn y fainc brawf a gynhyrchir gan y defnyddiwr, neu'r fainc brawf ddiofyn a gynhyrchir gan Libero SoC yn gweithio gyda NCSim.
bob amser @ (SYSCLK)
#(SYSCLK_PERIOD/2.0)SYSCLK <= !SYSCLK;
Addaswch fel a ganlyn i redeg efelychiad:
bob amser #(SYSCLK_PERIOD / 2.0) SYSCLK = ~SYSCLK;
Pwysig: Wedi'i lunio mae llyfrgelloedd ar gyfer NCSim yn benodol i lwyfannau (hy nid yw llyfrgelloedd 64 did yn gydnaws â llwyfan 32 did ac i'r gwrthwyneb).
Efelychiadau Postsynth ac Ôl-osod gan Ddefnyddio MSS a SERDES Wrth redeg efelychiadau postsynth o ddyluniadau sy'n cynnwys y bloc MSS neu'r efelychiadau ôl-osod o ddyluniadau gan ddefnyddio SERDES, nid yw'r efelychiadau BFM yn gweithio os yw'r opsiwn -libmap
heb ei nodi yn ystod ymhelaethu. Mae hyn oherwydd yn ystod ymhelaethu, mae MSS yn cael ei ddatrys o'r llyfrgell waith (oherwydd y rhwymiad rhagosodedig a'r worklib yw postsynth / gosodiad ôl-osod) lle mae'n Swyddogaeth Sefydlog yn unig.
Rhaid ysgrifennu'r gorchymyn ncelab fel y dangosir yn y bloc cod canlynol i ddatrys yr MSS
bloc o'r llyfrgell SmartFusion2 a luniwyd ymlaen llaw.
ncelab -libmap lib.map -libverbose -Message -access +rwc cfg1
a'r lib.map file rhaid bod fel a ganlyn:
ffurfweddu cfg1;
dylunio ;
rhestr ddiofyn smartfusion2 ;
endconfig
Mae hyn yn datrys unrhyw gell yn llyfrgell SmartFusion2 cyn edrych yn y llyfrgell waith hy postsynth / post-layout.
Gellir defnyddio'r opsiwn -libmap yn ddiofyn yn ystod ymhelaethu ar gyfer pob efelychiad (presynth, postsynth, ac ôl-osodiad). Mae hyn yn osgoi problemau efelychu a achosir o ganlyniad i ddatrys achosion o lyfrgelloedd.
ncelab: *F, INTERR: EITHRIAD MEWNOL
Mae'r eithriad offeryn ncelab hwn yn gafeat ar gyfer dyluniadau sy'n cynnwys FDDR yn SmartFusion 2 ac IGLOO 2 yn ystod efelychiadau postsynth ac ôl-osod gan ddefnyddio opsiwn -libmap.
Pwysig: Mae'r mater hwn wedi'i adrodd i dîm cymorth diweddeb (SAR 52113).
3.4 Sample Tcl a Shell Script Files (Gofyn Cwestiwn)
Y canlynol files yw'r cyfluniad files sydd eu hangen ar gyfer sefydlu'r dyluniad a'r sgript gragen file ar gyfer rhedeg gorchmynion NCSim.
Cds.lib
NE smartfusion2 /scratch/krydor/tmpspace/users/me/nc-vlog64/SmartFusion2
DEFINE COREAHBLITE_LIB ./COREHBLITE_LIB
DIFFINIO presynth ./presynth
Hdl.var
DIFFINIO GWAITH presynth
DEFINE PROJECT_DIR /cratch/krydor/tmpspace/sqausers/me/3rd_party_efelychwyr/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 => COREHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_defaultslavesm.v => COREHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_masterstagev => COREHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavearbiter.v => COREHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavestagev => COREHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_matrix2x16.v => COREHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite.v => COREHBLITE_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 )
DIFFINIO LIB_MAP ( $LIB_MAP, + => presynth )
Gorchmynion.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 -Message -cdslib ./cds.lib -hdlvar ./hdl.var
-gwaith presynth -logfile ncelab.log -errormax 15 -access +rwc -status presynth.testbench:modiwl
ncsim -Neges -batch -cdslib ./cds.lib -hdlvar ./
hdl.var -logfile ncsim.log -errormax 15 -status presynth.testbench:modiwl
3.5 Awtomeiddio (Gofyn Cwestiwn)
Y sgript ganlynol file yn trosi'r run.do ModelSim files i mewn i ffurfweddiad files angen rhedeg efelychiadau gan ddefnyddio NCSim.
Sgript File Defnydd
perl diweddeb_parser.pl presynth_run.do postsynth_run.do
postlayout_run.do Microsemi_Family
Lleoliad_of_Cadence_llyfrgelloedd_Rhaglun
Diweddeb_parser.pl
#!/usr/bin/perl -w
####################################### ###################################
################
#Defnydd: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
Microsemi_Family Precompiled_Libraries_location#
####################################### ###################################
################
defnyddio POSIX;
defnyddio llym;
fy ($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 {
fy $ ModelSim_run_do = $_[0];
fy $actel_family = $_[1];
fy $lib_location = $_[2];
fy nhalaith;
os ( -e “$ ModelSim_run_do”)
{
agor (YNFILE,”$ModelSim_run_do”);
fy @ModelSim_run_do =FILE>;
fy $line;
os ( $ ModelSim_run_do = ~ m / (presynth)/)
{
`mkdir QUESTA_PRESYNTH`;
agored ( ALLANFILE,”>QUESTA_PRESYNTH/presynth_questa.do”);
$state = $1;
} elsif ( $ ModelSim_run_do =~ m / (postsynth)/)
{
`mkdir QUESTA_POSTSYNTH`;
agored ( ALLANFILE,”>QUESTA_POSTSYNTH/postsynth_questa.do”);
$state = $1;
} elsif ( $ ModelSim_run_do =~ m / (postlay)/ )
{
`mkdir QUESTA_POSTLAYOUT`;
agored ( ALLANFILE,”>QUESTA_POSTLAYOUT/postlayout_questa.do”);
$state = $1;
} arall
{
print “Mewnbynnau anghywir a roddwyd i'r file\n";
argraffu “ #Defnydd: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
\”llyfrgelloedd_lleoliad\”\n”;
}
cyrraedd $line (@ModelSim_run_do)
{
#Gweithrediadau Cyffredinol
$line =~ s/..\/designer.*efelychu\///g;
$line =~ s/$state/$state\_questa/g;
#argraffuFILE "$line \n";
os ($line =~ m/vmap\s+.*($actel_family)/)
{
argraffuFILE “vmap $actel_family \”$lib_location\”\n”;
} elsif ($line =~ m/vmap\s+(.*._LIB)/)
{
$line =~ s/..\/component/..\/..\/component/g;
argraffuFILE "$line \n";
} elsif ($line =~ m/vsim/)
{
$line =~ s/vsim/vsim -novopt/g;
argraffuFILE "$line \n";
} arall
{
argraffuFILE "$line \n";
}
}
cau (YNFILE);
cau allanFILE);
} arall {
print “Nid yw $ ModelSim_run_do yn bodoli. Ailredeg efelychiad eto \n";
}
}
Gosodiad diweddeb Xcelium (Mewngofnodi microsglodyn)
Mae angen i chi greu sgript file yn debyg i run.do ModelSim ME/ModelSim Pro ME i redeg yr efelychydd Cadence Xcelium. Dilynwch y camau hyn a chreu sgript file ar gyfer Xcelium neu defnyddiwch y sgript file a ddarperir i drosi'r run.do ModelSim ME/ModelSim Pro ME files i mewn i'r cyfluniad files eu hangen i redeg efelychiadau gan ddefnyddio Xcelium.
4.1 Newidynnau Amgylcheddol (Gofyn Cwestiwn)
I redeg y Cadence Xcelium, ffurfweddwch y newidynnau amgylchedd canlynol:
- LM_LICENSE_FILE: rhaid iddo gynnwys pwyntydd i'r drwydded file.
- cds_root: mae'n rhaid iddo bwyntio at leoliad cyfeiriadur cartref Gosodiad Cadence Incisive.
- LLWYBR: rhaid pwyntio at leoliad y bin o dan y cyfeiriadur offer a nodir gan cds_root (hy
$ cds_root/tools/bin/64bit (ar gyfer peiriant 64 bit a $ cds_root/tools/bin am 32 did
peiriant).
Mae tair ffordd o sefydlu'r amgylchedd efelychu rhag ofn y bydd newid rhwng systemau gweithredu 64-bit a 32-bit:
Achos 1: PATH Amrywiol
llwybr gosod = (install_dir/tools/bin/64bit $path) ar gyfer peiriannau 64bit a
llwybr gosod = (install_dir/tools/bin $path) ar gyfer peiriannau 32bit
Achos 2: Defnyddio'r Opsiwn Llinell Reoli -64bit
Yn y llinell orchymyn nodwch opsiwn -64bit er mwyn gweithredu'r gweithredadwy 64-bit.
Achos 3: Gosod yr Amgylchedd INCA_64BIT neu CDS_AUTO_64BIT Amrywiol
Mae'r newidyn INCA_64BIT yn cael ei drin fel boolean. Gallwch osod y newidyn hwn i unrhyw werth neu i null
llinyn.
setenv INCA_64BIT
Pwysig: Mae'r Nid yw newidyn amgylchedd INCA_64BIT yn effeithio ar offer Diweddeb eraill, megis offer IC. Fodd bynnag, ar gyfer offer Incisive, mae'r newidyn INCA_64BIT yn diystyru'r gosodiad ar gyfer y newidyn amgylchedd CDS_AUTO_64BIT. Os yw'r newidyn amgylchedd INCA_64BIT et, mae'r holl offer Incisive yn rhedeg yn y modd 64-bit.
setenv CDS_AUTO_64BIT CYNNWYS: INCA
Pwysig: Mae'r Rhaid i llinyn INCA fod mewn priflythrennau. Rhaid rhedeg pob gweithredadwy naill ai yn y modd 2-did neu yn y modd 64-bit, peidiwch â gosod y newidyn i gynnwys un gweithredadwy, fel yn y canlynol:
setenv CDS_AUTO_64BIT CYNNWYS:ncelab
Mae offer Diweddeb eraill, megis offer IC, hefyd yn defnyddio'r newidyn amgylchedd CDS_AUTO_64BIT i reoli'r dewis o weithrediadau 32-bit neu 64-bit. Mae'r tabl canlynol yn dangos sut y gallwch chi osod y newidyn CDS_AUTO_64BIT i redeg yr offer Incisive ac offer IC ym mhob modd.
Tabl 4-1. Newidynnau CDS_AUTO_64BIT
CDS_AUTO_64BIT Newidyn | Offer Treiddgar | Offer IC |
setenv CDS_AUTO_64BIT PAWB | 64-did | 64-did |
setenv CDS_AUTO_64BIT DIM | 32-did | 32-did |
setenv CDS_AUTO_64BIT EXCLUDE:ic_binary |
64-did | 32-did |
setenv CDS_AUTO_64BIT EXCLUDE:INCA | 32-did | 64-did |
Pwysig: Rhaid rhedeg pob teclyn Incisive naill ai yn y modd 32-did neu yn y modd 64-bit, peidiwch â defnyddio EXCLUDE i eithrio gweithredadwy benodol, fel yn y canlynol:
setenv CDS_AUTO_64BIT EXCLUDE:ncelab
Os ydych chi'n gosod y newidyn CDS_AUTO_64BIT i eithrio'r offer Incisive (setenv
CDS_AUTO_64BIT EXCLUDE:INCA), mae'r holl offer Incisive yn cael eu rhedeg yn y modd 32-bit. Fodd bynnag, mae'r
Mae opsiwn llinell orchymyn -64bit yn diystyru'r newidyn amgylchedd.
Y cyfluniad canlynol files eich helpu i reoli eich data a rheoli gweithrediad yr offer efelychu a chyfleustodau:
- Mapio llyfrgell file (cds.lib) yn diffinio enw rhesymegol ar gyfer lleoliad eich dyluniad.
- Llyfrgelloedd ac yn eu cysylltu ag enwau cyfeiriadur corfforol.
- Newidynnau file (hdl.var) yn diffinio newidynnau sy'n effeithio ar ymddygiad offer efelychu a chyfleustodau.
4.2 Lawrlwythwch y Llyfrgell a Gyfansoddwyd (Gofyn Cwestiwn)
Lawrlwythwch y llyfrgelloedd ar gyfer Cadence Xcelium o Microsemi's websafle.
4.3 Creu'r sgript Xcelium file (Gofyn Cwestiwn)
Ar ôl creu copi o'r run.do files, perfformiwch y camau canlynol i redeg eich efelychiad gan ddefnyddio sgript Xcelium file.
- Creu cds.lib file sy'n diffinio pa lyfrgelloedd sy'n hygyrch a ble maent wedi'u lleoli.
Mae'r file yn cynnwys datganiadau sy'n mapio enwau rhesymegol llyfrgelloedd i'w llwybrau cyfeiriadur ffisegol. Am gynample, os ydych yn rhedeg efelychiad presynth, y cds.lib file Gellir ei ysgrifennu fel y dangosir yn y bloc cod canlynol.
DIFFINIO presynth ./presynth
DEFINE COREAHBLITE_LIB ./COREHBLITE_LIB
DIFFINIO smartfusion2 - Creu hdl.var file sef cyfluniad dewisol file sy'n cynnwys newidynnau cyfluniad, sy'n pennu sut mae eich amgylchedd dylunio wedi'i ffurfweddu. Mae'r rhain yn cynnwys:
- Newidynnau a ddefnyddir i nodi'r llyfrgell waith lle mae'r casglwr yn storio gwrthrychau a gasglwyd a data arall sy'n deillio ohono.
– Ar gyfer Verilog, newidynnau (LIB_MAP, VIEW_MAP, GWAITH) a ddefnyddir i nodi'r llyfrgelloedd a views chwilio pan fydd yr ymhelaethwr yn datrys achosion.
- Newidynnau sy'n eich galluogi i ddiffinio opsiynau a dadleuon llinell orchymyn casglwr, ymhelaethwr ac efelychydd.
Mewn achos o efelychiad presynth exampgyda'r uchod, dywedwch fod gennym ni 3 RTL files av, bv, a testbench.v, y mae angen eu crynhoi yn llyfrgelloedd presynth, COREHBLITE_LIB, a presynth yn y drefn honno. Yr hdl.var file Gellir ei ysgrifennu fel y dangosir yn y bloc cod canlynol.
DIFFINIO GWAITH presynth
DEFINE PROJECT_DIR files>
DEFINE LIB_MAP ( $LIB_MAP, ${ PROJECT_DIR}/av => presynth )
DEFINE LIB_MAP ( $LIB_MAP, ${ PROJECT_DIR}/bv => COREHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${ PROJECT_DIR}/testbench.v => presynth )
DIFFINIO LIB_MAP ( $LIB_MAP, + => presynth ) - Lluniwch y dyluniad files gan ddefnyddio opsiwn ncvlog.
xmvlog +incdir+ –cdslib ./cds.lib –hdlvar ./hdl.var –logfile
ncvlog.log –diweddaru –linedebug av bv testbench.v - Manylwch ar y dyluniad gan ddefnyddio ncelab. Mae'r ymhelaethwr yn llunio hierarchaeth ddylunio yn seiliedig ar y wybodaeth am ennyd a chyfluniad yn y dyluniad, yn sefydlu cysylltedd signal, ac yn cyfrifo gwerthoedd cychwynnol ar gyfer pob gwrthrych yn y dyluniad. Mae'r hierarchaeth ddylunio fanwl yn cael ei storio mewn ciplun efelychiad, sef cynrychiolaeth eich dyluniad y mae'r efelychydd yn ei ddefnyddio i redeg yr efelychiad.
Xcelium –Neges –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax 15 –
mynediad +rwc –lib worklib. : modiwl
Ymhelaethu Yn ystod efelychiad Ôl-osod
Yn achos efelychiadau ôl-osod, yn gyntaf y SDF file angen ei lunio cyn ymhelaethu gan ddefnyddio'r gorchymyn ncsdfc.
Xceliwmfileenw>.sdf – allbwnfileenw>.sdf.X
Yn ystod ymhelaethu defnyddiwch yr allbwn SDF a luniwyd gydag opsiwn -autosdf fel y dangosir yn y bloc cod canlynol.
xmelab -autosdf –Neges –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax
15 –mynediad +rwc –lib gwaith statws. : modiwl -sdf_cmd_file ./
sdf_cmd_file
Mae'r sdf_cmd_file rhaid iddo fod fel y dangosir yn y bloc cod canlynol.
COMPILED_SDF_FILE = “ file>” - Efelychu gan ddefnyddio Xcelium. Ar ôl ymhelaethu creir ciplun efelychiad sy'n cael ei lwytho gan Xcelium ar gyfer efelychiad. Gellir rhedeg hwn yn y modd swp neu fodd GUI.
xmsim –Neges –batch/-gui –cdslib ./cds.lib –hdlvar ./hdl.var –logfile xmsim.log –
errormax 15 –libr gwaith statws. : modiwl
Gosodiad diweddeb Xcelium
Pwysig: Pawb gellir rhoi'r tri cham uchod o lunio, ymhelaethu ac efelychu mewn sgript cragen file ac yn dod o'r llinell orchymyn. Yn lle defnyddio'r tri cham hyn, gellir efelychu dyluniad mewn un cam gan ddefnyddio opsiwn ncverilog neu xrun fel y dangosir yn y bloc cod canlynol.
xmverilog +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var
files a ddefnyddir yn y dyluniad>
xrun +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var files
a ddefnyddir yn y dyluniad>
4.3.1 Materion Hysbys (Gofyn Cwestiwn)
Workaround Testbench
Nid yw defnyddio'r datganiad canlynol ar gyfer nodi amlder cloc yn y fainc brawf a gynhyrchir gan y defnyddiwr neu'r fainc brawf ddiofyn a gynhyrchir gan Libero SoC yn gweithio gyda Xcelium.
bob amser @ (SYSCLK)
#(SYSCLK_PERIOD/2.0)SYSCLK <= !SYSCLK;
Addaswch fel a ganlyn i redeg efelychiad:
bob amser #(SYSCLK_PERIOD / 2.0) SYSCLK = ~SYSCLK;
Pwysig: Mae llyfrgelloedd a gasglwyd ar gyfer Xcelium yn benodol i lwyfannau (hy nid yw llyfrgelloedd 64 did yn gydnaws â llwyfan 32 did ac i'r gwrthwyneb).
Efelychiadau Postsynth ac Ôl-osod gan ddefnyddio MSS a SERDES
Wrth redeg efelychiadau postsynth o ddyluniadau sy'n cynnwys bloc MSS, neu efelychiadau ôl-osod o ddyluniadau gan ddefnyddio SERDES, nid yw'r efelychiadau BFM yn gweithio os na nodir opsiwn -libmap yn ystod ymhelaethu. Mae hyn oherwydd yn ystod ymhelaethu, mae MSS yn cael ei ddatrys o'r llyfrgell waith (oherwydd y rhwymiad rhagosodedig a'r worklib yw postsynth/ôl-cynllun) lle mae'n Swyddogaeth Sefydlog yn unig.
Rhaid ysgrifennu'r gorchymyn ncelab fel y dangosir yn y bloc cod canlynol i ddatrys y bloc MSS o'r llyfrgell SmartFusion2 a luniwyd ymlaen llaw.
xmelab -libmap lib.map -libverbose -Message -access +rwc cfg1
a'r lib.map file rhaid bod fel a ganlyn:
ffurfweddu cfg1;
dylunio ;
rhestr ddiofyn smartfusion2 ;
endconfig
Rhaid i hyn ddatrys unrhyw gell yn llyfrgell SmartFusion2 cyn edrych yn y llyfrgell waith hy postsynth/post-layout.
Gellir defnyddio'r opsiwn -libmap yn ddiofyn yn ystod ymhelaethu ar gyfer pob efelychiad (presynth, postsynth ac ôl-osodiad). Mae hyn yn osgoi problemau efelychu a achosir o ganlyniad i ddatrys achosion o lyfrgelloedd.
xmelab: *F, INTERR: EITHRIAD MEWNOL
Mae'r eithriad offeryn ncelab hwn yn gafeat ar gyfer dyluniadau sy'n cynnwys FDDR yn SmartFusion2 ac IGLOO2
yn ystod efelychiadau postsynth ac ôl-osod gan ddefnyddio opsiwn –libmap.
Pwysig: Mae'r mater hwn wedi'i adrodd i dîm cymorth diweddeb (SAR 52113).
4.4 Sample Tcl a sgript cragen files (Gofyn Cwestiwn)
Y canlynol files yw'r cyfluniad files sydd eu hangen ar gyfer sefydlu'r dyluniad a'r sgript gragen file ar gyfer rhedeg gorchmynion Xcelium.
Cds.lib
DIFFINIO Smartfusion2 / Scratch/krydor/tmpspace/users/me/nc-vlog64/SmartFusion2
DEFINE COREAHBLITE_LIB ./COREHBLITE_LIB
DIFFINIO presynth ./presynth
Hdl.var
DIFFINIO GWAITH presynth
DEFINE PROJECT_DIR /cratch/krydor/tmpspace/sqausers/me/3rd_party_efelychwyr/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 => COREHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_defaultslavesm.v => COREHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_masterstagev => COREHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavearbiter.v => COREHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavestagev => COREHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_matrix2x16.v => COREHBLITE_LIB )
DEFINE LIB_MAP ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite.v => COREHBLITE_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 )
DIFFINIO LIB_MAP ( $LIB_MAP, + => presynth )
Gorchmynion.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 -Message -cdslib ./cds.lib -hdlvar ./hdl.var
-gwaith presynth -logfile ncelab.log -errormax 15 -access +rwc -status presynth.testbench:modiwl
ncsim -Neges -batch -cdslib ./cds.lib -hdlvar ./
hdl.var -logfile ncsim.log -errormax 15 -status presynth.testbench:modiwl
4.5 Awtomeiddio (Mewngofnodi microsglodyn)
Y sgript ganlynol file yn trosi ModelSim run.do files i mewn i ffurfweddiad files eu hangen i redeg efelychiadau gan ddefnyddio Xcelium.
Sgript File Defnydd
perl diweddeb_parser.pl presynth_run.do postsynth_run.do
postlayout_run.do Microsemi_Family
Lleoliad_of_Cadence_llyfrgelloedd_Rhaglun
Diweddeb_parser.pl
#!/usr/bin/perl -w
####################################### ###################################
################
#Defnydd: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
Microsemi_Family Precompiled_Libraries_location#
####################################### ###################################
################
defnyddio POSIX;
defnyddio llym;
fy ($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 {
fy $ ModelSim_run_do = $_[0];
fy $actel_family = $_[1];
fy $lib_location = $_[2];
fy nhalaith;
os ( -e “$ ModelSim_run_do”)
{
agor (YNFILE,”$ModelSim_run_do”);
fy @ModelSim_run_do =FILE>;
fy $line;
os ( $ ModelSim_run_do = ~ m / (presynth)/)
{
`mkdir QUESTA_PRESYNTH`;
agored ( ALLANFILE,”>QUESTA_PRESYNTH/presynth_questa.do”);
$state = $1;
} elsif ( $ ModelSim_run_do =~ m / (postsynth)/)
{
`mkdir QUESTA_POSTSYNTH`;
agored ( ALLANFILE,”>QUESTA_POSTSYNTH/postsynth_questa.do”);
$state = $1;
} elsif ( $ ModelSim_run_do =~ m / (postlay)/ )
{
`mkdir QUESTA_POSTLAYOUT`;
agored ( ALLANFILE,”>QUESTA_POSTLAYOUT/postlayout_questa.do”);
$state = $1;
} arall
{
print “Mewnbynnau anghywir a roddwyd i'r file\n";
argraffu “ #Defnydd: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
\”llyfrgelloedd_lleoliad\”\n”;
}
cyrraedd $line (@ModelSim_run_do)
{
#Gweithrediadau Cyffredinol
$line =~ s/..\/designer.*efelychu\///g;
$line =~ s/$state/$state\_questa/g;
#argraffuFILE "$line \n";
os ($line =~ m/vmap\s+.*($actel_family)/)
{
argraffuFILE “vmap $actel_family \”$lib_location\”\n”;
} elsif ($line =~ m/vmap\s+(.*._LIB)/)
{
$line =~ s/..\/component/..\/..\/component/g;
argraffuFILE "$line \n";
} elsif ($line =~ m/vsim/)
{
$line =~ s/vsim/vsim -novopt/g;
argraffuFILE "$line \n";
} arall
{
argraffuFILE "$line \n";
}
}
cau (YNFILE);
cau allanFILE);
} arall {
print “Nid yw $ ModelSim_run_do yn bodoli. Ailredeg efelychiad eto \n";
}
}
Gosod Siemens QuestaSim / Gosod ModelSim (Gofyn Cwestiwn)
Mae'r rhedeg.do files, a gynhyrchir gan y Libero SoC ar gyfer efelychiadau gan ddefnyddio'r ModelSim Microsemi Editions, gellir ei ddefnyddio ar gyfer efelychiadau gan ddefnyddio'r QuestaSim/ModelSim SE/DE/PE gydag un newid. Yn y ModelSim ME/ModelSim Pro ME run.do file, mae angen addasu lleoliad y llyfrgelloedd a luniwyd ymlaen llaw.
Pwysig:
Yn ddiofyn, mae'r offeryn efelychu heblaw'r ModelSim Pro ME yn perfformio optimeiddio dyluniad yn ystod efelychiad a all effeithio ar y gwelededd i arteffactau efelychu fel gwrthrychau dylunio ac ysgogiad mewnbwn.
Mae hyn fel arfer yn ddefnyddiol i leihau amser rhedeg efelychiadau ar gyfer yr efelychiadau cymhleth, gan ddefnyddio meinciau prawf llafar, hunan-wirio. Fodd bynnag, efallai na fydd yr optimeiddiadau rhagosodedig yn briodol ar gyfer pob efelychiad, yn enwedig mewn achosion lle rydych chi'n disgwyl archwilio'r canlyniadau efelychu yn graffigol gan ddefnyddio'r ffenestr tonnau.
Er mwyn mynd i'r afael â materion a achosir gan yr optimeiddio hwn, rhaid i chi ychwanegu gorchmynion priodol a dadleuon cysylltiedig yn ystod efelychiad i adfer gwelededd i'r dyluniad. Ar gyfer gorchmynion sy'n benodol i offer, gweler dogfennaeth yr efelychydd sy'n cael ei ddefnyddio.
5.1 Newidynnau Amgylcheddol (Gofyn Cwestiwn)
Yn dilyn mae'r newidynnau amgylchedd gofynnol.
- LM_LICENSE_FILE: rhaid iddo gynnwys y llwybr i'r drwydded file.
- MODEL_TECH: rhaid nodi'r llwybr i leoliad cyfeiriadur cartref gosodiad QuestaSim.
- LLWYBR: rhaid pwyntio at y lleoliad gweithredadwy a nodwyd gan MODEL_TECH.
5.2 Trosi run.do ar gyfer Mentor QuestaSim (Gofyn Cwestiwn)
Mae'r rhedeg.do files a gynhyrchir gan Libero SoC ar gyfer efelychiadau gan ddefnyddio ModelSim Microsemi Editions gellir ei ddefnyddio ar gyfer efelychiadau gan ddefnyddio QuestaSim/ModelSim_SE gydag un newid.
Pwysig: Pawb rhaid i'r dyluniadau sy'n cael eu hefelychu gan ddefnyddio QuestaSim gynnwys -novopt
opsiwn ynghyd â gorchymyn vsim yn y sgript run.do files.
5.3 Lawrlwythwch y Llyfrgell a Gyfansoddwyd (Gofyn Cwestiwn)
Lawrlwythwch y llyfrgelloedd ar gyfer Mentor Graphics QuestaSim o Microsemi's websafle.
Gosod VCS Synopsys (Gofyn Cwestiwn)
Mae'r llif a argymhellir gan Microsemi yn dibynnu ar y llif Cymhleth a Chasglu yn VCS. Mae'r ddogfen hon yn cynnwys sgript file sy'n defnyddio'r sgript run.do files a gynhyrchir gan Libero SoC ac yn cynhyrchu'r setup files sydd eu hangen ar gyfer efelychu VCS. Y sgript file yn defnyddio'r run.do file i wneud y canlynol.
- Creu mapio llyfrgell file, sy'n cael ei wneud gan ddefnyddio'r synopsys_sim.setup file wedi'i leoli yn yr un cyfeiriadur lle mae efelychiad VCS yn rhedeg.
- Creu sgript plisgyn file i ymhelaethu a llunio eich dyluniad gan ddefnyddio VCS.
6.1 Newidynnau Amgylcheddol (Gofyn Cwestiwn)
Gosodwch y newidynnau amgylchedd priodol ar gyfer VCS yn seiliedig ar eich gosodiad. Y newidynnau amgylchedd sydd eu hangen yn unol â dogfennaeth VCS yw:
- LM_LICENSE_FILE: rhaid cynnwys pwyntydd i'r gweinydd trwydded.
- VCS_HOME: rhaid pwyntio at leoliad cyfeiriadur cartref y gosodiad VCS.
- LLWYBR: rhaid cynnwys pwyntydd i'r cyfeiriadur biniau o dan y cyfeiriadur VCS_HOME.
6.2 Lawrlwythwch y Llyfrgell a Gyfansoddwyd (Gofyn Cwestiwn)
Lawrlwythwch y llyfrgelloedd ar gyfer Synopsys VCS o Microsemi's websafle.
6.3 Sgript Efelychu VCS File (Gofyn Cwestiwn)
Ar ôl sefydlu VCS a chynhyrchu'r dyluniad a'r gwahanol run.do files o Libero SoC, rhaid i chi:
- Creu mapiau'r llyfrgell file synopsys_sim.setup; hwn file yn cynnwys awgrymiadau i leoliad yr holl lyfrgelloedd i'w defnyddio gan y dyluniad.
Pwysig: Mae'r file rhaid i'r enw beidio â newid a rhaid iddo gael ei leoli yn yr un cyfeiriadur lle mae efelychiad yn rhedeg. Dyma gynample am y fath file ar gyfer efelychu presynthesis.
GWAITH > DIFFYG
SmartFusion2 :
presynth : ./presynth
diofyn :./work - Ymhelaethwch ar y dyluniad gwahanol files, gan gynnwys y fainc brawf, gan ddefnyddio'r gorchymyn vlogan yn VCS. Gall y gorchmynion hyn gael eu cynnwys mewn sgript cragen file. Yn dilyn mae cynampgyda'r gorchmynion sydd eu hangen i ymhelaethu ar ddyluniad a ddiffinnir yn rtl.v gyda'i fainc brawf wedi'i ddiffinio yn
testbench.v.
vlogan +v2k -work presynth rtl.v
vlogan +v2k -work presynth testbench.v - Lluniwch y dyluniad gan ddefnyddio VCS gan ddefnyddio'r gorchymyn canlynol.
vcs –sim_res=1fs presynth.testbench
Nodyn: Mae'r rhaid gosod cydraniad amseriad yr efelychiad i 1fs ar gyfer efelychiad swyddogaethol cywir. - Unwaith y bydd y dyluniad wedi'i lunio, dechreuwch efelychu gan ddefnyddio'r gorchymyn canlynol.
./simv - Ar gyfer efelychiad wedi'i anodi'n ôl, rhaid i'r gorchymyn VCS fod fel y dangosir yn y bloc cod canlynol.
vcs postlayout.testbench –sim_res=1fs –sdf max: .
enw>: file llwybr> –gui –l postlayout.log
6.4 Cyfyngiadau/Eithriadau (Gofyn Cwestiwn)
Yn dilyn mae cyfyngiadau/eithriadau gosod Synopsys VCS.
- Dim ond ar gyfer prosiectau Verilog Libero SoC y gellir rhedeg efelychiadau VCS. Mae gan yr efelychydd VCS ofynion iaith VHDL llym nad ydynt yn cael eu bodloni gan VHDL a gynhyrchir yn awtomatig Libero SoC files.
- Mae'n rhaid bod gennych ddatganiad $finish ar fainc brawf Verilog i atal yr efelychiad pryd bynnag y dymunwch.
Pwysig: Pryd mae efelychiadau'n cael eu rhedeg yn y modd GUI, gellir pennu amser rhedeg yn y GUI.
6.5 Sample Tcl a Shell Script Files (Gofyn Cwestiwn)
Mae'r Perl canlynol yn awtomeiddio cenhedlaeth y synopsys_sim.setup file yn ogystal â'r sgript plisgyn cyfatebol files sydd eu hangen i ymhelaethu, llunio, ac efelychu'r dyluniad.
Os yw'r dyluniad yn defnyddio MSS, copïwch y test.vec file wedi'i leoli yn ffolder efelychu prosiect Libero SoC i mewn i'r ffolder efelychu VCS. Mae'r adrannau canlynol yn cynnwys sample run.do files a gynhyrchir gan Libero SoC, gan gynnwys y mapio llyfrgell cyfatebol a'r sgript cregyn files sydd eu hangen ar gyfer efelychu VCS.
6.5.1 Cyn-synthesis (Gofyn Cwestiwn)
Presynth_run.do
gosod yn dawel ACTELLIBNAME SmartFusion2
gosod PROJECT_DIR yn dawel “/sqa/users/me/VCS_Tests/Test_DFF”
os {[file yn bodoli presynth/_info]} {
adlais “GWYBODAETH: Presynth llyfrgell efelychu eisoes yn bodoli”
} arall {
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” -gwaith presynth “${PROJECT_DIR}/stimulus/SD1_TB1.v”
vsim -L SmartFusion2 -L presynth -t 1fs presynth.SD1_TB1
ychwanegu ton /SD1_TB1/*
ychwanegu log -r /*
rhedeg 1000ns
presynth_main.csh
#!/bin/csh -f
gosod 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/
gwaith/SD1/SD1.v"
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k “+incdir+${PROJECT_DIR}/stimulus” -work
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 rhedeg.log
Synopsys_sim.setup
GWAITH > diofyn
SmartFusion2 : /VCS/SmartFusion2
presynth : ./presynth
diofyn :./work
6.5.2 Ôl-synthesis (Gofyn Cwestiwn)
postsynth_run.do
gosod yn dawel ACTELLIBNAME SmartFusion2
gosod PROJECT_DIR yn dawel “/sqa/users/Me/VCS_Tests/Test_DFF”
os {[file yn bodoli postsynth/_info]} {
adlais “GWYBODAETH: Mae postsynth llyfrgell efelychu eisoes yn bodoli”
} arall {
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” -gwaith postsynth “${PROJECT_DIR}/stimulus/SD1_TB1.v”
vsim -L SmartFusion2 -L postsynth -t 1fs postsynth.SD1_TB1
ychwanegu ton /SD1_TB1/*
ychwanegu log -r /*
rhedeg 1000ns
log SD1_TB1/*
allanfa
Postsynth_main.csh
#!/bin/csh -f
gosod 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” -work
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 rhedeg.log
Synopsys_sim.setup
GWAITH > diofyn
SmartFusion2 : /VCS/SmartFusion2
postsynth : ./postsynth
diofyn :./work
6.5.3 Ôl-osod (Gofyn Cwestiwn)
postlayout_run.do
gosod yn dawel ACTELLIBNAME SmartFusion2
gosod PROJECT_DIR “E:/ModelSim_Work/Test_DFF” yn dawel
os {[file yn bodoli. ../designer/SD1/simulation/postlayout/_info]} {
adlais "GWYBODAETH: Mae'r llyfrgell efelychu ../designer/SD1/simulation/postlayout eisoes yn bodoli"
} arall {
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 -worklayout postlayout “${PROJECT_DIR}/designer/SD1/SD1_ba.v”
vlog “+incdir+${PROJECT_DIR}/stimulus” -gwaith 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
ychwanegu ton /SD1_TB1/*
ychwanegu log -r /*
rhedeg 1000ns
Postlayout_main.csh
#!/bin/csh -f
gosod PROJECT_DIR = “/VCS_Tests/Test_DFF”
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k -work postlayout “${PROJECT_DIR}/
dylunydd/SD1/SD1_ba.v”
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k “+incdir+${PROJECT_DIR}/stimulus” -work
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 rhedeg.log
Synopsys_sim.setup
GWAITH > diofyn
SmartFusion2 : /VCS/SmartFusion2
postlayout : ./postlayout
diofyn :./workVCS
6.6 Awtomeiddio (Gofyn Cwestiwn)
Gellir awtomeiddio'r llif gan ddefnyddio'r sgript Perl ganlynol file i drosi'r run.do ModelSim files i mewn i sgript cragen gydnaws VCS files, creu cyfeiriaduron cywir y tu mewn i gyfeiriadur efelychu Libero SoC, ac yna rhedeg efelychiadau.
Rhedeg y sgript file gan ddefnyddio'r gystrawen ganlynol.
perl vcs_parse.pl presynth_run.do postsynth_run.do postlayout_run.do
Vcs_parse_pl
#!/usr/bin/perl -w
####################################### ########################
#
#Defnydd: perl vcs_parse.pl presynth_run.do postsynth_run.do postlayout_run.do
#
####################################### ########################
fy ($presynth, $postsynth, $postlayout) = @ARGV;
if(system("mkdir VCS_Presynth")) {print "mkdir wedi methu:\n";}
if(system("mkdir VCS_Postsynth")) {print "mkdir wedi methu:\n";}
if(system("mkdir VCS_Postlayout")) {print "mkdir wedi methu:\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 (“../”);
is-ddosbarthu {
fy $vlog = “/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k” ;
fy %LIB = ();
fy$file = $_[0] ;
fy $state = $_[1];
agor (YNFILE,”$file”) || marw “Methu agor File Gallai'r rheswm fod:$!”;
os ( $state eq “presynth”)
{
agor(OUT1,">presynth_main.csh”) || marw “Methu creu Gorchymyn File Gallai'r rheswm fod:$!”;
}
elsif ( $state eq “postsynth”)
{
agor(OUT1,">postsynth_main.csh”) || marw “Methu creu Gorchymyn File Gallai'r rheswm fod:$!”;
}
elsif ( $state eq “postlayout”)
{
agor(OUT1,">postlayout_main.csh”) || marw “Methu creu Gorchymyn File Gallai'r rheswm fod:$!”;
}
arall
{
print "Mae Efelychu Cyflwr ar goll \n" ;
}
agor(OUT2,”>synopsys_sim.setup”) || marw “Methu creu Gorchymyn File Gallai'r rheswm fod:$!”;
# .csh file
argraffu OUT1 "#!/bin/csh -f\n\n\n" ;
#SET UP FILE
argraffu OUT2 “GWAITH > DIOGELU\n” ;
argraffu OUT2 “SmartFusion2 : /sqa/users/Aditya/VCS/SmartFusion2\n” ;
tra ($line =FILE>)
{
Synopsys Gosodiad VCS
os ($line =~ m/wedi'i osod yn dawel PROJECT_DIR\s+\"(.*?)\"/)
{
argraffu OUT1 “set PROJECT_DIR = \”$1\” \n\n\n” ;
}
elsif ( $line =~ m/vlog.*\.v\”/ )
{
os ($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;
argraffu OUT1 “$line\n”;
}
elsif (($line =~ m/vsim.*presynth\.(.*)/) || ($line =~ m/vsim.*postsynth\.(.*)/) || ($line
=~ m/vsim.*postlayout\.(.*)/) )
{
$tb = $1 ;
$tb =~ s/ //g;
chomp($tb);
#print "Enw TB : $tb \n";
os ( $line =~ m/sdf(.*) \.sdf/)
{
chomp($line);
$line = $1 ;
#print "LINE : $line \n" ;
os ($ llinell =~ m/max/)
{
$line =~ s/max \// ;
$line =~ s/=/:/;
argraffu OUT1 “ \n\n/cad_design/tools/vcs.dir/E-2011.03/bin/vcs -sim_res=1fs postlayout.$tb -sdf
uchafswm:$tb.$line.sdf -l compile.log\n" ;
}
elsif ($line =~ m/mun/)
{
$line =~ s/munud \/// ;
$line =~ s/=/:/;
argraffu 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/tip \/// ;
$line =~ s/=/:/;
argraffu OUT1 “ \n\n/cad_design/tools/vcs.dir/E-2011.03/bin/vcs -sim_res=1fs postlayout.$tb -sdf
teip:$tb.$line.sdf -l compile.log\n" ;
}
#-sdfmax /M3_FIC32_0=${PROJECT_DIR}/designer/M3_FIC32/M3_FIC32_ba.sdf — fformat ModelSim SDF
#$sdf = “-sdf max:testbench.M3_FIC32_0:${PROJECT_DIR}/designer/M3_FIC32/M3_FIC32_ba.sdf”; -VCS
Fformat SDF
}
}
}
print
OUT1 "\n\n"
;
if
( $state eq “presynth”
)
{
print
OUT2 “presynth
: ./presynth\n"
;
print
OUT1 “/cad_design/tools/vcs.dir/E-2011.03/bin/vcs
-sim_res=1fs presynth.$tb -l
llunio.log\n"
;
}
elsif
( $state eq “postsynth”
)
{
print
OUT2 “postsynth
: ./postsynth\n"
;
print
OUT1 “/cad_design/tools/vcs.dir/E-2011.03/bin/vcs
-sim_res=1fs postsynth.$tb -l
llunio.log\n"
;
}
elsif
( $state eq “postlayout”
)
{
argraffu OUT2 “postlayout : ./postlayout\n” ;
}
arall
{
print "Mae Efelychu Cyflwr ar goll \n" ;
}
foreach $i ( allweddi %LIB)
{
#print "Allwedd : $i Gwerth : $LIB{$i} \n" ;
argraffu OUT2 “$i : ./$i\n” ;
}
argraffu OUT1 "\n\n" ;
argraffu OUT1 “./simv -l run.log\n” ;
argraffu OUT2 “DIOfyn : ./work\n” ;
cau INFILE;
cau OUT1;
cau OUT2;
}
Hanes Adolygu (Mewngofnodi microsglodyn
Mae'r hanes adolygu yn disgrifio'r newidiadau a roddwyd ar waith yn y ddogfen. Y newidiadau
yn cael eu rhestru yn ôl adolygiad, gan ddechrau gyda'r cyhoeddiad diweddaraf.
Adolygu | Dyddiad | Disgrifiad |
A | 12/2023 | Gwneir y newidiadau canlynol yn yr adolygiad hwn: • Dogfen wedi'i throsi i dempled Microsglodyn. Adolygiad Cychwynnol. • Adran 5 wedi'i diweddaru. Setup Siemens QuestaSim/Sefydliad ModelSim i gynnwys nodyn newydd sy'n esbonio'r effaith ar welededd yn ystod efelychu ac optimeiddio. |
Cefnogaeth FPGA microsglodyn
Mae grŵp cynhyrchion microsglodyn FPGA yn cefnogi ei gynhyrchion gyda gwasanaethau cymorth amrywiol, gan gynnwys Gwasanaeth Cwsmeriaid, Canolfan Cymorth Technegol i Gwsmeriaid, a websafle, a swyddfeydd gwerthu ledled y byd.
Awgrymir i gwsmeriaid ymweld ag adnoddau ar-lein Microchip cyn cysylltu â'r tîm cymorth gan ei bod yn debygol iawn bod eu hymholiadau eisoes wedi'u hateb.
Cysylltwch â'r Ganolfan Cymorth Technegol drwy'r websafle yn www.microchip.com/support. Soniwch am rif Rhan Dyfais FPGA, dewiswch gategori achos priodol, a dyluniad uwchlwytho files tra'n creu achos cymorth technegol.
Cysylltwch â Gwasanaeth Cwsmer i gael cymorth cynnyrch annhechnegol, megis prisio cynnyrch, uwchraddio cynnyrch, diweddaru gwybodaeth, statws archeb, ac awdurdodi.
- O Ogledd America, ffoniwch 800.262.1060
- O weddill y byd, ffoniwch 650.318.4460
- Ffacs, o unrhyw le yn y byd, 650.318.8044
Gwybodaeth Microsglodyn
Y Microsglodyn Websafle
Mae microsglodyn yn darparu cymorth ar-lein trwy ein websafle yn www.microchip.com/. hwn websafle yn cael ei ddefnyddio i wneud files a gwybodaeth sydd ar gael yn hawdd i gwsmeriaid. Mae peth o'r cynnwys sydd ar gael yn cynnwys:
- Cymorth Cynnyrch – Dalennau data a gwallau, nodiadau cais a samprhaglenni, adnoddau dylunio, canllawiau defnyddwyr a dogfennau cymorth caledwedd, datganiadau meddalwedd diweddaraf a meddalwedd wedi'i harchifo
- Cymorth Technegol Cyffredinol – Cwestiynau Cyffredin (FAQs), ceisiadau cymorth technegol, grwpiau trafod ar-lein, rhestr o aelodau rhaglen partner dylunio microsglodyn
- Busnes Microsglodyn - Canllawiau dethol cynnyrch a chanllawiau archebu, datganiadau diweddaraf Microsglodyn i'r wasg, rhestr o seminarau a digwyddiadau, rhestrau o swyddfeydd gwerthu Microsglodyn, dosbarthwyr a chynrychiolwyr ffatrïoedd
Gwasanaeth Hysbysu Newid Cynnyrch
Mae gwasanaeth hysbysu newid cynnyrch Microchip yn helpu i gadw cwsmeriaid yn gyfredol ar gynhyrchion Microsglodyn. Bydd tanysgrifwyr yn derbyn hysbysiad e-bost pryd bynnag y bydd newidiadau, diweddariadau, diwygiadau neu wallau yn ymwneud â theulu cynnyrch penodol neu offeryn datblygu o ddiddordeb.
I gofrestru, ewch i www.microchip.com/pcn a dilynwch y cyfarwyddiadau cofrestru.
Cefnogaeth i Gwsmeriaid
Gall defnyddwyr cynhyrchion Microsglodyn dderbyn cymorth trwy sawl sianel:
- Dosbarthwr neu Gynrychiolydd
- Swyddfa Gwerthu Lleol
- Peiriannydd Atebion Embedded (ESE)
- Cymorth Technegol
Dylai cwsmeriaid gysylltu â'u dosbarthwr, cynrychiolydd neu ESE am gefnogaeth. Mae swyddfeydd gwerthu lleol hefyd ar gael i helpu cwsmeriaid. Mae rhestr o swyddfeydd gwerthu a lleoliadau wedi'i chynnwys yn y ddogfen hon.
Mae cymorth technegol ar gael drwy'r websafle yn: www.microchip.com/support
Nodwedd Diogelu Cod Dyfeisiau Microsglodyn
Sylwch ar y manylion canlynol am y nodwedd amddiffyn cod ar gynhyrchion Microsglodyn:
- Mae cynhyrchion microsglodyn yn bodloni'r manylebau sydd wedi'u cynnwys yn eu Taflen Ddata Microsglodion benodol.
- Mae microsglodyn yn credu bod ei deulu o gynhyrchion yn ddiogel pan gaiff ei ddefnyddio yn y modd a fwriadwyd, o fewn manylebau gweithredu, ac o dan amodau arferol.
- Mae microsglodyn yn gwerthfawrogi ac yn amddiffyn ei hawliau eiddo deallusol yn ymosodol. Mae ymdrechion i dorri nodweddion diogelu cod cynnyrch Microsglodyn wedi'i wahardd yn llym a gallai dorri Deddf Hawlfraint y Mileniwm Digidol.
- Ni all Microsglodyn nac unrhyw wneuthurwr lled-ddargludyddion arall warantu diogelwch ei god. Nid yw diogelu cod yn golygu ein bod yn gwarantu bod y cynnyrch yn “unbreakable”.
Mae amddiffyniad cod yn esblygu'n gyson. Mae microsglodyn wedi ymrwymo i wella nodweddion amddiffyn cod ein cynnyrch yn barhaus.
Hysbysiad Cyfreithiol
Dim ond gyda chynhyrchion Microsglodyn y gellir defnyddio'r cyhoeddiad hwn a'r wybodaeth sydd ynddo, gan gynnwys dylunio, profi ac integreiddio cynhyrchion Microsglodyn gyda'ch cais. Mae defnyddio'r wybodaeth hon mewn unrhyw ffordd arall yn torri'r telerau hyn. Dim ond er hwylustod i chi y darperir gwybodaeth am gymwysiadau dyfeisiau a gall diweddariadau gael eu disodli. Eich cyfrifoldeb chi yw sicrhau bod eich cais yn cwrdd â'ch manylebau. Cysylltwch â'ch swyddfa gwerthu Microsglodion leol am gymorth ychwanegol neu, gofynnwch am gymorth ychwanegol yn www.microchip.com/en-us/support/design-help/client-support-services.
DARPERIR Y WYBODAETH HON GAN MICROCHIP “FEL Y MAE”. NID YW MICROCHIP YN GWNEUD UNRHYW SYLWADAU NA GWARANTAU O UNRHYW FATH P'un ai'n MYNEGI NEU WEDI'I GYMHWYSO, YN YSGRIFENEDIG NEU AR LAFAR, STATUDOL NEU FEL ARALL, YN YMWNEUD Â'R WYBODAETH SY'N CYNNWYS OND NID YN GYFYNGEDIG I UNRHYW WARANTIAETHAU GOBLYGEDIG O ANFOESOLDEB A CHYFEIRIANNAU RHYFEDD. PWRPAS, NEU WARANTAU SY'N BERTHNASOL I GYFLWR, ANSAWDD, NEU BERFFORMIAD.
NI FYDD MICROCHIP YN ATEBOL AM UNRHYW GOLLED ANUNIONGYRCHOL, ARBENNIG, OEDIOL NEU GANLYNIADOL, DIFROD, COST, NEU DREUL O UNRHYW FATH BETH OEDD YN BERTHNASOL I'R WYBODAETH NEU EI DEFNYDD, FODD WEDI ACHOSI, WEDI MAI WEDI EI ACHOSI. POSIBL NEU MAE Y DIFRODAU YN RHAGWELADWY. I'R MAINT LLAWN A GANIATEIR GAN Y GYFRAITH, NI FYDD CYFANSWM ATEBOLRWYDD MICROCHIP AR HOLL HAWLIADAU MEWN UNRHYW FFORDD SY'N GYSYLLTIEDIG Â'R WYBODAETH NEU EI DEFNYDDIO YN FWY NA SWM Y FFÏOEDD, OS OES RHAI, CHI WEDI TALU'N UNIONGYRCHOL I MICROCHIP AM Y WYBODAETH.
Mae defnyddio dyfeisiau Microsglodyn mewn cymwysiadau cynnal bywyd a/neu ddiogelwch yn gyfan gwbl ar risg y prynwr, ac mae'r prynwr yn cytuno i amddiffyn, indemnio a dal Microsglodyn diniwed rhag unrhyw a phob iawndal, hawliad, siwtiau, neu dreuliau sy'n deillio o ddefnydd o'r fath. Ni chaiff unrhyw drwyddedau eu cyfleu, yn ymhlyg neu fel arall, o dan unrhyw hawliau eiddo deallusol Microsglodyn oni nodir yn wahanol.
Nodau masnach
Enw a logo'r Microsglodyn, logo'r Microsglodyn, Adaptec, AVR, logo AVR, AVR Freaks, BesTime, BitCloud, CryptoMemory, CryptoRF, dsPIC, flexPWR, HELDO, IGLOO, JukeBlox, KeeLoq, Kleer, LANCheck, LinkMD, maXStylus, maxtouch, MediaLB, megaAVR, Microsemi, logo Microsemi, MOST, logo MOST, MPLAB, OptoLyzer, PIC, picoPower, PICSTART, logo PIC32, PolarFire, Dylunydd Prochip, QTouch, SAM-BA, SenGenuity, SpyNIC, SST, SST Logo, SuperFlash, Symmetricom Mae SyncServer, Tachyon, TimeSource, tinyAVR, UNI/O, Vectron, ac XMEGA yn nodau masnach cofrestredig Microchip Technology Incorporated yn UDA a gwledydd eraill.
AgileSwitch, APT, ClockWorks, The Embedded Control Solutions Company, EtherSynch, Flashtec, Rheoli Cyflymder Hyper, Llwyth HyperLight, Libero, MotorBench, mTouch, Powermite 3, Precision Edge, ProASIC, ProASIC Plus, logo ProASIC Plus, Quiet-Wire, SmartFusion, Mae SyncWorld, Temux, TimeCesium, TimeHub, TimePictra, TimeProvider, TrueTime, a ZL yn nodau masnach cofrestredig Microchip Technology Incorporated yn UDA
Ataliad Allwedd Cyfagos, AKS, Oedran Analog-ar-y-Digidol, Unrhyw Gynhwysydd, AnyIn, AnyOut, Newid Ychwanegol, BlueSky, BodyCom, Clockstudio, CodeGuard, CryptoAuthentication, CryptoAutomotive, CryptoCompanion, CryptoController, dsPICDEM, dsPICDEM.net verage Matching , DAM, ECAN, Espresso T1S, EtherGREEN, GridTime, IdealBridge, Rhaglennu Cyfresol Mewn Cylchdaith, ICSP, INICnet, Cyfochrog Deallus, IntelliMOS, Cysylltedd Rhyng-Chip, JitterBlocker, Knob-on-Display, KoD, maxCrypto, maxView, memBrain, Mindi, MiWi, MPASM, MPF, MPLAB Ardystiedig logo, MPLIB, MPLINK, MultiTRAK, NetDetach, Cynhyrchu Cod Omniscient, PICDEM, PICDEM.net,
PICkit, PICtail, PowerSmart, PureSilicon, QMatrix, REAL ICE, Ripple Blocker, RTAX, RTG4, SAMICE, Cwad Cyfresol I/O, simpleMAP, SimpliPHY, SmartBuffer, SmartHLS, SMART-IS, storClad, SQI, SuperSwitcher,
SuperSwitcher II, Switchtec, SynchroPHY, Cyfanswm Dygnwch, Amser Ymddiried, TSHARC, USBCheck, VariSense, VectorBlox, VeriPHY, ViewMae Span, WiperLock, XpressConnect, a ZENA yn nodau masnach Microchip Technology Incorporated
yn UDA a gwledydd eraill.
Mae SQTP yn nod gwasanaeth Microchip Technology Incorporated yn UDA
Mae logo Adaptec, Frequency on Demand, Silicon Storage Technology, a Symmcom yn nodau masnach cofrestredig Microchip Technology Inc. mewn gwledydd eraill.
Mae GestIC yn nod masnach cofrestredig Microchip Technology Germany II GmbH & Co. KG, is-gwmni i Microchip Technology Inc., mewn gwledydd eraill.
Mae'r holl nodau masnach eraill a grybwyllir yma yn eiddo i'w cwmnïau priodol.
© 2023, Microchip Technology Incorporated a'i is-gwmnïau. Cedwir Pob Hawl.
ISBN: 978-1-6683-3694-6
System Rheoli Ansawdd
I gael gwybodaeth am Systemau Rheoli Ansawdd Microsglodion, ewch i www.microchip.com/quality.
AMERICAS | ASIA/PACIFIC | ASIA/PACIFIC | EWROP |
Swyddfa Gorfforaethol 2355 Gorllewin Chandler Blvd. Chandler, AZ 85224-6199 Ffôn: 480-792-7200 Ffacs: 480-792-7277 Cymorth Technegol: www.microchip.com/support Web Cyfeiriad: www.microchip.com Atlanta Duluth, GA Ffôn: 678-957-9614 Ffacs: 678-957-1455 Austin, TX Ffôn: 512-257-3370 Boston Westborough, MA Ffôn: 774-760-0087 Ffacs: 774-760-0088 Chicago Itasca, IL Ffôn: 630-285-0071 Ffacs: 630-285-0075 Dallas Addison, TX Ffôn: 972-818-7423 Ffacs: 972-818-2924 Detroit Novi, MI Ffôn: 248-848-4000 Houston, TX Ffôn: 281-894-5983 Indianapolis Noblesville, YN Ffôn: 317-773-8323 Ffacs: 317-773-5453 Ffôn: 317-536-2380 Los Angeles Cenhadaeth Viejo, CA Ffôn: 949-462-9523 Ffacs: 949-462-9608 Ffôn: 951-273-7800 Raleigh, CC Ffôn: 919-844-7510 Efrog Newydd, NY Ffôn: 631-435-6000 San Jose, CA Ffôn: 408-735-9110 Ffôn: 408-436-4270 Canada - Toronto Ffôn: 905-695-1980 Ffacs: 905-695-2078 |
Awstralia - Sydney Ffôn: 61-2-9868-6733 Tsieina - Beijing Ffôn: 86-10-8569-7000 Tsieina - Chengdu Ffôn: 86-28-8665-5511 Tsieina - Chongqing Ffôn: 86-23-8980-9588 Tsieina - Dongguan Ffôn: 86-769-8702-9880 Tsieina - Guangzhou Ffôn: 86-20-8755-8029 Tsieina - Hangzhou Ffôn: 86-571-8792-8115 Tsieina - Hong Kong SAR Ffôn: 852-2943-5100 Tsieina - Nanjing Ffôn: 86-25-8473-2460 Tsieina - Qingdao Ffôn: 86-532-8502-7355 Tsieina - Shanghai Ffôn: 86-21-3326-8000 Tsieina - Shenyang Ffôn: 86-24-2334-2829 Tsieina - Shenzhen Ffôn: 86-755-8864-2200 Tsieina - Suzhou Ffôn: 86-186-6233-1526 Tsieina - Wuhan Ffôn: 86-27-5980-5300 Tsieina - Xian Ffôn: 86-29-8833-7252 Tsieina - Xiamen Ffôn: 86-592-2388138 Tsieina - Zhuhai Ffôn: 86-756-3210040 |
India - Bangalore Ffôn: 91-80-3090-4444 India - Delhi Newydd Ffôn: 91-11-4160-8631 India - Pune Ffôn: 91-20-4121-0141 Japan - Osaka Ffôn: 81-6-6152-7160 Japan - Tokyo Ffôn: 81-3-6880- 3770 Corea - Daegu Ffôn: 82-53-744-4301 Corea - Seoul Ffôn: 82-2-554-7200 Malaysia - Kuala Lumpur Ffôn: 60-3-7651-7906 Malaysia - Penang Ffôn: 60-4-227-8870 Philippines - Manila Ffôn: 63-2-634-9065 Singapôr Ffôn: 65-6334-8870 Taiwan - Hsin Chu Ffôn: 886-3-577-8366 Taiwan - Kaohsiung Ffôn: 886-7-213-7830 Taiwan - Taipei Ffôn: 886-2-2508-8600 Gwlad Thai - Bangkok Ffôn: 66-2-694-1351 Fietnam - Ho Chi Minh Ffôn: 84-28-5448-2100 |
Awstria - Wels Ffôn: 43-7242-2244-39 Ffacs: 43-7242-2244-393 Denmarc - Copenhagen Ffôn: 45-4485-5910 Ffacs: 45-4485-2829 Y Ffindir - Espoo Ffôn: 358-9-4520-820 Ffrainc - Paris Tel: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79 Yr Almaen - Garching Ffôn: 49-8931-9700 Yr Almaen - Haan Ffôn: 49-2129-3766400 Yr Almaen - Heilbronn Ffôn: 49-7131-72400 Yr Almaen - Karlsruhe Ffôn: 49-721-625370 Yr Almaen - Munich Tel: 49-89-627-144-0 Fax: 49-89-627-144-44 Yr Almaen - Rosenheim Ffôn: 49-8031-354-560 Israel - Ra'anana Ffôn: 972-9-744-7705 Yr Eidal - Milan Ffôn: 39-0331-742611 Ffacs: 39-0331-466781 Yr Eidal - Padova Ffôn: 39-049-7625286 Yr Iseldiroedd - Drunen Ffôn: 31-416-690399 Ffacs: 31-416-690340 Norwy - Trondheim Ffôn: 47-72884388 Gwlad Pwyl - Warsaw Ffôn: 48-22-3325737 Rwmania - Bucharest Tel: 40-21-407-87-50 Sbaen - Madrid Tel: 34-91-708-08-90 Fax: 34-91-708-08-91 Sweden - Gothenberg Tel: 46-31-704-60-40 Sweden - Stockholm Ffôn: 46-8-5090-4654 DU - Wokingham Ffôn: 44-118-921-5800 Ffacs: 44-118-921-5820 |
© 2023 Microchip Technology Inc. a'i is-gwmnïau
DS50003627A –
Dogfennau / Adnoddau
![]() |
Meddalwedd Llyfrgell Efelychu MICROCHIP Libero SoC [pdfCanllaw Defnyddiwr DS50003627A, Meddalwedd Llyfrgell Efelychu Libero SoC, Meddalwedd Llyfrgell Efelychu SoC, Meddalwedd Llyfrgell Efelychu, Meddalwedd Llyfrgell, Meddalwedd |