Hvad er den begrænsende faktor for, at en CAN-bus overstiger 1 Mbps båndbredde?

Hvorfor kan “t CAN-baudrate stige ud over 1 Mbps

Kommentarer

  • Afhænger af anvendte standarder og drivere. Der er hurtigere versioner, men der er andre forskelle,
  • Mit spørgsmål er, hvorfor kan vi ' t opnår højere hastigheder som op til 100 Mbps ved hjælp af CAN?
  • Tænding og RF-immunitet og forsinkelse af strid på bussen
  • Kontroller: Hvad er den maksimale bithastighed, der understøttes i Can Bus
  • CAN-bussen har ingen åben synkronisering, bortset fra at detektere kollisioner.

Svar

Fra Fysiske lagkrav til controller-netværk

CAN-opsigelse

CAN er en open collector-teknologi – protokollen fungerer ellers ikke. Dette betyder, at den recessive tilstand for en CAN-modtager ikke er aktiv vely driven. Termineringsmodstandene sammen med transceiver-indgangskapacitans og kabelkapacitans skaber en RC-tidskonstant udladning, når en aktivt drevet dominerende bit på bussen overgår til en ikke-drevet recessiv bit. For signalhastigheder større end CAN “s 1 Mbps kræves en teknologi, der aktivt driver bussen i begge tilstande, såsom RS-485, for at lette de busovergange, der kræves til højhastigheds-signalhastigheder.

I sidste ende er svaret på spørgsmålet, hvordan CAN-protokollen implementeres på et fysisk niveau. Skift denne protokol, og en højere datahastighed kan bruges.

Fra Forståelse af Microchips CAN-modulbittiming :

… CAN-protokollen implementerer en ikke- destruktiv bitvis arbitrationsskema, der tillader flere noder at arbitrage til kontrol af bussen. Derfor er det nødvendigt for alle noder at opdage / prøve bitene inden for den samme bittid. Forholdet mellem udbredelsesforsinkelse og oscillatortolerance påvirker både CAN-data hastighed og buslængde.

Indtast billedbeskrivelse her

To mestre i hver ende af CAN-bussen skal være i stand til at kommunikere og mægle, hvilken der har bussen, mens hver er på bussen på samme tid.

Hvis buslængde er 30 m, den tid det tager at formidle signalet over bussen er: $$ t_ {BUS} = 30 \ m @ 5.5 \ ns / m = 165 \ ns $ $

Under forudsætning af, at input-komparatorforsinkelsen er \ $ t_ {CMP} \ $ = 40 ns, og outputdriverforsinkelsen er \ $ t_ {DRV} \ $ = 60   ns for alle enheder.

Returen tid til en smule på den fysiske bus vil være:

$$ t_ {PROP} = 2 (t_ {BUS} + t_ {CMP} + t_ {DRV }) = 2 (165 \ ns + 40 \ ns + 60 \ ns) = 530 \ ns $$ $$ TQ = 530 \ ns / 6 = 88.33 \ ns $$ $$ t_ {BIT} = 10 \ gange TQ = 883.3 \ ns $$ $$ f = 1 / t_ {BIT} = 1 / 883.3 \ ns = 1.13 \ MHz $$

Maks. imum-hastighed styres af buslængde, linjekapacitans, tilsluttede noder og de drivere, der er valgt af protokollen. I princippet ved 30   m kunne CAN (ISO 11898) gøre 1,13   Mbps, hvis alt var perfekt.

Jo længere bussen er, jo langsommere er datahastigheden. Men en kortere bus ville betyde en højere sats. CAN-bithastighed vs. buslængde:

CAN BIT RATE VS. BUSLÆNGDE

Begge refererede dokumenter går nærmere ind på dette.


CAN (ISO 11898) kan overføre op til 8 byte ved 1 Mbps med en protokol baseret på 80 “s. Med nutidens køretøjer er der behov for at overføre flere data (64 bytepakker), men ved 1 Mbps vil 64 byte tage op til stort af et tidsrum, muligvis forsinket vitale data.

CAN FD (Flexible Data-Rate) er en udvidelse af den originale CAN-busprotokol (ISO 11898-1). Den er beregnet til at køre på eksisterende CAN-busser og til sidst erstatte CAN.

Protokollen starter ved CAN 1 Mbps (500 kbps osv.) Med den mulige voldgiftsproces mellem flere CAN- og CAN FD-mestre. , men når CAN FD-masteren opnår bussen, accelereres dataoverførselshastigheden til 5 Mbps til CAN FD-slaver. Med denne hastighed kan 64 byte overføres på kortere tid end en 8 byte CAN 1 Mbps-pakke. Dette betyder, at der ikke er nogen timingkonflikt med eksisterende CAN-overførsler. Når CAN FD-masteren opgiver bussen, kan enhver CAN- eller CAN FD-master få bus.

Fra KAN FD FORKLARES – EN ENKEL INTRO (2019) :

CAN FD-protokol

Det sande svar afhænger af voldgiftsprocessen på 1 Mbps for en 40 m CAN-bus, men en gang bussen opnås, kan båndbredden accelereres afhængigt af buslængde, linjekapacitans, antallet af tilsluttede noder og driverne. CAN FD-båndbredden er 3-8 gange den klassiske CAN-båndbredde.

Svar

Det kan. Mød CAN-FD .

Hvorfor var der brug for en ny protokol? CAN er en multi-master bus med voldgift og fejlrapportering. Disse funktioner begrænser datahastigheden baseret på kabellængden, da det tager en vis tid for signalet at foretage en rundtur mellem de to længste knudepunkter. Dette, sammen med bagudkompatibilitetskrav, førte til CAN-FD.

Classic CAN ved 1 Mbps er begrænset til en 40 meter buslængde. (I praksis tror jeg, det er lavere på grund af afvigende kapacitans.) Ved 100 Mbps ville du være heldig at have endda en halv meter brugbar buslængde, hvilket ikke er nok til bilindustrien og industrien.

Svar

Det skyldes, at CAN 2.0B-standarden ikke specificerede noget højere for at reducere hardwareomkostningerne og stadig opfylder de forskellige krav i standarden (som afstand og støjimmunitet). Det er ikke en teknisk barriere.

Standarden blev skrevet på den måde sandsynligvis, da de anså den ekstra hastighed for unødvendig til den påtænkte anvendelse og specificerede en højere hastighed unødvendigt ville øge omkostningerne ved al hardware, der understøtter standarden, når kapaciteten ville blive underudnyttet.

Hvis standarden er skrevet på den måde, er det få IC-producenter, der gider at forsøge at overskride den, da der ikke er noget punkt. “er ikke rigtig en teknisk barriere.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret. Krævede felter er markeret med *