PRIJENOS PORUKA

Postoje dva različita formata okvira koji se razlikuju u duljini IDENTIFIER polja. Prvi su standardni okviri (Standard Frames), kojima je identifier polje duljine 11 bita i prošireni okviri(Extended Frames) kojima je dotično polje duljine 29 bita.

Prijenos poruka događa se i kontrolira sa četiri vrste okvira:

-DATA FRAME(podatkovni okvir) koji prenosi podatke od pošiljatelja prema primateljima.

-REMOTE FRAME koji je poslan od jedinice na sabirnici kao zahtjev za slanje podatkovnog okvira istog identifikacijskog polja.

-ERROR FRAME(okvir pogreške) koji emitira jedinica koja je zamijetila grešku na sabirnici.

-OVERLOAD FRAME koji osigurava dodatno kašnjenje između dva uzastopna data ili remote frame-a.

Data frame i remote frame mogu biti u standardnom ili proširenom formatu. Odvojeni su od prethodnih okvira sa međuokvirnim razmakom (INTERFRAME SPACE).

Jedinica koja se nalazi na sabirnici mogu izvršavati dvije moguće uloge. Ukoliko je dotična jedinica uzročnik nastanka poruke naziva se pošiljateljem poruke (TRANSMITTER). Jedinica ostaje pošiljatelj dok sabirnica ne postane neaktivna ili dok ne izgubi arbitražu nad sabirnicom. Jedinica se naziva primateljem poruke (RECEIVER) ukoliko nije pošiljatelj poruke i ukoliko sabirnica nije neaktivna.

CAN protokol omogućava filtriranje poruka zasnovano na njihovom identifikatoru. Za to se koriste programbilni registri maske u koje se mogu upisati pojedini bitovi identifikatora ili čak cijeli identifikator.

Trenutak kada se pojedina poruka smatra valjanom razlikuje se od pošiljatelja do primatelja poruke. Poruka je valjana za pošiljatelja ako ne dođe do pogreške do kraja okvira (End Of Frame). Ako poruka nije valjana biti će automatski ponovo poslana čim sabirnica postane ponovo neaktivna. Za primatelja je poruka valjana ukoliko nema greške do posljednjeg bita End Of Frame, njega ne računajući.

DATA FRAME (PODATKOVNI OKVIR)

Podatkovni okvir se sastoji od sedam polja različite duljine: START OF FRAME (početak okvira), ARBITRATION FIELD (polje za arbitražu), CONTROL FIELD (kontrolno polje), DATA FIELD (podatkovno polje), CRC FIELD (polje za provjeru ispravnosti prijenosa), ACK FIELD (polje za potvrdu) i END OF FRAME (kraj okvira). Podatkovno polje može biti duljine nula.

START OF FRAME (SOF) označuje početak podatkovnog okvira kao i remote frame-a. Sastoji sa od jednog bita. Stanica smije započeti prijenos tek kada je sabirnica neaktivna. Sve se stanice moraju sinkronizirati na prednji brid početka okvira stanice koja je prva započela prijenos.

ARBITRATION FIELD (polje za arbitražu) razlikuje se od standardnog do proširenog formata okvira. U standardnom formatu sastoji se od 11-bitnog identifikatora i RTR bita. Bitovi identifikatora su označeni sa ID-28 do ID-18. U proširenom formatu polje za arbitražu se sastoji od 29-bitnog identifikatora, SRR bita, IDE bita te RTR bita. Bitovi identifikatora označeni su sa ID-28 do ID-0. Najznačajniji bit identifikatora je bit ID-28.

RTR BIT (Remote Transmission Request BIT) u podatkovnom okviru mora biti ‘dominantan’ dok u remote frame-u mora biti ‘recesivan’.SRR BIT (Substitute Remote Request) koristi se samo u proširenim okvirima kao zamjena RTR bita u standardnom okviru. IDE BIT (Identifier Extension Bit) se u standardnom formatu prenosi kao dominantan, dok se u proširenom formatu prenosi kao recesivan.

CONTROL FIELD (kontrolno polje) sastoji se od šest bitova. Dva prva bita nazivaju se rezervirani bitovi i oni moraju biti poslani kao dominantni (iako ih primatelj prihvaća i u drugim kombinacijama).

Posljednja četiri bita (Data Length Code) govore o duljini podataka koji se prenose. Sve njihove moguće kombinacije ovisno o duljini prenošenih podataka dane su u slijedećoj tablici. Slovo ‘d’ predstavlja dominantan, a slovo ‘r’ recesivan bit.

 

 

Možemo iz tablice vidjeti da se dopuštena duljina podataka koji se prenose jednim podatkovnim okvirom kreće od 0 do 8 byte-ova. Podaci se upisuju u podatkovno polje (DATA FIELD).

Slijedi CRC POLJE u kojim se posebnim algoritmom generiraju bitovi koji služe za provjeru ispravnosti prenesenog okvira. Posljednja dva polja su ACK POLJE i END OF FRAME (kraj okvira). Sve stanice koje ispravno prime poruku javljaju to mijenjanjem prvoga bita u ACK polju iz recesivnog u dominantni.

Dijelovi okvira SOF, ARBITRATION FIELD, CONTROL FIELD, DATA FIELD i CRC sekvenca su kodirani 'bit stuffing' metodom, tj. kada god pošiljatelj detektira pet identičnih bitova u nizu automatski u nastavku niza dodaje suprotan bit.

 

REMOTE FRAME

Stanica koja se ponaša kao primatelj za određene podatke može inicirati njihov prijenos iz njihovog izvornog čvora šaljući Remote Frame. Za razliku od podatkovnog okvira, Remote Frame nema podatkovnog polja i RTR bit mu je recesivan. Vrijednost koja se upisuje u zadnja četiri bita kontrolnog polja predstavlja broj byte-ova koji se očekuje u odgovarajućem podatkovnom okviru. Da li se radi o Data Frame-u ili o Remote Frame-u ovisi o RTR bitu koji može biti dominantan ili recesivan.

ERROR FRAME (OKVIR POGREŠKE)

Error Frame ili okvir pogreške sastoji se od dva različita polja. U prvom polju imamo superpoziciju zastavica pogreški od različitih stanica. Slijedeće polje služi kao ograničavač. Postoje dvije vrste zastavica pogreške: aktivna zastavica pogreške koja se sastoji od šest dominantnih bitova u nizu, i pasivna zastavica pogreške koja se sastoji od šest recesivnih bitova u nizu osim ako nisu prepisani sa dominantnim bitovima drugih čvorova.

OVERLOAD FRAME (OKVIR ZAGUŠENJA)

Okvir zagušenja sastoji se od zastavice zagušenja (OVERLOAD FLAG) i ograničivača okvira zagušenja (OVERLOAD DELIMITER).

RAZMAK MEĐU OKVIRIMA (INTERFRAME SPACE)

Razmak među okvirima služi za odvajanje podatkovnih i remote okvira od okvira svih vrsta. Sastoji se od dijelova koji se zovu INTERMISSION, BUS IDLE (sabirnica neaktivna) i eventualno dijela SUSPEND TRANSMISSION (prekini slanje).

 

 

Za vrijeme INTERMISSION dijela niti jednoj stanici nije dopušteno da započne slanje podatkovnog ili remote okvira. Jedina dopuštena radnja je signaliziranje zagušenja. Dio SABIRNICA NEAKTIVNA može biti proizvoljne duljine. Sabirnica se smatra slobodnom i svaka stanica koja ima nešto za slati ima pravo pristupa sabirnici.