WO2021107170A1 - 저전력 딥러닝 가속 장치 - Google Patents

저전력 딥러닝 가속 장치 Download PDF

Info

Publication number
WO2021107170A1
WO2021107170A1 PCT/KR2019/016337 KR2019016337W WO2021107170A1 WO 2021107170 A1 WO2021107170 A1 WO 2021107170A1 KR 2019016337 W KR2019016337 W KR 2019016337W WO 2021107170 A1 WO2021107170 A1 WO 2021107170A1
Authority
WO
WIPO (PCT)
Prior art keywords
power
deep learning
blocks
learning accelerator
memory
Prior art date
Application number
PCT/KR2019/016337
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 WO2021107170A1 publication Critical patent/WO2021107170A1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/06Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons
    • G06N3/063Physical realisation, i.e. hardware implementation of neural networks, neurons or parts of neurons using electronic means
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11CSTATIC STORES
    • G11C16/00Erasable programmable read-only memories
    • G11C16/02Erasable programmable read-only memories electrically programmable
    • G11C16/06Auxiliary circuits, e.g. for writing into memory
    • G11C16/30Power supply circuits
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Definitions

  • the present invention relates to image processing and System on Chip (SoC) technology using artificial intelligence technology, and more particularly, to a design method for low-power operation of deep learning accelerator hardware.
  • SoC System on Chip
  • Low power consumption of the deep learning acceleration device is particularly required when the deep learning acceleration device is implemented in a mobile terminal, and it is necessary to perform a low-power operation by not applying power to an unnecessary operation block or by controlling a clock.
  • the currently widely used technique is a power management method by clock gating, but it is difficult to expect a large power reduction as most rely on a power management tool.
  • the present invention has been devised to solve the above problems, and an object of the present invention is to enable an effective and efficient low-power operation of a deep learning acceleration device, each storage block and each operation block individually. It is to provide a deep learning accelerator that controls the application of power.
  • a deep learning accelerator device includes a memory divided into a plurality of storage blocks; a processor divided into a plurality of arithmetic blocks; and a power controller that individually controls application of power to each of the storage blocks and individually controls application of power to each of the operation blocks.
  • the power controller may individually control application of power to each of the storage blocks based on the access pattern of the processor to the storage blocks.
  • the power controller may control so that power is applied only to storage blocks to be accessed by the processor.
  • the input feature map and the weight of the deep learning network may be stored.
  • a deep learning accelerator includes: a first checker for checking the parts in which data is '0' in the input feature map stored in the memory; and a second checker for checking portions in which data is '0' in the weight stored in the memory, wherein the power controller further comprises, based on a result of the check of the first checker and the second checker, a calculation block to which power is not to be applied can decide
  • the deep learning accelerator according to the present invention further includes a third checker that checks the parts in which data becomes '0' by operation in the operation blocks, and the power controller further includes, based on the confirmation result of the third checker, It is possible to determine which operation blocks are not to be applied with power.
  • the operation in the operation blocks may include at least one of a deep learning operation, compression, encryption, Approximate Computing, and Quantization.
  • the method comprising: individually controlling the application of power to each of a plurality of storage blocks divided in a memory of a deep learning accelerator; and individually controlling the application of power to each of the plurality of operation blocks divided into the processor of the deep learning accelerator.
  • the application of a deep learning accelerator to a mobile device is facilitated, and even deep learning processing speed can be improved by excluding unnecessary operations by zero check. do.
  • FIG. 1 is a block diagram of a low-power deep learning accelerator according to an embodiment of the present invention.
  • FIG. 2 is a detailed block diagram of the power controller shown in Figure 1;
  • FIG. 3 is a diagram illustrating a state in which power of storage blocks is controlled by a memory power controller
  • FIG. 4 is a diagram illustrating a state in which the power of the operation blocks is controlled by the main power controller, and,
  • FIG. 5 is a flowchart provided to explain a low-power deep learning acceleration method according to another embodiment of the present invention.
  • the deep learning accelerator according to an embodiment of the present invention reduces power consumption through power management for each storage block through memory access pattern analysis and power management for each operation block through zero check.
  • a low-power deep learning accelerator which performs such a function, is a communication interface 110 , a processor 120 , a memory 130 and a power controller 140 as shown in FIG. 1 . is comprised of
  • the communication interface 110 is a communication means for exchanging data with an external device, for example, an external memory (not shown).
  • the processor 120 is a resource for performing deep learning operation, compression, encryption, approximate computing, quantization, and the like, and is divided into a plurality of operation blocks (Processing Element).
  • the memory 130 is an internal memory of the deep learning accelerator that generates and uses a buffer in which the input feature map, the weight of the deep learning network, the output feature map, and the like are stored.
  • the memory 130 is divided into a plurality of storage blocks.
  • the power controller 140 controls power usage in the communication interface 110 , the processor 120 , and the memory 130 .
  • power application is controlled in units of blocks to the processor 120 and the memory 130 .
  • the power controller 140 individually and individually controls power on/off for each storage block constituting the processor 120 , and individually controls power on/off for each operation block constituting the memory 130 . do.
  • FIG. 2 is a detailed block diagram of the power controller 140 shown in FIG. 1 .
  • the power controller 140 includes the main power controller 141 , the memory power controller 142 , the weight zero checker 143 , the Ifmap zero checker 144 , and the operation result zero checker 145 . ) is included.
  • the memory power controller 142 individually controls the application of power to each storage block based on an access pattern of the processor 120 to the storage blocks constituting the memory 130 .
  • the memory power controller 142 controls the supply of power to the storage blocks so that power is applied only to the storage blocks to be accessed by the processor 120 and power is not applied to the storage blocks that the processor 120 will not access. Control.
  • FIG. 3 illustrates a state in which the power of the storage blocks is controlled by the memory power controller 142 .
  • the MBs Memory Blocks marked with slashes and marked On are storage blocks to which power is applied by the memory power controller 142 .
  • MBs marked Off in FIG. 3 and not shaded are storage blocks to which power is not applied by the memory power controller 142 .
  • the processor 120 For the input feature map, the weight of the deep learning network, and the output feature map stored in the memory 130, the processor 120 requests data in a sequential access pattern with regularity, rather than in a random access pattern. .
  • the storage block of the memory 130 is divided into units of the size of the operation block of the processor 120, and the storage block On/Off based on the read/write address is applied to the memory ( 130) can minimize power consumption.
  • the main power controller 141 determines the operation blocks to apply power to, and determines the operation blocks to turn off the power, among the operation blocks constituting the processor 120 with reference to the result of checking the zero checkers 143 , 144 , and 145 .
  • the weight zero checker 143 checks the parts in which data is '0' in the weight stored in the storage block of the memory 130 , and the Ifmap zero checker 144 checks the data from the input feature map stored in the storage block of the memory 130 . Check the parts where is '0'.
  • the operation result zero checker 145 checks portions in which data becomes '0' by operation in the operation blocks of the processor 120 . Specifically, parts in which data is '0' are checked by deep learning operation, compression, approximate computing, quantization, etc. by operation blocks.
  • the main power controller 141 determines to cut off the power to the operation blocks whose operation result is to be '0' based on the portions that become '0' checked by the zero checkers 143, 144, and 145.
  • processing elements marked with an On and hatched are arithmetic blocks to which power is applied by the main power controller 141 .
  • PEs marked Off in FIG. 4 and not marked with hatching are arithmetic blocks to which power is not applied by the main power controller 141 .
  • FIG. 5 is a flowchart provided to explain a low-power deep learning acceleration method according to another embodiment of the present invention.
  • the memory power controller 142 determines the access pattern of the processor 120 to the storage blocks constituting the memory 130 (S210).
  • the processor 120 controls the supply of power to the storage blocks so that power is applied only to the storage blocks to be accessed and power is not applied to the storage blocks not to be accessed ( S220 ).
  • the weight zero checker 143 checks parts in which data is '0' in the weight stored in the storage block of the memory 130 ( S230 ), and the Ifmap zero checker 144 is stored in the storage block of the memory 130 . In the input feature map, it is confirmed that data is '0' (S240).
  • the operation result zero checker 145 checks the portions in which data becomes '0' by operation in the operation blocks of the processor 120 (S250).
  • the main power controller 141 refers to the result of checking in steps S230 to S250, and power is applied to only the calculation blocks that require calculation among the calculation blocks constituting the processor 120, and the calculation is not required.
  • the operation blocks are controlled so that power is cut off (S260).
  • low power operation is possible.
  • the application of the deep learning accelerator to mobile devices is facilitated, and effects such as an increase in battery usage time can be obtained.
  • the technical idea of the present invention can also be applied to a computer-readable recording medium containing a computer program for performing the functions of the apparatus and method according to the present embodiment.
  • the technical ideas according to various embodiments of the present invention may be implemented in the form of computer-readable codes recorded on a computer-readable recording medium.
  • the computer-readable recording medium may be any data storage device readable by the computer and capable of storing data.
  • the computer-readable recording medium may be a ROM, RAM, CD-ROM, magnetic tape, floppy disk, optical disk, hard disk drive, or the like.
  • the computer-readable code or program stored in the computer-readable recording medium may be transmitted through a network connected between computers.

Landscapes

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

Abstract

딥러닝 가속 장치의 효과적이고 효율적인 저전력 동작을 가능하게 하기 위한 방안으로, 저장 블록들 마다 그리고 연산 블록들 마다 개별적으로 전원 인가를 제어하는 딥러닝 가속장치가 제공된다. 본 발명의 실시예에 따른 딥러닝 가속장치는 다수의 저장 블록들로 구분되는 메모리; 다수의 연산 블록들로 구분되는 프로세서; 및 저장 블록들 마다 개별적으로 전원 인가를 제어하고, 연산 블록들 마다 개별적으로 전원 인가를 제어하는 전원 제어기;를 포함한다. 이에 의해, 딥러닝 가속장치에서 저장 블록들 마다 그리고 연산 블록들 마다 개별적으로 전원 인가를 제어하여, 딥러닝 가속 장치의 효과적이고 효율적인 저전력 동작을 가능하게 할 수 있다.

Description

저전력 딥러닝 가속 장치
본 발명은 인공지능 기술을 활용한 영상 처리 및 SoC(System on Chip) 기술에 관한 것으로, 더욱 상세하게는 딥러닝 가속기 하드웨어의 저전력 동작을 위한 설계 방안에 관한 것이다.
딥러닝 가속 장치의 저전력화는 딥러닝 가속 장치가 모바일 단말에 구현된 경우에 특히 요구되는데, 필요없는 연산 블록의 전원을 비인가하거나, 클럭을 제어하여 저전력 동작을 수행하여야 한다.
현재 널리 활용되고 있는 기법은 클럭 게이팅에 의한 전원 관리 방법인데, 전원 관리 툴에 의존한 것이 대부분으로써 큰 전력 감소를 기대하기 어려운 면이 있다.
뿐만 아니라, 연산 비트수를 줄이거나 바이너리 형태의 연산 수행으로 인하여 딥러닝 결과의 정확도를 저하시키는 문제도 있다.
딥러닝 가속 장치의 효과적이고 효율적인 저전력 동작을 가능하게 하기 위한 방안이 필요하다.
본 발명은 상기와 같은 문제점을 해결하기 위하여 안출된 것으로서, 본 발명의 목적은, 딥러닝 가속 장치의 효과적이고 효율적인 저전력 동작을 가능하게 하기 위한 방안으로, 저장 블록들 마다 그리고 연산 블록들 마다 개별적으로 전원 인가를 제어하는 딥러닝 가속장치를 제공함에 있다.
상기 목적을 달성하기 위한 본 발명의 일 실시예에 따른, 딥러닝 가속장치는 다수의 저장 블록들로 구분되는 메모리; 다수의 연산 블록들로 구분되는 프로세서; 및 저장 블록들 마다 개별적으로 전원 인가를 제어하고, 연산 블록들 마다 개별적으로 전원 인가를 제어하는 전원 제어기;를 포함한다.
전원 제어기는, 저장 블록들에 대한 프로세서의 접근 패턴을 기초로, 저장 블록들 마다 개별적으로 전원 인가를 제어할 수 있다.
전원 제어기는, 프로세서가 접근할 저장 블록들에만 전원이 인가되도록 제어할 수 있다.
메모리에는, Input Feature map 및 딥러닝 네트워크의 Weight가 저장될 수 있다.
본 발명에 따른 딥러닝 가속장치는 메모리에 저장된 Input Feature map에서 데이터가 '0'인 부분들을 확인하는 제1 체커; 및 메모리에 저장된 Weight에서 데이터가 '0'인 부분들을 확인하는 제2 체커;를 더 포함하고, 전원 제어기는, 제1 체커와 제2 체커의 확인 결과를 기초로, 전원을 인가하지 않을 연산 블록들을 결정할 수 있다.
본 발명에 따른 딥러닝 가속장치는 연산 블록들에서 연산에 의해 데이터가 '0'이 되는 부분들을 확인하는 제3 체커;를 더 포함하고, 전원 제어기는, 제3 체커의 확인 결과를 기초로, 전원을 인가하지 않을 연산 블록들을 결정할 수 있다.
연산 블록들에서의 연산은, 딥러닝 연산, 압축, 암호화, Approximate Computing, Quantization 중 적어도 하나를 포함할 수 있다.
본 발명의 다른 측면에 따르면, 딥러닝 가속장치의 메모리에 구분된 다수의 저장 블록들 마다 개별적으로 전원 인가를 제어하는 단계; 및 딥러닝 가속장치의 프로세서에 구분된 다수의 연산 블록들 마다 개별적으로 전원 인가를 제어하는 단계;를 포함하는 것을 특징으로 하는 딥러닝 가속장치의 전원 제어 방법이 제공된다.
이상 설명한 바와 같이, 본 발명의 실시예들에 따르면, 딥러닝 가속장치에서 저장 블록들 마다 그리고 연산 블록들 마다 개별적으로 전원 인가를 제어하여, 딥러닝 가속 장치의 효과적이고 효율적인 저전력 동작을 가능하게 할 수 있다.
또한, 본 발명의 실시예들에 따르면, 저전력의 동작이 가능함에 따라 모바일 장치에 딥러닝 가속장치의 적용이 용이해지며, 제로 체크에 의한 불필요한 연산의 배제로 딥러닝 처리 속도까지도 개선시킬 수 있게 된다.
도 1은 본 발명의 일 실시예에 따른 저전력 딥러닝 가속장치의 블럭도,
도 2는, 도 1에 도시된 전원 제어기의 상세 블럭도,
도 3은 메모리 전원 제어기에 의해 저장 블록들의 전원이 제어되고 있는 상태를 예시한 도면,
도 4는 메인 전원 제어기에 의해 연산 블록들의 전원이 제어되고 있는 상태를 예시한 도면, 그리고,
도 5는 본 발명의 다른 실시예에 따른 저전력 딥러닝 가속 방법의 설명에 제공되는 흐름도이다.
이하에서는 도면을 참조하여 본 발명을 보다 상세하게 설명한다.
도 1은 본 발명의 일 실시예에 따른 저전력 딥러닝 가속장치의 블럭도이다. 본 발명의 실시예에 따른 딥러닝 가속장치는, 메모리 접근 패턴 분석을 통한 저장 블록 별 전원 관리와 제로 체크(Zero Check)를 통한 연산 블록 별 전원 관리를 통해 전력 소모를 줄인다.
이와 같은 기능을 수행하는, 본 발명의 실시예에 따른 저전력 딥러닝 가속장치는, 도 1에 도시된 바와 같이, 통신 인터페이스(110), 프로세서(120), 메모리(130) 및 전원 제어기(140)를 포함하여 구성된다.
통신 인터페이스(110)는 외부 디바이스, 이를 테면, 외부 메모리(미도시)와 데이터를 주고 받기 위한 통신 수단이다.
프로세서(120)는 딥러닝 연산, 압축, 암호화, Approximate Computing, Quantization 등을 수행하기 위한 리소스로, 다수의 연산 블록(Processing Element)들로 구분된다.
메모리(130)는 Input Feature map, 딥러닝 네트워크의 Weight, Output Feature map 등이 저장되는 버퍼를 생성하여 사용하는 딥러닝 가속장치의 내부 메모리이다. 메모리(130)는 다수의 저장 블록들로 구분된다.
전원 제어기(140)는 통신 인터페이스(110), 프로세서(120) 및 메모리(130)에서의 전원 사용을 제어한다. 특히, 프로세서(120)와 메모리(130)에 대해서는 블록 단위로 전원 인가를 제어한다.
즉, 전원 제어기(140)는 프로세서(120)를 구성하는 저장 블록들 마다 개별적으로 개별적으로 전원 인가/차단을 제어하고, 메모리(130)를 구성하는 연산 블록들 마다 개별적으로 전원 인가/차단을 제어한다.
전원 제어기(140)의 상세 구성과 동작에 대해, 이하에서 도 2 내지 도 4를 참조하여 상세히 설명한다.
도 2는, 도 1에 도시된 전원 제어기(140)의 상세 블럭도이다. 도시된 바와 같이, 전원 제어기(140)는, 메인 전원 제어기(141), 메모리 전원 제어기(142), Weight 제로 체커(Zero checker)(143), Ifmap 제로 체커(144), 연산 결과 제로 체커(145)를 포함하여 구성된다.
메모리 전원 제어기(142)는 메모리(130)를 구성하는 저장 블록들에 대한 프로세서(120)의 접근 패턴을 기초로, 저장 블록들 마다 개별적으로 전원 인가를 제어한다.
구체적으로, 메모리 전원 제어기(142)는 프로세서(120)가 접근할 저장 블록들에만 전원이 인가되고, 프로세서(120)가 접근하지 않을 저장 블록들에는 전원이 인가되지 않도록, 저장 블록들의 전원 공급을 제어한다.
도 3에는 메모리 전원 제어기(142)에 의해 저장 블록들의 전원이 제어되고 있는 상태를 예시하였다. 도 3에서 On으로 표기되어 있고 빗금이 표시된 MB(Memory Block)들은 메모리 전원 제어기(142)에 의해 전원이 인가되는 저장 블록들이다. 반면, 도 3에서 Off로 표기되어 있고 빗금이 표시되어 있지 않은 MB들은 메모리 전원 제어기(142)에 의해 전원이 인가되지 않는 저장 블록들이다.
메모리(130)에 저장되는 Input Feature map, 딥러닝 네트워크의 Weight, Output Feature map에 대해 프로세서(120)는 랜덤한 접근 패턴으로 데이터를 요청하는 아닌, 규칙성이 있는 순차적 접근 패턴으로 데이터를 요청한다.
이에 따라, 순차적 접근 패턴을 고려하여, 메모리(130)의 저장 블록을 프로세서(120)의 연산 블록의 크기 단위로 분리하며, 읽기/쓰기 어드레스를 기반으로 한 저장 블록 On/Off를 적용하여 메모리(130)에서의 파워 소모를 최소화 할 수 있다.
메인 전원 제어기(141)는 제로 체커들(143,144,145)의 확인 결과를 참조하여, 프로세서(120)를 구성하는 연산 블록들 중 전원을 인가할 연산 블록들을 결정하고, 전원을 차단할 연산 블록들을 결정한다.
Weight 제로 체커(143)는 메모리(130)의 저장 블록에 저장된 Weight에서 데이터가 '0'인 부분들을 확인하고, Ifmap 제로 체커(144)는 메모리(130)의 저장 블록에 저장된 Input Feature map에서 데이터가 '0'인 부분들을 확인한다.
연산 결과 제로 체커(145)는 프로세서(120)의 연산 블록들에서 연산에 의해 데이터가 '0'이 되는 부분들을 확인한다. 구체적으로, 연산 블록들에 의한 딥러닝 연산, 압축, Approximate Computing, Quantization 등에 의해, 데이터가 '0'이 되는 부분들을 확인한다.
메인 전원 제어기(141)는 제로 체커들(143,144,145)에 의해 확인된 '0'이 되는 부분들을 기초로, 연산 결과가 '0'이 될 연산 블록들에 대해서는 전원을 차단할 것으로 결정한다.
딥러닝 연산 및 이에 수반되는 연산에서는 데이터에 '0'이 많이 존재한다. 이에, 제로 체커들(143,144,145)을 통한 확인으로 결과가 '0'이 되는 불필요한 연산 블록들을 Off 시키는 기능을 메인 전원 제어기(141)에 구현한 것이다.
도 4에는 메인 전원 제어기(141)에 의해 연산 블록들의 전원이 제어되고 있는 상태를 예시하였다. 도 3에서 On으로 표기되어 있고 빗금이 표시된 PE(Processing Element)들은 메인 전원 제어기(141)에 의해 전원이 인가되는 연산 블록들이다. 반면, 도 4에서 Off로 표기되어 있고 빗금이 표시되어 있지 않은 PE들은 메인 전원 제어기(141)에 의해 전원이 인가되지 않는 연산 블록들이다.
도 5는 본 발명의 다른 실시예에 따른 저전력 딥러닝 가속 방법의 설명에 제공되는 흐름도이다.
딥러닝 가속 장치의 저전력화를 위해, 먼저, 메모리 전원 제어기(142)는 메모리(130)를 구성하는 저장 블록들에 대한 프로세서(120)의 접근 패턴을 파악한다(S210).
그리고, 프로세서(120)가 접근할 저장 블록들에만 전원을 인가하고 접근하지 않을 저장 블록들에는 전원이 인가되지 않도록 저장 블록들의 전원 공급을 제어한다(S220).
또한, Weight 제로 체커(143)는 메모리(130)의 저장 블록에 저장된 Weight에서 데이터가 '0'인 부분들을 확인하고(S230), Ifmap 제로 체커(144)는 메모리(130)의 저장 블록에 저장된 Input Feature map에서 데이터가 '0'인 부분들을 확인한다(S240).
그리고, 연산 결과 제로 체커(145)는 프로세서(120)의 연산 블록들에서 연산에 의해 데이터가 '0'이 되는 부분들을 확인한다(S250).
다음, 메인 전원 제어기(141)는 S230단계 내지 S250단계에서의 확인 결과를 참조하여, 프로세서(120)를 구성하는 연산 블록들 중 연산이 필요한 연산 블록들에만 전원이 인가되고, 연산이 필요하지 않은 연산 블록들에는 전원이 차단되도록 제어한다(S260).
지금까지, 딥러닝 가속 장치의 효과적이고 효율적인 저전력 동작을 가능하게 하기 위한 방안으로, 저장 블록들 마다 그리고 연산 블록들 마다 개별적으로 전원 인가를 제어하는 딥러닝 가속장치에 대해, 바람직한 실시예를 들어 상세히 설명하였다.
딥러닝 하드웨어 가속기에 적용 가능한 저전력 하드웨어의 장치가 필요하다는 필요에 의해, 본 발명의 실시예에서는 수 많은 데이터의 입출력을 필요로 하는 메모리 및 연산 블록의 전원 관리 기능을 적용하였고, 성능의 저하가 없는 딥러닝 가속 하드웨어 장치의 저전력 연산이 가능한 모델을 제시하였다.
본 발명의 실시예에 의해, 저전력 동작이 가능함에 따라. 모바일 장치에도 딥러닝 가속 장치의 적용이 용이해지며, 배터리 사용 시간 증가 등의 효과를 얻을 수 있다.
특히, 실시간 제로 체커 적용으로 불필요한 연산 블록의 연산 배제로 인하여 더욱 저전력으로 동작이 가능하며, 리소스 효율적 분배를 위하여 필요한 연산을 해당 연산기에 배정이 가능하여 가속기 데이터 처리 시간의 최소화 동작이 가능하다.
한편, 본 실시예에 따른 장치와 방법의 기능을 수행하게 하는 컴퓨터 프로그램을 수록한 컴퓨터로 읽을 수 있는 기록매체에도 본 발명의 기술적 사상이 적용될 수 있음은 물론이다. 또한, 본 발명의 다양한 실시예에 따른 기술적 사상은 컴퓨터로 읽을 수 있는 기록매체에 기록된 컴퓨터로 읽을 수 있는 코드 형태로 구현될 수도 있다. 컴퓨터로 읽을 수 있는 기록매체는 컴퓨터에 의해 읽을 수 있고 데이터를 저장할 수 있는 어떤 데이터 저장 장치이더라도 가능하다. 예를 들어, 컴퓨터로 읽을 수 있는 기록매체는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광디스크, 하드 디스크 드라이브, 등이 될 수 있음은 물론이다. 또한, 컴퓨터로 읽을 수 있는 기록매체에 저장된 컴퓨터로 읽을 수 있는 코드 또는 프로그램은 컴퓨터간에 연결된 네트워크를 통해 전송될 수도 있다.
또한, 이상에서는 본 발명의 바람직한 실시예에 대하여 도시하고 설명하였지만, 본 발명은 상술한 특정의 실시예에 한정되지 아니하며, 청구범위에서 청구하는 본 발명의 요지를 벗어남이 없이 당해 발명이 속하는 기술분야에서 통상의 지식을 가진자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 발명의 기술적 사상이나 전망으로부터 개별적으로 이해되어져서는 안될 것이다.

Claims (8)

  1. 다수의 저장 블록들로 구분되는 메모리;
    다수의 연산 블록들로 구분되는 프로세서; 및
    저장 블록들 마다 개별적으로 전원 인가를 제어하고, 연산 블록들 마다 개별적으로 전원 인가를 제어하는 전원 제어기;를 포함하는 것을 특징으로 하는 딥러닝 가속장치.
  2. 청구항 1에 있어서,
    전원 제어기는,
    저장 블록들에 대한 프로세서의 접근 패턴을 기초로, 저장 블록들 마다 개별적으로 전원 인가를 제어하는 것을 특징으로 하는 딥러닝 가속장치.
  3. 청구항 2에 있어서,
    전원 제어기는,
    프로세서가 접근할 저장 블록들에만 전원이 인가되도록 제어하는 것을 특징으로 하는 딥러닝 가속장치.
  4. 청구항 1에 있어서,
    메모리에는,
    Input Feature map 및 딥러닝 네트워크의 Weight가 저장되는 것을 특징으로 하는 딥러닝 가속장치.
  5. 청구항 4에 있어서,
    메모리에 저장된 Input Feature map에서 데이터가 '0'인 부분들을 확인하는 제1 체커; 및
    메모리에 저장된 Weight에서 데이터가 '0'인 부분들을 확인하는 제2 체커;를 더 포함하고,
    전원 제어기는,
    제1 체커와 제2 체커의 확인 결과를 기초로, 전원을 인가하지 않을 연산 블록들을 결정하는 것을 특징으로 하는 딥러닝 가속장치.
  6. 청구항 5에 있어서,
    연산 블록들에서 연산에 의해 데이터가 '0'이 되는 부분들을 확인하는 제3 체커;를 더 포함하고,
    전원 제어기는,
    제3 체커의 확인 결과를 기초로, 전원을 인가하지 않을 연산 블록들을 결정하는 것을 특징으로 하는 딥러닝 가속장치.
  7. 청구항 6에 있어서,
    연산 블록들에서의 연산은,
    딥러닝 연산, 압축, 암호화, Approximate Computing, Quantization 중 적어도 하나를 포함하는 것을 특징으로 하는 딥러닝 가속장치.
  8. 딥러닝 가속장치의 메모리에 구분된 다수의 저장 블록들 마다 개별적으로 전원 인가를 제어하는 단계; 및
    딥러닝 가속장치의 프로세서에 구분된 다수의 연산 블록들 마다 개별적으로 전원 인가를 제어하는 단계;를 포함하는 것을 특징으로 하는 딥러닝 가속장치의 전원 제어 방법.
PCT/KR2019/016337 2019-11-26 2019-11-26 저전력 딥러닝 가속 장치 WO2021107170A1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190152981A KR102453628B1 (ko) 2019-11-26 2019-11-26 저전력 딥러닝 가속 장치
KR10-2019-0152981 2019-11-26

Publications (1)

Publication Number Publication Date
WO2021107170A1 true WO2021107170A1 (ko) 2021-06-03

Family

ID=76129640

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2019/016337 WO2021107170A1 (ko) 2019-11-26 2019-11-26 저전력 딥러닝 가속 장치

Country Status (2)

Country Link
KR (1) KR102453628B1 (ko)
WO (1) WO2021107170A1 (ko)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009294875A (ja) * 2008-06-04 2009-12-17 Fujitsu Ltd 演算処理装置、演算処理装置の電源制御方法
KR20100072614A (ko) * 2008-12-22 2010-07-01 한국전자통신연구원 저전력 프로세서
US20170076197A1 (en) * 2012-07-31 2017-03-16 International Business Machines Corporation Globally asynchronous and locally synchronous (gals) neuromorphic network
WO2019046835A1 (en) * 2017-09-01 2019-03-07 Qualcomm Incorporated COMPUTER ACCELERATOR OF ARTIFICIAL INTELLIGENCE NEUROMORPHIC TO ULTRA-LOW CONSUMPTION
KR20190062129A (ko) * 2017-11-27 2019-06-05 삼성전자주식회사 컨볼루션 신경망 계산을 위한 저전력 하드웨어 가속 방법 및 시스템

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100796800B1 (ko) * 2005-01-08 2008-01-24 장석연 인공지능 등주 감지기
KR102143871B1 (ko) * 2014-04-22 2020-08-12 삼성전자 주식회사 전자장치의 전원 제어장치 및 방법
KR102353514B1 (ko) * 2015-05-18 2022-01-20 삼성전자 주식회사 전원 공급을 제어하는 전자 장치 및 방법
KR102561570B1 (ko) * 2016-10-06 2023-07-31 삼성전자주식회사 무선 충전을 제어하는 전자 장치 및 방법
KR102192147B1 (ko) * 2019-08-30 2020-12-16 엘지전자 주식회사 지능적 기기 제어 방법, 이동 단말기 및 지능형 컴퓨팅 디바이스

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009294875A (ja) * 2008-06-04 2009-12-17 Fujitsu Ltd 演算処理装置、演算処理装置の電源制御方法
KR20100072614A (ko) * 2008-12-22 2010-07-01 한국전자통신연구원 저전력 프로세서
US20170076197A1 (en) * 2012-07-31 2017-03-16 International Business Machines Corporation Globally asynchronous and locally synchronous (gals) neuromorphic network
WO2019046835A1 (en) * 2017-09-01 2019-03-07 Qualcomm Incorporated COMPUTER ACCELERATOR OF ARTIFICIAL INTELLIGENCE NEUROMORPHIC TO ULTRA-LOW CONSUMPTION
KR20190062129A (ko) * 2017-11-27 2019-06-05 삼성전자주식회사 컨볼루션 신경망 계산을 위한 저전력 하드웨어 가속 방법 및 시스템

Also Published As

Publication number Publication date
KR20210064589A (ko) 2021-06-03
KR102453628B1 (ko) 2022-10-12

Similar Documents

Publication Publication Date Title
WO2019194465A1 (ko) 뉴럴 네트워크 프로세서
US8291427B2 (en) Scheduling applications for execution on a plurality of compute nodes of a parallel computer to manage temperature of the nodes during execution
CA2001929A1 (en) System and method for sharing resources of a host computer among a plurality of remote computers
WO2013051862A1 (en) Direct memory access without main memory in a semiconductor storage device-based system
CN111797034A (zh) 一种数据管理方法、神经网络处理器和终端设备
WO2014208909A1 (ko) 시뮬레이션 장치 및 분산 시뮬레이션 시스템
CN105556503A (zh) 动态的存储器控制方法及其系统
KR100630071B1 (ko) 다중 프로세서 환경에서의 dma를 이용한 고속 데이터전송 방법 및 그 장치
CN116166434A (zh) 处理器分配方法及系统、装置、存储介质、电子设备
WO2021107170A1 (ko) 저전력 딥러닝 가속 장치
CN115994115B (zh) 芯片控制方法、芯片组及电子设备
CN110659143B (zh) 一种容器间的通讯方法、装置及电子设备
WO2013027951A1 (ko) 멀티 코어 시스템의 인터럽트 할당 방법 및 장치
CN111949371A (zh) 一种命令信息传输方法、系统、装置及可读存储介质
WO2021100900A1 (ko) 적응형 딥러닝 가속 장치 및 방법
WO2023068463A1 (ko) 양자 회로 시뮬레이션을 위한 저장장치 시스템
WO2014092381A1 (ko) 스크래치패드 메모리 관리 시스템 및 방법
CN115904259A (zh) 非易失性存储器标准NVMe指令的处理方法及相关装置
CA1145005A (en) Data processing apparatus with parallel encoded priority
WO2016195225A1 (ko) Gpgpu 어플리케이션을 위한 dvfs 기법이 적용된 모바일 디바이스
WO2024128372A1 (ko) 차세대 고속 경량 객체인식 fpga npu 시스템을 위한 계산유닛, 버퍼 및 데이터 이동 최적화 방법론
WO2022107929A1 (ko) 가변 데이터 압축/복원기를 포함하는 딥러닝 가속 장치
CN101510183B (zh) 数据搬运处理的方法和装置
WO2024101752A1 (ko) 홀로그램 렌더링 및 프린팅의 실시간 병행 수행 방법
WO2023080291A1 (ko) 딥러닝 가속기를 위한 풀링 장치

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: 19954552

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: 19954552

Country of ref document: EP

Kind code of ref document: A1