一言以蔽之:SerDes Tx負責把資料傳送出去。
Feed-Forward Equalizer(前向迴授等化器)
在音樂播放器中,我們可以調整Equalizer,就可以把音樂變得更有臨場感,例如上圖左是Rock搖滾風格(減低中頻)、上圖右是Bass低音風格(加強低頻)。
在Transmitter中我們也會提早做equalization,為什麼呢?這是因為Channel的會有損耗,而且對於不同頻段的訊號,損耗還不相同,一般來說,低頻損失小、高頻損失小,因此我們就會對高頻訊號做「事先補償」,這樣經過Cahnnel以後,對方還能看到原汁原味的訊號。
對高頻訊號的事先補償有二種做法,一種是pre-emphasis(預加重)、另一種是de-emphasis(去加重)。老師在講課的時候,重點會講三次,這就是「預加重」;另外一種講課是重點維持一般教法,但非重點則是輕描淡寫地帶過,這就是「去加重」。無論是哪種教學方法,學生都會著重在老師強調的重點,所以這種補償叫做emphasis(強調)。
為什麼重點是講三次而不是二次或是三百次呢?因為二次記不住、三次剛剛好、三百次就覺得煩了,所以emphasis強調的強度要跟Channel損耗互補,補償不足和過度都不好。由於補償量跟Channel損耗剛好抵消,所以叫做等化器,而且是事先做的補償,所以叫前向等化器。
8b/10b編碼
有時候教科書編寫的內容很單調,如果這時候老師還是照本宣科地上課,臺下的學生就睡成一片了。因此,當資料很無趣的時候,Tx也不能盲目地直接把資料送出去,而是要像補習班老師一樣,加油添醋地改編上課內容。
什麼是很單調的資料內容?例如全部都是0或全部都是1,就再單調不過了。為什麼Tx不能傳送全0或全1的資料呢?這是因為當Rx收到全0或全1的資料時,它會找不到資料的邊界而提取不了時鐘。另外,「很長的連續0或1」是低頻訊號、而「一直0/1變化」是高頻訊號,低頻和高頻訊號在Channel的耗損程度並不相同,這會導致不同的資料在傳輸時的耗損不同。
為了避免老師講課的內容單調(避免很長的連續0或1),也要讓內容圖文並茂(0和1的數量要一樣多),因此教科書的內容要經過改編(傳送的內容要經過編碼)。舉例來說,如果這頁整面都是字,我們可以插入一些留白,學生讀起來就會舒服些,但這樣的缺點是本來一頁可以寫10行,因為留白就只能寫8行了。
最著名的編碼就是8b/10b,這編碼利用了10-bit的空間,但有效的資料只有8-bit,雖然傳輸效率只有80%,但可以做到DC Balance(直流平衡、0和1的數量幾乎一樣多)、以及沒有long run(連續的0或1最多只有五個)。早年舊的協定,例如PCIe 1.0、HDMI 1.0、……等都是使用8b/10b;近年新的協定,為了增加傳輸效率,則會改變編碼,例如PCIe 3.0就變成128b/130b。