نج سبايس
Ngspice [ 2 ] [ 3 ] [ 4 ] هو برنامج محاكاة دوائر إلكترونية مفتوح المصدر ، يدعم مستويات/ إشارات مختلطة . وهو الإصدار الأحدث من Berkeley SPICE ، الإصدار 3f.5، الذي صدر عام 1993. تساهم مجموعة صغيرة من المطورين ومجتمع المستخدمين في مشروع Ngspice من خلال توفير ميزات جديدة وتحسينات وإصلاحات للأخطاء.
يعتمد برنامج Ngspice على ثلاث حزم برمجية مجانية مفتوحة المصدر : Spice3f5 و Xspice و Cider1b1 :
- يُعد برنامج SPICE [ 5 ] أصل معظم برامج محاكاة الدوائر الإلكترونية الحديثة، ويتم استخدام البرامج اللاحقة له على نطاق واسع في مجتمع الإلكترونيات.
- Xspice [ 6 ] هو امتداد لـ Spice3 يوفر نماذج برمجية إضافية بلغة C لدعم نمذجة السلوك التناظري والمحاكاة المشتركة للمكونات الرقمية من خلال خوارزمية سريعة تعتمد على الأحداث.
- يُضيف برنامج Cider [ 7 ] مُحاكيًا رقميًا للأجهزة إلى برنامج ngspice. وهو يربط مُحاكي الدوائر بمُحاكي الأجهزة لتحسين دقة المحاكاة (على حساب زيادة وقت المحاكاة). يُمكن وصف الأجهزة الحساسة باستخدام معاييرها التقنية (النماذج الرقمية)، بينما يُمكن استخدام النماذج المُدمجة الأصلية لبرنامج ngspice لجميع الأجهزة الأخرى. وهو البرنامج المُطوّر لبرنامج CODECS [ 8 ] .
أنواع التحليل
تُطبّق Ngspice ثلاثة أنواع من التحليل:
- تحليلات التيار المستمر غير الخطية
- تحليلات عابرة غير خطية
- تحليلات التيار المتردد الخطي
يشمل التحليل العابر محاكاة الضوضاء العابرة. ويشمل تحليل التيار المتردد محاكاة ضوضاء الإشارة الصغيرة، وتحليل الأقطاب والأصفار، وتحليل دالة النقل: [ 9 ]
- تحليل الضوضاء
- ضوضاء الإشارة الصغيرة (AC)
- ضوضاء عابرة
- تحليل نقطة التشغيل - يحدد نقطة التشغيل للتيار المستمر للدائرة مع توصيل المحاثات ببعضها وفتح المكثفات.
- تحليل مسح نقطة التشغيل — يحدد قيم متغيرات الخرج أثناء تغيير قيمة مصدر جهد أو تيار مستقل واحد أو اثنين محددين.
- تحليل الأقطاب والأصفار (AC)
- تحليل تشويه الإشارة الصغيرة وتحليل استجابة التردد (AC)
- تحليل الحساسية (تيار مستمر/تيار متردد)
- تحليل دالة النقل
- تحليل عابر
- تحليل الحالة المستقرة الدورية
- تحليل معاملات S
- المحاكاة الرقمية المشتركة السريعة القائمة على الأحداث
طرازات الأجهزة
تُنفّذ Ngspice عناصر دوائر متنوعة، مثل المقاومات والمكثفات والمحاثات (أحادية أو متبادلة) وخطوط النقل، بالإضافة إلى عدد متزايد من أجهزة أشباه الموصلات مثل الثنائيات والترانزستورات ثنائية القطب وموسفتات (من النوعين الكتلي وSOI) وموسفتات MESFET و JFET و HFET . كما تدعم نماذج الأجهزة المدمجة Verilog-A [ 10 ] .
قوائم الشبكات
يدعم برنامج Ngspice قوائم الشبكات البارامترية (أي أن قوائم الشبكات يمكن أن تحتوي على معلمات وتعبيرات). ويمكن استيراد النماذج الكلية البارامترية المتوافقة مع PSPICE ، والتي غالبًا ما تصدرها الشركات المصنعة، مباشرةً إلى المحاكي. كما تتوفر مصادر متعددة الحدود. يوفر Ngspice لغة برمجة نصية داخلية لتسهيل عمليات التحكم المعقدة في المحاكاة والتقييم. ويدعم البرنامج بشكل كامل مجموعات تصميم العمليات مفتوحة المصدر (PDKs) [ 11 ] [ 12 ] [ 13 ] ، مع دعم مجموعات تصميم العمليات المتوافقة مع HSPICE قدر الإمكان.
محاكاة الإشارات المختلطة
يُتيح برنامج ngspice محاكاة الإشارات المختلطة ، حيث يتولى البرنامج الجزء التناظري، بينما يُوفر الجزء الرقمي بواسطة لغة Verilog ، المُجمّعة باستخدام Verilator أو Icarus Verilog ، أو في حالة VHDL، المُجمّعة باستخدام GHDL . وتُوفّر واجهة البرنامج نموذج برمجي مُخصّص (d_cosim)، كما هو موضح في الفصلين 8.4.25 و10.3 من دليل ngspice [ 14 ] .
تحديد نماذج جديدة
لمحاكاة الدوائر ذات الإشارات المختلطة باستخدام نماذج التعليمات البرمجية الداخلية الجديدة، يتيح برنامج ngspice للمستخدمين إنشاء ملف تعريف عقدة مُعرَّف من قِبل المستخدم (UDN) لواجهة نموذج جهاز جديد. يتم إنشاء تنفيذ العقدة ومحاكاتها باستخدام لغة C مع وحدات ماكرو، والتي يتم تجميعها بواسطة مُجمِّعات C/C++ القياسية.
يمكن إضافة نماذج جديدة إلى المحاكي باستخدام:
- النمذجة السلوكية: توفر مصادر B و E و G الداخلية، بالإضافة إلى أجهزة R و C و L، نمذجة من خلال التعبيرات الرياضية، مدفوعة بجهود العقد وتيارات الفروع والمعلمات والثوابت.
- واجهة نموذج كود Xspice: هذه واجهة كود C تساعد في عملية النمذجة من خلال تبسيط الوصول إلى البنية الداخلية للمحاكي.
- نماذج Verilog-A المضغوطة: واجهة OSDI لتحميل نماذج Verilog-A المجمعة OpenVAF [ 15 ] بشكل ديناميكي.
- نماذج مكتوبة بلغة C بتنسيق spice: كمشروع مفتوح المصدر، يسمح Ngspice بربط النماذج الجديدة بالمصادر وتجميعها.
أنواع ngspice المتاحة
يحتوي برنامج Ngspice على واجهة إدخال سطر الأوامر، ويوفر إمكانية رسم المخططات. أما برنامج Qucs-S ، فيوفر واجهة مستخدم رسومية مفتوحة المصدر لإدخال المخططات والمحاكاة ورسم المخططات. بينما يُعد برنامج XSCHEM واجهة مستخدم رسومية متخصصة في تطوير الدوائر المتكاملة .
بالإضافة إلى ملفها التنفيذي القياسي، يمكن تجميع ngspice في مكتبة مشتركة (*.dll أو *.so) ليسهل دمجها في البرنامج المُستدعي. توفر واجهتها إمكانية الوصول إلى جميع معلمات المحاكاة وبيانات الإدخال والإخراج. أما tclspice ، وهي نسخة أخرى من المكتبة المشتركة، فتُقدم واجهة لـ Tcl / Tk (برنامج) لتحسين التكامل مع برامج مثل XCircuits .
متنوع
يُرخص برنامج Ngspice بموجب رخصة BSD-3-Clause . تسمح هذه الرخصة مفتوحة المصدر والمتساهلة بدمجه كمحرك محاكاة في العديد من أدوات EDA - سواء كانت احتكارية أو مجانية/مفتوحة المصدر - مثل KiCad ، [ 16 ] [ 17 ] وEAGLE (برنامج) ، [ 18 ] و CoolSPICE ، و Altium، وغيرها .
تم عرض التقدم المحرز في Ngspice بشكل مستمر في مؤتمرات FOSDEM [ 19 ] و FSiC [ 20 ] منذ عام 2019.
انظر أيضاً
ملحوظات
- ↑ عمل أكثر من 67 مساهمًا على ngspice بمرور الوقت
- ↑ يعتمد على المُصرّف. راجع مُصرّفات لغة C مثل GCC أو clang أو MS Visual C++ لمعرفة بنية مجموعة التعليمات (ISA) والمنصات المدعومة.
مراجع
- ↑ "محاكي الدوائر Ngspice - المؤلفون" . ngspice.sourceforge.net . تم الاطلاع عليه بتاريخ 26-05-2022 .
- ↑ NGSPICE: التطورات الأخيرة والخطط المستقبلية، بقلم ب. نينزي وآخرون، MOS-AK، بوخارست 2014، http://www.mos-ak.org/bucharest/ مؤرشف بتاريخ 6 يوليو 2022 في Wayback Machine
- ↑ "محاكي الدوائر NGSPICE" . archive.fosdem.org . تم الاطلاع عليه بتاريخ 15 فبراير 2024 .
- ↑ "ngspice، الوضع الحالي والتطورات المستقبلية" . archive.fosdem.org . تم الاطلاع عليه بتاريخ 15 فبراير 2024 .
- ↑ تحليل مشكلات الأداء والتقارب لمحاكاة الدوائر، تي. كوارلز، أطروحة دكتوراه، مذكرة رقم UCB/ERL M89/42، بيركلي 1989، http://www.eecs.berkeley.edu/Pubs/TechRpts/1989/ERL-89-42.pdf
- ↑ نمذجة على مستوى الكود في XSPICE، FL Cox وآخرون، وقائع ندوة IEEE الدولية حول الدوائر والأنظمة، 1992 (ISCAS 92)، المجلد 2، الصفحات 871-874، 10-13 مايو 1992
- ↑ غيتس، ديفيد أ. (يونيو 1993). "محاكاة الدوائر والأجهزة متعددة المستويات الموجهة نحو التصميم - أطروحة دكتوراه" (ملف PDF) . جامعة كاليفورنيا، بيركلي . تاريخ الاسترجاع: 28 أغسطس 2023 .
- ↑ برنامج CODECS: محاكي الدوائر والأجهزة متعددة المستويات، ك. مايارام، مذكرة رقم UCB/ERL M88/71، بيركلي، 1988، http://www.eecs.berkeley.edu/Pubs/TechRpts/1988/ERL-88-71.pdf مؤرشف بتاريخ 23 يناير 2021 في أرشيف الإنترنت (Wayback Machine).
- ↑ "ngspice / ngspice / [ c4efe2 ] /ANALYSES" . sourceforge.net . مؤرشف من الأصل بتاريخ 26-05-2022 . تم الاطلاع عليه بتاريخ 26-05-2022 .
- ↑ "نماذج Verilog-A لمحاكاة الدوائر" . تم الاسترجاع في 15-11-2025 .
- ^ "IHP-Open-PDK" . تم الاسترجاع 2025/11/15 .
- ↑ "Open_PDKs الإصدار 1.0 مُثبِّت PDK للأدوات مفتوحة المصدر" . تم الاطلاع عليه بتاريخ 15-11-2025 .
- ↑ "OpenPDKs" . تم الاطلاع عليه بتاريخ 15-11-2025 .
- ↑ "دليل برنامج ngspice" (ملف PDF) . تم الاطلاع عليه بتاريخ 15-11-2025 .
- ^ "تم إعادة تحميل OpenVAF" . تم الاسترجاع 2025/11/15 .
- ↑ "دليل تعليمي: كيفية إعداد ngspice وEeschema لبرنامج KiCad" . ngspice . تم الاطلاع عليه بتاريخ 18 يوليو 2019 .
- ↑ محاكاة Spice المتكاملة باستخدام Kicad، تي. ولوستوفسكي، FOSDEM، بروكسل 2017، https://archive.fosdem.org/2017/schedule/event/spice_kicad/
- ↑ محاكاة SPICE الجزء 1، إس. ساتل، دعم وتعلم أوتوديسك، 2017، https://www.autodesk.com/products/eagle/blog/spice-simulation-part-1/
- ↑ "أجهزة ngspice - xspice الأساسية متاحة في kicad" . الاجتماع الأوروبي لمطوري البرمجيات الحرة والمفتوحة المصدر (FOSDEM) . تم الاطلاع عليه بتاريخ 16 نوفمبر 2025 .
- ↑ "تحديث حالة Ngspice ومحاكاة التدهور" . مؤسسة السيليكون الحر (F-Si) . تم الاطلاع عليه بتاريخ 16 نوفمبر 2025 .
{{cite web}}: CS1 maint: url-status ( link )
روابط خارجية
- برنامج محاكاة مجاني
- محاكيات الدوائر الإلكترونية
- برنامج أتمتة التصميم الإلكتروني لنظام التشغيل لينكس
- برنامج مجاني مكتوب بلغة C
