Forum: Mikrocontroller und Digitale Elektronik ISA eventuell auch PCI an Microkontroller


von Christian K. (programm-noob)


Lesenswert?

Ich würde gerne mal wissen, ob es geht, und wie kompliziert es ist einen 
ISA oder sogar einen PCI BUS an einen microkontroller, wie z.B. den 
AT91SAM7S64 zu betreiben.
Würde der genannte Microkontroller über genügend recourcen verfügen um 2 
oder mehr geräte an einem solchem Bus verwalten und ansteuern zu können, 
der uC soll dann nur noch verwalten und die Daten, welche von den Karten 
kömmen per I2C oder einem anderem uC Bussystem weiterversenden. zum 
Debuggen auch per RS232 aber das wirklich nur zum debuggen ansonsten 
bekommt die RS232 Schnittstelle ihre eigene ISA/PCI Karte.
Wäre das so möglich, wenn ja wie?

Programm Noob

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

ISA ist simpel, ist ja nur ein externer Speicherbus.

PCI kannst du so erstmal vergessen.  PCI-Busentwurf ist praktisch
HF-Technik. ;-)  Das geht ohne entsprechende ICs ("southbridge")
nicht.

von holger (Gast)


Lesenswert?

>Ich würde gerne mal wissen, ob es geht, und wie kompliziert es ist einen
>ISA oder sogar einen PCI BUS an einen microkontroller, wie z.B. den
>AT91SAM7S64 zu betreiben.

Es gibt Projekte mit AVR und ISA Ethernet Karten. ISA ist eigentlich
recht simpel zu verarbeiten. PCI lass mal besser sein.

>und die Daten, welche von den Karten
>kömmen per I2C oder einem anderem uC Bussystem weiterversenden.

I2C dürfte da wohl das falsche sein. Viel zu langsam.

von User (Gast)


Lesenswert?

Brauchst halt noch einen CPLD der die Beiden kommunizieren lässt.

Also
Adressen dekodiert
Daten zwischenspeichert
Interrupts auswählt
DMA verwaltet, wenn es kompliziert werden soll

von Christian K. (programm-noob)


Lesenswert?

Könnte denn der uC denn sonst die ISA verwaltung auch alleine 
übernehmen?

von Reinhard Kern (Gast)


Lesenswert?

Christian K. schrieb:
> Könnte denn der uC denn sonst die ISA verwaltung auch alleine
> übernehmen?

Eine Verwaltung gibt es eigentlich nicht, nur Hardware: man muss 
Adress-, Datenleitungen, Read-, Write-Signale geeignet erzeugen (also 
ein µC mit herausgeführtem Bus), dann antwortet ein Chip am ISA-Bus. 
Oder nicht.

Der ganze PnP-Horror existiert bei ISA nicht. Insofern ist der Anschluss 
über ISA nicht schwieriger als der Anschluss von Zusatz-Chips/Speicher 
über den µC-eigenen Bus, wahrscheinlich genügt ein PAL zur Umkodierung 
einiger Signale. Allerdings könnte DMA erforderlich sein, je nachdem was 
man anschliessen will, das muss der µC halt können oder man muss einen 
DMA-Kontroller dazubauen.

Im Zweifelsfall alte Unterlagen wälzen: im IBM-Handbuch (techn. 
Referenz)zum AT ist alles bis zum letzten Gatter und zum einzelnen 
BIOS-Byte dokumentiert.

Gruss Reinhard

von holger (Gast)


Lesenswert?

>Könnte denn der uC denn sonst die ISA verwaltung auch alleine
>übernehmen?

Nur mal so nebenbei: ISA läuft mit 5V. Pegelwandler nicht vergessen!

von User (Gast)


Lesenswert?

Der uC bräuchte ein Slave-Bus-Interface (wie der 8042)

von Christian K. (programm-noob)


Lesenswert?

Ich habe noch eine Frage, die passt zwar nicht in diesen Thread ich 
finde es jedoch zu blöd für diese Frag einen neuen zu eröffnen also, wie 
kann ich mit diesen Blauen Buslinien bei EAGLE arbeiten, muss ich die 
einfach irgendwo lang legen und dann von der Buslinie einfach eine 
normal everbindung zum Pin machen oder wie?

von Christian K. (programm-noob)


Lesenswert?

Habs inzwischen selbst herausgefunden

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Reinhard Kern schrieb:
> Allerdings könnte DMA erforderlich sein, je nachdem was
> man anschliessen will, das muss der µC halt können oder man muss einen
> DMA-Kontroller dazubauen.

Dann wird's nicht mehr so simpel.  Aber praktisch alle ollen ISA-
Karten hatten DMA nur optional und konnten alternativ mit PIO
(programmed IO) angesprochen werden.

Kritisch könnten bestenfalls die Interrupt-Antwortzeiten werden,
wenn man irgendjemanden hat, der mit hoher Datenrate einzelne Zeichen
per Interrupt los werden will.

von Christian K. (programm-noob)


Lesenswert?

Das mit iSA kling glaube ich noch zu kompliziert, ich glaub eich werde 
erstmal alles on board machen, und dann vieleicht nen ISA Bus anfügen.
Aber Danke für die Infos.

von Jörg W. (dl8dtl) (Moderator) Benutzerseite


Lesenswert?

Christian K. schrieb:
> ich glaub eich werde
> erstmal alles on board machen

Falls das geht, ist natürlich ein ISA-Bus in jedem Falle Unfug, auch
wenn er nicht wirklich kompliziert ist.  Sowas will man nur für Dinge
nehmen, die mit den internen Geräten nicht machbar sind, wie die
bereits genannte Ansteuerung einer Ethernetkarte (wobei es mittler-
weile für Ethernet praktikablere Lösungen gibt).

Aus ähnlichen Gründen habe ich kürzlich gerade in Erwägung gezogen,
ob ich nicht eine einfache und billige ISA-GPIB-Karte an einen
Controller hängen sollte, statt jedesmal dafür einen PC hochfahren
zu müssen.

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
Noch kein Account? Hier anmelden.