Write Request Read Request gleich nacheinander: FiFo

OP #3530633
Hallo,
ich führe einen write request für einen leeren Fifo durch und im 
nächsten Cycle gleich ein read request.
Erwartet hätte ich, dass Empty-Signal wieder high-Pegel annimt.
War ich nun zu schnell mit dem read-request?
Es scheint das der read request einfach nicht registriert wird.
Vielen dank für eure Unterstützung.

P.S. Write und Read request sind nur für eine Periode high. Es handelt 
sich um ein single clock Fifo von Altera.
Angehängte Dateien:
Ist doch völlig klar, was da passiert: Du liest aus dem FIFO während 
empty auf high ist. Was sagt dir das? Dass da kein Datenwort ist was zu 
lesen wäre! Lass mal den read Puls weg und schau nach, nach wieviel 
Takten das geschriebene Wort auf Ausgang verfügbar ist (empty = 0).

In einem richtigen Design würde sich die Leseseite sowieso nie auf einen 
bestimmten Füllstand verlassen, sondern immer nur lesen, wenn vom FIFO 
vorhandene Daten gemeldet werden.
Da Dieter schrieb:
> Lass mal den read Puls weg und schau nach, nach wieviel
> Takten das geschriebene Wort auf Ausgang verfügbar ist (empty = 0).

Dafür muss er doch den read-puls gar nicht weg lassen. Und aus dem 
Diagramm ist schon ersichtlich, dass die Daten nach einem Takt lesbar 
sind.

Prinzipiell muss man unterscheiden zwischen einem "normalen" und eine 
"First-word-fall-through" FIFO.
Bei ersterem liest man entweder nachdem das empty weg ist oder man hat 
zusätlich ein valid-flag, das einem anzeigt dass die Lesedaten gültig 
sind. (Im Prinip not-empty and read um einen Takt verzögert)
Bei zweiterem (mein Favorit) ist mit not-empty das Datenwort am Ausgang 
sichtbar.

Antwort schreiben

Eine eigene Frage? Dieser Thread ist über 12 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.