VHDL-simulatie in TINA bij alle versies inbegrepen
VHDL-simulatie in TINA bij alle versies inbegrepen
- VHDL-AMS-simulatie
- Verilog-simulatie
- Verilog-A & AMS-simulatie
- SystemVerilog-simulatie
- SystemC-simulatie
VHDL (VHSIC (Very High Speed Integrated Circuits) Hardware Beschrijving Language) is een IEEE-standaard hardware-beschrijvingstaal die door elektronische ontwerpers wordt gebruikt om hun chips en systemen voorafgaand aan de fabricage te beschrijven en te simuleren.
TINA-versies 7 en hoger bevatten nu een krachtige digitale VHDL-simulatiemotor. Elke digitale schakeling in TINA kan automatisch een VHDL-code worden geconverteerd en geanalyseerd als een VHDL-ontwerp. Daarnaast kunt u het brede scala aan hardware van VHDL analyseren en uw eigen digitale componenten en hardware in VHDL definiëren. Het grote voordeel van VHDL is niet alleen dat het een IEEE-standaard is, maar ook dat dit automatisch kan worden gerealiseerd in programmeerbare logische apparaten zoals FPGA's en CPLD's.
TINA kan een synthetiseerbare VHDL-code genereren samen met het bijbehorende UCF-bestand als het selectievakje Generate synthesizable code is ingeschakeld in het menu Analyse / Opties. U kunt de gemaakte VHD- en UCF-bestanden opslaan met de opdracht "Create VHD & UCF File" in het menu T&M. U kunt deze bestanden lezen met het gratis hulpprogramma Webpack van Xilinx, het bitstream-bestand genereren dat de implementatie van het ontwerp beschrijft en het vervolgens uploaden naar Xilinx FPGA-chips.
Voorbeeld: het volgende circuit is een teller, gedefinieerd in VHDL.
Running Analysis / Digital VHDL-simulatie, geeft het volgende diagram:
Als u dubbelklikt op het tellerblok in TINA en op de macro Enter-knop drukt, ziet u de VHDL-code die de teller definieert:
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;
In TINA kun je de VHDL-code wijzigen en het effect meteen zien.
Verander de lijn Pre_Q <= Pre_Q + 1; hierboven naar Pre_Q <= Pre_Q + 2; en sluit het dialoogvenster.
Nu geeft Analyse / Digitale VHDL-simulatie het volgende diagram
Je kunt dit circuit ook bestuderen in TINA's Interactieve modus.