KR20130036323A - 뉴로-프로세서들에서 대체가능한 시냅스 가중치 저장을 위한 방법들 및 시스템들 - Google Patents

뉴로-프로세서들에서 대체가능한 시냅스 가중치 저장을 위한 방법들 및 시스템들 Download PDF

Info

Publication number
KR20130036323A
KR20130036323A KR1020137003298A KR20137003298A KR20130036323A KR 20130036323 A KR20130036323 A KR 20130036323A KR 1020137003298 A KR1020137003298 A KR 1020137003298A KR 20137003298 A KR20137003298 A KR 20137003298A KR 20130036323 A KR20130036323 A KR 20130036323A
Authority
KR
South Korea
Prior art keywords
neuro
weights
processor chip
removable memory
memory
Prior art date
Application number
KR1020137003298A
Other languages
English (en)
Other versions
KR101466251B1 (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 퀄컴 인코포레이티드
Publication of KR20130036323A publication Critical patent/KR20130036323A/ko
Application granted granted Critical
Publication of KR101466251B1 publication Critical patent/KR101466251B1/ko

Links

Images

Classifications

    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biomedical Technology (AREA)
  • Biophysics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Computational Linguistics (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Neurology (AREA)
  • Semiconductor Memories (AREA)
  • Memory System (AREA)

Abstract

본 개시의 특정 실시예들은 시냅스 가중치들을 뉴로-프로세서 칩으로부터 대체가능한 저장소에 개별적으로 저장하기 위한 기법들을 지원한다. 대체가능한 시냅스 메모리는 뉴로-프로세서에 고유한 기능을 제공하며, 아주 다양한 애플리케이션들을 지원하기 위해서 그 유연성을 향상시킨다. 또한, 대체가능한 시냅스 저장소는 사용되는 메모리 타입에 대한 더 많은 선택들을 제공할 수 있으며, 전체 뉴로-프로세서 칩의 면적 및 구현 비용을 감소시킬 수 있다.

Description

뉴로-프로세서들에서 대체가능한 시냅스 가중치 저장을 위한 방법들 및 시스템들{METHODS AND SYSTEMS FOR REPLACEABLE SYNAPTIC WEIGHT STORAGE IN NEURO-PROCESSORS}
본 개시의 특정 실시예들은 일반적으로 뉴럴(neural) 시스템 엔지니어링에 관한 것으로, 보다 상세하게는, 시냅스 가중치(synaptic weight)들을 뉴로-프로세서 칩으로부터 대체가능한 저장소(storage)에 개별적으로 저장하기 위한 방법에 관한 것이다.
뉴로-프로세서의 기능은 뉴런(neuron)들 사이의 접속들의 강도들을 제어하는 시냅스 가중치들에 의존한다. 전형적으로, 시냅스 가중치들은 파워 다운된(powered down) 후 프로세서 기능을 보존하기 위해서 비-휘발성(non-volatile), 온-칩(on-chip) 메모리에 저장된다.
뉴로-프로세서와 동일한 칩 상에 이러한 메모리를 가지는 것은 뉴로-프로세서 기능성 및 유연성을 제한한다. 또한, 온-칩 시냅스(on-chip synaptic) 메모리는 이용될 수 있는 비-휘발성 메모리의 타입에 대한 선택들을 제한할 뿐만 아니라, 전체 칩의 면적 및 구현 비용을 증가시킨다.
본 개시의 특정 실시예들은 전기 회로를 제공한다. 일반적으로, 상기 전기 회로는 복수의 뉴런 회로들 및 시냅스들을 가지는 뉴로-프로세서 칩 ― 각각의 시냅스는 한 쌍의 뉴런 회로들에 접속함 ― , 및 시냅스들의 가중치들을 저장하는 뉴로-프로세서 칩에 접속된 이동식(removable) 메모리를 포함하고, 가중치들은 뉴로-프로세서 칩의 기능을 결정한다.
본 개시의 특정 실시예들은 뉴럴 시스템을 구현하기 위한 방법을 제공한다. 일반적으로, 상기 방법은 시냅스들의 가중치들을 저장하기 위해서 이동식 메모리를 사용하는 단계 ― 각각의 시냅스는 뉴로-프로세서 칩의 복수의 뉴런 회로들 중 2개의 뉴런 회로들에 접속하고, 가중치들은 뉴로-프로세서 칩의 기능을 결정함 ― , 및 뉴로-프로세서 칩에 이동식 메모리를 접속시키는 단계를 포함한다.
본 개시의 특정 실시예들은 뉴럴 시스템을 구현하기 위한 장치를 제공한다. 일반적으로, 상기 장치는 시냅스들의 가중치들을 저장하기 위해서 이동식 메모리를 사용하기 위한 수단 ― 각각의 시냅스는 뉴로-프로세서 칩의 복수의 뉴런 회로들 중 2개의 뉴런 회로들에 접속하고, 가중치들은 뉴로-프로세서 칩의 기능을 결정함 ― , 및 뉴로-프로세서 칩에 이동식 메모리를 접속시키기 위한 수단을 포함한다.
본 개시의 상기 기술된 특성들이 상세히 이해될 수 있는 방식으로, 상기 간략하게 요약되어 있는 설명의 더 구체적인 설명이 실시예들을 참조하여 행해질 수 있는데, 이러한 실시예들 중 일부는 첨부된 도면들에 도시되어 있다. 그러나, 상기 설명이 다른 균등하게 유효한 실시예들에 허용될 수 있기 때문에, 첨부된 도면들이 본 개시의 특정한 전형적인 실시예들만을 도시하며, 따라서, 본 개시의 범위를 제한하는 것으로 간주되지 않아야 한다는 것이 주목되어야 한다.
도 1은 본 개시의 특정 실시예들에 따른 예시적인 뉴럴 시스템을 도시한다.
도 2는 본 개시의 특정 실시예들에 따른 외부 시냅스 가중치 메모리와 인터페이싱되는 뉴로-프로세서의 예를 도시한다.
도 3은 본 개시의 특정 실시예들에 따른 뉴로-프로세서 외부의 시냅스 가중치 메모리를 구현하기 위한 예시적인 동작들을 도시한다.
도 3a는 도 3에 도시되는 동작들을 수행가능한 예시적인 컴포넌트들을 도시한다.
도 4는 본 개시의 특정 실시예들에 따른 외부 시냅스 가중치 메모리를 구현하기 위해서 사용될 수 있는 비-휘발성 메모리들의 예들을 도시한다.
본 개시의 다양한 실시예들은 첨부한 도면들을 참조하여 이하에서 더 충분하게 설명된다. 그러나, 이러한 개시는 많은 상이한 형태들로 구현될 수 있으며, 본 개시의 전체에 걸쳐 제시되는 임의의 특정 구조 또는 기능에 제한되는 것으로 해석되어서는 안 된다. 오히려, 이 실시예들은 본 개시가 철저하고 완전해지고, 당업자들에게 본 개시의 범위를 충분히 전달하도록 제공된다. 본 개시의 임의의 다른 실시예와 독립적으로 구현되든 또는 본 개시의 임의의 다른 실시예와 결합되든 간에, 본 명세서에서의 교시들에 기초하여 당업자는 본 발명의 사상이 본 명세서에 기재되는 개시의 임의의 실시예를 커버하는 것으로 의도된다는 것을 인식하여야 한다. 예를 들어, 본 명세서에 설명되는 임의의 수의 실시예들을 사용하여 장치가 구현될 수 있거나 또는 방법이 실시될 수 있다. 또한, 본 개시의 범위는 본 명세서에 설명되는 본 개시의 다양한 실시예들과 더불어 또는 이외에, 다른 구조, 기능, 또는 구조 및 기능을 사용하여 실시되는 이러한 장치 또는 방법을 커버하는 것으로 의도된다. 본 명세서에 기재되는 개시의 임의의 실시예는 청구항의 하나 또는 둘 이상의 엘리먼트들에 의해 구현될 수 있다는 것이 이해되어야 한다.
"예시적인"이라는 용어는 본 명세서에서 "예, 예시 또는 예증으로서 제공되는"의 의미로 사용된다. "예시적인" 것으로서 본 명세서에 설명되는 임의의 실시예는 반드시 다른 실시예들보다 선호되거나 또는 유리한 것으로 해석되는 것은 아니다.
특정 실시예들이 본 명세서에 설명되지만, 이러한 실시예들의 많은 변형들 및 치환들이 본 개시의 범위 내에 속한다. 선호되는 실시예들의 일부 이익들 및 이점들이 언급되지만, 본 개시의 범위는 특정 이익들, 용도들 또는 객체들에 제한되는 것으로 의도되지 않는다. 오히려, 본 개시의 실시예들은 상이한 기술들, 시스템 구성들, 네트워크들 및 프로토콜들에 광범위하게 적용가능하도록 의도되며, 이들 중 일부는 도면들에서의 예를 통해, 그리고 선호되는 실시예들의 다음의 설명에서 예시된다. 상세한 설명 및 도면들은 제한하기보다는 단지 본 개시를 예시하고, 본 개시의 범위는 첨부된 청구항들 및 이들의 등가물들에 의해 정의된다.
예시적인 뉴럴 시스템
도 1은 본 개시의 특정 실시예들에 따른 다수의 레벨들의 뉴런들을 가지는 예시적인 뉴럴 시스템(100)을 도시한다. 뉴럴 시스템(100)은 시냅스 접속들(104)의 네트워크를 통해 다른 레벨(106)의 뉴런들에 접속된 한 레벨(102)의 뉴런들을 포함할 수 있다. 전형적인 뉴럴 시스템에는 더 많은 레벨들의 뉴런들이 존재할 수 있지만, 단순화를 위해, 도 1에는 단지 2개의 레벨들의 뉴런들만이 도시된다.
도 1에 도시되는 바와 같이, 레벨(102) 내의 각각의 뉴런은 (도 1에 도시되지 않은) 이전의 레벨의 복수의 뉴런들에 의해 생성될 수 있는 입력 신호(108)를 수신할 수 있다. 신호(108)는 레벨(102)의 뉴런의 입력 전류를 나타낼 수 있다. 이 전류는 뉴런 막(membrane)에 누적되어 막 전위를 충전할 수 있다. 막 전위가 그 임계 레벨에 도달할 때, 뉴런은 파이어(fire)되어 다음 레벨(예를 들어, 레벨(106))의 뉴런들로 전달될 출력 스파이크를 생성할 수 있다.
도 1에 도시되는 바와 같이, 한 레벨의 뉴런들로부터 다른 레벨의 뉴런들로의 스파이크들의 전달은 시냅스 접속들(또는 단순히 "시냅스들")(104)의 네트워크를 통해 달성될 수 있다. 시냅스들(104)은 레벨(102)의 뉴런들로부터의 출력 신호들(즉, 스파이크들)을 수신하고, 그 신호들을 조정가능한 시냅스 가중치들
Figure pct00001
Figure pct00002
(여기서 P는 레벨들(102, 106)의 뉴런들 사이의 시냅스 접속들의 총 개수임)에 따라 스케일링하여, 스케일링된 신호들을 레벨(106)의 뉴런들의 입력 신호들로서 결합할 수 있다. 레벨(106) 내의 모든 뉴런은 대응하는 결합된 입력 신호에 기초하여 출력 스파이크(110)를 생성할 수 있다. 이후, 출력 스파이크들(110)은 (도 1에 도시되지 않은) 시냅스 접속들의 다른 네트워크를 사용하여 다른 레벨의 뉴런들로 전달될 수 있다.
뉴럴 시스템(100)은 뉴로-프로세서에 의해 에뮬레이팅(emulate)되어 패턴 인지, 기계 학습 및 모터 제어와 같은 광범위한 애플리케이션들에 이용될 수 있다. 뉴럴 시스템(100)의 각각의 뉴런은 뉴로-프로세서 칩 내의 뉴런 회로로서 구현될 수 있다. 출력 스파이크를 개시하는 임계 레벨로 충전되는 뉴런 막은 그 막을 통해 흐르는 전기 전류를 집적하는 캐패시터로서 뉴런 회로 내에서 구현될 수 있다. 뉴런 회로의 면적을 실질적으로 감소시키기 위해서, 나노미터 피처 크기의 멤리스터(memristor) 엘리먼트가 캐패시터 대신에 집적 디바이스로서 이용될 수 있다. 이러한 방식을 적용함으로써, 매우 큰 규모의 뉴럴 시스템 하드웨어의 효율적 구현이 가능할 수 있다.
뉴럴 시스템(100)을 에뮬레이팅하는 뉴로-프로세서의 기능은 뉴런들 사이의 접속들의 강도들을 제어할 수 있는 시냅스 접속들의 가중치들에 의존할 수 있다. 시냅스 가중치들은 파워 다운된 후 프로세서의 기능을 보존하기 위해서 비-휘발성 메모리에 저장될 수 있다. 그러나, 뉴로-프로세서와 동일한 칩 상에 이러한 메모리를 가지는 것은 프로세서 기능성 및 유연성을 제한할 수 있다. 또한, 온-칩 시냅스 메모리는 이용되는 비-휘발성 메모리의 타입에 대한 선택들을 제한할 수 있으며, 전체 칩의 면적 및 구현 비용을 증가시킬 수 있다.
본 개시의 특정 실시예들은 메인 뉴로-프로세서 칩으로부터의 분리된 외부 칩 상의 시냅스 가중치 메모리의 구현을 지원한다. 시냅스 가중 메모리는 대체가능한 이동식 메모리로서 뉴로-프로세서 칩으로부터 개별적으로 패키징될 수 있다. 이것은 뉴로-프로세서에 다이버스(diverse) 기능들을 제공할 수 있으며, 여기서 특정 기능은 뉴로-프로세서에 현재 부착된 이동식 메모리에 저장되는 시냅스 가중치들에 기초할 수 있다.
외부 시냅스 메모리를 가지는 예시적인 뉴로모방형( Neuromorphic ) 아키텍처
도 2는 본 개시의 특정 실시예들에 따른 뉴로모방형 아키텍처(200)의 예를 도시한다. 시냅스 메모리(206)는 인터페이스 회로(204)를 통해 뉴로-프로세서(202)에 접속될 수 있는, 분리된 외부 이동식 메모리로서 구현될 수 있다. 뉴로-프로세서(202)는 도 1에 도시되는 뉴럴 시스템(100)을 에뮬레이팅할 수 있다. 이것은 다수의 뉴런 회로들 및 시냅스 접속들을 포함할 수 있다. 인터페이스(204)는 뉴로-프로세서 칩(202) 및 외부 시냅스 이동식 메모리(206)를 접속시키는 버스를 포함할 수 있다. 인터페이스 버스는 양 방향들로 시냅스 가중치 데이터를 반송할 뿐만 아니라, "메모리 기록", "메모리 판독" 및 "주소"와 같은 커맨드들을 반송하도록 설계될 수 있다.
뉴럴 시스템 엔지니어링 애플리케이션들을 지원하기 위해서, 뉴로-프로세서(202)는 전형적으로, 예를 들어, 뉴런 당 약 100개의 시냅스들을 가지는 약 10,000개의 뉴런 회로들을 포함할 수 있고, 이는 뉴로-프로세서(202) 내의 시냅스들의 총 수가 대략 106개에 이르게 한다. 각각의 시냅스 접속의 강도는 원하는 정확성에 따라 특정 수의 비트들로 나타내는 가중치와 연관될 수 있다. 전형적으로, 많은 다양한 애플리케이션들에 충분한 정확성을 제공하도록 시냅스 가중치마다 최대 10개의 비트들이 요구될 수 있다. 예를 들어, 개개의 가중치를 10개의 비트들로 나타내는 경우, 대략 10Mbits의 메모리가 대략 106 개의 시냅스들을 가지는 뉴로-프로세서에 대한 시냅스 가중치들을 저장하도록 요구될 수 있다.
뉴로-프로세서 내의 뉴런들 및 시냅스들의 수는 훨씬 더 복잡한 뉴럴 시스템 엔지니어링 애플리케이션들을 지원하기 위해서 실질적으로 가까운 미래에 증가할 것으로 예상된다. 시냅스 가중치 메모리의 요구되는 크기는 10Mbits보다 훨씬 더 클 수 있다. 뉴로-프로세서 외부의 이동식 메모리로서의 큰 시냅스 메모리의 구현은 뉴로-프로세서 및 시냅스 메모리 둘 다의 더 효율적인 다이 이용을 제공할 수 있다. 또한, 뉴로-프로세서 및 메모리의 제조 프로세스들은 더 양호한 성능 및 더 저렴한 비용을 제공하기 위해서 이러한 분리된 칩들의 요구들에 대하여 고유하게 맞추어질 수 있다.
전술된 바와 같이, 뉴로-프로세서(202)의 기능은 뉴런 회로들 사이의 시냅스 접속들의 가중치들에 의존할 수 있다. 뉴로-프로세서(202)가 특정 애플리케이션을 수행할 수 있게 하기 위해서, 시냅스 가중치들의 훈련(training)은 먼저 뉴로-프로세서 내에서 수행될 필요가 있을 수 있다. 훈련 프로세스 동안, 시냅스 가중치들은 인터페이스(204)를 통해 외부 메모리(206)에 저장되고, 외부 메모리(206)로부터 로딩될 수 있다. 학습 프로세스가 완료되면, 모든 훈련되는 시냅스 가중치들이 외부 메모리 칩(206)에 완전히 저장될 수 있다.
많은 애플리케이션들에 대하여, 뉴로-프로세서 내에서의 가중치-훈련 프로세스의 듀레이션은 장시간 지속될 수 있다. 그러나, 훈련되는 시냅스 가중치들이 외부 이동식 메모리(206)에 완전히 저장되면, 이들은 이후 다른 이동식 메모리에 신속하게 복제될 수 있다. 이러한 방식으로, 하나의 메모리 칩으로부터 다른 메모리 칩으로 뉴로-프로세서(202)의 기능을 단순히 "클로닝(clone)"하는 것이 가능할 수 있다. 다른 뉴로-프로세서 칩 내에서의 시간- 및 전력-소비 가중치-훈련 프로세스는 이후 완전히 회피될 수 있고, 다른 뉴로-프로세서 칩은 가중치-훈련을 수행하지 않으면서 뉴로-프로세서(202)와 동일한 기능을 실행할 수 있다.
본 개시의 일 실시예에서, 외부 메모리(206)는 대체가능한 이동식 메모리로서 구현될 수 있다. 동일한 뉴로-프로세서(202)는 그에 부착된 시냅스 이동식 메모리에 의존하여 상이한 기능들을 가질 수 있다. 대체가능한 이동식 메모리는 사용자들 사이에서 공유될 수 있고, 상이한 기능들(즉, 동일한 시냅스들의 상이한 가중치 값들)의 라이브러리(library)는 상이한 이동식 메모리들에 저장될 수 있다. 다양한 기능들을 가지는 이러한 시냅스 이동식 메모리들은 뉴로-프로세서(202)로부터 완전히 독립적으로 설계될 수 있다.
본 개시의 다른 실시예에서, (예를 들어, 시냅스 가중치들의 일부를 가지는) 일시적 데이터를 가지는 로컬 작업 메모리는 더 신속한 프로세서 동작들을 제공하기 위해서 뉴로-프로세서 칩(202) 내에서 구현될 수 있다. 또한, 로컬 메모리는 전술된 가중치-훈련 프로세스 동안 이용될 수 있다. 한편, 프로세서 기능을 완전히 결정하는 모든 훈련된 시냅스 가중치들을 포함하는 영구 메모리는 외부에 있으며, 분리된 메모리 칩(206)으로서 구현될 수 있다.
도 3은 본 개시의 특정 실시예들에 따른 뉴로-프로세서 칩 외부의 시냅스 이동식 메모리를 구현하기 위한 예시적인 동작들(300)을 도시한다. 302에서, 이동식 메모리는 뉴로-프로세서 칩에 접속될 수 있다. 304에서, 이동식 메모리는 시냅스 가중치들을 저장하기 위해서 사용될 수 있으며, 여기서 각각의 시냅스는 뉴로-프로세서 칩의 복수의 뉴런 회로들 중 2개를 접속시킬 수 있고, 가중치들은 뉴로-프로세서 칩의 기능을 적어도 부분적으로 정의할 수 있다.
뉴로-프로세서 및 시냅스 메모리 칩의 예시적인 구현
뉴로-프로세서 칩(202) 및 외부 시냅스 메모리 칩(206)과 관련된 구현 세부사항들이 다음의 부분에서 제시된다. 구현 추정들은 뉴로-프로세서(202)가 다양한 오늘날의 뉴럴 시스템 애플리케이션들을 지원하기 위해서 대략 104개의 뉴런들을 포함할 수 있을 예시적인 경우에 기초한다.
멤리스터 엘리먼트가 뉴런 막을 모방(mimic)하기 위해서 캐패시터 대신 집적 디바이스로서 이용되는 경우, 하나의 뉴런 회로의 구현 면적은 오늘날의 상보적인 금속 산화막 반도체(CMOS) 기술들에 대하여 대략
Figure pct00003
내에 있을 수 있다. 이러한 뉴런 회로 구현은 뉴로-프로세서 칩(202) 내의 모든 뉴런들에 대하여 대략 10 mm2의 면적 비용을 초래할 수 있다.
전형적으로, 뉴런 당 약 100개의 시냅스들이 존재할 수 있으며, 이는 104개의 뉴런 회로들을 포함하는 예시적인 프로세서에 대하여 대략 106개의 시냅스들에 대응할 수 있다. 각각의 시냅스가 나노미터 피처 크기의 멤리스터 엘리먼트에 기초하여 구현되는 경우, 시냅스 당 구현 면적은 오늘날의 CMOS 기술들에 있어서 대략
Figure pct00004
내에 있을 수 있다. 이것은 104개의 뉴런 회로들을 포함하는 예시적인 뉴로-프로세서(202) 내의 모든 시냅스들에 대하여 대략 100 mm2의 면적 비용으로 초래될 수 있다. 따라서, 뉴로-프로세서 칩(202)의 총 다이 면적은 110 mm2(예를 들어,
Figure pct00005
의 다이 면적)와 대략 동일할 수 있다.
뉴런의 가장 신속한 파이어 레이트는 5ms 당 1 스파이크와 동일할 수 있다. 모든 뉴런들의 최대 약 10%(또는 이러한 예시적인 경우, 대략 1000개의 뉴런 회로들)는 임의의 주어진 5ms 시간 기간에서 동시에 스파이킹될 수 있다. 따라서, 최대 105개의 시냅스 가중치들은 시냅스 가중치 메모리(206)로부터 인터페이스(204)를 통해 뉴로-프로세서(202)로 5ms 마다 판독될 필요가 있을 수 있다. 다시 말해서, 한 번에 오직 하나의 시냅스 가중치만이 외부 메모리(206)로부터 뉴로-프로세서(202)로 로딩될 수 있는 경우, 50ns 마다 하나의 시냅스 가중치가 판독될 필요가 있을 수 있다.
한편, 메모리 기록 시간은 보상 신호가 도달할 때 업데이트될 필요가 있을 수 있는 적격의(eligible) 시냅스들의 수에 기초하여 결정될 수 있다. 최악의 경우의 시나리오에서, 메모리 기록 시간은 메모리 판독 시간과 동일할 수 있다. 전술된 바와 같이, 시냅스 메모리 칩(206)은 전형적으로 대략 106개의 시냅스 가중치들을 저장하도록 요구될 수 있다. 예를 들어, 시냅스 가중치 당 6개의 비트들이 이용되는 경우, 6Mbits의 총 저장 용량이 요구될 수 있다.
자기저항 랜덤 액세스 메모리(MRAM) 및 저항 랜덤 액세스 메모리(RRAM)는 오늘날의 가장 신속한 비-휘발성 메모리들을 나타낸다. 이러한 메모리들은 10ns 미만의 판독/기록 시간들 및 6 또는 10MBits보다 큰 용량들을 허용할 수 있으며, 이는 이러한 메모리들이 외부 시냅스 가중치 메모리들로서의 사용에 적합하게 한다.
도 4는 본 개시의 특정 실시예들에 따라 외부 시냅스 메모리(206)에 대하여 사용될 수 있는 비-휘발성 메모리들의 예들을 가지는 그래프(400)를 도시한다. 비-휘발성 메모리 타입들의 광범위한 선택들은 플래시, 강유전성, 자성 터널 접합, 스핀-전달 토크 디바이스들, 위상 변경 메모리들, 저항/멤리스티브(memristive) 스위치들 등을 포함한다. 모든 이러한 선택들은 외부 시냅스 메모리(206)에 대한 가능한 후보들을 나타낼 수 있다.
그래프(400)의 부분(402)은 더 신속한 프로세서 동작들에 대한 시냅스 가중치들의 일부를 저장할 수 있는 로컬 작업 온-칩 메모리의 동작 영역에 대응할 수 있다. 강유전성 랜덤 액세스 메모리(FeRAM), 자기저항 랜덤 액세스 메모리(MRAM), 정적 랜덤 액세스 메모리(SRAM), 동적 랜덤 액세스 메모리(DRAM) 및 위상-변경 랜덤 액세스 메모리(PRAM)가 작업 온-칩 메모리에 대한 가능한 후보들을 나타낼 수 있다는 것이 도 4로부터 관측될 수 있다. 한편, 도 4에 도시되는 바와 같이, 저항 변화형 메모리(RRAM)는 로컬 온-칩 작업 메모리로서 이용되기에 너무 크며, 고가일 수 있다.
PRAM, FeRAM 및 MRAM 메모리들은 기록 동작들 전에 데이터가 삭제되는 것을 필요로 하지 않는 모든 비-휘발성 메모리들이라는 점에 주목하여야 한다. 그러나, RRAM 메모리는 기록 동작 전 삭제를 필요로 하는 비-휘발성 메모리이다. 한편, DRAM 및 SRAM은 휘발성 메모리들의 예들을 나타낸다.
그래프(400)의 일부(404)는 외부 메모리와 인터페이싱되는 뉴로-프로세서에 의해 실행되는 애플리케이션과 연관된 모든 시냅스 가중치들을 저장하기 위한 외부 메모리의 동작 영역에 대응할 수 있다. NAND 플래시 메모리, NOR 플래시 메모리 및 PRAM이 외부 시냅스 메모리에 대한 가능한 선택들일 수 있다는 점이 도 4로부터 관측될 수 있다. NAND 플래시 메모리들 및 NOR 플래시 메모리들은 기록 전에 데이터가 삭제되는 것을 필요로 하는 비-휘발성 메모리들인 반면, PRAM은 기록 전 삭제를 필요로 하지 않는 비-휘발성 RAM의 예이다.
전술된 방법들의 다양한 동작들은 대응하는 기능들을 수행가능한 임의의 적합한 수단에 의해 수행될 수 있다. 수단은, 회로, 주문형 집적 회로(ASIC) 또는 프로세서를 포함하는(그러나, 이들로 제한되지 않음) 다양한 하드웨어 및/또는 소프트웨어 컴포넌트(들) 및/또는 모듈(들)을 포함할 수 있다. 일반적으로, 도면들에 도시되는 동작들이 존재하는 경우, 이러한 동작들은 유사한 번호를 가지는 대응하는 상대 수단-플러스-기능 컴포넌트들을 가질 수 있다. 예를 들어, 도 3에 도시되는 동작들(300)은 도 3a에 도시되는 컴포넌트들(300A, 302A, 304A)에 대응한다.
본 명세서에서 사용되는 바와 같이, "결정하는"이라는 용어는 폭 넓고 다양한 동작들을 포함한다. 예를 들어, "결정하는"은 계산하는, 컴퓨팅하는, 프로세싱하는, 유도하는, 조사하는, 검색(표, 데이터 베이스 또는 또 다른 데이터 구조에서 검색)하는, 확인하는 등을 포함할 수 있다. 또한, "결정하는"은 수신하는(예를 들어, 정보를 수신하는), 액세스하는(예를 들어, 메모리 내의 데이터에 액세스하는) 등을 포함할 수 있다. 또한, "결정하는"은 해결하는, 선정하는, 선택하는, 설정하는 등을 포함할 수 있다.
본 명세서에서 사용되는 바와 같이, 항목들의 리스트 중 "적어도 하나"를 지칭하는 문구는 단일 멤버들을 포함하는, 이러한 항목들의 임의의 조합을 지칭한다. 일례로서, "a, b, 또는 c 중 적어도 하나"는 a, b, c, a-b, a-c, b-ca-b-c를 커버하도록 의도된다.
본 개시와 관련하여 설명되는 다양한 예시적인 논리 블록들, 모듈들, 및 회로들이 범용 프로세서, 디지털 신호 프로세서(DSP), 주문형 집적 회로(ASIC), 필드 프로그램가능한 게이트 어레이(FPGA) 또는 다른 프로그램가능한 로직 디바이스(PLD), 이산 게이트 또는 트랜지스터 로직, 이산 하드웨어 컴포넌트들, 또는 본 명세서에 설명되는 기능들을 수행하도록 설계된 이들의 임의의 조합을 통해 구현되거나 또는 수행될 수 있다. 범용 프로세서는 마이크로프로세서일 수 있지만, 대안적으로, 프로세서는 임의의 상업적으로 이용가능한 프로세서, 제어기, 마이크로제어기, 또는 상태 머신일 수 있다. 프로세서는 또한 컴퓨팅 디바이스들의 조합 예를 들어, DSP 및 마이크로프로세서의 조합, 복수의 마이크로프로세서들, DSP 코어와 결합된 하나 또는 둘 이상의 마이크로프로세서들, 또는 임의의 다른 이러한 구성으로서 구현될 수 있다.
본 개시와 관련하여 설명되는 알고리즘 또는 방법의 단계들은 직접 하드웨어로 구현되거나, 프로세서에 의해 실행되는 소프트웨어 모듈로 구현되거나, 또는 이 둘의 조합으로 구현될 수 있다. 소프트웨어 모듈은 당해 기술에서 공지된 임의의 형태의 저장 매체에 상주할 수 있다. 사용될 수 있는 저장 매체의 일부 예들은 랜덤 액세스 메모리(RAM), 판독 전용 메모리(ROM), 플래시 메모리, EPROM 메모리, EEPROM 메모리, 레지스터들, 하드디스크, 이동식(removable) 디스크, CD-ROM 등을 포함한다. 소프트웨어 모듈은 단일 명령 또는 다수의 명령들을 포함할 수 있으며, 몇몇 상이한 코드 세그먼트들을 통해, 상이한 프로그램들 사이에, 그리고 다수의 저장 매체에 걸쳐 분산될 수 있다. 저장 매체는 프로세서가 저장 매체로부터 정보를 판독하고 저장 매체에 정보를 기록할 수 있도록 프로세서에 커플링될 수 있다. 대안적으로, 저장 매체는 프로세서에 통합될 수 있다.
본 명세서에 개시되는 방법들은 설명된 방법을 달성하기 위한 하나 또는 둘 이상의 단계들 또는 동작들을 포함한다. 방법 단계들 및/또는 동작들은 청구항들의 범위를 벗어나지 않으면서 서로 교환될 수 있다. 다시 말해서, 단계들 또는 동작들의 특정 순서가 명시되지 않는 한, 특정 단계들 및/또는 동작들의 순서 및/또는 사용은 청구항들의 범위를 벗어나지 않으면서 변경될 수 있다.
설명되는 기능들은 하드웨어, 소프트웨어, 펌웨어 또는 이들의 임의의 조합으로 구현될 수 있다. 소프트웨어로 구현되는 경우, 기능들은 컴퓨터-판독가능 매체 상에 하나 또는 둘 이상의 명령들로서 저장될 수 있다. 저장 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 이용가능한 매체일 수 있다. 제한이 아닌 예로서, 이러한 컴퓨터-판독가능 매체는 RAM, ROM, EEPROM, CD-ROM 또는 다른 광학 디스크 저장소, 자기 디스크 저장소 또는 다른 자기 저장 디바이스들, 또는 원하는 프로그램 코드를 명령들 또는 데이터 구조들의 형태로 반송 또는 저장하기 위해서 사용될 수 있고 컴퓨터에 의해 액세스될 수 있는 임의의 다른 매체를 포함할 수 있다. 본 명세서에서 사용되는 바와 같은 디스크(disk) 및 디스크(disc)는 컴팩트 디스크(disc)(CD), 레이저 디스크(disc), 광 디스크(disc), 디지털 다목적 디스크(disc)(DVD), 플로피 디스크(disk) 및 블루-레이
Figure pct00006
디스크(disc)를 포함하며, 여기서 디스크(disk)들은 통상적으로 데이터를 자기적으로 재생하는 반면, 디스크(disc)들은 레이저들을 사용하여 데이터를 광학적으로 재생한다.
따라서, 특정 실시예들은 본 명세서에 제시되는 동작들을 수행하기 위한 컴퓨터 프로그램 물건을 포함할 수 있다. 예를 들어, 이러한 컴퓨터 프로그램 물건은 명령들이 저장(및/또는 인코딩)된 컴퓨터 판독가능 매체를 포함할 수 있고, 명령들은 본 명세서에 설명되는 동작들을 수행하도록 하나 또는 둘 이상의 프로세서들에 의해 실행가능하다. 특정 실시예들의 경우, 컴퓨터 프로그램 물건은 패키지물(packaging material)을 포함할 수 있다.
또한, 소프트웨어 또는 명령들은 송신 매체를 통해 송신될 수 있다. 예를 들어, 소프트웨어가 동축 케이블, 광섬유 케이블, 트위스티드 페어(twisted pair), 디지털 가입자 회선(DSL), 또는 (적외선, 라디오, 및 마이크로웨이브와 같은) 무선 기술들을 사용하여 웹사이트, 서버, 또는 다른 원격 소스로부터 송신되는 경우, 동축 케이블, 광섬유 케이블, 트위스티드 페어, DSL, 또는 (적외선, 라디오, 및 마이크로웨이브와 같은) 무선 기술들이 송신 매체의 정의 내에 포함된다.
또한, 본 명세서에 설명되는 방법들 및 기법들을 수행하기 위한 모듈들 및/또는 다른 적절한 수단이 적용가능한 기지국 및/또는 사용자 단말에 의해 다운로드되고 그리고/또는 그렇지 않으면 획득될 수 있다는 것이 인식되어야 한다. 예를 들어, 이러한 디바이스는 본 명세서에 설명되는 방법들을 수행하기 위한 수단의 이전을 용이하게 하기 위해서 서버에 커플링될 수 있다. 대안적으로, 본 명세서에 설명되는 다양한 방법들은 사용자 단말 및/또는 기지국이 저장 수단을 디바이스에 커플링시키거나 또는 저장 수단을 디바이스에 제공할 시에 다양한 방법들을 획득할 수 있도록 저장 수단(예를 들어, RAM, ROM, (컴팩트 디스크(CD) 또는 플로피 디스크 등과 같은) 물리적 저장 매체 등)을 통해 제공될 수 있다. 더욱이, 본 명세서에 설명되는 방법들 및 기법들을 디바이스에 제공하기 위한 임의의 다른 적합한 기법이 이용될 수 있다.
청구항들은 위에서 예시된 바로 그 구성 및 컴포넌트들에 제한되지 않는다는 것이 이해될 것이다. 위에서 설명된 방법들 및 장치의 배열, 동작 및 세부사항들에서 청구항들의 범위를 벗어나지 않으면서 다양한 변경들, 변화들 및 변형들이 이루어질 수 있다.
상기 설명은 본 개시의 실시예들에 관한 것이지만, 본 개시의 기본 범위를 벗어나지 않으면서 본 개시의 다른 그리고 추가 실시예들이 고안될 수 있으며, 그 범위는 다음의 청구항들에 의해 결정된다.

Claims (21)

  1. 전기 회로로서,
    복수의 뉴런 회로들 및 적어도 하나의 시냅스를 가지는 뉴로(neuro)-프로세서 칩 ― 상기 적어도 하나의 시냅스는 한 쌍의 뉴런 회로들에 접속함 ― ; 및
    상기 적어도 하나의 시냅스의 가중치들을 저장하는 상기 뉴로-프로세서 칩에 접속된 이동식(removable) 메모리를 포함하고,
    상기 가중치들은, 상기 뉴로-프로세서 칩의 기능을 적어도 부분적으로 정의하는,
    전기 회로.
  2. 제 1 항에 있어서,
    상기 이동식 메모리는, 인터페이스 회로를 통해 상기 뉴로-프로세서 칩에 접속되고,
    상기 인터페이스 회로는, 가중치들을 상기 뉴로-프로세서 칩으로부터 상기 이동식 메모리로 그리고 상기 이동식 메모리로부터 상기 뉴로-프로세서 칩으로 반송(carry)하는,
    전기 회로.
  3. 제 1 항에 있어서,
    상기 뉴로-프로세서 칩은, 상기 가중치들의 적어도 일부를 저장하기 위한 로컬 메모리를 포함하는,
    전기 회로.
  4. 제 1 항에 있어서,
    상기 가중치들은, 상기 이동식 메모리에 저장되기 전 상기 한 쌍의 뉴런 회로들에 대하여 훈련(train)되는,
    전기 회로.
  5. 제 4 항에 있어서,
    훈련된 가중치들의 값들은, 복제되어 다른 뉴로-프로세서 칩에 접속된 다른 이동식 메모리에 저장되고,
    상기 다른 뉴로-프로세서 칩은, 상기 가중치들의 값들에 적어도 부분적으로 기초하여 상기 뉴로-프로세서 칩의 기능을 실행하는,
    전기 회로.
  6. 제 1 항에 있어서,
    상기 이동식 메모리는, 상기 이동식 메모리와 상이한 가중치들의 값들을 저장하는 다른 이동식 메모리로 대체되고,
    상기 가중치들의 값들은, 상기 뉴로-프로세서 칩의 다른 기능을 적어도 부분적으로 정의하는,
    전기 회로.
  7. 제 1 항에 있어서,
    상기 이동식 메모리는, 비-휘발성 메모리 디바이스를 포함하는,
    전기 회로.
  8. 뉴럴(neural) 시스템을 구현하기 위한 방법으로서,
    뉴로-프로세서 칩에 이동식 메모리를 접속시키는 단계; 및
    상기 이동식 메모리에 시냅스 가중치들을 저장하는 단계를 포함하고,
    시냅스는, 뉴로-프로세서 칩의 복수의 뉴런 회로들 중 2개의 뉴런 회로들에 접속하고,
    상기 가중치들은, 상기 뉴로-프로세서 칩의 기능을 적어도 부분적으로 정의하는,
    뉴럴 시스템을 구현하기 위한 방법.
  9. 제 8 항에 있어서,
    인터페이스 회로를 사용하여 상기 뉴로-프로세서 칩에 상기 이동식 메모리를 접속시키는 단계; 및
    상기 인터페이스 회로를 통해 상기 가중치들을 상기 뉴로-프로세서 칩으로부터 상기 이동식 메모리로 그리고 상기 이동식 메모리로부터 상기 뉴로-프로세서 칩으로 전달하는 단계를 더 포함하는,
    뉴럴 시스템을 구현하기 위한 방법.
  10. 제 8 항에 있어서,
    상기 뉴로-프로세서 칩 내의 로컬 메모리에 상기 시냅스 가중치들의 적어도 일부를 저장하는 단계를 더 포함하는,
    뉴럴 시스템을 구현하기 위한 방법.
  11. 제 8 항에 있어서,
    상기 2개의 뉴런 회로들에 대한 상기 가중치들을 훈련하는 단계; 및
    상기 이동식 메모리에 훈련된 가중치들을 저장하는 단계를 더 포함하는,
    뉴럴 시스템을 구현하기 위한 방법.
  12. 제 11 항에 있어서,
    다른 뉴로-프로세서 칩에 접속된 다른 이동식 메모리에 훈련된 가중치들의 값들을 복제하는 단계를 더 포함하고,
    상기 다른 뉴로-프로세서 칩은, 상기 가중치들의 값들에 적어도 부분적으로 기초하여 상기 뉴로-프로세서 칩의 기능을 실행하는,
    뉴럴 시스템을 구현하기 위한 방법.
  13. 제 8 항에 있어서,
    상기 이동식 메모리를 상기 이동식 메모리와 상이한 가중치들의 값들을 저장하는 다른 이동식 메모리로 대체하는 단계를 더 포함하고,
    상기 가중치들의 값들은, 상기 뉴로-프로세서 칩의 다른 기능을 적어도 부분적으로 정의하는,
    뉴럴 시스템을 구현하기 위한 방법.
  14. 제 8 항에 있어서,
    상기 이동식 메모리는, 비-휘발성 메모리 디바이스를 포함하는,
    뉴럴 시스템을 구현하기 위한 방법.
  15. 뉴럴 시스템을 구현하기 위한 장치로서,
    뉴로-프로세서 칩에 이동식 메모리를 접속시키기 위한 수단; 및
    상기 이동식 메모리에 시냅스 가중치들을 저장하기 위한 수단을 포함하고,
    시냅스는, 뉴로-프로세서 칩의 복수의 뉴런 회로들 중 2개의 뉴런 회로들에 접속하고,
    상기 가중치들은, 상기 뉴로-프로세서 칩의 기능을 적어도 부분적으로 정의하는,
    뉴럴 시스템을 구현하기 위한 장치.
  16. 제 15 항에 있어서,
    인터페이스 회로를 사용하여 상기 뉴로-프로세서 칩에 상기 이동식 메모리를 접속시키기 위한 장치, 및
    상기 인터페이스 회로를 통해 상기 가중치들을 상기 뉴로-프로세서 칩으로부터 상기 이동식 메모리로 그리고 상기 이동식 메모리로부터 상기 뉴로-프로세서 칩으로 전달하기 위한 수단을 더 포함하는,
    뉴럴 시스템을 구현하기 위한 장치.
  17. 제 15 항에 있어서,
    상기 뉴로-프로세서 칩 내의 로컬 메모리에 상기 시냅스 가중치들의 적어도 일부를 저장하기 위한 수단을 더 포함하는,
    뉴럴 시스템을 구현하기 위한 장치.
  18. 제 15 항에 있어서,
    상기 2개의 뉴런 회로들에 대한 상기 가중치들을 훈련하기 위한 수단; 및
    상기 이동식 메모리에 훈련된 가중치들을 저장하기 위한 수단을 더 포함하는,
    뉴럴 시스템을 구현하기 위한 장치.
  19. 제 18 항에 있어서,
    다른 뉴로-프로세서 칩에 접속된 다른 이동식 메모리에 훈련된 가중치들의 값들을 복제하기 위한 수단을 더 포함하고,
    상기 다른 뉴로-프로세서 칩은, 상기 가중치들의 값들에 적어도 부분적으로 기초하여 상기 뉴로-프로세서 칩의 기능을 실행하는,
    뉴럴 시스템을 구현하기 위한 장치.
  20. 제 15 항에 있어서,
    상기 이동식 메모리를 상기 이동식 메모리와 상이한 가중치들의 값들을 저장하는 다른 이동식 메모리로 대체하기 위한 수단을 더 포함하고,
    상기 가중치들의 값들은, 상기 뉴로-프로세서 칩의 다른 기능을 적어도 부분적으로 정의하는,
    뉴럴 시스템을 구현하기 위한 장치.
  21. 제 15 항에 있어서,
    상기 이동식 메모리는, 비-휘발성 메모리 디바이스를 포함하는,
    뉴럴 시스템을 구현하기 위한 장치.
KR1020137003298A 2010-07-07 2011-07-07 뉴럴 시스템을 구현하기 위한 방법들, 장치들 및 컴퓨터 판독가능 매체 및 그에 의한 전기 회로 KR101466251B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/831,484 2010-07-07
US12/831,484 US8676734B2 (en) 2010-07-07 2010-07-07 Methods and systems for replaceable synaptic weight storage in neuro-processors
PCT/US2011/043254 WO2012006468A1 (en) 2010-07-07 2011-07-07 Methods and systems for replaceable synaptic weight storage in neuro-processors

Publications (2)

Publication Number Publication Date
KR20130036323A true KR20130036323A (ko) 2013-04-11
KR101466251B1 KR101466251B1 (ko) 2014-11-27

Family

ID=44584777

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020137003298A KR101466251B1 (ko) 2010-07-07 2011-07-07 뉴럴 시스템을 구현하기 위한 방법들, 장치들 및 컴퓨터 판독가능 매체 및 그에 의한 전기 회로

Country Status (6)

Country Link
US (1) US8676734B2 (ko)
EP (1) EP2591449A1 (ko)
JP (3) JP2013534017A (ko)
KR (1) KR101466251B1 (ko)
CN (1) CN102971754B (ko)
WO (1) WO2012006468A1 (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180062912A (ko) * 2016-12-01 2018-06-11 비아 얼라이언스 세미컨덕터 씨오., 엘티디. 캐시 메모리 또는 신경망 유닛 메모리로서 동작 가능한 메모리 어레이를 가지는 프로세서
KR20180062914A (ko) * 2016-12-01 2018-06-11 비아 얼라이언스 세미컨덕터 씨오., 엘티디. 희생 캐시 또는 신경망 유닛 메모리로서 동작 가능한 메모리 어레이를 갖는 프로세서

Families Citing this family (37)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8977583B2 (en) * 2012-03-29 2015-03-10 International Business Machines Corporation Synaptic, dendritic, somatic, and axonal plasticity in a network of neural cores using a plastic multi-stage crossbar switching
CN104854602B (zh) * 2012-12-03 2017-04-19 Hrl实验室有限责任公司 一种神经网络单元、以及相关系统和方法
US10339041B2 (en) 2013-10-11 2019-07-02 Qualcomm Incorporated Shared memory architecture for a neural simulator
CN104809501B (zh) * 2014-01-24 2018-05-01 清华大学 一种基于类脑协处理器的计算机系统
CN104809498B (zh) * 2014-01-24 2018-02-13 清华大学 一种基于神经形态电路的类脑协处理器
US20150324691A1 (en) * 2014-05-07 2015-11-12 Seagate Technology Llc Neural network connections using nonvolatile memory devices
EP3035249B1 (en) * 2014-12-19 2019-11-27 Intel Corporation Method and apparatus for distributed and cooperative computation in artificial neural networks
WO2016187500A1 (en) 2015-05-21 2016-11-24 Cory Merkel Method and apparatus for training memristive learning systems
US11226840B2 (en) 2015-10-08 2022-01-18 Shanghai Zhaoxin Semiconductor Co., Ltd. Neural network unit that interrupts processing core upon condition
US10725934B2 (en) 2015-10-08 2020-07-28 Shanghai Zhaoxin Semiconductor Co., Ltd. Processor with selective data storage (of accelerator) operable as either victim cache data storage or accelerator memory and having victim cache tags in lower level cache wherein evicted cache line is stored in said data storage when said data storage is in a first mode and said cache line is stored in system memory rather then said data store when said data storage is in a second mode
US11221872B2 (en) 2015-10-08 2022-01-11 Shanghai Zhaoxin Semiconductor Co., Ltd. Neural network unit that interrupts processing core upon condition
US11029949B2 (en) 2015-10-08 2021-06-08 Shanghai Zhaoxin Semiconductor Co., Ltd. Neural network unit
US11216720B2 (en) 2015-10-08 2022-01-04 Shanghai Zhaoxin Semiconductor Co., Ltd. Neural network unit that manages power consumption based on memory accesses per period
US11068771B2 (en) * 2016-03-21 2021-07-20 HangZhou HaiCun Information Technology Co., Ltd. Integrated neuro-processor comprising three-dimensional memory array
US11270193B2 (en) 2016-09-30 2022-03-08 International Business Machines Corporation Scalable stream synaptic supercomputer for extreme throughput neural networks
US10489702B2 (en) * 2016-10-14 2019-11-26 Intel Corporation Hybrid compression scheme for efficient storage of synaptic weights in hardware neuromorphic cores
CN108073982B (zh) * 2016-11-18 2020-01-03 上海磁宇信息科技有限公司 类脑计算系统
US11580373B2 (en) 2017-01-20 2023-02-14 International Business Machines Corporation System, method and article of manufacture for synchronization-free transmittal of neuron values in a hardware artificial neural networks
US11238334B2 (en) 2017-04-04 2022-02-01 Hailo Technologies Ltd. System and method of input alignment for efficient vector operations in an artificial neural network
US11551028B2 (en) 2017-04-04 2023-01-10 Hailo Technologies Ltd. Structured weight based sparsity in an artificial neural network
US10387298B2 (en) 2017-04-04 2019-08-20 Hailo Technologies Ltd Artificial neural network incorporating emphasis and focus techniques
US11615297B2 (en) 2017-04-04 2023-03-28 Hailo Technologies Ltd. Structured weight based sparsity in an artificial neural network compiler
US11544545B2 (en) 2017-04-04 2023-01-03 Hailo Technologies Ltd. Structured activation based sparsity in an artificial neural network
US10197971B1 (en) 2017-08-02 2019-02-05 International Business Machines Corporation Integrated optical circuit for holographic information processing
JP6914342B2 (ja) * 2017-09-07 2021-08-04 パナソニック株式会社 半導体記憶素子を用いたニューラルネットワーク演算回路
US11074499B2 (en) 2017-11-20 2021-07-27 International Business Machines Corporation Synaptic weight transfer between conductance pairs with polarity inversion for reducing fixed device asymmetries
WO2019141902A1 (en) * 2018-01-17 2019-07-25 Nokia Technologies Oy An apparatus, a method and a computer program for running a neural network
CN109886416A (zh) * 2019-02-01 2019-06-14 京微齐力(北京)科技有限公司 集成人工智能模块的系统芯片及机器学习方法
CN112684977B (zh) * 2019-10-18 2024-05-28 旺宏电子股份有限公司 存储器装置及其存储器内计算方法
KR20210047413A (ko) 2019-10-21 2021-04-30 삼성전자주식회사 플래시 메모리 장치 및 플래시 메모리 셀들을 포함하는 컴퓨팅 장치
US11270759B2 (en) 2019-10-21 2022-03-08 Samsung Electronics Co., Ltd. Flash memory device and computing device including flash memory cells
KR20210050634A (ko) 2019-10-28 2021-05-10 삼성전자주식회사 메모리 장치, 메모리 시스템 및 자율 주행 장치
US11264082B2 (en) 2019-10-28 2022-03-01 Samsung Electronics Co., Ltd. Memory device, memory system and autonomous driving apparatus
US11237894B1 (en) 2020-09-29 2022-02-01 Hailo Technologies Ltd. Layer control unit instruction addressing safety mechanism in an artificial neural network processor
US11263077B1 (en) 2020-09-29 2022-03-01 Hailo Technologies Ltd. Neural network intermediate results safety mechanism in an artificial neural network processor
US11221929B1 (en) 2020-09-29 2022-01-11 Hailo Technologies Ltd. Data stream fault detection mechanism in an artificial neural network processor
US11811421B2 (en) 2020-09-29 2023-11-07 Hailo Technologies Ltd. Weights safety mechanism in an artificial neural network processor

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5214743A (en) * 1989-10-25 1993-05-25 Hitachi, Ltd. Information processing apparatus
US5329611A (en) * 1990-05-22 1994-07-12 International Business Machines Corp. Scalable flow virtual learning neurocomputer
JPH04182769A (ja) * 1990-11-17 1992-06-30 Nissan Motor Co Ltd デジタル・ニューロプロセッサ
IT1244912B (it) * 1991-01-31 1994-09-13 Texas Instruments Italia Spa Sistema di apprendimento per rete neuronica di opportuna architettura fisicamente inseribile nel processo di apprendimento.
IT1244911B (it) * 1991-01-31 1994-09-13 Texas Instruments Italia Spa Architettura per rete neuronica fisicamente inseribile nel processo di apprendimento.
JPH04320223A (ja) * 1991-04-19 1992-11-11 Sharp Corp オートアイリス装置
JPH0561843A (ja) * 1991-05-15 1993-03-12 Wacom Co Ltd ニユーラルネツトワーク装置
JPH04346040A (ja) * 1991-05-23 1992-12-01 Minolta Camera Co Ltd 色彩計
JPH0561847A (ja) * 1991-09-02 1993-03-12 Toshiba Corp ニユーラルネツトワーク学習装置
US5278945A (en) * 1992-01-10 1994-01-11 American Neuralogical, Inc. Neural processor apparatus
KR960013367B1 (ko) * 1992-05-30 1996-10-04 정호선 프로그램이 가능한 다층 신경회로망
KR0178805B1 (ko) * 1992-08-27 1999-05-15 정호선 스스로 학습이 가능한 다층 신경회로망 및 학습 방법
JPH06250997A (ja) * 1993-03-01 1994-09-09 Toshiba Corp 神経回路網の高速学習装置
JPH07192073A (ja) * 1993-12-27 1995-07-28 Rohm Co Ltd プログラマブル・デバイス及びプログラマブル・デバイスを使用した装置
DE69430744T2 (de) * 1994-07-28 2003-01-30 International Business Machines Corp., Armonk Verbesserte Neuronalhalbleiterchipsarchitekturen und Neuronalnetzwerke darin
JPH1021209A (ja) * 1996-06-27 1998-01-23 Shimazu Yasumasa 汎用ディジタルニューラル計算機
JP2004295177A (ja) * 2003-03-25 2004-10-21 Seiko Epson Corp 電子機器のコントローラおよびプリンタコントローラ
MY138544A (en) * 2003-06-26 2009-06-30 Neuramatix Sdn Bhd Neural networks with learning and expression capability
JP2005098555A (ja) * 2003-09-22 2005-04-14 Denso Corp ニューラルネットワーク型空調装置
WO2006018898A1 (ja) * 2004-08-20 2006-02-23 Fujitsu Limited 無線ネットワークシステム
JP2006085557A (ja) * 2004-09-17 2006-03-30 Toshiba Corp メモリ管理装置及びデータ処理装置
US7533071B2 (en) * 2005-06-28 2009-05-12 Neurosciences Research Foundation, Inc. Neural modeling and brain-based devices using special purpose processor
US7904398B1 (en) * 2005-10-26 2011-03-08 Dominic John Repici Artificial synapse component using multiple distinct learning means with distinct predetermined learning acquisition times
US20070288410A1 (en) * 2006-06-12 2007-12-13 Benjamin Tomkins System and method of using genetic programming and neural network technologies to enhance spectral data
JP4842742B2 (ja) * 2006-09-05 2011-12-21 富士通株式会社 ソフトウェア管理プログラム、ソフトウェア管理方法およびソフトウェア管理装置
US7814038B1 (en) * 2007-12-06 2010-10-12 Dominic John Repici Feedback-tolerant method and device producing weight-adjustment factors for pre-synaptic neurons in artificial neural networks
WO2009113993A1 (en) * 2008-03-14 2009-09-17 Hewlett-Packard Development Company, L.P. Neuromorphic circuit

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180062912A (ko) * 2016-12-01 2018-06-11 비아 얼라이언스 세미컨덕터 씨오., 엘티디. 캐시 메모리 또는 신경망 유닛 메모리로서 동작 가능한 메모리 어레이를 가지는 프로세서
KR20180062914A (ko) * 2016-12-01 2018-06-11 비아 얼라이언스 세미컨덕터 씨오., 엘티디. 희생 캐시 또는 신경망 유닛 메모리로서 동작 가능한 메모리 어레이를 갖는 프로세서
US10423876B2 (en) 2016-12-01 2019-09-24 Via Alliance Semiconductor Co., Ltd. Processor with memory array operable as either victim cache or neural network unit memory
US10664751B2 (en) 2016-12-01 2020-05-26 Via Alliance Semiconductor Co., Ltd. Processor with memory array operable as either cache memory or neural network unit memory

Also Published As

Publication number Publication date
US8676734B2 (en) 2014-03-18
KR101466251B1 (ko) 2014-11-27
JP2018014114A (ja) 2018-01-25
EP2591449A1 (en) 2013-05-15
US20120011087A1 (en) 2012-01-12
JP2015167019A (ja) 2015-09-24
JP2013534017A (ja) 2013-08-29
CN102971754A (zh) 2013-03-13
WO2012006468A1 (en) 2012-01-12
CN102971754B (zh) 2016-06-22

Similar Documents

Publication Publication Date Title
KR101466251B1 (ko) 뉴럴 시스템을 구현하기 위한 방법들, 장치들 및 컴퓨터 판독가능 매체 및 그에 의한 전기 회로
KR101611222B1 (ko) 신경망의 시냅틱 가중치들을 저장하기 위해 확률적 방식으로 메모리를 이용하기 위한 방법 및 장치
US10528643B1 (en) Vector-matrix multiplication using non-volatile memory cells
CN110782027B (zh) 用于人工神经网络的差分非易失性存储器单元
US10534840B1 (en) Multiplication using non-volatile memory cells
US11081168B2 (en) Mixed digital-analog memory devices and circuits for secure storage and computing
CN110782028A (zh) 具有差分二进制非易失性存储器单元结构的可配置精密神经网络
US11217302B2 (en) Three-dimensional neuromorphic device including switching element and resistive element
KR102567160B1 (ko) 비휘발성의 시냅스 배열을 가지는 신경망 회로
CN112152619A (zh) 模数转换器和包括该模数转换器的神经形态计算设备
US11437103B2 (en) Memory cells configured to generate weighted inputs for neural networks
US11226763B2 (en) Device for high dimensional computing comprising an associative memory module
US10249360B1 (en) Method and circuit for generating a reference voltage in neuromorphic system
US11694065B2 (en) Spiking neural unit
JP2022546032A (ja) 相変化メモリ・シナプスのプログラム中にドリフト係数外れ値を抑制すること
CN108255416A (zh) 具有驱动器内数据分析的非易失性存储系统

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
FPAY Annual fee payment

Payment date: 20180928

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20190924

Year of fee payment: 6