TWI780719B - 非揮發性記憶體系統 - Google Patents
非揮發性記憶體系統 Download PDFInfo
- Publication number
- TWI780719B TWI780719B TW110118463A TW110118463A TWI780719B TW I780719 B TWI780719 B TW I780719B TW 110118463 A TW110118463 A TW 110118463A TW 110118463 A TW110118463 A TW 110118463A TW I780719 B TWI780719 B TW I780719B
- Authority
- TW
- Taiwan
- Prior art keywords
- volatile memory
- memory system
- voltage
- adaptive bias
- source
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C11/00—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
- G11C11/54—Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using elements simulating biological cells, e.g. neuron
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/08—Address circuits; Decoders; Word-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/04—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS
- G11C16/0408—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors
- G11C16/0425—Erasable programmable read-only memories electrically programmable using variable threshold transistors, e.g. FAMOS comprising cells containing floating gate transistors comprising cells containing a merged floating gate and select transistor
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/24—Bit-line control circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C16/00—Erasable programmable read-only memories
- G11C16/02—Erasable programmable read-only memories electrically programmable
- G11C16/06—Auxiliary circuits, e.g. for writing into memory
- G11C16/30—Power supply circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2216/00—Indexing scheme relating to G11C16/00 and subgroups, for features not directly covered by these groups
- G11C2216/02—Structural aspects of erasable programmable read-only memories
- G11C2216/04—Nonvolatile memory cell provided with a separate control gate for erasing the cells, i.e. erase gate, independent of the normal read control gate
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C7/00—Arrangements for writing information into, or reading information out from, a digital store
- G11C7/12—Bit line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, equalising circuits, for bit lines
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C8/00—Arrangements for selecting an address in a digital store
- G11C8/08—Word line control circuits, e.g. drivers, boosters, pull-up circuits, pull-down circuits, precharging circuits, for word lines
Landscapes
- Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Health & Medical Sciences (AREA)
- Life Sciences & Earth Sciences (AREA)
- Biomedical Technology (AREA)
- General Health & Medical Sciences (AREA)
- Molecular Biology (AREA)
- Neurology (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Non-Volatile Memory (AREA)
- Read Only Memory (AREA)
- Debugging And Monitoring (AREA)
Abstract
揭示類比神經記憶體陣列之眾多具體例。某些具體例包含一種用於提供額外偏壓至陣列輸入線以補償接地在0V以上浮動之情況的適應性偏壓解碼器。舉例而言,此可用於使一讀取操作、程式化操作或抹除操作的電壓降最小化,同時維持該操作的精確性。
Description
[優先權主張]本申請案主張2020年7月6日申請且標題為「Adaptive Bias Decoder for Analog Neural Memory Array in Artificial Neural Network With Source Line Pulldown Mechanism」之美國臨時專利申請案第63/048,470號及2021年1月4日申請且標題為「Adaptive Bias Decoder for Analog Neural Memory Array in Artificial Neural Network」之美國專利申請案第17/140,924號的優先權。
揭示類比神經記憶體陣列之眾多具體例。
人工神經網路模擬生物神經網路(動物之中樞神經系統,特定而言為大腦)且用以估計或估算可取決於大量輸入且通常未知之功能。人工神經網路通常包括彼此交換訊息之互連「神經元」的層。
圖1繪示人工神經網路,其中圓圈表示神經元之輸入或層。連接(被稱作突觸)由箭頭表示,且具有可基於經驗進行調節之數值權重。此使得人工神經網路適應於輸入且能夠學習。通常,人工神經網路包括多個輸入之層。通常存在一或多個中間神經元層及提供神經網路之輸出的輸出神經元層。各層級處之神經元基於自突觸所接收之資料而個別地或共同地作出決策。
用於高效能資訊處理之人工神經網路之發展中的主要挑戰之一在於缺乏充分的硬體技術。事實上,實際人工神經網路依賴於極大量突觸,從而實現神經元之間的高度連接性,亦即,極高計算並行性。原則上,此複雜性可利用數位超級電腦或專門圖形處理單元叢集來達成。然而,除高成本之外,與生物網絡相比,此等方法亦受中等能效困擾,主要因為生物網絡執行低精確度類比計算,所以其消耗少得多的能量。CMOS類比電路已用於人工神經網路,但鑒於大量神經元及突觸,大多數CMOS實作突觸已過於龐大。
申請人先前在公開為美國專利公開案2017/0337466之美國專利申請案第15/594,439號中揭示了一種人工(類比)神經網路,其利用一或多個非揮發性記憶體陣列作為突觸,該美國專利公開案以引用之方式併入。非揮發性記憶體陣列作為類比神經形態記憶體操作。如本文中所使用,術語神經形態意謂實作神經系統之模型的電路系統。類比神經形態記憶體包括:第一複數個突觸,其經組態以接收第一複數個輸入且自第一複數個輸入產生第一複數個輸出;及第一複數個神經元,其經組態以接收第一複數個輸出。第一複數個突觸包括複數個記憶體單元,其中該等記憶體單元中之每一者包括:形成於半導體基板中之間隔開的源極區及汲極區,其中通道區在源極區與汲極區之間延伸;浮動閘極,其安置於通道區之第一部分上方且與該第一部分絕緣;以及非浮動閘極,其安置於通道區之第二部分上方且與該第二部分絕緣。複數個記憶體單元中之每一者經組態以儲存對應於浮動閘極上之電子數目的權重值。該複數個記憶體單元經組態以將第一複數個輸入乘以所儲存權重值以產生第一複數個輸出。以此方式配置之記憶體單元陣列可被稱作向量矩陣乘法(vector by matrix multiplication;VMM)陣列。
現將論述可用於VMM中之不同非揮發性記憶體單元的實施例。
非揮發性記憶體單元
各種類型之已知非揮發性記憶體單元可用於VMM陣列中。舉例而言,以引用之方式併入本文中的美國專利5,029,130 (「'130專利」)揭示了一種分離閘式非揮發性記憶體單元陣列,其為一種類型之快閃記憶體單元。此記憶體單元210展示於圖2中。每一記憶體單元210包括形成於半導體基板12中之源極區14及汲極區16,其中通道區18在源極區與汲極區之間。浮動閘極20形成於通道區18之第一部分上方並與該第一部分絕緣(且控制該第一部分之導電性),且形成於源極區14之一部分上方。字線端子22(其通常耦接至字線)具有:第一部分,其裝設於通道區18之第二部分上方且與該第二部分絕緣(且控制該第二部分之導電性);及第二部分,其在浮動閘極20上及上方延伸。浮動閘極20及字線端子22藉由閘極氧化物與基板12絕緣。位元線端子24耦接至汲極區16。
記憶體單元210藉由將高的正電壓置於字線端子22上來抹除(其中電子自浮動閘極移除),此使得浮動閘極20上之電子經由富爾-諾罕(Fowler-Nordheim)穿隧自浮動閘極20穿過中間絕緣物穿隧至字線端子22。
記憶體單元210藉由將正電壓置於字線端子22上且將正電壓置於源極區14上來程式化(其中電子置於浮動閘極上)。電子電流將自汲極區16朝向源極區14(源極線端子)流動。當電子到達字線端子22與浮動閘極20之間的間隙時,該等電子將加速且被給予能量(加熱)。經加熱電子中之一些將由於來自浮動閘極20之吸引靜電力而穿過閘極氧化物注入至浮動閘極20上。
記憶體單元210係藉由將正讀取電壓置於汲極區16及字線端子22上來讀取(此接通通道區18之在字線端子下方的部分)。若浮動閘極20帶正電(亦即,電子經抹除),則通道區18之在浮動閘極20下的部分亦被接通,且電流將跨越通道區18流動,此被感測為經抹除或「1」狀態。若浮動閘極20帶負電(亦即,用電子程式化),則通道區之在浮動閘極20下方的部分大部分或完全斷開,且電流將不流過(或將只有極少電流流過)通道區18,此被感測為經程式化或「0」狀態。
表1描繪可應用於記憶體單元110之端子以用於執行讀取、抹除及程式化操作的典型電壓範圍:
表1:圖2之快閃記憶體單元210的操作
「讀取1」為其中單元電流在位元線上輸出之讀取模式。「讀取2」為其中單元電流在源極線端子上輸出之讀取模式。
| WL | BL | SL | |
| 讀取1 | 0.5-3V | 0.1-2V | 0V |
| 讀取2 | 0.5-3V | 0-2V | 2-0.1V |
| 抹除 | ~11-13V | 0V | 0V |
| 程式化 | 1-2V | 1-3μA | 9-10V |
圖3展示記憶體單元310,其類似於圖2之記憶體單元210,其中添加了控制閘極(CG)端子28。控制閘極端子28在程式化時經偏壓於高電壓(例如,10V)下;在抹除時經偏壓於低或負電壓(例如,0V/-8V)下;在讀取時經偏壓於低或中間範圍(例如,0 V/2.5V)下。其他端子以類似於圖2之方式偏壓。
圖4描繪四閘極記憶體單元410,其包含源極區14、汲極區16、在通道區18之第一部分上方的浮動閘極20、在通道區18之第二部分上方的選擇閘極22(典型地耦接至字線WL)、在浮動閘極20上方之控制閘極28,及在源極區14上方之抹除閘極30。此組態描述於美國專利6,747,310中,其出於所有目的以引用之方式併入本文中。此處,除浮動閘極20之外,所有閘極皆為非浮動閘極,意謂該等閘極電連接或可電連接至電壓源。程式化係藉由來自通道區18之經加熱電子將自身注入至浮動閘極20上來執行。抹除係藉由電子自浮動閘極20穿隧至抹除閘極30來執行。
表2描繪可施加至記憶體單元410之端子以用於執行讀取、抹除及程式化操作的典型電壓範圍:
表2:圖4之快閃記憶體單元410的操作
「讀取1」為其中單元電流在位元線上輸出之讀取模式。「讀取2」為其中單元電流在源極線端子上輸出之讀取模式。
| WL/SG | BL | CG | EG | SL | |
| 讀取1 | 0.5-2V | 0.1-2V | 0-2.6V | 0-2.6V | 0V |
| 讀取2 | 0.5-2V | 0-2V | 0-2.6V | 0-2.6V | 2-0.1V |
| 抹除 | -0.5V/0V | 0V | 0V/-8V | 8-12V | 0V |
| 程式化 | 1V | 1μA | 8-11V | 4.5-9V | 4.5-5V |
圖5展示記憶體單元510,其類似於圖4之記憶體單元410,除了記憶體單元510不含有抹除閘極EG端子之外。抹除係藉由將基板18偏壓至高電壓及將控制閘極CG端子28偏壓至低或負電壓來執行。替代地,抹除係藉由將字線端子22偏壓至正電壓及將控制閘極端子28偏壓至負電壓來執行。程式化及讀取類似於圖4之程式化及讀取。
圖6描繪三閘極記憶體單元610,其為另一類型之快閃記憶體單元。記憶體單元610與圖4之記憶體單元410相同,除了記憶體單元610不具有分開的控制閘極端子之外。抹除操作(其中藉由使用抹除閘極端子進行抹除)及讀取操作類似於圖4的抹除操作及讀取操作,除了未施加控制閘極偏壓之外。程式化操作亦在無控制閘極偏壓之情況下進行,且結果,在程式化操作期間較高電壓必須施加在源極線端子上以補償控制閘極偏壓之缺乏。
表3描繪可應用於記憶體單元610之端子以用於執行讀取、抹除及程式化操作的典型電壓範圍:
表3:圖6之快閃記憶體單元610的操作
「讀取1」為其中單元電流在位元線上輸出之讀取模式。「讀取2」為其中單元電流在源極線端子上輸出之讀取模式。
| WL/SG | BL | EG | SL | |||
| 讀取1 | 0.5-2.2V | 0.1-2V | 0-2.6V | 0V | ||
| 讀取2 | 0.5-2.2V | 0-2V | 0-2.6V | 2-0.1V | ||
| 抹除 | -0.5V/0V | 0V | 11.5V | 0V | ||
| 程式化 | 1V | 2-3μA | 4.5V | 7-9V | ||
圖7描繪堆疊閘極記憶體單元710,其為另一類型之快閃記憶體單元。除了浮動閘極20在整個通道區18上方延伸,且控制閘極端子22(其在此處將耦接至字線)在浮動閘極20上方延伸之外,記憶體單元710類似於圖2的記憶體單元210,該浮動閘極由絕緣層(未展示)分離。使用自通道18至緊鄰汲極區16之通道區中之浮動閘極20的熱電子注入來執行程式化,且使用自浮動閘極20至基板12之富爾-諾罕電子穿隧來執行抹除。讀取操作以與先前針對記憶體單元210所描繪之方式類似的方式操作。
表4描繪可應用於記憶體單元710之端子及基板12以用於執行讀取、抹除及程式化操作之典型電壓範圍:
表4:圖7之快閃記憶體單元710的操作
| CG | BL | SL | 基板 | |
| 讀取1 | 0-5V | 0.1-2V | 0-2V | 0V |
| 讀取2 | 0.5-2V | 0-2V | 2-0.1V | 0V |
| 抹除 | -8to-10V/0V | FLT | FLT | 8-10V/15-20V |
| 程式化 | 8-12V | 3-5V/0V | 0V/3-5V | 0V |
「讀取1」為其中單元電流在位元線上輸出之讀取模式。「讀取2」為其中單元電流在源極線端子上輸出之讀取模式。視情況,在包含記憶體單元210、310、410、510、610或710之列及行的陣列中,源極線可耦接至一列記憶體單元或相鄰兩列記憶體單元。亦即,源極線端子可由鄰近列的記憶體單元共用。
圖8描繪雙分離閘極記憶體單元810。記憶體單元810包含安置在基板12上方且與該基板絕緣之浮動閘極(FG)20、安置在浮動閘極20上方且與該浮動閘極絕緣之控制閘極28(CG)、鄰近於浮動閘極20及控制閘極28而安置且與該浮動閘極及該控制閘極絕緣且安置在基板12上方且與該基板絕緣之抹除閘極30(EG),其中抹除閘極產生為具有T形,使得控制閘極CG之頂部拐角面向T形抹除閘極之內部拐角以改良抹除效率,且基板中之汲極區16(DR)鄰近於浮動閘極20(藉由連接至汲極擴散區16(DR)之位元線接點24(BL))。記憶體單元形成為記憶體單元對(左側上之A及右側上之B),其共用共同抹除閘極30。此單元設計與上文參考圖2至圖7所論述之記憶體單元之不同之處至少在於其對於每一記憶體單元缺少抹除閘極EG下方之源極區、缺少選擇閘極(亦被稱作字線),且缺少通道區。替代地,單個連續通道區18在兩個記憶體單元下延伸(亦即,自一個記憶體單元之汲極區16延伸至另一記憶體單元之汲極區16)。為了讀取或程式化一個記憶體單元,其他記憶體單元之控制閘極28經由耦接至其間的浮動閘極20之電壓而升高至足夠電壓以接通基礎通道區部分(例如,為了讀取或程式化單元A,FGB上之電壓經由自CGB耦接之電壓而升高以接通FGB下方之通道區部分)。使用自浮動閘極20至抹除閘極30之富爾-諾罕電子穿隧來執行抹除。使用自通道18至浮動閘極20之熱電子注入來執行程式化,此在表5中指示為程式化1。替代地,使用自抹除閘極30至浮動閘極20之富爾-諾罕電子穿隧來執行程式化,此在表5中指示為程式化2。替代地,使用自通道18至浮動閘極20之富爾-諾罕電子穿隧來執行程式化,在此情況下,條件類似於程式化2,除了基板被偏壓在低電壓或負電壓下而抹除閘極被偏壓在低正電壓下之外。
表5描繪可應用於記憶體單元810之端子以用於執行讀取、抹除及程式化操作的典型電壓範圍:
表5:圖8之快閃記憶體單元810的操作
| CGA | BLA | EG | CGB | BLB | |
| 讀取 | 1.5-4V | 0.1-0.8V | 2.5V | 1.5-4V | 0 |
| 抹除 | 0V至-8V | 0V | 8 V至11.5V | 0V至4V(Vcginhe) | 0V |
| 程式化1 | 10.5V | 4.5V | 1.5V | 4 | Iprog |
| 程式化2 | 4V至11.5V | 0V | -4V至-11.5V | 0V至-2V(Vcginhp) | 0V |
為了利用包含上文在人工神經網路中所描繪之非揮發性記憶體單元類型中之一者的記憶體陣列,進行兩個修改。首先,線經組態以使得每一記憶體單元可個別地程式化、抹除及讀取而不會不利地影響陣列中之其他記憶體單元之記憶體狀態,如下文進一步解釋。其次,提供記憶體單元之連續(類比)程式化。
特定而言,陣列中之每一記憶體單元的記憶體狀態(亦即,浮動閘極上之電荷)可連續地自完全抹除狀態改變為完全程式化狀態,其方式為獨立的且對其他記憶體單元之干擾最小。在另一具體例中,陣列中之每一記憶體單元之記憶體狀態(亦即,浮動閘極上之電荷)可連續地自完全程式化狀態改變為完全抹除狀態,且反之亦然,其方式為獨立的且對其他記憶體單元之干擾最小。此意謂單元儲存為類比的,或至少可儲存許多離散值(諸如16或64個不同值)中之一者,此允許對記憶體陣列中之所有單元進行極精確且個別的調校,且此使得記憶體陣列對於儲存神經網路之突觸權重及對該等突觸權重進行精細調校調整係理想的。
本文中所描述之方法及手段可應用於其他非揮發性記憶體技術,諸如但不限於FINFET分離閘式快閃或堆疊閘式快閃記憶體、NAND快閃、氧化矽-氮化物-氧化物-矽(SONOS,氮化物中之電荷捕捉)、金屬-氧化物-氮化物-氧化物-矽(MONOS,氮化物中之金屬電荷捕捉)、電阻式ram(ReRAM)、相變記憶體(PCM)、磁性ram(MRAM)、鐵電ram (FeRAM)、雙層級或多層級一次性可程式化(OTP)及相關電子ram (CeRAM)。本文中所描述之方法及手段可應用於用於神經網路之揮發性記憶體技術,諸如但不限於SRAM、DRAM及其他揮發性突觸單元。
採用非揮發性記憶體單元陣列之神經網路
圖9概念性地繪示利用本具體例之非揮發性記憶體陣列的神經網路之非限制性實施例。此實施例將非揮發性記憶體陣列神經網路用於面部辨識應用,但任何其他適當應用皆可使用基於非揮發性記憶體陣列之神經網路來實作。
S0為輸入層,對於此實施例,該輸入層為具有5位元精確度之32
32像素RGB影像(亦即,三個32
32像素陣列,每種色彩R、G及B一個陣列,每一像素為5位元精確度)。自輸入層S0行進至層C1之突觸CB1在一些情況下施加不同權重集合且在其他情況下共用權重,且用3
3像素重疊濾波器(核心)掃描輸入影像,使濾波器移位1個像素(或多於1個像素,如由模型指定)。特定言之,影像(亦即,稱作濾波器或核心)之3
3部分中之9個像素的值被提供至突觸CB1,其中使此9個輸入值乘以適當權重,且在對彼乘法之輸出求和之後,判定單一輸出值且由第一突觸CB1提供該單一輸出值以用於產生特徵圖層C1中之一者的像素。3
3濾波器接著在輸入層S0內向右移位一個像素(亦即,在右側上增加三個像素之行,且在左側上丟棄三個像素之行),藉此將此新定位濾波器中之9個像素值提供至突觸CB1,其中使該等像素值乘以相同權重,且藉由相聯結突觸判定第二單一輸出值。此程序針對所有三個色彩且針對所有位元(精確度值)繼續,直至3
3濾波器跨越輸入層S0之整個32
32像素影像掃描。接著使用不同權重集合重複該程序以產生C1之不同特徵圖,直至層C1之所有特徵圖已經計算為止。
在層C1中,在本發明實施例中,存在16個特徵圖,每一特徵圖具有30
30個像素。每一像素為自使輸入與核心相乘提取之新特徵像素,且因此每一特徵圖為二維陣列,且因此在此實施例中,層C1構成二維陣列之16個層(應謹記,本文中所提及之層及陣列為邏輯關係,未必為實體關係,亦即,陣列未必定向於實體二維陣列中)。層C1中之16個特徵圖中之每一者由施加至濾波器掃描之十六個不同突觸權重集合中之一者產生。
C1特徵圖可皆針對同一影像特徵之不同態樣,諸如邊界識別。舉例而言,第一圖(使用第一權重集合產生,對於用以產生此第一圖之所有掃描為共用的)可識別圓形邊緣,第二圖(使用不同於第一權重集合之第二權重集合產生)可識別矩形邊緣,或某些特徵之縱橫比等。在自層C1進入層S1之前應用啟動函數P1(池化(pooling)),其池化來自每一特徵圖中之連續非重疊2×2區的值。池化函數之目的為使附近位置達到平均數(或亦可使用最大函數),以例如降低邊緣位置之相依性且在進入下一級之前縮減資料大小。在層S1處,存在16個15×15特徵圖(亦即,各自具有15×15個像素之十六個不同陣列)。自層S1行進至層C2之突觸CB2用4×4濾波器掃描S1中之圖,其中濾波器移位1個像素。在層C2處,存在22個12×12特徵圖。在自層C2進入層S2之前應用啟動函數P2(池化),其池化來自每一特徵圖中之連續非重疊2×2區的值。在層S2處,存在22個6×6特徵圖。在自層S2進入層C3之突觸CB3處應用啟動函數(池化),其中層C3中之每個神經元經由CB3之各別突觸連接至層S2中之每個圖。在層C3處,存在64個神經元。自層C3進入輸出層S3之突觸CB4將C3完全連接至S3,亦即,層C3中之每一神經元連接至層S3中之每一神經元。S3處之輸出包括10個神經元,其中最高輸出神經元判定類別。此輸出可例如指示原始影像之內容之識別或分類。
每一突觸層係使用非揮發性記憶體單元之陣列或陣列之一部分來實作。
圖10為可用於彼目的之系統的方塊圖。VMM系統32包括非揮發性記憶體單元,且用作一個層與下一層之間的突觸(諸如圖6中之CB1、CB2、CB3及CB4)。特定言之,VMM系統32包含以列及行配置之非揮發性記憶體單元之VMM陣列33、抹除閘極及字線閘極解碼器34、控制閘極解碼器35、位元線解碼器36及源極線解碼器37,其解碼非揮發性記憶體單元陣列33之各別輸入。VMM陣列33之輸入可來自抹除閘極及字線閘極解碼器34或來自控制閘極解碼器35。源極線解碼器37在此實施例中亦解碼VMM陣列33之輸出。替代地,位元線解碼器36可解碼VMM陣列33之輸出。
VMM陣列33用於兩個目的。首先,其儲存將由VMM系統32使用之權重。其次,VMM陣列33有效地將輸入乘以儲存於VMM陣列33中之權重,且按輸出線(源極線或位元線)將結果相加以產生輸出,該輸出將為下一層之輸入或最終層之輸入。藉由執行乘法及加法函數,VMM陣列33消除對分開的乘法及加法邏輯電路之需要,且由於其就地記憶體計算亦為功率高效的。
VMM陣列33的輸出供應至差分求和器(諸如求和運算放大器或求和電流鏡)38,其對VMM陣列33之輸出進行求和以產生用於彼卷積之單個值。差分求和器38經配置以執行正權重輸入與負權重輸入之求和以輸出單個值。
接著將差分求和器38之經求和輸出值供應至啟動函數電路39,該電路對輸出進行整流。啟動函數電路39可提供S型(sigmoid)、tanh、ReLU函數,或任何其他非線性函數。啟動函數電路39之經整流輸出值變成下一層(例如,圖9中之C1)之特徵圖之元素,且接著應用於下一突觸以產生下一特徵圖層或最終層。因此,在此實施例中,VMM陣列33構成複數個突觸(其自前一神經元層或自諸如影像資料庫之輸入層接收其輸入),且求和器38及啟動函數電路39構成複數個神經元。
圖10中之VMM系統32的輸入(WLx、EGx、CGx且視情況,BLx及SLx)可為類比位準、二進位位準、數位脈衝(在此情況下,可能需要脈衝至類比轉換器PAC以將脈衝轉換至適當的輸入類比位準)或數位位元(在此情況下,提供DAC以將數位位元轉換至適當的輸入類比位準),且輸出可為類比位準(例如,電流、電壓或電荷)、二進位位準、數位脈衝或數位位元(在此情況下,提供輸出ADC以將輸出類比位準轉換成數位位元)。
圖11為描繪VMM系統32(此處標記為VMM系統32a、32b、32c、32d及32e)之眾多層之使用的方塊圖。如圖11中所展示,表示為Inputx之輸入由數位至類比轉換器31自數位轉換至類比,且被提供至輸入VMM系統32a。經轉換之類比輸入可為電壓或電流。第一層之輸入D/A轉換可藉由使用函數或查找表(LUT)來進行,該函數或LUT將輸入Inputx映射至適用於輸入VMM系統32a之矩陣乘法器的類比位準。輸入轉換亦可由類比至類比(A/A)轉換器進行以將外部類比輸入轉換為輸入VMM系統32a之經映射類比輸入。輸入轉換亦可由數位至數位脈衝(D/P)轉換器進行以將外部數位輸入轉換為輸入VMM系統32a之一或多個經映射數位脈衝。
由輸入VMM系統32a產生之輸出被提供為下一VMM系統(隱藏層級1) 32b之輸入,該下一VMM系統又產生被提供為下一VMM系統(隱藏層級2) 32c之輸入的輸出,等等。VMM系統32之各種層充當卷積神經網路(convolutional neural network;CNN)之突觸及神經元的不同層。每一VMM系統32a、32b、32c、32d及32e可為包含各別非揮發性記憶體陣列之獨立實體系統,或多個VMM系統可利用同一實體非揮發性記憶體陣列之不同部分,或多個VMM系統可利用同一實體非揮發性記憶體陣列之重疊部分。每一VMM系統32a、32b、32c、32d及32e亦可針對其陣列或神經元之各種部分進行時間多工。圖11中所展示之實施例含有五個層(32a、32b、32c、32d、32e):一個輸入層(32a)、兩個隱藏層(32b、32c)及兩個完全連接層(32d、32e)。一般熟悉本技藝者將瞭解,此僅為例示性的,且系統替代地可包含多於兩個隱藏層及多於兩個完全連接層。
VMM陣列
圖12描繪神經元VMM陣列1200,其尤其適合於如圖3中所展示之記憶體單元310,且用作輸入層與下一層之間的突觸及神經元部分。VMM陣列1200包含非揮發性記憶體單元之記憶體陣列1201及非揮發性參考記憶體單元之參考陣列1202(在陣列之頂部處)。替代地,另一參考陣列可置放於底部處。
在VMM陣列1200中,控制閘極線(諸如,控制閘極線1203)在豎直方向上延行(因此,列方向上之參考陣列1202與控制閘極線1203正交),且抹除閘極線(諸如,抹除閘極線1204)在水平方向上延行。此處,VMM陣列1200之輸入提供於控制閘極線(CG0、CG1、CG2、CG3)上,且VMM陣列1200之輸出出現於源極線(SL0、SL1)上。在一個具體例中,僅使用偶數列,且在另一具體例中,僅使用奇數列。置放於每一源極線(分別為SL0、SL1)上之電流對來自連接至彼特定源極線之記憶體單元的所有電流執行求和函數。
如本文中針對神經網路所描繪,VMM陣列1200之非揮發性記憶體單元,亦即,VMM陣列1200之快閃記憶體較佳經組態以在亞臨限區中操作。
本文中所描述之非揮發性參考記憶體單元及非揮發性記憶體單元在弱反轉(weak inversion)中經偏壓:
Ids=Io*e
(Vg-Vth)/nVt=w*Io*e
(Vg)/nVt,
其中w=e
(-Vth)/nVt其中Ids為汲極至源極電流;Vg為記憶體單元上之閘極電壓;Vth為記憶體單元之臨限電壓;Vt為熱電壓=k*T/q,其中k為波茲曼常數,T為以克耳文為單位之溫度,並且q為電子電荷;n為斜率因數=1+ (Cdep/Cox),其中Cdep=耗盡層之電容並且Cox為閘極氧化物層之電容;Io為等於臨限電壓之閘極電壓下之記憶體單元電流,Io係與(Wt/L)*u*Cox*(n-1)*Vt
2成比例,其中u為記憶體單元之載流子遷移率,且Wt及L分別為寬度及長度。
對於使用記憶體單元(諸如參考記憶體單元或周邊記憶體單元)或電晶體之I至V對數轉換器將輸入電流Ids轉換成輸入電壓,Vg:
Vg=n*Vt*log [Ids/wp*Io]
此處,wp為參考或周邊記憶體單元之w。
對於使用記憶體單元(諸如參考記憶體單元或周邊記憶體單元)或電晶體之I至V對數轉換器將輸入電流Ids轉換成輸入電壓,Vg:
Vg=n*Vt*log [Ids/wp*Io]
此處,wp為參考或周邊記憶體單元之w。
對於用作向量矩陣乘法器VMM陣列之記憶體陣列,輸出電流為:
Iout=wa*Io*e
(Vg)/nVt,namely
Iout=(wa/wp)*Iin =W*Iin
W=e
(Vthp-Vtha)/nVtIin=wp*Io*e
(Vg)/nVt此處,wa=記憶體陣列中之每一記憶體單元之W。
字線或控制閘極可用作用於輸入電壓之記憶體單元之輸入。
替代地,本文中所描述之VMM陣列的非揮發性記憶體單元可經組態以在線性區中操作:
Ids=beta*(Vgs-Vth)*Vds;beta=u*Cox*Wt/L,
Wα(Vgs-Vth),
此意謂線性區中之權重W係與(Vgs-Vth)成比例
字線或控制閘極或位元線或源極線可用作在線性區中操作之記憶體單元的輸入。位元線或源極線可用作記憶體單元之輸出。
對於I至V線性轉換器,記憶體單元(諸如,參考記憶體單元或周邊記憶體單元)或在線性區中操作之電晶體或電阻器可用以將輸入/輸出電流線性地轉換成輸入/輸出電壓。
替代地,本文中所描述之VMM陣列的記憶體單元可經組態以在飽和區中操作:
Ids=½*beta*(Vgs-Vth)
2;beta=u*Cox*Wt/L
Wα(Vgs-Vth)
2,此意謂權重W與(Vgs-Vth)
2成比例
字線、控制閘極或抹除閘極可用作在飽和區中操作之記憶體單元的輸入。位元線或源極線可用作輸出神經元之輸出。
替代地,對於神經網路之每一層或多層,本文中所描述之VMM陣列的記憶體單元可用於所有區或其組合(亞臨限區、線性區或飽和區)中。
圖13描繪神經元VMM陣列1300,其尤其適於如圖2中所示之記憶體單元210,且用作輸入層與下一層之間的突觸。VMM陣列1300包含非揮發性記憶體單元之記憶體陣列1303、第一非揮發性參考記憶體單元之參考陣列1301及第二非揮發性參考記憶體單元之參考陣列1302。配置於陣列之行方向上的參考陣列1301及1302用以將流動至端子BLR0、BLR1、BLR2及BLR3中之電流輸入轉換成電壓輸入WL0、WL1、WL2及WL3。實際上,第一及第二非揮發性參考記憶體單元為二極體連接式貫穿多工器(diode-connected through multiplexor)1314(僅部分描繪),其中電流輸入流入該等多工器中。參考單元經調整(例如,經程式化)至目標參考層級。目標參考層級由參考迷你陣列矩陣(未示出)提供。
記憶體陣列1303用於兩個目的。首先,其儲存將由VMM陣列1300在其各別記憶體單元上使用之權重。其次,記憶體陣列1303有效地將輸入(亦即,在端子BLR0、BLR1、BLR2及BLR3中提供之電流輸入,其由參考陣列1301及1302轉換成輸入電壓以供應至字線WL0、WL1、WL2及WL3)乘以儲存於記憶體陣列1303中之權重,且接著將所有結果(記憶體單元電流)相加以在各別位元線(BL0至BLN)上產生輸出,該輸出將為下一層之輸入或最終層之輸入。藉由執行乘法及加法函數,記憶體陣列1303消除了對單獨的乘法及加法邏輯電路之需要,且亦為功率高效的。此處,電壓輸入提供於字線WL0、WL1、WL2及WL3上,且輸出在讀取(推斷)操作期間出現於各別位元線BL0至BLN上。置放於位元線BL0至BLN中之每一者上之電流對來自連接至彼特定位元線之所有非揮發性記憶體單元的電流執行求和函數。
表6描繪用於VMM陣列1300之操作電壓。該表中之行指示置於以下各者上的電壓:用於選定單元之字線、用於未選定單元之字線、用於選定單元之位元線、用於未選定單元之位元線、用於選定單元之源極線及用於未選定單元之源極線,其中FLT指示浮動,亦即,未施加電壓。列指示讀取、抹除及程式化之操作。
表6:圖13之VMM陣列1300的操作:
| WL | WL-未選定 | BL | BL-未選定 | SL | SL-未選定 | |
| 讀取 | 0.5-3.5V | -0.5V/0V | 0.1-2V (Ineuron) | 0.6V-2V/FLT | 0V | 0V |
| 抹除 | ~5-13V | 0V | 0V | 0V | 0V | 0V |
| 程式化 | 1-2V | -0.5V/0V | 0.1-3uA | Vinh~2.5V | 4-10V | 0-1V/FLT |
圖14描繪神經元VMM陣列1400,其尤其適合於如圖2中所展示之記憶體單元210,且用作輸入層與下一層之間的突觸及神經元部分。VMM陣列1400包含非揮發性記憶體單元之記憶體陣列1403、第一非揮發性參考記憶體單元之參考陣列1401及第二非揮發性參考記憶體單元之參考陣列1402。參考陣列1401及1402在VMM陣列1400之列方向上延行。VMM陣列類似於VMM 1300,除了在VMM陣列1400中,字線在豎直方向上延行之外。此處,輸入提供於字線(WLA0、WLB0、WLA1、WLB2、WLA2、WLB2、WLA3、WLB3)上,且輸出在讀取操作期間出現於源極線(SL0、SL1)上。置放於每一源極線上之電流對來自連接至彼特定源極線之記憶體單元的所有電流執行求和函數。
表7描繪用於VMM陣列1400之操作電壓。表中之行指示置於以下各者上之電壓:用於選定單元之字線、用於未選定單元之字線、用於選定單元之位元線、用於未選定單元之位元線、用於選定單元之源極線及用於未選定單元之源極線。列指示讀取、抹除及程式化之操作。
表7:圖14之VMM陣列1400的操作
| WL | WL-未選定 | BL | BL-未選定 | SL | SL-未選定 | |
| 讀取 | 0.5-3.5V | -0.5V/0V | 0.1-2V | 0.1V-2V/FLT | ~0.3-1V (Ineuron) | 0V |
| 抹除 | ~5-13V | 0V | 0V | 0V | 0V | SL-inhibit(~4- 8V) |
| 程式化 | 1-2V | -0.5V/0V | 0.1-3uA | Vinh~2.5V | 4-10V | 0-1V/FLT |
圖15描繪神經元VMM陣列1500,其尤其適合於如圖3中所示之記憶體單元310,且用作輸入層與下一層之間的突觸及神經元部分。VMM陣列1500包含非揮發性記憶體單元之記憶體陣列1503、第一非揮發性參考記憶體單元之參考陣列1501及第二非揮發性參考記憶體單元之參考陣列1502。參考陣列1501及1502用以將流動至端子BLR0、BLR1、BLR2及BLR3中之電流輸入轉換成電壓輸入CG0、CG1、CG2及CG3。實際上,第一及第二非揮發性參考記憶體單元為二極體連接式貫穿多工器1512 (僅部分描繪),其中電流輸入經由BLR0、BLR1、BLR2及BLR3流入該等多工器中。多工器1512各自包括各別多工器1505及串疊(cascoding)電晶體1504,以確保在讀取操作期間第一及第二非揮發性參考記憶體單元中之每一者的位元線(諸如,BLR0)上存在恆定電壓。參考單元經調校至目標參考層級。
記憶體陣列1503用於兩個目的。首先,其儲存將由VMM陣列1500使用的權重。其次,記憶體陣列1503有效地將輸入(提供至端子BLR0、BLR1、BLR2及BLR3之電流輸入,其中參考陣列1501及1502將此等電流輸入轉換成輸入電壓以供應至控制閘極CG0、CG1、CG2及CG3)乘以儲存於記憶體陣列中之權重,且接著將所有結果(單元電流)相加以產生輸出,該輸出呈現於BL0至BLN上,且將為下一層之輸入或最終層之輸入。藉由執行乘法及加法函數,記憶體陣列消除了對單獨的乘法及加法邏輯電路之需要,且亦為功率高效的。此處,輸入設置於控制閘極線(CG0、CG1、CG2及CG3)上,且輸出在讀取操作期間出現於位元線(BL0至BLN)上。置放於每一位元線上之電流對來自連接至彼特定位元線之記憶體單元的所有電流執行求和函數。
VMM陣列1500對記憶體陣列1503中之非揮發性記憶體單元實施單向調整。亦即,每一非揮發性記憶體單元經抹除且接著經部分程式化,直至達到浮動閘極上之所要電荷為止。此可例如使用下文所描述之精密程式化技術來執行。若過多電荷被置放於浮動閘極上(使得錯誤值儲存於單元中),則單元必須被抹除且部分程式化操作之序列必須重新開始。如所示,共用同一抹除閘極(諸如EG0或EG1)之兩個列需要被一起抹除(此被稱為分頁抹除),且此後,部分地程式化每一單元直至達到浮動閘極上之所要電荷為止。
表8描繪用於VMM陣列1500之操作電壓。該表中之行指示置於以下各者上之電壓:用於選定單元之字線、用於未選定單元之字線、用於選定單元之位元線、用於未選定單元之位元線、用於選定單元之控制閘極、用於與選定單元處於相同扇區中之未選定單元之控制閘極、用於與選定單元處於不同扇區中之未選定單元之控制閘極、用於選定單元之抹除閘極、用於未選定單元之抹除閘極、用於選定單元之源極線及用於未選定單元之源極線。列指示讀取、抹除及程式化之操作。
表8:圖15之VMM陣列1500的操作
| WL | WL- 未選定 | BL | BL- 未選定 | CG | CG-未選 定相同扇 區 | CG- 未選定 | EG | EG- 未選定 | SL | SL- 未選定 | |
| 讀取 | 0.5-2V | -0.5V/0V | 0.1-2V (Ineuron) | 0V/FLT | 0-2.6V | 0-2.6V | 0-2.6V | 0-2.6V | 0-2.6V | 0V | 0V |
| 抹除 | 0V | 0V | 0V | 0V | 0V | 0-2.6V | 0-2.6V | 5-12V | 0-2.6V | 0V | 0V |
| 程式化 | 0.7-1V | -0.5V/0V | 0.1-1uA | Vinh(1-2V) | 4-11V | 0-2.6V | 0-2.6V | 4.5-5V | 0-2.6V | 4.5-5V | 0-1V |
圖16描繪神經元VMM陣列1600,其尤其適合於如圖3中所展示之記憶體單元310,且用作輸入層與下一層之間的突觸及神經元部分。VMM陣列1600包含非揮發性記憶體單元之記憶體陣列1603、第一非揮發性參考記憶體單元之參考陣列1601及第二非揮發性參考記憶體單元之參考陣列1602。EG線EGR0、EG0、EG1及EGR1豎直地延行,而CG線CG0、CG1、CG2及CG3以及SL線WL0、WL1、WL2及WL3水平地延行。VMM陣列1600類似於VMM陣列1600,除了VMM陣列1600實作雙向調諧之外,其中由於使用單獨的EG線,每個個別單元可視需要經完全抹除、部分程式化及部分抹除以達到浮動閘極上之所要電荷量。如所展示,參考陣列1601及1602將端子BLR0、BLR1、BLR2及BLR3中之輸入電流轉換成待在列方向上施加至記憶體單元之控制閘極電壓CG0、CG1、CG2及CG3(經由二極體連接式參考單元貫穿多工器1614之動作)。電流輸出(神經元)在位元線BL0至BLN中,其中每一位元線對來自連接至彼特定位元線之非揮發性記憶體單元的所有電流進行求和。
表9描繪用於VMM陣列1600的操作電壓。該表中之行指示置於以下各者上之電壓:用於選定單元之字線、用於未選定單元之字線、用於選定單元之位元線、用於未選定單元之位元線、用於選定單元之控制閘極、用於與選定單元處於相同扇區中之未選定單元之控制閘極、用於與選定單元處於不同扇區中之未選定單元之控制閘極、用於選定單元之抹除閘極、用於未選定單元之抹除閘極、用於選定單元之源極線及用於未選定單元之源極線。列指示讀取、抹除及程式化之操作。
表9:圖16之VMM陣列1600的操作
| WL | WL- 未選定 | BL | BL- 未選定 | CG | CG-未選定 相同扇區 | CG- 未選定 | EG | EG- 未選定 | SL | SL- 未選定 | |
| 讀取 | 1.0-2V | -0.5V/0V | 0.6-2V (Ineuron) | 0V/FLT | 0-2.6V | 0-2.6V | 0-2.6V | 0-2.6V | 0-2.6V | 0V | 0V/FLT |
| 抹除 | 0V | 0V | 0V | 0V | 0V | 4-9V | 0-2.6V | 5-12V | 0-2.6V | 0V | 0V |
| 程式化 | 0.7-1V | -0.5V/0V | 0.1-1uA | Vinh(1-2V) | 4-11V | 0-2.6V | 0-2.6V | 4.5-5V | 0-2.6V | 4.5-5V | 0-1V |
VMM陣列之輸入可為類比位準、二進位位準、時序脈衝或數位位元,且輸出可為類比位準、二進位位準、時序脈衝或數位位元(在此情況下,需要輸出ADC將輸出類比位準電流或電壓轉換成數位位元)。
對於VMM陣列中之每一記憶體單元,每一權重W可由單個記憶體單元或差分單元或兩個混合記憶體單元(2個或多於2個單元之平均值)來實作。在差分單元情況下,需要兩個記憶體單元以將權重w實作為差分權重(w=w+ - w-)。在兩個混合記憶體單元中,需要兩個記憶體單元以將權重W實作為兩個單元之平均值。
非揮發性記憶體單元之先前技術陣列的一個缺陷為需要相對大量時間來將源極線拉至接地以執行讀取或抹除操作。
需要經改良VMM系統,相較於先前技術系統,該系統能夠更準確地將源極線下拉至接地。進一步需要適應性偏壓電路,其能夠在其中源極線被下拉至大於0V之電壓(亦即,其中「接地」線實際上並非處於0V)的彼等情況中改變施加至VMM系統之輸入線及/或輸出線的偏壓。
揭示類比神經記憶體陣列之眾多具體例。某些具體例包含用於準確地將源極線下拉至接地的經改良機制。此可例如用於最小化一讀取、程式化或抹除操作之電壓降。其他具體例包含用於具有負及正權重之負及正輸入的實作。其他具體例包括能夠在其中源極線經下拉至大於0V之電壓(亦即,其中「接地」線實際上並非處於0V)的彼等情況下改變施加至VMM系統之輸入或輸出線的偏壓的適應性偏壓電路。
本發明之人工神經網路利用CMOS技術與非揮發性記憶體陣列之組合。
經改良VMM系統的具體例
圖17描繪VMM系統1700之方塊圖。VMM系統1700包含VMM陣列1701、列解碼器1702、高電壓解碼器1703、行解碼器1704、位元線驅動器1705、輸入電路1706、輸出電路1707、控制邏輯1708及偏壓產生器1709。VMM系統1700進一步包含高電壓產生區塊1710,該高電壓產生區塊包含電荷泵1711、電荷泵調節器1712及高電壓位準產生器1713。VMM系統1700進一步包含演算法控制器1714、類比電路系統1715、控制邏輯1716及測試控制邏輯1717。下文所描述之系統及方法可實施於VMM系統1700中。
輸入電路1706可包括諸如數位至類比轉換器(DAC)、數位至脈衝轉換器(DPC)、類比至類比轉換器(AAC,諸如電流至電壓轉換器)、脈衝至類比層級轉換器(PAC)或任何其他類型之轉換器的電路。輸入電路1706可實作正規化、縮放函數或算術函數。輸入電路1706可實作溫度補償功能以用於輸入。輸入電路1706可實作諸如ReLU或S型之啟動函數。輸出電路1707可包括諸如類比至數位轉換器(ADC,以將神經元類比輸出轉換成數位位元)、類比至類比轉換器(AAC,諸如電流至電壓轉換器)、類比至脈衝轉換器(APC)或任何其他類型之轉換器等電路。輸出電路1707可實作諸如ReLU或S型之啟動函數。輸出電路1707可實作統計正規化、正則化、放大/縮小函數,統計捨入或算術函數(例如,加法、減法、除法、乘法、移位、對數)以用於神經元輸出。輸出電路1707可實作溫度補償功能以用於神經元輸出或陣列輸出(諸如位元線輸出),以便使陣列之功耗保持近乎恆定或諸如藉由使IV斜率保持近乎相同而改良陣列(神經元)輸出之精度。
圖18A描繪先前技術VMM系統1800。VMM系統1800包含例示性單元1801及1802、例示性位元線開關1803 (其將位元線連接至感測電路)、例示性虛設位元線開關1804(其耦接至低位準,諸如讀取時之接地位準)、例示性虛設單元1805及1806(源極線下拉單元)。位元線開關1803耦接至用以儲存VMM系統1800中之資料的單元之行,包括單元1801及1802。虛設位元線開關1804耦接至單元的行(位元線),該等單元為並不用於儲存VMM系統1800中之資料的虛設單元。此虛設位元線(亦稱為源極線下拉位元線)在讀取時用作源極線下拉,意謂用於經由虛設位元線中之記憶體單元將源極線SL拉至諸如接地位準之低位準。
VMM系統1800之一個缺陷為每一單元之輸入阻抗由於通過相關位元線開關、單元本身及相關虛設位元線開關之電路徑的長度而極大地變化。舉例而言,圖18B展示通過位元線開關1803、單元1801、虛設單元1805及虛設位元線開關1804之電路徑。類似地,圖18C展示穿過位元線開關1803、豎直金屬位元線1807、單元1802、虛設單元1808、豎直金屬位元線1808及虛設位元線開關1804之電路徑。如可看到,通過單元1802之路徑橫越位元線及虛設位元線的顯著較大長度,其與較高電容及較高電阻相關聯。此導致單元1802在位元線或源極線中具有比單元1801更大的寄生阻抗。舉例而言,此可變性為缺陷,此係因為其導致如適用於讀取或驗證(用於程式化/抹除調節循環)單元之單元輸出的精確度之變化,此取決於單元在陣列內之部位。
圖19A描繪經改良VMM系統1900。VMM系統1900包含例示性單元1901及1902、例示性位元線開關1903(其將位元線連接至感測電路)、例示性虛設單元1905及1906(源極線下拉單元),及例示性虛設位元線開關1904(其耦接至低位準,諸如讀取時之接地位準,此開關連接至虛設位元線,虛設位元線連接至用作源極線下拉之虛設單元)。如可看到,例示性虛設位元線開關1904及其他虛設位元線開關位於陣列的與位元線開關1903及其他位元線開關相對的末端上。
此設計之益處可見於圖19B及圖19C中。圖19B描繪穿過位元線開關1903、單元1901、虛設單元1905(源極線下拉單元)、豎直金屬位元線1908及虛設位元線開關1904(其耦接至低位準,諸如讀取時之接地位準)的電路徑。圖19C描繪通過位元線開關1903、豎直金屬線1907、單元1902、虛設單元1906(源極線下拉單元)及虛設位元線開關1904之電路徑。該等路徑實質上相同(單元互連長度方面),此對於VMM系統1900中之所有單元皆成立。結果,每個單元之位元線阻抗加上源極線阻抗的阻抗實質上相同,此意謂在陣列中之各種單元的讀取或驗證操作時汲取的寄生電壓降之量的變化相對相同。
圖20描繪具有全域源極線下拉位元線之VMM系統2000。VMM系統2000類似於VMM系統1900,除了以下情況之外:虛設位元線2005a至2005n或2007a至2007n連接在一起(以充當全域源極線下拉線,從而在讀取或驗證期間將記憶體單元源極線拉至接地位準);諸如虛設位元線開關2001及2002之虛設位元線開關連接或耦接至標示為ARYGND之共同接地;且源極線一起耦接至源極線開關2003,其將源極線選擇性地拉至接地。此等改變進一步降低單元當中之(陣列)寄生阻抗在讀取或驗證操作期間的變化。源極線連接在一起作為SLARY 2888。
圖21描繪VMM系統2100。VMM系統2100包含位元線開關2101、下拉位元線開關2102、下拉位元線開關2103、位元線開關2104、資料單元2105(此處,「資料單元」為用以儲存神經網路之權重值的記憶體單元)、下拉單元2106、下拉單元2107及資料單元2018。應注意,下拉單元2106及2107彼此鄰近。此允許兩個下拉單元2106及2107之豎直金屬線BLpdx連接在一起(線2111),以因所得較寬金屬線而減小寄生電阻。在資料單元2105之讀取或驗證(用於程式化/抹除調諧循環)操作期間,電流將流過位元線開關2101至單元2105之位元線端子中且流出至單元2105之源極線端子,在彼處電流接著流入源極線2110中,在彼處電流流入下拉單元2106及2107的源極線端子中,且流過下拉位元線開關2102及2103。在資料單元2104之讀取或驗證(用於程式化/抹除調諧循環)操作期間,電流將流過位元線開關2104至資料單元2108之位元線端子中且流出至單元2108之源極線端子,在彼處電流接著流入源極線2110中,在彼處電流流入下拉單元2106及2107的源極線端子中,且流過下拉位元線開關2102及2103。此行圖案在整個陣列中重複,其中每四行包含兩行資料單元,及用於下拉操作的兩個鄰近陣列行。在另一具體例中,兩個鄰近行之兩個下拉單元的擴散可一起合併成一個較大擴散以增大下拉能力。在另一具體例中,可使得下拉單元之擴散大於資料單元擴散以增大下拉能力。在另一具體例中,每個下拉單元具有不同於選定資料單元之偏壓條件的偏壓條件。
在一個具體例中,下拉單元具有與常規資料記憶體單元相同的實體結構。在另一具體例中,下拉單元具有與常規資料記憶體單元不同的實體結構,例如,下拉單元可為常規資料記憶體單元之經修改版本,諸如藉由修改一或多個實體尺寸(寬度、長度等)或電參數(層厚度、植入等)。在另一具體例中,下拉單元為常規電晶體(無浮動閘極),諸如IO或高電壓電晶體。
圖22描繪VMM系統2200。VMM系統2200包含位元線2201、下拉位元線2202、資料單元2203及2206、下拉單元2204及2205,及源極線2210。在單元2203之讀取或驗證操作期間,電流將流過位元線開關2201至單元2203之位元線端子中且流出至單元2203之源極線端子,在彼處電流接著流入源極線2210中且流入下拉單元2204之源極線端子中,且流過下拉位元線BLpd 2202。針對每行重複此設計,其中淨結果為包含下拉單元2204之列為下拉單元之列。
在單元2206之讀取或驗證(用於程式化/抹除調諧循環)操作期間,電流將流過位元線開關2201至單元2206之位元線端子中且流出至單元2206之源極線端子,在彼處電流接著流入源極線2211中且流入下拉單元2205之源極線端子中,且流過下拉位元線BLpd 2202。針對每行重複此設計,其中淨結果為包含下拉單元2205之列為下拉單元之列。如圖22中所示,存在四列,兩個中間鄰近列用於下拉單元,頂部及底部列為資料單元。
表10描繪用於VMM系統2200之操作電壓。該表中之行指示置於以下各者上之電壓:用於選定單元之位元線、下拉位元線、用於選定單元之字線、用於選定單元之控制閘極、用於選定下拉單元之字線WLS、用於選定下拉單元之控制閘極CGS、用於所有單元之抹除閘極及用於所有單元之源極線。列指示讀取、抹除及程式化之操作。應注意,CGS及WLS在讀取時之電壓偏壓高於常規WL及CG偏壓,以增強下拉單元之驅動能力。WLS及CGS之電壓偏壓在程式化時可為負以減少干擾。
表10:圖22之VMM陣列2200的操作
| 操作表 | ||||||||
| BL | BLpd | WL | CG | WLS | CGS | EG | SL | |
| 抹除 | 0V | 0V | 0V | 0V | 0V | 0V | 11.5V | 0V |
| 程式化 | Iprog | VINH | ~0.7V | ~10.5V | -0.5V至0V | -2V至0V | ~4.5V | ~4.5V |
| 讀取 | 0.6V | 0V | ~0-1.1V | ~0-1.5V | 1.1-1.3V | 1.8-3V | 0V | 0V |
圖23描繪VMM系統2300。VMM系統2300包含位元線2301、位元線2302、資料單元2303及2306,以及下拉單元2304及2305。在單元2303之讀取或驗證(用於程式化/抹除調諧循環)操作期間,電流將流過位元線2301至單元2303之位元線端子中且流出至單元2303之源極線端子,在彼處電流接著流入下拉單元2304之源極線端子中,且流過位元線2302(在此情況下充當下拉位元線)。針對每行重複此設計,其中淨結果為在第一模式下包含下拉單元2304之列為下拉單元之列。在單元2306之讀取或驗證(用於程式化/抹除調諧循環)操作期間,電流將流過位元線2301至單元2306之位元線端子中且流出至單元2306之源極線端子,在彼處電流接著流入下拉單元2305之源極線端子中,且流過位元線2302(在此情況下充當下拉位元線)。針對每行重複此設計,其中淨結果為在第二模式下包含下拉單元2305之列為下拉單元之列。如圖23中所示,存在四列,交替奇數(或偶數)列用於下拉單元,交替偶數(或奇數)列為資料單元。
值得注意地,在第二模式期間,單元2305及2306在讀取或驗證時係主動的,且單元2303及2305用於下拉程序,其中位元線2301及2302之作用被倒轉。
表11描繪用於VMM系統2300之操作電壓。該表中之行指示置於以下各者上之電壓:用於選定資料單元之位元線、用於選定下拉單元之位元線、用於選定資料單元之字線、用於選定資料單元之控制閘極、用於選定下拉單元之字線WLS、用於選定下拉單元之控制閘極CGS、用於所有單元之抹除閘極及用於所有單元之源極線。列指示讀取、抹除及程式化之操作。
表11:圖23之VMM系統2300的操作
| 操作表 | ||||||||
| BL0A | BL0B | WL | CG | WLS | CGS | EG | SL | |
| 抹除 | 0V | 0V | 0V | 0V | 0V | 0V | 11.5V | 0V |
| 程式化 | Iprog | VINH | ~0.7V | ~10.5V | -0.5V至0 V | -2V至0V | ~4.5V | ~4.5V |
| 讀取 | 0.6V/0V | 0V/0.6V | ~0-1.1V | ~0-1.5V | 1.1-1.3V | 1.8-3V | 0V | 0V |
圖24描繪VMM系統2400。VMM系統2400包含位元線2401、下拉位元線2402、(資料)單元2403、源極線2411以及下拉單元2404、2405及2406。在單元2403之讀取或驗證操作期間,電流將流過位元線2401至單元2403之位元線端子中且流出至單元2403之源極線端子,在彼處電流接著流入源極線2411中,且在彼處電流接著流入下拉單元2404、2405及2406之源極線端子中,並自該源極線端子流過下拉位元線2402。針對每行重複此設計,其中淨結果為包含下拉單元2404、2405及2406之列各自為下拉單元之列。此最大化施加至單元2403之源極線端子的下拉,因為電流經由三個單元汲取至下拉位元線2402中。應注意,四列之源極線連接在一起。
表12描繪用於VMM系統2400之操作電壓。該表中之行指示置於以下各者上之電壓:用於選定單元之位元線、下拉位元線、用於選定單元之字線、用於選定單元之控制閘極、用於選定單元之抹除閘極、用於選定下拉單元之字線WLS、用於選定下拉單元之控制閘極CGS、用於選定下拉單元之抹除閘極及用於所有單元之源極線。列指示讀取、抹除及程式化之操作。
表12:圖24之VMM系統2400的操作
| 操作表 | |||||||||
| BL | BPpd | WL | CG | WLS | CGS | EG | EGS | SL | |
| 抹除 | 0V | 0V | 0V | 0V | 0V | 0V | 11.5V | 11.5V | 0V |
| 程式化 | Iprog | VINH | ~0.7V | ~10.5V | -0.5V至0V | -2V至0V | ~4.5V | 0V | ~4.5V |
| 讀取 | 0.6V | 0V | ~0-1.1V | ~0-1.5V | 1.1 1.3V | 1.8-3V | 0V | ~2.5V | 0V |
圖25描繪用於圖22之VMM系統2200的例示性佈局2500。淺正方形指示諸如位元線2201之位元線及諸如下拉位元線2202之下拉位元線的金屬接點。
圖26描繪用於類似於圖22之VMM系統2200的VMM系統之替代佈局2600,不同之處為下拉位元線2602極其寬且橫越兩行下拉單元。亦即,下拉位元線2602之擴散區域寬於位元線2601的擴散區域。佈局2600進一步展示單元2603及單元2604(下拉單元)、源極線2610以及位元線2601。在另一具體例中,兩個下拉單元(左及右)之擴散可一起合併成一個較大擴散。
圖27A描繪VMM系統2700。為了實作神經網路之負及正權重,將一半位元線指定為w+線(連接至實作正權重之記憶體單元的位元線),且將另一半位元線指定為w-線(連接至實作負權重之記憶體單元的位元線)並將其以交替方式散置於w+線當中。負運算係藉由求和電路(諸如求和電路2701及2702)在w-位元線之輸出(神經元輸出)處進行。w+線之輸出及w-線之輸出組合在一起,從而對於所有線對(w+、w-)之每對(w+、w-)單元,有效地得出w=w+ - w-。圖中未展示用於避免FG-FG耦合及/或減少源極線中在讀取時之IR電壓降的虛設位元線或源極線下拉位元線。系統2700之輸入(諸如CG或WL)可具有正值或負值輸入。對於輸入具有負值的情況,由於陣列之實際輸入為正(諸如CG或WL上的電壓位準),因此在輸出之前使陣列輸出(位元線輸出)為負,以實現負值輸入之等效功能。
替代地,參考圖27B,可在第一陣列2711中實作正權重,且可在與第一陣列分離的第二陣列2712中實作負權重,且將所得權重藉由求和電路2713適當地組合在一起。類似地,虛設位元線(未示出)或源極線下拉位元線(未示出)用於避免FG-FG耦合及/或減小源極線中在讀取時之IR電壓降。
替代地,圖27C描繪用以實作具有正或負輸入之神經網路之負及正權重的VMM系統2750。第一陣列2751實作具有負及正權重之正值輸入,且第二陣列2752實作具有負及正權重之負值輸入。在由求和器2755添加至第一陣列之輸出之前使第二陣列之輸出為負,此係由於任何陣列之任何輸入僅具有正值(諸如CG或WL上之類比電壓位準)。
表10A展示一對(w+、w-)位元線BL0/1及BL2/3之實體陣列配置的例示性佈局,其中4列耦接至源極線下拉位元線BLPWDN。成對(BL0、BL1)位元線係用來實作(w+、w-)線。在(w+、w-)線對之間,存在源極線下拉位元線(BLPWDN)。此用於防止自鄰近(w+、w-)線耦接(例如,FG至FG耦合)至電流(w+、w-)線。基本上,源極線下拉位元線(BLPWDN)充當成對(w+、w-)線之間的實體障壁。
關於FG至FG耦合現象之額外細節以及用於抵消彼現象之機制見於由同一受讓人在2020年2月26日申請,且標題為「Ultra-Precise Tuning of Analog Neural Memory Cells in a Deep Learning Artificial Neural Network」之美國臨時專利申請案第62/981,757號中,該申請案以引用的方式併入本文中。
表10B展示不同例示性權重組合。「1」意謂使用單元且其具有有效輸出值,然而「0」意謂並不使用單元且其不具有值或不具有有效輸出值。
在另一具體例中,可使用虛設位元線而非源極線下拉位元線。
在另一具體例中,虛設列亦可用作實體障壁以避免列之間的耦接。
表10A:例示性佈局
表10B:例示性權重組合
| BLPWDN | BL0 | BL1 | BLPWDN | BL2 | BL3 | BLPWDN | |
| 列0 | w01+ | w01- | w02+ | w02- | |||
| 列1 | w11+ | w11- | w12+ | w12- | |||
| 列2 | w21+ | w21- | w22+ | w22- | |||
| 列3 | w31+ | w31- | w32+ | w32- |
| BLPWDN | BL0 | BL1 | BLPWDN | BL2 | BL3 | BLPWDN | |
| 列0 | 1 | 0 | 1 | 0 | |||
| 列1 | 0 | 1 | 0 | 1 | |||
| 列2 | 0 | 1 | 1 | 0 | |||
| 列3 | 1 | 1 | 1 | 1 |
表11A展示具有冗餘線BL01、BL23及源極線下拉位元線BLPWDN的線BL0/1及BL2/3的(w+、w-)對的實體配置的另一陣列具體例。BL01用於對BL0/1之權重重新映射,且BL23用於對BL2/3之權重重新映射。
表11B展示不需要重新映射的分佈式權重之情況,基本上在BL1與BL3之間不存在引起鄰近位元線耦接之鄰近「1」。表11C展示需要重新映射的分佈式權重之情況,基本上在BL1與BL3之間存在引起鄰近位元線耦接之鄰近「1」。此重新映射展示於表11D中,使得在任何鄰近位元線之間不存在「1」值。此外,藉由在位元線當中重新映射「1」實值權重(意謂重新分佈權重),沿著位元線之總電流現在經減小,從而使得位元線(輸出神經元)中的值較精確。在此情況下,需要額外行(位元線)(BL01、BL23)以充當冗餘行。
表11E及11F描繪將有雜訊單元(或有缺陷單元)重新映射至諸如表10E中之BL01、BL23或表11F中之BL0B及BL1B之冗餘(備用)行中的另一具體例。求和器用以對位元線輸出進行適當的映射求和。
表11A:例示性佈局
表11B:例示性權重組合
表11C:例示性權重組合
表11D:經重新映射權重組合
表11E:經重新映射權重組合
表11F:經重新映射權重組合
| BLPWDN | BL01 | BL0 | BL1 | BL2 | BL3 | BL23 | BLPWDN | |
| 列0 | w01+ | w01- | w02+ | w02- | ||||
| 列1 | w11+ | w11- | w12+ | w12- | ||||
| 列2 | w21+ | w21- | w22+ | w22- | ||||
| 列3 | w31+ | w31- | w32+ | w32- |
| BLPWDN | BL01 | BL0 | BL1 | BL2 | BL3 | BL23 | BLPWDN | |
| 列0 | 1 | 0 | 1 | 0 | ||||
| 列1 | 0 | 1 | 0 | 1 | ||||
| 列2 | 1 | 0 | 1 | 0 | ||||
| 列3 | 0 | 1 | 0 | 1 |
| BLPWDN | BL01 | BL0 | BL1 | BL2 | BL3 | BL23 | BLPWDN | |
| 列0 | 0 | 1 | 1 | 0 | ||||
| 列1 | 0 | 1 | 1 | 0 | ||||
| 列2 | 0 | 1 | 1 | 0 | ||||
| 列3 | 0 | 1 | 1 | 0 |
| BLPWDN | BL01 | BL0 | BL1 | BL2 | BL3 | BL23 | BLPWDN | |
| 列0 | 0 | 0 | 1 | 0 | 0 | 1 | ||
| 列1 | 1 | 0 | 0 | 1 | 0 | 0 | ||
| 列2 | 0 | 0 | 1 | 0 | 0 | 1 | ||
| 列3 | 1 | 0 | 0 | 1 | 0 | 0 |
| BLPWDN | BL0 1 | BL 0 | BL1 | BL2 | BL3 | BL23 | BLPWDN | |
| 列0 | 0 | 0 | 1 | 0 | 0 | 1 | ||
| 列1 | 1 | 0 | 有雜訊或有 缺陷單元 (未使用) | 1 | 0 | 0 | ||
| 列2 | 0 | 0 | 1 | 有雜訊或有 缺陷單元 (未使用) | 0 | 1 | ||
| 列3 | 1 | 0 | 0 | 1 | 0 | 0 |
| BLPWDN | BL0A | BL0B | BL1A | BL1B | BLPWDN | |
| 列0 | 1 | 0 | 0 | 0 | ||
| 列1 | 有雜訊或有 缺陷單元 (未使用) | 1 | 1 | 0 | ||
| 列2 | 1 | 0 | 有雜訊或有 缺陷單元 (未使用) | 1 | ||
| 列3 | 0 | 0 | 1 | 0 |
表11G展示適於圖27B之陣列實體配置之具體例。由於每個陣列具有正權重或負權重,因此對於每條位元線,需要充當源極線下拉及實體障壁以避免FG-FG耦合之虛設位元線。
表11G:例示性佈局
| BLPWDN | BL0 | BLPWDN | BL1 | BLPWDN | |
| 列0 | w01+/- | w02+/- | |||
| 列1 | w11+/- | w12+/- | |||
| 列2 | w21+/- | w22+/- | |||
| 列3 | w31+/- | w32+/- |
另一具體例具有作為目標位元線之鄰近位元線的調諧位元線,以藉助於FG-FG耦合將目標位元線調諧至最終目標。在此情況下,源極線下拉位元線(BLPWDN)插入於目標位元線之不與調諧位元線毗鄰之一側上。
用於映射有雜訊或有缺陷單元的替代具體例用以將此等單元指定(在由感測電路將其識別為有雜訊或有缺陷之後)為未使用單元,意謂其待(深入地)程式化以免對神經元輸出貢獻任何值。
用於處置快速單元之具體例首先用以識別此等單元,接著將較精確演算法應用於此等單元,諸如較小或無電壓增量脈衝或使用浮動閘極耦合演算法之演算法。
圖28描繪可包括於迄今論述之VMM陣列中之任一者中的可選冗餘陣列2801。若附接至位元線開關之任一行被視為有缺陷的,則冗餘陣列2801可用作冗餘以替換有缺陷行。冗餘陣列出於冗餘目的可具有其自身的冗餘神經元輸出(例如,位元線)及ADC電路。在需要冗餘之情況下,冗餘ADC之輸出用以替換不良位元線之ADC的輸出。冗餘陣列2801亦可用於諸如表10x中所描述之權重映射,以實現跨越位元線之功率分佈。
圖29描繪VMM系統2900,其包含陣列2901、陣列2902、行多工器2903、區域位元線LBL 2905a至2905d、全域位元線GBL 2908及2909,以及虛設位元線開關2905。行多工器2903用於將陣列2901之頂部區域位元線2905或陣列2902之底部區域位元線2905選擇至全域位元線2908中。在一個具體例中,(金屬)全域位元線2908具有與區域位元線之數目(例如,8或16)相同的線數。在另一具體例中,每N條區域位元線,全域位元線2908僅具有一條(金屬)線,諸如每8或16條區域位元線僅具有一條全域位元線。行多工器2903進一步包括將鄰近全域位元線(諸如GBL 2909)多工至當前全域位元線(諸如GBL 2908)以有效地增大當前全域位元線之寬度。此減少跨越全域位元線的電壓降。
圖30描繪VMM系統3000。VMM系統3000包含陣列3010、移位暫存器(SR)3001、數位至類比轉換器3002(其接收來自SR 3001之輸入且輸出等效(類比或偽類比)位準或資訊)到個別的控制閘極線CG、求和器電路3003、類比至數位轉換器3004及位元線開關3005。虛設位元線及虛設位元線開關存在但未示出。如所示,ADC電路可組合在一起以產生具有較大精度(亦即,較大數目個位元)之單個ADC。源極線連接在一起作為SLARY 3888。
求和器電路3003可包括展示於圖31至圖33中之電路。其可包括用於正規化、縮放、算術運算、啟動或統計捨入等之電路。
圖31描繪可由可變電阻器調整的電流-電壓求和器電路3100,其包含:電流源3101-1、…、3101-n,其分別汲取電流Ineu(1)、…、Ineu(n)(其為自VMM陣列之位元線接收到的電流);運算放大器3102;可變保持電容器3104及可變電阻器3103。運算放大器3102輸出電壓Vneuout=R3103*(Ineu1 + Ineu0),其與電流Ineux成比例。保持電容器3104用以當開關3106斷開時保持輸出電壓。例如,使用此保持輸出電壓以藉由ADC電路轉換成數位位元。VREF為例如0.1V至1.0V之參考電壓。此為可外加於在讀取中的陣列的位元線上的電壓。
圖32描繪可由可變電容器(基本上為積分器)調整之電流-電壓求和器電路3200,其包含:電流源3201-1、…、3201-n,其分別汲取電流Ineu(1)、…、Ineu(n)(其為自VMM陣列之位元線接收到的電流);運算放大器3202;可變電容器3203及開關3204。運算放大器3202輸出電壓Vneuout=Ineu*積分時間/C3203,其與電流Ineu成比例。
圖33A描繪可由可變電容器(亦即,切換式電容器SC電路)調整之電壓求和器3300,其包含開關3301及3302、可變電容器3303及3304、運算放大器3305、可變電容器3306及開關3307。當開關3301閉合時,輸入Vin0被提供至運算放大器3305。當開關3302閉合時,輸入Vin1被提供至運算放大器3305。視情況,開關3301及3302並不同時閉合。運算放大器3305產生輸出Vout,該輸出為輸入(Vin0及/或Vin1,此取決於開關3301及3302當中之哪個開關閉合)之經放大版本。亦即,Vout=Cin/Cout*(Vin),Cin為C3303或C3304,Cout為C3306。例如,Vout=Cin/Cout*∑(Vinx),Cin=C3303=C3304。在一個具體例中,Vin0為w+電壓且Vin1為w-電壓,且電壓求和器3300將其加在一起以產生輸出電壓Vout。
圖33B描繪電壓求和器3350,其包含開關3351、3352、3353及3354、可變輸入電容器3358、運算放大器3355、可變回饋電容器3356及開關3357。在一個具體例中,Vin0為w+電壓且Vin1為w-電壓,且電壓求和器3300將其加在一起以產生輸出電壓Vout。
對於輸入=Vin0:當開關3354及3351關閉時,輸入Vin0被提供至電容器3358之頂部端子。接著,開關3351斷開且開關3353閉合以將電荷自電容器3358轉移至回饋電容器3356中。基本上,接著輸出VOUT=(C3358/C3356)*Vin0(作為例子,對於VREF=0之情況)。
對於輸入=Vin1:當開關3353及3354閉合時,電容器3358之兩個端子被放電至VREF。接著開關3354斷開且開關3352閉合,從而將電容器3358之底部端子充電至Vin1,此又將回饋電容器3356充電至VOUT=-(C3358/C3356)*Vin1(對於VREF=0的情況)。
因此,作為例子,對於VREF=0之情況,若Vin1輸入在Vin0輸入經啟用之後經啟用,則VOUT=(C3358/C3356)*(Vin 0 - Vin1)。此例如用以實現w=w+ - w-。
應用於上文所論述之VMM陣列的圖2之輸入及輸出操作之方法可呈數位或類比形式。方法包括:
•DAC之依序輸入IN[0:q]:
•依序操作IN0、接著IN1…接著INq;所有輸入位元具有相同VCGin;所有位元線(神經元)輸出藉由調整二進位索引乘法器經求和;在ADC之前或在ADC之後
•調整神經元(位元線)二進位索引乘法器方法:如圖20中所示,實施例求和器具有兩條位元線BL0及Bln。跨越多條位元線BL0至BLn分佈權重。例如,存在4條位元線BL0、BL1、BL2、BL3。來自位元線BL0的輸出應乘以2^0 =1。來自代表第n二進位位元位置之位元線BLn的輸出乘以2^n,例如2^3=8(對於n=3)。接著,將來自所有位元線之輸出在適當地乘以二進位位元位置2^n之後一起求和。接著,此藉由ADC數位化。此方法意謂所有單元僅具有二進位範圍,多位準範圍(n位元)藉由周邊電路(意謂藉由求和器電路)實現。因此,對於記憶體單元之最高偏壓位準,所有位元線之電壓降大致相同。
•依序操作IN0、IN1、…接著INq;每個輸入位元具有對應類比值VCGin;針對所有輸入位元評估對所有神經元輸出進行求和;在ADC之前或ADC之後
•DAC之並列輸入:
•每個輸入IN[0:q]具有對應類比值VCGin;藉由調整二進位索引乘法器方法對所有神經元輸出進行求和;在ADC之前或ADC之後
藉由在陣列上依序操作,更均勻地分佈功率。神經元(位元線)二進位索引方法亦減少陣列中的功率,此係由於位元線中的每一單元僅具有二進位層級,因此藉由求和器電路2603實現2^n層級。
如圖33中所展示之每一ADC可經組態以與下一ADC組合以藉由ADC之適當設計來實現較高位元實作方案。
圖34A、圖34B及圖34C描繪可用於圖30中之求和器電路3003及類比至數位轉換器3004的輸出電路。
圖34A描繪包含類比至數位轉換器3402之輸出電路3400,該轉換器接收神經元輸出3401且輸出輸出數位位元3403。
圖34B描繪輸出電路3410,其包含一起接收神經元輸出3401且產生輸出3413之神經元輸出電路3411及類比至數位轉換器3412。
圖34C描繪輸出電路3420,其包含一起接收神經元輸出3401且產生輸出3423之神經元輸出電路3421及轉換器3422。
神經元輸出電路3411或3421可(例如)執行求和、縮放、正規化、算術運算等。舉例而言,轉換器3422可執行ADC、PDC、AAC、APC運算等。
圖35描繪神經元輸出電路3500,其包含可調整(縮放)電流源3501及可調整(縮放)電流源3502,其一起產生輸出i
OUT,該輸出為神經元輸出。此電路可執行對正權重及負權重之求和,亦即w=w+ - w-,且同時對輸出神經元電流進行放大或縮小。
圖36描繪可組態神經元串列類比至數位轉換器3600。其包括積分器3670,該積分器將神經元輸出電流積分至積分電容器3602中。一個具體例為數位輸出(計數輸出)3621係藉由對斜變VRAMP 3650進行計時直至比較器3604切換極性為止而產生,或另一具體例為藉由經由斜坡電流3651使節點VC 3610斜降直至VOUT 3603達到VREF 3650而產生,此時EC 3605信號停用計數器3620。取決於目標應用,(n位元) ADC可組態為具有較低數目之位元精度(<n個位元)或較高數目之位元精度(>n個位元)。可組態性係藉由組態電容器3602、電流3651或VRAMP 3650之斜變速率、計時3641等來進行。在另一具體例中,VMM陣列之ADC電路經組態以具有較低精度(<n個位元),且另一VMM陣列之ADC電路經組態以具有高精度(>n個位元)。此外,一個神經元電路之此ADC電路可經組態以與下一神經元電路之下一ADC組合以諸如藉由組合兩個ADC電路之積分電容器3602來產生較高n位元ADC精度。
圖37描繪可組態神經元逐次近似暫存器(SAR)類比至數位轉換器3700。此電路為基於使用二進位電容器之電荷再分佈的逐次近似轉換器。其包括二進位基於電容器之DAC(CDAC)3701、運算放大器/比較器3702、SAR邏輯3703。如所示,GndV 3704為低電壓參考位準,例如接地位準。
圖38描繪可組態神經元組合SAR類比至數位轉換器3800。此電路將來自兩個神經元電路之兩個ADC組合成一個以實現較高精度n位元,例如對於用於一個神經元電路之4位元ADC,此電路可藉由組合兩個4位元ADC實現>4位元精度,諸如8位元ADC精度。組合電路拓樸等效於分離電容器(橋接電容器(cap)或注意電容器(attention cap)) SAR ADC電路,例如藉由組合兩個鄰近4位元4C SAR ADC電路產生之8位元4C至4C SAR ADC。需要橋接電路3804以實現此情形,此電路之電容器的電容=(CDAC電容器單元之總數/CDAC電容器單元之總數-1)。
圖39描繪可用於以管線化方式與下一SAR ADC組合以增大位元數目的可組態神經元管線化SAR CDAC ADC電路3900。殘餘電壓3906由電容器3930 Cf產生以提供為管線式ADC的下一級的輸入(例如,以提供作為下一SAR CDAC ADC之輸入的增益2(Cf與DAC 3901中的所有電容器之C的比率))。
關於可組態輸出神經元(諸如可組態神經元ADC)電路之額外實施細節可見於由同一受讓人在2019年6月21申請且標題為「Configurable Input Blocks and Output Blocks and Physical Layout for Analog Neural Memory in a Deep Learning Artificial Neural Network」的美國專利申請案第16/449,201號中,該申請案以引用之方式併入本文中。
適應性偏壓電路
再次參考圖20,申請人已判定,在操作期間,節點「ARYGND」(陣列接地)將並不始終保持在0V。特定言之,當電流自各種源極線注入至ARYGND時,ARYGND之電壓將在0V以上浮動,例如0.1至0.5V。此不利地影響VMM系統2000之準確性,此係因為此將影響各種單元之讀取及程式化,該等單元受輸入線WL、CG、EG及BL與下拉至ARYGND之源極線之間的電壓差影響。
在一個具體例中,針對整個陣列僅存在一個源極線(SLARY),如圖20中之SLARY 2888或圖30中之SLARY 3888所示。電壓偏壓可由調節器(如圖45A(其為緩衝器調節器)或圖45B(其為力/感測調節器)中所展示)直接施加至SLARY 2888或3888以維持固定偏壓(例如,20mV)。在另一具體例中,存在多個SLARY線,且存在多個調節器(諸如調節器4510或4520)以維持此等SLARAY線上之固定偏壓。
圖40至圖42描繪(一方面)控制閘極線、字線及位元線與(另一方面)源極線之間的適應性電壓差。
在圖40中,曲線圖4000指示所選擇的一或多個單元的控制閘極線與源極線之間的差(標記為d(CG-SL))使得來自所選擇的一或多個單元或位元線的電流在源極線電壓增大時保持恆定。此處,x軸追蹤SL電壓,且y軸追蹤CG電壓與SL電壓之間的差。舉例而言,當ARYGND向上蠕變至高於0V(此意謂源極線亦將蠕變高於0V)時,需要控制閘極線與源極線之間的差將適應性地改變以將單元或位元線電流維持在恆定位準。在此實施例中,CG上的電壓將隨源極線電壓而適應性地增大以補償來自源極電壓改變的不同效應。待補償之效應係諸如來自歸因於源極電壓增大而有效減小之閘極至源極電壓或歸因於源極電壓增大而增大對臨限電壓之體效應。其亦可補償由歸因於源極電壓增大而減小的汲極至源極電壓造成的效應。其亦補償由自控制閘極CG及源極電壓至浮動閘極FG中之耦合造成的效應。可由矽資料表徵適當補償功能或查找表資料。
在圖41中,曲線圖4100指示所選單元的字線與源極線之間的差(標記為d(WL-SL))使得來自所選擇的一或多個單元或位元線的電流在源極線電壓增大時保持恆定。舉例而言,當ARYGND向上蠕變至高於0V(此意謂源極線亦將蠕變高於0V)時,需要字線與源極線之間的差將適應性地增大以將單元或位元線電流維持在恆定位準。字線WL上的電壓例如將隨源極線電壓變化而適應性地改變,以補償與如上文針對圖40所描述的源極電壓變化類似的不同效應。字線電壓調適較佳亦補償WL端子與FG端子之間的電壓耦合。
在圖42中,曲線圖4000指示所選單元的位元線與源極線之間的差(標記為d(BL-SL))使得來自所選擇的一或多個單元或位元線的電流在源極線電壓增大時保持恆定。舉例而言,當ARYGND向上蠕變至高於0V(此意謂源極線亦將蠕變高於0V)時,需要位元線與源極線之間的差使得所選單元或位元線電流維持在恆定位準。舉例而言,位元線BL上之電壓將隨源極線電壓而適應性地增大以補償不同效應,諸如降低之汲極至源極電壓、體效應調變臨限電壓、自源極至FG之電壓耦合或其他電效應。
在圖43中,在曲線圖4300中可看出,隨著VMM陣列之溫度增大(在VMM陣列操作期間或由於環境變化會自然發生),應施加至控制閘極線及/或抹除閘極線及/或字線以實現相同操作的偏壓電壓將隨著亞臨限值操作區之溫度增大而降低。偏壓電壓可隨在線性或飽和操作區中的溫度增大而增大。舉例而言,可由矽資料表徵適當補償功能或查找表資料。亦即,除ARYGND之電壓改變之外,溫度改變亦可能影響VMM陣列之操作及準確度。在一個具體例中,實作晶片上溫度感測器以偵測溫度改變,且相應地針對偏壓電壓應用補償功能。
圖44A描繪適應性偏壓電路4410,其包含可調整電流源4401及可調整電阻器4402。電阻器4402之一個末端在節點VREF_AB 4403處耦接至可調整電流源4401,且電阻器4402之另一末端連接至圖20或圖30之節點ARYGND。當ARYGND之電壓改變時,節點VREF_AB之電壓將改變大約相同量,此係因為跨越電阻器4402之電壓降對於由可調整電流源4401產生之恆定電流將保持恆定。電阻器4402可經調整以根據所定義補償功能或查找表改變電壓VREF_AB,以隨ARYGND電壓改變。類似地,電阻器4402的電阻可隨溫度改變而改變。除對電阻器4402之電阻的任何調整之外或替代或結合對電阻器4402之電阻的任何調整,由可調整電流源4401提供之電流的量可根據所定義補償功能或查找表進行調整,以隨ARYGND之溫度或電壓的改變而改變。VREF_AB因此將反映ARYGND之電壓及溫度的任何即時改變,且可由各種電路在讀取或程式化操作期間利用。
圖44B描繪適應性偏壓電路4420,其由可調整電阻器4421、可調整電阻器4422以及運算放大器4423組成。電阻器4421及/或電阻器4422之電阻可根據所定義補償功能或查找表調整以隨ARYGND電壓而改變以便在節點4424處提供所要電壓VREF_AB。電阻器4421及/或電阻器4422之電阻可根據所定義補償功能或查找表調整以隨溫度而改變。
圖45A及圖45B描繪視情況可在節點IN處適應性偏壓電路4400接收電壓VREF_AB以在節點OUT處提供經調節電壓輸出之調節器4500(分別包含調節器4510或調節器4520)。調節器4520以力/感測組態使用以補償(例如)功率匯流排佈線的互連金屬線電壓降,其中輸出節點OUT處的電壓可切換地連接至回饋電壓FB,以便迫使輸出節點OUT處的電壓遵循回饋電壓FB。當施加至VMM系統2000時,電壓OUT可施加至節點SLARY 2888,如上文參考圖20所論述。
節點IN處之電壓VREF_AB係自查找表或基於表徵資料之函數判定。節點OUT處之輸出電壓可用以提供偏壓至ARYGND或SLARY。舉例而言,節點OUT可用作供應用於整個陣列的SL偏壓,諸如SLARY,例如,0v或15mV。節點OUT亦可用作施加至一或多個位元線的偏壓,例如但不限於,以補償耦合失配、體效應失配或PVT失配。節點OUT亦可用作Vcg的偏壓電壓,例如但不限於,以補償耦合失配、體效應失配或PVT失配。
圖46A描繪包含輸入數位至類比轉換器4600之適應性偏壓電路。輸入數位至類比轉換器4600接收數位輸入信號DIN[7:0]且產生類比信號,該類比信號可施加至VMM陣列的輸入線,諸如控制閘極線、字線、抹除閘極線或源極線以程式化VMM陣列中的一或多個選定單元。值得注意地,輸入數位至類比轉換器4600利用來自圖44及圖45之電壓源VREF_AB,且其利用來自圖20及圖44A之ARYGND作為其接地。輸入數位至類比轉換器4600經由使用其VREF_AB電壓來自動補償ARYGND之變化。
圖46B描繪包含輸出類比至數位轉換器4650之適應性偏壓電路。輸出類比至數位轉換器4650接收諸如電流或電壓之陣列輸出,且產生數位輸出位元。值得注意地,輸出類比至數位轉換器4650利用來自圖44A及/或圖44B之電壓源VREF_AB,且其利用來自圖20及圖44A之ARYGND作為其接地。因此,輸出類比至數位轉換器4650將經由使用其VREF_AB電壓來補償ARYGND之變化。
圖47描繪可調整偏壓列解碼器4700,其包含耦接至控制閘極解碼器4702的字線解碼器4701。在此實施例中,可調整偏壓列解碼器4700用於VMM陣列中的列0。陣列中之所有其他列將具有指派給其之類似可調整偏壓列解碼器。
字元線解碼器4701包含配置為反相器的PMOS電晶體4703及NMOS電晶體4704以及如所展示組態的NAND閘4705。控制閘極解碼器4702包含來自圖46的輸入數位至類比轉換器4600、反相器4706、開關4707、開關4708以及充當通過閘極之NMOS電晶體4709,其如所展示而組態。此處,當NAND閘4705接收對應於指派給可調整偏壓列解碼器4700 (此處,列0)的列的位址訊號時,將啟動字元線WL0及控制閘極線CG0。在彼情況下,當啟動WL0及CG0時,輸入數位至類比轉換器4600之類比輸出電壓將施加至控制閘極CG0。此處,控制閘極線CG0接收由輸入數位至類比轉換器4600提供的經補償偏壓電壓。亦可使用用於EG或WL補償之類似構件。
圖48描繪電流-電壓求和器電路4800,其用以將陣列輸出(BL)電流轉換成電壓,該電流-電壓求和器電路與圖31中之電流-電壓求和器電路3100相同,除了運算放大器3102接收VREF_AB(自圖44及圖45)而非其非反相輸入上之VREF之外,且陣列輸出電流係指虛擬接地節點ARYGND。
圖49描繪包含運算放大器4901、可變電阻器4902及汲取電流Ineu的電流源4903之電流-電壓求和器電路4900(其為自VMM陣列之位元線接收的電流)。運算放大器在其非反相輸入上接收VREF_AB (自圖44A及/或45B)。運算放大器4901輸出電壓Vneuout。陣列輸出電流係指虛擬接地節點ARYGND。
圖50描繪電流-電壓求和器5000,其與圖32中之電流-電壓求和器3200相同,除了運算放大器3202接收VREF_AB(自圖44A及/或圖44B)而非其非反相輸入上之VREF之外。陣列輸出電流係指虛擬接地節點ARYGND。
圖51描繪電壓求和器5100,其與圖33A中之電壓求和器3300相同,除了其利用電壓VREF_AB(自圖44A及/或圖44B)而非VREF之外。陣列輸出電壓Vinx係指虛擬接地節點ARYGND。
圖52描繪電壓求和器5200,其與圖33B中之電壓求和器3350相同,除了其利用電壓VREF_AB(根據圖44A及/或圖44B)而非VREF之外。陣列輸出電壓Vinx係指虛擬接地節點ARYGND。
圖53描繪適於與圖3中所示之類型的記憶體單元一起使用的VMM高電壓解碼電路,其包含抹除閘極解碼器電路5301、控制閘極解碼器電路5304、源極線解碼器電路5307以及高電壓位準移位器5311。
抹除閘極解碼器電路5301包含如所展示組態的PMOS選擇電晶體5302(由信號HVO_B控制)及NMOS取消選擇電晶體5303(由信號HVO_B控制)。
控制閘極解碼器電路5304包含如所展示組態的PMOS選擇電晶體5305(由信號HVO_B控制)及NMOS取消選擇電晶體5306(由信號HVO_B控制)。
源極線解碼器電路5307包含如所展示組態的NMOS監視電晶體5308(由信號SL_MON控制)、驅動電晶體5309(由信號HVO控制)及取消選擇電晶體5310(由信號HVO_B控制)。
高電壓位準移位器5311接收啟用信號EN並輸出高電壓信號HV及其互補信號HVO_B,且接收其電壓軌HVSUP(高電壓)及HVSUP_LOW。
應注意,如本文中所使用,術語「在...上方」及「在...上」兩者包括「直接在...上」(其間未裝設有中間材料、元件或空間)及「間接地在...上」(其間裝設有中間材料、元件或空間)。同樣地,術語「鄰近」包括「直接鄰近」(其間未安置有中間材料、元件或空間)及「間接鄰近」(其間安置有中間材料、元件或空間),「安裝至」包括「直接安裝至」(其間未安置有中間材料、元件或空間)及「間接安裝至」(其間安置有中間材料、元件或空間),且「電耦接」包括「直接電耦接至」(其間無將元件電連接在一起的中間材料或元件)及「間接電耦接至」(其間具有將元件電連接在一起的中間材料或元件)。舉例而言,「在基板上方」形成元件可包括直接在基板上形成元件而其間無中間材料/元件,以及間接地在基板上形成元件而其間具有一或多種中間材料/元件。
12:半導體基板
14:源極區
16:汲極區
18:通道區
20:浮動閘極
22:字線端子
24:位元線端子
28:控制閘極(CG)端子
30:抹除閘極
31:數位至類比轉換器
32:VMM系統
32a:VMM系統/輸入層
32b:VMM系統/隱藏層
32c:VMM系統/隱藏層
32d:VMM系統/完全連接層
32e:VMM系統/完全連接層
33:VMM陣列
34:字線閘極解碼器
35:控制閘極解碼器
36:位元線解碼器
37:源極線解碼器
38:差分求和器
39:啟動函數電路
210:記憶體單元
310:記憶體單元
410:記憶體單元
510:記憶體單元
610:記憶體單元
710:記憶體單元
810:記憶體單元
1200:神經元VMM陣列
1201:非揮發性記憶體單元之記憶體陣列
1202:非揮發性參考記憶體單元之參考陣列
1203:控制閘極線
1204:抹除閘極線
1300:神經元VMM陣列
1301:第一非揮發性參考記憶體單元之參考陣列
1302:第二非揮發性參考記憶體單元之參考陣列
1303:非揮發性記憶體單元之記憶體陣列
1314:二極體連接式貫穿多工器
1400:神經元VMM陣列
1401:第一非揮發性參考記憶體單元之參考陣列
1402:第二非揮發性參考記憶體單元之參考陣列
1403:非揮發性記憶體單元之記憶體陣列
1500:神經元VMM陣列
1501:第一非揮發性參考記憶體單元之參考陣列
1502:第二非揮發性參考記憶體單元之參考陣列
1503:非揮發性記憶體單元之記憶體陣列
1504:電晶體
1505:多工器
1512:二極體連接式貫穿多工器
1600:神經元VMM陣列
1601:第一非揮發性參考記憶體單元之參考陣列
1602:第二非揮發性參考記憶體單元之參考陣列
1603:非揮發性記憶體單元之記憶體陣列
1614:二極體連接式參考單元貫穿多工器
1700:VMM系統
1701:VMM陣列
1702:列解碼器
1703:高電壓解碼器
1704:行解碼器
1705:位元線驅動器
1706:輸入電路
1707:輸出電路
1708:控制邏輯
1709:偏壓產生器
1710:高電壓產生區塊
1711:電荷泵
1712:電荷泵調節器
1713:高電壓位準產生器
1714:演算法控制器
1715:類比電路系統
1716:控制邏輯
1717:測試控制邏輯
1800:VMM系統
1801:單元
1802:單元
1803:位元線開關
1804:虛設位元線開關
1805:虛設單元
1806:虛設單元
1807:豎直金屬位元線
1808:豎直金屬位元線
1900:VMM系統
1901:單元
1902:單元
1903:位元線開關
1904:虛設位元線開關
1905:虛設單元
1906:虛設單元
1907:豎直金屬線
1908:豎直金屬位元線
2000:VMM系統
2001:虛設位元線開關
2002:虛設位元線開關
2003:源極線開關
2005a:虛設位元線
2005n:虛設位元線
2007a:虛設位元線
2007n:虛設位元線
2100:VMM系統
2101:位元線開關
2102:下拉位元線開關
2103:下拉位元線開關
2104:位元線開關
2105:資料單元
2106:下拉單元
2107:下拉單元
2108:資料單元
2110:源極線
2111:線
2200:VMM系統
2201:位元線
2202:下拉位元線
2203:資料單元
2204:下拉單元
2205:下拉單元
2206:資料單元
2210:源極線
2211:源極線
2300:VMM系統
2301:位元線
2302:位元線
2303:資料單元
2304:下拉單元
2305:下拉單元
2306:資料單元
2400:VMM系統
2401:位元線
2402:下拉位元線
2403:(資料)單元
2404:下拉單元
2405:下拉單元
2406:下拉單元
2411:源極線
2500:佈局
2600:佈局
2601:位元線
2602:下拉位元線
2603:單元
2604:單元
2610:源極線
2700:VMM系統
2701:求和電路
2702:求和電路
2711:第一陣列
2712:第二陣列
2713:求和電路
2750:VMM系統
2751:第一陣列
2752:第二陣列
2801:冗餘陣列
2888:SLARY
2900:VMM系統
2901:陣列
2902:陣列
2903:行多工器
2905:虛設位元線開關
2905a:區域位元線
2905b:區域位元線
2905c:區域位元線
2905d:區域位元線
2908:全域位元線
2909:全域位元線
3000:VMM系統
3001:移位暫存器
3002:數位至類比轉換器
3003:求和器電路
3004:類比至數位轉換器
3005:位元線開關
3010:陣列
3100:電流-電壓求和器電路
3101-1:電流源
3101-n:電流源
3102:運算放大器
3103:可變電阻器
3104:可變保持電容器
3106:開關
3200:電流-電壓求和器電路
3201-1:電流源
3201-n:電流源
3202:運算放大器
3203:可變電容器
3204:開關
3300:電壓求和器
3301:開關
3302:開關
3303:可變電容器
3304:可變電容器
3305:運算放大器
3306:可變電容器
3350:電壓求和器
3351:開關
3352:開關
3353:開關
3354:開關
3355:運算放大器
3356:可變回饋電容器
3357:開關
3358:電容器
3400:輸出電路
3401:神經元輸出
3402:類比至數位轉換器
3403:輸出數位位元
3410:輸出電路
3411:神經元輸出電路
3412:類比至數位轉換器
3413:輸出
3420:輸出電路
3421:神經元輸出電路
3422:轉換器
3423:輸出
3500:神經元輸出電路
3501:可調整(縮放)電流源
3502:可調整(縮放)電流源
3600:可組態神經元串列類比至數位轉換器
3602:電容器
3603:VOUT
3604:比較器數位輸出(計數輸出)
3605:EC
3610:節點VC
3620:計數器
3621:數位輸出(計數輸出)
3641:計時
3650:VRAMP
3651:斜坡電流
3670:積分器
3700:可組態神經元逐次近似暫存器(SAR)類比至數位轉換器
3701:基於電容器之DAC
3702:比較器
3703:SAR邏輯
3704:GndV
3800:可組態神經元組合SAR類比至數位轉換器
3804:橋接電路
3888:SLARY
3900:可組態神經元管線化SAR CDAC ADC電路
3901:DAC
3906:殘餘電壓
3930:電容器
4000:曲線圖
4100:曲線圖
4300:曲線圖
4400:適應性偏壓電路
4401:可調整電流源
4402:可調整電阻器
4403:節點VREF_AB
4410:適應性偏壓電路
4420:適應性偏壓電路
4421:可調整電阻器
4422:電阻器
4423:運算放大器
4424:節點
4500:調節器
4510:調節器
4520:調節器
4600:輸入數位至類比轉換器
4650:輸出類比至數位轉換器
4700:可調整偏壓列解碼器
4701:字線解碼器
4702:控制閘極解碼器
4703:PMOS電晶體
4704:NMOS電晶體
4705:NAND閘
4706:反相器
4707:開關
4708:開關
4709:NMOS電晶體
4800:電流-電壓求和器電路
4900:電流-電壓求和器電路
4901:運算放大器
4902:可變電阻器
4903:電流源
5000:電流-電壓求和器
5100:電壓求和器
5200:電壓求和器
5301:抹除閘極解碼器電路
5302:PMOS選擇電晶體
5303:NMOS取消選擇電晶體
5304:控制閘極解碼器電路
5306:NMOS取消選擇電晶體
5307:源極線解碼器電路
5308:NMOS監視電晶體
5309:驅動電晶體
5310:取消選擇電晶體
5311:高電壓位準移位器
BL0:位元線
BL1:位元線
BL2:位元線
BL3:位元線
BLR0:端子
BLR1:端子
BLR2:端子
BLR3:端子
BLN:位元線
C1:層
C2:層
C3:層
CB1:第一突觸
CB2:突觸
CB3:突觸
CB4:突觸
CG0:控制閘極線
CG1:控制閘極線
CG2:控制閘極線
CG3:控制閘極線
EG:抹除閘極
EG0:抹除閘極
EG1:抹除閘極
EN:啟用信號
HVSUP:電壓軌
P1:啟動函數
P2:啟動函數
S1:層
S2:層
S3:層
SL:源極線
SL0:源極線
SL1:源極線
WL0:電壓輸入
WL1:電壓輸入
WL2:電壓輸入
WL3:電壓輸入
WLA0:字線
WLA1:字線
WLA2:字線
WLA3:字線
WLB0:字線
WLB1:字線
WLB2:字線
WLB3:字線
圖1描繪先前技術人工神經網路。
圖2描繪先前技術分離閘式快閃記憶體單元。
圖3描繪另一先前技術分離閘式快閃記憶體單元。
圖4描繪另一先前技術分離閘極快閃記憶體單元。
圖5描繪另一先前技術分離閘極快閃記憶體單元。
圖6描繪另一先前技術分離閘式快閃記憶體單元。
圖7描繪先前技術堆疊閘式快閃記憶體單元。
圖8描繪雙分離閘極記憶體單元。
圖9描繪利用一或多個VMM陣列之例示性人工神經網路之不同層級。
圖10描繪包含VMM陣列及其他電路系統之VMM系統。
圖11描繪利用一或多個VMM系統之例示性人工神經網路。
圖12描繪VMM陣列之具體例。
圖13描繪VMM陣列之另一具體例。
圖14描繪VMM陣列之另一具體例。
圖15描繪VMM陣列之另一具體例。
圖16描繪VMM陣列之另一具體例。
圖17描繪VMM系統。
圖18A、圖18B及圖18C描述先前技術VMM陣列。
圖19A、圖19B及圖19C描繪經改良VMM陣列。
圖20描繪另一經改良VMM陣列。
圖21描繪具有經改良源極線下拉機制的VMM系統。
圖22描繪具有經改良源極線下拉機制的另一VMM系統。
圖23描繪具有經改良源極線下拉機制的另一VMM系統。
圖24描繪具有經改良源極線下拉機制的另一VMM系統。
圖25描繪具有經改良源極線下拉機制之VMM系統的例示性佈局圖。
圖26描繪具有經改良源極線下拉機制之VMM系統的另一例示性佈局圖。
圖27A、圖27B及圖27C描繪其他經改良VMM陣列。
圖28描繪包含冗餘陣列之另一經改良VMM陣列。
圖29描繪包含兩個VMM陣列及共用虛設位元線切換電路的另一經改良VMM系統。
圖30描繪另一經改良VMM系統。
圖31描繪求和器電路之具體例。
圖32描繪求和器電路之另一具體例。
圖33A及圖33B描繪求和器電路之其他具體例。
圖34A、圖34B及圖34C描繪輸出電路之具體例。
圖35描繪神經元輸出電路。
圖36描繪類比至數位轉換器之具體例。
圖37描繪類比至數位轉換器之另一具體例。
圖38描繪類比至數位轉換器之另一具體例。
圖39描繪類比至數位轉換器之另一具體例。
圖40描繪VMM陣列中的控制閘極線與源極線之間的期望電壓差。
圖41描繪VMM陣列中字線與源極線之間的期望電壓差。
圖42描繪VMM陣列中的位元線與源極線之間的期望電壓差。
圖43描繪回應於溫度改變的VMM陣列中之端子之電壓的典型改變。
圖44A及圖44B描繪適應性偏壓電路。
圖45A及圖45B描繪調節器電路。
圖46A描繪數位至類比轉換器。
圖46B描繪類比至數位轉換器。
圖47描繪解碼器。
圖48描繪電流-電壓求和器。
圖49描繪另一電流-電壓求和器。
圖50描繪另一電流-電壓求和器。
圖51描繪另一電流-電壓求和器。
圖52描繪另一電流-電壓求和器。
圖53描繪用於抹除閘極解碼器、控制閘極解碼器以及源極線解碼器的高電壓解碼電路系統。
32:VMM系統
33:VMM陣列
34:字線閘極解碼器
35:控制閘極解碼器
36:位元線解碼器
37:源極線解碼器
38:差分求和器
39:啟動函數電路
Claims (47)
- 一種非揮發性記憶體系統,其包含:配置成列及行之非揮發性記憶體單元之一陣列,每一非揮發性記憶體單元包含一源極及一汲極;複數條位元線,該複數條位元線中之每一者耦接至一行非揮發性記憶體單元中的每一非揮發性記憶體單元的該汲極;一源極線,其耦接至每一非揮發性記憶體單元之該源極;及一適應性偏壓解碼器,其用於在一操作期間將一電壓提供至該陣列之一控制閘極線,其中該適應性偏壓解碼器回應於該源極線的一電壓之改變而調整提供至該控制閘極線之該電壓,該適應性偏壓解碼器包含基於一補償功能或使用一查找表而調整的一可調整電阻器。
- 如請求項1之非揮發性記憶體系統,其進一步包含複數條下拉位元線,該複數條下拉位元線中的每一者將一列非揮發性記憶體單元耦接至一下拉節點。
- 如請求項1之非揮發性記憶體系統,其中,該操作為一程式化操作。
- 如請求項3之非揮發性記憶體系統,其中,該適應性偏壓解碼器回應於溫度之改變而調整提供至該源極線之該電壓。
- 如請求項1之非揮發性記憶體系統,其中,該適應性偏壓解碼器回應於溫度之改變而調整提供至該源極線之該電壓。
- 如請求項1之非揮發性記憶體系統,其中,該可調整電阻器包含一第一末端及一第二末端,該第一末端耦接至一可調整電流源, 且該第二末端耦接至該源極線。
- 如請求項6之非揮發性記憶體系統,其中,該適應性偏壓解碼器進一步包含耦接至該電阻器之該第一末端的一調節器。
- 如請求項1之非揮發性記憶體系統,其中,該適應性偏壓解碼器基於對表徵資料執行之一功能而調整提供至該控制閘極線之該電壓。
- 如請求項1之非揮發性記憶體系統,其中,該適應性偏壓解碼器基於源極線電壓改變而調整提供至該控制閘極線之該電壓。
- 如請求項1之非揮發性記憶體系統,其中,該適應性偏壓解碼器基於體效應改變而調整提供至該控制閘極線之該電壓。
- 如請求項1之非揮發性記憶體系統,其中,該適應性偏壓解碼器包含一可調整電流源。
- 如請求項1之非揮發性記憶體系統,其中,該適應性偏壓解碼器包含一運算放大器。
- 如請求項1之非揮發性記憶體系統,其中,該適應性偏壓電路進一步包含用於將一數位輸入轉換成施加至該控制閘極線之一類比信號的一數位至類比轉換器。
- 如請求項13之非揮發性記憶體系統,其中,該適應性偏壓電路進一步包含用於將一陣列輸出電流轉換成數位輸出位元之一類比至數位轉換器。
- 如請求項1之非揮發性記憶體系統,其中,該適應性偏壓電路進一步包含用於將一陣列輸出轉換成數位輸出位元之一輸出電 路。
- 如請求項1之非揮發性記憶體系統,其中,該適應性偏壓電路進一步包含用於將一陣列輸出電流轉換成數位輸出位元之一類比至數位轉換器。
- 一種非揮發性記憶體系統,其包含:配置成列及行之非揮發性記憶體單元之一陣列,每一非揮發性記憶體單元包含一源極及一汲極;複數條位元線,該複數條位元線中之每一者耦接至一行非揮發性記憶體單元中的每一非揮發性記憶體單元的該汲極;一源極線,其耦接至每一非揮發性記憶體單元之該源極;及一適應性偏壓解碼器,其用於在一操作期間將一電壓提供至該陣列之一字線,其中該適應性偏壓解碼器回應於該源極線的一電壓之改變而調整提供至該字線之該電壓,該適應性偏壓解碼器包含基於一補償功能或使用一查找表而調整的一可調整電阻器。
- 如請求項17之非揮發性記憶體系統,其進一步包含:複數條下拉位元線,該複數條下拉位元線中之每一者將一列非揮發性記憶體單元耦接至一下拉節點。
- 如請求項17之非揮發性記憶體系統,其中,該操作為一讀取操作。
- 如請求項17之非揮發性記憶體系統,其中,該操作為一程式化操作。
- 如請求項17之非揮發性記憶體系統,其中,該適應性偏 壓解碼器回應於溫度之改變而調整提供至該源極線之該電壓。
- 如請求項17之非揮發性記憶體系統,其進一步包含一類比至數位轉換器。
- 如請求項18之非揮發性記憶體系統,其中,該可調整電阻器包含一第一末端及一第二末端,該第一末端耦接至一可調整電流源,且該第二末端耦接至該下拉節點。
- 如請求項23之非揮發性記憶體系統,其中,該適應性偏壓解碼器進一步包含耦接至該電阻器之該第一末端的一電壓調節器。
- 如請求項23之非揮發性記憶體系統,其中,該適應性偏壓解碼器進一步包含用於將一數位輸入轉換成施加至該字線的一類比信號之一數位至類比轉換器。
- 如請求項17之非揮發性記憶體系統,其中,該適應性偏壓解碼器基於對表徵資料執行之一功能而調整提供至該字線之該電壓。
- 如請求項17之非揮發性記憶體系統,其中,該適應性偏壓解碼器基於源極電壓改變而調整提供至該字線之該電壓。
- 如請求項17之非揮發性記憶體系統,其中,該適應性偏壓解碼器基於體效應改變而調整提供至該字線之該電壓。
- 如請求項17之非揮發性記憶體系統,其中,該適應性偏壓解碼器基於耦合比改變而調整提供至該字線之該電壓。
- 一種非揮發性記憶體系統,其包含:配置成列及行之非揮發性記憶體單元之一陣列,每一非揮發性記憶體單元包含一源極及一汲極; 複數條位元線,該複數條位元線中之每一者耦接至一行非揮發性記憶體單元中的每一非揮發性記憶體單元的該汲極;一源極線,其耦接至每一非揮發性記憶體單元之該源極;及一適應性偏壓解碼器,其用於在一操作期間將一電壓提供至該陣列之一抹除閘極線,其中該適應性偏壓解碼器回應於該源極線節點的一電壓之改變而調整提供至該抹除閘極線之該電壓,該適應性偏壓解碼器包含基於一補償功能或使用一查找表而調整的一可調整電阻器。
- 如請求項30之非揮發性記憶體系統,其進一步包含:複數條下拉位元線,該複數條下拉位元線中之每一者將一列非揮發性記憶體單元耦接至一下拉節點。
- 如請求項30之非揮發性記憶體系統,其中,該操作為一讀取操作。
- 如請求項30之非揮發性記憶體系統,其中,該操作為一程式化操作。
- 如請求項30之非揮發性記憶體系統,其中,該適應性偏壓解碼器回應於溫度之改變而調整提供至該源極線之該電壓。
- 如請求項30之非揮發性記憶體系統,其進一步包含一類比至數位轉換器。
- 如請求項31之非揮發性記憶體系統,其中,該可調整電阻器包含一第一末端及一第二末端,該第一末端耦接至一可調整電流源,且該第二末端耦接至該下拉節點。
- 如請求項30之非揮發性記憶體系統,其中,該適應性偏 壓解碼器進一步包含耦接至該電阻器之該第一末端的一電壓調節器。
- 如請求項37之非揮發性記憶體系統,其中,該適應性偏壓解碼器進一步包含用於將一數位輸入轉換成施加至該抹除閘極線之一類比信號的一數位至類比轉換器。
- 如請求項30之非揮發性記憶體系統,其中,該適應性偏壓解碼器基於對表徵資料執行之一功能而調整提供至該抹除閘極線之該電壓。
- 如請求項30之非揮發性記憶體系統,其中,該適應性偏壓解碼器基於源極電壓調變而調整提供至該抹除閘極線之該電壓。
- 如請求項30之非揮發性記憶體系統,其中,該適應性偏壓解碼器基於體效應改變而調整提供至該抹除閘極線之該電壓。
- 如請求項30之非揮發性記憶體系統,其中,該適應性偏壓解碼器基於耦合比改變而調整提供至該抹除閘極線之該電壓。
- 一種非揮發性記憶體系統,其包含:配置成列及行之非揮發性記憶體單元之一陣列,每一非揮發性記憶體單元包含一源極及一汲極;複數條位元線,該複數條位元線中之每一者耦接至一行非揮發性記憶體單元中的每一非揮發性記憶體單元的該汲極;一源極線,其耦接至每一非揮發性記憶體單元之該源極;及一適應性偏壓解碼器,其用於在操作期間將一固定電壓提供至該陣列之該源極線,該適應性偏壓解碼器包含基於一補償功能或使用一查找表而調整的一可調整電阻器。
- 如請求項43之非揮發性記憶體系統,其中,該適應性偏壓解碼器回應於溫度之改變而調整提供至該源極線之該電壓。
- 如請求項43之非揮發性記憶體系統,其中,該適應性偏壓解碼器為一力/感測調節器。
- 如請求項43之非揮發性記憶體系統,其中,該適應性偏壓解碼器為一緩衝器調節器。
- 如請求項43之非揮發性記憶體系統,其中,該適應性偏壓解碼器回應於溫度之改變而調整提供至該源極線之該電壓。
Applications Claiming Priority (6)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US202063048470P | 2020-07-06 | 2020-07-06 | |
| US63/048,470 | 2020-07-06 | ||
| US17/140,924 | 2021-01-04 | ||
| US17/140,924 US11875852B2 (en) | 2020-07-06 | 2021-01-04 | Adaptive bias decoder to provide a voltage to a control gate line in an analog neural memory array in artificial neural network |
| PCT/US2021/012158 WO2022010533A1 (en) | 2020-07-06 | 2021-01-05 | Adaptive bias decoder for analog neural memory array in artificial neural network |
| WOPCT/US21/12158 | 2021-01-05 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW202217823A TW202217823A (zh) | 2022-05-01 |
| TWI780719B true TWI780719B (zh) | 2022-10-11 |
Family
ID=74285616
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW110118463A TWI780719B (zh) | 2020-07-06 | 2021-05-21 | 非揮發性記憶體系統 |
Country Status (7)
| Country | Link |
|---|---|
| US (4) | US11875852B2 (zh) |
| EP (1) | EP4176433B1 (zh) |
| JP (1) | JP7493089B2 (zh) |
| KR (1) | KR102854228B1 (zh) |
| CN (1) | CN115968495A (zh) |
| TW (1) | TWI780719B (zh) |
| WO (1) | WO2022010533A1 (zh) |
Families Citing this family (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US11354562B2 (en) * | 2018-01-03 | 2022-06-07 | Silicon Storage Technology, Inc. | Programmable neuron for analog non-volatile memory in deep learning artificial neural network |
| US20230325650A1 (en) * | 2022-04-07 | 2023-10-12 | Silicon Storage Technology, Inc. | Vector-by-matrix-multiplication array utilizing analog outputs |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US7835200B2 (en) * | 2008-12-30 | 2010-11-16 | Stmicroelectronics S.R.L. | Level shifter |
| EP1866932B1 (en) * | 2005-04-01 | 2011-07-06 | SanDisk Corporation | Non-volatile memory and method with compensation for source line bias errors |
| TW201342381A (zh) * | 2011-12-21 | 2013-10-16 | Sandisk Technologies Inc | 用於3d非揮發性記憶體的具有被控制的選擇閘極電壓之抹除操作 |
| US20180204627A1 (en) * | 2016-05-18 | 2018-07-19 | Silicon Storage Technology, Inc. | Flash Memory Cell And Associated Decoders |
Family Cites Families (25)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5029130A (en) | 1990-01-22 | 1991-07-02 | Silicon Storage Technology, Inc. | Single transistor non-valatile electrically alterable semiconductor memory device |
| US5313421A (en) * | 1992-01-14 | 1994-05-17 | Sundisk Corporation | EEPROM with split gate source side injection |
| US5923585A (en) * | 1997-01-10 | 1999-07-13 | Invox Technology | Source biasing in non-volatile memory having row-based sectors |
| US6069824A (en) * | 1999-03-03 | 2000-05-30 | Matsushita Electric Industrial Co., Ltd. | Semiconductor memory device |
| KR100476889B1 (ko) * | 2002-04-04 | 2005-03-17 | 삼성전자주식회사 | 플래쉬메모리의 워드라인디코더 |
| US7327619B2 (en) * | 2002-09-24 | 2008-02-05 | Sandisk Corporation | Reference sense amplifier for non-volatile memory |
| US6747310B2 (en) | 2002-10-07 | 2004-06-08 | Actrans System Inc. | Flash memory cells with separated self-aligned select and erase gates, and process of fabrication |
| JP2007035115A (ja) * | 2005-07-25 | 2007-02-08 | Matsushita Electric Ind Co Ltd | 半導体記憶装置 |
| JP2007035169A (ja) * | 2005-07-27 | 2007-02-08 | Matsushita Electric Ind Co Ltd | 半導体記憶装置 |
| KR101434398B1 (ko) * | 2007-05-03 | 2014-09-23 | 삼성전자주식회사 | 고전압 발생 회로를 포함하는 플래시 메모리 장치 및그것의 동작 방법 |
| KR20100030979A (ko) * | 2008-09-11 | 2010-03-19 | 삼성전자주식회사 | 저항체를 이용한 비휘발성 메모리 장치 |
| US8811075B2 (en) * | 2012-01-06 | 2014-08-19 | Sandisk Technologies Inc. | Charge cycling by equalizing and regulating the source, well, and bit line levels during write operations for NAND flash memory: verify to program transition |
| US9530512B2 (en) * | 2014-09-19 | 2016-12-27 | Sandisk Technologies Llc | Temperature dependent sensing scheme to counteract cross-temperature threshold voltage distribution widening |
| JP6833873B2 (ja) | 2016-05-17 | 2021-02-24 | シリコン ストーリッジ テクノロージー インコーポレイテッドSilicon Storage Technology, Inc. | 不揮発性メモリアレイを使用したディープラーニングニューラルネットワーク分類器 |
| US10340010B2 (en) * | 2016-08-16 | 2019-07-02 | Silicon Storage Technology, Inc. | Method and apparatus for configuring array columns and rows for accessing flash memory cells |
| CN107799146B (zh) | 2016-08-31 | 2020-06-09 | 中芯国际集成电路制造(上海)有限公司 | 存储器阵列及其读、编程、擦除操作方法 |
| KR102375913B1 (ko) | 2017-10-18 | 2022-03-18 | 삼성전자주식회사 | 플래시 메모리 장치 및 이의 프로그램 방법 |
| US11087207B2 (en) * | 2018-03-14 | 2021-08-10 | Silicon Storage Technology, Inc. | Decoders for analog neural memory in deep learning artificial neural network |
| US11354562B2 (en) * | 2018-01-03 | 2022-06-07 | Silicon Storage Technology, Inc. | Programmable neuron for analog non-volatile memory in deep learning artificial neural network |
| US10522226B2 (en) * | 2018-05-01 | 2019-12-31 | Silicon Storage Technology, Inc. | Method and apparatus for high voltage generation for analog neural memory in deep learning artificial neural network |
| US10755783B2 (en) * | 2018-08-27 | 2020-08-25 | Silicon Storage Technology | Temperature and leakage compensation for memory cells in an analog neural memory system used in a deep learning neural network |
| US10741568B2 (en) * | 2018-10-16 | 2020-08-11 | Silicon Storage Technology, Inc. | Precision tuning for the programming of analog neural memory in a deep learning artificial neural network |
| US11423979B2 (en) * | 2019-04-29 | 2022-08-23 | Silicon Storage Technology, Inc. | Decoding system and physical layout for analog neural memory in deep learning artificial neural network |
| US12353503B2 (en) | 2019-05-02 | 2025-07-08 | Silicon Storage Technology, Inc. | Output array neuron conversion and calibration for analog neural memory in deep learning artificial neural network |
| US11600321B2 (en) * | 2020-03-05 | 2023-03-07 | Silicon Storage Technology, Inc. | Analog neural memory array storing synapsis weights in differential cell pairs in artificial neural network |
-
2021
- 2021-01-04 US US17/140,924 patent/US11875852B2/en active Active
- 2021-01-05 CN CN202180042600.2A patent/CN115968495A/zh active Pending
- 2021-01-05 WO PCT/US2021/012158 patent/WO2022010533A1/en not_active Ceased
- 2021-01-05 KR KR1020227039865A patent/KR102854228B1/ko active Active
- 2021-01-05 EP EP21702139.3A patent/EP4176433B1/en active Active
- 2021-01-05 JP JP2023500043A patent/JP7493089B2/ja active Active
- 2021-05-21 TW TW110118463A patent/TWI780719B/zh active
-
2023
- 2023-12-11 US US18/536,147 patent/US12499945B2/en active Active
- 2023-12-11 US US18/536,186 patent/US12518829B2/en active Active
- 2023-12-11 US US18/536,123 patent/US12475950B2/en active Active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| EP1866932B1 (en) * | 2005-04-01 | 2011-07-06 | SanDisk Corporation | Non-volatile memory and method with compensation for source line bias errors |
| US7835200B2 (en) * | 2008-12-30 | 2010-11-16 | Stmicroelectronics S.R.L. | Level shifter |
| TW201342381A (zh) * | 2011-12-21 | 2013-10-16 | Sandisk Technologies Inc | 用於3d非揮發性記憶體的具有被控制的選擇閘極電壓之抹除操作 |
| US20180204627A1 (en) * | 2016-05-18 | 2018-07-19 | Silicon Storage Technology, Inc. | Flash Memory Cell And Associated Decoders |
Also Published As
| Publication number | Publication date |
|---|---|
| US12518829B2 (en) | 2026-01-06 |
| WO2022010533A1 (en) | 2022-01-13 |
| US20240112736A1 (en) | 2024-04-04 |
| CN115968495A (zh) | 2023-04-14 |
| KR102854228B1 (ko) | 2025-09-05 |
| TW202217823A (zh) | 2022-05-01 |
| US11875852B2 (en) | 2024-01-16 |
| JP7493089B2 (ja) | 2024-05-30 |
| US20220004860A1 (en) | 2022-01-06 |
| JP2023533719A (ja) | 2023-08-04 |
| US20240127890A1 (en) | 2024-04-18 |
| US20240105263A1 (en) | 2024-03-28 |
| EP4176433B1 (en) | 2024-11-06 |
| KR20230006499A (ko) | 2023-01-10 |
| US12475950B2 (en) | 2025-11-18 |
| EP4176433A1 (en) | 2023-05-10 |
| US12499945B2 (en) | 2025-12-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI790551B (zh) | 人工神經網路中於差異單元對中儲存有突觸權重的類比神經記憶體陣列 | |
| TWI819298B (zh) | 包含邏輯單元之人工神經網路中之類比神經記憶體陣列及經改良之程式化機制 | |
| TWI785574B (zh) | 具有源極線下拉機制之人工神經網路中之類比神經記憶體陣列 | |
| US12475950B2 (en) | Adaptive bias decoder for non-volatile memory system | |
| CN120712609A (zh) | 用于非易失性存储器单元的矢量-矩阵乘法阵列的输出块 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| GD4A | Issue of patent certificate for granted invention patent |