SystemC AMS - SystemC AMS - Wikipedia
SystemC AMS je příponou SystemC pro analogové, smíšené a RF funkce.[1] Standard SystemC AMS 2.0 byl vydán 6. dubna 2016 jako IEEE Std 1666.1-2016.
Specifikace jazyka
Úkol: popis
Jazykové funkce
Úkol: popis
MoC - model výpočtu
A model výpočtu (MoC) je sada pravidel definujících chování a interakci mezi primitivemoduly SystemC AMS. SystemC AMS definuje následující modely výpočtu: časovaný datový tok (TDF), lineární tok signálu (LSF) a elektrické lineární sítě (ELN).
TDF - časovaný datový tok
Úkol: popis
ELN - Elektrické lineární sítě
Úkol: popis
LSF - lineární tok signálu
Úkol: popis
Přístavy
Definice TDF in / outport:
sca_tdf ::sca_insca_tdf ::sca_out<PortType>
Definice TDF převaděče:
sca_tdf ::sc_in// DE → TDF inport sca_tdf ::sc_out // TDF → DE outport
Definice terminálu ELN:
sca_eln ::sca_terminal
Uzly
sca_eln ::sca_node // ELN uzel sca_eln ::sca_node_ref // ELN referenční uzel
Klastr
Úkol: popis
Trasování
sca_trace_file *tf = sca_create_tabular_trace_file(„trace_file_name.dat“); sca_trace(tf, <PŘÍSTAV|SIGNÁL|UZEL>, "název");
Příklad kódu
TDF
Nízkoprůchodový model časovaného toku dat 1. řádu:
#zahrnout <systemc-ams>použitím jmenný prostor sca_util; // představeno pro pohodlí: sca_util :: sca_vector → sca_vector použitím jmenný prostor sca_core; // zavedeno pro pohodlí: sca_core :: sca_time () → sca_time ()použitím jmenný prostor sca_ac_analysis; // zavedeno pro pohodlí: sca_ac_analysis :: sca_ac () → sca_ac ()SCA_TDF_MODULE(tdf_low_pass){ // TDF porty sca_tdf::sca_in<dvojnásobek> inp; sca_tdf::sca_out<dvojnásobek> outp; // parametry dvojnásobek fcut; // mezní frekvence // metody prázdnota inicializovat(); // zpětné volání simulátoru pro účely inicializace prázdnota ac_processing(); // zpětné volání simulátoru pro implementaci chování AC prázdnota zpracovává se(); // zpětné volání simulátoru pro implementaci času // konstruktor SCA_CTOR(tdf_low_pass) { fcut = 1,0e3; // mezní frekvence 1kHz }soukromé: sca_vector<dvojnásobek > počet; // koeficienty čitatele sca_vector<dvojnásobek > doupě; // koeficienty odčitatelů sca_vector<dvojnásobek > Stát; // stavový vektor sca_tdf::sca_ltf_nd ltf_nd; // funkce lineárního přenosu (typ čitatel / odčitatel)};
funkce lineárního přenosu:
// inicializace koeficientů funkce lineárního přenosuprázdnota tdf_low_pass::inicializovat(){ počet(0) = 1.0; doupě(0) = 1.0; doupě(1) = 1.0/(2.0*M_PI*fcut);}
Úkol: popis
// AC implementaceprázdnota tdf_low_pass::ac_processing(){ sca_ac(outp) = sca_ac_ltf_nd(počet, doupě, sca_ac(inp));}
Úkol: popis
// implementace časové doményprázdnota tdf_low_pass::zpracovává se(){ outp = ltf_nd(počet, doupě, Stát, inp);}
ELN
Nízkoprůchodový netlist pro elektrické a lineární sítě 1. řádu:
SC_MODULE(eln_low_pass_netlist){ // terminály sca eln sca_eln::sca_terminal n1; sca_eln::sca_terminal n2; // vnitřní uzly sca_eln::sca_node_ref GND; // moduly eln sca_eln::jizva ir; sca_eln::sca_c i_c; SC_CTOR(eln_low_pass_netlist) : ir("ir"), i_c("i_c") { ir.hodnota = 1.0; ir.str.svázat(n1); ir.n.svázat(n2); i_c.hodnota = 1.0/(2.0*M_PI*1,0e3); i_c.str.svázat(n2); i_c.n.svázat(GND); }};
LSF
Netlist lineárního signálu:
Dějiny
Studijní skupina SystemC AMS byla založena v roce 2002 s cílem vyvinout a udržovat rozšíření analogových a smíšených signálů do SystemC a zahájit pracovní skupinu SystemC-AMS OSCI (iniciativa Open SystemC). Studijní skupina provedla počáteční šetření a specifikovala a implementovala rozšíření SystemC, aby prokázala proveditelnost tohoto přístupu. V roce 2006 byla financována pracovní skupina SystemC AMS, která pokračovala v práci studijní skupiny uvnitř OSCI, a nyní pokračuje v práci na SystemC AMS v rámci Accellera Systems Initiative, jejímž výsledkem je standard AMS 1.0 v roce 2010. Po vydání standardu Accellera SystemC AMS 2.0 v roce 2013 byl standard v roce 2014 převeden do sdružení IEEE Standards Association k dalšímu přijetí a údržbě v tomto odvětví. Standard SystemC AMS byl vydán 6. dubna 2016 jako IEEE Std 1666.1-2016.[2][3] Technologie COSEDA poskytuje s COSIDE první komerčně dostupné návrhové prostředí založené na standardu SystemC AMS.
Reference
- ^ "SystemC AMS". accellera.org. Citováno 2016-08-01.
- ^ "SystemC AMS (analogový / smíšený signál)". accellera.org. Citováno 2016-08-01.
- ^ „SystemC-AMS a návrh vestavěných systémů se smíšeným signálem“. www.systemc-ams.org. Citováno 2016-08-01.
externí odkazy
- Simulátor fázové smyčky v SystemC AMS - Américo Dias - Klíčová slova: Phase Locked Loop, PLL, SystemC-AMS