Serializer/Deserializer ( SerDes ) je dvojice funkčních bloků běžně používaných ve vysokorychlostní komunikaci pro převod dat mezi sériovým a paralelním rozhraním v obou směrech. Termín "SerDes" se týká obecných rozhraní používaných v různých technologiích a aplikacích. Primárním využitím SerDes je poskytovat vysokorychlostní přenos dat po jedné lince nebo diferenciálním páru , aby se snížil počet I/O pinů na čipu a propojení mezi komponenty.
Hlavní struktura SerDes je rozdělena do dvou funkčních bloků: paralelně-sériový konvertorový blok (PISO, Parallel In Serial Out ) a sériovo-paralelní konvertorový blok (SIPO, Serial In Parallel Out ). Existují čtyři různé architektury SerDes:
Blok paralelně-sériového převodníku PISO má typicky vstup pro paralelní hodiny, sadu vstupních datových linek a vstup pro uchování dat. Může použít interní nebo externí smyčku fázového závěsu (PLL) k násobení příchozího paralelního hodinového signálu na hodinovou frekvenci sériového výstupu. Nejjednodušší forma PISO má pouze posuvný registr , který bere paralelní data s paralelním taktováním a posouvá je vyšší rychlostí sériového hodin. Implementace mohou také používat dvojitou vyrovnávací paměť registru, aby se předešlo metastabilitě při přenosu dat mezi částmi s různými taktovacími frekvencemi.
SIPO, jednotka sériově-paralelního převodníku, mají typicky výstup vstupních hodin, sadu výstupních datových linek a výstupní datové západky. Přijímané hodiny lze z dat obnovit pomocí metody obnovy hodin. SerDes, které nevysílají hodinové signály, však používají referenční hodiny k uzamčení PLL na požadovanou frekvenci TX, aby se zabránilo nízkofrekvenčním harmonickým přítomným v datovém toku . Blok SIPO snižuje příchozí takt pro paralelní výstup. Implementace mají obvykle dva registry spojené jako dvojitý buffer. Jeden registr se používá k taktování sériového toku a druhý se používá k ukládání dat na pomalejší paralelní straně.
Některé typy SerDes obsahují blok kódování/dekódování. Účelem takového kódování a dekódování je obvykle změna statistických vlastností vysílaného signálu pro usnadnění obnovy hodin v přijímači a udržení synchronizace rámců. Kódování může také poskytnout DC rovnováhu.
Paralelně taktované SerDes se obvykle používají k serializaci paralelní vstupní sběrnice spolu s adresovými a řídicími signály. Serializovaný tok je odeslán spolu s hodinovým signálem. Jitter hodin řádově 5-10 ps rms.
SerDes s interním taktováním serializuje data a taktování do jednoho proudu. Nejprve je přenesen jeden hodinový cyklus a poté datový bitový tok; to vytváří periodickou vzestupnou hranu na začátku datového bitového toku. Protože jsou hodiny zabudovány a lze je extrahovat z bitového toku, tolerance jitteru serializátoru (vysílače) je 80-120 ps rms, zatímco disparita referenčních hodin v deserializátoru může být ±50 000 ppm (tj. 5 %).
SerDes typ 8b/10b přeloží každý bajt dat do 10bitového kódu před serializací dat. Deserializátor používá referenční frekvenci k řízení obnovených hodin z bitového toku. Vzhledem k tomu, že informace o hodinách jsou zobecněny do datového bitového toku a nejsou do něj explicitně vloženy, je rms jitter serializátoru (vysílače) v rozsahu 5-10 ps a disparita referenční frekvence v deserializátoru je přibližně ±100 ppm .
Standardní schéma kódování používané v SerDes je kódování 8b/10b . To udržuje stejnosměrnou rovnováhu, zajišťuje rámování a zaručuje časté přechody. Zaručené přechody umožňují přijímači extrahovat vložené hodiny. Řídicí kódy umožňují rámování, obvykle na začátku paketu. Typické paralelní rozhraní SerDes 8b/10b má jednu taktovací linku, jednu řídící linku a 8 datových linek.
Takový serializátor je spolu s kodérem 8b/10b a blokem deserializer-plus-decoder definován ve specifikaci Gigabit Ethernet .
Další standardní schéma kódování používané se SerDes je kódování 64b/66b. Tento obvod poskytuje statistické stejnosměrné vyvážení a scramblerové přechody. Rámování je dodáváno prostřednictvím deterministických přechodů v přidaných bitech rámování.
Takové bloky kodéru serializer-plus-64b/66b a deserializer-plus-decoder jsou definovány ve specifikaci 10 Gigabit Ethernet . Vysílací část obsahuje kodér 64b/66b, kodér a převodovku, která převádí signál 66b na 16bitové rozhraní. Další serializátor pak toto 16bitové rozhraní převede na sériový signál.
Bit-interleaved SerDes multiplexuje několik pomalých sériových datových toků do rychlejších sériových toků a přijímač demultiplexuje rychlejší bitové toky zpět do pomalejších toků.
Optical Internetworking Forum ( OIF ) zveřejnilo dohody o interoperabilitě ( IA ) pro Common Electrical I/O , v rámci kterých bylo definováno 5 generací elektrických rozhraní SerDes pracujících při 3,125, 6, 10, 28 a 56 Gbps. FPMO také oznámila nové projekty pracující na 112 Gbps [1] . Kromě toho byly zveřejněny popisy tří předchozích generací elektrických rozhraní. Tyto konvence byly buď přizpůsobeny nebo přijaty v různé míře, nebo ovlivnily elektrická rozhraní definovaná standardy IEEE 802.3 , InfiniBand , Serial RapidIO , Fibre Channel a mnoha dalšími standardy.