王 宇,祝健楊,何雨旻,劉德宏,陳軍健
(1.貴州電網(wǎng)有限責任公司電力科學研究院,貴州貴陽 550002;2.南方電網(wǎng)數(shù)字電網(wǎng)研究院有限公司,廣東 廣州 510663)
在電網(wǎng)數(shù)字化轉型過程中,海量電力數(shù)據(jù)訪問驗證技術存在芯片功耗大,易發(fā)生數(shù)據(jù)過載且驗證過程損失大的問題。傳統(tǒng)的多核芯片低功耗驗證系統(tǒng)主要包括基于UPF 的低功耗驗證系統(tǒng)和基于MDP的低功耗驗證系統(tǒng)。基于UPF 的低功耗驗證系統(tǒng)在驗證復雜芯片時,需要大量斷言檢查,驗證效率低[1-2]。基于MDP 的低功耗驗證系統(tǒng)對中斷位置需要進行重復分析與驗證,耗時較長[3]。
為了更好地驗證多核芯片的低功耗性能,該文提出了一種基于CNN 的多核芯片低功耗驗證系統(tǒng),分別從硬件和軟件方面對系統(tǒng)進行了設計。
納米級芯片的出現(xiàn),使得芯片的頻率和密度大大增加,多核芯片是普通芯片的升級,通過任務劃分成功實現(xiàn)橫向擴展,功耗是制約多核芯片的重要因素,主要來自漏電消耗和動態(tài)消耗,低功耗、高精度、迷你外型是目前人們對芯片的追求,由于多核芯片低功耗設計的要求逐漸提高,因此人們對低功耗驗證系統(tǒng)也有了更高的要求[4]。
處理器的作用是執(zhí)行處理指令,保證系統(tǒng)工作的快速性和正確性[5-6]。處理器采用ARM720T,它是一種采用集成式32 位的微處理器。ARM720T 微處理器結構如圖1 所示。

圖1 ARM720T微處理器結構
根據(jù)圖1 可知,ARM720T 微處理器外部連接3 個接口,分別是AMBA 總線接口、ITAG 調(diào)試接口和協(xié)調(diào)處理器接口,采用數(shù)據(jù)buffer 和地址buffer 連接,并實時配合控制和時鐘邏輯[7]。
寫緩沖器的作用主要是存放微處理器即將寫入存儲器的所有數(shù)據(jù)。寫緩沖器大大改善了Cache 的計算性能,當處理器有數(shù)據(jù)要替換時,可以直接在寫緩沖器上進行改進,而無需設計存儲器。該文研究的寫緩沖器電路圖如圖2 所示。
觀察圖2可知,寫緩沖器電路內(nèi)部有4個電阻,兩個電容。在該系統(tǒng)中,寫緩沖器先把要寫的數(shù)據(jù)高速寫入緩沖器,再由寫緩沖器低速寫入數(shù)據(jù)存儲器中,寫緩沖器在高速的微處理器和低速的數(shù)據(jù)存儲器之間起到了數(shù)據(jù)緩沖的作用[9-10]。
存儲模塊用于存放系統(tǒng)程序和各類數(shù)據(jù),由存儲器和接口構成。存儲器采用SST89E516RD 單片機,SST89E516RD 單片機工作原理圖如圖3 所示。

圖3 SST89E516RD單片機工作原理圖
根據(jù)圖3 可知,該文研究的單片機通過3 個電阻實現(xiàn)電路接地。單片機的存儲大小為128 Mbit,存儲空間由若干個互相獨立的128 kbyte 擦除塊組成,擦除操作能擦除芯片中預先編輯好的域代碼,存儲器地址塊的空間為0x0000 3000 到0x0000 3FFF,通過單片機將程序存儲空間擴充至64K。此外,該系列產(chǎn)品充分利用了超級Flash 創(chuàng)新技術,存儲塊black 0占用64/32K 存儲空間,存儲塊black 1 占用8K 存儲空間[11-12]。
中斷控制器的作用是調(diào)度系統(tǒng)任務,必要時中斷系統(tǒng)請求。控制模塊的主要部件是EP7312 中斷控制器,包括SDRAM 中斷控制器和外部存儲接口控制器。SDRAM 中斷控制器結構如圖4 所示。

圖4 SDRAM中斷控制器結構
觀察圖4 可知,SDRAM 控制器能支持兩組外部SDRAM,當CPU就緒時其自動啟動自動更新。SDRAM控制器內(nèi)部容量為16 Mbyte,尋址空間為256 byte。根據(jù)A0-A11 和BA0/BA1 信號,找到SDRAM 的具體地址,再依據(jù)控制信號進行操作。外部存儲接口控制器的特點:有6 個可選的編程信號、可編程等待狀態(tài)為0~8、可編程的總線寬度為8~32 位,EP7312 直接與一個LCD 面板相連,面板的大小可調(diào)節(jié),中斷控制器能同時控制兩個FIQ 及兩個IRQ 中斷源產(chǎn)生的中斷[13]。
在進行多核芯片的低功耗驗證時,首先需要整體衡量多核芯片的低功耗程度。交并比可以用于度量相似性,是判斷多核芯片低功耗的關鍵指標,但是,原始交并比有一定的缺點,驗證中一些重要的參數(shù)可能被視為冗余而被錯誤篩選掉。該文在交并比的基礎上作出了改進,利用“集中度”來衡量多核芯片的低功耗程度,“集中度”指的是驗證的中心與低功耗真值的標準距離,更靠近真值的多核芯片,被認為具有更低的功耗[14]。
針對不同的多核芯片,低功耗驗證對所有芯片的操作無差別,但是,由于多核芯片的類型不同,低功耗驗證時不可避免會損失一些性能特點。為了解決這個問題,該文設計了一種基于CNN 的低功耗特征重現(xiàn)模塊。該模塊能夠根據(jù)多核芯片的整體性能和幾何結構特點對低功耗特征進行重新分配,彌補驗證過程中的低功耗特征損失。低功耗特征重現(xiàn)原理如圖5 所示。

圖5 低功耗特征重現(xiàn)原理
如圖5 所示,基于CNN 的低功耗特征重現(xiàn)模塊的本質(zhì)是數(shù)據(jù)的輸入與輸出,模型不需要精確的數(shù)據(jù)表達式就能學習輸入與輸出之間的映射關系。基于CNN 的低功耗特征重現(xiàn)模塊以多核芯片的整體性能為輸入,以低功耗特征為輸出,重現(xiàn)模塊由捕捉長短距離的兩種內(nèi)核組成,對于每個多核芯片的整體特征,利用CNN 輸入特征圖的通道數(shù)目,針對依賴長距離的特征,使用條帶化操作捕捉窄特征,根據(jù)特征分布緊密的情況,通過金字塔模型獲取多核芯片的前后信息。
為了有效降低整個金字塔的相鄰特征層在合并時出現(xiàn)的問題,在每個相鄰特征之間分別插入FPN層,形成RPN 網(wǎng)格結構。PRN 上集合了多核芯片的整體特征,通過低功耗特征重現(xiàn)得到幾何編碼特征圖,利用CNN 對幾何特征圖的像素進行重新分配,得到重現(xiàn)的低功耗特性,根據(jù)低功耗驗證結果判斷多核芯片是否為低功耗芯片。
驗證主系統(tǒng)任務損失函數(shù)的計算公式如式(1)所示:
其中,LC為驗證主系統(tǒng)的任務損失;CE(Gi,Pi)為單核任務損失函數(shù);Gi為真值標簽;Pi為預測標簽。
CE(Gi,Pi)可通過式(2)進行計算:
邊緣任務損失的計算公式如(3)所示:
其中,LR為邊緣任務的損失;smoothL1(di[j])是smoothL1損失函數(shù);di為邊緣預測值與真值的差。驗證系統(tǒng)總的任務損失等于驗證系統(tǒng)主任務損失加邊緣任務損失,這證明驗證系統(tǒng)有效[15-16]。
為了檢測該文設計的基于CNN 的多核芯片低功耗驗證系統(tǒng)的有效性,選用該文提出設計的進行實驗研究。設定實驗參數(shù)如表1 所示。

表1 實驗參數(shù)
根據(jù)上述參數(shù),選用該文設計的驗證系統(tǒng)和文獻[3]、文獻[4]的驗證系統(tǒng)進行實驗對比。
分別比較驗證過程的損失量和平均精度,得到的實驗結果如圖6-8 所示。

圖6 該文系統(tǒng)回歸任務損失量實驗結果

圖8 文獻[4]系統(tǒng)回歸任務損失量實驗結果
根據(jù)圖6-8 可知,迭代次數(shù)共80 次,隨著迭代次數(shù)的增加,回歸任務損失量也在逐漸減小,該文系統(tǒng)的損失值最低,與傳統(tǒng)系統(tǒng)相比,損失值降低了10%以上。該文設計的系統(tǒng)利用骨干網(wǎng)絡進行分析,通過并行調(diào)度技術和任務映射技術,對信息進行層次化分解,確定矩陣類任務,對數(shù)據(jù)進行動態(tài)分析,內(nèi)部設定了監(jiān)視子網(wǎng),能夠很好地實現(xiàn)信息采集和計算,確定動態(tài)流信息,確保在驗證過程中系統(tǒng)的可視化程度和自動化程度都能得以提升。
對系統(tǒng)精度進行檢測,分別比較包圍盒平均精度,得到的實驗結果如表2 所示。

表2 包圍盒平均精度實驗結果
根據(jù)表2 可知,包圍盒平均精度隨著迭代次數(shù)的增加而逐漸提高,該文系統(tǒng)精度最高,當?shù)螖?shù)達到10 次時,文獻[3]提出的系統(tǒng)精度為0.75,文獻[4]提出的系統(tǒng)精度為0.84,而該文系統(tǒng)精度可以達到0.97,平均精度提高了0.15。
該文利用CNN 重現(xiàn)多核芯片的低功耗特性[17-18],介紹了多核芯片低功耗驗證的整體架構,引入的金字塔模型能夠準確獲取多核芯片的全部信息,利用CNN 技術對多核芯片的低功耗特性進行重新分配,避免了驗證過程中低功耗特性的擠壓變形,另外,通過對驗證系統(tǒng)任務損失的計算,驗證了系統(tǒng)的有效性。