WO2020116672A1 - 딥러닝 하드웨어 가속장치 - Google Patents

딥러닝 하드웨어 가속장치 Download PDF

Info

Publication number
WO2020116672A1
WO2020116672A1 PCT/KR2018/015308 KR2018015308W WO2020116672A1 WO 2020116672 A1 WO2020116672 A1 WO 2020116672A1 KR 2018015308 W KR2018015308 W KR 2018015308W WO 2020116672 A1 WO2020116672 A1 WO 2020116672A1
Authority
WO
WIPO (PCT)
Prior art keywords
registers
deep learning
input image
hardware accelerator
pixels
Prior art date
Application number
PCT/KR2018/015308
Other languages
English (en)
French (fr)
Inventor
이상설
장성준
Original Assignee
전자부품연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 전자부품연구원 filed Critical 전자부품연구원
Publication of WO2020116672A1 publication Critical patent/WO2020116672A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2200/00Indexing scheme for image data processing or generation, in general
    • G06T2200/28Indexing scheme for image data processing or generation, in general involving image processing hardware

Definitions

  • the present invention relates to a system on chip (SoC) technology for image processing, and more particularly, to a structure and a design method of a hardware accelerator for deep learning processing an input image.
  • SoC system on chip
  • im2col uses a GPU (Graphic Processing Unit) to generate data for convolution by performing a function similar to a sliding window.
  • GPU Graphic Processing Unit
  • im2col generates the data corresponding to the kernel from the input image for each channel, stores it in the internal or external space, and loads the data to perform the operation. It is said that if im2col is used, data operations can be performed at high speed.
  • im2col stores the data in an external large/low-speed storage space when hardware is implemented, and it is necessary to patch data to the external storage space each time, so that high-speed processing cannot be performed.
  • the present invention has been devised to solve the above problems, and an object of the present invention is to provide a deep learning hardware accelerator that processes data only with an input image without using a preprocessor such as im2col.
  • the deep learning hardware accelerator includes first registers for storing some pixels among lines of an input image; First memories storing remaining pixels among lines of the input image; And a first kernel that performs an operation using pixels stored in registers.
  • the first registers may be divided in units of pixels.
  • the first memories may be divided in units of lines.
  • Each of the first registers is located at the front end of each of the first memories, so data stored in the first registers can be shifted to the first memories.
  • the data stored in the first memories can be shifted to the first registers located in the next row.
  • the row-column arrangement of the first registers may be determined by the row-column specification of the filter used by the kernel for computation.
  • the deep learning hardware accelerator includes second registers for storing data generated by the operation of the first kernel; It may further include; second memories storing data shifted by being located at the rear end of each of the second registers.
  • the first registers include storing some of the pixels of the lines of the input image; Storing the remaining pixels among the lines of the input image by the first memories; And the first kernel performing an operation using pixels stored in registers.
  • a deep learning hardware accelerator suitable for a hardware structure can be implemented by processing data only with an input image without using a preprocessor such as im2col.
  • a hardware structure having the same structure can be applied without an increase in memory or a decrease in the number of bits, thereby enabling flexible hardware block design.
  • FIG. 2 is a block diagram of a deep learning processing system according to an embodiment of the present invention.
  • FIG. 3 is a diagram illustrating a storage space of the input image memory shown in FIG. 2,
  • FIG. 4 is a diagram provided for conceptual description of a deep learning hardware accelerator according to another embodiment of the present invention.
  • image data is pre-configured to fit the size of the filter, and for calculation of the next kernel
  • the average of 2 pixels of data must be stored overlapping. This is 2.25 times the total storage space, which requires a lot of storage space.
  • the deep learning hardware accelerator may be implemented only with a basic required area in terms of memory structure of the hardware by configuring only an input image or a processed image, not a pre-processed image.
  • the deep learning processing system includes an input image memory 110, a deep learning accelerator 120, and a processing unit 130, as shown in FIG. 2.
  • the input image memory 110 is a memory that stores input images.
  • the storage space of the input image memory 110 is illustrated in FIG. 3.
  • an input image memory 110 for storing a 608 ⁇ 608 image is assumed.
  • the storage space shown in FIG. 3 is memory allocated for one input channel.
  • the address was assigned as a predictable address value (line-1) (2nd line: 0x00001xxx, 608th line: 0x0025Fxxx).
  • the assumed image standard corresponds to an example given for explanation, and it goes without saying that the technical idea of the present invention can be applied to other image standards.
  • the deep learning accelerator 120 does not use a pre-processor such as im2col, and performs calculation with data using only the input image provided from the input image memory 110.
  • a pre-processor such as im2col
  • the processing unit 130 performs subsequent processing required for the calculation result (Feature MaP) output from the deep learning accelerator 120.
  • FIG. 4 is a diagram provided for conceptual description of a deep learning hardware accelerator according to another embodiment of the present invention.
  • Deep learning accelerator 120 according to an embodiment of the present invention, as shown in Figure 4, the buffer 121, register set #1 (122), block RAM set #1 (123), filter #1 ( 124), register set #2 (125) and block RAM set #2 (126).
  • the buffer 121 is a storage space for moving the input image stored in the input image memory 110 and transferring it to the register set #1 122 in units of pixels.
  • Register set #1 (122) is configured by arranging 9 registers (IF22 to IF00) in 3x3.
  • the block RAM set #1 (123) is composed of two block RAMs (Block RAM0, Block RAM1) arranged in line units.
  • the image pixels output through the buffer 121 are shifted by shifting to the registers IF22, IF21, and IF20 located in one row for each clock, and then shifted by being shifted from the block RAM0 located in the first row. After that, it moves to the register IF12 located in the 2nd row and 1st column.
  • the shifted image pixels are shifted by shifting to the registers (IF12, IF11, IF10) located in the second row for each clock, and then shifted from the block RAM (Block RAM1) located in the second row to the third row, first column. Move to the located register (IF02).
  • the shifted image pixels are shifted for each clock by shifting to registers IF02, IF01, and IF00 located in row 3.
  • the kernel (not shown) performs an operation with filter #1 124 using nine image fillel data stored in register set #1 (122) for each clock.
  • the deep learning accelerator 120 places the register set #1 (122) at the front end of the block RAM set #1 (123), and Some of the pixels are stored in register set #1 (122) to be used for computation by the kernel.
  • the registers (IF22 to IF00) constituting the register set #1 (122) are divided in pixel units.
  • the kernel can acquire all of the pixel data on the same clock.
  • the standard 3x3 of the register set #1 (122) matches the standard 3x3 of the filter 124 used for kernel operation. If the specification of the filter 124 used for kernel operation is 4x4, register set #1(122) must also be implemented with 4x4 registers.
  • register set #2 (125) is composed of 16 registers (F2321 ⁇ F0000) are arranged in a 4 ⁇ 4.
  • the block RAM set #2 126 is composed of three block RAMs (Block RAM0, Block RAM1, Block RAM2) arranged in units of lines.
  • the result of the operation by the kernel (Feature Map Data) is shifted by shifting to the registers located in row 1 for each clock, and then shifted from the block RAM located in row 1 to the registers located in row 2 and column 1. .
  • the shifted operation result is shifted by shifting to registers located in row 2 for each clock, and then shifted from the block RAM located in row 2 to the register located in row 3, column 1, and so on.
  • the shifted operation result is shifted by shifting to the registers located in row 3 for each clock, and then shifted from the block RAM located in row 3 to the registers in row 4 and column 1.
  • the shifted image pixels are shifted by clocks to registers located in row 4 for each clock.
  • the kernel performs an operation with the filter #2 (not shown) of the 4x4 standard by using 16 image fill cells stored in the register set #2 (125) for each clock.
  • the deep learning accelerator 120 illustrated in FIG. 4 shows only a part of the entire configuration. Of course, a register set and a block RAM set may be added for a subsequent operation at the rear end of the illustrated deep learning accelerator 120.
  • a hardware accelerator structure design method for deep learning processing using an input image is proposed.
  • a deep learning hardware accelerator is proposed, which does not use a preprocessor such as im2col, has a simple structure, and does not require redesign due to an algorithm change, and excludes unnecessary image generation operations to improve processing speed. Did.
  • the deep learning accelerator does not use pre-processed data, processes data only with the input image, reduces the number of large memory accesses, and improves processing speed and excludes pre-processing image generation operations by processing based on the kernel. You can.
  • the memory has the same structure without increasing memory or reducing the number of bits. Since a hardware structure can be applied, flexible hardware block design is possible, and speed can be improved by reducing the number of memory patching by reducing the number of accesses per pixel.

Landscapes

  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Image Processing (AREA)

Abstract

im2col과 같은 전처리기를 사용하지 않고, 입력 영상만으로 데이터를 처리하는 딥러닝 하드웨어 가속장치가 제공된다. 본 발명의 실시예에 따른 딥러닝 하드웨어 가속장치는 입력 영상의 라인들 중 일부 픽셀들을 저장하는 제1 레지스터들; 입력 영상의 라인들 중 나머지 픽셀들을 저장하는 제1 메모리들; 및 레지스터들에 저장된 픽셀들을 이용하여 연산을 수행하는 제1 커널;을 포함한다. 이에 의해, im2col과 같은 전처리기를 사용하지 않고 입력 영상만으로 데이터를 처리함으로써, 하드웨어 구조에 적합한 딥러닝 하드웨어 가속장치를 구현할 수 있다.

Description

딥러닝 하드웨어 가속장치
본 발명은 영상 처리를 위한 SoC(System on Chip) 기술에 관한 것으로, 더욱 상세하게는 입력 영상을 딥러닝 처리하기 위한 하드웨어 가속장치의 구조와 설계 방안에 관한 것이다.
도 1은 im2col(image to column operation)의 개념을 나타낸 도면이다. im2col은 슬라이딩 윈도우와 유사한 기능을 수행하여 컨볼루션을 위한 데이터를 생성하는 방식으로, GPU(Graphic Processing Unit)를 활용한다.
im2col은 입력 영상으로부터 커널에 해당하는 데이터를 채널 별로 생성하여 내부 또는 외부 공간에 저장을 하고, 해당 데이터를 불러들여 연산을 수행하는 과정을 거친다. im2col을 사용할 경우 빠른 속도로 데이터 연산을 수행할 수 있다고 되어 있다.
하지만, SoC 혹은 하드웨어 장치에서 위와 같은 방식은 사용이 불가능하다. 하드웨어의 특성상 메모리의 한계가 있기 때문이다. 특히, 입력 영상(Input Feature Map)의 크기가 클 경우에는 생성된 데이터가 굉장히 커지게 되어 저장 자체가 불가능한 형태가 된다.
따라서, im2col은 하드웨어 구현 시에 외부 대용량/저속 저장공간에 해당 데이터를 저장하고, 매번 외부 저장공간으로의 데이터 패칭이 필요하게 되어 고속 처리를 할 수 없는 형태가 된다.
또한, 입력 영상 기준으로 하나의 feature map이 32비트의 크기가 필요하게 되어 해당 데이터를 저장하는 메모리 공간이 크며, 데이터를 불러들일 때 Bandwidth가 많이 필요하게 된다.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은, im2col과 같은 전처리기를 사용하지 않고, 입력 영상만으로 데이터를 처리하는 딥러닝 하드웨어 가속장치를 제공함에 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른, 딥러닝 하드웨어 가속장치는 입력 영상의 라인들 중 일부 픽셀들을 저장하는 제1 레지스터들; 입력 영상의 라인들 중 나머지 픽셀들을 저장하는 제1 메모리들; 및 레지스터들에 저장된 픽셀들을 이용하여 연산을 수행하는 제1 커널;을 포함한다.
제1 레지스터들은, 픽셀 단위로 구분되어 있을 수 있다.
제1 메모리들은, 라인 단위로 구분되어 있을 수 있다.
제1 레지스터들 각각은 제1 메모리들 각각의 전단에 위치하여, 제1 레지스터들에 저장된 데이터들은 제1 메모리들로 시프트 될 수 있다.
제1 메모리들에 저장된 데이터들은, 다음 행에 위치한 제1 레지스터들로 시프트될 수 있다.
제1 레지스터들의 행×열 배열은, 커널이 연산을 위해 이용하는 필터의 행×열 규격에 의해 결정될 수 있다.
본 발명에 따른 딥러닝 하드웨어 가속장치는 제1 커널의 연산으로 생성된 데이터를 저장하는 제2 레지스터들; 제2 레지스터들 각각의 후단에 위치하여 시프트 되는 데이터들을 저장하는 제2 메모리들;을 더 포함할 수 있다.
본 발명의 다른 측면에 따르면, 제1 레지스터들이, 입력 영상의 라인들 중 일부 픽셀들을 저장하는 단계; 제1 메모리들이, 입력 영상의 라인들 중 나머지 픽셀들을 저장하는 단계; 및 제1 커널이, 레지스터들에 저장된 픽셀들을 이용하여 연산을 수행하는 단계;를 포함한다.
이상 설명한 바와 같이, 본 발명의 실시예들에 따르면, im2col과 같은 전처리기를 사용하지 않고 입력 영상만으로 데이터를 처리함으로써, 하드웨어 구조에 적합한 딥러닝 하드웨어 가속장치를 구현할 수 있다.
또한, 본 발명의 실시예들에 따르면, 영상의 해상도가 커짐에 상관 없이 메모리 증가 또는 비트수의 감소 없이 동일한 구조의 하드웨어 구조를 적용할 수 있어, 유연한 하드웨어 블럭 설계가 가능하다.
그리고, 본 발명의 실시예들에 따르면, 필요한 픽셀당 접근 횟수 감소로 메모리 패칭 횟수의 감소에 의한 속도 향상을 기대할 수 있다.
도 1은 im2col의 개념을 나타낸 도면,
도 2는 본 발명의 일 실시예에 따른 딥러닝 처리 시스템의 블록도,
도 3은, 도 2에 도시된 입력 영상 메모리의 저장 공간을 예시한 도면,
도 4는 본 발명의 다른 실시예에 따른 딥러닝 하드웨어 가속장치의 개념 설명에 제공되는 도면이다.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 1에 도시된 기존의 영상 생성 전처리기와 같이, 영상을 생성하기 위한 커널이 3개의 필터(2x2)를 이용한다고 가정하면, 영상 데이터를 필터의 크기에 맞게 미리 구성하고, 다음 커널의 계산을 위한 데이터를 생성하는데 평균 2픽셀의 데이터가 중첩되어 저장되어야 한다. 이는 전체 저장 공간 대비 2.25배가 되어, 많은 저장 공간을 요구하게 된다.
하지만, 본 발명의 실시예에 따른 딥러닝 하드웨어 가속장치는, 전처리된 영상이 아닌 입력 영상 혹은 처리된 영상만으로 구성하여, 하드웨어의 메모리 구조 측면에서 기본 필요 영역 만으로 구현이 가능하다.
도 2는 본 발명의 일 실시예에 따른 딥러닝 처리 시스템의 블록도이다. 본 발명의 실시예에 따른 딥러닝 처리 시스템은, 도 2에 도시된 바와 같이, 입력 영상 메모리(110), 딥러닝 가속장치(120) 및 처리부(130)를 포함한다.
입력 영상 메모리(110)는 입력 영상을 저장하는 메모리이다. 입력 영상 메모리(110)의 저장 공간을 도 3에 예시하였다. 도 3에서는 608×608 영상을 저장하기 위한 입력 영상 메모리(110)를 상정하였다.
도 3에 도시된 저장 공간은 한 개의 입력 채널을 위해 할당한 메모리이다. 해당 주소를 예측 가능한 주소값(라인-1)으로 할당(2nd line : 0x00001xxx, 608th line : 0x0025Fxxx) 하였다.
상정한 영상 규격은 설명을 위해 든 일 예에 해당하는 것으로, 다른 영상 규격에 대해서도 본 발명의 기술적 사상이 그대로 적용될 수 있음은 물론이다.
다시, 도 2를 참조하여 설명한다.
딥러닝 가속장치(120)는 im2col과 같은 전처리기를 사용하지 않고, 입력 영상 메모리(110)로부터 제공되는 입력 영상만으로 데이터로 연산을 수행한다. 딥러닝 가속장치(120)의 상세 구조에 대해서는 도 4를 참조하여 상세히 설명한다.
처리부(130)는 딥러닝 가속장치(120)에서 출력되는 연산 결과(Feature MaP)에 대해 필요한 후속 처리를 수행한다.
이하에서는, 도 2에 도시된 딥러닝 가속장치(120)에 대해, 도 4를 참조하여 상세히 설명한다. 도 4는 본 발명의 다른 실시예에 따른 딥러닝 하드웨어 가속장치의 개념 설명에 제공되는 도면이다.
본 발명의 실시예에 따른 딥러닝 가속장치(120)는, 도 4에 도시된 바와 같이, 버퍼(121), 레지스터 셋 #1(122), 블록 RAM 셋 #1(123), 필터 #1(124), 레지스터 셋 #2(125) 및 블록 RAM 셋 #2(126)를 포함하여 구성된다.
버퍼(121)는 입력 영상 메모리(110)에 저장된 입력 영상을 옮겨, 레지스터 셋 #1(122)에 픽셀 단위로 전달하기 위한 저장 공간이다.
레지스터 셋 #1(122)은 9개의 레지스터들(IF22 ~ IF00)이 3×3 으로 배열되어 구성된다. 그리고, 블록 RAM 셋 #1(123)은 2개의 블록 RAM들(Block RAM0, Block RAM1)이 라인 단위로 배열되어 구성된다.
버퍼(121)를 통해 출력되는 영상 픽셀은, 클럭 마다, 1행에 위치한 레지스터들(IF22,IF21,IF20)로 시프트 되면서 이동한 후, 1행에 위치한 블록 RAM(Block RAM0)에서 시프트 되면서 이동한 후에, 2행 1열에 위치한 레지스터(IF12)로 이동한다.
이동된 영상 픽셀은, 클럭 마다, 2행에 위치한 레지스터들(IF12,IF11,IF10)로 시프트 되면서 이동한 후, 2행에 위치한 블록 RAM(Block RAM1)에서 시프트 되면서 이동한 후에, 3행 1열에 위치한 레지스터(IF02)로 이동한다.
이동된 영상 픽셀은, 클럭 마다, 3행에 위치한 레지스터들(IF02,IF01,IF00)로 시프트 되면서 이동한다.
이 과정에서, 커널(미도시)은, 클럭 마다, 레지스터 셋 #1(122)에 저장된 9개의 영상 필셀 데이터들을 이용하여 필터 #1(124)로 연산을 수행한다.
도 4에 도시된 바와 같이, 본 발명의 실시예에 따른 딥러닝 가속장치(120)는, 레지스터 셋 #1(122)을 블록 RAM 셋 #1(123)의 전단에 위치시켜, 입력 영상 라인의 일부 픽셀들은 레지스터 셋 #1(122)에 저장되어 커널에 의해 연산에 이용되도록 하였다.
그리고, 다음 연산에 필요한 나머지 픽셀들은, 레지스터 셋 #1(122)의 후단에 위치한 블록 RAM 셋 #1(123)에 저장된 상태로 시프트 되도록 하여, 레지스터 셋 #1(122)으로 다시 전달되도록 하였다.
라인 단위로 구분되어 있는 블록 RAM 셋 #1(123)의 블록 RAM들(Block RAM0, Block RAM1)과 달리, 레지스터 셋 #1(122)을 구성하는 레지스터들(IF22 ~ IF00)은 픽셀 단위로 구분하여 구현함으로써, 커널이 픽셀 데이터들을 동일 클럭에 모두 취득할 수 있도록 하였다.
한편, 레지스터 셋 #1(122)의 규격 3×3은 커널 연산을 위해 이용하는 필터(124)의 규격 3×3에 일치시킨 것이다. 만약, 커널 연산을 위해 이용하는 필터(124)의 규격이 4×4 라면, 레지스터 셋 #1(122)도 4×4 레지스터들로 구현하여야 한다.
한편, 레지스터 셋 #2(125)는 16개의 레지스터들(F2321 ~ F0000)이 4×4 으로 배열되어 구성된다. 그리고, 블록 RAM 셋 #2(126)은 3개의 블록 RAM들(Block RAM0, Block RAM1, Block RAM2)이 라인 단위로 배열되어 구성된다.
커널에 의한 연산 결과(Feature Map Data)는, 클럭 마다, 1행에 위치한 레지스터들로 시프트 되면서 이동한 후, 1행에 위치한 블록 RAM에서 시프트 되면서 이동한 후에, 2행 1열에 위치한 레지스터로 이동한다.
이동된 연산 결과는, 클럭 마다, 2행에 위치한 레지스터들로 시프트 되면서 이동한 후, 2행에 위치한 블록 RAM에서 시프트 되면서 이동한 후에, 3행 1열에 위치한 레지스터로 이동한다.
그리고, 이동된 연산 결과는, 클럭 마다, 3행에 위치한 레지스터들로 시프트 되면서 이동한 후, 3행에 위치한 블록 RAM에서 시프트 되면서 이동한 후에, 4행 1열에 위치한 레지스터로 이동한다.
당므, 이동된 영상 픽셀은, 클럭 마다, 4행에 위치한 레지스터들로 시프트 되면서 이동한다.
이 과정에서, 커널(미도시)은, 클럭 마다, 레지스터 셋 #2(125)에 저장된 16개의 영상 필셀들을 이용하여 4×4 규격의 필터 #2(미도시)로 연산을 수행한다.
도 4에 도시된 딥러닝 가속장치(120)는 전체 구성의 일부만을 도시한 것이다. 도시된 딥러닝 가속장치(120)의 후단에 레지스터 셋과 블록 RAM 셋이 후속 연산을 위해 추가될 수 있음은 물론이다.
지금까지, 딥러닝 하드웨어 가속장치에 대해 바람직한 실시예를 들어 상세히 설명하였다.
본 발명의 실시예에서는, 입력 영상을 이용한 딥러닝 처리를 위한 하드웨어 가속기 구조 설계 방안을 제시하였다. 구체적으로, 본 발명의 실시예에서는, im2col과 같은 전처리기를 사용하지 않고, 단순한 구조로 알고리즘 변경에 따른 재설계 불필요하며, 불필요한 영상 생성 연산을 배제하여 처리 속도를 향상시킨 딥러닝 하드웨어 가속장치를 제시하였다.
이에 의해, 딥러닝 가속기에서 전처리를 거친 데이터를 사용하지 않고, 입력되는 영상만으로 데이터를 처리하여, 대용량의 메모리 접근 횟수를 줄이고, 커널 기반으로 처리하여 처리 속도 향상 및 전처리 영상 생성 연산의 배제를 기대할 수 있다.
또한, im2col과 같은 전처리기를 사용하지 않고 입력 영상만으로 데이터를 처리함으로써, 하드웨어 구조에 적합한 딥러닝 하드웨어 가속장치를 구현함으로써, 영상의 해상도가 커짐에 상관 없이 메모리 증가 또는 비트수의 감소 없이 동일한 구조의 하드웨어 구조를 적용할 수 있어, 유연한 하드웨어 블럭 설계가 가능하며, 필요한 픽셀당 접근 횟수 감소로 메모리 패칭 횟수의 감소에 의해 속도를 향상시킬 수 있다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.

Claims (8)

  1. 입력 영상의 라인들 중 일부 픽셀들을 저장하는 제1 레지스터들;
    입력 영상의 라인들 중 나머지 픽셀들을 저장하는 제1 메모리들; 및
    레지스터들에 저장된 픽셀들을 이용하여 연산을 수행하는 제1 커널;을 포함하는 것을 특징으로 하는 딥러닝 하드웨어 가속장치.
  2. 청구항 1에 있어서,
    제1 레지스터들은,
    픽셀 단위로 구분되어 있는 것을 특징으로 하는 딥러닝 하드웨어 가속장치.
  3. 청구항 2에 있어서,
    제1 메모리들은,
    라인 단위로 구분되어 있는 것을 특징으로 하는 딥러닝 하드웨어 가속장치.
  4. 청구항 3에 있어서,
    제1 레지스터들 각각은 제1 메모리들 각각의 전단에 위치하여,
    제1 레지스터들에 저장된 데이터들은 제1 메모리들로 시프트 되는 것을 특징으로 하는 딥러닝 하드웨어 가속장치.
  5. 청구항 4에 있어서,
    제1 메모리들에 저장된 데이터들은,
    다음 행에 위치한 제1 레지스터들로 시프트되는 것을 특징으로 하는 딥러닝 하드웨어 가속장치.
  6. 청구항 4에 있어서,
    제1 레지스터들의 행×열 배열은,
    커널이 연산을 위해 이용하는 필터의 행×열 규격에 의해 결정되는 것을 특징으로 하는 딥러닝 하드웨어 가속장치.
  7. 청구항 6에 있어서,
    제1 커널의 연산으로 생성된 데이터를 저장하는 제2 레지스터들;
    제2 레지스터들 각각의 후단에 위치하여 시프트 되는 데이터들을 저장하는 제2 메모리들;을 더 포함하는 것을 특징으로 하는 딥러닝 하드웨어 가속장치.
  8. 제1 레지스터들이, 입력 영상의 라인들 중 일부 픽셀들을 저장하는 단계;
    제1 메모리들이, 입력 영상의 라인들 중 나머지 픽셀들을 저장하는 단계; 및
    제1 커널이, 레지스터들에 저장된 픽셀들을 이용하여 연산을 수행하는 단계;를 포함하는 것을 특징으로 하는 딥러닝 하드웨어 가속방법.
PCT/KR2018/015308 2018-12-05 2018-12-05 딥러닝 하드웨어 가속장치 WO2020116672A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2018-0154989 2018-12-05
KR1020180154989A KR102023855B1 (ko) 2018-12-05 2018-12-05 딥러닝 하드웨어 가속장치

Publications (1)

Publication Number Publication Date
WO2020116672A1 true WO2020116672A1 (ko) 2020-06-11

Family

ID=68067289

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2018/015308 WO2020116672A1 (ko) 2018-12-05 2018-12-05 딥러닝 하드웨어 가속장치

Country Status (2)

Country Link
KR (1) KR102023855B1 (ko)
WO (1) WO2020116672A1 (ko)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102334473B1 (ko) * 2019-11-20 2021-12-03 한국전자기술연구원 적응형 딥러닝 가속 장치 및 방법
KR20220067731A (ko) * 2020-11-18 2022-05-25 한국전자기술연구원 적응형 딥러닝 데이터 압축 처리 장치 및 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101556931B1 (ko) * 2009-02-24 2015-10-02 삼성전자주식회사 영상 데이터 처리 장치 및 방법
KR101803409B1 (ko) * 2015-08-24 2017-12-28 (주)뉴로컴즈 다중 계층 신경망 컴퓨팅 장치 및 방법
KR20180060149A (ko) * 2016-11-28 2018-06-07 삼성전자주식회사 컨볼루션 처리 장치 및 방법
KR20180062911A (ko) * 2016-12-01 2018-06-11 비아 얼라이언스 세미컨덕터 씨오., 엘티디. 효율적인 3-차원 컨벌루션을 수행하는 신경망 유닛
KR20180100372A (ko) * 2016-02-26 2018-09-10 구글 엘엘씨 고성능의 전력 효율적인 프로그래밍 가능 이미지 처리 하드웨어 플랫폼에 프로그램 코드를 매핑하기 위한 컴파일러 기술들

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102586173B1 (ko) * 2017-10-31 2023-10-10 삼성전자주식회사 프로세서 및 그 제어 방법

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101556931B1 (ko) * 2009-02-24 2015-10-02 삼성전자주식회사 영상 데이터 처리 장치 및 방법
KR101803409B1 (ko) * 2015-08-24 2017-12-28 (주)뉴로컴즈 다중 계층 신경망 컴퓨팅 장치 및 방법
KR20180100372A (ko) * 2016-02-26 2018-09-10 구글 엘엘씨 고성능의 전력 효율적인 프로그래밍 가능 이미지 처리 하드웨어 플랫폼에 프로그램 코드를 매핑하기 위한 컴파일러 기술들
KR20180060149A (ko) * 2016-11-28 2018-06-07 삼성전자주식회사 컨볼루션 처리 장치 및 방법
KR20180062911A (ko) * 2016-12-01 2018-06-11 비아 얼라이언스 세미컨덕터 씨오., 엘티디. 효율적인 3-차원 컨벌루션을 수행하는 신경망 유닛

Also Published As

Publication number Publication date
KR102023855B1 (ko) 2019-09-20

Similar Documents

Publication Publication Date Title
CN108681984B (zh) 一种3*3卷积算法的加速电路
WO2020116672A1 (ko) 딥러닝 하드웨어 가속장치
EP0360243B1 (en) Video memory device
US8130229B2 (en) Methods and apparatus for image processing at pixel rate
CN101019413A (zh) 成像器中的双面板像素读出
WO2012011644A1 (ko) 중앙 처리 장치, 그것의 gpu 시뮬레이션 방법 그리고 그것을 포함하는 컴퓨팅 시스템
KR20050022200A (ko) 넓은 메모리 밴드위스를 갖는 디지털 신호 처리 장치 및그 메모리 맵핑 방법
CN107526223B (zh) 显示面板
CN109858622B (zh) 深度学习神经网络的数据搬运电路和方法
CN112905530A (zh) 片上架构、池化计算加速器阵列、单元以及控制方法
US6928516B2 (en) Image data processing system and method with image data organization into tile cache memory
US4647971A (en) Moving video special effects system
WO2020153513A1 (ko) 딥러닝 가속 하드웨어 장치
EP0130340B1 (en) Memory mapping and readout system
CN1084883C (zh) 有源矩阵显示板
US20100122045A1 (en) Method for processing data using triple buffering
CN113781290B (zh) 一种用于fast角点检测的向量化硬件装置
US8681165B2 (en) Image rotation method and apparatus
CN111554334A (zh) 一种实现多tap访问DDR的方法及系统
CN105632389A (zh) 显示面板
WO2024135862A1 (ko) 비정형 데이터 처리를 지원하는 데이터 처리 및 가공 장치
Raja et al. An SIMD multiple DSP microprocessor system for image processing
JP3050321B2 (ja) マルチポートメモリ
KR20230078477A (ko) 이미지 센서
GB2202718A (en) Display adapter

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 18942049

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 18942049

Country of ref document: EP

Kind code of ref document: A1