SystemC

SystemC — мова проектування і верифікації моделей електронних пристроїв системного рівня, реалізована у вигляді C++ бібліотеки з відкритим вихідним кодом[1]. Бібліотека включає в себе ядро ​​подієвого моделювання, що дозволяє отримати виконувану модель пристрою. Мова застосовується для побудови транзакційних і поведінкових моделей, а також для високорівневого синтезу.

Мова SystemC використовує ряд понять, схожих з тими, які мають мови опису апаратури VHDL і Verilog: інтерфейси, процеси, сигнали, наповненості, ієрархія модулів. Стандарт SystemC не вносить обмеження на використання мови C++ при описі моделей систем.

Розроблено чернетка стандарту на логічного синтез SystemC, метою якого є визначити підмножин мов С++ і SystemC, придатних для поведінкового і RTL синтезу.

Приклад програмного коду

[ред. | ред. код]
#include "systemc.h"  SC_MODULE(adder)          // module (class) declaration {   sc_in<int> a, b;        // ports   sc_out<int> sum;    void do_add()           // process   {     sum.write(a.read() + b.read()); //or just sum = a + b   }    SC_CTOR(adder)          // constructor   {     SC_METHOD(do_add);    // register do_add to kernel     sensitive << a << b;  // sensitivity list of do_add   } }; 

Примітки

[ред. | ред. код]
  1. About SystemC. Архів оригіналу за 28 жовтня 2007. Процитовано 24 березня 2016.