맞춤기술찾기

이전대상기술

레지스터 값의 유사성에 기반을 둔 레지스터 리네이밍시스템 및 방법

  • 기술번호 : KST2015127458
  • 담당센터 : 서울서부기술혁신센터
  • 전화번호 : 02-6124-6930
요약, Int. CL, CPC, 출원번호/일자, 출원인, 등록번호/일자, 공개번호/일자, 공고번호/일자, 국제출원번호/일자, 국제공개번호/일자, 우선권정보, 법적상태, 심사진행상태, 심판사항, 구분, 원출원번호/일자, 관련 출원번호, 기술이전 희망, 심사청구여부/일자, 심사청구항수의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 서지정보 표입니다.
요약 본 발명은 레지스터 값의 유사성에 기반을 둔 레지스터 리네이밍 시스템 및 방법에 관한 것으로서, 비순차 실행을 하는 프로세서에서 레지스터에 저장되는 값의 유사성을 이용하여 물리적 레지스터를 명령어들 간에 공유하도록 함으로써, 레지스터 파일의 크기를 줄일 수 있고, 결과적으로 레지스터 파일의 동작 속도를 높여 프로세서 전체의 동작 속도와 성능을 향상시킬 수 있는 레지스터 리네이밍 시스템 및 방법에 관한 것이다. 이러한 본 발명은 실행 유닛에서 소스 값과 결과 값을 비교하여 유사한 값을 가진 레지스터를 찾게 되는 바, 종래와 같이 동일한 값을 검색하는데 사용되었던 다중 포트 CAM, 즉 'value-matching cache'를 삭제하는 대신, 실행 유닛에 간단한 비교기를 장착하여 대체함으로써, 시스템의 구성이 보다 간단해지는 장점을 가지며, 차세대 고성능 프로세서에 유용하게 적용될 수 있다.레지스터, 리네이밍, 수퍼스칼라, 프로세서, 유사성 기반, 동작속도 향상
Int. CL G06F 9/06 (2006.01)
CPC G06F 9/384(2013.01)
출원번호/일자 1020070002742 (2007.01.10)
출원인 연세대학교 산학협력단
등록번호/일자 10-0861701-0000 (2008.09.29)
공개번호/일자 10-2008-0065733 (2008.07.15) 문서열기
공고번호/일자 (20081006) 문서열기
국제출원번호/일자
국제공개번호/일자
우선권정보
법적상태 소멸
심사진행상태 수리
심판사항
구분
원출원번호/일자
관련 출원번호
심사청구여부/일자 Y (2007.01.10)
심사청구항수 12

출원인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 출원인 표입니다.
번호 이름 국적 주소
1 연세대학교 산학협력단 대한민국 서울특별시 서대문구

발명자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 발명자 표입니다.
번호 이름 국적 주소
1 홍인표 대한민국 경기 성남시 분당구
2 이용석 대한민국 서울 서초구

대리인

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 대리인 표입니다.
번호 이름 국적 주소
1 이학수 대한민국 부산광역시 연제구 법원로 **, ****호(이학수특허법률사무소)
2 백남훈 대한민국 서울특별시 강남구 강남대로 ***, KTB네트워크빌딩**층 한라국제특허법률사무소 (역삼동)

최종권리자

번호, 이름, 국적, 주소의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 인명정보 - 최종권리자 표입니다.
번호 이름 국적 주소
1 연세대학교 산학협력단 대한민국 서울특별시 서대문구
번호, 서류명, 접수/발송일자, 처리상태, 접수/발송일자의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 행정처리 표입니다.
번호 서류명 접수/발송일자 처리상태 접수/발송번호
1 특허출원서
Patent Application
2007.01.10 수리 (Accepted) 1-1-2007-0023888-33
2 선행기술조사의뢰서
Request for Prior Art Search
2007.10.11 수리 (Accepted) 9-1-9999-9999999-89
3 선행기술조사보고서
Report of Prior Art Search
2007.11.09 수리 (Accepted) 9-1-2007-0065962-41
4 의견제출통지서
Notification of reason for refusal
2008.03.14 발송처리완료 (Completion of Transmission) 9-5-2008-0142200-47
5 [명세서등 보정]보정서
[Amendment to Description, etc.] Amendment
2008.05.14 보정승인간주 (Regarded as an acceptance of amendment) 1-1-2008-0342611-98
6 [거절이유 등 통지에 따른 의견]의견(답변, 소명)서
[Opinion according to the Notification of Reasons for Refusal] Written Opinion(Written Reply, Written Substantiation)
2008.05.14 수리 (Accepted) 1-1-2008-0342613-89
7 등록결정서
Decision to grant
2008.08.13 발송처리완료 (Completion of Transmission) 9-5-2008-0423477-34
8 출원인정보변경(경정)신고서
Notification of change of applicant's information
2011.12.15 수리 (Accepted) 4-1-2011-5252006-10
9 출원인정보변경(경정)신고서
Notification of change of applicant's information
2013.04.24 수리 (Accepted) 4-1-2013-5062749-37
10 출원인정보변경(경정)신고서
Notification of change of applicant's information
2013.06.24 수리 (Accepted) 4-1-2013-5088566-87
11 출원인정보변경(경정)신고서
Notification of change of applicant's information
2014.09.25 수리 (Accepted) 4-1-2014-5114224-78
번호, 청구항의 정보를 제공하는 이전대상기술 뷰 페이지 상세정보 > 청구항 표입니다.
번호 청구항
1 1
페치 유닛에서 명령어가 페치되면, 하기 프리 리스트 테이블을 검색하여 해당 명령어의 목적지 주소에 물리 레지스터를 할당하고, 해당 명령어에 할당된 물리 레지스터 주소를 명령어의 원래 목적지 주소에 해당하는 하기 레지스터 맵 테이블의 엔트리에 기록하는 디코더와;실행 유닛 내에서 명령어 실행 후 결과 오퍼랜드와 소스 오퍼랜드의 비트열을 비교하여 두 값의 총 M 비트 중 상위 L 비트가 같은 경우에 상기 결과 오퍼랜드와 소스 오퍼랜드가 유사성이 있다고 판정하는 비교기와; 상기 비교기에서 유사성이 있다는 판정이 출력된 경우에 참(truth)이 된 레지스터 변경 유효 비트와 함께 현재 명령어의 원래 목적지 물리 레지스터 주소, 유사한 것으로 판정된 소스 오퍼랜드의 물리 레지스터 주소, 결과 값의 하위 M-L 비트에 해당하는 결과 값과 소스 값의 차이값 정보를 상기 실행 유닛으로부터 하기 레지스터 맵 테이블, 명령어 대기 큐, 프리 레지스터 리스트로 전달하는 결과 버스와; 각 레지스터별로 현재 매핑된 최신의 물리 레지스터 주소를 보관하면서 상기 결과 버스의 내용과 일치되는 엔트리의 물리 레지스터 매핑을 변경할 수 있는 레지스터 맵 테이블과; 디코딩이 완료된 명령어와 소스 물리 레지스터 주소, 원래 목적지 물리 레지스터 주소를 보관하면서 상기 결과 버스의 내용과 일치되는 엔트리의 소스 물리 레지스터 주소를 변경할 수 있는 명령어 대기 큐와; 하나의 물리 레지스터당 하나의 카운터 엔트리로 구성되고, 상기 카운터 엔트리의 카운터 값은 해당 물리 레지스터가 현재 동작 중인 명령어에 의하여 점유되어 있는 상태인가 혹은 프리하여 새로운 명령어의 리네이밍에 사용될 수 있는 상태인가를 나타내고, 몇 개의 명령어가 해당 물리 레지스터를 결과 물리 레지스터로 공유하고 있는가를 나타내도록 된 프리 리스트 테이블;을 포함하는 레지스터 값의 유사성에 기반을 둔 레지스터 리네이밍 시스템
2 2
청구항 1에 있어서,상기 실행 유닛은, 상기 명령어 대기 큐의 명령어가 실행 가능한 상태가 되어 전달되면, 소스 물리 레지스터 주소를 이용하여 물리 레지스터 파일을 읽고, 레지스터 파일로부터 읽어들인 값의 하위 M-L 비트 값을 미리 저장해 둔 상기 차이값으로 치환하여 소스 오프랜드를 얻도록 된 것을 특징으로 하는 레지스터 값의 유사성에 기반을 둔 레지스터 리네이밍 시스템
3 3
청구항 1에 있어서,상기 명령어 대기 큐의 소스 오퍼랜드 필드는, 결과 버스를 통해 전달된 데이터 필드의 레지스터 변경 유효 비트가 참(truth)이 된 상태일 때, 참(truth)이 되는 차이값 유효 비트와, 결과 버스를 통해 전달된 차이값을 저장하는 차이값 필드를 가지는 것을 특징으로 하는 레지스터 값의 유사성에 기반을 둔 레지스터 리네이밍 시스템
4 4
청구항 1에 있어서,상기 레지스터 맵 테이블의 각 논리 레지스터 엔트리는, 결과 버스를 통해 전달된 데이터 필드의 레지스터 변경 유효 비트가 참(truth)이 된 상태일 때, 참(truth)이 되는 차이값 유효 비트와, 결과 버스를 통해 전달된 차이값을 저장하는 차이값 필드를 가지는 것을 특징으로 하는 레지스터 값의 유사성에 기반을 둔 레지스터 리네이밍 시스템
5 5
청구항 1에 있어서,상기 디코더는 페치 유닛에서 명령어가 페치되면 프리 리스트 테이블을 검색하여 엔트리가 카운터 '0' 값을 가지고 있는 물리 레지스터를 찾아내어 해당 명령어의 목적지 물리 레지스터 주소에 할당하는 동시에 할당된 물리 레지스터에 해당하는 프리 리스트 테이블 엔트리의 카운터 값을 '1'로 증가시키고; 상기 프리 리스트 테이블은 결과 버스의 정보를 받아서 원래 목적지 물리 레지스터 주소가 가리키는 물리 레지스터 엔트리의 카운터 값을 '1' 만큼 감소시켜 해당 물리 레지스터가 프리한 상태를 나타내는 '0'으로 변경시키는 동시에 결과 버스 상의 소스 물리 레지스터 주소에 해당하는 엔트리의 카운터 값은 현재 동작 중인 명령어에 의하여 점유되어 있는 상태를 나타내는 '1'로 증가시키는 것을 특징으로 하는 레지스터 값의 유사성에 기반을 둔 레지스터 리네이밍 시스템
6 6
청구항 5에 있어서,명령어의 퇴거와 동반한 물리 레지스터의 퇴거시에는 해당 물리 레지스터의 프리 리스트 테이블 엔트리의 카운터 값이 '1'만큼 감소되어 프리한 상태를 나타내는 '0'으로 변경되는 것을 특징으로 하는 레지스터 값의 유사성에 기반을 둔 레지스터 리네이밍 시스템
7 7
(a) 페치 유닛에서 명령어가 페치되면, 디코더에서 프리 리스트 테이블을 검색하여 해당 명령어의 목적지 주소에 물리 레지스터를 할당하고 해당 명령어에 할당된 물리 레지스터 주소를 명령어의 원래 목적지 주소에 해당하는 레지스터 맵 테이블 엔트리에 기록하는 단계와;(b) 이어 상기 명령어가 명령어 대기 큐에 등록된 후 실행이 완료되면, 실행 유닛의 유사성 비교기에서 명령어 실행 후 실행 결과 값과 소스 오퍼랜드 값을 비교하여 유사성 여부를 판정하는 단계와;(c) 상기 두 값의 총 M 비트 중 상위 L 비트가 같다면, 유사성이 있는 것으로 판정하여, 상기 실행 유닛이, 디코드 단계에서 할당된 원래 목적지 물리 레지스터 주소, 유사한 것으로 판정된 소스 오퍼랜드의 물리 레지스터 주소, 결과 값의 하위 M-L 비트에 해당하는 결과 값과 소스 값의 차이값을 결과 버스를 통해 명령어 대기 큐, 레지스터 맵 테이블, 프리 레지스터 리스트로 전달하는 단계와;(d) 상기 결과 버스를 통해 명령어 대기 큐, 레지스터 맵 테이블, 프리 레지스터 리스트에 상기 정보들이 전달되면, 레지스터 변경이 수행되는 단계;를 포함하는 레지스터 값의 유사성에 기반을 둔 레지스터 리네이밍 방법
8 8
청구항 7에 있어서,상기 (d) 단계에서, 상기 명령어 대기 큐에 등록되어 대기 중인 후행 명령어들의 소스 물리 레지스터 주소와 상기 결과 버스 상의 원래 목적지 물리 레지스터 주소가 일치하면, 해당 후행 명령어의 소스 오퍼랜드의 물리 레지스터 주소를 상기 결과 버스 상의 소스 오퍼랜드의 물리 레지스터 주소로 변경하고, 명령어 대기 큐의 소스 오퍼랜드 필드에 마련된 차이값 필드에 상기 결과 버스 상의 차이값을 저장하는 동시에 차이값 유효 비트를 참(truth)이 되도록 하는 것을 특징으로 하는 레지스터 값의 유사성에 기반을 둔 레지스터 리네이밍 방법
9 9
청구항 7에 있어서,상기 (d) 단계에서, 상기 결과 버스 상의 원래 목적지 물리 레지스터 주소와 일치하는 값을 가진 레지스터 맵 테이블의 엔트리를 검색하여 일치하는 것이 발견되면, 해당 맵 테이블 엔트리의 물리 레지스터 주소를 상기 결과 버스 상의 소스 오퍼랜드의 물리 레지스터 주소로 변경하고, 맵 테이블 엔트리에 마련된 차이 값 필드에 상기 결과 버스 상의 차이값을 저장하는 동시에 차이값 유효 비트를 참(truth)이 되도록 하는 것을 특징으로 하는 레지스터 값의 유사성에 기반을 둔 레지스터 리네이밍 방법
10 10
청구항 7에 있어서,상기 (a) 단계에서, 디코더는 페치 유닛에서 명령어가 페치되면 프리 리스트 테이블을 검색하여 엔트리가 카운터 '0' 값을 가지고 있는 물리 레지스터를 찾아내어 해당 명령어의 목적지 물리 레지스터 주소에 할당하는 동시에 할당된 물리 레지스터에 해당하는 프리 리스트 테이블 엔트리의 카운터 값을 '1'로 증가시키고; 상기 (d) 단계에서, 프리 리스트 테이블은 결과 버스의 정보를 받아서 원래 목적지 물리 레지스터 주소가 가리키는 물리 레지스터 엔트리의 카운터 값을 '1' 만큼 감소시켜 해당 물리 레지스터가 프리한 상태를 나타내는 '0'으로 변경시키는 동시에 결과 버스 상의 소스 물리 레지스터 주소에 해당하는 엔트리의 카운터 값은 현재 동작 중인 명령어에 의하여 점유되어 있는 상태를 나타내는 '1'로 증가시키는 것을 특징으로 하는 레지스터 값의 유사성에 기반을 둔 레지스터 리네이밍 방법
11 11
청구항 10에 있어서,이후의 명령어 퇴거 단계에서, 명령어의 퇴거와 동반한 물리 레지스터의 퇴거시에는 해당 물리 레지스터의 프리 리스트 테이블 엔트리의 카운터 값을 '1'만큼 감소시켜 프리한 상태를 나타내는 '0'으로 변경시키는 것을 특징으로 하는 레지스터 값의 유사성에 기반을 둔 레지스터 리네이밍 방법
12 12
청구항 7에 있어서,상기 실행 유닛은, 상기 명령어 대기 큐의 명령어가 실행 가능한 상태가 되어 전달되면, 소스 물리 레지스터 주소를 이용하여 물리 레지스터 파일을 읽고, 레지스터 파일로부터 읽어들인 값의 하위 M-L 비트 값을 미리 저장해 둔 상기 차이값으로 치환하여 소스 오프랜드를 얻도록 된 것을 특징으로 하는 레지스터 값의 유사성에 기반을 둔 레지스터 리네이밍 방법
지정국 정보가 없습니다
패밀리정보가 없습니다
국가 R&D 정보가 없습니다.