[go: up one dir, main page]

KR20190081054A - Kernel Hardware Device - Google Patents

Kernel Hardware Device Download PDF

Info

Publication number
KR20190081054A
KR20190081054A KR1020170183339A KR20170183339A KR20190081054A KR 20190081054 A KR20190081054 A KR 20190081054A KR 1020170183339 A KR1020170183339 A KR 1020170183339A KR 20170183339 A KR20170183339 A KR 20170183339A KR 20190081054 A KR20190081054 A KR 20190081054A
Authority
KR
South Korea
Prior art keywords
conductive lines
conductive
input
node
resistance
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
KR1020170183339A
Other languages
Korean (ko)
Other versions
KR102130532B1 (en
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 KR1020170183339A priority Critical patent/KR102130532B1/en
Priority to PCT/KR2018/015532 priority patent/WO2019132308A1/en
Publication of KR20190081054A publication Critical patent/KR20190081054A/en
Application granted granted Critical
Publication of KR102130532B1 publication Critical patent/KR102130532B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/0464Convolutional networks [CNN, ConvNet]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means

Landscapes

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

Abstract

The present invention provides a parallel kernel hardware system and a 3D kernel hardware system. According to the present invention, the kernel hardware system comprises: a plurality of input terminals; a plurality of output terminals; first conductive lines electrically connected to the input terminals and disposed parallel to each other; and second conductive lines electrically connected to the output terminals and crossing the first conductive lines. Input data is divided into reception regions having an n x n size and the input terminals corresponding to elements of one reception region are defined as one input terminal group. The first conductive lines electrically connected to the input terminal group are electrically connected to one second conductive line through a node group and each node forming the node group is a resistance change memory. Accordingly, a plurality of input terminals receive more extended reception regions than the reception region as input data, thereby minimizing serial scanning operation. Moreover, the area of the kernel hardware system is reduced, thereby realizing high integration.

Description

커널 하드웨어 장치{Kernel Hardware Device}Kernel Hardware Device < RTI ID = 0.0 >

본 발명은 합성곱 신경망(Convolutional Neural Network)의 커널(Kernel)을 하드웨어로 구현한 커널 하드웨어 장치에 관한 것으로서, 보다 상세하게는 확장된 수용 영역을 가지는 커널 하드웨어 장치에 관한 것이다.The present invention relates to a kernel hardware device implementing a kernel of a Convolutional Neural Network in hardware, and more particularly, to a kernel hardware device having an extended accepting area.

폰 노이만(Von Neumann) 구조의 컴퓨터는 CMOS 기술 기반의 전자 시스템 성능의 향상과 더불어 발전해왔다. 폰 노이만 구조의 컴퓨터는 CPU를 통하여 연산한 후 메모리에 저장하고, 다시 연산에 필요한 데이터를 메모리로부터 CPU로 읽어 사용한다. 따라서 수치 계산과 같은 정확도를 요구하는 연산에는 적합하지만, 대량의 데이터를 병렬적으로 처리하는 연산에 있어서는 효율성이 낮다. 최근, 인간 뇌 신경망의 구조를 본떠 만든 인공 신경망 계산 알고리즘(Neural network computation algorithm)이 주목받으며, 인간의 뇌 신경망과 같이 대규모의 데이터를 병렬적으로 처리 가능한 새로운 구조의 컴퓨터 시스템이 요구되고 있다.Computers with Von Neumann architecture have evolved along with improvements in the performance of electronic systems based on CMOS technology. A computer with a von Neumann structure is operated through a CPU and stored in a memory, and data necessary for calculation is read from the memory to the CPU. Therefore, although it is suitable for an operation requiring an accuracy such as a numerical calculation, the efficiency is low in an operation for processing a large amount of data in parallel. In recent years, a neural network computation algorithm, which is based on the structure of a human brain neural network, has attracted attention, and a computer system of a new structure capable of processing large-scale data in parallel, such as a human brain neural network, is required.

인공 신경망 계산 알고리즘은 뉴런(neuron) 회로 및 시냅스(synapse)로 구성된다. 시냅스는 각각의 뉴런 회로 사이를 연결하는 연결부로, 각각의 시냅스는 중요도에 따라 무게(weight)를 갖는다. 인공 신경망 계산 알고리즘에 입력된 정보는 시냅스를 거쳐 뉴런 회로에서 합산되어 활성화(activate)되고, 활성화된 정보는 다시 시냅스를 거쳐 다음 뉴런 회로로 전달된다. 따라서 인공 신경망 계산 알고리즘에 입력된 정보는 복수 개의 뉴런 회로를 거쳐 마지막 뉴런 회로에서 최종 결과를 도출하게 된다.The artificial neural network computation algorithm consists of neuron circuits and synapses. A synapse is a connection between each neuron circuit, and each synapse has a weight according to importance. The information input to the artificial neural network computation algorithm is activated by the neuron circuit through the synapse, and the activated information is transmitted to the next neuron circuit through the synapse again. Therefore, the information input to the artificial neural network calculation algorithm leads to the final result in the last neuron circuit through a plurality of neuron circuits.

합성곱 신경망(Convolution neural network, CNN)은 인공 신경망 계산 알고리즘 중에서 컴퓨터 시각 처리에 뛰어난 성능을 보여주고 있다. 합성곱 신경망은 다수의 합성곱 레이어(Convolution layer)와 완전 연결 신경망(Fully connected neural network)를 포함한다. 합성곱 레이어는 입력 이미지의 특징(feature)들을 추출하여, 완전 연결 신경망에 효과적으로 입력 가능한 피쳐맵(feature map)을 제공한다.Convolution neural network (CNN) is one of the computational algorithms for computer neural networks. The composite neural network includes a plurality of convolution layers and a fully connected neural network. The composite product layer extracts the features of the input image and provides a feature map that can be effectively input to a fully connected neural network.

예를 들어 가로, 세로가 각각 32 pixel로 이루어진 컬러 이미지의 경우, 입력 이미지는 32×32×3(RGB 3채널)의 크기를 갖는다. 따라서 일반적인 인공 신경망과 같이 예를 들어 1500의 크기를 갖는 다음 레이어의 뉴런이 입력 레이어의 모든 구성 요소와 연결되는 경우, 32×32×3×1,500=4,608,000개의 연결 및 가중치를 가지게 된다. 따라서 이러한 불필요한 연결로 인한 과부하를 방지하기 위하여, 합성곱 신경망은 한 레이어의 뉴런을 이전 레이어의 모든 뉴런들이 아닌 작은 영역(수용 영역, Receptive Field)과 연결한다.For example, in the case of a color image consisting of 32 pixels in width and 32 pixels in length, the input image has a size of 32 × 32 × 3 (RGB three channels). For example, if a neuron of the next layer with a size of 1500, for example, a neural network, is connected to all components of the input layer, it has 32 × 32 × 3 × 1,500 = 4,608,000 connections and weights. Therefore, to prevent overload caused by unnecessary connections, the composite neural network links neurons of one layer with a small area (receptive field) rather than all the neurons of the previous layer.

하나의 합성곱 레이어는 수용 영역 내의 각 뉴런들에 적용되는 가중치들이 이루는 커널(Kernel)을 가질 수 있다. 보폭(Stride)에 따라 수용 영역이 입력 이미지를 스캐닝(Scanning)하면서 커널에 저장된 가중치 값을 곱하여 출력한 피쳐 맵(Feature map)을 형성한다.One composite product layer may have a kernel made up of weights applied to each neuron in the coverage area. According to the stride, the acceptance area scans the input image, multiplies the weight value stored in the kernel, and forms a feature map that is output.

이러한 합성곱 신경망을 효율적으로 처리하기 위한 하드웨어 구조가 요구된다. Ligang Gao(Gao, Ligang, Pai-Yu Chen, and Shimeng Yu. "Demonstration of convolution kernel operation on resistive cross-point array." IEEE Electron Device Letters 37.7 (2016): 870-873.)는 이차원 커널 회로를 구성하고, 외부 컨트롤 회로를 이용하여 수용 영역을 이동시키며 입력 이미지를 스캐닝하는 기술에 대하여 개시하였다.A hardware structure for efficiently processing such a composite neural network is required. IEEE Electron Device Letters 37.7 (2016): 870-873.) Discloses a method for constructing a two-dimensional kernel circuit, And a technique of scanning an input image by moving an accommodation area using an external control circuit is disclosed.

그러나 입력 이미지를 스캐닝하는 과정은 전체 합성곱 연산의 속도를 늦추는 원인이 된다. 특히 하나의 합성곱 신경망은 여러 개의 연속하는 합성곱 레이어를 가질 수 있으며, 각각의 레이어가 이러한 스캐닝 과정을 필요로 할 경우 전체 연산 과정은 과도하게 긴 시간을 요구할 수 있다. 또한 수용 영역을 이동시키기 위한 외부 컨트롤 회로를 구성하기 위한 공간을 필요로 하여, 회로의 소형화가 불가능하다는 단점이 있다.However, the process of scanning the input image may slow down the overall convolution operation. In particular, a piecewise convolutional neural network can have several successive composite product layers, and if each layer requires such a scanning process, the entire computation process can require an excessively long time. Further, a space for constructing an external control circuit for moving the accommodating area is required, which makes it impossible to downsize the circuit.

본 발명은 상술한 문제를 해결하기 위하여, 확장된 수용 영역을 갖는 커널 하드웨어 장치를 제공한다.The present invention provides a kernel hardware device having an extended coverage area to solve the above-described problems.

본 발명이 해결하고자 하는 기술적 과제는 확장된 수용 영역을 갖는 커널 하드웨어 장치를 제공하는데 있다.SUMMARY OF THE INVENTION It is an object of the present invention to provide a kernel hardware device having an extended coverage area.

상술한 기술적 과제를 해결하기 위하여 본 발명은 행렬로 이루어진 입력 데이터의 원소들에 각각 대응하는 복수 개의 입력단들, 행렬로 이루어진 출력 데이터의 원소들에 각각 대응하는 복수 개의 출력단들, 상기 입력단들과 전기적으로 연결되고 서로 평행하게 배치되는 제1 도전 라인들, 상기 출력단들과 전기적으로 연결되고 상기 제1 도전 라인들과 교차하는 제2 도전 라인들을 포함하고, 상기 입력 데이터는 n×n 크기를 갖는 수용 영역들로 구획되어 하나의 상기 수용 영역의 원소들에 대응하는 입력단들은 하나의 입력단 그룹으로 정의되고, 상기 입력단 그룹과 전기적으로 연결되는 상기 제1 도전 라인들은 하나의 상기 제2 도전 라인과 노드 그룹을 통해 전기적으로 연결되고, 상기 노드 그룹을 이루는 각각의 노드는 저항 변화 메모리인 커널 하드웨어 시스템을 제공한다.According to an aspect of the present invention, there is provided an input / output device including a plurality of input terminals corresponding to elements of input data, a plurality of output terminals respectively corresponding to elements of output data composed of a matrix, And second conductive lines electrically connected to the output terminals and intersecting the first conductive lines, wherein the input data comprises at least one of a first conductivity line Wherein input terminals corresponding to the elements of one reception area are defined as one input terminal group and the first conductive lines electrically connected to the input terminal group are connected to one of the second conductive line and the node group And each node constituting the node group is electrically connected to a kernel hard disk It provides a control system.

본 발명의 일 실시예에 따르면, 하나의 상기 노드 그룹을 이루는 각각의 노드는 커널 행렬을 구성하는 원소 값에 대응하는 저항 값을 갖고, 모든 상기 노드 그룹들이 동일한 저항 배열을 가질 수 있다.According to an embodiment of the present invention, each node constituting one node group has a resistance value corresponding to an element value constituting the kernel matrix, and all the node groups may have the same resistance arrangement.

본 발명의 일 실시예는 불필요한 도전 라인을 제거한 평행형 커널 하드웨어 시스템을 제공한다. 평행형 커널 하드웨어 시스테에서 상기 복수 개의 입력단들은 서로 일정 거리 이격되어 제1 직선 상에 배치되고, 상기 복수 개의 출력단들은 서로 일정 거리 이격되어 제1 직선과 평행한 제2 직선 상에 배치되고, 상기 제1 도전 라인들은 각각 상기 입력단으로부터 시작하여 상기 노드들이 형성된 영역까지만 연장되고, 상기 제2 도전 라인들은 각각 상기 출력단으로부터 시작하여 상기 노드들이 형성된 영역까지만 연장되고, 상기 제1 도전 라인과 상기 제2 도전 라인은 서로 직교할 수 있다.One embodiment of the present invention provides a parallel kernel hardware system that eliminates unnecessary conductive lines. Wherein the plurality of input terminals are disposed on a first straight line spaced apart from each other by a predetermined distance and the plurality of output terminals are disposed on a second straight line spaced apart from each other by a predetermined distance and parallel to a first straight line, Each of the first conductive lines extending from the input end to only a region where the nodes are formed and each of the second conductive lines starting from the output end and extending only to a region where the nodes are formed, The conductive lines may be orthogonal to each other.

상기 제1 도전 라인들과 상기 제2 도전 라인들이 상하로 교차하는 점들에서 상기 제1 도전 라인들과 상기 제2 도전 라인들 사이에 저항 변화층들이 형성되고, 상기 노드가 형성되는 점의 상기 저항변화층에만 선택적으로 도전 통로가 형성되고, 상기 도전 통로의 전도도는 커널 행렬의 원소 값에 대응할 수 있다.Resistance change layers are formed between the first conductive lines and the second conductive lines at points where the first conductive lines and the second conductive lines intersect up and down, A conductive path is selectively formed only in the change layer, and the conductivity of the conductive path may correspond to an element value of the kernel matrix.

본 발명의 일 실시예는 3차원 적층을 통하여 필요 면적을 감소시킨 3차원 커널 하드웨어 시스템을 제공한다. 3차원 커널 하드웨어 시스템에서 상기 제1 도전 라인들은 서로 이격되어 기판 상에 상기 기판과 수직하게 배열되고, 상기 제2 도전 라인들은 서로 이격되어 상기 기판 상에 평행하게 적층되고, 상기 제1 도전 라인들과 상기 제2 도전 라인들은 서로 직교할 수 있다.One embodiment of the present invention provides a three-dimensional kernel hardware system that reduces the required area through three-dimensional stacking. In a three-dimensional kernel hardware system, the first conductive lines are spaced apart from each other and arranged perpendicular to the substrate, the second conductive lines being spaced apart from each other and stacked on the substrate in parallel, And the second conductive lines may be orthogonal to each other.

상기 제2 도전 라인들은 면적을 가지고, 상기 제2 도전 라인들을 투과하여 상기 제1 도전 라인들이 행렬을 이루며 배열되고, 상기 제1 도전 라인들과 상기 제2 도전 라인들이 교차하는 접촉면에 저항 변화층들이 형성되고, 상기 노드가 형성되는 점의 상기 저항변화층들에만 선택적으로 도전 통로들이 형성되고, 상기 도전 통로의 전도도는 커널 행렬의 원소 값에 대응할 수 있다.Wherein the second conductive lines have an area and the first conductive lines are arranged in a matrix through the second conductive lines, and the resistance-variable layer is formed on a contact surface where the first conductive lines and the second conductive lines cross, And conductive paths are selectively formed only in the resistance-variable layers at points where the nodes are formed, and the conductivity of the conductive paths may correspond to an element value of the kernel matrix.

본 발명의 실시예들에서 상기 저항 변화 메모리는 구리, 은 또는 산소 이온의 이동에 의하여 저항 변화를 할 수 있으며, 상기 제1 도전 라인과 상기 제2 도전 라인이 각각 상기 저항 변화 메모리의 상부 전극과 하부 전극을 형성할 수 있다.In the embodiments of the present invention, the resistance-change memory may change resistance by movement of copper, silver or oxygen ions, and the first conductive line and the second conductive line are connected to the upper electrode of the resistance- The lower electrode can be formed.

본 발명은 확장된 수용 영역을 갖는 커널 하드웨어 장치를 제공하여, 저해상도 이미지의 경우 수용 영역(receptive field)의 스캐닝 동작을 필요로 하지 않거나, 고해상도 이미지의 경우 스캐닝 동작을 최소화하여 피쳐 맵을 출력할 수 있다. 따라서 스캐닝 동작에 필요한 시간, 외부 회로로 인한 전력 소모 및 외부 회로 면적을 감소시킬 수 있다. The present invention provides a kernel hardware device having an extended acceptance area, which can output a feature map without requiring a scanning operation of a receptive field for a low-resolution image or minimizing a scanning operation for a high-resolution image have. Therefore, the time required for the scanning operation, the power consumption due to the external circuit, and the area of the external circuit can be reduced.

또한, 국부적(localized) 연결만을 필요로 하는 합성곱 신경망의 특성을 적용하여 크로스 포인트 어레이 구조의 면적을 큰 폭으로 감소시킨 평행형 커널 하드웨어 시스템을 제공한다.It also provides a parallel kernel hardware system in which the area of the crosspoint array structure is drastically reduced by applying the characteristics of a composite neural network requiring only localized connections.

출력단들과 전기적으로 연결되는 제2 도전 라인들이 기판과 평행하게 적층되고, 입력단들과 전기적으로 연결되는 제1 도전 라인들이 기판과 수직으로 배열되는 3차원 커널 하드웨어 시스템은 작은 면적을 최대한으로 활용할 수 있어 집적화에 유리하다. 또한 제1 도전 라인들이 행렬로 배열되는 경우 커널 하드웨어 시스템의 직관적인 이해를 가능하게 한다.Dimensional kernel hardware system in which the second conductive lines electrically connected to the output terminals are stacked in parallel with the substrate and the first conductive lines electrically connected to the input terminals are arranged perpendicularly to the substrate, It is advantageous for integration. It also allows an intuitive understanding of the kernel hardware system when the first conductive lines are arranged in a matrix.

본 발명의 기술적 효과들은 이상에서 언급한 것들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 효과들은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The technical effects of the present invention are not limited to those mentioned above, and other technical effects not mentioned can be clearly understood by those skilled in the art from the following description.

도 1은 합성곱 신경망 시스템의 동작을 설명하기 위한 개략도이다.
도 2는 합성곱 신경망 시스템의 입력데이터 행렬과 출력 데이터 행렬 및 커널 행렬의 연결을 도시하는 개략도이다.
도 3은 본 발명의 일 실시예에 따른 커널 하드웨어 시스템을 도시하는 회로도이다.
도 4는 본 발명의 일 실시예에 따라 복수 개의 입력단들이 배치되는 제1 직선과 복수 개의 출력단들이 배치되는 제2 직선이 서로 직교하는 직교형 커널 하드웨어 시스템을 도시하는 회로도이다.
도 5는 본 발명의 일 실시예에 따라 복수 개의 입력단들이 배치되는 제1 직선과 복수 개의 출력단들이 배치되는 제2 직선이 서로 평행한 평행형 커널 하드웨어 시스템을 도시하는 회로도이다.
도 6은 직교형 커널 하드웨어 시스템과 평행형 커널 하드웨어 시스템의 면적을 비교하기 위한 비교도이다.
도 7은 본 발명의 일 실시예에 따른 3차원 커널 하드웨어 시스템을 도시하는 단면도이다.
도 8은 본 발명의 일 실시예에 따른 3차원 커널 하드웨어 시스템을 도시하는 평면도이다.
도 9는 본 발명의 일 실시예에 따른 3차원 커널 하드웨어 시스템의 동작을 설명하기 위한 개략도들이다.
1 is a schematic diagram for explaining the operation of a combined-product-neural network system;
2 is a schematic diagram showing a connection of an input data matrix, an output data matrix and a kernel matrix of a composite-object-based neural network system.
3 is a circuit diagram showing a kernel hardware system according to an embodiment of the present invention.
4 is a circuit diagram showing an orthogonal kernel hardware system in which a first straight line in which a plurality of input stages are arranged and a second straight line in which a plurality of output stages are arranged are orthogonal to each other according to an embodiment of the present invention.
FIG. 5 is a circuit diagram illustrating a parallel kernel hardware system in which a first straight line in which a plurality of input stages are arranged and a second straight line in which a plurality of output stages are arranged are parallel to each other according to an embodiment of the present invention.
6 is a comparative diagram for comparing areas of an orthogonal kernel hardware system and a parallel kernel hardware system.
7 is a cross-sectional view illustrating a three-dimensional kernel hardware system according to an embodiment of the present invention.
FIG. 8 is a top view illustrating a three-dimensional kernel hardware system according to an embodiment of the present invention.
FIG. 9 is a schematic diagram illustrating operations of a three-dimensional kernel hardware system according to an embodiment of the present invention.

본 발명이 여러 가지 수정 및 변형을 허용하면서도, 그 특정 실시예들이 도면들로 예시되어 나타내어지며, 이하에서 상세히 설명될 것이다. 그러나 본 발명을 개시된 특별한 형태로 한정하려는 의도는 아니며, 오히려 본 발명은 청구항들에 의해 정의된 본 발명의 사상과 합치되는 모든 수정, 균등 및 대용을 포함한다. While the invention is susceptible to various modifications and alternative forms, specific embodiments thereof are shown by way of example in the drawings and will herein be described in detail. Rather, the intention is not to limit the invention to the particular forms disclosed, but rather, the invention includes all modifications, equivalents and substitutions that are consistent with the spirit of the invention as defined by the claims.

층, 영역 또는 기판과 같은 요소가 다른 구성요소 "상(on)"에 존재하는 것으로 언급될 때, 이것은 직접적으로 다른 요소 상에 존재하거나 또는 그 사이에 중간 요소가 존재할 수도 있다는 것을 이해할 수 있을 것이다. It will be appreciated that when an element such as a layer, region or substrate is referred to as being present on another element "on," it may be directly on the other element or there may be an intermediate element in between .

비록 제1, 제2 등의 용어가 여러 가지 요소들, 성분들, 영역들, 층들 및/또는 지역들을 설명하기 위해 사용될 수 있지만, 이러한 요소들, 성분들, 영역들, 층들 및/또는 지역들은 이러한 용어에 의해 한정되어서는 안 된다는 것을 이해할 것이다.Although the terms first, second, etc. may be used to describe various elements, components, regions, layers and / or regions, such elements, components, regions, layers and / And should not be limited by these terms.

이하 첨부한 도면들을 참조하여, 본 발명의 바람직한 실시예를 보다 상세하게 설명하고자 한다. 이하 도면상의 동일한 구성 요소에 대하여는 동일한 참조 부호를 사용하고, 동일한 구성 요소에 대해서 중복된 설명은 생략한다.DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Reference will now be made in detail to the preferred embodiments of the present invention, examples of which are illustrated in the accompanying drawings. In the following description, the same reference numerals are used for the same constituent elements in the drawings and redundant explanations for the same constituent elements are omitted.

도 1은 합성곱 신경망 시스템의 동작을 설명하기 위한 개략도이다.1 is a schematic diagram for explaining the operation of a combined-product-neural network system;

합성곱 신경망은 입력 데이터(110)를 구성하는 전체 원소(X1, X2, X3...)가 출력 데이터를 구성하는 원소(Y1, Y2, Y3...) 각각에 모두 연결되는 것이 아니라(fully-connected), 출력 데이터의 원소 각각은 입력 데이터를 구성하는 전체 원소 중 제한된 특정 영역에 의하여만 영향을 받는다는 가정 하에 동작한다.The composite neural network is constructed such that all the elements X1, X2, X3, ... constituting the input data 110 are not all connected to the elements Y1, Y2, Y3, ... constituting the output data -connected), each of the elements of the output data operates under the assumption that it is influenced only by a specific limited area among all the elements constituting the input data.

도 1을 참조하면, 입력 데이터(110)는 3×3 크기의 행렬이고 출력 데이터(130)는 2×2 크기의 행렬일 때, 출력 데이터 행렬(130)을 이루는 원소 하나(Y1)는 입력 데이터 행렬의 수용 영역(receptive field) 내의 원소들에만 영향을 받는 것을 확인할 수 있다. 입력 데이터의 제1 수용 영역 내의 원소들(X1, X2, X4, X5)은 특징(feature)을 추출하기 위하여 각각 가중치(K1, K2, K3, K4)가 부여되고, 수용 영역 내의 원소들과 가중치를 내적한 값들의 합산 값이 출력 데이터의 원소(Y1)가 된다. 이 때 가중치는 추출하고자 하는 이미지의 특징에 따라 다른 값을 가지게 되고, 가중치 값들을 원소로 가지는 행렬을 커널 행렬(Kernel Matrix, 120)로 정의한다.1, when the input data 110 is a 3 × 3 matrix and the output data 130 is a 2 × 2 matrix, one element Y1 of the output data matrix 130 is input data It can be seen that only the elements in the receptive field of the matrix are affected. The elements (X1, X2, X4, X5) in the first reception area of the input data are assigned weight values (K1, K2, K3, K4) for extracting features, Is an element Y1 of the output data. In this case, the weight has different values depending on the characteristics of the image to be extracted, and a matrix having weight values as elements is defined as a kernel matrix (Kernel Matrix).

입력 데이터(110)를 스캐닝 하기 위해 수용 영역은 순차적으로 이동하며, 수용 영역이 이동하더라도 동일한 커널 행렬이 적용되어 출력 데이터의 원소를 도출한다. 즉 출력 데이터의 원소 Y2는 입력 데이터의 제2 수용 영역의 원소들(X2, X3, X5, X6)에 커널 행렬의 원소들(K1, K2, K3, K4) 각각을 내적한 값의 합산 값이 된다.In order to scan the input data 110, the acceptance area moves sequentially, and even if the acceptance area moves, the same kernel matrix is applied to derive an element of the output data. That is, the element Y2 of the output data is a sum of the inner product values of the elements K1, K2, K3, and K4 of the kernel matrix in the elements (X2, X3, X5, and X6) do.

도 2는 합성곱 신경망 시스템의 입력데이터 행렬과 출력 데이터 행렬 및 커널 행렬의 연결을 도시하는 개략도이다.2 is a schematic diagram showing a connection of an input data matrix, an output data matrix and a kernel matrix of a composite-object-based neural network system.

도 2를 참조하면, 커널 행렬의 원소들(K1, K2, K3, K4)에 각각 색을 부여하여 선으로 나타내면, 수용 영역이 이동하며 입력 데이터 전체를 스캐닝 하였을 때 입력 데이터 행렬의 원소들(X1, X2, X3...)과 출력 데이터 행렬의 원소들(Y1, Y2, Y3...) 사이의 전체 연결 관계를 확인할 수 있다.Referring to FIG. 2, when the elements K1, K2, K3, and K4 of the kernel matrix are colored and represented by lines, when the receiving area moves and the entire input data is scanned, the elements X1 , X2, X3 ...) and the elements (Y1, Y2, Y3, ...) of the output data matrix.

Y1은 X1, X2, X4, X5와 각각 K1, K2, K3, K4를 통하여 연결되고, Y2는 X2, X3, X5, X6와 각각 K1, K2, K3, K4를 통하여 연결된다. 즉 하나의 출력 데이터 원소는 입력 데이터 원소 그룹과 연결되며, 연결선에 부여되는 가중치의 배열은 동일하다.Y1 is connected to X1, X2, X4 and X5 via K1, K2, K3 and K4, and Y2 is connected to X2, X3, X5 and X6 through K1, K2, K3 and K4, respectively. That is, one output data element is connected to the input data element group, and the arrangement of weights assigned to the connection line is the same.

이러한 전체 연결 관계를 하드웨어로 구현하면 입력 데이터를 구획하여 수용 영역을 이동하며 스캐닝 하는 동작을 최소화할 수 있다. 즉, 입력 이미지가 저해상도 이미지일 경우, 입력 데이터 전체를 한 번에 입력하여 스캐닝 하는 동작 없이 출력 데이터를 도출할 수 있다. 또는 입력 이미지가 고해상도 이미지일 경우에도, 본 발명의 커널 하드웨어 시스템이 입력 받을 수 있는 입력 데이터가 확장된 수용 영역(extended receptive field)로 이용되어 스캐닝 동작을 최소화할 수 있다.By implementing such a whole connection relationship in hardware, it is possible to minimize the movement of moving the receiving area and scanning the input data. That is, when the input image is a low-resolution image, output data can be derived without an operation of inputting and scanning the entire input data at a time. Alternatively, even when the input image is a high-resolution image, the input data to which the kernel hardware system of the present invention can be input is used as an extended receptive field, thereby minimizing the scanning operation.

실시예 1 : 직교형 커널 하드웨어 시스템Embodiment 1: An orthogonal kernel hardware system

도 3은 본 발명의 일 실시예에 따른 커널 하드웨어 시스템을 도시하는 회로도이다.3 is a circuit diagram showing a kernel hardware system according to an embodiment of the present invention.

도 3을 참조하면, 커널 하드웨어 시스템은 행렬로 이루어진 입력 데이터의 원소들에 각각 대응하는 복수 개의 입력단들(10), 행렬로 이루어진 출력 데이터의 원소들에 각각 대응하는 복수 개의 출력단들(30), 상기 입력단들(10)과 전기적으로 연결되고 서로 평행하게 배치되는 제1 도전 라인들(40), 상기 출력단들(30)과 전기적으로 연결되고 상기 제1 도전 라인들(40)과 교차하는 제2 도전 라인들(50)을 포함한다.Referring to FIG. 3, the kernel hardware system includes a plurality of input terminals 10 corresponding to the elements of the input data, a plurality of output terminals 30 corresponding to the elements of the output data, First conductive lines 40 electrically connected to the input terminals 10 and disposed in parallel to each other, second conductive lines 40 electrically connected to the output terminals 30 and intersecting the first conductive lines 40, And conductive lines 50.

상기 입력 데이터는 n×n 크기를 갖는 수용 영역들로 구획되어, 하나의 수용 영역을 구성하는 원소들에 대응하는 입력단들은 하나의 입력단 그룹으로 정의된다. 예를 들어 제1 수용 영역을 구성하는 원소들에 대응하는 제1 입력단 그룹(11)은 X1, X2, X4, X5 입력단을 포함한다.The input data is divided into acceptance areas having a size of nxn, and the inputs corresponding to the elements constituting one acceptance area are defined as one input group. For example, the first input terminal group 11 corresponding to the elements constituting the first accommodation area includes X1, X2, X4, X5 input terminals.

상기 제1 입력단 그룹(11)과 전기적으로 연결되는 상기 제1 도전 라인들(41, 42, 44, 45)은 하나의 제2 도전 라인(51)과 제1 노드 그룹(21)을 통해 전기적으로 연결된다. 상기 제1 입력단 그룹(11)에 인가된 전기적 신호는 제1 노드 그룹(21)에 의하여 가중치를 부여받고, 제2-1 도전라인(51)을 통하여 합산되어 Y1 출력단(31)으로 출력된다. 마찬가지로, 제2 입력단 그룹(11)과 전기적으로 연결되는 제1 도전 라인들(42, 43, 45, 46)은 제2-2 도전 라인(52)과 제2 노드 그룹(22)을 통해 전기적으로 연결된다.The first conductive lines 41, 42, 44 and 45 electrically connected to the first input terminal group 11 are electrically connected to the second conductive line 51 through the first node group 21, . The electrical signals applied to the first input stage group 11 are weighted by the first node group 21 and are summed through the second-1 conductive line 51 and output to the Y1 output stage 31. Similarly, the first conductive lines 42, 43, 45, 46 electrically connected to the second input stage group 11 are electrically connected through the second-second conductive line 52 and the second node group 22 .

즉, 수용 영역들에 대응하는 입력단 그룹은 그 수용 영역에 영향을 받는 출력 데이터 원소에 대응하는 출력단과 노드 그룹을 통하여 전기적으로 연결된다. 반면, 이러한 지역적(localized) 영향을 받지 않는 입력단과 출력단은 전기적으로 절연된다.That is, the input group corresponding to the acceptance regions is electrically connected to the output node corresponding to the output data element affected by the acceptance region through the node group. On the other hand, these localized unaffected inputs and outputs are electrically isolated.

상기 노드 그룹(20)을 이루는 각각의 노드는 저항 변화 메모리일 수 있다. 예를 들어, 상기 제1 도전 라인들(40)과 상기 제2 도전 라인들(50)은 상하로 서로 교차하며 저항 변화 메모리의 상부 전극과 하부 전극을 형성하고, 도전 라인들의 교차점에서 도전 라인들 사이에 저항 변화층이 형성될 수 있다. Each node constituting the node group 20 may be a resistance change memory. For example, the first conductive lines 40 and the second conductive lines 50 intersect each other to form an upper electrode and a lower electrode of the resistance change memory, and at the intersection of the conductive lines, A resistance variable layer can be formed between the first electrode and the second electrode.

각각의 노드 그룹(20)은 커널 행렬을 구성하는 원소 값에 대응하는 저항 값을 갖는다. 즉, 입력 데이터에서 특징을 추출하기 위하여 적용되는 커널 행렬이 갖는 가중치 값이 저항 또는 전도도로 변환되어 저항 변화 메모리에 저장된다. 각각의 수용 영역들에 동일한 커널 행렬이 적용되므로, 마찬가지로 각각의 입력단 그룹에 적용되는 각각의 노드 그룹(20)들은 동일한 저항 배열을 갖는다. 즉 제1 노드 그룹(21)을 구성하는 1-1 노드와 제2 노드 그룹(22)을 구성하는 2-1 노드는 동일한 저항 값을 갖고, 1-2 노드와 2-2 노드는 동일한 저항 값을 갖는다.Each node group 20 has a resistance value corresponding to an element value constituting the kernel matrix. That is, the weight value of the kernel matrix applied to extract features from the input data is converted into resistance or conductivity and stored in the resistance change memory. Since the same kernel matrix is applied to each receiving area, similarly each node group 20 applied to each input group has the same resistance arrangement. That is, the 1-1 node constituting the first node group 21 and the 2-1 node constituting the second node group 22 have the same resistance value, and the 1-2 node and the 2-2 node have the same resistance value Respectively.

상기 저항변화 메모리는 구리, 은 또는 산소 이온의 이동에 의하여 저항 또는 전도도가 변화할 수 있다. 즉, 저항 변화 메모리는 상기 상부 전극과 하부 전극에 해당하는 상기 제1 도전 라인(40)과 제2 도전 라인(50) 사이의 전압 차에 의하여 이온들이 도전 통로를 형성함으로서 변화된 저항 또는 전도도 값을 저장할 수 있다.The resistance change memory may change resistance or conductivity by movement of copper, silver or oxygen ions. That is, in the resistance change memory, ions are formed by a voltage difference between the first conductive line 40 and the second conductive line 50 corresponding to the upper electrode and the lower electrode, thereby changing the resistance or the conductivity value Can be stored.

저해상도 입력 이미지의 전체, 또는 고해상도 입력 이미지의 일부 영역이 입력 단을 통하여 행렬 데이터의 형식으로 한 번에 입력된다. 각 출력단은 노드 그룹(20)을 통하여 전기적으로 연결된 입력단 그룹에 입력된 값에만 영향을 받는다. 각 입력단에 전류 또는 전압으로 인가된 전기적 신호는 노드의 전도도 또는 저항 값에 의하여 변환되고, 변환된 전기적 신호들은 제2 도전 라인을 따라 합산되어 출력단을 통하여 출력된다.A whole area of a low-resolution input image, or a part of a high-resolution input image, is input at a time in the form of matrix data through an input end. Each output stage is influenced only by the value input to the input stage group electrically connected through the node group 20. The electric signal applied to each input terminal by the current or voltage is converted by the conductivity or resistance value of the node, and the converted electric signals are added along the second conductive line and output through the output terminal.

도 4는 본 발명의 일 실시예에 따라 복수 개의 입력단들이 배치되는 제1 직선과 복수 개의 출력단들이 배치되는 제2 직선이 서로 직교하는 직교형 커널 하드웨어 시스템을 도시하는 회로도이다.4 is a circuit diagram showing an orthogonal kernel hardware system in which a first straight line in which a plurality of input stages are arranged and a second straight line in which a plurality of output stages are arranged are orthogonal to each other according to an embodiment of the present invention.

도 4를 참조하면, 입력 데이터 행렬은 6×6 크기를 갖고, 출력 데이터 행렬은 4×4 크기를 가지며, 수용 영역은 3×3 크기를 갖는 것을 확인할 수 있다. 입력 데이터의 크기, 출력 데이터의 크기 및 수용 영역의 크기에 따라 각각 입력단의 수, 출력단의 수 및 노드 그룹을 구성하는 노드의 수가 달라질 수 있다.Referring to FIG. 4, it can be seen that the input data matrix has a size of 6 × 6, the output data matrix has a size of 4 × 4, and the receiving area has a size of 3 × 3. The number of input terminals, the number of output terminals, and the number of nodes constituting the node group can be changed according to the size of the input data, the size of the output data, and the size of the reception area.

본 실시예에 따라, 입력단들(10)이 배치되는 제1 직선(71)과 출력단들(30)이 배치되는 제2 직선(73)이 서로 직교하는 일반적인 크로스 포인트 어레이를 본 발명의 커널 하드웨어 시스템에 적용하는 경우 불필요한 교차점들이 존재하는 것을 확인할 수 있다. 즉, X1과 전기적으로 연결되는 제1-1 도전 라인(41)은 16개의 제2 도전 라인들(50)과 교차점을 갖지만, 그 중 노드가 형성되는 지점은 제1-1 도전 라인(41)과 제2-1 도전 라인(51)이 교차하는 점 뿐이다. 나머지 교차점들은 전기적으로 연결되지 않는 불필요한 영역이다.A general crosspoint array in which a first straight line 71 in which input ends 10 are disposed and a second straight line 73 in which output ends 30 are disposed are orthogonal to each other, It can be confirmed that there are unnecessary intersection points. That is, the 1-1 conductive line 41 electrically connected to X1 has an intersection with the 16 second conductive lines 50, but the point where the node is formed is the 1-1 conductive line 41, And the second-first conductive line 51 intersect with each other. The remaining intersections are unnecessary areas that are not electrically connected.

따라서 불필요한 배선으로 인한 전력 손실을 감소시키고, 소자를 최소화하여 고집적이 가능하게 하기 위한 구조가 제안된다.Therefore, a structure for reducing power loss due to unnecessary wiring and minimizing a device to enable high integration is proposed.

실시예 2 : 평행형 커널 하드웨어 시스템Example 2: Parallel Kernel Hardware System

도 5는 본 발명의 일 실시예에 따라 복수 개의 입력단들이 배치되는 제1 직선과 복수 개의 출력단들이 배치되는 제2 직선이 서로 평행한 평행형 커널 하드웨어 시스템을 도시하는 회로도이다.FIG. 5 is a circuit diagram illustrating a parallel kernel hardware system in which a first straight line in which a plurality of input stages are arranged and a second straight line in which a plurality of output stages are arranged are parallel to each other according to an embodiment of the present invention.

도 5를 참조하면, 제2 실시예에 따른 커널 하드웨어 시스템은 서로 일정 거리 이격되어 제1 직선을 따라 배치되는 복수 개의 입력단들(10), 서로 일정 거리 이격되어 상기 제1 직선과 평행한 제2 직선을 따라 배치되는 복수 개의 출력단들(30), 상기 입력단들(10)과 전기적으로 연결되고 서로 평행하게 배치되는 제1 도전 라인들(40), 상기 출력단들(30)과 전기적으로 연결되고 상기 제1 도전 라인들(40)과 교차하는 제2 도전 라인들(50)을 포함한다.Referring to FIG. 5, the kernel hardware system according to the second embodiment includes a plurality of input terminals 10 disposed along a first straight line spaced from each other by a predetermined distance, a plurality of input terminals 10 spaced apart from each other by a predetermined distance, A plurality of output terminals 30 disposed along a straight line, first conductive lines 40 electrically connected to the input terminals 10 and arranged in parallel to each other, a plurality of first conductive lines 40 electrically connected to the output terminals 30, And second conductive lines (50) intersecting the first conductive lines (40).

제1 도전 라인들(40)과 제2 도전 라인들(50)은 서로 직교하고, 상기 도전 라인들(40, 50)은 각각 입력단 또는 출력단으로부터 시작하여 노드들이 형성된 영역까지만 연장된다.The first conductive lines 40 and the second conductive lines 50 are orthogonal to each other and the conductive lines 40 and 50 extend only from the input or output end to the region where the nodes are formed.

예를 들어, X1과 연결되는 제1-1 도전 라인(41)은 제2-1 도전 라인(51)과 교차하는 점에 마지막 노드가 위치한다. 따라서 제1-1 도전 라인(41)은 입력단 X1으로부터 제2-1 도전 라인(51)과의 교차점 까지 연장된다. 마찬가지로, X2와 연결되는 제1-2 도전 라인(42)은 제2-2 도전 라인(52)과 교차하는 점에 상기 입력단 X2로부터 가장 먼 노드가 위치한다. 따라서 제1-2 도전 라인(42)은 입력단 X2로부터 제2-2 도전 라인(52)과의 교차점까지 연장된다. 제2 도전 라인들(50)의 경우에도 마찬가지로 적용되어, 제2-1 도전 라인(51)의 경우, 출력단 Y1으로부터 가장 먼 노드는 제1-15 도전 라인과의 교차점에 위치한다. 따라서 제2-1 도전 라인(51)은 출력단 Y1으로부터 제1-15 도전라인과의 교차점까지 연장된다.For example, the first-first conductive line 41 connected to X1 is located at the intersection with the second-first conductive line 51 at the last node. Thus, the 1-1 conductive line 41 extends from the input terminal X1 to the intersection with the 2-1 conductive line 51. Likewise, the first-second conductive line 42 connected to X2 is located at a node that is the farthest from the input terminal X2 at a point intersecting the second-second conductive line 52. [ Thus, the 1-2 conductive line 42 extends from the input X2 to the intersection with the 2-2 conductive line 52. The same applies to the case of the second conductive lines 50. In the case of the second-first conductive line 51, the node furthest from the output end Y1 is located at the intersection with the 1-15th conductive line. Thus, the second-first conductive line 51 extends from the output terminal Y1 to the intersection with the 1-15th conductive line.

도 6은 직교형 커널 하드웨어 시스템과 평행형 커널 하드웨어 시스템의 면적을 비교하기 위한 비교도이다.6 is a comparative diagram for comparing areas of an orthogonal kernel hardware system and a parallel kernel hardware system.

도 6을 참조하면, 직교형 커널 하드웨어 시스템(a)의 경우 전기적인 연결이 없는 불필요한 교차점까지 도전 라인들이 연장되어 넓은 면적을 차지하는 반면, 평행형 커널 하드웨어 시스템(b)의 경우 전기적인 연결이 없는 교차점들을 대부분 제거하여 노드가 형성된 면적만을 차지하는 것을 확인할 수 있다.Referring to FIG. 6, in the case of the orthogonal kernel hardware system (a), the conductive lines extend to occupy a large area to unnecessary intersections where there is no electrical connection, while in the case of the parallel kernel hardware system (b) It can be confirmed that only the area formed by the node is occupied by removing most intersections.

따라서 제2 실시예에 따른 평행형 커널 하드웨어 시스템(b)을 이용하는 경우 시스템의 고집적화가 가능하며, 불필요한 도전 라인들로 인한 전력 소모를 감소시킬 수 있다. 또한 입력 라인과 출력 라인이 평행하게 배치됨에 따라 레이어 간의 연결을 손쉽게 구현할 수 있다.Therefore, when the parallel kernel hardware system (b) according to the second embodiment is used, high integration of the system is possible and power consumption due to unnecessary conductive lines can be reduced. Also, since the input line and the output line are arranged in parallel, connection between the layers can be easily realized.

실시예 3 : 3차원 커널 하드웨어 시스템Embodiment 3: Three-dimensional kernel hardware system

도 7은 본 발명의 일 실시예에 따른 3차원 커널 하드웨어 시스템을 도시하는 단면도이다. 7 is a cross-sectional view illustrating a three-dimensional kernel hardware system according to an embodiment of the present invention.

도 7을 참조하면, 제3 실시예에 따른 커널 하드웨어 시스템은 기판(500), 행렬로 이루어진 입력 데이터의 원소들에 각각 대응하는 복수 개의 입력단들(10), 행렬로 이루어진 출력 데이터의 원소들에 각각 대응하는 복수 개의 출력단들(30), 기판(500) 상에 상기 기판(500)과 수직하게 서로 이격되어 배열된 제1 도전 라인들(540). 상기 기판(500) 상에 상기 기판(500)과 평행하게 적층된 제2 도전 라인들(550)을 포함한다.Referring to FIG. 7, a kernel hardware system according to the third embodiment includes a substrate 500, a plurality of input terminals 10 corresponding to elements of input data composed of a matrix, elements of output data composed of a matrix A plurality of output terminals 30 corresponding respectively to the first conductive lines 540 arranged on the substrate 500 and spaced apart from each other perpendicularly to the substrate 500. And second conductive lines 550 stacked on the substrate 500 in parallel with the substrate 500.

상기 제1 도전 라인들(540)의 외주를 따라 상기 제1 도전 라인들(540)과 상기 제2 도전 라인들(550) 사이에 저항 변화층(570)이 형성된다.A resistance variable layer 570 is formed between the first conductive lines 540 and the second conductive lines 550 along the periphery of the first conductive lines 540.

상기 제1 도전 라인들(540)과 제2 도전 라인들(550)의 교차점에 위치하는 저항 변화층(570) 중 노드가 형성되는 점(560)의 저항 변화층에만 선택적으로 도전 통로들이 형성되고, 그 외의 부분은 절연 상태 또는 고저항 상태를 유지할 수 있다.The conductive paths are selectively formed only in the resistance variable layer at the point 560 where nodes are formed in the resistance variable layer 570 located at the intersection of the first conductive lines 540 and the second conductive lines 550 , And the other portions can maintain an insulated state or a high resistance state.

제2 도전 라인들(550) 사이에는 제2 도전 라인들(550)을 절연하고 구조를 유지하기 위한 절연층들(580)이 형성될 수 있다. 즉, 제2 도전 라인들(550)과 절연층들(580)은 교대로 적층된 구조를 가질 수 있다.Insulating layers 580 may be formed between the second conductive lines 550 to insulate the second conductive lines 550 and to maintain the structure. That is, the second conductive lines 550 and the insulating layers 580 may have alternately stacked structures.

실시예 3에 따른 3차원 커널 하드웨어 시스템을 적용할 경우, 소자에 필요한 면적을 최소화하여 고집적화가 가능하다.When the three-dimensional kernel hardware system according to the third embodiment is applied, it is possible to minimize the area required for the device and achieve high integration.

도 8은 본 발명의 일 실시예에 따른 3차원 커널 하드웨어 시스템을 도시하는 평면도이다.FIG. 8 is a top view illustrating a three-dimensional kernel hardware system according to an embodiment of the present invention.

도 8을 참조하면, 도 7에서 도시한 것과 같이 입력단들(10)은 직선을 따라 일렬로 배열(a)되거나, 입력 데이터와 같이 행렬을 이루며 배열(b)될 수 있다. 입력단들(10)은 본 실시예에 도시된 것에 제한되지 아니하고 경우에 따라 다양한 배열을 가질 수 있다.Referring to FIG. 8, as shown in FIG. 7, input terminals 10 may be arranged in a line along a straight line or may be arranged in a matrix like input data. The input terminals 10 are not limited to those shown in this embodiment, and may have various arrangements in some cases.

도 9는 본 발명의 일 실시예에 따른 3차원 커널 하드웨어 시스템의 동작을 설명하기 위한 개략도들이다.FIG. 9 is a schematic diagram illustrating operations of a three-dimensional kernel hardware system according to an embodiment of the present invention.

도 9 (a)를 참조하면, 도 8(b)에 도시된 것과 같이 입력단들이 행렬을 이루며 배열되고, 입력단들에 연결된 제1 도전 라인들(40)도 행렬을 이루게 된다. 제1 도전 라인들(40)과 제2 도전 라인(50)이 교차하는 점을 도 9 (b)에 평면도로 도시하였다. Referring to FIG. 9 (a), the input terminals are arranged in a matrix as shown in FIG. 8 (b), and the first conductive lines 40 connected to the input ends also form a matrix. The cross section of the first conductive lines 40 and the second conductive line 50 is shown in a plan view in FIG. 9 (b).

일 실시예에서, 각 도전 라인들(50)은 3×3 크기의 행렬로 배열된 교차점들을 갖는다. 이 때 제2-1 도전 라인(51)의 교차점들 중 (1,1), (1,2), (2,1), (2,2)의 교차점에 제1 노드 그룹(21)이 형성된다. 마찬가지로 제2-2 도전 라인(51)의 교차점들 중 (1,2), (1,3), (2,2), (2,3)의 교차점에 제2 노드 그룹(22)이 형성된다. In one embodiment, each of the conductive lines 50 has intersections arranged in a 3x3 matrix. At this time, the first node group 21 is formed at the intersection of (1,1), (1,2), (2,1), (2,2) among the intersections of the second- do. Similarly, a second node group 22 is formed at an intersection of (1,2), (1,3), (2,2), (2,3) among the intersections of the second-second conductive line 51 .

입력 데이터는 제1 도전 라인들(40)을 통하여 전기적 신호로 인가되고, 동시에 노드 그룹들(20)을 통하여 제2 도전 라인들(50)로 전달된다. 각각의 노드 그룹들(20)은 동일한 저항 배열을 가진다. 인가된 입력 데이터는 노드 그룹들(20)을 거쳐 변환되고 제2 도전라인들(50)을 통하여 합산된 값이 출력단을 통하여 출력된다.The input data is applied as an electrical signal through the first conductive lines 40 and at the same time to the second conductive lines 50 through the node groups 20. Each node group 20 has the same resistance arrangement. The applied input data is converted via the node groups 20 and the summed value through the second conductive lines 50 is output through the output stage.

본 발명에 따른 커널 하드웨어 시스템은 수용 영역보다 큰 확장된 수용 영역 또는 이미지 전체를 입력시킬 수 있어 스캐닝 동작을 최소화 할 수 있다. 또한 커널 하드웨어 시스템이 차지하는 면적을 최소화하여 시스템의 고집적화를 가능하게 하였다.The kernel hardware system according to the present invention can input the extended acceptance area or the entire image larger than the acceptance area, thereby minimizing the scanning operation. Also, the area occupied by the kernel hardware system is minimized, which enables high integration of the system.

110 : 입력 데이터 행렬 120 : 커널 행렬
130 : 출력 데이터 행렬
10 : 입력단들 11 : 제1 입력단 그룹
20 : 노드 그룹들 21 : 제1 노드 그룹
30 : 출력단들 40 : 제1 도전 라인들
50 : 제2 도전 라인들 71 : 제1 직선
73 : 제2 직선
500 : 기판 540 : 제1 도전 라인들
550 : 제2 도전 라인들 560 : 노드들
570 : 저항 변화층 580 : 절연층들
110: input data matrix 120: kernel matrix
130: output data matrix
10: input stages 11: first input stage group
20: Node groups 21: First node group
30: output terminals 40: first conductive lines
50: second conductive lines 71: first straight line
73: 2nd straight line
500: substrate 540: first conductive lines
550: second conductive lines 560: nodes
570: resistance variable layer 580: insulating layers

Claims (8)

행렬로 이루어진 입력 데이터의 원소들에 각각 대응하는 복수 개의 입력단들;
행렬로 이루어진 출력 데이터의 원소들에 각각 대응하는 복수 개의 출력단들;
상기 입력단들과 전기적으로 연결되고 서로 평행하게 배치되는 제1 도전 라인들;
상기 출력단들과 전기적으로 연결되고 상기 제1 도전 라인들과 교차하는 제2 도전 라인들을 포함하고,
상기 입력 데이터는 n×n 크기를 갖는 수용 영역들로 구획되어 하나의 상기 수용 영역의 원소들에 대응하는 입력단들은 하나의 입력단 그룹으로 정의되고,
상기 입력단 그룹과 전기적으로 연결되는 상기 제1 도전 라인들은 하나의 상기 제2 도전 라인과 노드 그룹을 통해 전기적으로 연결되고,
상기 노드 그룹을 이루는 각각의 노드는 저항 변화 메모리인 커널 하드웨어 시스템.
A plurality of input terminals respectively corresponding to elements of input data composed of a matrix;
A plurality of output terminals respectively corresponding to elements of output data composed of a matrix;
First conductive lines electrically connected to the input terminals and disposed parallel to each other;
And second conductive lines electrically connected to the output terminals and intersecting the first conductive lines,
Wherein the input data is divided into acceptance regions having a size of nxn so that input terminals corresponding to elements of one acceptance region are defined as one input terminal group,
The first conductive lines electrically connected to the input terminal group are electrically connected to one of the second conductive lines through the node group,
Wherein each node of the group of nodes is a resistive memory.
제1항에 있어서,
하나의 상기 노드 그룹을 이루는 각각의 노드는 커널 행렬을 구성하는 원소 값에 대응하는 저항 값을 갖고,
모든 상기 노드 그룹들이 동일한 저항 배열을 갖는 커널 하드웨어 시스템.
The method according to claim 1,
Each node constituting one node group has a resistance value corresponding to an element value constituting the kernel matrix,
Wherein all of said node groups have the same resistance arrangement.
제1항에 있어서,
상기 복수 개의 입력단들은 서로 일정 거리 이격되어 제1 직선 상에 배치되고,
상기 복수 개의 출력단들은 서로 일정 거리 이격되어 제1 직선과 평행한 제2 직선 상에 배치되고,
상기 제1 도전 라인들은 각각 상기 입력단으로부터 시작하여 상기 노드들이 형성된 영역까지만 연장되고,
상기 제2 도전 라인들은 각각 상기 출력단으로부터 시작하여 상기 노드들이 형성된 영역까지만 연장되고,
상기 제1 도전 라인과 상기 제2 도전 라인은 서로 직교하는 커널 하드웨어 시스템.
The method according to claim 1,
Wherein the plurality of input terminals are disposed on a first straight line spaced apart from each other by a predetermined distance,
The plurality of output terminals are disposed on a second straight line spaced apart from each other by a predetermined distance and parallel to the first straight line,
Each of the first conductive lines extending from the input end to an area where the nodes are formed,
Each of the second conductive lines extending from the output end to an area where the nodes are formed,
Wherein the first conductive line and the second conductive line are orthogonal to each other.
제3항에 있어서,
상기 제1 도전 라인들과 상기 제2 도전 라인들이 상하로 교차하는 점들에서 상기 제1 도전 라인들과 상기 제2 도전 라인들 사이에 저항 변화층들이 형성되고,
상기 노드가 형성되는 점의 상기 저항변화층에만 선택적으로 도전 통로가 형성되고,
상기 도전 통로의 전도도는 커널 행렬의 원소 값에 대응하는 커널 하드웨어 시스템.
The method of claim 3,
Resistance change layers are formed between the first conductive lines and the second conductive lines at points where the first conductive lines and the second conductive lines cross vertically,
A conductive path is selectively formed only in the resistance variable layer at a point where the node is formed,
Wherein the conductivity of the conductive path corresponds to an element value of the kernel matrix.
제1항에 있어서,
상기 제1 도전 라인들은 서로 이격되어 기판 상에 상기 기판과 수직하게 배열되고,
상기 제2 도전 라인들은 서로 이격되어 상기 기판 상에 평행하게 적층되고,
상기 제1 도전 라인들과 상기 제2 도전 라인들은 서로 직교하는 커널 하드웨어 시스템.
The method according to claim 1,
The first conductive lines being spaced apart from each other and arranged on the substrate perpendicular to the substrate,
The second conductive lines are spaced apart from each other and stacked on the substrate in parallel,
Wherein the first conductive lines and the second conductive lines are orthogonal to each other.
제5항에 있어서,
상기 제2 도전 라인들은 면적을 가지고,
상기 제2 도전 라인들을 투과하여 상기 제1 도전 라인들이 행렬을 이루며 배열되고,
상기 제1 도전 라인들과 상기 제2 도전 라인들이 교차하는 접촉면에 저항 변화층들이 형성되고,
상기 노드가 형성되는 점의 상기 저항변화층들에만 선택적으로 도전 통로들이 형성되고,
상기 도전 통로의 전도도는 커널 행렬의 원소 값에 대응하는 커널 하드웨어 시스템.
6. The method of claim 5,
The second conductive lines having an area,
The first conductive lines passing through the second conductive lines are arranged in a matrix,
Resistance-variable layers are formed on the contact surfaces where the first conductive lines and the second conductive lines intersect,
Conductive paths are selectively formed only in the resistance-variable layers at points where the nodes are formed,
Wherein the conductivity of the conductive path corresponds to an element value of the kernel matrix.
제1항에 있어서,
상기 저항 변화 메모리는 구리, 은 또는 산소 이온의 이동에 의하여 저항 변화를 하는 커널 하드웨어 시스템.
The method according to claim 1,
Wherein the resistance change memory performs a resistance change by movement of copper, silver, or oxygen ions.
제1항에 있어서,
상기 제1 도전 라인과 상기 제2 도전 라인이 각각 상기 저항 변화 메모리의 상부 전극과 하부 전극을 형성하는 커널 하드웨어 시스템.
The method according to claim 1,
Wherein the first conductive line and the second conductive line form an upper electrode and a lower electrode of the resistance-change memory, respectively.
KR1020170183339A 2017-12-29 2017-12-29 Kernel Hardware Device Active KR102130532B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020170183339A KR102130532B1 (en) 2017-12-29 2017-12-29 Kernel Hardware Device
PCT/KR2018/015532 WO2019132308A1 (en) 2017-12-29 2018-12-07 Kernel hardware apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170183339A KR102130532B1 (en) 2017-12-29 2017-12-29 Kernel Hardware Device

Publications (2)

Publication Number Publication Date
KR20190081054A true KR20190081054A (en) 2019-07-09
KR102130532B1 KR102130532B1 (en) 2020-07-07

Family

ID=67067735

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170183339A Active KR102130532B1 (en) 2017-12-29 2017-12-29 Kernel Hardware Device

Country Status (2)

Country Link
KR (1) KR102130532B1 (en)
WO (1) WO2019132308A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240076455A (en) * 2022-11-22 2024-05-30 경북대학교 산학협력단 Hardware kernel system for convolutional neural network

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120313072A1 (en) * 2011-06-13 2012-12-13 Ingyu Baek Three-dimensional semiconductor memory devices having double cross point array and methods of fabricating the same
US20170337466A1 (en) * 2016-05-17 2017-11-23 Silicon Storage Technology, Inc. Deep Learning Neural Network Classifier Using Non-volatile Memory Array

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4922375B2 (en) * 2009-09-18 2012-04-25 株式会社東芝 Resistance change memory
KR101788829B1 (en) * 2015-08-24 2017-10-20 (주)뉴로컴즈 Convolutional neural network computing apparatus
US9904874B2 (en) * 2015-11-05 2018-02-27 Microsoft Technology Licensing, Llc Hardware-efficient deep convolutional neural networks

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120313072A1 (en) * 2011-06-13 2012-12-13 Ingyu Baek Three-dimensional semiconductor memory devices having double cross point array and methods of fabricating the same
US20170337466A1 (en) * 2016-05-17 2017-11-23 Silicon Storage Technology, Inc. Deep Learning Neural Network Classifier Using Non-volatile Memory Array

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20240076455A (en) * 2022-11-22 2024-05-30 경북대학교 산학협력단 Hardware kernel system for convolutional neural network

Also Published As

Publication number Publication date
WO2019132308A1 (en) 2019-07-04
KR102130532B1 (en) 2020-07-07

Similar Documents

Publication Publication Date Title
US11941515B2 (en) Memristive nanofiber neural networks
CN112836810B (en) Electronic device using cross array and data processing method
US20190065936A1 (en) Anti-hebbian and hebbian computing with thermodynamic ram
WO2011014156A1 (en) Reconfigurable multilayer circuit
US12069869B2 (en) Memristive device
CN111062463A (en) Implementing a multi-layer neural network using a crossbar
KR20190059397A (en) Neural networks using cross-point array and pattern readout method thereof
KR20220057386A (en) Expandable neuromorphic circuit
Ananthakrishnan et al. All-passive hardware implementation of multilayer perceptron classifiers
KR20190081054A (en) Kernel Hardware Device
WO2011093863A1 (en) Three dimensional multilayer circuit
CN118858690B (en) Moving direction detection device and detection system
US8351234B2 (en) Extensible three dimensional circuit having parallel array channels
US6925015B2 (en) Stacked memory device having shared bitlines and method of making the same
US8023307B1 (en) Peripheral signal handling in extensible three dimensional circuits
CN115115054B (en) A circuit structure, quantum chip and quantum computer
Oruç One-sided binary tree-crossbar switching for on-chip networks
KR20230126240A (en) Neuromophic semiconductor of three dimensional integrated signalling network
US20230147205A1 (en) Lithographic memristive array
US20230422516A1 (en) Neural network hardware device and system
CN111009514B (en) Capacitor element unit for semiconductor device and semiconductor device thereof
CN116107457A (en) Touch panel and driving method thereof
KR20190051525A (en) Capacitance based multi-level synapse device and fabrication method thereof
Obenaus et al. Embeddings of star graphs into optical meshes without bends
CN119945968A (en) Topological structure, routing method and device of interconnected network

Legal Events

Date Code Title Description
A201 Request for examination
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20171229

PA0201 Request for examination
PG1501 Laying open of application
E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20191118

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20200629

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20200630

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20200630

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20230320

Start annual number: 4

End annual number: 4