데이터의 표현을 변환하여 연산하는 심층 신경망의 연산 장치 및 그 동작 방법
A DEEP NEURAL NETWORK CALCULATION DEVICE AND METHOD OF OPERATION THAT CONVERTS THE REPRESENTATION OF DATA AND PERFORMS CALCULATIONS
특허 요약
본 발명은 데이터의 표현을 변환하여 연산하는 심층 신경망의 연산 장치 및 그 동작 방법에 관한 것으로, 좀 더 자세하게는 음의 값을 갖는 데이터의 비트들을 반전시켜 활용하는 연산 장치 및 동작 방법에 관한 것이다. 본 발명의 일 실시 예에 따른 심층 신경망의 연산 장치는, 각각 복수의 비트들로 구성된 복수의 원본 데이터 값들 각각의 부호에 기반하여, 상기 복수의 원본 데이터 값들에 포함된 비트들과 대응되는 비트들, 및 부호 비트를 더 포함하는 복수의 변환 데이터 값들을 출력하는 변환부, 상기 복수의 변환 데이터 값들에서 동일한 자릿수를 갖는 비트들로 구성되는 복수의 비트 벡터들 중 적어도 하나의 비트의 값이 1인 비트 벡터들을 포함하는 압축 데이터를 생성하는, 압축부, 및 상기 복수의 변환 데이터 값들 각각에서 적어도 일부의 비트를 반전시켜 복수의 복구 데이터 값들을 출력하는 연산 준비부를 포함하고, 상기 변환부는, 상기 복수의 원본 데이터 값들 각각의 MSB를 상기 부호 비트로 결정하고, 상기 복수의 원본 데이터 값들 중 부호가 음수인 원본 데이터 값들 각각에 포함된 비트들의 값을 반전시킬 수 있다.
청구항
번호청구항
1

심층 신경망의 연산 장치에 있어서,각각 복수의 비트들로 구성된 복수의 원본 데이터 값들 각각의 부호에 기반하여, 상기 복수의 원본 데이터 값들에 포함된 비트들과 대응되는 비트들, 및 부호 비트를 더 포함하는 복수의 변환 데이터 값들을 출력하는 변환부;상기 복수의 변환 데이터 값들에서 동일한 자릿수를 갖는 비트들로 구성되는 복수의 비트 벡터들 중 적어도 하나의 비트의 값이 1인 비트 벡터들을 포함하는 압축 데이터를 생성하는, 압축부; 및상기 복수의 변환 데이터 값들 각각에서 적어도 일부의 비트의 값을 반전시켜 복수의 복구 데이터 값들을 출력하는 연산 준비부를 포함하고,상기 변환부는: 상기 복수의 원본 데이터 값들 각각의 MSB(most significant bit)를 상기 부호 비트로 결정하고, 상기 복수의 원본 데이터 값들 중 부호가 음수인 원본 데이터 값들 각각에 포함된 비트들의 값을 반전시키고,상기 압축 데이터는, 상기 압축 데이터에 포함된 비트 벡터들 각각을 구성하는 비트들의 자릿수와 대응되는 제1 인덱스 데이터, 및 상기 압축 데이터에 포함된 비트 벡터들의 개수와 대응되는 제2 인덱스 데이터를 더 포함하는, 연산 장치.

2

제1항에 있어서,상기 압축 데이터는, 상기 복수의 변환 데이터 값들 각각의 부호 비트로 구성된 부호 비트 벡터를 더 포함하는, 연산 장치.

3

삭제

4

제1항에 있어서,상기 연산 준비부는, 상기 복수의 변환 데이터 값들 각각에서: LSB로부터 제1 개수의 비트들로 구성되는 제1 비트 조각에서, 각 비트의 값을 2의 보수로 변환하고, 상기 제1 개수의 비트들로 구성되는 제2 비트 조각 중 적어도 하나의 비트의 값이 1인 경우, 상기 제2 비트 조각에 포함된 비트들 각각의 값을 2의 보수로 변환하는, 연산 장치.

5

제4항에 있어서,상기 복수의 복구 데이터 값들을 이용하여 곱셈 연산을 수행하는 연산부를 더 포함하고,상기 연산부는, 상기 복수의 복구 데이터 값들 각각에서 적어도 하나의 1을 포함하는 복구 조각들을 이용하여, 상기 곱셈 연산을 수행하는, 연산 장치.

6

제1항에 있어서,상기 복수의 원본 데이터 값들은, 상기 복수의 원본 데이터 값들을 포함하는 행렬 내에서 지정된 방향으로 서로 인접하게 배치되는, 연산 장치.

7

심층 신경망의 연산 장치의 동작 방법에 있어서,각각 복수의 비트들로 구성된 복수의 원본 데이터 값들 각각의 MSB를 부호 비트로 결정하는 단계;상기 부호 비트의 값에 기반하여, 상기 복수의 원본 데이터 값들 중 부호가 음수인 원본 데이터 값들 각각에 포함된 비트들의 값을 2의 보수로 변환하는 단계;각각 상기 복수의 원본 데이터 값들에 포함된 비트들과 대응되는 비트들 및 상기 부호 비트를 더 포함하는 복수의 변환 데이터 값들을 출력하는 단계; 및상기 복수의 변환 데이터 값들에서 동일한 자릿수를 갖는 비트들로 구성되는 복수의 비트 벡터들 중 적어도 하나의 1을 갖는 비트 벡터들을 포함하는 압축 데이터를 생성하는 단계를 포함하고,상기 압축 데이터는: 상기 복수의 변환 데이터 값들 각각의 부호 비트로 구성된 부호 비트 벡터, 상기 압축 데이터에 포함된 비트 벡터들 각각을 구성하는 비트들의 자릿수와 대응되는 제1 인덱스 데이터, 및 상기 압축 데이터에 포함된 비트 벡터들의 개수와 대응되는 제2 인덱스 데이터를 더 포함하는, 연산 장치의 동작 방법.

8

삭제

9

제7항에 있어서,상기 복수의 변환 데이터 값들 각각에서: LSB로부터 제1 개수의 비트들로 구성되는 제1 비트 조각에서, 각 비트의 값을 2의 보수로 변환하는 단계, 및 상기 제1 개수의 비트들로 구성되는 제2 비트 조각 중 적어도 하나의 비트의 값이 1인 경우, 상기 제2 비트 조각에 포함된 비트들 각각의 값을 반전시켜 복수의 복구 데이터 값들을 출력하는 단계를 더 포함하는, 연산 장치의 동작 방법.

10

제9항에 있어서,상기 복수의 복구 데이터 값들 각각에서 적어도 하나의 1을 포함하는 비트 조각들을 이용하여, 상기 복수의 복구 데이터 값들 간의 곱셈 연산을 수행하는 단계를, 더 포함하는, 연산 장치의 동작 방법.