System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本專利技術屬于集成電路設計,提出了一種應用于axi協議中的基于提前地址譯碼的新型事務id編碼方法。
技術介紹
1、amba(advanced?microcontroller?bus?architecture)協議是由arm公司定義的一種總線協議,旨在提供高性能、低功耗和可擴展性的總線解決方案,用于連接處理器、內存、外設和其他系統組件。amba協議定義了一組總線接口標準,包括ahb(advanced?high-performance?bus)、apb(advanced?peripheral?bus)和axi(advanced?extensibleinterface)。axi協議是amba協議中的一種高性能、低延遲、可擴展的總線協議。axi協議支持多主設備、out-of-order數據傳輸、亂序數據傳輸、burst傳輸等特性,旨在提供高性能和靈活性,適用于復雜的soc設計。
2、隨著處理器的發展,其性能提升速度遠遠超過了內存訪問速度的提升速度。處理器的時鐘頻率和指令級并行性不斷提高,但內存的訪問速度卻沒有同步增長,這導致處理器在等待內存數據的過程中浪費了大量的時鐘周期,造成了性能瓶頸,這被稱為“memorywall”(內存墻)。硬件的峰值計算能力在過去的20中提升了約60000倍,但是dram的帶寬增長僅僅提高了100倍。內存墻的存在對計算機系統的性能產生了重大影響,處理器需要頻繁地從內存中讀取數據和指令,而內存的訪問速度相對較慢,導致處理器的執行效率受到限制,這種情況尤其在大規模數據處理、高并發應用和數據密集型任務中更
3、axi協議由于其高性能、可擴展、低延遲等優點,已經廣泛應用于片上互聯系統中。在傳統的axi架構中,地址譯碼一般在互聯(interconnect)中進行,并用于選通對應的從機以實現主機到從機的數據路由。由于現在計算系統的性能瓶頸是內存的訪存效率,盡管axi協議本身是高性能、高帶寬的總線協議,仍然遠不足以滿足目前高性能處理器的帶寬需求。axi協議由于讀通道與寫通道存在id信號,可以實現事務的亂序完成,由此提高了內存訪問的效率,協議規定了id相同的事務必須按序返回,id不同的事務可以亂序返回,但沒有規定id的位寬與編碼方式,可以通過對寫通道的awid、wid信號與讀通道的arid、rid信號的靈活編碼在互聯層次結構層面提高axi總線的帶寬與主頻。圖1是傳統的axi總線架構組件圖,master組件代表axi主機接口,slave組件代表axi從機接口,interconnect為總線互聯部分,一般包含三個組件:譯碼器、仲裁器、多路選擇器。仲裁器接收來自各個主機的訪問請求,根據仲裁算法在發生資源競爭時(多個主機同時請求同一組總線)授權給相應的主機訪問權力,發起請求但未獲得訪問授權的主機需要等待授權,常見的仲裁算法有固定優先級仲裁、輪詢優先級仲裁、帶權重的輪詢優先級仲裁等。譯碼器負責將總線上的請求信息根據映射翻譯為選通信號,例如在共享數據通道和請求通道的axi協議中,主機的讀寫請求信息經過仲裁送往總線之后,譯碼器通過總線上的地址信息判斷該筆請求屬于哪一個地址區間,從而將對應的從機選通,該從機就能夠采樣總線上的信息,實現數據的路由。多路選擇器(mux)根據相應的選通信號將相應的信號驅動至總線上,例如在axi4協議的寫事務中,在主機發起寫請求并獲得授權后,多路選擇器需要通過相應的授權信號,將該主機的請求信號驅動至總線上,供從機采樣,在共享寫請求通道的情況下,同一時刻應該只有一個主機的請求信息被驅動至總線上,直到收到從機的ready響應為止。
4、axi協議相對于ahb總線來說能夠提升性能的關鍵一環在于axi協議支持outstanding傳輸,即上一個傳輸事務未完成時,允許發起下一筆傳輸事務,兩筆不同的傳輸事務由x_id信號區別。在outstanding的基礎上,可以進一步實現亂序(out?of?order)與交織(interleaving),這三個功能合稱"axi三板斧”,可以極大提升傳輸效率。對于不同事務id的產生,一般采取在主機接口產生源id碼,在互聯中由額外信息對主機傳來的id碼進行擴展,以支持更多的未完成事務并行處理。圖2是傳統的axi系統id編碼方式,其中master端發出的id位寬為2bit,支持四個不同的事務在總線上運行,interconnect將master發出的id位寬擴展到6bit,以支持64個不同的事務同時在總線上運行。
技術實現思路
1、本專利技術提出了一種應用于axi協議的新型事務id編碼方法。與傳統的事務id編碼習慣相比,該編碼方法可以提高總線系統的最高頻率與傳輸效率,達到提高系統內存帶寬的目的,能夠有效緩解內存墻瓶頸問題。
2、技術方案
3、在圖2所述的id編碼方案中,互聯將主機接口發出的2bit?id號擴展為6bit發送給從機接口,這意味著總線上最多可以同時存在64個可以亂序完成的事務(假設編碼方式采用的是二進制碼而不是獨熱碼)。但這里的問題在于主機實際上只能識別由自身產生的四個事務,例如主機先產生一個id號為2'b01的讀事務,互聯根據這筆事務的附加信息將id擴展四位:4'b0100,那么從機收到的id便為6位:6'b01_0100,然后這個主機再次產生一個id號位2'b01的讀事務,由于某些原因,這兩筆事務的id號(主機產生)相同,但是附加信息不同,由此互聯可以將id擴展為不同于上一筆事務的四位:4'b0010,那么從機收到的第二筆事務的id就是6'b01_0010。以從機的視角來看待這兩筆事務,第一筆事務id為6'b01_0100,第二筆事務id為6'b01_0010,這兩筆讀事務擁有不同的id,從機可以亂序返回兩筆事務的讀數據。但是主機只能識別這六位id的最高兩位,這兩筆讀事務的id高兩位都是2'b01,所以對于主機來講,這兩筆事務的返回順序需要與事務的發出順序一致,即主機需要收到第一筆讀事務的所有返回數據之后,才可以開始接收第二筆讀事務的返回數據。在這種情況下,從機亂序返回的第二筆讀事務的數據需要緩存在互聯中,等待第一筆讀數據全部返回后,再將第二筆讀事務的數據依次返回。在面對這種需要保序的情形時,亂序機制對系統帶寬的提升是有限的,并且如果要完成保序功能的組件設置在互聯中,會增加互聯設計的復雜度與互聯關鍵路徑長度,影響互聯的整體面積與性能。
4、本專利技術提出了一種基于主機編號與從機地址映射的讀寫事務id編碼方式,相比于傳統的互聯架構,可以明顯提升互聯系統的傳輸效率與主頻。譯碼器(decoder)一般位于互聯矩陣中,圖3表示的是一般譯碼器的數據流,address[31:16]表示的是32位地址總線的高16位,slave-sel_x(x=0,1,2)表示的是譯碼器輸出給從機的選通信號,在同一時刻只能有一個從機被選中,只有被選中的從機才能夠采樣共享通道上的信息流。本專利技術將地址譯碼器轉移到主機接口(master?interface)中,在主機接口中完成地址譯碼,并本文檔來自技高網...
【技術保護點】
1.一種應用于AXI協議的新型事務ID的編碼方法,其特征在于基于提前地址譯碼,將主機編號、從機選通信號編碼為ID信息中的一部分,使得事務ID在主機接口中編碼完整,而不是逐級增加ID位寬,其中事務ID的高位代表主機編號,可以采用獨熱碼編碼或者二進制編碼,事務ID的低位代表從機選通信號,采用獨熱碼編碼,采用本方法編碼的事務ID每個位段都具有明確的意義,調整了傳統的AXI總線互聯架構,在讀事務數據需要保序的情況下,緩存數據的位置離主機端更近。
2.權利要求1中所述的調整了傳統AXI總線互聯架構,其特征在于調整了傳統互聯架構中地址譯碼器的位置,將互聯矩陣中的地址譯碼邏輯轉移到了主機接口中的非關鍵路徑上,傳統的AXI互聯架構譯碼邏輯位于互聯矩陣的關鍵路徑上。
【技術特征摘要】
1.一種應用于axi協議的新型事務id的編碼方法,其特征在于基于提前地址譯碼,將主機編號、從機選通信號編碼為id信息中的一部分,使得事務id在主機接口中編碼完整,而不是逐級增加id位寬,其中事務id的高位代表主機編號,可以采用獨熱碼編碼或者二進制編碼,事務id的低位代表從機選通信號,采用獨熱碼編碼,采用本方法編碼的事務id每個位段都...
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。