ISA/PCI - Bus & AVR

Gast #26327
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!
Gast #26328
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
Gast #26329
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
Gast #26330
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
Gast #26331
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
Gast #26333
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
Gast #26335
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
Gast #26336
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
Gast #26338
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

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren