本申請涉及通訊電路設計的,尤其涉及一種pcie交換機。
背景技術:
1、隨著pcie(peripheral?component?interconnect?express,外設部件互連標準擴展)技術的發(fā)展,通過pcie協議將多個設備進行板間互聯從而進行數據轉發(fā)已是大勢所趨,而這項技術需要用到pcie交換機。
2、圖1為現有技術示例性示出的一種pcie交換機的數據交互體系的整體結構示意圖。如圖1所示,現有技術的pcie交換機設計中,交換機的業(yè)務主要劃分為端口控制器(包括上游端口和下游端口)和交換核心,為了滿足自身業(yè)務的需求,會對端口控制器做部分功能適配的修改,同時一些與應用層功能相關的業(yè)務,比如多播、報文過濾、錯誤包處理、錯誤信息登記、報文路由、報文仲裁、排序規(guī)則等,會在交換核心內實現。
3、但在實際應用過程中,現有技術的pcie交換機,對于端口控制器進行功能適配修改的過程,容易導致端口控制器ip的驗證收斂時間過長,同時,由于交換核心的業(yè)務量太臃腫,也會導致整個業(yè)務單元邏輯量較大,從而導致整個業(yè)務收斂困難,影響項目的收斂速率。
技術實現思路
1、為解決上述技術問題,本申請的實施例提供了一種pcie交換機。
2、本申請?zhí)峁┝艘环Npcie交換機,包括:端口控制器,對輸入或輸出交換機的報文按照預設的第一數據處理流程進行處理后進行傳輸;交換核心,與所述端口控制器連接,將所述端口控制器傳輸的報文按照預設的第二數據處理流程進行處理,以使所述交換核心基于所述第二數據處理流程的處理結果執(zhí)行路由業(yè)務和交換業(yè)務;在所述端口控制器和所述交換核心之間連接有數據傳輸優(yōu)化模塊,以在所述端口控制器執(zhí)行所述第一數據處理流程時,將所述第一數據處理流程的處理流程轉移到所述數據傳輸優(yōu)化模塊執(zhí)行,以及在所述交換核心執(zhí)行所述第二數據處理流程時,將所述第二數據處理流程的處理流程轉移到所述數據傳輸優(yōu)化模塊執(zhí)行。
3、在本申請的一些實施例中,基于以上技術方案,所述數據傳輸優(yōu)化模塊包括接收模塊和發(fā)送模塊,所述接收模塊和所述發(fā)送模塊用于執(zhí)行所述第一數據處理流程,以及所述接收模塊和所述發(fā)送模塊用于執(zhí)行所述第二數據處理流程,?根據所述接收模塊對輸入所述數據傳輸優(yōu)化模塊的報文進行報文過濾處理、錯誤處理、跨時鐘域處理和帶寬切換處理;以及根據所述發(fā)送模塊對輸出所述數據傳輸優(yōu)化模塊的報文進行報文過濾處理、錯誤處理、跨時鐘域處理和帶寬切換處理;其中,所述報文過濾處理用于根據獲取的業(yè)務需求,過濾與所述業(yè)務需求不相關的報文;所述錯誤處理用于處理所述業(yè)務需求對應的報文錯誤;所述跨時鐘域處理用于協調不同傳輸端口之間的傳輸速率;所述帶寬切換處理用于協調不同傳輸端口之間的帶寬。
4、在本申請的一些實施例中,基于以上技術方案,所述數據傳輸優(yōu)化模塊還包括緩存單元和時鐘域異步處理單元,所述協調不同傳輸端口之間的傳輸速率,包括:在所述交換核心或所述端口控制器通過所述數據傳輸優(yōu)化模塊讀取報文時,基于所述時鐘域異步處理單元執(zhí)行報文讀取的延時處理,并基于所述緩存單元執(zhí)行報文的緩存處理,以協調不同傳輸端口之間的傳輸速率。
5、在本申請的一些實施例中,基于以上技術方案,所述基于所述緩存單元執(zhí)行報文的緩存處理,包括:獲取所述端口控制器的第一時鐘頻率和所述交換核心的第二時鐘頻率;計算所述第一時鐘頻率和所述第二時鐘頻率的差值,并計算所述差值與所述第二時鐘頻率的比值,以根據所述比值得到報文的緩存長度;控制所述緩存單元根據所述緩存長度執(zhí)行報文的緩存處理。
6、在本申請的一些實施例中,基于以上技術方案,所述根據獲取的業(yè)務需求,過濾與所述業(yè)務需求不相關的報文,包括:獲取所述交換機端口的當前模式;如果所述當前模式為非透明橋端口,則執(zhí)行報文過濾,以保留目標報文,所述目標報文包括不帶鎖的存儲類型的報文、原子操作包以及不帶鎖的完成包中的至少一種;如果所述當前模式為透明橋端口,則根據所述業(yè)務需求執(zhí)行對應的報文過濾。
7、在本申請的一些實施例中,基于以上技術方案,所述處理所述業(yè)務需求對應的報文錯誤,包括:獲取交換機端口的當前模式;如果所述當前模式為透明橋端口,且未檢測到報文中的結束標志信號,則產生一個新的結束標志信號,并將所述新的結束標志信號隨報文輸出,以及將用于指示報文存在結束標志缺失的錯誤,登記在預設的錯誤記錄中。
8、在本申請的一些實施例中,基于以上技術方案,所述處理所述業(yè)務需求對應的報文錯誤,包括:獲取交換機端口的當前狀態(tài);如果所述交換機端口的當前狀態(tài)為即將復位或者即將關斷時鐘或者即將進入低功耗狀態(tài),且預設的超時機制觸發(fā)時端口的報文仍未接收完或未發(fā)送完,則產生結束標志信號,并停止報文的接收或發(fā)送,以及產生報文無效標志信號發(fā)送給所述交換核心;通過所述交換核心對接收超時或發(fā)送超時的報文執(zhí)行靜默丟包操作,并將用于指示報文存在接收超時或發(fā)送超時的錯誤,登記在預設的錯誤記錄中。
9、在本申請的一些實施例中,基于以上技術方案,所述處理所述業(yè)務需求對應的報文錯誤,包括:獲取所述接收模塊接收到的報文類型;如果所述報文類型在當前端口默認不能接收,則對默認不能接收的報文執(zhí)行靜默丟棄操作,并將用于指示報文存在默認不能接收的錯誤,登記在預設的錯誤記錄中。
10、在本申請的一些實施例中,基于以上技術方案,所述接收模塊對輸入所述數據傳輸優(yōu)化模塊的報文進行協調不同傳輸端口之間的帶寬,包括:在所述交換核心基于所述接收模塊讀取報文時,判斷當前的端口鏈路條數,并根據所述端口鏈路條數進行逐一篩選,以獲取多個端口鏈路中最大支持配置的目標端口鏈路;獲取當前報文的時鐘周期個數;如果所述時鐘周期個數為多個,則獲取每個時鐘周期中有效數據的字節(jié)數,以按照所述目標端口鏈路的最大支持配置對多個時鐘周期中有效數據的字節(jié)進行拼接后,對拼接后的報文進行傳輸;如果當前報文只有1個時鐘周期,則對報文直接進行傳輸。
11、在本申請的一些實施例中,基于以上技術方案,所述發(fā)送模塊對輸出所述數據傳輸優(yōu)化模塊的報文進行協調不同傳輸端口之間的帶寬,包括:在所述交換核心基于所述發(fā)送模塊回讀報文時,按照預設的最大包長將所述交換核心輸出的數據進行緩存后,讀取緩存后的報文,并按照所述最大包長輸出報文。
12、本申請實施例的技術方案中,通過上述
技術實現要素:
至少可以帶來如下有益效果:
13、本申請在根據pcie交換機執(zhí)行數據交換的業(yè)務處理過程中,將需要端口控制器執(zhí)行的第一數據處理流程,以及將需要交換核心執(zhí)行的第二數據處理流程,分別轉移到數據傳輸優(yōu)化模塊進行處理,從而減輕了端口控制器和交換核心的業(yè)務處理負擔,進而有利于pcie交換機在業(yè)務處理時加速項目整體收斂速率。
1.一種pcie交換機,其特征在于,包括:
2.根據權利要求1所述的pcie交換機,所述數據傳輸優(yōu)化模塊包括接收模塊和發(fā)送模塊,所述接收模塊和所述發(fā)送模塊用于執(zhí)行所述第一數據處理流程,以及所述接收模塊和所述發(fā)送模塊用于執(zhí)行所述第二數據處理流程,其特征在于,
3.根據權利要求2所述的pcie交換機,所述數據傳輸優(yōu)化模塊還包括緩存單元和時鐘域異步處理單元,其特征在于,所述協調不同傳輸端口之間的傳輸速率,包括:
4.根據權利要求3所述的pcie交換機,其特征在于,所述基于所述緩存單元執(zhí)行報文的緩存處理,包括:
5.根據權利要求2所述的pcie交換機,其特征在于,所述根據獲取的業(yè)務需求,過濾與所述業(yè)務需求不相關的報文,包括:
6.根據權利要求2所述的pcie交換機,其特征在于,所述處理所述業(yè)務需求對應的報文錯誤,包括:
7.根據權利要求2所述的pcie交換機,其特征在于,所述處理所述業(yè)務需求對應的報文錯誤,包括:
8.根據權利要求2所述的pcie交換機,其特征在于,所述處理所述業(yè)務需求對應的報文錯誤,包括:
9.根據權利要求2-8任一項所述的pcie交換機,其特征在于,所述接收模塊對輸入所述數據傳輸優(yōu)化模塊的報文進行協調不同傳輸端口之間的帶寬,包括:
10.根據權利要求2-8任一項所述的pcie交換機,其特征在于,所述發(fā)送模塊對輸出所述數據傳輸優(yōu)化模塊的報文進行協調不同傳輸端口之間的帶寬,包括: