Forum: FPGA, VHDL & Co. XC3S250E Reset Pin


von Ajo (Gast)


Lesenswert?

Hallo zusammen,
hat der XC3S250E einen Reset, den man intern nachdem start nutzen kann?
Danke.
MfG,
Ajo

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> hat der XC3S250E einen Reset, den man intern nachdem start nutzen kann?
Jein.
Die Konfiguration des Bausteins führt eine Initialisierung auf 
Defaultwerte durch, wenn bei der Beschreibung solche Werte angegeben 
wurden.
1
   signal vect : std_logic_vector (7 downto 0) := x"55";   
2
   signal wert : integer range 0 to 511 := 255;
Ohne Wertzuweisung werden alle Signale auf 0 initialisiert.

Aber es gibt kein internes "Reset-Signal", das man in seine 
VHDL-Beschreibung einbauen könnte.

von Christian R. (supachris)


Lesenswert?

Dafür kannst du doch jeden beliebigen Pin benutzen, oder hast du was 
ganz spezielles vor? Es gibt noch den GSR Pin, da ist aber einiges zu 
beachten, da der auch während der Konfig was macht...

von Ajo (Gast)


Lesenswert?

Hallo Lother,

das habe ich jetzt nicht ganz verstanden.
Kannst du mir das jetzt vielleicht genauer erklären?

Hallo christian,
ich brauche das für Powersequensing....LCD.
Ich hab jetzt leider kein externes Resetbaustein vorgesehen.
Sonst wäre das sehr einfach gewesen.

Grüsse,
Ajo

von Gast (Gast)


Lesenswert?

also - wenn ich Dich richtig verstanden habe:
willst Du den Einschaltzeitpunkt / Konfigurations-Zeitpunkt
bestimmen/verzögern ?

wenn ja:
a) Konfiguration wird erst gestartet, wenn der PROG-Pin auf high geht
    => extern nach low ziehen, und der FPGA wartet mit der Konfig

b) Startup (nach der Konfig, bis IO aktiv)
    => schwieriger, aber machbar
      => Congig-UserGuide nachsehen: hab's nicht auswendig
        Stichworte sollten sein:
    Startup-Synchonosierung meherer FPGA - irgenwas mit dem Done-Pin
      zusätzlich solltest Du dann noch die Zeitpunkte für GWE und GTS
      einstellen (-> bitgen), damit die FlipFlops im FPGA und die IOs
      erst aktiv werden, wenn der Done-Pin aktiv ist

Gruß

von Ajo (Gast)


Lesenswert?

Hallo,
was ich machen will, ist folgendes:
1. FPGA konfigurieren...........geht klar
2. Die Versorgung von LCD direkt nach Konfig einschalten
3. LVDS-Treiber....EN-Pin verzögert setzen.

Der Display muss eine verzögerung zwischen Daten und die Versorgung 
haben.
D.h., erst die Versorgung einschalten dann den LVDS treiber.

Ich hoffe, das war etwas verständlich

Grüsse,
Ena

von Gast (Gast)


Lesenswert?

wenn der FPGA die Versorgung des LCD ein-/ausschalten kann, sehe
ich nicht wo überhaupt das Problem sein soll - mach's einfach
genau so, wie Du's beschrieben hast...

von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

> D.h., erst die Versorgung einschalten dann den LVDS treiber.
Sowas etwa:
1
  Port (
2
    clk :  in std_logic;
3
    lcdpower :  out std_logic;
4
    drvenable : out std_logic; 
5
    :
6
    );
7
:
8
signal lcdp : std_logic :='1'; -- sofort ein
9
signal drve : std_logic :='0'; -- erst mal aus
10
signal powercnt : integer :=0; -- Zähler für Powersequence
11
:
12
   process begin
13
      wait until rising_edge(clk);
14
      if (powercnt < 3000000) then -- deine Zeit
15
         powercnt <= powercnt+1;
16
      else
17
         drvenable <= '1';
18
      end if;
19
   end process;
20
   lcdpower  <= lcdp;
21
   drvenable <= drve;
22
:

von Ajo (Gast)


Lesenswert?

Hallo Lother,

herzlichen dank an alle!

so in etwa sieht es bei mir auch aus.
Nur ich dachte mir, dass ich nach Konfig die EN Pins reseten sollte und 
dann
alles setzen sollte.

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.