[發明專利]一種動態可重構陣列內數據緩存的裝置及方法有效
| 申請號: | 201110322713.6 | 申請日: | 2011-10-21 |
| 公開(公告)號: | CN102402415A | 公開(公告)日: | 2012-04-04 |
| 發明(設計)人: | 劉雷波;朱敏;王延升;朱建峰;楊軍;曹鵬;時龍興;尹首一;魏少軍 | 申請(專利權)人: | 清華大學 |
| 主分類號: | G06F5/06 | 分類號: | G06F5/06;G06F15/78 |
| 代理公司: | 北京潤澤恒知識產權代理有限公司 11319 | 代理人: | 蘇培華 |
| 地址: | 100084*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 動態 可重構 陣列 數據 緩存 裝置 方法 | ||
技術領域
本申請涉及嵌入式系統技術領域,特別是涉及一種動態可重構陣列內數據緩存的裝置及方法。
背景技術
動態可重構處理器是一種新型的處理器構架,其結合了軟件的靈活性和硬件的高效性,和傳統單核微處理器相比,不僅可以改變控制流,還可以改變數據通路,具有高性能、低功耗、靈活性好、擴展性好的優點,尤其適合于處理計算密集型的算法,例如媒體處理、模式識別、基帶處理等。因此動態可重構處理器也成為目前處理器結構的一個重要發展方向,如歐洲微電子中心(IMEC)的ADRES處理器和惠普(HP)的CHESS處理器,前者由緊耦合的超長指令字(Very?Long?Instruction?Word,VLIW)處理器內核和粗顆粒度并行矩陣計算的可重構硬件構成,后者由大量可重構算術計算單元陣列構成。
動態可重構處理器的核心一般為一個二維的可重構算術邏輯單元(ALU)陣列,該結構是并行計算以提高處理能力的基礎。同時,可重構算術邏輯單元間需要擁有較為靈活的互聯結構以保證運算通用性,這種可配置的互聯結構使得動態可重構處理器可以改變數據流,實現了對數據流的高速并行處理,相對于傳統單核、少核處理器大大的提升了計算性能。
由于可重構陣列規模的限制,很容易出現算法的部分結構無法布局進陣列,此時就要求對這類算法流圖進行分割,增加配置次數,而配置之間的數據是相關的,上次配置的計算結果需要先寫入外部存儲器中,下次配置調用這些數據時再從外部存儲器中讀出,外部存儲器的讀寫速度比較慢,從而影響了動態可重構處理器的計算性能。
總之,本領域技術人員需要迫切解決的一個技術問題就是:如何能夠實現動態可重構陣列內數據的緩存,有效提高動態可重構處理器的性能。
發明內容
本申請所要解決的技術問題是提供一種動態可重構陣列內數據緩存的裝置及方法,通過在動態可重構陣列內添加通用寄存器堆,使通用寄存器堆與處理單元陣列全互聯,實現動態可重構陣列內數據的緩存,減少動態可重構陣列與外部存儲器之間的數據讀寫次數,從而提高動態可重構處理器的性能。
為了解決上述問題,本申請公開了一種動態可重構陣列內數據緩存的裝置,包括:
輸入數據緩存器,用于從外部存儲器中讀入數據,并進行緩存,待需要時將數據輸出至處理單元陣列;
處理單元陣列,用于從輸入數據緩存器或通用寄存器堆讀入數據,并對數據進行邏輯運算操作;
通用寄存器堆,用于與處理單元陣列互聯,從所述處理單元陣列讀入數據進行緩存,待需要時將數據輸出至所述處理單元陣列;
輸出數據緩存器,用于緩存經過所述處理單元陣列處理后的結果數據,需要時將數據讀出到外部存儲器。
優選的,所述通用寄存器堆包含多個寄存器堆子單元,將所述寄存器堆子單元分成n行×m列的形式,n和m的規模等同于處理單元陣列內處理單元的規模;
所述寄存器堆子單元用于緩存上一行處理單元輸出的結果數據或緩存上一行中某一寄存器堆子單元中輸出的數據。
優選的,所述處理單元陣列包括:
處理單元,用于完成對輸入數據的邏輯運算操作;
路由單元,用于完成處理單元以及寄存器堆子單元間的數據連接。
優選的,所述處理單元包括:
輸入寄存器,用于寄存當前運算所需要的操作數;
算術邏輯單元,用于執行所述操作數的算術或者邏輯運算;
輸出寄存器,用于寄存當前運算的計算結果。
優選的,所述操作數來自輸入數據緩存器,或者來自上一行處理單元的運算結果,或者來自上一行中寄存器堆子單元中存儲的數據。
另一方面,本申請還公開了一種動態可重構陣列內數據緩存的方法,包括:
輸入數據緩存器從外部存儲器中讀入數據,并進行緩存,待需要時將數據輸出至處理單元陣列;
處理單元陣列從輸入數據緩存器或通用寄存器堆讀入數據,并對數據進行邏輯運算操作;
通用寄存器堆與處理單元陣列互聯,從所述處理單元陣列讀入數據進行緩存,待需要時將數據輸出至所述處理單元陣列;
輸出數據緩存器緩存經過處理單元陣列處理后的結果數據,需要時將數據讀出到外部存儲器。
優選的,所述通用寄存器堆包含多個寄存器堆子單元,將所述寄存器堆子單元分成n行×m列的形式,n和m的規模等同于處理單元陣列內處理單元的規模;
所述寄存器堆子單元緩存上一行處理單元輸出的結果數據或緩存上一行中某一寄存器堆子單元中輸出的數據。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于清華大學,未經清華大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201110322713.6/2.html,轉載請聲明來源鉆瓜專利網。
- 數據顯示系統、數據中繼設備、數據中繼方法、數據系統、接收設備和數據讀取方法
- 數據記錄方法、數據記錄裝置、數據記錄媒體、數據重播方法和數據重播裝置
- 數據發送方法、數據發送系統、數據發送裝置以及數據結構
- 數據顯示系統、數據中繼設備、數據中繼方法及數據系統
- 數據嵌入裝置、數據嵌入方法、數據提取裝置及數據提取方法
- 數據管理裝置、數據編輯裝置、數據閱覽裝置、數據管理方法、數據編輯方法以及數據閱覽方法
- 數據發送和數據接收設備、數據發送和數據接收方法
- 數據發送裝置、數據接收裝置、數據收發系統、數據發送方法、數據接收方法和數據收發方法
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置
- 數據發送方法、數據再現方法、數據發送裝置及數據再現裝置





