VHDL szimuláció a TINA minden verziójában
VHDL szimuláció a TINA minden verziójában
- VHDL-AMS szimuláció
- Verilog szimuláció
- Verilog-A és AMS szimuláció
- SystemVerilog szimuláció
- SystemC szimuláció
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.
Az Analízis/Digitális VHDL szimuláció futtatása után a következő eredményt kapjuk:
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ó.