Libero SoC سمولیشن
لائبریری سیٹ اپ کی ہدایات
تعارف
اس دستاویز کا مقصد Libero SoC پروجیکٹ کو بطور ان پٹ استعمال کرتے ہوئے نقلی ماحول کو ترتیب دینے کے طریقہ کار کو بیان کرنا ہے۔ یہ دستاویزات Libero SoC v11.9 اور نئے سافٹ ویئر ریلیز کے ساتھ استعمال کے لیے فراہم کردہ پہلے سے مرتب شدہ لائبریریوں سے مطابقت رکھتی ہیں۔ فراہم کردہ لائبریریاں Verilog کے لیے مرتب کی گئی ہیں۔ VHDL صارفین کو مخلوط موڈ سمولیشن کی اجازت دینے والے لائسنس کی ضرورت ہوتی ہے۔
مرتب شدہ نقلی لائبریریاں درج ذیل ٹولز کے لیے دستیاب ہیں۔
- Aldec ایکٹو-ایچ ڈی ایل
- Aldec Riviera-PRO
- Cadence Incisive Enterprise اور Xcelium
- سیمنز 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-layout) کے تحت ایک ModelSim ME/ModelSim Pro ME سمولیشن شروع کریں۔ یہ مرحلہ run.do پیدا کرتا ہے۔ file ہر ڈیزائن کے مرحلے کے لیے ModelSim ME/ModelSim Pro ME کے لیے۔
اہم: ہر ایک سمولیشن رن شروع کرنے کے بعد، خود کار طریقے سے تیار کردہ run.do کا نام تبدیل کریں۔ file Libero SoC کو اوور رائٹ کرنے سے روکنے کے لیے نقلی ڈائرکٹری کے تحت file. سابق کے لیےampلی ، the files کا نام تبدیل کر کے presynth_run.do، postsynth_run.do اور postlayout_run.do رکھا جا سکتا ہے۔
Active-HDL اور Riviera-Pro کے لیے Aldec سیٹ اپ (ایک سوال پوچھیں۔)
دوڑو file ModelSim ME/ModelSim Pro ME کے ذریعے استعمال کیا جا سکتا ہے اور Aldec simulators کا استعمال کرتے ہوئے تخروپن کے لیے استعمال کیا جا سکتا ہے۔
2.1 ماحولیاتی متغیر (ایک سوال پوچھیں۔)
اپنے ماحول کے متغیر کو اپنے لائسنس پر سیٹ کریں۔ file مقام:
LM_LICENSE_FILE: لائسنس سرور پر ایک پوائنٹر شامل کرنا ضروری ہے۔
2.2 مرتب شدہ لائبریری ڈاؤن لوڈ کریں (ایک سوال پوچھیں۔)
مائیکرو چِپ سے Aldec Active-HDL اور Aldec Riviera-PRO کے لیے لائبریریاں ڈاؤن لوڈ کریں۔ webسائٹ
2.3 Aldec تخروپن کے لیے run.do کو تبدیل کرنا (ایک سوال پوچھیں۔)
دوڑو fileایکٹو-ایچ ڈی ایل اور رویرا-پرو ٹول کا استعمال کرتے ہوئے سمیولیشنز کے لیے Libero SoC کے ذریعے تیار کردہ s کو ایک ہی تبدیلی کے ساتھ Active-HDL اور Riviera-Pro کا استعمال کرتے ہوئے سمیولیشنز کے لیے استعمال کیا جا سکتا ہے۔ مندرجہ ذیل جدول ModelSim run.do میں ترمیم کرنے کے لیے Aldec کے مساوی کمانڈز کی فہرست دیتا ہے۔ file.
جدول 2-1۔ Aldec مساوی کمانڈز
ماڈل سم | ایکٹو-ایچ ڈی ایل |
vlog | الگ |
vcom | acom |
vlib | علیب |
vsim | عاصم |
vmap | amap |
مندرجہ ذیل کے طور پر ہےample run.do Aldec simulators سے متعلق ہے۔
- موجودہ ورکنگ ڈائرکٹری کا مقام متعین کریں۔
ڈی ایس این سیٹ کریں۔ - ایک ورکنگ لائبریری کا نام سیٹ کریں، اس کے مقام کا نقشہ بنائیں، اور پھر Microchip FPGA فیملی کے مقام کا نقشہ بنائیں
پہلے سے مرتب شدہ لائبریریاں (مثال کے طور پرample، SmartFusion2) جس پر آپ اپنا ڈیزائن چلا رہے ہیں۔
alib presynth
amap presynth presynth
amap SmartFusion2 - تمام ضروری ایچ ڈی ایل کو مرتب کریں۔ files کو مطلوبہ لائبریری کے ساتھ ڈیزائن میں استعمال کیا جاتا ہے۔
alog -work presynth temp.v (ویریلوگ کے لیے)
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
10us چلائیں
2.4 معلوم مسائل (ایک سوال پوچھیں۔)
اس حصے میں معلوم مسائل اور حدود کی فہرست دی گئی ہے۔
- Riviera-PRO کا استعمال کرتے ہوئے مرتب کی گئی لائبریریاں مخصوص پلیٹ فارم ہیں (یعنی 64 بٹ لائبریریاں 32 بٹ پلیٹ فارم پر نہیں چلائی جا سکتی ہیں اور اس کے برعکس)۔
- SERDES/MDDR/FDDR پر مشتمل ڈیزائن کے لیے، اپنے run.do میں درج ذیل آپشن کا استعمال کریں۔ files ان کے ڈیزائن مرتب کرنے کے بعد نقلیں چلاتے ہوئے:
- ایکٹو-ایچ ڈی ایل: عاصم -o2
– Riviera-PRO: asim –O2 (presynth اور post-layout simulations کے لیے) اور asim –O5 (پوسٹ لے آؤٹ سمیلیشنز کے لیے)
Active-HDL اور Riviera-Pro کے لیے Aldec سیٹ اپ میں درج ذیل زیر التواء SARs ہیں۔ مزید معلومات کے لیے رابطہ کریں۔ مائیکرو چِپ ٹیکنیکل سپورٹ. - SAR 49908 - Active-HDL: VHDL Error for Math block simulations
- 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ترتیب میں s files
NCSim کا استعمال کرتے ہوئے تخروپن کو چلانے کی ضرورت ہے۔
اہم: Cadence Incisive Enterprise کے نئے ورژن جاری کرنا بند کر دیا ہے۔
سمیلیٹر اور Xcelium سمیلیٹر کو سپورٹ کرنا شروع کر دیا۔
3.1 ماحولیاتی متغیرات (ایک سوال پوچھیں۔)
Cadence Incisive simulator کو چلانے کے لیے، درج ذیل ماحولیاتی متغیرات کو ترتیب دیں:
- 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 بٹ اور 32 بٹ آپریٹنگ سسٹم کے درمیان سوئچ کرنے کی صورت میں نقلی ماحول کو ترتیب دینے کے تین طریقے ہیں:
کیس 1: PATH متغیر
درج ذیل کمانڈ کو چلائیں:
سیٹ پاتھ = (install_dir/tools/bin/64bit $path) 64bit مشینوں کے لیے اور
32 بٹ مشینوں کے لیے پاتھ = (install_dir/tools/bin $path) سیٹ کریں۔
کیس 2: -64 بٹ کمانڈ لائن آپشن کا استعمال
کمانڈ لائن میں -64 بٹ آپشن کی وضاحت کریں تاکہ 64 بٹ قابل عمل کو طلب کیا جاسکے۔
کیس 3: INCA_64BIT یا CDS_AUTO_64BIT ماحولیاتی متغیر کو ترتیب دینا
INCA_64BIT متغیر کو بولین سمجھا جاتا ہے۔ آپ اس متغیر کو کسی بھی قدر یا null string پر سیٹ کر سکتے ہیں۔
setenv INCA_64BIT
اہم: The INCA_64BIT ماحولیاتی متغیر دیگر Cadence ٹولز، جیسے IC ٹولز کو متاثر نہیں کرتا ہے۔ تاہم، Incisive ٹولز کے لیے، INCA_64BIT متغیر CDS_AUTO_64BIT ماحولیاتی متغیر کی ترتیب کو اوور رائیڈ کرتا ہے۔ اگر INCA_64BIT ماحولیاتی متغیر سیٹ ہے تو، تمام Incisive ٹولز 64-bit موڈ میں چلتے ہیں۔ setenv CDS_AUTO_64BIT شامل ہیں: INCA
اہم: The سٹرنگ INCA بڑے حروف میں ہونی چاہیے۔ تمام ایگزیکیوٹیبلز کو 32 بٹ موڈ یا 64 بٹ موڈ میں چلایا جانا چاہیے، ایک ایگزیکیوٹیبل کو شامل کرنے کے لیے متغیر کو سیٹ نہ کریں، جیسا کہ درج ذیل میں ہے:
setenv CDS_AUTO_64BIT شامل ہے:ncelab
دیگر Cadence ٹولز، جیسے IC ٹولز، 64-bit یا 32-bit executables کے انتخاب کو کنٹرول کرنے کے لیے CDS_AUTO_64BIT ماحولیاتی متغیر کا بھی استعمال کرتے ہیں۔ مندرجہ ذیل جدول دکھاتا ہے کہ آپ کس طرح CDS_AUTO_64BIT متغیر کو تمام موڈز میں Incisive ٹولز اور IC ٹولز کو چلانے کے لیے سیٹ کر سکتے ہیں۔
جدول 3-1۔ CDS_AUTO_64BIT متغیرات
CDS_AUTO_64BIT متغیر | تیز کرنے والے اوزار | آئی سی ٹولز |
setenv CDS_AUTO_64BIT تمام | 64 بٹ | 64 بٹ |
setenv CDS_AUTO_64BIT کوئی نہیں۔ | 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 EXCLUDE:ncelab
اگر آپ Incisive ٹولز (setenv CDS_AUTO_64BIT EXCLUDE:INCA) کو خارج کرنے کے لیے CDS_AUTO_64BIT متغیر سیٹ کرتے ہیں، تو تمام Incisive ٹولز 32-bit موڈ میں چلائے جاتے ہیں۔ تاہم، -64 بٹ کمانڈ لائن آپشن ماحولیاتی متغیر کو اوور رائیڈ کرتا ہے۔
درج ذیل ترتیب files آپ کو اپنے ڈیٹا کو منظم کرنے اور نقلی ٹولز اور یوٹیلیٹیز کے آپریشن کو کنٹرول کرنے میں مدد کرتا ہے:
- لائبریری میپنگ file (cds.lib) - آپ کے ڈیزائن کے مقام کے لیے ایک منطقی نام کی وضاحت کرتا ہے۔
- لائبریریاں اور انہیں فزیکل ڈائرکٹری کے ناموں سے جوڑتی ہیں۔
- متغیرات file (hdl.var)—ایسے متغیرات کی وضاحت کرتا ہے جو نقلی آلات اور افادیت کے رویے کو متاثر کرتے ہیں۔
3.2 مرتب شدہ لائبریری ڈاؤن لوڈ کریں (ایک سوال پوچھیں۔)
Microsemi's سے Cadence Incisive کے لیے لائبریریاں ڈاؤن لوڈ کریں۔ webسائٹ
3.3 NCSim اسکرپٹ بنانا File (ایک سوال پوچھیں۔)
run.do کی ایک کاپی بنانے کے بعد files، NCSim کا استعمال کرتے ہوئے اپنے تخروپن کو چلانے کے لیے ان اقدامات کو انجام دیں:
- ایک cds.lib بنائیں file جو قابل رسائی لائبریریوں اور ان کے مقام کی وضاحت کرتا ہے۔ دی file ایسے بیانات پر مشتمل ہے جو لائبریری کے منطقی ناموں کو ان کی فزیکل ڈائرکٹری کے راستوں پر نقشہ بناتا ہے۔ سابق کے لیےample، اگر آپ presynth simulation چلا رہے ہیں، cds.lib file جیسا کہ درج ذیل کوڈ بلاک میں دکھایا گیا ہے۔
presynth ./presynth کی تعریف کریں۔
COREAHBLITE_LIB ./COREAHBLITE_LIB کی وضاحت کریں۔
اسمارٹ فیوژن کی وضاحت کریں2 - ایک hdl.var بنائیں file، ایک اختیاری ترتیب file جو کنفیگریشن متغیرات پر مشتمل ہے، جو اس بات کا تعین کرتا ہے کہ آپ کے ڈیزائن کا ماحول کس طرح ترتیب دیا گیا ہے۔ درج ذیل متغیر files شامل ہیں:
- متغیرات جو کام کی لائبریری کی وضاحت کے لیے استعمال ہوتے ہیں جہاں مرتب کرنے والا مرتب شدہ اشیاء اور دیگر اخذ کردہ ڈیٹا کو اسٹور کرتا ہے۔
- Verilog کے لیے، متغیرات (LIB_MAP، VIEW_MAP، WORK) جو لائبریریوں کی وضاحت کے لیے استعمال ہوتے ہیں اور views تلاش کرنے کے لئے جب وضاحت کنندہ مثالوں کو حل کرتا ہے۔
- متغیرات جو آپ کو کمپائلر، ایلابوریٹر، اور سمیلیٹر کمانڈ لائن کے اختیارات اور دلائل کی وضاحت کرنے کی اجازت دیتے ہیں۔
presynth simulation کی صورت میں exampاوپر دکھایا گیا ہے، کہتے ہیں کہ ہمارے پاس تین RTL ہیں۔ files: av، bv، اور testbench.v، جنہیں بالترتیب presynth، COREAHBLITE_LIB، اور presynth لائبریریوں میں مرتب کرنے کی ضرورت ہے۔ hdl.var file جیسا کہ درج ذیل کوڈ بلاک میں دکھایا گیا ہے لکھا جا سکتا ہے۔
کام کی وضاحت کریں۔
PROJECT_DIR کی وضاحت کریں۔ files>
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/av => presynth )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/bv => COREAHBLITE_LIB )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/testbench.v => presynth )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, + => presynth ) - ڈیزائن مرتب کریں۔ files ncvlog آپشن استعمال کر رہا ہے۔
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 کمانڈ کا استعمال کرتے ہوئے تفصیل سے پہلے مرتب کرنے کی ضرورت ہے۔
ncsdfcfilename>.sdf - آؤٹ پٹfilename>.sdf.X
تفصیل کے دوران مرتب شدہ SDF آؤٹ پٹ کو –autosdf آپشن کے ساتھ استعمال کریں جیسا کہ درج ذیل کوڈ بلاک میں دکھایا گیا ہے۔
ncelab -autosdf -پیغام -cdslib ./cds.lib -hdlvar ./hdl.var -logfile ncelab.log -errormax
15 - رسائی + rwc - اسٹیٹس ورک لیب۔ : ماڈیول -sdf_cmd_file ./
sdf_cmd_file
sdf_cmd_file جیسا کہ مندرجہ ذیل کوڈ بلاک میں دکھایا گیا ہے۔
COMPILED_SDF_FILE = " file>" - ncsim کا استعمال کرتے ہوئے نقل کریں۔ تفصیل کے بعد ایک نقلی اسنیپ شاٹ بنایا جاتا ہے، جسے نقلی کے لیے ncsim کے ذریعے لوڈ کیا جاتا ہے۔ آپ بیچ موڈ یا GUI موڈ میں چل سکتے ہیں۔
ncsim –Message –batch/-gui –cdslib ./cds.lib –hdlvar ./hdl.var –logfile ncsim.log -
ایرر میکس 15 - اسٹیٹس ورک لیب۔ : ماڈیول
اہم: مرتب کرنے، وضاحت کرنے اور نقل کرنے کے مذکورہ بالا تینوں مراحل کو شیل اسکرپٹ میں رکھا جا سکتا ہے۔ file اور کمانڈ لائن سے حاصل کیا گیا ہے۔ ان تین مراحل کو استعمال کرنے کے بجائے، ncverilog یا irun آپشن کا استعمال کرتے ہوئے ڈیزائن کو ایک قدم میں نقل کیا جا سکتا ہے جیسا کہ مندرجہ ذیل کوڈ بلاک میں دکھایا گیا ہے۔
ncverilog +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var
fileڈیزائن میں استعمال کیا جاتا ہے>
irun +incdir+ -cdslib ./cds.lib –hdlvar ./hdl.var files
ڈیزائن میں استعمال کیا جاتا ہے>
3.3.1 معلوم مسائل (ایک سوال پوچھیں۔)
ٹیسٹ بینچ کا کام
صارف کے ذریعہ تیار کردہ ٹیسٹ بینچ میں گھڑی کی فریکوئنسی کی وضاحت کے لیے درج ذیل بیان کا استعمال کرنا، یا 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 کے postsynth/post-layout ہونے کی وجہ سے) جہاں یہ صرف ایک فکسڈ فنکشن ہے۔
MSS کو حل کرنے کے لیے ncelab کمانڈ کو درج ذیل کوڈ بلاک کے مطابق لکھا جانا چاہیے۔
SmartFusion2 پہلے سے مرتب شدہ لائبریری سے بلاک کریں۔
ncelab -libmap lib.map -libverbose -Message -access +rwc cfg1
اور lib.map file مندرجہ ذیل ہونا چاہئے:
config cfg1؛
ڈیزائن ;
ڈیفالٹ liblist smartfusion2 ;
endconfig
یہ کام کی لائبریری یعنی postsynth/ post-layout میں دیکھنے سے پہلے SmartFusion2 لائبریری میں کسی بھی سیل کو حل کرتا ہے۔
-libmap آپشن کو ہر تخروپن (presynth، postsynth، اور post-layout) کے لیے تفصیل کے دوران بطور ڈیفالٹ استعمال کیا جا سکتا ہے۔ یہ نقلی مسائل سے بچتا ہے جو لائبریریوں سے مثالوں کے حل کی وجہ سے پیدا ہوتے ہیں۔
ncelab: *F,INTERR: اندرونی استثناء
یہ ncelab ٹول استثنیٰ -libmap آپشن کا استعمال کرتے ہوئے پوسٹ سنتھ اور پوسٹ لے آؤٹ سمولیشن کے دوران SmartFusion 2 اور IGLOO 2 میں FDDR پر مشتمل ڈیزائن کے لیے ایک انتباہ ہے۔
اہم: اس مسئلے کی اطلاع کیڈینس سپورٹ ٹیم (SAR 52113) کو دی گئی ہے۔
3.4 ایسampلی ٹی سی ایل اور شیل اسکرپٹ Files (ایک سوال پوچھیں۔)
درج ذیل files کنفیگریشن ہیں۔ fileڈیزائن اور شیل اسکرپٹ کو ترتیب دینے کے لیے ضروری ہے۔ file NCSim کمانڈ چلانے کے لیے۔
Cds.lib
NE smartfusion2 /scratch/krydor/tmpspace/users/me/nc-vlog64/SmartFusion2
COREAHBLITE_LIB ./COREAHBLITE_LIB کی وضاحت کریں۔
presynth ./presynth کی تعریف کریں۔
Hdl.var
کام کی وضاحت کریں۔
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/coreahblite_defaultslavesm.v => COREAHBLITE_LIB )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_masterstagev => COREAHBLITE_LIB )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavearbiter.v => COREAHBLITE_LIB )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavestagev => COREAHBLITE_LIB )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_matrix2x16.v => COREAHBLITE_LIB )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite.v => COREAHBLITE_LIB )
LIB_MAP کی وضاحت کریں ( $LIB_MAP، ${PROJECT_DIR}/component/work/SB/CCC_0/SB_CCC_0_FCCC.v =>
presynth)
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 =>
presynth)
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 => 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
-work 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 کو تبدیل کرتا ہے۔ fileترتیب میں ہے files NCSim کا استعمال کرتے ہوئے تخروپن چلانے کی ضرورت ہے۔
اسکرپٹ File استعمال
perl cadence_parser.pl presynth_run.do postsynth_run.do
postlayout_run.do Microsemi_Family
مقام_کی_کیڈنس_پہلے سے مرتب شدہ_لائبریریاں
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]؛
میری ریاست؛
اگر ( -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/(پوسٹ لے آؤٹ)/ )
{
`mkdir QUESTA_POSTLAYOUT`;
کھلا (باہرFILE,">QUESTA_POSTLAYOUT/postlayout_questa.do")؛
$state = $1؛
} اور
{
پرنٹ کریں "غلط ان پٹ کو دی گئی file\n"؛
پرنٹ کریں "# استعمال: 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 "$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 simulator کو چلانے کے لیے ModelSim ME/ModelSim Pro ME run.do کی طرح۔ ان مراحل پر عمل کریں اور اسکرپٹ بنائیں file Xcelium کے لیے یا اسکرپٹ استعمال کریں۔ file ModelSim ME/ModelSim Pro ME run.do کو تبدیل کرنے کے لیے فراہم کیا گیا ہے۔ fileترتیب میں s files کو Xcelium کا استعمال کرتے ہوئے تخروپن چلانے کی ضرورت ہے۔
4.1 ماحولیاتی متغیرات (ایک سوال پوچھیں۔)
Cadence Xcelium کو چلانے کے لیے درج ذیل ماحولیاتی متغیرات کو ترتیب دیں:
- LM_LICENSE_FILE: لائسنس کی طرف اشارہ کرنا ضروری ہے۔ file.
- cds_root: Cadence Incisive Installation کے ہوم ڈائریکٹری مقام کی طرف اشارہ کرنا ضروری ہے۔
- PATH: cds_root (یعنی
$cds_root/tools/bin/64bit (64 بٹ مشین کے لیے اور $cds_root/tools/bin 32 بٹ کے لیے
آلہ).
64 بٹ اور 32 بٹ آپریٹنگ سسٹم کے درمیان سوئچ کرنے کی صورت میں نقلی ماحول کو ترتیب دینے کے تین طریقے ہیں:
کیس 1: PATH متغیر
سیٹ پاتھ = (install_dir/tools/bin/64bit $path) 64bit مشینوں کے لیے اور
32 بٹ مشینوں کے لیے پاتھ = (install_dir/tools/bin $path) سیٹ کریں۔
کیس 2: -64 بٹ کمانڈ لائن آپشن کا استعمال
کمانڈ لائن میں -64 بٹ آپشن کی وضاحت کریں تاکہ 64 بٹ ایگزیکیوٹیبل کو طلب کیا جاسکے۔
کیس 3: INCA_64BIT یا CDS_AUTO_64BIT ماحولیاتی متغیر کو ترتیب دینا
INCA_64BIT متغیر کو بولین سمجھا جاتا ہے۔ آپ اس متغیر کو کسی بھی قدر یا null پر سیٹ کر سکتے ہیں۔
تار
setenv INCA_64BIT
اہم: The INCA_64BIT ماحولیاتی متغیر دیگر Cadence ٹولز، جیسے IC ٹولز کو متاثر نہیں کرتا ہے۔ تاہم، Incisive ٹولز کے لیے، INCA_64BIT متغیر CDS_AUTO_64BIT ماحولیاتی متغیر کی ترتیب کو اوور رائیڈ کرتا ہے۔ اگر INCA_64BIT ماحولیاتی متغیر et ہے تو، تمام Incisive ٹولز 64-bit موڈ میں چلتے ہیں۔
setenv CDS_AUTO_64BIT شامل ہیں: INCA
اہم: The سٹرنگ INCA بڑے حروف میں ہونی چاہیے۔ تمام ایگزیکیوٹیبلز کو 2 بٹ موڈ یا 64 بٹ موڈ میں چلایا جانا چاہیے، ایک ایگزیکیوٹیبل کو شامل کرنے کے لیے متغیر کو سیٹ نہ کریں، جیسا کہ درج ذیل میں ہے:
setenv CDS_AUTO_64BIT شامل ہے:ncelab
دیگر Cadence ٹولز، جیسے IC ٹولز، 64-bit یا 32-bit executables کے انتخاب کو کنٹرول کرنے کے لیے CDS_AUTO_64BIT ماحولیاتی متغیر کا بھی استعمال کرتے ہیں۔ مندرجہ ذیل جدول دکھاتا ہے کہ آپ کس طرح CDS_AUTO_64BIT متغیر کو تمام موڈز میں Incisive ٹولز اور IC ٹولز کو چلانے کے لیے سیٹ کر سکتے ہیں۔
جدول 4-1۔ CDS_AUTO_64BIT متغیرات
CDS_AUTO_64BIT متغیر | تیز کرنے والے اوزار | آئی سی ٹولز |
setenv CDS_AUTO_64BIT تمام | 64 بٹ | 64 بٹ |
setenv CDS_AUTO_64BIT کوئی نہیں۔ | 32 بٹ | 32 بٹ |
setenv CDS_AUTO_64BIT خارج کریں: ic_binary |
64 بٹ | 32 بٹ |
setenv CDS_AUTO_64BIT خارج کریں: INCA | 32 بٹ | 64 بٹ |
اہم: تمام Incisive ٹولز کو 32-bit موڈ یا 64-bit موڈ میں چلایا جانا چاہیے، کسی مخصوص ایگزیکیوٹیبل کو خارج کرنے کے لیے EXCLUDE کا استعمال نہ کریں، جیسا کہ درج ذیل ہے:
setenv CDS_AUTO_64BIT خارج کریں:ncelab
اگر آپ CDS_AUTO_64BIT متغیر کو Incisive ٹولز کو خارج کرنے کے لیے سیٹ کرتے ہیں (setenv
CDS_AUTO_64BIT خارج کریں: INCA)، تمام انکسیو ٹولز 32 بٹ موڈ میں چلائے جاتے ہیں۔ تاہم، کے
-64 بٹ کمانڈ لائن آپشن ماحولیاتی متغیر کو اوور رائیڈ کرتا ہے۔
درج ذیل ترتیب files آپ کو اپنے ڈیٹا کو منظم کرنے اور نقلی ٹولز اور یوٹیلیٹیز کے آپریشن کو کنٹرول کرنے میں مدد کرتا ہے:
- لائبریری میپنگ file (cds.lib) آپ کے ڈیزائن کے مقام کے لیے ایک منطقی نام کی وضاحت کرتا ہے۔
- لائبریریاں اور انہیں فزیکل ڈائرکٹری کے ناموں سے جوڑتی ہیں۔
- متغیرات file (hdl.var) متغیرات کی وضاحت کرتا ہے جو نقلی آلات اور افادیت کے رویے کو متاثر کرتے ہیں۔
4.2 مرتب شدہ لائبریری ڈاؤن لوڈ کریں (ایک سوال پوچھیں۔)
Microsemi's سے Cadence Xcelium کے لیے لائبریریاں ڈاؤن لوڈ کریں۔ webسائٹ
4.3 Xcelium اسکرپٹ بنانا file (ایک سوال پوچھیں۔)
run.do کی ایک کاپی بنانے کے بعد files، Xcelium اسکرپٹ کا استعمال کرتے ہوئے اپنے تخروپن کو چلانے کے لیے درج ذیل اقدامات انجام دیں۔ file.
- ایک cds.lib بنائیں file جو اس بات کی وضاحت کرتا ہے کہ کون سی لائبریریاں قابل رسائی ہیں اور وہ کہاں واقع ہیں۔
دی file ایسے بیانات پر مشتمل ہے جو لائبریری کے منطقی ناموں کو ان کی فزیکل ڈائرکٹری کے راستوں پر نقشہ بناتا ہے۔ سابق کے لیےample، اگر آپ presynth simulation چلا رہے ہیں، cds.lib file جیسا کہ درج ذیل کوڈ بلاک میں دکھایا گیا ہے لکھا جا سکتا ہے۔
presynth ./presynth کی تعریف کریں۔
COREAHBLITE_LIB ./COREAHBLITE_LIB کی وضاحت کریں۔
اسمارٹ فیوژن کی وضاحت کریں2 - ایک hdl.var بنائیں file جو ایک اختیاری ترتیب ہے۔ file جو کنفیگریشن متغیرات پر مشتمل ہے، جو اس بات کا تعین کرتا ہے کہ آپ کے ڈیزائن کا ماحول کس طرح ترتیب دیا گیا ہے۔ ان میں شامل ہیں:
- متغیرات جو کام کی لائبریری کی وضاحت کے لیے استعمال ہوتے ہیں جہاں مرتب کرنے والا مرتب شدہ اشیاء اور دیگر اخذ کردہ ڈیٹا کو اسٹور کرتا ہے۔
- Verilog کے لیے، متغیرات (LIB_MAP، VIEW_MAP، WORK) جو لائبریریوں کی وضاحت کے لیے استعمال ہوتے ہیں اور views تلاش کرنے کے لئے جب وضاحت کنندہ مثالوں کو حل کرتا ہے۔
- متغیرات جو آپ کو کمپائلر، ایلابوریٹر، اور سمیلیٹر کمانڈ لائن کے اختیارات اور دلائل کی وضاحت کرنے کی اجازت دیتے ہیں۔
presynth simulation کی صورت میں exampاوپر دکھایا گیا ہے، کہتے ہیں کہ ہمارے پاس 3 RTL ہے۔ files av، bv، اور testbench.v، جنہیں بالترتیب presynth، COREAHBLITE_LIB، اور presynth لائبریریوں میں مرتب کرنے کی ضرورت ہے۔ hdl.var file جیسا کہ درج ذیل کوڈ بلاک میں دکھایا گیا ہے لکھا جا سکتا ہے۔
کام کی وضاحت کریں۔
PROJECT_DIR کی وضاحت کریں۔ files>
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/av => presynth )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/bv => COREAHBLITE_LIB )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/testbench.v => presynth )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, + => presynth ) - ڈیزائن مرتب کریں۔ files ncvlog آپشن استعمال کر رہا ہے۔
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 کمانڈ کا استعمال کرتے ہوئے تفصیل سے پہلے مرتب کرنے کی ضرورت ہے۔
Xceliumfilename>.sdf - آؤٹ پٹfilename>.sdf.X
تفصیل کے دوران مرتب شدہ SDF آؤٹ پٹ کو –autosdf آپشن کے ساتھ استعمال کریں جیسا کہ درج ذیل کوڈ بلاک میں دکھایا گیا ہے۔
xmelab -autosdf -پیغام -cdslib ./cds.lib -hdlvar ./hdl.var -logfile ncelab.log -errormax
15 - رسائی + rwc - اسٹیٹس ورک لیب۔ : ماڈیول -sdf_cmd_file ./
sdf_cmd_file
sdf_cmd_file جیسا کہ مندرجہ ذیل کوڈ بلاک میں دکھایا گیا ہے۔
COMPILED_SDF_FILE = " file>" - Xcelium کا استعمال کرتے ہوئے نقل کریں۔ تفصیل کے بعد ایک سمولیشن اسنیپ شاٹ بنایا جاتا ہے جسے Xcelium نے نقلی کے لیے لوڈ کیا ہے۔ اسے بیچ موڈ یا GUI موڈ میں چلایا جا سکتا ہے۔
xmsim -Message -batch/-gui -cdslib ./cds.lib -hdlvar ./hdl.var -logfile xmsim.log -
ایرر میکس 15 - اسٹیٹس ورک لیب۔ : ماڈیول
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 معلوم مسائل (ایک سوال پوچھیں۔)
ٹیسٹ بینچ کا کام
صارف کے ذریعہ تیار کردہ ٹیسٹ بینچ یا Libero SoC کے ذریعہ تیار کردہ ڈیفالٹ ٹیسٹ بینچ میں گھڑی کی فریکوئنسی بتانے کے لیے درج ذیل بیان کا استعمال Xcelium کے ساتھ کام نہیں کرتا ہے۔
ہمیشہ @(SYSCLK)
#(SYSCLK_PERIOD / 2.0) SYSCLK <= !SYSCLK;
تخروپن کو چلانے کے لیے درج ذیل میں ترمیم کریں:
ہمیشہ #(SYSCLK_PERIOD / 2.0) SYSCLK = ~SYSCLK؛
اہم: Xcelium کے لیے مرتب شدہ لائبریریاں مخصوص پلیٹ فارم ہیں (یعنی 64 بٹ لائبریریاں 32 بٹ پلیٹ فارم کے ساتھ مطابقت نہیں رکھتی ہیں اور اس کے برعکس)۔
MSS اور SERDES کا استعمال کرتے ہوئے پوسٹ سنتھ اور پوسٹ لے آؤٹ سمولیشن
MSS بلاک پر مشتمل ڈیزائنوں کے پوسٹ سنتھ سمیولیشن چلاتے ہوئے، یا SERDES کا استعمال کرتے ہوئے ڈیزائنوں کے پوسٹ لے آؤٹ سمیلیشنز، BFM سمولیشن کام نہیں کرتے ہیں اگر -libmap آپشن کو تفصیل کے دوران متعین نہ کیا جائے۔ اس کی وجہ یہ ہے کہ تفصیل کے دوران، MSS کو ورک لائبریری سے حل کیا جاتا ہے (کیونکہ پہلے سے طے شدہ بائنڈنگ اور worklib کے postsynth/post-layout ہونے کی وجہ سے) جہاں یہ صرف ایک فکسڈ فنکشن ہے۔
SmartFusion2 پہلے سے مرتب شدہ لائبریری سے MSS بلاک کو حل کرنے کے لیے ncelab کمانڈ کو درج ذیل کوڈ بلاک کے مطابق لکھا جانا چاہیے۔
xmelab -libmap lib.map -libverbose -Message -access +rwc cfg1
اور lib.map file مندرجہ ذیل ہونا چاہئے:
config cfg1؛
ڈیزائن ;
ڈیفالٹ liblist smartfusion2 ;
endconfig
اسے کام کی لائبریری میں دیکھنے سے پہلے SmartFusion2 لائبریری میں کسی بھی سیل کو حل کرنا چاہیے یعنی postsynth/post-layout۔
-libmap آپشن کو ہر تخروپن (presynth، postsynth اور post-layout) کے لیے تفصیل کے دوران بطور ڈیفالٹ استعمال کیا جا سکتا ہے۔ یہ نقلی مسائل سے بچتا ہے جو لائبریریوں سے مثالوں کے حل کی وجہ سے پیدا ہوتے ہیں۔
xmelab: *F,INTERR: اندرونی استثناء
یہ ncelab ٹول رعایت SmartFusion2 اور IGLOO2 میں FDDR پر مشتمل ڈیزائن کے لیے ایک انتباہ ہے۔
-libmap آپشن کا استعمال کرتے ہوئے postsynth اور post-layout simulations کے دوران۔
اہم: اس مسئلے کی اطلاع کیڈینس سپورٹ ٹیم (SAR 52113) کو دی گئی ہے۔
4.4 ایسampلی ٹی سی ایل اور شیل اسکرپٹ files (ایک سوال پوچھیں۔)
درج ذیل files کنفیگریشن ہیں۔ fileڈیزائن اور شیل اسکرپٹ کو ترتیب دینے کے لیے ضروری ہے۔ file Xcelium کمانڈ چلانے کے لیے۔
Cds.lib
اسمارٹ فیوژن2 کی وضاحت کریں /scratch/krydor/tmpspace/users/me/nc-vlog64/SmartFusion2
COREAHBLITE_LIB ./COREAHBLITE_LIB کی وضاحت کریں۔
presynth ./presynth کی تعریف کریں۔
Hdl.var
کام کی وضاحت کریں۔
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/coreahblite_defaultslavesm.v => COREAHBLITE_LIB )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_masterstagev => COREAHBLITE_LIB )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavearbiter.v => COREAHBLITE_LIB )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_slavestagev => COREAHBLITE_LIB )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite_matrix2x16.v => COREAHBLITE_LIB )
LIB_MAP کی وضاحت کریں ( $LIB_MAP, ${PROJECT_DIR}/component/Actel/DirectCore/CoreAHBLite/4.0.100/rtl/
vlog/core/coreahblite.v => COREAHBLITE_LIB )
LIB_MAP کی وضاحت کریں ( $LIB_MAP، ${PROJECT_DIR}/component/work/SB/CCC_0/SB_CCC_0_FCCC.v =>
presynth)
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 =>
presynth)
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 => 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
-work 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 آٹومیشن (مائکروچپ لاگ ان)
درج ذیل اسکرپٹ file ModelSim run.do کو تبدیل کرتا ہے۔ fileترتیب میں ہے files کو Xcelium کا استعمال کرتے ہوئے تخروپن چلانے کی ضرورت ہے۔
اسکرپٹ File استعمال
perl cadence_parser.pl presynth_run.do postsynth_run.do
postlayout_run.do Microsemi_Family
مقام_کی_کیڈنس_پہلے سے مرتب شدہ_لائبریریاں
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]؛
میری ریاست؛
اگر ( -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/(پوسٹ لے آؤٹ)/ )
{
`mkdir QUESTA_POSTLAYOUT`;
کھلا (باہرFILE,">QUESTA_POSTLAYOUT/postlayout_questa.do")؛
$state = $1؛
} اور
{
پرنٹ کریں "غلط ان پٹ کو دی گئی file\n"؛
پرنٹ کریں "# استعمال: 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 "$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”;
}
}
سیمنز کوئسٹا سم سیٹ اپ/ ماڈل سم سیٹ اپ (ایک سوال پوچھیں۔)
دوڑو files، ModelSim Microsemi Editions کا استعمال کرتے ہوئے سمیولیشنز کے لیے Libero SoC کی طرف سے تیار کردہ، 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 کنورٹنگ run.do for Mentor QuestaSim (ایک سوال پوچھیں۔)
دوڑو fileLibero SoC کی طرف سے ماڈلSim Microsemi Editions کا استعمال کرتے ہوئے سمیولیشنز کے لیے تیار کردہ s کو QuestaSim/ModelSim_SE کا استعمال کرتے ہوئے ایک ہی تبدیلی کے ساتھ استعمال کیا جا سکتا ہے۔
اہم: تمام QuestaSim کا استعمال کرتے ہوئے جو ڈیزائن بنائے گئے ہیں ان میں -novopt شامل ہونا چاہیے۔
run.do اسکرپٹ میں vsim کمانڈ کے ساتھ آپشن files.
5.3 مرتب شدہ لائبریری ڈاؤن لوڈ کریں (ایک سوال پوچھیں۔)
Microsemi's سے Mentor Graphics QuestaSim کے لیے لائبریریاں ڈاؤن لوڈ کریں۔ webسائٹ
Synopsys VCS سیٹ اپ (ایک سوال پوچھیں۔)
مائیکروسیمی کی طرف سے تجویز کردہ بہاؤ VCS میں وسیع اور مرتب بہاؤ پر انحصار کرتا ہے۔ اس دستاویز میں اسکرپٹ شامل ہے۔ file جو run.do اسکرپٹ استعمال کرتا ہے۔ files Libero SoC کے ذریعہ تیار کیا گیا ہے اور سیٹ اپ تیار کرتا ہے۔ fileVCS تخروپن کے لیے ضروری ہے۔ سکرپٹ file run.do استعمال کرتا ہے۔ file مندرجہ ذیل کرنے کے لئے.
- لائبریری میپنگ بنائیں file، جو synopsys_sim.setup کا استعمال کرتے ہوئے کیا جاتا ہے۔ file اسی ڈائریکٹری میں واقع ہے جہاں VCS سمولیشن چل رہا ہے۔
- شیل اسکرپٹ بنائیں file VCS کا استعمال کرتے ہوئے اپنے ڈیزائن کی وضاحت اور مرتب کرنے کے لیے۔
6.1 ماحولیاتی متغیرات (ایک سوال پوچھیں۔)
اپنے سیٹ اپ کی بنیاد پر VCS کے لیے مناسب ماحولیاتی متغیرات مرتب کریں۔ VCS دستاویزات کے مطابق ماحولیاتی متغیرات کی ضرورت ہے:
- LM_LICENSE_FILE: لائسنس سرور پر ایک پوائنٹر شامل کرنا ضروری ہے۔
- VCS_HOME: VCS انسٹالیشن کے ہوم ڈائرکٹری کے مقام کی طرف اشارہ کرنا ضروری ہے۔
- PATH: VCS_HOME ڈائرکٹری کے نیچے بن ڈائرکٹری کے لیے ایک پوائنٹر شامل کرنا چاہیے۔
6.2 مرتب شدہ لائبریری ڈاؤن لوڈ کریں (ایک سوال پوچھیں۔)
Microsemi's سے Synopsys VCS کے لیے لائبریریاں ڈاؤن لوڈ کریں۔ webسائٹ
6.3 VCS سمولیشن اسکرپٹ File (ایک سوال پوچھیں۔)
VCS ترتیب دینے اور ڈیزائن اور مختلف run.do بنانے کے بعد fileLibero SoC کی طرف سے، آپ کو:
- لائبریری میپنگ بنائیں file synopsys_sim.setup; یہ file ڈیزائن کے ذریعہ استعمال ہونے والی تمام لائبریریوں کے مقام کی طرف اشارہ کرتا ہے۔
اہم: The file نام تبدیل نہیں ہونا چاہیے اور یہ اسی ڈائرکٹری میں واقع ہونا چاہیے جہاں سمولیشن چل رہا ہے۔ یہاں ایک سابق ہےample اس طرح کے لئے a file presynthesis تخروپن کے لئے.
کام > EFAULT
اسمارٹ فیوژن 2:
presynth : ./presynth
ڈیفالٹ: ./کام - مختلف ڈیزائن کی وضاحت کریں۔ files، بشمول testbench، VCS میں vlogan کمانڈ کا استعمال کرتے ہوئے۔ ان کمانڈز کو شیل اسکرپٹ میں شامل کیا جا سکتا ہے۔ 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 ایسampلی ٹی سی ایل اور شیل اسکرپٹ Files (ایک سوال پوچھیں۔)
درج ذیل پرل synopsys_sim.setup کی نسل کو خودکار کرتا ہے۔ file نیز متعلقہ شیل اسکرپٹ files کو ڈیزائن کی وضاحت، مرتب اور نقل کرنے کی ضرورت ہے۔
اگر ڈیزائن میں MSS استعمال کیا گیا ہے تو test.vec کاپی کریں۔ file VCS سمولیشن فولڈر میں Libero SoC پروجیکٹ کے سمولیشن فولڈر میں واقع ہے۔ درج ذیل حصوں میں s شامل ہیں۔ample run.do fileLibero SoC کی طرف سے تیار کردہ، بشمول متعلقہ لائبریری میپنگ اور شیل اسکرپٹ fileVCS تخروپن کے لیے ضروری ہے۔
6.5.1 قبل از ترکیب (ایک سوال پوچھیں۔)
Presynth_run.do
خاموشی سے ACTELLIBNAME SmartFusion2 سیٹ کریں۔
خاموشی سے PROJECT_DIR "/sqa/users/me/VCS_Tests/Test_DFF" سیٹ کریں
اگر {[file موجود ہے presynth/_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" -work presynth "${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” -کام
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
ڈیفالٹ: ./کام
6.5.2 بعد کی ترکیب (ایک سوال پوچھیں۔)
postsynth_run.do
خاموشی سے ACTELLIBNAME SmartFusion2 سیٹ کریں۔
خاموشی سے PROJECT_DIR "/sqa/users/Me/VCS_Tests/Test_DFF" سیٹ کریں
اگر {[file موجود ہے postsynth/_info]} {
بازگشت "معلومات: نقلی لائبریری پوسٹ سنتھ پہلے سے موجود ہے"
} اور {
vlib postsynth
}
vmap postsynth postsynth
vmap SmartFusion2 “//idm/captures/pc/11_0_1_12_g4x/Designer/lib/ModelSim/precompiled/vlog/
SmartFusion2"
vlog -work postsynth “${PROJECT_DIR}/synthesis/SD1.v”
vlog "+incdir+${PROJECT_DIR}/stimulus" -work postsynth "${PROJECT_DIR}/stimulus/SD1_TB1.v"
vsim -L SmartFusion2 -L postsynth -t 1fs postsynth.SD1_TB1
لہر شامل کریں /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” -کام
پوسٹ سنتھ "${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 : ./possynth
ڈیفالٹ: ./کام
6.5.3 پوسٹ لے آؤٹ (ایک سوال پوچھیں۔)
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/
SmartFusion2"
vlog -work postlayout "${PROJECT_DIR}/designer/SD1/SD1_ba.v"
vlog "+incdir+${PROJECT_DIR}/stimulus" - ورک پوسٹ لے آؤٹ "${PROJECT_DIR}/stimulus/SD1_TB1.v"
vsim -L SmartFusion2 -L پوسٹ لے آؤٹ -t 1fs -sdfmax /SD1_0=${PROJECT_DIR}/designer/SD1/
SD1_ba.sdf پوسٹ لے آؤٹ۔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}/
designer/SD1/SD1_ba.v"
/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k “+incdir+${PROJECT_DIR}/stimulus” -کام
پوسٹ لے آؤٹ "${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
پوسٹ لے آؤٹ : ./پوسٹ لے آؤٹ
ڈیفالٹ: ./workVCS
6.6 آٹومیشن (ایک سوال پوچھیں۔)
بہاؤ کو درج ذیل پرل اسکرپٹ کا استعمال کرتے ہوئے خودکار کیا جا سکتا ہے۔ 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(system("mkdir VCS_Presynth")) {پرنٹ "mkdir ناکام ہوگیا:\n";}
if(system("mkdir VCS_Postsynth")) {پرنٹ "mkdir ناکام ہوگیا:\n";}
اگر(سسٹم("mkdir VCS_Postlayout")) {پرنٹ "mkdir ناکام ہوگیا:\n";}
chdir(VCS_Presynth)؛
`cp ../$ARGV[0] .` ;
&parse_do($presynth,"presynth");
chdir ("../")؛
chdir(VCS_Postsynth)؛
`cp ../$ARGV[1] .` ;
&parse_do($postsynth,"postsynth");
chdir ("../")؛
chdir(VCS_Postlayout)؛
`cp ../$ARGV[2] .` ;
&parse_do($postlayout,"postlayout");
chdir ("../")؛
ذیلی پارس_ڈو {
my $vlog = "/cad_design/tools/vcs.dir/E-2011.03/bin/vlogan +v2k" ;
میرا %LIB = ()؛
میرا $file = $_[0] ;
میری $state = $_[1]؛
کھلا (INFILE"$file”) || مرو "کھول نہیں سکتا File وجہ یہ ہو سکتی ہے:$!";
اگر ( $state eq "presynth" )
{
اوپن(OUT1,">presynth_main.csh") || die "کمانڈ نہیں بنا سکتے File وجہ یہ ہو سکتی ہے:$!";
}
elsif ( $state eq "possynth" )
{
اوپن(OUT1,">postsynth_main.csh") || die "کمانڈ نہیں بنا سکتے File وجہ یہ ہو سکتی ہے:$!";
}
elsif ( $state eq "پوسٹ لے آؤٹ")
{
اوپن(OUT1,">postlayout_main.csh") || die "کمانڈ نہیں بنا سکتے File وجہ یہ ہو سکتی ہے:$!";
}
اور
{
پرنٹ کریں "سیمولیشن اسٹیٹ غائب ہے \n" ;
}
اوپن(OUT2,">synopsys_sim.setup") || die "کمانڈ نہیں بنا سکتے File وجہ یہ ہو سکتی ہے:$!";
# .csh file
پرنٹ آؤٹ 1 "#!/bin/csh -f\n\n\n" ;
# سیٹ اپ کریں۔ FILE
پرنٹ آؤٹ 2 "کام > ڈیفالٹ\n"؛
پرنٹ آؤٹ 2 "SmartFusion2 : /sqa/users/Aditya/VCS/SmartFusion2\n" ;
جبکہ ($line =FILE>)
{
Synopsys VCS سیٹ اپ
اگر ($line =~ m/ خاموشی سے سیٹ کریں PROJECT_DIR\s+\”(.*?)\”/)
{
پرنٹ آؤٹ 1 "سیٹ PROJECT_DIR = \"$1\"\n\n\n" ;
}
elsif ( $line =~ m/vlog.*\.v\”/ )
{
اگر ($line =~ m/\s+(\w*?)\_LIB/)
{
# پرنٹ "\$1 =$1 \n" ;
$temp = "$1″."_LIB"؛
# پرنٹ "Temp = $temp \n" ;
$LIB{$temp}++;
}
چومپ ($ لائن)؛
$line =~ s/^vlog/$vlog/ ;
$line =~ s/ //g;
پرنٹ آؤٹ 1 "$ لائن\n"؛
}
elsif ( ($line =~ m/vsim.*presynth\.(.*)/) || ($line =~ m/vsim.*postsynth\.(.*)
=~ m/vsim.*پوسٹ لے آؤٹ\.(*/) )
{
$tb = $1 ;
$tb =~ s/ //g;
chomp($tb)؛
# پرنٹ "ٹی بی کا نام: $tb \n"؛
اگر ( $line =~ m/sdf(*)\.sdf/
{
چومپ ($ لائن)؛
$line = $1 ;
#پرنٹ "لائن: $line \n" ;
اگر ($ لائن = ~ 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 ($line =~ 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
ٹائپ کریں:$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 "possynth"
)
{
پرنٹ
OUT2 “possynth
: ./possynth\n”
;
پرنٹ
OUT1 “/cad_design/tools/vcs.dir/E-2011.03/bin/vcs
-sim_res=1fs postsynth.$tb -l
compile.log\n”
;
}
elsif
($state eq "پوسٹ لے آؤٹ"
)
{
پرنٹ آؤٹ 2 "پوسٹ لے آؤٹ : ./پوسٹ لی آؤٹ\n" ;
}
اور
{
پرنٹ کریں "سیمولیشن اسٹیٹ غائب ہے \n" ;
}
foreach $i ( چابیاں %LIB)
{
# پرنٹ " کلید : $i قدر : $LIB{$i} \n" ;
پرنٹ آؤٹ 2 "$i : ./$i\n" ;
}
پرنٹ آؤٹ 1 “\n\n” ;
پرنٹ آؤٹ 1 “./simv -l run.log\n” ;
پرنٹ آؤٹ 2 "ڈیفالٹ: ./work\n" ;
میں بند کریںFILE;
بند آؤٹ 1؛
بند آؤٹ 2؛
}
نظر ثانی کی تاریخ (مائکروچپ لاگ ان
نظرثانی کی تاریخ ان تبدیلیوں کو بیان کرتی ہے جو دستاویز میں لاگو کی گئی تھیں۔ تبدیلیاں
سب سے حالیہ اشاعت کے ساتھ شروع ہونے والے، نظر ثانی کے ذریعہ درج ہیں۔
نظر ثانی | تاریخ | تفصیل |
A | 12/2023 | اس نظرثانی میں درج ذیل تبدیلیاں کی گئی ہیں۔ • دستاویز کو مائیکروچپ ٹیمپلیٹ میں تبدیل کر دیا گیا۔ ابتدائی نظرثانی۔ • اپ ڈیٹ شدہ سیکشن 5۔ سیمنز QuestaSim سیٹ اپ/ModelSim سیٹ اپ ایک نیا نوٹ شامل کرنے کے لیے جو نقلی اور اصلاح کے دوران مرئیت پر پڑنے والے اثرات کی وضاحت کرتا ہے۔ |
مائکروچپ ایف پی جی اے سپورٹ
مائیکرو چِپ ایف پی جی اے پروڈکٹس گروپ اپنی مصنوعات کو مختلف سپورٹ سروسز کے ساتھ بیک کرتا ہے، بشمول کسٹمر سروس، کسٹمر ٹیکنیکل سپورٹ سینٹر، webسائٹ، اور دنیا بھر میں سیلز دفاتر۔
صارفین کو مشورہ دیا جاتا ہے کہ وہ سپورٹ سے رابطہ کرنے سے پہلے مائیکرو چِپ کے آن لائن وسائل کو دیکھیں کیونکہ بہت امکان ہے کہ ان کے سوالات کا جواب پہلے ہی دے دیا گیا ہو۔
کے ذریعے ٹیکنیکل سپورٹ سینٹر سے رابطہ کریں۔ webسائٹ پر www.microchip.com/support. FPGA ڈیوائس پارٹ نمبر کا ذکر کریں، مناسب کیس کیٹیگری منتخب کریں، اور ڈیزائن اپ لوڈ کریں۔ files تکنیکی مدد کیس بناتے وقت۔
غیر تکنیکی پروڈکٹ سپورٹ کے لیے کسٹمر سروس سے رابطہ کریں، جیسے پروڈکٹ کی قیمتوں کا تعین، پروڈکٹ اپ گریڈ، اپ ڈیٹ کی معلومات، آرڈر کی حیثیت، اور اجازت۔
- شمالی امریکہ سے، 800.262.1060 پر کال کریں۔
- باقی دنیا سے، 650.318.4460 پر کال کریں۔
- فیکس، دنیا میں کہیں سے بھی، 650.318.8044
مائیکرو چپ کی معلومات
مائیکرو چِپ Webسائٹ
مائیکرو چِپ ہمارے ذریعے آن لائن سپورٹ فراہم کرتا ہے۔ webسائٹ پر www.microchip.com/. یہ webسائٹ بنانے کے لئے استعمال کیا جاتا ہے files اور معلومات صارفین کے لیے آسانی سے دستیاب ہیں۔ دستیاب مواد میں سے کچھ میں شامل ہیں:
- پروڈکٹ سپورٹ – ڈیٹا شیٹس اور خطا، ایپلیکیشن نوٹس اور ایسample پروگرامز، ڈیزائن کے وسائل، صارف کے رہنما اور ہارڈویئر سپورٹ دستاویزات، تازہ ترین سافٹ ویئر ریلیز اور محفوظ شدہ سافٹ ویئر
- جنرل ٹیکنیکل سپورٹ - اکثر پوچھے جانے والے سوالات (FAQs)، تکنیکی مدد کی درخواستیں، آن لائن ڈسکشن گروپس، مائکروچپ ڈیزائن پارٹنر پروگرام ممبر کی فہرست
- مائیکرو چِپ کا کاروبار - پروڈکٹ سلیکٹر اور آرڈرنگ گائیڈز، تازہ ترین مائیکرو چِپ پریس ریلیز، سیمینارز اور ایونٹس کی فہرست، مائیکرو چِپ سیلز آفسز، ڈسٹری بیوٹرز اور فیکٹری کے نمائندوں کی فہرستیں
مصنوعات کی تبدیلی کی اطلاع کی خدمت
مائیکرو چِپ کی پروڈکٹ کی تبدیلی کی اطلاع سروس صارفین کو مائیکرو چِپ پراڈکٹس پر تازہ رکھنے میں مدد کرتی ہے۔ سبسکرائبرز کو ای میل اطلاع موصول ہوگی جب بھی کسی مخصوص پروڈکٹ فیملی یا ڈیولپمنٹ ٹول کی دلچسپی سے متعلق تبدیلیاں، اپ ڈیٹس، نظرثانی یا خرابیاں ہوں گی۔
رجسٹر کرنے کے لیے، پر جائیں۔ www.microchip.com/pcn اور رجسٹریشن کی ہدایات پر عمل کریں۔
کسٹمر سپورٹ
مائیکرو چِپ پروڈکٹس کے صارفین کئی چینلز کے ذریعے مدد حاصل کر سکتے ہیں:
- تقسیم کار یا نمائندہ
- مقامی سیلز آفس
- ایمبیڈڈ سولیوشن انجینئر (ESE)
- ٹیکنیکل سپورٹ
صارفین کو مدد کے لیے اپنے ڈسٹری بیوٹر، نمائندے یا ESE سے رابطہ کرنا چاہیے۔ مقامی سیلز آفس بھی گاہکوں کی مدد کے لیے دستیاب ہیں۔ سیلز دفاتر اور مقامات کی فہرست اس دستاویز میں شامل ہے۔
کے ذریعے تکنیکی مدد دستیاب ہے۔ webسائٹ پر: www.microchip.com/support
مائیکرو چِپ ڈیوائسز کوڈ پروٹیکشن فیچر
مائیکرو چِپ پروڈکٹس پر کوڈ پروٹیکشن فیچر کی درج ذیل تفصیلات نوٹ کریں:
- مائیکرو چِپ مصنوعات اپنی مخصوص مائیکرو چِپ ڈیٹا شیٹ میں موجود تصریحات کو پورا کرتی ہیں۔
- مائیکرو چِپ کا خیال ہے کہ اس کی مصنوعات کا خاندان محفوظ ہے جب اسے مطلوبہ انداز میں، آپریٹنگ تصریحات کے اندر، اور عام حالات میں استعمال کیا جائے۔
- مائیکروچپ قدروں اور جارحانہ طور پر اپنے دانشورانہ املاک کے حقوق کا تحفظ کرتی ہے۔ مائیکرو چِپ پروڈکٹ کے کوڈ پروٹیکشن فیچرز کی خلاف ورزی کرنے کی کوششیں سختی سے ممنوع ہیں اور ڈیجیٹل ملینیم کاپی رائٹ ایکٹ کی خلاف ورزی کر سکتی ہیں۔
- نہ تو مائکروچپ اور نہ ہی کوئی دوسرا سیمی کنڈکٹر بنانے والا اس کے کوڈ کی حفاظت کی ضمانت دے سکتا ہے۔ کوڈ پروٹیکشن کا مطلب یہ نہیں ہے کہ ہم اس بات کی ضمانت دے رہے ہیں کہ پروڈکٹ "اٹوٹ ایبل" ہے۔
کوڈ تحفظ مسلسل تیار ہو رہا ہے۔ Microchip ہماری مصنوعات کے کوڈ پروٹیکشن فیچرز کو مسلسل بہتر بنانے کے لیے پرعزم ہے۔
قانونی نوٹس
یہ اشاعت اور اس میں موجود معلومات کو صرف مائیکرو چِپ پروڈکٹس کے ساتھ استعمال کیا جا سکتا ہے، بشمول آپ کی درخواست کے ساتھ مائیکرو چِپ پروڈکٹس کو ڈیزائن، ٹیسٹ اور انٹیگریٹ کرنا۔ کسی دوسرے طریقے سے اس معلومات کا استعمال ان شرائط کی خلاف ورزی کرتا ہے۔ ڈیوائس ایپلیکیشنز سے متعلق معلومات صرف آپ کی سہولت کے لیے فراہم کی جاتی ہیں اور اپ ڈیٹس کے ذریعے اس کی جگہ لے لی جا سکتی ہے۔ یہ یقینی بنانا آپ کی ذمہ داری ہے کہ آپ کی درخواست آپ کی وضاحتوں کے مطابق ہو۔ اضافی سپورٹ کے لیے اپنے مقامی مائیکرو چِپ سیلز آفس سے رابطہ کریں یا اضافی سپورٹ حاصل کریں۔ www.microchip.com/en-us/support/design-help/client-support-services.
یہ معلومات مائیکروچپ "جیسا ہے" کے ذریعہ فراہم کی گئی ہے۔ مائیکروچپ کسی بھی قسم کی کوئی نمائندگی یا وارنٹی نہیں دیتا خواہ ظاہر ہو یا مضمر، تحریری ہو یا زبانی، قانونی یا بصورت دیگر، معلومات سے متعلق جس میں شامل ہے لیکن محدود نہیں غیر خلاف ورزی، تجارتی صلاحیت، اور کسی خاص مقصد کے لیے فٹنس، یا اس کی حالت، معیار، یا کارکردگی سے متعلق وارنٹی۔
کسی بھی صورت میں مائیکروچپ کسی بھی بالواسطہ، خصوصی، تعزیری، اتفاقی، یا نتیجے میں ہونے والے نقصان، نقصان، لاگت، یا کسی بھی قسم کے اخراجات کے لیے ذمہ دار نہیں ہوگی، یہاں تک کہ اگر مائیکروچپ کو امکان کے بارے میں مشورہ دیا گیا ہو یا نقصانات کا اندازہ لگایا جا سکتا ہے۔ قانون کی طرف سے اجازت دی گئی مکمل حد تک، معلومات یا اس کے استعمال سے متعلق کسی بھی طرح سے تمام دعووں پر مائیکروچپ کی کل ذمہ داری فیس کی رقم سے زیادہ نہیں ہوگی، اگر آپ کو کسی بھی صورت میں، معلومات کے لیے مائکروچپ۔
لائف سپورٹ اور/یا حفاظتی ایپلی کیشنز میں مائیکرو چِپ ڈیوائسز کا استعمال مکمل طور پر خریدار کے خطرے میں ہے، اور خریدار اس طرح کے استعمال کے نتیجے میں ہونے والے کسی بھی اور تمام نقصانات، دعووں، سوٹوں، یا اخراجات سے بے ضرر مائیکرو چِپ کا دفاع، معاوضہ اور اسے رکھنے پر متفق ہے۔ کسی بھی مائیکرو چِپ دانشورانہ املاک کے حقوق کے تحت کوئی لائسنس، واضح طور پر یا دوسری صورت میں نہیں دیا جاتا جب تک کہ دوسری صورت میں بیان نہ کیا جائے۔
ٹریڈ مارکس
مائیکرو چِپ کا نام اور لوگو، مائیکرو چِپ لوگو، اڈاپٹیک، اے وی آر، اے وی آر لوگو، اے وی آر فریکس، بیسٹ ٹائم، بٹ کلاؤڈ، کریپٹو میموری، کریپٹو آر ایف، ڈی ایس پی آئی سی، فلیکس پی ڈبلیو آر، ہیلڈو، آئیگلو، جوک بلوکس، کیلوق، لنکس، لنکس، لنکس maXTouch, MediaLB, megaAVR, Microsemi, Microsemi لوگو, MOST, MOST لوگو, MPLAB, OptoLyzer, PIC, picoPower, PICSTART, PIC32 logo, PolarFire, Prochip Designer, QTouch, SAM-BA, SenGenuity, SpyST, SFNST, Logo , Symmetricom SyncServer, Tachyon, TimeSource, tinyAVR, UNI/O, Vectron, اور XMEGA امریکہ اور دیگر ممالک میں Microchip Technology Incorporated کے رجسٹرڈ ٹریڈ مارکس ہیں۔
AgileSwitch, APT, ClockWorks, The Embedded Control Solutions Company, EtherSynch, Flashtec, Hyper Speed Control, HyperLight Load, Libero, motorBench, mTouch, Powermit 3, Precision Edge, ProASIC, ProASIC Plus, ProASIC Plus Smart Wire, Quiuset Logo SyncWorld, Temux, TimeCesium, TimeHub, TimePictra, TimeProvider, TrueTime, اور ZL امریکہ میں شامل Microchip Technology کے رجسٹرڈ ٹریڈ مارک ہیں۔
ملحقہ کلید دبانے، AKS، analog-for-the-digital Age، Any Capacitor، AnyIn، AnyOut، Augmented Switching، BlueSky، BodyCom، Clockstudio، CodeGuard، CryptoAuthentication، CryptoAutomotive، CryptoAuthentication، CryptoAutomotive، CryptoAuthentication، CryptoAutomotive، Cryptoon، CCDPIMNet، CCDPIMNETC، ڈی پی آئی ٹی ایم سی ڈی سی پی آئی ٹی ایم سی ڈی سی پی آئی ٹی ایم سی ڈی پی آئی ڈی , DAM, ECAN, Espresso T1S, EtherGREEN, GridTime, IdealBridge, In-Circuit Serial Programming, ICSP, INICnet, Intelligent Paralleling, IntelliMOS, Inter-chip Connectivity, JitterBlocker, Knob-on-Display, Kopto, Kopto,View, 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, Total Endurance, Trusted Time, TSHARC, USBCheck, VariSense, VectorBlox, VeriPHY, ViewSpan، WiperLock، XpressConnect، اور ZENA Microchip Technology Incorporated کے ٹریڈ مارک ہیں
امریکہ اور دیگر ممالک میں۔
ایس کیو ٹی پی امریکہ میں شامل مائیکرو چِپ ٹیکنالوجی کا ایک سروس مارک ہے۔
Adaptec لوگو، فریکوئنسی آن ڈیمانڈ، سیلیکون سٹوریج ٹیکنالوجی، اور 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
کوالٹی مینجمنٹ سسٹم
مائیکرو چِپ کے کوالٹی مینجمنٹ سسٹمز کے بارے میں معلومات کے لیے، براہِ کرم ملاحظہ کریں۔ 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 اٹلانٹا ڈولتھ، جی اے ٹیلی فون: 678-957-9614 فیکس: 678-957-1455 آسٹن، TX ٹیلی فون: 512-257-3370 بوسٹن ویسٹبورو، ایم اے ٹیلی فون: 774-760-0087 فیکس: 774-760-0088 شکاگو Itasca، IL ٹیلی فون: 630-285-0071 فیکس: 630-285-0075 ڈلاس ایڈیسن ، ٹی ایکس ٹیلی فون: 972-818-7423 فیکس: 972-818-2924 ڈیٹرائٹ نووی، ایم آئی ٹیلی فون: 248-848-4000 ہیوسٹن، TX ٹیلی فون: 281-894-5983 انڈیاناپولس Noblesville, IN ٹیلی فون: 317-773-8323 فیکس: 317-773-5453 ٹیلی فون: 317-536-2380 لاس اینجلس مشن ویجو، CA ٹیلی فون: 949-462-9523 فیکس: 949-462-9608 ٹیلی فون: 951-273-7800 ریلی، این سی ٹیلی فون: 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 چین - ہانگ کانگ SAR ٹیلی فون: 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 سمولیشن لائبریری سافٹ ویئر [پی ڈی ایف] یوزر گائیڈ DS50003627A, Libero SoC Simulation Library Software, SoC Simulation Library Software, Simulation Library Software, Library Software, Software |