1 |
1
가속기와 메모리 사이의 데이터 통신을 제어하는 메모리 제어기에 있어서,상기 메모리의 동작 클럭, 상기 메모리의 읽기 클럭, 및 상기 메모리의 읽기 타이밍에 따라 상기 메모리로부터 읽어진 테스트 데이터에 기초하여 읽기 동작을 테스트하도록 구성된 설정 테스트기; 및상기 테스트의 결과가 성공인 상기 동작 클럭, 상기 읽기 클럭, 및 상기 읽기 타이밍에 기초하여 상기 메모리 제어기의 환경 파라미터를 설정하도록 구성된 환경 파라미터 설정기를 포함하고,상기 설정된 환경 파라미터를 기반으로 상기 메모리로부터 데이터가 읽어지는 메모리 제어기
|
2 |
2
제 1 항에 있어서,상기 가속기와 상기 메모리 제어기 사이의 시스템 대역폭 또는 상기 메모리와 상기 메모리 제어기 사이의 메모리 대역폭에 기초하여 상기 가속기로부터 제공되는 쓰기 데이터 또는 상기 메모리로부터 출력되는 읽기 데이터를 정렬하도록 구성된 데이터 정렬기;상기 정렬된 쓰기 데이터 또는 상기 정렬된 읽기 데이터를 저장하도록 구성된 정렬 버퍼;상기 정렬 버퍼에 저장된 상기 정렬된 쓰기 데이터를 상기 메모리로 제공하도록 구성된 메모리 인터페이스; 및상기 정렬 버퍼에 저장된 상기 정렬된 읽기 데이터를 상기 가속기로 제공하도록 구성된 가속기 인터페이스를 더 포함하는 메모리 제어기
|
3 |
3
제 2 항에 있어서,상기 데이터 정렬기는 상기 가속기로부터 제공되는 쓰기 주소에 대응하는 상기 메모리의 저장 위치에 따라 상기 쓰기 데이터가 상기 정렬 버퍼에 저장되도록 상기 메모리 대역폭에 기초하여 상기 쓰기 데이터를 정렬하는 메모리 제어기
|
4 |
4
제 3 항에 있어서,상기 정렬 버퍼에 저장된 상기 정렬된 쓰기 데이터는 상기 쓰기 주소에 대응하는 상기 메모리의 상기 저장 위치로 제공되는 메모리 제어기
|
5 |
5
제 2 항에 있어서,상기 데이터 정렬기는 상기 가속기로부터 제공되는 읽기 주소에 대응하는 시스템 버스 라인의 위치에 따라 상기 읽기 데이터가 상기 정렬 버퍼에 저장되도록 상기 시스템 대역폭에 기초하여 상기 읽기 데이터를 정렬하는 메모리 제어기
|
6 |
6
제 5 항에 있어서,상기 정렬 버퍼에 저장된 상기 정렬된 읽기 데이터는 상기 읽기 주소에 대응하는 상기 시스템 버스 라인을 통해 상기 가속기로 제공되는 메모리 제어기
|
7 |
7
제 1 항에 있어서,상기 메모리가 복수의 메모리 유닛들로 구현되는 경우, 상기 메모리 대역폭은 상기 복수의 메모리 유닛들의 개수에 따라 변경되는 메모리 제어기
|
8 |
8
제 1 항에 있어서,상기 가속기는 뉴럴 네트워크를 기반으로 연산을 수행하는 메모리 제어기
|
9 |
9
가속기와 메모리 사이의 데이터 통신을 제어하는 메모리 제어기의 동작 방법에 있어서,상기 메모리의 동작 클럭, 상기 메모리의 읽기 클럭, 및 상기 메모리의 읽기 타이밍에 따라 상기 메모리로부터 읽어진 테스트 데이터에 기초하여 읽기 동작을 테스트하는 단계;상기 테스트의 결과가 성공인 상기 동작 클럭, 상기 읽기 클럭, 및 상기 읽기 타이밍에 기초하여 상기 메모리 제어기의 환경 파라미터를 설정하는 단계; 및상기 설정된 환경 파라미터를 기반으로 상기 메모리로부터 데이터를 읽는 단계를 포함하는 동작 방법
|
10 |
10
제 9 항에 있어서,상기 환경 파라미터가 설정된 이후 상기 메모리의 대역폭이 변경되는 경우, 상기 테스트 데이터에 기초하여 상기 읽기 동작이 다시 테스트되는 동작 방법
|
11 |
11
제 9 항에 있어서,상기 읽기 타이밍은 상기 메모리의 접근 시간(access time)을 기반으로 조절되는 동작 방법
|
12 |
12
제 9 항에 있어서,상기 테스트를 위한 상기 동작 클럭, 상기 읽기 클럭, 및 상기 읽기 타이밍의 조합들은 테스트 테이블에 미리 저장되는 동작 방법
|
13 |
13
제 9 항에 있어서,상기 테스트 데이터에 기초하여 상기 읽기 동작을 테스트하는 단계는,상기 테스트 데이터를 미리 저장된 데이터와 비교하는 단계; 및상기 테스트 데이터가 상기 미리 저장된 데이터와 일치하는 경우, 상기 읽기 동작을 성공으로 판별하고, 상기 테스트 데이터가 상기 미리 저장된 데이터와 일치하지 않는 경우, 상기 읽기 동작을 실패로 판별하는 단계를 포함하는 동작 방법
|
14 |
14
제 9 항에 있어서,상기 가속기로부터 상기 메모리에 쓰여질 쓰기 데이터가 전송되는 경우, 상기 가속기로부터 제공되는 쓰기 주소에 대응하는 상기 메모리의 저장 위치에 따라 상기 쓰기 데이터가 정렬 버퍼에 저장되도록 상기 메모리 제어기와 상기 메모리 사이의 메모리 대역폭에 기초하여 상기 쓰기 데이터를 정렬하는 단계; 및상기 정렬 버퍼에 저장된 상기 정렬된 데이터를 상기 메모리로 제공하는 단계를 더 포함하는 동작 방법
|
15 |
15
제 14 항에 있어서,상기 쓰기 데이터를 정렬하는 단계는,데이터 입력 크기에 따라 상기 쓰기 데이터를 분리하는 단계;상기 메모리 대역폭 및 상기 쓰기 주소를 기반으로 상기 분리된 쓰기 데이터 각각에 대하여 메모리를 할당하는 단계; 및상기 할당된 메모리에 대응하는 상기 정렬 버퍼의 영역에 상기 쓰기 데이터를 저장하는 단계를 포함하는 동작 방법
|
16 |
16
제 9 항에 있어서,상기 메모리로부터 읽기 데이터를 위한 명령이 제공되는 경우, 상기 가속기로부터 제공되는 읽기 주소에 대응하는 시스템 버스 라인의 위치에 따라 상기 읽기 데이터가 정렬 버퍼에 저장되도록 상기 가속기와 상기 메모리 제어기 사이의 시스템 대역폭에 기초하여 상기 읽기 데이터를 정렬하는 단계; 및상기 정렬 버퍼에 저장된 상기 정렬된 데이터를 상기 가속기로 제공하는 단계를 더 포함하는 동작 방법
|
17 |
17
제 16 항에 있어서,상기 읽기 데이터를 정렬하는 단계는,데이터 출력 크기에 따라 상기 메모리로부터 상기 읽기 데이터를 출력하는 단계;상기 시스템 대역폭 및 상기 읽기 주소에 기초하여 상기 출력된 읽기 데이터가 저장될 상기 정렬 버퍼의 영역을 결정하는 단계; 및상기 결정된 정렬 버퍼의 영역에 상기 읽기 데이터를 저장하는 단계를 포함하는 동작 방법
|