تحليل الدوائر باستخدام SystemC

تحليل الدوائر باستخدام SystemC

SystemC هو أداة أخرى رائعة لنمذجة الأجهزة. ويشمل جميع ميزات C ++ ، وتستخدم في جميع أنحاء العالم ، ومكتبة فئة C ++ المصممة خصيصا لتصميم النظام. يحتوي SystemC على تطبيق مجاني مفتوح المصدر ويمكنك تجميعه في رمز ثنائي قابل للتنفيذ فعال للغاية مع برنامج التحويل البرمجي المجاني Visual Studio Community C ++ من Microsoft. في SystemC ، يمكنك نمذجة الأجهزة بمستوى تجريد أعلى من مثيلاتها في HDLs وهكذا ، لنمذجة بعض الأجهزة المعقدة للغاية ، مثل ميكروكنترولر ، أكثر سهولة وكفاءة في الاستخدام من HDLs الأخرى مثل VHDL أو Verilog.

في v11 والإصدارات الأحدث من TINA ، يمكنك أيضًا إنشاء واستخدام مكونات على غرار SystemC في TINA و TINACloud. فيما يلي متطلبات استخدام SystemC مع TINA.


Low-pass filter example
Open the ExamplesSystemCsc lpf.TSC example.

تم تصميم خصائص المرشح والرمز C بواسطة الأداة المجانية في
http://t-filter.engineerjs.com/

تم وضع كود C الذي تم إنشاؤه في ملف fir.cpp.

تشغيل التحليل / تحليل فورييه / فورييه الطيف ...
اضغط على زر في نافذة الرسم البياني. سوف تظهر بعد المعالج. الآن رسم وظيفة النقل.

اضغط على المزيد زر. نوع الإخراج (ق) / الإدخال (الصورة) في تحرير الخط. اكتب H في اسم الوظيفة الجديد. صحافة خلق. صحافة OK. حدد عرض / منفصلة المنحنيات.
والنتيجة هي ما يلي

الجزء الأكثر أهمية من الماكرو SystemC:

void fir::proc() 

  double u, y; 
  if (CLK.read() == SC_LOGIC_1) { 
   sc_logic sc_val; 

  // CALC 
  x[0] = SAMPLE; y = 0; 
  for (int k=0; k < M; k++){
    y += b[k]*x[k];
  }

  // SHIFT
  for (int k=M-1; k>=1; k—)
    x[k] = x[k-1];

  // SET VALUE
  RESULT = y;
  n++;
 }


You can find this example in the Examples/Fir folder of the systemc_model.zip.