0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

驗證PCIe 6.0中的輕量級前向糾錯和強循環(huán)冗余校驗功能

星星科技指導員 ? 來源:synopsys ? 作者:synopsys ? 2023-05-25 16:06 ? 次閱讀

2021 年,PCI-SIG? 發(fā)布了最新版本的 PCI Express? 規(guī)范 PCIe? 6.0。PCIe 6.0 的原始數(shù)據(jù)速率為 64 GT/s,帶寬是 PCIe 5.0 (32GT/s) 的兩倍,可滿足行業(yè)對高速、低延遲互連的需求。它是一種可擴展的互連解決方案,適用于數(shù)據(jù)中心、AI/ML、高性能計算 (HPC) 和汽車等數(shù)據(jù)密集型市場。

在本博客中,我們將討論 PCIe 6.0 中的前向糾錯 (FEC) 機制、為什么需要它,以及 Synopsys 提供哪些驗證解決方案來涵蓋此功能。

什么是 PAM-4?

PCIe 6.0 使用數(shù)據(jù)速率為 4GT/s 的 PAM-64 信令,而不是以較低數(shù)據(jù)速率使用的不歸零 (NRZ) 信令。這意味著發(fā)送和接收的信號現(xiàn)在將在一個單位間隔內具有四個不同的電壓電平(2位)編碼,從而產生三個眼睛。這是因為 64GT/s 的 NRZ 信令會導致 32GHz 的奈奎斯特速率增加,此時信道損耗可能很大;因此,PAM-4 以 64GT/s 的速度使用以減少信道損耗,因為它具有與 16GT/s 數(shù)據(jù)速率相同的奈奎斯特速率 (32GHz)。

然而,這需要權衡,因為眼睛高度和眼睛寬度會減小,這使得接收器容易出錯。預計誤差在車道中以突發(fā)形式發(fā)生,并且預計車道之間也會有一定程度的相關性。因此,與PAM-4信令相關的誤碼率(BER)預計將遠高于較低數(shù)據(jù)速率的10^-12目標。

為什么需要 FEC 以及如何完成?

FEC 用于緩解數(shù)據(jù)流中的高 BER。由于 FEC 在固定代碼大小上工作,因此 FLIT 用于傳輸數(shù)據(jù)流中的 TLP 和 DLP。FEC 的延遲和復雜性隨著要更正的字節(jié)數(shù)呈指數(shù)級增長。為了保持較低的延遲(<2ns)和復雜性,使用了輕量級FEC,它可以糾正單字節(jié)錯誤。這與用于錯誤檢測的強循環(huán)冗余校驗 (CRC) 相結合,以產生高可靠性結果。此外,預編碼可用于最大限度地減少突發(fā)中的錯誤。

FLIT 的大小為 256 字節(jié),其中 236 字節(jié)用于 TLP,6 字節(jié)用于 DLP,8 字節(jié)用于 CRC,6 字節(jié)用于錯誤檢查和糾正 (ECC)。CRC 的 8 個字節(jié)保護 TLP 和 DLP 字節(jié),但不保護 ECC 字節(jié)。6 字節(jié)的 ECC 保護整個 FLIT,包括 CRC 字節(jié)。

FEC 代碼是 3 路交錯的,如下表所示。每種顏色代表一個 ECC 組,其字節(jié)以相同的顏色標記。因此,一個通道中的三個連續(xù)字節(jié)屬于三個不同的 ECC 組。因此,通道中長度為 <=16 的突發(fā)誤差不會影響每組中的多個字節(jié),并且每個 ECC 可以糾正單個字節(jié)錯誤。

poYBAGRvFrOAQVnaAAlcDRl-eNE470.png

表 1:x16 鏈路上的 FLIT 交錯

在接收器上,ECC 解碼器對其相應的代碼組執(zhí)行校正,并根據(jù)需要報告錯誤狀態(tài)。然后進行CRC檢查,以確定是否接受收到的FLIT。如果 CRC 檢查失敗,F(xiàn)LIT 將重放并得到糾正。

如果檢測到無法糾正的錯誤,CRC 檢查將失敗并導致否定確認 (NAK),然后重播。優(yōu)化是可能的,例如,可能無法重放具有僅 NOP TLP 的 FLIT,也可以僅重放錯誤 FLIT。

可糾正和不可糾正的錯誤:

以下是 Synopsys 驗證 IP for PCIe 6.0 成績單的快照,說明了 FLIT 中可糾正和不可糾正的錯誤。

可糾正的錯誤:

在傳輸?shù)腇LIT中注入可糾正的錯誤。

poYBAGRvFrqATJLFAAHmBTof-AI613.png

驗證可糾正和不可糾正的錯誤以確保 FEC、CRC 和重放機制正常工作非常重要。

最終,輕量級 FEC 與強大的 64 位 CRC 相結合,適用于 10^-6 的 FBER,即使具有高通道相關性。每個 FLIT 的重試概率約為 5×10^-6,時間失敗 (FIT) 幾乎為 0。

適用于 PCIe 6.0 的 Synopsys 驗證 IP 旨在解決關閉 SoC 數(shù)據(jù)可靠性方面所需的所有驗證復雜性。 數(shù)據(jù)可靠性是一個非常理想的系統(tǒng)方面,PCIe 6.0 的目標用戶正在尋找在系統(tǒng)級別驗證其 SoC 的解決方案。在 SoC 上運行系統(tǒng)級有效負載需要更快的基于硬件的預硅解決方案?;?Synopsys IP 的 Synopsys 事務處理器可實現(xiàn)快速驗證硬件解決方案,包括用于驗證用例的 Synopsys ZeBu? 仿真系統(tǒng)和 Synopsys HAPS? 原型系統(tǒng)。

Synopsys 協(xié)議驗證解決方案與 Synopsys 驗證系列產品原生集成,包括 Synopsys Verdi? 調試器以及使用 Synopsys VC Execution Manager 進行回歸管理和自動化。

Synopsys 一直是 PCIe 規(guī)范的主要貢獻者之一,并繼續(xù)為 PCIe 6.0 和 Testsuite 提供業(yè)界首個采用 Synopsys 驗證 IP 的驗證解決方案。

此外,適用于 PCIe 6.0 的 Synopsys DesignWare IP 包括控制器和 PHY 解決方案,支持早期開發(fā) PCIe 6.0 片上系統(tǒng) (SoC) 設計。

審核編輯:郭婷

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 解碼器
    +關注

    關注

    9

    文章

    1128

    瀏覽量

    40585
  • crc
    crc
    +關注

    關注

    0

    文章

    198

    瀏覽量

    29397
  • PCIe
    +關注

    關注

    15

    文章

    1174

    瀏覽量

    82246
收藏 人收藏

    評論

    相關推薦

    PSoC 4 循環(huán)冗余校驗 (CRC)

    循環(huán)冗余校驗 (CRC) 組件的默認用途是根據(jù)任意長度的串行比特流計算 CRC。在數(shù)據(jù)時鐘的上升沿上對輸入數(shù)據(jù)進行采樣。在啟動,CRC 值復位為 0,或可用初始值作為種子值。完成比特
    發(fā)表于 07-04 11:30

    循環(huán)冗余校驗碼的單片機及CPLD 實現(xiàn)

    循環(huán)冗余校驗(CRC)是一種可靠性很高的串行數(shù)據(jù)校驗方法。介紹循環(huán)冗余
    發(fā)表于 04-16 14:19 ?16次下載

    數(shù)據(jù)校驗在中藥自動發(fā)藥系統(tǒng)的應用

    在對中藥自動發(fā)藥系統(tǒng)的發(fā)藥流程、數(shù)據(jù)傳輸以及對循環(huán)冗余校驗和利用循環(huán)冗余校驗混合
    發(fā)表于 07-30 09:46 ?21次下載

    基于FPGA的循環(huán)冗余校驗實驗系統(tǒng)

    文章首先分析了循環(huán)冗余校驗碼的功能,在此基礎上提出了基于FPGA的實現(xiàn)方法,詳細闡述了CRC校驗編解碼的實現(xiàn)方法,并提出了基于現(xiàn)有的實驗箱設
    發(fā)表于 03-26 13:52 ?1730次閱讀
    基于FPGA的<b class='flag-5'>循環(huán)</b><b class='flag-5'>冗余</b><b class='flag-5'>校驗</b>實驗系統(tǒng)

    STM32L4循環(huán)冗余校驗模塊(CRC)介紹

    STM32L4循環(huán)冗余校驗模塊(CRC)介紹 有興趣的可以參考下
    發(fā)表于 12-25 10:38 ?27次下載

    循環(huán)冗余校驗奇偶校驗累加和校驗等知識分享

    CRC校驗循環(huán)冗余校驗)是數(shù)據(jù)通訊中最常采用的校驗方式。在嵌入式軟件開發(fā),經常要用到CRC
    的頭像 發(fā)表于 11-08 09:31 ?8668次閱讀
    <b class='flag-5'>循環(huán)</b><b class='flag-5'>冗余</b><b class='flag-5'>校驗</b>奇偶<b class='flag-5'>校驗</b>累加和<b class='flag-5'>校驗</b>等知識分享

    一種改進的高速鏈路糾錯編碼

    在高速鏈路的可靠傳輸,物理層糾錯的研究主要集中在提高編碼的糾錯性能,且編碼冗余位全部用于
    發(fā)表于 11-21 15:41 ?15次下載
    一種改進的高速鏈路<b class='flag-5'>前</b><b class='flag-5'>向</b><b class='flag-5'>糾錯</b>編碼

    并行循環(huán)冗余校驗算法

    循環(huán)冗余校驗(CRC)是一種眾所周知的錯誤檢測代碼,已廣泛用于以太網,PCIe和其他傳輸協(xié)議?,F(xiàn)有的基于FPGA的實現(xiàn)解決方案在高性能場
    的頭像 發(fā)表于 02-08 16:42 ?1868次閱讀
    并行<b class='flag-5'>循環(huán)</b><b class='flag-5'>冗余</b><b class='flag-5'>校驗</b>算法

    AN-1277: 利用ADV7850的循環(huán)冗余校驗

    AN-1277: 利用ADV7850的循環(huán)冗余校驗
    發(fā)表于 03-19 07:11 ?5次下載
    AN-1277: 利用ADV7850的<b class='flag-5'>循環(huán)</b><b class='flag-5'>冗余</b><b class='flag-5'>校驗</b>

    輕量級的SDN數(shù)據(jù)包轉發(fā)驗證方案

    輕量級的SDN數(shù)據(jù)包轉發(fā)驗證方案
    發(fā)表于 06-08 11:29 ?10次下載

    Verilog數(shù)字系統(tǒng)基礎設計循環(huán)冗余校驗

    CRC(循環(huán)冗余校驗) CRC介紹 臨時“插播”,后面有實例。 CRC(Cyclic Redundancy Check,循環(huán)冗余
    的頭像 發(fā)表于 08-17 17:08 ?6639次閱讀

    PCI-SIG?發(fā)布PCIe?6.0規(guī)范以助力大數(shù)據(jù)應用

    速率,通過x16配置可達256GB/s 四電平脈沖幅度調制(PAM4)信號,利用業(yè)界現(xiàn)有的PAM4 輕量型糾錯(FEC)和循環(huán)冗余
    的頭像 發(fā)表于 01-13 09:32 ?4660次閱讀

    支援PCIe 6.0的Rambus解決方案

    調變,透過結合新添加的糾錯(Forward Error Correction)和循環(huán)冗余校驗
    發(fā)表于 07-07 16:56 ?608次閱讀

    CRC循環(huán)冗余校驗簡介

    CRC 是Cyclic Redundancy Check的縮寫,循環(huán)冗余校驗,用于校驗數(shù)據(jù)傳輸?shù)耐暾?。一般情況下在數(shù)據(jù)發(fā)送計算CRC
    的頭像 發(fā)表于 04-24 13:04 ?6453次閱讀
    CRC<b class='flag-5'>循環(huán)</b><b class='flag-5'>冗余</b><b class='flag-5'>校驗</b>簡介

    CRC(循環(huán)冗余校驗)應用舉例

    CRC(循環(huán)冗余校驗)應用舉例
    的頭像 發(fā)表于 05-16 16:12 ?864次閱讀