高速信號SRio總結,邏輯層和傳輸層。第七天

傳輸速率和時鐘:1x、2x、4x的通信方式,支持速度1.25G/2.5G/3.125G/5.0G和6.25G,分別支持125M和156.25M時鐘

主要用途:最主要的優勢是系統內互聯可靠,增加了帶寬和傳輸的總線速度。

Ip包裝:RapidIo分爲三層。物理層、傳輸層和邏輯層。邏輯層主要定義整體協議和數據包格式,包括端點啓動和完成事務所必須的信息。傳輸層提供數據包的路由信息。物理層描述設備及接口細節,比如傳輸機制,流控制,電器特性和低級錯誤。(待整合理解)

交互方式:邏輯層主要利用axi往ip寫入數據,物理層通過輸出的差分串行接口serdes,經過gtx bank與外界進行交互。

 

一、ip介紹對於一個ip核的使用,最主要的是必須要了解他的時鐘和復位。

    對於接口介紹,主要有數據傳輸通道(標誌位通道),信息報通道、維護包通道,調試通道以及調試信息窗口。框圖如下

 

                                            

 

主要對IO口進行操作所以需要了解io都有哪些管教,並且瞭解包括包格式,doorbell等信息。其中主要對input信息進行構造,而對output進行監測。

Srio傳輸總共分三層,邏輯層(logic),傳輸層(t),物理層(PHY)

一、邏輯層:

         1.1 第一步,知道發什麼,怎麼發。

           主要了解包格式和接口類型,以及該怎麼操作用戶接口。

          Io主要會有發送treq,發送應答tresp。接收,接收應答。並且分condentIo和initator io。Condent Io,用一個axi_stream處理髮送和接收,即四個部分都在一起,而initiator/target 把事務分開,分別發送搭配。並且消息事務既能再i/o上發送也可以再消息端口發送。並且每個通道都有發送和接受緩衝,按我的理解就是內部fifo。一般也就是先進先出,且必須有數據包被接受,下一個數據才能更新緩衝區。如果有多個數據沒有發送,會按照優先級和類型,發出響應後並積極發出請求,還是按照設置優先級發送。(有時候溫度原因會造成某幾包後未發送。)

          並且srio建議支持最低八個字節的傳輸,當小於8個字節時,需要按照設置size和addr相配合的方式發送   。

                               

 

上圖中0-6對應1-7個字節。以0字節爲例,寫的是一個字節,如果地址位7,就在最高的一個字節,如果爲0,就在最後一個字節。之所有有這個,是因爲位傳輸的關係。所以儘量還是保證八字節。

 

       1.2 怎麼該怎麼配置自己的發送和接受模式。(寄存器)維護包和csr忽略。

        

                                   

 

      1.3 怎麼知道自己成功了。

         Link_initialized /port_error已發送至少 15 個狀態控制符號,並且 已接收到 8 個無錯誤狀態控制符號。(主要通過control和status 來了解。)

      1.4怎麼知道自己有沒有錯。

         表示端口收到不可恢復的錯誤並處於錯誤狀態。此信號反映物理層配置 中端口 n 錯誤和狀態 CSR 中的端口錯誤位的值。並通過debug監測。

傳輸層:

重傳、亂序傳輸。

       首先srio禁止亂序包,但允許亂序傳輸。也就是說,每一包數據過來都會按優先級定義。Srio通過ackId和優先級來決定發送數據的先後。也就是如果優先級太低,會通過提升ackId的方式來確認當前數據集的優先級。

而重傳就是如果兩個包,a包被接收,會自動不斷提升b的優先級來發送b。

 

                                                    

 

亂序傳輸、相當於通過緩存設置多通道,先發的給優先級級別高。但是如果第一個通道沒有第一個優先級數據,會將核心倒帶將下一包c數據與當前ackId1關聯先發出去,之後再發高優先級B並與ackId2對齊,保證數據一致。

                                   

 

第三種是嚴重堵塞,重新定義優先級傳輸。根據事務類型和優先級而重設發送順序,也就是發送通道。並且不同緩存空間也有不同優先級。

                  

 

 

物理層:

初始化‘通道數、功能、重置等功能。具體不瞭解

 

 

 

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