Simulation en mode mixte

Spice - Co-simulation HDL - MCU

Simulation en mode mixte

Spice - Co-simulation HDL - MCU

Jump to TINA Main Page & General Information 

La version TINA 8 et les versions ultérieures incluent un nouveau puissant moteur de simulation en mode mixte. Il est basé sur le XSPICE algorithme en mode mixte, étendu aux composants MCU et VHDL. Dans vos circuits, vous pouvez librement mélanger tous les composants analogiques ou numériques de TINA, y compris les microcontrôleurs (MCU) et les macros avec Spice ou du contenu VHDL. Vous pouvez modifier ces composants à la volée en même temps que le code des MCU. TINA analysera les parties analogiques en analogique, les parties numériques en numérique et créera automatiquement les interfaces entre les composants. Cela garantit la synchronisation et la convergence rapide.

Explorons quelques-unes des utilisations de ce mode à travers quelques exemples.

Génération de formes d'onde avec VHDL et Spice sous-circuits

Le circuit suivant génère un signal sinusoïdal analogique ou en dents de scie en fonction de l'état du commutateur SW-MODE de gauche.

Simulation en mode mixte, image 1

Le boîtier Digital Wave situé à gauche du circuit contient du code VHDL avec une table de correspondance (Sine_LUT ) pour l’onde sinusoïdale et un compteur pour le signal en dents de scie.

La partie essentielle du code VHDL est:

 process(Reset, Clk) 
   begin 
        if (Reset = ‘1’) then 
               Wave <= (others => ‘0’); 
               LUT_index <= 0; 
   elsif rising_edge(Clk) then 
   if (Enable = ‘0’) then 
     Wave <= (others => ‘0’); 
   elsif (Sel = ‘0’) then 
     Wave <= Sine_LUT(LUT_index); 
       else 
         Wave <= conv_std_logic_vector(LUT_index,5); 
       end if;
       if (LUT_index = LUT_index_max) then 
         LUT_index <= 0; 
       else 
         LUT_index <= LUT_index + 1; 
       end if;
   end if; 
   end process; 
   d0 <= Wave(0); d1 <= Wave(1); d2 <= Wave(2); d3 <= Wave(3); d4 <= Wave(4);

La sortie numérique du compteur est convertie en un signal analogique dans le convertisseur 5 bit DA de TINA affiché au centre du circuit.

La sortie sinusoïdale du CAD doit être nettoyée avec un filtre passe-bas. Nous allons utiliser un Spice modèle opamp du TL081 dans une configuration de filtre passe-bas Sallen et Key. Appuyez sur le bouton Entrer une macro dans la boîte de dialogue de propriété et TINA ouvrira la macro. Vous pouvez revoir et, si nécessaire, modifier le Spice code à l'intérieur de la macro.

Voici les formes d'onde finales du circuit complet, y compris les cinq formes d'onde de sortie du compteur. SW_MODE est à l'état haut, sélectionnant le signal en dents de scie.

Si nous modifions le commutateur SW-MODE sur Low et exécutons à nouveau l'analyse transitoire, les formes d'onde sont les suivantes:

Pour voir l'effet du filtre analogique, supprimez les courbes d0 à d4 du diagramme en cliquant sur les courbes et en appuyant sur la touche Suppr.

Circuit SMPS contrôlé par MCU

Le simulateur en mode mixte de TINA autorise non seulement les MCU, mais également toutes les parties linéaires ou non linéaires des bibliothèques de TINA. A titre d'exemple, étudions le circuit suivant, qui réalise un convertisseur CC-CC, convertissant 5V CC en 13V CC et fonctionnant en mode boost.

Les formes d'onde ci-dessous montrent comment les parties analogiques et la MCU interagissent dans TINA.

Exemple de circuit mixte constitué de composants analogiques et numériques simples