Forum: FPGA, VHDL & Co. Problem mit Startup_Virtex6 Primitive


von daida (Gast)


Angehängte Dateien:

Lesenswert?

Hey, ich kämpfe nun schon seit einiger Zeit mit dem Startup_Virtex6 
Block von Xilinx. Mein Ziel dabei ist das interne Reset Netz zu 
verwenden um das FPGA in einen definierten Zustand zu bringen (alle FF 
zurück in den Initialzustand).
Der angefügte Code ist nur zum Test. Mein gewünschtes Ergebnis wäre, 
dass nach einem reset_ext Impuls das FPGA zurück gesetzt wird und 
dadurch ein reset Signal entsteht (ja kompliziert - aber wie gesagt nur 
zum Test). Nun passiert aber genau gar nichts. Insbesondere kommt mein 
reset_ext Impuls nie beim Startup Block an - GSR bleibt 'L' - warum? Was 
mach ich hier falsch?
1
library UNISIM;
2
use UNISIM.VComponents.all;
3
4
entity reset_test is
5
  port (
6
    clk_in       : in      std_logic; 
7
    reset_ext    : in      std_logic;
8
    reset        : out     std_logic
9
  );
10
end reset_test;
11
12
architecture Behavioral of reset_test is
13
14
  -- reset delay signal
15
  signal reset_delay : std_logic_vector(2 downto 0) := (others => '1');
16
17
begin
18
19
  reset_delay_process : process (clk_in)
20
  begin
21
  if rising_edge(clk_in) then
22
    reset_delay(2) <= '0';
23
    reset_delay(1) <= reset_delay(2);
24
    reset_delay(0) <= reset_delay(1);
25
    reset          <= reset_delay(0);
26
  end if;
27
  end process;
28
29
  -- STARTUP_VIRTEX6: STARTUP Block, Xilinx HDL Libraries Guide, version 14.1
30
  STARTUP_VIRTEX6_inst : STARTUP_VIRTEX6
31
  generic map (
32
    PROG_USR => FALSE -- Activate program event security feature
33
  )
34
  port map (
35
    CFGCLK => open, -- 1-bit output Configuration main clock output
36
    CFGMCLK => open, -- 1-bit output Configuration internal oscillator clock output
37
    DINSPI => open, -- 1-bit output DIN SPI PROM access output
38
    EOS => open, -- 1-bit output Active high output signal indicating the End Of Configuration.
39
    PREQ => open, -- 1-bit output PROGRAM request to fabric output
40
    TCKSPI => open, -- 1-bit output TCK configuration pin access output
41
    CLK => clk_in, -- 1-bit input User start-up clock input
42
    GSR => reset_ext, -- 1-bit input Global Set/Reset input (GSR cannot be used for the port name)
43
    GTS => '0', -- 1-bit input Global 3-state input (GTS cannot be used for the port name)
44
    KEYCLEARB => '0', -- 1-bit input Clear AES Decrypter Key input from Battery-Backed RAM (BBRAM)
45
    PACK => '0', -- 1-bit input PROGRAM acknowledge input
46
    USRCCLKO => '0', -- 1-bit input User CCLK input
47
    USRCCLKTS => '0', -- 1-bit input User CCLK 3-state enable input
48
    USRDONEO => '0', -- 1-bit input User DONE pin output control
49
    USRDONETS => '0' -- 1-bit input User DONE 3-state enable output
50
  );
51
52
end Behavioral;

von Christian R. (supachris)


Lesenswert?

Den Spaß hatte ich auch schon mal. Liegt ganz einfach daran, dass das 
Simulationsmodell für die Primitive quasi leer ist und das Ding somit 
nicht wirklich simuliert werden kann. Schau mal in 
C:\Xilinx\14.6\ISE_DS\ISE\vhdl\src\unisims\primitive das 
STARTUP_VIRTEX6.vhd an. Da steht nix drin.

von daida (Gast)


Lesenswert?

Haha...na danke für den Hinweis! Da hätte ich noch lange suchen können.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.