8B10B

Վիքիպեդիայից՝ ազատ հանրագիտարանից

Հեռահաղորդակցության ոլորտում, 8b/10b իրենից ներկայացնում է գծային կոդավորման եղանակ, որը արտապատկերում է 8-բիթ սիմվոլները 10-բիթ սիմվոլների, հասնելու DC-հավասարակշռության և "bounded disparity" ինչպես նաև ապահովում է բավարար քանակի վիճակի փոփոխություններ (1->0 և 0->1) որը թույլ է տալիս վերականգնել տակտային հաճախականությունը (clock)։ Սա նշանակում է, որ 1-երի և 0-երի տարբերությունը առնվազն 20 բիթ երկարությամբ տողում կազմում է ոչ ավելի քան 2, և որ կան ոչ ավելի քան 5 իրար հաջորթող 1-եր կամ 0-եր։ Սա օգնում է նվազեցնել կանալի թողունակության ստորին սահմանի վրա դրված պահանջը որը անհրաժեշտ է աղդանշանը փոխանցելու համար։

Կոդավորման այս եղանակը նկարագրվել է 1983թ․ Al Widmer և Peter Franaszek կողմից "IBM Journal of Research and Development" հանդեսում։ Արտոնագիրը հրապարակվել է IBM կողմից հաջորդ տարում․

Աշխատանքի սկզբունքը[խմբագրել]

Կոդավորման այս եղանակը առաջարկում է 8-բիթ տվյալը փոխանցել որպես 10-բիթ որը կոչվում է սիմվոլ։ Ստորին (low) 5 բիթերը կոդավորվում է 6-բիթ խմբի (5b/6b) իսկ վերին (high) 3 բիթերը կոդավորվում են 4-բիթ խմբի (3b/4b)։ Այս կոդային խմբերը միավորվելով միասին ձևավորում են 10-բիթ սիմվոլներ։ Այս սիմվոլները հաճախ անվանում են D.x.y որտեղ, x-ի արժեքը տատանվում է 0-31 միջակայքում իսկ y-ի 0-7 միջակայքում։ 8b/10b կոդավորման ստանդարտը սահմանում է նաև 12 հատուկ սիմվոլներ (կամ ղեկավարման սիմվոլներ) որոնք կարող են ուղարկվել տվյալների սիմվոլների տեղում։ Այս սիմվոլները հաճախ օգրտագործվում են ցույց տալու փաթեթի սկիզբը ե վերջը, անգործության (idle), բաց թողնելու կամ նմապանատիպ պայմանները։

Ղեկավարման սիմվոլներ[խմբագրել]

8b/10b կոդավորման դեպքում 10b-ն իրենից ներկայացնում է ղեկավարման սիմվոլներ, որոնք ճիշտ բիթային հաջորդականություններ են (պարունակում են ոչ ավելի քան վեց 1-եր կամ 0-եր ) բայց չունեն իրենց համապատասխան 8b բայթը։ Այդ սիմվոլները օգտագործվում են ցածր մակարդակի ղեկավարման ֆունկցիաների համար։

5b/6b և 3b/4b աղյուսակներից ստացվում են հետևյալ 12 թույլատրելի ղեկավարման սիմվոլները

Ղեկավարման սիմվոլներ
input RD = −1 RD = +1
HGF EDCBA abcdei fghj abcdei fghj
K.28.0 000 11100 001111 0100 110000 1011
K.28.1 † 001 11100 001111 1001 110000 0110
K.28.2  010 11100 001111 0101 110000 1010
K.28.3  011 11100 001111 0011 110000 1100
K.28.4  100 11100 001111 0010 110000 1101
K.28.5 † 101 11100 001111 1010 110000 0101
K.28.6  110 11100 001111 0110 110000 1001
K.28.7 ‡ 111 11100 001111 1000 110000 0111
K.23.7  111 10111 111010 1000 000101 0111
K.27.7  111 11011 110110 1000 001001 0111
K.29.7  111 11101 101110 1000 010001 0111
K.30.7  111 11110 011110 1000 100001 0111

Sեխնոլոգիաներ, որոնք օգտագործում են 8b/10b կոդավորումը[խմբագրել]