VHDL szimuláció a TINA minden verziójában

VHDL szimuláció a TINA minden verziójában

A VHDL (VHSIC (Very High Speed Integrated Circuits) Hardware Description Language) egy az IEEE által elfogadott digitális áramkörök leírására szolgáló nyelv, amelyet digitális áramkörök tervezéséhez használnak.

A TINA 7 és magasabb verziói rendelkeznek beépített VHDL fordítóval és szimulátorral. A TINA bármely digitális áramköre automatikusan átalakítható VHDL kódként és elemezhető VHDL formátumként. Ezenkívül elemezheti a VHDL-ben elérhető hardverek széles skáláját, és meghatározhatja saját digitális összetevőit és hardverét a VHDL-ben. A VHDL nyelvnek az IEEE szabvány mellett a másik nagy előnye, hogy automatikusan programozható logikai eszközökben, például FPGA-kban és CPLD-ben is megvalósítható.

A TINA egy szintetizálható VHDL-kódot hozhat létre a megfelelő UCF-fájl mellett, ha a Szintetizálható kód generálása jelölőnégyzet be van jelölve az Analízis / Beállítások (Analysis/Options) menüben. A létrehozott VHD és UCF fájlokat a „VHD & UCF ​​fájl létrehozása” (“Create VHD & UCF File” ) paranccsal mentheti a T&M menüben. Ezeket a fájlokat a Xilinx ingyenes webes csomagjával olvashatja be, létrehozhatja a terv végrehajtását leíró bitfolyam-fájlt, majd feltöltheti azt a Xilinx FPGA chipekre.

Példa: A következő áramkörben lévő számláló VHDL nyelven lett megírva.
Digitális VHDL szimuláció, kép 1
Az Analízis/Digitális VHDL szimuláció futtatása után a következő eredményt kapjuk: 
VHDL szimuláció, kép 2
Az áramkörben lévő VHDL makró tartalma megtekinthető, dupla klikk majd az Makró megnyitás választásával.

library ieee;use ieee.std_logic_1164.all; 
use ieee.std_logic_arith.all;

------------------

ENTITY counter is port(clock: in std_logic; clear: in std_logic; QA, QB, QC, QD: out std_logic); END counter;

------------------

ARCHITECTURE behv of counter is 
signal Pre_Q: unsigned( 3 downto 0 );

BEGIN 
— behavioral description of the counter 
   process(clock, clear) begin 
     if clear = ‘1’ then 
       Pre_Q <= “0000”; 
     elsif (clock=’1′ and clock ‘event) then 
       QA <= Pre_Q(0); 
       QB <= Pre_Q(1); 
       QC <= Pre_Q(2); 
       QD <= Pre_Q(3); 
       Pre_Q <= Pre_Q + 1; 
     end if; 
   end process; 
END behv;

A TINA-ban A VHDL kód szabadon módosítható, az eredmény rögtön látható.

Módosítsa a  Pre_Q <= Pre_Q + 1; sort a következőre: Pre_Q <= Pre_Q + 2; majd zárja be a párbeszédablakot.

Az Analízis/Digitális VHDL szimuláció futtatása után a következő eredményt kapjuk

Az áramkört a TINA Interaktív szimuláció.