(1)OCP-IP TLM抽象模型
OCP-IP(Open Core Protocol International Partnership)是推動IP核接口標準化的國際組織。OCP-IP提出了一個4層的通信模型,除RTL層之外的3層屬于事務層。
消息層處于最高抽象層次,被SoC系統(tǒng)結構工程師用來做功能劃分和系統(tǒng)級的結構分析。消息層沒有時間信息,是事件驅(qū)動的。
主設備和從設備之間的一次事務包含了多個數(shù)據(jù)的傳輸,這些數(shù)據(jù)可能處于非常抽象的層次。事務層在RTL層之上,被SoC系統(tǒng)結構工程師用來進行體系結構分析、周期性能估計,以及詳細的硬件性能分析、軟硬件劃分和軟硬件協(xié)同開發(fā)。
事務模型有時間信息,但不是精確到周期,系統(tǒng)是時間驅(qū)動執(zhí)行的。主設備和從設備之間的一個事務可能包含幾個數(shù)據(jù)的傳輸。執(zhí)行這個事務所需要的時間由主設備和從設備來估計。通常的事務級系統(tǒng)模型與總線協(xié)議無關,因為總線協(xié)議總是與精確到時鐘周期的系統(tǒng)有關。事務模型和硬件仿真模型一起用來做為下層接口的驅(qū)動。
傳輸層模型用于詳細建模任務,建立精確到周期的測試平臺,精確到周期的性能仿真。傳輸層是周期精確的,但接口的引腳被抽象隱藏,接口是字節(jié)精確的。
表4-2所示為傳輸層和RTL層的比較。將精確到周期的協(xié)議映射到給定的硬件接口和總線結構上。寄存器傳輸層模型是引腳和比特精確。RTL模型可以使用VHDL或Verilog或SystemC描述。
(2)OSCI TLM 1.0抽象模型
OSCI(The Open SystemC Initiative)是由集成電路行業(yè)的公司和一些大學組成的非營利組織,致力于推動SystemC成為系統(tǒng)級設計的開源標準。OSCI提出的事務級抽象層次如圖4-26所示。
表4-2 OCP-IP的通信抽象層次中傳輸層和RTL層的比較
圖4-26 OSCI提出的事務級抽象層次
圖4-26中,在算法模型和RTL模型之間的三層抽象屬于事務級抽象。
下面分別介紹這三層抽象。
? ① 程序員觀點層(Programmer’s View):該層模型包含的接口只有函數(shù)調(diào)用而沒有通信事件。這一層只帶有很少的時序信息,通常與沒有時間信息的功能行為描述相關。
? ② 帶有時間信息的程序員觀點層(PVT,Programmer’s View plus Timing):這是一個周期近似的事務級模型,用于建模功能行為和模塊之間的通信協(xié)議。可以分析通信的時延和吞吐量,并可在軟件開發(fā)和體系結構的驗證中提供足夠的仿真精度。
? ③周期精確層:這是一個周期精確的模型,模塊的內(nèi)部行為以及模塊和外部的通信可以是周期總數(shù)精確或者周期完全精確的。模塊內(nèi)部的行為建模可以不對寄存器建模以提高仿真速度。這是一個事務級模型,在RTL抽象層之上。在通信建模中同一時鐘邊沿觸發(fā)的多個信號可以包裝在一起作為一個傳輸,因此仿真性能要比RTL抽象好。
OSCI事務級模型工作小組定義了一組普通、可復用的事務級模型接口,以及目標通過性語法。API包括一個用戶層、一個協(xié)議層和一個傳輸層。值得注意的是,該標準只提供了一個基礎層。
IP供貨商將需要提供符合特定總線標準的API及相應IP的事務級模型。因此,IP供貨商就制作了所謂的“第二適配層”,在此之上用戶可以建構系統(tǒng)和半導體IP。該標準將促進IP的共享和復用,鼓勵EDA工具的開發(fā),并使電子OEM廠商更容易使用事務級模型。
OSCI發(fā)布的新標準可以使事務級建模從高階用戶走向主流用戶群,該標準將為IP供貨商進入事務級模型市場鋪路,而且這些模型都可以被整合進系統(tǒng)級芯片(SoC)和EDA工具中。這在以前是不可能實現(xiàn)的,因為每個公司都使用自己制作的事務級模型。
利用新的OSCI事務級模型庫編寫出來的模型可以透過標準接口而互相連接,這將進一步增強高層IP模型的復用性和可用性,如圖4-27所示。OSCI和OCP-IP提出的模型都支持三層的TLM抽象。OSCI的帶有時間信息的程序員抽象層與OCP-IP的第二層事務層接近,而周期精確層則與OCP-IP的第一層傳輸層抽象類似。
圖4-27 OSCI定義的基于SystemC的層次標準(資料來源:OCSI)
基于SystemC的事務級建模的主要任務是利用SystemC進行相應的通信抽象,實現(xiàn)通信機制,其具有兩大特點。
? ①功能與通信分離:實現(xiàn)具體算法的功能部分與實現(xiàn)數(shù)據(jù)和事件傳輸?shù)牟糠址蛛x。功能由SystemC的模塊(sc_module)來實現(xiàn),而通信由通道(Channel)來實現(xiàn)。
? ②接口方法調(diào)用:一組給定的通信方法被稱為接口,包括數(shù)據(jù)接口和控制接口。而通道由一個或者多個接口來實現(xiàn)。模塊能夠使用它們的端口來與實現(xiàn)相應接口的通道進行互連。
-
通信
+關注
關注
18文章
5949瀏覽量
135785 -
ESL
+關注
關注
1文章
73瀏覽量
21320 -
模型
+關注
關注
1文章
3112瀏覽量
48660 -
TLM
+關注
關注
1文章
32瀏覽量
24722
發(fā)布評論請先 登錄
相關推薦
評論