www.mikrocontroller.net

Forum: FPGA, VHDL & Co. CPLD ATF1502AS: Signal um 40 ns verzögern


Autor: Siggi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ein Signal das an einem Eingang (I1) eines ATF1502AS (Pin to Pin 10 ns) 
anliegt, wird zu einem Ausgang (Q1) geleitet. Das Signal soll zusätzlich 
- um 40 ns verzögert - an einem zweiten Ausgang (Q2) erscheinen. Wie 
mache ich das unter WinCupl? Meine erster Gedanke ist, Q1 wird über 
mehrere Ausgänge umgeleitet, bevor es auf Q2 ausgegeben wird. Soweit so 
gut. Das Problem ist, was mache ich wenn ich 5 oder 10 Signale verzögern 
muß? Da gehen einfach zu viele Ausgänge für die Umleitung verloren.

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Meine erster Gedanke ist, Q1 wird über mehrere Ausgänge umgeleitet, bevor
> es auf Q2 ausgegeben wird.
Das ist Murks.
> Pin to Pin 10 ns
Der Hersteller garantiert dir eine maximale Verzögerung über alle 
Betriebsbedingungen (Spannung/Temperatur/Last).
Das muß also richtig heißen Pin to Pin max 10 ns. Eine minimale Zeit 
ist im DB gar nicht angegeben. In den "üblichen" Betriebsbereichen ist 
das Ding viel schneller...   :-o

Du wirst einen anderen Weg suchen müssen...
Üblicherweise werden solche Signale mit einem Takt über ein 
Schieberegister geschoben, und dort entsprechend abgegriffen.

Autor: Siggi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@Lothar

Vielen Dank für deine Erläuterungen. Die Idee ein Schieberegister zu 
verwenden, werde ich mir näher anschauen.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Du brauchst einen Takt von 25MHz, dann kannst du das Signal einfach mit 
einem FlipFlop verzögern und hast deine 40ns Verzögerung, wenn du einmal 
das Signal vor und einmal nach dem FlipFlop ausgibst.

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> Du brauchst einen Takt von 25MHz ...
Mir wäre das etwas zu knapp, wenn ich ein Signal von Eingang 
kombinatorisch zum Ausgang schleusen will und parallel um 40ns 
verzögert ausgeben soll...
Srichwort: Metastabilität

@  Siggi:
Müssen das genau 40ns sein?

Autor: Siggi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Verzögerung: min. 40 ns, max. 60 ns

Autor: Lothar Miller (lkmiller) (Moderator) Benutzerseite
Datum:

Bewertung
0 lesenswert
nicht lesenswert
> ATF1502AS
Das Ding hat nur 32 FFs, für ein Schieberegister mit 3 Stufen (50Mhz = 
20ns, 60MHz = 16,6ns) gehen dir schon mal 10% der Ressourcen flöten...

Hast du überhaupt einen Takt, und dazu noch soviele FFs + Produktterme 
frei?

Autor: Siggi (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Die Makrozellen sind komplett frei. Es sind nur 20 I/O-Pins belegt. 
Einen Takt habe ich nicht, aber es gehen zusätzlich 8 Anschlüsse vom 
CPLD zu einem nicht bestückten AVR-Controller.

Autor: Christian R. (supachris)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ohne Takt wird das aber nix mit einer sinnvollen Verzögerung.

Autor: Falk Brunner (falk)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
@  Siggi (Gast)

>Ein Signal das an einem Eingang (I1) eines ATF1502AS (Pin to Pin 10 ns)
>anliegt, wird zu einem Ausgang (Q1) geleitet. Das Signal soll zusätzlich
>- um 40 ns verzögert - an einem zweiten Ausgang (Q2) erscheinen.

Sag mal lieber was das insgesamt werden soll. Alles andere führt nur zu 
unsinnigen Diskussionen.

>gut. Das Problem ist, was mache ich wenn ich 5 oder 10 Signale verzögern
>muß?

Wozu soll das gut sein? In einem soliden Design ist sowas VOLLKOMMEN 
unnötig.

MFG
Falk

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.