KR101888468B1 - Stdp 기능 셀을 위한 시냅스, stdp 기능 셀 및 stdp 기능 셀을 이용한 뉴로모픽 회로 - Google Patents

Stdp 기능 셀을 위한 시냅스, stdp 기능 셀 및 stdp 기능 셀을 이용한 뉴로모픽 회로 Download PDF

Info

Publication number
KR101888468B1
KR101888468B1 KR1020110054972A KR20110054972A KR101888468B1 KR 101888468 B1 KR101888468 B1 KR 101888468B1 KR 1020110054972 A KR1020110054972 A KR 1020110054972A KR 20110054972 A KR20110054972 A KR 20110054972A KR 101888468 B1 KR101888468 B1 KR 101888468B1
Authority
KR
South Korea
Prior art keywords
neuron
synapse
synaptic
memory element
terminal
Prior art date
Application number
KR1020110054972A
Other languages
English (en)
Other versions
KR20120136015A (ko
Inventor
심재윤
류현석
이준행
Original Assignee
삼성전자주식회사
포항공과대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사, 포항공과대학교 산학협력단 filed Critical 삼성전자주식회사
Priority to KR1020110054972A priority Critical patent/KR101888468B1/ko
Priority to EP12796095.3A priority patent/EP2718933B1/en
Priority to PCT/KR2012/003107 priority patent/WO2012169726A1/en
Priority to US13/490,699 priority patent/US9087302B2/en
Publication of KR20120136015A publication Critical patent/KR20120136015A/ko
Application granted granted Critical
Publication of KR101888468B1 publication Critical patent/KR101888468B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C11/00Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor
    • G11C11/54Digital stores characterised by the use of particular electric or magnetic storage elements; Storage elements therefor using elements simulating biological cells, e.g. neuron
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/049Temporal neural networks, e.g. delay elements, oscillating neurons or pulsed inputs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • G06N3/088Non-supervised learning, e.g. competitive learning
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00 using resistive RAM [RRAM] elements
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital 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/0007Digital 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
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C13/00Digital stores characterised by the use of storage elements not covered by groups G11C11/00, G11C23/00, or G11C25/00
    • G11C13/0002Digital 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/0021Auxiliary circuits
    • G11C13/003Cell access
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C7/00Arrangements for writing information into, or reading information out from, a digital store
    • G11C7/16Storage of analogue signals in digital stores using an arrangement comprising analogue/digital [A/D] converters, digital memories and digital/analogue [D/A] converters 
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/50Resistive cell structure aspects
    • G11C2213/53Structure wherein the resistive material being in a transistor, e.g. gate
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C2213/00Indexing scheme relating to G11C13/00 for features not covered by this group
    • G11C2213/70Resistive array aspects
    • G11C2213/79Array wherein the access device being a transistor

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)
  • Read Only Memory (AREA)

Abstract

저항값이 가변되는 멤리스터 등과 같은 메모리 소자의 채널과 트랜지스터의 채널이 직렬로 연결되도록 구성한 시냅스를 통해 정보를 전달하는 통신 모드 및 시냅스의 세기를 변화시키는 학습 모드를 시간적으로 분리시킴으로써 특정 시냅틱 뉴런의 상태를 다른 시냅틱 뉴런의 간섭 없이 변경할 수 있다.

Description

STDP 기능 셀을 위한 시냅스, STDP 기능 셀 및 STDP 기능 셀을 이용한 뉴로모픽 회로{SYNAPSE FOR A FUNCTION CELL OF SPIKE-TIMING-DEPENDENT PLASTICITY(STDP), THE FUNCTION CELL OF SPIKE-TIMING-DEPENDENT PLASTICITY, AND A NEUROMORPHIC CIRCUIT USING THE FUNCTION CELL OF SPIKE-TIMING-DEPENDENT PLASTICITY}
아래의 실시예들은 STDP 기능 셀을 위한 시냅스, STDP 기능 셀 및 STDP 기능 셀을 이용한 STDP 장치에 관한 것이다.
뇌에는 수천억 개의 신경 세포(즉, 뉴런(neuron))가 존재하며, 서로 복잡한 신경망으로 구성되어 있다. 뉴런은 수천 개의 다른 뉴런과 신호를 주고 받는 시냅스를 통해 학습, 기억 등 지적 능력을 발휘한다. 뉴런은 신경계의 구조적, 기능적 단위이며 정보 전달의 기본 단위이다. 시냅스는 뉴런 사이의 접합부를 가리키며 어느 하나의 뉴런의 축색 돌기와 다른 뉴런의 수상 돌기가 연결된 부위를 말한다. 다시 말해 한 개의 뉴런은 수천 개의 다른 뉴런과 시냅스로 이루어져 있다. 생물 신경 시스템을 모사한 인공 신경계를 뉴런 수준에서 제작함으로써, 두뇌가 처리하는 정보처리 방식을 모사하거나, 새로운 형태의 정보처리 및 저장 기기를 저장 할 수 있는 방식을 만들 수 있다.
한편으로 이러한 기기를 만듦에 있어서, 일반적인 반도체 제작 기술은 적은 면적에 대규모의 인공 뉴런을 집적하는 데에 어려움이 있다. 이를 극복하기 위해서 나노 소자 중 신경 현상과 유사한 물질을 신경 소자 제작에 이용할 수 있다. 특히, 전자적 뉴런 셀, 회로 또는 소자 등의 경우, 어느 하나의 뉴런 셀에서 발생한 신호가 서로 연결된 다른 뉴런 셀로 누출(leakage)되어 의도하지 않은 간섭을 미치게 된다. 따라서, 다른 뉴런 셀에 대한 신호 누출이 발생하지 않는 전자적 뉴런 셀, 회로 또는 소자 및 이러한 소자를 이용해 제작되는 인공 전자 신경 소자를 제어 할 수 있는 방법이 요구된다.
본 발명의 일 실시예에 따른 시냅스는 STDP(Spike-Timing-Dependent Plasticity) 기능 셀을 위한 시냅스에 있어서 저항값이 가변되는 메모리 소자; 및 상기 메모리 소자에 연결되는 트랜지스터를 포함하고, 상기 메모리 소자의 채널은 상기 트랜지스터의 채널과 서로 직렬로 연결된다.
상기 메모리 소자의 저항값은 상기 메모리 소자의 양단 간에 걸리는 전압에 의존하는 시냅틱 가중치에 따라 가변될 수 있다.
상기 메모리 소자는 상기 트랜지스터의 드레인 단자에 연결될 수 있다.
상기 메모리 소자와 상기 레지스터의 소스 단자에는 동일한 전압이 인가될 수 있다.
상기 시냅스는 상기 메모리 소자와 연결된 제1 단자 및 상기 트랜지스터의 소스 단자와 연결된 제2 단자를 더 포함하고, 상기 제1 단자를 통해 프리 시냅틱 뉴런과 연결되고, 상기 제2 단자를 통해 포스트 시냅틱 뉴런과 연결될 수 있다.
상기 시냅스는 상기 프리 시냅틱 뉴런에서 상기 포스트 시냅틱 뉴런으로 정보를 전달하는 통신 모드 및 상기 정보에 기초하여 상기 시냅스의 신호 세기를 변화시키는 학습 모드 중 어느 하나의 동작 모드로 동작하고, 시간 분할 다중화 방식에 기초하여 상기 동작 모드를 상기 통신 모드 또는 상기 학습 모드 중 어느 하나로 스위칭 할 수 있다.
상기 시냅스는 상기 통신 모드에서 상기 프리 시냅틱 뉴런에서 발화된 스파이크에 의해 발생한 신호를 상기 포스트 시냅틱 뉴런으로 전달함으로써 상기 정보를 전달하고, 상기 학습 모드에서 상기 프리 시냅틱 뉴런으로부터 전달된 정보에 기초하여 상기 메모리 소자의 저항값을 가변함으로써 상기 시냅스의 신호 세기를 변화시킬 수 있다.
상기 시냅스는 상기 통신 모드에서 상기 제1 단자를 상기 프리 시냅틱 뉴런의 VDD에 스위칭 하고, 상기 제2 단자를 상기 포스트 시냅틱 뉴런의 캐패시터에 스위칭 할 수 있다.
상기 시냅스는 상기 학습 모드에서 상기 제1 단자를 상기 프리 시냅틱 뉴런의 펄스 쉐이퍼의 출력에 스위칭 하고, 상기 제2 단자를 상기 포스트 시냅틱 뉴런의 펄스 쉐이퍼의 출력에 스위칭 할 수 있다.
본 발명의 일 실시예에 따른 STDP 기능 셀은 STDP(Spike-Timing-Dependent Plasticity) 기능을 갖는 뉴로모픽 회로를 위한 STDP 기능 셀에 있어서, 저항값이 가변되는 메모리 소자 및 상기 메모리 소자에 연결되는 트랜지스터를 포함하는 시냅스-상기 시냅스는 제1 단자 및 제2 단자를 포함함-; 상기 시냅스의 제1 단자를 통해 상기 메모리 소자와 연결되는 프리 시냅틱 뉴런; 및 상기 시냅스의 제2 단자를 통해 상기 트랜지스터의 소스 단자와 연결되는 포스트 시냅틱 뉴런을 포함하고, 상기 메모리 소자의 채널은 상기 트랜지스터의 채널과 서로 직렬로 연결된다.
상기 메모리 소자의 저항값은 상기 메모리 소자의 양단 간에 걸리는 전압에 의존하는 시냅틱 가중치에 따라 가변될 수 있다.
상기 프리 시냅틱 뉴런(pre-synaptic neuron) 및 상기 포스트 시냅틱 뉴런 각각은 상기 스파이크를 발화하는 전기적 뉴런 회로; 상기 전기적 뉴런 회로가 상기 스파이크를 발화(firing)하는 시점을 디지털 코드로 기록하는 스파이크 타임 레코더; 및 상기 디지털 코드를 기초로 상기 스파이크의 펄스 형태를 복원하는 펄스 쉐이퍼를 포함하고, 상기 스파이크 타임 레코더 및 상기 펄스 쉐이퍼는 클럭에 동기화 되어 동작할 수 있다.
상기 펄스 쉐이퍼는 상기 디지털 코드를 순차적으로 쉬프트 시켜 상기 스파이크의 펄스 형태로 합(summation)하는 이산 시간 FIR 필터를 포함할 수 있다.
상기 STDP 기능 셀은 상기 STDP 기능 셀은 상기 프리 시냅틱 뉴런에서 상기 포스트 시냅틱 뉴런으로 정보를 전달하는 통신 모드 및 상기 정보에 기초하여 상기 시냅스의 신호 세기를 변화시키는 학습 모드 중 어느 하나의 동작 모드로 동작하고, 시간 분할 다중화 방식에 기초하여 상기 동작 모드를 상기 통신 모드 또는 상기 학습 모드 중 어느 하나로 스위칭할 수 있다.
상기 시냅스는 상기 통신 모드에서 상기 제1 단자를 상기 프리 시냅틱 뉴런의 VDD에 스위칭 하고, 상기 제2 단자를 상기 포스트 시냅틱 뉴런의 캐패시터에 스위칭 할 수 있다.
상기 시냅스는 상기 학습 모드에서 상기 제1 단자를 상기 프리 시냅틱 뉴런의 펄스 쉐이퍼의 출력에 스위칭 하고, 상기 제2 단자를 상기 포스트 시냅틱 뉴런의 펄스 쉐이퍼의 출력에 스위칭 할 수 있다.
상기 STDP 기능 셀은 상기 동작 모드가 상기 통신 모드이면, 상기 메모리 소자의 저항값이 상기 학습 모드로 동작하는 경우의 저항값보다 높아지도록 하고, 상기 동작 모드가 상기 학습 모드이면, 상기 메모리 소자의 저항값이 상기 통신 모드로 동작하는 경우의 저항값보다 낮아지도록 할 수 있다.
본 발명의 일 실시예에 따른 뉴로모픽 회로는 STDP(Spike-Timing-Dependent Plasticity) 기능 셀을 이용한 뉴로모픽 회로에 있어서, 저항값이 가변되는 메모리 소자 및 상기 메모리 소자에 연결되는 트랜지스터를 포함하고, 격자 구조에 따라 배치된 복수의 시냅스들; 복수의 프리 시냅틱 뉴런들 - 상기 격자 구조에서 동일한 행에 위치한 시냅스들은 상기 복수의 프리 시냅틱 뉴런들 중 어느 하나의 프리 시냅틱 뉴런에 동일하게 연결됨 -; 및 복수의 포스트 시냅틱 뉴런들 - 상기 격자 구조에서 동일한 열에 위치한 시냅스들은 상기 복수의 포스트 시냅틱 뉴런들 중 어느 하나의 포스트 시냅틱 뉴런에 동일하게 연결됨 -; 를 포함하고, 상기 메모리 소자는 상기 트랜지스터와 서로 직렬로 연결된 채널을 가진다.
상기 메모리 소자의 저항값은 상기 메모리 소자의 양단 간에 걸리는 전압에 의존하는 시냅틱 가중치에 따라 가변될 수 있다.
상기 복수의 시냅스들 각각은 상기 어느 하나의 프리 시냅틱 뉴런에서 상기 어느 하나의 포스트 시냅틱 뉴런으로 정보를 전달하는 통신 모드 및 상기 정보에 기초하여 상기 시냅스의 신호 세기를 변화시키는 학습 모드 중 어느 하나의 동작 모드로 동작하고, 시간 분할 다중화 방식에 기초하여 상기 동작 모드를 상기 통신 모드 또는 상기 학습 모드 중 어느 하나로 스위칭 할 수 있다.
본 발명의 일 실시예에 따르면, 시간 분할 다중화 방식(TDM scheme)에 기초하여 시냅스를 통해 정보를 전달하는 통신 모드 및 시냅스의 세기를 변화시키는 학습 모드를 시간적으로 분리시켜 동작 시킴으로써 특정 시냅틱 뉴런의 상태를 다른 시냅틱 뉴런의 간섭 없이 변경할 수 있다.
또한, 본 발명의 일 실시예에 따르면, 시냅스의 임피던스가 통신 모드에서는 높은 값으로, 학습 모드에서는 낮은 값으로 설정 되도록 함으로써 뉴로모픽 회로에서 발생하는 누출(Leakage)을 해결할 수 있다.
도 1은 본 발명의 일 실시예에 따른 시냅스를 포함하는 STDP(Spike-Timing-Dependent Plasticity) 기능 셀의 구조를 나타낸 도면이다.
도 2는 본 발명의 일 실시예에 따른 동작 모드 중 통신 모드에서의 도 1의 STDP 기능 셀의 동작을 나타낸 도면이다.
도 3은 본 발명의 일 실시예에 따른 동작 모드 중 학습 모드에서의 도 1의 STDP 기능 셀의 동작을 나타낸 도면이다.
도 4는 본 발명의 일 실시예에 따른 통신 모드 및 동작 모드에 대한 시간-분할(Time Division)을 나타낸 타이밍 다이어그램이다.
도 5는 본 발명의 일 실시예에 따른 펄스 쉐이퍼가 출력하는 임펄스 응답(Impulse Response)을 나타낸 도면이다.
도 6은 본 발명의 일 실시예에 따른 이산 시간 FIR 필터(Discrete-Time FIR Filter)를 나타낸 도면이다.
도 7은 본 발명의 일 실시예에 따른 스파이크 타임 레코더로부터 '100000100'이 입력된 경우에 도 6의 이산 시간 FIR 필터로부터 출력되는 펄스의 형태를 나타낸 도면이다.
도 8은 도 6의 이산 시간 FIR 필터(Discrete-time FIR filter)를 이용하여 설계한 펄스 쉐이퍼를 나타낸 도면이다.
도 9는 본 발명의 일 실시예에 따른 전류원(Current Source)의 값(value)을 나타낸 그래프이다.
도 10는 도 8의 펄스 쉐이퍼의 시뮬레이션 결과이다.
도 11은 본 발명의 일 실시예에 따른 스파이크-타임 레코더로부터 실제 뉴런 회로와 같은 스파이크 타이밍 코드가 입력된 경우의 스파이크 펄스 쉐이퍼의 시뮬레이션 결과를 나타낸 도면이다.
도 12는 본 발명의 일 실시예에 따른 클럭을 고려한 STDP 기능 셀의 구조를 나타낸 도면이다.
도 13은 본 발명의 일 실시예에 따른 멤리스터의 커플드 가변-저항 모델(Coupled variable-resistor model)을 나타낸 도면이다.
도 14는 본 발명의 일 실시예에 따른 STDP 장치를 나타낸 도면이다.
이하, 본 발명에 따른 실시예들을 첨부된 도면을 참조하여 상세하게 설명한다. 그러나, 본 발명이 일실시예들에 의해 제한되거나 한정되는 것은 아니다. 또한, 각 도면에 제시된 동일한 참조 부호는 동일한 부재를 나타낸다.
도 1은 본 발명의 일 실시예에 따른 시냅스를 포함하는 STDP(Spike-Timing-Dependent Plasticity) 기능 셀의 구조를 나타낸 도면이다.
도 1을 참조하면, 실시예에 따른 STDP(Spike-Timing-Dependent Plasticity) 기능 셀은 하나의 프리 시냅틱 뉴런(Pre-synaptic neuron)(130)과 포스트 시냅틱 뉴런(Post-synaptic neuron)(150), 및 프리 시냅틱 뉴런(130)과 포스트 시냅틱 뉴런(150)을 잇는 시냅스(Synapse)(110)를 포함한다.
여기서, STDP(Spike-Timing-Dependent Plasticity)는 뇌에서의 뉴런 간의 연결 강도(connection strength)를 조절하는 생물학적 프로세서이다. STDP는 특정 뉴런의 출력과 입력 동작 포텐셜(action potential)(또는 스파이크(spike))의 상대적인 타이밍에 기초하여 연결 강도를 조절한다. 이하에서 동작 포텐셜(action potential) 또는 스파이크(spike)는 동일한 의미로 사용한다.
이하에서는 STDP 기능 셀(100)에 앞서 우선 시냅스(110)에 대하여 설명한다.
시냅스(110)는 가변되는 메모리 소자(113) 및 메모리 소자(113)에 연결되는 트랜지스터(115)을 포함한다. 이때, 트랜지스터(115)는 예를 들어, PMOS 트랜지스터일 수 있다.
메모리 소자(113)의 채널은 트랜지스터(115)의 드레인(Drain) 단자에 연결되어 트랜지스터(115)와 서로 직렬로 연결된 채널을 가진다.
메모리 소자(113)의 저항값은 메모리 소자(113)의 양단 간에 걸리는 전압에 의존하는 시냅틱 가중치에 따라 가변될 수 있다.
메모리 소자(113)와 트랜지스터(115)의 소스 단자에는 동일한 전압이 인가될 수 있다.
메모리 소자(113)는 예를 들어, 멤리스터(memristor) 또는 PCM(Phase Charge Memory) 및 이와 유사하게 동작하는 소자일 수 있다. 메모리 소자(113), 특히 멤리스터의 동작 및 특성에 대하여는 도 13 이하의 설명을 참조한다.
시냅스(110)는 메모리 소자(113)와 연결된 제1 단자(111) 및 트랜지스터(115)의 소스(Source) 단자와 연결된 제2 단자(117)를 더 포함할 수 있다.
시냅스(110)는 제1 단자(111)을 통해 프리 시냅틱 뉴런(130)과 연결되고, 제2 단자(117)를 통해 포스트 시냅틱 뉴런(150)과 연결될 수 있다.
시냅스(110)는 프리 시냅틱 뉴런(130)에서 포스트 시냅틱 뉴런(150)으로 정보를 전달하는 통신 모드 및 통신 모드에서 전달된 정보에 기초하여 시냅스(110)의 신호 세기를 변화시키는 학습 모드 중 어느 하나의 동작 모드로 동작할 수 있다.
시냅스(110)는 동작 모드에 따라 서로 다른 와이어 경로(wire path)로 스위칭될 수 있다.
통신 모드에서 시냅스(110)는 프리 시냅틱 뉴런(130)에서 발화(firing)된 스파이크에 의해 발생한 신호를 포스트 시냅틱 뉴런(150)으로 전달함으로써 정보를 전달할 수 있다. 통신 모드에서 시냅스 및 STDP 기능 셀의 동작은 도 2를 참조하여 설명한다.
또한, 학습 모드에서 시냅스(110)는 프리 시냅틱 뉴런(130)으로부터 전달된 정보에 기초하여 메모리 소자(113)의 저항값을 가변함으로써 시냅스(110)의 신호 세기를 변화시킬 수 있다.
학습 모드에서 프리 시냅틱 뉴런(130)으로부터 전달된 정보는 시냅스(110)가 통신 모드로 동작하는 동안에 발화한 스파이크의 펄스에 대한 시간차와 관련된 정보일 수 있다.
학습 모드에서의 시냅스 및 STDP 기능 셀의 동작은 도 3을 참조하여 설명한다.
STDP 기능 셀은 시간 분할 다중화 방식(Time Division Multiplexed Scheme)에 기초하여 셀 또는 시스템의 동작 모드를 예를 들어, 통신 모드 또는 학습 모드 중 어느 하나로 스위칭할 수 있다.
시간 분할 다중화 방식(Time Division Multiplexed Scheme)에 기초한 동작 모드의 시간-분할(Time Division)은 도 4를 참조하여 후술한다.
상술한 바와 같이 실시예에 따른 STDP 기능 셀(100)은 프리 시냅틱 뉴런(130) 및 포스트 시냅틱 뉴런(150)과 같은 뉴런 회로를 포함할 수 있다.
프리 시냅틱 뉴런(130) 및 포스트 시냅틱 뉴런(150) 각각은 전기적 뉴런 회로(131,151), 스파이크 타임 레코더(spike-time recorder)(133,153) 및 펄스 쉐이퍼(spike-pulse shaper)(135,155)를 포함할 수 있다.
전기적 뉴런 회로(131,151)는 스파이크(spike)를 발화(firing)할 수 있다. 전기적 뉴런 회로(131,151)는 예를 들어, I&F(Integrate & Firing) 스파이킹 뉴런(spiking neuron), 소마(soma) 및 이와 유사하게 동작하는 뉴런 회로일 수 있다.
스파이크 타임 레코더(spike-time recorder)(133,153)는 전기적 뉴런 회로(131,151)가 스파이크를 발화(firing)하는 시점을 디지털 코드로 기록할 수 있다.
펄스 쉐이퍼(spike-pulse shaper)(135,155)는 디지털 코드를 기초로 스파이크의 펄스 형태를 복원할 수 있다.
펄스 쉐이퍼(spike-pulse shaper)(135,155)는 스파이크 타임 레코더(spike-time recorder)(133,153)로부터 출력된 디지털 코드를 순차적으로 쉬프트 시켜 스파이크의 펄스 형태로 합(summation)하는 이산 시간 FIR 필터를 포함할 수 있다. 이산 시간 FIR 필터에 대한 상세한 설명은 도 6을 참조하기로 한다.
스파이크 타임 레코더(spike-time recorder)(133,153) 및 펄스 쉐이퍼(spike-pulse shaper)(135,155)는 클럭에 동기화 되어 동작할 수 있다.
일 실시예에서는 스파이크의 펄스 형태를 뺀(subtraction) 값으로 메모리 소자의 저항값을 가변 시킬 수 있다. 스파이크 타임 레코더(spike-time recorder)(133,153) 및 펄스 쉐이퍼(spike-pulse shaper)(135,155)는 동기화된 디지털 회로로써 상술한 스파이크의 펄스 형태를 복원하는 데에 이용될 수 있다.
펄스 형태를 복원하는 데에 디지털 회로를 사용함으로써 압력, 부피, 및 온도의 변화(PVT variation)에 의한 영향을 줄일 수 있다.
STDP 기능 셀(100)은 동작 모드에 따라 메모리 소자(113)의 저항값을 가변 시킴으로써 신호의 누출(leakage) 문제를 해결할 수 있다. 즉, STDP 기능 셀(100)은 동작 모드가 통신 모드이면, 메모리 소자(113)의 저항값이 학습 모드로 동작하는 경우의 저항값보다 높아지도록 스위칭할 수 있다.
또한, STDP 기능 셀(100)은 동작 모드가 학습 모드이면, 메모리 소자(113)의 저항값이 통신 모드로 동작하는 경우의 저항값보다 낮아지도록 스위칭 할 수 있다.
상술한 뉴런 회로들에서 발화한 스파이크를 전자적 파형으로 모델링 할 경우, 시냅틱 가중치 변화량은 프리 시냅틱 뉴런(130)에서 발화한 스파이크(이하, '프리 시냅스 스파이크')에 대한 파형과 포스트 시냅틱 뉴런(150)에서 발화한 스파이크(이하, '포스트 시냅스 스파이크')에 대한 파형의 차(subtraction)으로 나타낼 수 있다.
이러한 사실은 아래의 [수학식 1] 및 [수학식 2]로 정리할 수 있다.
Figure 112011042908144-pat00001
여기서, t pre 는 프리 시냅틱 스파이크를 나타내고, t pos 는 포스트 시냅틱 스파이크를 나타낸다. 또한, △w는 시냅틱 가중치의 변화량을 나타낸다.
Figure 112011042908144-pat00002
여기서, P(t pre )는 프리 시냅틱 스파이크에 대한 전자적 파형(electrical waveform)을 나타내고, P(t pos )는 포스트 시냅틱 스파이크에 대한 전자적 파형을 나타낸다. 또한, △w 는 시냅틱 가중치의 변화량을 나타낸다.
[수학식 1] 및 [수학식 2]를 정리하면 아래의 [수학식 3]과 같이 나타낼 수 있다.
Figure 112011042908144-pat00003
[수학식 3]에서 각각 N개의 프리 시냅틱 스파이크와 포스트 시냅틱 스파이크에 의한 시냅틱 가중치 변화량(
Figure 112011042908144-pat00004
)은 아래의 [수학식 4]와 같이 나타낼 수 있다.
Figure 112011042908144-pat00005
여기서, t i 는 포스트 시냅틱 뉴런의 발화 시간을 나타내고, t j 는 프리 시냅틱 뉴런의 발화 시간을 나타낸다.
[수학식 4]로부터 N개의 프리 시냅틱 스파이크와 N개의 포스트 시냅틱 스파이크에 의한 시냅틱 가중치 변화량(
Figure 112011042908144-pat00006
)은 아래의 [수학식 5]와 같이 N개의 개별적인 프리 시냅틱 스파이크의 파형에 대한 합(summation)과 포스트 시냅틱 스파이크의 파형에 대한 합(summation)의 차(subtraction)에 비례하는 것으로 나타낼 수 있다.
Figure 112011042908144-pat00007
일 실시예에서는 [수학식 5]에서 최종적으로 정리된 수식을 이용함으로써 시냅틱 가중치를 가변하는 방법에 기초한 STDP 학습을 구현할 수 있다.
프리 시냅틱 뉴런(130)과 포스트 시냅틱 뉴런(150) 각각에 포함된 스파이크 타임 레코더(133,153)와 펄스 쉐이퍼(135,155)는 [수학식 5]에서
Figure 112011042908144-pat00008
Figure 112011042908144-pat00009
로 나타나는 스파이크 펄스의 파형들에 대한 합(summation)을 구현할 수 있다.
펄스 쉐이퍼의 출력 전압이 학습 모드에서 메모리 소자(113)의 양단으로 인가되면, 메모리 소자(113)의 양단에 걸리는 전압은
Figure 112011042908144-pat00010
로써, STDP의 시냅틱 가중치 변화량(synaptic weight change) 즉,
Figure 112011042908144-pat00011
가 된다.
이때, 메모리 소자(113)의 양단에 걸리는 전압(즉,
Figure 112011042908144-pat00012
)의 극성과 크기에 따라서 메모리 소자로 흐르는 전하의 크기와 방향이 결정된다. STDP 기능 셀은 메모리 소자(113)의 양단에 걸리는 전압(즉,
Figure 112011042908144-pat00013
)의 극성과 크기에 의해 메모리 소자의 저항값을 가변시켜 STDP를 구현할 수 있다.
도 2는 본 발명의 일 실시예에 따른 동작 모드 중 통신 모드에서의 도 1의 STDP 기능 셀의 동작을 나타낸 도면이다.
통신 모드에서의 동작은 도 2의 화살표로 표시된 경로(path)를 통해 수행될 수 있다. 통신 모드에서 시냅스(110)는 통신 모드(Communicating Mode)에서 제1 단자(111)를 프리 시냅틱 뉴런(130)의 VDD에 스위칭 하고, 제2 단자(117)를 포스트 시냅틱 뉴런(150)의 캐패시터에 스위칭할 수 있다. 이때, 프리 시냅스 뉴런(130)의 전기적 뉴런 회로(131)의 출력이 시냅스(110)의 트랜지스터(예를 들어, PMOS 트랜지스터)(115)를 드라이빙(driving)할 수 있다.
따라서, 프리 시냅틱 스파이크(130)가 발화할 때, 트랜지스터(115)가 온(On)되고, 프리 시냅틱 뉴런(130)으로부터 포스트 시냅틱 뉴런(150)으로 신호가 전달(transmission)된다.
또한, 트랜지스터(115)가 오프(off)되었을 때, 시냅스(110) 경로에서의 임피던스(impedence)는 매우 높기 때문에 프리 시냅틱 뉴런(130)이 신호를 전송하고자 하는 대상 뉴런(target neuron) 이외의 다른 뉴런으로 신호를 드라이빙 하는 문제, 즉 누출(leakage)문제를 해결할 수 있다.
통신 모드에서 시냅스(110)는 프리 시냅틱 뉴런(130)에서 발화된 스파이크에 의해 발생한 신호를 포스트 시냅틱 뉴런(150)으로 전달함으로써 프리 시냅틱 뉴런(130)에서 포스트 시냅틱 뉴런(150)으로 정보를 전달할 수 있다.
도 3은 본 발명의 일 실시예에 따른 동작 모드 중 학습 모드에서의 도 1의 STDP 기능 셀의 동작을 나타낸 도면이다.
시냅스(110)는 학습 모드에서 프리 시냅틱 뉴런(130)으로부터 전달된 정보에 기초하여 메모리 소자(113)의 저항값을 가변함으로써 시냅스(110)의 신호 세기를 변화시킬 수 있다.
학습 모드에서 프리 시냅틱 뉴런(130)으로부터 전달된 정보는 시냅스(110)가 통신 모드로 동작하는 동안에 발화한 스파이크의 펄스에 대한 시간차와 관련된 정보일 수 있다.
학습 모드에서의 동작은 도 3의 화살로 표시된 경로를 통해 수행될 수 있다.
학습 모드로 동작 시에 시냅스(110)의 PMOS 트랜지스터(115)의 게이트는 VSS에 스위칭 된다. 따라서, PMOS 트랜지스터(115)는 온(On)된다.
이 때, STDP 기능 셀(100)에서 시냅스(110)는 제1 단자(111)를 프리 시냅틱 뉴런(130)의 펄스 쉐이퍼(135)의 출력에 스위칭 하고, 제2 단자(117)를 포스트 시냅틱 뉴런(150)의 펄스 쉐이퍼(155)의 출력에 스위칭 할 수 있다.
각 펄스 쉐이퍼(135, 155)의 출력 전압 차(voltage difference)에 의해 메모리 소자(113) 양단 간에는 전하 흐름(charge flow)이 발생한다. 메모리 소자(113) 양단 간에 발생한 전하 흐름(charge flow)은 메모리 소자(113)의 저항값을 가변 시킬 수 있다.
도 4는 본 발명의 일 실시예에 따른 통신 모드 및 동작 모드에 대한 시간-분할(Time Division)을 나타낸 타이밍 다이어그램이다.
일 실시예에 따른 시냅스 및 STDP 기능 셀은 시간 분할 다중화 방식(Time-division multiplexed scheme)에 따라 동작 모드를 통신 모드 또는 학습 모드 중 어느 하나로 스위칭할 수 있다.
통신 모드는 수 ms의 시간 동안에 수행되고, 동작 모드 중 지배적(dominant)으로 수행되는 동작 모드이다.
학습 모드는 수 μs의 시간 동안 수행되고, 학습 모드에서의 동작을 통해 메모리 소자의 저항값에 대한 가변이 이루어질 수 있다.
도 5는 본 발명의 일 실시예에 따른 펄스 쉐이퍼가 출력하는 임펄스 응답(Impulse Response)을 나타낸 도면이고, 도 6은 본 발명의 일 실시예에 따른 이산 시간 FIR 필터(Discrete-Time FIR Filter)를 나타낸 도면이다.
도 1을 통해 상술한 바와 같이 스파이크 타임 레코더는 프리 시냅틱 뉴런과 포스트 시냅틱 뉴런 각각에서 전기적 뉴런 회로가 스파이크를 발화(firing)하는 시점을 기록하여 디지털 코드로 저장한다.
예를 들어, 스파이크 타임 레코더는 동기화된 클럭(clock)에 맞춰 전기적 뉴런 회로가 스파이크를 발화하는 때에는 디지털 코드에 제1 논리값(예를 들어, '1')을 기록하고, 스파이크를 발화하지 않는 때에는 디지털 코드에 제2 논리값(예를 들어, '0')을 기록할 수 있다.
펄스 쉐이퍼는 디지털 코드를 기초로 스파이크의 펄스 형태를 복원할 수 있다. 또한, 펄스 쉐이퍼는 복원된 스파이크의 펄스 형태를 이용하여 메모리 소자에 대한 시냅틱 가중치를 가변 시킬 수 있다.
이 때, 시냅틱 가중치는 메모리 소자의 양단 간에 걸리는 전압에 의존하여 가변될 수 있다.
펄스 쉐이퍼의 임펄스 응답(Impulse response)은 도 5와 같이 실제 뉴런의 동작 포텐셜(Action potential), 즉 스파이크와 유사하게 설계할 수 있다. 도 5에 나타난 파형은 디지털 코드 '1'이 하나 입력된 경우에 나타나는 파형의 형태이다.
펄스 쉐이퍼는 디지털 코드를 순차적으로 쉬프트 시켜 스파이크의 펄스 형태로 합(summation)하는 이산 시간 FIR 필터를 포함할 수 있다. 이산 시간 FIR 필터의 구조는 도 6을 통해 살펴볼 수 있다.
스파이크 타임 레코더에 저장된 디지털 코드(예를 들어, '0100000100')는 도 6의 이산-시간 FIR 필터를 통해 시간에 따른 펄스 형태(pulse shape)의 합(summation)으로 나타날 수 있다.
도 7은 본 발명의 일 실시예에 따른 스파이크 타임 레코더로부터 '10000010'이 입력된 경우에 도 6의 이산 시간 FIR 필터로부터 출력되는 펄스의 형태를 나타낸 도면이다.
여기서, 이산 시간 FIR 필터는 선형 시스템(linear system)이다. 그러므로, 스파이크 타임 레코더로부터 신호 '10000010' 가 입력되면, 입력된 신호(즉 디지털 코드)에 대하여는 중첩(superposition)이 적용된다. 도 7의 파형 A와 파형 B의 합(summation)은 파형 C와 같이 나타난다.
도 8은 도 6의 이산 시간 FIR 필터(Discrete-time FIR filter)를 이용하여 설계한 펄스 쉐이퍼를 나타낸 도면이고, 도 9는 본 발명의 일 실시예에 따른 전류원(Current Source)의 값(value)을 나타낸 그래프이다.
도 8은 스파이크 타이밍(spike timing)에 기초한 펄스 쉐이퍼를 구현한 것으로써, 쉬프트 레지스터(shift register)(810)를 포함하는 이산 시간 FIR 필터(Discrete-time FIR filter), 탭(tap)(830) 및 피드백 증폭기(feedback amplifier)(850)를 포함할 수 있다.
이산 시간 FIR 필터(Discrete-time FIR filter)는 쉬프트 레지스터(810)를 이용하여 디지털 코드를 순차적으로 쉬프트 시켜 스파이크의 펄스 형태로 합(summation)한다.
탭(tap)(830)은 전류원(current source)을 클럭에 동기화 시킨다.
피드백 증폭기(850)는 전류를 피드백 시켜 증폭시킨다.
일 실시예에 따른 펄스 쉐이퍼의 동작은 다음과 같다.
스파이크 발화(Spike firing)에 의해 스파이크 타임 레코더로부터 디지털 코드 '1'이 입력되면, 펄스 쉐이퍼에서는 쉬프트 레지스터(810)의 동작에 따라 각 탭(830)의 전류원(current source)이 클럭에 동기화되어 순차적으로 온(on) 된다.
이때, 피드백 증폭기(850)는 IR drop으로 인해 도 5와 같은 형태의 전압을 출력한다.
상술한 바와 같이 펄스 쉐이퍼는 선형 시스템이므로 연속적인 스파이크에 대하여 파형의 합(summation)이 수행된다.
이때, 전류원에서의 전류값은 도 9의 a1~a5 및 b1~b5와 같이 나타낼 수 있다.
전류원에서의 전류값과 피드백 증폭기(850)의 네가티브 피드백 저항값은 멤리스터 등과 같은 메모리 소자의 전압에 따른 저항 변화 특성을 감안하여 STDP 기능의 발현이 가능하도록 설정될 수 있다.
즉, 전류원에서의 전류값과 피드백 증폭기(850)의 네가티브 피드백 저항값은 STDP 기능 셀이 실제 뉴런의 동작 포텐셜(Action potential)과 유사한 파형을 구현할 수 있는 비율로 설계될 수 있다.
실제 뉴런의 동작 포텐셜(Action potential)과 유사한 파형을 구현하기 위해 a1~a5, b1~b5 전류원에 공급되는 전류값을 도 9와 같이 설계한다.
도 10는 도 8의 펄스 쉐이퍼의 시뮬레이션 결과이다.
도 10에서 펄스 쉐이퍼에 '1001000000000' 의 입력 값이 들어오면 디지털 코드 '1'의 입력에 대하여는 도 10(a)과 같은 개별적인 파형이 만들어진다. 이때, 펄스 쉐이퍼에 입력되는 디지털 코드 '1'은 2개 이므로 도 10(a)에서 각각의 디지털 코드 '1'에 대하여 개별적인 두 개의 파형이 만들어진다.
펄스 쉐이퍼를 거친 입력값(여기서는 '1001000000000'은 개별적인 두 개의 파형의 합에 의해 도 10(b)와 같은 형태의 전압 파형으로 최종 출력된다.
도 11은 본 발명의 일 실시예에 따른 스파이크-타임 레코더로부터 실제 뉴런 회로에서와 같은 스파이크 타이밍 코드가 입력된 경우의 펄스 쉐이퍼의 시뮬레이션 결과를 나타낸 도면이다.
도 11을 참조하면, 도 10에서와 파형의 선형적인 합이 이루어지는 것을 확인할 수 있다.
도 12는 본 발명의 일 실시예에 따른 클럭을 고려한 STDP 기능 셀의 구조를 나타낸 도면이다.
상술한 바와 같이 일 실시예에 따른 STDP 기능 셀은 통신 모드 및 학습 모드 중 어느 하나의 동작 모드로 동작할 수 있다.
통신 모드로 동작 시에, STDP 기능 셀은 프리 시냅틱 뉴런(1230)의 전기적 뉴런 회로(여기서는 I&F 뉴런)의 스파이크 발화(spike firing)에 따라 시냅스(1210)의 PMOS 트랜지스터의 게이트(gate)가 온(on)되면서 포스트 시냅틱 뉴런(1250)의 멤브런스 캐패시터(membrane capacitor)를 차징(charging)하는 비동기 아날로그(Asynchronous analog) 방식으로 동작할 수 있다.
반면에, 학습 모드로 동작 시에 STDP 기능 셀은 스파이크 타임 레코더가 저장한 스파이크 타이밍(spike timing), 즉 전기적 뉴런 회로가 스파이크를 발화(firing)하는 시점을 나타내는 디지털 코드로부터 펄스 쉐이퍼가 스파이크 펄스의 파형을 복원한다.
그 후, STDP 기능 셀은 복원한 파형에 대한 차(subtraction)로 메모리 소자의 시냅틱 가중치를 변경한다. 이때, 프리 시냅틱 뉴런(1230) 및 포스트 시냅틱 뉴런(1250)에 각각 포함된 스파이크 타임 레코더와 펄스 쉐이퍼는 디지털 회로로 구성되며, 클럭(1270)에 동기화 되어 동작할 수 있다.
도 13은 본 발명의 일 실시예에 따른 STDP 장치를 나타낸 도면이다.
STDP(Spike-Timing-Dependent Plasticity) 기능 셀을 이용한 STDP 장치는 도 13과 같이 복수 개의 STDP(Spike-Timing-Dependent Plasticity) 기능 셀들을 포함하는 M×N 셀의 matrix로 구성될 수 있다.
STDP 장치는 복수의 시냅스들, 복수의 프리 시냅틱 뉴런들 및 복수의 포스트 시냅틱 뉴런들을 포함한다.
복수의 시냅스들은 저항값이 가변되는 메모리 소자 및 메모리 소자에 연결되는 트랜지스터를 포함하고, 격자 구조(Crossbar Structure) 또는 매트릭스 구조(Matrix Structure)에 따라 배치될 수 있다. 메모리 소자는 트랜지스터와 서로 직렬로 연결된 채널을 가진다. 메모리 소자의 저항값은 메모리 소자의 양단 간에 걸리는 전압에 의존하는 시냅틱 가중치에 따라 가변될 수 있다.
여기서, 격자 구조에서 동일한 행에 위치한 시냅스들은 복수의 프리 시냅틱 뉴런들 중 어느 하나의 프리 시냅틱 뉴런에 동일하게 연결된다. 또한, 격자 구조에서 동일한 열에 위치한 시냅스들은 복수의 포스트 시냅틱 뉴런들 중 어느 하나의 포스트 시냅틱 뉴런에 동일하게 연결된다.
복수의 시냅스들 각각은 어느 하나의 프리 시냅틱 뉴런에서 어느 하나의 포스트 시냅틱 뉴런으로 정보를 전달하는 통신 모드 및 통신 모드에서 전달된 정보에 기초하여 시냅스의 신호 세기를 변화시키는 학습 모드 중 어느 하나의 동작 모드에 따라 동작할 수 있다. 동작 모드는 시간 분할 다중화 방식에 기초하여 통신 모드 또는 학습 모드로 스위칭 될 수 있다.
일 실시예에 따른 STDP 장치는 하나의 시냅스가 통신 모드 및 학습 모드에서 공통된 채널로 동작하여 스파이크의 전달 및 멤리스터에 대한 저항값의 가변이 함께 이루어져야 한다.
도 14은 본 발명의 일 실시예에 따른 멤리스터의 양단에서 프리 시냅틱 뉴런 및 포스트 시냅틱 뉴런에 각각 걸리는 펄스의 형태(a) 및 (a)에 따라 멤리스터에서 가변되는 저항값을 나타낸 그래프이다.
멤리스터의 양단으로 도 14(a)와 같은 프리 시냅틱 뉴런에 대한 펄스 전압과 포스트 시냅틱 뉴런에 대한 펄스 전압이 걸릴 때의 멤리시스턴스, 즉 멤리스터에서 가변되는 저항값은 도 14(b)와 같다.
도 14(a)의 0s~25s 구간에서 프리 시냅틱 스파이크와 포스트 시냅틱 스파이크는 일정한 타임 딜레이(time delay)를 가지고, 동일한 횟수로 교대로 발화(firing)하기 때문에 멤리스터는 28kΩ의 일정한 값을 가진다.
또한, 25s~65s의 구간에서는 프리 시냅틱 스파이크가 포스트 시냅틱 스파이크보다 더 많이 발화하고, 그로 인해서 장기 흥분(LTP)이 활성화되어 멤리스터에서 가변되는 저항값은 감소한다.
65s 이후에는 프리 시냅틱 스파이크보다 포스트 시냅틱 스파이크가 더 많이 발화하면서 장기 억제(LTD)가 활성화되어 멤리스터에서 가변되는 저항값이 증가한다.
도 14에서 멤리스터에서 가변되는 저항값에 대한 시뮬레이션은 Z.Biolek의 Memristor SPICE 모델을 사용하였으며, 초기 저항(initial resistance)은 28kΩ 으로, RON과 ROFF는 각각 100Ω, 38kΩ 을 이용한다.
이상과 같이 본 발명은 비록 한정된 실시예와 도면에 의해 설명되었으나, 본 발명은 상기의 실시예에 한정되는 것은 아니며, 본 발명이 속하는 분야에서 통상의 지식을 가진 자라면 이러한 기재로부터 다양한 수정 및 변형이 가능하다.
그러므로, 본 발명의 범위는 설명된 실시예에 국한되어 정해져서는 아니되며, 후술하는 특허청구범위뿐만 아니라 이 특허청구범위와 균등한 것들에 의해 정해져야 한다.
100: STDP(Spike-Timing-Dependent Plasticity) 기능 셀
110: 시냅스
111: 제1 단자
113: 메모리 소자
115: 트랜지스터
117: 제2 단자
130: 프리 시냅틱 뉴런
150: 포스트 시냅틱 뉴런
131, 151: 전기적 뉴런 회로
133, 153: 스파이크 타임 레코더
135, 155: 펄스 쉐이퍼

Claims (20)

  1. STDP(Spike-Timing-Dependent Plasticity) 기능 셀을 위한 시냅스에 있어서,
    저항값이 가변되는 메모리 소자; 및
    상기 메모리 소자에 연결되는 트랜지스터
    를 포함하고,
    상기 시냅스는 상기 메모리 소자와 연결된 제1 단자를 통해 프리 시냅틱 뉴런과 연결되고, 상기 트랜지스터의 소스 단자와 연결된 제2 단자를 통해 포스트 시냅틱 뉴런과 연결됨으로써 상기 메모리 소자의 채널이 상기 트랜지스터의 채널과 서로 직렬로 연결되도록 하고,
    상기 시냅스는
    상기 프리 시냅틱 뉴런에서 상기 포스트 시냅틱 뉴런으로 정보를 전달하는 통신 모드, 및 상기 메모리 소자의 양단에 인가되는 전압의 전압 차에 따라 상기 시냅스의 가중치를 변화시키는 학습 모드 중 어느 하나의 동작 모드로 동작하는, 시냅스.
  2. 제1항에 있어서,
    상기 메모리 소자의 저항값은
    상기 메모리 소자의 양단 간에 걸리는 전압에 의존하는 시냅틱 가중치에 따라 가변되는 시냅스.
  3. 제1항에 있어서,
    상기 메모리 소자는
    상기 트랜지스터의 드레인 단자에 연결되는 시냅스.
  4. 제1항에 있어서,
    상기 메모리 소자와 레지스터의 소스 단자에는 동일한 전압이 인가되는 시냅스.
  5. 삭제
  6. 제1항에 있어서,
    상기 시냅스는
    시간 분할 다중화 방식에 기초하여 상기 동작 모드를 상기 통신 모드 또는 상기 학습 모드 중 어느 하나로 스위칭 하는 시냅스.
  7. 제6항에 있어서,
    상기 시냅스는
    상기 통신 모드에서 상기 프리 시냅틱 뉴런에서 발화된 스파이크에 의해 발생한 신호를 상기 포스트 시냅틱 뉴런으로 전달함으로써 상기 정보를 전달하고,
    상기 학습 모드에서 상기 프리 시냅틱 뉴런으로부터 전달된 정보에 기초하여 상기 메모리 소자의 저항값을 가변함으로써 상기 시냅스의 신호 세기를 변화시키는 시냅스.
  8. 제6항에 있어서,
    상기 시냅스는
    상기 통신 모드에서 상기 제1 단자를 상기 프리 시냅틱 뉴런의 VDD에 스위칭 하고, 상기 제2 단자를 상기 포스트 시냅틱 뉴런의 캐패시터에 스위칭 하는 시냅스.
  9. 제6항에 있어서,
    상기 시냅스는
    상기 학습 모드에서 상기 제1 단자를 상기 프리 시냅틱 뉴런의 펄스 쉐이퍼의 출력에 스위칭 하고, 상기 제2 단자를 상기 포스트 시냅틱 뉴런의 펄스 쉐이퍼의 출력에 스위칭 하는 시냅스.
  10. STDP(Spike-Timing-Dependent Plasticity) 기능을 갖는 뉴로모픽 회로를 위한 STDP 기능 셀에 있어서,
    저항값이 가변되는 메모리 소자 및 상기 메모리 소자에 연결되는 트랜지스터를 포함하는 시냅스-상기 시냅스는 제1 단자 및 제2 단자를 포함함-;
    상기 시냅스의 제1 단자를 통해 상기 메모리 소자와 연결되는 프리 시냅틱 뉴런; 및
    상기 시냅스의 제2 단자를 통해 상기 트랜지스터의 소스 단자와 연결되는 포스트 시냅틱 뉴런
    을 포함하고,
    상기 시냅스는 상기 메모리 소자와 연결된 제1 단자를 통해 프리 시냅틱 뉴런과 연결되고, 상기 트랜지스터의 소스 단자와 연결된 제2 단자를 통해 포스트 시냅틱 뉴런과 연결됨으로써 상기 메모리 소자의 채널이 상기 트랜지스터의 채널과 서로 직렬로 연결되도록 하고,
    상기 시냅스는
    상기 프리 시냅틱 뉴런에서 상기 포스트 시냅틱 뉴런으로 정보를 전달하는 통신 모드, 및 상기 메모리 소자의 양단에 인가되는 전압의 전압 차에 따라 상기 시냅스의 가중치를 변화시키는 학습 모드 중 어느 하나의 동작 모드로 동작하는, STDP 기능 셀.
  11. 제10항에 있어서,
    상기 메모리 소자의 저항값은
    상기 메모리 소자의 양단 간에 걸리는 전압에 의존하는 시냅틱 가중치에 따라 가변되는 STDP 기능 셀.
  12. 제10항에 있어서,
    상기 프리 시냅틱 뉴런(pre-synaptic neuron) 및 상기 포스트 시냅틱 뉴런 각각은
    스파이크를 발화하는 전기적 뉴런 회로;
    상기 전기적 뉴런 회로가 상기 스파이크를 발화(firing)하는 시점을 디지털 코드로 기록하는 스파이크 타임 레코더; 및
    상기 디지털 코드를 기초로 상기 스파이크의 펄스 형태를 복원하는 펄스 쉐이퍼
    를 포함하고,
    상기 스파이크 타임 레코더 및 상기 펄스 쉐이퍼는
    클럭에 동기화 되어 동작하는 STDP 기능 셀.
  13. 제12항에 있어서,
    상기 펄스 쉐이퍼는
    상기 디지털 코드를 순차적으로 쉬프트 시켜 상기 스파이크의 펄스 형태로 합(sumation)하는 이산 시간 FIR 필터
    를 포함하는 STDP 기능 셀.
  14. 제12항에 있어서,
    상기 STDP 기능 셀은
    시간 분할 다중화 방식에 기초하여 상기 동작 모드를 상기 통신 모드 또는 상기 학습 모드 중 어느 하나로 스위칭 하는 STDP 기능 셀.
  15. 제14항에 있어서,
    상기 시냅스는
    상기 통신 모드에서 상기 제1 단자를 상기 프리 시냅틱 뉴런의 VDD에 스위칭 하고, 상기 제2 단자를 상기 포스트 시냅틱 뉴런의 캐패시터에 스위칭 하는 STDP 기능 셀.
  16. 제14항에 있어서,
    상기 시냅스는
    상기 학습 모드에서 상기 제1 단자를 상기 프리 시냅틱 뉴런의 펄스 쉐이퍼의 출력에 스위칭 하고, 상기 제2 단자를 상기 포스트 시냅틱 뉴런의 펄스 쉐이퍼의 출력에 스위칭 하는 STDP 기능 셀.
  17. 제14항에 있어서,
    상기 STDP 기능 셀은
    상기 동작 모드가 상기 통신 모드이면, 상기 메모리 소자의 저항값이 상기 학습 모드로 동작하는 경우의 저항값보다 높아지도록 하고,
    상기 동작 모드가 상기 학습 모드이면, 상기 메모리 소자의 저항값이 상기 통신 모드로 동작하는 경우의 저항값보다 낮아지도록 하는 STDP 기능 셀.
  18. STDP(Spike-Timing-Dependent Plasticity) 기능 셀을 이용한 뉴로모픽 회로에 있어서,
    저항값이 가변되는 메모리 소자 및 상기 메모리 소자에 연결되는 트랜지스터를 포함하고, 격자 구조에 따라 배치된 복수의 시냅스들;
    복수의 프리 시냅틱 뉴런들 - 상기 격자 구조에서 동일한 행에 위치한 시냅스들은 상기 복수의 프리 시냅틱 뉴런들 중 어느 하나의 프리 시냅틱 뉴런에 동일하게 연결됨 -; 및
    복수의 포스트 시냅틱 뉴런들 - 상기 격자 구조에서 동일한 열에 위치한 시냅스들은 상기 복수의 포스트 시냅틱 뉴런들 중 어느 하나의 포스트 시냅틱 뉴런에 동일하게 연결됨 -;
    을 포함하고,
    상기 복수의 시냅스들 각각은
    상기 메모리 소자와 연결된 제1 단자를 통해 프리 시냅틱 뉴런과 연결되고, 상기 트랜지스터의 소스 단자와 연결된 제2 단자를 통해 포스트 시냅틱 뉴런과 연결됨으로써 상기 메모리 소자가 상기 트랜지스터와 서로 직렬로 연결된 채널을 가지도록 하고,
    상기 복수의 시냅스들 각각은
    상기 프리 시냅틱 뉴런에서 상기 포스트 시냅틱 뉴런으로 정보를 전달하는 통신 모드, 및 상기 메모리 소자의 양단에 인가되는 전압의 전압 차에 따라 상기 시냅스의 가중치를 변화시키는 학습 모드 중 어느 하나의 동작 모드로 동작하는 뉴로모픽 회로.
  19. 제18항에 있어서,
    상기 메모리 소자의 저항값은
    상기 메모리 소자의 양단 간에 걸리는 전압에 의존하는 시냅틱 가중치에 따라 가변되는 뉴로모픽 회로.
  20. 제18항에 있어서,
    상기 복수의 시냅스들 각각은
    시간 분할 다중화 방식에 기초하여 상기 동작 모드를 상기 통신 모드 또는 상기 학습 모드 중 어느 하나로 스위칭 하는 뉴로모픽 회로.
KR1020110054972A 2011-06-08 2011-06-08 Stdp 기능 셀을 위한 시냅스, stdp 기능 셀 및 stdp 기능 셀을 이용한 뉴로모픽 회로 KR101888468B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020110054972A KR101888468B1 (ko) 2011-06-08 2011-06-08 Stdp 기능 셀을 위한 시냅스, stdp 기능 셀 및 stdp 기능 셀을 이용한 뉴로모픽 회로
EP12796095.3A EP2718933B1 (en) 2011-06-08 2012-04-23 Synapse for function cell of spike timing dependent plasticity (stdp), function cell of stdp, and neuromorphic circuit using function cell of stdp
PCT/KR2012/003107 WO2012169726A1 (en) 2011-06-08 2012-04-23 Synapse for function cell of spike timing dependent plasticity (stdp), function cell of stdp, and neuromorphic circuit using function cell of stdp
US13/490,699 US9087302B2 (en) 2011-06-08 2012-06-07 Synapse for function cell of spike timing dependent plasticity (STDP), function cell of STDP, and neuromorphic circuit using function cell of STDP

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020110054972A KR101888468B1 (ko) 2011-06-08 2011-06-08 Stdp 기능 셀을 위한 시냅스, stdp 기능 셀 및 stdp 기능 셀을 이용한 뉴로모픽 회로

Publications (2)

Publication Number Publication Date
KR20120136015A KR20120136015A (ko) 2012-12-18
KR101888468B1 true KR101888468B1 (ko) 2018-08-16

Family

ID=47294007

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020110054972A KR101888468B1 (ko) 2011-06-08 2011-06-08 Stdp 기능 셀을 위한 시냅스, stdp 기능 셀 및 stdp 기능 셀을 이용한 뉴로모픽 회로

Country Status (4)

Country Link
US (1) US9087302B2 (ko)
EP (1) EP2718933B1 (ko)
KR (1) KR101888468B1 (ko)
WO (1) WO2012169726A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110619908A (zh) * 2019-08-28 2019-12-27 中国科学院上海微系统与信息技术研究所 一种突触模块、突触阵列以及基于突触阵列的权重调节方法
WO2021033906A1 (ko) * 2019-08-21 2021-02-25 한양대학교 산학협력단 뉴런 하나당 다수의 시냅스들을 갖는 3차원 뉴로모픽 소자

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR3003062B1 (fr) * 2013-03-05 2015-06-05 Univ Bordeaux 1 Organe a neurone artificiel et memristor
US9600762B2 (en) 2013-04-12 2017-03-21 Qualcomm Incorporated Defining dynamics of multiple neurons
US9542643B2 (en) 2013-05-21 2017-01-10 Qualcomm Incorporated Efficient hardware implementation of spiking networks
KR102230784B1 (ko) * 2013-05-30 2021-03-23 삼성전자주식회사 Stdp 동작을 위한 시냅스 회로 및 시냅스 회로를 포함하는 뉴로모픽 시스템
CN104240753B (zh) * 2013-06-10 2018-08-28 三星电子株式会社 突触阵列、脉冲整形电路和神经形态系统
US9418333B2 (en) * 2013-06-10 2016-08-16 Samsung Electronics Co., Ltd. Synapse array, pulse shaper circuit and neuromorphic system
KR102179899B1 (ko) 2013-08-05 2020-11-18 삼성전자주식회사 뉴로모픽 시스템 및 그 구현 방법
US9330355B2 (en) 2013-08-06 2016-05-03 Qualcomm Incorporated Computed synapses for neuromorphic systems
KR101512370B1 (ko) * 2014-01-16 2015-04-15 광주과학기술원 뉴로모픽 시스템 및 뉴로모픽 시스템의 동작방법
US9672464B2 (en) 2014-02-28 2017-06-06 Qualcomm Incorporated Method and apparatus for efficient implementation of common neuron models
US20150278681A1 (en) * 2014-04-01 2015-10-01 Boise State University Memory controlled circuit system and apparatus
US9830981B2 (en) * 2015-01-14 2017-11-28 International Business Machines Corporation Neuromorphic memory circuit using a leaky integrate and fire (LIF) line to transmit axon LIF pulse and a conductive denrite LIF line
US10489705B2 (en) 2015-01-30 2019-11-26 International Business Machines Corporation Discovering and using informative looping signals in a pulsed neural network having temporal encoders
US9990580B2 (en) * 2015-03-13 2018-06-05 International Business Machines Corporation Neuromorphic synapses
KR101686827B1 (ko) 2015-03-17 2016-12-16 인천대학교 산학협력단 인공 신경망의 뉴로모픽 하드웨어 구현 방법
US10474948B2 (en) 2015-03-27 2019-11-12 University Of Dayton Analog neuromorphic circuit implemented using resistive memories
US10417559B2 (en) 2015-06-22 2019-09-17 International Business Machines Corporation Communicating postsynaptic neuron fires to neuromorphic cores
US10217046B2 (en) * 2015-06-29 2019-02-26 International Business Machines Corporation Neuromorphic processing devices
US10885429B2 (en) 2015-07-06 2021-01-05 University Of Dayton On-chip training of memristor crossbar neuromorphic processing systems
WO2017014719A1 (en) * 2015-07-17 2017-01-26 Hewlett Packard Enterprise Development Lp Memristor array with active memristors
KR102446409B1 (ko) 2015-09-18 2022-09-22 삼성전자주식회사 시냅스 메모리 소자의 제조방법
US10650308B2 (en) 2015-09-23 2020-05-12 Politecnico Di Milano Electronic neuromorphic system, synaptic circuit with resistive switching memory and method of performing spike-timing dependent plasticity
KR102381862B1 (ko) 2015-12-10 2022-04-01 삼성전자주식회사 데이터 통신 장치
US10713562B2 (en) * 2016-06-18 2020-07-14 International Business Machines Corporation Neuromorphic memory circuit
US10528865B2 (en) * 2016-06-21 2020-01-07 International Business Machines Corporation System to duplicate neuromorphic core functionality
GB2552014B (en) * 2016-07-07 2020-05-13 Advanced Risc Mach Ltd Reconfigurable artificial neural networks comprising programmable non-volatile memory elements
US10176425B2 (en) 2016-07-14 2019-01-08 University Of Dayton Analog neuromorphic circuits for dot-product operation implementing resistive memories
US11341408B2 (en) 2016-10-27 2022-05-24 University Of Florida Research Foundation, Inc. Memristive learning for neuromorphic circuits
US20180146149A1 (en) 2016-11-21 2018-05-24 Samsung Electronics Co., Ltd. Event-based sensor, user device including the same, and operation method of the same
KR20180111156A (ko) * 2017-03-31 2018-10-11 에스케이하이닉스 주식회사 피드-백 라인을 가진 포스트-시냅틱 뉴런을 포함하는 뉴로모픽 소자 및 뉴로모픽 소자의 동작 방법
KR20180116671A (ko) * 2017-04-17 2018-10-25 에스케이하이닉스 주식회사 감산기를 가진 포스트-시냅틱 뉴런을 포함하는 뉴로모픽 소자 및 뉴로모픽 소자의 시냅스 네트워크
US20190026627A1 (en) * 2017-07-20 2019-01-24 Samsung Electronics Co., Ltd. Variable precision neuromorphic architecture
WO2019049842A1 (ja) * 2017-09-07 2019-03-14 パナソニック株式会社 不揮発性半導体記憶素子を用いたニューラルネットワーク演算回路
KR102224320B1 (ko) * 2017-12-01 2021-03-09 서울대학교 산학협력단 신경 모방 시스템
US11620500B2 (en) * 2018-01-11 2023-04-04 Winbond Electronics Corp. Synapse system and synapse method to realize STDP operation
KR102092233B1 (ko) 2018-07-12 2020-03-23 서울대학교 산학협력단 뉴런 회로
CN109165731B (zh) * 2018-08-09 2020-06-30 清华大学 电子神经网络及其参数设置方法
CN109102072B (zh) * 2018-08-31 2021-11-23 江西理工大学 一种基于单电子晶体管的忆阻突触脉冲神经网络电路设计方法
US10636484B2 (en) * 2018-09-12 2020-04-28 Winbond Electronics Corporation Circuit and method for memory operation
MX2021013891A (es) * 2019-05-14 2022-03-25 Onesubsea Ip Uk Ltd Técnicas de aprendizaje automático con sistema en bucle para sistemas de telemetría de petróleo y gas.
CN111985630B (zh) * 2019-05-22 2024-07-12 力旺电子股份有限公司 运用于类神经网络系统的乘积累加电路的控制电路
CN110619905A (zh) * 2019-08-09 2019-12-27 上海集成电路研发中心有限公司 一种基于rram忆阻器单元的集合模块及其形成方法
US10825512B1 (en) * 2019-08-27 2020-11-03 Nxp Usa, Inc. Memory reads of weight values
KR102507770B1 (ko) * 2020-08-26 2023-03-07 국민대학교산학협력단 시냅스 및 시냅스 어레이와, 이를 이용한 컴퓨팅 시스템 및 그 구동 방법
CN113723602A (zh) * 2021-09-01 2021-11-30 哈尔滨工程大学 一种光纤结构的神经突触方案

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100299297A1 (en) * 2009-05-21 2010-11-25 International Business Machines Corporation System for electronic learning synapse with spike-timing dependent plasticity using phase change memory

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5056037A (en) * 1989-12-28 1991-10-08 The United States Of America As Represented By The Administrator Of The National Aeronautics And Space Administration Analog hardware for learning neural networks
JP4192060B2 (ja) * 2003-09-12 2008-12-03 シャープ株式会社 不揮発性半導体記憶装置
JP4385778B2 (ja) * 2004-01-29 2009-12-16 ソニー株式会社 記憶装置
US7499303B2 (en) * 2004-09-24 2009-03-03 Integrated Device Technology, Inc. Binary and ternary non-volatile CAM
US7599895B2 (en) * 2005-07-07 2009-10-06 Knowm Tech, Llc Methodology for the configuration and repair of unreliable switching elements
JP4344372B2 (ja) * 2006-08-22 2009-10-14 シャープ株式会社 半導体記憶装置及びその駆動方法
US8103602B2 (en) 2006-12-29 2012-01-24 Neurosciences Research Foundation, Inc. Solving the distal reward problem through linkage of STDP and dopamine signaling
US20090105786A1 (en) 2007-10-22 2009-04-23 University Of Washington Method and device for strengthening synaptic connections
US8332340B2 (en) 2007-12-05 2012-12-11 Hewlett-Packard Development Company, L.P. Hybrid microscale-nanoscale neuromorphic integrated circuit
US20110004579A1 (en) 2008-03-14 2011-01-06 Greg Snider Neuromorphic Circuit
US20090292661A1 (en) * 2008-05-21 2009-11-26 Haas Alfred M Compact Circuits and Adaptation Techniques for Implementing Adaptive Neurons and Synapses with Spike Timing Dependent Plasticity (STDP).
US8250011B2 (en) 2008-09-21 2012-08-21 Van Der Made Peter A J Autonomous learning dynamic artificial neural computing device and brain inspired system
US7978510B2 (en) 2009-03-01 2011-07-12 International Businesss Machines Corporation Stochastic synapse memory element with spike-timing dependent plasticity (STDP)
US8250010B2 (en) 2009-05-21 2012-08-21 International Business Machines Corporation Electronic learning synapse with spike-timing dependent plasticity using unipolar memory-switching elements
WO2011011007A1 (en) * 2009-07-23 2011-01-27 Hewlett-Packard Development, Company, L.P. Non-volatile data-storage latch
US8694452B2 (en) * 2010-07-07 2014-04-08 Qualcomm Incorporated Methods and systems for CMOS implementation of neuron synapse
WO2012105164A1 (ja) * 2011-02-01 2012-08-09 パナソニック株式会社 不揮発性半導体記憶装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100299297A1 (en) * 2009-05-21 2010-11-25 International Business Machines Corporation System for electronic learning synapse with spike-timing dependent plasticity using phase change memory

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021033906A1 (ko) * 2019-08-21 2021-02-25 한양대학교 산학협력단 뉴런 하나당 다수의 시냅스들을 갖는 3차원 뉴로모픽 소자
CN110619908A (zh) * 2019-08-28 2019-12-27 中国科学院上海微系统与信息技术研究所 一种突触模块、突触阵列以及基于突触阵列的权重调节方法
CN110619908B (zh) * 2019-08-28 2021-05-25 中国科学院上海微系统与信息技术研究所 一种突触模块、突触阵列以及基于突触阵列的权重调节方法

Also Published As

Publication number Publication date
EP2718933B1 (en) 2018-12-05
EP2718933A4 (en) 2016-06-29
KR20120136015A (ko) 2012-12-18
US20120317063A1 (en) 2012-12-13
WO2012169726A1 (en) 2012-12-13
US9087302B2 (en) 2015-07-21
EP2718933A1 (en) 2014-04-16

Similar Documents

Publication Publication Date Title
KR101888468B1 (ko) Stdp 기능 셀을 위한 시냅스, stdp 기능 셀 및 stdp 기능 셀을 이용한 뉴로모픽 회로
US10949735B2 (en) Artificial neuron apparatus
US11270192B2 (en) Producing spike-timing dependent plasticity in a neuromorphic network utilizing phase change synaptic devices
KR102230784B1 (ko) Stdp 동작을 위한 시냅스 회로 및 시냅스 회로를 포함하는 뉴로모픽 시스템
Krestinskaya et al. Analog backpropagation learning circuits for memristive crossbar neural networks
US10282657B2 (en) Neuromorphic synapses
KR102313075B1 (ko) 인공 뉴런 및 멤리스터를 갖는 장치
Schemmel et al. Modeling synaptic plasticity within networks of highly accelerated I&F neurons
US8433665B2 (en) Methods and systems for three-memristor synapse with STDP and dopamine signaling
US4873455A (en) Programmable ferroelectric polymer neural network
WO2012000698A1 (en) Canonical spiking neuron network for spatiotemporal associative memory
JP2016538632A (ja) 教師あり学習を使用してクラスにタグ付けするための方法および装置
CN105934766A (zh) 用阴影网络来监视神经网络
GB2251328A (en) Multi-layer neural network employing multiplexed output neurons
Acciarito et al. An a VLSI driving circuit for memristor-based STDP
Hussain et al. DELTRON: Neuromorphic architectures for delay based learning
KR20200110582A (ko) 신경망을 위한 시냅스 스트링 및 시냅스 스트링 어레이
WO2007102275A1 (ja) 神経等価回路、シナプス等価回路及び神経細胞体等価回路
US9916530B2 (en) Neuromorphic circuit model simulation that facilitates information routing and processing
Wang et al. An analogue VLSI implementation of polychromous spiking neural networks
Wu et al. Circuit implementation of Spike Time Dependent Plasticity (STDP) for artificial synapse
EP4002220A1 (en) Synapse circuit for three-factor learning
Milo et al. Synaptic realizations based on memristive devices
Mehrtash et al. Image preprocessing with dynamic synapses
Gogoi et al. Modeling a HH neuron based spiking neural network incorporating multiple pre-synaptic inputs

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant