Libero SoC သရုပ်သကန်
စာကြည့်တိုက် တည်ဆောက်မှု ညွှန်ကြားချက်များ
နိဒါန်း
ဤစာတမ်း၏ရည်ရွယ်ချက်မှာ Libero SoC ပရောဂျက်ကို ထည့်သွင်းအသုံးပြု၍ သရုပ်ဖော်ပတ်ဝန်းကျင်ကို သတ်မှတ်ရန် လုပ်ငန်းစဉ်ကို ဖော်ပြရန်ဖြစ်သည်။ ဤစာရွက်စာတမ်းသည် Libero SoC v11.9 နှင့် အသစ်ထွက်ရှိထားသောဆော့ဖ်ဝဲလ်အသစ်များနှင့်အတူ အသုံးပြုရန်အတွက် ပံ့ပိုးပေးထားသည့် ကြိုတင်စုစည်းထားသောစာကြည့်တိုက်များနှင့် သက်ဆိုင်ပါသည်။ ပေးထားသော စာကြည့်တိုက်များကို Verilog အတွက် စုစည်းထားပါသည်။ VHDL အသုံးပြုသူများသည် ရောစပ်မုဒ် သရုပ်ဖော်ခြင်းကို ခွင့်ပြုသော လိုင်စင်တစ်ခု လိုအပ်သည်။
စုစည်းထားသော simulation စာကြည့်တိုက်များကို အောက်ပါကိရိယာများအတွက် ရရှိနိုင်ပါသည်။
- Aldec Active-HDL
- Aldec Riviera-PRO
- Cadence Incisive Enterprise နှင့် Xcelium
- Siemens QuestaSim
- Synopsys VCS
မတူညီသော Simulator အတွက် စာကြည့်တိုက်တစ်ခု တောင်းဆိုရန်၊ ဆက်သွယ်ပါ။ Microchip နည်းပညာပံ့ပိုးမှု.
Libero SoC ပေါင်းစပ်မှု
Libero SoC သည် run.do ကိုဖန်တီးခြင်းဖြင့် ModelSim ME ကို အသုံးပြု၍ သရုပ်တူကူးခြင်းကို ပံ့ပိုးပေးသည်။ file. ဒီ file Simulation ကို စနစ်ထည့်သွင်းရန်နှင့် လုပ်ဆောင်ရန် ModelSim ME/ModelSim Pro ME မှ အသုံးပြုပါသည်။ အခြား simulation ကိရိယာများကို အသုံးပြုရန်၊ သင်သည် ModelSim ME/ModelSim Pro ME run.do ကို ထုတ်လုပ်ပြီး Tcl script ကို ပြင်ဆင်နိုင်သည်။ file သင့် Simulator နှင့် ကိုက်ညီသော command များကို အသုံးပြုရန်။
1.1 Libero SoC Tcl File မျိုးဆက် (မေးခွန်းတစ်ခုမေးပါ။)
Libero SoC တွင် ဒီဇိုင်းကို ဖန်တီးပြီး ထုတ်လုပ်ပြီးနောက်၊ ဒီဇိုင်းအဆင့်အားလုံး (presynth၊ postsynth နှင့် post-layout) အောက်ရှိ ModelSim ME/ModelSim Pro ME သရုပ်ဖော်မှုကို စတင်ပါ။ ဤအဆင့်သည် run.do ကိုထုတ်ပေးသည်။ file ဒီဇိုင်းအဆင့်တစ်ခုစီအတွက် ModelSim ME/ModelSim Pro ME အတွက်။
အရေးကြီးသည်- simulation run တစ်ခုစီကို စတင်ပြီးနောက်၊ အလိုအလျောက်ထုတ်ပေးသော run.do ကို အမည်ပြောင်းပါ။ file Libero SoC သည် ၎င်းကို overwrite လုပ်ခြင်းမှ ကာကွယ်ရန် Simulation directory အောက်တွင် file. ဟောင်းအတွက်ample files ကို presynth_run.do၊ postsynth_run.do နှင့် postlayout_run.do ဟု အမည်ပြောင်းနိုင်ပါသည်။
Active-HDL နှင့် Riviera-Pro အတွက် Aldec Setup (မေးခွန်းတစ်ခုမေးပါ။)
run.do file ModelSim ME/ModelSim Pro ME မှအသုံးပြုသော Aldec simulators ကိုအသုံးပြု၍ သရုပ်ဖော်ခြင်းအတွက် ပြုပြင်ပြီးအသုံးပြုနိုင်ပါသည်။
2.1 Environment Variable (မေးခွန်းတစ်ခုမေးပါ။)
သင့်ပတ်ဝန်းကျင်ကို သင့်လိုင်စင်အဖြစ် ပြောင်းလဲသတ်မှတ်ပါ။ file တည်နေရာ-
LM_LICENSE_FILE: လိုင်စင်ဆာဗာသို့ ညွှန်ပြချက်တစ်ခု ထည့်သွင်းရပါမည်။
2.2 ဒေါင်းလုဒ်လုပ်ထားသော စာကြည့်တိုက် (မေးခွန်းတစ်ခုမေးပါ။)
Aldec Active-HDL နှင့် Aldec Riviera-PRO အတွက် စာကြည့်တိုက်များကို Microchip မှ ဒေါင်းလုဒ်လုပ်ပါ။ website.
2.3 Aldec simulation အတွက် run.do ကို ပြောင်းခြင်း (မေးခွန်းတစ်ခုမေးပါ။)
run.do fileActive-HDL နှင့် Riviera-Pro ကိရိယာကို အသုံးပြု၍ စီစစ်ရန်အတွက် Libero SoC မှထုတ်လုပ်ထားသော s ကို ပြောင်းလဲမှုတစ်ခုတည်းဖြင့် Active-HDL နှင့် Riviera-Pro ကိုအသုံးပြု၍ စီစစ်ရန်အတွက်အသုံးပြုနိုင်ပါသည်။ အောက်ပါဇယားသည် ModelSim run.do တွင် ပြင်ဆင်ရန် Aldec-equivalent commands များကို စာရင်းပြုစုထားသည်။ file.
ဇယား ၂-၁။ Aldec ညီမျှသော အမိန့်များ
ModelSim | Active-HDL |
vlog | စကားသံ |
vcom | acom |
vlib | alib |
vsim | asim |
vmap | amap |
အောက်ပါအတိုင်းဖြစ်ပါသည်။ampAldec Simulators များနှင့်ဆက်စပ်သော le run.do
- လက်ရှိအလုပ်လုပ်နေသောလမ်းညွှန်၏တည်နေရာကိုသတ်မှတ်ပါ။
dsn ကိုသတ်မှတ်ပါ။ - အလုပ်လုပ်သောစာကြည့်တိုက်အမည်ကိုသတ်မှတ်ပါ၊ ၎င်း၏တည်နေရာကိုမြေပုံဆွဲပါ၊ ထို့နောက် Microchip FPGA မိသားစု၏တည်နေရာကိုမြေပုံဆွဲပါ။
ကြိုတင်စုစည်းထားသော စာကြည့်တိုက်များ (ဥပမာample၊ SmartFusion2) သင်သည် သင်၏ ဒီဇိုင်းကို လုပ်ဆောင်နေပါသည်။
alib presynth
amap presynth presynth
AMap SmartFusion ၂ - လိုအပ်သော HDL အားလုံးကို စုစည်းပါ။ files လိုအပ်သောစာကြည့်တိုက်နှင့်အတူဒီဇိုင်းအတွက်အသုံးပြုသည်။
alog -work presynth temp.v (Verilog အတွက်)
alog -work presynth testbench.v
acom –work presynth temp.vhd (Vhdl အတွက်)
acom –work presynth testbench.vhd - ဒီဇိုင်းကို အတုယူပါ။
asim –L SmartFusion2 –L presynth –t 1ps presynth.testbench
10 us ကို run ပါ။
2.4 သိထားသော ပြဿနာများ (မေးခွန်းတစ်ခုမေးပါ။)
ဤကဏ္ဍတွင် သိရှိထားသော ပြဿနာများနှင့် ကန့်သတ်ချက်များကို ဖော်ပြထားပါသည်။
- Riviera-PRO ကို အသုံးပြု၍ စုစည်းထားသော စာကြည့်တိုက်များသည် ပလပ်ဖောင်း သီးသန့်ဖြစ်သည် (ဆိုလိုသည်မှာ 64-bit စာကြည့်တိုက်များကို 32-bit platform ပေါ်တွင် လုပ်ဆောင်၍ မရပါ။
- SERDES/MDDR/FDDR ပါဝင်သော ဒီဇိုင်းများအတွက်၊ သင်၏ run.do တွင် အောက်ပါရွေးချယ်မှုကို အသုံးပြုပါ။ files သည် ၎င်းတို့၏ ဒီဇိုင်းများကို စုစည်းပြီးနောက် simulation များကို လုပ်ဆောင်နေစဉ်-
– Active-HDL- asim –o2
- Riviera-PRO- asim –O2 (presynth နှင့် post-layout simulations အတွက်) နှင့် asim –O5 (post- layout simulations အတွက်)
Active-HDL နှင့် Riviera-Pro အတွက် Aldec စနစ်ထည့်သွင်းမှုတွင် အောက်ပါ SAR များ ရှိသည်။ ပိုမိုသိရှိလိုပါက ဆက်သွယ်ပါ။ Microchip နည်းပညာပံ့ပိုးမှု. - SAR 49908 – Active-HDL- သင်္ချာတုံးခြင်းခြင်း simulations အတွက် VHDL အမှား
- SAR 50627 – Riviera-PRO 2013.02- SERDES ဒီဇိုင်းများအတွက် သရုပ်ဖော်အမှားများ
- SAR 50461 – Riviera-PRO- သရုပ်ဖော်မှုများတွင် asim -O2/-O5 ရွေးချယ်မှု
Cadence Incisive Setup (မေးခွန်းတစ်ခုမေးပါ။)
ဇာတ်ညွှန်းဖန်တီးရန် လိုအပ်သည်။ file ModelSim ME/ModelSim Pro ME run.do နှင့် ဆင်တူသည်။
Cadence Incisive Simulator ဤအဆင့်များကို လိုက်နာပြီး ဇာတ်ညွှန်းဖန်တီးပါ။ file NCSim သို့မဟုတ် script ကိုသုံးပါ။ file
ModelSim ME/ModelSim Pro ME run.do ကို ပြောင်းရန် ထောက်ပံ့ပေးသည်။ files ကို configuration ထဲသို့ထည့်ပါ။ files
NCSim ကိုအသုံးပြု၍ simulations ကို run ရန်လိုအပ်သည်။
အရေးကြီး- Cadence Incisive Enterprise ၏ ဗားရှင်းအသစ်များ ထုတ်ဝေခြင်းကို ရပ်တန့်လိုက်ပါပြီ။
Simulator နှင့် Xcelium Simulator ကိုစတင်ပံ့ပိုးခဲ့သည်။
3.1 ပတ်ဝန်းကျင် ပြောင်းလဲမှုများ (မေးခွန်းတစ်ခုမေးပါ။)
Cadence Incisive simulator ကို run ရန်၊ အောက်ပါ ပတ်ဝန်းကျင် ကိန်းရှင်များကို သတ်မှတ်ပါ-
- LM_LICENSE_FILE: လိုင်စင်အတွက် ညွှန်ပြချက်တစ်ခု ပါဝင်ရမည်။ file.
- cds_root- Cadence Incisive Installation ၏ မူလလမ်းညွှန်တည်နေရာကို ညွှန်ပြရပါမည်။
- PATH- cds_root မှညွှန်ပြသော tools directory အောက်ရှိ bin တည်နေရာကိုညွှန်ပြရမည်၊
$cds_root/tools/bin/64bit (64-bit စက်အတွက်နှင့် 32-bit စက်အတွက် $cds_root/tools/bin)။
64-bit နှင့် 32-bit လည်ပတ်မှုစနစ်များကြားတွင် ကူးပြောင်းမှုတစ်ခုအတွက် တူညီသောပတ်ဝန်းကျင်ကို သတ်မှတ်ရန် နည်းလမ်းသုံးမျိုးရှိပါသည်။
Case 1- PATH Variable
အောက်ပါ command ကို run ပါ။
set path = (install_dir/tools/bin/64bit $path) 64bit စက်များအတွက် လည်းကောင်း၊
set path = (install_dir/tools/bin $path) 32bit စက်များအတွက်
Case 2- -64bit Command-line Option ကိုအသုံးပြုခြင်း။
command-line တွင် 64bit executable ကိုခေါ်ဆိုရန်အတွက် -64bit option ကိုသတ်မှတ်ပါ။
Case 3- INCA_64BIT သို့မဟုတ် CDS_AUTO_64BIT Environment Variable ကို သတ်မှတ်ခြင်း
INCA_64BIT variable ကို boolean အဖြစ် သတ်မှတ်သည်။ သင်သည် ဤကိန်းရှင်ကို မည်သည့်တန်ဖိုး သို့မဟုတ် null စာကြောင်းအဖြစ် သတ်မှတ်နိုင်သည်။
setenv INCA_64BIT
အရေးကြီးသည် INCA_64BIT ပတ်ဝန်းကျင် ပြောင်းလဲမှုသည် IC ကိရိယာများကဲ့သို့သော အခြားသော Cadence ကိရိယာများကို မထိခိုက်စေပါ။ သို့သော်၊ Incisive ကိရိယာများအတွက်၊ INCA_64BIT ကိန်းရှင်သည် CDS_AUTO_64BIT ပတ်ဝန်းကျင် ကိန်းရှင်အတွက် ဆက်တင်ကို အစားထိုးသည်။ INCA_64BIT ပတ်ဝန်းကျင် ပြောင်းလဲမှုအား သတ်မှတ်ပါက၊ Incisive ကိရိယာများအားလုံးသည် 64-ဘစ်မုဒ်တွင် လုပ်ဆောင်သည်။ setenv CDS_AUTO_64BIT ပါဝင်သည်-INCA
အရေးကြီးသည် string INCA သည် စာလုံးကြီးဖြင့် ဖြစ်ရမည်။ executable များအားလုံးကို 32-bit mode သို့မဟုတ် 64-bit mode တွင် run ရမည်၊ အောက်ပါကဲ့သို့ executable တစ်ခုပါဝင်ရန် variable ကို မသတ်မှတ်ပါနှင့်။
setenv CDS_AUTO_64BIT ပါဝင်သည်- ncelab
IC ကိရိယာများကဲ့သို့ အခြားသော Cadence ကိရိယာများသည် 64-bit သို့မဟုတ် 32-bit executables ရွေးချယ်မှုကို ထိန်းချုပ်ရန် CDS_AUTO_64BIT ပတ်၀န်းကျင် variable ကို အသုံးပြုပါသည်။ အောက်ဖော်ပြပါဇယားသည် မုဒ်များအားလုံးတွင် Incisive tools နှင့် IC ကိရိယာများကို run ရန် CDS_AUTO_64BIT variable ကို မည်သို့သတ်မှတ်နိုင်သည်ကို ပြသထားသည်။
ဇယား ၃-၁။ CDS_AUTO_3BIT ကိန်းရှင်များ
CDS_AUTO_64BIT ပြောင်းလဲနိုင်သော | Incisive Tools များ | IC ကိရိယာများ |
setenv CDS_AUTO_64BIT ALL | 64 bit ပါ။ | 64 bit ပါ။ |
setenv CDS_AUTO_64BIT မရှိပါ။ | 32 bit ပါ။ | 32 bit ပါ။ |
setenv CDS_AUTO_64BIT EXCLUDE-ic_binary | 64 bit ပါ။ | 32 bit ပါ။ |
setenv CDS_AUTO_64BIT EXCLUDE-INCA | 32 bit ပါ။ | 64 bit ပါ။ |
အရေးကြီးသည်- Incisive tools အားလုံးကို 32-bit မုဒ် သို့မဟုတ် 64-bit မုဒ်တွင် လုပ်ဆောင်ရမည်ဖြစ်ပြီး၊ အောက်ပါအတိုင်း သီးခြားလုပ်ဆောင်နိုင်သော executable ကိုဖယ်ထုတ်ရန် EXCLUDE ကို အသုံးမပြုပါနှင့်- setenv CDS_AUTO_64BIT EXCLUDE:ncelab
အကယ်၍ သင်သည် Incisive tools (setenv CDS_AUTO_64BIT EXCLUDE:INCA) ကိုဖယ်ထုတ်ရန် CDS_AUTO_64BIT variable ကို သတ်မှတ်ပါက၊ Incisive tools အားလုံးကို 32-bit မုဒ်တွင် လုပ်ဆောင်ပါသည်။ သို့သော်၊ -64bit command-line option သည် ပတ်ဝန်းကျင် variable ကို လွှမ်းမိုးထားသည်။
အောက်ပါဖွဲ့စည်းပုံ files သည် သင့်ဒေတာကို စီမံခန့်ခွဲရန်နှင့် သရုပ်ဖော်ကိရိယာများနှင့် အသုံးအဆောင်များ၏ လည်ပတ်မှုကို ထိန်းချုပ်ရန် ကူညီပေးသည်-
- စာကြည့်တိုက်မြေပုံ file (cds.lib)—သင့်ဒီဇိုင်းတည်နေရာအတွက် ယုတ္တိတန်သောအမည်ကို သတ်မှတ်သည်။
- စာကြည့်တိုက်များနှင့် ၎င်းတို့ကို ရုပ်ပိုင်းဆိုင်ရာလမ်းညွှန်အမည်များဖြင့် ပေါင်းစပ်ပေးသည်။
- ပြောင်းလွဲမှုများ file (hdl.var)—ဆင်တူခြင်းကိရိယာများနှင့် အသုံးအဆောင်များ၏ အပြုအမူအပေါ် သက်ရောက်မှုရှိသော ကိန်းရှင်များကို သတ်မှတ်သည်။
3.2 ဒေါင်းလုဒ်လုပ်ထားသော စာကြည့်တိုက် (မေးခွန်းတစ်ခုမေးပါ။)
Microsemi's မှ Cadence Incisive အတွက် စာကြည့်တိုက်များကို ဒေါင်းလုဒ်လုပ်ပါ။ website.
3.3 NCSim Script ကိုဖန်တီးခြင်း။ File (မေးခွန်းတစ်ခုမေးပါ။)
run.do ၏ကော်ပီဖန်တီးပြီးနောက် files၊ NCSim ကို အသုံးပြု၍ သင်၏ simulation ကို run ရန် ဤအဆင့်များကို လုပ်ဆောင်ပါ။
- cds.lib ဖန်တီးပါ။ file ၎င်းသည် ဝင်ရောက်နိုင်သော စာကြည့်တိုက်များနှင့် ၎င်းတို့၏တည်နေရာကို သတ်မှတ်ပေးသည်။ ဟိ file ဒစ်ဂျစ်တယ် ယုတ္တိအမည်များကို ၎င်းတို့၏ ရုပ်ပိုင်းဆိုင်ရာ လမ်းညွှန်လမ်းကြောင်းများသို့ မြေပုံညွှန်းဖော်ပြချက်များ ပါရှိသည်။ ဟောင်းအတွက်ample၊ သင်သည် presynth simulation ကိုလုပ်ဆောင်နေပါက cds.lib ကိုအသုံးပြုပါ။ file အောက်ပါ codeblock တွင်ပြထားသည့်အတိုင်းရေးထားသည်။
presynth ./presynth ကို သတ်မှတ်ပါ။
COREAHBLITE_LIB ./COREAHBLITE_LIB ကို သတ်မှတ်ပါ။
smartfusion ကိုသတ်မှတ်ပါ ၂ - hdl.var ဖန်တီးပါ။ fileစိတ်ကြိုက်ဖွဲ့စည်းမှုတစ်ခု file သင်၏ ဒီဇိုင်းပတ်ဝန်းကျင်ကို မည်သို့ configure လုပ်ထားသည်ကို ဆုံးဖြတ်ပေးသည့် configuration variable များပါရှိသည်။ အောက်ပါကိန်းရှင် files တို့ ပါဝင်သည်-
- compiler သည် compiler objects နှင့် အခြားရရှိလာသော data များကို သိမ်းဆည်းထားသည့် work library ကို သတ်မှတ်ရန် အသုံးပြုသည့် variable များ။
– Verilog အတွက်၊ ကိန်းရှင်များ (LIB_MAP၊ VIEW_MAP၊ WORK) စာကြည့်တိုက်များနှင့် သတ်မှတ်ရန် အသုံးပြုသည်။ views သည် ဥပမာများကို ဖြေရှင်းသောအခါတွင် ရှာဖွေရန်။
- compiler၊ elaborator နှင့် simulator command-line ရွေးချယ်မှုများနှင့် အကြောင်းပြချက်များကို သတ်မှတ်ရန် သင့်အား ခွင့်ပြုသည့် ကိန်းရှင်များ။
presynth simulation ၏ဖြစ်ရပ်တွင် exampအထက်မှာ ပြထားတဲ့အတိုင်း RTL သုံးမျိုး ရှိတယ်လို့ ဆိုပါစို့ files- av၊ bv နှင့် testbench.v၊ presynth၊ COREAHBLITE_LIB နှင့် presynth libraries အသီးသီးသို့ စုစည်းရန် လိုအပ်သည်။ hdl.var file အောက်ပါ codeblock တွင်ပြထားသည့်အတိုင်းရေးနိုင်သည်။
အလုပ် presynth ကို သတ်မှတ်ပါ။
PROJECT_DIR ကို သတ်မှတ်ပါ။ files>
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/av => presynth )
LIB_MAP သတ်မှတ်ပါ ($LIB_MAP၊ ${PROJECT_DIR}/bv => COREAHBLITE_LIB)
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/testbench.v => presynth )
LIB_MAP သတ်မှတ်ရန် ($LIB_MAP၊ + => presynth ) - ဒီဇိုင်းကို စုစည်းပါ။ files ncvlog option ကို အသုံးပြု.
ncvlog +incdir+ –cdslib ./cds.lib –hdlvar ./hdl.var –logfile
ncvlog.log –update –linedebug av bv testbench.v - ncelab ကို အသုံးပြု၍ ဒီဇိုင်းကို အသေးစိတ်ဖော်ပြပါ။ သရုပ်ဖော်သူသည် ဒီဇိုင်းရှိ instantiation နှင့် configuration အချက်အလက်များအပေါ် အခြေခံ၍ ဒီဇိုင်းဆိုင်ရာ အထက်တန်းအဆင့်ကို တည်ဆောက်ပြီး၊ အချက်ပြချိတ်ဆက်မှုကို ချမှတ်ကာ ဒီဇိုင်းရှိ အရာဝတ္ထုအားလုံးအတွက် ကနဦးတန်ဖိုးများကို တွက်ချက်ပေးပါသည်။ အသေးစိတ်ဖော်ပြသော ဒီဇိုင်းဆိုင်ရာ အထက်တန်းပြဇယားကို သရုပ်ဖော်ခြင်းလျှပ်တစ်ပြက်တွင် သိမ်းဆည်းထားပြီး၊ ယင်းသည် စီစစ်မှုလုပ်ဆောင်ရန် အသုံးပြုသည့် သင့်ဒီဇိုင်းကို ကိုယ်စားပြုခြင်းဖြစ်သည်။
ncelab –Message –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax 15 –
+rwc –status worklib ကို ဝင်သုံးပါ။ :module
Post-layout simulation အတွင်း အသေးစိတ်ရှင်းလင်းချက်
Post-layout simulations တွေမှာ၊ SDF ကို အရင်လုပ်ပါ။ file ncsdfc command ကို အသုံးပြု၍ အသေးစိတ်မရေးမီ စုစည်းထားရန် လိုအပ်သည်။
ncsdfcfileအမည်>.sdf –outputfileနာမည်>.sdf.X
အသေးစိတ်လေ့လာနေစဉ်တွင် အောက်ပါ codeblock တွင်ပြထားသည့်အတိုင်း -autosdf ရွေးချယ်မှုဖြင့် စုစည်းထားသော SDF အထွက်ကို အသုံးပြုပါ။
ncelab -autosdf –Message –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax
15 –access +rwc –status worklib။ :module –sdf_cmd_file ./
sdf_cmd_file
sdf_cmd_file အောက်ပါ codeblock တွင်ပြထားသည့်အတိုင်းဖြစ်ရမည်။
COMPILED_SDF_FILE = “ file>” - ncsim ကို အသုံးပြု၍ အတုယူပါ။ အသေးစိတ်ဖော်ပြပြီးနောက် သရုပ်ပြမှုအတွက် ncsim မှ တင်ဆောင်ထားသည့် သရုပ်ပြလျှပ်တစ်ပြက်တစ်ခုကို ဖန်တီးထားသည်။ အသုတ်မုဒ် သို့မဟုတ် GUI မုဒ်တွင် သင်သုံးနိုင်သည်။
ncsim –Message –batch/-gui –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncsim.log –
errormax 15 – အခြေအနေ အလုပ်လစ်ဘ်။ :module
အရေးကြီးသည်- အထက်ဖော်ပြပါ အဆင့်သုံးဆင့်အားလုံးကို စုစည်းခြင်း၊ အသေးစိတ်ဖော်ပြခြင်းနှင့် ပုံဖော်ခြင်းတို့ကို shell script တွင် ထည့်သွင်းနိုင်သည်။ file နှင့် command-line မှ အရင်းအမြစ်။ ဤအဆင့်သုံးဆင့်ကိုအသုံးပြုမည့်အစား၊ အောက်ပါကုဒ်ပိတ်ဆို့ခြင်းတွင်ပြထားသည့်အတိုင်း ncverilog သို့မဟုတ် irun option ကို အသုံးပြု၍ ဒီဇိုင်းကို အဆင့်တစ်ဆင့်တွင် ပုံဖော်နိုင်သည်။
ncverilog +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var
files ကို design မှာသုံးပါတယ်။
irun +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var files
ဒီဇိုင်းတွင်အသုံးပြုသည်။
3.3.1 သိထားသော ပြဿနာများ (မေးခွန်းတစ်ခုမေးပါ။)
Testbench ဖြေရှင်းနည်း
အသုံးပြုသူမှထုတ်ပေးသော testbench ရှိနာရီကြိမ်နှုန်းကိုသတ်မှတ်ရန်အတွက်အောက်ပါထုတ်ပြန်ချက်ကိုအသုံးပြုခြင်း သို့မဟုတ် Libero SoC မှထုတ်ပေးသောပုံမှန် testbench သည် NCSim နှင့်အလုပ်မလုပ်ပါ။
အမြဲတမ်း @(SYSCLK)
#(SYSCLK_PERIOD / 2.0) SYSCLK <= !SYSCLK;
Simulation ကို run ရန် အောက်ပါအတိုင်း ပြင်ဆင်ပါ။
အမြဲတမ်း #(SYSCLK_PERIOD / 2.0) SYSCLK = ~SYSCLK;
အရေးကြီးသည်- ပြုစုထားသည်။ NCSim အတွက် စာကြည့်တိုက်များသည် ပလက်ဖောင်းသီးသန့်ဖြစ်သည် (ဆိုလိုသည်မှာ 64 ဘစ်စာကြည့်တိုက်များသည် 32 ဘစ်ပလပ်ဖောင်းနှင့် အပြန်အလှန်သဟဇာတမဖြစ်ပါ)။
Postsynth နှင့် Post-layout Simulations MSS နှင့် SERDES ကိုအသုံးပြုခြင်း MSS block ပါဝင်သော ဒီဇိုင်းများ၏ postsynth simulations များ သို့မဟုတ် SERDES ကိုအသုံးပြုထားသော post-layout simulations ဒီဇိုင်းများကို လုပ်ဆောင်နေစဉ်၊ –libmap option သည် BFM simulations သည် အလုပ်မလုပ်ပါ။
အသေးစိတ်ရှင်းလင်းစဉ်အတွင်း မဖော်ပြထားပါ။ အဘယ်ကြောင့်ဆိုသော် အသေးစိတ်ရှင်းလင်းစဉ်အတွင်း၊ MSS ကို အလုပ်ဒစ်ဂျစ်တိုက်မှ ဖြေရှင်းခြင်းဖြစ်သည် (ပုံသေ ချိတ်ဆက်မှုနှင့် worklib သည် postsynth/post-layout ဖြစ်သည့်အတွက်) ၎င်းသည် ပုံသေလုပ်ဆောင်ချက်တစ်ခုသာဖြစ်သည့်အတွက်ကြောင့်ဖြစ်သည်။
MSS ကိုဖြေရှင်းရန် ncelab command ကိုအောက်ပါကုဒ်ပိတ်ဆို့ခြင်းတွင်ပြထားသည့်အတိုင်းရေးသားရပါမည်။
SmartFusion2 ကြိုတင်စုစည်းထားသော စာကြည့်တိုက်မှ ပိတ်ဆို့ခြင်း။
ncelab -libmap lib.map -libverbose -Message -access +rwc cfg1
နှင့် lib.map file အောက်ပါအတိုင်းဖြစ်ရမည်-
config cfg1;
ဒီဇိုင်း ;
မူရင်းစာရင်းစာရင်း smartfusion2 ;
အဆုံးအစည်း
၎င်းသည် အလုပ်ဒစ်ဂျစ်တိုက်တွင် မကြည့်ရှုမီ SmartFusion2 စာကြည့်တိုက်ရှိ မည်သည့်ဆဲလ်ကိုမဆို ဖြေရှင်းပေးသည်။
သရုပ်ဖော်မှုတိုင်း (presynth၊ postsynth နှင့် post-layout) အတွက် အသေးစိတ်လုပ်ဆောင်နေစဉ်တွင် -libmap ရွေးချယ်မှုကို ပုံသေအားဖြင့် သုံးနိုင်သည်။ ၎င်းသည် စာကြည့်တိုက်များမှ သာဓကများကို ဖြေရှင်းခြင်းကြောင့် ဖြစ်ပေါ်လာသည့် သရုပ်ဖော်မှုပြဿနာများကို ရှောင်ရှားသည်။
ncelab- *F၊INTERR-ပြည်တွင်းခြွင်းချက်
ဤ ncelab ကိရိယာ ခြွင်းချက်မှာ -libmap ရွေးချယ်မှုကို အသုံးပြု၍ postsynth နှင့် post-layout simulations အတွင်း SmartFusion 2 နှင့် IGLOO 2 တွင် FDDR ပါ၀င်သည့် ဒီဇိုင်းများအတွက် သတိပေးချက်ဖြစ်သည်။
အရေးကြီးသည်- ဤပြဿနာကို Cadence ပံ့ပိုးကူညီရေးအဖွဲ့ (SAR 52113) သို့ တိုင်ကြားထားပါသည်။
3.4 Sample Tcl နှင့် Shell Script Files (မေးခွန်းတစ်ခုမေးပါ။)
ဖော်ပြပါ files သည် configuration ဖြစ်သည်။ fileဒီဇိုင်းနှင့် shell script ကိုသတ်မှတ်ရန်အတွက် လိုအပ်ပါသည်။ file NCSim ညွှန်ကြားချက်များကို လုပ်ဆောင်ရန်အတွက်။
Cds.lib
NE smartfusion2 /scratch/krydor/tmpspace/users/me/nc-vlog64/SmartFusion2
COREAHBLITE_LIB ./COREAHBLITE_LIB ကို သတ်မှတ်ပါ။
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
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_addrdec.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_defaultslavesm.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_masterstagev => COREAHBLITE_LIB )
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavearbiter.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavestagev => COREAHBLITE_LIB )
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_matrix2x16.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/work/SB/CCC_0/SB_CCC_0_FCCC.v =>
သားကောင်)
LIB_MAP သတ်မှတ်ပါ ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigMaster/
2.0.101/rtl/vlog/core/coreconfigmaster.v => presynth )
LIB_MAP သတ်မှတ်ပါ ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigP/4.0.100/rtl/
vlog/core/coreconfigp.v => presynth )
LIB_MAP သတ်မှတ်ပါ ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp_pcie_hotreset.v => presynth )
LIB_MAP သတ်မှတ်ပါ ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp.v => presynth )
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 )
DEFINE 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 => presynth )
LIB_MAP သတ်မှတ်ပါ ($LIB_MAP၊ ${PROJECT_DIR}/component/work/SB_top/SB_top.v => presynth )
LIB_MAP သတ်မှတ်ပါ ($LIB_MAP၊ ${PROJECT_DIR}/component/work/SB_top/testbench.v => presynth )
LIB_MAP သတ်မှတ်ရန် ($LIB_MAP၊ + => presynth )
Commands.csh
ncvlog +incdir+../../component/work/SB_top -cdslib ./cds.lib -hdlvar ./hdl.var -logfile
ncvlog.log -errormax 15 -update -linedebug
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_addrdec.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/
coreahblite_defaultslavesm.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_masterstagev
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_slavearbiter.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_slavestagev
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_matrix2x16.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite.v
../../component/work/SB/CCC_0/SB_CCC_0_FCCC.v
../../component/Actel/DirectCore/CoreConfigMaster/2.0.101/rtl/vlog/core/coreconfigmaster.v
../../component/Actel/DirectCore/CoreConfigP/4.0.100/rtl/vlog/core/coreconfigp.v
../../component/Actel/DirectCore/CoreResetP/5.0.103/rtl/vlog/core/coreresetp_pcie_hotreset.v
../../component/Actel/DirectCore/CoreResetP/5.0.103/rtl/vlog/core/coreresetp.v
../../component/work/SB/FABOSC_0/SB_FABOSC_0_OSC.v ../../component/work/SB_HPMS/SB_HPMS.v
../../component/work/SB/SB.v ../../component/work/SB_top/SERDES_IF_0/
SB_top_SERDES_IF_0_SERDES_IF.v
../../component/work/SB_top/SB_top.v ../../component/work/SB_top/testbench.v
ncelab -Message -cdslib ./cds.lib -hdlvar ./hdl.var
- အလုပ် presynth -logfile ncelab.log -errormax 15 -access +rwc -status presynth.testbench:module
ncsim -Message -batch -cdslib ./cds.lib -hdlvar ./
hdl.var -logfile ncsim.log -errormax 15 -status presynth.testbench:module
3.5 အလိုအလျောက်စနစ် (မေးခွန်းတစ်ခုမေးပါ။)
အောက်ပါအတိုင်းပဲဗျ။ file ModelSim ကို run.do အဖြစ်ပြောင်းသည်။ files ကို configuration ထဲသို့ fileNCSim ကို အသုံးပြု၍ simulations ကို run ရန် လိုအပ်ပါသည်။
ဇာတ်ညွှန်း File အသုံးပြုမှု
perl cadence_parser.pl presynth_run.do postsynth_run.do
postlayout_run.do Microsemi_Family
တည်နေရာ_of_Cadence_Precompiled_libraries
Cadence_parser.pl
#!/usr/bin/perl -w
################################################## ############################################
###################
#အသုံးပြုမှု- perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
Microsemi_Family Precompiled_Libraries_location#
################################################## ############################################
###################
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);
questa_parser ခွဲ {
ကျွန်ုပ်၏ $ModelSim_run_do = $_[0];
ကျွန်ုပ်၏ $actel_family = $_[1];
ကျွန်ုပ်၏ $lib_location = $_[2];
ငါ့ $state;
အကယ်၍ ( -e “$ModelSim_run_do” )
{
ဖွင့်ပါ (INFILE,”$ModelSim_run_do”);
ငါ့ @ModelSim_run_do =FILE>;
ငါ့ $လိုင်း;
အကယ်၍ ($ModelSim_run_do =~ m/(presynth)/)
{
`mkdir QUESTA_PRESYNTH`;
ဖွင့်ပါ (ထွက်FILE,”>QUESTA_PRESYNTH/presynth_questa.do”);
$state = $1;
} elsif ( $ModelSim_run_do =~ m/(postsynth)/)
{
`mkdir QUESTA_POSTSYNTH`;
ဖွင့်ပါ (ထွက်FILE,”>QUESTA_POSTSYNTH/postsynth_questa.do”);
$state = $1;
} elsif ( $ModelSim_run_do =~ m/( postlayout )/ )
{
`mkdir QUESTA_POSTLAYOUT`;
ဖွင့်ပါ (ထွက်FILE,”>QUESTA_POSTLAYOUT/postlayout_questa.do”);
$state = $1;
} အခြား
{
print "မှားယွင်းသောထည့်သွင်းမှုများ file\n";
“#Usage: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
\"Libraries_location\"\n";
}
foreach $line (@ModelSim_run_do)
{
#အထွေထွေလုပ်ငန်းများ
$line =~ s/..\/designer.*simulation\///g;
$line =~ s/$state/$state\_questa/g;
#ပုံနှိပ်ထုတ်သည်FILE “$ လိုင်း \n”;
အကယ်၍ ($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 “$ လိုင်း \n”;
} elsif ($line =~ m/vsim/)
{
$line =~ s/vsim/vsim -novopt/g;
ပုံနှိပ်ထုတ်သည်FILE “$ လိုင်း \n”;
} အခြား
{
ပုံနှိပ်ထုတ်သည်FILE “$ လိုင်း \n”;
}
}
ပိတ်(ဝင်FILE);
ပိတ်သည် (ထွက်FILE);
} အခြား {
print “$ModelSim_run_do မရှိပါ။ သရုပ်သကန်ကို ပြန်လုပ်ပါ \n";
}
}
Cadence Xcelium စနစ်ထည့်သွင်းမှု (Microchip အကောင့်ဝင်ပါ။)
ဇာတ်ညွှန်းဖန်တီးရန် လိုအပ်သည်။ file Cadence Xcelium simulator ကို run ရန် ModelSim ME/ModelSim Pro ME run.do နှင့် ဆင်တူသည်။ ဤအဆင့်များကို လိုက်နာပြီး ဇာတ်ညွှန်းဖန်တီးပါ။ file Xcelium အတွက် သို့မဟုတ် script ကိုသုံးပါ။ file ModelSim ME/ModelSim Pro ME run.do ကို ပြောင်းရန် ထောက်ပံ့ပေးသည်။ files ကို configuration ထဲသို့ထည့်ပါ။ fileXcelium ကို အသုံးပြု၍ simulations ကို run ရန် လိုအပ်ပါသည်။
4.1 ပတ်ဝန်းကျင် ပြောင်းလဲမှုများ (မေးခွန်းတစ်ခုမေးပါ။)
Cadence Xcelium ကို run ရန်၊ အောက်ပါ ပတ်၀န်းကျင် ကိန်းရှင်များကို ပြင်ဆင်သတ်မှတ်ပါ။
- LM_LICENSE_FILE: လိုင်စင်အတွက် ညွှန်ပြချက်တစ်ခု ပါဝင်ရမည်။ file.
- cds_root- Cadence Incisive Installation ၏ မူလလမ်းညွှန်တည်နေရာကို ညွှန်ပြရပါမည်။
- PATH- cds_root ညွှန်ပြသည့် ကိရိယာလမ်းညွှန်အောက်တွင် ပုံးတည်နေရာကို ညွှန်ပြရမည် (ဆိုလိုသည်မှာ
$cds_root/tools/bin/64bit (64 bit စက်အတွက် $cds_root/tools/bin 32 bit အတွက်
စက်)။
64-bit နှင့် 32-bit လည်ပတ်မှုစနစ်များကြားတွင် ကူးပြောင်းမှုတစ်ခုအတွက် တူညီသောပတ်ဝန်းကျင်ကို သတ်မှတ်ရန် နည်းလမ်းသုံးမျိုးရှိပါသည်။
Case 1- PATH Variable
set path = (install_dir/tools/bin/64bit $path) 64bit စက်များအတွက် လည်းကောင်း၊
set path = (install_dir/tools/bin $path) 32bit စက်များအတွက်
Case 2- -64bit Command-line Option ကိုအသုံးပြုခြင်း။
command-line တွင် 64-bit executable ကိုခေါ်ဆိုရန်အတွက် -64bit option ကိုသတ်မှတ်ပါ။
Case 3- INCA_64BIT သို့မဟုတ် CDS_AUTO_64BIT Environment Variable ကို သတ်မှတ်ခြင်း
INCA_64BIT variable ကို boolean အဖြစ် သတ်မှတ်သည်။ ဤကိန်းရှင်အား မည်သည့်တန်ဖိုး သို့မဟုတ် null အဖြစ် သတ်မှတ်နိုင်သည်။
ကြိုးတစ်ချောင်း။
setenv INCA_64BIT
အရေးကြီးသည် INCA_64BIT ပတ်ဝန်းကျင် ပြောင်းလဲမှုသည် IC ကိရိယာများကဲ့သို့သော အခြားသော Cadence ကိရိယာများကို မထိခိုက်စေပါ။ သို့သော်၊ Incisive ကိရိယာများအတွက်၊ INCA_64BIT ကိန်းရှင်သည် CDS_AUTO_64BIT ပတ်ဝန်းကျင် ကိန်းရှင်အတွက် ဆက်တင်ကို အစားထိုးသည်။ INCA_64BIT ပတ်၀န်းကျင် ပြောင်းလဲမှုသည် et ဖြစ်ပါက၊ Incisive ကိရိယာများအားလုံး 64-bit မုဒ်တွင် အလုပ်လုပ်ပါသည်။
setenv CDS_AUTO_64BIT ပါဝင်သည်-INCA
အရေးကြီးသည် string INCA သည် စာလုံးကြီးဖြင့် ဖြစ်ရမည်။ executable များအားလုံးကို 2-bit mode သို့မဟုတ် 64-bit mode တွင် run ရမည်၊ အောက်ပါကဲ့သို့ executable တစ်ခုပါဝင်ရန် variable ကို မသတ်မှတ်ပါနှင့်။
setenv CDS_AUTO_64BIT ပါဝင်သည်- ncelab
IC ကိရိယာများကဲ့သို့ အခြားသော Cadence ကိရိယာများသည် 64-bit သို့မဟုတ် 32-bit executables ရွေးချယ်မှုကို ထိန်းချုပ်ရန် CDS_AUTO_64BIT ပတ်၀န်းကျင် variable ကို အသုံးပြုပါသည်။ အောက်ဖော်ပြပါဇယားသည် မုဒ်များအားလုံးတွင် Incisive tools နှင့် IC ကိရိယာများကို run ရန် CDS_AUTO_64BIT variable ကို မည်သို့သတ်မှတ်နိုင်သည်ကို ပြသထားသည်။
ဇယား ၃-၁။ CDS_AUTO_4BIT ကိန်းရှင်များ
CDS_AUTO_64BIT ပြောင်းလဲနိုင်သော | Incisive Tools များ | IC ကိရိယာများ |
setenv CDS_AUTO_64BIT ALL | 64-ဘစ် | 64-ဘစ် |
setenv CDS_AUTO_64BIT မရှိပါ။ | 32-ဘစ် | 32-ဘစ် |
setenv CDS_AUTO_64BIT EXCLUDE:ic_binary |
64-ဘစ် | 32-ဘစ် |
setenv CDS_AUTO_64BIT EXCLUDE-INCA | 32-ဘစ် | 64-ဘစ် |
အရေးကြီးသည်- Incisive tools အားလုံးကို 32-bit မုဒ် သို့မဟုတ် 64-bit မုဒ်တွင် လုပ်ဆောင်ရမည်ဖြစ်ပြီး၊ အောက်ပါတို့ကဲ့သို့ သီးခြားလုပ်ဆောင်နိုင်သည့်အရာတစ်ခုကို ဖယ်ထုတ်ရန် EXCLUDE ကို အသုံးမပြုပါနှင့်။
setenv CDS_AUTO_64BIT EXCLUDE:ncelab
အကယ်၍ သင်သည် Incisive tools များကိုဖယ်ထုတ်ရန် CDS_AUTO_64BIT variable ကို သတ်မှတ်ပါက (setenv
CDS_AUTO_64BIT EXCLUDE:INCA)၊ Incisive tools အားလုံးကို 32-bit မုဒ်တွင် လုပ်ဆောင်ပါသည်။ သို့သော်၊
-64bit command-line option သည် environment variable ကို လွှမ်းမိုးသည်။
အောက်ပါဖွဲ့စည်းပုံ files သည် သင့်ဒေတာကို စီမံခန့်ခွဲရန်နှင့် သရုပ်ဖော်ကိရိယာများနှင့် အသုံးအဆောင်များ၏ လည်ပတ်မှုကို ထိန်းချုပ်ရန် ကူညီပေးသည်-
- စာကြည့်တိုက်မြေပုံ file (cds.lib) သည် သင့်ဒီဇိုင်းတည်နေရာအတွက် ယုတ္တိတန်သောအမည်ကို သတ်မှတ်သည်။
- စာကြည့်တိုက်များနှင့် ၎င်းတို့ကို ရုပ်ပိုင်းဆိုင်ရာလမ်းညွှန်အမည်များဖြင့် ပေါင်းစပ်ပေးသည်။
- ပြောင်းလွဲမှုများ file (hdl.var) သရုပ်ဖော်ကိရိယာများနှင့် အသုံးအဆောင်များ၏ အပြုအမူအပေါ် သက်ရောက်မှုရှိသော ကိန်းရှင်များကို သတ်မှတ်သည်။
4.2 ဒေါင်းလုဒ်လုပ်ထားသော စာကြည့်တိုက် (မေးခွန်းတစ်ခုမေးပါ။)
Microsemi's မှ Cadence Xcelium အတွက် စာကြည့်တိုက်များကို ဒေါင်းလုဒ်လုပ်ပါ။ website.
4.3 Xcelium script ကိုဖန်တီးခြင်း။ file (မေးခွန်းတစ်ခုမေးပါ။)
run.do ၏ကော်ပီဖန်တီးပြီးနောက် files၊ Xcelium script ကို အသုံးပြု၍ သင်၏ simulation ကို run ရန် အောက်ပါအဆင့်များကို လုပ်ဆောင်ပါ။ file.
- cds.lib ဖန်တီးပါ။ file ၎င်းသည် မည်သည့် စာကြည့်တိုက်များ ရနိုင်သနည်း နှင့် ၎င်းတို့တည်ရှိရာ နေရာများကို သတ်မှတ်သည်။
ဟိ file ဒစ်ဂျစ်တယ် ယုတ္တိအမည်များကို ၎င်းတို့၏ ရုပ်ပိုင်းဆိုင်ရာ လမ်းညွှန်လမ်းကြောင်းများသို့ မြေပုံညွှန်းဖော်ပြချက်များ ပါရှိသည်။ ဟောင်းအတွက်ample၊ သင်သည် presynth simulation ကိုလုပ်ဆောင်နေပါက cds.lib ကိုအသုံးပြုပါ။ file အောက်ပါ codeblock တွင်ပြထားသည့်အတိုင်းရေးနိုင်သည်။
presynth ./presynth ကို သတ်မှတ်ပါ။
COREAHBLITE_LIB ./COREAHBLITE_LIB ကို သတ်မှတ်ပါ။
smartfusion ကိုသတ်မှတ်ပါ ၂ - hdl.var ဖန်တီးပါ။ file ၎င်းသည် စိတ်ကြိုက်ဖွဲ့စည်းမှုတစ်ခုဖြစ်သည်။ file သင်၏ ဒီဇိုင်းပတ်ဝန်းကျင်ကို မည်သို့ configure လုပ်ထားသည်ကို ဆုံးဖြတ်ပေးသည့် configuration variable များပါရှိသည်။ ၎င်းတို့တွင်-
- compiler သည် compiler objects နှင့် အခြားရရှိလာသော data များကို သိမ်းဆည်းထားသည့် work library ကို သတ်မှတ်ရန် အသုံးပြုသည့် variable များ။
– Verilog အတွက်၊ ကိန်းရှင်များ (LIB_MAP၊ VIEW_MAP၊ WORK) စာကြည့်တိုက်များနှင့် သတ်မှတ်ရန် အသုံးပြုသည်။ views သည် ဥပမာများကို ဖြေရှင်းသောအခါတွင် ရှာဖွေရန်။
- compiler၊ elaborator နှင့် simulator command-line ရွေးချယ်မှုများနှင့် အကြောင်းပြချက်များကို သတ်မှတ်ရန် သင့်အား ခွင့်ပြုသည့် ကိန်းရှင်များ။
presynth simulation ၏ဖြစ်ရပ်တွင် exampအထက်မှာ ပြထားတဲ့အတိုင်း၊ ငါတို့မှာ 3 RTL ရှိတယ်ဆိုပါစို့ filepresynth၊ COREAHBLITE_LIB နှင့် presynth libraries အသီးသီးတွင် စုစည်းရန်လိုအပ်သော s av၊ bv နှင့် testbench.v။ hdl.var file အောက်ပါ codeblock တွင်ပြထားသည့်အတိုင်းရေးနိုင်သည်။
အလုပ် presynth ကို သတ်မှတ်ပါ။
PROJECT_DIR ကို သတ်မှတ်ပါ။ files>
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/av => presynth )
LIB_MAP သတ်မှတ်ပါ ($LIB_MAP၊ ${PROJECT_DIR}/bv => COREAHBLITE_LIB)
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/testbench.v => presynth )
LIB_MAP သတ်မှတ်ရန် ($LIB_MAP၊ + => presynth ) - ဒီဇိုင်းကို စုစည်းပါ။ files ncvlog option ကို အသုံးပြု.
xmvlog +incdir+ –cdslib ./cds.lib –hdlvar ./hdl.var –logfile
ncvlog.log –update –linedebug av bv testbench.v - ncelab ကို အသုံးပြု၍ ဒီဇိုင်းကို အသေးစိတ်ဖော်ပြပါ။ သရုပ်ဖော်သူသည် ဒီဇိုင်းရှိ instantiation နှင့် configuration အချက်အလက်များအပေါ် အခြေခံ၍ ဒီဇိုင်းဆိုင်ရာ အထက်တန်းအဆင့်ကို တည်ဆောက်ပြီး၊ အချက်ပြချိတ်ဆက်မှုကို ချမှတ်ကာ ဒီဇိုင်းရှိ အရာဝတ္ထုအားလုံးအတွက် ကနဦးတန်ဖိုးများကို တွက်ချက်ပေးပါသည်။ အသေးစိတ်ဖော်ပြသော ဒီဇိုင်းဆိုင်ရာ အထက်တန်းပြဇယားကို သရုပ်ဖော်ခြင်းလျှပ်တစ်ပြက်တွင် သိမ်းဆည်းထားပြီး၊ ယင်းသည် စီစစ်မှုလုပ်ဆောင်ရန် အသုံးပြုသည့် သင့်ဒီဇိုင်းကို ကိုယ်စားပြုခြင်းဖြစ်သည်။
Xcelium –Message –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax 15 –
+rwc –status worklib ကို ဝင်သုံးပါ။ :module
Post-layout simulation အတွင်း အသေးစိတ်ရှင်းလင်းချက်
Post-layout simulations တွေမှာ၊ SDF ကို အရင်လုပ်ပါ။ file ncsdfc command ကို အသုံးပြု၍ အသေးစိတ်မရေးမီ စုစည်းထားရန် လိုအပ်သည်။
Xceliumfileအမည်>.sdf –outputfileနာမည်>.sdf.X
အသေးစိတ်လေ့လာနေစဉ်တွင် အောက်ပါ codeblock တွင်ပြထားသည့်အတိုင်း -autosdf ရွေးချယ်မှုဖြင့် စုစည်းထားသော SDF အထွက်ကို အသုံးပြုပါ။
xmelab -autosdf –Message –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncelab.log –errormax
15 –access +rwc –status worklib။ :module –sdf_cmd_file ./
sdf_cmd_file
sdf_cmd_file အောက်ပါ codeblock တွင်ပြထားသည့်အတိုင်းဖြစ်ရမည်။
COMPILED_SDF_FILE = “ file>” - Xcelium ကို အသုံးပြု၍ အတုယူပါ။ သရုပ်ဖော်ပြီးနောက် Xcelium က သရုပ်ဖော်ခြင်းအတွက် လျှပ်တစ်ပြက်ပုံတစ်ပုံကို ဖန်တီးထားသည်။ ၎င်းကို အစုလိုက်မုဒ် သို့မဟုတ် GUI မုဒ်တွင် လုပ်ဆောင်နိုင်သည်။
xmsim –Message –batch/-gui –cdslib ./cds.lib –hdlvar ./hdl.var –logfile xmsim.log –
errormax 15 – အခြေအနေ အလုပ်လစ်ဘ်။ :module
Cadence Xcelium စနစ်ထည့်သွင်းခြင်း။
အရေးကြီးသည်- အားလုံး အထက်ဖော်ပြပါ အဆင့်သုံးဆင့်ကို စုစည်းခြင်း၊ အသေးစိပ် ပုံဖော်ခြင်းတို့ကို shell script တွင် ထည့်သွင်းနိုင်သည်။ file command-line မှ ဆင်းသက်လာပါသည်။ ဤအဆင့်သုံးဆင့်ကိုအသုံးပြုမည့်အစား၊ အောက်ပါကုဒ်ပိတ်ဆို့ခြင်းတွင်ပြထားသည့်အတိုင်း ncverilog သို့မဟုတ် xrun option ကို အသုံးပြု၍ ဒီဇိုင်းကို အဆင့်တစ်ဆင့်တွင် ပုံဖော်နိုင်သည်။
xmverilog +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var
files ကို design မှာသုံးပါတယ်။
xrun +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var files
ဒီဇိုင်းတွင်အသုံးပြုသည်။
4.3.1 သိထားသော ပြဿနာများ (မေးခွန်းတစ်ခုမေးပါ။)
Testbench ဖြေရှင်းနည်း
အသုံးပြုသူမှထုတ်ပေးသော testbench ရှိနာရီကြိမ်နှုန်းကိုသတ်မှတ်ခြင်းအတွက်အောက်ပါထုတ်ပြန်ချက်ကိုအသုံးပြုခြင်း သို့မဟုတ် Libero SoC မှထုတ်ပေးသောပုံမှန် testbench သည် Xcelium နှင့်အလုပ်မလုပ်ပါ။
အမြဲတမ်း @(SYSCLK)
#(SYSCLK_PERIOD / 2.0) SYSCLK <= !SYSCLK;
Simulation ကို run ရန် အောက်ပါအတိုင်း ပြင်ဆင်ပါ။
အမြဲတမ်း #(SYSCLK_PERIOD / 2.0) SYSCLK = ~SYSCLK;
အရေးကြီးသည်- Xcelium အတွက် စုစည်းထားသော စာကြည့်တိုက်များသည် ပလပ်ဖောင်း သီးသန့်ဖြစ်သည် (ဆိုလိုသည်မှာ 64 bit စာကြည့်တိုက်များသည် 32 bit platform နှင့် အပြန်အလှန် ချိတ်ဆက်၍မရပါ)။
MSS နှင့် SERDES ကို အသုံးပြု၍ Postsynth နှင့် Post-layout သရုပ်သကန်များ
MSS block ပါရှိသော ဒီဇိုင်းများ၏ postsynth simulations များ သို့မဟုတ် SERDES ကို အသုံးပြုထားသော ဒီဇိုင်းများ၏ post-layout simulations များကို လုပ်ဆောင်နေစဉ်တွင် -libmap option ကို အသေးစိတ်မဖော်ပြထားပါက BFM simulations များသည် အလုပ်မလုပ်ပါ။ အဘယ်ကြောင့်ဆိုသော် အသေးစိတ်ရှင်းလင်းစဉ်အတွင်း၊ MSS ကို အလုပ်ဒစ်ဂျစ်တိုက်မှ ဖြေရှင်းခြင်းဖြစ်သည် (ပုံသေ ချိတ်ဆက်မှုနှင့် worklib သည် postsynth/post-layout ဖြစ်သည့်အတွက်) ၎င်းသည် ပုံသေလုပ်ဆောင်ချက်တစ်ခုသာဖြစ်သည့်အတွက်ကြောင့်ဖြစ်သည်။
SmartFusion2 ကြိုတင်စုစည်းထားသော စာကြည့်တိုက်မှ MSS ပိတ်ဆို့ခြင်းကို ဖြေရှင်းရန် ncelab အမိန့်ကို အောက်ပါကုဒ် ပိတ်ဆို့ခြင်းတွင် ပြထားသည့်အတိုင်း ရေးသားရပါမည်။
xmelab -libmap lib.map -libverbose -Message -access +rwc cfg1
နှင့် lib.map file အောက်ပါအတိုင်းဖြစ်ရမည်-
config cfg1;
ဒီဇိုင်း ;
မူရင်းစာရင်းစာရင်း smartfusion2 ;
အဆုံးအစည်း
၎င်းသည် အလုပ်ဒစ်ဂျစ်တိုက်တွင် မရှာဖွေမီ SmartFusion2 စာကြည့်တိုက်ရှိ မည်သည့်ဆဲလ်ကိုမဆို ဖြေရှင်းရပါမည်။
သရုပ်ဖော်မှုတိုင်း (presynth၊ postsynth နှင့် post-layout) အတွက် အသေးစိတ်လုပ်ဆောင်နေစဉ်တွင် -libmap ရွေးချယ်မှုကို ပုံသေအားဖြင့် သုံးနိုင်သည်။ ၎င်းသည် စာကြည့်တိုက်များမှ သာဓကများကို ဖြေရှင်းခြင်းကြောင့် ဖြစ်ပေါ်လာသည့် သရုပ်ဖော်မှုပြဿနာများကို ရှောင်ရှားသည်။
xmelab- *F၊INTERR- အတွင်းပိုင်း ခြွင်းချက်
ဤ ncelab tool ခြွင်းချက်သည် SmartFusion2 နှင့် IGLOO2 တွင် FDDR ပါ၀င်သော ဒီဇိုင်းများအတွက် သတိပေးချက်ဖြစ်သည်။
-libmap ရွေးချယ်မှုကို အသုံးပြု၍ postsynth နှင့် post-layout simulation များအတွင်း။
အရေးကြီးသည်- ဤပြဿနာကို Cadence ပံ့ပိုးကူညီရေးအဖွဲ့ (SAR 52113) သို့ တိုင်ကြားထားပါသည်။
4.4 Sample Tcl နှင့် shell script files (မေးခွန်းတစ်ခုမေးပါ။)
ဖော်ပြပါ files သည် configuration ဖြစ်သည်။ fileဒီဇိုင်းနှင့် shell script ကိုသတ်မှတ်ရန်အတွက် လိုအပ်ပါသည်။ file Xcelium commands များကိုအသုံးပြုရန်အတွက်။
Cds.lib
smartfusion2 /scratch/krydor/tmpspace/users/me/nc-vlog64/SmartFusion2 ကို သတ်မှတ်ပါ
COREAHBLITE_LIB ./COREAHBLITE_LIB ကို သတ်မှတ်ပါ။
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
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_addrdec.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_defaultslavesm.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_masterstagev => COREAHBLITE_LIB )
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavearbiter.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavestagev => COREAHBLITE_LIB )
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_matrix2x16.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite.v => COREAHBLITE_LIB )
DEFINE LIB_MAP ($LIB_MAP၊ ${PROJECT_DIR}/component/work/SB/CCC_0/SB_CCC_0_FCCC.v =>
သားကောင်)
LIB_MAP သတ်မှတ်ပါ ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigMaster/
2.0.101/rtl/vlog/core/coreconfigmaster.v => presynth )
LIB_MAP သတ်မှတ်ပါ ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreConfigP/4.0.100/rtl/
vlog/core/coreconfigp.v => presynth )
LIB_MAP သတ်မှတ်ပါ ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp_pcie_hotreset.v => presynth )
LIB_MAP သတ်မှတ်ပါ ($LIB_MAP၊ ${PROJECT_DIR}/component/Actel/DirectCore/CoreResetP/5.0.103/rtl/
vlog/core/coreresetp.v => presynth )
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 )
DEFINE 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 => presynth )
LIB_MAP သတ်မှတ်ပါ ($LIB_MAP၊ ${PROJECT_DIR}/component/work/SB_top/SB_top.v => presynth )
LIB_MAP သတ်မှတ်ပါ ($LIB_MAP၊ ${PROJECT_DIR}/component/work/SB_top/testbench.v => presynth )
LIB_MAP သတ်မှတ်ရန် ($LIB_MAP၊ + => presynth )
Commands.csh
ncvlog +incdir+../../component/work/SB_top -cdslib ./cds.lib -hdlvar ./hdl.var -logfile
ncvlog.log -errormax 15 -update -linedebug
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_addrdec.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/
coreahblite_defaultslavesm.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_masterstagev
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_slavearbiter.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_slavestagev
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite_matrix2x16.v
../../component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/vlog/core/coreahblite.v
../../component/work/SB/CCC_0/SB_CCC_0_FCCC.v
../../component/Actel/DirectCore/CoreConfigMaster/2.0.101/rtl/vlog/core/coreconfigmaster.v
../../component/Actel/DirectCore/CoreConfigP/4.0.100/rtl/vlog/core/coreconfigp.v
../../component/Actel/DirectCore/CoreResetP/5.0.103/rtl/vlog/core/coreresetp_pcie_hotreset.v
../../component/Actel/DirectCore/CoreResetP/5.0.103/rtl/vlog/core/coreresetp.v
../../component/work/SB/FABOSC_0/SB_FABOSC_0_OSC.v ../../component/work/SB_HPMS/SB_HPMS.v
../../component/work/SB/SB.v ../../component/work/SB_top/SERDES_IF_0/
SB_top_SERDES_IF_0_SERDES_IF.v
../../component/work/SB_top/SB_top.v ../../component/work/SB_top/testbench.v
ncelab -Message -cdslib ./cds.lib -hdlvar ./hdl.var
- အလုပ် presynth -logfile ncelab.log -errormax 15 -access +rwc -status presynth.testbench:module
ncsim -Message -batch -cdslib ./cds.lib -hdlvar ./
hdl.var -logfile ncsim.log -errormax 15 -status presynth.testbench:module
4.5 အလိုအလျောက်စနစ် (Microchip အကောင့်ဝင်ပါ။)
အောက်ပါအတိုင်းပဲဗျ။ file ModelSim ကို run.do အဖြစ်ပြောင်းသည်။ files ကို configuration ထဲသို့ fileXcelium ကို အသုံးပြု၍ simulations ကို run ရန် လိုအပ်ပါသည်။
ဇာတ်ညွှန်း File အသုံးပြုမှု
perl cadence_parser.pl presynth_run.do postsynth_run.do
postlayout_run.do Microsemi_Family
တည်နေရာ_of_Cadence_Precompiled_libraries
Cadence_parser.pl
#!/usr/bin/perl -w
################################################## ############################################
###################
#အသုံးပြုမှု- perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
Microsemi_Family Precompiled_Libraries_location#
################################################## ############################################
###################
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);
questa_parser ခွဲ {
ကျွန်ုပ်၏ $ModelSim_run_do = $_[0];
ကျွန်ုပ်၏ $actel_family = $_[1];
ကျွန်ုပ်၏ $lib_location = $_[2];
ငါ့ $state;
အကယ်၍ ( -e “$ModelSim_run_do” )
{
ဖွင့်ပါ (INFILE,”$ModelSim_run_do”);
ငါ့ @ModelSim_run_do =FILE>;
ငါ့ $လိုင်း;
အကယ်၍ ($ModelSim_run_do =~ m/(presynth)/)
{
`mkdir QUESTA_PRESYNTH`;
ဖွင့်ပါ (ထွက်FILE,”>QUESTA_PRESYNTH/presynth_questa.do”);
$state = $1;
} elsif ( $ModelSim_run_do =~ m/(postsynth)/)
{
`mkdir QUESTA_POSTSYNTH`;
ဖွင့်ပါ (ထွက်FILE,”>QUESTA_POSTSYNTH/postsynth_questa.do”);
$state = $1;
} elsif ( $ModelSim_run_do =~ m/( postlayout )/ )
{
`mkdir QUESTA_POSTLAYOUT`;
ဖွင့်ပါ (ထွက်FILE,”>QUESTA_POSTLAYOUT/postlayout_questa.do”);
$state = $1;
} အခြား
{
print "မှားယွင်းသောထည့်သွင်းမှုများ file\n";
“#Usage: perl questa_parser.pl presynth_run.do postsynth_run.do postlayout_run.do
\"Libraries_location\"\n";
}
foreach $line (@ModelSim_run_do)
{
#အထွေထွေလုပ်ငန်းများ
$line =~ s/..\/designer.*simulation\///g;
$line =~ s/$state/$state\_questa/g;
#ပုံနှိပ်ထုတ်သည်FILE “$ လိုင်း \n”;
အကယ်၍ ($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 “$ လိုင်း \n”;
} elsif ($line =~ m/vsim/)
{
$line =~ s/vsim/vsim -novopt/g;
ပုံနှိပ်ထုတ်သည်FILE “$ လိုင်း \n”;
} အခြား
{
ပုံနှိပ်ထုတ်သည်FILE “$ လိုင်း \n”;
}
}
ပိတ်(ဝင်FILE);
ပိတ်သည် (ထွက်FILE);
} အခြား {
print “$ModelSim_run_do မရှိပါ။ သရုပ်သကန်ကို ပြန်လုပ်ပါ \n";
}
}
Siemens QuestaSim Setup/ModelSim Setup (မေးခွန်းတစ်ခုမေးပါ။)
run.do fileModelSim Microsemi Editions ကို အသုံးပြု၍ စီစဥ်ခြင်းအတွက် Libero SoC မှထုတ်လုပ်ထားသော s ကို ပြောင်းလဲမှုတစ်ခုတည်းဖြင့် QuestaSim/ModelSim SE/DE/PE ကိုအသုံးပြု၍ သရုပ်ပြမှုများတွင်အသုံးပြုနိုင်ပါသည်။ ModelSim ME/ModelSim Pro ME run.do တွင် fileကြိုတင်စုစည်းထားသော စာကြည့်တိုက်များ တည်နေရာကို ပြုပြင်ရန်လိုအပ်ပါသည်။
အရေးကြီးသည်-
ပုံသေအားဖြင့်၊ ModelSim Pro ME မှလွဲ၍ အခြား simulation tool သည် ဒီဇိုင်းအရာဝတ္ထုများနှင့် input stimulus ကဲ့သို့သော မြင်နိုင်စွမ်းကို သရုပ်ဖော်သည့်အရာများအဖြစ် သက်ရောက်မှုရှိစေသော စီစစ်မှုအတွင်း ဒီဇိုင်းပိုမိုကောင်းမွန်အောင်လုပ်ဆောင်ပါသည်။
၎င်းသည် ပုံမှန်အားဖြင့် စကားအပြောအဆို၊ ကိုယ်တိုင်စစ်ဆေးခြင်း testbenches ကို အသုံးပြု၍ ရှုပ်ထွေးသော simulations အတွက် simulation runtime ကို လျှော့ချရာတွင် အထောက်အကူဖြစ်စေပါသည်။ သို့သော်၊ အထူးသဖြင့် လှိုင်းဝင်းဒိုးကို အသုံးပြု၍ စီစစ်ခြင်းရလဒ်များကို ဂရပ်ဖစ်စစ်ဆေးရန် သင်မျှော်လင့်ထားသည့် ကိစ္စများတွင် ပုံသေ optimizations များသည် simulation အားလုံးအတွက် မသင့်လျော်ပါ။
ဤပိုမိုကောင်းမွန်အောင်ပြုလုပ်ခြင်းကြောင့်ဖြစ်ရသည့်ပြဿနာများကိုဖြေရှင်းရန်၊ ဒီဇိုင်းတွင်မြင်နိုင်စွမ်းကိုပြန်လည်ရရှိရန်အတွက် simulation အတွင်းသင့်လျော်သော command များနှင့်ဆက်စပ်သောအငြင်းအခုံများကိုထည့်ရပါမည်။ ကိရိယာ-သီးသန့် ညွှန်ကြားချက်များအတွက်၊ အသုံးပြုနေသည့် Simulator ၏ စာရွက်စာတမ်းကို ကြည့်ပါ။
5.1 ပတ်ဝန်းကျင် ပြောင်းလဲမှုများ (မေးခွန်းတစ်ခုမေးပါ။)
အောက်ပါတို့သည် လိုအပ်သော ပတ်ဝန်းကျင်ပြောင်းလဲမှုများဖြစ်သည်။
- LM_LICENSE_FILE: လိုင်စင်သို့ လမ်းကြောင်း ပါဝင်ရမည်။ file.
- MODEL_TECH- QuestaSim တပ်ဆင်ခြင်း၏ မူလလမ်းညွှန်တည်နေရာသို့ လမ်းကြောင်းကို ခွဲခြားသတ်မှတ်ရပါမည်။
- PATH- MODEL_TECH ညွှန်ပြသည့် လုပ်ဆောင်နိုင်သော တည်နေရာကို ညွှန်ပြရပါမည်။
5.2 Mentor QuestaSim အတွက် run.do ကို ပြောင်းနေသည် (မေးခွန်းတစ်ခုမေးပါ။)
run.do fileModelSim Microsemi Editions ကို အသုံးပြု၍ သရုပ်ဖော်မှုများအတွက် Libero SoC မှထုတ်လုပ်ထားသော s ကို QuestaSim/ModelSim_SE တစ်ခုတည်းဖြင့် ပြောင်းလဲအသုံးပြု၍ စီစစ်မှုများအတွက် အသုံးပြုနိုင်ပါသည်။
အရေးကြီးသည်- အားလုံး QuestaSim ကို အသုံးပြု၍ ပုံဖော်ထားသည့် ဒီဇိုင်းများတွင် -novopt ပါဝင်ရမည်။
run.do script ရှိ vsim command နှင့်အတူ ရွေးချယ်မှု files.
5.3 စုစည်းထားသောစာကြည့်တိုက်ကို ဒေါင်းလုဒ်လုပ်ပါ (မေးခွန်းတစ်ခုမေးပါ။)
Microsemi's မှ Mentor Graphics QuestaSim အတွက် စာကြည့်တိုက်များကို ဒေါင်းလုဒ်လုပ်ပါ။ website.
Synopsys VCS စနစ်ထည့်သွင်းခြင်း (မေးခွန်းတစ်ခုမေးပါ။)
Microsemi မှ အကြံပြုထားသော စီးဆင်းမှုသည် VCS ရှိ အသေးစိတ်နှင့် Compile စီးဆင်းမှုအပေါ် မူတည်သည်။ ဤစာတမ်းတွင် ဇာတ်ညွှန်းတစ်ခု ပါဝင်သည်။ file ၎င်းသည် run.do script ကိုအသုံးပြုသည်။ files ကို Libero SoC မှထုတ်လုပ်ပြီး setup ကိုထုတ်ပေးသည်။ fileVCS simulation အတွက် လိုအပ်ပါသည်။ ဇာတ်ညွှန်း file run.do ကိုအသုံးပြုသည်။ file အောက်ပါအတိုင်းလုပ်ဆောင်ရန်။
- စာကြည့်တိုက်မြေပုံဖန်တီးပါ။ filesynopsys_sim.setup ကို အသုံးပြု၍ လုပ်ဆောင်သည်။ file VCS simulation လုပ်ဆောင်နေသည့် တူညီသောလမ်းညွှန်တွင် တည်ရှိသည်။
- shell script ကိုဖန်တီးပါ။ file VCS ကို အသုံးပြု၍ သင်၏ ဒီဇိုင်းကို အသေးစိတ် စုစည်းရန်။
6.1 ပတ်ဝန်းကျင် ပြောင်းလဲမှုများ (မေးခွန်းတစ်ခုမေးပါ။)
သင်၏စဖွင့်သတ်မှတ်မှုအပေါ်အခြေခံ၍ VCS အတွက် သင့်လျော်သောပတ်ဝန်းကျင်ပြောင်းလွဲချက်များကို သတ်မှတ်ပါ။ VCS စာရွက်စာတမ်းအရ လိုအပ်သော ပတ်ဝန်းကျင်ပြောင်းလဲမှုများမှာ-
- LM_LICENSE_FILE: လိုင်စင်ဆာဗာသို့ ညွှန်ပြချက်တစ်ခု ထည့်သွင်းရပါမည်။
- VCS_HOME- VCS တပ်ဆင်မှု၏ အိမ်လမ်းညွှန်တည်နေရာကို ညွှန်ပြရပါမည်။
- PATH- VCS_HOME လမ်းညွှန်အောက်ရှိ ဘင်လမ်းညွှန်သို့ ညွှန်ပြချက်တစ်ခု ထည့်သွင်းရပါမည်။
6.2 ဒေါင်းလုဒ်လုပ်ထားသော စာကြည့်တိုက် (မေးခွန်းတစ်ခုမေးပါ။)
Synopsys VCS အတွက် စာကြည့်တိုက်များကို Microsemi's မှ ဒေါင်းလုဒ်လုပ်ပါ။ website.
6.3 VCS သရုပ်သကန် ဇာတ်ညွှန်း File (မေးခွန်းတစ်ခုမေးပါ။)
VCS ကို စနစ်ထည့်သွင်းပြီးနောက် ဒီဇိုင်းနှင့် မတူညီသော run.do ကို ဖန်တီးပါ။ fileLibero SoC မှ၊ သင်သည်-
- စာကြည့်တိုက်မြေပုံဖန်တီးပါ။ file synopsys_sim.setup; ဤ file ဒီဇိုင်းဖြင့်အသုံးပြုမည့် စာကြည့်တိုက်များအားလုံး၏ တည်နေရာအတွက် ညွှန်ပြချက်များပါရှိသည်။
အရေးကြီးသည် file အမည်မပြောင်းလဲရမည်ဖြစ်ပြီး ၎င်းသည် စီစစ်လုပ်ဆောင်နေသည့် လမ်းကြောင်းတစ်ခုတည်းတွင် ရှိနေရမည်ဖြစ်သည်။ ဒီမှာ ရည်းစားဟောင်းample အဲဒီလိုမျိုး file presynthesis simulation အတွက်။
အလုပ် > အမှား
SmartFusion2 :
presynth : ./presynth
Default : ./work - မတူညီသော ဒီဇိုင်းကို ပုံဖော်ပါ။ fileVCS ရှိ vlogan အမိန့်ကို အသုံးပြု၍ testbench အပါအဝင်၊ ဤ command များကို shell script တွင် ထည့်သွင်းနိုင်ပါသည်။ file. နောက်လိုက်က ဟောင်းတစ်ယောက်amprtl.v တွင် သတ်မှတ်ထားသော ဒီဇိုင်းကို အသေးစိပ်ဖော်ပြရန် လိုအပ်သော command များကို ၎င်း၏ testbench တွင်ဖော်ပြထားသည်
testbench.v.
vlogan +v2k -work presynth rtl.v
vlogan +v2k -work presynth testbench.v - အောက်ပါ command ကို အသုံးပြု၍ VCS ကို အသုံးပြု၍ ဒီဇိုင်းကို စုစည်းပါ။
vcs –sim_res=1fs presynth.testbench
မှတ်ချက် မှန်ကန်သော လုပ်ဆောင်မှုဆိုင်ရာ သရုပ်ဖော်ပုံအတွက် အချိန်ကိုက် ပြတ်သားမှုကို 1fs ဟု သတ်မှတ်ရပါမည်။ - ဒီဇိုင်းကို စုစည်းပြီးသည်နှင့်၊ အောက်ပါ command ကို အသုံးပြု၍ သရုပ်ဖော်ခြင်းကို စတင်ပါ။
./simv - နောက်ကြောင်းမှတ်စုများ သရုပ်ဖော်ခြင်းအတွက်၊ VCS ညွှန်ကြားချက်သည် အောက်ပါကုဒ်ပိတ်ဆို့ခြင်းတွင် ပြထားသည့်အတိုင်း ဖြစ်ရပါမည်။
vcs postlayout.testbench –sim_res=1fs –sdf အမြင့်ဆုံး- .
အမည်>: file လမ်းကြောင်း> –gui –l postlayout.log
6.4 ကန့်သတ်ချက်များ/ခြွင်းချက်များ (မေးခွန်းတစ်ခုမေးပါ။)
Synopsys VCS စနစ်ထည့်သွင်းခြင်း၏ ကန့်သတ်ချက်များ/ခြွင်းချက်များဖြစ်သည်။
- VCS သရုပ်ဖော်မှုများကို Libero SoC ၏ Verilog ပရောဂျက်များအတွက်သာ လုပ်ဆောင်နိုင်သည်။ VCS Simulator တွင် Libero SoC အလိုအလျောက်ထုတ်ပေးသော VHDL မှ မကိုက်ညီသည့် တင်းကျပ်သော VHDL ဘာသာစကားလိုအပ်ချက်များ ပါရှိသည်။ files.
- သင်လုပ်ဆောင်လိုသည့်အခါတိုင်းတွင် simulation ကိုရပ်တန့်ရန် Verilog testbench တွင် $finish statement တစ်ခုရှိရပါမည်။
အရေးကြီးသည်- ဘယ်တော့လဲ။ သရုပ်ဖော်မှုများကို GUI မုဒ်တွင် လုပ်ဆောင်သည်၊ လည်ပတ်ချိန်ကို GUI တွင် သတ်မှတ်နိုင်ပါသည်။
6.5 Sample Tcl နှင့် Shell Script Files (မေးခွန်းတစ်ခုမေးပါ။)
အောက်ပါ Perl သည် synopsys_sim.setup ၏ မျိုးဆက်ကို အလိုအလျောက် လုပ်ဆောင်ပေးသည်။ file သက်ဆိုင်တဲ့ shell script တွေပါ။ fileဒီဇိုင်းကို အသေးစိပ်၊ စုစည်းရန်နှင့် ပုံဖော်ရန် လိုအပ်ပါသည်။
ဒီဇိုင်းသည် MSS ကိုအသုံးပြုပါက test.vec ကို ကူးယူပါ။ file Libero SoC ပရောဂျက်၏ simulation ဖိုဒါတွင် VCS သရုပ်ဖော်မှုဖိုဒါသို့ တည်ရှိသည်။ အောက်ပါကဏ္ဍများတွင် s ပါရှိသည်။ample run.do fileသက်ဆိုင်ရာ စာကြည့်တိုက်မြေပုံနှင့် shell script အပါအဝင် Libero SoC မှ ထုတ်လုပ်သည်။ fileVCS simulation အတွက် လိုအပ်ပါသည်။
6.5.1 အကြိုပေါင်းစပ်မှု (မေးခွန်းတစ်ခုမေးပါ။)
Presynth_run.do
ACTELLIBNAME SmartFusion2 ကို တိတ်တဆိတ် သတ်မှတ်ပါ။
PROJECT_DIR “/sqa/users/me/VCS_Tests/Test_DFF” ကို တိတ်တဆိတ် သတ်မှတ်ပါ
အကယ်၍ {[file presynth/_info]} {
ပဲ့တင်သံ "INFO- သရုပ်သကန် စာကြည့်တိုက် presynth ရှိနှင့်ပြီးဖြစ်သည်"
} အခြား {
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” - အလုပ် presynth “${PROJECT_DIR}/stimulus/SD1_TB1.v”
vsim -L SmartFusion2 -L presynth -t 1fs presynth.SD1_TB1
လှိုင်းထည့် /SD1_TB1/*
မှတ်တမ်းကိုထည့်ပါ -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/
အလုပ်/SD1/SD1.v”
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k “+incdir+${PROJECT_DIR}/stimulus” - အလုပ်
presynth “${PROJECT_DIR}/stimulus/SD1_TB1.v”
/cad_design/tools/vcs.dir/E-2011.03/bin/vcs -sim_res=1fs presynth.SD1_TB1 -l compile.log
./simv -l run.log
Synopsys_sim.setup
အလုပ် > မူရင်း
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]} {
ပဲ့တင်သံ "အချက်အလက်- သရုပ်ပြစာကြည့်တိုက် postsynth ရှိနှင့်ပြီးဖြစ်သည်"
} အခြား {
vlib postsynth
}
vmap postsynth postsynth
vmap SmartFusion2 “//idm/captures/pc/11_0_1_12_g4x/Designer/lib/ModelSim/precompiled/vlog/
SmartFusion 2"
vlog -work postsynth “${PROJECT_DIR}/synthesis/SD1.v”
vlog “+incdir+${PROJECT_DIR}/stimulus” -work postsynth “${PROJECT_DIR}/stimulus/SD1_TB1.v”
vsim -L SmartFusion2 -L postsynth -t 1fs postsynth.SD1_TB1
လှိုင်းထည့် /SD1_TB1/*
မှတ်တမ်းကိုထည့်ပါ -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” - အလုပ်
postsynth “${PROJECT_DIR}/stimulus/SD1_TB1.v”
/cad_design/tools/vcs.dir/E-2011.03/bin/vcs -sim_res=1fs postsynth.SD1_TB1 -l compile.log
./simv -l run.log
Synopsys_sim.setup
အလုပ် > မူရင်း
SmartFusion2 : /VCS/SmartFusion2
postsynth : ./postsynth
Default : ./work
6.5.3 Post-layout (မေးခွန်းတစ်ခုမေးပါ။)
postlayout_run.do
ACTELLIBNAME SmartFusion2 ကို တိတ်တဆိတ် သတ်မှတ်ပါ။
PROJECT_DIR “E:/ModelSim_Work/Test_DFF” ကို တိတ်တဆိတ် သတ်မှတ်ပါ
အကယ်၍ {[file ရှိပါသည် ../designer/SD1/simulation/postlayout/_info]} {
"INFO- သရုပ်ပြစာကြည့်တိုက်../designer/SD1/simulation/postlayout ရှိနှင့်ပြီးသား"
} အခြား {
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/
SmartFusion 2"
vlog -work postlayout “${PROJECT_DIR}/designer/SD1/SD1_ba.v”
vlog “+incdir+${PROJECT_DIR}/stimulus” - အလုပ် 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
လှိုင်းထည့် /SD1_TB1/*
မှတ်တမ်းကိုထည့်ပါ -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” - အလုပ်
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
အလုပ် > မူရင်း
SmartFusion2 : /VCS/SmartFusion2
postlayout : ./postlayout
Default : ./workVCS
6.6 အလိုအလျောက်စနစ် (မေးခွန်းတစ်ခုမေးပါ။)
အောက်ပါ Perl script ကို အသုံးပြု၍ စီးဆင်းမှုကို အလိုအလျောက် လုပ်ဆောင်နိုင်ပါသည်။ file ModelSim ကို run.do ပြောင်းရန် files ကို VCS သဟဇာတ shell script ထဲသို့ files၊ Libero SoC simulation directory အတွင်းတွင် သင့်လျော်သော လမ်းညွှန်များကို ဖန်တီးပါ၊ ထို့နောက် သရုပ်ဖော်မှုများကို လုပ်ဆောင်ပါ။
script ကို run ပါ file အောက်ပါ syntax ကို အသုံးပြု.
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
#
################################################## #############################
ကျွန်ုပ် ($presynth၊ $postsynth၊ $postlayout) = @ARGV;
if(system(“mkdir VCS_Presynth”)) {print “mkdir ကျရှုံး:\n”;}
if(system(“mkdir VCS_Postsynth”)) {print “mkdir ကျရှုံး:\n”;}
if(system(“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 {
ကျွန်ုပ်၏ $vlog = “/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k” ;
ကျွန်ုပ်၏ %LIB = ();
ငါ့ $file = $_[0] ;
ကျွန်ုပ်၏ $state = $_[1];
ဖွင့်သည်(ဝင်FILE၊”$file”) || “မဖွင့်နိုင်ဘူး။ File အကြောင်းရင်းဖြစ်နိုင်သည်-$!";
အကယ်၍ ($state eq “presynth”)
{
open(OUT1,">presynth_main.csh”) || die “Command ကိုဖန်တီး၍မရပါ။ File အကြောင်းရင်းဖြစ်နိုင်သည်-$!";
}
elsif ($state eq “postsynth”)
{
open(OUT1၊">postsynth_main.csh”) || die “Command ကိုဖန်တီး၍မရပါ။ File အကြောင်းရင်းဖြစ်နိုင်သည်-$!";
}
elsif ($state eq “postlayout”)
{
open(OUT1၊">postlayout_main.csh”) || die “Command ကိုဖန်တီး၍မရပါ။ File အကြောင်းရင်းဖြစ်နိုင်သည်-$!";
}
တခြား
{
ပုံနှိပ်ခြင်း “သရုပ်သကန်အခြေအနေ ပျောက်ဆုံးနေသည် \n” ;
}
open(OUT2၊">synopsys_sim.setup”) || die “Command ကိုဖန်တီး၍မရပါ။ File အကြောင်းရင်းဖြစ်နိုင်သည်-$!";
# .csh file
print out1 “#!/bin/csh -f\n\n\n” ;
#တည်ဆောက်သည် FILE
ပုံနှိပ်ထုတ်ရန် 2 “အလုပ် > DEFAULT\n” ;
OUT2 "SmartFusion2 : /sqa/users/Aditya/VCS/SmartFusion2\n" ;
while ($line =FILE>)
{
Synopsys VCS စနစ်ထည့်သွင်းခြင်း။
အကယ်၍ ($line =~ m/ PROJECT_DIR\s+\"(.*?)\"/)
{
print OUT1 “သတ်မှတ် PROJECT_DIR = \”$1\”\n\n\n” ;
}
elsif ( $line =~ m/vlog.*\.v\"/ )
{
အကယ်၍ ($line =~ m/\s+(\w*?)\_LIB/)
{
#print “\$1 =$1 \n” ;
$temp = “$1″.”_LIB”;
# print “Temp = $temp \n” ;
$LIB{$temp}++;
}
chomp($လိုင်း);
$line =~ s/^vlog/$vlog/ ;
$line =~ s/ //g;
1 “$line\n” ထုတ်ယူပါ။
}
elsif (($line =~ m/vsim.*presynth\.*)/) || ($line =~ m/vsim.*postsynth\.(*)/) || ($line
=~ m/vsim.*postlayout\.(*)/))
{
$tb = $1 ;
$tb =~ s/ //g;
chomp($tb);
#print “TB အမည် : $tb \n”;
အကယ်၍ ($line =~ m/sdf.*)\.sdf/)
{
chomp($လိုင်း);
$line = $1 ;
#print “LINE : $line \n” ;
အကယ်၍ ($line =~ m/max/)
{
$line =~ s/max \/// ;
$line =~ s/=/:/;
ပရင့်ထုတ်ရန် 1 “\n\n/cad_design/tools/vcs.dir/E-2011.03/bin/vcs -sim_res=1fs postlayout.$tb -sdf
အမြင့်ဆုံး:$tb.$line.sdf -l compile.log\n" ;
}
elsif ($ လိုင်း =~ m/min/)
{
$line =~ s/min \/// ;
$line =~ s/=/:/;
ပရင့်ထုတ်ရန် 1 “\n\n/cad_design/tools/vcs.dir/E-2011.03/bin/vcs -sim_res=1fs postlayout.$tb -sdf
အနည်းဆုံး-$tb.$line.sdf -l compile.log\n" ;
}
elsif ($line =~ m/typ/)
{
$line =~ s/typ \/// ;
$line =~ s/=/:/;
ပရင့်ထုတ်ရန် 1 “\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”
;
}
elif
($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”
;
}
elif
($state eq “postlayout”
)
{
OUT2 “postlayout : ./postlayout\n” ;
}
တခြား
{
ပုံနှိပ်ခြင်း “သရုပ်သကန်အခြေအနေ ပျောက်ဆုံးနေသည် \n” ;
}
foreach $i (သော့ %LIB)
{
#print “သော့ : $i တန်ဖိုး : $LIB{$i} \n” ;
“$i : ./$i\n” ;
}
OUT1 “\n\n” ;
print OUT1 “./simv -l run.log\n” ;
print out2 “DEFAULT : ./work\n” ;
IN ကိုပိတ်ပါ။FILE;
OUT1 ပိတ်ပါ
OUT2 ပိတ်ပါ
}
ပြန်လည်ပြင်ဆင်မှုမှတ်တမ်း (Microchip အကောင့်ဝင်ပါ။
တည်းဖြတ်မှုမှတ်တမ်းသည် စာရွက်စာတမ်းတွင် အကောင်အထည်ဖော်ခဲ့သော အပြောင်းအလဲများကို ဖော်ပြသည်။ အပြောင်းအလဲများ
လက်ရှိထုတ်ဝေမှုမှစတင်၍ ပြန်လည်ပြင်ဆင်မှုဖြင့် စာရင်းပြုစုထားပါသည်။
ပြန်လည်ပြင်ဆင်ခြင်း။ | ရက်စွဲ | ဖော်ပြချက် |
A | ၅/၅ | ဤပြင်ဆင်မှုတွင် အောက်ပါအပြောင်းအလဲများကို ပြုလုပ်သည်- • စာရွက်စာတမ်းကို Microchip နမူနာပုံစံသို့ ပြောင်းထားသည်။ ကနဦးပြန်လည်ပြင်ဆင်မှု။ • အပိုင်း 5 ကို အပ်ဒိတ်လုပ်ထားသည်။ Siemens QuestaSim စနစ်ထည့်သွင်းခြင်း/ModelSim စနစ်ထည့်သွင်းခြင်းစဥ်အတွင်း မြင်နိုင်စွမ်းနှင့် ပိုမိုကောင်းမွန်အောင်ပြုလုပ်ခြင်းတွင် အကျိုးသက်ရောက်မှုများကို ရှင်းပြထားသည့် မှတ်စုအသစ်တစ်ခုပါဝင်ရန်။ |
Microchip FPGA ပံ့ပိုးမှု
Microchip FPGA ထုတ်ကုန်အုပ်စုသည် ၎င်း၏ထုတ်ကုန်များကို ဖောက်သည်ဝန်ဆောင်မှု၊ ဖောက်သည်နည်းပညာပံ့ပိုးမှုစင်တာ၊ a website နှင့် ကမ္ဘာတစ်ဝှမ်းရှိ အရောင်းရုံးများ။
ပံ့ပိုးကူညီမှုထံ မဆက်သွယ်မီ Microchip အွန်လိုင်းရင်းမြစ်များကို သွားရောက်ကြည့်ရှုရန် အကြံပြုထားသည်မှာ ၎င်းတို့၏မေးမြန်းချက်များကို ဖြေပြီးသားဖြစ်နိုင်ခြေများသောကြောင့်ဖြစ်သည်။
နည်းပညာပံ့ပိုးကူညီမှုစင်တာမှတဆင့် ဆက်သွယ်ပါ။ website မှာ www.microchip.com/support. FPGA စက်ပစ္စည်းအပိုင်းနံပါတ်ကို ဖော်ပြပါ၊ သင့်လျော်သော case အမျိုးအစားကို ရွေးချယ်ပြီး ဒီဇိုင်းကို အပ်လုဒ်လုပ်ပါ။ fileနည်းပညာပိုင်းဆိုင်ရာ ပံ့ပိုးကူညီမှု ကိစ္စတစ်ခုကို ဖန်တီးနေစဉ်။
ထုတ်ကုန်စျေးနှုန်း၊ ထုတ်ကုန်အဆင့်မြှင့်တင်မှု၊ အပ်ဒိတ်အချက်အလက်၊ မှာယူမှုအခြေအနေနှင့် ခွင့်ပြုချက်ကဲ့သို့သော နည်းပညာမဟုတ်သော ထုတ်ကုန်ပံ့ပိုးမှုအတွက် ဖောက်သည်ဝန်ဆောင်မှုကို ဆက်သွယ်ပါ။
- မြောက်အမေရိကမှ 800.262.1060 ကိုခေါ်ဆိုပါ။
- ကမ္ဘာတစ်ဝှမ်းမှ 650.318.4460 ကိုခေါ်ဆိုပါ။
- Fax၊ ကမ္ဘာပေါ်ရှိ မည်သည့်နေရာမှမဆို၊ 650.318.8044
Microchip အချက်အလက်
Microchip ပါ။ Website
Microchip သည် ကျွန်ုပ်တို့မှ တစ်ဆင့် အွန်လိုင်း ပံ့ပိုးမှု ပေးပါသည်။ website မှာ www.microchip.com/. ဒီ website ကိုဖန်တီးရန်အသုံးပြုသည်။ files နှင့် အချက်အလက်များကို ဖောက်သည်များအတွက် အလွယ်တကူ ရရှိနိုင်သည်။ ရရှိနိုင်သောအကြောင်းအရာအချို့တွင်-
- ထုတ်ကုန်ပံ့ပိုးမှု – ဒေတာစာရွက်များနှင့် အမှားအယွင်းများ၊ အပလီကေးရှင်းမှတ်စုများနှင့် များample ပရိုဂရမ်များ၊ ဒီဇိုင်းအရင်းအမြစ်များ၊ အသုံးပြုသူ၏လမ်းညွှန်ချက်များနှင့် ဟာ့ဒ်ဝဲပံ့ပိုးမှုစာရွက်စာတမ်းများ၊ နောက်ဆုံးထွက်ဆော့ဖ်ဝဲလ်များနှင့် မော်ကွန်းတင်ထားသောဆော့ဖ်ဝဲများ
- ယေဘူယျနည်းပညာပံ့ပိုးမှု - မကြာခဏမေးလေ့ရှိသောမေးခွန်းများ (FAQs)၊ နည်းပညာဆိုင်ရာပံ့ပိုးကူညီမှုတောင်းဆိုမှုများ၊ အွန်လိုင်းဆွေးနွေးမှုအုပ်စုများ၊ Microchip ဒီဇိုင်းမိတ်ဖက်ပရိုဂရမ်အဖွဲ့ဝင်စာရင်း
- Microchip ၏လုပ်ငန်း - ထုတ်ကုန်ရွေးချယ်ခြင်းနှင့် မှာယူခြင်းလမ်းညွှန်များ၊ နောက်ဆုံးထုတ် Microchip သတင်းထုတ်ပြန်ချက်များ၊ ဆွေးနွေးပွဲများနှင့် ပွဲများစာရင်းများ၊ Microchip အရောင်းရုံးများစာရင်းများ၊ ဖြန့်ဖြူးသူများနှင့် စက်ရုံကိုယ်စားလှယ်များ၊
ထုတ်ကုန်ပြောင်းလဲမှု အကြောင်းကြားချက် ဝန်ဆောင်မှု
Microchip ၏ထုတ်ကုန်ပြောင်းလဲမှုသတိပေးချက်ဝန်ဆောင်မှုသည် သုံးစွဲသူများအား Microchip ထုတ်ကုန်များပေါ်တွင် လက်ရှိရှိနေစေရန် ကူညီပေးပါသည်။ စာရင်းသွင်းသူများသည် သတ်မှတ်ထားသော ထုတ်ကုန်မိသားစု သို့မဟုတ် စိတ်ပါဝင်စားသော ဖွံ့ဖြိုးတိုးတက်ရေးကိရိယာတစ်ခုနှင့် ပတ်သက်သည့် အပြောင်းအလဲများ၊ အပ်ဒိတ်များ၊ တည်းဖြတ်မှုများ သို့မဟုတ် အမှားအယွင်းများ ရှိသည့်အခါတိုင်း အီးမေးလ်အကြောင်းကြားချက် ရရှိပါမည်။
စာရင်းသွင်းရန်၊ သို့သွားပါ။ www.microchip.com/pcn နှင့် မှတ်ပုံတင်ရန် ညွှန်ကြားချက်များကို လိုက်နာပါ။
ဖောက်သည်ပံ့ပိုးမှု
Microchip ထုတ်ကုန်များကို အသုံးပြုသူများသည် ချန်နယ်များစွာမှတစ်ဆင့် အကူအညီများ ရရှိနိုင်ပါသည်။
- ဖြန့်ဖြူးသူ သို့မဟုတ် ကိုယ်စားလှယ်
- ပြည်တွင်းအရောင်းရုံး
- Embedded Solutions Engineer (ESE)
- နည်းပညာနှင့်ပတ်သက်သောအထောက်အပံ့
ဝယ်ယူသူများသည် ၎င်းတို့၏ ဖြန့်ဖြူးရောင်းချသူ၊ ကိုယ်စားလှယ် သို့မဟုတ် ESE ကို ပံ့ပိုးကူညီရန် ဆက်သွယ်သင့်သည်။ ဖောက်သည်များကို ကူညီရန် ဒေသတွင်း အရောင်းရုံးများလည်း ရှိသည်။ အရောင်းရုံးများနှင့် တည်နေရာများစာရင်းကို ဤစာတမ်းတွင် ထည့်သွင်းထားသည်။
နည်းပညာပိုင်းဆိုင်ရာ ပံ့ပိုးကူညီမှုများကိုလည်း ရရှိနိုင်ပါသည်။ webဆိုက်- www.microchip.com/support
Microchip Devices Code Protection Feature
Microchip ထုတ်ကုန်များတွင် ကုဒ်ကာကွယ်ရေးအင်္ဂါရပ်၏ အောက်ပါအသေးစိတ်အချက်အလက်များကို မှတ်သားထားပါ-
- Microchip ထုတ်ကုန်များသည် ၎င်းတို့၏ သီးခြား Microchip Data Sheet တွင်ပါရှိသော သတ်မှတ်ချက်များနှင့် ကိုက်ညီပါသည်။
- ရည်ရွယ်ထားသည့်ပုံစံ၊ လည်ပတ်မှုသတ်မှတ်ချက်များအတွင်းနှင့် ပုံမှန်အခြေအနေများတွင် အသုံးပြုသည့်အခါ ၎င်း၏ထုတ်ကုန်မိသားစုသည် လုံခြုံသည်ဟု Microchip က ယုံကြည်သည်။
- Microchip သည် တန်ဖိုးရှိပြီး ၎င်း၏ ဉာဏမူပိုင်ခွင့်အခွင့်အရေးများကို ပြင်းပြင်းထန်ထန် ကာကွယ်ပေးသည်။ Microchip ထုတ်ကုန်၏ ကုဒ်အကာအကွယ်အင်္ဂါရပ်များကို ချိုးဖောက်ရန် ကြိုးပမ်းမှုများကို တင်းတင်းကျပ်ကျပ် တားမြစ်ထားပြီး Digital Millennium မူပိုင်ခွင့်အက်ဥပဒေကို ချိုးဖောက်နိုင်သည်။
- Microchip နှင့် အခြား semiconductor ထုတ်လုပ်သူ နှစ်ဦးလုံးသည် ၎င်း၏ကုဒ်၏ လုံခြုံရေးကို အာမခံနိုင်မည်မဟုတ်ပေ။ ကုဒ်အကာအကွယ်သည် ကျွန်ုပ်တို့သည် ထုတ်ကုန်သည် “မပျက်စီးနိုင်သော” ဖြစ်သည်ဟု အာမခံသည်ဟု မဆိုလိုပါ။
ကုဒ်အကာအကွယ်သည် အဆက်မပြတ် ပြောင်းလဲနေသည်။ Microchip သည် ကျွန်ုပ်တို့၏ထုတ်ကုန်များ၏ ကုဒ်ကာကွယ်ရေးအင်္ဂါရပ်များကို စဉ်ဆက်မပြတ်တိုးတက်ကောင်းမွန်အောင်လုပ်ဆောင်ရန် ကတိပြုပါသည်။
ဥပဒေသတိပေးချက်
ဤထုတ်ဝေမှုနှင့် ဤနေရာတွင်ရှိအချက်အလက်များကို Microchip ထုတ်ကုန်များကို ဒီဇိုင်းထုတ်ခြင်း၊ စမ်းသပ်ခြင်းနှင့် Microchip ထုတ်ကုန်များကို သင့်အက်ပ်လီကေးရှင်းနှင့် ပေါင်းစပ်ရန်အပါအဝင် Microchip ထုတ်ကုန်များနှင့်သာ အသုံးပြုနိုင်ပါသည်။ ဤအချက်အလက်ကို အခြားနည်းဖြင့် အသုံးပြုခြင်းသည် ဤစည်းကမ်းချက်များကို ချိုးဖောက်ပါသည်။ စက်ပစ္စည်းအပလီကေးရှင်းများနှင့်ပတ်သက်သည့် အချက်အလက်များကို သင့်အဆင်ပြေစေရန်အတွက်သာ ပံ့ပိုးပေးထားပြီး အပ်ဒိတ်များဖြင့် အစားထိုးနိုင်ပါသည်။ သင်၏လျှောက်လွှာသည် သင်၏သတ်မှတ်ချက်များနှင့် ကိုက်ညီကြောင်း သေချာစေရန်မှာ သင်၏တာဝန်ဖြစ်သည်။ အပိုပံ့ပိုးကူညီမှုများအတွက် သင်၏ဒေသခံ Microchip အရောင်းရုံးသို့ ဆက်သွယ်ပါ သို့မဟုတ် အပိုပံ့ပိုးကူညီမှုအား တွင် ရယူပါ။ www.microchip.com/en-us/support/design-help/client-support-services.
ဤအချက်အလက်များကို Microchip “ရှိသကဲ့သို့” မှ ပံ့ပိုးပေးပါသည်။ MICROCHIP သည် မည်သည့်အမျိုးအစားကိုမဆို ကိုယ်စားပြုခြင်း သို့မဟုတ် အာမခံချက်များအား ဖော်ပြခြင်း သို့မဟုတ် အဓိပ္ပါယ်ဖွင့်ဆိုသည်ဖြစ်စေ စာဖြင့်ဖြစ်စေ သို့မဟုတ် နှုတ်ဖြင့်ဖြစ်စေ၊ ဥပဒေအရဖြစ်စေ သို့မဟုတ် အခြားနည်းဖြင့်ဖြစ်စေ ပါဝင်သည့်အချက်အလက်များနှင့်သက်ဆိုင်သော်လည်း အကန့်အသတ်မရှိ ဖော်ပြထားသည်ဖြစ်စေ ချိုးဖောက်မှုမရှိသော၊ ရောင်းဝယ်ဖောက်ကားခြင်းနှင့် ကြံ့ခိုင်မှုတို့သည် ၎င်း၏အခြေအနေ၊ အရည်အသွေး သို့မဟုတ် စွမ်းဆောင်ရည်နှင့်သက်ဆိုင်သော အာမခံချက်များ သို့မဟုတ် အထူးရည်ရွယ်ချက်အတွက် သို့မဟုတ် အာမခံချက်။
သွယ်ဝိုက်သော၊ အထူး၊ ပြစ်ဒဏ်ခတ်မှု၊ မတော်တဆ သို့မဟုတ် အကျိုးဆက်ဖြစ်သော ဆုံးရှုံးမှု၊ ပျက်စီးမှု၊ ကုန်ကျစရိတ်၊ ကုန်ကျစရိတ်၊ သို့မဟုတ် စရိတ်စက တစ်မျိုးမျိုးအတွက် မည်ကဲ့သို့သော သက်ရောက်မှုရှိစေကာမူ၊ MICROCHIP သည် ဖြစ်နိုင်ခြေ သို့မဟုတ် ပျက်စီးမှုများသည် မျှော်မှန်းနိုင်သည်ဟု အကြံပြုထားသည်။ ဥပဒေအရ ခွင့်ပြုထားသော အတိုင်းအတာအထိ၊ သတင်းအချက်အလက်နှင့် သက်ဆိုင်သည့် မည်သည့်နည်းဖြင့်မဆို တောင်းဆိုမှုအားလုံးတွင် Microchip ၏ စုစုပေါင်းတာဝန်ဝတ္တရားမှာ အချက်အလက်များ သို့မဟုတ် ၎င်း၏အသုံးပြုမှုတွင် သက်ဆိုင်သည့် အခကြေးငွေပမာဏထက် ကျော်လွန်မည်မဟုတ်ပါ ၊ အကယ်၍ သင့်တွင်ပါရှိသည့် ပမာဏအတိုင်း ရှိပါက၊ အချက်အလက်
အသက်ကယ်ထောက်ပံ့မှုနှင့်/သို့မဟုတ် ဘေးကင်းရေးအပလီကေးရှင်းများတွင် Microchip စက်ပစ္စည်းများကို အသုံးပြုခြင်းသည် ဝယ်သူ၏အန္တရာယ်မှာ လုံးလုံးလျားလျားဖြစ်ပြီး ဝယ်ယူသူသည် ယင်းအသုံးပြုမှုမှရရှိလာသော ပျက်စီးဆုံးရှုံးမှုများ၊ အရေးဆိုမှုများ၊ လျော်ကြေးများ သို့မဟုတ် ကုန်ကျစရိတ်များမှ ကာကွယ်ရန်၊ လျော်ကြေးပေးပြီး ကိုင်ဆောင်ရန် သဘောတူပါသည်။ မည်သည့် Microchip ဉာဏပစ္စည်းမူပိုင်ခွင့်အခွင့်အရေးများအောက်တွင်၊ သွယ်ဝိုက်၍ဖြစ်စေ၊ အခြားနည်းဖြင့်ဖြစ်စေ လိုင်စင်များကို အခြားနည်းဖြင့်ဖော်ပြခြင်းမပြုဘဲ ဖြန့်ဝေခြင်းမပြုပါ။
ကုန်အမှတ်တံဆိပ်များ
Microchip အမည်နှင့် လိုဂို၊ Microchip လိုဂို၊ Adaptec၊ AVR၊ AVR လိုဂို၊ AVR Freaks၊ BesTime၊ BitCloud၊ CryptoMemory၊ CryptoRF၊ dsPIC၊ flexPWR၊ HELDO၊ IGLOO၊ JukeBlox၊ KeeLoq၊ Kleer၊ LANCheck၊ LinkMD, maToSty MediaLB၊ megaAVR၊ Microsemi၊ Microsemi လိုဂို၊ အများစု၊ အများဆုံး လိုဂို၊ MPLAB၊ OptoLyzer၊ PIC၊ picoPower၊ PICSTART၊ PIC32 လိုဂို၊ PolarFire၊ Prochip ဒီဇိုင်နာ၊ QTouch၊ SAM-BA၊ SenGenuity၊ SpyNIC၊ SST၊ SST Logoymmetric၊ SuperFlash၊ ၊ SyncServer၊ Tachyon၊ TimeSource၊ tinyAVR၊ UNI/O၊ Vectron နှင့် XMEGA တို့သည် USA နှင့် အခြားသော နိုင်ငံများတွင် Microchip Technology Incorporated ၏ မှတ်ပုံတင်ထားသော ကုန်အမှတ်တံဆိပ်များ ဖြစ်ပါသည်။
AgileSwitch၊ APT၊ ClockWorks၊ The Embedded Control Solutions ကုမ္ပဏီ၊ EtherSynch၊ Flashtec၊ Hyper Speed Control၊ HyperLight Load၊ Libero၊ motorBench၊ mTouch၊ Powermite 3၊ Precision Edge၊ ProASIC၊ ProASIC Plus၊ ProASIC Plus လိုဂို၊ Quiet-Wire၊ SmartFusion၊ SyncWorld၊ Temux၊ TimeCesium၊ TimeHub၊ TimePictra၊ TimeProvider၊ TrueTime နှင့် ZL တို့သည် USA တွင် Microchip Technology Incorporated ၏ မှတ်ပုံတင်ထားသော ကုန်အမှတ်တံဆိပ်များဖြစ်သည်
ကပ်လျက်သော့ဖိနှိပ်မှု၊ AKS၊ အင်နာလော့-ဖော်-the-ဒစ်ဂျစ်တယ်ခေတ်၊ မည်သည့် Capacitor၊ AnyIn၊ AnyOut၊ တိုးမြှင့်ပြောင်းလဲခြင်း၊ BlueSky၊ BodyCom၊ Clockstudio၊ CodeGuard၊ CryptoAuthentication၊ CryptoAutomotive၊ CryptoCompanion၊ CryptoPICDnamic၊ ds၊ ၊ DAM၊ ECAN၊ Espresso T1S၊ EtherGREEN၊ GridTime၊ IdealBridge၊ In-Circuit Serial Programming၊ ICSP၊ INICnet၊ Intelligent Paralleling၊ IntelliMOS၊ Inter-Chip ချိတ်ဆက်မှု၊ JitterBlocker၊ Knob-on-Display၊ KoDto၊ maxCryView၊ memBrain၊ Mindi၊ MiWi၊ MPASM၊ MPF၊ MPLAB လက်မှတ်ရလိုဂို၊ MPLIB၊ MPLINK၊ MultiTRAK၊ NetDetach၊ Omniscient Code Generation၊ PICDEM၊ PICDEM.net၊
PICkit၊ PICtail၊ PowerSmart၊ PureSilicon၊ QMatrix၊ REAL ICE၊ Ripple Blocker၊ RTAX၊ RTG4၊ SAMICE၊ Serial Quad I/O၊ simpleMAP၊ SimpliPHY၊ SmartBuffer၊ SmartHLS၊ SMART-IS၊ storClad၊ SQI၊ SuperSwitcher၊
SuperSwitcher II၊ Switchtec၊ SynchroPHY၊ စုစုပေါင်းခံနိုင်ရည်၊ ယုံကြည်ရသောအချိန်၊ TSHARC၊ USBCheck၊ VariSense၊ VectorBlox၊ VeriPHY၊ ViewSpan၊ WiperLock၊ XpressConnect နှင့် ZENA တို့သည် Microchip Technology Incorporated ၏ ကုန်အမှတ်တံဆိပ်များဖြစ်သည်
US နှင့် အခြားနိုင်ငံများတွင်
SQTP သည် USA တွင်ထည့်သွင်းထားသော Microchip Technology ၏ဝန်ဆောင်မှုအမှတ်အသားတစ်ခုဖြစ်သည်။
Adaptec လိုဂို၊ ဝယ်လိုအားရှိ ကြိမ်နှုန်း၊ 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 အနောက် Chandler Blvd Chandler၊ AZ 85224-6199 ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ ဖက်စ်- ၇၃၆-၇၈၄-၆၀၉၄ နည်းပညာနှင့်ပတ်သက်သောအထောက်အပံ့: www.microchip.com/support Web လိပ်စာ- www.microchip.com အတ္တလန်တာ Duluth၊ GA ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ ဖက်စ်- ၇၃၆-၇၈၄-၆၀၉၄ အော်စတင်၊ TX ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ ဘော်စတွန် Westborough, MA ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ ဖက်စ်- ၇၃၆-၇၈၄-၆၀၉၄ ချီကာဂို Itasca, IL ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ ဖက်စ်- ၇၃၆-၇၈၄-၆၀၉၄ ဒါလား Addison၊ TX ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ ဖက်စ်- ၇၃၆-၇၈၄-၆၀၉၄ ဒက်ထရွိုက် Novi, MI ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ ဟူစတန်၊ TX ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ အင်ဒီယာနာပိုလစ် Noblesville, IN ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ ဖက်စ်- ၇၃၆-၇၈၄-၆၀၉၄ ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ လော့စ်အိန်ဂျလိစ် မစ်ရှင် Viejo, CA ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ ဖက်စ်- ၇၃၆-၇၈၄-၆၀၉၄ ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ Raleigh, NC ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ နယူးယောက်၊ NY ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ San Jose, CA ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ ကနေဒါ - တိုရွန်တို ဖုန်း ၇၃၆-၇၈၄-၆၀၉၄ ဖက်စ်- ၇၃၆-၇၈၄-၆၀၉၄ |
သြစတြေးလျ - ဆစ်ဒနီ Tel: 61-2-9868-6733 တရုတ်-ပေကျင်း Tel: 86-10-8569-7000 တရုတ်-ချန်ဒူး Tel: 86-28-8665-5511 တရုတ်-ချုံကင်း Tel: 86-23-8980-9588 တရုတ် - Dongguan Tel: 86-769-8702-9880 တရုတ်-ကွမ်ကျိုး Tel: 86-20-8755-8029 တရုတ် - Hangzhou Tel: 86-571-8792-8115 တရုတ် - ဟောင်ကောင် SAR Tel: 852-2943-5100 တရုတ်-နန်ကျင်း Tel: 86-25-8473-2460 တရုတ် - Qingdao Tel: 86-532-8502-7355 တရုတ်-ရှန်ဟိုင်း Tel: 86-21-3326-8000 တရုတ် - ရှန်ယန်း Tel: 86-24-2334-2829 တရုတ်-ရှန်ကျန်း Tel: 86-755-8864-2200 တရုတ် - Suzhou Tel: 86-186-6233-1526 တရုတ်-ဝူဟန် Tel: 86-27-5980-5300 တရုတ်-ရှန်း Tel: 86-29-8833-7252 တရုတ် – Xiamen Tel: 86-592-2388138 တရုတ်-ဇူဟိုင် Tel: 86-756-3210040 |
အိန္ဒိယ-ဘန်ဂလို Tel: 91-80-3090-4444 အိန္ဒိယ - နယူးဒေလီ Tel: 91-11-4160-8631 အိန္ဒိယ - ပွန် Tel: 91-20-4121-0141 ဂျပန်-အိုဆာကာ Tel: 81-6-6152-7160 ဂျပန်-တိုကျို Tel: 81-3-6880- 3770 ကိုရီးယား - ဒေဂူ Tel: 82-53-744-4301 ကိုရီးယား - ဆိုးလ် Tel: 82-2-554-7200 မလေးရှား - ကွာလာလမ်ပူ Tel: 60-3-7651-7906 မလေးရှား-ပီနန် Tel: 60-4-227-8870 ဖိလစ်ပိုင် - မနီလာ Tel: 63-2-634-9065 စင်္ကာပူ Tel: 65-6334-8870 ထိုင်ဝမ် - ရှင်ချူး Tel: 886-3-577-8366 ထိုင်ဝမ် - ရှုံ Tel: 886-7-213-7830 ထိုင်ဝမ်-တိုင်ပေ Tel: 886-2-2508-8600 ထိုင်း-ဘန်ကောက် Tel: 66-2-694-1351 ဗီယက်နမ် - ဟိုချီမင်း Tel: 84-28-5448-2100 |
သြစတြီးယား - ဝဲလ် Tel: 43-7242-2244-39 Fax: 43-7242-2244-393 ဒိန်းမတ် - ကိုပင်ဟေဂင် Tel: 45-4485-5910 Fax: 45-4485-2829 ဖင်လန် - Espoo Tel: 358-9-4520-820 ပြင်သစ် - ပဲရစ် Tel: 33-1-69-53-63-20 Fax: 33-1-69-30-90-79 ဂျာမနီ - Garching Tel: 49-8931-9700 ဂျာမနီ – ဟာန် Tel: 49-2129-3766400 ဂျာမနီ – Heilbronn Tel: 49-7131-72400 ဂျာမနီ – Karlsruhe Tel: 49-721-625370 ဂျာမနီ – မြူးနစ် Tel: 49-89-627-144-0 Fax: 49-89-627-144-44 ဂျာမနီ – Rosenheim Tel: 49-8031-354-560 အစ္စရေး – ရာအာနနာ Tel: 972-9-744-7705 အီတလီ – မီလန် Tel: 39-0331-742611 Fax: 39-0331-466781 အီတလီ – Padova Tel: 39-049-7625286 နယ်သာလန် - Drunen Tel: 31-416-690399 Fax: 31-416-690340 နော်ဝေး - Trondheim Tel: 47-72884388 ပိုလန် - ဝါဆော Tel: 48-22-3325737 ရိုမေးနီးယား - ဘူခါရက်စ် Tel: 40-21-407-87-50 စပိန် – မက်ဒရစ် Tel: 34-91-708-08-90 Fax: 34-91-708-08-91 ဆွီဒင် - Gothenberg Tel: 46-31-704-60-40 ဆွီဒင် – စတော့ဟုမ်း Tel: 46-8-5090-4654 ယူကေ - Wokingham Tel: 44-118-921-5800 Fax: 44-118-921-5820 |
© 2023 Microchip Technology Inc. နှင့် ၎င်း၏ လုပ်ငန်းခွဲများ
DS50003627A –
စာရွက်စာတမ်းများ / အရင်းအမြစ်များ
![]() |
MICROCHIP Libero SoC Simulation Library ဆော့ဖ်ဝဲလ် [pdf] အသုံးပြုသူလမ်းညွှန် DS50003627A၊ Libero SoC Simulation Library Software၊ SoC Simulation Library Software၊ Simulation Library Software၊ Library Software၊ Software |