Analýza obvodů pomocí SystemC

Analýza obvodů pomocí SystemC

SystemC je další skvělý nástroj pro modelování hardwaru. Zahrnuje všechny funkce C ++ používané po celém světě a knihovnu třídy C ++ speciálně navrženou pro návrh systému. SystemC má bezplatnou implementaci open-source a můžete jej zkompilovat do velmi efektivního spustitelného binárního kódu s volným kompilátorem Visual Studio Community C ++ společnosti Microsoft. V SystemC můžete modelovat hardware na vyšší úrovni abstrakce než v jiných HDL, a tak pro modelování některých velmi složitých hardwarů, např. Mikrokontrolérů, je snadnější a efektivnější používat než jiné HDL jako VHDL nebo Verilog.

V aplikaci v11 a novějších verzích můžete také vytvářet a používat komponenty modelované v systému SystemC jak v TINA, tak v TINACloud. Níže jsou uvedeny požadavky na použití SystemC s TINA.


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

Vlastnosti filtru a C-kód je navržen volným nástrojem na adrese
http://t-filter.engineerjs.com/

Generovaný kód C byl umístěn do souboru fir.cpp.

Analýza analýzy / Fourierova analýza / Fourierovo spektrum…
Stiskněte v okně diagramu. Zobrazí se Postprocesor. Nyní nakreslete funkci přenosu.

Stiskněte Moře tlačítko. Typ Výstup (y) / vstup (y) v Upravit řádek. Zadejte H do nového názvu funkce. lis Vytvořit. lis OK. Vybrat Zobrazit / oddělit křivky.
Výsledkem je následující

Nejdůležitější část makra 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.