mikrocontroller.net

Forum: Mikrocontroller und Digitale Elektronik AT91SAM7SE


Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
hallo,

können eigenltich Addressbus und Datenbus von der Pinbelegung 
ausgetauscht werden oder warum ist bei diesem µC der Addresbus so 
komisch aufgesplittet in PB und PC?
http://www.atmel.com/dyn/resources/prod_documents/...

Bernd

Autor: Ingo Peters (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das sieht ja echt komisch aus - kann man so einen Datenbus trotzdem mit 
einem Befehl komplett ansprechen... ? PA, PB und PC... oder sind das 
einfach nur xyz-Namen und die Hardware dahinter macht das dann schon 
so...

Ingo Peters

Autor: Ingo Peters (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
im datasheet steht, dass man den 32Bit breiten Datenbus nur für 
SDRAM-ICs benutzen kann? d.h. einen Ethernet-controller mit 32Bit 
breiten Datenbus kann ich damit nicht ansprechen - ??? oder einfach 
32Bits mit einem Schlag auf alle 32 Datenleitungen des Datenbusses 
geben?

Ingo Peters

Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
würde es trotzdem funktionieren 32Bits mit einem Assembler-Befehl an 
zwei Latches zu schicken - auch wenn PA, PB und PC angesprochen werden 
muss? Ist das dann schneller als wenn man nur 8Bit breite Ports hat und 
somit 4 Stück damit in 4 Befehlen ansprechen muss?

Bernd

Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
kann mir jmd gewissheit geben, da ich mir diesen µC eigentlich kaufen 
möchte... um damit 32Bit gleichzeitig mit einem Assembler-Befehl oder 
C-Befehl rausschieben möchte... ohne irgendeiner verzögerung 
dazwischen...

Bernd

Autor: Gast (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert

Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
das datasheet hab ich ja angeschaut... (im ersten post ist auch der link 
dazu)... aber durch das datasheet bin ich nicht wirklich schlau 
geworden, deshalb meine frage..

Bei allen anderen µC z.B. von NXP oder so, sind die Pins mit D0-D31 oder 
A0-A16 belegt und alles klar... aber hier ist es total durcheinander; 
was die beschriftung angeht... und ich daher nicht weiß ob ich in einem 
Assembler-Befehl 32Bits über den Datenbus rausschieben kann ohne eine 
Addresse im Addressbus anzulegen...

Bernd

Autor: Dominic R. (dominic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Was du (scheinbar) willst ist kein externer Bus sondern 32 GPIO Pins, 
die du aus irgend einem Grund scheinbar atomar ansprechen willst. Dazu 
musst du entweder alle Pins PA oder PB als GPIO Pins verwenden - 
eventuell auf diesen Pins verfügbare Peripherals sind dann nicht mehr 
verfügbar, sofern sie nicht auch auf anderen Pins zu finden sind. PB 
scheint sich hier anzubieten, da dessen Pins scheinbar nicht mutliplexed 
sid.

Das External Bus Interface (EBI) kümmert sich um einen kompletten 
Transfer, inklusive Handshake Leitungen, allerdings unterstützt der 
Static Memory Controller nur einen maximal 16-bit breiten Datenbus.

Was möchtest du denn genau an den uC anschliessen?

Gruß,

Dominic

Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
einerseits sollen 32Bits gleichzeitig mit einem Befehl abgeschickt 
werden können... und andererseits hab ich einen Ethernet Controller über 
diesen die Daten kommen, der einen 32Bit breiten Datenbus besitzt... -> 
dafür kann ich dann diesen Controller gar nicht verwenden... des 
weiteren hab ich natürlich noch einen externen SRAM und Flash-Speicher 
(jeder 16Bit Datenbus und 20Bit Addressbus)

Bernd

Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
d.h. ich müsste so einen Controller dafür verwenden wie den LPC2468 von 
Phillips http://www.standardics.nxp.com/products/lpc2000/pd...

-> da kann ich dann zwischen Datenbuss und GPIOs 32Stück an der Zahl 
hin- u. herschalten... --> kennst du noch solche Controller, die keine 
eigebaute Ethernet-Schnittstelle aufweisen oder USB weil, dass brauch 
ich z.B. gar nicht...

Sind die Freescale MPC555, M2114 eigentlich von der Performance besser 
als LPC2468?

Bernd

Autor: Dominic R. (dominic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Der Ethernetcontroller wird wohl auch Handshake Leitungen haben, ähnlich 
wie dein SRAM oder Flash. Dann wirst du mit GPIO nicht glücklich, da du 
dann mehrere Zugriffe brauchst, um die Steuerleitungen zu kontrollieren. 
Der Sinn des externen Busses ist ja, dass dieses Protokoll automatisch 
abläuft.

Es stellt sich die Frage, ob du nicht mit einem uC mit eingebautem 
Ethernetcontroller besser beraten bist - die Anbindung dürfte auf jeden 
Fall einfacher sein, vermutlich auch performanter.

Weshalb hast du dich denn für einen so "großen" Ethernet Controller 
entschieden? Das 32-Bit Interface bietet wohl Performancevorteile, 
jedoch kann ich mir vorstellen dass die ARM7, für die du dich hier 
interessiert, niemals den Durchsatz bewältigen, den ein externes 32-Bit 
Interface generieren kann.

Gruß,

Dominic

Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
welche ARM7 Serien können so einen Durchsatz den umsetzen?  Über die 
Ethernet Schnittstelle werden UDP-Datenpakete entgegengenommen, die 
schon relativ schnell ankommen können (nicht kontinuierlich)...

ich dachte, wenn so ein ARM7 auch einen 32Bit Datenbus anbietet, dass 
dieser Mikroncontroller auch damit umgehen kann bzw. ausnutzen kann...

Bernd

Autor: Bernd (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
>die Anbindung dürfte auf jeden Fall einfacher sein, vermutlich auch 
>performanter.

da bin ich mir nicht sicher, da ich schon in mehreren prof. produkten 
zwar mikrocontroller gesehen habe, die eine integrierte 
etherent-schnittstelle besitzen die platine aber trotzdem mit einem 
externen controller fürs ethernet bestückt war bzw. ist...

Bernd

Autor: Dominic R. (dominic)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Diese professionellen Produkte werden vermutlich keinen ARM7 wie SAM7, 
LPC2000 oder STR7x einsetzen. Ein großer Vorteil der internen EMACs ist 
z.B. die DMA Engine, die den Core bereits deutlich entlasten kann.
Die externen BUS Interfaces dieser kleinen uCs bieten in der Regel kein 
externes DMA, schon allein weil die internen Busse dafür garnicht genug 
Bandbreite bieten.

Gruß,

Dominic

Autor: Jörn Kaipf (joern)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Bernd wrote:
> welche ARM7 Serien können so einen Durchsatz den umsetzen?  Über die
> Ethernet Schnittstelle werden UDP-Datenpakete entgegengenommen, die
> schon relativ schnell ankommen können (nicht kontinuierlich)...

Kannst du "schon relativ schnell" in Zahlen ausdrücken?

Wahrscheinlich wirst du mit einem ARM9 mit interner EMAC und seperatem 
AD-Bus besser fahren, wie Dominic schon erklärt hat.

Gruß Jörn

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.