1 |
1
컴퓨팅 장치의 프로세서가 수행하는 명령어 연산 수행 방법에 있어서, 프로세서가 연산장치를 이용하여 명령어 연산을 수행하기 위해 데이터를 휘발성 메모리 및 비휘발성 메모리를 함께 사용하는 레지스터 파일로부터 읽는 단계; 상기 데이터에 기초하여 상기 연산장치를 이용해 상기 명령어 연산을 수행하는 단계; 및 상기 명령어 연산을 통해 도출된 결과 값을 상기 휘발성 메모리에 업데이트하는 단계를 포함하는 프로세서의 명령어 연산 수행 방법
|
2 |
2
제1항에 있어서, 상기 프로세서가 명령어 의존성 정보를 이용하여 상기 명령어 연산을 수행하기 위한 데이터가 상기 명령어 연산에 이용된 이후에 추가로 이용되는지 여부를 판단하는 단계; 및 상기 명령어 연산을 수행하기 위한 데이터가 상기 명령어 연산에 이용된 이후에 추가로 이용되지 않는 경우, 상기 휘발성 메모리에 저장된 데이터를 제거하는 단계를 더 포함하는 프로세서의 명령어 연산 수행 방법
|
3 |
3
제2항에 있어서, 상기 명령어 의존성 정보는, 상기 명령어 연산을 수행하기 위한 데이터가 상기 명령어 연산에 이용된 이후에 추가로 이용되지 않는 경우, 상기 데이터가 저장된 레지스터의 번호 정보를 포함하는 정보인 프로세서의 명령어 연산 수행 방법
|
4 |
4
제1항에 있어서,상기 휘발성 메모리는,명령어 의존성 정보에 의해 상기 명령어 연산을 수행하기 위한 상기 휘발성 메모리에 저장된 데이터가 제거된 이후 상기 명령어 연산의 결과 값이 업데이트되는 프로세서의 명령어 연산 수행 방법
|
5 |
5
제1항에 있어서,상기 휘발성 메모리는, 정적 랜덤 액세스 메모리인 프로세서의 명령어 연산 수행 방법
|
6 |
6
제1항에 있어서,상기 비휘발성 메모리는,스핀전달토크형 자기저항메모리 또는 스핀궤도토크형 자기저항메모리인 프로세서의 명령어 연산 수행 방법
|
7 |
7
제1항에 있어서,상기 레지스터 파일은,쓰기 연산 필터를 포함하고, 상기 쓰기 연산 필터는 마지막 참조 비트 벡터 및 소스 피연산자 인덱스에 기초하여 마지막 참조 비트를 결정하는 프로세서의 명령어 연산 수행 방법
|
8 |
8
제7항에 있어서,상기 휘발성 메모리는, 읽기 요청 및 상기 마지막 참조 비트에 기초하여, 마지막 참조 비트가 거짓 값인 경우 상기 휘발성 메모리의 캐시 라인을 무효화하지 않는 프로세서의 명령어 연산 수행 방법
|
9 |
9
제7항에 있어서,상기 휘발성 메모리는,읽기 요청 및 상기 마지막 참조 비트에 기초하여, 마지막 참조 비트가 참 값인 경우 상기 휘발성 메모리의 캐시 라인을 무효화하는 프로세서의 명령어 연산 수행 방법
|
10 |
10
컴파일러가 프로그램의 컴파일 과정에서 상기 프로그램을 실행하는 명령어 연산에 이용되는 명령어를 순서대로 확인하는 단계; 레지스터에 저장된 데이터가 상기 명령어에 의해 이용된 이후에 추가로 이용되는지 여부를 판단하는 단계; 및 상기 레지스터에 저장된 데이터가 상기 명령어에 의해 이용된 이후에 추가로 이용되지 않는 경우, 상기 데이터가 저장된 레지스터의 번호 정보를 포함하는 정보인 명령어 의존성 정보를 결정하는 단계를 포함하는 명령어 의존성 정보를 생성하는 방법
|
11 |
11
제10항에 있어서,상기 레지스터에 저장된 데이터가 상기 명령어에 의해 이용된 이후에 추가로 이용되는지 여부를 판단하는 단계는, 상기 레지스터에 저장된 데이터가 상기 명령어의 후속 명령어에 의해 업데이트되는지 여부에 따라 상기 명령어에 의해 이용된 이후에 추가로 이용되는지 여부를 판단하는 명령어 의존성 정보를 생성하는 방법
|
12 |
12
명령어 연산 수행 방법을 수행하는 컴퓨팅 장치는 프로세서를 포함하고,상기 프로세서는, 프로세서가 연산장치를 이용하여 명령어 연산을 수행하기 위해 데이터를 휘발성 메모리 및 비휘발성 메모리를 함께 사용하는 레지스터 파일로부터 읽고, 상기 데이터에 기초하여 상기 연산장치를 이용해 상기 명령어 연산을 수행하고, 상기 명령어 연산을 통해 도출된 결과 값을 상기 휘발성 메모리에 업데이트하는, 컴퓨팅 장치
|
13 |
13
제12항에 있어서,상기 프로세서는, 상기 프로세서가 명령어 의존성 정보를 이용하여 상기 명령어 연산을 수행하기 위한 데이터가 상기 명령어 연산에 이용된 이후에 추가로 이용되는지 여부를 판단하고, 상기 명령어 연산을 수행하기 위한 데이터가 상기 명령어 연산에 이용된 이후에 추가로 이용되지 않는 경우, 상기 휘발성 메모리에 저장된 데이터를 제거하는, 컴퓨팅 장치
|
14 |
14
제13항에 있어서, 상기 명령어 의존성 정보는, 상기 명령어 연산을 수행하기 위한 데이터가 상기 명령어 연산에 이용된 이후에 추가로 이용되지 않는 경우, 상기 데이터가 저장된 레지스터의 번호 정보를 포함하는 정보인, 컴퓨팅 장치
|
15 |
15
제12항에 있어서,상기 휘발성 메모리는,명령어 의존성 정보에 의해 상기 명령어 연산을 수행하기 위한 상기 휘발성 메모리에 저장된 데이터가 제거된 이후 상기 명령어 연산의 결과 값이 업데이트되는, 컴퓨팅 장치
|
16 |
16
제12항에 있어서,상기 휘발성 메모리는, 정적 랜덤 액세스 메모리인, 컴퓨팅 장치
|
17 |
17
제12항에 있어서,상기 비휘발성 메모리는,스핀전달토크형 자기저항메모리 또는 스핀궤도토크형 자기저항메모리인, 컴퓨팅 장치
|
18 |
18
제12항에 있어서,상기 레지스터 파일은, 쓰기 연산 필터를 포함하고, 상기 쓰기 연산 필터는 마지막 참조 비트 벡터 및 소스 피연산자 인덱스에 기초하여 마지막 참조 비트를 결정하는 컴퓨팅 장치
|
19 |
19
제18항에 있어서,상기 휘발성 메모리는, 읽기 요청 및 상기 마지막 참조 비트에 기초하여, 마지막 참조 비트가 거짓 값인 경우 상기 휘발성 메모리의 캐시 라인을 무효화하지 않는 컴퓨팅 장치
|
20 |
20
제18항에 있어서,상기 휘발성 메모리는,읽기 요청 및 상기 마지막 참조 비트에 기초하여, 마지막 참조 비트가 참 값인 경우 상기 휘발성 메모리의 캐시 라인을 무효화하는 컴퓨팅 장치
|