KR20210126335A - Neuromorphic device and operating method of the same - Google Patents
Neuromorphic device and operating method of the same Download PDFInfo
- Publication number
- KR20210126335A KR20210126335A KR1020200044024A KR20200044024A KR20210126335A KR 20210126335 A KR20210126335 A KR 20210126335A KR 1020200044024 A KR1020200044024 A KR 1020200044024A KR 20200044024 A KR20200044024 A KR 20200044024A KR 20210126335 A KR20210126335 A KR 20210126335A
- Authority
- KR
- South Korea
- Prior art keywords
- layer
- neural network
- neuromorphic
- synaptic array
- artificial neural
- Prior art date
Links
- 238000011017 operating method Methods 0.000 title 1
- 230000000946 synaptic effect Effects 0.000 claims abstract description 104
- 238000013528 artificial neural network Methods 0.000 claims abstract description 87
- 210000002569 neuron Anatomy 0.000 claims abstract description 78
- 210000003050 axon Anatomy 0.000 claims abstract description 28
- 238000000034 method Methods 0.000 claims description 15
- 239000000463 material Substances 0.000 claims description 14
- 229910021420 polycrystalline silicon Inorganic materials 0.000 claims description 6
- 229920005591 polysilicon Polymers 0.000 claims description 4
- 230000000149 penetrating effect Effects 0.000 claims 1
- 238000004364 calculation method Methods 0.000 abstract description 7
- 230000035515 penetration Effects 0.000 abstract 2
- 239000010410 layer Substances 0.000 description 81
- 230000000875 corresponding effect Effects 0.000 description 20
- 238000010586 diagram Methods 0.000 description 18
- 210000004027 cell Anatomy 0.000 description 16
- 238000003491 array Methods 0.000 description 15
- 230000004913 activation Effects 0.000 description 13
- 238000001994 activation Methods 0.000 description 13
- 210000001787 dendrite Anatomy 0.000 description 10
- 230000006870 function Effects 0.000 description 8
- 230000002093 peripheral effect Effects 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000012545 processing Methods 0.000 description 6
- 101100112673 Rattus norvegicus Ccnd2 gene Proteins 0.000 description 5
- 210000000225 synapse Anatomy 0.000 description 5
- 238000013527 convolutional neural network Methods 0.000 description 4
- 238000013178 mathematical model Methods 0.000 description 4
- 230000001537 neural effect Effects 0.000 description 4
- 230000008569 process Effects 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- PXHVJJICTQNCMI-UHFFFAOYSA-N Nickel Chemical compound [Ni] PXHVJJICTQNCMI-UHFFFAOYSA-N 0.000 description 3
- 210000004556 brain Anatomy 0.000 description 3
- 210000000653 nervous system Anatomy 0.000 description 3
- BASFCYQUMIYNBI-UHFFFAOYSA-N platinum Chemical compound [Pt] BASFCYQUMIYNBI-UHFFFAOYSA-N 0.000 description 3
- 239000010936 titanium Substances 0.000 description 3
- ATJFFYVFTNAWJD-UHFFFAOYSA-N Tin Chemical compound [Sn] ATJFFYVFTNAWJD-UHFFFAOYSA-N 0.000 description 2
- GWEVSGVZZGPLCZ-UHFFFAOYSA-N Titan oxide Chemical compound O=[Ti]=O GWEVSGVZZGPLCZ-UHFFFAOYSA-N 0.000 description 2
- XLOMVQKBTHCTTD-UHFFFAOYSA-N Zinc monoxide Chemical compound [Zn]=O XLOMVQKBTHCTTD-UHFFFAOYSA-N 0.000 description 2
- MCMNRKCIXSYSNV-UHFFFAOYSA-N Zirconium dioxide Chemical compound O=[Zr]=O MCMNRKCIXSYSNV-UHFFFAOYSA-N 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 150000001875 compounds Chemical class 0.000 description 2
- 239000010949 copper Substances 0.000 description 2
- 239000012782 phase change material Substances 0.000 description 2
- 230000001242 postsynaptic effect Effects 0.000 description 2
- 210000005215 presynaptic neuron Anatomy 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 229910000314 transition metal oxide Inorganic materials 0.000 description 2
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 1
- KJTLSVCANCCWHF-UHFFFAOYSA-N Ruthenium Chemical compound [Ru] KJTLSVCANCCWHF-UHFFFAOYSA-N 0.000 description 1
- VYPSYNLAJGMNEJ-UHFFFAOYSA-N Silicium dioxide Chemical compound O=[Si]=O VYPSYNLAJGMNEJ-UHFFFAOYSA-N 0.000 description 1
- XUIMIQQOPSSXEZ-UHFFFAOYSA-N Silicon Chemical compound [Si] XUIMIQQOPSSXEZ-UHFFFAOYSA-N 0.000 description 1
- BQCADISMDOOEFD-UHFFFAOYSA-N Silver Chemical compound [Ag] BQCADISMDOOEFD-UHFFFAOYSA-N 0.000 description 1
- RTAQQCXQSZGOHL-UHFFFAOYSA-N Titanium Chemical compound [Ti] RTAQQCXQSZGOHL-UHFFFAOYSA-N 0.000 description 1
- 229910052782 aluminium Inorganic materials 0.000 description 1
- XAGFODPZIPBFFR-UHFFFAOYSA-N aluminium Chemical compound [Al] XAGFODPZIPBFFR-UHFFFAOYSA-N 0.000 description 1
- PNEYBMLMFCGWSK-UHFFFAOYSA-N aluminium oxide Inorganic materials [O-2].[O-2].[O-2].[Al+3].[Al+3] PNEYBMLMFCGWSK-UHFFFAOYSA-N 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000004888 barrier function Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 239000000872 buffer Substances 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 229910052798 chalcogen Inorganic materials 0.000 description 1
- 150000001787 chalcogens Chemical class 0.000 description 1
- 229910017052 cobalt Inorganic materials 0.000 description 1
- 239000010941 cobalt Substances 0.000 description 1
- GUTLYIVDDKVIGB-UHFFFAOYSA-N cobalt atom Chemical compound [Co] GUTLYIVDDKVIGB-UHFFFAOYSA-N 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 229910052593 corundum Inorganic materials 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- CJNBYAVZURUTKZ-UHFFFAOYSA-N hafnium(IV) oxide Inorganic materials O=[Hf]=O CJNBYAVZURUTKZ-UHFFFAOYSA-N 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 229910052741 iridium Inorganic materials 0.000 description 1
- GKOZUEZYRPOHIO-UHFFFAOYSA-N iridium atom Chemical compound [Ir] GKOZUEZYRPOHIO-UHFFFAOYSA-N 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 239000002858 neurotransmitter agent Substances 0.000 description 1
- 229910052759 nickel Inorganic materials 0.000 description 1
- GNRSAWUEBMWBQH-UHFFFAOYSA-N nickel(II) oxide Inorganic materials [Ni]=O GNRSAWUEBMWBQH-UHFFFAOYSA-N 0.000 description 1
- 150000004767 nitrides Chemical class 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000003909 pattern recognition Methods 0.000 description 1
- 229910052697 platinum Inorganic materials 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 229910052707 ruthenium Inorganic materials 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 229910052710 silicon Inorganic materials 0.000 description 1
- 239000010703 silicon Substances 0.000 description 1
- 229910052814 silicon oxide Inorganic materials 0.000 description 1
- 229910052709 silver Inorganic materials 0.000 description 1
- 239000004332 silver Substances 0.000 description 1
- 239000002356 single layer Substances 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 229910052715 tantalum Inorganic materials 0.000 description 1
- GUVRBAGPIYLISA-UHFFFAOYSA-N tantalum atom Chemical compound [Ta] GUVRBAGPIYLISA-UHFFFAOYSA-N 0.000 description 1
- 229910052719 titanium Inorganic materials 0.000 description 1
- WFKWXMTUELFFGS-UHFFFAOYSA-N tungsten Chemical compound [W] WFKWXMTUELFFGS-UHFFFAOYSA-N 0.000 description 1
- 229910052721 tungsten Inorganic materials 0.000 description 1
- 239000010937 tungsten Substances 0.000 description 1
- 229910001845 yogo sapphire Inorganic materials 0.000 description 1
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
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0009—RRAM elements whose operation depends upon chemical change
-
- 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/04—Architecture, e.g. interconnection topology
- G06N3/045—Combinations of networks
-
- 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
- G06N3/049—Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
-
- 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
- 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
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0007—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements comprising metal oxide memory material, e.g. perovskites
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/0023—Address circuits or decoders
- G11C13/0028—Word-line or row circuits
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C13/00—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
- G11C13/0002—Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
- G11C13/0021—Auxiliary circuits
- G11C13/003—Cell access
-
- H01L45/1233—
-
- H01L45/1253—
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10N—ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10N70/00—Solid-state devices having no potential barriers, and specially adapted for rectifying, amplifying, oscillating or switching
- H10N70/801—Constructional details of multistable switching devices
- H10N70/821—Device geometry
- H10N70/826—Device geometry adapted for essentially vertical current flow, e.g. sandwich or pillar type devices
-
- H—ELECTRICITY
- H10—SEMICONDUCTOR DEVICES; ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10N—ELECTRIC SOLID-STATE DEVICES NOT OTHERWISE PROVIDED FOR
- H10N70/00—Solid-state devices having no potential barriers, and specially adapted for rectifying, amplifying, oscillating or switching
- H10N70/801—Constructional details of multistable switching devices
- H10N70/841—Electrodes
-
- 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/08—Learning methods
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2213/00—Indexing scheme relating to G11C13/00 for features not covered by this group
- G11C2213/70—Resistive array aspects
- G11C2213/79—Array wherein the access device being a transistor
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C2213/00—Indexing scheme relating to G11C13/00 for features not covered by this group
- G11C2213/70—Resistive array aspects
- G11C2213/82—Array having, for accessing a cell, a word line, a bit line and a plate or source line receiving different potentials
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)
- Molecular Biology (AREA)
- General Health & Medical Sciences (AREA)
- Mathematical Physics (AREA)
- Software Systems (AREA)
- Data Mining & Analysis (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Evolutionary Computation (AREA)
- Computational Linguistics (AREA)
- General Physics & Mathematics (AREA)
- Neurology (AREA)
- Computer Hardware Design (AREA)
- Chemical & Material Sciences (AREA)
- Materials Engineering (AREA)
- Semiconductor Memories (AREA)
- Memory System (AREA)
Abstract
Description
본 발명은 뉴로모픽 장치에 관한 것으로, 더 상세하게는 3차원 시냅틱어레이를 포함하는 뉴로모픽 장치에 관한 것이다.The present invention relates to a neuromorphic device, and more particularly, to a neuromorphic device including a three-dimensional synaptic array.
인간의 신경계를 닮은 뉴로모픽 프로세서(neuromorphic processor)에 관한 관심이 증대되고 있다. 인간의 신경계에 존재하는 뉴런(neuron)과 시냅스(synapse)에 각각 대응되는, 뉴런 회로와 시냅스 회로를 설계하여, 뉴로모픽 프로세서를 구현하고자 하는 연구가 있어 왔다. 이와 같은 뉴로모픽 프로세서는 Convolutional NeuralNetwork(CNN), Recurrent Neural Network(RNN), Feedforward Neural Network(FNN) 등과 같은 다양한 뉴럴 네트워크들을 구동하기 위해 이용될 수 있고, 데이터 분류(classification) 또는 이미지 인식(recognition)과 같은 분야에서 활용될 수 있다.Interest in neuromorphic processors resembling the human nervous system is increasing. There have been studies to implement a neuromorphic processor by designing neuronal circuits and synaptic circuits, respectively, corresponding to neurons and synapses existing in the human nervous system. Such a neuromorphic processor may be used to drive various neural networks, such as a Convolutional NeuralNetwork (CNN), a Recurrent Neural Network (RNN), a Feedforward Neural Network (FNN), etc., and perform data classification or image recognition. ) can be used in fields such as
뉴로모픽 장치는 뉴런(neuron) 간의 연결 강도를 저장하는 시냅스(synapse) 회로를 포함할 수 있고, 시냅스 회로는 하나 이상의 비트를 저장하는 가변 저항 소자들을 포함하는 메모리 장치를 이용하여 구현될 수 있다.The neuromorphic device may include a synapse circuit that stores connection strength between neurons, and the synaptic circuit may be implemented using a memory device including variable resistance elements that store one or more bits. .
본 발명이 해결하고자 하는 기술적 과제는 고집적 고전력의 시냅틱 어레이를 제공하는 것이다.The technical problem to be solved by the present invention is to provide a highly integrated, high-power synaptic array.
본 발명이 해결하고자 하는 다른 기술적 과제는 고집적 고전력의 뉴로모픽 장치를 제공하는 것이다.Another technical problem to be solved by the present invention is to provide a highly integrated, high-power neuromorphic device.
본 발명이 해결하고자 하는 다른 기술적 과제는 고집적 고전력의 뉴로모픽 장치의 동작방법을 제공하는 것이다.Another technical problem to be solved by the present invention is to provide a method of operating a neuromorphic device with high integration and high power.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The technical problems of the present invention are not limited to the technical problems mentioned above, and other technical problems not mentioned will be clearly understood by those skilled in the art from the following description.
상기 기술적 과제를 달성하기 위한 몇몇 실시예에 따른 뉴로모픽 장치는 적어도 하나의 시냅틱 어레이를 포함하고, 시냅틱 어레이는 제1방향으로 연장되어 배치되며 각각에 연결된 복수의 액손회로로부터 서로 독립적으로 입력신호를 수신하는 복수의 입력라인, 제1방향과 직교하는 제2방향으로 연장되어 배치되며, 서로 독립적으로 출력신호를 출력하는 복수의 비트라인, 각각이 복수의 입력라인 중 어느 하나의 입력라인과 복수의 비트라인 중 어느 하나의 비트라인 사이에서 제3방향으로 직렬로 연결되는 스트링 선택 트랜지스터 및 적어도 둘의 멤리스터 소자를 포함하는 복수의 셀 스트링, 복수의 입력라인과 복수의 비트라인 사이에서 제3방향으로 이격되면서 적층되어 배치되고, 스트링 선택 트랜지스터 및 적어도 둘의 저항성 멤리스터 소자에 연결되는 복수의 전극패드, 복수의 전극패드 각각에 스트링 선택신호 또는 워드라인 선택신호를 인가하는 디코더 및 하나의 셀 스트링에 연결된 하나의 비트라인 각각에 연결되어, 출력신호를 합산하여 기설정된 임계치를 초과하면 변환하여 출력하는 복수의 뉴런 회로를 포함하고, 시냅틱 어레이는 스트링 선택신호가 인가된 적어도 하나의 셀 스트링에서 워드라인 선택신호로 활성화된 레이어의 멤리스터 소자에서 입력신호에 대한 인공신경망 연산을 수행할 수 있다.Neuromorphic device according to some embodiments of the present invention for achieving the above technical object includes at least one synaptic array, the synaptic array is arranged to extend in a first direction, and input signals independently from each other from a plurality of axon circuits connected thereto A plurality of input lines for receiving A plurality of cell strings including a string selection transistor and at least two memristor elements connected in series in a third direction between any one of the bit lines of A plurality of electrode pads that are spaced apart from each other in the direction and are stacked and are connected to the string selection transistor and at least two resistive memristor elements, a decoder that applies a string selection signal or a word line selection signal to each of the plurality of electrode pads, and one cell and a plurality of neuron circuits connected to each of the bit lines connected to the string, summing the output signals, and converting and outputting the output signals when they exceed a preset threshold, wherein the synaptic array includes at least one cell string to which the string selection signal is applied. An artificial neural network operation can be performed on the input signal in the memristor element of the layer activated by the word line selection signal.
상기 기술적 과제를 달성하기 위한 몇몇 실시예에 따른 뉴로모픽 장치는 뉴로모픽 데이터를 리드하여 저장하는 온-칩 메모리 및 적어도 하나의 시냅틱 어레이를 포함하여, 시냅틱 어레이에서 뉴로모픽 데이터에 따른 인공신경망 연산을 실행하는 뉴로모픽 프로세서를 포함하고, 시냅틱 어레이는 복수의 액손회로에 각각 연결되어 서로 독립적으로 뉴로모픽 데이터에 기초한 입력신호를 수신하는 복수의 입력라인, 복수의 입력라인과 이격되어 배치되고, 각각이 인공신경망 연산에 따른 출력전류를 출력하는 복수의 비트라인, 복수의 비트라인 각각에 연결되어 출력전류를 합산하고, 합산된 출력전류가 기설정된 임계치를 초과하면 출력전압으로 출력하는 복수의 뉴런회로, 복수의 입력라인과 복수의 비트라인 사이에서 소정의 간격으로 적층되어 배치되는 복수의 전극패드, 각각이 복수의 전극패드를 관통하여 입력라인 중 어느 하나와 비트라인 중 어느 하나 사이에 연결되어, 출력전류의 전류패스를 형성하는 복수의 멤리스터 관통 구조체, 각각이 복수의 멤리스터 관통 구조체와 복수의 비트라인 사이에 배치되는 복수의 스트링 선택 트랜지스터 및 복수의 전극패드 각각에 연결되어, 워드라인 선택 신호 및 스트링 선택 신호를 인가하는 디코더를 포함할 수 있다.Neuromorphic device according to some embodiments for achieving the above technical problem includes an on-chip memory that reads and stores neuromorphic data and at least one synaptic array, It includes a neuromorphic processor that executes a neural network operation, and the synaptic array is connected to a plurality of axon circuits to receive input signals based on neuromorphic data independently of each other. a plurality of bit lines, each of which outputs an output current according to an artificial neural network operation, is connected to each of the plurality of bit lines to sum the output currents, and output as an output voltage when the summed output current exceeds a preset threshold A plurality of neuron circuits, a plurality of electrode pads stacked at a predetermined interval between a plurality of input lines and a plurality of bit lines, each passing through the plurality of electrode pads, between any one of the input lines and any one of the bit lines is connected to a plurality of memristor through structures forming a current path of the output current, each of which is connected to a plurality of string select transistors and a plurality of electrode pads disposed between the plurality of memristor through structures and the plurality of bit lines, , a decoder for applying a word line selection signal and a string selection signal.
상기 기술적 과제를 달성하기 위한 몇몇 실시예에 따른 뉴로모픽 장치의 동작 방법은, 적어도 하나의 3차원 시냅틱 어레이를 포함하고, 뉴로모픽 장치는 서로 독립적인 복수의 입력신호를 수신하면, 워드라인 선택신호에 상응하는 레이어의 복수의 저항성 멤리스터 소자에서 입력신호에 대한 인공신경망 연산을 수행하고, 연산 결과 복수의 출력전류를 비트라인을 통해 뉴런 회로로 출력하며, 출력전류를 합산하여 기설정된 임계치를 초과하면 출력전압으로 출력하고, 3차원 시냅틱 어레이는 복수의 레이어를 포함하여, 워드라인 선택신호에 따라 활성화되는 각 레이어별로 서로 독립적인 인공신경망 연산을 수행할 수 있다.The method of operating a neuromorphic device according to some embodiments for achieving the above technical problem includes at least one three-dimensional synaptic array, and when the neuromorphic device receives a plurality of input signals independent of each other, a word line An artificial neural network operation is performed on the input signal in a plurality of resistive memristor elements of a layer corresponding to the selection signal, and a plurality of output currents are outputted to the neuron circuit through the bit line as a result of the operation, and the output current is summed to a preset threshold value. is output as an output voltage, and the 3D synaptic array includes a plurality of layers, so that an artificial neural network operation independent of each other can be performed for each layer activated according to a word line selection signal.
기타 실시예들의 구체적인 사항들은 상세한 설명 및 도면들에 포함되어 있다.The details of other embodiments are included in the detailed description and drawings.
도 1은 뉴로모픽 연산에 대한 수학적 모델을 나타낸 것이다.
도 2는 뉴로모픽 연산을 설명하기 위한 개념도이다.
도 3 내지 도 5는 몇몇 실시예에 따른 뉴로모픽 장치의 시냅틱 어레이 회로 구성을 설명하기 위한 도면이다.
도 6a 내지 도 6d는 몇몇 실시예에 따른 시냅틱 어레이 중 하나의 스트링을 나타낸 도면이다.
도 7은 몇몇 실시예에 따른 시냅틱 어레이에서 어느 하나의 레이어가 선택되었을 때 동작을 설명하기 위한 도면이다.
도 8 내지 도 9는 몇몇 실시예에 따른 뉴로모픽 장치의 동작을 설명하기 위한 개념도이다.
도 10 내지 도 11은 몇몇 실시예에 따른 뉴로모픽 장치의 동작을 설명하기 위한 개념도이다.
도 12 내지 도 13은 몇몇 실시예에 따른 시냅틱 어레이에서의 레이어별 동작을 설명하기 위한 개념도이다.
도 14는 일 실시예에 따른 뉴로모픽 장치의 하드웨어 구성을 설명하기 위한 블록도이다.
도 15는 몇몇 실시예에 따른 전자 시스템의 구성을 나타내는 블록도이다.1 shows a mathematical model for a neuromorphic operation.
2 is a conceptual diagram for explaining a neuromorphic operation.
3 to 5 are diagrams for explaining a configuration of a synaptic array circuit of a neuromorphic device according to some embodiments.
6A to 6D are diagrams illustrating one string of a synaptic array according to some embodiments.
7 is a diagram for describing an operation when any one layer is selected in a synaptic array according to some embodiments.
8 to 9 are conceptual diagrams for explaining the operation of a neuromorphic device according to some embodiments.
10 to 11 are conceptual diagrams for explaining an operation of a neuromorphic device according to some embodiments.
12 to 13 are conceptual diagrams for explaining an operation of each layer in a synaptic array according to some embodiments.
14 is a block diagram illustrating a hardware configuration of a neuromorphic device according to an embodiment.
15 is a block diagram illustrating a configuration of an electronic system according to some embodiments.
이하, 첨부된 도면을 참조하여 본 발명의 기술적 사상에 따른 실시예들에 대해 설명한다.Hereinafter, embodiments according to the technical spirit of the present invention will be described with reference to the accompanying drawings.
도 1은 뉴로모픽 연산에 대한 수학적 모델을 나타낸 것이고, 도 2는 뉴로모픽 연산을 설명하기 위한 개념도이다.1 shows a mathematical model for the neuromorphic operation, and FIG. 2 is a conceptual diagram for explaining the neuromorphic operation.
생물학적 뉴런은 인간의 신경계에 존재하는 세포를 의미한다. 생물학적 뉴런은 기초적인 생물학적 계산 개체의 하나이다. 인간의 두뇌는 대략 1000억개 정도의 생물학적 뉴런과 생물학적 뉴런들 사이의 100조개 정도의 연결(interconnect)을 포함하고 있다.Biological neurons refer to cells present in the human nervous system. Biological neurons are one of the basic biological computational entities. The human brain contains about 100 billion biological neurons and 100 trillion interconnections between biological neurons.
인간의 두뇌는 많은 수의 뉴런들이 서로 연결되어 형성되는 신경망을 통해 다양한 신호들을 전달 및 처리함으로써 방대한 양의 정보를 학습하고 기억할 수 있다. 인간의 두뇌 내의 뉴런들 사이의 방대한 수의 연결들은 생물학적 컴퓨팅의 거대 병렬 속성(massively parallel nature)에 직접 상관되는바, 인공 신경망을 모사하여 방대한 양의 정보를 효율적으로 처리하기 위한 다양한 시도가 있어왔다. 예를 들어, 인공 신경망을 뉴런 수준에서 구현하기 위해 설계된 컴퓨팅 시스템으로서, 뉴로모픽 장치가 연구되고 있다.The human brain can learn and memorize vast amounts of information by transmitting and processing various signals through a neural network formed by connecting a large number of neurons. Since the vast number of connections between neurons in the human brain is directly correlated with the massively parallel nature of biological computing, various attempts have been made to efficiently process vast amounts of information by simulating artificial neural networks. . For example, as a computing system designed to implement artificial neural networks at the neuron level, neuromorphic devices are being studied.
생물학적 뉴런의 동작은 수학적 모델로 모사될 수 있다. 생물학적 뉴런에 대응하는 수학적 모델은 뉴로모픽 연산의 일 예로서, 다수의 뉴런들로부터의 정보에 대해 시냅틱 웨이트를 곱하는 곱셈연산, 시냅틱 웨이트가 곱해진 값들에 대한 덧셈 연산(Σ), 및 덧셈 연산 결과에 대해 특성함수(b) 및 활성 함수(f)를 적용하는 연산을 포함할 수 있다. The behavior of biological neurons can be simulated with mathematical models. A mathematical model corresponding to a biological neuron is an example of a neuromorphic operation. A multiplication operation for multiplying information from a plurality of neurons by a synaptic weight, an addition operation for values multiplied by the synaptic weight (Σ), and an addition operation It may include an operation that applies the characteristic function (b) and the activation function (f) to the result.
도 1을 참조하면, 입력 레이어(input layer), 히든 레이어들(hidden layers) 및 출력 레이어(output layer)를 포함하는 인공 신경망의 예시가 도시되어 있다. 인공 신경망은 수신되는 입력 데이터(예를 들어, Vin 1, Vin 2, Vin3 )를 기초로 연산을 수행하고, 수행 결과를 기초로 출력 데이터(예를 들어, Vout1 및 Vout2 )를 생성할 수 있다.Referring to FIG. 1 , an example of an artificial neural network including an input layer, hidden layers, and an output layer is illustrated. The artificial neural network may perform an operation based on received input data (eg,
인공 신경망은 2개 이상의 히든 레이어들을 포함하는 딥 뉴럴 네트워크(Deep Neural Network: DNN) 또는 n-계층 뉴럴 네트워크(n-layers neural networks)일 수 있다. 예를 들어, 도 1에 도시된 바와 같이, 인공 신경망은 입력 레이어(Layer 1), 2개의 히든 레이어들(Layer 2 및 Layer 3) 및 출력 레이어(Layer 4)를 포함하는 DNN일 수 있다. DNN은 CNN, RNN, FNN, Deep Belief Networks, Restricted Boltzman Machines 등을 포함할 수 있으나, 이에 제한되지 않는다.The artificial neural network may be a deep neural network (DNN) or n-layers neural networks including two or more hidden layers. For example, as shown in FIG. 1 , the artificial neural network may be a DNN including an input layer (Layer 1), two hidden layers (
한편, 도 1의 인공 신경망은 4개의 레이어들을 포함하는 것으로 도시되어 있으나, 이는 예시에 불과할 뿐 인공 신경망은 더 적거나 많은 레이어들을 포함할 수 있다. 또한, 인공 신경망은 도 1에 도시된 것과는 다른 다양한 구조의 레이어들을 포함할 수 있다.Meanwhile, although the artificial neural network of FIG. 1 is illustrated as including four layers, this is only an example and the artificial neural network may include fewer or more layers. Also, the artificial neural network may include layers having various structures different from those shown in FIG. 1 .
인공 신경망에 포함된 레이어들 각각은 "뉴런(neuron)", "프로세싱 엘리먼트(Processing element: PE)", "유닛(unit)" 또는 이와 유사한 용어들로 알려진, 복수의 인공 뉴런(artificial neuron)들을 포함할 수 있다. 예를 들어, 도 1에 도시된 바와 같이, Layer 1은 3개의 뉴런들, Layer 2는 4개의 뉴런들을 포함할 수 있다. 다만, 이는 예시에 불과할 뿐 인공 신경망에 포함된 레이어들 각각은 다양한 개수의 뉴런들을 포함할 수 있다.Each of the layers included in the artificial neural network includes a plurality of artificial neurons, also known as “neuron”, “processing element (PE)”, “unit” or similar terms. may include For example, as shown in FIG. 1 ,
도 1에서, 인공 신경망에 포함된 레이어들 각각에 포함된 뉴런들은 서로 연결되어 데이터를 교환할 수 있다. 예를 들어, 하나의 뉴런은 이전 레이어의 다른 뉴런들로부터 데이터를 수신하여 연산할 수 있고, 연산 결과를 다음 레이어의 또 다른 뉴런들로 출력할 수 있다.1 , neurons included in each of the layers included in the artificial neural network may be connected to each other to exchange data. For example, one neuron may receive data from other neurons of a previous layer and perform an operation, and may output an operation result to other neurons of a next layer.
뉴런들 각각의 출력 값은 액티베이션(activation)이라고 불릴 수 있다. 액티베이션은 한 뉴런의 출력 값이면서, 다음 레이어에 포함된 뉴런들의 입력 값일 수 있다. 한편, 뉴런들 각각은 이전 레이어에 포함된 뉴런들로부터 수신된 액티베이션들 및 웨이트(weight)들에 기초하여 자신의 액티베이션 값을 결정할 수 있다. 웨이트는 각 뉴런에서의 액티베이션을 계산하기 위해 이용되는 파라미터로서, 뉴런들 간의 연결관계에 할당되는 값일 수 있다. 웨이트는 뉴런들을 연결하는 시냅스에 저장될 수 있다.An output value of each of the neurons may be referred to as activation. Activation may be an output value of one neuron and an input value of neurons included in the next layer. Meanwhile, each of the neurons may determine its own activation value based on activations and weights received from the neurons included in the previous layer. The weight is a parameter used to calculate activation in each neuron, and may be a value assigned to a connection relationship between neurons. Weights can be stored in synapses that connect neurons.
뉴런들 각각은 입력을 받아 액티베이션을 출력하는 연산 유닛(computational unit)일 수 있고, 입력-출력을 매핑할 수 있다. 예를 들어, σ는 활성화 함수(activation function)이고,는 (i-1) 번째 레이어에 포함된 k번째 뉴런으로부터 i 번째 레이어에 포함된 j번째 뉴런으로의 웨이트이며, 는 i 번째 레이어에 포함된 j 번째 뉴런의 바이어스(bias)이고, 는 i 번째 레이어의 j 번째 뉴런의 액티베이션이라고 할 때, 액티베이션 는 다음과 같은 수학식 1을 따를 수 있다.Each of the neurons may be a computational unit that receives an input and outputs an activation, and may map input-output. For example, σ is the activation function, is the weight from the k-th neuron included in the (i-1)-th layer to the j-th neuron included in the i-th layer, is the bias of the j-th neuron included in the i-th layer, is the activation of the j-th neuron of the i-th layer, may follow
<수학식 1><
이와 같이, 인공 신경망의 연산은 이전 레이어의 뉴런의 출력 값과 시냅스의 웨이트를 곱하는 곱셈 연산과 각 곱셈의 결과값들을 수신 뉴런에서 더하는 덧셈 연산을 포함할 수 있다.As such, the operation of the artificial neural network may include a multiplication operation of multiplying the output value of a neuron of a previous layer and a weight of a synapse, and an addition operation of adding the result values of each multiplication in the receiving neuron.
도 3 내지 도 5는 몇몇 실시예에 따른 뉴로모픽 장치의 시냅틱 어레이 회로 구성을 설명하기 위한 도면이다.3 to 5 are diagrams for explaining a configuration of a synaptic array circuit of a neuromorphic device according to some embodiments.
도 3을 참고하면, 뉴로모픽 장치(200)의 어레이 회로 구성에 대해 2차원적으로 도시한 것이다. 뉴로모픽 장치(200)는 액손 회로들(210), 시냅스 회로들(220), 덴드라이트 회로들(230), 뉴런 회로들(240) 및 네트워크(260)을 포함한다. 뉴로모픽 장치(200)는 액손 회로들(210)로부터 제 1 방향으로 연장되는 제 1 방향 라인들(또는 액손 라인들) 및 덴드라이트 회로들(230)에 해당하는 제 2 방향의 제 2 방향 라인들(또는 덴드라이트 라인들)을 포함할 수 있다. 제1 방향 라인들 및 제 2 방향 라인들은 서로 교차하고, 제 1 방향 라인들 및 제 2 방향 라인들의 교차점들 상에 시냅스 회로들(220)이 배치될 수 있다. 한편, 도 3을 참조하면, 제1 방향은 행 방향이고, 제2 방향은 열 방향인 경우의 예시가 도시되어 있으나, 이에 제한되는 것은 아니다.Referring to FIG. 3 , the configuration of the array circuit of the
액손 회로들(210) 각각은 생물학적 뉴런의 축색돌기를 모사하는 회로를 의미할 수 있다. 뉴런의 축색돌기는 뉴런으로부터 다른 뉴런으로 신호들을 송신하는 기능을 수행하는바, 뉴런의 축색돌기를 모사하는 액손회로들(210) 각각은 액티베이션을 입력 받아 제 1 방향 라인들로 전달할 수 있다. 액티베이션은 뉴런을 통해 전달되는 신경 전달 물질에 대응되는 것으로서, 액손 회로들(210) 각각에 입력되는 전기적 신호를 의미할 수 있다. 한편, 액손 회로들(210) 각각은 입력 정보를 저장하는 메모리 또는 레지스터를 포함할 수 있다.Each of the
시냅스 회로들(220) 각각은 뉴런과 뉴런 사이의 시냅스를 모사하는 회로를 의미할 수 있다. 시냅스 회로들(220)은 뉴런과 뉴런 사이의 연결 강도에 대응되는 웨이트들을 저장할 수 있다. 시냅스 회로들(220)은 각각은 웨이트를 저장하기 위한 메모리 소자를 포함하거나 웨이트를 저장하고 있는 메모리 소자에 연결될 수 있다. 여기서, 이와 같은 메모리 소자는 멤리스터(memrister)에 해당될 수 있다.Each of the
덴드라이트 회로들(230)은 뉴런의 수상돌기(즉, 덴드라이트)를 모사하는 회로를 의미할 수 있다. 덴드라이트 회로들(230)은 다른 외부 뉴런으로부터 신호를 수신하는 기능을 수행하고, 제 2 방향 라인을 통해 웨이트와 액티베이션의 연산 결과를 뉴런 회로들(240) 각각에 제공할 수 있다. 뉴런 회로들(240) 각각은 대응되는 제 2 방향 라인을 통해 수신된 연산 결과들에 기초하여 스파이크(spike)를 출력할지 여부를 결정할 수 있다. 예를 들어, 뉴런회로들(240) 각각은 수신된 연산 결과들을 누적한 값이 기 설정된 임계값 이상인 경우 스파이크를 출력할 수 있다. 뉴런 회로들(240)로부터 출력된 스파이크들은 네트워크(260)를 통해 다음 단의 액손들에 입력되는 액티베이션에 대응될 수 있다.The
뉴런 회로들(240)은 시냅스 회로들(220)을 기준으로 후단에 위치하는바, 포스트 시냅틱 뉴런 회로들로 지칭될 수 있고, 액손 회로들(21)은 시냅스 회로들(220)을 기준으로 전단에 위치하는바, 프리(pre) 시냅틱 뉴런 회로들로 지칭될 수 있다.
한편, 시냅스 회로들(220) 각각은 멤리스터 소자(250)와 같은 메모리 소자로 구현될 수 있다. 멤리스터 소자(250)는 멤리스터 기반 설계를 통해 가중치들이 저장되고 교차점에서 곱셈 연산(즉, AND 연산)이 수행될 수 있는 소자이다. 본 실시예에 따른 시냅스 회로들(220) 각각의 멤리스터 소자(250)는 상 변화 물질을 이용하는 PRAM(Phase Change Random Access Memory) 또는 전이 금속 산화물(Complex Metal Oxide) 등의 가변 저항 물질을 이용한 RRAM(Resisitive Random Access Memory 등의 저항성 소자로 구현될 수 있다. 저항성 소자들을 구성하는 물질들은 전류 또는 전압의 크기 및/또는 방향에 따라서 그 저항값이 가변되며, 전류 또는 전압이 차단되어도 그 저항값을 그대로 유지하는 불휘발성 특성을 갖는다.Meanwhile, each of the
도 4를 참고하면, 몇몇 실시예들에 따른 시냅틱 어레이는 복수의 입력라인(IL), 복수의 비트라인(BL) 및 각 입력라인과 비트라인 사이에 배치되는 복수의 셀 스트링들을 포함할 수 있다. 설명의 편의를 위해 3개의 비트라인 및 3개의 입력라인을 포함하는 시냅틱 어레이로 설명하나, 다양한 실시예에 따라 더 많은 개수의 비트라인 및 입력라인을 포함할 수 있다.Referring to FIG. 4 , a synaptic array according to some embodiments may include a plurality of input lines IL, a plurality of bit lines BL, and a plurality of cell strings disposed between each input line and the bit line. . For convenience of description, a synaptic array including three bit lines and three input lines is described. However, according to various embodiments, a larger number of bit lines and input lines may be included.
시냅틱 어레이의 입력라인(IL)과 비트라인(BL)은 Z방향으로 이격되면서 서로 직교한다. 예를 들면 입력라인(IL)은 X방향으로 연장되고, 비트라인은 Y방향으로 연장될 수 있다. 입력라인(IL)은 액손 회로가 연결되는 라인이고, 비트라인(BL)은 덴드라이트 회로가 연결되는 라인일 수 있다.The input line IL and the bit line BL of the synaptic array are orthogonal to each other while being spaced apart in the Z direction. For example, the input line IL may extend in the X direction, and the bit line may extend in the Y direction. The input line IL may be a line to which an axon circuit is connected, and the bit line BL may be a line to which a dendrite circuit is connected.
비트라인들(BL1 ~ BL3) 각각에 복수의 셀 스트링들이 병렬로 연결될 수 있다. 복수의 셀 스트링들은 서로 독립적인 입력라인(IL1~IL3)에 연결될 수 있다. 즉, 복수의 셀 스트링 각각은 하나의 입력 라인(예를 들어 IL1)과 하나의 비트 라인(예를 들어 BL1)에 연결될 수 있다.A plurality of cell strings may be connected in parallel to each of the bit lines BL1 to BL3. The plurality of cell strings may be connected to input lines IL1 to IL3 independent of each other. That is, each of the plurality of cell strings may be connected to one input line (eg, IL1) and one bit line (eg, BL1).
복수의 입력라인(IL1-IL3) 각각은 X방향으로 연장되면서 Y방향으로 이격되어 서로 평행하게 배치될 수 있다. 각각의 입력라인(IL1-IL3)은 서로 독립적으로 입력신호가 인가될 수 있다. 몇몇 실시예에 따라 액손회로(210)는 입력스위치(SW,310)로 구현되어 각각의 입력라인(IL1-IL3)의 입력단에 연결되어, 입력신호(Vin1-Vin3)를 인가할 수 있다. 몇몇 실시예에 따라, 액손회로(210)는 메모리 또는 레지스터로 구현되어 입력신호(Vin1-Vin3)를 저장했다가 출력할 수도 있다.Each of the plurality of input lines IL1 - IL3 may extend in the X direction and be spaced apart from each other in the Y direction to be parallel to each other. An input signal may be applied to each of the input lines IL1-IL3 independently of each other. According to some embodiments, the
예를 들어, 셀 스트링들 각각은 비트라인(BL)에 연결된 스트링 선택 트랜지스터, 스트링 선택 트랜지스터와 입력 라인(IL) 사이에 직렬 연결된 복수의 멤리스터 소자들(320), 입력 라인(BL)을 포함할 수 있다. 멤리스터 소자(320)들 각각은 워드라인 트랜지스터 및 가중치 저장요소(weight strogae element)를 포함할 수 있다. 하나의 셀 스트링은 수직으로 적층되어 하나의 뉴런 회로를 공유하여 이용함으로써 오버헤드를 줄일 수 있다. 셀 스트링에 대해서는 도 6a 내지 도 6d에서 상세히 설명하기로 한다.For example, each of the cell strings includes a string select transistor connected to the bit line BL, a plurality of
몇몇 실시예에서 시냅틱 어레이는 레이어(Layer) 단위로 동작한다. 뉴로모픽 장치는 각 레이어마다 독립적으로 인공신경망 연산을 수행하여 학습할 수 있다. In some embodiments, the synaptic array operates in units of layers. The neuromorphic device can learn by performing artificial neural network calculations independently for each layer.
하나의 레이어는 시냅틱 어레이에서 하나의 워드라인(WL)에 따라 활성화되는, 같은 평면상에 배치된 멤리스터 소자들을 포함할 수 있다. 각각의 레이어는 도 1에서 설명한 바와 같이 서로 다른 개수의 멤리스터 소자들을 포함할 수 있다. 하나의 레이어에 포함되는 멤리스터 소자의 개수는 디코더(370) 및 주변회로(360)의 제어에 따라 가변될 수 있다. 예를 들어 제1 레이어는 3 x 3의 멤리스터 소자를 포함할 수 있고, 제2 레이어는 2 x 3의 멤리스터 소자를 포함할 수 있다.One layer may include memristor elements disposed on the same plane, activated according to one word line WL in the synaptic array. Each layer may include a different number of memristor elements as described with reference to FIG. 1 . The number of memristor elements included in one layer may vary according to the control of the
비트라인(BL1-BL2) 각각은 출력신호(Iout)를 뉴런 회로들(340)로 출력한다. 몇몇 실시예에 따라 하나의 비트라인(BL)마다 하나의 뉴런 회로(340)가 연결될 수 있다.Each of the bit lines BL1 - BL2 outputs an output signal Iout to the
뉴런 회로(340)는 출력신호(Iout)를 전류값에서 전압값(Vout)으로 변환하여 주변회로(360)로 전송할 수 있다.The
디코더(370)는 워드라인 선택신호(WL1-WL3) 및 스트링 선택신호(Select)에 따라 복수의 워드라인 중 적어도 하나의 워드라인을 활성화하여, 특정 주소의 멤리스터 소자를 활성화할 수 있다. 이때 워드라인에는 패스전압(Vpass) 또는 오프전압(Voff)이 인가될 수 있다.The
도 5에서, 좀 더 구체적으로 동작을 설명하면, 주변회로(460)는 적어도 2개의 트랜지스터(461, 462)를 포함할 수 있다. 제1 및 제2 트랜지스터(461, 462)는 주변회로(460)와 비트라인(BL) 사이에 연결되고, 제1 트랜지스터(461)는 시냅틱 어레이의 입력단 측에, 제2 트랜지스터(462)는 시냅틱 어레이의 출력단 측에 연결될 수 있다.Referring to FIG. 5 , when describing the operation in more detail, the
주변회로(460)는 먼저 액손회로(410)로 입력신호(Vin)를 출력한다. 트레이닝 펄스 생성회로(401)는 입력신호(Vin)가 인가되면, 학습을 수행할 것인지에 따른 제어신호에 기초하여 트레이닝 펄스를 생성한다. 제1 트랜지스터(461)는 트레이닝 펄스 생성회로(401) 및 비트라인(BL)사이에 연결되어, 주변회로(461)의 제어에 따라 트레이닝 펄스를 비트라인으로 출력한다.The
스트링 선택신호(Select)에 따라 적어도 하나의 스트링(X)이 선택되면, 제어신호(CON)에 따라 디코더(470)를 통해 선택된 적어도 하나의 워드라인은 오프전압(Off)을 인가하고, 선택되지 않은 나머지 워드라인에는 패스 전압(Vpass)을 인가할 수 있다. When at least one string X is selected according to the string selection signal Select, the off voltage Off is applied to the at least one word line selected through the
일 예로 워드라인 WL3이 선택되면 워드라인 WL3의 트랜지스터에 오프 전압(Off)이 인가되고, 워드라인 WL1, WL2, WL4에는 패스전압(Vpass)이 인가된다. 시냅틱 어레이는 워드라인 WL3에 상응하는 레이어에서 인공신경망 연산을 수행한다. 예를 들어 워드라인 WL3의 멤리스터 소자(450)는 입력신호(Vin)에 가중치를 곱하여 출력신호(Iout)로 출력할 수 있다.For example, when the word line WL3 is selected, the off voltage Off is applied to the transistor of the word line WL3, and the pass voltage Vpass is applied to the word lines WL1, WL2, and WL4. The synaptic array performs artificial neural network operation in the layer corresponding to the word line WL3. For example, the
비트라인(BL)은 각 스트링에서 출력되는 출력신호(Iout)가 합산될 수 있다. 제2 트랜지스터(462)는 합산된 출력신호(Itot)를 수신하면, 주변회로(460)의 제어에 따라 턴온되는 경우에 합산된 출력신호(Itot)를 뉴런 회로(440)로 출력한다. 뉴런 회로(440)는 합산된 출력신호(Itot)가 기설정된 임계값을 넘는 경우, 출력전압(Vout)으로 변환하여 주변회로(460)로 출력할 수 있다. In the bit line BL, the output signals Iout output from each string may be summed. When the
도 6a 내지 도 6d는 몇몇 실시예에 따른 시냅틱 어레이 중 하나의 스트링을 나타낸 도면이다.6A to 6D are diagrams illustrating one string of a synaptic array according to some embodiments.
도 6a를 참고하며, 하나의 셀 스트링(X)은 비트라인(BL)과 입력라인(IL) 사이에 스트링 선택 트랜지스터 및 직렬로 연결된 적어도 둘의 멤리스터 소자(320)를 포함할 수 있다. 멤리스터 소자는 하나의 워드라인 선택 트랜지스터 및 저항성 메모리 셀을 포함한다. 셀 스트링(X) 내에서 각각의 워드라인에 상응하는 멤리스터 소자는 서로 다른 레이어에 포함될 수 있다. Referring to FIG. 6A , one cell string X may include a string selection transistor and at least two
도 6b를 참고하면, Z축으로 이격되면서 서로 직교로 교차하는 비트라인(BL) 및 입력라인(IL)사이에, X-Y방향으로 평면적으로 연장되는 전극 패드가 적층될 수 있다.Referring to FIG. 6B , electrode pads extending planarly in the X-Y direction may be stacked between the bit lines BL and the input lines IL that are spaced apart along the Z-axis and cross each other orthogonally.
전극 패드는 Z방향으로 소정의 간격으로 이격되어 적층되고, 전극 패드(WL1-WL4) 각각의 사이에는 전극간 절연막(ILD)를 포함할 수 있다. 전극간 절연막은 예를 들어, 실리콘 산화물을 포함할 수 있지만, 이에 제한되는 것은 아니다. 전극 패드 각각에는 메모리 셀들의 워드라인(WL1-WL3)을 포함할 수 있다. 또한 도시하지는 않았으나 전극 패드 각각에는 도 4 내지 도 6a에서 설명한 스트링 선택 트랜지스터에 포함되는 게이트 전극 및 액손 회로의 출력단을 포함할 수 있다. The electrode pads may be stacked to be spaced apart from each other by a predetermined interval in the Z direction, and an inter-electrode insulating layer ILD may be interposed between the electrode pads WL1 - WL4 . The inter-electrode insulating layer may include, for example, silicon oxide, but is not limited thereto. Each of the electrode pads may include word lines WL1-WL3 of memory cells. Also, although not shown, each of the electrode pads may include a gate electrode included in the string selection transistor described with reference to FIGS. 4 to 6A and an output terminal of an axon circuit.
직렬로 연결된 멤리스터 소자는 멤리스터 관통 구조체로 형성될 수 있다. 멤리스터 관통 구조체는 Z축으로 길게 연장된 기둥 모양으로서, 적층된 전극패드를 관통하여 하나의 비트라인(BL)과 하나의 입력라인(IL)을 연결하도록 배치된다. The memristor elements connected in series may be formed as a through-memristor structure. The through-memristor structure has a columnar shape extending along the Z-axis, and is disposed to pass through the stacked electrode pads to connect one bit line BL and one input line IL.
도 6c 및 도 6d를 참고하면, 멤리스터 소자(Y)는 콘트롤 게이트 전극(510), 게이트 절연막(520), 폴리-실리콘 산화물(530), 저항성 물질 또는 상-변화 물질(540) 및 필라 산화물(Pillar Oxide, 550)을 포함할 수 있다.6C and 6D , the memristor element Y includes a
멤리스터 소자(Y)는 필라 산화물(550)을 중심으로, 저항성 물질(540), 폴리-실리콘 산화물(530), 게이트 절연막(520) 및 컨트롤 게이트 전극(510)의 순서로 겹겹이 둘러싸인 기둥 형태일 수 있다. The memristor element Y has a pillar shape surrounded by a
도 6b 내지 도 6d에서, 컨트롤 게이트 전극(510)은 전극 패드일 수 있다. 컨트롤 게이트 전극(510)은 백금(Pt), 루테늄(Ru), 이리듐(Ir), 은(Ag), 알루미늄(Al), 티타늄(Ti), 탄탈륨(Ta), 텅스텐(W), 실리콘(Si), 구리(Cu), 니켈(Ni), 코발트(Co), 이들의 도전성 질화물, 예를 들면, TiN, 또는, 이들의 조합, 예를 들면, Ti/TiN막일 수 있다. 바람직하게는, 컨트롤 게이트 전극(510)은 Si CMOS 기반의 공정과 잘 양립하는 TiN일 수 있다. 6B to 6D , the
몇몇 실시예에 따라 멤리스터 소자(Y)들은 멤리스터 소자를 통과하는 전류에 의해 그 저항이 선택적으로 변화될 수 있는 특징(즉, 가변저항 특성)을 갖는 물질들 중의 적어도 하나를 포함할 수 있다. 몇몇 실시예에 따라 저항성 물질(540)은, 전이 금속 산화물 막, 예를 들면, TiO2, NiO, HfO2, Al2O3, ZrO2 및 ZnO 층 중 어느 하나 또는 이들의 조합일 수 있다. 또는, 칼코겐계 화합물 막 또는 페로브스카이트계 화합물 막과 같은 저항의 가변적 스위칭이 가능한 재료일 수도 있다. 저저항 상태의 저항값과 고저항 상태의 저항값의 비가 크고, 소비 전력을 감소시키기 위해 구동 전압이 작은 재료가 선택될 수 있다.According to some embodiments, the memristor elements Y may include at least one of materials having a characteristic (ie, variable resistance characteristic) whose resistance can be selectively changed by a current passing through the memristor element. . According to some embodiments, the
도시된 예에서 저항성 물질(540)과 컨트롤 게이트 전극(510)은 단일층으로 도시되어 있지만, 다른 실시예에 적합한 장벽막을 포함하는 다층 구조일 수도 있다.In the illustrated example, the
도 7은 몇몇 실시예에 따른 시냅틱 어레이에서 어느 하나의 레이어가 선택되었을 때 동작을 설명하기 위한 도면이다.7 is a diagram for describing an operation when any one layer is selected in a synaptic array according to some embodiments.
도 7을 참고하면, 전류 패스는 입력 라인(IL)으로부터 비트라인(BL) 방향으로 형성되는데, 전극 패드(511 내지 514) 중 어느 하나의 전극 패드(513)에 오프 전압(OFF)이 인가되고, 나머지 전극패드(511,512, 514)에는 패스 전압(Vpass)이 인가되면, 전류는 채널층, 즉 폴리 실리콘 산화물(530)으로 흐르다가, 전극 패드(513)에 상응하는 레이어에서는 오프 전압으로 인해 저항성 물질(540)로 우회하였다가 다음 전극 패드(514)에서 다시 폴리 실리콘 산화물(530)로 흐를 수 있다.Referring to FIG. 7 , a current path is formed in a direction from an input line IL to a bit line BL, and an off voltage OFF is applied to any one of the
전류가 선택된 워드라인에 대해 저항성 물질(540)로 흐르게 되면, 저항성 물질(540)을 통과하는 정도에 따라 저항값이 가변되어, 입력전압(Vin) 대비 가변된 저항값에 따라 출력전류(Iout)가 결정될 수 있다. 셀 스트링에서 저항성 메모리 소자는 직렬로 연결되어 있고, 저항성분에 대한 전류의 선형적 특성에 따라, 출력전류(Iout)는 뉴런 회로에서 합산될 수 있다.When the current flows through the
도 8 내지 도 9는 몇몇 실시예에 따른 뉴로모픽 장치의 동작을 설명하기 위한 개념도이다.8 to 9 are conceptual diagrams for explaining the operation of a neuromorphic device according to some embodiments.
도 8 및 도 9에서, 뉴로모픽 장치(600)는 적어도 둘의 시냅틱 어레이(621,622)를 포함할 수 있다. 적어도 둘의 시냅틱 어레이(621,622)는 각각 액손회로(611), 뉴런회로(641)를 포함할 수 있고, 시냅틱 어레이(621,622) 간에 서로 직렬 연결될 수 있다. 8 and 9 , the
시냅틱 어레이(621, 622)의 각 레이어는 서로 독립적인 인공신경망 연산을 수행할 수 있다. 몇몇 실시예에 따라 시냅틱 어레이(621, 622)의 워드라인 WL1에 상응하는 제1 레이어는 얼굴인식에 대한 인공신경망 연산, 워드라인 WL2에 상응하는 제2 레이어는 암호분석에 대한 인공신경망 연산, 워드라인 WL3에 상응하는 제3 레이어는 트랜드 추론에 대한 인공신경망 연산, 워드라인 WL4에 상응하는 제4 레이어는 패턴인식에 대한 인공신경망 연산을 수행할 수 있다.Each layer of the
도 9에서 몇몇 실시예에 따라 4x4 어레이로 구현된 제1 시냅틱 어레이(621) 및 제2 시냅틱 어레이(622)를 설명하나, 다양한 실시예에 따라 적어도 2x2 이상의 어레이로 구현할 수 있다. Although the first
디코더(630)는 제1 시냅틱 어레이(621)와 제2 시냅틱 어레이(622)에 각각 연결되어, 어느 하나의 시냅틱 어레이를 선택하고, 선택된 시냅틱 어레이의 스트링 선택신호 및 워드라인 전압을 인가할 수 있다.The
입력신호(Vin1, 즉 Vin11, Vin12,Vin13)이 입력되면, 제1 액손회로(611)를 통해 제1 시냅틱 어레이(621)로 입력되고, 디코더(630)는 입력신호(Vin1)에 따른 어느 하나의 레이어(도시된 예에서 Array4)를 선택하여 인공신경망 연산을 수행할 수 있다. 인공신경망 연산 결과, 출력신호(Iout1, Iout2, Iout3)가 제1 시냅틱 어레이(621)에서 출력되면, 제1 뉴런 회로(641, 즉 6411, 6412, 6413)에서 입력신호(Vin2, 즉 Vin21, Vin22, Vin23)로 변환한다. 입력신호(Vin2)는 덴드라이트, 즉 비트라인에서 합산된 출력신호(Iout1, Iout2, Iout3)이 기설정된 임계치를 초과하는 경우에 출력될 수 있다. When the input signal Vin1, that is, Vin11, Vin12, Vin13 is input, it is input to the first
입력신호(Vin2)는 제2 액손회로(612)를 통해 제2 시냅틱 어레이(622)로 입력되고, 디코더(630)는 입력신호(Vin2)에 따른 어느 하나의 레이어(도시된 예에서 Array4)를 선택하여 인공신경망 연산을 수행할 수 있다. 인공신경망 연산 결과, 출력신호(Iout2, 즉 Iout21, Iout22, Iout23)가 제2 시냅틱 어레이(622)에서 출력되면, 제2 뉴런 회로(642, 즉 6421, 6422, 6423)에서 출력신호(Vout21, Vout22, Vout23)로 변환된다. 출력신호(Vout21, Vout22, Vout23)는 덴드라이트, 즉 비트라인에서 합산된 출력신호(Iout21, Iout22, Iout23)이 각각 기설정된 임계치를 초과하는 경우에 출력될 수 있다. The input signal Vin2 is input to the second
몇몇 실시예에 따라 뉴로모픽 장치(600)는 복수의 시냅틱 어레이의 동일 레이어를 활성화하여 인공신경망 연산을 수행할 수 있다. 즉, 디코더(630)를 통해 제1 시냅틱 어레이(621)의 Array4와 제2 시냅틱 어레이(622)의 Array4를 활성화하여, 인공신경망 연산을 수행하여 출력신호를 출력할 수 있다. 이때 제1 시냅틱 어레이(621)의 Array4 제2 시냅틱 어레이(622)의 Array4는 동일한 NxM 어레이를 가질 수 있다(N, M은 각각 2이상의 자연수). According to some embodiments, the
제1 및 제2 시냅틱 어레이(621, 622)의 Array1 내지 Array4는 인공신경망 연산을 위한 각각 서로 독립적인 크기의 어레이일 수 있다. 각 레이어에서의 어레이 크기는 도 6a에서 설명한 바와 같이, 몇몇 실시예에 따라 Array 1은 3x3어레이 Array 2는 2x3어레이, Array3는 4x4어레이, Array4는 2x2어레이일 수 있다. Array1 to Array4 of the first and second
도 10 내지 도 11은 몇몇 실시예에 따른 뉴로모픽 장치의 동작을 설명하기 위한 개념도이다.10 to 11 are conceptual diagrams for explaining an operation of a neuromorphic device according to some embodiments.
도 10 및 도 11을 참고하면, 몇몇 실시예에 따라 뉴로모픽 장치(700)는 액손회로(710), 하나의 시냅틱 어레이(720), 디코더(730), 뉴런 회로(740) 및 래치 회로(750)를 포함할 수 있다.10 and 11 , according to some embodiments, the
도 8 및 도 9의 실시예와 달리 뉴로모픽 장치(700)는 도 10(b)에 도시한 바와 같이, 하나의 시냅틱 어레이(720)를 이용하여 인공신경망 연산을 수행할 수 있다. 이경우 이전 레이어에서의 연산 결과는 래치 회로(750)에 저장하였다가 다음 인공신경망 학습이 필요한 경우 래치 회로(750)에 저장된 값을 시냅틱 어레이(720)로 입력하고 다음 인공신경망 연산을 수행할 수 있다.Unlike the embodiment of FIGS. 8 and 9 , the
시냅틱 어레이(720)의 각 레이어는 서로 연계된 인공신경망 연산을 수행할 수 있다. 몇몇 실시예에 따라 얼굴인식에 대한 인공신경망 연산을 위해 시냅틱 어레이(621, 622)의 워드라인 WL1에 상응하는 제1 레이어 내지 워드라인 WL4에 상응하는 제4 레이어는 래치 회로(750)에 저장된 값을 입력받아 얼굴 인식에 대한 인공신경망 연산을 수행하며 학습할 수 있다. 즉, 하나의 시냅틱 어레이에서 레이어를 달리하며 인공신경망 연산을 수행함으로써 리드 디스터브(Read disturb)가 최소화되고, 복수의 시냅틱 어레이가 있는 경우 어레이끼리 연결하기 위한 커넥션 자유도가 향상될 수 있다.Each layer of the
도 10(a) 및 도 10(b)에서, 뉴로모픽 장치(700)는 입력신호(Vin1)이 입력되면, 액손회로(710)를 통해 시냅틱 어레이(720)로 입력되고, 디코더(730)는 입력신호(Vin1)에 따른 어느 하나의 레이어(예를 들어 WL1에 상응하는 레이어)를 선택하여 인공신경망 연산을 수행할 수 있다. 인공신경망 연산 결과, 출력신호(Iout1)가 시냅틱 어레이(720)에서 출력되면, 뉴런 회로(740)에서 출력신호를 전류(Iout1)에서 전압 신호(Vout1)로 바꾸어 출력할 수 있다. 변환된 출력신호(Vout1)은 래치회로(750)에 저장되었다가, 다음 인공신경망 연산(2nd)시 호출되어 입력신호(Vin2)로서 WL2에 상응하는 레이어로 입력될 수 있다. 마찬가지로 세번째 인공신경망 연산(3rd), 네번째 인공신경망 연산(4th) 또한, 이전 연산결과(Vin3, Vin4)를 입력받아 래치회로(750, 즉, 7501, 7502, 7503)에 저장하였다가 순차적으로 다른 레이어(도시된 예에서 WL3에 상응하는 레이어, WL4에 상응하는 레이어)로 입력하여 뉴런 회로(740, 즉, 7401, 7402, 7403)를 통해 출력신호(Vout)를 출력할 수 있다. 10A and 10B, when an input signal Vin1 is input to the
도 12 및 도 13은 몇몇 실시예에 따른 시냅틱 어레이에서의 레이어별 동작을 설명하기 위한 개념도이다. 몇몇 실시예에 따라 4번의 인공신경망 학습을 수행한다고 가정하자. 12 and 13 are conceptual diagrams for explaining an operation of each layer in a synaptic array according to some embodiments. Assume that artificial neural network learning is performed four times according to some embodiments.
도 12에서, 몇몇 실시예에 따라 뉴로모픽 장치(600)가 복수의 시냅틱 어레이를 포함한 경우, 시냅틱 어레이는 각 워드라인에 상응하는 레이어별로 서로 독립적인 인공신경망 연산을 수행할 수 있다. 4번의 인공신경망 학습을 위해 4개의 시냅틱 어레이는, 직렬로 연결되어 시냅틱 어레이별로 순차적으로 활성화하여, 동일한 워드라인에 대한 레이어(도시된 예에서 Array 4)에서 순차적으로 제1 인공신경망 연산, 제2 인공신경망 연산, 제3 인공신경망 연산 및 제4 인공신경망 연산을 수행하고 출력신호(Vout)를 출력할 수 있다. 12 , when the
도 13에서, 몇몇 실시예에 따라 뉴로모픽 장치(700)가 하나의 시냅틱 어레이를 포함한 경우, 시냅틱 어레이는 모든 레이어가 동일한 인공신경망 연산을 수행할 수 있다. 4번의 인공신경망 학습을 위해, 시냅틱 어레이는 레이어별로 순차적으로 활성화하여 제1 레이어(Array 1)에서 제1 인공신경망 연산, 제2 레이어(Array 2)에서 제2 인공신경망 연산, 제3 레이어(Array 3)에서 제3 인공신경망 연산 및 제4 레이어에서(Array 4)에서 제4 인공신경망 연산을 수행하고 출력신호(Vout)를 출력할 수 있다. In FIG. 13 , when the
도 14는 일 실시예에 따른 뉴로모픽 장치의 하드웨어 구성을 설명하기 위한 블록도이다.14 is a block diagram illustrating a hardware configuration of a neuromorphic device according to an embodiment.
도 14를 참고하면, 뉴로모픽 장치(100)는 뉴로모픽 프로세서(112)와 온-칩 메모리(114)를 포함하는 뉴로모픽 칩(110)과, 외부 메모리(120)를 포함한다. 다만, 도 14에 도시된 뉴로모픽 장치(100)에는 본 실시예들과 관련된 구성요소들만이 도시되어 있다. 따라서, 뉴로모픽 장치(100)에는 도 14에 도시된 구성요소들 외에 다른 범용적인 구성요소들, 예를 들어 CPU(central processing unit), GPU(graphics processing unit), AP(application processor), 센서 모듈, 통신 모듈 등이 더 포함될 수 있음은 당해 기술분야의 통상의 기술자에게 자명하다.Referring to FIG. 14 , the
뉴로모픽 장치(100)는 PC(personal computer), 서버 디바이스, 모바일 디바이스, 임베디드 디바이스 등의 다양한 종류의 전자 디바이스들에 포함된 장치일 수 있다. 뉴로모픽 장치(100)는 예를 들어, 뉴럴 네트워크를 이용한 음성 인식, 영상 인식, 영상 분류 등을 수행하는 스마트폰, 태블릿 디바이스, AR(Augmented Reality) 디바이스, IoT(Internet of Things) 디바이스, 자율주행 자동차, 로보틱스, 의료기기 등에 포함된 하드웨어 구성에 해당될 수 있다. 즉, 뉴로모픽 장치(100)는 위와 같은 전자 디바이스에 탑재되는 전용 하드웨어 가속기(HW accelerator)에 해당될 수 있고, 뉴로모픽 장치(100)는 뉴럴 네트워크 구동을 위한 전용 모듈인 NPU(neural processing unit), TPU(Tensor Processing Unit), Neural Engine 등과 같은 하드웨어 가속기일 수 있으나, 이에 제한되지 않는다.The
뉴로모픽 칩(110)은 뉴로모픽 장치(100)에서 뉴럴 네트워크를 구동하기 위한 전반적인 기능들을 제어하는 역할을 한다. 예를 들어, 뉴로모픽 칩(110)의 뉴로모픽 프로세서(112)는 뉴로모픽 장치(100) 내의 외부 메모리(120)에 저장된 뉴로모픽 데이터(예를 들어, 액손 값, 시냅스 값 등)에 액세스하여 뉴로모픽 관련 프로그램들을 실행함으로써, 뉴로모픽 장치(100)를 전반적으로 제어한다. 뉴로모픽 프로세서(112)는 도 1 내지 도 13에 도시된 몇몇 실시예에 따른 시냅틱 어레이를 포함할 수 있다. 뉴로모픽 칩(110)은 뉴로모픽 장치(100) 내부 또는 외부에 구비된 CPU, GPU, AP 등의 제어에 따라 뉴럴 네트워크를 구동할 수 있다.The
외부 메모리(120)는 뉴로모픽 칩(110) 내에서 처리되는 각종 뉴로모픽 데이터들을 저장하는 하드웨어로서, 외부메모리(120)는 뉴로모픽 칩(110)에서 처리된 데이터들 및 처리될 데이터들을 저장할 수 있다. 또한, 외부 메모리(120)는 뉴로모픽 칩(110)에 의해 구동될 애플리케이션들, 드라이버들 등을 저장할 수 있다. 외부 메모리(120)는 DRAM(dynamic random access memory), SRAM(static random access memory) 등과 같은 RAM(random access memory), ROM(read-only memory), EEPROM(electrically erasable programmable read-only memory), CD-ROM, 블루레이 또는 다른 광학 디스크 스토리지, HDD(hard disk drive), SSD(solid state drive), 또는 플래시 메모리를 포함할 수 있다.The
뉴로모픽 칩(110)의 온-칩 메모리(114)는 외부 메모리(120)로부터 프리 시냅틱 뉴런 회로들을 위한 뉴로모픽 데이터, 예를 들어 액손 값들, 시냅스 값들을 리드하여 저장(또는 버퍼링)할 수 있고, 저장된 뉴로모픽 데이터를 이용하여 뉴럴 네트워크, 즉 인공신경망 연산을 실행한다. 또한, 온-칩 메모리(114)는 뉴럴 네트워크의 실행 결과로 생성된 뉴런 값들, 스파이크 값들 등과 같은 포스트 시냅틱 뉴런 회로들을 위한 데이터를 저장할 수도 있다.The on-
도 15는 몇몇 실시예에 따른 전자 시스템의 구성을 나타내는 블록도이다.15 is a block diagram illustrating a configuration of an electronic system according to some embodiments.
도 15를 참고하면, 전자 시스템(1000)은 뉴럴 네트워크를 기초로 입력 데이터를 실시간으로 분석하여 유효한 정보를 추출하고, 추출된 정보를 기초로 상황 판단을 하거나 또는 전자 시스템(1000)이 탑재되는 전자 디바이스의 구성들을 제어할 수 있다. 예컨대 전자 시스템(1000)은 드론(drone), 첨단 운전자 보조 시스템(Advanced Drivers Assistance System; ADAS) 등과 같은 로봇 장치, 스마트 TV, 스마트폰, 의료 디바이스, 모바일 디바이스, 영상 표시 디바이스, 계측 디바이스, IoT 디바이스 등에 적용될 수 있으며, 이 외에도 다양한 종류의 전자 디바이스들 중 적어도 하나에 탑재될 수 있다.Referring to FIG. 15 , the
전자 시스템(1000)은 프로세서(1010), RAM(1020), 뉴로모픽 장치(1030), 메모리(1040), 센서 모듈(1050) 및 통신 모듈(1060)을 포함할 수 있다. 전자 시스템(1000)은 입출력 모듈, 보안 모듈, 전력 제어 장치 등을 더 포함할 수 있다. 전자 시스템(1000)의 하드웨어 구성들 중 일부는 적어도 하나의 반도체 칩에 탑재될 수 있다.The
프로세서(1010)는 전자 시스템(1200)의 전반적인 동작을 제어한다. 프로세서(1010)는 하나의 프로세서 코어(Single Core)를 포함하거나, 복수의 프로세서 코어들(Multi-Core)을 포함할 수 있다. 프로세서(1010)는 메모리(1040)에 저장된 프로그램들 및/또는 데이터를 처리 또는 실행할 수 있다. 일부 실시예에 있어서, 프로세서(1010)는 메모리(1040)에 저장된 프로그램들을 실행함으로써, 뉴로모픽 장치(1030)의 기능을 제어할 수 있다. 프로세서(1010)는 CPU, GPU, AP 등으로 구현될 수 있다.The
RAM(1020)은 프로그램들, 데이터, 또는 명령들(instructions)을 일시적으로 저장할 수 있다. 예컨대 메모리(1040)에 저장된 프로그램들 및/또는 데이터는 프로세서(1010)의 제어 또는 부팅 코드에 따라 RAM(1020)에 일시적으로 저장될 수 있다. RAM(1020)은 DRAM(Dynamic RAM) 또는 SRAM(Static RAM) 등의 메모리로 구현될 수 있다.The
뉴로모픽 장치(1030)는 수신되는 입력 데이터를 기초로 뉴럴 네트워크의 연산을 수행하고, 수행 결과를 기초로 정보 신호를 생성할 수 있다. 뉴럴 네트워크는 CNN, RNN, FNN, Deep Belief Networks, Restricted Boltzman Machines 등을 포함할 수 있으나 이에 제한되지 않는다. 뉴로모픽 장치(1030)는 뉴럴 네트워크 전용 하드웨어 가속기 자체 또는 이를 포함하는 장치로서, 앞서 설명된 뉴로모픽 프로세서를 포함할 수 있다.The
정보 신호는 음성 인식 신호, 사물 인식 신호, 영상 인식 신호, 생체 정보 인식 신호 등과 같은 다양한 종류의 인식 신호 중 하나를 포함할 수 있다. 예를 들어, 뉴럴 네트워크 장치(1030)는 비디오 스트림에 포함되는 프레임 데이터를 입력 데이터로서 수신하고, 프레임 데이터로부터 프레임 데이터가 나타내는 이미지에 포함된 사물에 대한 인식 신호를 생성할 수 있다. 그러나, 이에 제한되는 것은 아니며, 전자 시스템(1000)이 탑재된 전자 장치의 종류 또는 기능에 따라 뉴로모픽 장치(1030)는 다양한 종류의 입력 데이터를 수신할 수 있고, 입력 데이터에 따른 인식 신호를 생성할 수 있다.The information signal may include one of various types of recognition signals such as a voice recognition signal, an object recognition signal, an image recognition signal, and a biometric information recognition signal. For example, the
메모리(1040)는 데이터를 저장하기 위한 저장 장소로서, OS(Operating System), 각종 프로그램들, 및 각종 데이터를 저장할 수 있다. 실시예에 있어서, 메모리(1040)는 뉴로모픽 장치(1030)의 연산 수행 과정에서 생성되는 중간 결과들을 저장할 수 있다.The
메모리(1040)는 DRAM일 수 있으나, 이에 한정되는 것은 아니다. 메모리(1040)는 휘발성 메모리 또는 불휘발성 메모리 중 적어도 하나를 포함할 수 있다. 불휘발성 메모리는 ROM, PROM, EPROM, EEPROM, 플래시 메모리, PRAM, MRAM, RRAM, FRAM 등을 포함한다. 휘발성 메모리는 DRAM, SRAM, SDRAM, PRAM, MRAM, RRAM, FeRAM 등을 포함한다. 실시예에 있어서, 메모리(1040)는 HDD, SSD, CF, SD, Micro-SD, Mini-SD, xD 또는 Memory Stick 중 적어도 하나를 포함할 수 있다.The
센서 모듈(1050)은 전자 시스템(1000)이 탑재되는 전자 장치 주변의 정보를 수집할 수 있다. 센서 모듈(1050)은 전자 장치의 외부로부터 신호(예컨대 영상 신호, 음성 신호, 자기 신호, 생체 신호, 터치 신호 등)를 센싱 또는 수신하고, 센싱 또는 수신된 신호를 데이터로 변환할 수 있다. 이를 위해, 센서 모듈(1050)은 센싱 장치, 예컨대 마이크, 촬상 장치, 이미지 센서, 라이더(LIDAR; light detection and ranging) 센서, 초음파 센서, 적외선 센서, 바이오 센서, 및 터치 센서 등 다양한 종류의 센싱 장치 중 적어도 하나를 포함할 수 있다.The
센서 모듈(1050)은 변환된 데이터를 뉴로모픽 장치(1030)에 입력 데이터로서 제공할 수 있다. 예를 들어, 센서 모듈(1050)은 이미지 센서를 포함할 수 있으며, 전자 장치의 외부 환경을 촬영하여 비디오 스트림을 생성하고, 비디오 스트림의 연속하는 데이터 프레임을 뉴로모픽 장치(1030)에 입력 데이터로서 순서대로 제공할 수 있다. 그러나 이에 제한되는 것은 아니며 센서 모듈(1050)은 다양한 종류의 데이터를 뉴로모픽 장치(1030)에 제공할 수 있다.The
통신 모듈(1060)은 외부 디바이스와 통신할 수 있는 다양한 유선 또는 무선 인터페이스를 구비할 수 있다. 예컨대 통신 모듈(1060)은 유선 근거리통신망(Local Area Network; LAN), Wi-fi(Wireless Fidelity)와 같은 무선 근거리 통신망 (Wireless Local Area Network; WLAN), 블루투스(Bluetooth)와 같은 무선 개인 통신망(Wireless Personal Area Network; WPAN), 무선 USB (Wireless Universal Serial Bus), Zigbee, NFC (Near Field Communication), RFID (Radio-frequency identification), PLC(Power Line communication), 또는 3G (3rd Generation), 4G (4th Generation), LTE (Long Term Evolution) 등 이동 통신망(mobile cellular network)에 접속 가능한 통신 인터페이스 등을 포함할 수 있다.The
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였으나, 본 발명은 상기 실시예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 제조될 수 있으며, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.Although embodiments of the present invention have been described above with reference to the accompanying drawings, the present invention is not limited to the above embodiments, but may be manufactured in various different forms, and those of ordinary skill in the art to which the present invention pertains. It will be understood by those skilled in the art that the present invention may be embodied in other specific forms without changing the technical spirit or essential features of the present invention. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not restrictive.
100: 뉴로모픽 장치
110 : 뉴로모픽 칩
112 : 프로세서
114 : 온칩 메모리
120 : 외부 메모리100: neuromorphic device 110: neuromorphic chip
112: processor 114: on-chip memory
120: external memory
Claims (10)
적어도 하나의 시냅틱 어레이를 포함하여, 상기 시냅틱 어레이에서 상기 뉴로모픽 데이터에 따른 인공신경망 연산을 실행하는 뉴로모픽 프로세서를 포함하고,
상기 시냅틱 어레이는
복수의 액손회로에 각각 연결되어 서로 독립적으로 상기 뉴로모픽 데이터에 기초한 입력신호를 수신하는 복수의 입력라인;
상기 복수의 입력라인과 이격되어 배치되고, 각각이 상기 인공신경망 연산에 따른 출력전류를 출력하는 복수의 비트라인;
상기 복수의 비트라인 각각에 연결되어 상기 출력전류를 합산하고, 상기 합산된 출력전류가 기설정된 임계치를 초과하면 출력전압으로 출력하는 복수의 뉴런회로;
상기 복수의 입력라인과 상기 복수의 비트라인 사이에서 소정의 간격으로 적층되어 배치되는 복수의 전극패드;
각각이 상기 복수의 전극패드를 관통하여 상기 입력라인 중 어느 하나와 상기 비트라인 중 어느 하나 사이에 연결되어, 상기 출력전류의 전류패스를 형성하는 복수의 멤리스터 관통 구조체;
각각이 상기 복수의 멤리스터 관통 구조체와 상기 복수의 비트라인 사이에 배치되는 복수의 스트링 선택 트랜지스터; 및
상기 복수의 전극패드 각각에 연결되어, 워드라인 선택 신호 및 스트링 선택 신호를 인가하는 디코더를 포함하는, 뉴로모픽 장치.an on-chip memory that reads and stores neuromorphic data;
A neuromorphic processor that includes at least one synaptic array and executes an artificial neural network operation according to the neuromorphic data in the synaptic array,
The synaptic array is
a plurality of input lines respectively connected to a plurality of axon circuits to independently receive an input signal based on the neuromorphic data;
a plurality of bit lines spaced apart from the plurality of input lines and each outputting an output current according to the artificial neural network operation;
a plurality of neuron circuits connected to each of the plurality of bit lines, summing the output currents, and outputting the summed output currents as an output voltage when the summed output current exceeds a preset threshold;
a plurality of electrode pads stacked at a predetermined interval between the plurality of input lines and the plurality of bit lines;
a plurality of through-memristor structures each passing through the plurality of electrode pads and connected between any one of the input line and the bit line to form a current path of the output current;
a plurality of string select transistors, each of which is disposed between the plurality of memristor through structures and the plurality of bit lines; and
and a decoder connected to each of the plurality of electrode pads to apply a word line selection signal and a string selection signal.
필라 산화물을 중심으로, 저항성 물질층, 폴리 실리콘 산화물층, 게이트 절연막의 순서로 겹겹이 둘러싸인 기둥 모양인, 뉴로모픽 장치.The method of claim 1, wherein each memristor through structure
A neuromorphic device having a columnar shape surrounded by layers of a resistive material layer, a polysilicon oxide layer, and a gate insulating layer with a pillar oxide as the center.
상기 워드라인 선택 신호는 패스 전압 및 오프 전압을 포함하고,
상기 멤리스터 관통 구조체는
상기 패스 전압이 인가된 전극패드에 상응하는 영역은 폴리 실리콘 산화물층으로 상기 전류패스가 형성되고, 상기 오프 전압이 인가된 전극패드에 상응하는 영역은 상기 저항성 물질층으로 상기 전류패스가 형성되어 상기 비트라인으로 상기 출력전류를 출력하는 것인, 뉴로모픽 장치3. The method of claim 2,
The word line selection signal includes a pass voltage and an off voltage,
The memristor penetrating structure is
In a region corresponding to the electrode pad to which the pass voltage is applied, the current path is formed of a polysilicon oxide layer, and in a region corresponding to the electrode pad to which the off voltage is applied, the current path is formed by the resistive material layer. which outputs the output current to a bit line, a neuromorphic device
상기 멤리스터 관통 구조체 중 상기 복수의 전극패드의 각 전극패드에 상응하는 적어도 둘의 멤리스터 소자를 포함하는 적어도 둘의 레이어를 포함하고,
상기 레이어는
상기 스트링 선택신호에 따라 상기 레이어에 포함되는 상기 멤리스터 소자의 개수가 달라지는 것인, 뉴로모픽 장치.The method of claim 1, wherein the synaptic array is
at least two layers including at least two memristor elements corresponding to respective electrode pads of the plurality of electrode pads among the through-memristor structure;
the layer is
The number of the memristor elements included in the layer is changed according to the string selection signal, the neuromorphic device.
제1 시냅틱 어레이와 제2 시냅틱 어레이는 직렬로 연결되고,
상기 제1 시냅틱 어레이와 상기 제2 시냅틱 어레이는 제1방향 또는 제2방향으로 이격배치되어 각 레이어마다 상기 복수의 전극패드를 공유하는, 뉴로모픽 장치.According to claim 1,
The first synaptic array and the second synaptic array are connected in series,
The first synaptic array and the second synaptic array are spaced apart in a first direction or a second direction to share the plurality of electrode pads for each layer.
상기 입력신호에 따라 상기 제1 시냅틱 어레이의 제1 레이어에서 제1 인공신경망 연산을 수행하고, 상기 제1 시냅틱 어레이에서 출력된 중간신호에 따라 상기 제2 시냅틱 어레이의 제2 레이어에서 제2 인공신경망 연산을 수행하여 상기 출력신호를 생성하며,
상기 제1 레이어와 상기 제2 레이어는 동일한 워드라인 선택신호에 따라 활성화되는 것인, 뉴로모픽 장치.6. The method of claim 5,
A first artificial neural network operation is performed in a first layer of the first synaptic array according to the input signal, and a second artificial neural network is performed in a second layer of the second synaptic array according to an intermediate signal output from the first synaptic array. generating the output signal by performing an operation,
wherein the first layer and the second layer are activated according to the same word line selection signal.
각각이 상기 복수의 뉴런 회로와 상기 복수의 입력 라인 사이에 연결되어, 상기 출력전압을 저장하는 복수의 래치회로를 포함하는, 뉴로모픽 장치.The method of claim 1, wherein the synaptic array is
and a plurality of latch circuits each connected between the plurality of neuron circuits and the plurality of input lines to store the output voltage.
상기 입력신호에 따라 상기 시냅틱 어레이의 제1 레이어에서 제1 인공신경망 연산을 수행하여 상기 뉴런 회로로부터 출력된 중간신호를 상기 래치회로에 저장하고, 상기 저장된 중간신호에 따라 상기 시냅틱 어레이의 제2 레이어에서 제2 인공신경망 연산을 수행하여 상기 뉴런 회로로부터 상기 출력신호를 출력하는 것인, 뉴로모픽 장치.The method of claim 7, wherein the neuromorphic device is
A first artificial neural network operation is performed in the first layer of the synaptic array according to the input signal, the intermediate signal output from the neuron circuit is stored in the latch circuit, and the second layer of the synaptic array is stored according to the stored intermediate signal. To perform a second artificial neural network operation in the to output the output signal from the neuron circuit, a neuromorphic device.
상기 뉴로모픽 장치는 적어도 하나의 3차원 시냅틱 어레이를 포함하고,
상기 뉴로모픽 장치는
서로 독립적인 복수의 입력신호를 수신하면,
워드라인 선택신호에 상응하는 레이어의 복수의 저항성 멤리스터 소자에서 상기 입력신호에 대한 인공신경망 연산을 수행하고,
상기 연산 결과 복수의 출력전류를 비트라인을 통해 뉴런 회로로 출력하며,
상기 출력전류를 합산하여 기설정된 임계치를 초과하면 출력전압으로 출력하고,
상기 3차원 시냅틱 어레이는
복수의 레이어를 포함하여, 상기 워드라인 선택신호에 따라 활성화되는 각 레이어별로 서로 독립적인 인공신경망 연산을 수행하는, 뉴로모픽 장치의 동작방법.In the neuromorphic device,
The neuromorphic device comprises at least one three-dimensional synaptic array,
The neuromorphic device is
When receiving a plurality of input signals independent of each other,
performing an artificial neural network operation on the input signal in a plurality of resistive memristor elements of a layer corresponding to the word line selection signal;
Outputting a plurality of output currents as a result of the operation to the neuron circuit through the bit line,
When the sum of the output currents exceeds a preset threshold, output as an output voltage,
The three-dimensional synaptic array is
A method of operating a neuromorphic device, including a plurality of layers, and performing an artificial neural network operation independent of each other for each layer activated according to the word line selection signal.
전기적으로 직렬로 연결되면서, 서로 이격배치된 제1 시냅틱 어레이 및 제2 시냅틱 어레이를 포함하여,
상기 입력신호에 따라 상기 제1 시냅틱 어레이의 제1 레이어에서 제1 인공신경망 연산을 수행한 중간신호를 상기 제2 시냅틱 어레이로 출력하고,
상기 중간신호에 따라 상기 제2 시냅틱 어레이의 제2 레이어에서 제2 인공신경망 연산을 수행하여 상기 출력전류를 생성하며,
상기 제1 레이어와 상기 제2 레이어는 동일한 워드라인 선택신호에 따라 활성화되는 것인, 뉴로모픽 장치의 동작방법.10. The method of claim 9, wherein the neuromorphic device is
Electrically connected in series, including a first synaptic array and a second synaptic array spaced apart from each other,
outputting an intermediate signal obtained by performing a first artificial neural network operation in a first layer of the first synaptic array according to the input signal to the second synaptic array;
generating the output current by performing a second artificial neural network operation in the second layer of the second synaptic array according to the intermediate signal;
The method of claim 1, wherein the first layer and the second layer are activated according to the same word line selection signal.
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200044024A KR20210126335A (en) | 2020-04-10 | 2020-04-10 | Neuromorphic device and operating method of the same |
CN202110290970.XA CN113517014A (en) | 2020-04-10 | 2021-03-18 | Neuromorphic device and method of operating same |
TW110110177A TWI754567B (en) | 2020-04-10 | 2021-03-22 | Neuromorphic device and operating method of the same |
US17/224,575 US20210319293A1 (en) | 2020-04-10 | 2021-04-07 | Neuromorphic device and operating method of the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200044024A KR20210126335A (en) | 2020-04-10 | 2020-04-10 | Neuromorphic device and operating method of the same |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20210126335A true KR20210126335A (en) | 2021-10-20 |
Family
ID=78006456
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200044024A KR20210126335A (en) | 2020-04-10 | 2020-04-10 | Neuromorphic device and operating method of the same |
Country Status (4)
Country | Link |
---|---|
US (1) | US20210319293A1 (en) |
KR (1) | KR20210126335A (en) |
CN (1) | CN113517014A (en) |
TW (1) | TWI754567B (en) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102541000B1 (en) * | 2022-11-01 | 2023-06-07 | 인하대학교 산학협력단 | 3D Stacked Synapse Array String for Artificial Neural Network |
CN116523013A (en) * | 2023-07-04 | 2023-08-01 | 清华大学 | Artificial neuron and artificial neural network |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20200069901A (en) * | 2018-12-07 | 2020-06-17 | 삼성전자주식회사 | A method for slicing a neural network and a neuromorphic apparatus |
IT202200004229A1 (en) * | 2022-03-07 | 2023-09-07 | Fondazione St Italiano Tecnologia | Three-dimensional neural network |
CN115983357B (en) * | 2022-12-22 | 2024-05-28 | 清华大学 | Bionic neural network chip |
CN118014818A (en) * | 2024-02-27 | 2024-05-10 | 国科大杭州高等研究院 | Activation function hardware circuit for infrared sensing and calculation integrated system |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009080892A (en) * | 2007-09-26 | 2009-04-16 | Toshiba Corp | Semiconductor storage device |
JP6602279B2 (en) * | 2016-09-20 | 2019-11-06 | 株式会社東芝 | Mem capacitor, neuro element and neural network device |
CN110543937B (en) * | 2018-05-28 | 2022-09-30 | 厦门半导体工业技术研发有限公司 | Neural network, operation method and neural network information processing system |
US11507808B2 (en) * | 2018-06-01 | 2022-11-22 | Arizona Board Of Regents On Behalf Of Arizona State University | Multi-layer vector-matrix multiplication apparatus for a deep neural network |
KR102542998B1 (en) * | 2018-06-26 | 2023-06-14 | 에스케이하이닉스 주식회사 | Three Dimensional Stacked Semiconductor Memory Device |
-
2020
- 2020-04-10 KR KR1020200044024A patent/KR20210126335A/en unknown
-
2021
- 2021-03-18 CN CN202110290970.XA patent/CN113517014A/en active Pending
- 2021-03-22 TW TW110110177A patent/TWI754567B/en active
- 2021-04-07 US US17/224,575 patent/US20210319293A1/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102541000B1 (en) * | 2022-11-01 | 2023-06-07 | 인하대학교 산학협력단 | 3D Stacked Synapse Array String for Artificial Neural Network |
CN116523013A (en) * | 2023-07-04 | 2023-08-01 | 清华大学 | Artificial neuron and artificial neural network |
CN116523013B (en) * | 2023-07-04 | 2023-10-20 | 清华大学 | Artificial neuron and artificial neural network |
Also Published As
Publication number | Publication date |
---|---|
CN113517014A (en) | 2021-10-19 |
TW202139074A (en) | 2021-10-16 |
TWI754567B (en) | 2022-02-01 |
US20210319293A1 (en) | 2021-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI754567B (en) | Neuromorphic device and operating method of the same | |
US11361216B2 (en) | Neural network circuits having non-volatile synapse arrays | |
Thakur et al. | Large-scale neuromorphic spiking array processors: A quest to mimic the brain | |
US20190138892A1 (en) | Neural network device and method | |
Li et al. | Design of ternary neural network with 3-D vertical RRAM array | |
WO2021098821A1 (en) | Method for data processing in neural network system, and neural network system | |
Fouda et al. | Spiking neural networks for inference and learning: A memristor-based design perspective | |
CN110892480A (en) | Non-volatile (NV) memory (NVM) matrix circuit employing NVM matrix circuit to perform matrix computations | |
EP3680907A1 (en) | Neural network arithmetic circuit using non-volatile semiconductor memory element | |
US11531871B2 (en) | Stacked neuromorphic devices and neuromorphic computing systems | |
TWI751403B (en) | Neural network circuits having non-volatile synapse arrays and neural chip | |
US20190325291A1 (en) | Resistive processing unit with multiple weight readers | |
KR102618546B1 (en) | 2-dimensional array based neuromorphic processor and operating method for the same | |
TWI699711B (en) | Memory devices and manufacturing method thereof | |
KR102578826B1 (en) | Neural network device and operation method of the same | |
Musisi-Nkambwe et al. | The viability of analog-based accelerators for neuromorphic computing: a survey | |
Agrawal et al. | X-CHANGR: Changing memristive crossbar mapping for mitigating line-resistance induced accuracy degradation in deep neural networks | |
KR20200069901A (en) | A method for slicing a neural network and a neuromorphic apparatus | |
Huang et al. | Memristor neural network design | |
US20230113627A1 (en) | Electronic device and method of operating the same | |
KR20210143614A (en) | Neuromorphic device for implementing neural network and method for thereof | |
KR102607860B1 (en) | Neuromorphic apparatus having 3d stacked synaptic structure and memory apparatus having the same | |
KR102650660B1 (en) | Neuromorphic apparatus and method for processing multi-bits neuromorphic operation thereof | |
US11694065B2 (en) | Spiking neural unit | |
An | Powering next-generation artificial intelligence by designing three-dimensional high-performance neuromorphic computing system with memristors |