處理器的處理方法以及處理器的制造方法
【技術領域】
[0001]本發明涉及處理器的處理方法以及處理器,尤其涉及能夠有效降低功耗的處理器的處理方法以及處理器。
【背景技術】
[0002]如今,隨著電子設備的迅速發展,處理器的性能也在隨之提高。除了單核處理器夕卜,還產生了雙核、四核、八核等具有多個內核的處理器。這種多核處理器能夠實現高速運算,但是功耗問題變為更加顯著。尤其對于移動設備而言,在電池容量有限的情況下如何降低功耗,成為現在的主流課題。
[0003]作為解決上述課題的現有技術,已知在處理器的運行過程中,通過對于運行間隙添加nop指令的方式來降低功耗,但由于nop指令本身也需要進行取址、譯碼、執行的過程,因此降低功耗的效果不明顯。在多核處理器中,通常是通過停止沒有任務的內核的方式來降低功耗,但這種控制方式需要由另外一個內核不斷檢索事件的發生,這種檢索操作本身需要一定功耗,也不能達到理想的節能效果。
【發明內容】
[0004]本發明鑒于以上課題完成,其目的在于,提供一種處理器的處理方法以及處理器,在指令間隔期間內停止內核的各種處理操作,僅保留時鐘,在無需停止處理器的同時有效降低處理器的功耗。
[0005]本發明的實施例提供了一種處理器的處理方法,所述處理器具有一個或者多個內核,所述內核包括指令集合、接收模塊以及處理模塊,指令集合配置來存儲包括第一指令在內的多個指令,其中包括:通過所述接收模塊接收操作命令;通過所述處理模塊調取所述指令集合中的指令以執行所述操作命令,當所述調取的指令中包含所述第一指令時,在保持所述內核時鐘繼續運行的同時,在規定時間內停止所述內核中的處理操作。
[0006]優選地,所述處理操作包括取址操作、譯碼操作以及執行操作。
[0007]優選地,所述規定時間包括多個時鐘周期。
[0008]優選地,所述第一指令中包括時鐘參數,并且所述處理模塊包括計數器,當調取的指令中包含所述第一指令時,在保持所述內核時鐘繼續運行的同時,通過所述處理模塊在規定時間內停止所述內核中的處理操作包括:通過所述計數器記錄所述處理模塊停止所述處理操作的時鐘數;當所述調取的指令中包含所述第一指令及所述時鐘參數時,通過所述處理模塊停止所述內核中的處理操作;以及當所述時鐘數到達所述時鐘參數后,通過所述處理模塊恢復所述內核中的處理操作。
[0009]本發明的實施例還提供了一種處理器,具有一個或者多個內核,其中所述內核包括:指令集合,配置來存儲包括第一指令在內的多個指令;接收模塊,配置來接收操作命令;處理模塊,配置來調取所述指令集合中的指令以執行所述操作命令,當調取的指令中包含所述第一指令時,在保持所述內核時鐘繼續運行的同時,通過所述處理模塊在規定時間內停止所述內核中的處理操作。
[0010]優選地,所述處理操作包括取址操作、譯碼操作以及執行操作。
[0011]優選地,所述規定時間包括多個時鐘周期。
[0012]優選地所述第一指令中包括時鐘參數,所述處理模塊包括計數器,配置來記錄所述處理模塊停止所述處理操作的時鐘數,當所述調取的指令中包含所述第一指令及所述時鐘參數時,所述處理模塊停止所述內核中的處理操作,當所述時鐘數到達所述時鐘參數后,所述處理模塊恢復所述內核中的處理操作。
[0013]根據本發明的處理器的處理方法以及處理器,能夠在指令間隔期間內停止內核的各種處理操作,僅保留時鐘,在無需停止處理器的同時有效降低處理器的功耗。
【附圖說明】
[0014]圖1是本發明的一個實施例的處理器的處理方法的流程圖。
[0015]圖2是本發明的另一個實施例的處理器的處理方法的流程圖。
[0016]圖3是本發明的一個實施例的處理器的內核的功能框圖。
【具體實施方式】
[0017]為使本領域的技術人員更好地理解本發明的技術方案,下面結合附圖詳細說明本發明的處理器的處理方法以及處理器的實施例。應該指出,基于本發明中的實施例,本領域普通技術人員在沒有作出創造性勞動前提下所獲得的所有其他實施例,都屬于本發明保護的范圍。
[0018]【處理器的處理方法】
[0019]下面,結合圖1和圖2說明本發明的處理器的處理方法的實施例。
[0020]應用本發明的處理方法的處理器可以是包含一個或者多個內核的處理器。其中,內核包括指令集合、接收模塊以及處理模塊。指令集合中存儲有多個指令。應該注意的是,在本方法中,指令集合還包括等待指令(第一指令),該指令使得在規定時間內停止該內核自身(即執行該等待指令的內核)的處理操作。
[0021]接收模塊用于從應用程序等接收操作命令,并且將該操作命令發送給處理模塊。
[0022]處理模塊接受到操作命令后,調取上述指令集合中與該操作命令對應的指令,并通過執行該指令,實現所期望的處理。
[0023]下面,結合圖1來詳細說明本發明的處理方法的動作。圖1是本發明的一個實施例的處理器的處理方法的流程圖。如圖1所示,首先,當一個應用程序被執行而發出某種操作命令時,內核中的接收模塊接收該操作命令(步驟S11)。然后,接收模塊所接收的操作命令被發送到內核的處理模塊,該處理模塊調取指令集合中與該操作命令相應的指令(步驟S12)。此時,判斷所調取的指令中是否包含等待命令(步驟13),當不包含等待命令時(步驟S13,否)結束動作。當包含等待命令時(步驟S13,是),在規定時間內(例如在100個時鐘周期內)停止該內核的處理操作。內核的處理操作可以包括取址操作,譯碼操作以及執行操作,但內核中的時鐘仍處于繼續運行的狀態。
[0024]通過上述方法,能夠自發性地停止內核中的處理操作,即,在指令間隔期間內停止內核的各種處理操作,僅保留時鐘,因此與現有技術相比,能夠更加有效地降低功耗。
[0025]接下來,結合圖2來詳細說明本發明的另一個實施例的處理方法的動作。在本實施例中,處理模塊還包括計數器,用于記錄處理模塊停止處理操作的時鐘數。圖2是本發明的另一個實施例的處理器的處理方法的流程圖。其中,步驟S21至步驟S23與上述第一個實施例中的步驟Sll至步驟S13相同,因此省略其說明。但在本實施例中,等待指令包括時鐘參數(例如為100),用于指定停止內核的處理操作的時鐘數。當不包含等待命令時(步驟S23,否)結束動作。當包含等待命令時(步驟S23,是),停止該內核的處理操作一個時鐘,同時在遞增計數器的一個計數(步驟S24)。其中,停止的內核的處理操作可以包括取址操作,譯碼操作以及執行操作,但內核中的時鐘仍處于繼續運行的狀態。然后,判斷計數器中的遞增后的時鐘數是否達到了時鐘參數(步驟S25),當時鐘數等于時鐘參數時(步驟S25,是),說明遞增后的時鐘數已經達到了時鐘參數,即已經停止了 100個時鐘的處理操作,因此結束動作。當時鐘數不等于時鐘參數時(步驟S25,否),說明遞增后的時鐘數尚未達到時鐘參數,因此移至步驟S24,