Come definire ingresso di clock in Xilinx
-
02-10-2019 - |
Domanda
Ehi, non ho quasi nessuna esperienza con Xilinx. Ho un progetto di gruppo per un corso di Digital logica che è dovuto presto, dove il mio compagno, che avrebbe dovuto prendersi cura della Xilinx simulazioni deciso di cauzione su di me. Così qui sto cercando di capirlo all'ultimo minuto.
Ho progettato un contatore sincrono utilizzando alcuni vibrazione JK flop e devo definire l'ingresso CLK per le FJKCs.
Ho elaborato lo schema corretto, ma non riesco a capire come definire un ingresso di clock.
Qualsiasi aiuto apprezzato, e sì, questo è compito. Non riesco a trovare nessuna base di documentazione Xilinx / tutorial on-line e onestamente non avere il tempo di imparare l'intero IDE.
Sto usando VHDL
Soluzione
Guarda questo esempio.
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.numeric_std.all; -- for the unsigned type
entity counter_example is
generic ( WIDTH : integer := 32);
port (
CLK, RESET, LOAD : in std_logic;
DATA : in unsigned(WIDTH-1 downto 0);
Q : out unsigned(WIDTH-1 downto 0));
end entity counter_example;
architecture counter_example_a of counter_example is
signal cnt : unsigned(WIDTH-1 downto 0);
begin
process(RESET, CLK) is
begin
if RESET = '1' then
cnt <= (others => '0');
elsif rising_edge(CLK) then
if LOAD = '1' then
cnt <= DATA;
else
cnt <= cnt + 1;
end if;
end if;
end process;
Q <= cnt;
end architecture counter_example_a;
Altri suggerimenti
Immaginate di avere un dispositivo campione come segue:
ENTITY SampleDevice IS
PORT
(
CLK : IN std_logic
);
END SampleDevice;
Al fine di collegare il segnale CLK ad un vero e proprio ingresso di clock nel vostro FPGA si dovrebbe impostare come Top Modulo e creare un file UCF con una voce:
NET "CLK" LOC = "P38";
P38 è l'ingresso di clock in Xilinx Spartan 3 XC3S200.