KR20230131957A - 가산 방법, 반도체 장치, 및 전자 기기 - Google Patents

가산 방법, 반도체 장치, 및 전자 기기 Download PDF

Info

Publication number
KR20230131957A
KR20230131957A KR1020237029669A KR20237029669A KR20230131957A KR 20230131957 A KR20230131957 A KR 20230131957A KR 1020237029669 A KR1020237029669 A KR 1020237029669A KR 20237029669 A KR20237029669 A KR 20237029669A KR 20230131957 A KR20230131957 A KR 20230131957A
Authority
KR
South Korea
Prior art keywords
transistor
memory
insulator
circuit
data
Prior art date
Application number
KR1020237029669A
Other languages
English (en)
Other versions
KR102627117B1 (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 KR1020247001673A priority Critical patent/KR102665195B1/ko
Publication of KR20230131957A publication Critical patent/KR20230131957A/ko
Application granted granted Critical
Publication of KR102627117B1 publication Critical patent/KR102627117B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49942Significance control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/499Denomination or exception handling, e.g. rounding or overflow
    • G06F7/49905Exception handling
    • G06F7/4991Overflow or underflow
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/50Adding; Subtracting
    • G06F7/501Half or full adders, i.e. basic adder cells for one denomination
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/57Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/30007Arrangements for executing specific machine instructions to perform operations on data operands
    • G06F9/3001Arithmetic instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06GANALOGUE COMPUTERS
    • G06G7/00Devices in which the computing operation is performed by varying electric or magnetic quantities
    • G06G7/12Arrangements for performing computing operations, e.g. operational amplifiers
    • G06G7/16Arrangements for performing computing operations, e.g. operational amplifiers for multiplication or division
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06GANALOGUE COMPUTERS
    • G06G7/00Devices in which the computing operation is performed by varying electric or magnetic quantities
    • G06G7/48Analogue computers for specific processes, systems or devices, e.g. simulators
    • G06G7/60Analogue computers for specific processes, systems or devices, e.g. simulators for living beings, e.g. their nervous systems ; for problems in the medical field
    • 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
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2207/00Indexing scheme relating to methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F2207/38Indexing scheme relating to groups G06F7/38 - G06F7/575
    • G06F2207/48Indexing scheme relating to groups G06F7/48 - G06F7/575
    • G06F2207/4802Special implementations
    • G06F2207/4818Threshold devices
    • G06F2207/4824Neural networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mathematical Optimization (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Biomedical Technology (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Neurology (AREA)
  • Biophysics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Neurosurgery (AREA)
  • Physiology (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Evolutionary Computation (AREA)
  • Molecular Biology (AREA)
  • Power Engineering (AREA)
  • Thin Film Transistor (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Semiconductor Memories (AREA)
  • Control Of Indicators Other Than Cathode Ray Tubes (AREA)
  • Metal-Oxide And Bipolar Metal-Oxide Semiconductor Integrated Circuits (AREA)

Abstract

오버플로를 억제하는 가산 회로를 제공한다. 제 1 메모리, 제 2 메모리, 제 3 메모리, 및 제 4 메모리를 가진다. 부호를 가지는 제 1 데이터가 제 1 메모리에 공급되고, 제 1 메모리에 저장된 양의 부호를 가지는 제 1 데이터가 제 2 메모리에 공급되는 단계와, 제 2 메모리에 저장된 음의 부호를 가지는 제 1 데이터가 제 3 메모리에 공급되는 단계와, 제 2 메모리에 저장된 양의 부호를 가지는 제 1 데이터와, 제 3 메모리에 저장된 음의 부호를 가지는 제 1 데이터가 가산되어 제 2 데이터를 생성하는 단계와, 제 2 데이터가 제 4 메모리에 저장되는 단계를 가진다. 제 4 메모리에 저장된 제 2 데이터가 모두 양의 부호를 가지는 제 2 데이터, 또는 모두 음의 부호를 가지는 제 2 데이터인 경우, 제 4 메모리에 저장된 모든 제 2 데이터를 가산한다.

Description

가산 방법, 반도체 장치, 및 전자 기기{ADDITION METHOD, SEMICONDUCTOR DEVICE, AND ELECTRONIC DEVICE}
본 발명의 일 형태는 가산 방법, 반도체 장치, 및 전자 기기에 관한 것이다.
또한 본 발명의 일 형태는 상기 기술분야에 한정되지 않는다. 본 명세서 등에서 개시(開示)하는 발명의 일 형태의 기술분야는 물건, 프로그램, 방법, 또는 제조 방법에 관한 것이다. 특히 본 발명의 일 형태는 반도체 장치, 표시 장치, 발광 장치, 축전 장치, 기억 장치, 이들의 구동 방법, 또는 이들의 제조 방법에 관한 것이다.
또한, 본 명세서 등에서, 반도체 장치는 반도체 특성을 이용함으로써 기능할 수 있는 소자, 회로, 또는 장치 등을 가리킨다. 일례로서, 트랜지스터, 다이오드 등의 반도체 소자는 반도체 장치이다. 또한, 다른 일례로서, 반도체 소자를 가지는 회로는 반도체 장치이다. 또한, 다른 일례로서, 반도체 소자를 가지는 회로를 구비한 장치는 반도체 장치이다.
IoT(Internet of Things), AI(Artificial Intelligence) 등의 정보 기술의 발전에 따라, 취급되는 데이터양이 증대하는 경향을 보이고 있다. 전자 기기가 IoT, AI 등의 정보 기술을 이용하기 위해서는, 대량의 데이터를 연산 처리하는 능력이 요구되고 있다. 또한 전자 기기를 쾌적하게 이용하기 위해서는, 저소비전력을 실현하기 위하여 연산량이 억제된 반도체 장치가 요구되고 있다.
특허문헌 1에는, 정확도가 낮은 가산기를 병렬로 사용함으로써 특정의 정확도를 가지는 가산기로서 동작시키는 가산 방법과, 가산기의 구성에 대하여 개시되어 있다.
일본 공개특허공보 특개평9-222991호
IoT와 AI를 조합한 전자 기기는 저전력화에 있어서 과제가 있다. 또한 전자 기기에서 사용되는 반도체 장치는, 좁은 공간에 수납할 수 있도록 소형화가 요구되고 있다. 따라서, 반도체 장치에는 연산 처리 능력을 낮추지 않고 회로 규모를 작게 한다는 과제가 있다.
AI, 특히 예를 들어 딥 러닝(심층 학습)에서는, 기계 학습을 사용함으로써 다양한 정보(화상, 음성, 빅 데이터 등)로부터 특징을 추출할 수 있다. AI는 신경망을 가지고, 신경망은 복수의 뉴런을 가진다. 뉴런은 시냅스의 기능을 모방한 적화 연산 처리가 알려져 있다. 적화 연산의 기능을 가지는 회로는, 복수의 입력 신호를 가중 계수로 승산한 결과의 총합을 산출하는 것이 알려져 있다. 적화 연산 처리에는, 부호가 있는 부동 소수점의 데이터를 디지털 연산에 의하여 처리하기 때문에 논리 규모가 커진다는 문제가 있다. 소비전력은 논리 규모의 크기와 비례하여 커진다는 문제가 있다.
상기 문제를 감안하여, 본 발명의 일 형태는 부호가 있는 정수(整數)형 가산 방법을 제공하는 것을 과제 중 하나로 한다. 또는 본 발명의 일 형태는 부호가 있는 정수형 가산 방법을 가지는 반도체 장치를 제공하는 것을 과제 중 하나로 한다. 또는 본 발명의 일 형태는 뉴런의 연산을 저전력화하는 반도체 장치를 제공하는 것을 과제 중 하나로 한다. 또는 본 발명의 일 형태는 신규 프로그램을 제공하는 것을 과제 중 하나로 한다. 또는 본 발명의 일 형태는 신규 계산 방법을 제공하는 것을 과제 중 하나로 한다. 또는 본 발명의 일 형태는 신규 반도체 장치를 제공하는 것을 과제 중 하나로 한다. 또는 본 발명의 일 형태는 신규 반도체 장치의 구동 방법을 제공하는 것을 과제 중 하나로 한다.
또한, 이들 과제의 기재는 다른 과제의 존재를 방해하는 것은 아니다. 또한, 본 발명의 일 형태는, 이들 과제 모두를 해결할 필요는 없는 것으로 한다. 또한, 이들 이외의 과제는 명세서, 도면, 청구항 등의 기재로부터 저절로 명백해지는 것이며 명세서, 도면, 청구항 등의 기재로부터 이들 이외의 과제를 추출할 수 있다.
또한 본 발명의 일 형태의 과제는 상술한 과제에 한정되지 않는다. 상술한 과제는 다른 과제의 존재를 방해하는 것이 아니다. 또한 다른 과제는 이하에 기재되고 본 항목에서는 언급되지 않은 과제이다. 본 항목에서 언급되지 않은 과제는 통상의 기술자라면 명세서 또는 도면 등의 기재로부터 도출할 수 있는 것이고, 이들 기재로부터 적절히 추출할 수 있다. 또한 본 발명의 일 형태는 상술한 기재 및/또는 다른 과제 중 적어도 하나의 과제를 해결하는 것이다.
본 발명의 일 형태는, 제 1 메모리, 제 2 메모리, 제 3 메모리, 및 제 4 메모리를 가진다. 부호를 가지는 제 1 데이터가 제 1 메모리에 공급되는 단계와, 제 1 메모리에 저장된 양의 부호를 가지는 제 1 데이터가 제 2 메모리에 공급되는 단계와, 제 1 메모리에 저장된 음의 부호를 가지는 제 1 데이터가 제 3 메모리에 공급되는 단계와, 제 1 데이터가 0인 경우에 폐기되는 단계를 가진다. 제 2 메모리에 저장된 양의 부호를 가지는 제 1 데이터와, 제 3 메모리에 저장된 음의 부호를 가지는 제 1 데이터가 가산되어 제 2 데이터를 생성하는 단계를 가진다. 제 2 데이터가 제 4 메모리에 저장되는 단계와, 양의 부호를 가지는 제 2 데이터가 제 4 메모리에 저장되어 있지 않은 경우, 및 음의 부호를 가지는 제 2 데이터가 제 4 메모리에 저장되어 있지 않은 경우 중 어느 한 경우에 제 4 메모리에 저장된 모든 제 2 데이터를 가산하는 단계를 가지는 가산 방법이다.
상기 각 구성에서, 제 1 데이터 및 제 2 데이터는 부호가 있는 정수의 데이터인 가산 방법이 바람직하다.
상기 각 구성에서, 제 2 데이터를 제 1 메모리에 저장하는 가산 방법이 바람직하다.
제 1 메모리, 제 2 메모리, 제 3 메모리, 실렉터 회로, 제 1 가산 회로, 제 2 가산 회로, 및 카운터 회로를 가진다. 카운터 회로는 제 1 카운터와 제 2 카운터를 가진다. 제 1 메모리는 제 1 가산 회로와 실렉터 회로와 전기적으로 접속되고, 실렉터 회로는 제 2 메모리와 제 3 메모리와 전기적으로 접속되고, 제 2 가산 회로는 제 2 메모리와 제 3 메모리와 전기적으로 접속되고, 카운터 회로는 제 1 메모리와 제 1 가산 회로와 전기적으로 접속된다. 제 1 메모리는 부호를 가지는 제 1 데이터가 공급되는 기능을 가지고, 제 1 카운터 및 제 2 카운터는 초깃값이 공급되는 기능을 가지고, 제 2 메모리는 저장된 데이터가 없는 경우에 제 1 언더플로 플래그(underflow flag)를 출력하는 기능을 가지고, 제 3 메모리는 저장된 데이터가 없는 경우에 제 2 언더플로 플래그를 출력하는 기능을 가진다. 제 1 데이터는 제 1 메모리와 카운터 회로에 공급된다. 카운터 회로는 제 1 언더플로 플래그 또는 제 2 언더플로 플래그가 공급된 경우에 제 1 카운터 또는 제 2 카운터의 값을 판단하는 기능을 가지고, 제 1 카운터 및 제 2 카운터 중 어느 것이 초깃값인 경우, 제 1 가산 회로는 제 1 메모리에 저장된 제 1 데이터를 가산하는 기능을 가지는 반도체 장치이다.
상기 각 구성에서, 실렉터 회로는 제 1 메모리에 저장되어 있는 양의 부호를 가지는 제 1 데이터를 제 2 메모리로, 음의 부호를 가지는 제 1 데이터를 제 3 메모리로 할당하는 기능을 가지고, 제 2 가산 회로는 제 2 메모리에 저장된 양의 부호를 가지는 제 1 데이터와, 제 3 메모리에 저장된 음의 부호를 가지는 제 1 데이터를 가산하여 제 2 데이터를 생성하는 기능을 가지고, 제 2 데이터는 제 1 메모리와 카운터 회로에 공급되고, 카운터 회로는 제 1 언더플로 플래그와 제 2 언더플로 플래그가 공급된 경우에, 제 1 카운터 또는 제 2 카운터의 값을 판단하는 기능을 가지고, 제 1 카운터 및 제 2 카운터 중 어느 것이 초깃값인 경우, 제 1 가산 회로는 제 1 메모리에 저장된 제 2 데이터를 가산하는 기능을 가지는 반도체 장치가 바람직하다.
상기 각 구성에서, 제 2 메모리 및 제 3 메모리는 선입 선출(first-in-first-out)의 기능을 가지는 반도체 장치가 바람직하다.
상기 각 구성에서, 반도체 장치는 제 1 제로 삽입(zero insertion) 회로와 제 2 제로 삽입 회로를 가진다. 제 1 언더플로 플래그가 출력되고, 또한 제 2 언더플로 플래그가 출력되지 않은 경우에, 양의 부호를 가지는 제 1 데이터 대신에 제 1 제로 삽입 회로에 의하여 0의 값이 공급되는 기능을 가지고, 제 2 언더플로 플래그가 출력되고, 또한 제 1 언더플로 플래그가 출력되지 않은 경우에, 음의 부호를 가지는 제 1 데이터 대신에 제 2 제로 삽입 회로에 의하여 0의 값이 공급되는 기능을 가지는 반도체 장치가 바람직하다.
신경망을 가지는 반도체 장치로서, 신경망은 적화 연산 회로를 가지고, 적화 연산 회로는 복수의 승산 회로와, 가산으로 인한 오버플로(overflow)를 억제하는 제 1 회로를 가진다. 제 1 회로는 제 1 메모리, 제 2 메모리, 제 3 메모리, 및 제 1 가산 회로를 가지고, 승산 회로의 출력 데이터는 제 1 데이터로서 제 1 메모리에 공급되고, 제 2 메모리 및 제 3 메모리는 선입 선출의 기능을 가진다. 제 1 메모리가 저장하는 양의 부호를 가지는 제 1 데이터는 제 2 메모리에 공급되고, 제 1 메모리가 저장하는 음의 부호를 가지는 제 1 데이터는 제 3 메모리에 공급되고, 제 1 가산 회로는 제 2 메모리로부터 판독한 양의 부호를 가지는 제 1 데이터와, 제 3 메모리로부터 판독한 음의 부호를 가지는 제 1 데이터를 가산함으로써, 가산으로 인한 오버플로를 억제하는 반도체 장치이다.
상기 각 구성에서, 가산 방법을 가지는 반도체 장치와, 반도체 장치가 저장된 하우징을 가지는 전자 기기가 바람직하다.
신경망을 가지는 반도체 장치로서, 신경망은 승산 회로를 가지고, 승산 회로는 제 1 트랜지스터 내지 제 4 트랜지스터를 가진다. 승산 회로는, 가중 전위와 데이터 전위를 공급함으로써 승산 결과를 출력 전류로서 출력하는 기능을 가진다. 제 1 트랜지스터는 제 1 트랜지스터의 게이트에 제 1 전위가 공급됨으로써 제 1 전류를 흐르게 하는 기능을 가지고, 제 2 트랜지스터는 제 2 트랜지스터의 게이트에 제 2 전위가 공급됨으로써 제 2 전류를 흐르게 하는 기능을 가지고, 제 3 트랜지스터는 제 3 트랜지스터의 게이트에 제 3 전위가 공급됨으로써 제 3 전류를 흐르게 하는 기능을 가지고, 제 4 트랜지스터는 제 4 트랜지스터의 게이트에 제 4 전위가 공급됨으로써 제 4 전류를 흐르게 하는 기능을 가지고, 승산 회로는 제 1 전류에서 제 2 전류 및 제 3 전류를 감산하고, 또한 제 1 전류에 제 4 전류를 가산함으로써 출력 전류를 얻는 반도체 장치이다.
상기 각 구성에서, 제 1 전위는 기준 전위와 가중 전위와 데이터 전위를 가산함으로써 생성되고, 제 2 전위는 기준 전위와 데이터 전위를 가산함으로써 생성되고, 제 3 전위는 기준 전위와 가중 전위를 가산함으로써 생성되고, 제 4 전위는 기준 전위가 공급되는 반도체 장치가 바람직하다.
상기 각 구성에서, 승산 회로는 메모리 셀, 레퍼런스 셀, 제 1 프로그래밍 셀, 및 제 2 프로그래밍 셀을 가지고, 메모리 셀은 제 1 트랜지스터를 가지고, 레퍼런스 셀은 제 2 트랜지스터를 가지고, 제 1 프로그래밍 셀은 제 3 트랜지스터를 가지고, 제 2 프로그래밍 셀은 제 4 트랜지스터를 가지고, 메모리 셀에는 제 1 전류에 상당하는 제 1 전위가 유지되고, 레퍼런스 셀에는 제 2 전류에 상당하는 제 2 전위가 유지되고, 제 1 프로그래밍 셀에는 제 3 전류에 상당하는 제 3 전위가 유지되고, 제 2 프로그래밍 셀에는 제 4 전류에 상당하는 제 4 전위가 유지되는 반도체 장치가 바람직하다.
본 발명의 일 형태는 부호가 있는 정수형 가산 방법을 제공할 수 있다. 또는 본 발명의 일 형태는 부호가 있는 정수형 가산 방법을 가지는 반도체 장치를 제공할 수 있다. 또는 본 발명의 일 형태는 뉴런의 연산을 저전력화하는 반도체 장치를 제공할 수 있다. 또는 본 발명의 일 형태는 신규 프로그램을 제공할 수 있다. 또는 본 발명의 일 형태는 신규 계산 방법을 제공할 수 있다. 또는 본 발명의 일 형태는 신규 반도체 장치를 제공할 수 있다. 또는 본 발명의 일 형태는 신규 반도체 장치의 구동 방법을 제공할 수 있다.
또한 본 발명의 일 형태의 효과는 상술한 효과에 한정되지 않는다. 상술한 효과는 다른 효과의 존재를 방해하는 것이 아니다. 또한 다른 효과는 이하에 기재되고 본 항목에서는 언급되지 않은 효과이다. 본 항목에서 언급되지 않은 효과는 통상의 기술자라면 명세서 또는 도면 등의 기재로부터 도출할 수 있는 것이고, 이들 기재로부터 적절히 추출할 수 있다. 또한 본 발명의 일 형태는 상술한 효과 및/또는 다른 효과 중 적어도 하나의 효과를 가지는 것이다. 따라서, 본 발명의 일 형태는 경우에 따라서는 상술한 효과를 가지지 않는 경우도 있다.
도 1은 가산 방법을 설명하는 도면.
도 2는 반도체 장치를 설명하는 회로도.
도 3의 (A)는 가산 방법을 설명하는 도면. 도 3의 (B)는 반도체 장치를 설명하는 회로도.
도 4는 가산 방법을 설명하는 도면.
도 5는 반도체 장치를 설명하는 블록도.
도 6은 반도체 장치를 설명하는 블록도.
도 7은 반도체 장치를 설명하는 회로도.
도 8은 반도체 장치를 설명하는 회로도.
도 9는 반도체 장치를 설명하는 회로도.
도 10은 반도체 장치를 설명하는 회로도.
도 11은 반도체 장치를 설명하는 회로도.
도 12는 반도체 장치를 설명하는 회로도.
도 13은 반도체 장치를 설명하는 블록도.
도 14는 기억 장치의 구성예를 도시한 회로도.
도 15는 반도체 장치의 모식도.
도 16은 기억 장치의 모식도.
도 17은 전자 기기를 도시한 도면.
도 18은 반도체 장치의 구성예를 도시한 도면.
도 19는 트랜지스터의 구성예를 도시한 도면.
도 20은 트랜지스터의 구성예를 도시한 도면.
실시형태에 대하여 도면을 참조하면서 이하에서 설명한다. 다만, 실시형태는 많은 상이한 형태에서 실시할 수 있으며, 취지 및 그 범위에서 벗어남이 없이 그 형태 및 상세한 사항을 다양하게 변경할 수 있는 것은 통상의 기술자라면 용이하게 이해할 수 있다. 따라서, 본 발명은 이하의 실시형태의 기재 내용에 한정하여 해석되는 것은 아니다. 또한, 어떤 하나의 실시형태에서 설명하는 내용(일부 내용이어도 좋음)은, 그 실시형태에서 설명하는 다른 내용(일부 내용이어도 좋음) 및/또는 하나 또는 복수의 다른 실시형태에서 설명하는 내용(일부 내용이어도 좋음)에 대하여 적용, 조합, 또는 치환 등을 수행할 수 있다. 또한, 어떤 하나의 실시형태에서 설명하는 도면(일부이어도 좋음)은, 그 도면의 다른 부분, 그 실시형태에서 설명하는 다른 도면(일부이어도 좋음), 및/또는 하나 또는 복수의 다른 실시형태에서 설명하는 도면(일부이어도 좋음)과 조합함으로써, 더 많은 도면을 구성할 수 있다.
또한 도면에서 크기, 층 두께, 또는 영역은 명료화를 위하여 과장되어 있는 경우가 있다. 따라서, 반드시 그 스케일에 한정되는 것은 아니다. 또한 도면은 이상적인 예를 모식적으로 도시한 것이고, 도면에 도시된 형상 또는 값 등에 한정되지 않는다.
또한 본 명세서에서 사용하는 "제 1", "제 2", "제 3"이라는 서수사는 구성 요소의 혼동을 피하기 위하여 붙인 것이고, 수적으로 한정하는 것이 아님을 부기한다.
또한 본 명세서에서 "위에", "아래에" 등의 배치를 나타내는 어구는 구성들의 위치 관계를 도면을 참조하여 설명하기 위하여 편의상 사용된다. 또한 구성들의 위치 관계는 각 구성을 묘사하는 방향에 따라 적절히 변화되는 것이다. 따라서, 명세서에서 설명된 어구에 한정되지 않고, 상황에 따라 적절히 바꿔 말할 수 있다.
또한 본 명세서 등에서 트랜지스터란 게이트와 드레인과 소스를 포함하는 적어도 3개의 단자를 가지는 소자이다. 그리고, 드레인(드레인 단자, 드레인 영역, 또는 드레인 전극)과 소스(소스 단자, 소스 영역, 또는 소스 전극) 사이에 채널 영역을 가지고, 채널 형성 영역을 통하여 소스와 드레인 사이에 전류를 흐르게 할 수 있는 것이다. 또한 본 명세서 등에서 채널 영역이란 전류가 주로 흐르는 영역을 말한다.
또한 소스나 드레인의 기능은 다른 극성의 트랜지스터를 채용하는 경우나, 회로 동작에서 전류의 방향이 변화되는 경우 등에는 서로 바뀌는 경우가 있다. 그러므로 본 명세서 등에서는 소스나 드레인이라는 용어는 바꿔 쓸 수 있는 것으로 한다.
또한 본 명세서 등에서 "전기적으로 접속"에는 "어떠한 전기적 작용을 가지는 것"을 통하여 접속되어 있는 경우가 포함된다. 여기서 "어떠한 전기적 작용을 가지는 것"은 접속 대상 간에서의 전기 신호의 주고받음을 가능하게 하는 것이면 특별한 제한을 받지 않는다. 예를 들어 "어떠한 전기적 작용을 가지는 것"에는 전극이나 배선을 비롯하여 트랜지스터 등의 스위칭 소자, 저항 소자, 인덕터, 커패시터, 이들 외 각종 기능을 가지는 소자 등이 포함된다.
또한 본 명세서 등에서 "평행"이란 2개의 직선이 -10° 이상 10° 이하의 각도로 배치되어 있는 상태를 말한다. 따라서, -5° 이상 5° 이하의 경우도 포함된다. 또한 "수직"이란 2개의 직선이 80° 이상 100° 이하의 각도로 배치되어 있는 상태를 말한다. 따라서, 85° 이상 95° 이하의 경우도 포함된다.
또한 본 명세서 등에서 "막"이라는 용어와 "층"이라는 용어는 서로 바꿀 수 있다. 예를 들어 "도전층"이라는 용어를 "도전막"이라는 용어로 바꿀 수 있는 경우가 있다. 또한 예를 들어 "절연막"이라는 용어를 "절연층"이라는 용어로 바꿀 수 있는 경우가 있다.
또한 본 명세서 등에서 오프 전류란, 특별한 설명이 없는 한, 트랜지스터가 오프 상태(비도통 상태, 차단 상태라고도 함)일 때의 드레인 전류를 말한다. 오프 상태란, 특별한 설명이 없는 한, n채널형 트랜지스터에서는 게이트와 소스 사이의 전압(Vgs)이 문턱 전압(Vth)보다 낮은 상태, p채널형 트랜지스터에서는 게이트와 소스 사이의 전압(Vgs)이 문턱 전압(Vth)보다 높은 상태를 말한다. 예를 들어 n채널형 트랜지스터의 오프 전류란 게이트와 소스 사이의 전압(Vgs)이 문턱 전압(Vth)보다 낮을 때의 드레인 전류를 말하는 경우가 있다.
트랜지스터의 오프 전류는 Vgs에 의존하는 경우가 있다. 따라서, 트랜지스터의 오프 전류가 I 이하이다는 것은 트랜지스터의 오프 전류가 I 이하가 되는 Vgs의 값이 존재하는 것을 말하는 경우가 있다. 트랜지스터의 오프 전류란 소정의 Vgs에서의 오프 상태, 소정의 범위 내의 Vgs에서의 오프 상태, 또는 충분히 저감된 오프 전류가 얻어지는 Vgs에서의 오프 상태 등에서의 오프 전류를 가리키는 경우가 있다.
일례로서 문턱 전압(Vth)이 0.5V이고, Vgs가 0.5V일 때의 드레인 전류가 1Х10-9A이고, Vgs가 0.1V일 때의 드레인 전류가 1Х10-13A이고, Vgs가 -0.5V일 때의 드레인 전류가 1Х10-19A이고, Vgs가 -0.8V일 때의 드레인 전류가 1Х10-22A인 n채널형 트랜지스터를 상정한다. 상기 트랜지스터의 드레인 전류는 Vgs가 -0.5V일 때 또는 Vgs가 -0.5V 내지 -0.8V의 범위일 때 1Х10-19A 이하이기 때문에, 상기 트랜지스터의 오프 전류는 1Х10-19A 이하이다라고 하는 경우가 있다. 상기 트랜지스터의 드레인 전류가 1Х10-22A 이하가 되는 Vgs가 존재하기 때문에, 상기 트랜지스터의 오프 전류는 1Х10-22A 이하이다라고 하는 경우가 있다.
또한 본 명세서 등에서는 채널 폭(W)을 가지는 트랜지스터의 오프 전류를 채널 폭(W)당 흐르는 전류값으로 나타내는 경우가 있다. 또한 소정의 채널 폭(예를 들어 1μm)당 흐르는 전류값으로 나타내는 경우가 있다. 후자의 경우, 오프 전류의 단위는 전류/길이의 차원을 가지는 단위(예를 들어 A/μm)로 나타내어지는 경우가 있다.
트랜지스터의 오프 전류는 온도에 의존하는 경우가 있다. 본 명세서에서 오프 전류란, 특별히 기재되지 않는 한, 실온, 60℃, 85℃, 95℃, 또는 125℃일 때의 오프 전류를 나타내는 경우가 있다. 또는 상기 트랜지스터가 포함되는 반도체 장치 등의 신뢰성이 보증되는 온도 또는 상기 트랜지스터가 포함되는 반도체 장치 등이 사용되는 온도(예를 들어 5℃ 내지 35℃ 중 어느 하나의 온도)일 때의 오프 전류를 나타내는 경우가 있다. 트랜지스터의 오프 전류가 I 이하이다는 것은 실온, 60℃, 85℃, 95℃, 125℃, 상기 트랜지스터가 포함되는 반도체 장치 등의 신뢰성이 보증되는 온도, 또는 상기 트랜지스터가 포함되는 반도체 장치 등이 사용되는 온도(예를 들어 5℃ 내지 35℃ 중 어느 하나의 온도)에서의 트랜지스터의 오프 전류가 I 이하가 되는 Vgs의 값이 존재하는 것을 가리키는 경우가 있다.
트랜지스터의 오프 전류는 드레인과 소스 사이의 전압(Vds)에 의존하는 경우가 있다. 본 명세서에서 오프 전류란, 특별히 기재되지 않는 한, Vds가 0.1V, 0.8V, 1V, 1.2V, 1.8V, 2.5V, 3V, 3.3V, 10V, 12V, 16V, 또는 20V일 때의 오프 전류를 나타내는 경우가 있다. 또는 상기 트랜지스터가 포함되는 반도체 장치 등의 신뢰성이 보증되는 Vds 또는 상기 트랜지스터가 포함되는 반도체 장치 등에서 사용되는 Vds일 때의 오프 전류를 나타내는 경우가 있다. 트랜지스터의 오프 전류가 I 이하이다는 것은 Vds가 0.1V, 0.8V, 1V, 1.2V, 1.8V, 2.5V, 3V, 3.3V, 10V, 12V, 16V, 20V, 상기 트랜지스터가 포함되는 반도체 장치 등의 신뢰성이 보증되는 Vds, 또는 상기 트랜지스터가 포함되는 반도체 장치 등에서 사용되는 Vds일 때의 트랜지스터의 오프 전류가 I 이하가 되는 Vgs의 값이 존재하는 것을 가리키는 경우가 있다.
상기 오프 전류의 설명에서 드레인을 소스로 바꿔 읽어도 좋다. 즉 오프 전류란 트랜지스터가 오프 상태일 때 소스를 흐르는 전류를 말하는 경우도 있다.
또한 본 명세서 등에서는 오프 전류와 같은 의미로 누설 전류라고 기재하는 경우가 있다. 또한 본 명세서 등에서 오프 전류란 예를 들어 트랜지스터가 오프 상태일 때 소스와 드레인 사이를 흐르는 전류를 가리키는 경우가 있다.
또한, 전압이란 2개의 지점 사이에서의 전위차를 말하고, 전위란 어떤 하나의 지점에서의 정전기장 내에 있는 단위 전하가 가지는 정전 에너지(전기적인 위치 에너지)를 말한다. 다만, 일반적으로 어떤 하나의 지점에서의 전위와 기준이 되는 전위(예를 들어, 접지 전위) 사이의 전위차를 단순히 전위 또는 전압이라고 부르고, 전위와 전압이 동의어로서 사용되는 경우가 많다. 따라서, 본 명세서에서는 특별히 지정하는 경우를 제외하고, 전위를 전압으로 바꿔 읽어도 좋고, 전압을 전위로 바꿔 읽어도 좋은 것으로 한다.
(실시형태 1)
본 실시형태에서는, 오버플로를 억제하는 가산 방법과, 상기 가산 방법의 기능을 가지는 반도체 장치에 대하여, 도 1 내지 도 4를 사용하여 설명한다.
AI, 예를 들어 딥 러닝(심층 학습)에서는, 기계 학습을 사용함으로써 다양한 정보(화상, 음성, 빅 데이터 등)로부터 특징을 학습할 수 있다. 다만, 학습하기 위해서는, 대량의 데이터의 승산, 가산, 및 감산 등의 연산 처리가 필요하다. 따라서, AI에서는 신경망을 가지는 반도체 장치를 사용하여 연산하는 것이, 학습 속도 또는 소비전력의 면에서 바람직하다. 예를 들어, 신경망은 인간의 뇌를 모방한 뉴런을 가지는 것이 알려져 있다. 뉴런의 동작은, 적화 연산 기능으로 대체할 수 있다. 즉, 뉴런의 기능을 실현하기 위해서는 적화 연산 회로를 사용하는 것이 바람직하다. 다만, 연산의 일부는 소프트웨어(프로그램)에 의하여 계산하여도 좋다.
적화 연산 회로는 복수의 승산 회로와, 승산 결과인 양의 정수 또는 음의 정수를 가산하는 가산 회로를 가진다. 적화 연산 회로의 일례로서는, 부호가 있는 부동 소수점에 의한 연산을 수행하는 회로, 또는 부호가 있는 정수에 의한 연산을 수행하는 회로가 바람직하다. 다만, 부호가 있는 부동 소수점에 의한 연산을 사용하면, 더 정확한 정보의 특징을 추출할 수 있지만, 적화 연산 회로의 규모가 커지고, 소비전력도 커진다. 부호가 있는 정수에 의한 연산에서는, 적화 연산 회로의 구성을 더 적게 할 수 있다. 적화 연산 회로를 작게 함으로써, 적화 연산 회로를 가지는 반도체 장치도 작아져, 전력 소비를 억제할 수 있다.
부호가 있는 정수의 연산에서는, 양의 정수 또는 음의 정수를 가산할 때, 가산하는 순서에 따라서는, 가산 회로에서 넘침(오버플로)이 발생하는 경우가 있다. 다만, 가산하는 순서에 따라서는, 오버플로가 발생하지 않고 가산 회로의 자릿수의 범위에서 해답을 얻을 수 있다. 즉, 대량의 데이터를 취급하는 가산 회로에서는, 오버플로의 억제가 정확한 연산 결과를 얻는 데 중요하다. 본 실시형태에서는, 오버플로를 억제하는 가산 방법과, 상기 가산 방법을 사용한 반도체 장치와, 이들의 프로그램(소프트웨어)에 대하여 설명한다.
우선, 오버플로를 억제하는 가산 방법에 대하여, 도 1의 (A)를 사용하여 설명한다. 도 1의 (A)에서는, 일례로서 메모리(M1), 메모리(M2), 메모리(M3), 및 메모리(M4)를 가진다. 여기서는, 설명을 위하여 메모리(M4)를 사용하지만, 메모리(M4) 대신에 메모리(M1)를 재사용하여도 좋다. 또한 메모리(M1) 및 메모리(M4) 대신에 레지스터를 사용하여도 좋다. 또한 메모리(M1), 메모리(M2), 메모리(M3), 또는 메모리(M4)는, 각각 다른 메모리 칩에 제공되어도 좋고, 적어도 2개가 동일한 메모리 칩에 제공되어도 좋다. 또는 메모리(M1), 메모리(M2), 메모리(M3), 및 메모리(M4)가 동일한 메모리 칩에 배치되고, 각각 상이한 기억 영역으로 할당되어 있어도 좋다.
도 1의 (A)에 도시된 바와 같이, ST1부터 ST5까지의 단계를 가진다. 우선, 도 1의 (A)의 단계(ST1)에서, 메모리(M1)에는 센서, 출력 회로, 또는 CPU 등으로부터, 입력 데이터(IN1) 내지 입력 데이터(IN9)로서 데이터군 1이 공급되는 예를 나타낸다. 여기서, 데이터군 1에 대하여 설명한다. 데이터군 1은 복수의 범위로 분류할 수 있는 것이 바람직하다. 예를 들어, 범위 A는 0(제로)의 값이고, 범위 B는 양의 정수의 값이고, 범위 C는 음의 정수의 값이다.
메모리(M1)에 공급되는 데이터군 1 중 하나의 데이터의 값은, 예를 들어 "A"가 0을 나타내고, "B1"이 양의 값을 나타내고, "C1"이 음의 값을 나타낸다. 즉, 양의 정수는 범위 B의 범위 내의 값을 가지는 수치이고, "B1", "B2", "B3" 등과 같이, 두문자에 "B"를 붙여 나타낸다. "B" 뒤에 붙이는 수치는 값을 나타내는 것이 아니라, 데이터를 구별하기 위한 부호를 나타내는 것이다. 마찬가지로, 음의 정수는 범위 C의 범위 내의 값을 가지는 수치이고, "C1", "C2", "C3", "C4" 등과 같이, 두문자에 "C"를 붙여 나타낸다. "C" 뒤에 붙이는 수치는 데이터를 구별하기 위한 부호를 나타내는 것이다.
다음으로 단계(ST2)에서, 메모리(M2)에는 메모리(M1)에 저장된 양의 부호를 가지는 범위 B의 데이터가 저장된다. 예를 들어, 범위 B의 데이터인 "B1", "B2", 및 "B3"이 메모리(M2)에 저장된다. 메모리(M3)에는 메모리(M1)에 저장된 음의 부호를 가지는 범위 C의 데이터가 저장된다. 예를 들어, 범위 C의 데이터인 "C1", "C2", "C3", 및 "C4"가 메모리(M3)에 저장된다. 다만, 메모리(M1)에 저장된 데이터군 1 중 데이터가 0인 경우에는, 그 데이터를 파기하여도 좋다. 또는 메모리(M2) 또는 메모리(M3) 중 어느 것에 그 데이터를 공급하여도 좋다. 또한 메모리(M2) 및 메모리(M3)에 데이터군 1이 저장된 후, 메모리(M1)는 범위 A의 데이터로 초기화하는 것이 바람직하다. 따라서, 메모리(M1)는 리셋 기능을 가지는 것이 바람직하다. 예를 들어, 메모리(M1)가 레지스터 구조인 경우에는, 리셋 기능을 실장하는 것이 용이하다. 다만, 메모리(M1)에 새로운 데이터가 저장될 때, 값을 덮어쓸 수 있는 경우에는, 메모리(M1)는 리셋 기능을 반드시 가질 필요는 없다.
다음으로 단계(ST3)에서, 양의 부호를 가지는 데이터가 저장된 메모리(M2) 또는 음의 부호를 가지는 데이터가 저장된 메모리(M3)의 각각의 메모리로부터 데이터를 판독하여 가산한다.
예를 들어, 메모리(M2)로부터 "B1"의 데이터를, 메모리(M3)로부터 "C1"의 데이터를 판독하여 가산한다. 따라서, 양의 부호를 가지는 "B1"과 음의 부호를 가지는 "C1"을 가산한다. 가산 결과는 "B1" 또는 "C1"보다 더 0에 가까운 수치가 된다. 즉, 가산 결과의 절댓값은 "B1"보다 작아진다. 또는 가산 결과의 절댓값은 "C1"의 절댓값보다 작아진다. 예를 들어, "B1"의 데이터의 절댓값이 "C1"의 데이터의 절댓값보다 큰 경우에는, 가산 결과는 양의 부호를 가지는 "B11"의 데이터가 된다.
여기서, "B11"에 대하여 설명한다. "B11"은 메모리(M2)에 저장되는 양의 정수 "B1"과, 메모리(M3)에 저장되는 음의 정수 "C1"을 가산한 결과가, 범위 B의 범위 내의 값을 가지는 수치인 것을 나타내고, "B11", "B12", "B13" 등과 같이, "B" 뒤에 붙이는 두 자릿수의 수치는 데이터를 구별하기 위한 부호를 나타내는 것이다.
또한 양의 부호를 가지는 "B2"와 음의 부호를 가지는 "C2"를 가산하면, 가산 결과는 "B2" 또는 "C2"보다 더 0에 가까운 수치가 된다. 즉, 가산 결과의 절댓값은 "B2"보다 작아진다. 또는 가산 결과의 절댓값은 "C2"의 절댓값보다 작아진다. 예를 들어, 각각의 데이터의 절댓값의 크기가 같은 경우에는, 가산 결과가 0이 되어 "A"의 데이터가 된다. 또한 양의 부호를 가지는 "B3"과 음의 부호를 가지는 "C3"을 가산하면, 가산 결과는 "B3" 또는 "C3"보다 더 0에 가까운 수치가 된다. 즉, 가산 결과의 절댓값은 "B3"보다 작아진다. 또는 가산 결과의 절댓값은 "C3"의 절댓값보다 작아진다. 예를 들어, "C3"의 데이터의 절댓값이 "B3"의 데이터의 절댓값보다 큰 경우에는, 가산 결과는 음의 부호를 가지는 "C11"의 데이터가 된다. 또한 메모리(M3)에는 "C4"의 데이터가 있지만, 메모리(M2)에는 가산할 만한 데이터가 없다. 이와 같이, 데이터가 없는 경우에는, 대용 데이터로서 "A"의 데이터를 대입하고, "A"와 "C4"를 가산한다. 따라서, 가산 결과는 "C4"의 데이터가 된다. 또는 가산할 만한 데이터가 없는 경우에는, "C4"의 데이터를 그대로 가산 결과로 한다.
여기서, "C11"에 대하여 설명한다. "C11"은 메모리(M2)에 저장되는 양의 정수 "B3"과, 메모리(M3)에 저장되는 음의 정수 "C3"을 가산한 결과가, 범위 C의 범위 내의 값을 가지는 수치인 것을 나타내고, "C11", "C12", "C13" 등과 같이, "C" 뒤에 붙이는 두 자릿수의 수치는 데이터를 구별하기 위한 부호를 나타내는 것이다.
이와 같이, 가산 결과는 데이터군 2로서 메모리(M4)에 저장된다. 이때, 데이터군 2를 메모리(M1)에 저장하여도 좋다. 메모리(M1)에 저장함으로써, 회로의 규모를 더 작게 할 수 있어, 소비전력도 작게 할 수 있다. 또한 메모리(M1)에 저장되는 경우에는, 단계(ST1)의 경우보다 데이터 수가 적다. 그러므로, 상술한 바와 같이 메모리(M1)에 데이터를 저장하기 전에, 메모리(M1)의 데이터를 초기화해 두는 것이 바람직하다.
데이터군 2에는, 양의 부호를 가지는 데이터와 음의 부호를 가지는 데이터와 0의 데이터가 포함된다. 메모리(M4)에 데이터를 저장할 때, 양의 부호를 가지는 데이터의 수와, 음의 부호를 가지는 데이터의 수를 각각 카운트해 두는 것이 바람직하다. 이때, 카운터(CNP)는 양의 부호를 가지는 데이터의 수를 카운트하고, 카운터(CNM)는 음의 부호를 가지는 데이터의 수를 카운트한다. 예를 들어, ST3에서는 카운트값이 카운터(CNP)=1, 카운터(CNM)=2가 된다. 또한 카운터(CNP), 카운터(CNM)는 임의의 타이밍 및 초깃값으로 초기화할 수 있는 것이 바람직하다.
메모리(M2) 또는 메모리(M3)로부터 메모리(M4)에 데이터를 저장하였을 때, 카운터(CNP) 또는 카운터(CNM)의 카운트값을 판정한다. 카운터(CNP) 및 카운터(CNM) 중 어느 것이 초깃값인 채로 갱신되어 있지 않으면, 메모리(M4)에 저장된 데이터군 2를 모두 가산할 수 있다. 그리고, 이 경우에는 모두 가산한 후에 계산 처리가 종료된다.
카운터(CNP) 및 카운터(CNM)가 갱신되어 있는 경우에는, 다음의 단계(ST4)에서, 메모리(M4)에 저장된 데이터군 2에 대하여, 양의 부호를 가지는 데이터를 메모리(M2)에, 음의 부호를 가지는 데이터를 M3에 저장할 수 있다. 예를 들어, 메모리(M2)에는 범위 B의 데이터인 양의 부호를 가지는 데이터 "B11"이 저장된다. 또한 메모리(M3)에는 범위 C의 데이터인 음의 부호를 가지는 데이터 "C11" 및 "C4"가 저장되어 있다. 또한 도면에서는 메모리(M2)에 저장되어 있지만, 다른 메모리, 예를 들어 메모리(M5)에 저장되어도 좋다. 마찬가지로, 도면에서는 메모리(M3)에 저장되어 있지만, 다른 메모리, 예를 들어 메모리(M6)에 저장되어도 좋다. 또한 메모리(M2)에 저장되는 경우에는, 단계(ST2)의 경우보다 데이터 수가 적다. 그러므로, 메모리(M2)에 데이터를 저장하기 전에, 메모리(M2)의 데이터를 초기화해 두는 것이 바람직하다. 또한 메모리(M3)의 데이터를 초기화해 두는 것이 바람직하다.
다음으로 단계(ST5)에서, 메모리(M2)로부터 "B11"의 데이터를, 메모리(M3)로부터 "C11"의 데이터를 판독하여 가산한다. 즉, 양의 부호를 가지는 "B11"과 음의 부호를 가지는 "C11"을 가산한다. 가산 결과는 "B11" 또는 "C11"보다 더 0에 가까운 수치가 된다. 즉, 가산 결과의 절댓값은 "B11"보다 작아진다. 또는 가산 결과의 절댓값은 "C11"의 절댓값보다 작아진다. 예를 들어, "C11"의 데이터의 절댓값이 "B11"의 데이터의 절댓값보다 큰 경우에는, 가산 결과는 음의 부호를 가지는 "C111"의 데이터가 된다. 이어서 메모리(M3)에는 "C4"의 데이터가 있지만, 메모리(M2)에는 가산할 만한 데이터가 없는 경우에는, 대용 데이터로서 "A"의 데이터를 대입하고, "A"와 "C4"를 가산한다. 또는 "C4"를 그대로 가산 결과로 한다. 따라서, 가산 결과는 "C4"의 데이터가 된다.
여기서, "C111"에 대하여 설명한다. "C111"은 메모리(M2)에 저장되는 양의 정수 "B11"과, 메모리(M3)에 저장되는 음의 정수 "C11"이 가산된 결과가, 범위 C의 범위 내의 값을 가지는 수치인 것을 나타내고, "C111", "C112", "C113" 등과 같이, "C" 뒤에 붙이는 세 자릿수의 수치는 데이터를 구별하기 위한 부호를 나타내는 것이다. 도 1의 (A)에서는 예시하지 않았지만, 메모리(M2)에 저장되는 양의 부호를 가지는 데이터와, 메모리(M3)에 저장되는 음의 부호를 가지는 데이터가 가산된 결과가 범위 B의 범위 내의 값을 가지는 수치인 경우, "B111", "B112", "B113" 등과 같이 표기하고, "B" 뒤에 붙이는 세 자릿수의 수치는 데이터를 구별하기 위한 부호를 나타내는 것이다.
가산 결과는 데이터군 3으로서 메모리(M4)에 저장된다. 이때, 데이터군 3을 메모리(M1)에 저장하여도 좋다. 또한 메모리(M1)에 저장하는 경우에는, 메모리(M1)의 데이터를 초기화해 두는 것이 바람직하다. 메모리(M1)에 저장함으로써, 회로의 규모를 더 작게 할 수 있어, 소비전력도 작게 할 수 있다. 또한 메모리(M4)에 저장되는 경우에는, 단계(ST3)의 경우보다 데이터 수가 적다. 그러므로, 상술한 바와 같이 메모리(M4)에 데이터를 저장하기 전에, 메모리(M4)의 데이터를 초기화해 두는 것이 바람직하다.
예를 들어, ST5에서는 카운트값이 카운터(CNP)=0, 카운터(CNM)=2가 된다. 따라서, 카운터(CNP)가 초깃값인 채로 갱신되어 있지 않으므로, 메모리(M4)에 저장된 데이터군 3을 모두 가산하고 연산 처리가 종료된다.
상술한 바와 같은 가산 방법을 사용함으로써, 복수의 부호가 있는 데이터를 가산할 때 발생하는 오버플로를 억제할 수 있다. 오버플로를 억제함으로써, 가산 처리로 인한 데이터의 열화를 억제할 수 있다. 또한 도 1의 (A)에서, 단계(ST2)나 단계(ST4)와 같이, 메모리(M2) 및 메모리(M3)에 데이터를 일단 저장하였지만, 본 발명의 일 형태는 이에 한정되지 않는다. 예를 들어, 메모리(M1) 또는 메모리(M4)로부터, 입력 범위 B의 데이터와 입력 범위 C의 데이터 중에서 데이터를 각각 선택하여 가산을 수행하고, 메모리(M4)에 저장하여도 좋다.
도 1의 (B)에는, 도 1의 (A)에서 설명한 가산 방법(단계(ST1) 내지 단계(ST5))에, 실제로 숫자가 주어진 예를 나타내었다. 우선, 단계(ST11)에서, 메모리(M1)에 IN1 내지 IN9로부터 데이터군 1이 공급된 예를 나타낸다. 메모리(M1)에는 일례로서 "-1", "-3", "2", "3", "0", "0", "-3", "-1", "1"이 공급된다. 도 1의 (A)에서는 설명하지 않았지만, 카운터(CNP), 카운터(CNM)를 사용하여 카운트값을 관리하여도 좋다. 예를 들어, 도 1의 (B)의 단계(ST11)에서는, 카운터(CNP)=3, 카운터(CNM)=4를 나타낸다.
일례로서, 범위 B에는 양의 정수 1 내지 3의 범위가 주어지고, 범위 C에는 음의 정수 -1 내지 -3의 범위가 주어진다. 즉, 범위 B 또는 범위 C를 초과한 경우(-3보다 작고 3보다 큼)를 넘침(오버플로)으로 한다. 예를 들어, 메모리(M1)에 저장되어 있는 데이터의 순서로 "-1", "-3"을 가산한 경우에는 가산 결과가 "-4"가 되어 오버플로가 발생한다. 그러나, 도 1의 (A) 및 (B)에 도시된 바와 같이, 양의 부호를 가지는 정수와, 음의 부호를 가지는 정수를 가산하는 방법에서는 가산 결과가 0에 가까워지기 때문에, 오버플로의 발생을 억제할 수 있다.
다음으로 단계(ST12)에서, 메모리(M2)에는 메모리(M1)에 저장된 양의 부호를 가지는 데이터가 저장된다. 메모리(M3)에는 메모리(M1)에 저장된 음의 부호를 가지는 데이터가 저장된다. 즉, 메모리(M2)에는 "2", "3", "1"이 저장된다. 또한 메모리(M3)에는 "-1", "-3", "-3", "-1"이 저장된다.
다음으로 단계(ST13)에서, 양의 부호를 가지는 데이터가 저장된 메모리(M2) 또는 음의 부호를 가지는 데이터가 저장된 메모리(M3)의 각각의 메모리로부터 데이터를 판독하여 가산한다. 즉, 메모리(M2)에 저장된 "2"와 메모리(M3)에 저장된 "-1"이 가산된다. 가산 결과 "1"이 메모리(M4)에 저장된다. 이어서, 메모리(M2)에 저장된 "3"과 메모리(M3)에 저장된 "-3"이 가산된다. 가산 결과 "0"이 메모리(M4)에 저장된다. 이어서, 메모리(M2)에 저장된 "1"과 메모리(M3)에 저장된 "-3"이 가산된다. 가산 결과 "-2"가 메모리(M4)에 저장된다. 이어서, 메모리(M2)에는 저장된 데이터가 없기 때문에, 대신에 0이 주어져 메모리(M3)에 저장된 "-1"과 가산된다. 또는 메모리(M3)에 저장된 "-1"이 그대로 출력된다. 가산 결과 "-1"이 메모리(M4)에 저장된다. 또한 가산 결과가 "0"인 경우에는, 메모리(M4)에 저장하지 않아도 된다.
이때, 양의 부호를 가지는 정수의 카운트값은 카운터(CNP)=1, 음의 부호를 가지는 정수의 카운트값은 카운터(CNM)=2를 나타낸다. 따라서, 다시 가산하기 위하여, 메모리(M4)로부터, 메모리(M2) 및 메모리(M3)에 데이터를 할당하여 저장한다.
다음으로, 단계(ST14)에서 메모리(M2)에는 "1"이 저장되고, 메모리(M3)에는 "-2", "-1"이 저장된다.
다음으로 단계(ST15)에서, 메모리(M2)에 저장된 "1"과 메모리(M3)에 저장된 "-2"가 가산된다. 가산 결과 "-1"이 메모리(M4)에 저장된다. 이어서, 메모리(M2)에는 저장된 데이터가 없기 때문에, 대신에 0이 주어져 메모리(M3)에 저장된 "-1"과 가산된다. 또는 메모리(M3)에 저장된 "-1"이 그대로 출력된다. 가산 결과 "-1"이 메모리(M4)에 저장된다.
ST15에서는 카운트값이 카운터(CNP)=0, 카운터(CNM)=2가 된다. 따라서, 카운터(CNP)가 초깃값인 채로 갱신되어 있지 않으므로, 메모리(M4)에 저장된 데이터를 모두 가산한다. 그 결과, 가산 결과 "-2"를 산출할 수 있다. 따라서, 양의 부호를 가지는 정수와 음의 부호를 가지는 정수를 순서대로 조합하여 가산함으로써, 오버플로로 인한 데이터의 열화를 억제하여, 정확한 해답을 산출할 수 있는 가산 방법이다.
도 2의 (A)는, 도 1의 (A)에 도시한 가산 방법의 기능을 가지는 가산 회로(10)에 대하여 설명한 회로도이다. 가산 회로(10)는, 실렉터(20), 메모리(21), 카운터(22), 제어 회로(23), 실렉터(24), 메모리(24a), 메모리(24b), 제어 회로(25), 제로 삽입 회로(26a), 제로 삽입 회로(26b), 가산 회로(27), 가산 회로(28), 및 게이트 회로(29)를 가진다. 카운터(22)는 카운터(CNP)(22a) 및 카운터(CNM)(22b)를 가진다. 또한 가산 회로(10)는, 신호선(DI), 신호선(DR), 신호선(DA), 신호선(DA1), 신호선(DA2), 신호선(DAP), 신호선(DAM), 신호선(FO1), 신호선(FO2), 신호선(FOUT1), 신호선(FOUT2), 신호선(DO), 신호선(SEL1), 신호선(SEL2), 신호선(WEP), 신호선(WEM), 신호선(UFP), 신호선(UFM), 신호선(REP), 신호선(REM), 신호선(WER), 신호선(FC), 신호선(DUF), 신호선(MB1), 신호선(MB2), 신호선(WE), 신호선(IRQ), 및 신호선(ACK)을 가진다.
실렉터(20)는 신호선(DA)을 통하여 메모리(21)와 전기적으로 접속된다. 또한, 실렉터(20)는 신호선(DI)을 통하여 카운터(22)와 전기적으로 접속되고, 또한 신호선(SEL1)을 통하여 게이트 회로(29)와 전기적으로 접속된다.
메모리(21)는 신호선(DA1)을 통하여 실렉터(24)와 전기적으로 접속된다. 실렉터(24)는 신호선(DAP)을 통하여 메모리(24a)와 전기적으로 접속되고, 또한 신호선(DAM)을 통하여 메모리(24b)와 전기적으로 접속된다.
제어 회로(23)는 신호선(DA1)을 통하여 메모리(21)와 전기적으로 접속된다. 또한 제어 회로(23)는 신호선(SEL2)을 통하여 실렉터(24)와 전기적으로 접속된다. 또한 제어 회로(23)는 신호선(WEP)을 통하여 메모리(24a)와 전기적으로 접속되고, 또한 신호선(WEM)을 통하여 메모리(24b)와 전기적으로 접속된다.
메모리(24a)는 신호선(FO1)을 통하여 제로 삽입 회로(26a)와 전기적으로 접속된다. 메모리(24b)는 신호선(FO2)을 통하여 제로 삽입 회로(26b)와 전기적으로 접속된다.
제어 회로(25)는 신호선(UFP) 및 신호선(REP)을 통하여 메모리(24a)와 전기적으로 접속되고, 또한 신호선(UFM) 및 신호선(REM)을 통하여 메모리(24b)와 전기적으로 접속된다. 제어 회로(25)는 신호선(MB1)을 통하여 제로 삽입 회로(26a)와 전기적으로 접속되고, 또한 신호선(MB2)을 통하여 제로 삽입 회로(26b)와 전기적으로 접속되고, 제어 회로(25)는 신호선(DUF)을 통하여 카운터(22)와 전기적으로 접속되고, 또한 신호선(WER)을 통하여 가산 회로(27) 및 게이트 회로(29)와 전기적으로 접속된다.
가산 회로(27)는 신호선(FOUT1)을 통하여 제로 삽입 회로(26a)와 전기적으로 접속되고, 또한 신호선(FOUT2)을 통하여 제로 삽입 회로(26b)와 전기적으로 접속된다. 가산 회로(27)는 신호선(DR)을 통하여 실렉터(20) 및 카운터(22)와 전기적으로 접속된다.
신호선(IRQ)은 카운터(22) 및 제어 회로(23)와 전기적으로 접속된다. 또한, 가산 회로(10)는 신호선(ACK) 및 신호선(DO)을 출력한다.
다음으로, 각각의 기능에 대하여 설명한다. 실렉터(20)는 신호선(SEL1)에 공급되는 신호에 의하여, 입력 데이터(DI) 및 가산 회로(27)의 출력(DR) 중 어느 하나를 선택하여 신호선(DA)에 출력할 수 있다. 신호선(SEL1)에 공급되는 신호는, 메모리(21)에 기록하기 위한 신호선(WE), 또는 가산 회로(27)의 출력(DR)을 기록하기 위한 신호선(WER)에 의하여 생성된다. 또한, 메모리(21)는 도 1의 메모리(M1)에 상당한다.
메모리(21)는, DRAM(Dynamic Random Access Memory) 또는 SRAM(Static Random Access Memory) 등의 저장 회로를 사용하여도 좋고, 또는 레지스터로 구성되어도 좋다. 메모리(21)는 리셋 기능 또는 판독 리셋 기능을 가지는 것이 바람직하다. 리셋 기능이란, 메모리가 저장하는 모든 데이터를 임의의 타이밍에서 임의의 초깃값으로 할 수 있다. 또한 판독 리셋이란, 액세스한 메모리 번지의 데이터를 판독하는 경우, 판독한 후에 초기화하는 기능이다.
카운터(22)는, 신호선(DI)에 공급되는 데이터 또는 신호선(DR)에 공급되는 데이터의 각각에 대하여, 양의 부호를 가지는 정수를 카운트하는 카운터(CNP)(22a)와, 음의 부호를 가지는 정수를 카운트하는 카운터(CNM)(22b)를 가진다. 카운터(22)는 리셋 기능과 이네이블 기능을 가지는 것이 바람직하다. 또한 신호선(DUF)에 공급되는 신호에 의하여 카운터(22)가 리셋되는 것이 바람직하다. 또한 신호선(IRQ)에 공급되는 신호가 카운터(22)를 이네이블 상태로 하고, 카운터(22)가 이네이블 상태가 됨으로써 카운트업이 시작된다.
제어 회로(23)는 메모리(21)에 저장된 데이터를 실렉터(24)를 통하여 메모리(24a) 및 메모리(24b)로 이동시킬 수 있다. 제어 회로(23)는 신호선(SEL2)에 공급되는 신호에 의하여, 메모리(21)에 저장된 데이터를 메모리(24a) 또는 메모리(24b)로 할당할 수 있다. 예를 들어 제어 회로(23)는, 메모리(21)로부터 이동하는 데이터가 양의 부호를 가지는 경우, 신호선(DAP)을 통하여 메모리(24a)에 저장할 수 있다. 또한 제어 회로(23)는, 메모리(21)로부터 이동하는 데이터가 음의 부호를 가지는 경우, 신호선(DAM)을 통하여 메모리(24b)에 저장할 수 있다. 또한 제어 회로(23)는 신호선(DA1)의 데이터가 0인 경우에 0의 데이터를 폐기하는 기능을 가지는 것이 바람직하다.
메모리(21), 메모리(24a), 및 메모리(24b)는 선입 선출 기능을 가지는 것이 바람직하다. 메모리(21), 메모리(24a), 및 메모리(24b)는 데이터가 없을 때, 언더플로 플래그를 출력할 수 있다. 선입 선출 기능을 가짐으로써, 판독 리셋 기능이 부가된다. 도 2에서는, 메모리(24a) 및 메모리(24b)가 선입 선출 기능을 가지는 것으로 설명을 진행한다. 또한 메모리(21), 메모리(24a), 및 메모리(24b)의 메모리 크기는 적절히 결정하면 되지만, 메모리(24a) 및 메모리(24b)보다 메모리(21)가 큰 것이 바람직하다. 또한, 메모리(24a)는 도 1의 메모리(M2)에 상당하고, 메모리(24b)는 도 1의 메모리(M3)에 상당한다.
제어 회로(25)는, 메모리(24a)가 신호선(UFP)에 출력하는 언더플로 플래그 및 메모리(24b)가 신호선(UFM)에 출력하는 언더플로 플래그의 상태를 감시할 수 있다. 또한 메모리(24a) 및 메모리(24b)로부터 데이터를 판독하고 가산 회로(27)에 공급하고, 가산시킬 수 있다. 다만, 메모리(24a)가 신호선(UFP)에 언더플로 플래그를 출력하는 경우, 제로 삽입 회로(26a)가 대용 데이터로서 0을 출력한다. 마찬가지로, 메모리(24b)가 신호선(UFM)에 언더플로 플래그를 출력하는 경우, 제로 삽입 회로(26b)가 대용 데이터로서 0을 공급한다.
가산 회로의 결과는, 신호선(DR)을 통하여 메모리(21)에 저장된다. 이때, 카운터(22)는, 가산 결과가 양의 부호를 가지면 카운터(CNP)(22a)를 카운트업하고, 가산 결과가 음의 부호를 가지면 카운터(CNM)(22b)를 카운트업한다. 메모리(24a) 및 메모리(24b)가 둘 다 언더플로 플래그를 출력하면, 제어 회로(25)는 신호선(DUF)에 신호를 출력한다. 카운터(22)는, 신호선(DUF)에 공급된 신호에 따라, 카운터(CNP)(22a) 및 카운터(CNM)(22b)를 정지하며 판정한다. 판정 결과는 신호선(FC)을 통하여 제어 회로(23) 및 가산 회로(28)에 통지된다. 통지되는 판정 결과란, 제 1 결과로서 카운터(CNP)(22a) 및 카운터(CNM)(22b) 중 어느 것이 언더플로하였는지, 제 2 결과로서 언더플로하지 않은 카운터의 카운트값인 것이 바람직하다.
카운터(22)는, 카운터(CNP)(22a) 및 카운터(CNM)(22b) 중 어느 것이 초깃값으로 유지되면, 메모리(21)에 저장된 데이터가 같은 부호(0을 포함함)인 것으로 판단할 수 있다. 카운터(CNP)(22a) 및 카운터(CNM)(22b) 중 어느 것이 초깃값일 때, 가산 회로(28)는 신호선(DA2)을 통하여 데이터를 판독하고 가산한다. 연산 종료 후, 가산 회로(28)는, 연산이 종료된 것을 신호선(ACK)에 공급하는 신호에 의하여 CPU 등에 통지할 수 있다. 이때, 신호선(DO)에는 가산 결과가 출력되어 있지만, 정보를 유지하기 위하여 래치되어 있는 것이 바람직하다. 또한, 신호선(DO), 신호선(ACK)은 판독 리셋 기능을 가지는 것이 바람직하다.
카운터(CNP)(22a) 및 카운터(CNM)(22b)가 카운트업하는 경우에는, 메모리(21)에 상이한 부호를 가지는 데이터가 저장되어 있는 것으로 판단할 수 있다. 이 경우, 제어 회로(23)에 의하여 가산 연산을 다시 실행한다.
따라서, CPU 등의 주변 회로는, 가산 회로(10)에 대하여 가산하고자 하는 복수의 데이터를 메모리(21)에 저장시키고, 또한 신호선(IRQ)에 신호를 공급함으로써, 가산 회로(10)의 연산 처리를 시작시킨다. 가산 회로(10)는, 연산이 종료되면 신호선(ACK)에 신호를 공급함으로써 CPU 등의 주변 회로에 연산 종료를 통지한다. 즉, 데이터를 설정하고 연산 명령을 실행함으로써, 연산 결과를 얻을 수 있다. 가산 회로(10)가 연산하는 기간에는, CPU 등의 주변 회로는 다른 처리를 할 수 있다. 또한, 양의 정수와 음의 정수를 가산함으로써 오버플로를 억제하고, 또한 연산 결과가 0인 데이터를 파기함으로써 연산량을 줄일 수 있는 가산 방법을 가진 가산 회로(10)를 가지는 반도체 장치이다.
도 2의 (B)는, 제로 삽입 회로(26)(제로 삽입 회로(26a)와 제로 삽입 회로(26b))를 자세히 설명한 회로도이다. 제로 삽입 회로(26)는 복수의 게이트 회로(26c)와, 스위치(SW0), 스위치(SW1)를 가진다. 게이트 회로(26c)는 2개의 입력 단자와 하나의 출력 단자를 가진다. 게이트 회로(26c)의 출력 단자는 신호선(FOUT[n:0]) 중 어느 하나와 전기적으로 접속된다. 또한, 게이트 회로(26c) 중 한쪽 입력 단자는 신호선(FO[n:0]) 중 어느 하나와 전기적으로 접속된다. 다른 쪽 입력 단자는 스위치(SW0)의 전극 중 한쪽, 및 스위치(SW1)의 전극 중 한쪽과 전기적으로 접속된다. 스위치(SW0)의 전극 중 다른 쪽은 배선(Vdd)과 전기적으로 접속되고, 배선(Vdd)에는 가산 회로(10)의 높은 전원 전압이 공급되는 것이 바람직하다. 스위치(SW1)의 전극 중 다른 쪽은 배선(Vss)과 전기적으로 접속되고, 배선(Vss)에는 가산 회로(10)의 낮은 전원 전압, 예를 들어 GND가 공급되는 것이 바람직하다.
스위치(SW0) 및 스위치(SW1)는 신호선(MB)에 공급되는 신호에 의하여 제어된다. 또한 스위치(SW0) 및 스위치(SW1)는 배타적으로 동작하는 것이 바람직하다. 게이트 회로(26c)는, 신호선(MB)에 공급되는 신호에 의하여 스위치(SW0)를 온 상태로 하고, 같은 기간에 스위치(SW1)를 오프 상태로 할 수 있다. 신호선(FO)에 공급된 신호와 같은 신호를 출력 단자에 출력할 수 있다. 또한, 게이트 회로(26c)는 신호선(MB)에 공급되는 신호에 의하여 스위치(SW0)를 오프 상태로 하고, 같은 기간에 스위치(SW1)를 온 상태로 할 수 있다. 따라서, 신호선(FOUT)에는 0이 공급된다. 즉, 게이트 회로(26c)는 신호선(FO)에 공급된 임의의 데이터를 0으로 변환할 수 있다.
본 발명의 일 형태는, 상술한 가산 회로에 한정되지 않는다. 예를 들어, 프로그램을 사용하여 실현하여도 좋다. 즉, 하드웨어가 아니라, 소프트웨어에 의하여 본 발명의 일 형태의 가산 방법을 실시하여도 좋다.
도 3의 (A)는, 도 1의 (A)와 상이한 구성을 가지며, 오버플로를 억제하는 가산 방법에 대하여 설명한 도면이다.
도 3의 (A)는, 메모리(M5), 메모리(M6)를 가지는 것이 도 1의 (A)와 상이하다. 도 1의 (A)와 달리, 입력 데이터 또는 연산 후의 데이터를 더 세세한 복수의 범위로 분류할 수 있는 점에서 상이하다. 예를 들어, 양의 정수가 분류되는 범위는 범위 B 및 범위 BB로 나눌 수 있다. 범위 BB는 범위 B보다 큰 값을 가진다. 또한 음의 정수가 분류되는 범위는 범위 C 및 범위 CC로 나눌 수 있다. 범위 CC는 범위 C보다 작은 값을 가진다. 이와 같이 세세한 분류를 가짐으로써, 가산할 때 가산 결과가 더 작은 값이 되도록 할 수 있다. 따라서 가산할 때의 오버플로의 발생을 더 억제할 수 있다.
도 3의 (B)는, 도 2의 (A)와 상이한 구성을 가지는 반도체 장치를 설명한 회로도이다. 가산 회로(10a)는, 제어 회로(30), 실렉터(31), 메모리(31a) 내지 메모리(31d), 제어 회로(32), 제로 삽입 회로(33a), 제로 삽입 회로(33b)를 가지는 점에서 가산 회로(10)와 상이하다. 지면 관계상, 메모리(31b), 메모리(31c)의 표시는 생략하였다. 또한 가산 회로(10a)는, 신호선(DAP1), 신호선(DAP2), 신호선(DAM1), 신호선(DAM2), 신호선(FO1), 신호선(FO2), 신호선(FO3), 신호선(FO4), 신호선(WEP1), 신호선(WEP2), 신호선(WEM1), 신호선(WEM2), 신호선(UFP1), 신호선(UFP2), 신호선(UFM1), 선(UFM2), 신호선(REP1), 신호선(REP2), 신호선(REM1), 및 신호선(REM2)을 가지는 점에서 가산 회로(10)와 상이하다.
제어 회로(30)는, 메모리(31a) 내지 메모리(31d)(메모리(31b), 메모리(31c)는 도시하지 않았음)에 대응하는 점에서 제어 회로(23)와 상이하다. 실렉터(31)는, 메모리(31a) 내지 메모리(31d)에 대응하는 점에서 실렉터(24)와 상이하다. 메모리(31a)는 범위 BB의 범위 내의 데이터가 저장되고, 메모리(31b)는 범위 B의 범위 내의 데이터가 저장되고, 메모리(31c)는 범위 C의 범위 내의 데이터가 저장되고, 메모리(31d)는 범위 CC의 범위 내의 데이터가 저장된다. 제어 회로(32)는 메모리(31a) 내지 메모리(31d)에 대응하는 점에서 제어 회로(25)와 상이하다. 제로 삽입 회로(33a)는 신호선(FO1), 신호선(FO2)에 대응하는 점에서 제로 삽입 회로(26a)와 상이하다. 제로 삽입 회로(33b)는 신호선(FO3), 신호선(FO4)에 대응하는 점에서 제로 삽입 회로(26b)와 상이하다.
도 3의 (B)에 도시된 바와 같이, 가산 처리에서 오버플로를 더 억제하기 위해서는 입력 범위를 세세하게 관리하는 메모리를 추가하는 것이 바람직하다. 오버플로가 억제되기 때문에, 더 정확한 연산을 수행할 수 있다.
도 4의 (A)는, 도 1의 (A)와 상이한 구성을 가지는, 오버플로를 억제하는 가산 방법에 대하여 설명한 도면이다. 도 4의 (A)에는, 단계(ST31)부터 단계(ST33)까지의 예를 나타내었다. 도 1의 (A)에서는, 양의 부호를 가지는 정수와 음의 부호를 가지는 정수로 분류를 수행하였다. 한편, 도 4의 (A)에서는, 단계(ST32)에서, 양의 부호를 가지는 정수, 음의 부호를 가지는 정수를 단순히 분류할 뿐만 아니라, 절댓값의 값이 큰 순서로 정렬할 수 있다. 부호가 상이한 값에서, 절댓값의 값이 큰 순서로 가산한다. 이에 의하여, 2개의 값의 가산 결과가 0에 가까워진다. 그 결과, 오버플로로 인하여 계산 정확도를 저하시킬 일 없이, 더 빠르게 가산 처리를 수행할 수 있다.
또한 도 4의 (A)에서는, 메모리(M2)와 메모리(M3)로 나누어 저장되어 있지만, 본 발명의 일 형태는 이에 한정되지 않는다. 예를 들어, 양의 부호를 가지는 정수와 음의 부호를 가지는 정수를 분류하지 않고 저장하여도 좋다. 예를 들어, 메모리(M2)에, 가장 큰 값부터 가장 작은 값까지를 저장하여도 좋다. 예를 들어, 도 4의 (B)에 도시된 바와 같이, "3", "2", "1", "0", "0", "-1", "-1", "-3", "-3"의 순서로 메모리(M2)에 저장하여도 좋다. 그리고, 가장 큰 값과 가장 작은 값을 순서대로 가산한다. 예를 들어, "3"과 "-3"을 가산하고, 그 후에 "2"와 "-3"을 가산하고, 다음으로 "1"과 "-1"을 가산하고, 그 다음으로 "0"과 "-1"을 가산한다. 이와 같은 처리를 수행함으로써, 양의 부호를 가지는 정수와 음의 부호를 가지는 정수에서, 각각의 개수가 크게 상이한 경우에도, 재빠르게 처리를 수행할 수 있다. 또한 도 4의 (B)에서는, 메모리(M2)에 데이터를 저장한 후에 가산하지만, 본 발명의 일 형태는 이에 한정되지 않는다. 예를 들어, 메모리(M1)로부터 적절한 수치를 추출하여, 순차적으로 가장 큰 값과 가장 작은 값을 가산하여도 좋다.
또한 도 4의 (B)와 같은 경우에는, 부호가 없는 정수를 가산하는 경우에서도 오버플로로 인한 계산 정확도의 저하를 저감할 수 있다. 즉, 양의 부호를 가지는 정수만(0을 포함하여도 좋음) 또는 음의 부호를 가지는 정수만(0을 포함하여도 좋음)인 경우에는, 도 4의 (B)와 마찬가지로 가장 큰 값부터 가장 작은 값까지를 저장하고, 그 후에 가장 큰 값과 가장 작은 값을 순서대로 가산하여도 좋다. 또한 여기서는, 메모리(M2)에 데이터를 저장한 후에 가산하지만, 본 발명의 일 형태는 이에 한정되지 않는다. 예를 들어, 메모리(M1)로부터 적절한 수치를 추출하여, 순차적으로 가장 큰 값과 가장 작은 값을 가산하여도 좋다.
또한 도 1의 (A)의 단계(ST5), 도 1의 (B)의 단계(ST15), 도 3의 (A)의 단계(ST25) 등에서는, 도 4의 (B)와 같은 방법을 사용하여 부호가 없는 정수를 가산할 수 있다. 다른 예로서, 양의 부호를 가지는 정수만을 가산하는 경우, 또는 음의 부호를 가지는 정수만을 가산하는 경우에도, 도 4의 (B)와 같은 방법을 사용하여 부호가 없는 정수를 가산할 수 있다.
본 실시형태는 다른 실시형태의 일부 또는 전체를 변경, 추가, 수정, 삭제, 응용, 상위 개념화, 또는 하위 개념화한 것에 상당한다. 따라서 본 실시형태의 일부 또는 전체에 대하여, 다른 실시형태의 일부 또는 전체와 자유로이 조합 또는 치환하여 실시할 수 있다.
(실시형태 2)
본 실시형태에서는, 오버플로를 억제할 수 있는 가산 회로를 가지는 반도체 장치에 대하여, 도 5 내지 도 13을 사용하여 설명한다.
도 5의 (A)는, 신경망을 구비하는 반도체 장치(80)를 도시한 블록도이다. 반도체 장치(80)는 일례로서, CPU(81), 메모리(82), 촬상 장치(83), 신경망(84), 디스플레이 컨트롤러(85a), 표시 장치(85b), 및 입출력 버스(86)를 가진다. CPU(81), 메모리(82), 촬상 장치(83), 신경망(84), 및 디스플레이 컨트롤러(85a)는 입출력 버스(86)를 통하여 접속된다. 다만, 촬상 장치(83)는 입출력 버스(86)를 통하지 않고 신경망(84)과 전기적으로 접속되어도 좋고, 신경망(84)은 입출력 버스(86)를 통하지 않고 디스플레이 컨트롤러(85a)와 전기적으로 접속되어도 좋다.
도 5의 (B)는 일례로서, 촬상 장치(83)가 신경망(84)에 접속되고, 신경망(84)이 CPU(81)에 데이터를 출력하는 구성예를 도시한 것이다. 신경망(84)은 승산 셀 블록(84a) 및 드라이버(84d)를 가진다. 승산 셀 블록(84a)은 복수의 뉴런(84b)을 가진다. 각 뉴런(84b)은 일례로서, 복수의 승산 셀(11), 복수의 레퍼런스 셀(12), 연산 회로(13), 및 도 2의 (A)에서 설명한 가산 회로(10)를 가진다. 또한, 소프트웨어 또는 프로그램에 의하여 가산하는 경우에는, 가산 회로(10)는 제공하지 않아도 된다.
도 5의 (C)는, 뉴런(84b)에 대하여 설명한 도면이다. 뉴런(84b)은 일례로서, 승산 회로(40) 및 변환 회로(15)를 가진다. 또한 변환 회로(15)는 반드시 가질 필요는 없다. 승산 회로(40)는 복수의 승산 셀(11)을 구비하는 것이 바람직하다. 변환 회로(15)는 가산 회로(10)와 전기적으로 접속된다. 즉, 뉴런(84b)은 승산 회로(40)와 가산 회로(10)로 구성되는 적화 연산 회로를 가진다.
도 6의 (A)에는, 승산 셀(11)이 가지는 트랜지스터를 도시하였다. 트랜지스터를 사용하여 트랜지스터의 게이트에 가중 계수(ΔW) 및 데이터(ΔV)를 공급함으로써 ΔW×ΔV의 승산을 수행하는 방법에 대하여 설명한다. 트랜지스터에 흐르는 전류(Id)는, 트랜지스터가 포화 영역에서 동작하는 경우에는, 식 1로 나타낼 수 있다.
Ids=k×(Vgs-Vth)2(식 1)
전류(Ids)는 Vgs에 따라 변화한다. 트랜지스터의 게이트에 기준 전압(Vref), 가중 계수(ΔW), 및 데이터(ΔV)가 공급되는 것으로 하면, 전류(Ids)는 식 2를 식 1의 Vgs에 대입하여 계산할 필요가 있다. 이때 대입하는 Vgs를 Vgs1로 하고, 계산되는 전류(Ids)를 전류(I1)로 한다.
Vgs1=Vref+ΔW+ΔV(식 2)
ΔW×ΔV를 승산 결과로서 얻기 위해서는, 식 2가 대입된 식 1을 전개함으로써 식 5 중에 ΔW×ΔV의 항을 얻을 수 있다.
I1=k×(Vref+ΔW+ΔV-Vth)2(식 3)
계수 A=Vref+Vth로 한 경우.
I1=k×(ΔW+ΔV+A)2(식 4)
I1=k×(A2+2×A×ΔW+ΔW2+2×A×ΔV+ΔV2+2×ΔW×ΔV)(식 5)
마찬가지로, 식 1의 Vgs에 Vgs2=Vref+ΔV를 대입한 경우, 전류(I2)를 얻을 수 있다.
또한 식 1의 Vgs에 Vgs3=Vref+ΔW를 대입한 경우, 전류(I3)를 얻을 수 있다.
식 1의 Vgs에 Vgs4=Vref를 대입한 경우, 전류(I4)를 얻을 수 있다.
식 5에서 얻어지는 A2+2×A×ΔW+ΔW2는, Vgs3을 대입한 경우에 얻어지는 전류(I3)에 상당한다.
식 5에서 얻어지는 2×A×ΔV+ΔV2는, Vgs2를 대입한 경우에 얻어지는 전류(I2)에서, Vgs4를 대입한 경우에 얻어지는 전류(I4)를 뺌으로써 얻을 수 있다.
따라서, 식 5로부터 ΔW×ΔV의 승산 결과를 얻기 위해서는, 이하의 식 6이 성립된다. 이 경우, I5는 트랜지스터의 Vth에 의존하지 않는다.
I5=2×k×ΔW×ΔV(식 6)
ΔV>0이며 ΔW>0, 또는 ΔV<0이며 ΔW<0일 때, 식 7이 성립된다.
I1+I4-I2-I3-I5=0(식 7)
또한 다른 경우로서, ΔV<0, ΔW>0, 또는 ΔV<0, ΔW>0일 때, 식 8이 성립된다.
I1+I4-I2-I3+I5=0(식 8)
즉, 트랜지스터를 사용하여 ΔW×ΔV의 승산 결과를 얻기 위해서는, 전류(I1) 내지 전류(I4)를 계산함으로써 산출할 수 있다.
도 6의 (B)에는 일례로서, 전류(I1) 내지 전류(I5)를 도시하였다. I5(7)는 식 7의 전류의 방향을 나타내고, I5(8)는 식 8의 전류의 방향을 나타낸다.
도 7의 (A)는 일례로서, 적화 연산 회로의 승산 회로(40)에 대하여 설명한 회로도이다. 승산 회로(40)는 일례로서, 승산 셀(11), 레퍼런스 셀(12), 연산 회로(13), 및 변환 회로(15)를 가진다. 변환 회로(15)의 일례로서, 전류 신호를 전압 신호로 변환하는 기능을 가진다. 또는 변환 회로(15)의 일례로서, 아날로그 신호를 디지털 신호로 변환하는 기능을 가진다. 또는 변환 회로(15)의 일례로서, 출력 신호에서 노이즈 성분을 제거하는 기능을 가진다. 연산 회로(13)의 일례로서, 스위치(S1), 제 1 프로그래밍 셀, 및 제 2 프로그래밍 셀을 가진다. 승산 셀(11), 레퍼런스 셀(12)은 각각이 메모리 셀을 가진다. 또한 승산 회로(40)의 일례로서, 배선(Vdd), 배선(Vss), 신호선(SL), 신호선(SLR), 신호선(WL1), 및 신호선(WD)을 가진다.
승산 셀(11)이 가지는 메모리 셀의 일례로서, 트랜지스터(41), 트랜지스터(42), 및 용량 소자(43)를 가진다. 레퍼런스 셀(12)이 가지는 메모리 셀의 일례로서, 트랜지스터(44), 트랜지스터(45), 및 용량 소자(46)를 가진다. 연산 회로(13)의 일례로서, 커런트 미러를 형성하는 트랜지스터(47), 트랜지스터(48)를 가진다. 또한 제 1 프로그래밍 셀의 일례로서, 트랜지스터(49), 용량 소자(50), 및 스위치(S2)를 가진다. 또한 제 2 프로그래밍 셀의 일례로서, 트랜지스터(51), 용량 소자(52), 및 스위치(S3)를 가진다.
트랜지스터(47) 내지 트랜지스터(49)는 p채널형 트랜지스터이고, 그 외의 트랜지스터는 n채널형 트랜지스터이다.
적화 연산 회로는 채널 형성 영역에 실리콘(단결정 실리콘 등)을 포함하는 트랜지스터(이하, Si 트랜지스터라고도 함)로 구성하여도 좋고, 채널 형성 영역에 산화물 반도체를 포함하는 트랜지스터(이하, OS 트랜지스터라고도 함)로 구성하여도 좋다. 특히, OS 트랜지스터는 오프 전류가 매우 작기 때문에, 전압을 유지하는 트랜지스터로서 적합하다. 또한 Si 트랜지스터와 OS 트랜지스터 양쪽을 사용하여 적화 연산 회로를 구성하여도 좋다. 도 7의 (A)에서는 일례로서, 스위치(S2), 스위치(S3), 트랜지스터(41), 또는 트랜지스터(44)가 OS 트랜지스터인 것이 바람직하다.
트랜지스터(41)의 소스 및 드레인 중 한쪽은 신호선(SL)과 전기적으로 접속된다. 트랜지스터(41)의 소스 및 드레인 중 다른 쪽은 트랜지스터(42)의 게이트, 및 용량 소자(43)의 전극 중 한쪽과 전기적으로 접속된다. 트랜지스터(42)의 소스 및 드레인 중 한쪽은 배선(Vss)과 전기적으로 접속된다. 트랜지스터(42)의 소스 및 드레인 중 다른 쪽은, 스위치(S1)의 전극 중 한쪽, 스위치(S2)의 전극 중 한쪽, 그리고 트랜지스터(49)의 소스 및 드레인 중 한쪽과 전기적으로 접속된다. 스위치(S2)의 전극 중 다른 쪽은, 트랜지스터(49)의 게이트, 및 용량 소자(50)의 전극 중 한쪽과 전기적으로 접속된다. 트랜지스터(49)의 소스 및 드레인 중 다른 쪽은, 배선(Vdd), 용량 소자(50)의 전극 중 다른 쪽과 전기적으로 접속된다. 스위치(S1)의 전극 중 다른 쪽은, 변환 회로(15)의 입력 단자, 트랜지스터(51)의 소스 및 드레인 중 한쪽, 스위치(S3)의 전극 중 한쪽, 그리고 트랜지스터(48)의 소스 및 드레인 중 한쪽과 전기적으로 접속된다. 트랜지스터(51)의 게이트는, 스위치(S3)의 전극 중 다른 쪽, 및 용량 소자(52)의 전극 중 한쪽과 전기적으로 접속된다. 트랜지스터(51)의 소스 및 드레인 중 다른 쪽은, 배선(Vss), 용량 소자(52)의 전극 중 다른 쪽, 그리고 트랜지스터(45)의 소스 및 드레인 중 한쪽과 전기적으로 접속된다. 트랜지스터(48)의 소스 및 드레인 중 다른 쪽은, 배선(Vdd), 그리고 트랜지스터(47)의 소스 및 드레인 중 한쪽과 전기적으로 접속된다. 트랜지스터(48)의 게이트는, 트랜지스터(47)의 게이트, 트랜지스터(47)의 소스 및 드레인 중 다른 쪽, 그리고 트랜지스터(45)의 소스 및 드레인 중 다른 쪽과 전기적으로 접속된다. 트랜지스터(45)의 게이트는, 트랜지스터(44)의 소스 및 드레인 중 한쪽, 그리고 용량 소자(46)의 전극 중 한쪽에 전기적으로 접속된다. 용량 소자(46)의 전극 중 다른 쪽은 배선(WD)과 전기적으로 접속된다. 트랜지스터(44)의 소스 및 드레인 중 다른 쪽은 배선(SLR)과 전기적으로 접속된다.
노드(FN10)는 트랜지스터(41)의 소스 및 드레인 중 다른 쪽, 트랜지스터(42)의 게이트, 그리고 용량 소자(43)의 전극 중 한쪽과 접속되어 형성된다. 노드(FN20)는 트랜지스터(44)의 소스 및 드레인 중 한쪽, 트랜지스터(45)의 게이트, 그리고 용량 소자(46)의 전극 중 한쪽과 접속되어 형성된다. 노드(FN30)는 스위치(S2)의 전극 중 다른 쪽, 트랜지스터(49)의 게이트, 및 용량 소자(50)의 전극 중 한쪽과 접속되어 형성된다. 노드(FN40)는 스위치(S3)의 전극 중 다른 쪽, 트랜지스터(51)의 게이트, 및 용량 소자(52)의 전극 중 한쪽과 접속되어 형성된다.
여기서, 도 7의 (C), (D), (E)를 사용하여 변환 회로(15)에 대하여 설명한다. 변환 회로(15)의 일례로서는, IV 변환 회로(15a) 및 증폭 회로(15b)를 가진다. IV 변환 회로(15a)에는, 저항 소자, 용량 소자, 및 다이오드 등을 사용할 수 있다. IV 변환 회로(15a)에 의하여, 전류를 전압으로 변환할 수 있다. 그 결과, 출력 신호를 용이하게 추출할 수 있다. 그리고, 증폭 회로(15b)에 의하여, 전압으로 변환된 출력 신호를 적절히 출력할 수 있다. 증폭 회로(15b)의 일례로서, 연산 증폭기, 소스 폴로어 회로, 소스 접지 회로, 또는 전압 폴로어 회로 등을 채용할 수 있다. 또한 도 7의 (D) 또는 (E)에 도시된 바와 같이, IV 변환 회로(15a)로서 연산 증폭기와 수동 소자(예를 들어, 저항 소자 또는 용량 소자)를 사용하여 구성할 수도 있다. 도 7의 (D)에는, 연산 증폭기와 저항 소자를 사용한 IV 변환 회로를 도시하고, 도 7의 (E)에는, 연산 증폭기와 용량 소자를 사용한 적분 회로를 도시하였다. 도 7의 (D) 또는 (E)에 도시된 바와 같이, 연산 증폭기를 사용하면, 가상 접지의 효과를 이용하여 연산 증폭기의 입력 단자의 전위를 제어할 수 있기 때문에 적합하다.
다음으로, 도 7의 (A), (B)를 사용하여 승산 회로(40)의 동작의 일례에 대하여 설명한다.
우선, 도 7의 (A)에 대하여 설명한다. 노드(FN10)에는 배선(SL)을 통하여 Vgs3(=Vref+ΔW)이 기록되고, 트랜지스터(42)에는 전류(I3)가 흐른다. 노드(FN30)에는 트랜지스터(49)에 흐르는 전류(I3)에 상당하는 전위가 스위치(S2)를 통하여 공급된다. 동시에, 노드(FN20)에는 배선(SLR)을 통하여 Vgs4(=Vref)가 기록되고 트랜지스터(45)에는 전류(I4)가 흐른다. 전류(I4)는 커런트 미러를 형성하는 트랜지스터(47), 트랜지스터(48)에 의하여 복사된다. 노드(FN40)에는 트랜지스터(51)에 흐르는 전류(I4)에 상당하는 전위가 스위치(S3)를 통하여 공급된다.
다음으로, 도 7의 (B)에 대하여 설명한다. 스위치(S2) 및 스위치(S3)를 오프 상태로 하고, 노드(FN30) 또는 노드(FN40)에 공급된 전위를 저장한다.
다음으로, 신호선(WD)의 전위를 데이터(ΔV)만 변동시키면, 노드(FN10)에는 용량 소자(43)를 통하여 데이터(ΔV)가 공급된다. 즉, 노드(FN10)의 전위는 Vgs3으로부터 Vgs1(=Vref+ΔW+ΔV)로 변화한다. 동시에, 노드(FN20)에는 용량 소자(46)를 통하여 데이터(ΔV)가 공급된다. 즉, 노드(FN10)의 전위는 Vgs4로부터 Vgs2(=Vref+ΔV)로 변화한다. 전류(I2)는 커런트 미러를 형성하는 트랜지스터(47), 트랜지스터(48)에 의하여 복사된다. 따라서, 트랜지스터(48)에는 전류(I2)를 흐르게 할 수 있다.
트랜지스터(42)는 전류(I1)를 흐르게 하고, 트랜지스터(49)는 전류(I3)를 흐르게 하고, 트랜지스터(48)는 전류(I2)를 흐르게 하고, 트랜지스터(51)는 전류(I4)를 흐르게 할 수 있다. 여기서, 스위치(S1)를 온 상태로 함으로써 변환 회로(15)에 전류(I5)를 공급할 수 있다. 따라서, ΔW×ΔV의 승산 결과를 I5로서 얻을 수 있다.
도 8은, 복수의 메모리 셀을 가지는 승산 셀(11), 복수의 메모리 셀을 가지는 레퍼런스 셀(12)을 가지는 점에서 도 7의 (A)와 상이하다. 즉, 복수의 메모리 셀을 가지는 승산 셀(11)로부터 출력되는 복수의 전류를 키르히호프의 법칙에 기초하여 합칠 수 있다. 또한 신호선(NSEL2)은 스위치(S2)와 전기적으로 접속되고, 신호선(NSEL3)은 스위치(S3)와 전기적으로 접속된다. 다만, 승산 셀(11)과 레퍼런스 셀(12)이 가지는 메모리 셀의 수가 같은 것이 바람직하다. 또한 스위치(S1)는 트랜지스터를 사용하여도 좋지만, 더 바람직하게는 아날로그 스위치를 사용하는 것이 좋다. 아날로그 스위치를 사용함으로써 더 정확하게 승산할 수 있다.
또한 상이한 점으로서, 제 1 프로그래밍 셀의 트랜지스터(49a)는 승산 셀(11)의 단수에 따라 트랜지스터의 채널 폭을 크게 하는 것이 바람직하다. 따라서, 승산 셀(11)에서 n단의 메모리 셀이 접속되는 경우, 트랜지스터(49a)의 채널 폭은 트랜지스터(42a)의 채널 폭의 n배를 가지는 것이 바람직하다. 더 바람직하게는, 트랜지스터(42a)의 채널 폭의 n배보다 크게 하는 것이 좋다.
제 2 프로그래밍 셀의 트랜지스터(51a)는 레퍼런스 셀(12)의 단수에 따라 트랜지스터의 채널 폭을 크게 하는 것이 바람직하다. 따라서, 레퍼런스 셀(12)에서 n단의 메모리 셀이 접속되는 경우, 트랜지스터(51a)의 채널 폭은 트랜지스터(45a)의 채널 폭의 n배를 가지는 것이 바람직하다. 더 바람직하게는, 트랜지스터(45a)의 채널 폭의 n배보다 크게 하는 것이 좋다.
도 9는, 도 8과 상이한 연산 회로(13a)에 대하여 설명하는 회로도이다. 도 9에서 설명하는 연산 회로(13a)는, 트랜지스터(47a), 트랜지스터(48a), 트랜지스터(49b), 용량 소자(50a), 스위치(S2a), 트랜지스터(51b), 용량 소자(52a), 및 스위치(S3a)를 더 가진다.
도 9에 도시된 바와 같은 회로 구성으로 함으로써, 가산 처리에 사용하는 트랜지스터의 포화 특성을 평탄한 특성으로 할 수 있다. 따라서, 커런트 미러 등에 의하여 전류를 복사하는 경우에는, 더 정확한 전류를 취급할 수 있다. 따라서, 연산 회로(13a)를 사용함으로써 가산의 연산 정확도를 향상시킬 수 있다.
도 10의 (A)는, 도 7의 (A)와 상이한 승산 회로(40a)에 대하여 설명한 회로도이다. 도 10의 (A)에서는, 주된 트랜지스터가 n채널형 트랜지스터로 구성된다. 만약, 스위치도 n채널형 트랜지스터로 구성한다면, 모든 트랜지스터를 n채널형만으로 구성할 수 있게 된다. 이 경우, 프로세스 공정을 간략화할 수 있다.
승산 회로(40a)의 일례로서, 승산 셀(11a), 레퍼런스 셀(12a), 연산 회로(13b), 및 변환 회로(15)를 가진다. 연산 회로(13b)의 일례로서, 스위치(S1), 제 1 프로그래밍 셀, 및 제 2 프로그래밍 셀을 가진다. 승산 셀(11a), 레퍼런스 셀(12a)은 각각이 메모리 셀을 가진다. 또한 승산 회로(40a)의 일례로서, 배선(Vdd), 배선(Vss), 신호선(SL), 신호선(SLR), 신호선(WL1), 및 신호선(WD)을 가진다.
승산 셀(11a)이 가지는 메모리 셀의 일례로서, 트랜지스터(61), 트랜지스터(62), 및 용량 소자(63)를 가진다. 레퍼런스 셀(12a)의 일례로서, 트랜지스터(64), 트랜지스터(65), 및 용량 소자(66)를 가진다. 연산 회로(13b)의 일례로서, 트랜지스터(72), 용량 소자(73), 트랜지스터(74), 용량 소자(75), 트랜지스터(76), 용량 소자(77), 및 스위치(S7 내지 S15)를 가진다. 또한 제 1 프로그래밍 셀의 일례로서, 트랜지스터(67), 용량 소자(68), 및 스위치(S4)를 가진다. 또한 제 2 프로그래밍 셀의 일례로서, 트랜지스터(69), 용량 소자(70), 트랜지스터(71), 스위치(S5), 스위치(S6)를 가진다.
도 10의 (A)에서는, 스위치(S4), 스위치(S5), 스위치(S12), 스위치(S14), 스위치(S15), 트랜지스터(61), 또는 트랜지스터(64)가 예를 들어 OS 트랜지스터인 것이 바람직하다. OS 트랜지스터는 오프 전류가 매우 작기 때문에, 전압을 유지하는 트랜지스터로서 적합하다.
적화 연산 회로는 Si 트랜지스터로 구성되어도 좋고, OS 트랜지스터로 구성되어도 좋다. 특히, OS 트랜지스터는 오프 전류가 매우 작기 때문에, 적화 연산 회로의 메모리를 구성하는 트랜지스터로서 적합하다. 또한 Si 트랜지스터와 OS 트랜지스터 양쪽을 사용하여 적화 연산 회로를 구성하여도 좋다.
트랜지스터(61)의 소스 및 드레인 중 한쪽은 신호선(SL)과 전기적으로 접속된다. 트랜지스터(61)의 소스 및 드레인 중 다른 쪽은 트랜지스터(62)의 게이트, 및 용량 소자(63)의 전극 중 한쪽과 전기적으로 접속된다. 트랜지스터(62)의 소스 및 드레인 중 한쪽은 배선(Vss)과 전기적으로 접속된다. 트랜지스터(62)의 소스 및 드레인 중 다른 쪽은, 용량 소자(68)의 전극 중 한쪽, 트랜지스터(67)의 소스 및 드레인 중 한쪽, 스위치(S1)의 전극 중 한쪽, 스위치(S6)의 전극 중 한쪽, 그리고 스위치(S10)의 전극 중 한쪽과 전기적으로 접속된다. 트랜지스터(67)의 게이트는, 용량 소자(68)의 전극 중 다른 쪽, 스위치(S4)의 전극 중 한쪽과 전기적으로 접속된다. 트랜지스터(67)의 소스 및 드레인 중 다른 쪽은, 스위치(S4)의 전극 중 다른 쪽, 및 배선(Vdd)과 전기적으로 접속된다.
스위치(S1)의 전극 중 다른 쪽은 변환 회로(15)와 전기적으로 접속된다. 트랜지스터(64)의 소스 및 드레인 중 한쪽은 배선(SLR)과 전기적으로 접속된다. 트랜지스터(64)의 소스 및 드레인 중 다른 쪽은 트랜지스터(65)의 게이트, 및 용량 소자(66)의 전극 중 한쪽과 전기적으로 접속된다. 트랜지스터(65)의 소스 및 드레인 중 한쪽은 배선(Vss)과 전기적으로 접속된다. 트랜지스터(65)의 소스 및 드레인 중 다른 쪽은, 스위치(S7)의 전극 중 한쪽, 및 스위치(S9)의 전극 중 한쪽과 전기적으로 접속된다. 스위치(S7)의 전극 중 다른 쪽은, 트랜지스터(72)의 소스 및 드레인 중 한쪽, 용량 소자(73)의 전극 중 한쪽, 그리고 스위치(S8)의 전극 중 한쪽과 전기적으로 접속된다. 트랜지스터(72)의 소스 및 드레인 중 다른 쪽은, 스위치(S15)의 전극 중 한쪽, 및 배선(Vdd)과 전기적으로 접속된다. 트랜지스터(72)의 게이트는 용량 소자(73)의 전극 중 다른 쪽, 스위치(S15)의 전극 중 다른 쪽과 전기적으로 접속된다.
스위치(S9)의 전극 중 다른 쪽은, 트랜지스터(74)의 소스 및 드레인 중 한쪽, 용량 소자(75)의 전극 중 한쪽, 그리고 스위치(S11)의 전극 중 한쪽과 전기적으로 접속된다. 트랜지스터(74)의 소스 및 드레인 중 다른 쪽은, 스위치(S14)의 전극 중 한쪽, 및 배선(Vdd)과 전기적으로 접속된다. 트랜지스터(74)의 게이트는 용량 소자(75)의 전극 중 다른 쪽, 및 스위치(S14)의 전극 중 다른 쪽과 전기적으로 접속된다. 스위치(S11)의 전극 중 다른 쪽은, 스위치(S10)의 전극 중 다른 쪽, 용량 소자(77)의 전극 중 한쪽, 그리고 트랜지스터(76)의 소스 및 드레인 중 한쪽과 전기적으로 접속된다. 트랜지스터(76)의 소스 및 드레인 중 다른 쪽은 스위치(S12)의 전극 중 한쪽과 전기적으로 접속된다. 트랜지스터(76)의 게이트는, 용량 소자(77)의 전극 중 다른 쪽, 및 스위치(S13)의 전극 중 한쪽과 전기적으로 접속된다. 스위치(S12)의 전극 중 다른 쪽은, 스위치(S13)의 전극 중 다른 쪽, 및 배선(Vdd)과 전기적으로 접속된다. 스위치(S8)의 전극 중 다른 쪽은, 트랜지스터(71)의 소스 및 드레인 중 한쪽, 그리고 스위치(S5)의 전극 중 한쪽과 전기적으로 접속된다. 트랜지스터(71)의 게이트는, 용량 소자(70)의 전극 중 한쪽, 스위치(S5)의 전극 중 다른 쪽, 및 트랜지스터(69)의 게이트와 전기적으로 접속된다. 트랜지스터(69)의 소스 및 드레인 중 한쪽은, 스위치(S6)의 전극 중 다른 쪽과 전기적으로 접속된다. 트랜지스터(71)의 소스 및 드레인 중 다른 쪽은, 용량 소자(70)의 전극 중 다른 쪽, 트랜지스터(69)의 소스 및 드레인 중 다른 쪽, 그리고 배선(Vss)과 전기적으로 접속된다.
노드(FN50)는 트랜지스터(61)의 소스 및 드레인 중 다른 쪽, 트랜지스터(62)의 게이트, 그리고 용량 소자(63)의 전극 중 한쪽과 접속되어 형성된다. 노드(FN60)는 트랜지스터(64)의 소스 및 드레인 중 다른 쪽, 트랜지스터(65)의 게이트, 그리고 용량 소자(66)의 전극 중 한쪽과 접속되어 형성된다. 노드(FN70)는 트랜지스터(67)의 게이트, 용량 소자(68)의 전극 중 다른 쪽, 및 스위치(S4)의 전극 중 한쪽과 접속되어 형성된다. 노드(FN80)는 트랜지스터(71)의 게이트, 용량 소자(70)의 전극 중 한쪽, 스위치(S5)의 전극 중 다른 쪽, 및 트랜지스터(69)의 게이트와 접속되어 형성된다.
다음으로, 도 10의 (A), (B), 및 도 11을 사용하여 승산 회로(40a)의 동작의 일례에 대하여 설명한다.
우선, 도 10의 (A)에 대하여 설명한다. 스위치(S4), 스위치(S7), 및 스위치(S15)를 온 상태로 한다. 노드(FN50)에는 배선(SL)을 통하여 Vgs3(=Vref+ΔW)이 기록되고, 트랜지스터(62)에는 전류(I3)가 흐른다. 노드(FN70)에는 트랜지스터(67)에 흐르는 전류(I3)에 상당하는 전위가 스위치(S4)를 통하여 공급된다. 동시에, 노드(FN60)에는 배선(SLR)을 통하여 Vgs4(=Vref)가 기록되고 트랜지스터(65)에는 전류(I4)가 흐른다. 전류(I4)는 스위치(S7)를 통하여 트랜지스터(72)에도 흐른다. 따라서 용량 소자(73)에는 전류(I4)에 상당하는 전위가 스위치(S15)를 통하여 공급된다.
다음으로, 스위치(S4), 스위치(S7), 및 스위치(S15)를 오프 상태로 하고, 노드(FN70) 및 용량 소자(73)에 공급된 전위를 저장한다.
다음으로, 도 10의 (B)에 대하여 설명한다. 스위치(S5)와 스위치(S8)를 온 상태로 한다. 노드(FN80)에는 트랜지스터(71)에 흐르는 전류(I4)에 상당하는 전위가 공급된다.
다음으로, 신호선(WD)의 전위를 데이터(ΔV)만 변동시키면, 노드(FN50)에는 용량 소자(63)를 통하여 데이터(ΔV)가 공급된다. 즉, 노드(FN50)의 전위는 Vgs3으로부터 Vgs1(=Vref+ΔW+ΔV)로 변화한다. 동시에, 노드(FN60)에는 용량 소자(66)를 통하여 데이터(ΔV)가 공급된다. 즉, 노드(FN60)의 전위는 Vgs4로부터 Vgs2(=Vref+ΔV)로 변화한다.
다음으로, 스위치(S9), 스위치(S11), 스위치(S13), 및 스위치(S14)를 온 상태로 한다. 트랜지스터(74)에 흐르는 전류(I2)에 상당하는 전위가 용량 소자(75)에 공급된다. 스위치(S13) 및 스위치(S14)가 온 상태이기 때문에, 용량 소자(77)에는 용량 소자(75)와 같은 전위가 공급된다. 따라서, 스위치(S14)와 용량 소자(75)를 구비하지 않아도 되고, 그 대신에 트랜지스터(74)의 게이트, 그리고 트랜지스터(74)의 소스 및 드레인 중 다른 쪽이 배선(Vdd)에 접속되어도 같은 동작을 할 수 있다.
다음으로, 도 11에 대하여 설명한다. 스위치(S9), 스위치(S11), 스위치(S13), 및 스위치(S14)를 오프 상태로 한다. 노드(FN80)는 공급된 전위를 저장한다. 다음으로, 스위치(S6), 스위치(S10), 및 스위치(S12)를 온 상태로 한다.
트랜지스터(62)는 전류(I1)를 흐르게 하고, 트랜지스터(67)는 전류(I3)를 흐르게 하고, 트랜지스터(76)는 전류(I2)를 흐르게 하고, 트랜지스터(69)는 전류(I4)를 흐르게 할 수 있다. 여기서, 스위치(S1)를 온 상태로 함으로써 변환 회로(15)에 전류(I5)를 공급할 수 있다. 따라서, ΔW×ΔV의 승산 결과를 I5로서 얻을 수 있다.
도 12는, 복수의 메모리 셀을 가지는 승산 셀(11a), 복수의 메모리 셀을 가지는 레퍼런스 셀(12a), 연산 회로(13b)를 가지는 점에서 도 8과 상이하다. 또한 신호선(NSEL4)은 스위치(S4)와 전기적으로 접속되고, 신호선(NSEL5)은 스위치(S7) 및 스위치(S15)와 전기적으로 접속되고, 신호선(NSEL6)은 스위치(S9), 스위치(S11), 및 스위치(S13)와 전기적으로 접속되고, 신호선(NSEL7)은 스위치(S5) 및 스위치(S8)와 전기적으로 접속되고, 신호선(NSEL8)은 스위치(S1), 스위치(S6), 스위치(S10), 및 스위치(S12)와 전기적으로 접속된다. 신호선(NSEL4)과 신호선(NSEL5)은 하나의 신호선으로 하여도 좋다.
다만, 승산 셀(11a)과 레퍼런스 셀(12a)이 가지는 메모리 셀의 수가 같은 것이 바람직하다. 또한 스위치(S1)는 트랜지스터를 사용하여도 좋지만, 더 바람직하게는 아날로그 스위치를 사용하는 것이 좋다. 아날로그 스위치를 사용함으로써 더 정확하게 승산할 수 있다.
또한 상이한 점으로서, 제 1 프로그래밍 셀의 트랜지스터(67a)는 승산 셀(11a)의 단수에 따라 트랜지스터의 채널 폭을 크게 하는 것이 바람직하다. 따라서, 승산 셀(11a)에서 n단의 메모리 셀이 접속되는 경우, 트랜지스터(67a)의 채널 폭은 트랜지스터(62a)의 채널 폭의 n배를 가지는 것이 바람직하다. 더 바람직하게는, 트랜지스터(62a)의 채널 폭의 n배보다 크게 하는 것이 바람직하다.
제 2 프로그래밍 셀의 트랜지스터(69a)는 레퍼런스 셀(12a)의 단수에 따라 트랜지스터의 채널 폭을 크게 하는 것이 바람직하다. 따라서, 레퍼런스 셀(12a)에서 n단의 메모리 셀이 접속되는 경우, 트랜지스터(69a)의 채널 폭은 트랜지스터(65a)의 채널 폭의 n배를 가지는 것이 바람직하다. 더 바람직하게는, 트랜지스터(65a)의 채널 폭의 n배보다 크게 하는 것이 바람직하다.
마찬가지로, 트랜지스터(71a), 트랜지스터(72a), 트랜지스터(74a), 및 트랜지스터(76a)의 채널 폭은 트랜지스터(65a)의 채널 폭의 n배보다 크게 하는 것이 바람직하다.
도 13은, 도 5의 (B)에 도시된 블록도와 상이한 신경망(84c)이다. 도 5와 상이한 점으로서, 도 13에서의 뉴런에서는 레퍼런스 셀(12) 및 연산 회로(13)를 공유하는 점에서 상이하다. 각각의 뉴런의 메모리 셀은, 연산 대상의 메모리 셀을 스위치(90(1)) 내지 스위치(90(i)) 중 어느 것을 통하여 접속할 수 있다. 레퍼런스 셀(12) 및 연산 회로(13)를 공유함으로써 뉴런의 실장 밀도가 향상되어, 더 많은 연산을 할 수 있다.
본 실시형태는 다른 실시형태의 일부 또는 전체를 변경, 추가, 수정, 삭제, 응용, 상위 개념화, 또는 하위 개념화한 것에 상당한다. 따라서 본 실시형태의 일부 또는 전체에 대하여, 다른 실시형태의 일부 또는 전체와 자유로이 조합 또는 치환하여 실시할 수 있다.
(실시형태 3)
본 실시형태에서는, 도 14를 사용하여 본 발명의 일 형태에 따른 산화물을 반도체에 사용한 트랜지스터(OS 트랜지스터) 및 용량 소자가 적용된 기억 장치(이하, OS 메모리 장치라고 부르는 경우가 있음)에 대하여 설명한다. OS 메모리 장치는 적어도 용량 소자와, 용량 소자의 충방전을 제어하는 OS 트랜지스터를 가지는 기억 장치이다. OS 트랜지스터의 오프 전류는 매우 작기 때문에, OS 메모리 장치는 우수한 유지 특성을 가지고, 비휘발성 메모리로서 기능시킬 수 있다.
<기억 장치의 구성예>
도 14는, 실시형태 1에서 설명한 메모리(M1) 내지 메모리(M3), 실시형태 2에서 설명한 승산 회로에 적용할 수 있는 메모리 셀(MC)의 구성예에 대하여 설명하는 것이다.
[DOSRAM]
도 14의 (A) 내지 (C)에 DRAM의 메모리 셀(MC)의 회로 구성예를 도시하였다. 본 명세서 등에서 1OS 트랜지스터 1용량 소자형의 메모리 셀을 사용한 DRAM을 DOSRAM(Dynamic Oxide Semiconductor Random Access Memory)이라고 부르는 경우가 있다. 도 14의 (A)에 도시된 메모리 셀(1471)은 트랜지스터(T1)와 용량 소자(CA)를 가진다. 또한, 트랜지스터(T1)는 게이트(프런트 게이트라고 부르는 경우가 있음) 및 백 게이트를 가진다.
트랜지스터(T1)의 제 1 단자는 용량 소자(CA)의 제 1 단자와 접속되고, 트랜지스터(T1)의 제 2 단자는 배선(BIL)과 접속되고, 트랜지스터(T1)의 게이트는 배선(WOL)과 접속되고, 트랜지스터(T1)의 백 게이트는 배선(BGL)과 접속된다. 용량 소자(CA)의 제 2 단자는 배선(CAL)과 접속된다.
배선(BIL)은 비트선으로서 기능하고, 배선(WOL)은 워드선으로서 기능한다. 배선(CAL)은 용량 소자(CA)의 제 2 단자에 소정의 전위를 인가하기 위한 배선으로서 기능한다. 데이터의 기록 시 및 판독 시에, 배선(CAL)에는 저레벨 전위를 인가하는 것이 바람직하다. 배선(BGL)은 트랜지스터(T1)의 백 게이트에 전위를 인가하기 위한 배선으로서 기능한다. 배선(BGL)에 임의의 전위를 인가함으로써 트랜지스터(T1)의 문턱 전압을 증감시킬 수 있다.
또한, 메모리 셀(MC)은 메모리 셀(1471)에 한정되지 않고, 회로 구성의 변경을 수행할 수 있다. 예를 들어 메모리 셀(MC)은 도 14의 (B)에 도시된 메모리 셀(1472)과 같이, 트랜지스터(T1)의 백 게이트가 배선(BGL)이 아니라 배선(WOL)과 접속되는 구성으로 하여도 좋다. 또한, 예를 들어 메모리 셀(MC)은 도 14의 (C)에 도시된 메모리 셀(1473)과 같이, 싱글 게이트 구조의 트랜지스터, 즉, 백 게이트를 가지지 않는 트랜지스터(T1)로 구성된 메모리 셀로 하여도 좋다.
트랜지스터(T1)로서 OS 트랜지스터를 사용함으로써, 트랜지스터(T1)의 누설 전류를 매우 낮게 할 수 있다. 즉, 기록된 데이터를 트랜지스터(T1)에 의하여 장시간 유지할 수 있어, 메모리 셀의 리프레시 빈도를 적게 할 수 있다. 또한, 메모리 셀의 리프레시 동작을 불필요하게 할 수 있다. 또한, 누설 전류가 매우 낮기 때문에 메모리 셀(1471), 메모리 셀(1472), 메모리 셀(1473)에 대하여 멀티레벨 데이터 또는 아날로그 데이터를 유지할 수 있다.
또한 도시하지 않았지만, DOSRAM에서는 메모리 셀(1471)의 아래에 중첩되도록 센스 앰프를 제공하는 구성으로 하면, 비트선을 짧게 할 수 있다. 이로써, 비트선 용량이 작아져 메모리 셀의 유지 용량을 저감시킬 수 있다.
[NOSRAM]
도 14의 (D) 내지 (H)에 2트랜지스터 1용량 소자의 게인 셀형 메모리 셀의 회로 구성예를 도시하였다. 도 14의 (D)에 도시된 메모리 셀(1474)은 트랜지스터(T2)와 트랜지스터(T3)와 용량 소자(CB)를 가진다. 또한, 트랜지스터(T2)는 프런트 게이트(단순히 게이트라고 부르는 경우가 있음) 및 백 게이트를 가진다. 본 명세서 등에서, 트랜지스터(T2)에 OS 트랜지스터를 사용한 게인 셀형 메모리 셀을 가지는 기억 장치를 NOSRAM(Nonvolatile Oxide Semiconductor RAM)이라고 부르는 경우가 있다.
트랜지스터(T2)의 제 1 단자는 용량 소자(CB)의 제 1 단자와 접속되고, 트랜지스터(T2)의 제 2 단자는 배선(WBL)과 접속되고, 트랜지스터(T2)의 게이트는 배선(WOL)과 접속되고, 트랜지스터(T2)의 백 게이트는 배선(BGL)과 접속된다. 용량 소자(CB)의 제 2 단자는 배선(CAL)과 접속된다. 트랜지스터(T3)의 제 1 단자는 배선(RBL)과 접속되고, 트랜지스터(T3)의 제 2 단자는 배선(SL)과 접속되고, 트랜지스터(T3)의 게이트는 용량 소자(CB)의 제 1 단자와 접속된다.
배선(WBL)은 기록 비트선으로서 기능하고, 배선(RBL)은 판독 비트선으로서 기능하고, 배선(WOL)은 워드선으로서 기능한다. 배선(CAL)은 용량 소자(CB)의 제 2 단자에 소정의 전위를 인가하기 위한 배선으로서 기능한다. 데이터의 기록 시, 데이터 유지 중, 데이터의 판독 시에, 배선(CAL)에는 저레벨 전위를 인가하는 것이 바람직하다. 배선(BGL)은 트랜지스터(T2)의 백 게이트에 전위를 인가하기 위한 배선으로서 기능한다. 배선(BGL)에 임의의 전위를 인가함으로써 트랜지스터(T2)의 문턱 전압을 증감시킬 수 있다.
또한, 메모리 셀(MC)은 메모리 셀(1474)에 한정되지 않고, 회로의 구성을 적절히 변경할 수 있다. 예를 들어 메모리 셀(MC)은 도 14의 (E)에 도시된 메모리 셀(1475)과 같이, 트랜지스터(T2)의 백 게이트가 배선(BGL)이 아니라 배선(WOL)과 접속되는 구성으로 하여도 좋다. 또한, 예를 들어 메모리 셀(MC)은 도 14의 (F)에 도시된 메모리 셀(1476)과 같이, 싱글 게이트 구조의 트랜지스터, 즉, 백 게이트를 가지지 않는 트랜지스터(T2)로 구성된 메모리 셀로 하여도 좋다. 또한, 예를 들어 메모리 셀(MC)은 도 14의 (G)에 도시된 메모리 셀(1477)과 같이, 배선(WBL)과 배선(RBL)을 하나의 배선(BIL)으로서 합친 구성이어도 좋다.
상기 실시형태에 나타낸 반도체 장치를 메모리 셀(1474) 등에 사용하는 경우, 트랜지스터(T2)로서 트랜지스터(41)를 사용하고, 트랜지스터(T3)로서 트랜지스터(42)를 사용하고, 용량 소자(CB)로서 용량 소자(43)를 사용할 수 있다. 트랜지스터(T2)로서 OS 트랜지스터를 사용함으로써 트랜지스터(T2)의 누설 전류를 매우 낮게 할 수 있다. 이로써, 기록된 데이터를 트랜지스터(T2)에 의하여 장시간 유지할 수 있어, 메모리 셀의 리프레시 빈도를 적게 할 수 있다. 또한, 메모리 셀의 리프레시 동작을 불필요하게 할 수 있다. 또한, 누설 전류가 매우 낮기 때문에 메모리 셀(1474)에 멀티레벨 데이터 또는 아날로그 데이터를 유지할 수 있다. 메모리 셀(1475) 내지 메모리 셀(1477)도 마찬가지이다.
또한, 트랜지스터(T3)는 Si 트랜지스터이어도 좋다. Si 트랜지스터의 도전형은 n채널형으로 하여도 좋고, p채널형으로 하여도 좋다. Si 트랜지스터는 OS 트랜지스터보다 전계 효과 이동도가 더 높아지는 경우가 있다. 따라서, 판독 트랜지스터로서 기능하는 트랜지스터(T3)로서 Si 트랜지스터를 사용하여도 좋다. 또한, 트랜지스터(T3)에 Si 트랜지스터를 사용함으로써 트랜지스터(T3) 위에 적층하여 트랜지스터(T2)를 제공할 수 있어, 메모리 셀의 점유 면적을 저감시키고, 기억 장치의 고집적화를 도모할 수 있다.
또한, 트랜지스터(T3)는 OS 트랜지스터이어도 좋다. 트랜지스터(T2, M3)에 OS 트랜지스터를 사용한 경우, 메모리 셀(1474) 내지 메모리 셀(1477)을 n형 트랜지스터만을 사용하여 구성할 수 있다.
또한, 도 14의 (H)에 3트랜지스터 1용량 소자의 게인 셀형 메모리 셀의 일례를 도시하였다. 도 14의 (H)에 도시된 메모리 셀(1478)은 트랜지스터(T4 내지 T6) 및 용량 소자(CC)를 가진다. 용량 소자(CC)는 적절히 제공된다. 메모리 셀(1478)은 배선(BIL, RWL, WWL, BGL, 및 GNDL)에 전기적으로 접속된다. 배선(GNDL)은 저레벨 전위를 인가하는 배선이다. 또한, 메모리 셀(1478)을 배선(BIL) 대신에 배선(RBL, WBL)에 전기적으로 접속하여도 좋다.
트랜지스터(T4)는 백 게이트를 가지는 OS 트랜지스터이고, 백 게이트는 배선(BGL)에 전기적으로 접속된다. 또한, 트랜지스터(T4)의 백 게이트와 게이트를 서로 전기적으로 접속하여도 좋다. 또는 트랜지스터(T4)는 백 게이트를 가지지 않아도 된다.
또한, 트랜지스터(T5), 트랜지스터(T6)는 각각 n채널형 Si 트랜지스터 또는 p채널형 Si 트랜지스터이어도 좋다. 또는 트랜지스터(T4) 내지 트랜지스터(T6)는 OS 트랜지스터이어도 좋고, 이 경우, 메모리 셀(1478)을 n형 트랜지스터만을 사용하여 구성할 수 있다.
또한, 본 실시형태에 나타낸 메모리 셀(1471) 내지 메모리 셀(1478) 등의 구성은 상기에 한정되지 않는다. 이들 회로 및 상기 회로에 접속되는 배선, 회로 소자 등의 배치 또는 기능은 필요에 따라 변경, 삭제, 또는 추가되어도 좋다.
본 실시형태는 다른 실시형태 등에 기재된 구성과 적절히 조합하여 실시할 수 있다.
본 실시형태는 다른 실시형태의 일부 또는 전체를 변경, 추가, 수정, 삭제, 응용, 상위 개념화, 또는 하위 개념화한 것에 상당한다. 따라서 본 실시형태의 일부 또는 전체에 대하여, 다른 실시형태의 일부 또는 전체와 자유로이 조합 또는 치환하여 실시할 수 있다.
(실시형태 4)
본 실시형태에서는, 도 15를 사용하여 본 발명의 반도체 장치가 실장된 칩(1200)의 일례를 나타낸다. 칩(1200)에는, 복수의 회로(시스템)가 실장된다. 이와 같이, 복수의 회로(시스템)를 하나의 칩에 집적하는 기술을 시스템 온 칩(System on Chip: SoC)이라고 부르는 경우가 있다.
도 15의 (A)에 도시된 바와 같이, 칩(1200)은 CPU(Central Processing Unit)(1211), GPU(Graphics Processing Unit)(1212), 또는 아날로그 연산부(1213), 메모리 컨트롤러(1214), 인터페이스(1215), 또는 네트워크 회로(1216) 등을 가진다. GPU는 신경망을 가지는 것이 바람직하다.
칩(1200)에는 범프(도시하지 않았음)가 제공되고, 도 15의 (B)에 도시된 바와 같이, 프린트 기판(Printed Circuit Board: PCB)(1201)의 제 1 면과 접속된다. 또한, PCB(1201)의 제 1 면의 뒷면에는 복수의 범프(1202)가 제공되고, 머더보드(1203)와 접속한다.
머더보드(1203)에는 DRAM(1221), 플래시 메모리(1222) 등의 기억 장치가 제공되어도 좋다. 예를 들어, DRAM(1221)에 상기 실시형태에 나타낸 DOSRAM을 사용할 수 있다. 또한, 예를 들어 플래시 메모리(1222)에 상기 실시형태에 나타낸 NOSRAM을 사용할 수 있다.
CPU(1211)는 복수의 CPU 코어를 가지는 것이 바람직하다. 또한, GPU(1212)는 복수의 GPU 코어를 가지는 것이 바람직하다. 또한, CPU(1211) 및 GPU(1212)는 각각 일시적으로 데이터를 저장하는 메모리를 가져도 좋다. 또는, CPU(1211) 및 GPU(1212)에 공통된 메모리가, 칩(1200)에 제공되어도 좋다. 상기 메모리에는 상술한 NOSRAM이나 DOSRAM을 사용할 수 있다. 또한, GPU(1212)는 다수의 데이터의 병렬 계산에 적합하고, 화상 처리나 적화 연산에 사용할 수 있다. GPU(1212)에 본 발명의 산화물 반도체를 사용한 화상 처리 회로나 적화 연산 회로를 제공함으로써, 화상 처리 및 적화 연산을 저소비전력으로 실행할 수 있게 된다.
또한, CPU(1211) 및 GPU(1212)가 동일 칩에 제공됨으로써 CPU(1211) 및 GPU(1212) 사이의 배선을 짧게 할 수 있고, CPU(1211)로부터 GPU(1212)에 대한 데이터 전송(轉送), CPU(1211) 및 GPU(1212)가 가지는 메모리 사이의 데이터 전송, 및 GPU(1212)에서의 연산 후에, GPU(1212)로부터 CPU(1211)에 대한 연산 결과의 전송을 고속으로 수행할 수 있다.
아날로그 연산부(1213)는 A/D(아날로그/디지털) 변환 회로 및 D/A(디지털/아날로그) 변환 회로 중 하나 또는 양쪽을 가진다. 또한, 아날로그 연산부(1213)에 상기 적화 연산 회로를 제공하여도 좋다.
메모리 컨트롤러(1214)는 DRAM(1221)의 컨트롤러로서 기능하는 회로, 및 플래시 메모리(1222)의 인터페이스로서 기능하는 회로를 가진다.
인터페이스(1215)는 표시 장치, 스피커, 마이크로폰, 카메라, 컨트롤러 등의 외부 접속 기기와의 인터페이스 회로를 가진다. 컨트롤러란, 마우스, 키보드, 게임용 컨트롤러 등을 포함한다. 이와 같은 인터페이스로서 USB(Universal Serial Bus), HDMI(등록 상표)(High-Definition Multimedia Interface) 등을 사용할 수 있다.
네트워크 회로(1216)는 LAN(Local Area Network) 등의 네트워크 회로를 가진다. 또한, 네트워크 보안용의 회로를 가져도 좋다.
칩(1200)에는 상기 회로(시스템)를 동일한 제조 프로세스로 형성할 수 있다. 그러므로, 칩(1200)에 필요한 회로의 개수가 증가되어도 제조 프로세스를 증가시킬 필요가 없어, 칩(1200)을 적은 비용으로 제작할 수 있다.
GPU(1212)를 가지는 칩(1200)이 제공된 PCB(1201), DRAM(1221), 및 플래시 메모리(1222)가 제공된 머더보드(1203)는 GPU 모듈(1204)이라고 부를 수 있다.
GPU 모듈(1204)은 SoC 기술을 사용한 칩(1200)을 가지기 때문에, 그 크기를 작게 할 수 있다. 또한, 화상 처리가 우수하기 때문에, 스마트폰, 태블릿 단말, 랩톱형 PC, 휴대형(들고 나갈 수 있는) 게임기 등의 휴대형 전자 기기에 사용하는 것이 적합하다. 또한, GPU(1212)를 사용한 적화 연산 회로에 의하여 심층 신경망(DNN), 컨볼루셔널 신경망(CNN), 순환 신경망(RNN), 자기 부호화기, 심층 볼츠만 머신(DBM), 심층 신뢰 신경망(DBN) 등의 연산을 실행할 수 있기 때문에, 칩(1200)을 AI칩 또는 GPU 모듈(1204)을 AI 시스템 모듈로서 사용할 수 있다.
본 실시형태에 나타낸 구성은 다른 실시형태에 나타내는 구성과 적절히 조합하여 사용할 수 있다.
(실시형태 5)
본 실시형태에서는, 상기 실시형태에 나타낸 반도체 장치를 사용한 기억 장치의 응용예에 대하여 설명한다. 상기 실시형태에 나타낸 반도체 장치는, 예를 들어 각종 전자 기기(예를 들어, 정보 단말, 컴퓨터, 스마트폰, 전자책 단말, 디지털 카메라(비디오 카메라도 포함함), 녹화 재생 장치, 내비게이션 시스템 등)의 기억 장치에 적용할 수 있다. 또한, 여기서, 컴퓨터란, 태블릿형 컴퓨터나, 노트북형 컴퓨터나, 데스크톱형 컴퓨터 외에, 서버 시스템과 같은 대형 컴퓨터를 포함하는 것이다. 또는, 상기 실시형태에 나타낸 반도체 장치는, 메모리 카드(예를 들어, SD 카드), USB 메모리, SSD(solid state drive) 등의 각종 리무버블 기억 장치에 적용된다. 도 16에 리무버블 기억 장치의 여러 구성예를 모식적으로 도시하였다. 예를 들어, 상기 실시형태에 나타낸 반도체 장치는 패키징된 메모리 칩으로 가공되고, 다양한 기억 장치, 리무버블 메모리에 사용된다.
도 16의 (A)는 USB 메모리의 모식도이다. USB 메모리(1100)는 하우징(1101), 캡(1102), USB 커넥터(1103), 및 기판(1104)을 가진다. 기판(1104)은 하우징(1101)에 수납되어 있다. 예를 들어, 기판(1104)에는 메모리 칩(1105), 컨트롤러 칩(1106)이 장착되어 있다. 기판(1104)의 메모리 칩(1105) 등에 상기 실시형태에 나타낸 반도체 장치를 제공할 수 있다.
도 16의 (B)는 SD 카드의 외관의 모식도이고, 도 16의 (C)는 SD 카드의 내부 구조의 모식도이다. SD 카드(1110)는 하우징(1111), 커넥터(1112), 및 기판(1113)을 가진다. 기판(1113)은 하우징(1111)에 수납되어 있다. 예를 들어, 기판(1113)에는 메모리 칩(1114), 컨트롤러 칩(1115)이 장착되어 있다. 기판(1113)의 뒷면 측에도 메모리 칩(1114)을 제공함으로써, SD 카드(1110)의 용량을 증가시킬 수 있다. 또한, 무선 통신 기능을 구비한 무선 칩을 기판(1113)에 제공하여도 좋다. 이로써, 호스트 장치와 SD 카드(1110) 사이의 무선 통신에 의하여 메모리 칩(1114)의 데이터의 판독, 기록이 가능해진다. 기판(1113)의 메모리 칩(1114) 등에 상기 실시형태에 나타낸 반도체 장치를 제공할 수 있다.
도 16의 (D)는 SSD의 외관의 모식도이고, 도 16의 (E)는 SSD의 내부 구조의 모식도이다. SSD(1150)는 하우징(1151), 커넥터(1152), 및 기판(1153)을 가진다. 기판(1153)은 하우징(1151)에 수납되어 있다. 예를 들어, 기판(1153)에는 메모리 칩(1154), 메모리 칩(1155), 컨트롤러 칩(1156)이 장착되어 있다. 메모리 칩(1155)은 컨트롤러 칩(1156)의 워크 메모리이며, 예를 들어 DOSRAM 칩을 사용하면 좋다. 기판(1153)의 뒷면 측에도 메모리 칩(1154)을 제공함으로써, SSD(1150)의 용량을 증가시킬 수 있다. 기판(1153)의 메모리 칩(1154) 등에 상기 실시형태에 나타낸 반도체 장치를 제공할 수 있다.
본 실시형태는 다른 실시형태 등에 기재된 구성과 적절히 조합하여 실시할 수 있다.
(실시형태 6)
<전자 기기>
본 발명의 일 형태에 따른 반도체 장치는 다양한 전자 기기에 사용할 수 있다. 도 17에 본 발명의 일 형태에 따른 반도체 장치를 사용한 전자 기기의 구체적인 예를 도시하였다.
도 17의 (A)에 모니터(830)를 도시하였다. 모니터(830)는, 표시부(831), 하우징(832), 스피커(833) 등을 가진다. 또한, LED 램프, 조작 키(전원 스위치 또는 조작 스위치를 포함함), 접속 단자, 각종 센서, 마이크로폰 등을 가질 수 있다. 또한, 모니터(830)는 리모트 컨트롤러(834)에 의하여 조작할 수 있다.
또한, 모니터(830)는 방송 전파를 수신하여 텔레비전 장치로서 기능할 수 있다.
모니터(830)가 수신할 수 있는 방송 전파로서는, 지상파 또는 위성으로부터 송신되는 전파 등을 들 수 있다. 또한 방송 전파로서, 아날로그 방송, 디지털 방송 등이 있고, 또한 영상 및 음성, 또는 음성만의 방송 등이 있다. 예를 들어 UHF대(300MHz 이상 3GHz 이하) 및 VHF대(30MHz 이상 300MHz 이하) 중 특정 주파수 대역에서 송신되는 방송 전파를 수신할 수 있다. 또한, 예를 들어 복수의 주파수 대역에서 수신한 복수의 데이터를 사용함으로써, 전송 레이트를 높일 수 있어, 더 많은 정보를 얻을 수 있다. 이에 의하여, 풀 하이비전을 넘는 해상도를 가지는 영상을 표시부(831)에 표시시킬 수 있다. 예를 들어, 4K-2K, 8K-4K, 16K-8K, 또는 그 이상의 해상도를 가지는 영상을 표시시킬 수 있다.
또한, 인터넷이나 LAN(Local Area Network), Wi-Fi(등록 상표) 등의 컴퓨터 네트워크를 통한 데이터 전송 기술에 의하여 송신된 방송 데이터를 사용하여, 표시부(831)에 표시하는 화상을 생성하는 구성으로 하여도 좋다. 이때, 모니터(830)에 튜너를 가지지 않아도 된다.
또한, 모니터(830)는 컴퓨터와 접속되고, 컴퓨터용 모니터로서 사용할 수 있다. 또한, 컴퓨터와 접속된 모니터(830)는 복수의 사람이 동시에 열람할 수 있으므로 회의 시스템에 사용할 수 있다. 또한, 네트워크를 통한 컴퓨터의 정보 표시나, 모니터(830) 자체의 네트워크로의 접속에 의하여 모니터(830)를 영상 회의 시스템에 사용할 수 있다.
또한, 모니터(830)는 디지털 사이니지로서 사용할 수도 있다.
예를 들어, 본 발명의 일 형태의 반도체 장치를 표시부의 구동 회로나 화상 처리부에 사용할 수 있다. 본 발명의 일 형태의 반도체 장치를 표시부의 구동 회로나 화상 처리부에 사용함으로써, 고속 동작이나 신호 처리를 저소비전력으로 실현할 수 있다.
또한, 본 발명의 일 형태의 반도체 장치를 사용한 AI 시스템을 모니터(830)의 화상 처리부에 사용함으로써, 노이즈 제거 처리, 계조 변환 처리, 색조 보정 처리, 휘도 보정 처리 등의 화상 처리를 수행할 수 있다. 또한 해상도의 업 컨버트에 따른 화소 간 보간 처리나, 프레임 주파수의 업 컨버트에 따른 프레임 간 보간 처리 등을 실행할 수 있다. 또한, 계조 변환 처리는 화상의 계조 수를 변환할 뿐만 아니라, 계조 수를 크게 하는 경우의 계조값의 보간을 수행할 수 있다. 또한, 다이내믹 레인지를 넓히는 하이 다이내믹 레인지(HDR) 처리도 계조 변환 처리에 포함된다.
도 17의 (B)에 도시된 비디오 카메라(2940)는 하우징(2941), 하우징(2942), 표시부(2943), 조작 스위치(2944), 렌즈(2945), 및 접속부(2946) 등을 가진다. 조작 스위치(2944) 및 렌즈(2945)는 하우징(2941)에 제공되어 있고, 표시부(2943)는 하우징(2942)에 제공되어 있다. 또한, 비디오 카메라(2940)는 하우징(2941)의 내측에 안테나, 배터리 등을 구비한다. 그리고, 하우징(2941)과 하우징(2942)은 접속부(2946)에 의하여 접속되어 있고, 하우징(2941)과 하우징(2942) 사이의 각도는 접속부(2946)에 의하여 변경할 수 있는 구조가 되어 있다. 하우징(2941)에 대한 하우징(2942)의 각도에 따라, 표시부(2943)에 표시되는 화상의 방향의 변경이나, 화상의 표시/비(非)표시의 전환을 수행할 수 있다.
예를 들어, 본 발명의 일 형태의 반도체 장치를 표시부의 구동 회로나 화상 처리부에 사용할 수 있다. 본 발명의 일 형태의 반도체 장치를 표시부의 구동 회로나 화상 처리부에 사용함으로써, 고속 동작이나 신호 처리를 저소비전력으로 실현할 수 있다.
또한, 본 발명의 일 형태의 반도체 장치를 사용한 AI 시스템을 비디오 카메라(2940)의 화상 처리부에 사용함으로써, 비디오 카메라(2940) 주위의 환경에 응한 촬영을 실현할 수 있다. 구체적으로는, 주위의 밝기에 따라 최적의 노출로 촬영할 수 있다. 또한, 역광에서의 촬영이나 옥내와 옥외 등, 밝기가 상이한 상황을 동시에 촬영하는 경우에는, 하이 다이내믹 레인지(HDR) 촬영을 수행할 수 있다.
또한, AI 시스템은 촬영자의 버릇을 학습하고, 촬영의 보조를 수행할 수 있다. 구체적으로는 촬영자의 손떨림의 버릇을 학습하고, 촬영 중의 손떨림을 보정함으로써, 촬영된 화상에는 손떨림으로 인한 화상의 흔들림이 가능한 한 포함되지 않도록 할 수 있다. 또한, 촬영 중에 줌 기능을 사용하는 경우에는 피사체가 늘 화상의 중심으로 촬영되도록 렌즈의 방향 등을 제어할 수 있다.
도 17의 (C)에 도시된 정보 단말(2910)은 하우징(2911), 표시부(2912), 마이크로폰(2917), 스피커부(2914), 카메라(2913), 외부 접속부(2916), 및 조작 스위치(2915) 등을 가진다. 표시부(2912)에는 가요성 기판이 사용된 표시 패널 및 터치스크린을 구비한다. 또한, 정보 단말(2910)은 하우징(2911)의 내측에 안테나, 배터리 등을 구비한다. 정보 단말(2910)은, 예를 들어 스마트폰, 휴대 전화, 태블릿형 정보 단말, 태블릿형 퍼스널 컴퓨터, 전자책 단말 등으로서 사용할 수 있다.
예를 들어, 본 발명의 일 형태의 반도체 장치를 사용한 기억 장치는 상술한 정보 단말(2910)의 제어 정보나, 제어 프로그램 등을 장기간 유지할 수 있다.
또한, 본 발명의 일 형태의 반도체 장치를 사용한 AI 시스템을 정보 단말(2910)의 화상 처리부에 사용함으로써, 노이즈 제거 처리, 계조 변환 처리, 색조 보정 처리, 휘도 보정 처리 등의 화상 처리를 수행할 수 있다. 또한 해상도의 업 컨버트에 따른 화소 간 보간 처리나, 프레임 주파수의 업 컨버트에 따른 프레임 간 보간 처리 등을 실행할 수 있다. 또한, 계조 변환 처리는 화상의 계조 수를 변환할 뿐만 아니라, 계조 수를 크게 하는 경우의 계조값의 보간을 수행할 수 있다. 또한, 다이내믹 레인지를 넓히는 하이 다이내믹 레인지(HDR) 처리도 계조 변환 처리에 포함된다.
또한, AI 시스템은 사용자의 버릇을 학습하고, 정보 단말(2910)의 조작의 보조를 수행할 수 있다. AI 시스템을 탑재한 정보 단말(2910)은 사용자의 손가락의 움직임이나 시선 등으로부터 터치 입력을 예측할 수 있다.
도 17의 (D)에 도시된 랩톱형 퍼스널 컴퓨터(2920)는 하우징(2921), 표시부(2922), 키보드(2923), 및 포인팅 디바이스(2924) 등을 가진다. 또한, 랩톱형 퍼스널 컴퓨터(2920)는 하우징(2921)의 내측에 안테나, 배터리 등을 구비한다.
예를 들어, 본 발명의 일 형태의 반도체 장치를 사용한 기억 장치는 랩톱형 퍼스널 컴퓨터(2920)의 제어 정보나, 제어 프로그램 등을 장기간 유지할 수 있다.
또한, 본 발명의 일 형태의 반도체 장치를 사용한 AI 시스템을 랩톱형 퍼스널 컴퓨터(2920)의 화상 처리부에 사용함으로써 노이즈 제거 처리, 계조 변환 처리, 색조 보정 처리, 휘도 보정 처리 등의 화상 처리를 수행할 수 있다. 또한 해상도의 업 컨버트에 따른 화소 간 보간 처리나, 프레임 주파수의 업 컨버트에 따른 프레임 간 보간 처리 등을 실행할 수 있다. 또한, 계조 변환 처리는 화상의 계조 수를 변환할 뿐만 아니라, 계조 수를 크게 하는 경우의 계조값의 보간을 수행할 수 있다. 또한, 다이내믹 레인지를 넓히는 하이 다이내믹 레인지(HDR) 처리도 계조 변환 처리에 포함된다.
또한 AI 시스템은 사용자의 버릇을 학습하고 랩톱형 퍼스널 컴퓨터(2920)의 조작의 보조를 수행할 수 있다. AI 시스템을 탑재한 랩톱형 퍼스널 컴퓨터(2920)는, 사용자의 손가락의 움직임이나 시선 등으로부터 표시부(2922)에 대한 터치 입력을 예측할 수 있다. 또한, 텍스트의 입력에서는 과거의 텍스트 입력 정보나, 앞뒤의 텍스트나, 사진 등의 도면으로부터 입력을 예측하여 변환의 보조를 수행한다. 따라서 입력 실수나 변환 실수를 가능한 한 저감할 수 있다.
도 17의 (E)는 자동차의 일례를 도시한 외관도이고, 도 17의 (F)는 내비게이션 장치(860)를 도시한 것이다. 자동차(2980)는 차체(2981), 차륜(2982), 대시보드(2983), 및 라이트(2984) 등을 가진다. 또한, 자동차(2980)는 안테나, 배터리 등을 구비한다. 내비게이션 장치(860)는 표시부(861), 조작 버튼(862), 및 외부 입력 단자(863)를 구비한다. 자동차(2980)와 내비게이션 장치(860)는 각각 독립되어 있어도 좋지만, 내비게이션 장치(860)가 자동차(2980)에 제공되고, 연동하여 기능하는 구성으로 하는 것이 바람직하다.
예를 들어, 본 발명의 일 형태의 반도체 장치를 사용한 기억 장치는, 자동차(2980)나 내비게이션 장치(860)의 제어 정보나, 제어 프로그램 등을 장기간 유지할 수 있다. 또한, 본 발명의 일 형태의 반도체 장치를 사용한 AI 시스템을 자동차(2980)의 제어 장치 등에 사용함으로써, AI 시스템은 운전자의 운전 기술이나 버릇을 학습하고, 안전 운전의 보조나, 가솔린이나 배터리 등의 연료를 효율적으로 이용하는 운전의 보조를 수행할 수 있다. 안전 운전의 보조로서는, 운전자의 운전 기술이나 버릇을 학습할 뿐만 아니라, 자동차(2980)의 속도나 이동 방법 등의 자동차의 거동, 내비게이션 장치(860)에 저장된 도로 정보 등을 복합적으로 학습하여, 주행 중의 차선으로부터의 이탈 방지나, 다른 자동차, 보행자, 구조체 등과의 충돌 회피를 실현할 수 있다. 구체적으로는, 진행 방향에 급커브가 존재하는 경우, 내비게이션 장치(860)는 그 도로 정보를 자동차(2980)로 송신하여 자동차(2980)의 속도 제어나 핸들 조작의 보조를 수행할 수 있다.
본 실시형태는 다른 실시형태 등에 기재된 구성과 적절히 조합하여 실시할 수 있다.
(실시형태 7)
본 실시형태에서는, 상기 실시형태에서 설명한 GPU 또는 컴퓨터에 사용할 수 있는 반도체 장치, 및 상기 반도체 장치에 사용할 수 있는 OS 트랜지스터의 구성예에 대하여 설명한다.
<반도체 장치의 구성예>
도 18에 도시된 반도체 장치는, 트랜지스터(300), 트랜지스터(200), 및 용량 소자(100)를 가진다. 도 19의 (A)는 트랜지스터(200)의 채널 길이 방향의 단면도이고, 도 19의 (B)는 트랜지스터(200)의 채널 폭 방향의 단면도이고, 도 19의 (C)는 트랜지스터(300)의 채널 폭 방향의 단면도이다.
트랜지스터(200)는 산화물 반도체를 가지는 반도체층에 채널이 형성되는 트랜지스터이다. 트랜지스터(200)는 오프 전류가 작기 때문에, 이를 반도체 장치에 사용함으로써 장기간에 걸쳐 기억 내용을 유지할 수 있다. 즉, 리프레시 동작을 필요로 하지 않거나, 또는 리프레시 동작의 빈도가 매우 적기 때문에, 반도체 장치의 소비전력을 충분히 저감할 수 있다.
도 18에 도시된 반도체 장치에서, 배선(1001)은 트랜지스터(300)의 소스 및 드레인 중 한쪽과 접속되고, 배선(1002)은 트랜지스터(300)의 소스 및 드레인 중 다른 쪽과 접속되어 있다. 또한, 배선(1003)은 트랜지스터(200)의 소스 및 드레인 중 한쪽과 접속되고, 배선(1004)은 트랜지스터(200)의 톱 게이트와 접속되고, 배선(1006)은 트랜지스터(200)의 보텀 게이트와 접속되어 있다. 그리고, 트랜지스터(300)의 게이트 및 트랜지스터(200)의 소스 및 드레인 중 다른 쪽은 용량 소자(100)의 전극 중 한쪽과 접속되고, 배선(1005)은 용량 소자(100)의 전극 중 다른 쪽과 접속되어 있다.
여기서, 실시형태 3에 나타낸 메모리 셀에, 본 실시형태에 나타내는 반도체 장치를 사용하는 경우, 트랜지스터(T2)는 트랜지스터(200)에, 트랜지스터(T3)는 트랜지스터(300)에, 용량 소자(CB)는 용량 소자(100)에 대응한다. 또한, 배선(SL)은 배선(1001)에, 배선(RBL)은 배선(1002)에, 배선(WBL)은 배선(1003)에, 배선(WOL)은 배선(1004)에, 배선(CAL)은 배선(1005)에, 배선(BGL)은 배선(1006)에 대응한다.
또한 실시형태 2에 나타낸 연산 회로에, 본 실시형태에 나타내는 반도체 장치를 사용하는 경우, 일례로서 트랜지스터(42)는 트랜지스터(300)에, 트랜지스터(41)는 트랜지스터(200)에, 용량 소자(43)는 용량 소자(100)에 대응한다.
또한 메모리 셀과 연산 회로의 양쪽에, 본 실시형태에 나타내는 반도체 장치를 사용하는 경우, 트랜지스터(T3)와 트랜지스터(42), 트랜지스터(T2)와 트랜지스터(41), 용량 소자(CB)와 용량 소자(43)는, 각각 동일한 공정에서 형성할 수 있다. 이에 의하여, 제조 공정을 간략화하여, 비용을 삭감할 수 있다.
본 발명의 일 형태의 반도체 장치는, 도 18에 도시된 바와 같이 트랜지스터(300), 트랜지스터(200), 용량 소자(100)를 가진다. 트랜지스터(200)는 트랜지스터(300)의 위쪽에 제공되고, 용량 소자(100)는 트랜지스터(300) 및 트랜지스터(200)의 위쪽에 제공되어 있다.
트랜지스터(300)는 기판(311) 위에 제공되고, 도전체(316), 절연체(315), 기판(311)의 일부로 이루어지는 반도체 영역(313), 및 소스 영역 또는 드레인 영역으로서 기능하는 저저항 영역(314a) 및 저저항 영역(314b)을 가진다.
트랜지스터(300)는, 도 19의 (C)에 도시된 바와 같이 반도체 영역(313)의 상면 및 채널 폭 방향의 측면이 절연체(315)를 개재(介在)하여 도전체(316)로 덮여 있다. 이와 같이, 트랜지스터(300)를 Fin형으로 함으로써, 실효상의 채널 폭이 증대되는 것에 의하여 트랜지스터(300)의 온 특성을 향상시킬 수 있다. 또한, 게이트 전극의 전계의 기여를 높일 수 있기 때문에, 트랜지스터(300)의 오프 특성을 향상시킬 수 있다.
또한 트랜지스터(300)는 p채널형 및 n채널형 중 어느 것이어도 좋다.
반도체 영역(313)의 채널이 형성되는 영역, 그 근방의 영역, 소스 영역 또는 드레인 영역이 되는 저저항 영역(314a) 및 저저항 영역(314b) 등에서 실리콘계 반도체 등의 반도체를 포함하는 것이 바람직하고, 단결정 실리콘을 포함하는 것이 바람직하다. 또는, Ge(저마늄), SiGe(실리콘 저마늄), GaAs(갈륨 비소), GaAlAs(갈륨 알루미늄 비소) 등을 가지는 재료로 형성하여도 좋다. 결정 격자에 응력을 가하여, 격자 간격을 변화시킴으로써 유효 질량을 제어한 실리콘을 사용한 구성으로 하여도 좋다. 또는 GaAs와 GaAlAs 등을 사용함으로써, 트랜지스터(300)를 HEMT(High Electron Mobility Transistor)로 하여도 좋다.
저저항 영역(314a) 및 저저항 영역(314b)은 반도체 영역(313)에 적용되는 반도체 재료에 더하여 비소, 인 등의 n형 도전성을 부여하는 원소 또는 붕소 등의 p형 도전성을 부여하는 원소를 포함한다.
게이트 전극으로서 기능하는 도전체(316)는 비소, 인 등의 n형 도전성을 부여하는 원소, 또는 붕소 등의 p형 도전성을 부여하는 원소를 포함하는 실리콘 등의 반도체 재료, 금속 재료, 합금 재료, 또는 금속 산화물 재료 등의 도전성 재료를 사용할 수 있다.
또한, 도전체의 재료에 따라 일함수가 결정되기 때문에, 도전체의 재료를 변경함으로써 트랜지스터의 Vth를 조정할 수 있다. 구체적으로는, 도전체에 질화 타이타늄이나 질화 탄탈럼 등의 재료를 사용하는 것이 바람직하다. 또한 도전성과 매립성을 양립하기 위하여 도전체에 텅스텐이나 알루미늄 등의 금속 재료를 적층으로 사용하는 것이 바람직하고, 특히 텅스텐을 사용하는 것이 내열성의 관점에서 바람직하다.
또한, 도 18에 도시된 트랜지스터(300)는 일례이며, 그 구조에 한정되지 않고, 회로 구성이나 구동 방법에 따라 적절한 트랜지스터를 사용하면 좋다. 예를 들어, 트랜지스터(200)와 마찬가지로 트랜지스터(300)에 산화물 반도체를 사용하는 구성으로 하여도 좋다.
트랜지스터(300)를 덮어 절연체(320), 절연체(322), 절연체(324), 및 절연체(326)가 순차적으로 적층되어 제공되어 있다.
절연체(320), 절연체(322), 절연체(324), 및 절연체(326)로서, 예를 들어 산화 실리콘, 산화질화 실리콘, 질화산화 실리콘, 질화 실리콘, 산화 알루미늄, 산화질화 알루미늄, 질화산화 알루미늄, 질화 알루미늄 등을 사용하면 좋다.
절연체(322)는, 그 아래쪽에 제공되는 트랜지스터(300) 등으로 인하여 생기는 단차를 평탄화하는 평탄화막으로서 기능한다. 예를 들어, 절연체(322)의 상면은 평탄성을 높이기 위하여 화학 기계 연마(CMP)법 등을 사용한 평탄화 처리에 의하여 평탄화되어 있어도 좋다.
또한, 절연체(324)에는 기판(311) 또는 트랜지스터(300) 등으로부터 트랜지스터(200)가 제공되는 영역으로 수소나 불순물이 확산되지 않도록 하는 배리어성을 가지는 막을 사용하는 것이 바람직하다.
수소에 대한 배리어성을 가지는 막의 일례로서, 예를 들어 CVD법으로 형성한 질화 실리콘을 사용할 수 있다. 여기서, 트랜지스터(200) 등의 산화물 반도체를 가지는 반도체 소자로 수소가 확산됨으로써 상기 반도체 소자의 특성이 저하하는 경우가 있다. 따라서, 트랜지스터(200)와 트랜지스터(300) 사이에 수소의 확산을 억제하는 막을 사용하는 것이 바람직하다. 수소의 확산을 억제하는 막이란, 구체적으로는 수소의 이탈량이 적은 막이다.
수소의 이탈량은 예를 들어, 승온 이탈 가스 분석법(TDS(Thermal Desorption Spectroscopy)) 등을 사용하여 분석할 수 있다. 예를 들어, 절연체(324)의 수소의 이탈량은 TDS 분석에서 막의 표면 온도가 50℃ 내지 500℃의 범위에서 수소 원자로 환산한 이탈량이 절연체(324)의 면적당으로 환산하여, 10Х1015atoms/cm2 이하, 바람직하게는 5Х1015atoms/cm2 이하이면 좋다.
또한, 절연체(326)는 절연체(324)보다 유전율이 낮은 것이 바람직하다. 예를 들어, 절연체(326)의 비유전율은 4 미만이 바람직하고, 3 미만이 더 바람직하다. 또한, 예를 들어 절연체(326)의 비유전율은 절연체(324)의 비유전율의 0.7배 이하가 바람직하고, 0.6배 이하가 더 바람직하다. 유전율이 낮은 재료를 층간막으로 함으로써, 배선 사이에 생기는 기생 용량을 저감할 수 있다.
또한, 절연체(320), 절연체(322), 절연체(324), 및 절연체(326)에는 용량 소자(100) 또는 트랜지스터(200)와 접속되는 도전체(328) 및 도전체(330) 등이 매립되어 있다. 또한, 도전체(328) 및 도전체(330)는 플러그 또는 배선으로서 기능한다. 또한, 플러그 또는 배선으로서 기능하는 도전체에는 복수의 구조를 합쳐 동일한 부호를 부여하는 경우가 있다. 또한 본 명세서 등에서, 배선과, 배선과 접속되는 플러그가 일체물이어도 좋다. 즉, 도전체의 일부가 배선으로서 기능하는 경우 및 도전체의 일부가 플러그로서 기능하는 경우도 있다.
각 플러그 및 배선(도전체(328) 및 도전체(330) 등)의 재료로서는, 금속 재료, 합금 재료, 금속 질화물 재료, 또는 금속 산화물 재료 등의 도전성 재료를 단층 또는 적층으로 사용할 수 있다. 내열성과 도전성을 양립하는 텅스텐이나 몰리브데넘 등의 고융점 재료를 사용하는 것이 바람직하고, 텅스텐을 사용하는 것이 바람직하다. 또는, 알루미늄이나 구리 등의 저저항 도전성 재료로 형성하는 것이 바람직하다. 저저항 도전성 재료를 사용함으로써 배선 저항을 낮출 수 있다.
절연체(326) 및 도전체(330) 위에 배선층을 제공하여도 좋다. 예를 들어, 도 18에서, 절연체(350), 절연체(352), 및 절연체(354)가 순차적으로 적층되어 제공되어 있다. 또한, 절연체(350), 절연체(352), 및 절연체(354)에는 도전체(356)가 형성되어 있다. 도전체(356)는 트랜지스터(300)와 접속되는 플러그 또는 배선으로서 기능한다. 또한 도전체(356)는 도전체(328) 및 도전체(330)와 같은 재료를 사용하여 제공할 수 있다.
또한, 예를 들어 절연체(350)에는, 절연체(324)와 마찬가지로 수소에 대한 배리어성을 가지는 절연체를 사용하는 것이 바람직하다. 또한, 도전체(356)는 수소에 대한 배리어성을 가지는 도전체를 포함하는 것이 바람직하다. 특히, 수소에 대한 배리어성을 가지는 절연체(350)가 가지는 개구부에 수소에 대한 배리어성을 가지는 도전체가 형성된다. 상기 구성에 의하여, 트랜지스터(300)와 트랜지스터(200)는 배리어층에 의하여 분리할 수 있어, 트랜지스터(300)로부터 트랜지스터(200)로의 수소의 확산을 억제할 수 있다.
또한, 수소에 대한 배리어성을 가지는 도전체로서는, 예를 들어 질화 탄탈럼 등을 사용하는 것이 좋다. 또한, 질화 탄탈럼과 도전성이 높은 텅스텐을 적층함으로써, 배선으로서의 도전성을 유지한 채, 트랜지스터(300)로부터의 수소의 확산을 억제할 수 있다. 이 경우, 수소에 대한 배리어성을 가지는 질화 탄탈럼층이, 수소에 대한 배리어성을 가지는 절연체(350)와 접하는 구조인 것이 바람직하다.
절연체(354) 및 도전체(356) 위에 배선층을 제공하여도 좋다. 예를 들어, 도 18에서, 절연체(360), 절연체(362), 및 절연체(364)가 순차적으로 적층되어 제공되어 있다. 또한, 절연체(360), 절연체(362), 및 절연체(364)에는 도전체(366)가 형성되어 있다. 도전체(366)는 플러그 또는 배선으로서 기능한다. 또한 도전체(366)는 도전체(328) 및 도전체(330)와 같은 재료를 사용하여 제공할 수 있다.
또한, 예를 들어 절연체(360)에는, 절연체(324)와 마찬가지로 수소에 대한 배리어성을 가지는 절연체를 사용하는 것이 바람직하다. 또한, 도전체(366)는 수소에 대한 배리어성을 가지는 도전체를 포함하는 것이 바람직하다. 특히, 수소에 대한 배리어성을 가지는 절연체(360)가 가지는 개구부에 수소에 대한 배리어성을 가지는 도전체가 형성된다. 상기 구성에 의하여, 트랜지스터(300)와 트랜지스터(200)는 배리어층에 의하여 분리할 수 있어, 트랜지스터(300)로부터 트랜지스터(200)로의 수소의 확산을 억제할 수 있다.
절연체(364) 및 도전체(366) 위에 배선층을 제공하여도 좋다. 예를 들어, 도 18에서, 절연체(370), 절연체(372), 및 절연체(374)가 순차적으로 적층되어 제공되어 있다. 또한, 절연체(370), 절연체(372), 및 절연체(374)에는 도전체(376)가 형성되어 있다. 도전체(376)는 플러그 또는 배선으로서 기능한다. 또한 도전체(376)는 도전체(328) 및 도전체(330)와 같은 재료를 사용하여 제공할 수 있다.
또한, 예를 들어 절연체(370)에는, 절연체(324)와 마찬가지로 수소에 대한 배리어성을 가지는 절연체를 사용하는 것이 바람직하다. 또한, 도전체(376)는 수소에 대한 배리어성을 가지는 도전체를 포함하는 것이 바람직하다. 특히, 수소에 대한 배리어성을 가지는 절연체(370)가 가지는 개구부에 수소에 대한 배리어성을 가지는 도전체가 형성된다. 상기 구성에 의하여, 트랜지스터(300)와 트랜지스터(200)는 배리어층에 의하여 분리할 수 있어, 트랜지스터(300)로부터 트랜지스터(200)로의 수소의 확산을 억제할 수 있다.
절연체(374) 및 도전체(376) 위에 배선층을 제공하여도 좋다. 예를 들어, 도 18에서, 절연체(380), 절연체(382), 및 절연체(384)가 순차적으로 적층되어 제공되어 있다. 또한, 절연체(380), 절연체(382), 및 절연체(384)에는 도전체(386)가 형성되어 있다. 도전체(386)는 플러그 또는 배선으로서 기능한다. 또한 도전체(386)는 도전체(328) 및 도전체(330)와 같은 재료를 사용하여 제공할 수 있다.
또한, 예를 들어 절연체(380)에는, 절연체(324)와 마찬가지로 수소에 대한 배리어성을 가지는 절연체를 사용하는 것이 바람직하다. 또한, 도전체(386)는 수소에 대한 배리어성을 가지는 도전체를 포함하는 것이 바람직하다. 특히, 수소에 대한 배리어성을 가지는 절연체(380)가 가지는 개구부에 수소에 대한 배리어성을 가지는 도전체가 형성된다. 상기 구성에 의하여, 트랜지스터(300)와 트랜지스터(200)는 배리어층에 의하여 분리할 수 있어, 트랜지스터(300)로부터 트랜지스터(200)로의 수소의 확산을 억제할 수 있다.
상기에서, 도전체(356)를 포함하는 배선층, 도전체(366)를 포함하는 배선층, 도전체(376)를 포함하는 배선층, 및 도전체(386)를 포함하는 배선층에 대하여 설명하였지만, 본 실시형태에 따른 반도체 장치는 이에 한정되는 것이 아니다. 도전체(356)를 포함하는 배선층과 같은 배선층을 3층 이하로 하여도 좋고, 도전체(356)를 포함하는 배선층과 같은 배선층을 5층 이상으로 하여도 좋다.
절연체(384) 위에는 절연체(210), 절연체(212), 절연체(214), 및 절연체(216)가 순차적으로 적층되어 제공되어 있다. 절연체(210), 절연체(212), 절연체(214), 및 절연체(216) 중 어느 것은 산소나 수소에 대하여 배리어성이 있는 물질을 사용하는 것이 바람직하다.
예를 들어, 절연체(210) 및 절연체(214)에는, 예를 들어 기판(311) 또는 트랜지스터(300)를 제공하는 영역 등으로부터 트랜지스터(200)를 제공하는 영역으로 수소나 불순물이 확산되지 않도록 하는 배리어성을 가지는 막을 사용하는 것이 바람직하다. 따라서, 절연체(324)와 같은 재료를 사용할 수 있다.
수소에 대한 배리어성을 가지는 막의 일례로서, CVD법으로 형성한 질화 실리콘을 사용할 수 있다. 여기서, 트랜지스터(200) 등의 산화물 반도체를 가지는 반도체 소자로 수소가 확산됨으로써 상기 반도체 소자의 특성이 저하하는 경우가 있다. 따라서, 트랜지스터(200)와 트랜지스터(300) 사이에 수소의 확산을 억제하는 막을 사용하는 것이 바람직하다. 수소의 확산을 억제하는 막이란, 구체적으로는 수소의 이탈량이 적은 막이다.
또한, 수소에 대한 배리어성을 가지는 막으로서, 예를 들어 절연체(210) 및 절연체(214)에는 산화 알루미늄, 산화 하프늄, 산화 탄탈럼 등의 금속 산화물을 사용하는 것이 바람직하다.
특히, 산화 알루미늄은 산소 및 트랜지스터의 전기 특성의 변동 요인이 되는 수소, 수분 등의 불순물의 양쪽에 대하여 막을 투과시키지 않도록 하는 차단 효과가 높다. 따라서, 산화 알루미늄은 트랜지스터의 제작 공정 중 및 제작 후에서 수소, 수분 등의 불순물의 트랜지스터(200)로의 혼입을 방지할 수 있다. 또한, 트랜지스터(200)를 구성하는 산화물로부터의 산소의 방출을 억제할 수 있다. 그러므로, 트랜지스터(200)에 대한 보호막으로서 사용하는 것에 적합하다.
또한, 예를 들어 절연체(212) 및 절연체(216)에는 절연체(320)와 같은 재료를 사용할 수 있다. 또한, 비교적 유전율이 낮은 재료를 층간막으로 함으로써, 배선 사이에 생기는 기생 용량을 저감할 수 있다. 예를 들어, 절연체(212) 및 절연체(216)로서 산화 실리콘막이나 산화질화 실리콘막 등을 사용할 수 있다.
또한 절연체(210), 절연체(212), 절연체(214), 및 절연체(216)에는 도전체(218) 및 트랜지스터(200)를 구성하는 도전체(도전체(203)) 등이 매립되어 있다. 또한, 도전체(218)는 용량 소자(100) 또는 트랜지스터(300)와 접속되는 플러그 또는 배선으로서의 기능을 가진다. 도전체(218)는 도전체(328) 및 도전체(330)와 같은 재료를 사용하여 제공할 수 있다.
특히, 절연체(210) 및 절연체(214)와 접하는 영역의 도전체(218)는 산소, 수소, 및 물에 대한 배리어성을 가지는 도전체인 것이 바람직하다. 상기 구성에 의하여, 트랜지스터(300)와 트랜지스터(200)는 산소, 수소, 및 물에 대한 배리어성을 가지는 층에 의하여 분리할 수 있어, 트랜지스터(300)로부터 트랜지스터(200)로의 수소의 확산을 억제할 수 있다.
절연체(216)의 위쪽에는 트랜지스터(200)가 제공되어 있다.
도 19의 (A), (B)에 도시된 바와 같이, 트랜지스터(200)는 절연체(214) 및 절연체(216)에 매립되도록 배치된 도전체(203)와, 절연체(216)와 도전체(203) 위에 배치된 절연체(220)와, 절연체(220) 위에 배치된 절연체(222)와, 절연체(222) 위에 배치된 절연체(224)와, 절연체(224) 위에 배치된 산화물(230a)과, 산화물(230a) 위에 배치된 산화물(230b)과, 산화물(230b) 위에 서로 떨어져 배치된 도전체(242a) 및 도전체(242b)와, 도전체(242a) 및 도전체(242b) 위에 배치되고 도전체(242a)와 도전체(242b) 사이에 중첩하여 개구가 형성된 절연체(280)와, 개구 내에 배치된 도전체(260)와, 산화물(230b), 도전체(242a), 도전체(242b), 및 절연체(280)와 도전체(260) 사이에 배치된 절연체(250)와, 산화물(230b), 도전체(242a), 도전체(242b), 및 절연체(280)와 절연체(250) 사이에 배치된 산화물(230c)을 가진다. 또한, 도 19의 (A), (B)에 도시된 바와 같이, 산화물(230a), 산화물(230b), 도전체(242a), 및 도전체(242b)와 절연체(280) 사이에 절연체(244)가 배치되는 것이 바람직하다. 또한, 도 19의 (A), (B)에 도시된 바와 같이, 도전체(260)는 절연체(250)의 내측에 제공된 도전체(260a)와, 도전체(260a)의 내측에 매립되도록 제공된 도전체(260b)를 가지는 것이 바람직하다. 또한, 도 19의 (A), (B)에 도시된 바와 같이, 절연체(280), 도전체(260), 및 절연체(250) 위에 절연체(274)가 배치되는 것이 바람직하다.
또한, 이하에서, 산화물(230a), 산화물(230b), 및 산화물(230c)을 통틀어 산화물(230)이라고 하는 경우가 있다. 또한, 도전체(242a) 및 도전체(242b)를 통틀어 도전체(242)라고 하는 경우가 있다.
또한, 트랜지스터(200)에서 채널이 형성되는 영역과 그 근방에서, 산화물(230a), 산화물(230b), 및 산화물(230c)의 3층을 적층하는 구성을 나타내었지만, 본 발명은 이에 한정되는 것이 아니다. 예를 들어, 산화물(230b)의 단층, 산화물(230b)과 산화물(230a)의 2층 구조, 산화물(230b)과 산화물(230c)의 2층 구조, 또는 4층 이상의 적층 구조를 제공하는 구성으로 하여도 좋다. 또한, 트랜지스터(200)에서는, 도전체(260)를 2층의 적층 구조로서 나타내었지만, 본 발명은 이에 한정되는 것이 아니다. 예를 들어, 도전체(260)가 단층 구조이어도 좋고, 3층 이상의 적층 구조이어도 좋다. 또한, 도 18, 도 19의 (A), (B)에 도시된 트랜지스터(200)는 일례이고, 그 구조에 한정되지 않고, 회로 구성이나 구동 방법에 따라 적절한 트랜지스터를 사용하면 좋다.
여기서, 도전체(260)는 트랜지스터의 게이트 전극으로서 기능하고, 도전체(242a) 및 도전체(242b)는 각각 소스 전극 또는 드레인 전극으로서 기능한다. 상술한 바와 같이, 도전체(260)는 절연체(280)의 개구, 및 도전체(242a)와 도전체(242b) 사이의 영역에 매립되도록 형성된다. 도전체(260), 도전체(242a), 및 도전체(242b)의 배치는, 절연체(280)의 개구에 대하여, 자기 정합(self-aligned)적으로 선택된다. 즉, 트랜지스터(200)에서, 게이트 전극을 소스 전극과 드레인 전극 사이에 자기 정합적으로 배치시킬 수 있다. 따라서, 도전체(260)를 위치를 맞추기 위한 마진의 제공없이 형성할 수 있기 때문에, 트랜지스터(200)의 점유 면적의 축소를 도모할 수 있다. 이로써, 반도체 장치의 미세화, 고집적화를 도모할 수 있다.
또한, 도전체(260)가 도전체(242a)와 도전체(242b) 사이의 영역에 자기 정합적으로 형성되기 때문에, 도전체(260)는 도전체(242a) 또는 도전체(242b)와 중첩되는 영역을 가지지 않는다. 이로써, 도전체(260)와 도전체(242a) 및 도전체(242b) 사이에 형성되는 기생 용량을 저감할 수 있다. 따라서, 트랜지스터(200)의 스위칭 속도를 향상시키고, 높은 주파수 특성을 가지게 할 수 있다.
도전체(260)는 제 1 게이트(톱 게이트라고도 함) 전극으로서 기능하는 경우가 있다. 또한, 도전체(203)는 제 2 게이트(보텀 게이트라고도 함) 전극으로서 기능하는 경우가 있다. 그 경우, 도전체(203)에 인가하는 전위를 도전체(260)에 인가하는 전위와 연동시키지 않고 독립적으로 변화시킴으로써, 트랜지스터(200)의 Vth를 제어할 수 있다. 특히, 도전체(203)에 음의 전위를 인가함으로써 트랜지스터(200)의 Vth를 0V보다 크게 하고, 오프 전류를 저감할 수 있게 된다. 따라서, 도전체(203)에 음의 전위를 인가하는 경우에는 인가하지 않은 경우보다 도전체(260)에 인가하는 전위가 0V일 때의 드레인 전류를 작게 할 수 있다.
도전체(203)는 산화물(230) 및 도전체(260)와 중첩되도록 배치된다. 이에 의하여, 도전체(260) 및 도전체(203)에 전위를 인가한 경우, 도전체(260)로부터 발생하는 전계와 도전체(203)로부터 발생하는 전계가 연결되고, 산화물(230)에 형성되는 채널 형성 영역을 덮을 수 있다. 본 명세서에서, 제 1 게이트 전극 및 제 2 게이트 전극의 전계에 의하여 채널 형성 영역을 전기적으로 둘러싸는 트랜지스터의 구조를 surrounded channel(S-channel) 구조라고 부른다.
또한 도전체(203)는 도전체(218)와 같은 구성이고, 절연체(214) 및 절연체(216)의 개구의 내벽에 접하여 도전체(203a)가 형성되고, 그 내측에 도전체(203b)가 형성된다.
절연체(220), 절연체(222), 절연체(224), 및 절연체(250)는 게이트 절연체로서의 기능을 가진다.
여기서, 산화물(230)과 접하는 절연체(224)에는 화학량론적 조성을 만족하는 산소보다 많은 산소를 포함하는 절연체를 사용하는 것이 바람직하다. 즉, 절연체(224)에는 과잉 산소 영역이 형성되어 있는 것이 바람직하다. 이와 같은 과잉 산소를 포함하는 절연체를 산화물(230)에 접하여 제공함으로써, 산화물(230) 내의 산소 결손을 저감하여, 트랜지스터(200)의 신뢰성을 향상시킬 수 있다.
과잉 산소 영역을 가지는 절연체로서, 구체적으로는 가열에 의하여 일부의 산소가 이탈되는 산화물 재료를 사용하는 것이 바람직하다. 가열에 의하여 산소가 이탈되는 산화물이란, TDS 분석에서 산소 원자로 환산한 산소의 이탈량이 1.0Х1018atoms/cm3 이상, 바람직하게는 1.0Х1019atoms/cm3 이상, 더 바람직하게는 2.0Х1019atoms/cm3 이상, 또는 3.0Х1020atoms/cm3 이상인 산화물막이다. 또한, 상기 TDS 분석 시에서의 막의 표면 온도로서는 100℃ 이상 700℃ 이하, 또는 100℃ 이상 400℃ 이하의 범위가 바람직하다.
또한, 절연체(224)가 과잉 산소 영역을 가지는 경우, 절연체(222)는 산소(예를 들어, 산소 원자, 산소 분자 등 중 적어도 하나)의 확산을 억제하는 기능을 가지는(상기 산소가 투과하기 어려운) 것이 바람직하다.
절연체(222)가 산소나 불순물의 확산을 억제하는 기능을 가짐으로써, 산화물(230)이 가지는 산소는 절연체(220) 측으로 확산되지 않아 바람직하다. 또한 절연체(224)나 산화물(230)이 가지는 산소와 도전체(203)가 반응하는 것을 억제할 수 있다.
절연체(222)에는 예를 들어 산화 알루미늄, 산화 하프늄, 산화 탄탈럼, 산화 지르코늄, 타이타늄산 지르콘산 연(PZT), 타이타늄산 스트론튬(SrTiO3), 또는 (Ba,Sr)TiO3(BST) 등을 포함하는 절연체를 단층 또는 적층으로 사용하는 것이 바람직하다. 트랜지스터의 미세화 및 고집적화가 진행되면, 게이트 절연체의 박막화로 인하여 누설 전류 등의 문제가 생기는 경우가 있다. 게이트 절연체로서 기능하는 절연체에 high-k 재료를 사용함으로써, 물리적 막 두께를 유지하면서, 트랜지스터 동작 시의 게이트 전위의 저감이 가능해진다.
특히, 불순물 및 산소 등의 확산을 억제하는 기능을 가지는(상기 산소가 투과하기 어려운) 절연성 재료인 알루미늄 및 하프늄 중 한쪽 또는 양쪽의 산화물을 포함하는 절연체를 사용하는 것이 좋다. 알루미늄 및 하프늄 중 한쪽 또는 양쪽의 산화물을 포함하는 절연체로서, 산화 알루미늄, 산화 하프늄, 알루미늄 및 하프늄을 포함하는 산화물(하프늄 알루미네이트) 등을 사용하는 것이 바람직하다. 이와 같은 재료를 사용하여 절연체(222)를 형성한 경우, 절연체(222)는 산화물(230)로부터의 산소의 방출이나, 트랜지스터(200)의 주변부로부터 산화물(230)로의 수소 등의 불순물의 혼입을 억제하는 층으로서 기능한다.
또는, 이들 절연체에, 예를 들어 산화 알루미늄, 산화 비스무트, 산화 저마늄, 산화 나이오븀, 산화 실리콘, 산화 타이타늄, 산화 텅스텐, 산화 이트륨, 산화 지르코늄을 첨가하여도 좋다. 또는 이들 절연체를 질화 처리하여도 좋다. 상기 절연체에 산화 실리콘, 산화질화 실리콘, 또는 질화 실리콘을 적층하여 사용하여도 좋다.
또한, 절연체(220)는 열적으로 안정적인 것이 바람직하다. 예를 들어, 산화 실리콘 및 산화질화 실리콘은 열적으로 안정적이기 때문에 적합하다. 또한 high-k 재료의 절연체와 산화 실리콘 또는 산화질화 실리콘을 조합함으로써, 열적으로 안정적이며 비유전율이 높은 적층 구조의 절연체(220)를 얻을 수 있다.
또한, 절연체(220), 절연체(222), 및 절연체(224)가 2층 이상의 적층 구조를 가져도 좋다. 그 경우, 같은 재료로 이루어지는 적층 구조에 한정되지 않고, 상이한 재료로 이루어지는 적층 구조이어도 좋다.
트랜지스터(200)는, 채널 형성 영역을 포함하는 산화물(230)에, 산화물 반도체로서 기능하는 금속 산화물을 사용하는 것이 바람직하다. 예를 들어 산화물(230)로서 In-M-Zn 산화물(원소 M은 알루미늄, 갈륨, 이트륨, 구리, 바나듐, 베릴륨, 붕소, 타이타늄, 철, 니켈, 저마늄, 지르코늄, 몰리브데넘, 란타넘, 세륨, 네오디뮴, 하프늄, 탄탈럼, 텅스텐, 또는 마그네슘 등에서 선택된 1종류 또는 복수 종류) 등의 금속 산화물을 사용하는 것이 좋다. 또한, 산화물(230)로서 In-Ga 산화물, In-Zn 산화물을 사용하여도 좋다.
산화물(230)에서, 채널 형성 영역으로서 기능하는 금속 산화물로서는, 밴드 갭이 2eV 이상, 바람직하게는 2.5eV 이상의 것을 사용하는 것이 바람직하다. 이와 같이, 밴드 갭이 큰 금속 산화물을 사용함으로써, 트랜지스터의 오프 전류를 저감할 수 있다.
산화물(230)은 산화물(230b) 아래에 산화물(230a)을 가짐으로써, 산화물(230a)보다 아래쪽에 형성된 구조물로부터 산화물(230b)로의 불순물의 확산을 억제할 수 있다. 또한, 산화물(230b) 위에 산화물(230c)을 가짐으로써, 산화물(230c)보다 위쪽에 형성된 구조물로부터 산화물(230b)로의 불순물의 확산을 억제할 수 있다.
또한 산화물(230)은 각 금속 원자의 원자수비가 상이한 산화물로 이루어지는 적층 구조를 가지는 것이 바람직하다. 구체적으로는, 산화물(230a)에 사용하는 금속 산화물에서, 구성 원소 중의 원소 M의 원자수비가 산화물(230b)에 사용하는 금속 산화물에서의 구성 원소 중의 원소 M의 원자수비보다 큰 것이 바람직하다. 또한, 산화물(230a)에 사용하는 금속 산화물에서 In에 대한 원소 M의 원자수비가 산화물(230b)에 사용하는 금속 산화물에서의 In에 대한 원소 M의 원자수비보다 큰 것이 바람직하다. 또한, 산화물(230b)에 사용하는 금속 산화물에서 원소 M에 대한 In의 원자수비가 산화물(230a)에 사용하는 금속 산화물에서의 원소 M에 대한 In의 원자수비보다 큰 것이 바람직하다. 또한, 산화물(230c)은 산화물(230a) 또는 산화물(230b)에 사용할 수 있는 금속 산화물을 사용할 수 있다.
또한, 산화물(230a) 및 산화물(230c)의 전도대 하단의 에너지가 산화물(230b)의 전도대 하단의 에너지보다 높아지는 것이 바람직하다. 또한 바꿔 말하면 산화물(230a) 및 산화물(230c)의 전자 친화력이 산화물(230b)의 전자 친화력보다 작은 것이 바람직하다.
여기서, 산화물(230a), 산화물(230b), 및 산화물(230c)의 접합부에서 전도대 하단의 에너지 준위는 완만하게 변화한다. 바꿔 말하면, 산화물(230a), 산화물(230b), 및 산화물(230c)의 접합부에서의 전도대 하단의 에너지 준위는 연속적으로 변화 또는 연속 접합한다고 할 수도 있다. 이와 같이 하기 위해서는, 산화물(230a)과 산화물(230b)의 계면 및 산화물(230b)과 산화물(230c)의 계면에서 형성되는 혼합층의 결함 준위 밀도를 낮추는 것이 좋다.
구체적으로는, 산화물(230a)과 산화물(230b), 산화물(230b)과 산화물(230c)이, 산소 이외에 공통의 원소를 가짐으로써(주성분으로 함으로써), 결함 준위 밀도가 낮은 혼합층을 형성할 수 있다. 예를 들어, 산화물(230b)이 In-Ga-Zn 산화물인 경우, 산화물(230a) 및 산화물(230c)로서 In-Ga-Zn 산화물, Ga-Zn 산화물, 산화 갈륨 등을 사용하는 것이 좋다.
이때, 캐리어의 주된 경로는 산화물(230b)이다. 산화물(230a), 산화물(230c)을 상술한 구성으로 함으로써, 산화물(230a)과 산화물(230b)의 계면, 및 산화물(230b)과 산화물(230c)의 계면에서의 결함 준위 밀도를 낮출 수 있다. 그러므로, 계면 산란으로 인한 캐리어 전도에 대한 영향이 작아지고, 트랜지스터(200)는 높은 온 전류를 얻을 수 있다.
산화물(230b) 위에는 소스 전극 및 드레인 전극으로서 기능하는 도전체(242)(도전체(242a) 및 도전체(242b))가 제공된다. 도전체(242)로서는, 알루미늄, 크로뮴, 구리, 은, 금, 백금, 탄탈럼, 니켈, 타이타늄, 몰리브데넘, 텅스텐, 하프늄, 바나듐, 나이오븀, 망가니즈, 마그네슘, 지르코늄, 베릴륨, 인듐, 루테늄, 이리듐, 스트론튬, 란타넘에서 선택된 금속 원소, 또는 상술한 금속 원소를 성분으로 하는 합금이나, 상술한 금속 원소를 조합한 합금 등을 사용하는 것이 바람직하다. 예를 들어, 질화 탄탈럼, 질화 타이타늄, 텅스텐, 타이타늄과 알루미늄을 포함하는 질화물, 탄탈럼과 알루미늄을 포함하는 질화물, 산화 루테늄, 질화 루테늄, 스트론튬과 루테늄을 포함하는 산화물, 란타넘과 니켈을 포함하는 산화물 등을 사용하는 것이 바람직하다. 또한, 질화 탄탈럼, 질화 타이타늄, 타이타늄과 알루미늄을 포함하는 질화물, 탄탈럼과 알루미늄을 포함하는 질화물, 산화 루테늄, 질화 루테늄, 스트론튬과 루테늄을 포함하는 산화물, 란타넘과 니켈을 포함하는 산화물은 산화되기 어려운 도전성 재료 또는 산소를 흡수하여도 도전성을 유지하는 재료이기 때문에 바람직하다.
또한, 도 19의 (A)에 도시된 바와 같이, 산화물(230)의 도전체(242)와의 계면과 그 근방에는, 저저항 영역으로서 영역(243)(영역(243a) 및 영역(243b))이 형성되는 경우가 있다. 이때, 영역(243a)은 소스 영역 및 드레인 영역 중 한쪽으로서 기능하고, 영역(243b)은 소스 영역 및 드레인 영역 중 다른 쪽으로서 기능한다. 또한, 영역(243a)과 영역(243b) 사이의 영역에 채널 형성 영역이 형성된다.
산화물(230)과 접하도록 상기 도전체(242)를 제공함으로써, 영역(243)의 산소 농도가 저감하는 경우가 있다. 또한, 영역(243)에, 도전체(242)에 포함되는 금속과, 산화물(230)의 성분을 포함하는 금속 화합물층이 형성되는 경우가 있다. 이와 같은 경우, 영역(243)의 캐리어 밀도가 증가하여 영역(243)은 저저항 영역이 된다.
절연체(244)는 도전체(242)를 덮도록 제공되고, 도전체(242)의 산화를 억제한다. 이때, 절연체(244)는 산화물(230)의 측면을 덮어 절연체(224)와 접하도록 제공되어도 좋다.
절연체(244)로서 하프늄, 알루미늄, 갈륨, 이트륨, 지르코늄, 텅스텐, 타이타늄, 탄탈럼, 니켈, 저마늄, 또는 마그네슘 등에서 선택된 1종류 또는 2종류 이상이 포함된 금속 산화물을 사용할 수 있다.
특히, 절연체(244)로서 알루미늄 및 하프늄 중 한쪽 또는 양쪽의 산화물을 포함하는 절연체인, 산화 알루미늄, 산화 하프늄, 알루미늄 및 하프늄을 포함하는 산화물(하프늄 알루미네이트) 등을 사용하는 것이 바람직하다. 특히, 하프늄 알루미네이트는 산화 하프늄막보다 내열성이 높다. 그러므로, 나중의 공정에서의 열처리에서, 결정화하기 어렵기 때문에 바람직하다. 또한, 도전체(242)가 내산화성을 가지는 재료인 경우 또는 산소를 흡수하여도 현저히 도전성이 저하하지 않는 경우, 절연체(244)는 필수 구성이 아니다. 요구되는 트랜지스터 특성에 따라 적절히 설계하면 좋다.
절연체(250)는 게이트 절연체로서 기능한다. 절연체(250)는 산화물(230c)의 내측(상면 및 측면)에 접하여 배치되는 것이 바람직하다. 절연체(250)는 가열에 의하여 산소가 방출되는 절연체를 사용하여 형성하는 것이 바람직하다. 예를 들어, TDS 분석에서, 산소 원자로 환산한 산소의 이탈량이 1.0×1018atoms/cm3 이상, 바람직하게는 1.0×1019atoms/cm3 이상, 더 바람직하게는 2.0×1019atoms/cm3 이상, 또는 3.0×1020atoms/cm3 이상인 산화물막이다. 또한, 상기 TDS 분석 시에서의 막의 표면 온도로서는 100℃ 이상 700℃ 이하의 범위가 바람직하다.
구체적으로는, 과잉 산소를 포함하는 산화 실리콘, 산화질화 실리콘, 질화산화 실리콘, 질화 실리콘, 플루오린을 첨가한 산화 실리콘, 탄소를 첨가한 산화 실리콘, 탄소 및 질소를 첨가한 산화 실리콘, 공공을 포함하는 산화 실리콘을 사용할 수 있다. 특히, 산화 실리콘 및 산화질화 실리콘은 열에 대하여 안정적이기 때문에 바람직하다.
가열에 의하여 산소가 방출되는 절연체를 절연체(250)로서 산화물(230c)의 상면에 접하여 제공함으로써, 절연체(250)로부터 산화물(230c)을 통하여 산화물(230b)의 채널 형성 영역에 효과적으로 산소를 공급할 수 있다. 또한 절연체(224)와 마찬가지로, 절연체(250) 내의 물 또는 수소 등의 불순물 농도가 저감되어 있는 것이 바람직하다. 절연체(250)의 막 두께는, 1nm 이상 20nm 이하로 하는 것이 바람직하다.
또한, 절연체(250)가 가지는 과잉 산소를 효율적으로 산화물(230)에 공급하기 위하여, 절연체(250)와 도전체(260) 사이에 금속 산화물을 제공하여도 좋다. 상기 금속 산화물은 절연체(250)로부터 도전체(260)로의 산소 확산을 억제하는 것이 바람직하다. 산소의 확산을 억제하는 금속 산화물을 제공함으로써, 절연체(250)로부터 도전체(260)로의 과잉 산소의 확산이 억제된다. 즉, 산화물(230)에 공급하는 과잉 산소량의 감소를 억제할 수 있다. 또한 과잉 산소로 인한 도전체(260)의 산화를 억제할 수 있다. 상기 금속 산화물로서는, 절연체(244)에 사용할 수 있는 재료를 사용하면 좋다.
제 1 게이트 전극으로서 기능하는 도전체(260)는, 도 19의 (A), (B)에서는 2층 구조로서 도시하였지만, 단층 구조이어도 좋고 3층 이상의 적층 구조이어도 좋다.
도전체(260a)에는 수소 원자, 수소 분자, 물 분자, 질소 원자, 질소 분자, 산화 질소 분자(N2O, NO, NO2 등), 구리 원자 등의 불순물의 확산을 억제하는 기능을 가지는 도전성 재료를 사용하는 것이 바람직하다. 또는, 산소(예를 들어 산소 원자, 산소 분자 등 중 적어도 하나)의 확산을 억제하는 기능을 가지는 도전성 재료를 사용하는 것이 바람직하다. 도전체(260a)가 산소의 확산을 억제하는 기능을 가짐으로써, 절연체(250)에 포함되는 산소로 인하여 도전체(260b)가 산화되어 도전율이 저하하는 것을 억제할 수 있다. 산소의 확산을 억제하는 기능을 가지는 도전성 재료로서는, 예를 들어 탄탈럼, 질화 탄탈럼, 루테늄, 또는 산화 루테늄 등을 사용하는 것이 바람직하다.
또한 도전체(260b)는 텅스텐, 구리, 또는 알루미늄을 주성분으로 하는 도전성 재료를 사용하는 것이 바람직하다. 또한, 도전체(260b)는 배선으로서도 기능하기 때문에, 도전성이 높은 도전체를 사용하는 것이 바람직하다. 예를 들어, 텅스텐, 구리, 또는 알루미늄을 주성분으로 하는 도전성 재료를 사용할 수 있다. 또한, 도전체(260b)는 적층 구조로 하여도 좋고, 예를 들어 타이타늄, 질화 타이타늄과 상기 도전성 재료의 적층 구조로 하여도 좋다.
절연체(280)는 절연체(244)를 개재하여 도전체(242) 위에 제공된다. 절연체(280)는 과잉 산소 영역을 가지는 것이 바람직하다. 예를 들어, 절연체(280)로서 산화 실리콘, 산화질화 실리콘, 질화산화 실리콘, 질화 실리콘, 플루오린을 첨가한 산화 실리콘, 탄소를 첨가한 산화 실리콘, 탄소 및 질소를 첨가한 산화 실리콘, 공공을 가지는 산화 실리콘, 또는 수지 등을 가지는 것이 바람직하다. 특히 산화 실리콘 및 산화질화 실리콘은 열적으로 안정적이므로 바람직하다. 특히 산화 실리콘 및 공공을 가지는 산화 실리콘은 나중의 공정에서 용이하게 과잉 산소 영역을 형성할 수 있으므로 바람직하다.
절연체(280)는 과잉 산소 영역을 가지는 것이 바람직하다. 가열에 의하여 산소가 방출되는 절연체(280)를 산화물(230c)과 접하여 제공함으로써, 절연체(280) 내의 산소를, 산화물(230c)을 통하여 산화물(230)의 영역(243)에 효율적으로 공급할 수 있다. 또한, 절연체(280) 내의 물 또는 수소 등의 불순물 농도가 저감되어 있는 것이 바람직하다.
절연체(280)의 개구는 도전체(242a)와 도전체(242b) 사이의 영역과 중첩하여 형성된다. 이에 의하여, 도전체(260)는 절연체(280)의 개구, 및 도전체(242a)와 도전체(242b) 사이의 영역에 매립되도록 형성된다.
반도체 장치를 미세화하기 위하여, 게이트 길이를 짧게 하는 것이 요구되지만, 도전체(260)의 도전성이 낮아지지 않도록 할 필요가 있다. 이를 위하여 도전체(260)의 막 두께를 두껍게 하면, 도전체(260)는 종횡비가 높은 형상이 될 수 있다. 본 실시형태에서는, 도전체(260)를 절연체(280)의 개구에 매립되도록 제공하기 때문에, 도전체(260)를 종횡비가 높은 형상으로 하여도 공정 중에 도전체(260)가 무너지는 일 없이 형성할 수 있다.
절연체(274)는 절연체(280)의 상면, 도전체(260)의 상면, 및 절연체(250)의 상면에 접하여 제공되는 것이 바람직하다. 절연체(274)를 스퍼터링법으로 성막함으로써, 절연체(250) 및 절연체(280)에 과잉 산소 영역을 제공할 수 있다. 이로써 이 과잉 산소 영역으로부터 산화물(230) 내에 산소를 공급할 수 있다.
예를 들어, 절연체(274)로서 하프늄, 알루미늄, 갈륨, 이트륨, 지르코늄, 텅스텐, 타이타늄, 탄탈럼, 니켈, 저마늄, 또는 마그네슘 등에서 선택된 1종류 또는 2종류 이상이 포함된 금속 산화물을 사용할 수 있다.
특히, 산화 알루미늄은 배리어성이 높아 0.5nm 이상 3.0nm 이하의 박막이어도 수소 및 질소의 확산을 억제할 수 있다. 따라서, 스퍼터링법으로 성막한 산화 알루미늄은 산소 공급원이면서 수소 등의 불순물의 배리어막으로서의 기능도 가질 수 있다.
또한, 절연체(274) 위에 층간막으로서 기능하는 절연체(281)를 제공하는 것이 바람직하다. 절연체(281)는 절연체(224) 등과 마찬가지로, 막 내의 물 또는 수소 등의 불순물 농도가 저감되어 있는 것이 바람직하다.
또한, 절연체(281), 절연체(274), 절연체(280), 및 절연체(244)에 형성된 개구에 도전체(240a) 및 도전체(240b)를 배치한다. 도전체(240a) 및 도전체(240b)는 도전체(260)를 끼워 대향하여 제공된다. 도전체(240a) 및 도전체(240b)는 후술하는 도전체(246) 및 도전체(248)와 같은 구성이다.
절연체(281) 위에는 절연체(282)가 제공되어 있다. 절연체(282)는 산소나 수소에 대하여 배리어성이 있는 물질을 사용하는 것이 바람직하다. 따라서, 절연체(282)에는 절연체(214)와 같은 재료를 사용할 수 있다. 예를 들어, 절연체(282)에는 산화 알루미늄, 산화 하프늄, 산화 탄탈럼 등의 금속 산화물을 사용하는 것이 바람직하다.
특히, 산화 알루미늄은 산소 및 트랜지스터의 전기 특성의 변동 요인이 되는 수소, 수분 등의 불순물의 양쪽에 대하여 막을 투과시키지 않도록 하는 차단 효과가 높다. 따라서, 산화 알루미늄은 트랜지스터의 제작 공정 중 및 제작 후에서 수소, 수분 등의 불순물의 트랜지스터(200)로의 혼입을 방지할 수 있다. 또한, 트랜지스터(200)를 구성하는 산화물로부터의 산소의 방출을 억제할 수 있다. 그러므로, 트랜지스터(200)에 대한 보호막으로서 사용하는 것에 적합하다.
또한 절연체(282) 위에는 절연체(286)가 제공되어 있다. 절연체(286)에는 절연체(320)와 같은 재료를 사용할 수 있다. 또한, 비교적 유전율이 낮은 재료를 층간막으로 함으로써, 배선 사이에 생기는 기생 용량을 저감할 수 있다. 예를 들어, 절연체(286)로서 산화 실리콘막이나 산화질화 실리콘막 등을 사용할 수 있다.
또한 절연체(220), 절연체(222), 절연체(224), 절연체(244), 절연체(280), 절연체(274), 절연체(281), 절연체(282), 및 절연체(286)에는 도전체(246) 및 도전체(248) 등이 매립되어 있다.
도전체(246) 및 도전체(248)는, 용량 소자(100), 트랜지스터(200), 또는 트랜지스터(300)와 접속되는 플러그 또는 배선으로서 기능한다. 도전체(246) 및 도전체(248)는 도전체(328) 및 도전체(330)와 같은 재료를 사용하여 제공할 수 있다.
이어서, 트랜지스터(200)의 위쪽에는 용량 소자(100)가 제공되어 있다. 용량 소자(100)는 도전체(110), 도전체(120), 절연체(130)를 가진다.
또한, 도전체(246) 및 도전체(248) 위에 도전체(112)를 제공하여도 좋다. 도전체(112)는 트랜지스터(200)와 접속되는 플러그 또는 배선으로서의 기능을 가진다. 도전체(110)는 용량 소자(100)의 전극으로서의 기능을 가진다. 또한, 도전체(112) 및 도전체(110)는 동시에 형성할 수 있다.
도전체(112) 및 도전체(110)에는 몰리브데넘, 타이타늄, 탄탈럼, 텅스텐, 알루미늄, 구리, 크로뮴, 네오디뮴, 스칸듐에서 선택된 원소를 포함하는 금속막, 또는 상술한 원소를 성분으로 하는 금속 질화물막(질화 탄탈럼막, 질화 타이타늄막, 질화 몰리브데넘막, 질화 텅스텐막) 등을 사용할 수 있다. 또는, 인듐 주석 산화물, 산화 텅스텐을 포함하는 인듐 산화물, 산화 텅스텐을 포함하는 인듐 아연 산화물, 산화 타이타늄을 포함하는 인듐 산화물, 산화 타이타늄을 포함하는 인듐 주석 산화물, 인듐 아연 산화물, 산화 실리콘을 첨가한 인듐 주석 산화물 등의 도전성 재료를 적용할 수도 있다.
도 18에서는, 도전체(112) 및 도전체(110)를 단층 구조로 도시하였지만, 상기 구성에 한정되지 않고, 2층 이상의 적층 구조로 하여도 좋다. 예를 들어, 배리어성을 가지는 도전체와 도전성이 높은 도전체 사이에 배리어성을 가지는 도전체 및 도전성이 높은 도전체에 대하여 밀착성이 높은 도전체를 형성하여도 좋다.
절연체(130)를 개재하여 도전체(110)와 중첩되도록 도전체(120)를 제공한다. 또한, 도전체(120)는 금속 재료, 합금 재료, 또는 금속 산화물 재료 등의 도전성 재료를 사용할 수 있다. 내열성과 도전성을 양립하는 텅스텐이나 몰리브데넘 등의 고융점 재료를 사용하는 것이 바람직하고, 특히 텅스텐을 사용하는 것이 바람직하다. 또한, 도전체 등의 다른 구조와 동시에 형성하는 경우에는, 저저항 금속 재료인 Cu(구리)나 Al(알루미늄) 등을 사용하면 좋다.
도전체(120) 및 절연체(130) 위에는 절연체(150)가 제공되어 있다. 절연체(150)는 절연체(320)와 같은 재료를 사용하여 제공할 수 있다. 또한, 절연체(150)는 그 아래쪽의 요철 형상을 피복하는 평탄화막으로서 기능하여도 좋다.
본 구조를 사용함으로써, 산화물 반도체를 가지는 트랜지스터를 사용한 반도체 장치에서, 전기 특성의 변동을 억제하면서 신뢰성을 향상시킬 수 있다. 또는, 온 전류가 큰 산화물 반도체를 가지는 트랜지스터를 제공할 수 있다. 또는, 오프 전류가 작은 산화물 반도체를 가지는 트랜지스터를 제공할 수 있다. 또는, 소비전력이 저감된 반도체 장치를 제공할 수 있다. 또는, 산화물 반도체를 가지는 트랜지스터를 사용한 반도체 장치에서 미세화 또는 고집적화를 도모할 수 있다.
<트랜지스터의 구성예 1>
도 18 및 도 19에서는, 소스 전극 또는 드레인 전극으로서 기능하는 도전체(242)가 산화물(230)에 접하여 형성되는 구성예에 대하여 설명하였지만, OS 트랜지스터의 구성은 이에 한정되지 않는다. 예를 들어, 도전체(242)를 제공하지 않고, 산화물(230)을 선택적으로 저저항화함으로써, 산화물(230b)에 소스 영역 또는 드레인 영역이 제공된 구성을 사용할 수도 있다. 이와 같은 트랜지스터의 구성예를 도 20에 도시하였다.
도 20의 (A)는 트랜지스터(200A)의 채널 길이 방향의 단면도이고, 도 20의 (B)는 트랜지스터(200A)의 채널 폭 방향의 단면도이다. 또한 도 20에 도시된 트랜지스터(200A)는 도 19에 도시된 트랜지스터(200)의 변형예이다. 따라서 설명의 반복을 피하기 위하여, 트랜지스터(200)와 상이한 점에 대하여 주로 설명한다.
트랜지스터(200A)는, 트랜지스터(200)와 마찬가지로, 채널 형성 영역을 포함하는 산화물(230)에 산화물 반도체로서 기능하는 금속 산화물을 사용할 수 있다.
산화물(230)은 산소 결손을 형성하는 원소 또는 산소 결손과 결합하는 원소가 첨가됨으로써 캐리어 밀도가 증대되어 저저항화되는 경우가 있다. 산화물(230)을 저저항화하는 원소로서는 대표적으로는 붕소 또는 인을 들 수 있다. 또한 수소, 탄소, 질소, 플루오린, 황, 염소, 타이타늄, 희가스 등을 사용하여도 좋다. 희가스의 대표적인 예로서는 헬륨, 네온, 아르곤, 크립톤, 및 제논 등이 있다.
또한 상기 원소의 농도는 이차 이온 질량 분석법(SIMS: Secondary Ion Mass Spectrometry) 등을 사용하여 측정하면 좋다.
특히, 붕소 및 인은 비정질 실리콘 또는 저온 폴리실리콘의 제조 라인의 장치를 사용할 수 있기 때문에 바람직하다. 상기 제조 라인의 장치를 전용(轉用)함으로써 설비 투자를 억제할 수 있다.
도 20에 도시된 영역(243)(영역(243a) 및 영역(243b))은 산화물(230b)에 상기 원소가 첨가된 영역이다. 영역(243)은 예를 들어, 더미 게이트를 사용함으로써 형성할 수 있다.
예를 들어, 산화물(230b) 위에 더미 게이트를 제공하고, 상기 더미 게이트를 마스크로서 사용하여, 상기 산화물(230b)을 저저항화하는 원소를 첨가하는 것이 좋다. 즉, 산화물(230)이 더미 게이트와 중첩되지 않는 영역에 상기 원소가 첨가되고, 영역(243)이 형성된다. 또한, 상기 원소의 첨가 방법으로서는 이온화된 원료 가스를 질량 분리하여 첨가하는 이온 주입법, 이온화된 원료 가스를 질량 분리하지 않고 첨가하는 이온 도핑법, 플라스마 잠입 이온 주입법 등을 사용할 수 있다.
이어서, 산화물(230b) 및 더미 게이트 위에, 절연체(244)가 되는 절연막 및 절연체(245)가 되는 절연막을 성막하여도 좋다. 후술하지만, 더미 게이트를 제거하기 전에, 더미 게이트 위에 절연체(244)가 되는 절연막 및 절연체(245)가 되는 절연막을 적층하여 제공함으로써, 더미 게이트를 제거한 후의 개구부의 측벽에 절연체(244)와 절연체(245)의 적층막을 형성한다. 더미 게이트 위에 형성된 절연체(244)와 절연체(245)의 적층막 위로부터, 산화물(230b)을 저저항화하는 원소를 첨가한다. 영역(243)이 더미 게이트의 하부에도 확장됨으로써, 영역(243)과, 산화물(230c) 및 절연체(250)가 중첩되는 영역을 제공할 수 있다.
구체적으로, 절연체(245)가 되는 절연막 위에, 절연체(280)가 되는 절연막을 제공한 후, 절연체(280)가 되는 절연막에 CMP(Chemical Mechanical Polishing) 처리를 수행함으로써, 절연체(280)가 되는 절연막의 일부를 제거하여, 더미 게이트를 노출시킨다. 이어서, 더미 게이트를 제거할 때, 더미 게이트와 접하는 절연체(244)의 일부도 제거하는 것이 좋다. 따라서, 절연체(280)에 제공된 개구부의 측면에는 절연체(245) 및 절연체(244)가 노출되고, 상기 개구부의 저면에는 산화물(230b)에 제공된 영역(243)의 일부가 노출된다. 다음으로, 상기 개구부에 산화물(230c)이 되는 산화막, 절연체(250)가 되는 절연막, 및 도전체(260)가 되는 도전막을 순차적으로 성막한 후, 절연체(280)가 노출될 때까지 CMP 처리 등에 의하여, 산화물(230c)이 되는 산화막, 절연체(250)가 되는 절연막, 및 도전체(260)가 되는 도전막의 일부를 제거함으로써, 도 20에 도시된 트랜지스터를 형성할 수 있다.
또한 절연체(244) 및 절연체(245)는 필수 구성이 아니다. 요구되는 트랜지스터 특성에 따라 적절히 설계하면 좋다.
도 20에 도시된 트랜지스터(200A)는, 기존의 장치를 전용할 수 있고, 또한 트랜지스터(200)와 달리, 도전체(242)를 제공하지 않기 때문에 비용의 저감을 도모할 수 있다.
DA1: 신호선, DA2: 신호선, DAM1: 신호선, DAM2: 신호선, DAP1: 신호선, DAP2: 신호선, FN10: 노드, FN20: 노드, FN30: 노드, FN40: 노드, FN50: 노드, FN60: 노드, FN70: 노드, FN80: 노드, FO1: 신호선, FO2: 신호선, FO3: 신호선, FO4: 신호선, FOUT1: 신호선, FOUT2: 신호선, I1: 전류, I2: 전류, I3: 전류, I4: 전류, I5: 전류, M1: 메모리, M2: 메모리, M3: 메모리, M4: 메모리, M5: 메모리, M6: 메모리, 21: 메모리, 24a: 메모리, 24b: 메모리, 31a: 메모리, 31b: 메모리, 31c: 메모리, 31d: 메모리, MB1: 신호선, MB2: 신호선, REM1: 신호선, REM2: 신호선, REP1: 신호선, REP2: 신호선, S1: 스위치, S2: 스위치, S3: 스위치, S4: 스위치, S5: 스위치, S6: 스위치, S7: 스위치, S8: 스위치, S9: 스위치, S10: 스위치, S11: 스위치, S12: 스위치, S13: 스위치, S14: 스위치, S15: 스위치, SW0: 스위치, SW1: 스위치, UFM1: 신호선, UFM2: 신호선, UFP1: 신호선, UFP2: 신호선, WEM1: 신호선, WEM2: 신호선, WEP1: 신호선, WEP2: 신호선, WL1: 신호선, 10: 가산 회로, 10a: 가산 회로, 11: 승산 셀, 11a: 승산 셀, 12: 레퍼런스 셀, 12a: 레퍼런스 셀, 13: 연산 회로, 13a: 연산 회로, 15: 변환 회로, 15a: IV 변환 회로, 15b: 증폭 회로, 20: 실렉터, 22: 카운터, 22a: CNP, 22b: CNM, 23: 제어 회로, 24: 실렉터, 25: 제어 회로, 26: 제로 삽입 회로, 26a: 제로 삽입 회로, 26b: 제로 삽입 회로, 26c: 게이트 회로, 27: 가산 회로, 28: 가산 회로, 29: 게이트 회로, 30: 제어 회로, 31: 실렉터, 32: 제어 회로, 33a: 제로 삽입 회로, 33b: 제로 삽입 회로, 40: 승산 회로, 40a: 승산 회로, 41: 트랜지스터, 42: 트랜지스터, 42a: 트랜지스터, 43: 용량 소자, 44: 트랜지스터, 45: 트랜지스터, 45a: 트랜지스터, 46: 용량 소자, 47: 트랜지스터, 48: 트랜지스터, 49: 트랜지스터, 49a: 트랜지스터, 50: 용량 소자, 51: 트랜지스터, 51a: 트랜지스터, 52: 용량 소자, 61: 트랜지스터, 62: 트랜지스터, 62a: 트랜지스터, 63: 용량 소자, 64: 트랜지스터, 65: 트랜지스터, 65a: 트랜지스터, 66: 용량 소자, 67: 트랜지스터, 67a: 트랜지스터, 68: 용량 소자, 69: 트랜지스터, 69a: 트랜지스터, 70: 용량 소자, 71: 트랜지스터, 71a: 트랜지스터, 72: 트랜지스터, 72a: 트랜지스터, 73: 용량 소자, 74: 트랜지스터, 74a: 트랜지스터, 75: 용량 소자, 76: 트랜지스터, 76a: 트랜지스터, 77: 용량 소자, 80: 반도체 장치, 81: CPU, 82: 메모리, 83: 촬상 장치, 84: 신경망, 84a: 승산 셀 블록, 84b: 뉴런, 84c: 신경망, 85a: 디스플레이 컨트롤러, 85b: 표시 장치, 86: 입출력 버스, 90: 스위치

Claims (1)

  1. 반도체 장치로서,
    제 1 메모리, 제 2 메모리, 제 3 메모리, 실렉터 회로, 제 1 가산 회로, 제 2 가산 회로, 및 제 1 카운터 및 제 2 카운터를 포함하는 카운터 회로를 포함하고,
    상기 제 1 메모리는 상기 제 1 가산 회로 및 상기 실렉터 회로와 전기적으로 접속되고,
    상기 실렉터 회로는 상기 제 2 메모리 및 상기 제 3 메모리와 전기적으로 접속되고,
    상기 제 2 가산 회로는 상기 제 2 메모리 및 상기 제 3 메모리와 전기적으로 접속되고,
    상기 카운터 회로는 상기 제 1 메모리 및 상기 제 1 가산 회로와 전기적으로 접속되고,
    상기 제 1 메모리는 부호를 가지는 제 1 데이터가 공급되고,
    상기 제 1 카운터 및 상기 제 2 카운터는 초깃값이 공급되고,
    상기 제 2 메모리는 저장된 데이터가 없는 경우에 제 1 언더플로 플래그(underflow flag)를 출력하고,
    상기 제 3 메모리는 저장된 데이터가 없는 경우에 제 2 언더플로 플래그를 출력하고,
    상기 카운터 회로는 상기 제 1 언더플로 플래그 또는 상기 제 2 언더플로 플래그가 공급된 경우에 상기 제 1 카운터 또는 상기 제 2 카운터의 값을 판단하고,
    상기 제 1 가산 회로는 상기 제 1 카운터 및 상기 제 2 카운터 중 어느 것이 초깃값인 경우 상기 제 1 메모리에 저장된 모든 상기 제 1 데이터를 가산하는, 반도체 장치.
KR1020237029669A 2017-11-17 2018-11-05 가산 방법, 반도체 장치, 및 전자 기기 KR102627117B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020247001673A KR102665195B1 (ko) 2017-11-17 2018-11-05 가산 방법, 반도체 장치, 및 전자 기기

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP2017221455 2017-11-17
JPJP-P-2017-221455 2017-11-17
JPJP-P-2018-027238 2018-02-19
JP2018027238 2018-02-19
PCT/IB2018/058647 WO2019097350A1 (ja) 2017-11-17 2018-11-05 加算方法、半導体装置、および電子機器
KR1020207015900A KR102574650B1 (ko) 2017-11-17 2018-11-05 가산 방법, 반도체 장치, 및 전자 기기

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020207015900A Division KR102574650B1 (ko) 2017-11-17 2018-11-05 가산 방법, 반도체 장치, 및 전자 기기

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020247001673A Division KR102665195B1 (ko) 2017-11-17 2018-11-05 가산 방법, 반도체 장치, 및 전자 기기

Publications (2)

Publication Number Publication Date
KR20230131957A true KR20230131957A (ko) 2023-09-14
KR102627117B1 KR102627117B1 (ko) 2024-01-23

Family

ID=66538846

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020237029669A KR102627117B1 (ko) 2017-11-17 2018-11-05 가산 방법, 반도체 장치, 및 전자 기기
KR1020207015900A KR102574650B1 (ko) 2017-11-17 2018-11-05 가산 방법, 반도체 장치, 및 전자 기기

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020207015900A KR102574650B1 (ko) 2017-11-17 2018-11-05 가산 방법, 반도체 장치, 및 전자 기기

Country Status (6)

Country Link
US (3) US11262981B2 (ko)
JP (3) JP7163308B2 (ko)
KR (2) KR102627117B1 (ko)
CN (1) CN111344665B (ko)
DE (1) DE112018005590T5 (ko)
WO (1) WO2019097350A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE102020113088A1 (de) 2020-05-14 2021-11-18 Universität Stuttgart Körperschaft des öffentlichen Rechts Verfahren zur analogen Multiplikation und/oder Berechnung eines Skalarproduktes mit einer Schaltungsanordnung, insbesondere für künstliche neuronale Netzwerke
CN112214197B (zh) * 2020-10-16 2022-10-04 苏州兆芯半导体科技有限公司 Sram全加器及多比特sram全加器

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09222991A (ja) 1996-02-14 1997-08-26 Nec Corp 加算方法および加算器
KR20150135128A (ko) * 2014-05-22 2015-12-02 가부시키가이샤 한도오따이 에네루기 켄큐쇼 반도체 장치, 건강 관리 시스템
KR20170001613A (ko) * 2015-06-25 2017-01-04 가부시키가이샤 한도오따이 에네루기 켄큐쇼 회로와 그 구동 방법 및 반도체 장치

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL183424B (nl) * 1977-05-16 Enertec Elektronische energiemeter.
JPS5674774A (en) * 1979-11-22 1981-06-20 Nec Corp Arithmetic circuit with overflow detector
JP3833884B2 (ja) 2000-09-27 2006-10-18 株式会社東芝 ディジタルフィルタ
JP3974774B2 (ja) * 2001-12-11 2007-09-12 日本テキサス・インスツルメンツ株式会社 マルチプライヤ
JP2003241958A (ja) * 2002-02-20 2003-08-29 Seiko Epson Corp 演算装置、演算方法およびデジタルフィルタ
JP2006277019A (ja) * 2005-03-28 2006-10-12 Nec Computertechno Ltd オーバーフロー検出方法、オーバーフロー検出装置及びオーバーフロー検出プログラム
EP1715579B1 (en) * 2005-04-19 2010-03-10 Alcatel Lucent Analogue multiplier
JP4199269B2 (ja) * 2006-07-28 2008-12-17 株式会社東芝 送信装置、受信装置、送信方法及び受信方法
JP5879165B2 (ja) * 2011-03-30 2016-03-08 株式会社半導体エネルギー研究所 半導体装置
US9773832B2 (en) 2014-12-10 2017-09-26 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device and electronic device
JP5941577B1 (ja) * 2015-05-11 2016-06-29 力晶科技股▲ふん▼有限公司 半導体記憶装置
JP6674838B2 (ja) * 2015-05-21 2020-04-01 株式会社半導体エネルギー研究所 電子装置
KR20230169441A (ko) 2015-10-23 2023-12-15 가부시키가이샤 한도오따이 에네루기 켄큐쇼 모듈 및 전자 기기
JP2017135698A (ja) * 2015-12-29 2017-08-03 株式会社半導体エネルギー研究所 半導体装置、コンピュータ及び電子機器
KR20180123025A (ko) 2016-03-10 2018-11-14 가부시키가이샤 한도오따이 에네루기 켄큐쇼 반도체 장치
US9934826B2 (en) 2016-04-14 2018-04-03 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device
WO2018069785A1 (en) 2016-10-12 2018-04-19 Semiconductor Energy Laboratory Co., Ltd. Semiconductor device and system using the same
US11315009B2 (en) * 2017-03-03 2022-04-26 Hewlett Packard Enterprise Development Lp Analog multiplier-accumulators
JP7187442B2 (ja) 2017-04-10 2022-12-12 株式会社半導体エネルギー研究所 半導体装置、電子部品、及び電子機器
DE112018002719T5 (de) 2017-05-26 2020-02-13 Semiconductor Energy Laboratory Co., Ltd. Abbildungsvorrichtung und elektronisches Gerät
KR102522350B1 (ko) 2017-06-14 2023-04-14 가부시키가이샤 한도오따이 에네루기 켄큐쇼 촬상 장치 및 전자 기기
CN110770737B (zh) 2017-06-21 2024-03-08 株式会社半导体能源研究所 包括神经网络的半导体装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09222991A (ja) 1996-02-14 1997-08-26 Nec Corp 加算方法および加算器
KR20150135128A (ko) * 2014-05-22 2015-12-02 가부시키가이샤 한도오따이 에네루기 켄큐쇼 반도체 장치, 건강 관리 시스템
KR20170001613A (ko) * 2015-06-25 2017-01-04 가부시키가이샤 한도오따이 에네루기 켄큐쇼 회로와 그 구동 방법 및 반도체 장치

Also Published As

Publication number Publication date
CN111344665A (zh) 2020-06-26
KR20240011885A (ko) 2024-01-26
DE112018005590T5 (de) 2020-10-15
KR102574650B1 (ko) 2023-09-06
JP2023015077A (ja) 2023-01-31
US11755285B2 (en) 2023-09-12
KR20200087177A (ko) 2020-07-20
JP2024037771A (ja) 2024-03-19
JP7397944B2 (ja) 2023-12-13
US20220179621A1 (en) 2022-06-09
JPWO2019097350A1 (ja) 2020-12-17
US20200278837A1 (en) 2020-09-03
CN111344665B (zh) 2024-04-26
KR102627117B1 (ko) 2024-01-23
WO2019097350A1 (ja) 2019-05-23
US20240053961A1 (en) 2024-02-15
US11262981B2 (en) 2022-03-01
JP7163308B2 (ja) 2022-10-31

Similar Documents

Publication Publication Date Title
JP7170108B2 (ja) 半導体装置
JP7397944B2 (ja) 半導体装置
US11856792B2 (en) Semiconductor device and electronic device
US20240046967A1 (en) Semiconductor device and electronic device
WO2022013676A1 (ja) 半導体装置、及び電子機器
JP7190443B2 (ja) 半導体材料
KR102597945B1 (ko) 반도체 장치 및 그 제작 방법
KR102665195B1 (ko) 가산 방법, 반도체 장치, 및 전자 기기
JP2023026488A (ja) 半導体装置
JP2018156699A (ja) 半導体装置、電子部品、及び電子機器
WO2018163012A1 (ja) 半導体装置、および半導体装置の作製方法
KR20230043882A (ko) 반도체 장치
KR20230041718A (ko) 반도체 장치 및 전자 기기

Legal Events

Date Code Title Description
A107 Divisional application of patent
E701 Decision to grant or registration of patent right
A107 Divisional application of patent
GRNT Written decision to grant