การจำลอง SystemC
การจำลอง SystemC
SystemC เป็นอีกหนึ่งเครื่องมือที่ยอดเยี่ยมสำหรับการสร้างแบบจำลองฮาร์ดแวร์ มันมีคุณสมบัติทั้งหมดของ C ++ ที่ใช้ทั่วโลกและไลบรารีคลาส C ++ ที่ออกแบบมาเป็นพิเศษสำหรับการออกแบบระบบ SystemC มีการใช้งานฟรีโอเพนซอร์ซและคุณสามารถคอมไพล์มันลงในโค้ดไบนารี่ที่สามารถใช้งานได้อย่างมีประสิทธิภาพพร้อมคอมไพเลอร์ Visual Studio Community C ++ ของ Microsoft ใน SystemC คุณสามารถสร้างแบบจำลองฮาร์ดแวร์ที่ระดับนามธรรมสูงกว่า HDL อื่น ๆ และเพื่อสร้างแบบจำลองฮาร์ดแวร์ที่ซับซ้อนมากเช่นไมโครคอนโทรลเลอร์มันง่ายและมีประสิทธิภาพในการใช้งานมากกว่า HDL อื่น ๆ เช่น VHDL หรือ Verilog
ใน v11 และรุ่นที่ใหม่กว่าของ TINA คุณยังสามารถสร้างและใช้ส่วนประกอบที่จำลองใน SystemC ทั้งใน TINA และ TINACloud ต่อไปนี้เป็นข้อกำหนดในการใช้ SystemC กับ TINA
คุณสมบัติตัวกรองและรหัส C ได้รับการออกแบบโดยเครื่องมือฟรีที่
http://t-filter.engineerjs.com/
รหัส C ที่สร้างขึ้นถูกวางไว้ในไฟล์ fir.cpp
เรียกใช้การวิเคราะห์ / การวิเคราะห์ฟูริเยร์ / สเปกตรัมฟูริเยร์ ...
กด ปุ่มในหน้าต่างไดอะแกรม โพสต์โปรเซสเซอร์จะปรากฏขึ้น ตอนนี้วาดฟังก์ชั่นการถ่ายโอน
กด More ปุ่ม. ชนิด เอาท์พุท (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.