OUTPUT <= INPUT after 2500 ns

Gast #387695
Hallo Gemeinde,
hab mal eine Frage zu einer Verzögerung.
Ich möchte gerne ein Signal um 2,5 µs versögern. Nun gibt es ja den
Befehl bla bla after xxx ns.
Ist eine Verzögerung um so einen Wert überhaupt machbar und wie bekommt
man raus, wie genau das ist.
Ich verwende einen Xilinx XC9536 - 15 und die ISE Umgebung.

Danke schon im voraus.
Mattias
Gast #387696
"after"-Anweisungen werden von Synthesizern nicht unterstützt.

Definierte Verzögerungen kannst Du nur durch ein getaktetes Design
erreichen. Verzögern kannst Du dann um ein Vielfaches Deiner
Taktperiode. Wenn Du Dein CPLD z.B. mit 10 MHz taktest, ergibt sich
eine Wartezeit von 25 Taktzyklen.
Gast #387697
Hallo Xenu,
was meinst Du mit, "wird nicht unterstützt" ?
Ich kann doch in meinem VHDL schreiben:

entity main is
    Port ( INPUT : in std_logic;
           OUTPUT: out std_logic);
end main;

architecture Behavioral of main is
begin
     OUTPUT <= INPUT after 2500 ns;
end Behavioral;


Die Frage ist aber, wie genau das geht und ob der große Wert zulässig
ist.

Mattias
Gast #387699
.....Die Frage ist aber, wie genau das geht und ob der große Wert
zulässig ist.....

Also beim Simulator wird das auf die ns genau umgesetzt. Doch diese
Anweisung ist rein für funktionale Beschreibungen gedacht, nich aber
für die Synthese auf die Hardware, dort musst du halt für x
Taktperioden warten, wenn du das benötigst.
Gast #387700
Laut VHDL-Standard ist der Typ time auf 1 fs genau. Also genauer, als
man es meist braucht. Es kommt am Ende natürlich auch drauf an, was im
Simulator als Resolution eingestellt ist. Das gilt dann auch für die
Simulation.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 20 Jahre alt. Stell sie in einem eigenen Thread – dort lesen mehr Leute mit, und sie wird öfter und schneller beantwortet.

Neuen Thread starten

Eine Lösung, Ergänzung oder Rückmeldung zu diesem Thread? Dann antworte hier.

Formatierung
  • [c]C-Code[/c]
  • [vhdl]VHDL-Code[/vhdl]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] – Link zu einem Artikel
  • Verweis auf einen anderen Beitrag: Rechtsklick auf dessen Beitrags-ID (#8078628), „Adresse kopieren“, in den Text einfügen

Mehr zur Formatierung

Längeren Sourcecode als Anhang, nicht in den Text. JPG nur für Fotos und Scans; Zeichnungen und Screenshots als PNG oder GIF. Siehe Bildformate.

Schon registriert? Anmelden

Wird nicht angezeigt. Wir schicken dir einen Link; sobald du damit bestätigst, erscheint dein Beitrag.

Mit dem Abschicken legst du einen kostenlosen Account an und erkennst die Nutzungsbedingungen und die Datenschutzerklärung an.