Libero SoC симуляциясы
Китепкана орнотуу нускамалары
Introduction
Бул документтин максаты - Libero SoC долбоорун киргизүү катары колдонуу менен симуляция чөйрөсүн орнотуу процедурасын сүрөттөө. Бул документация Libero SoC v11.9 жана жаңы программалык камсыздоонун релиздери менен колдонуу үчүн берилген алдын ала түзүлгөн китепканаларга туура келет. Берилген китепканалар Verilog үчүн түзүлгөн. VHDL колдонуучулары аралаш режимдеги симуляцияга уруксат берүүчү лицензияны талап кылат.
Түзүлгөн симуляция китепканалары төмөнкү инструменттер үчүн жеткиликтүү:
- Aldec Active-HDL
- Aldec Riviera-PRO
- Cadence Incisive Enterprise жана Xcelium
- Siemens QuestaSim
- Synopsys VCS
Башка симулятор үчүн китепкананы суроо үчүн байланышыңыз Микрочипти техникалык колдоо.
Libero SoC интеграциясы
Libero SoC run.do түзүү менен ModelSim ME аркылуу симуляцияны колдойт file. Бул file ModelSim ME/ModelSim Pro ME тарабынан симуляцияны орнотуу жана иштетүү үчүн колдонулат. Башка симуляция куралдарын колдонуу үчүн, сиз ModelSim ME/ModelSim Pro ME run.do түзө аласыз жана Tcl сценарийин өзгөртө аласыз file симуляторуңузга туура келген буйруктарды колдонуу үчүн.
1.1 Libero SoC Tcl File муун (Суроо бериңиз)
Libero SoCде дизайнды түзүп, генерациялагандан кийин, бардык дизайн фазаларында (presynth, postsynth жана post-макет) астында ModelSim ME/ModelSim Pro ME симуляциясын баштаңыз. Бул кадам run.do жаратат file ар бир долбоорлоо баскычы үчүн ModelSim ME/ModelSim Pro ME үчүн.
Маанилүү: Ар бир симуляцияны баштагандан кийин, автоматтык түрдө түзүлгөн run.do атын өзгөртүңүз file Libero SoC мунун үстүнөн жазууга жол бербөө үчүн симуляция каталогунун астында file. Мисалы үчүнampле, fileдын атын presynth_run.do, postsynth_run.do жана postlayout_run.do деп өзгөртүүгө болот.
Active-HDL жана Riviera-Pro үчүн Aldec орнотуулары (Суроо бериңиз)
run.do file ModelSim ME/ModelSim Pro ME тарабынан колдонулган Aldec тренажерлорунун жардамы менен моделдөө үчүн өзгөртүлүшү жана колдонулушу мүмкүн.
2.1 Айлана-чөйрөнүн өзгөрмөлүүлүгү (Суроо бериңиз)
Сиздин чөйрө өзгөрмөсүн лицензияңызга коюңуз file жайгашкан жери:
LM_LICENSE_FILE: лицензия серверине көрсөткүчтү камтышы керек.
2.2 Түзүлгөн китепкананы жүктөө (Суроо бериңиз)
Microchipден Aldec Active-HDL жана Aldec Riviera-PRO китепканаларын жүктөп алыңыз webсайт.
2.3 Aldec симуляциясы үчүн run.do конверсиясы (Суроо бериңиз)
run.do fileActive-HDL жана Riviera-Pro куралын колдонуп симуляциялоо үчүн Libero SoC тарабынан түзүлгөн с бир гана өзгөртүү менен Active-HDL жана Riviera-Pro аркылуу симуляциялар үчүн колдонулушу мүмкүн. Төмөнкү таблицада ModelSim run.do файлында өзгөртүү үчүн Aldec-эквиваленттүү буйруктар келтирилген file.
Таблица 2-1. Aldec эквиваленттүү буйруктары
ModelSim | Active-HDL |
влог | алог |
vcom | acom |
vlib | алиб |
vsim | асим |
vmap | amap |
Төмөнкүдөйample run.do Aldec симуляторлору менен байланышкан.
- Учурдагы жумушчу каталогдун ордун коюңуз.
dsn коюу - Иштеп жаткан китепкананын атын коюп, анын жайгашкан жерин картага түшүрүп, андан кийин Microchip FPGA үй-бүлөсүнүн жайгашкан жерин картага түшүрүңүз
алдын ала түзүлгөн китепканалар (мисалыample, SmartFusion2) сиз дизайныңызды иштетип жаткан.
alib presynth
amap presynth presynth
amap SmartFusion2 - Бардык керектүү HDLди түзүңүз fileлар керектүү китепкана менен дизайнда колдонулат.
alog –work presynth temp.v (Verilog үчүн)
alog –work presynth testbench.v
acom – иштөө presynth temp.vhd (Vhdl үчүн)
acom –work presynth testbench.vhd - Дизайнды окшоштуруңуз.
asim –L SmartFusion2 –L presynth –t 1ps presynth.testbench
10us run
2.4 Белгилүү маселелер (Суроо бериңиз)
Бул бөлүмдө белгилүү маселелер жана чектөөлөр келтирилген.
- Riviera-PRO аркылуу түзүлгөн китепканалар платформага тиешелүү (б.а. 64 биттик китепканаларды 32 биттик платформада иштетүү мүмкүн эмес жана тескерисинче).
- SERDES/MDDR/FDDR камтыган конструкциялар үчүн run.do сайтыңызда төмөнкү параметрди колдонуңуз fileалардын дизайнын түзгөндөн кийин симуляцияларды иштеп жатканда:
– Active-HDL: asim –o2
– Riviera-PRO: asim –O2 (синтке чейинки жана жайгаштыруудан кийинки симуляциялар үчүн) жана asim –O5 (макеттен кийинки симуляциялар үчүн)
Active-HDL жана Riviera-Pro үчүн Aldec орнотуусунда төмөнкү күтүүдө SAR бар. Көбүрөөк маалымат алуу үчүн байланышыңыз Микрочипти техникалык колдоо. - SAR 49908 – Active-HDL: Math блок симуляциялары үчүн VHDL катасы
- SAR 50627 – Riviera-PRO 2013.02: SERDES үлгүлөрү үчүн симуляция каталары
- SAR 50461 – Riviera-PRO: симуляцияларда asim -O2/-O5 опциясы
Cadence Incisive Орнотуу (Суроо бериңиз)
Сиз скрипт түзүшүңүз керек file иштетүү үчүн ModelSim ME/ModelSim Pro ME run.do окшош
Cadence Incisive симулятору. Бул кадамдарды аткарып, скрипт түзүңүз file NCSim үчүн же сценарийди колдонуңуз file
ModelSim ME/ModelSim Pro ME run.do айландыруу үчүн каралган fileконфигурацияга кирет files
NCSim аркылуу симуляцияларды иштетүү үчүн керек.
Маанилүү: Cadence Incisive Enterprise жаңы версияларын чыгарууну токтотту
симулятор жана Xcelium симуляторун колдой баштады.
3.1 Айлана-чөйрөнүн өзгөрмөлөрү (Суроо бериңиз)
Cadence Incisive симуляторун иштетүү үчүн төмөнкү чөйрө өзгөрмөлөрүн конфигурациялаңыз:
- LM_LICENSE_FILE: лицензияга көрсөткүчтү камтышы керек file.
- cds_root: Cadence Incisive орнотуусунун үй каталогунун жайгашкан жерин көрсөтүшү керек.
- PATH: cds_root тарабынан көрсөтүлгөн куралдар каталогунун астындагы урнаны көрсөтүү керек, башкача айтканда,
$cds_root/tools/bin/64bit (64 биттик машина үчүн жана $cds_root/tools/bin 32 биттик машина үчүн).
64 биттик жана 32 биттик операциялык системалардын ортосунда которулган учурда симуляция чөйрөсүн орнотуунун үч жолу бар:
1-жагдай: PATH өзгөрмө
Төмөнкү буйрукту иштетиңиз:
жолду коюу = (install_dir/tools/bin/64bit $path) 64бит машиналар үчүн жана
32 биттик машиналар үчүн жолду коюңуз = (install_dir/tools/bin $path).
2-жагдай: -64bit Command-line Option колдонуу
64бит аткарылуучу файлды чакыруу үчүн буйрук сабында -64бит параметрин көрсөтүңүз.
3-жагдай: INCA_64BIT же CDS_AUTO_64BIT чөйрө өзгөрмөсүн орнотуу
INCA_64BIT өзгөрмө логикалык катары каралат. Сиз бул өзгөрмөнү каалаган мааниге же нөл сапка орното аласыз.
setenv INCA_64BIT
Маанилүү: The INCA_64BIT чөйрө өзгөрмөсү IC куралдары сыяктуу башка Cadence куралдарына таасирин тийгизбейт. Бирок, Incisive куралдары үчүн INCA_64BIT өзгөрмөсү CDS_AUTO_64BIT чөйрө өзгөрмөсүнүн жөндөөсүн жокко чыгарат. Эгерде INCA_64BIT чөйрө өзгөрмөсү коюлган болсо, бардык Incisive куралдары 64-бит режиминде иштейт. setenv CDS_AUTO_64BIT КОЛДОЙТ:INCA
Маанилүү: The INCA сап баш тамга менен болушу керек. Бардык аткарылуучу файлдар 32 биттик режимде же 64 биттик режимде иштетилиши керек, төмөнкүдөй өзгөрмө бир аткарылуучуну камтышы үчүн орнотпоңуз:
setenv CDS_AUTO_64BIT КИРҮҮ:ncelab
Башка Cadence куралдары, мисалы, IC инструменттери, ошондой эле 64-бит же 32-бит аткарылуучу файлдарды тандоону көзөмөлдөө үчүн CDS_AUTO_64BIT чөйрө өзгөрмөсүн колдонушат. Төмөнкү таблица сиз CDS_AUTO_64BIT өзгөрмөсүн бардык режимдерде Incisive куралдарын жана IC куралдарын иштетүү үчүн кантип орното аларыңызды көрсөтөт.
Таблица 3-1. CDS_AUTO_64BIT Өзгөрмөлөр
CDS_AUTO_64BIT өзгөрмө | Incisive Tools | IC куралдары |
setenv CDS_AUTO_64BIT БАРДЫГЫ | 64 бит | 64 бит |
setenv CDS_AUTO_64BIT NONE | 32 бит | 32 бит |
setenv CDS_AUTO_64BIT EXCLUDE:ic_binary | 64 бит | 32 бит |
setenv CDS_AUTO_64BIT ЧЫГАРЫЛАТ:INCA | 32 бит | 64 бит |
Маанилүү: Бардык Incisive куралдары 32-бит режиминде же 64-бит режиминде иштеши керек, төмөнкүдөй эле, белгилүү бир аткарылуучуну чыгарып салуу үчүн EXCLUDE колдонбоңуз: setenv CDS_AUTO_64BIT EXCLUDE:ncelab
Эгер сиз CDS_AUTO_64BIT өзгөрмөсүн Incisive куралдарын (setenv CDS_AUTO_64BIT EXCLUDE:INCA) чыгарып салуу үчүн орнотсоңуз, бардык Incisive куралдары 32 биттик режимде иштетилет. Бирок, -64bit буйрук сабы параметри чөйрө өзгөрмөсүн жокко чыгарат.
Төмөнкү конфигурация fileмаалыматтарыңызды башкарууга жана симуляция куралдарынын жана утилиталарынын иштешин көзөмөлдөөгө жардам берет:
- Китепкананын картасы file (cds.lib) — Дизайныңыздын жайгашкан жеринин логикалык аталышын аныктайт.
- Китепканалар жана аларды физикалык каталог аттары менен байланыштырат.
- Өзгөрмөлөр file (hdl.var) — симуляция куралдарынын жана утилиталардын жүрүм-турумуна таасир этүүчү өзгөрмөлөрдү аныктайт.
3.2 Түзүлгөн китепкананы жүктөө (Суроо бериңиз)
Microsemiден Cadence Incisive китепканаларын жүктөп алыңыз webсайт.
3.3 NCSim сценарийин түзүү File (Суроо бериңиз)
run.do көчүрмөсүн жараткандан кийин files, NCSim аркылуу симуляцияңызды иштетүү үчүн бул кадамдарды аткарыңыз:
- cds.lib түзүңүз file бул жеткиликтүү китепканаларды жана алардын жайгашкан жерин аныктайт. The file китепкананын логикалык аталыштарын алардын физикалык каталогдорунун жолдоруна салыштырган билдирүүлөрдү камтыйт. Мисалы үчүнampЭгерде сиз presynth симуляциясын иштетип жатсаңыз, cds.lib file төмөнкү код блогунда көрсөтүлгөндөй жазылган.
DEFINE presynth ./presynth
COREAHBLITE_LIB ./COREAHBLITE_LIB АНЫКТОО
DEFINE smartfusion2 - hdl.var түзүңүз file, кошумча конфигурация file конфигурация өзгөрмөлөрүн камтыган, дизайн чөйрөңүз кантип конфигурацияланганын аныктайт. Төмөнкү өзгөрмө fileлар кирет:
– Компилятор компиляцияланган объекттерди жана башка алынган маалыматтарды сактаган жумушчу китепкананы көрсөтүү үчүн колдонулган өзгөрмөлөр.
– Verilog үчүн өзгөрмөлөр (LIB_MAP, VIEW_MAP, WORK) китепканаларды жана views иштеп чыгуучу учурларды чечкенде издөө.
– Компиляторду, иштеп чыгуучу жана симулятордун буйрук сабынын параметрлерин жана аргументтерин аныктоого мүмкүндүк берүүчү өзгөрмөлөр.
Пресинттик симуляцияда эксampле жогоруда көрсөтүлгөн, биз үч RTL бар деп files: av, bv жана testbench.v, алар тиешелүүлүгүнө жараша presynth, COREAHBLITE_LIB жана presynth китепканаларына түзүлүшү керек. hdl.var file төмөнкү код блогунда көрсөтүлгөндөй жазылышы мүмкүн.
ИШ АНЫКТОО presynth
PROJECT_DIR АНЫКТОО files>
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/av => пресинт )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/bv => COREAHBLITE_LIB )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/testbench.v => presynth )
LIB_MAP АНЫКТОО ( $LIB_MAP, + => пресинт ) - Дизайнды түзүңүз filencvlog опциясын колдонуу.
ncvlog +incdir+ –cdslib ./cds.lib –hdlvar ./hdl.var –logfile
ncvlog.log –update –linedebug av bv testbench.v - ncelab аркылуу дизайнды иштеп чыгуу. Иштеп чыгуучу долбоордогу инстанция жана конфигурация маалыматынын негизинде дизайн иерархиясын түзөт, сигналдын байланышын орнотот жана долбоордогу бардык объекттер үчүн баштапкы маанилерди эсептейт. Иштелген дизайн иерархиясы симуляциялык снапшотто сакталат, бул симулятор симуляцияны иштетүү үчүн колдонгон дизайныңыздын чагылдырылышы.
ncelab –Кабар –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax 15 –
мүмкүндүк алуу + rwc - status worklib. : модуль
Макеттен кийинки симуляция учурунда иштеп чыгуу
Пост-макетинг моделдөө учурда, биринчи SDF file ncsdfc буйругун колдонуу менен иштеп чыгуудан мурун компиляциялоо керек.
ncsdfcfileаты>.sdf – чыгарууfileаты>.sdf.X
Төмөнкү код блогунда көрсөтүлгөндөй, иштеп чыгуу учурунда –autosdf опциясы менен түзүлгөн SDF чыгарууну колдонуңуз.
ncelab -autosdf -Message -cdslib ./cds.lib -hdlvar ./hdl.var -logfile ncelab.log –errormax
15 – Access +rwc – status worklib. :модуль –sdf_cmd_file ./
sdf_cmd_file
sdf_cmd_file төмөнкү код блогунда көрсөтүлгөндөй болушу керек.
COMPILED_SDF_FILE = " file>” - ncsim менен окшоштуруңуз. Иштеп чыккандан кийин симуляциялык снапшот түзүлөт, ал симуляция үчүн ncsim тарабынан жүктөлөт. Сиз партия режиминде же GUI режиминде иштей аласыз.
ncsim –Кабар –топтом/-gui –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncsim.log –
errormax 15 – status worklib. : модуль
Маанилүү: Компиляциянын, иштеп чыгуунун жана имитациялоонун жогорудагы үч кадамынын бардыгын кабык скриптине киргизүүгө болот file жана буйрук сабынан алынган. Бул үч кадамды колдонуунун ордуна, дизайн төмөнкү код блокто көрсөтүлгөндөй ncverilog же irun опциясын колдонуу менен бир кадамда окшоштурулушу мүмкүн.
ncverilog +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var
fileлар долбоорлоодо колдонулат>
irun +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var files
долбоорлоодо колдонулат>
3.3.1 Белгилүү маселелер (Суроо бериңиз)
Testbench Workaround
Колдонуучу тарабынан түзүлгөн testbenchтеги саат жыштыгын көрсөтүү үчүн төмөнкү билдирүүнү колдонуу же Libero SoC тарабынан түзүлгөн демейки тестирлөө NCSim менен иштебейт.
ар дайым @(SYSCLK)
#(SYSCLK_PERIOD / 2.0) SYSCLK <= !SYSCLK;
Симуляцияны иштетүү үчүн төмөнкүдөй өзгөртүңүз:
дайыма #(SYSCLK_PERIOD / 2.0) SYSCLK = ~SYSCLK;
Маанилүү: түзүлгөн NCSim үчүн китепканалар платформага мүнөздүү (б.а. 64 биттик китепканалар 32 биттик платформа менен шайкеш келбейт жана тескерисинче).
MSS жана SERDESди колдонуу менен постсинттик жана жайгаштыруудан кийинки симуляциялар MSS блогун камтыган конструкциялардын постсинттик симуляциясын же SERDESди колдонуу менен дизайндын макеттен кийинки симуляциясын иштетип жатканда, BFM симуляциялары иштебейт, эгерде –libmap опциясы
иштеп чыгуу учурунда көрсөтүлгөн эмес. Себеби, иштеп чыгуу учурунда MSS жумуш китепканасынан чечилет (анткени демейки байланыш жана worklib постсинт/пост-макет болуп саналат), мында ал жөн гана Fixed Function болуп саналат.
MSSти чечүү үчүн ncelab буйругу төмөнкү код блогунда көрсөтүлгөндөй жазылышы керек
SmartFusion2 алдын ала түзүлгөн китепканадан блок.
ncelab -libmap lib.map -libverbose -Message -access +rwc cfg1
жана lib.map file төмөнкүдөй болушу керек:
config cfg1;
дизайн ;
демейки liblist smartfusion2 ;
endconfig
Бул SmartFusion2 китепканасындагы каалаган уячаны жумуш китепканасын, башкача айтканда, постсинт/пост-макетти издөөдөн мурун чечет.
-libmap опциясын ар бир симуляция үчүн иштеп чыгуу учурунда демейки боюнча колдонсо болот (presynth, postsynth жана post-макет). Бул китепканалардан инстанцияларды чечүүдөн улам келип чыккан симуляция маселелерин болтурбайт.
ncelab: *F,INTERR: ИЧКИ ЭСКЕРТҮҮ
Бул ncelab куралынын өзгөчөлүгү -libmap опциясын колдонуу менен постсинттик жана жайгаштыруудан кийинки симуляциялар учурунда SmartFusion 2 жана IGLOO 2де FDDR камтыган конструкциялар үчүн эскертүү болуп саналат.
Маанилүү: Бул маселе Cadence колдоо тобуна билдирилди (SAR 52113).
3.4 Сample Tcl жана Shell Script Fileс (Суроо бериңиз)
Төмөнкүлөр fileлар конфигурация болуп саналат fileдизайн жана кабык сценарийин орнотуу үчүн керек file NCSim буйруктарын иштетүү үчүн.
Cds.lib
NE smartfusion2 /scratch/krydor/tmpspace/users/me/nc-vlog64/SmartFusion2
COREAHBLITE_LIB ./COREAHBLITE_LIB АНЫКТОО
DEFINE presynth ./presynth
Hdl.var
ИШ АНЫКТОО presynth
PROJECT_DIR АНЫКТОО /scratch/krydor/tmpspace/sqausers/me/3rd_party_simulators/Cadence/IGLOO2/
ENVM/M2GL050/envm_fic1_ser1_v/eNVM_fab_master
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_addrdec.v => COREAHBLITE_LIB )
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahbite_defaultslavesm.v => COREAHBLITE_LIB )
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahbite_masterstagev => COREAHBLITE_LIB)
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahbite_slavearbiter.v => COREAHBLITE_LIB )
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahbite_slavestagev => COREAHBLITE_LIB)
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahbite_matrix2x16.v => COREAHBLITE_LIB )
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahbite.v => COREAHBLITE_LIB )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB/CCC_0/SB_CCC_0_FCCC.v =>
пресинт)
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigMaster/
2.0.101/rtl/vlog/core/coreconfigmaster.v => пресинт )
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigP/4.0.100/rtl/
vlog/core/coreconfigp.v => пресинт )
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp_pcie_hotreset.v => пресинт )
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp.v => пресинт )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB/FABOSC_0/SB_FABOSC_0_OSC.v =>
пресинт)
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB_HPMS/SB_HPMS.v => presynth )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB/SB.v => presynth )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/SERDES_IF_0/
SB_top_SERDES_IF_0_SERDES_IF.v => пресинт )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/SB_top.v => пресинт )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/testbench.v => presynth )
LIB_MAP АНЫКТОО ( $LIB_MAP, + => пресинт )
Commands.csh
ncvlog +incdir+../../component/work/SB_top -cdslib ./cds.lib -hdlvar ./hdl.var -logfile
ncvlog.log -errormax 15 -жаңыртуу -linedebug
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_addrdec.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/
coreahbite_defaultslavesm.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_masterstagев
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_slavearbiter.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_slavestagев
../../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
-work presynth -logfile ncelab.log -errormax 15 -access +rwc -статус presynth.testbench:модуль
ncsim -Message -batch -cdslib ./cds.lib -hdlvar ./
hdl.var -logfile ncsim.log -errormax 15 -status presynth.testbench:модуль
3.5 Автоматташтыруу (Суроо бериңиз)
Төмөнкү скрипт file ModelSim run.do которот fileс конфигурацияга fileNCSim аркылуу симуляцияларды иштетүү үчүн керек.
Скрипт File Колдонуу
perl cadence_parser.pl presynth_run.do postsynth_run.do
postlayout_run.do Microsemi_Family
Cadence_Алдын ала_китепканалардын_жайгашкан жери
Cadence_parser.pl
#!/usr/bin/perl -w
##################################################### ##############################################
##################
#Колдонуу: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
Microsemi_Family Алдын ала түзүлгөн_Китепканалардын_жайгашкан жери#
##################################################### ##############################################
##################
POSIX колдонуу;
катуу колдонуу;
менин ($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);
subquesta_parser {
менин $ModelSim_run_do = $_[0];
менин $actel_family = $_[1];
менин $lib_location = $_[2];
my $state;
эгерде (-e “$ModelSim_run_do” )
{
ачык (INFILE,"$ModelSim_run_do");
менин @ModelSim_run_do =FILE>;
my $line;
if ( $ModelSim_run_do =~ m/(presynth)/)
{
`mkdir QUESTA_PRESYNTH`;
ачык (OUTFILE,”>QUESTA_PRESYNTH/presynth_questa.do”);
$state = $1;
} elsif ($ModelSim_run_do =~ m/(postsynth)/)
{
`mkdir QUESTA_POSTSYNTH`;
ачык (OUTFILE,”>QUESTA_POSTSINTH/postsynth_questa.do”);
$state = $1;
} elsif ( $ModelSim_run_do =~ м/(постлайт)/ )
{
`mkdir QUESTA_POSTLAYOUT`;
ачык (OUTFILE,”>QUESTA_POSTLAYOUT/postlayout_questa.do”);
$state = $1;
} башка
{
басып чыгаруу “Туура эмес киргизүүлөр берилген file\n”;
басып чыгаруу "#Usage: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
\”Китепканалардын_жайгашкан жери\”\n”;
}
foreach $line (@ModelSim_run_do)
{
#Жалпы операциялар
$line =~ s/..\/дизайнер.*симуляция\///g;
$line =~ s/$state/$state\_questa/g;
#басып чыгарууFILE “$line \n”;
if ($line =~ m/vmap\s+.*($actel_family)/)
{
басып чыгарууFILE “vmap $actel_family \”$lib_location\”\n”;
} elsif ($line =~ m/vmap\s+(.*._LIB)/)
{
$line =~ s/..\/component/..\/..\/component/g;
басып чыгарууFILE “$line \n”;
} elsif ($line =~ m/vsim/)
{
$line =~ s/vsim/vsim -novopt/g;
басып чыгарууFILE “$line \n”;
} башка
{
басып чыгарууFILE “$line \n”;
}
}
жабуу(INFILE);
жабууFILE);
} башка {
басып чыгаруу “$ModelSim_run_do жок. Симуляцияны кайра иштетүү \n”;
}
}
Cadence Xcelium Орнотуу (Микрочип кирүү)
Сиз скрипт түзүшүңүз керек file Cadence Xcelium симуляторун иштетүү үчүн ModelSim ME/ModelSim Pro ME run.do окшош. Бул кадамдарды аткарып, скрипт түзүңүз file Xcelium үчүн же сценарийди колдонуңуз file ModelSim ME/ModelSim Pro ME run.do айландыруу үчүн каралган fileконфигурацияга кирет fileXcelium аркылуу симуляцияларды иштетүү үчүн керек.
4.1 Айлана-чөйрөнүн өзгөрмөлөрү (Суроо бериңиз)
Cadence Xcelium иштетүү үчүн төмөнкү чөйрө өзгөрмөлөрүн конфигурациялаңыз:
- LM_LICENSE_FILE: лицензияга көрсөткүчтү камтышы керек file.
- cds_root: Cadence Incisive орнотуунун үй каталогунун жайгашкан жерин көрсөтүшү керек.
- PATH: cds_root (б.а
$cds_root/tools/bin/64bit (64 биттик машина үчүн жана $cds_root/tools/bin 32 бит үчүн
машина).
64 биттик жана 32 биттик операциялык системалардын ортосунда которулган учурда симуляция чөйрөсүн орнотуунун үч жолу бар:
1-жагдай: PATH өзгөрмө
жолду коюу = (install_dir/tools/bin/64bit $path) 64бит машиналар үчүн жана
32 биттик машиналар үчүн жолду коюңуз = (install_dir/tools/bin $path).
2-жагдай: -64bit Command-line Option колдонуу
64 биттик аткарылуучу файлды чакыруу үчүн буйрук сабында -64бит параметрин көрсөтүңүз.
3-жагдай: INCA_64BIT же CDS_AUTO_64BIT чөйрө өзгөрмөсүн орнотуу
INCA_64BIT өзгөрмө логикалык катары каралат. Сиз бул өзгөрмөнү каалаган мааниге же нөлгө орното аласыз
сап.
setenv INCA_64BIT
Маанилүү: The INCA_64BIT чөйрө өзгөрмөсү IC куралдары сыяктуу башка Cadence куралдарына таасирин тийгизбейт. Бирок, Incisive куралдары үчүн INCA_64BIT өзгөрмөсү CDS_AUTO_64BIT чөйрө өзгөрмөсүнүн жөндөөсүн жокко чыгарат. Эгерде INCA_64BIT чөйрө өзгөрмөсү et болсо, бардык Incisive куралдары 64-бит режиминде иштейт.
setenv CDS_AUTO_64BIT КОЛДОЙТ:INCA
Маанилүү: The INCA сап баш тамга менен болушу керек. Бардык аткарылуучу файлдар 2 биттик режимде же 64 биттик режимде иштетилиши керек, төмөнкүдөй өзгөрмө бир аткарылуучуну камтышы үчүн орнотпоңуз:
setenv CDS_AUTO_64BIT КИРҮҮ:ncelab
Башка Cadence куралдары, мисалы, IC инструменттери, ошондой эле 64-бит же 32-бит аткарылуучу файлдарды тандоону көзөмөлдөө үчүн CDS_AUTO_64BIT чөйрө өзгөрмөсүн колдонушат. Төмөнкү таблица сиз CDS_AUTO_64BIT өзгөрмөсүн бардык режимдерде Incisive куралдарын жана IC куралдарын иштетүү үчүн кантип орното аларыңызды көрсөтөт.
Таблица 4-1. CDS_AUTO_64BIT Өзгөрмөлөр
CDS_AUTO_64BIT өзгөрмө | Incisive Tools | IC куралдары |
setenv CDS_AUTO_64BIT БАРДЫГЫ | 64-бит | 64-бит |
setenv CDS_AUTO_64BIT NONE | 32-бит | 32-бит |
setenv CDS_AUTO_64BIT ЧЫГАРЫЛУУ:ic_binary |
64-бит | 32-бит |
setenv CDS_AUTO_64BIT ЧЫГАРЫЛАТ:INCA | 32-бит | 64-бит |
Маанилүү: Бардык Incisive куралдары 32-бит режиминде же 64-бит режиминде иштеши керек, төмөнкүдөй эле, белгилүү бир аткарылуучу файлды алып салуу үчүн EXCLUDE колдонбоңуз:
setenv CDS_AUTO_64BIT ЧЫГАРЫЛУУ:ncelab
Эгер сиз CDS_AUTO_64BIT өзгөрмөсүн Incisive куралдарын (setenv) алып салуу үчүн орнотсоңуз
CDS_AUTO_64BIT EXCLUDE:INCA), бардык Incisive куралдары 32-бит режиминде иштетилет. Бирок,
-64bit буйрук сабынын параметри чөйрө өзгөрмөсүн жокко чыгарат.
Төмөнкү конфигурация fileмаалыматтарыңызды башкарууга жана симуляция куралдарынын жана утилиталарынын иштешин көзөмөлдөөгө жардам берет:
- Китепкананын картасы file (cds.lib) дизайныңыздын жайгашкан жеринин логикалык аталышын аныктайт.
- Китепканалар жана аларды физикалык каталог аттары менен байланыштырат.
- Өзгөрмөлөр file (hdl.var) симуляция куралдарынын жана утилиталардын жүрүм-турумуна таасир этүүчү өзгөрмөлөрдү аныктайт.
4.2 Түзүлгөн китепкананы жүктөө (Суроо бериңиз)
Microsemiден Cadence Xcelium китепканаларын жүктөп алыңыз webсайт.
4.3 Xcelium сценарийин түзүү file (Суроо бериңиз)
run.do көчүрмөсүн жараткандан кийин files, Xcelium скриптинин жардамы менен симуляцияңызды иштетүү үчүн төмөнкү кадамдарды аткарыңыз file.
- cds.lib түзүңүз file кайсы китепканалар жеткиликтүү жана алар кайда жайгашканын аныктайт.
The file китепкананын логикалык аталыштарын алардын физикалык каталогдорунун жолдоруна салыштырган билдирүүлөрдү камтыйт. Мисалы үчүнampЭгерде сиз presynth симуляциясын иштетип жатсаңыз, cds.lib file төмөнкү код блогунда көрсөтүлгөндөй жазылышы мүмкүн.
DEFINE presynth ./presynth
COREAHBLITE_LIB ./COREAHBLITE_LIB АНЫКТОО
DEFINE smartfusion2 - hdl.var түзүңүз file бул кошумча конфигурация file конфигурация өзгөрмөлөрүн камтыган, дизайн чөйрөңүз кантип конфигурацияланганын аныктайт. Аларга төмөнкүлөр кирет:
– Компилятор компиляцияланган объекттерди жана башка алынган маалыматтарды сактаган жумушчу китепкананы көрсөтүү үчүн колдонулган өзгөрмөлөр.
– Verilog үчүн өзгөрмөлөр (LIB_MAP, VIEW_MAP, WORK) китепканаларды жана views иштеп чыгуучу учурларды чечкенде издөө.
– Компиляторду, иштеп чыгуучу жана симулятордун буйрук сабынын параметрлерин жана аргументтерин аныктоого мүмкүндүк берүүчү өзгөрмөлөр.
Пресинттик симуляцияда эксampле жогоруда көрсөтүлгөн, биз 3 RTL бар деп files av, bv жана testbench.v, алар тиешелүүлүгүнө жараша presynth, COREAHBLITE_LIB жана presynth китепканаларына түзүлүшү керек. hdl.var file төмөнкү код блогунда көрсөтүлгөндөй жазылышы мүмкүн.
ИШ АНЫКТОО presynth
PROJECT_DIR АНЫКТОО files>
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/av => пресинт )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/bv => COREAHBLITE_LIB )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/testbench.v => presynth )
LIB_MAP АНЫКТОО ( $LIB_MAP, + => пресинт ) - Дизайнды түзүңүз filencvlog опциясын колдонуу.
xmvlog +incdir+ –cdslib ./cds.lib –hdlvar ./hdl.var –logfile
ncvlog.log –update –linedebug av bv testbench.v - ncelab аркылуу дизайнды иштеп чыгуу. Иштеп чыгуучу долбоордогу инстанция жана конфигурация маалыматынын негизинде дизайн иерархиясын түзөт, сигналдын байланышын орнотот жана долбоордогу бардык объекттер үчүн баштапкы маанилерди эсептейт. Иштелген дизайн иерархиясы симуляциялык снапшотто сакталат, бул симулятор симуляцияны иштетүү үчүн колдонгон дизайныңыздын чагылдырылышы.
Xcelium –Message –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax 15 –
мүмкүндүк алуу + rwc - status worklib. : модуль
Макеттен кийинки симуляция учурунда иштеп чыгуу
Пост-макетинг моделдөө учурда, биринчи SDF file ncsdfc буйругун колдонуу менен иштеп чыгуудан мурун компиляциялоо керек.
Xceliumfileаты>.sdf – чыгарууfileаты>.sdf.X
Төмөнкү код блогунда көрсөтүлгөндөй, иштеп чыгуу учурунда –autosdf опциясы менен түзүлгөн SDF чыгарууну колдонуңуз.
xmelab -autosdf -Message -cdslib ./cds.lib -hdlvar ./hdl.var -logfile ncelab.log –errormax
15 – Access +rwc – status worklib. :модуль –sdf_cmd_file ./
sdf_cmd_file
sdf_cmd_file төмөнкү код блогунда көрсөтүлгөндөй болушу керек.
COMPILED_SDF_FILE = " file>” - Xcelium аркылуу окшоштуруңуз. Иштеп чыккандан кийин симуляциялык снапшот түзүлөт, ал симуляция үчүн Xcelium тарабынан жүктөлөт. Бул партия режиминде же GUI режиминде иштетилиши мүмкүн.
xmsim –Кабар –топтом/-gui –cdslib ./cds.lib –hdlvar ./hdl.var –logfile xmsim.log –
errormax 15 – status worklib. : модуль
Cadence Xcelium орнотуу
Маанилүү: Баары компиляциянын, иштеп чыгуунун жана имитациялоонун жогорудагы үч кадамы кабык сценарийине киргизилиши мүмкүн file жана буйрук сабынан алынган. Бул үч кадамды колдонуунун ордуна, дизайн төмөнкү код блокто көрсөтүлгөндөй ncverilog же xrun опциясын колдонуу менен бир кадамда окшоштурулушу мүмкүн.
xmverilog +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var
fileлар долбоорлоодо колдонулат>
xrun +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var files
долбоорлоодо колдонулат>
4.3.1 Белгилүү маселелер (Суроо бериңиз)
Testbench Workaround
Колдонуучу тарабынан түзүлгөн testbenchтеги саат жыштыгын көрсөтүү үчүн төмөнкү билдирүүнү колдонуу же Libero SoC тарабынан түзүлгөн демейки testbench Xcelium менен иштебейт.
ар дайым @(SYSCLK)
#(SYSCLK_PERIOD / 2.0) SYSCLK <= !SYSCLK;
Симуляцияны иштетүү үчүн төмөнкүдөй өзгөртүңүз:
дайыма #(SYSCLK_PERIOD / 2.0) SYSCLK = ~SYSCLK;
Маанилүү: Xcelium үчүн түзүлгөн китепканалар платформага мүнөздүү (б.а. 64 биттик китепканалар 32 биттик платформа менен шайкеш келбейт жана тескерисинче).
MSS жана SERDES колдонуу менен постсинттик жана пост-макет симуляциялары
MSS блогун камтыган конструкциялардын постсинттик симуляциясын же SERDESди колдонуу менен дизайндын пост-макетин симуляциясын иштетип жатканда, иштеп чыгуу учурунда –libmap опциясы көрсөтүлбөсө, BFM симуляциялары иштебейт. Себеби, иштеп чыгуу учурунда MSS жумуш китепканасынан чечилет (анткени демейки байланыш жана worklib постсинт/пост-макет болуп саналат), мында ал жөн гана Fixed Function болуп саналат.
SmartFusion2 алдын ала компиляцияланган китепканасынан MSS блогун чечүү үчүн ncelab буйругу төмөнкү код блогунда көрсөтүлгөндөй жазылышы керек.
xmelab -libmap lib.map -libverbose -Message -access +rwc cfg1
жана lib.map file төмөнкүдөй болушу керек:
config cfg1;
дизайн ;
демейки liblist smartfusion2 ;
endconfig
Бул SmartFusion2 китепканасындагы бардык уячаны жумуш китепканасын, башкача айтканда, постсинт/пост-макетти издөөдөн мурун чечиши керек.
-libmap опциясын ар бир симуляция үчүн иштеп чыгуу учурунда демейки боюнча колдонсо болот (presynth, postsynth жана post-макет). Бул китепканалардан инстанцияларды чечүүдөн улам келип чыккан симуляция маселелерин болтурбайт.
xmelab: *F,INTERR: ИЧКИ ЭСКЕРТҮҮ
Бул ncelab куралы өзгөчөлүгү SmartFusion2 жана IGLOO2де FDDR камтыган конструкциялар үчүн эскертүү болуп саналат.
-libmap опциясын колдонуу менен постсинттик жана макеттен кийинки симуляциялар учурунда.
Маанилүү: Бул маселе Cadence колдоо тобуна билдирилди (SAR 52113).
4.4 Сample Tcl жана кабык сценарийи fileс (Суроо бериңиз)
Төмөнкүлөр fileлар конфигурация болуп саналат fileдизайн жана кабык сценарийин орнотуу үчүн керек file Xcelium буйруктарын иштетүү үчүн.
Cds.lib
DEFINE smartfusion2 /scratch/krydor/tmpspace/users/me/nc-vlog64/SmartFusion2
COREAHBLITE_LIB ./COREAHBLITE_LIB АНЫКТОО
DEFINE presynth ./presynth
Hdl.var
ИШ АНЫКТОО presynth
PROJECT_DIR АНЫКТОО /scratch/krydor/tmpspace/sqausers/me/3rd_party_simulators/Cadence/IGLOO2/
ENVM/M2GL050/envm_fic1_ser1_v/eNVM_fab_master
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_addrdec.v => COREAHBLITE_LIB )
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahbite_defaultslavesm.v => COREAHBLITE_LIB )
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahbite_masterstagev => COREAHBLITE_LIB)
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahbite_slavearbiter.v => COREAHBLITE_LIB )
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahbite_slavestagev => COREAHBLITE_LIB)
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahbite_matrix2x16.v => COREAHBLITE_LIB )
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahbite.v => COREAHBLITE_LIB )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB/CCC_0/SB_CCC_0_FCCC.v =>
пресинт)
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigMaster/
2.0.101/rtl/vlog/core/coreconfigmaster.v => пресинт )
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigP/4.0.100/rtl/
vlog/core/coreconfigp.v => пресинт )
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp_pcie_hotreset.v => пресинт )
LIB_MAP АНЫКТОО ($LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp.v => пресинт )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB/FABOSC_0/SB_FABOSC_0_OSC.v =>
пресинт)
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB_HPMS/SB_HPMS.v => presynth )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB/SB.v => presynth )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/SERDES_IF_0/
SB_top_SERDES_IF_0_SERDES_IF.v => пресинт )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/SB_top.v => пресинт )
LIB_MAP АНЫКТОО ( $LIB_MAP, ${PROJECT_DIR}/component/work/SB_top/testbench.v => presynth )
LIB_MAP АНЫКТОО ( $LIB_MAP, + => пресинт )
Commands.csh
ncvlog +incdir+../../component/work/SB_top -cdslib ./cds.lib -hdlvar ./hdl.var -logfile
ncvlog.log -errormax 15 -жаңыртуу -linedebug
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_addrdec.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/
coreahbite_defaultslavesm.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_masterstagев
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_slavearbiter.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_slavestagев
../../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
-work presynth -logfile ncelab.log -errormax 15 -access +rwc -статус presynth.testbench:модуль
ncsim -Message -batch -cdslib ./cds.lib -hdlvar ./
hdl.var -logfile ncsim.log -errormax 15 -status presynth.testbench:модуль
4.5 Автоматташтыруу (Микрочип кирүү)
Төмөнкү скрипт file ModelSim run.do айлантат fileс конфигурацияга fileXcelium аркылуу симуляцияларды иштетүү үчүн керек.
Скрипт File Колдонуу
perl cadence_parser.pl presynth_run.do postsynth_run.do
postlayout_run.do Microsemi_Family
Cadence_Алдын ала_китепканалардын_жайгашкан жери
Cadence_parser.pl
#!/usr/bin/perl -w
##################################################### ##############################################
##################
#Колдонуу: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
Microsemi_Family Алдын ала түзүлгөн_Китепканалардын_жайгашкан жери#
##################################################### ##############################################
##################
POSIX колдонуу;
катуу колдонуу;
менин ($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);
subquesta_parser {
менин $ModelSim_run_do = $_[0];
менин $actel_family = $_[1];
менин $lib_location = $_[2];
my $state;
эгерде (-e “$ModelSim_run_do” )
{
ачык (INFILE,"$ModelSim_run_do");
менин @ModelSim_run_do =FILE>;
my $line;
if ( $ModelSim_run_do =~ m/(presynth)/)
{
`mkdir QUESTA_PRESYNTH`;
ачык (OUTFILE,”>QUESTA_PRESYNTH/presynth_questa.do”);
$state = $1;
} elsif ($ModelSim_run_do =~ m/(postsynth)/)
{
`mkdir QUESTA_POSTSYNTH`;
ачык (OUTFILE,”>QUESTA_POSTSINTH/postsynth_questa.do”);
$state = $1;
} elsif ( $ModelSim_run_do =~ м/(постлайт)/ )
{
`mkdir QUESTA_POSTLAYOUT`;
ачык (OUTFILE,”>QUESTA_POSTLAYOUT/postlayout_questa.do”);
$state = $1;
} башка
{
басып чыгаруу “Туура эмес киргизүүлөр берилген file\n”;
басып чыгаруу "#Usage: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
\”Китепканалардын_жайгашкан жери\”\n”;
}
foreach $line (@ModelSim_run_do)
{
#Жалпы операциялар
$line =~ s/..\/дизайнер.*симуляция\///g;
$line =~ s/$state/$state\_questa/g;
#басып чыгарууFILE “$line \n”;
if ($line =~ m/vmap\s+.*($actel_family)/)
{
басып чыгарууFILE “vmap $actel_family \”$lib_location\”\n”;
} elsif ($line =~ m/vmap\s+(.*._LIB)/)
{
$line =~ s/..\/component/..\/..\/component/g;
басып чыгарууFILE “$line \n”;
} elsif ($line =~ m/vsim/)
{
$line =~ s/vsim/vsim -novopt/g;
басып чыгарууFILE “$line \n”;
} башка
{
басып чыгарууFILE “$line \n”;
}
}
жабуу(INFILE);
жабууFILE);
} башка {
басып чыгаруу “$ModelSim_run_do жок. Симуляцияны кайра иштетүү \n”;
}
}
Siemens QuestaSim орнотуу/ModelSim орнотуу (Суроо бериңиз)
run.do fileLibero SoC тарабынан ModelSim Microsemi Editions аркылуу симуляциялар үчүн түзүлгөн s, QuestaSim/ModelSim SE/DE/PE аркылуу бир өзгөртүү менен симуляциялар үчүн колдонулушу мүмкүн. ModelSim ME/ModelSim Pro MEде run.do file, алдын ала түзүлгөн китепканалардын ордун өзгөртүү керек.
Маанилүү:
Демейки боюнча, ModelSim Pro MEден башка симуляция куралы моделдөө учурунда дизайнды оптималдаштырууну ишке ашырат, ал дизайн объектилери жана киргизүү стимулдары сыяктуу симуляциялык артефакттардын көрүнүүсүнө таасирин тийгизет.
Бул, адатта, татаал симуляциялар үчүн симуляциянын иштөө убактысын кыскартууга, өзүн өзү текшерүүчү тесттик стенддерди колдонууга жардам берет. Бирок, демейки оптималдаштыруу бардык симуляциялар үчүн ылайыктуу болбошу мүмкүн, айрыкча толкун терезеси аркылуу симуляциянын натыйжаларын графикалык түрдө текшерүүнү күткөн учурларда.
Бул оптималдаштыруудан келип чыккан маселелерди чечүү үчүн, дизайнга көрүнүүнү калыбына келтирүү үчүн симуляция учурунда тиешелүү буйруктарды жана тиешелүү аргументтерди кошуу керек. Куралга тиешелүү буйруктарды колдонууда симулятордун документтерин караңыз.
5.1 Айлана-чөйрөнүн өзгөрмөлөрү (Суроо бериңиз)
Төмөндө талап кылынган чөйрө өзгөрмөлөрү.
- LM_LICENSE_FILE: лицензияга жолду камтышы керек file.
- MODEL_TECH: QuestaSim орнотуусунун башкы каталогуна баруучу жолду аныктоо керек.
- PATH: MODEL_TECH көрсөткөн аткарылуучу жерди көрсөтүшү керек.
5.2 Mentor QuestaSim үчүн run.do конверсиялоо (Суроо бериңиз)
run.do fileLibero SoC тарабынан ModelSim Microsemi Editions аркылуу симуляциялар үчүн түзүлгөн s бир гана өзгөртүү менен QuestaSim/ModelSim_SE аркылуу симуляциялар үчүн колдонулушу мүмкүн.
Маанилүү: Баары QuestaSim менен окшоштурулган конструкциялар -novopt камтууга тийиш
run.do скриптиндеги vsim буйругу менен бирге параметр files.
5.3 Түзүлгөн китепкананы жүктөө (Суроо бериңиз)
Mentor Graphics QuestaSim үчүн китепканаларды Microsemiден жүктөп алыңыз webсайт.
Synopsys VCS орнотуу (Суроо бериңиз)
Microsemi тарабынан сунушталган агым VCSдеги Elaborate жана Compile агымына таянат. Бул документ скрипт камтыйт file бул run.do скриптин колдонот files Libero SoC тарабынан түзүлгөн жана орнотууну жаратат fileVCS симуляциясы үчүн зарыл. Сценарий file run.do колдонот file төмөнкүлөрдү жасоо.
- Китепкананын картасын түзүү file, ал synopsys_sim.setup аркылуу жасалат file VCS симуляциясы иштеп жаткан каталогдо жайгашкан.
- Shell сценарийин түзүү file VCS аркылуу дизайныңызды иштеп чыгуу жана түзүү.
6.1 Айлана-чөйрөнүн өзгөрмөлөрү (Суроо бериңиз)
Орнотууңуздун негизинде VCS үчүн ылайыктуу чөйрө өзгөрмөлөрүн орнотуңуз. VCS документтерине ылайык зарыл болгон чөйрө өзгөрмөлөрү:
- LM_LICENSE_FILE: лицензия серверине көрсөткүчтү камтышы керек.
- VCS_HOME: VCS орнотуусунун башкы каталогунун жайгашкан жерин көрсөтүшү керек.
- PATH: VCS_HOME каталогунун астындагы бин каталогуна көрсөткүчтү камтышы керек.
6.2 Түзүлгөн китепкананы жүктөө (Суроо бериңиз)
Microsemiден Synopsys VCS китепканаларын жүктөп алыңыз webсайт.
6.3 VCS Simulation Script File (Суроо бериңиз)
VCS орнотуп, дизайнды жана ар кандай run.do түзгөндөн кийин files Libero SoC, сиз керек:
- Китепкананын картасын түзүү file synopsys_sim.setup; бул file дизайн тарабынан колдонула турган бардык китепканалардын жайгашкан жерине көрсөткүчтөрдү камтыйт.
Маанилүү: The file аты өзгөрбөшү керек жана ал симуляция иштеп жаткан каталогдо болушу керек. Бул жерде мурункуampле мындай а file пресинтезди симуляциялоо үчүн.
ИШ > EFAULT
SmartFusion2:
presynth : ./presynth
DEFAULT : ./work - Ар кандай дизайнды иштеп чыгуу fileVCSдеги vlogan буйругун колдонуу менен, анын ичинде testbench. Бул буйруктар кабык сценарийине киргизилиши мүмкүн file. Төмөндө мурункуamprtl.v-де аныкталган дизайнды иштеп чыгуу үчүн зарыл болгон буйруктардын le-да аныкталган тесттик столу менен
testbench.v.
vlogan +v2k -work presynth rtl.v
vlogan +v2k -work presynth testbench.v - Төмөнкү буйрукту колдонуп VCS аркылуу дизайнды түзүңүз.
vcs –sim_res=1fs presynth.testbench
Кетүү туура функционалдуу моделдөө үчүн симуляциянын убакыт резолюциясы 1fs коюлушу керек. - Дизайн түзүлгөндөн кийин, төмөнкү буйрукту колдонуп симуляцияны баштаңыз.
./simv - Артка аннотацияланган симуляция үчүн VCS буйругу төмөнкү код блогунда көрсөтүлгөндөй болушу керек.
vcs postlayout.testbench –sim_res=1fs –sdf макс: .
аты>: file path> –gui –l postlayout.log
6.4 Чектөөлөр/Чектөөлөр (Суроо бериңиз)
Төмөндө Synopsys VCS орнотуусунун чектөөлөрү/бөтөнчөлөрү бар.
- VCS симуляцияларын Libero SoCтин Verilog долбоорлору үчүн гана иштетүүгө болот. VCS симуляторунда VHDL тилинин катуу талаптары бар, аларды Libero SoC автоматтык түрдө түзүлгөн VHDL канааттандырбайт files.
- Каалаган убакта симуляцияны токтотуу үчүн Verilog testbench'те $finish билдирүүсү болушу керек.
Маанилүү: качан симуляциялар GUI режиминде иштетилет, иштөө убактысы GUIде көрсөтүлүшү мүмкүн.
6.5 Сample Tcl жана Shell Script Fileс (Суроо бериңиз)
Төмөнкү Perl synopsys_sim.setup генерациясын автоматташтырат file ошондой эле тиешелүү кабык сценарийи fileдизайнды иштеп чыгуу, компиляциялоо жана имитациялоо үчүн зарыл.
Эгерде дизайн MSS колдонсо, test.vec көчүрүңүз file Libero SoC долбоорунун симуляция папкасында VCS симуляция папкасында жайгашкан. Кийинки бөлүмдөр s камтыйтample run.do files Libero SoC тарабынан түзүлгөн, анын ичинде тиешелүү китепкана картасы жана кабык сценарийи fileVCS симуляциясы үчүн зарыл.
6.5.1 Алдын ала синтез (Суроо бериңиз)
Presynth_run.do
акырын ACTELLIBNAME SmartFusion2 орнотуңуз
тынч PROJECT_DIR "/sqa/users/me/VCS_Tests/Test_DFF" орнотуңуз
эгерде {[file presynth/_info бар]} {
echo "INFO: Симуляция китепканасы пресинт мурунтан эле бар"
} башка {
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” -иш пресинт “${PROJECT_DIR}/stimulus/SD1_TB1.v”
vsim -L SmartFusion2 -L presynth -t 1fs presynth.SD1_TB1
толкун кошуу /SD1_TB1/*
log -r /* кошуу
1000ns чуркоо
presynth_main.csh
#!/bin/csh -f
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/
work/SD1/SD1.v”
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k “+incdir+${PROJECT_DIR}/stimulus” -work
пресинт "${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
WORK > DEFAULT
SmartFusion2: /VCS/SmartFusion2
presynth : ./presynth
DEFAULT : ./work
6.5.2 Постсинтез (Суроо бериңиз)
postsynth_run.do
акырын ACTELLIBNAME SmartFusion2 орнотуңуз
тынч PROJECT_DIR "/sqa/users/Me/VCS_Tests/Test_DFF" орнотуңуз
эгерде {[file postsynth/_info бар]} {
echo "INFO: симуляциялык китепкананын постсинти мурунтан эле бар"
} башка {
vlib постсинт
}
vmap постсинт постсинт
vmap SmartFusion2 “//idm/captures/pc/11_0_1_12_g4x/Designer/lib/ModelSim/precompiled/vlog/
SmartFusion2"
vlog -жумуш постсинти “${PROJECT_DIR}/synthesis/SD1.v”
vlog “+incdir+${PROJECT_DIR}/stimulus” -жумуш постсинти “${PROJECT_DIR}/stimulus/SD1_TB1.v”
vsim -L SmartFusion2 -L postsynth -t 1fs postsynth.SD1_TB1
толкун кошуу /SD1_TB1/*
log -r /* кошуу
1000ns чуркоо
журнал SD1_TB1/*
чыгуу
Postsynth_main.csh
#!/bin/csh -f
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
постсинт "${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
WORK > DEFAULT
SmartFusion2: /VCS/SmartFusion2
postsynth : ./postsynth
DEFAULT : ./work
6.5.3 Пост-макет (Суроо бериңиз)
postlayout_run.do
акырын ACTELLIBNAME SmartFusion2 орнотуңуз
тынч PROJECT_DIR "E:/ModelSim_Work/Test_DFF" орнотуңуз
эгерде {[file бар ../designer/SD1/simulation/postlayout/_info]} {
echo "INFO: Симуляция китепканасы ../дизайнер/SD1/симуляция/постлайюу мурунтан эле бар"
} башка {
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 -жумуш постлайуту “${PROJECT_DIR}/designer/SD1/SD1_ba.v”
vlog "+incdir+${PROJECT_DIR}/stimulus" -жумуш постлайюты "${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
толкун кошуу /SD1_TB1/*
log -r /* кошуу
1000ns чуркоо
Postlayout_main.csh
#!/bin/csh -f
PROJECT_DIR = "/VCS_Tests/Test_DFF" орнотуу
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k -work postlayout “${PROJECT_DIR}/
дизайнер/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 run.log
Synopsys_sim.setup
WORK > DEFAULT
SmartFusion2: /VCS/SmartFusion2
postlayout : ./postlayout
DEFAULT : ./workVCS
6.6 Автоматташтыруу (Суроо бериңиз)
Агымды төмөнкү Perl скриптин колдонуу менен автоматташтырууга болот file ModelSim run.do айландыруу үчүн fileVCS шайкеш кабык скриптине files, Libero SoC симуляция каталогунун ичинде тийиштүү каталогдорду түзүп, андан кийин симуляцияларды иштетиңиз.
Скриптти иштетиңиз file төмөнкү синтаксисти колдонуу.
perl vcs_parse.pl presynth_run.do postsynth_run.do postlayout_run.do
Vcs_parse_pl
#!/usr/bin/perl -w
################################################## ##########################
#
#Колдонуу: perl vcs_parse.pl presynth_run.do postsynth_run.do postlayout_run.do
#
################################################## ###########################
my ($presynth, $postsynth, $postlayout) = @ARGV;
if(система(“mkdir VCS_Presynth”)) {“mkdir ишке ашкан жок:\n” басып чыгаруу;}
if(система("mkdir VCS_Postsynth")) {"mkdir ишке ашкан жок:\n" басып чыгаруу;}
if(система(“mkdir VCS_Postlayout”)) {print “mkdir failed:\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 {
my $vlog = “/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k” ;
менин %LIB = ();
менин $file = $_[0] ;
менин $state = $_[1];
ачык(INFILE,”$file”) || өлүү “Ачууга болбойт File Себеби:$!”;
if ( $state eq "presynth" )
{
open(OUT1,”>presynth_main.csh”) || die "Буйрук түзө албайт File Себеби:$!”;
}
elsif ( $state eq "postsynth" )
{
open(OUT1,”>postsynth_main.csh”) || die "Буйрук түзө албайт File Себеби:$!”;
}
elsif ( $state eq "postlayout" )
{
open(OUT1,”>postlayout_main.csh”) || die "Буйрук түзө албайт File Себеби:$!”;
}
башка
{
print “Симуляция абалы жок \n” ;
}
open(OUT2,”>synopsys_sim.setup”) || die "Буйрук түзө албайт File Себеби:$!”;
# .csh file
print OUT1 “#!/bin/csh -f\n\n\n” ;
#ЖАЙГАШУУ FILE
print OUT2 “WORK > DEFAULT\n” ;
print OUT2 “SmartFusion2 : /sqa/users/Aditya/VCS/SmartFusion2\n” ;
ал эми ($line =FILE>)
{
Synopsys VCS орнотуу
эгерде ($line =~ м/тынч түрдө 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 “Темп = $темп \n” ;
$LIB{$temp}++;
}
chomp($line);
$line =~ s/^vlog/$vlog/ ;
$line =~ s/ //g;
print OUT1 “$line\n”;
}
elsif ($сап =~ m/vsim.*presynth\.(.*)/) || ($сап =~ m/vsim.*postsynth\.(.*)/) || ($сап
=~ m/vsim.*postlayout\.(.*)/) )
{
$tb = $1 ;
$tb =~ s/ //g;
chomp($tb);
#print “TB Name : $tb \n”;
if ( $line =~ m/sdf(.*)\.sdf/)
{
chomp($line);
$line = $1 ;
#print “LINE : $line \n” ;
эгерде ($сап =~ м/макс/)
{
$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 =~ с/мин \/// ;
$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 =~ 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 форматы
#$sdf = “-sdf max:testbench.M3_FIC32_0:${PROJECT_DIR}/designer/M3_FIC32/M3_FIC32_ba.sdf”; -VCS
SDF форматы
}
}
}
басып чыгаруу
OUT1 "\n\n"
;
if
( $state eq "presynth"
)
{
басып чыгаруу
OUT2 “presynth
: ./presynth\n”
;
басып чыгаруу
OUT1 "/cad_design/tools/vcs.dir/E-2011.03/bin/vcs
-sim_res=1fs presynth.$tb -l
compile.log\n”
;
}
elsif
( $state eq "postsynth"
)
{
басып чыгаруу
OUT2 “postsynth
: ./postsynth\n”
;
басып чыгаруу
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” ;
}
башка
{
print “Симуляция абалы жок \n” ;
}
foreach $i (ачкычтар %LIB)
{
#print “Ачкыч : $i Маани : $LIB{$i} \n” ;
print OUT2 “$i : ./$i\n” ;
}
print OUT1 “\n\n” ;
print OUT1 “./simv -l run.log\n” ;
print OUT2 “DEFAULT : ./work\n” ;
жабуу INFILE;
жабуу OUT1;
жабуу OUT2;
}
Кайра карап чыгуу таржымалы (Микрочип кирүү
Кайра карап чыгуу тарыхы документке киргизилген өзгөртүүлөрдү сүрөттөйт. Өзгөрүүлөр
акыркы басылмадан баштап кайра карап чыгуу боюнча тизмеленген.
Ревизия | Дата | Description |
A | 12/2023 | Бул редакцияга төмөнкүдөй өзгөртүүлөр киргизилди: • Документ Microchip үлгүсүнө айландырылды. Баштапкы ревизия. • Жаңыртылган бөлүм 5. Siemens QuestaSim Орнотуу/ModelSim Орнотуу симуляция жана оптималдаштыруу учурунда көрүнүүгө тийгизген таасирин түшүндүргөн жаңы эскертүүнү камтыйт. |
Microchip FPGA колдоо
Microchip FPGA продуктылар тобу ар кандай колдоо кызматтары менен өз өнүмдөрүн колдойт, анын ичинде Кардарларды тейлөө, Кардарларды техникалык колдоо борбору, webсайты жана дүйнөлүк сатуу кеңселери.
Кардарларга колдоо кызматы менен байланышуудан мурун Microchip онлайн ресурстарына баруу сунушталат, анткени алардын суроолоруна жооп берилген болушу мүмкүн.
аркылуу Техникалык колдоо борборуна кайрылыңыз webсайтында www.microchip.com/support. FPGA түзмөгүнүн бөлүгүнүн номерин айтып, тиешелүү иштин категориясын тандаңыз жана дизайнды жүктөңүз fileс техникалык колдоо ишин түзүү учурунда.
Продукциянын баасы, өнүмдөрдү жаңыртуу, жаңыртуу маалыматы, буйрутма статусу жана авторизация сыяктуу техникалык эмес колдоо үчүн Кардарларды тейлөө кызматы менен байланышыңыз.
- Түндүк Америкадан 800.262.1060 телефонуна чалыңыз
- Башка өлкөлөрдөн 650.318.4460 телефонуна чалыңыз
- Факс, дүйнөнүн каалаган жеринен, 650.318.8044
Микрочип маалыматы
Микрочип Webсайт
Microchip биздин аркылуу онлайн колдоо көрсөтөт webсайтында www.microchip.com/. Бул webсайт жасоо үчүн колдонулат fileс жана маалымат кардарларга оңой жеткиликтүү. жеткиликтүү мазмундун кээ бирлери төмөнкүлөрдү камтыйт:
- Продукт колдоо – Маалымат баракчалары жана каталар, колдонмонун эскертүүлөрү жана сampпрограммалар, дизайн ресурстары, колдонуучунун колдонмолору жана аппараттык камсыздоо документтери, акыркы программалык камсыздоо релиздери жана архивдик программа
- Жалпы техникалык колдоо – Көбүнчө берилүүчү суроолор (FAQ), техникалык колдоо сурамдары, онлайн талкуу топтору, Microchip дизайн өнөктөш программасынын мүчөлөрүнүн тизмеси
- Микрочиптин бизнеси – Продукцияны тандоо жана буйрутма берүү боюнча колдонмолор, Microchipтин акыркы пресс-релиздери, семинарлардын жана иш-чаралардын тизмеси, Microchip сатуу кеңселеринин тизмеси, дистрибьюторлор жана фабрика өкүлдөрү
Продукцияны өзгөртүү жөнүндө кабарлоо кызматы
Микрочиптин өнүмдөрүн өзгөртүү боюнча эскертме кызматы кардарларды Microchip өнүмдөрүнөн кабардар кылып турууга жардам берет. Жазылуучулар белгилүү бир продукт үй-бүлөсүнө же кызыккан өнүктүрүү куралына байланыштуу өзгөрүүлөр, жаңыртуулар, оңдоолор же каталар болгондо электрондук почта билдирүүсүн алышат.
Катталуу үчүн, өтүңүз www.microchip.com/pcn жана каттоо көрсөтмөлөрүн аткарыңыз.
Кардарларды колдоо
Microchip өнүмдөрүн колдонуучулар бир нече каналдар аркылуу жардам ала алышат:
- Дистрибьютор же өкүл
- Жергиликтүү сатуу кеңсеси
- Embedded Solutions Engineer (ESE)
- Техникалык колдоо
Кардарлар колдоо үчүн дистрибьюторуна, өкүлүнө же ESEге кайрылышы керек. Кардарларга жардам берүү үчүн жергиликтүү сатуу кеңселери да бар. Бул документте сатуу кеңселеринин жана жайгашкан жерлердин тизмеси камтылган.
Техникалык колдоо аркылуу жеткиликтүү webсайт: www.microchip.com/support
Микрочип түзмөктөрүнүн кодун коргоо өзгөчөлүгү
Microchip өнүмдөрүндөгү кодду коргоо функциясынын төмөнкү маалыматтарына көңүл буруңуз:
- Микрочип өнүмдөрү алардын микрочиптин маалымат баракчасында камтылган спецификацияларга жооп берет.
- Microchip анын өнүмдөрүнүн үй-бүлөсү максаттуу түрдө, иштөө спецификацияларында жана кадимки шарттарда колдонулганда коопсуз деп эсептейт.
- Микрочип өзүнүн интеллектуалдык менчик укуктарын баалайт жана агрессивдүү түрдө коргойт. Microchip продуктунун кодду коргоо функцияларын бузуу аракеттерине катуу тыюу салынат жана Digital Millennium Автордук укук Актынын бузулушу мүмкүн.
- Microchip же башка жарым өткөргүч өндүрүүчүсү да анын кодунун коопсуздугуна кепилдик бере албайт. Кодду коргоо биз буюмдун "сынгыс" экенине кепилдик беребиз дегенди билдирбейт.
Кодду коргоо дайыма өнүгүп турат. Микрочип биздин өнүмдөрдүн кодду коргоо функцияларын тынымсыз өркүндөтүүгө умтулат.
Юридикалык эскертүү
Бул басылма жана андагы маалымат Microchip өнүмдөрү менен гана колдонулушу мүмкүн, анын ичинде Microchip өнүмдөрүн сиздин тиркемеңиз менен долбоорлоо, сыноо жана интеграциялоо үчүн. Бул маалыматты башка жол менен колдонуу бул шарттарды бузат. Түзмөктүн тиркемелери тууралуу маалымат сизге ыңгайлуу болушу үчүн гана берилет жана жаңыртуулар менен алмаштырылышы мүмкүн. Колдонмоңуз сиздин спецификацияларыңызга жооп бериши үчүн сиздин милдетиңиз. Кошумча колдоо үчүн жергиликтүү Microchip сатуу кеңсеңизге кайрылыңыз же бул жерден кошумча колдоо алыңыз www.microchip.com/en-us/support/design-help/client-support-services.
БУЛ МААЛЫМАТ МИКРОЧИП МЕНЕН «БОЛГОНДОЙ» БЕРИЛГЕН. MICROCHIP ЭЧ кандай ачык же кыйыр түрдө, жазуу түрүндөгү же оозеки, мыйзамдуу же башка ТҮРЛҮРДӨ ЭМНЕ КАРАНДЫ ЭМЕС, БИР КАЧАН ЧЕКТЕБЕГЕН МААЛЫМАТТАРГА ТИЕШЕЛҮҮ БЕРБЕЙТ. САТЫЛУУЧУ ЖАНА БЕЛГИЛҮҮ МАКСАТКА ЖАРАКЧЫЛЫК ЖЕ АНЫН АБАЛЫНА, САПАТЫНА ЖЕ АТКАРУУСУНА БАЙЛАНЫШТУУ КЕПИЛДИКТЕР.
ЭЧ КАЧАН МИКРОЧИП КЫЙЫР ЭМЕС, АТАЙЫН, ЖАЗАЛУУЧУ, КОЧУШУП ЖАТКАН ЖЕ ЖОГОЛУУГА, ЗЫЯНДАРГА, ЧЫГЫМДАРГА ЖЕ КАЧАН ЖООПКЕРЧИЛИК ЭМЕС. МИКРОЧИП МҮМКҮНЧҮЛҮГҮ ЖӨНҮНДӨ КЕҢЕШ БЕРИЛСЕ ЖЕ ЗЫЯНДАР АЛЫНГАН БОЛСО ДА. МЫЙЗАМ ТАРАПКАН ТОЛУК ДАЛАМДА МИКРОЧИПТИН БААРДЫК ДОоматтар боюнча ЖООПКЕРЧИЛИГИ МААЛЫМАТТАРГА ЖЕ АНЫ ПАЙДАЛАНУУГА БАЙЛАНЫШКАН КАЧАН ЖООПКЕРЧИЛИК ЖӨНҮНДӨГҮ ЖӨНҮНДӨ АШЫП БЕРБЕЙТ. МААЛЫМАТ.
Микрочип түзүлүштөрүн жашоону колдоо жана/же коопсуздук тиркемелеринде колдонуу толугу менен сатып алуучуга жүктөлөт жана сатып алуучу микрочипти мындай колдонуудан келип чыккан бардык жана бардык зыяндардан, дооматтардан, костюмдардан же чыгашалардан коргоого, ордун толтурууга жана зыянсыз кармоого макул болот. Эгерде башкасы көрсөтүлбөсө, эч кандай лицензия кыйыр түрдө же башка түрдө Microchip интеллектуалдык менчик укуктарына ылайык берилбейт.
Соода белгилери
Микрочиптин аты жана логотиби, Microchip логотиби, Adaptec, AVR, AVR логотиби, AVR Freaks, BesTime, BitCloud, CryptoMemory, CryptoRF, dsPIC, flexPWR, HELDO, IGLOO, JukeBlox, KeeLoq, Kleer, LANCheck, maMDlu, maMDlu MediaLB, megaAVR, Microsemi, Microsemi логотиби, MOST, MOST логотиби, MPLAB, OptoLyzer, PIC, picoPower, PICSTART, PIC32 логотиби, PolarFire, Prochip Designer, QTouch, SAM-BA, SenGenuity, SpyNIC, SST, SST Logometre, Supericom, Sym , SyncServer, Tachyon, TimeSource, tinyAVR, UNI/O, Vectron жана XMEGA - АКШда жана башка өлкөлөрдө Microchip Technology Incorporated компаниясынын катталган соода белгилери.
AgileSwitch, APT, ClockWorks, Embedded Control Solutions Company, EtherSynch, Flashtec, Hyper Speed Control, HyperLight Load, Libero, motorBench, mTouch, Powermite 3, Precision Edge, ProASIC, ProASIC Plus, ProASIC Plus логотиби, Quiet- Wire, SmartFu SyncWorld, Temux, TimeCesium, TimeHub, TimePictra, TimeProvider, TrueTime жана ZL АКШдагы Microchip Technology Incorporated компаниясынын катталган соода белгилери
Коңшу ачкычты басуу, AKS, санариптик доорго карата аналогдук, каалаган конденсатор, AnyIn, AnyOut, кеңейтилген которуштуруу, BlueSky, BodyCom, Clockstudio, CodeGuard, CryptoAuthentication, CryptoAutomotive, CryptoCompanion, MattoCompanion, D.PDEMMageds, CryptoCompanion, Matt. , DAM, ECAN, Espresso T1S, EtherGREEN, GridTime, IdealBridge, In-Circuit Serial Programming, ICSP, INICnet, Intelligent Paralleling, IntelliMOS, Чиптер аралык туташуу, JitterBlocker, Дисплейдеги баскыч, KoD, maxCryView, memBrain, Mindi, MiWi, MPASM, MPF, MPLAB Certified логотиби, MPLIB, MPLINK, MultiTRAK, NetDetach, Бардык нерсени билүүчү 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, Толук туруктуулук, ишенимдүү убакыт, TSHARC, USBCheck, VariSense, VectorBlox, VeriPHY, ViewSpan, WiperLock, XpressConnect жана ZENA Microchip Technology Incorporated компаниясынын соода белгилери
АКШда жана башка өлкөлөрдө.
SQTP - АКШдагы Microchip Technology Incorporated компаниясынын тейлөө белгиси
Adaptec логотиби, Frequency on Demand, Silicon Storage Technology жана Symmcom башка өлкөлөрдө Microchip Technology Inc. компаниясынын катталган соода белгилери болуп саналат.
GestIC башка өлкөлөрдө Microchip Technology Germany II GmbH & Co. KG, Microchip Technology Inc. туунду компаниясынын катталган соода белгиси.
Бул жерде айтылган бардык башка соода белгилери алардын тиешелүү компанияларынын менчиги болуп саналат.
© 2023, Microchip Technology Incorporated жана анын туунду компаниялары. Бардык укуктар корголгон.
ISBN: 978-1-6683-3694-6
Сапатты башкаруу системасы
Microchip сапатты башкаруу системалары тууралуу маалымат алуу үчүн, кириңиз www.microchip.com/quality.
АМЕРИКА | АЗИЯ/ТЫНЧ ОФИКА | АЗИЯ/ТЫНЧ ОФИКА | ЕВРОПА |
Корпоративдик кеңсе 2355 West Chandler Blvd. Чандлер, AZ 85224-6199 Тел: 480-792-7200 Факс: 480-792-7277 Техникалык колдоо: www.microchip.com/support Web Дарек: www.microchip.com Атланта Дулут, GA Тел: 678-957-9614 Факс: 678-957-1455 Остин, TX Тел: 512-257-3370 Бостон Вестборо, MA Тел: 774-760-0087 Факс: 774-760-0088 Чикаго Itasca, IL Тел: 630-285-0071 Факс: 630-285-0075 Даллас Аддисон, Техас Тел: 972-818-7423 Факс: 972-818-2924 Детройт Нови, MI Тел: 248-848-4000 Хьюстон, TX Тел: 281-894-5983 Индианаполис Ноблсвилл, ИН Тел: 317-773-8323 Факс: 317-773-5453 Тел: 317-536-2380 Лос-Анжелес Mission Viejo, CA Тел: 949-462-9523 Факс: 949-462-9608 Тел: 951-273-7800 Роли, NC Тел: 919-844-7510 Нью-Йорк, Нью-Йорк Тел: 631-435-6000 Сан-Хосе, CA Тел: 408-735-9110 Тел: 408-436-4270 Канада – Торонто Тел: 905-695-1980 Факс: 905-695-2078 |
Австралия – Сидней Тел: 61-2-9868-6733 Кытай – Пекин Тел: 86-10-8569-7000 Кытай – Чэнду Тел: 86-28-8665-5511 Кытай – Чунцин Тел: 86-23-8980-9588 Кытай – Дунгуан Тел: 86-769-8702-9880 Кытай – Гуанчжоу Тел: 86-20-8755-8029 Кытай – Ханчжоу Тел: 86-571-8792-8115 Кытай – Гонконг САР Тел: 852-2943-5100 Кытай – Нанкин Тел: 86-25-8473-2460 Кытай – Циндао Тел: 86-532-8502-7355 Кытай – Шанхай Тел: 86-21-3326-8000 Кытай – Шэньян Тел: 86-24-2334-2829 Кытай – Шэньчжэнь Тел: 86-755-8864-2200 Кытай – Сучжоу Тел: 86-186-6233-1526 Кытай - Ухань Тел: 86-27-5980-5300 Кытай – Сиань Тел: 86-29-8833-7252 Кытай – Сямэнь Тел: 86-592-2388138 Кытай – Чжухай Тел: 86-756-3210040 |
Индия – Бангалор Тел: 91-80-3090-4444 Индия – Нью-Дели Тел: 91-11-4160-8631 Индия - Пуна Тел: 91-20-4121-0141 Япония – Осака Тел: 81-6-6152-7160 Япония – Токио Тел: 81-3-6880- 3770 Корея – Тэгу Тел: 82-53-744-4301 Корея – Сеул Тел: 82-2-554-7200 Малайзия – Куала-Лумпур Тел: 60-3-7651-7906 Малайзия – Пенанг Тел: 60-4-227-8870 Филиппин – Манила Тел: 63-2-634-9065 Сингапур Тел: 65-6334-8870 Тайвань – Хсин Чу Тел: 886-3-577-8366 Тайвань – Каосюнг Тел: 886-7-213-7830 Тайвань – Тайбэй Тел: 886-2-2508-8600 Таиланд – Бангкок Тел: 66-2-694-1351 Вьетнам – Хо Ши Мин Тел: 84-28-5448-2100 |
Австрия – Велс Тел: 43-7242-2244-39 Факс: 43-7242-2244-393 Дания – Копенгаген Тел: 45-4485-5910 Факс: 45-4485-2829 Финляндия – Эспоо Тел: 358-9-4520-820 Франция – Париж Tel: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79 Германия – Гарчинг Тел: 49-8931-9700 Германия – Хаан Тел: 49-2129-3766400 Германия – Хайльбронн Тел: 49-7131-72400 Германия – Карлсруэ Тел: 49-721-625370 Германия – Мюнхен Tel: 49-89-627-144-0 Fax: 49-89-627-144-44 Германия – Розенхайм Тел: 49-8031-354-560 Израиль – Раанана Тел: 972-9-744-7705 Италия – Милан Тел: 39-0331-742611 Факс: 39-0331-466781 Италия – Падова Тел: 39-049-7625286 Нидерланды – Друнен Тел: 31-416-690399 Факс: 31-416-690340 Норвегия – Тронхейм Тел: 47-72884388 Польша – Варшава Тел: 48-22-3325737 Румыния – Бухарест Tel: 40-21-407-87-50 Испания – Мадрид Tel: 34-91-708-08-90 Fax: 34-91-708-08-91 Швеция – Гетеберг Tel: 46-31-704-60-40 Швеция – Стокгольм Тел: 46-8-5090-4654 Улуу Британия - Вокингем Тел: 44-118-921-5800 Факс: 44-118-921-5820 |
© 2023 Microchip Technology Inc. жана анын туунду компаниялары
DS50003627A -
Документтер / Ресурстар
![]() |
MICROCHIP Libero SoC симуляциялык китепкана программасы [pdf] Колдонуучунун колдонмосу DS50003627A, Libero SoC Simulation Library Программасы, SoC Simulation Library Software, Simulation Library Software, Library Software, Software |