- 相關(guān)推薦
基于片內WISHBONE總線(xiàn)的高速緩存一致性實(shí)現
摘要:基于IP可重用的設計方法,利用WISHBONE總線(xiàn)協(xié)議,把兩個(gè)已成功開(kāi)發(fā)出的具有自主知識產(chǎn)權的THUMP內核在一個(gè)芯片上,實(shí)現了片上多處理器FPGA。開(kāi)發(fā)重點(diǎn)是實(shí)現基于片內WISHBONE總線(xiàn)的高速緩存一致性協(xié)議。清華大學(xué)嵌入式微處理器芯片設計為國家重點(diǎn)863項目,單芯片多處理器設計為項目的一個(gè)延伸。單芯片多處理器是提高處理器性能的有效途徑,具有低耦合度、粗粒度并行性的主要特點(diǎn)。清華大學(xué)已成功開(kāi)發(fā)出具有自主知識產(chǎn)權的MIPS 4Kc架構的32位微處理器--THUMPl07。該處理器具有內核性能高、面積小、功耗低的優(yōu)點(diǎn)。使其經(jīng)過(guò)裁減非常適合作為單芯片多處理器的內核。
本次單芯片多處理器的設計將兩個(gè)Thumpl07內核集成在一個(gè)芯片上,兩個(gè)內核處于完全對等地位,實(shí)現進(jìn)程級的粗粒度并行。由于已經(jīng)具有可以利用的內核,開(kāi)發(fā)的重點(diǎn)就集中在高速緩存(Cache)一致性的實(shí)現上。芯片采用了基于內部總線(xiàn)寫(xiě)更新監聽(tīng)的高速緩存一致性協(xié)議,具有控制邏輯簡(jiǎn)單、可擴展性好的特點(diǎn)。內部總線(xiàn)采用適合片上系統通信、高可配置性的WISHBONE總線(xiàn)。使用該片上總線(xiàn)有效地解決了IP核可移植性、設計復用的問(wèn)題[2l]。
1 WISHBONE總線(xiàn)
WISHBONE最先由Silicore公司提出,現在被移交給OpenCores組織維護。由于其開(kāi)放性,現在已有不少用戶(hù)群體。特別是一些免費的IP核,大多數都采用WISH-BONE標準。該總線(xiàn)結構具有公用的接口規范方便結構化設計,有效地解決了IP核可移植性、設計復用的問(wèn)題。
WISHBON耳總線(xiàn)為半導體內核提供了可配置的互連方式,能夠使各種內核互連起來(lái)形成片上系統;WISH-BONE總線(xiàn)具有很強的兼容性,提高了設計的可重用性;WISHBONE總線(xiàn)的接口獨立于半導體技術(shù),其互連方式既可以支持FPGA設備,也可以支持ASIC設備;WISHBONE總線(xiàn)協(xié)議簡(jiǎn)單、易懂。
WISHBONE總線(xiàn)是一種主/從接口架構的總線(xiàn)技術(shù),如果具有有效的仲裁機制,總線(xiàn)系統可以支持多個(gè)ne/從接口;WISHBONE總線(xiàn)的可配置性主要體現在支持點(diǎn)到點(diǎn)、共享總線(xiàn)、數據流、交叉開(kāi)關(guān)型的互連方式;WISHBONE總線(xiàn)協(xié)議既包含了一種容易使用、可靠性高、易測試、所有總線(xiàn)事務(wù)都可以在一個(gè)時(shí)鐘周期內協(xié)同的同步傳輸協(xié)議,也包含了標準時(shí)鐘周期的異步傳輸協(xié)議;WISHBONE總線(xiàn)的同步傳輸協(xié)議可以工作在一個(gè)大范圍的時(shí)鐘頻率上。這樣WISHBONE總線(xiàn)接口既可以與內核時(shí)鐘周期同步,也可與不同的目標設備同步,時(shí)序都非常簡(jiǎn)單。此外,WISHBONE總線(xiàn)還具有如下特點(diǎn):
·簡(jiǎn)單、緊湊的硬件邏輯接口,需要更少的邏輯門(mén);
·支持流行的單字讀/寫(xiě)、塊讀/寫(xiě)、讀-修改-寫(xiě)的總線(xiàn)協(xié)議;
·可調整的總線(xiàn)和操作數位寬;
·支持大端(big endian)和小端(1ittle endian)兩種數據表示方法;
·握手協(xié)議能夠控制數據傳輸速率;
·支持單周期數據傳輸;
·從接口的部分地址解碼;
·根據系統需要,用戶(hù)可自定義增加接口信號;
·系統包含多個(gè)MASTER接口時(shí),用戶(hù)可以自定義總線(xiàn)仲裁方式與算法。
圖2
2 實(shí)現方案
單芯片多處理器的每個(gè)內核都有分離的16KB指令高速緩存(1Cache)和16KB數據高速緩存(DCache);指令高速緩存和數據高速緩存都采用兩路組相聯(lián)的映射方式;每塊都包含8個(gè)字;采用虛擬地址定位、物理地址比較的尋址方法;替換方式為L(cháng)BU(最近最少使用替換)。
指令高速緩存不涉及一致性問(wèn)題,不多做說(shuō)明。數據高速緩存采用基于監聽(tīng)總線(xiàn)的寫(xiě)更新一致性協(xié)議Dragonl[3]
協(xié)議狀態(tài)說(shuō)明見(jiàn)表1。
表1 協(xié)議狀態(tài)