Vhodno-izhodne naprave 5 Kodiranje digitalnih podatkov VIN - 5 2018, Igor Škraba, FRI
Razvoj načinov kodiranja - vsebina 5 Kodiranje digitalnih podatkov 5.1 Model shranjevanja in prenosa podatkov 5.2 RZ kodiranje 5.3 NRZ kodiranje 5.4 PE kodiranje 5.5 RLL kodiranje 5.6 8b/10b kodiranje VIN - 5 2 2018, Igor Škraba, FRI
5.1 Model shranjevanja in prenosa podatkov električni električni oddajni/pisalni sprejemni/bralni 10110... signal signal 10110... Izvor podatkov in kodiranje Oddajnik Sprejemnik Ponor podatkov in Šum dekodiranje Zapisovalni/prenosni kanal - magnetni (MT, HD) - optični (CD, DVD, BD) - polprevodniški (SSD) - komunikacijski (linija) VIN - 5 3 2018, Igor Škraba, FRI
Model shranjevanja in prenosa podatkov Izvorni podatki Izhodni podatki Stiskanje podatkov Razširjanje podatkov ECC in CRC kodiranje Detekcija in korekcija napak RLL kodiranje RLL dekodiranje Generator signala Pisalni izenačevalnik Zapisovalni/prenosni kanal - magnetni (MT, HD) - optični (CD, DVD, BD) - polprevodniški (SSD) - komunikacijski (linija) Detektor signala Bralni izenačevalnik VIN - 5 4 2018, Igor Škraba, FRI
Kodiranje Enostavna predstavitev enic z visokim in ničel z nizkim stanjem za prenos po komunikacijskih kanalih in shranjevanje na magnetne in optične medije ne zadošča. Pasovna širina kanala - izkoriščenost Sinhronizacija - restavriranje urinega signala (clock recovery) Enosmerna komponenta v signalu VIN - 5 5 2018, Igor Škraba, FRI
Kodiranje Zakaj je potreben urin signal? Pri oddaji Pri sprejemu VIN - 5 6 2018, Igor Škraba, FRI
Kodiranje Razvoj načinov kodiranja RZ (Return to Zero) NRZ (Non Return to Zero) PE (Phase Encoded) RLL (Run Length Limited) VIN - 5 7 2018, Igor Škraba, FRI
5.2 RZ kodiranje (Return to Zero) Najpreprostejši način kodiranja Logična 1: impulz Logična 0: odsotnost impulza Slabosti: Zapis logične 1 zahteva dve spremembi nivoja, kar pomeni slabo izkoriščenost razpoložljive kapacitete kanala. Pri zaporedju logičnih 0 ni nobene spremembe nivoja, zato ni nobene sinhronizacijske informacije. Prednosti: Nobenih VIN - 5 8 2018, Igor Škraba, FRI
RZ kodiranje Primer RZ kodiranja ura podatki 0 1 0 1 1 0 0 0 1 0 podatkovni signal namagnetenje v mag. mediju t B bitna celica, bitno okno, signalni element (T UI ) 10-bitni niz, 4 biti na 1 8 sprememb nivoja v signalu, 8 sprememb smeri namagnetenja pri magnetnem zapisu VIN - 5 9 2018, Igor Škraba, FRI
5.3 NRZ kodiranje (Non Return to Zero) Več vrst NRZ kodiranj, največkrat se uporablja NRZI kodiranje (Non Return to Zero Invert): Logična 1: sprememba nivoja signala Logična 0: brez spremembe nivoja signala Druga možnost (kodiranje pri USB 2.0 in HDLC 1) ): Logična 1: brez spremembe nivoja Logična 0: sprememba nivoja 1) HDLC High-Level Data Link Control = komunikacijski protokol za sinhronski serijski prenos VIN - 5 10 2018, Igor Škraba, FRI
NRZI kodiranje Prednosti: Med vsemi načini kodiranja je z NRZI mogoče doseči najboljšo izkoriščenost kanala Preprosta realizacija Slabosti: Pri zaporedju ničel (ali enic) ni spremembe nivoja signala Brez sinhronizacijske informacije pri dolgem zaporedju ničel (enic) Uporaba: USB 2.0 in HDLC (pri predolgem zaporedju enic se vstavlja ničla) Skupaj z RLL kodiranjem VIN - 5 11 2018, Igor Škraba, FRI
NRZI kodiranje Primer NRZI kodiranja ura podatki 0 1 0 1 1 0 0 0 1 0 podatkovni signal namagnetenje v mediju t B 10-bitni niz, 4 biti na 1 4 spremembe nivoja v signalu, 4 spremembe smeri namagnetenja pri magnetnem zapisu VIN - 5 12 2018, Igor Škraba, FRI
NRZI kodiranje Primer NRZI kodiranja ura podatki 0 1 0 1 1 0 0 0 1 0 podatkovni signal t B VIN - 5 13 2018, Igor Škraba, FRI
5.4 PE kodiranje (Phase Encoded) Tudi v to skupino sodi več vrst kodiranj. Njihova skupna lastnost je, da poleg podatkovne informacije vsebujejo tudi sinhronizacijsko informacijo (uro). V vsaki bitni celici je tako vsaj ena sprememba nivoja signala. VIN - 5 14 2018, Igor Škraba, FRI
PE kodiranje Bi-Phase L (Manchester kodiranje): Logična 1: pozitivna fronta signala Logična 0: negativna fronta signala Prednosti: Odpravlja obe pomanjkljivosti NRZI kodiranja Slabosti: Slaba izkoriščenost kanala (dve spremembi nivoja v bitni celici) Uporaba: Ethernet 10BASE-T (10Mb/s IEEE 802.3) VIN - 5 15 2018, Igor Škraba, FRI
PE kodiranje Primer PE kodiranja ura podatki 0 1 0 1 1 0 0 0 1 0 podatkovni signal namagnetenje v mediju t B 10-bitni niz, 4 biti na 1 13 sprememb nivoja v signalu, 13 sprememb smeri namagnetenja pri magnetnem zapisu VIN - 5 16 2018, Igor Škraba, FRI
5.5 RLL kodiranje (Run Length Limited) Podatkovni biti (uporabniški biti) se preoblikujejo (preslikajo) tako, da ne vsebujejo predolgega zaporedja ničel. Na tako dobljenem zaporedju bitov se nato uporabi NRZI kodiranje. Dejansko je to NRZI kodiranje, kjer so vzorci bitov vnaprej določeni, tako da je določeno najdaljše in najkrajše število zaporednih ničel. Različnih RLL kod je veliko, RLL kodiranje je običajno definirano s štirimi parametri: m, n, d, k npr. m/n (d,k) RLL. VIN - 5 17 2018, Igor Škraba, FRI
RLL kodiranje RLL kodiranje preslika m uporabniških bitov v n kodiranih bitov, kjer je običajno n > m V kodiranem zaporedju je predpisano najmanjše dovoljeno število zaporednih ničel d 0 ( gostota zapisa) in največje dovoljeno število zaporednih ničel k 0 ( sinhronizacijska informacija) Uporabljajo se različne RLL kode 1/2 (2,7) RLL 2/3 (1,7) RLL 8/9 (0,4) RLL 8/14 (2,10) RLL (CD, DVD) VIN - 5 18 2018, Igor Škraba, FRI
RLL kodiranje Prednosti: Dobra izkoriščenost kanala (NRZI) večja gostota zapisa. Odpravlja osnovno slabost NRZI kodiranja pomanjkanje sinhronizacijske informacije pri predolgem zaporedju ničel. Slabosti: Pri preslikavi se podatkovnim bitom dodajo dodatni (redundantni) biti. Uporaba: Magnetni diski (HD), magnetni trakovi (MT) Optični diski (CD, DVD, BD) Hitre serijske komunikacije VIN - 5 19 2018, Igor Škraba, FRI
RLL kodiranje Primer: Kodiranje 2/3 (1,7) RLL preslika 2 bita v 3 bite tako, da je v kodiranih bitih vedno najmanj 1 in največ 7 zaporednih ničel. Preslikovalna tabela za kodiranje 2/3 (1,7) RLL: uporabniški biti 00 01 10 11 0000 0001 1000 1001 kodirani biti 101 100 001 010 101000 100000 001000 010000 VIN - 5 20 2018, Igor Škraba, FRI
RLL kodiranje Primer 2/3 (1,7) RLL kodiranja ura podatki 0 1 0 1 1 0 0 0 1 0 kodirani podatki 1 0 0 1 0 0 0 0 1 0 0 0 0 0 1 ura podatkovni signal t B VIN - 5 21 2018, Igor Škraba, FRI
RLL kodiranje Primerjava NRZI in 2/3 (1,7) RLL kodiranja -1 ura podatki 0 1 0 1 1 0 0 0 1 0 kodirani podatki 1 0 0 1 0 0 0 0 1 0 0 0 0 0 1 ura podatkovni signal RLL podatkovni signal NRZI t B t B VIN - 5 22 2018, Igor Škraba, FRI
RLL kodiranje Primerjava NRZI in 2/3 (1,7) RLL kodiranja - 2 ura podatki 1 0 0 0 0 0 0 0 0 1 kodirani podatki 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0 ura podatkovni signal RLL podatkovni signal NRZI VIN - 5 23 2018, Igor Škraba, FRI
RLL kodiranje Tudi GCR (Group Code Recording), FM (Frequency Modulation) in MFM (Modified Frequency Modulation) kodiranja, ki so prvi poskusi izboljšanja NRZI kodiranja, lahko uvrstimo v skupino RLL kodiranj. GCR = 4/5 (0,2) RLL (9-sledni magnetni trak) FM kodiranje = 1/2 (0,1) RLL (5,25 diskete) MFM kodiranje = 3/4 (1,3) RLL (3,5 diskete) VIN - 5 24 2018, Igor Škraba, FRI
RLL kodiranje Pri zapisu na magnetne diske se uporabljajo izključno različne variante RLL kodiranja kot npr.: 8/9 (0,4) RLL 16/17 (0,6) RLL Pri zapisu na CD in DVD se uporabljata EFM oziroma EFMP kodiranji: EFM (Eight to Fourteen Modulation) je RLL kodiranje 8/14(2,10) RLL (dejansko 8/17) EFMP (Eight to Fourteen Modulation Plus) je prav tako RLL kodiranje 8/16(2,10) RLL, ki je za 6% bolj učinkovito kot EFM VIN - 5 25 2018, Igor Škraba, FRI
5.6 8b/10b kodiranje Kodiranje 8b/10b lahko prav tako uvrstimo v skupino RLL kodiranj. 8 bitov (256 možnih kombinacij) se preslika v 10 bitov (1024 kombinacij možnost dodatnih kontrolnih znakov). Kodiranje 8b/10b prinese 25% dodatnih redundantnih bitov Hitrost prenosa je npr. na enojni povezavi PCIe 2.0 x1 v eno smer pri frekvenci ure 2,5GHz enaka 2,5Gb/s Zaradi kodiranja 8b/10b je efektivna hitrost 2Gb/s = 250MB/s 2,5Gb/s * 8/10 = 2Gb/s = 250MB/s VIN - 5 26 2018, Igor Škraba, FRI
8b/10b kodiranje Cilja preslikave 8 bitov v 10 bitov sta: Dovolj prehodov stanj za sinhronizacijo oziroma restavracijo urinega signala pri sprejemu (clock and data recovery) V nizu kodiranih bitov ne sme biti več kot 5 zaporednih ničel (ali enic) Enosmerna uravnoteženost signala, ki omogoča serijski prenos z veliko hitrostjo na večje razdalje Razlika v številu enic in ničel v nizu najmanj 20 bitov ne sme biti večja od 2 VIN - 5 27 2018, Igor Škraba, FRI
8b/10b kodiranje Zaradi 25% redundance pri kodiranju 8b/10b se pri novejših povezavah uporablja kodiranje 128b/130b. Redundanca je pri tem kodiranju samo 1,56% (dva dodatna bita pri 128 podatkovnih bitih) VIN - 5 28 2018, Igor Škraba, FRI
8b/10b kodiranje Uporaba: PCI Express 2.0 (PCI Express 3.0 kodiranje 128b/130b) USB 3.0 (USB 3.1 kodiranje 128b/132b) IEEE 1394 (Firewire) Serial ATA Gigabit Ethernet DVI in HDMI... VIN - 5 29 2018, Igor Škraba, FRI