999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

事務級AHB總線模型研究

2009-12-31 00:00:00馬秦生
計算機應用研究 2009年9期

摘 要:為了克服RTL級AHB總線模型的局限性,提出了采用標準C++擴充的軟硬件統一建模語言SystemC構建事務級的AHB總線模型的方法。該方法利用端口來連接模塊和通道,利用通道來實現接口中定義的方法。經仿真驗證,時序完全符合AHB總線標準,運行速度遠高于RTL級下的同類模型。該模型可以有效地克服軟硬件協同設計中的時間瓶頸,提高SoC的設計效率,降低設計復雜度,縮短芯片產品的上市時間。

關鍵詞:片上系統; AHB總線; 事務級; 建模

中圖分類號:TN47文獻標志碼:A

文章編號:1001-3695(2009)09-3246-03

doi:10.3969/j.issn.1001-3695.2009.09.012

Research of transaction level AHB bus model

MA Qin-sheng CAO Yang1,2, YANG Jun ZHANG Ning3

(1.School of Electronic Information, Wuhan University, Wuhan 430079, China; 2.State Key Laboratory of Software Engineering, Wuhan 430072, China; 3.Firmware Technology Development Dept, Asustek Computer Inc, Suzhou Jiangsu 215000, China)

Abstract:In order to deal with the limitations of the AHB bus model on the register transfer level, this paper introduced a method of modeling AHB bus using SystemC at the transaction level. The main idea of this method was that connected the mo-dules to the channels through the ports and implemented the methods in the interfaces through the channels. The experimental results revealed that the bus model is completely compliant to AMBA AHB specification. The rapidity of modeling running under the transaction level is higher than that of under the register transfer level. The time bottleneck of current hardware/software co-design method can be eased effectively. The efficiency of design SoC and the complexity of design SoC are improved. The time-to-market of chip is reduced.

Key words:SoC; AHB bus; transaction level; modeling

0 引言

OCB(on-chip bus)片上總線是SoC(system-on-chip)片上系統的公共信道和骨架。SoC內部的各個硬件模塊與軟件模塊間的相互通信均是通過片上總線完成的。

近年來,許多公司相繼制定了一些商用的片上總線標準,如Core Connect、Open Core Protocol、Wishbone以及AMBA(ARM microcontroller bus architecture)等總線。其中由ARM公司提出的AMBA總線,由于其自身的高性能和ARM處理器的廣泛應用,已經成為SoC系統中使用最廣泛的總線標準。

目前,基于AMBA總線的SoC系統常用的設計方法是先用硬件描述語言(如VHDL、Verilog)和高級語言(如C、C++)分別建立硬件系統和軟件系統模型;然后再通過遠程過程調用、Socket通信等方式進行軟硬件系統的協同仿真和驗證[1,2]。通常這種方法存在著以下局限性:

a)硬件描述語言是在RTL級對硬件系統進行描述,其抽象層次較低,因此在仿真復雜度較高的SoC硬件系統時,時間較長[3~5]。

b)遠程過程調用、Socket通信時間開銷較大[2],易導致協同仿真和驗證的速度極大地下降。

c)設計完成硬件系統的RTL級模型后,才能進行軟硬件系統的協同仿真和驗證,延長系統的開發周期[6,7]。

d)完成軟硬件系統的協同仿真和驗證后,才能發現軟硬件系統劃分的結構性錯誤,增加修正錯誤的跌宕次數和深度[6,7]。

為了解決上述問題,需要在較RTL級更高的層次上對基于AMBA總線的SoC系統進行建模。目前,國內外先后提出了許多建模方法,如通過擴展軟件高級編程語言、通過建立專門的描述語言以及通過擴展硬件描述語言的建模方法[3,4]等。

雖然這些方法實現了在更高抽象層次上的系統建模,但是描述軟硬件系統模型的語言依然不同,仍然需要使用遠程過程調用等通信方式來實現軟硬件系統的協同仿真和驗證。為此,本文提出在RTL級之上的事務級,采用標準C++擴充的軟硬件統一建模語言SystemC,對AMBA的核心總線AHB總線進行建模的方法。

1 基于AMBA的SoC體系結構

典型的基于AMBA總線的SoC體系結構以高性能的系統總線AHB(advanced high-performance bus)總線為骨架。在AHB總線上,掛接有主設備(如CPU、DMA、DSP)、從設備(如片上存儲器、外部存儲器接口)、仲裁器、譯碼器以及總線橋等高帶寬模塊。AHB總線不僅可以支持多個主設備對多個從設備的訪問,同時可以提供高帶寬的操作,并且它還可以通過總線橋與窄帶總線APB(advanced peripheral bus)總線連接,以便主設備能夠訪問一些必要的低帶寬的外圍模塊,如串行接口、并行接口、鍵盤以及時鐘等,如圖1所示。

AHB總線主要用來支持主設備與從設備間的數據傳輸。當有多個主設備通過AHB控制信號線向仲裁器發出總線訪問請求信號時,仲裁器便依據仲裁協議裁決出具有最高優先級的當前主設備,然后該當前主設備通過AHB地址信號線和控制信號線將相關的傳輸地址、傳輸方向以及數據寬度等信息分別送到譯碼器和從設備;當譯碼器選通相應的從設備后,從設備便在給定的地址空間內產生相應的讀/寫傳輸操作。

2 事務級AHB總線的設計

在SoC設計中,事務是指在被建模和被仿真的系統中,兩個模塊間的一次數據或事件的傳輸[8]。實現事務級的一次事務相當于實現RTL級的一個或多個周期的行為。事務級的抽象層次高于RTL級。在事務級,模塊沒有定義管腳,因此模塊間的通信不是通過管腳信號實現,而是通過函數調用實現。

2.1 總線模型

SystemC中的端口(port)、通道(channel)和接口(interface)概念極大地方便了事務級模型的開發。端口用來連接模塊和通道,它在定義時需指明接口類型;通道用來實現接口中定義的方法,它必須符合端口指明的類型;接口用來聲明在通道中實現的方法,這些方法可以不規定實現的細節。一個模塊中的進程可以通過端口來調用通道里實現的方法。

事務級的AHB總線模型如圖2所示。模型中分別定義了主設備端口、AHB總線端口以及AHB總線接口、仲裁器接口、譯碼器接口、從設備接口。該模型的運行機制為:主設備端口調用AHB總線接口發起傳輸請求,AHB總線端口調用仲裁器接口裁決出當前主設備,AHB總線端口調用譯碼器接口選擇對應的從設備,總線端口調用從設備接口實現傳輸。

2.2 模塊設計

在AHB總線接口中定義了兩類方法供主設備模塊調用,即阻塞方式(blocking)和非阻塞方式(non-blocking)。在阻塞方式下,傳輸由總線模塊控制。在傳輸過程中,發起阻塞讀/寫的主設備不能響應其他事務(如中斷)。在非阻塞方式下,傳輸由主設備模塊控制。在傳輸過程中,發起非阻塞讀/寫的主設備可以通過檢查傳輸的狀態信息來響應其他事務。在本模型中,當主設備調用阻塞方式的方法時,主設備模塊中運行的進程將被掛起,待傳輸完成后,再恢復運行;當主設備調用非阻塞方式的方法時,主設備模塊中運行的進程不會被掛起。

圖3是AHB總線模塊的狀態轉換圖。圖中current_ id是當前請求正在被處理的主設備序號;next_id是下一拍請求將要被處理的主設備序號。

在每個狀態總線,模塊需要完成以下操作:

a)空閑(idle)

next _id==0, current_ id==0

總線上無地址傳輸,無數據傳輸。

b)起始(start)

next _id!=0,current_id==0

總線上有地址傳輸,無數據傳輸。在該狀態下,總線完成以下操作:

(a)調用譯碼器通道中的譯碼函數,選通地址傳輸的目標從設備。

(b)調用目標從設備通道中的地址傳輸函數、傳送地址和控制信息。

c)忙(busy)

next _id!=0, current_ id!=0

總線上既有地址傳輸,又有數據傳輸。在該狀態下,總線完成以下操作:

(a)根據讀/寫標志位調用數據傳輸的目標從設備通道中的讀/寫函數。

(b)更新地址和數據緩沖區指針,將地址信息送到地址傳輸的目標從設備。

(c)若是兩次傳輸的交接周期,調用譯碼函數,更新地址傳輸的目標從設備。

d)結束(end)

next _id==0, current _id!=0

總線上有數據傳輸,無地址傳輸。在該狀態下,總線完成以下操作:

(a)根據讀/寫標志位調用數據傳輸的目標從設備通道中的讀/寫函數。

(b)將與當前請求相關的數據結構清零。

此外,在主設備模塊中定義了一個連接AHB總線接口的端口,該端口可以連接到實現指定的總線接口類型方法的AHB總線通道上。在從設備接口中定義了地址傳輸函數、讀/寫函數,該函數可以實現主設備與從設備間的數據傳輸,它在從設備通道模塊中實現,并被總線端口調用。在譯碼器接口中定義了譯碼函數,該函數根據初始化時配置的地址空間進行譯碼,它在譯碼器通道中實現,并被AHB總線端口調用。在仲裁器接口中定義了仲裁函數,該函數采用固定優先級的仲裁算法對多個主設備的總線請求進行仲裁,它在仲裁器通道中實現,并被AHB總線端口調用。

3 實驗結果

在ModelSim仿真環境下,運行事務級的AHB總線系統,捕獲的阻塞方式和非阻塞方式操作的仿真波形分別如圖4、5所示。

在CPU主頻為1.4 GHz以及2.3 GHz,內存均為512 MB的兩個微機環境下,分別運行事務級和RTL級AHB總線系統的阻塞方式和非阻塞方式操作各100次,得到的平均運行速度如表1所示。

表1 平均運行速度

阻塞方式運行次數/s(1.4GHz)運行次數/s(2.3GHz)

事務級阻塞方式581.40 909.09

事務級非阻塞方式641.031 063.83

RTL級阻塞方式 11.4617.73

RTL級非阻塞方式 13.5821.65

4 結束語

經仿真驗證,本文設計并實現的事務級AHB總線模型,時序完全符合AMBA AHB總線標準,運行速度遠高于RTL級下的同類型模型,這充分表明基于事務級的AHB總線設計不僅是必要的,而且是可行的。采用基于標準C++擴充的軟硬件統一建模語言SystemC來構建事務級模型,可以使得軟硬件協同仿真提前進行,減少修正錯誤的跌宕次數和深度。事務級建模作為SoC設計流程中的一個補充環節,必將極大地提高SoC的設計效率,降低設計復雜度,有效地克服軟硬協同設計的時間瓶頸,縮短芯片產品的上市時間。

參考文獻:

[1]LIAO S Y. Towards a new standard for system-level design[C]//Proc of the 8th International Workshop on Hardware/Software Co-design. New York:ACM Press, 2000: 2-6.

[2]石柯. 基于SystemC的嵌入式系統軟硬件協同設計[J]. 計算機應用研究, 2002, 19(6): 117-119.

[3]CHUNG M K, NA S K, KYUNG C M. System-level performance analysis of embedded system using behavioral C/C++model[C]//Proc of IEEE VLSI-TSA International Symposium on VLSI Design, Automation Test. Hsinchu:ERSO/ITRI, 2005:188-191.

[4]CORNET J, MARANINCHI F, MAILLET-CONTOZ L. A method for the efficient development of timed and untimed transaction-level mo-dels of systems-on-chip[C]//Proc of International Conference on Design, Automation and Test in Europe. New York: ACM Press, 2008:9-14.

[5]MARANINCHI F, MOY M, CORNET J, et al. SystemC/TLM semantics for heterogeneous system-on-chip validation[C]//Proc of International Conference on Circuits and Systems and TAISA. 2008:281-284.

[6]PASRICHA S, DUTT N, BEN-ROMDHANE M. Using TLM for exploring bus-based SoC communication architecturesapplication-speci-fic systems[C]//Proc of the 16th IEEE International Conference.2005:79-85.

[7]KLINGAUF W, GADKE H, GUINZEL R. Train: a virtual transaction layer architecture for TLM-based HW/SW codesign of synthesizable MPSoC[C]//Proc of Design, Automation and Test in Europe. Leuven: European Design and Automation Association, 2006:1318-1323.

[8]PASRICHA S. Transaction level modeling of SoC using SystemC 2.0[C]//Proc of Synopsys User Group Conference’02. Bangalore: Kluwer Academic Publishers, 2002:11-15.

主站蜘蛛池模板: 免费A级毛片无码免费视频| 亚洲色成人www在线观看| 亚洲最大综合网| 国内a级毛片| 狠狠色综合久久狠狠色综合| 一级毛片无毒不卡直接观看| 国产精品一区二区久久精品无码| 日日拍夜夜操| 国产丝袜丝视频在线观看| 亚洲国产午夜精华无码福利| 四虎永久免费网站| 亚洲欧美日韩综合二区三区| 免费国产小视频在线观看| 久久精品国产精品青草app| 国产精品.com| 四虎成人精品在永久免费| 成AV人片一区二区三区久久| 国产在线视频欧美亚综合| 97在线观看视频免费| 久久99国产乱子伦精品免| 99视频在线免费观看| 特级精品毛片免费观看| 少妇精品在线| 高清无码手机在线观看| 久久性妇女精品免费| 又黄又湿又爽的视频| 欧美精品在线视频观看| 原味小视频在线www国产| 成年人国产网站| 91精品伊人久久大香线蕉| 亚洲国产精品人久久电影| 国产成人精品第一区二区| 91热爆在线| 啊嗯不日本网站| 亚洲一区第一页| 99这里精品| 亚洲区第一页| 91国内视频在线观看| www.国产福利| 国产精品手机在线观看你懂的| 欧美19综合中文字幕| 五月天香蕉视频国产亚| 欧美国产日产一区二区| 日韩一二三区视频精品| 亚洲色图在线观看| 真实国产乱子伦高清| 91视频青青草| 国产精品色婷婷在线观看| 久综合日韩| 国产成人乱无码视频| 亚洲一道AV无码午夜福利| 巨熟乳波霸若妻中文观看免费| 免费啪啪网址| 国产最爽的乱婬视频国语对白| 国产免费福利网站| 伊人久久久大香线蕉综合直播| 亚洲欧美日韩中文字幕在线一区| 精品人妻一区无码视频| 亚洲AV成人一区二区三区AV| 国产97视频在线观看| 亚洲无卡视频| 一区二区理伦视频| 亚洲制服中文字幕一区二区 | 四虎国产在线观看| 国产人在线成免费视频| 欧美一级黄片一区2区| 亚洲欧州色色免费AV| 亚洲精品不卡午夜精品| 国内精自视频品线一二区| 又爽又黄又无遮挡网站| 狠狠色成人综合首页| 91精品人妻一区二区| 久久婷婷人人澡人人爱91| 色综合成人| 日韩在线中文| 精品成人一区二区| 精品一區二區久久久久久久網站 | 国模私拍一区二区| 国产91丝袜在线观看| 亚卅精品无码久久毛片乌克兰| 欧美日本在线一区二区三区| 日韩av手机在线|