Analiziranje krugova pomoću SystemC

Analiziranje krugova pomoću SystemC

SystemC je još jedan odličan alat za modeliranje hardvera. Uključuje sve značajke C ++-a, korištene u cijelom svijetu, i biblioteku klasa C ++ posebno dizajniranu za dizajn sustava. SystemC ima open-source besplatnu implementaciju i možete je kompajlirati u vrlo efikasan izvršni binarni kod s besplatnim Visual Studio Community C ++ prevodiocem Microsofta. U SystemC-u možete modelirati hardver na višoj razini apstrakcije nego u drugim HDL-ovima, te je za modeliranje nekih vrlo složenih hardvera, npr.

U v11 i kasnijim verzijama TINA-e možete kreirati i koristiti komponente modelirane u SystemC-u u TINA-i i TINACloud-u. Slijede zahtjevi za korištenje SystemC-a s TINA-om.


Low-pass filter example
Open the ExamplesSystemCsc lpf.TSC example.

Karakteristike filtera i C-kod je dizajniran od strane besplatnog alata na
http://t-filter.engineerjs.com/

Generisani C-kod je stavljen u fir.cpp datoteku.

Analiza izvođenja / Fourierova analiza / Fourier spektar…
Pritisnite taster u prozoru dijagrama. Pojaviće se postprocesor. Sada nacrtajte funkciju prenosa.

Pritisnite taster više dugme. Tip Izlaz (i) / ulaz (i) u Line Edit. Upišite H u novo ime funkcije. Pritisnite stvoriti. Pritisnite OK. Izaberite Pogled / Odvojene krive.
Rezultat je sledeći

Najvažniji dio makroa 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.