Forum: Mikrocontroller und Digitale Elektronik ISA/PCI - Bus & AVR


von Matthias (Gast)


Lesenswert?

Hallo,

hat von euch jemand einen Vorschlag wie ich einen AVR am besten an einen 
normalen Bus (Daten-, Adress-, CE-, Schreib-, Lese - Leitungen) hänge?

Mein Problem ist die hohe Geschwindigkeit solcher Bussysteme ...

Mir ist die Idee gekommen, dies über ein Dual-Port-SRAM zu lösen. Da 
diese aber sehr schlecht zu erwerben sind, suche ich eine andere Lösung 
...

Vielen Dank für eure Hilfe!

von Bernd Schmidt (Gast)


Lesenswert?

Was soll der AVR denn am Bus machen ?

Falls der AVR eine Karte die für den Bus gebaut wurde ansteuern soll 
(z.B VGA Karte) macht die Geschwindigkeit keine Probleme.

Wenn der PC auf den AVR zugreifen soll gibt es elegantere Lösungen.


Bernd

von Matthias (Gast)


Lesenswert?

Hallo Bernd,

der AVR soll nicht auf eine solche Karte zugreifen, sondern ich möchte 
ihn auf einer solchen Karte einsetzten ...

>Wenn der PC auf den AVR zugreifen soll gibt es elegantere Lösungen.

Wie sieht den eine solche "elegatere" Lösung aus ?


Gruß Matthias

von Bernd Schmidt (Gast)


Lesenswert?

Die Daten können über die RS232, den USB-Bus oder per Ethernet zum PC 
übertragen werden.
Das spart ausserdem noch die Entwicklung eines Gerätetreibers oder unter 
Win9x die Entwicklung einer DLL.

Was soll denn genau vom AVR zum PC transportiert werden ??

Bernd

von Matthias (Gast)


Lesenswert?

Hallo Bernd,

>Was soll denn genau vom AVR zum PC transportiert werden ??

Ich habe im Moment noch keine konkrete Anwendung, sondern möchte 
generell einen AVR über den ISA-Bus ansteurern ...

>Das spart ausserdem noch die Entwicklung eines Gerätetreibers oder unter Win9x 
die Entwicklung einer DLL.

Ich möchte dies nicht unter Windows nutzen, da dieses "wischiwaschi" 
System  bei zeitkritischen Aufgaben total versagt !

Ich möchte Erfahrungen sammeln im Bereich der Embedded PC's und 
Echtzeitbetriebssysteme ...


Gruß Matthias

von mikki merten (Gast)


Lesenswert?

Schau dich mal hier um. Dort findest du die gewünschten Information zum 
ISA-Bus Signale / Timing

http://www.techfest.com/hardware/bus/isa.htm

von Matthias (Gast)


Lesenswert?

Hallo mikki,

ich kenne den ISA-Bus und sein Timing.

Ich suche eine möglichst einfache und schnelle Möglichkeit zwei CPU's 
miteinander zu "verheiraten".

Ich frage mich wie dies die Profi's auf verschiedenen PC-Karten tun ... 
?

Man sieht dort sehr oft riesige/große Chips von "Xilix".

Das einzigste, was ich mir vorstellen kann sind Dual-Port-SRAM's. Leider 
habe ich bis jetzt niemanden gefunden der mir (als Privatperson) solche 
in kleinen Stückzahlen verkauft.


Gruß Matthias

von Bernd Schmidt (Gast)


Lesenswert?

@Matthias

Windows versagt nicht nur bei Zeitkritischen Aufgaben :-)



Bernd

von Matthias (Gast)


Lesenswert?

Hi

PC Steckkarten verwenden DMA wenn es um schnellen Austausch von Daten 
geht. Der PC schreibt Daten in den Arbeitsspeicher und schickt ein 
Signal an die Karte. Diese holt sich dann die Daten dort ab. Umgekehrt 
läufts ähnlich: Die Karte schickt eine DMA Anforderung ab. Irgendwann 
bekommt sie die Genemigung und schreibt die Daten in das RAM des PC. 
Danach sendet sie einen INT an den Prozessor damit dieser weiß das er 
sich jetzt neue Daten abhohlen kann. Wie das genau funktioniert findet 
sich sicher in Büchern/Google.

An PCI würde ich an deiner Stelle erstmal nicht denken. Da brauchst du 
ein FPGA oder einen großen CPLD(z.B. von Xilinx) um eine eigene Karte 
entwickeln zu können. Schneller Logicanalyser ist dann auch nicht 
schlecht.

Matthias

von Matthias (Gast)


Lesenswert?

Hallo Matthias,

>PC Steckkarten verwenden DMA wenn es um schnellen Austausch von Daten geht.

Ich dachte ich komme um DMA herum ... Ich werde mich damit beschäftigen 
...


>An PCI würde ich an deiner Stelle erstmal nicht denken.

An PCI hatte ich auch nicht wirklich gedacht: ich hatte es in Erwägung 
gezogen eine fertige PCI-Prototypen-Karte zu kaufen, auf der der ASIC 
usw. schon vorhanden ist ... Das wäre dann eine Art ISA-Bus in Form 
einer PCI-Karte ...

Schau mal bei KOLTER ELECTRONIC vorbei: www.pci-card.com ...


Gruß Matthias

von Henk (Gast)


Lesenswert?

nim ein isa interne LPT port, (isa hardware ist dan fertig)
und sie habben handshake mit uC.

fg Henk

von Wolfram (Gast)


Lesenswert?

Hallo Matthias

zwei 8Bit flipflops(eins für den Ein- und eins für den Ausgang) mit 
enable reichen vollkommen. Da du bis 8Mhz auf dem Bus hast vielleicht 
lieber Hispeedversionen.
Die Datenleitungen werden an die FF geführt.Mit einem PLD überwachst du 
die Adressleitungen und bei der richtigen Adresse und kein Refresh wird 
ein Enable und der Takt geschaltet vom PLD,die IOLese und Schreibsignale 
bestimmen welches FF angeschaltet wird(Ich nehme mal an das du auf dem 
PC über IOPorts zugreifen möchtest).Damit kann dein Atmelcontroller sich 
auch ne Minute Zeit lassen.Du solltest nur bei der Programmierung auf 
der PC-Seite die Antwortzeit deines Controllers beachten da sonst 
natürlich noch nicht die Antwort in den FF steht.


ISA und PCI Cores gibt es ansonsten für FPGA's(das sind die grossen 
Chips wo XILINX drauf steht ;-) )Das kostet aber einiges, oder bei 
www.opencores.org
Für kleine Anwendungen am ISA Bus dürften aber 2 kleine PLD's
und die FF ausreichen

Für PCI-Bus sind FPGA's oder Bridgechips vorgeschrieben.

CU Wolfram

von StifflersMom (Gast)


Lesenswert?

Moin!

Ich weiß zwar das das ein AVR-Forum ist, aber kuck dir mal die Pic-Reihe 
an! Da gibt es welche mit Parallel-Slave-Port. Den kannst dann einfach 
mit cs/ rd/ und wr/ beschreiben.

http://www.microchip.com/download/appnote/devspec/16cxx/00579b.pdf

MfG

von Matthias (Gast)


Lesenswert?

Hallo,

vielen Dank für eure Hilfe !


Gruß Matthias

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.