Hallo,
habe eine VHDL Komponente geschrieben die ich nun an einen Nios II
anbinden möchte. Ich habe hierzu ein einfaches Memory Mapped
Avalon-Slave Interface gestrickt, dass über die Signale:
1 | write,
|
2 | writedata,
|
3 | read,
|
4 | readdata,
|
5 | address,
|
6 | clk,
|
7 | reset
|
an den Avalon-Bus angebunden wird. Dieses Interface besitzt nun kein
waitrequest Signal. Ein write kann in einem Clock-Zyklus erfolgen, ein
read benötigt jedoch drei Zyklen bis valide Daten verfügbar sind. Dies
habe ich über das 'Read Wait' im Component-Editor eingestellt.
Meine interne Logik reagiert im 'Read' Fall auf eine positive Flanke auf
der Read-Leitung.
Hierfür habe ich ein zweistufiges Schieberegister implementiert, dass
bei einem Inhalt von '01' mir einen low-to-high Signalwechsel anzeigt
auf den nun mein interner Kontroller reagiert.
Ein Problem würde nun 'permantenter read' darstellen, d.h. das read
Signal wäre für eine gewisse Anzahl von Zyklen high und würde somit
permanent lesen.
Kann in meinem Fall, d.h. bei meiner oben beschriebenen
Interface-Deklaration, ein solcher 'burst-read' auftretten, wenn ich
software-seitig mehrmals hintereinander lesend auf diese Komponente
zugreife ???
Gruss,
Jens