Verilog A en AMS-simulatie

Verilog A en AMS-simulatie

Jump to TINA Main Page & General Information 

Tegenwoordig is de meest gebruikte taal om elektronische schakelingen en apparaatmodellen te beschrijven de Spice Netlist-indeling (1973). Echter, de Spice netlists zijn vaak moeilijk te lezen en te begrijpen, en ze missen veel van de functionaliteiten van programmeertalen die ingenieurs nodig zouden hebben bij het maken van modellen en simulatie.

De relatief nieuwe Verilog-A-taal (1995) biedt een alternatieve methode met een gemakkelijk te lezen programmeertaalstijl C-achtige syntaxis. Zo is Verilog-A een geschikte opvolger van de SPICE netlists voor het beschrijven van circuittopologieën.

Een nog geavanceerdere methode voor het beschrijven van een elektronische schakeling, die zowel analoge als digitale componenten bevat, is de Verilog-AMS-taal. Zoals we eerder opmerkten, is Verilog-AMS een afgeleide van de puur digitale Verilog uitgebreid met de puur analoge Verilog A en een interface voor de aansluiting van de analoge en digitale onderdelen.

De meeste apparaatbibliotheken van TINA bevinden zich in Spice netlist formaat. U kunt echter al modellen maken en importeren en TINA-macro's in de Verilog-A- en Verilog-AMS-indeling plaatsen. U vindt verschillende taalvoorbeelden, apparaatmodellen en circuits in de map ExamplesVerilog A van TINA.

Voorbeeld van Verilog-AMS:

Het volgende circuit bevat een Digital Analog Converter (DAC) -macro met Serial Peripheral Interface (SPI) en een testbankmacro, die het digitale SPI-signaal genereren. Het DAC-model is gedefinieerd in Verilog AMS. Interessant is dat de testbank aan de linkerkant is geschreven in VHDL, wat een voorbeeld is van het mengen van verschillende HDL's, maar hier zullen we ons concentreren op de Verilog AMS-macro aan de rechterkant. Dit circuit (DAC VAMS.TSC) is opgenomen in de map EXAMPLESVerilog AMS van TINA.

In TINA ziet u de Verilog AMS-code van het DAC-model als u dubbelklikt op de DAC-macro en op de knop Macro invoeren drukt.

Een deel van de code wordt hieronder getoond:

We gaan niet in op een gedetailleerde analyse van de code. We willen alleen aantonen dat in het eerste deel dat hierboven wordt getoond, de DA Verilog-module het seriële signaal omzet naar een analoog signaal (VOUTA).

Aan het einde van de onderstaande macro (in TINA kun je daar naar beneden scrollen), de DA-module wordt gebeld en het signaal wordt afgevlakt door een eenvoudige opamp en een RC-filter met behulp van Verilog A-instructies. Je kunt ook de definitie van de condensator in het onderstaande codefragment zien.