mikrocontroller.net

Forum: FPGA, VHDL & Co. Optimierung verhindern


Autor: Andreas Kratzsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

wie kann ich in VHDL die Optimierung von bestimmten Gattern
oder FF's verhindern oder eine definierte Verzögerung erreichen ?

Die Verzögerung sollte nur wenige ns betragen
und natürlich viel kürzer sein als das clock Signal.

Es geht mir nicht um die Simulation mit "signal <= '1' after 10ns"
sondern um die reale Synthetisierung im CPLD oder FPGA.

Mit den alten Logik IC's konnte man ein paar Gatter hintereinander
schalten und hatte so ganz einfach eine Verzögerung von ein
paar Nano Sekunden.

Ich möchte mit einigen Gattern oder FF's eine definierte Verzögerung
des Signals erreichen.
Dazu möchte ich z.Bsp. ein paar Buffer oder Inverter hintereinander
schalten.
Leider funktioniert es nicht, vermutlich weil
die scheinbar überflüssigen Teile wegoptimiert werden.

Wenn es in VHDL nicht geht, wäre es als Schematic möglich ?

Andreas

Autor: Neutron (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Das geht natürlich. Allerdings musst du in das Handbuch deines
Synthese-Tools kucken und die entsprechenden Parameter finden. Die
kannst du dann in deinen VHDL-Code einfügen.

Autor: Andreas Kratzsch (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hallo,

danke für den Tip !

Das Xilinx WebPack 7.1 Constraint dafür heißt:

  attribute NOREDUCE : string;

  signal tmp1_sig : std_logic := '0';

  attribute NOREDUCE of tmp1_sig : signal is "true";

In der Xilinx Doku vom XST ist der Typ des Attributes boolean,
es muß aber string sein.

Jetzt funktioniert es so wie ich es mir vorgestellt habe.

Andreas

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.