SystemC СИМУЛАЦИЈА
SystemC СИМУЛАЦИЈА
- Симулација на Verilog-A & AMS
- Симулација на SystemVerilog
- Симулација на Verilog
- VHDL симулација
- VHDL-AMS симулација
SystemC е уште една одлична алатка за моделирање на хардвер. Ги вклучува сите карактеристики на C ++, кои се користат насекаде низ светот, и библиотека со класа C + + специјално дизајнирана за дизајн на системот. SystemC има слободна имплементација со отворен код и може да ја компајлирате во многу ефикасен извршен бинарен код со бесплатниот компајлер на Microsoft Visual Studio C ++. Во SystemC можете да моделирате хардвер на повисоко ниво на апстракција отколку во другите HDLs и така за моделирање на некои многу сложен хардвер, на пример, микроконтролери, тоа е полесно и поефикасно да се користи од другите HDLs како VHDL или Verilog.
Во V11 и подоцнежните верзии на TINA можете исто така да креирате и да користите компоненти моделирани во SystemC и во TINA и TINACloud. Следниве се барања за користење SystemC со TINA.
Карактеристиките на филтерот и 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.