mikrocontroller.net

Forum: FPGA, VHDL & Co. MAX10 / MAX1000 Reset feststellen


Announcement: there is an English version of this forum on EmbDev.net. Posts you create there will be displayed on Mikrocontroller.net and EmbDev.net.
Autor: Martin O. (ossi-2)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich möchte das beim Einschalten vom MAX1000 Board ein Reset in meiner 
FPGA Logik ausgelöst wird. Es soll nicht der Reset-Button gedrückt 
werden.
Wie kann ich einen Reset feststellen ? Sind normale Verilog-Register 
nach dem Reset garantiert auf 0 ? Dann könnte ich daran die 
Reset-Situation erkennen.

Autor: Tim (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Wenn das jetzt kein exotisches Board ist, was ich nicht vermute, dann 
sind die Register auf 0 oder deines initialisierten Wertes.

Außerdem sollte der Reset, falls vorhanden,  zum Start in einem üblichen 
Design aktiv sein.

Autor: Lothar M. (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Martin O. schrieb:
> Sind normale Verilog-Register nach dem Reset garantiert auf 0 ?
Was steht denn zum Thema Initialwerte im Handbuch des verwendeten 
Synthesizers?

Autor: Markus F. (mfro)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Tim schrieb:
> Außerdem sollte der Reset, falls vorhanden,  zum Start in einem üblichen
> Design aktiv sein.

Der sollte nicht, der ist. Bei der Konfiguration ist der Device Reset 
aktiv, sonst konfiguriert nix.

In welchem Zustand Register dann aktiv werden, hängt davon ab, wie sie 
im Code initialisiert werden (immer vorausgesetzt, sie sind überhaupt 
noch da, s. z.B hier: 
https://www.altera.com/support/support-resources/knowledge-base/solutions/rd06172002_6171.html).

Dann gibt's noch "NOT gate pushback" - wenn erlaubt und die Synthese es 
nützlich (und die Freiheit dazu) findet, werden Teile des Designs mit 
invertierter Logik betrieben. Alles was explizit hingeschrieben wurde, 
wird dabei berücksichtigt, Annahmen aber möglicherweise enttäuscht.

In einem sauberen Design (in dem man Register entweder vorbelegt oder 
den Reset bedient) braucht man sich darüber m.E. keine Gedanken machen.

Wenn man will, kann man auch einen DEV_CLRn-Pin definieren, mit dem man 
"von aussen" bei Bedarf alle Register zurücksetzen kann.

Autor: Duke Scarring (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Martin O. schrieb:
> Wie kann ich einen Reset feststellen?
Ziemlich sicher geht es mit einem externen Supervisor-Chip, z.B.:
http://www.ti.com/product/TPS3705

Duke

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.