Hallo, ich möchte einen parallelen Bus mit einer 8 Bit Leitung und einem Strobe Signal aufbauen. Bei jeder steigenden Flanke des Strobe Signals sollen die Adressdaten sequentiell immer wieder gesendet werden und bei fallender Flanke die Daten. Das ganze hab ich bis jetzt mit meinem Mikrocontroller realisiert. Ich wollte Fragen, welche Möglichkeit habe ich, dass vlt schaltungstechnisch zu realisiern, so dass der Controller nur noch die Daten eines Ringspeichers zu gegebener Zeit updatet und der Rest automatisch durch rotiert? Ziel ist es den Controller zu entlasten. VG
Patrick S. schrieb: > Ziel ist es den Controller zu entlasten. Welchen? > dass vlt schaltungstechnisch zu realisiern Hast du schaltungstechnisch die Möglichkeit an den Ringspeicher zu kommen?
Patrick S. schrieb: > Ziel ist es den Controller zu entlasten. Ich halte es für nicht sinnvoll, die Software des Controllers durch externe Hardware zu ersetzen. Dazu bräuchtest du eine mittelmässig komplexe Logik, wahrscheinlich ein FPGA, das du programmieren müsstest, einen externen Speicher und dazu noch eine Zugriffsmöglichkeit für den Controller auf diese ganze externe Mimik (was Lothar schon angesprochen hat), so richtig trivial wird das nicht und die Hardware wird um ein Mehrfaches komplexer. Suche lieber einen leistungsfähigeren Controller, sofern das überhaupt ein Problem ist. Fertige Ringspeicher als Chip kenne ich nicht, aber du kannst ja mal nach FIFO ICs googeln. Ich glaube aber nicht dass dir das weiterhilft. Georg
Georg schrieb: > ... mittelmässig komplexe Logik, wahrscheinlich ein FPGA ... Mein Vorschlag dazu wäre ine zweiter (kleinerer) µC, der nur die Ausgabe des Ringspeichers auf den 8-bit-Bus macht und zum Update eine Standleitung (SPI) zu Haupt-µC hat. Der Rest ist wieder Software .. Gruß, RoGerZ
Nach meiner jetzigen Recherche, seh ich auch einen zweiten Controller als am sinnvollsten an. Danke für eure Hilfe.
> Bei jeder steigenden Flanke des Strobe Signals sollen > die Adressdaten sequentiell immer wieder gesendet werden und bei > fallender Flanke die Daten. Das wird so einfach nur unidirektional klappen. Dann ist es aber nicht mehr wirklich ein Bus. > Ich wollte Fragen, welche Möglichkeit habe ich, dass vlt > schaltungstechnisch zu realisiern, so dass der Controller nur noch die > Daten eines Ringspeichers zu gegebener Zeit updatet und der Rest > automatisch durch rotiert? Welcher Controller? Welche Daten? Welches Timing?
Wenn Du einen DMA fähigen Controller hast, dann kann das der DMA erledigen, ohne einen Ovcerhead für die CPU zu erzeugen. Welche Geschwindigkeit willst Du erreichen und welchen Controller benutzt Du im Moment? Gruß, Stefan
Es gibt Speicher (8 Bit), die nur auf Kommando (Latch) die Eingangsdaten übernehmen und dann natürlich am Ausgang spiegeln. Alternativ auch mit seriellem Eingang.
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.