[go: up one dir, main page]

TWI740725B - 資料傳遞及合併的方法 - Google Patents

資料傳遞及合併的方法 Download PDF

Info

Publication number
TWI740725B
TWI740725B TW109140782A TW109140782A TWI740725B TW I740725 B TWI740725 B TW I740725B TW 109140782 A TW109140782 A TW 109140782A TW 109140782 A TW109140782 A TW 109140782A TW I740725 B TWI740725 B TW I740725B
Authority
TW
Taiwan
Prior art keywords
block data
data
block
receiving end
present
Prior art date
Application number
TW109140782A
Other languages
English (en)
Other versions
TW202221574A (zh
Inventor
林裕盛
陳維超
陳佩君
Original Assignee
英業達股份有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 英業達股份有限公司 filed Critical 英業達股份有限公司
Priority to TW109140782A priority Critical patent/TWI740725B/zh
Application granted granted Critical
Publication of TWI740725B publication Critical patent/TWI740725B/zh
Publication of TW202221574A publication Critical patent/TW202221574A/zh

Links

Images

Landscapes

  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

一種資料傳遞及合併的方法,適用於彼此通訊連接的發送端及接收端,所述方法包括:發送端階段以及接收端階段。發送端階段包含:傳送第一區塊資料、第二區塊資料及第三區塊資料至接收端,取得第四區塊資料及第五區塊資料及傳送第三區塊資料、第四區塊資料及第五區塊資料至接收端。接收端階段包含接收第一區塊資料、第二區塊資料及第三區塊資料,合併第一區塊資料、第二區塊資料及第三區塊資料以進行一卷積運算,接收第四區塊資料、第五區塊資料,及合併第三區塊資料、第四區塊資料及第五區塊資料以進行另一卷積運算。

Description

資料傳遞及合併的方法
本發明關於卷積神經網路加速器,特別是一種在平鋪式處理的卷積運算中切割資料進行傳遞及合併資料的方法。
卷積神經網路(Convolution Neural Network,CNN) 是目前被認為在電腦視覺及影像處理上最廣泛被使用的機器學習技術之一。卷積神經網路的主要運算是卷積核(kernel)與特徵圖(feature map)之間的卷積,其透過乘積累加(Multiply Accumulate,MAC)運算而消耗大量功率。
比起冗餘運算的能源浪費,如何提升資料存取能力以及減少資料傳輸頻寬在未來的加速器設計中更加重要。一則因為記憶體頻寬成長速度慢於處理單元的運算速度,意味著相同的演算法可能受限於記憶體及其架構;二則因為目前的神經網路多採用小卷積核配合更深的網路,這樣減少了MAC運算但增加了記憶體用量。據統計,隨著神經網路的模型演進,在動態隨機存取記憶體(Dynamic Random Access Memory,DRAM)上存取特徵圖所消耗的功率比起其他運算消耗的功率更加可觀。
目前的CNN通常採用平鋪式處理(tiled processing),也就是處理單元每次從外部儲存器載入一個區塊進行運算。例如:外部儲存器DRAM儲存的資料區塊未經壓縮而直接被載入至靠近處理單元的靜態隨機存取記憶體(Static Random Access Memory,SRAM)作為快取。然而,這種方式在每次切換處理區塊時而存取DRAM時,需要消耗大量的功率並佔用大量的記憶體頻寬。例如:將DRAM儲存的資料切割成多個相同大小的子張量並且壓縮,再將壓縮後的各個子張量傳送至SRAM解壓縮,處理單元從SRAM提取所需的區塊資料進行運算。雖然壓縮區塊資料可以節省資料傳輸時消耗的功率及佔用的頻寬,然而,若子張量切割大小設置過大,可能導致SRAM儲存本次處理時不會使用的資料,造成SRAM空間的浪費。或者為了取得完整的區塊資料,而花費時間解壓縮大檔案,但其中只有少量資料可用。另一方面,若子張量切割大小設置過小,為了以正確的順序解壓縮還原出完整的區塊資料,需要額外佔用頻寬載入大量的指標以獲取每一個壓縮檔所屬的位置。
有鑑於此,本發明提出一種有效率且硬體導向的資料存取方案,適用於CNN的特徵圖。本發明將資料分割為不同大小的子張量(subtensor),並且使用少量的指標,在已壓縮但是隨機存取的格式下儲存這些子張量。這種設計使目前的CNN加速器能夠以平鋪式處理的方式即時獲取和解壓縮子張量。本發明適用於需要對齊、合併的資料存取架構,並且只需要對現有架構進行小幅度的修改即可適用於本發明。
依據本發明一實施例的一種資料傳遞及合併的方法,適用於彼此通訊連接的發送端及接收端,所述方法包括:發送端階段以及接收端階段。發送端階段包含:傳送第一區塊資料、第二區塊資料及第三區塊資料至接收端,取得第四區塊資料及第五區塊資料及傳送第三區塊資料、第四區塊資料及第五區塊資料至接收端。接收端階段包含接收第一區塊資料、第二區塊資料及第三區塊資料,合併第一區塊資料、第二區塊資料及第三區塊資料以進行一卷積運算,接收第四區塊資料、第五區塊資料,及合併第三區塊資料、第四區塊資料及第五區塊資料以進行另一卷積運算。
綜上所述,本發明提出了一種用於輸入特徵圖的有效儲存方案,可減少外部儲存器的頻寬,並且符合現有的CNN加速器架構中的儲存器存取模式。給定特定的CNN層和加速器配置,本發明可將張量資料切割為特定大小的多個子張量。現有的CNN加速器可在少量的硬體修改之下整合本發明。以提升整體效能。
以上之關於本揭露內容之說明及以下之實施方式之說明係用以示範與解釋本發明之精神與原理,並且提供本發明之專利申請範圍更進一步之解釋。
以下在實施方式中詳細敘述本發明之詳細特徵以及特點,其內容足以使任何熟習相關技藝者了解本發明之技術內容並據以實施,且根據本說明書所揭露之內容、申請專利範圍及圖式,任何熟習相關技藝者可輕易地理解本發明相關之構想及特點。以下之實施例係進一步詳細說明本發明之觀點,但非以任何觀點限制本發明之範疇。
本發明適用於任何具有卷積運算的領域。在本發明中,提出一種資料傳遞集合併的方法,其中包含一種輸入特徵圖分割方式,藉此避免存取到部分壓縮的子張量(subtensor),且最小化子張量的數量以避免資料破碎(data fragmentation)。
圖1是本發明一實施例的資料傳遞及合併的方法的流程圖。所述的方法適用於通訊連接的發送端及接收端。發送端例如包含外部儲存器DRAM及處理區塊資料分割的控制電路,接收端例如為包含運算單元及快取SRAM的CNN加速器。
圖2是輸入特徵圖在水平方向被切割為多個資料區塊的示意圖。假設CNN加速器每次的運算係處理一個輸入特徵圖F,則在第
Figure 02_image001
次處理輸入特徵圖
Figure 02_image003
,在第
Figure 02_image005
次處理輸入特徵圖
Figure 02_image007
,且在第
Figure 02_image009
次處理輸入特徵圖
Figure 02_image011
如圖1所示,本發明一實施例的資料傳遞及合併的方法分為發送端階段P1及接收端階段P2。發送端階段P1包含步驟S1、S2及S3。接收端階段P2包含步驟S4、S5、S6及S7。
步驟S1是「 發送端傳送第一指標、第一區塊資料B1、第二區塊資料B2及第三區塊資料B3至接收端」。步驟S1對應於前述的「在第
Figure 02_image005
次處理輸入特徵圖
Figure 02_image007
」。實務上,在發送端傳送第一區塊資料B1、第二區塊資料B2及第三區塊資料B3之前,更包括以壓縮器對第一區塊資料B1、第二區塊資料B2及第三區塊資料B3各自進行壓縮,藉此減少傳輸到接收端時佔用的頻寬。所述的第一指標用於指示第一區塊資料B1的起始位址、第一區塊資料B1的資料大小、第二區塊資料B2的資料大小以及第三區塊資料的資料大小。
步驟S2 是「發送端取得第四區塊資料B4及第五區塊資料B5」。詳言之,發送端的控制電路可按後文述及的配置方式對空間上相鄰的連續三個輸入特徵圖
Figure 02_image003
Figure 02_image007
Figure 02_image011
進行分割而得到第一至第五區塊資料B1~B5。
步驟S3 是「發送端傳送第二指標、第三區塊資料B3、第四區塊資料B4及第五區塊資料B5至接收端」。步驟S3對應於前述的「在第
Figure 02_image009
次處理輸入特徵圖
Figure 02_image011
」。實務上,在發送端傳送第三區塊資料B3、第四區塊資料B4及第五區塊資料B5之前,更包括以壓縮器對第三區塊資料B3、第四區塊資料B4及第五區塊資料B5各自進行壓縮,藉此減少傳輸到接收端時佔用的頻寬。所述的第二指標用於指示第三區塊資料B3的起始位址、第三區塊資料B3的資料大小、第四區塊資料B4的資料大小以及第五區塊資料B5的資料大小。
步驟S4 是「接收端接收第一指標、第一區塊資料、第二區塊資料及第三區塊資料」。如圖1所示,步驟S4在步驟S1完成後執行。
步驟S5 是「接收端依據第一指標合併第一區塊資料、第二區塊資料及第三區塊資料以進行一卷積運算」。實務上,在進行卷積運算之前,更包括以解壓縮器解壓縮第一區塊資料B1、第二區塊資料B2及第三區塊資料B3。這三個區塊資料B1~B3被解壓縮完成後被儲存在SRAM,處理單元可依據第一指標取得第一區塊資料B1在SRAM中的第一起始位址,並依據第一起始位址及第一區塊資料B1的資料大小計算出第二區塊資料B2在SRAM中的第二起始位址,再依據第二起始位址及第二區塊B2的資料大小計算出第三區塊資料B3在SRAM中的第三起始位址。
步驟S6 是「接收端接收第二指標、第四區塊資料、第五區塊資料」。如圖1所示,步驟S6在步驟S3完成後執行。
步驟S7是「接收端依據第二指標合併第三區塊資料、第四區塊資料及第五區塊資料以進行另一卷積運算」。實務上,在進行卷積運算之前,更包括以解壓縮器解壓縮第三區塊資料B3、第四區塊資料B4及第五區塊資料B5。這三個區塊資料B3~B5被解壓縮完成後被儲存在SRAM,處理單元可依據第二指標取得第三區塊資料B3在SRAM中的第三起始位址,並依據第三起始位址及第三區塊資料B3的資料大小計算出第四區塊資料B4在SRAM中的第四起始位址,再依據第四起始位址及第四區塊B4的資料大小計算出第五區塊資料B5在SRAM中的第五起始位址。
如圖2所示,本發明提出一種切割輸入特徵圖
Figure 02_image003
Figure 02_image007
Figure 02_image011
的方式,以下透過兩個實施例進一步詳述切割配置的實現方式。第一實施例以實際數字說明本發明的運作方式,並在第二實施例以代數形式說明本發明一般化的實現方式。
圖3是第一實施例的示意圖。假設CNN架構如下述:卷積核大小為
Figure 02_image013
且輸出特徵圖大小為
Figure 02_image015
區塊,並採用0填充(zero-padding)以維持輸出特徵圖與輸出入特徵圖大小相同。
在第一次處理時,從輸入特徵圖左上角提取
Figure 02_image017
的輸入區塊。如圖1所示,水平方向的左邊界為
Figure 02_image019
,右邊界為
Figure 02_image021
在第二次處理時,從第一次輸入區塊右邊界的位置向右方步進8個單位以提取下一個輸入區塊。
由於在CNN處理的同一層中,步進長度為常數,因此每次所提取的輸入區塊的左邊界及右邊界可組成兩個等差數列。左邊界以
Figure 02_image023
表示,右邊界以
Figure 02_image025
表示。本發明提出的配置方式即為這兩個邊界形成的分割。換言之,本發明提出的配置方式為聯集
Figure 02_image027
,在此範例中,
Figure 02_image029
因為
Figure 02_image031
)且
Figure 02_image033
,而且上述的配置方式通用於水平方向及垂直方向的切割,所以每個輸入特徵圖可切分為下列四種形狀的子張量:
Figure 02_image035
Figure 02_image037
Figure 02_image039
Figure 02_image039
。圖4是輸入資料的切割示意圖。
Figure 02_image041
的輸入區塊可由一個
Figure 02_image035
、兩個
Figure 02_image037
、兩個
Figure 02_image039
及四個
Figure 02_image039
所組成。
此外,由於光環(halo)資料的存取只限於二維平面,因此本發明提出的分割配置不需要實現在通道的維度。
以下敘述第二實施例。在此實施例中,CNN每一層的運算被一般化,並以下列參數表示:
卷積核大小以
Figure 02_image043
表示。因為卷積核大小通常為奇數。
跨距以
Figure 02_image045
表示。跨距是各自和兩個卷積窗作卷積的兩個元素之間的距離。當
Figure 02_image047
時,輸出特徵圖大小小於輸入特徵圖大小且計算成本下降。
擴張間距以
Figure 02_image049
表示。在擴張卷積(dilated convolution)時,原始卷積核的兩個相鄰元素按此擴張間距擴張為卷積窗。
輸出特徵圖的大小以
Figure 02_image051
表示。
基於上述的參數表示,圖5展示了一般卷積採用本發明的一種配置方式
Figure 02_image053
的範例。
當計算輸出特徵圖中最左邊的輸出元素時,卷積窗從輸入特徵圖最左方開始提取,假設此輸入特徵圖最左方的邊界為
Figure 02_image055
,則最右方的邊界為
Figure 02_image057
。兩個相鄰子張量之間的偏移量為
Figure 02_image059
。而本發明定義的配置方式如下:
Figure 02_image061
Figure 02_image063
圖6展示了擴張卷積採用本發明的另一種配置方式
Figure 02_image065
的範例。
擴張卷積參照上述的運算方式可得出另一配置方式如下:
Figure 02_image067
從本發明上述提出的配置方式中可得知:若
Figure 02_image069
整除
Figure 02_image071
,則符合
Figure 02_image073
的配置同樣也符合
Figure 02_image075
舉AlexNet CONV1為例,其
Figure 02_image077
,對應於本發明的一配置
Figure 02_image079
。因此,AlexNet CONV1也適用於本發明另一配置
Figure 02_image081
承上所述,在所有的卷積層中選擇單一N值可簡化硬體實作。在本發明一實施例中,N=8是一個大多數情況適用的設定值。
給定本發明的一個切割配置方式所切割出的多個子張量需要被儲存在一個資料結構中,並滿足記憶體對齊的需求,以最大化壓縮帶來的益處。因為子張量壓縮後的大小不同,本發明額外儲存用於代表這些子張量的指標。
圖7展示本發明如何儲存子張量以及指標。在設置指標時,對於鄰近的子張量,如圖7中子張量1、2、3及4,僅使用指標A1指示區塊1的起始位址以及使用指標SZ1~SZ4分別指示這4個子張量各自被壓縮後的資料大小。因此,存取這些子張量時分兩步驟,首先從指標A1取得起始位址,然後分別從指標SZ1~SZ8獲取每個子張量的大小並累加至起始位址以獲得每個子張量的實際偏移量。
由於本發明的指標並不需要對應至每一個子張量,因此可以有效地減少指標的總大小。
本發明提出的一種硬體導向(hardware-friendly)的資料分割方式,可用於輸入特徵圖的儲存、存取和壓縮。本發明將輸入特徵圖切割為多個不同大小,藉此避免接收端提取到不會用到的子張量而浪費快取空間。本發明只需要少量的指標即可記錄每個壓縮後的子張量的位置。應用僅需對現有的CNN加速器架構進行微幅修改,因為本發明幾乎適用於所有的壓縮演算法,並且只需要改變現有的特徵圖切割方式。本發明可節省大量的記憶體傳輸頻寬。
綜上所述,本發明提出了一種用於稀疏特徵圖的有效儲存方案,可減少外部儲存器的頻寬,並且符合現代CNN加速器架構中的儲存器存取模式。給定特定的CNN層和加速器配置,本發明可將張量資料切割為特定大小的多個子張量。現有的CNN加速器可在少量的硬體修改之下整合本發明。以提升整體效能。
雖然本發明以前述之實施例揭露如上,然其並非用以限定本發明。在不脫離本發明之精神和範圍內,所為之更動與潤飾,均屬本發明之專利保護範圍。關於本發明所界定之保護範圍請參考所附之申請專利範圍。
P1:發送端階段 P2:接收端階段 S1~S7:步驟 A1:子張量1的起始位址 A5:子張量5的起始位址 SZ1~SZ8:子張量1~8的資料大小
圖1是本發明一實施例的資料傳遞及合併的方法的流程圖; 圖2是特徵圖在水平方向被切割為多個資料區塊的示意圖; 圖3是第一實施例的示意圖; 圖4是輸入資料的切割示意圖; 圖5展示一般卷積採用本發明的一種配置方式的範例; 圖6展示了擴張卷積採用本發明的另一種配置方式的範例;以及 圖7繪示在本發明中,子張量及指標儲存的一種範例。
P1:發送端階段
P2:接收端階段
S1~S7:步驟

Claims (3)

  1. 一種資料傳遞及合併的方法,適用於通訊連接的一發送端及一接收端,所述方法包括: 一發送端階段,包含: 以該發送端傳送一第一區塊資料、一第二區塊資料及一第三區塊資料至該接收端; 以該發送端取得一第四區塊資料及一第五區塊資料;及 以該發送端傳送該第三區塊資料、該第四區塊資料及該第五區塊資料至該接收端;以及 一接收端階段,包含: 以該接收端接收該第一區塊資料、該第二區塊資料及該第三區塊資料; 以該接收端合併該第一區塊資料、該第二區塊資料及該第三區塊資料以進行一卷積運算; 以該接收端接收該第四區塊資料、該第五區塊資料;及 以該接收端合併該第三區塊資料、該第四區塊資料及該第五區塊資料以進行另一卷積運算。
  2. 如請求項1所述資料傳遞及合併的方法,在以該發送端傳送該第一區塊資料、該第二區塊資料及該第三區塊資料至該接收端時,更包括:以該發送端傳送一第一指標至該接收端,其中該第一指標用以指示該第一區塊資料之起始位址,該第一資料區塊之資料大小、該第二資料區塊之資料大小及該第三資料區塊之資料大小;以及 在以該發送端傳送該第三區塊資料、該第四區塊資料及該第五區塊資料至該接收端時,更包括:以該發送端傳送一第二指標至該接收端,其中該第二指標用以指示該第三區塊資料之起始位址,該第三資料區塊之資料大小、該第四資料區塊之資料大小及該第五資料區塊之資料大小。
  3. 如請求項1所述資料傳遞及合併的方法, 在以該發送端傳送該第一區塊資料、該第二區塊資料及該第三區塊資料至該接收端之前,更包括:以一壓縮器壓縮該第一區塊資料、該第二區塊資料及該第三區塊資料; 在以該發送端傳送該第三區塊資料、該第四區塊資料及該第五區塊資料至該接收端之前,更包括:以該壓縮器壓縮該第三區塊資料、該第四區塊資料及該第五區塊資; 在以該接收端合併該第一區塊資料、該第二區塊資料及該第三區塊資料以進行該卷積運算之前,更包括:以一解壓縮器解壓縮該第一區塊資料、該第二區塊資料及該第三區塊資料;以及 在以該接收端合併該第四區塊資料、該第五區塊資料及該第六區塊資料以進行該卷積運算之前,更包括:以該解壓縮器解壓縮該第四區塊資料、該第五區塊資料及該第六區塊資料。
TW109140782A 2020-11-20 2020-11-20 資料傳遞及合併的方法 TWI740725B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
TW109140782A TWI740725B (zh) 2020-11-20 2020-11-20 資料傳遞及合併的方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW109140782A TWI740725B (zh) 2020-11-20 2020-11-20 資料傳遞及合併的方法

Publications (2)

Publication Number Publication Date
TWI740725B true TWI740725B (zh) 2021-09-21
TW202221574A TW202221574A (zh) 2022-06-01

Family

ID=78777795

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109140782A TWI740725B (zh) 2020-11-20 2020-11-20 資料傳遞及合併的方法

Country Status (1)

Country Link
TW (1) TWI740725B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12229413B2 (en) 2022-07-26 2025-02-18 Silicon Motion, Inc. Method and apparatus for performing data fragmentation reduction control of memory device in predetermined communications architecture with aid of fragmentation information detection, and associated computer-readable medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9646243B1 (en) * 2016-09-12 2017-05-09 International Business Machines Corporation Convolutional neural networks using resistive processing unit array
WO2019109795A1 (zh) * 2017-12-06 2019-06-13 腾讯科技(深圳)有限公司 卷积运算处理方法及相关产品
TWI687063B (zh) * 2019-01-04 2020-03-01 財團法人工業技術研究院 基於深度學習與通道狀態資訊之通訊系統及編解碼方法
TWI708209B (zh) * 2018-12-11 2020-10-21 財團法人工業技術研究院 使用卷積神經網絡模型的物件偵測方法及物件偵測設備
TWI708193B (zh) * 2018-08-21 2020-10-21 創鑫智慧股份有限公司 應用於卷積神經網路之記憶體適應性處理方法及其系統

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9646243B1 (en) * 2016-09-12 2017-05-09 International Business Machines Corporation Convolutional neural networks using resistive processing unit array
WO2019109795A1 (zh) * 2017-12-06 2019-06-13 腾讯科技(深圳)有限公司 卷积运算处理方法及相关产品
TWI708193B (zh) * 2018-08-21 2020-10-21 創鑫智慧股份有限公司 應用於卷積神經網路之記憶體適應性處理方法及其系統
TWI708209B (zh) * 2018-12-11 2020-10-21 財團法人工業技術研究院 使用卷積神經網絡模型的物件偵測方法及物件偵測設備
TWI687063B (zh) * 2019-01-04 2020-03-01 財團法人工業技術研究院 基於深度學習與通道狀態資訊之通訊系統及編解碼方法

Also Published As

Publication number Publication date
TW202221574A (zh) 2022-06-01

Similar Documents

Publication Publication Date Title
KR101687081B1 (ko) 단채널 컨볼루션 레이어를 위한 처리 방법 및 장치, 및 다채널 컨볼루션 레이어를 위한 처리 방법 및 장치
US11522673B2 (en) Method and device for blockchain full sharding based on a P2P storage network and a multi-layer architecture
CN109165728B (zh) 一种卷积神经网络的基本计算单元及计算方法
US11615607B2 (en) Convolution calculation method, convolution calculation apparatus, and terminal device
US10127281B2 (en) Dynamic hash table size estimation during database aggregation processing
US10817178B2 (en) Compressing and compacting memory on a memory device wherein compressed memory pages are organized by size
DE102020133861A1 (de) Normalisierte-wahrscheinlichkeit-bestimmung für zeichenkodierung
US20220253668A1 (en) Data processing method and device, storage medium and electronic device
WO2020177250A1 (zh) 一种数据读取系统和方法
WO2020177251A1 (zh) 一种面向多核图像处理卷积神经网络的数据读取方法
TWI740725B (zh) 資料傳遞及合併的方法
CN103106144B (zh) 一种内存索引压缩方法和装置
CN112966807B (zh) 基于存储资源受限fpga的卷积神经网络实现方法
CN111914285B (zh) 一种基于差分隐私的地理分布式图计算方法及系统
CN104952088A (zh) 一种对显示数据进行压缩和解压缩的方法
CN111865326B (zh) 数据压缩方法、装置、设备及存储介质
EP4579473A1 (en) Data compression method, apparatus, computing device, and storage system
CN107423425B (zh) 一种对k/v格式的数据快速存储和查询方法
CN114519166B (zh) 数据传递及合并的方法
CN105095278A (zh) 一种文件压缩方法及装置
CN109710502B (zh) 日志传输方法、装置及存储介质
CN113497627A (zh) 一种数据压缩和解压缩方法、装置及系统
CN104516821B (zh) 存储器管理方法及存储器管理装置
CN111241204B (zh) 一种梯度数据的同步方法、装置、设备及存储介质
CN110414663A (zh) 神经网络的卷积实现方法及相关产品