การวิเคราะห์วงจรโดยใช้ SystemC

การวิเคราะห์วงจรโดยใช้ SystemC

SystemC เป็นอีกหนึ่งเครื่องมือที่ยอดเยี่ยมสำหรับการสร้างแบบจำลองฮาร์ดแวร์ มันมีคุณสมบัติทั้งหมดของ C ++ ที่ใช้ทั่วโลกและไลบรารีคลาส C ++ ที่ออกแบบมาเป็นพิเศษสำหรับการออกแบบระบบ SystemC มีการใช้งานฟรีโอเพนซอร์ซและคุณสามารถคอมไพล์มันลงในโค้ดไบนารี่ที่สามารถใช้งานได้อย่างมีประสิทธิภาพพร้อมคอมไพเลอร์ Visual Studio Community C ++ ของ Microsoft ใน SystemC คุณสามารถสร้างแบบจำลองฮาร์ดแวร์ที่ระดับนามธรรมสูงกว่า HDL อื่น ๆ และเพื่อสร้างแบบจำลองฮาร์ดแวร์ที่ซับซ้อนมากเช่นไมโครคอนโทรลเลอร์มันง่ายและมีประสิทธิภาพในการใช้งานมากกว่า HDL อื่น ๆ เช่น 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

เรียกใช้การวิเคราะห์ / การวิเคราะห์ฟูริเยร์ / สเปกตรัมฟูริเยร์ ...
กด ปุ่มในหน้าต่างไดอะแกรม โพสต์โปรเซสเซอร์จะปรากฏขึ้น ตอนนี้วาดฟังก์ชั่นการถ่ายโอน

กด มากกว่า ปุ่ม. ชนิด เอาท์พุท (s) Input / (s) ใน Line Edit พิมพ์ 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.