/SerDes

Verilog RTL Design

Primary LanguageVerilog

Serializer-Deserializer

A simple implementation of a SerDes module, typically used in high-speed communication protocols like PCIe, DisplayPort, Gigabit Ethernet, USB etc.

SerDes Block Diagram

  • RTL Design has basic modules like Latches, Encoder, Decoder, Shift Registers -> Parallel-In-Serial-Out, Serial-In-Parallel-Out

  • Serializer latches onto 8-bit Parallel data input, encodes to 10-bit, and converts to Serial bits

  • Deserializer converts incoming Serial bits to Parallel data using 10-bit latches, decodes and outputs back as 8-bit

  • Followed specifications to implement 3b/4b & 5b/6b encoding schemes and maintain a DC-balance data stream

8b_10b Encoding