Verilog-AMS

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 6 mars 2020; kontroller kräver 3 redigeringar .

Verilog-AMS (från Verilog A nalog M ixed - S ignal Simulation) är ett hårdvarubeskrivnings- och modelleringsspråk skapat av Accellera baserat på Verilog-A och Verilog-D med ytterligare funktioner, vars syfte är att arbeta med analog , analog- digitala system och integrerade kretsar , användning av moduler, på höga nivåer av beteendemässiga och strukturella beskrivningar av system och dess komponenter.

Beskrivning och struktur för Verilog-AMS

Verilog-AMS  - hårdvarubeskrivningsspråk ( HDL ); Verilog ( IEEE 1364 -1995 Verilog HDL)). Egenskaperna hos Verilog-AMS-moduler kan beskrivas matematiskt och av modulens interna parametrar. Strukturen för en komponent kan också beskrivas i termer av dess associerade underkomponenter. Denna beskrivning kan användas inom olika discipliner. Verilog-AMS HDL-komponenter och arkitektur består av den kompletta IEEE 1364-1995 Verilog HDL-specifikationen (Verilog-D) för att beskriva analoga system (Verilog-A) plus Verilog-AMS HDL-tilläggen.

Applikation

Verilog-AMS HDL används för att beskriva stift , portar och nät . När man arbetar med analoga enheter används generaliserade formbevarandelagar , såsom Kirchhoff och potential (KPL och KFL). De definieras i termer av kvantiteter (som spänning och ström ) associerade med beteendet hos analoga kretsar. Verilog-AMS HDL kan också användas för att beskriva digitala system (i IEEE 1364 -1995 Verilog HDL) och blandade (analog-digitala) system med användning av diskreta och kontinuerliga beskrivningar som definieras i LRM.

Verilog-AMS HDL utökar funktionerna i Digital Simulation Language (IEEE 1364-1995 Verilog HDL) genom att tillhandahålla det enda enhetliga språket som är kompatibelt med analog och digital semantik.

Funktioner i språket

Verilog-AMS-system

Analog-Digital Simuleringslösning

Ett system är mycket väl genomtänkt, eftersom det är en samling relaterade komponenter som samverkar, komponenterna i sig kan också vara system när ett hierarkiskt system definieras. Om en komponent inte har några delkomponenter är den en primitiv. Varje primitiv är associerad med noll eller fler nätverk. Varje nät är associerat med en signal som kan röra sig genom flera nivåer i hierarkin. Beteendet för varje komponent bestäms av värdena i nätverket. Om alla nät som är anslutna till en signal finns i den diskreta domänen är signalen digital. Om de är i den kontinuerliga domänen är signalen analog. En signal som är ett aggregat från båda domänernas nätverk kallas en blandad signal. På samma sätt är en port , en analog port och en digital port och en port ansluten till analog och digital en blandad port. Komponenter är anslutna till noder genom portar och kretsar för att bilda en hierarki. Om signalen är analog eller blandad är den associerad med noden, medan den digitala signalen inte är associerad med noden. Oavsett antalet analoga nätverk i en analog eller blandad signal, representeras den analoga signalen endast av en enda nod. Detta säkerställer att den blandade eller analoga signalen endast har en betydelse, potential i förhållande till jord. För att modellera system är det nödvändigt att ha en fullständig beskrivning av systemet och alla dess komponenter. Beskrivningar av system ges vanligtvis strukturellt, det vill säga innehåller mönster av komponenter och hur de är relaterade, med hjälp av en beteende- eller strukturell beskrivning. Beteendebeskrivning - matematisk beskrivning , på nivån av signaler i komponenternas portar.

Nyckelfunktioner

En viktig egenskap hos system är att det finns två värden associerade med varje nod, potential ( spänningsvärde i elektriska system ) och ström (flöde i elektriska system). Nodpotentialen är ansluten till alla kontinuerliga portar och nätverk som är anslutna till noden, och kretsarna ser samma potential. Flödet delas upp som flödet från alla angränsande portar och nätverk i noden och summeras till noll (0). Således fungerar noden som en liten sammankopplingspunkt där potentialen är densamma i hela noden och där ingen ström kan ackumuleras. Således kombinerar noden Kirchhoffs lag och nuvarande lagar (KPL och KFL). När ett element är anslutet till en nod via en port eller ett nätverk kan det påverka antingen potentialen vid noden eller strömmen vid noden genom porten eller nätverket. Med konservativa system är det också möjligt att definiera grenbeteende. En gren är en flödesväg mellan två noder genom ett element. Varje gren har en associerad potential (potentiell skillnad mellan de två noderna) och ett flöde. Beteendebeskrivningen av ett element är en samling relaterade grenar.

Exempel

Spänningsföljare

Som ett resultat av analoga nätverksportanslutningar kan en nod anslutas till många nätverk med olika egenskaper. Signalflödesmodeller kan beskrivas som att potentialerna för modulutgångarna, funktioner för potentialerna vid ingångarna, är oberoende av flödet. Som ett exempel - en föränderlig spänningsföljare :

moduleshiftPlus5(in, ut); inmatning i; utgång ut; spänning in, ut; //spänning-strömsignal, //men bara potential analog börja V(ut) <+ 5,0 + V(in); slutet slutmodul

Om många sådana moduler kaskadkopplades i serie, skulle det vara nödvändigt att bevara laddning (d.v.s. summera strömmar) vid vilken som helst passerad nod. Om, å andra sidan, utgången från denna enhet var ansluten till en nod, skulle enhetens utgång styras av en spänningskälla . I det här fallet skulle strömmen genom källan hjälpa till att hålla laddningen i noden.

Differentialspänningsförstärkare

Tillvägagångssättet är att skriva beskrivningsfunktionskomponenterna med hjälp av konservativ semantik förutom porten, värden krävs för alla beståndsdelar som faktiskt används i beskrivningen. Således kräver signalportarna endast den potential som är definierad.

Tänk till exempel på en differentialspänningsförstärkare och ett motstånd . Förstärkare beskrivs med spännings- eller strömsignalportar, medan motstånd använder blandade portar.

I det här fallet deklareras endast spänningen på portarna, eftersom endast spänningen används i modellens kropp.

modul spänningsförstärkare (ut, in) ; inmatning i ; utgång ut ; voltage out , // Spänningsvärdet bestäms av V()-funktionen i; parameter real GAIN_V = 10,0 ; analog V(ut) <+ GAIN_V * V(in) ; slutmodul

Här används endast strömmen i modellens kropp

modul strömförstärkare (ut, in) ; inmatning i ; utgång ut ; ström ut , // Det aktuella värdet bestäms av funktionen I(). i; parameter real GAIN_I = 10.0 ; analog I(ut) <+ GAIN_I * I(in) ; slutmodul

Motstånd

Motståndsbeskrivningen relaterar spänningen och strömmen på portarna.

modulmotstånd (a, b); inout a, b; elektriska a, b; //V() och I() funktioner parameter real R = 1,0; analog V(a,b) <+R*I(a,b); slutmodul

Se även

Länkar