[發明專利]多線程虛擬流水線處理器的線程控制和調用方法及其處理器有效
| 申請號: | 201210195838.1 | 申請日: | 2012-06-13 |
| 公開(公告)號: | CN102750132B | 公開(公告)日: | 2012-10-24 |
| 發明(設計)人: | 梅思行;廖暢;冀謙祥;吳佑偉;羅子揚 | 申請(專利權)人: | 深圳中微電科技有限公司 |
| 主分類號: | G06F9/38 | 分類號: | G06F9/38 |
| 代理公司: | 深圳市科吉華烽知識產權事務所(普通合伙) 44248 | 代理人: | 胡吉科;劉顯揚 |
| 地址: | 518057 廣東省深圳市南山區高*** | 國省代碼: | 廣東;44 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 多線程 虛擬 流水線 處理器 線程 控制 調用 方法 及其 | ||
技術領域
本發明涉及處理器領域,更具體地說,涉及一種多線程虛擬流水線處理器的線程控制和調用方法及其處理器。
背景技術
????對于一般的多核處理器而言,通常其線程的管理都是由CPU線程管理單元分配到其多個內核上運行;在MVP(Multi?Thread?Virtual?Pipeline?,多線程虛擬流水線)處理器中,在一些情況下,將GPU的線程等同為CPU線程處理,其CPU線程和GPU線程都是通過CPU線程管理單元進行調用和分配的。一般來講,這些線程在上述內核上運行時,可能會產生一些新的線程調用,例如,渲染線程;在現有技術中,這些被調用的線程也會由上述CPU線程管理單元進行管理,也就是說,當上述新的線程由運行的線程調用時,被調用的新線程會被加入到上述CPU線程管理單元的運行隊列,并和其他在該隊列中的線程一起等待出現空閑的內核,并在空閑的內核出現且輪到其運行時才能在上述內核上運行。此外,在這些新線程要求硬件加速時,由于其被作為CPU線程對待,在一些情況下、例如,較長的等待時間可能導致出現內核的定時器中斷,此時,需要將運行這些線程(產生新線程調用的線程)運行的內核讓給別的線程使用,這就涉及到復雜的數據的存儲及取出動作,不僅操作復雜,整個線程的完成時間也進一步拖延。所以,這些被調用的新線程在現有的處理方法下,需要等待的時間可能較長、操作較為復雜。
發明內容
本發明要解決的技術問題在于,針對現有技術的上述等待時間較長、操作較為復雜的缺陷,提供一種等待時間較短、操作簡單的多線程虛擬流水線處理器的線程控制和調用方法及其處理器。
本發明解決其技術問題所采用的技術方案是:構造一種多線程虛擬流水線處理器的線程控制和調用方法,包括如下步驟:
????A)將CPU線程運行隊列中的線程直接依次分別分配到多線程虛擬流水線處理器的多路并行硬件線程時隙中運行;
????B)所述運行的線程產生屬于其自身的硬件線程調用指令到硬件線程控制單元;
????C)所述硬件線程控制單元將所述ithread(硬件線程)的調用指令按照接收時間形成其程序隊列,調用并準備所述ithread;
????D)所述ithread按照其在所述硬件線程控制單元中的隊列順序依次在所述多線程虛擬流水線處理器的、空閑的多路并行硬件線程時隙中運行。
在本發明所述的多線程虛擬流水線處理器的線程控制和調用方法中,所述ithread為硬件線程,所述ithread包括圖像引擎、DSP或/和通用圖像處理器中要求硬件加速的線程。
在本發明所述的多線程虛擬流水線處理器的線程控制和調用方法中,所述步驟A)進一步包括如下步驟:
????A1)判斷所述硬件線程控制單元中是否有有效且未執行完的硬件線程,如有,執行步驟A2);否則,執行步驟A3);
????A2)將當前空閑的多路并行硬件線程時隙由CPU線程管理單元中移除,禁止該并行硬件線程時隙的線程定時器中斷,并將該空閑的多路并行硬件線程時隙配置給所述硬件線程控制單元控制;
????A3)等待并返回該并行硬件線程時隙空閑的信息到CPU線程管理單元?
在本發明所述的多線程虛擬流水線處理器的線程控制和調用方法中,所述步驟C)中,進一步包括如下步驟:
????C1)取出所述硬件線程控制單元程序隊列中排列在前的ithread;
????C2)將得到的可執行函數分配到所述空閑的硬件線程時隙運行。
在本發明所述的多線程虛擬流水線處理器的線程控制和調用方法中,所述步驟C)中的程序隊列排列規則為先進先出。
在本發明所述的多線程虛擬流水線處理器的線程控制和調用方法中,還包括如下步驟:
????E)當所述ithread執行完畢或進入等待使其繼續執行的事件發生時,所述ithread退出其運行的硬件線程時隙并使能該時隙的線程計時中斷。?
在本發明所述的多線程虛擬流水線處理器的線程控制和調用方法中,還包括如下步驟:
???F)所述硬件線程控制單元檢測其程序隊列中的ithread的有效狀態是否被清除,如是,清除所述ithread;否則,保持所述ithread。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于深圳中微電科技有限公司,未經深圳中微電科技有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210195838.1/2.html,轉載請聲明來源鉆瓜專利網。
- 上一篇:一種甲醇燃料電池陽極材料催化劑及制備方法
- 下一篇:漏磁探頭測試儀





