Forum: Mikrocontroller und Digitale Elektronik Wissensfrage: CSMA und CAN


von Simone Ladwig (Gast)


Lesenswert?

Hallo,

Wer kennt sich mit CSMA aus und kann mit wissenschaftlichen Quellen 
dienen.

Ich habe folgendes Problem. Ich brauche wissenschaftliche Quellen zum 
Thema CAN und dessen Arbitrierung. Bisher habe ich 4 Bücher und diese 
sind sich nicht einig, welches Buszugriffsverfahren bei CAN denn nun 
vorliegt.

[1] W. Lawrenz und N. Obermüller, CAN Controller Area Network: 
Grundlagen, Design, Anwendungen, Testtechniken. Berlin: VDE Verlag GmbH, 
2011.
[2] W. Lawrenz, Controller area network : CAN ; Grundlagen und Praxis. 
Hüthig, 2000.
[3] K. Etschberger, Controller-Area-Network : CAN ; Grundlagen, 
Protokolle, Bausteine, Anwendungen. München: Carl Hanser Verlag, 1994.


So in [2, S. 32 und 54] steht, dass bei CAN CSMA/CD+CR vorliegt.
In [2, S. 91] steht, dass bei CAN CSMA/CD+AMP vorliegt.

In [1, S. 307] steht, dass bei CAN CSMA/CR vorliegt UND da [1] ja die 
Neuauflage von [2] ist, stehen die beiden unter [2] genannten Sachen 
auch drin.

In [3, S. 27-28] steht, dass bei CAN CSMA/CA vorliegt.
In meinen Vorlesungsunterlagen steht, dass bei CAN CSMA/CA vorliegt, 
allerdings ohne Quelle.
In Wikipedia Artikeln steht, dass bei CAN CSMA/CR vorliegt, allerdings 
ohne Quelle.
Und zu guter letzt, habe ich zwei Quellen gefunden die behaupten, dass 
CSMA/CA und CR sind dasselbe. Diese Quellen haben ihrerseits wiederum 
nicht angegeben woher diese Information stammen.

Weiß einer Rat?
Ist CSMA/CA denn nun das gleiche wie CSMA/CR, laut Quellen [1] und [2] 
nicht, dort wird es separat aufgeführt.


Gruß,
Simone

P.S: Es gab schon mal 2009 so eine Frage hier im Forum, auf die keiner 
geantwortet hat: CSMA/CA vs. CR

: Verschoben durch Moderator
von Lothar M. (Firma: Titel) (lkmiller) (Moderator) Benutzerseite


Lesenswert?

Simone Ladwig schrieb:
> Ich brauche wissenschaftliche Quellen zum Thema CAN und dessen
> Arbitrierung.
Nimm doch die Doku von Bosch.

Simone Ladwig schrieb:
> Ist CSMA/CA denn nun das gleiche wie CSMA/CR, laut Quellen [1] und [2]
> nicht, dort wird es separat aufgeführt.
Ist es nicht. Denn eine "Vermeidung" eines Konflikts ist etwas anderes 
als die "Auflösung" des Konflikts während der Übertragung.

CAN ist CSMA/CR, weil eine potentielle Zugriffskollision während der 
Übertragung aufgelöst wird. Und jetzt musst du nur noch ein paar 
Machwerke finden, die das auch genau so behaupten...

> Ich brauche wissenschaftliche Quellen zum Thema CAN und dessen
> Arbitrierung. Bisher habe ich 4 Bücher
Was ist denn an Büchern generell wissenschaftlich?

: Bearbeitet durch Moderator
von Lars K. (mrlaush)


Lesenswert?

Macht ein CAN Kontroller nicht beides?
Also "Auflösung" (hört auf zu senden, da die andere ID höher ist als die 
die gesendet werden soll)
"Vermeidung" (Wartet dann eine zufallszeit mit dem Senden je nach ID 
länger oder kürzer)

von Volle (Gast)


Lesenswert?

Das Problem das es immer auf die Sicht ankommt

Bei der dominanten Botschaft bekommt weder deren Sender noch  die 
Empfänger etwas mit von einer Kollision. Also Kollisionsvermeidung.

Bei der rezessiven Botschaft erkennt der Sender die Kollision und 
vermeidet sie und versucht das Problem durch Wiederholung zu beseitigen. 
Der Empfänger der rezessiven Botschaft bekommt nicht mal mit das des 
einen Sendeversuch gab. Erst bei der Wiederholung.

Du hast also alles, aber nicht bei allen Busteilnehmen zur selben Zeit.

von Peter D. (peda)


Lesenswert?

http://www.itwissen.info/CSMA-carrier-sense-multiple-access-CSMA-Verfahren.html

CAN ist CSMA/CR, solange der Identifier unterschiedlich ist.

CAN ist CSMA/CD, wenn bei gleichem Identifier unterschiedliche Daten 
gesendet werden. Allerdings erzeugt die CAN-Hardeware keine 
unterschiedlichen Wartezeiten, d.h. es kann zu einer Rekursion kommen, 
bis die Fehlerzähler überlaufen.
Der Fall der gleichen Identifier muß daher im darüber liegenden 
Protokoll ausgeschlossen werden.

von Simone Ladwig (Gast)


Lesenswert?

Hallo,

also in der Doku von Bosch steht es nicht drin. Gibts da noch ne andere 
als die "aktuelle" 2.0 Spezifikation?

Wenn ich von wissenschaftlich rede, meine ich vielmehr zitierfähig, also 
keine Wiki Artikel und vielleicht irgendwas mit eioner ordentlichen 
Quellenangabe. Weiterhin meine ich, dass es in der ISO 11898-1 drin 
stehen müsste, aber an die komme ich nicht ran.

Vielmehr gehts mir inzwischen auch grundsätzlich um die Uneinigkeit der 
Quellen. Wieso ist dass den so? Schreiben die alle beeinander ab?
Manche Autoren schreiben eben genau das Verhalten des CSMA/CA dem 
CSMA/CR zu und umgedreht. Das verwirrt mich alles ungemein. Seuftz

Aber danke schon mal.

Simone

von Volle (Gast)


Lesenswert?

Simone Ladwig schrieb:
> Weiterhin meine ich, dass es in der ISO 11898-1 drin
> stehen müsste,

das steht:

4.10
content-based arbitration
CSMA arbitration procedure resolving bus-contention when multiple nodes 
simultaneously access the bus


6.3 Bus access method
If two or more nodes start to transmit DFs or RFs at the same time, the 
bus access conflict is resolved
by content-based arbitration using the identifier. The mechanism of 
arbitration ensures that neither
information nor time is lost. The transmitter with the DF or RF of the 
highest priority gains the bus
access. A DF with the same ID as an RF wins bus arbitration


4.10 ist die einzige stelle in der CSMA genannt wird

von Simone Ladwig (Gast)


Lesenswert?

Hallo,

Volle schrieb:
> Simone Ladwig schrieb:
>> Weiterhin meine ich, dass es in der ISO 11898-1 drin
>> stehen müsste,
>
> das steht:
>
> 4.10
> content-based arbitration
> CSMA arbitration procedure resolving bus-contention when multiple nodes
> simultaneously access the bus
>
> 6.3 Bus access method
> If two or more nodes start to transmit DFs or RFs at the same time, the
> bus access conflict is resolved
> by content-based arbitration using the identifier. The mechanism of
> arbitration ensures that neither
> information nor time is lost. The transmitter with the DF or RF of the
> highest priority gains the bus
> access. A DF with the same ID as an RF wins bus arbitration
>
> 4.10 ist die einzige stelle in der CSMA genannt wird

Ok, also danke dafür. Die Norm schweigt sich dann aber auch aus, unter 
welchem Namen das gehandhabt wird. Liest sich aber auch wie CSMA/CR, was 
es ja mehrheitlich sein sollte ;-)

Tschüs, Simone.

von Gerd E. (robberknight)


Lesenswert?

Ich glaube Du beißt Dich zu sehr an den Begriffen CA, CD, CR fest. Die 
beschreiben die Grundprinzipien.

Moderne Busse (oder Medien allgemein) verwenden oft nicht mehr die 
akademischen Reinformen davon, sondern optimieren ihre Strategie durch 
eine den konkreten Aufgaben angepasste Mischung aus diesen Reinformen.

CAN ist genau so ein Fall. Daher tut man sich schwer das in genau eine 
Schublade zu stecken.

von Wolfgang (Gast)


Lesenswert?

Simone Ladwig schrieb:
> Ich habe folgendes Problem. Ich brauche wissenschaftliche Quellen zum
> Thema CAN und dessen Arbitrierung.

Was hat CAN mit Wissenschaft zu tun. CAN ist eine Ingenieursentwicklung.

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.