鄭澤勇 廣州華言闖網絡科技有限公司
信息技術不斷發(fā)展,各個行業(yè)對相關技術的依賴性越來越強,特別是物聯網領域,對電子技術的需要在快速增加,尤其是微電子技術。同樣地,嵌入式領域對微電子技術的需求也在逐年增加,由此推動了RISC-V指令集架構的發(fā)展,相關研究熱潮漸漲不退?;赗ISC-V指令集架構的處理器相繼被研發(fā)出來,但是其能耗相對來說還是比較高,與當前經濟型社會不甚相符,需要設計出更加節(jié)能并且功能更加強大的微處理器。因此,本文在通過相關學習與研究之后,在原本就具有一定低能耗特性的蜂鳥E203處理器的基礎上,再進行分析與完善,進而提出一種新的低能耗模式設計方案。如此符合當前經濟發(fā)展的要求,有實際的研究意義。
本次研究的基礎是蜂鳥E203,是國內開源的處理器軟核,其核雖然是超低功耗的,但卻是2級流水線,并沒有針對SoC來設計相應的低能耗模式。因此,本設計主要是在蜂鳥E203的低能耗模式的基礎上進行分析與討論。實際上,蜂鳥E203 SOC的時鐘域共有三個主要部分,分別是常開域、主域以及調試域。其中常開域是利用了處理器外部頻率為32.768KHz的低速時鐘,而其中的主域時鐘,則含括了芯片的主體部分,是最重要的部分,其功能主要是為處理器核、SoC部分以及總線部分提供外設。本文之所以選用蜂鳥E203,主要是因為其還沒有SoC對應的超低能耗模式,并且該處理器軟核目前使用的范圍比較廣,故選擇其作為研究基礎。
芯片的運行需要消耗一定能量,也叫功率消耗,簡稱功耗。通常情況下,認為芯片的總功耗包含靜態(tài)功耗部分和設計的動態(tài)功耗部分。其中,靜態(tài)功耗又包含器件的靜態(tài)功耗和設計的靜態(tài)功耗。所謂器件的靜態(tài)功耗,指的是器件在上電時,其數值還沒有設置,此前其晶體管先消耗了部分的功率,稱為功率泄露,這部分泄露的功率之總和就是器件的靜態(tài)功耗。設計的靜態(tài)功耗,指的是器件的數值雖然被設置了,但還沒有進行電路數值切換,這段過程中也會消耗一定的功耗,在設置數值到切換電路數值之間的這段時間內所消耗的電能稱為設計的靜態(tài)功耗。第二大部分中設計的動態(tài)功耗,指的是在用戶進行電路控制時,電路被不斷切換,在這些切換活動的過程中所消耗的平均電能被稱為設計中的動態(tài)功耗。
首先是低頻模式設計,該模式的設計過程中,主要是處理主域部分。具體過程是利用時鐘來控制各個模塊,與外設進行時鐘轉換,主要的模塊有CPU、SoC以及CORE三個頂層模塊,還有微處理控制器模塊和GPIO(General Purpose Input Output)等,與以上這些外設進行時鐘轉換,來實現信號處理。用波形圖來表示低功耗的各種能量時,用freq_redu_ena信號來代表降頻使能,同時以inspect_core_clk作為基準,降頻使能信號達到之時,整體SoC的時鐘頻率會被降低。
另外,用sleep_ena來指代SoC另一模式下的使能信號,也就是睡眠模式下的使能信號。在該模式下的使能信號到達的時候,整體處理器的時鐘會被關閉,但是使能還是存在的。在本設計之中,對睡眠模式下的運行情況進行改善,主要表現為在sleep_ena信號到達的時候,通過時鐘控制模塊,將信號輸出到處理器的SoC、CPU以及CORE三個頂層模塊,接著控制譯碼與執(zhí)行模塊,對兩個模塊中的WFI(Wait For Interruption)指令進行控制,并控制其執(zhí)行,進而實現該模式整體功能的設計。
最終,在停機模式下,其使能信號shut_down_ena和shut_down_wfiena信號先后被輸送到SoC、CPU以及CORE三個頂層模塊之中,這一過程主要是借助時鐘控制模塊來實現。另外,在整體時鐘信號停止的時候,shut_down_ena使能信號就會調用WFI指令,來首先進人睡眠的模式,由于在睡眠模式還是存在多周期的指令,所以時鐘在執(zhí)行階段需要處于常開狀態(tài),然后在一段時間之后利用shut_down_wfi_ena使能信號來通知其關閉,如此可以在很大程度上減少能耗。在停機的模式下,關閉所有時鐘控制模塊所控制的時鐘,隔開外部低頻與高頻時鐘。另外,全部關閉外部低頻模式的常開域時鐘以及高頻模式主域時鐘,關閉之后的時鐘全部進入待命狀態(tài),等待實時計數器或者中斷器的信號,有以上喚醒信號,就全部開始運行,進而繼續(xù)工作。
從設計結果可以知道,在停機模式下,處理器的功耗只是正常情況下的36%,換一個角度來說,在該模式下,功耗減少了64%,減少的幅度非??捎^。另外,在低頻模式下,其功耗也是正常情況下的96%,也就是說,低頻模式的功耗可以節(jié)省4%的能耗。所以,在一定范圍之內,盡可能降低時鐘的頻率,可以在一定程度上減少能耗。同時,在睡眠模式下,其所消耗的能量是正常情況下的92%,相對來說節(jié)省了8%的能耗。由此,認為本次設計具有一定的成效。
本次FPGA板使用的是ARTIX A7板。在進行軟核燒錄及跑LED燈的時候,在該板的正常模式下,電壓為5V,同時電流為0.18A。此刻的功耗不僅要包括該板上的SoC的功耗,還要包括其他處于供電狀態(tài)下的未涉及部分的能耗。在降頻及睡眠兩個模式下,開發(fā)板的整體都是被低頻時鐘控制的,其中處理器核此時的執(zhí)行階段也是處于降頻模式,在如此的雙重低功耗模式的情況下,整個開發(fā)板可以節(jié)省19%的能耗。在處理器的工作量越來越大的情況下,以上兩個模式所帶來的低功耗的占比也會越來越大,這一數據是非??捎^的。
本設計所提出的低能耗設計,主要是為蜂鳥E203處理器再降能耗,側重于對SoC模塊的低能耗設計。如此可以進一步方便擴展該處理器的使用范圍,比如更加適用于低能耗及小面積的場景。如此可以更加廣泛地被運用于物聯網及嵌入式領域。所以,本文的設計具有一定的實際意義。