【技術實現步驟摘要】
本專利技術屬于神經網絡硬件架構設計領域,具體涉及一種提高卷積計算過程中帶寬利用率的方法。
技術介紹
1、隨著人工智能進入大模型時代,神經網絡模型的參數量、計算量也呈現出爆發式增長,對芯片計算的靈活度和效率也在不斷地地提高。功能豐富的神經網絡處理器往往需要支持多種格式的權重數據,如fp16、bf16、tf32等,這些權重數據一般會以特定的格式存放在內部存儲器中,供神經網絡處理器中的卷積計算單元進行讀取和計算。
2、然而,由于卷積計算單元在進行卷積計算時需通過移動卷積核滑動窗口來計算特征數據,使得當前的神經網絡處理器在進行卷積計算時,卷積計算單元每次讀取某一行數據后,只能使用其中一個數據點,進而導致傳統神經網絡處理器進行卷積計算時寬帶利用率低下,無法滿足大規模數據計算下高計算能效的要求。
技術實現思路
1、為了解決上述
技術介紹
中提到的至少一個問題,本專利技術提出了提出了一種用于cnn計算的脈動陣列重構方法。
2、一種提高卷積計算過程中帶寬利用率的方法,包括步驟:
3、步驟s1,特征圖的參數被輸入進第一級控制單元,第一級控制單元根據輸入的特征圖參數執行第一級控制信號生成過程,并生成第一級控制信號,具體地,第一級控制信號生成過程如下:
4、首先,獲取可連續讀取spm點數的最大值,記為m1,獲取本地緩存可存儲點數最大值,記為m2;然后,執行第一次迭代,比較m1和m2的大小,并取m1和m2中的最小值,記為mi,其中,i表示迭代的次數;接著,根據得
5、步驟s2,第一級控制單元生成的第一級控制信號傳入第一級地址生成單元,第一級地址生成單元根據第一級控制信號來生成對應的第一級地址信息,具體地,第一級地址信息生成過程如下:
6、根據獲取第一級控制信號中的迭代的次數i、mi值,來執行i次迭代過程,每次迭代時定位并獲取特征圖中mi個數據中的第一個數據的地址,記為addr1i,并由此生成對應的地址信息。
7、步驟s3,將第一級地址生成單元生成的第一級地址信息傳入第一級堆棧單元,在第一級堆棧單元中進行緩存,其第一級堆棧單元遵循數據先進先出的原則。
8、步驟s4,緩存后的第一級地址信息傳入第二級控制單元,第二級控制單元接收第一級地址信息,結合第一級控制信號以及特征數據存儲長度l,執行第二級控制信號生成過程,具體地,第二級控制信號生成過程如下:
9、首先,獲取第一級控制信號中的迭代的次數i、mi值;然后,執行i次迭代過程,在每輪迭代中,獲取第一級地址信息中的addr1i以及特征數據存儲長度l;接著,根據addr1i中第一個數據地址,依次對特征圖中mi個數據執行si次卷積計算過程,其中,si的計算公式為:
10、si=mi%l
11、公式中,%為取模計算,l為特征數據存儲長度;
12、最后,重復上述步驟,直到完成i輪數據迭代,此時,特征圖中共執行卷積計算sall次,其中,sall的計算公式為:
13、
14、公式中,si為第i次迭代時執行卷積計算過程的次數。
15、步驟s5,第二級控制單元生成的第二級控制信號傳入第二級地址生成單元,第二級地址生成單元根據第二級控制信號來生成對應的第二級地址信息,具體地,第二級地址信息生成過程如下:
16、根據從第二級控制信號中獲取的卷積計算執行總次數sall來執行sall次迭代過程,
17、每次迭代時根據特征數據存儲長度l定位并獲取特征圖中l個執行卷積計算數據的地址,記為addr2s,并由此生成對應的地址信息。
18、由于卷積計算單元在進行卷積計算時需通過移動卷積核滑動窗口來計算特征數據,使得當前的神經網絡處理器在進行卷積計算時,卷積計算單元每次讀取某一行數據后,只能使用其中一個數據點,進而導致傳統神經網絡處理器進行卷積計算時寬帶利用率低下。本專利技術提出通過兩級控制單元和地址生成單元,能夠在兩級控制單元中對特征圖中的特征數據執行卷積計算,并進一步地根據對應的地址生成單元生成的地址從spm中讀取特征數據,從而將對應的特征數據傳入本地緩存。本專利技術提出的方法能夠一次并行處理2個點的特征數據,當spm一行存儲多個點的特征數據時,同樣可以并行處理多點特征數據,有效地提高了卷積計算過程中數據存取的帶寬利用率,增加了卷積計算的效率。
19、步驟s6,將第二級地址生成單元生成的第二級地址信息傳入第二級堆棧單元,并在第二級堆棧單元中進行緩存;
20、步驟s7,第二級堆棧單元中緩存的第二級地址信息傳入后處理控制單元,由后處理控制單元讀取第二級地址信息,并根據第二級地址信息讀取spm,從而將spm返回的特征數據傳入本地緩存。
21、本專利技術提出了一種提高卷積計算過程中帶寬利用率的方法,與現有的技術相比,具有以下有益效果:
22、本專利技術提出通過兩級控制單元和地址生成單元,能夠在兩級控制單元中對特征圖中的特征數據執行卷積計算,并進一步地根據對應的地址生成單元生成的地址從spm中讀取特征數據,從而將對應的特征數據傳入本地緩存。本專利技術提出的方法能夠一次并行處理2個點的特征數據,當spm一行存儲多個點的特征數據時,同樣可以并行處理多點特征數據,有效地提高了卷積計算過程中數據存取的帶寬利用率,增加了卷積計算的效率。
本文檔來自技高網...【技術保護點】
1.一種提高卷積計算過程中帶寬利用率的方法,其特征在于,包括步驟:
2.根據權利要求1所述的一種提高卷積計算過程中帶寬利用率的方法,其特征在于,步驟S1中所述的執行第一級控制信號生成過程,包括步驟:
3.根據權利要求1所述的一種提高卷積計算過程中帶寬利用率的方法,其特征在于,步驟S2中所述的根據第一級控制信號來生成對應的第一級地址信息,具體過程為:
4.根據權利要求1所述的一種提高卷積計算過程中帶寬利用率的方法,其特征在于,步驟S3和步驟S6中所述的第一級堆棧單元和第二級堆棧單元,遵循數據先進先出的原則。
5.根據權利要求1所述的一種提高卷積計算過程中帶寬利用率的方法,其特征在于,步驟S4中所述的執行第二級控制信號生成過程,包括步驟:
6.根據權利要求1所述的一種提高卷積計算過程中帶寬利用率的方法,其特征在于,步驟S5中所述的根據第二級控制信號來生成對應的第二級地址信息,具體過程為:
【技術特征摘要】
1.一種提高卷積計算過程中帶寬利用率的方法,其特征在于,包括步驟:
2.根據權利要求1所述的一種提高卷積計算過程中帶寬利用率的方法,其特征在于,步驟s1中所述的執行第一級控制信號生成過程,包括步驟:
3.根據權利要求1所述的一種提高卷積計算過程中帶寬利用率的方法,其特征在于,步驟s2中所述的根據第一級控制信號來生成對應的第一級地址信息,具體過程為:
4.根據權利要求1所述的一種提高卷積計算...
【專利技術屬性】
技術研發人員:費寶川,崔云飛,歐陽鵬,
申請(專利權)人:江蘇清微智能科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。