1 |
1
적어도 하나의 입력 특징맵에 대해 컨볼루션 연산이 수행하기 위해 기지정된 크기의 가중치 행렬로 구성되는 적어도 하나의 컨볼루션 커널이 저장된 인공 신경망 모듈에 있어서, 상기 적어도 하나의 컨볼루션 커널의 각 축 방향 크기 중 기지정된 레인의 개수에 대응하는 크기의 축 방향에 따라 상기 적어도 하나의 컨볼루션 커널의 가중치를 로드하고, 상기 가중치가 로드되는 방향에 대응하여 상기 입력 특징맵의 특징값을 로드하는 벡터 레지스터; 및 상기 벡터 레지스터에 로드된 다수의 가중치와 상기 다수의 가중치에 대응하는 다수의 특징값에 대해 기지정된 연산을 수행하는 연산부; 를 포함하되,상기 벡터 레지스터는 기지정된 개수의 상기 레인으로 구성되는 다수의 벡터를 포함하고, 상기 적어도 하나의 컨볼루션 커널의 각 축 방향 크기 중 상기 레인 개수의 정수배와 동일하거나 가장 가까운 크기의 축 방향을 선택하고, 선택된 축 방향에 따라 상기 가중치를 벡터의 각 레인에 로드하고, 상기 벡터 레지스터는 상기 선택된 축 방향의 크기가 상기 레인의 개수보다 크면, 선택된 축 방향에 따른 상기 가중치를 다수의 벡터에 분할하여 로드하는 인공 신경망 연산 장치
|
2 |
2
삭제
|
3 |
3
삭제
|
4 |
4
제1 항에 있어서, 상기 연산부는 상기 벡터 레지스터의 벡터에 로드된 다수의 가중치 중 대응하는 가중치와 상기 벡터 레지스터의 벡터에 로드된 다수의 특징값 중 가중치에 대응하는 특징값에 대해 곱셈 연산을 각각 수행하는 다수의 프로세스 유닛; 을 포함하는 인공 신경망 연산 장치
|
5 |
5
제4 항에 있어서, 상기 연산부는 상기 다수의 프로세스 유닛 각각의 곱셈 연산의 결과를 합산하여 출력하는 인공 신경망 연산 장치
|
6 |
6
제1 항에 있어서, 상기 벡터 레지스터는 상기 컨볼루션 커널이 다수의 2차원 컨볼루션 커널이면, 하나의 3차원 컨볼루션 커널로 통합하고, 통합된 3차원 컨볼루션 커널의 각 축 방향 크기 중 상기 레인 개수의 정수배와 동일하거나 가장 가까운 크기의 축 방향을 선택하여, 선택된 축 방향에 따라 상기 가중치를 벡터의 각 레인에 로드하는 인공 신경망 연산 장치
|
7 |
7
인공 신경망 연산 장치에서 수행되는 스케줄링 방법으로서,적어도 하나의 입력 특징맵에 대해 컨볼루션 연산이 수행하기 위해 기지정된 크기의 가중치 행렬로 구성되는 적어도 하나의 컨볼루션 커널이 저장된 인공 신경망 모듈의 스케쥴링 방법에 있어서, 상기 적어도 하나의 컨볼루션 커널의 각 축 방향 크기 중 기지정된 레인의 개수에 대응하는 크기의 축 방향에 따라 상기 적어도 하나의 컨볼루션 커널의 가중치를 로드하는 단계; 상기 가중치가 로드되는 방향에 대응하여 상기 입력 특징맵의 특징값을 벡터 레지스터에 로드하는 단계; 및 상기 벡터 레지스터에 로드된 다수의 가중치와 상기 다수의 가중치에 대응하는 다수의 특징값에 대해 기지정된 연산을 수행하는 단계; 를 포함하되,상기 가중치를 로드하는 단계는 상기 적어도 하나의 컨볼루션 커널의 각 축 방향 크기 중 상기 벡터 레지스터에 포함된 벡터를 구성하는 상기 레인 개수의 정수배와 동일하거나 가장 가까운 크기의 축 방향을 선택하는 단계; 및 선택된 축 방향에 따라 상기 가중치를 벡터의 각 레인에 로드하는 단계; 를 포함하고,상기 각 레인에 로드하는 단계는 상기 선택된 축 방향의 크기가 상기 레인의 개수보다 크면, 선택된 축 방향에 따른 상기 가중치를 다수의 벡터에 분할하여 로드하는 인공 신경망 연산 장치의 스케쥴링 방법
|
8 |
8
삭제
|
9 |
9
삭제
|
10 |
10
제7 항에 있어서, 상기 연산을 수행하는 단계는 다수의 프로세스 유닛을 이용하여, 상기 벡터 레지스터의 벡터에 로드된 다수의 가중치 중 대응하는 가중치와 상기 벡터 레지스터의 벡터에 로드된 다수의 특징값 중 가중치에 대응하는 특징값에 대해 곱셈 연산을 각각 수행하는 인공 신경망 연산 장치의 스케쥴링 방법
|
11 |
11
제10 항에 있어서, 상기 연산을 수행하는 단계는 각각의 곱셈 연산의 결과를 합산하여 출력하는 단계; 를 더 포함하는 인공 신경망 연산 장치의 스케쥴링 방법
|
12 |
12
제7 항에 있어서, 상기 가중치를 로드하는 단계는 상기 컨볼루션 커널이 다수의 2차원 컨볼루션 커널이면, 하나의 3차원 컨볼루션 커널로 통합하고, 통합된 3차원 컨볼루션 커널의 각 축 방향 크기 중 상기 레인 개수의 정수배와 동일하거나 가장 가까운 크기의 축 방향을 선택하는 단계; 및 선택된 축 방향에 따라 상기 가중치를 벡터의 각 레인에 로드하는 단계; 를 포함하는 인공 신경망 연산 장치의 스케쥴링 방법
|