СИМУЛЯЦІЯ SystemC
СИМУЛЯЦІЯ SystemC
- Verilog-A та моделювання AMS
- Симуляція SystemVerilog
- Моделювання Verilog
- Моделювання VHDL
- Моделювання VHDL-AMS
SystemC є ще одним чудовим інструментом для моделювання апаратних засобів. Вона включає в себе всі можливості C ++, що використовуються в усьому світі, і бібліотеку класів C ++, спеціально розроблену для проектування системи. SystemC має безкоштовну реалізацію з відкритим вихідним кодом, і ви можете скомпілювати її в дуже ефективний виконуваний двійковий код з також безкоштовним компілятором Visual Studio Community C ++ від Microsoft. У SystemC можна моделювати апаратне забезпечення на більш високому рівні абстракції, ніж в інших HDL, і тому для моделювання деяких дуже складних апаратних засобів, наприклад, мікроконтролерів, це легше і ефективніше використовувати, ніж інші HDL, як VHDL або Verilog.
У v11 і пізніших версіях TINA ви також можете створювати і використовувати компоненти, модельовані в SystemC як в TINA, так і в TINACloud. Нижче наведено вимоги до використання SystemC з TINA.
Характеристики фільтрів і C-код розроблені безкоштовним інструментом at
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.