PCIe PCS sublayer

  1. Byte striping: 把每個byte依次分發到不同的lane,避免不同lane傳輸數據長度不同
  2. scrambler:PRBS加擾,消除重複的pattern,因爲重複的pattern在頻譜上能量集中,會產生很大的EMI噪聲;TLP/DLLP中的D character被scramble,而OS則不被scramble
  3. character:8bit uncoded byte;symbol:10bit encoded character;8b10b的作用是產生足夠多的10/01變化邊沿,每10個bit中不超過5個連續的0或1;接收端的decoder同時可以檢測是否有symbol error;DC balancing;embedded clock;Encoding of special Control Characters;Error detection
  4. TX buffer根據data link layer送來packet的“Control”碼來給packet加Start/End frame;TLP開頭的K-character是STP,DLLP開頭是SDP,good TLP/DLLP的結尾是END,bad TLP是EDB;Logical Idle sequence之後的packet的STP/SDP必須分配給lane0,如果是連續的back-to-back transmission of packet,STP/SDP必須分給0/4/8/16/32
  5. Ordered-Sets:多個重複的4 character sequences,開頭是COM;Link training階段,發TS1/TS2;TX週期性地發送SKIP Oerderd-Sets用於補償TX/RX時鐘頻差;TX進EIDLE狀態要發electrical idle OS;從L0s到L0,要發FTS。OS以K character開頭,中間可能包含D character;Logical Idle Sequence在沒有packet時發送,保證RX的bit/symbol lock
  6. bit lock:指CDR鎖定,此時只是鎖到bit,但不知道哪個是bit0
  7. symbol lock:通過Oerdered-Sets中的COM,找到symbol0,此過程只在link training,進recovery,和出L0s時發FTS階段完成
  8. Elastic Buffer用於補償SSC頻差,TX每1180~1538個cycle要發一次SKIP OS(包括一個COM,3個SKIP)
  9. lane-to-lane deskew:TS1/TS2/FTS階段,左右lane都找COM,然後同時打出去

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章