[發(fā)明專利]非阻塞協(xié)處理器接口方法和系統(tǒng)有效
| 申請?zhí)枺?/td> | 201210030352.2 | 申請日: | 2012-02-10 |
| 公開(公告)號: | CN103246496A | 公開(公告)日: | 2013-08-14 |
| 發(fā)明(設(shè)計)人: | 沙力;蘭軍強;朱磊 | 申請(專利權(quán))人: | 上海算芯微電子有限公司 |
| 主分類號: | G06F9/38 | 分類號: | G06F9/38;G06F15/167 |
| 代理公司: | 北京戈程知識產(chǎn)權(quán)代理有限公司 11314 | 代理人: | 程偉;孫向民 |
| 地址: | 201203 上海市浦東新*** | 國省代碼: | 上海;31 |
| 權(quán)利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關(guān)鍵詞: | 阻塞 處理器 接口 方法 系統(tǒng) | ||
技術(shù)領(lǐng)域
本發(fā)明提出了一種協(xié)處理器接口方法和系統(tǒng),特別是一種非阻塞式的協(xié)處理器接口方法和系統(tǒng)。
背景技術(shù)
在基于微處理器的系統(tǒng)中,協(xié)處理器通常用于協(xié)助主處理器完成特定操作,對提高系統(tǒng)的工作性能起到重要作用。而協(xié)處理器與主處理器之間的接口方式,決定了主處理器和協(xié)處理器之間的通信延遲,數(shù)據(jù)通量等性能,同時也是系統(tǒng)整體性能的瓶頸之一。
現(xiàn)有的協(xié)處理器接口主要包括阻塞式協(xié)處理器同步接口和寄存器觸發(fā)式協(xié)處理器異步接口。
阻塞式協(xié)處理器同步接口的原理是,當(dāng)需要應(yīng)用協(xié)處理器時,主處理器向協(xié)處理器發(fā)出啟動指令,協(xié)處理器根據(jù)該指令進行操作,在協(xié)處理器操作期間,主處理器的指令流水線停止工作并等待協(xié)處理器的操作結(jié)果,協(xié)處理器完成操作之后向主處理器返回操作結(jié)果,此后主處理器繼續(xù)進行后續(xù)操作。ARM的浮點協(xié)處理器接口就是典型的阻塞式協(xié)處理器同步接口。這種接口的優(yōu)點在于使得主處理器和協(xié)處理器硬件交換信息效率較高。但是,由于這種接口采用了“阻塞方式”,即主處理器和協(xié)處理器處于同一線程,在協(xié)處理器指令尚未完全結(jié)束之前主處理器需停止工作并等待,因此影響了主處理器的運行效率。
寄存器觸發(fā)式協(xié)處理器異步接口的原理是,主處理器將協(xié)處理器的啟動指令映射至外部寄存器,協(xié)處理器讀取外部寄存器中的指令并進行操作,在協(xié)處理器操作期間主處理器繼續(xù)工作,協(xié)處理器完成操作之后,將結(jié)果返回外部寄存器,主處理器通過讀取外部寄存器來獲得該結(jié)果。芯片設(shè)計者自行設(shè)計的專用接口多采用這種異步接口方式。這種接口的優(yōu)點是使得協(xié)處理器和主處理器在不同的進程中工作,主處理器不再等待協(xié)處理器,并且這種接口能夠支持多個協(xié)處理器并行運行,從而提高了系統(tǒng)性能。然而,這種接口的缺點在于依賴于外部寄存器的讀寫,而外部寄存器讀寫訪問通常延遲大,通量低,對寄存器的訪問通常需要幾十甚至上百個時鐘周期,每次通常只能訪問16位或32位。并且對寄存器的訪問本身是“阻塞式”的,也就是說,在訪問寄存器期間,主處理器和協(xié)處理器都停止工作,這使得寄存器的訪問速度和通量成為了主處理器和協(xié)處理器之間通信的瓶頸,因此這種接口不適合主處理器和協(xié)處理器之間有較多交流的應(yīng)用場合。
發(fā)明內(nèi)容
本發(fā)明的目的在于提出一種非阻塞協(xié)處理器接口方法和系統(tǒng),來克服現(xiàn)有的協(xié)處理器接口的上述問題。本發(fā)明的協(xié)處理器接口方法和系統(tǒng)既具有高效率信息交換能力,同時也具有多線程能力和高度并行的優(yōu)點。
根據(jù)本發(fā)明的一個方面,提出了一種非阻塞協(xié)處理器接口方法,其特征在于,該方法包括以下步驟:
由主處理器向協(xié)處理器發(fā)送調(diào)用指令,并且在發(fā)送完成后主處理器繼續(xù)執(zhí)行后續(xù)指令,根據(jù)該調(diào)用指令獲得協(xié)處理器的操作參數(shù);
協(xié)處理器根據(jù)所述操作參數(shù)執(zhí)行操作;
協(xié)處理器在操作完成后將操作結(jié)果存儲在協(xié)處理器內(nèi)部寄存器中;
當(dāng)主處理器需要協(xié)處理器的操作結(jié)果時,由主處理器向協(xié)處理器發(fā)出返回指令,并根據(jù)該返回指令獲得返回參數(shù);
協(xié)處理器根據(jù)所述返回參數(shù)將協(xié)處理器內(nèi)部寄存器中存儲的操作結(jié)果寫入外部寄存器;
主處理器讀取該外部寄存器中的操作結(jié)果。
優(yōu)選地,存在多個協(xié)處理器,并通過包含在調(diào)用指令中的協(xié)處理器ID來區(qū)分各個協(xié)處理器。
優(yōu)選地,主處理器對每個協(xié)處理器發(fā)出的每次調(diào)用指令均需依次發(fā)出返回指令。
優(yōu)選地,每個協(xié)處理器只處理最近一次收到的調(diào)用指令。
優(yōu)選地,協(xié)處理器通過極寬總線同時對多個寄存器進行讀寫。
根據(jù)本發(fā)明的另一方面,提出了一種非阻塞協(xié)處理器接口系統(tǒng),其特征在于,該系統(tǒng)包括:
主處理器,其輸出端連接至少一個參數(shù)寄存器及至少一個協(xié)處理器,該主處理器向協(xié)處理器發(fā)送調(diào)用指令,并且在發(fā)送完成后繼續(xù)執(zhí)行后續(xù)指令,當(dāng)主處理器需要協(xié)處理器的操作結(jié)果時,由主處理器向協(xié)處理器發(fā)出返回指令;
至少一個參數(shù)寄存器,每個參數(shù)寄存器的輸入端分別連接至主處理器和數(shù)據(jù)總線,每個參數(shù)寄存器的輸出端連接至協(xié)處理器,所述參數(shù)寄存器根據(jù)主處理器發(fā)出的調(diào)用指令從所述數(shù)據(jù)總線讀取操作參數(shù)以提供給協(xié)處理器,并根據(jù)主處理器發(fā)出的返回指令從所述數(shù)據(jù)總線讀取返回參數(shù)以提供給協(xié)處理器;
至少一個協(xié)處理器,根據(jù)所述操作參數(shù)執(zhí)行操作,所述協(xié)處理器包括內(nèi)部寄存器,協(xié)處理器在操作完成后將操作結(jié)果存儲在所述內(nèi)部寄存器中;
外部寄存器,協(xié)處理器根據(jù)所述返回參數(shù)將協(xié)處理器內(nèi)部寄存器中存儲的操作結(jié)果寫入該外部寄存器;主處理器讀取該外部寄存器中的操作結(jié)果。
該專利技術(shù)資料僅供研究查看技術(shù)是否侵權(quán)等信息,商用須獲得專利權(quán)人授權(quán)。該專利全部權(quán)利屬于上海算芯微電子有限公司,未經(jīng)上海算芯微電子有限公司許可,擅自商用是侵權(quán)行為。如果您想購買此專利、獲得商業(yè)授權(quán)和技術(shù)合作,請聯(lián)系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210030352.2/2.html,轉(zhuǎn)載請聲明來源鉆瓜專利網(wǎng)。





