Hallo, ich suche jetzt schon länger nach einer passenden Lösung, aber bei einigen Vorschlägen fehlt mir das Verständnis, oder ich schaffs nicht aufs Gleis zu kommen. Ich habe ein CycloneIII mit einem Logikteil und einem NIOS-SoC. Ich möchte ein in der Logik implementiertes FIFO lediglich lesend ansprechen, so daß bei jedem Lesen auf eine Adresse vom Nios auch ein FIFO-Readstrobe erzeugt wird. D.h. eigentlich Funktion wie ein GPIO-Input, nur eben zusätzlich der Readstrobe. Eine zweite Adresse in diesem Interface würde ich mir so gestalten daß dort der FIFO-Füllstand vom NIOS abgelesen werden kann. Letztlich klingt das nicht nach besonders komplizierter oder aufwendiger Logik. Ich denke es geht über die Custom Device von QSYS. Wie kann ich hier ein Template erstellen, welches ich dann selbst mit Code füllen kann. Oder gibt es irgendwo schon ein simples Beispiel für ein eigenes Device am Avalon-Bus? Zweite Möglichkeit erscheint mir die QSYS-Komponente "On-Chip FIFO Memory", aber auch hier habe ich Verständnisprobleme wie man die externe Logik anschließen kann. Es erscheint mir hier aber etwas aufweniger zu sein, denn - richtiges Verständnis vorausgesetzt - hat dieses FIFO auf der Nicht-NIOS-Seite wohl Avalon-Eigenschaften, die man nachbilden muß. Danke schon jetzt für eure Hilfe. Günter
Hallo, danke, das hat geholfen. * Das Wichtigste: die Signale in Richtung Logik sind alle als conduit_end zu definieren * Im "Interface"-Tab muß man den dazu passenden Reset eintragen - dafür gibt es ein Warning, also das findet man relativ problemlos * Die Datenbusbreite habe ich aber erst durch manuelles Editieren des TCL ändern können. Wo das im Component Editor geht, habe ich nicht gefunden * Das zugrundeliegende VHDL am besten erst dann generieren wenn das TCL stimmt. Sobald es Inkonsistenzen gibt, kommt es vor, daß der Component Editor zuvor definierte Signale beim Konsistenzcheck wieder löscht * Im NIOS-System muß man dann die conduit-Signale nochmal extra exportieren, das sieht man aber auch gut im QSYS "HDL Example" Tab. Ciao, Günter PS: Kann einer der Moderatoren ggf. den Tippfehler im Titel ändern? Ich hab Avalon mit zwei 'o' geschrieben. Diese Wildwest-Variante ist noch in Entwicklung.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.