當前位置:首頁 > 嵌入式 > 嵌入式教程
[導讀]基于片內(nèi)WISHBONE總線的高速緩存一致性實現(xiàn)

摘要:基于IP可重用的設(shè)計方法,利用WISHBONE總線協(xié)議,把兩個已成功開發(fā)出的具有自主知識產(chǎn)權(quán)的THUMP內(nèi)核在一個芯片上,實現(xiàn)了片上多處理器FPGA。開發(fā)重點是實現(xiàn)基于片內(nèi)WISHBONE總線高速緩存一致性協(xié)議。

關(guān)鍵詞:WISHBONE總線片上多處理器高緩一致性SOCIP

清華大學嵌入式微處理器芯片設(shè)計為國家重點863項目,單芯片多處理器設(shè)計為項目的一個延伸。單芯片多處理器是提高處理器性能的有效途徑,具有低耦合度、粗粒度并行性的主要特點。清華大學已成功開發(fā)出具有自主知識產(chǎn)權(quán)的MIPS4Kc架構(gòu)的32位微處理器--THUMPl07。該處理器具有內(nèi)核性能高、面積小、功耗低的優(yōu)點。使其經(jīng)過裁減非常適合作為單芯片多處理器的內(nèi)核。

本次單芯片多處理器的設(shè)計將兩個Thumpl07內(nèi)核集成在一個芯片上,兩個內(nèi)核處于完全對等地位,實現(xiàn)進程級的粗粒度并行。由于已經(jīng)具有可以利用的內(nèi)核,開發(fā)的重點就集中在高速緩存(Cache)一致性的實現(xiàn)上。芯片采用了基于內(nèi)部總線寫更新監(jiān)聽的高速緩存一致性協(xié)議,具有控制邏輯簡單、可擴展性好的特點。內(nèi)部總線采用適合片上系統(tǒng)通信、高可配置性的WISHBONE總線。使用該片上總線有效地解決了IP核可移植性、設(shè)計復用的問題[2l]。

1WISHBONE總線

WISHBONE最先由Silicore公司提出,現(xiàn)在被移交給OpenCores組織維護。由于其開放性,現(xiàn)在已有不少用戶群體。特別是一些免費的IP核,大多數(shù)都采用WISH-BONE標準。該總線結(jié)構(gòu)具有公用的接口規(guī)范方便結(jié)構(gòu)化設(shè)計,有效地解決了IP核可移植性、設(shè)計復用的問題。

WISHBON耳總線為半導體內(nèi)核提供了可配置的互連方式,能夠使各種內(nèi)核互連起來形成片上系統(tǒng);WISH-BONE總線具有很強的兼容性,提高了設(shè)計的可重用性;WISHBONE總線的接口獨立于半導體技術(shù),其互連方式既可以支持FPGA設(shè)備,也可以支持ASIC設(shè)備;WISHBONE總線協(xié)議簡單、易懂。

WISHBONE總線是一種主/從接口架構(gòu)的總線技術(shù),如果具有有效的仲裁機制,總線系統(tǒng)可以支持多個ne/從接口;WISHBONE總線的可配置性主要體現(xiàn)在支持點到點、共享總線、數(shù)據(jù)流、交叉開關(guān)型的互連方式;WISHBONE總線協(xié)議既包含了一種容易使用、可靠性高、易測試、所有總線事務(wù)都可以在一個時鐘周期內(nèi)協(xié)同的同步傳輸協(xié)議,也包含了標準時鐘周期的異步傳輸協(xié)議;WISHBONE總線的同步傳輸協(xié)議可以工作在一個大范圍的時鐘頻率上。這樣WISHBONE總線接口既可以與內(nèi)核時鐘周期同步,也可與不同的目標設(shè)備同步,時序都非常簡單。此外,WISHBONE總線還具有如下特點:

·簡單、緊湊的硬件邏輯接口,需要更少的邏輯門;

·支持流行的單字讀/寫、塊讀/寫、讀-修改-寫的總線協(xié)議;

·可調(diào)整的總線和操作數(shù)位寬;

·支持大端(bigendian)和小端(1ittleendian)兩種數(shù)據(jù)表示方法;

·握手協(xié)議能夠控制數(shù)據(jù)傳輸速率;

·支持單周期數(shù)據(jù)傳輸;

·從接口的部分地址解碼;

·根據(jù)系統(tǒng)需要,用戶可自定義增加接口信號;

·系統(tǒng)包含多個MASTER接口時,用戶可以自定義總線仲裁方式與算法。

圖2

2實現(xiàn)方案

單芯片多處理器的每個內(nèi)核都有分離的16KB指令高速緩存(1Cache)和16KB數(shù)據(jù)高速緩存(DCache);指令高速緩存和數(shù)據(jù)高速緩存都采用兩路組相聯(lián)的映射方式;每塊都包含8個字;采用虛擬地址定位、物理地址比較的尋址方法;替換方式為LBU(最近最少使用替換)。

指令高速緩存不涉及一致性問題,不多做說明。數(shù)據(jù)高速緩存采用基于監(jiān)聽總線的寫更新一致性協(xié)議Dragonl[3]

協(xié)議狀態(tài)說明見表1。

表1協(xié)議狀態(tài)

狀態(tài)說明

干凈獨占(E)只有一個緩存有這一存儲塊的拷貝,并且還沒有被修改(主存狀態(tài)也有效)。

干凈修改(SC)潛在的兩個或多個緩沖有這一存儲塊,主存不一定是最新的。

共享已修改(SM)潛在的兩個或多個緩沖有這一存儲塊,主存不是最新的。該塊在被替換時,要更新主存(寫回)。一個存儲塊在一定時間內(nèi)只能在一個緩沖內(nèi)共享已修改狀態(tài)。

獨點已修改(M)存儲塊的內(nèi)容已經(jīng)被修改,并且只在該存儲塊里,發(fā)生替換需要更新主存的內(nèi)容。

確定一致性協(xié)議后,單芯片多處理器的數(shù)據(jù)高速緩存單元整體設(shè)計見圖1。

片內(nèi)總線采用WISHBONE總線共享型連接,每個內(nèi)核的數(shù)據(jù)高速緩存的控制單元都包含WISHBONE總線的一個主接口(MASTER)和一個從接口(SLAVE);數(shù)據(jù)總線為32位;地址總線為33位,其中最高位是兩個從接口的選擇位;片內(nèi)總線采用預先同步傳輸協(xié)議;仲裁方式為輪換型;片外總線接口與廣泛應(yīng)用的工業(yè)標準SYSAD系統(tǒng)總線兼容。

在UNCAHCE空間發(fā)生的讀寫操作,直接訪問外部總線,與主存通信;在CACHE空間發(fā)生的讀寫操作,過程如下所述:

讀缺失:當一個內(nèi)核的數(shù)據(jù)高速緩存發(fā)生讀缺失,由本地主接口通過片內(nèi)總線向遠端數(shù)據(jù)高速緩存發(fā)出讀請求,遠端從接口通過片內(nèi)總線應(yīng)答請求。如果應(yīng)答有該單元數(shù)據(jù),就由遠端數(shù)據(jù)高速緩存調(diào)來一個數(shù)據(jù)塊(8個字);如果沒有,本地主接口結(jié)束片內(nèi)總線周期,轉(zhuǎn)而訪問外部總線,由主存調(diào)人數(shù)據(jù)。

寫缺失:內(nèi)核發(fā)生寫缺失時,前半部分的操作與讀缺失完全一致;只是如果缺失單元是從遠端數(shù)據(jù)高速緩存調(diào)來的,由于采用基于寫更新的Dragon協(xié)議,所以在完成片內(nèi)總線塊傳輸事務(wù)后還要產(chǎn)生一個單字寫總線事務(wù),更新遠端數(shù)據(jù)高速緩存單元。

讀命中:不會產(chǎn)生任何總線事務(wù)。

寫命中:如果該單元的原來狀態(tài)是SC或SM,基于寫更新協(xié)議,由本地主接口通過片內(nèi)總線向遠端數(shù)據(jù)高速緩存發(fā)出寫請求,遠端從接口通過片內(nèi)總線應(yīng)答請求。如果應(yīng)答有該單元數(shù)據(jù),則通過一個單字寫總線事務(wù)更新遠端數(shù)據(jù)高速緩存單元;如果沒有,結(jié)束片內(nèi)總線周期。

替換:實現(xiàn)寫回協(xié)議,只有被替換出的單元狀態(tài)為SM或M狀態(tài),才通過外部總線更新主存,其他情況拋棄即可。

注意:完成上述操作后要根據(jù)DRAGON協(xié)議,更新本地和遠端DCahe單元的相關(guān)狀態(tài)。[!--empirenews.page--]

3總線事務(wù)時序分析

由前部分的說明發(fā)現(xiàn)在內(nèi)部總線上可以產(chǎn)生三種類型的總線事務(wù):讀缺失時,塊傳輸總線事務(wù);SM或SC狀態(tài)寫命中時,發(fā)生單宇寫總線事務(wù);寫缺失時,先是一個塊傳輸總線事務(wù)而后在本地寫操作完成后,一個單字寫總線事務(wù)更新遠端的數(shù)據(jù)高速緩存單元。以下是塊傳輸和單字寫總線周期具體的時序分析,下文提到的具體信號其意義可以查閱參考文獻[1]。

塊傳輸時序:主接口通過聲明CYC_O申請總線的使用權(quán),同時也給出STB_O、CTI_0(010)、WE_O(低電平)和ADR_O;經(jīng)過若干時鐘周期等待后,如果遠端從接口給出ACK_I信號,同時給出的SHARE_I信號為低電平(說明遠端數(shù)據(jù)高速緩存沒有所需要的數(shù)據(jù)塊,.SHARE_I為自定義的信號),這時主接口忽略DAT-I信號,下一個時鐘周期撤銷CYC_O信號,結(jié)束片內(nèi)總線周期;如果給出AClI信號的同時,SHARE_I信號為高電平(說明遠端數(shù)據(jù)高速緩存有所需要的數(shù)據(jù)塊),接收DAT-I上的數(shù)據(jù);而后7個時鐘周期內(nèi),每個時鐘周期ADR_O數(shù)據(jù)加4,DAII上的數(shù)據(jù)根據(jù)地址相應(yīng)地變化,在第7個數(shù)據(jù)傳輸?shù)臅r鐘周期CTI_O變?yōu)?11,告訴遠端從接口這是最后一個傳輸時鐘周期,下一個時鐘周期:降完成這個總線事務(wù);最后一個時鐘周期主接口撤銷CYC_O信號,結(jié)束片內(nèi)總線周期。

內(nèi)塊傳輸時序見圖2。

單字寫總線周期:主接口通過聲明CYC_O申請總線的使用權(quán),同時也給出STB_O、CTI_O(111)、WE_O(高電子)、ADlO和DAT-0;經(jīng)過若干時鐘周期等待后,如果遠端從接口給出ACK_I信號,同時給出的SHARE信號為低電子(說明遠端數(shù)據(jù)高速緩存沒有所需要的數(shù)_I據(jù)塊),主接口下一個時鐘周期撤銷CYC_O信號,結(jié)束片內(nèi)總線周期;如果給出ACK_I信號的同時,SHARK-I信號為高電子(說明遠端數(shù)據(jù)高速緩存有所需要的數(shù)據(jù)塊),說明從接口已經(jīng)用DAT-O上的數(shù)據(jù)更新了相應(yīng)的數(shù)據(jù)單元,下一個時鐘周期撤銷CYC_O信號,結(jié)束片內(nèi)總線周期。

單字寫時序見圖3。

塊傳輸總線事務(wù)時序圖2,單字寫總線事務(wù)時序圖3中WAIT表示主接口等待總線仲裁和從接口的應(yīng)答,需若干時鐘周期,最快的情況下只要一個時鐘周期??偩€仲裁:如果兩個數(shù)據(jù)高速緩存的主接口同時請求,由仲裁單元決定哪個主接口可以使用片內(nèi)總線,仲裁的優(yōu)先級算法是輪換法。數(shù)據(jù)高速緩存的主接口,在聲明CYC_O申請總線后,如果AClI一直是低電平無效,但同時該數(shù)據(jù)高速緩存從接口的CYC_I信號有效,說明數(shù)據(jù)高速緩存主接口沒有得到總線使用權(quán),主接口撤銷CYC_O信號,該數(shù)據(jù)高速緩存響應(yīng)從接口的操作,操作完成后,主接口再次聲明CYC_O信號請求總線;相反,如果數(shù)據(jù)高速緩存主接口的ACK_I信號高電平有效,說明得到了總線使用權(quán),可以使用總線。

綜上所述,片內(nèi)總線采用WISHBONE總線地址增量的傳輸方式,與內(nèi)核時鐘同步,最快可以在9個時鐘周期從另一個數(shù)據(jù)高速緩存調(diào)來一個塊(8個宇)的內(nèi)容,可在2個時鐘周期更新遠端數(shù)據(jù)高速緩存的一個相關(guān)單元;數(shù)據(jù)高速緩存實現(xiàn)寫回、寫更新機制,減少了向外部總線寫操作的頻度。該結(jié)構(gòu)具有可擴展性,只要把片內(nèi)WISHBONE·總線的地址線的位數(shù)擴展(用于選擇多個從接口)就可以把多個內(nèi)核集成在該芯片上,協(xié)議無需變化。該種體系結(jié)構(gòu)運行兩個耦合度很低的程序,性能最好。

該方案利用WISHBONE總線,基于監(jiān)聽總線的寫更新一致性協(xié)議,把兩個IP核集成在一塊芯片上,實現(xiàn)了單芯片多處理器結(jié)構(gòu)的FPGA。該體系結(jié)構(gòu)采用開放的片上總線標準,具有公用的主從接口規(guī)范,實現(xiàn)了IP核可移植性,具有設(shè)計可復用的優(yōu)點。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風險,如企業(yè)系統(tǒng)復雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉