Welche Ideen habt Ihr um ein µC als SLAVE über einen 8080-8Bit-Paralell-Bus mit einem Master zu verbinden?
Also ich haette die Idee einen 8042 zu verwenden. :-) Olaf
Falls der uC kein Slave Interface hat: Über ein FIFO. So kann der Bus jederzeit Daten schreiben. Mit etwas Logik kann über den Bus auch das FIFO full Flag gelesen werden. Der uC arbeitet die Daten aus dem FIFO ab, wann immer er Zeit dazu hat. Viele FIFOs haben 9bit, so kann man das 9.Bit als Adresse zur Unterscheidung zwischen Daten/Befehlen verwenden.
deine Hauptproblem ist das dein Mikrocontroller nicht so schnell auf irgendeinen Buszugriff reagieren kann. Sieh den Mikrocontroller doch nicht als Slave sondern als 2. Prozessor am Bus. Ein Datenaustausch erfolgt über den vorhandenen? RAM und dein Mikrocontroller verhält sich wie ein DMA-Controller , hierfür gibt es die HOLD Leitung darüber kann der 8080 angehalten werden, wenn ein anderer Busteilnehmer die Kontrolle über den Bus übernehmen will. Signalisierung von 8080 zu MC z.B. über einen IO-Port dessen Bit auf die Interruptleitung des MC geführt ist. Da kann auch anderes Signalisiert werden wie Verarbeitung fertig etc. Vorteil 8080 und MC können parallel arbeiten. Also 8080 schreibt Daten in RAM und signalisiert MC MC hält 8080 an übernimmt daten und läßt 8080 weiterarbeiten MC bearbeitet Daten ,wenn er fertig ist signalisiert er das er fertig ist. ... Dies ist eine Möglichkeit für grosse Datenmengen auszutauschen. Das es über den Anschluss einer Seriellen Schnittstelle auch wesentlich einfacher geht sollte klar sein, aber ich nehme an die erreichbare Datenrate reicht Dir nicht. Soweit ich das noch weiss lag die maximale Datenrate bei einem KC85 (Z80 CPU) irgendwo bei 51KBaud. PS: es ist mir rätselhaft, warum du dies mit einen MC machen willst, da nimmt man einem FPGA packt das rein was man braucht und hat diese Übertragungsprobleme nicht.
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.