Kontūru analīze, izmantojot SystemC

Kontūru analīze, izmantojot SystemC

SystemC ir vēl viens lielisks instruments aparatūras modelēšanai. Tā ietver visas C ++ funkcijas, ko izmanto visā pasaulē, un C ++ klases bibliotēku, kas īpaši izstrādāta sistēmas projektēšanai. SystemC ir atvērta pirmkoda brīva ieviešana, un jūs varat to apkopot ļoti efektīvā izpildāmā binārā kodā ar bezmaksas Microsoft Visual Studio kopienas C ++ kompilatoru. Sistēmā SystemC var modelēt aparatūru augstākā abstrakcijas līmenī nekā citos HDL un tā, lai modelētu dažas ļoti sarežģītas aparatūras, piemēram, mikrokontrolleru, lietošanu ir vieglāk un efektīvāk izmantot nekā citas HDL, piemēram, VHDL vai Verilog.

V11 un jaunākās TINA versijās varat arī izveidot un izmantot komponentus, kas modelēti sistēmā SystemC gan TINA, gan TINACloud. Tālāk norādītas prasības, lai SystemC lietotu ar TINA.


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

Filtru raksturlielumi un C-kods ir izstrādāti ar bezmaksas rīku
http://t-filter.engineerjs.com/

Radītais C-kods tika ievietots fir.cpp failā.

Palaist analīzi / Furjē analīzi / Furjē spektru…
Nospiediet poga diagrammas logā. Parādīsies Post-process. Tagad zīmējiet pārsūtīšanas funkciju.

Nospiediet vairāk poga. Tips Izeja (-as) / ievade (-es) Līnijas rediģēšana. Jaunajā funkciju nosaukumā ierakstiet H. Nospiediet izveidot. Nospiediet OK. Atlasīt Skatīt / atsevišķas līknes.
Rezultāts ir šāds

Svarīgākā SystemC makro daļa:

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.