TWI760718B - 人工神經元及其執行方法 - Google Patents
人工神經元及其執行方法 Download PDFInfo
- Publication number
- TWI760718B TWI760718B TW109109867A TW109109867A TWI760718B TW I760718 B TWI760718 B TW I760718B TW 109109867 A TW109109867 A TW 109109867A TW 109109867 A TW109109867 A TW 109109867A TW I760718 B TWI760718 B TW I760718B
- Authority
- TW
- Taiwan
- Prior art keywords
- current
- currents
- circuit
- artificial neuron
- local
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
-
- G—PHYSICS
- G05—CONTROLLING; REGULATING
- G05F—SYSTEMS FOR REGULATING ELECTRIC OR MAGNETIC VARIABLES
- G05F1/00—Automatic systems in which deviations of an electric quantity from one or more predetermined values are detected at the output of the system and fed back to a device within the system to restore the detected quantity to its predetermined value or values, i.e. retroactive systems
- G05F1/10—Regulating voltage or current
- G05F1/46—Regulating voltage or current wherein the variable actually regulated by the final control device is dc
- G05F1/56—Regulating voltage or current wherein the variable actually regulated by the final control device is dc using semiconductor devices in series with the load as final control devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/04—Architecture, e.g. interconnection topology
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/02—Neural networks
- G06N3/06—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
- G06N3/063—Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
- G06N3/065—Analogue means
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03K—PULSE TECHNIQUE
- H03K17/00—Electronic switching or gating, i.e. not by contact-making and –breaking
- H03K17/16—Modifications for eliminating interference voltages or currents
- H03K17/161—Modifications for eliminating interference voltages or currents in field-effect transistor switches
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Evolutionary Computation (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Computing Systems (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Computational Linguistics (AREA)
- Software Systems (AREA)
- Neurology (AREA)
- Electromagnetism (AREA)
- Radar, Positioning & Navigation (AREA)
- Automation & Control Theory (AREA)
- Analogue/Digital Conversion (AREA)
Abstract
一種人工神經元及其執行方法,其中該方法包括:接收一組輸入電壓;利用電壓電流轉換方式,轉換該組輸入電壓中對應的輸入電壓為對應的一組局部電流;相乘對應的該組局部電流與對應的一組二進位訊號,以建立對應的一組條件反向電流;加總對應的該組條件反向電流至對應的局部電流;加總對應的局部電流至全域電流;及使用負載電路以轉換全域電流為輸出電壓。
Description
本案是關於類神經運算,特別是涉及能減輕損耗的人工神經元及其執行方法。
圖1為習知的人工神經網路100的功能方塊圖。參照圖1,人工神經網路(artificial neural network,ANN)100包括多個層,這些層包括輸入層110、多個隱藏層120、130、…、180、及輸出層190。各個層包括多個神經元。例如,輸入層110包括神經元111、112、113、…、119,隱藏層120包括神經元121、122、123、…、129,隱藏層130包括神經元131、132、133、…、139,隱藏層180包括神經元181、182、183、…、189,輸出層190包括神經元191、192、193、…、199。除了輸入層110中的神經元之外,各個神經元接收來自前一層的神經元的輸入。例如,神經元121接收來自神經元111、112、113、…、119的輸入。除了輸出層190中的神經元之外,每個神經元向後一層的神經元提供輸出。例如,神經元121向神經元131、132、133、…、139提供輸出。除了輸入層110中的神經元之外,神經元的功能可表示為前一層神經元的輸入加權總和的單調函數。
神經元能以數位方式或類比方式來實現。數位神經元能提供高準確度,但因為需要大量使用具有高靜態漏電流的電晶體,而受制於高功耗。另一方面,類比神經元是高功率效能的,但因為製造過程中的各種損耗,其本質在準確度上受到限制。例如,在沒有損耗的情況下,當所有輸入都為零時,神經元的輸出應該為零。然而,由於在製造過程中元件並不匹配,實際上的輸出可能不為零。這導致稱為「偏移(offset)」的損耗。假如能減輕與類比性質相關的損耗,類比神經元對於不要求高準確度的應用是可行的選擇。
因此,期盼有一種人工神經元能減輕類比性質相關的損耗。
依據一些實施例,一種人工神經元,包括:一組增益單元電路、全域加總電路、及負載。該組增益單元電路用以接收一組輸入電壓,並依據一組控制訊號輸出對應的一組局部電流,其中,該組控制訊號中對應的各一個控制訊號包括對應的一組二進位訊號。全域加總電路用以加總該組局部電流為全域電流。負載用以轉換全域電流為輸出電壓。其中,該組增益單元電路中對應的多個增益單元電路。各個增益單元電路包括:一組電壓轉電流轉換器、一組乘法器、及局部加總電路。該組電壓轉電流轉換器用以轉換對應的輸入電壓為對應的一組過渡電流,輸入電壓與增益單元電路相關。該組乘法器用以相乘對應的該組過渡電流與對應的該組二進位訊號,以輸出對應的一組條件反向電流,該組二進位訊號與對應的控制訊號有關,控制訊號與對應的輸入電壓相關。局部加總電路用以加總對應的該組條件反向電流為該組局部電流中對應的局部電流。
依據一些實施例,一種人工神經元的執行方法,包括:接收一組輸入電壓;利用電壓電流轉換方式,轉換該組輸入電壓中對應的輸入電壓為對應的一組局部電流;相乘對應的該組局部電流與對應的一組二進位訊號,以建立對應的一組條件反向電流;加總對應的該組條件反向電流至對應的局部電流;加總對應的局部電流至全域電流;及使用負載電路以轉換全域電流為輸出電壓。
100:人工神經網路
110:輸入層
190:輸出層
120:隱藏層
130:隱藏層
180:隱藏層
111:神經元
112:神經元
113:神經元
119:神經元
121:神經元
122:神經元
123:神經元
129:神經元
131:神經元
132:神經元
133:神經元
139:神經元
181:神經元
182:神經元
183:神經元
189:神經元
191:神經元
192:神經元
193:神經元
199:神經元
200:人工神經元
201:輸出節點
211:增益單元
212:增益單元
213:增益單元
219:增益單元
220:數位轉類比轉換器
230:加總電路
240:校正電路
241:有限狀態機
242:符號偵測電路
243:迫零電路
250:負載
260:偏壓電路
y:輸出訊號
x1:輸入訊號
x2:輸入訊號
x3:輸入訊號
xM:輸入訊號
E1:控制字元
E2:控制字元
E3:控制字元
EM:控制字元
I1:局部電流
I2:局部電流
I3:局部電流
IM:局部電流
IS:全域電流
IC:校正電流
S:邏輯訊號
ZF:迫零指令
D:數位字元
D':偏壓數位字元
Bias:偏壓值
300:增益單元
311:電壓轉電流轉換器
312:電壓轉電流轉換器
313:電壓轉電流轉換器
319:電壓轉電流轉換器
321:乘法器
322:乘法器
323:乘法器
329:乘法器
330:加總電路
Ci,1:電流
Ci,2:電流
Ci,3:電流
Ci,N:電流
Ei,1:控制字元
Ei,2:控制字元
Ei,3:控制字元
Ei,N:控制字元
Ii,1:電流
Ii,2:電流
Ii,3:電流
Ii,N:電流
xi:輸入訊號
Ii:局部電流
xi+:正輸入訊號
xi-:負輸入訊號
Ci,j+:正電流
Ci,j-:負電流
VB:偏壓
IBi:偏壓電流
400:電壓轉電流轉換器
410:電流源
411:N型電晶體
420:差動對
421:N型電晶體
422:N型電晶體
500:乘法器
531:N型電晶體
532:N型電晶體
533:N型電晶體
534:N型電晶體
Ei,j:二進位訊號
Ei,j+:邏輯訊號
Ei,j-:邏輯訊號
Ii,j+:正電流
Ii,j-:負電流
600:負載
601:P型電晶體
602:P型電晶體
Is+:電流
Is-:電流
VDD:電源節點
710:步驟
720:步驟
730:步驟
740:步驟
750:步驟
760:步驟
圖1為習知的人工神經網路的功能方塊圖。
圖2為本案一些實施例之人工神經元的功能方塊圖。
圖3為圖2中的人工神經元的增益單元的功能方塊圖。
圖4為適用於圖3的增益單元的電壓轉電流轉換器的示意圖。
圖5為適用於圖3的增益單元的乘法器的示意圖。
圖6為適用於圖2的人工神經元的負載的示意圖。
圖7為本案一些實施例之人工神經元的執行方法的流程圖。
本案是涉及用於推理應用的類神經運算,其中推理應用是基於深度學習法。儘管在說明書中描述了數個被認為是實施本案的較佳模式,但應理解本案仍可以諸多方式來實現,且不應限定於下述之特定實施例或實現下述特徵的特定方式。在其他情況下,公知細節將不再贅述或討論以避免模糊本案重點。
本技術領域中具有通常知識者應能理解本案中所使用的關於微電子學的術語及基本概念,例如「訊號」、「電壓」、「電流」、「互補式金氧半導體(complementary metal oxide semiconductor,CMOS)」、「P型電晶體(PMOS)」、「N型電晶體(NMOS)」、「電流源(current source)」及「偏壓」。類似上述的術語及基本概念因已為本技術領域中具有通常知識者所熟知,故於此不再詳細解釋。本技術領域中具有通常知識者也能識別P型電晶體及N型電晶體的電路符號,並且能分辨哪一個是「源極」、「閘極」及「汲極」。
在一些實施例中,邏輯訊號可處於一第一邏輯狀態或一第二邏輯狀態,第一邏輯狀態又稱為高準位狀態或高邏輯狀態,以及第二邏輯狀態又稱為低準位狀態或低邏輯狀態。當邏輯訊號高於臨限值時,也就是邏輯訊號為高準位的時候,代表邏輯訊號處於高準位狀態。當邏輯訊號低於臨限值時,也就是邏輯訊號為低準位的時候,代表邏輯訊號處於低準位狀態。其中臨限值又稱為跳脫點(trip point)。各個邏輯訊號都有一個跳脫點,並且兩個邏輯訊號的跳脫點可能不相同。
本案是從工程方面(即,從本技術領域中具有通常知識者的觀點)來進行表述,而非從嚴謹的數學方面來進行表述。例如,「X等於Y」是表示「X與Y之間的差異小於特定的工程/實務允許誤差」,而並非是要求理論上/數學上的絕對相等。「X明顯小於Y」是表示「X與Y之間的比率小於特定的工程/實務允許誤差」。
圖2為本案一些實施例之人工神經元200的功能方塊圖。參照圖2,在一些實施例,人工神經元200接收一組輸入訊號x1、x2、x3、…、
xM,並依據一組控制字元(control word)E1、E2、E3、…、EM以輸出一輸出訊號y。人工神經元200包括:一組增益單元(gain cell)211、212、213、…、219、加總電路230、及負載250。該組增益單元211、212、213、…、219用以接收輸入訊號x1、x2、x3、…、xM,並依據控制字元E1、E2、E3、…、EM以輸出一組局部電流(local current)I1、I2、I3、…、IM。加總電路230依據該組局部電流I1、I2、I3、…、IM的總和,以輸出全域電流(global current)IS至輸出節點201。負載250依據展現轉移特性(transfer characteristics)的單調函數(monotonic function),以響應全域電流IS在輸出節點201處建立輸出訊號y。於數學上,局部電流Ii等於輸入訊號xi與控制字元Ei決定的權重相乘,即:Ii=Wi(Ei)xi (1)
其中,下標i=1、2、3、…、M。Wi(Ei)代表控制字元Ei決定的權重。
在一些實施例,輸出訊號y能以數學模型表示為:y=f(Is) (3)
其中,f(.)代表由負載250提供的單調函數。
其中,Ii,j=Ei,jGjxi (7)
假設:Ci,j≡Gjxi (8)
然後可以將方程式(7)改寫為:Ii,j=Ei,jCi,j (9)
圖3為圖2中的人工神經元200的增益單元211、212、213、…、219的功能方塊圖。參照圖3,在一些實施例,增益單元211、212、213、…、219能以增益單元300實現。增益單元300接收輸入訊號xi,並依據控制字元Ei輸出局部電流Ii,控制字元Ei包括Ei,1、Ei,2、Ei,3、…、Ei,N。增益單元300包括:多個電壓轉電流(voltage-to-current conversion,V2I)單元311、312、313、…、319、多個乘法器321、322、323、…、329、加總電路330。電壓轉電流轉換器311、312、313、…、319分別具有電壓轉電流增益G1、G2、G3、…、GN,並且用以將輸入訊號xi分別轉換為對應的電流Ci,1、Ci,2、Ci,3,…、Ci,N,因此實現方程式(8)。乘法器321、322、323、…、329用以相乘電流Ci,1、Ci,2、Ci,3、…、Ci,N與控制字元Ei,1、Ei,2、Ei,3、…、Ei,N,以分別輸出電流Ii,1、Ii,2、Ii,3、…、
Ii,N,因此滿足方程式(9)。加總電路330用以加總電流Ii,1、Ii,2、Ii,3、…、Ii,N為局部電流Ii,因此滿足方程式(6)。
在一些實施例,使用了差動訊號。其中輸入訊號xi包括正輸入訊號xi+及負輸入訊號xi-,並且輸入訊號xi的值由正輸入訊號xi+與負輸入訊號xi-之間的差表示。同理,電流訊號Ci,j包括正電流Ci,j+及負電流Ci,j-,並且電流訊號Ci,j的值由正電流Ci,j+與負電流Ci,j之間的差表示。並且,以此類推。
圖4為適用於圖3的增益單元300的電壓轉電流轉換器311、312、313、…、319的示意圖。參照圖4,在一些實施例,電壓轉電流轉換器311、312、313、…、319能以電壓轉電流轉換器400實現。電壓轉電流轉換器400包括電流源410、差動對420。電流源410用以輸出偏壓電流IBi。差動對420用以依據偏壓電流IBi將輸入訊號xi轉換為電流訊號Ci,j。電流源410包括N型電晶體411,N型電晶體411由偏壓VB提供偏壓。差動對420包括兩個N型電晶體421、422。N型電晶體421、422用以分別接收正輸入訊號xi+及負輸入訊號xi-,以及輸出正電流Ci,j+及負電流Ci,j-。於此,正電流Ci,j+及負電流Ci,j-用以共同實現電流訊號Ci,j,如先前關於差動訊號的實施例所解釋的。
圖5為適用於圖3的增益單元300的乘法器321、322、323、…、329的示意圖。參照圖5,在一些實施例,乘法器321、322、323、…、329能以乘法器500實現。乘法器500包括四個N型電晶體531、532、533、及534。二進位訊號Ei,j以兩個邏輯訊號Ei,j+、Ei,j-實現,並依據下表編碼:
在一些實施例,N型電晶體531、532形成第一解多工器(demultiplexer),當二進位訊號Ei,j為1時,第一解多工器將正電流Ci,j+轉換為正電流Ii,j+。當二進位訊號Ei,j為-1時,第一解多工器將正電流Ci,j+轉換為負電流Ii,j-。N型電晶體533、534形成第二解多工器,當二進位訊號Ei,j為1時,第二解多工器將負電流Ci,j-轉換為負電流Ii,j-。當二進位訊號Ei,j為-1時,第二解多工器將負電流Ci,j-轉換為正電流Ii,j+。所以,當二進位訊號Ei,j為1時,電流Ii,j等於電流訊號Ci,j,當二進位訊號Ei,j為-1時,電流Ii,j等於負向的電流訊號-Ci,j,因此滿足方程式(9)。換句話說,電流Ii,j為條件反向的電流訊號Ci,j。
參照圖3,在一些實施例,由於電流Ii,1、Ii,2、Ii,3、…、Ii,N都是電流,它們能直接連結在一起形成局部電流Ii,並且隱含地實現加總電路330的功能,而不需要額外的電路。
參照圖2,在一些實施例,由局部電流I1、I2、I3、…、IM都是電流,它們能直接連結在一起形成全域電流IS,並且隱含地實現加總電路230的功能,而不需要額外的電路。
圖6為適用於圖2的人工神經元300的負載250的示意圖。參照圖6,在一些實施例,負載250能以負載600實現。負載600包括兩個P型
電晶體601、602。P型電晶體601、602分別以二極體連接式佈局配置,並分別用以接收電流Is+及電流Is-。於此,「VDD」表示為電源節點。
在一些實施例,人工神經元200具有一些優點。第一,如圖3中的增益單元300,增益單元300的權重Wi(Ei)是可正可負的。因為使用乘法器321、322、323、…、329,乘法器321、322、323、…、329能有條件地實現極性反向函數(polarity inversion function)。這使得人工神經元200的運算更加多用途。第二,電流訊號Ci,j的共模(common mode)值(即,差動訊號的實施例中的正電流Ci,j+及負電流Ci,j-的平均值)是定值,並且與控制字元Ei無關。因此,使用乘法器321、322、323、…、329能分別改變電流Ii,1、Ii,2、Ii,3、…、Ii,N的符號,但是不會改變電流Ii,1、Ii,2、Ii,3、…、Ii,N的共模值,因此不會改變局部電流Ii的共模值。固定的共模值使系統更加健全及一致。第三,適用於校正偏移,解釋如下所列。
參照圖2,在一些實施例中,人工神經元200還包括數位轉類比轉換器(digital-to-analog converter,DAC)220。數位轉類比轉換器220依據數位字元(digital word)D而將校正電流IC輸出至加總電路230。校正電流IC加入為全域電流IS的一部分以校正人工神經元200的偏移。
在一些實施例,當所有輸入訊號x1、x2、x3、…、xM為零時,輸出訊號y也應該為零。但實際上由於增益單元211、212、213、…、219及/或負載250中的元件並不匹配,當所有輸入訊號x1、x2、x3、…、xM都為零時,輸出訊號y可能不為零。數位轉類比轉換器220能用於確保輸出訊號y為零或相當為零。在一些實施例中,增益單元200包括校正電路
240。校正電路240包括有限狀態機(finite state machine,FSM)241、迫零電路243、及符號偵測電路242。在一些實施例中,校正電路240包括偏壓電路(XFER)260。偏壓電路260用以接收迫零指令(zero-forcing command)ZF、數位字元D、及偏壓值Bias,並輸出偏壓數位字元D'。在校正的過程中,有限狀態機241發出迫零指令ZF至偏壓電路260及迫零電路243。當迫零指令ZF被確立(assert)時,偏壓電路260將強制偏壓數位字元D'的輸出值直接等於數位字元D的輸入值。迫零電路243也會迫使所有輸入訊號x1、x2、x3、…、xM維持在零。符號偵測電路242用以偵測輸出訊號y的符號(sign),並且輸出訊號y的符號能由邏輯訊號S表示。如果輸出訊號y為正,表示正偏移,邏輯訊號S將為1,有限狀態機241將減小數位字元D的值以使校正電流IC變更小,並因此使輸出訊號y變更小。如果輸出訊號y為負,則邏輯訊號S將為0,表示負偏移,有限狀態機241將增加數位字元D的值以使校正電流IC變更大,並因此使輸出訊號y變更大。有限狀態機241繼續以上過程,並且數位字元D最終將收斂至最小值,該最小值使輸出訊號y的偏移最小化。當有限狀態機241偵測到收斂,有限狀態機241就結束校正(例如,數位字元D的值在指定的逾時期間內不會變化超過兩個位準)。偏壓電路260輸入的偏壓值Bias是從神經網路圖的數學模型導出的,藉由改變人工神經元200的動態範圍來避免人工神經元200的電路飽和。需特別注意的是,當偏壓電路260輸入的偏壓值Bias設置為零時,偏壓電路260的偏壓數位字元D'的輸出值也將等於數位字元D。在一些實施例中,數位轉類比轉換器220用以依據偏壓數位字元D'以輸出校正電流IC。
在一些實施例,在校正結束之後,有限狀態機241撤回迫零指令ZF,並且迫零電路243停止其對輸入訊號x1、x2、x3、…、xM的迫零動作。此外,能將任何的偏壓值Bias及數位字元D輸入至偏壓電路260以產生偏壓數字字元D'的輸出值。偏壓電路260中使用的轉移函數(transfer function)可以是迫零指令ZF、偏壓及數位字元D的任何函數。在差動訊號的實施例中,輸入訊號xi包括正輸入訊號xi+及負輸入訊號xi-。藉由打開開關以連接正輸入訊號xi+及負輸入訊號xi-,以迫使正輸入訊號xi+及負輸入訊號xi-相等。輸出訊號y的符號包括正向符號y+及負向符號y-,藉由比較器比較正向符號y+及負向符號y-以偵測出輸出訊號y的符號。數位轉類比轉換器220對於本技術領域中具有通常知識者所熟知,故於此不再詳細解釋。
在一些實施例中,控制字元Ei,j的值(對於下標i=1、2、3、…、M,及下標j=1、2、3、…、N)是儲存在儲存裝置中,並且在需要時能被取出。
圖7為本案一些實施例之人工神經元的執行方法的流程圖。參照圖7,在一些實施例,人工神經元的執行方法包括以下步驟:接收一組輸入電壓(步驟710);利用電壓電流轉換方式,轉換該組輸入電壓中對應的輸入電壓為對應的一組局部電流(步驟720);相乘對應的該組局部電流與對應的一組二進位訊號,以建立對應的一組條件反向電流(步驟730);加總對應的該組條件反向電流至對應的局部電流(步驟740);加總對應的局部電流至全域電流(步驟750);以及,使用負載電路以轉換全域電流為輸出電壓(步驟760)。
雖然本案的技術內容已經以較佳實施例揭露如上,然其並非用以限定本案,任何熟習此技藝者,在不脫離本案之精神所作些許之更動與潤飾,皆應涵蓋於本案的範疇內,因此本案之專利保護範圍當視後附之申請專利範圍所界定者為準。
200:人工神經元
201:輸出節點
211:增益單元
212:增益單元
213:增益單元
219:增益單元
220:數位轉類比轉換器
230:加總電路
240:校正電路
241:有限狀態機
242:符號偵測電路
243:迫零電路
250:負載
260:偏壓電路
y:輸出訊號
x1:輸入訊號
x2:輸入訊號
x3:輸入訊號
xM:輸入訊號
E1:控制字元
E2:控制字元
E3:控制字元
EM:控制字元
I1:局部電流
I2:局部電流
I3:局部電流
IM:局部電流
IS:全域電流
IC:校正電流
S:邏輯訊號
ZF:迫零指令
D:數位字元
D':偏壓數位字元
Bias:偏壓值
Claims (10)
- 一種人工神經元,包括:一組增益單元電路,用以接收一組輸入電壓,並依據一組控制訊號輸出對應的一組局部電流,其中,該組控制訊號中對應的各一控制訊號包括對應的一組二進位訊號;一全域加總電路,用以加總該組局部電流為一全域電流;及一負載,用以轉換該全域電流為一輸出電壓;其中,該組增益單元電路中對應的多個增益單元電路,各該增益單元電路包括:一組電壓轉電流轉換器,用以轉換對應的一輸入電壓為對應的一組過渡電流,該輸入電壓與該增益單元電路相關;一組乘法器,用以相乘對應的該組過渡電流與對應的該組二進位訊號,以輸出對應的一組條件反向電流,該組二進位訊號與對應的該控制訊號有關,該控制訊號與對應的該輸入電壓相關;及一局部加總電路,用以加總對應的該組條件反向電流為該組局部電流中對應的一局部電流。
- 如請求項1所述的人工神經元,更包括:一數位轉類比轉換器,用以接收一數位字元並輸出一校正電流。
- 如請求項2所述的人工神經元,其中,該全域加總電路加總該校正電流與該組局部電流至該全域電流。
- 如請求項3所述的人工神經元,更包括:一校正電路,用以輸出該數位字元。
- 如請求項4所述的人工神經元,其中該校正電路包括:一符號偵測電路,用以接收該輸出電壓並輸出一邏輯訊號,該邏輯訊號表示該輸出電壓的符號;一有限狀態機,用以接收一邏輯訊號,並輸出該數位字元及一迫零指令;及一迫零電路,用以依據該迫零指令以迫使該組輸入電壓中的每一該輸入電壓為零。
- 如請求項5所述的人工神經元,其中,於一校正模式,該有限狀態機確立該迫零指令,並依據該邏輯訊號調整該數位字元的值,直到該數位字元的值收斂。
- 如請求項6所述的人工神經元,其中該校正電路更包括:一偏壓電路,用以接收該迫零指令、該數位字元、及一偏壓值,並輸出一偏壓數位字元,其中,當該迫零指令被確立時,該偏壓數位字元等於該數位字元,反之,當該迫零指令未被確立時,該偏壓數位字元為該數位字元與該偏壓值的一轉移函數。
- 一種人工神經元的執行方法,包括:接收一組輸入電壓;利用一電壓電流轉換方式,轉換該組輸入電壓中對應的一輸入電壓為對應的一組局部電流;相乘對應的該組局部電流與對應的一組二進位訊號,以建立對應的一組條件反向電流;加總對應的該組條件反向電流至對應的一局部電流; 加總對應的該些局部電流至一全域電流;及使用一負載電路以轉換該全域電流為一輸出電壓。
- 如請求項8所述的人工神經元的執行方法,更包括:注入一校正電流至該負載電路以校正該輸出電壓的偏移。
- 如請求項9所述的人工神經元的執行方法,更包括:於一校正週期,依據該輸出電壓的一符號,以閉迴路方式調整該校正電流。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/373,745 | 2019-04-03 | ||
US16/373,745 US20200320373A1 (en) | 2019-04-03 | 2019-04-03 | Mixed-signal neurons for neuromorphic computing and method thereof |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202038144A TW202038144A (zh) | 2020-10-16 |
TWI760718B true TWI760718B (zh) | 2022-04-11 |
Family
ID=72662653
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109109867A TWI760718B (zh) | 2019-04-03 | 2020-03-24 | 人工神經元及其執行方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US20200320373A1 (zh) |
CN (1) | CN111796618B (zh) |
TW (1) | TWI760718B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180121796A1 (en) * | 2016-11-03 | 2018-05-03 | Intel Corporation | Flexible neural network accelerator and methods therefor |
TW201830296A (zh) * | 2015-05-21 | 2018-08-16 | 美商谷歌有限責任公司 | 類神經網路處理器 |
TW201833824A (zh) * | 2017-03-03 | 2018-09-16 | 美商慧與發展有限責任合夥企業 | 類比乘法累加器 |
US20180285727A1 (en) * | 2017-04-04 | 2018-10-04 | Hailo Technologies Ltd. | Neural Network Processing Element Incorporating Compute And Local Memory Elements |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2591897A (en) * | 1996-03-27 | 1997-10-17 | Battery & Electrochemical Research Institute, S.A. | Energy device analysis and evaluation |
US7769798B2 (en) * | 2004-04-27 | 2010-08-03 | Amir Banihashemi | Full CMOS min-sum analog iterative decoders |
US7421260B2 (en) * | 2004-10-29 | 2008-09-02 | Broadcom Corporation | Method and system for a second order input intercept point (IIP2) correction |
TWI278186B (en) * | 2005-02-17 | 2007-04-01 | Via Tech Inc | Method and related apparatus for digital/analogue conversion |
FR2983664B1 (fr) * | 2011-12-05 | 2013-12-20 | Commissariat Energie Atomique | Convertisseur analogique-numerique et circuit neuromorphique utilisant un tel convertisseur |
US9209809B1 (en) * | 2014-12-17 | 2015-12-08 | Xilinx, Inc. | Circuits for and methods of controlling output swing in a current-mode logic circuit |
JP2019028569A (ja) * | 2017-07-26 | 2019-02-21 | 株式会社東芝 | メモリシステム、半導体記憶装置及び信号処理システム |
US10502807B2 (en) * | 2017-09-05 | 2019-12-10 | Fluke Corporation | Calibration system for voltage measurement devices |
US10878317B2 (en) * | 2017-09-11 | 2020-12-29 | Samsung Electronics Co., Ltd. | Method and system for performing analog complex vector-matrix multiplication |
US10552510B2 (en) * | 2018-01-11 | 2020-02-04 | Mentium Technologies Inc. | Vector-by-matrix multiplier modules based on non-volatile 2D and 3D memory arrays |
EP3769426A4 (en) * | 2018-03-19 | 2021-12-22 | Mythic, Inc. | SYSTEM AND METHOD FOR CALCULATION OF MIXED SIGNALS |
US10528643B1 (en) * | 2018-08-01 | 2020-01-07 | Sandisk Technologies Llc | Vector-matrix multiplication using non-volatile memory cells |
US11410021B2 (en) * | 2018-10-30 | 2022-08-09 | Intel Corporation | Recurrent neuron implementation based on magneto-electric spin orbit logic |
US11366874B2 (en) * | 2018-11-23 | 2022-06-21 | International Business Machines Corporation | Analog circuit for softmax function |
-
2019
- 2019-04-03 US US16/373,745 patent/US20200320373A1/en active Pending
-
2020
- 2020-03-24 TW TW109109867A patent/TWI760718B/zh active
- 2020-03-27 CN CN202010227086.7A patent/CN111796618B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW201830296A (zh) * | 2015-05-21 | 2018-08-16 | 美商谷歌有限責任公司 | 類神經網路處理器 |
US20180121796A1 (en) * | 2016-11-03 | 2018-05-03 | Intel Corporation | Flexible neural network accelerator and methods therefor |
TW201833824A (zh) * | 2017-03-03 | 2018-09-16 | 美商慧與發展有限責任合夥企業 | 類比乘法累加器 |
US20180285727A1 (en) * | 2017-04-04 | 2018-10-04 | Hailo Technologies Ltd. | Neural Network Processing Element Incorporating Compute And Local Memory Elements |
Also Published As
Publication number | Publication date |
---|---|
CN111796618B (zh) | 2022-07-01 |
TW202038144A (zh) | 2020-10-16 |
CN111796618A (zh) | 2020-10-20 |
US20200320373A1 (en) | 2020-10-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6754645B2 (en) | Voltage-mode pulse width modulation VLSI implementation of neural networks | |
KR102567449B1 (ko) | 뉴로모픽 연산 장치 및 그것의 동작 방법 | |
CN108599771B (zh) | 数模转换电路、方法和显示装置 | |
Rahul et al. | Reduced comparators for low power flash ADC using TSMC018 | |
TWI760718B (zh) | 人工神經元及其執行方法 | |
US20190294957A1 (en) | Arithmetic device and arithmetic method | |
CN111639757B (zh) | 一种基于柔性材料的模拟卷积神经网络 | |
US11100389B2 (en) | Conversion of digital signals into spiking analog signals | |
RU2547225C1 (ru) | Многозначный логический элемент циклического сдвига | |
US20170004398A1 (en) | Boltzmann machine circuit and method for controlling circuit | |
KR20010110971A (ko) | A/d 변환기 및 a/d 변환 방법 | |
Bhatia et al. | Modified Tang and Pun’s Current Comparator and Its Application to Full Flash and Two‐Step Flash Current Mode ADCs | |
US6198421B1 (en) | Neural-flash analog-to-digital converter using weighted current similation | |
Li et al. | A 0.7 v low-power fully programmable gaussian function generator for brain-inspired gaussian correlation associative memory | |
Rahman et al. | A high speed and high resolution VLSI winner-take-all circuit for neural networks and fuzzy systems | |
US20040083193A1 (en) | Expandable on-chip back propagation learning neural network with 4-neuron 16-synapse | |
RU2546078C1 (ru) | МНОГОЗНАЧНЫЙ СУММАТОР ПО МОДУЛЮ k | |
JP6996411B2 (ja) | ニューラルネットワーク回路 | |
Kant et al. | 0.5 V Sinh-domain design of activation functions and neural networks | |
Youssefi et al. | Efficient mixed-signal synapse multipliers for multi-layer feed-forward neural networks | |
WO2018186390A1 (ja) | 半導体装置 | |
Chiblé | OTANPS synapse linear relation multiplier circuit | |
Gafsi et al. | A new efficient-silicon area mdac synapse | |
CHIBLÉ et al. | Analog multiplier for feed forward neural network signal processing | |
US20220309255A1 (en) | Sum-of-products calculation apparatus |