KR19990049284A - 데이터 프로그램 장치 - Google Patents

데이터 프로그램 장치 Download PDF

Info

Publication number
KR19990049284A
KR19990049284A KR1019970068194A KR19970068194A KR19990049284A KR 19990049284 A KR19990049284 A KR 19990049284A KR 1019970068194 A KR1019970068194 A KR 1019970068194A KR 19970068194 A KR19970068194 A KR 19970068194A KR 19990049284 A KR19990049284 A KR 19990049284A
Authority
KR
South Korea
Prior art keywords
program
cache
command
main memory
memory device
Prior art date
Application number
KR1019970068194A
Other languages
English (en)
Inventor
박성휘
Original Assignee
구본준
엘지반도체 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 구본준, 엘지반도체 주식회사 filed Critical 구본준
Priority to KR1019970068194A priority Critical patent/KR19990049284A/ko
Priority to JP10345324A priority patent/JPH11272553A/ja
Priority to US09/209,279 priority patent/US6851025B2/en
Publication of KR19990049284A publication Critical patent/KR19990049284A/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3802Instruction prefetching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0862Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches with prefetch
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30047Prefetch instructions; cache control instructions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory
    • G06F2212/6028Prefetching based on hints or prefetch instructions

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

본 발명은 히트(Hit)율을 높여 성능을 향상시키도록 한 데이터 프로그램 장치에 관한 것으로서, 캐쉬 제어 명령을 구분할 수 있도록 프로그램된 실행 프로그램 내용을 저장하고 있는 주기억 장치와, 상기 주기억 장치의 프로그램 내용을 실행하는 중앙 처리 장치와, 상기 주기억 장치에서 출력되는 프로그램 내용이 캐쉬 제어 명령인지를 선별하는 명령 선별 장치와, 상기 중앙 처리 장치가 다음에 실행할 프로그램 내용을 미리 판단하여 상기 주기억 장치의 프로그램 내용을 읽어오고 상기 명령 선별 장치에서 캐쉬 제어 명령으로 선별되면 해당 프로그램을 미리 읽어 오는 캐쉬 제어 장치와, 그리고 상기 캐쉬 제어 장치의 제어에 의해 상기 주기억 장치의 프로그램 내용을 상기 명령 선별 장치를 통해 일시 저장하여 상기 중앙 처리 장치가 필요로 하는 해당 데이터 프로그램 내용을 공급하는 캐쉬 기억 장치를 포함하여 구성됨을 특징으로 한다.

Description

데이터 프로그램 장치
본 발명은 데이터 프로그램 장치(Data Program System)에 관한 것으로 특히, 히트(Hit)율을 높여 성능을 향상시키는데 적당한 데이터 프로그램 장치에 관한 것이다.
일반적으로 중앙 처리 장치(CPU : Central Processing Unit) 보다 상대적으로 동작 속도가 느린 주기억 장치를 사용할 때 중앙 처리 장치에 보다 빨리 명령어를 전달하기 위해 캐쉬 장치를 사용한다.
이러한 캐쉬 장치는 캐쉬 제어 장치와 캐쉬 기억 장치로 이루어져 중앙 처리 장치가 필요로 하는 프로그램 내용을 주기억 장치로부터 미리 가져와서 저장해두고 중앙 처리 장치의 요구가 있을 때 이를 중앙 처리 장치에 전달하는 장치로서 주기억 장치 보다 속도가 매우 빠른 기억 장치를 사용하므로서 중앙 처리 장치가 프로그램을 빠르게 수행할 수 있도록 한다.
이때 캐쉬 기억 장치의 용량이 주기억 장치에 비해 매우 작기 때문에 현재 및 가까운 시간 내에 중앙 처리 장치가 필요로 하는 프로그램 내용을 적절하게 선택하여 캐쉬 기억 장치에 저장해두는 것이 중요하다.
이와 같이 중앙 처리 장치가 필요로 하는 프로그램 내용이 캐쉬 기억 장치에 있는 비율을 캐쉬 기억 장치의 히트율(Hit Ratio)이라 한다.
한편, 중앙 처리 장치가 필요로 하는 프로그램 내용이 캐쉬 기억 장치에 없을 경우 중앙 처리 장치는 필요한 프로그램 내용을 속도가 느린 주기억 장치로부터 가져와야 하기 때문에 처리 시간 지연이 발생하게 되어 능률이 떨어진다.
따라서 히트율이 높을 수록 중앙 처리 장치의 성능이 향상되는 효과가 있다.
이러한 히트율 향상을 위하여 캐쉬 기억 장치를 제어하는 캐쉬 제어 장치는 주기억 장치에서 적절한 프로그램 내용을 캐쉬 기억 장치로 가져오기 위해 여러 가지 방법을 사용하고 있다.
이하, 첨부된 도면을 참고하여 종래의 데이터 프로그램 장치를 설명하면 다음과 같다.
도 1은 종래의 데이터 프로그램 장치를 나타낸 블록도이다.
도 1에 도시된 바와 같이 실행할 데이터 프로그램 내용을 저장하고 있는 주기억 장치(11)와, 상기 주기억 장치(11)에 저장된 데이터 프로그램 내용을 가져오는 캐쉬 제어 장치(12)와, 상기 캐쉬 제어 장치(12)에서 가져온 데이터 프로그램 내용을 저장하는 캐쉬 기억 장치(13)와, 상기 캐쉬 기억 장치(13)에 저장된 데이터 프로그램 내용을 필요에 따라 불러와 데이터 프로그램을 수행하는 중앙 처리 장치(14)를 포함하여 구성된다.
상기와 같이 구성된 종래의 데이터 프로그램 장치의 동작을 설명하면 먼저, 주기억 장치(11)에는 중앙 처리 장치(14)가 수행하고자 하는 데이터 프로그램 내용을 저장하고 있다가 상기 중앙 처리 장치(14)에서 데이터 프로그램을 수행하고자 어드레스 버스라인을 통하여 프로그램 어드레스를 출력하면 상기 주기억 장치(11)는 그 어드레스에 해당하는 데이터 프로그램 내용(명령어 및 데이터)을 중앙 처리 장치(14)에 공급하게 된다.
이때 상기 주기억 장치(11)는 상기 중앙 처리 장치(14) 보다 동작속도가 느리기 때문에 상기 중앙 처리 장치(14)가 상기 주기억 장치(11)에서 곧 바로 데이터 프로그램 내용을 가지고 오려면 상기 중앙 처리 장치(14)는 상기 주기억 장치(11)의 동작을 기다려야 하므로 그 동작 능력이 저하된다.
따라서 보다 빨리 데이터 프로그램 내용을 가져오기 위해 캐쉬 제어 장치(12)와 캐쉬 기억 장치(13)를 사용하여 상기 중앙 처리 장치(14)가 필요로 할 것으로 예견되는 데이터 프로그램 내용을 상기 주기억 장치(11) 보다 동작속도가 매우 빠른 상기 캐쉬 기억 장치(13)에 미리 저장한다.
이어, 상기 캐쉬 기억 장치(13)에 저장된 데이터 프로그램은 상기 중앙 처리 장치(14)가 프로그램 어드레스를 출력하면 상기 캐쉬 기억 장치(13)에 저장되어 있는 데이터 프로그램 내용을 상기 중앙 처리 장치(14)에 공급하므로서 상기 중앙 처리 장치(14)의 동작에 지장이 없도록 한다.
이때 만약에 상기 중앙 처리 장치(14)가 필요로 하는 데이터 프로그램 내용이 미리 상기 캐쉬 기억 장치(13)에 저장이 되어 있지 않다면 상기 중앙 처리 장치(14)는 상기 주기억 장치(11)에서 데이터 프로그램 내용을 가져올 수 밖에 없으므로 동작에 지연이 발생한다.
따라서 상기 캐쉬 제어 장치(12)는 상기 중앙 처리 장치(11)의 지연이 발생하지 않도록 프로그램의 진행 상황에 따라 상기 주기억 장치(11)에서 상기 캐쉬 기억 장치(13)로 데이터 프로그램 내용을 가져와서 저장해 둔다.
그런데 이와 같은 상기 캐쉬 제어 장치(12)가 프로그램 내용의 필요성을 예측하는 방법은 현재의 중앙 처리 장치(14)의 프로그램 어드레스에 의존하여 다음 어드레스의 프로그램 내용을 가져오거나 혹은 현재 중앙 처리 장치(14)가 수행하는 명령이 다른 어드레스로 이동해야 하는 내용일 때 그 목적지 어드레스의 프로그램 내용을 가져오는 동작을 한다.
그러나 이와 같은 종래의 데이터 프로그램 장치에 있어서 프로그램의 구성에 상관없이 캐쉬 장치가 현재 중앙 처리 장치의 동작에 의존함으로써 프로그램 내용의 필요성을 예측해야 하는데 정확한 예측이 불가능하여 중앙 처리 장치가 데이터 프로그램 내용을 주기억 장치로부터 직접 가져오기 때문에 히트율이 저하되는 문제점이 있었다.
본 발명은 상기와 같은 문제점을 해결하기 위해 안출한 것으로 캐쉬 장치를 효율적으로 제어함으로써 히트율을 높이도록 한 데이터 프로그램 장치를 제공하는데 그 목적이 있다.
도 1은 종래의 데이터 프로그램 장치를 나타낸 블록도
도 2는 본 발명에 의한 데이터 프로그램 장치를 나타낸 블록도
도 3은 본 발명의 캐쉬 장치를 제어하기 위한 기계어 실행 프로그램에 캐쉬제어 명령을 삽입하는 방법을 나타낸 블록도
도면의 주요 부분에 대한 부호의 설명
21 : 중앙 처리 장치 22 : 주기억 장치
23 : 캐쉬 제어 장치 24 : 명령 선별 장치
25 : 캐쉬 기억 장치 26 : 원본 프로그램
27 : 컴파일러 28 : 실행 프로그램 및 캐쉬 제어 명령
상기와 같은 목적을 달성하기 위한 본 발명에 의한 데이터 프로그램 장치는 캐쉬 제어 명령을 구분할 수 있도록 프로그램된 실행 프로그램 내용을 저장하고 있는 주기억 장치와, 상기 주기억 장치의 프로그램 내용을 실행하는 중앙 처리 장치와, 상기 주기억 장치에서 출력되는 프로그램 내용이 캐쉬 제어 명령인지를 선별하는 명령 선별 장치와, 상기 중앙 처리 장치가 다음에 실행할 프로그램 내용을 미리 판단하여 상기 주기억 장치의 프로그램 내용을 읽어오고 상기 명령 선별 장치에서 캐쉬 제어 명령으로 선별되면 해당 프로그램을 미리 읽어 오는 캐쉬 제어 장치와, 그리고 상기 캐쉬 제어 장치의 제어에 의해 상기 주기억 장치의 프로그램 내용을 상기 명령 선별 장치를 통해 일시 저장하여 상기 중앙 처리 장치가 필요로 하는 해당 데이터 프로그램 내용을 공급하는 캐쉬 기억 장치를 포함하여 구성됨을 특징으로 한다.
이하, 첨부된 도면을 참고하여 본 발명에 의한 데이터 프로그램 장치를 상세히 설명하면 다음과 같다.
도 2는 본 발명에 의한 데이터 프로그램 장치를 나타낸 블록도이고, 도 3은 본 발명의 캐쉬 장치를 제어하기 위한 기계어 실행 프로그램에 캐쉬 제어 명령을 삽입하는 방법을 나타낸 블록도이다.
도 2에 도시된 바와 같이 데이터 프로그램을 실행하는 중앙 처리 장치(21)와, 상기 중앙 처리 장치(21)가 실행하고자 하는 캐쉬 제어 명령을 구분할 수 있도록 프로그램된 실행 프로그램 내용을 저장하고 있는 주기억 장치(22)와, 상기 중앙 처리 장치(21)가 프로그램을 실행하고자 하는 어드레스 신호를 받아 주기억 장치(22)에 저장된 데이터 프로그램 내용을 가져오는 캐쉬 제어 장치(23)와, 상기 주기억 장치(22)에 저장된 데이터 프로그램 내용이 상기 캐쉬 제어 명령인지를 선별하는 명령 선별 장치(24)와, 상기 캐쉬 제어 장치(23)의 제어에 의해 상기 주기억 장치(22)의 데이터 프로그램 내용을 상기 명령 선별 장치(24)를 통해 일시 저장하여 상기 중앙 처리 장치(21)가 필요로 하는 프로그램 내용을 공급하는 캐쉬 기억 장치(25)를 포함하여 구성된다.
여기서 상기 캐쉬 제어 장치(23)는 상기 중앙 처리 장치(21)가 실행할 프로그램을 미리 판단하여 상기 주기억 장치(22)에 프로그램을 읽어오고 상기 명령 선별 장치(24)에서 캐쉬 제어 명령으로 선별되면 해당 프로그램을 미리 읽어낸다.
그리고 상기 명령 선별 장치(24)에서 캐쉬 제어 명령으로 선별된 명령은 상기 캐쉬 제어 장치(23)에 입력되어 전체 캐쉬 장치의 동작을 제어한다.
도 3에 도시된 바와 같이 본 발명의 캐쉬 장치를 사용하는 중앙처리장치의 데이터 프로그램 내용을 생성하는 컴파일러(Compiler)에 있어서, 고급언어(C언어등)로 짜여져 있는 원본 프로그램(Source Program)(26)을 중앙 처리 장치가 해독할 수 있는 기계어 실행 프로그램으로 바꾸는 컴파일러(27)와, 상기 컴파일러(27)가 컴파일할 때 기계어 실행 프로그램(주기억 장치에 저장될 프로그램 내용)에 캐쉬 장치가 최적 동작을 할 수 있도록 캐쉬 장치의 제어 명령을 삽입하는 실행 프로그램 및 캐쉬 제어 명령(28)으로 이루어진다.
상기와 같이 구성된 본 발명에 의한 데이터 프로그램 장치의 동작을 설명하면 다음과 같다.
먼저, 캐쉬 제어 장치(23)는 스스로 제어명령을 해독하고 수행할 수 있도록 되어 있고, 원본 프로그램(26)이 컴파일러(27)에 의해 컴파일될 때 컴파일러(27)는 캐쉬 장치가 최적의 캐쉬 동작을 할 수 있도록 실행 프로그램 및 캐쉬 제어 명령(28)을 기계어 실행 프로그램 내에 삽입한다.
예를 들면 원본 프로그램(26)을 컴파일러(27)가 컴파일할 때 상기 컴파일러(27)는 현재 수행되는 프로그램 루틴의 서브루틴(Subroutine)이 몇 개이며, 어느 어드레스에 위치하는지를 파악할 수 있다.
이러한 정보를 실행 프로그램 및 캐쉬 제어 명령(28)으로서 기계어 실행 프로그램 내에 삽입해 두면, 상기 명령 선별 장치(24)는 프로그램 수행 중 주기억 장치(22)로부터 명령어(프로그램 내용)를 가지고 오면서 그 명령어가 캐쉬 제어 명령이면 그 명령어는 캐쉬 기억 장치(25)에 저장하지 않고 상기 캐쉬 제어 장치(23)로 보내게 된다.
즉, C언어와 같이 고급 언어로 프로그램을 작성할 때 메인(Main) 루틴의 수행중 서브 루틴의 길이를 캐쉬 제어 정보로 컴파일시 주기억 장치(22)의 프로그램에 삽입하여 두면, 캐쉬 제어 장치(23)가 이를 검출하여 서브 루틴을 중앙 처리 장치(21)가 필요로 하는 명령어를 미리 캐쉬 기억 장치(25)에 가져다 놓기 때문에 캐쉬 동작이 보다 빠르게 수행된다.
따라서 프로그램의 실행속도가 향상된다.
여기서 상기 주기억 장치(22)에 입력되는 명령어는 2진수로 구성되어 있으며, 중앙 처리 장치(21)의 명령어를 표현하고 남은 코드를 이용하여 캐쉬 제어 명령을 만든다.
예를 들면, 최상위의 3개의 비트가 모두 1인 것을 중앙 처리 장치(21)의 명령어로 쓰지 말고 캐쉬 제어 장치(23)의 명령이라고 한다면, 최상위의 3개의 비트만 명령 선별 장치(24)에서 디코딩함으로써 이 명령어가 중앙 처리 장치(21)의 명령인지 캐쉬 제어 장치(23)의 명령인지를 판별할 수 있다.
즉, 명령 선별 장치(24)에 입력된 명령을 디코더를 이용하여 선별함으로써 중앙 처리 장치(21)의 명령은 캐쉬 기억 장치(25)로 전달하고 캐쉬 제어 장치(24)의 명령은 캐쉬 제어 장치(24)로 전달한다.
한편, 상기 캐쉬 제어 장치(23)는 명령 선별 장치(24)에서 보내온 제어 명령에 따라 중앙 처리 장치(21)의 데이터 프로그램 내용의 필요한 위치를 정확하게 예측하여 주기억 장치(22)로부터 데이터 프로그램 내용을 가지고 와서 캐쉬 기억 장치(25)에 저장한다.
이어, 상기 캐쉬 기억 장치(25)는 상기 중앙 처리 장치(21)가 필요로 하는 데이터 프로그램 내용을 저장해 두었다가 상기 중앙 처리 장치(21)의 요구가 있을 때 저장된 데이터 프로그램 내용을 중앙 처리 장치(21)에 공급한다.
이와 같은 캐쉬 장치의 제어 내용으로는 현재 수행되는 프로그램 루틴의 길이(시작 어드레스와 끝 어드레스 등), 현재 프로그램 루틴이 억세스할 수 있는 서브루틴의 개수 및 각각의 어드레스와 길이, 사용이 종료된 프로그램 루틴의 어드레스(캐쉬 기억 장치에 빈 공간이 부족할 경우 필요한 공간을 확보하기 위하여 필요 없는 프로그램 내용을 삭제한다) 등의 필요에 따라 더욱더 다양한 제어방법을 적용할 수 있다.
이상에서 설명한 바와 같이 본 발명에 의한 데이터 프로그램 장치에 있어서 캐쉬 제어 명령을 구분할 수 있도록 프로그램된 실행 프로그램에서 명령 선별 장치를 통하여 캐쉬 제어 명령을 선별함으로써 중앙 처리 장치가 필요로 하는 데이터 프로그램 내용을 정확히 예측하기 때문에 캐쉬 장치의 히트율을 상승시키어 전체 장치의 성능을 향상시킬 수 있는 효과가 있다.

Claims (2)

  1. 캐쉬 제어 명령을 구분할 수 있도록 프로그램된 실행 프로그램 내용을 저장하고 있는 주기억 장치와,
    상기 주기억 장치의 프로그램 내용을 실행하는 중앙 처리 장치와,
    상기 주기억 장치에서 출력되는 프로그램 내용이 캐쉬 제어 명령인지를 선별하는 명령 선별 장치와,
    상기 중앙 처리 장치가 다음에 실행할 프로그램 내용을 미리 판단하여 상기 주기억 장치의 프로그램 내용을 읽어오고 상기 명령 선별 장치에서 캐쉬 제어 명령으로 선별되면 해당 프로그램을 미리 읽어 오는 캐쉬 제어 장치와, 그리고
    상기 캐쉬 제어 장치의 제어에 의해 상기 주기억 장치의 프로그램 내용을 상기 명령 선별 장치를 통해 일시 저장하여 상기 중앙 처리 장치가 필요로 하는 해당 데이터 프로그램 내용을 공급하는 캐쉬 기억 장치를 포함하여 구성됨을 특징으로 하는 데이터 프로그램 장치.
  2. 제 1 항에 있어서,
    상기 명령 선별 장치에서 캐쉬 제어 명령으로 선별된 명령은 상기 캐쉬 제어 장치에 입력되어 전체 캐쉬 장치의 동작을 제어함을 특징으로 하는 데이터 프로그램 장치.
KR1019970068194A 1997-12-12 1997-12-12 데이터 프로그램 장치 KR19990049284A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1019970068194A KR19990049284A (ko) 1997-12-12 1997-12-12 데이터 프로그램 장치
JP10345324A JPH11272553A (ja) 1997-12-12 1998-12-04 プログラムキャッシュシステム
US09/209,279 US6851025B2 (en) 1997-12-12 1998-12-11 Cache management system using cache control instructions for controlling the operation of cache

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1019970068194A KR19990049284A (ko) 1997-12-12 1997-12-12 데이터 프로그램 장치

Publications (1)

Publication Number Publication Date
KR19990049284A true KR19990049284A (ko) 1999-07-05

Family

ID=19527156

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019970068194A KR19990049284A (ko) 1997-12-12 1997-12-12 데이터 프로그램 장치

Country Status (3)

Country Link
US (1) US6851025B2 (ko)
JP (1) JPH11272553A (ko)
KR (1) KR19990049284A (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4103460B2 (ja) * 2002-06-17 2008-06-18 ソニー株式会社 サービス提供システムおよび方法、並びにプログラム
TW594486B (en) * 2002-12-30 2004-06-21 Icp Electronics Inc The improvement to the 4-wire/3-wire NVRAM control instruction
US8346740B2 (en) 2005-07-22 2013-01-01 Hewlett-Packard Development Company, L.P. File cache management system
US8566531B2 (en) 2009-08-21 2013-10-22 Google Inc. System and method of selectively caching information based on the interarrival time of requests for the same information
AU2015201273B2 (en) * 2009-08-21 2016-07-07 Google Llc System and method of caching information

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5778423A (en) * 1990-06-29 1998-07-07 Digital Equipment Corporation Prefetch instruction for improving performance in reduced instruction set processor
GB2285524B (en) * 1994-01-11 1998-02-04 Advanced Risc Mach Ltd Data memory and processor bus
EP0752645B1 (en) * 1995-07-07 2017-11-22 Oracle America, Inc. Tunable software control of Harvard architecture cache memories using prefetch instructions
EP0752644A3 (en) * 1995-07-07 2001-08-22 Sun Microsystems, Inc. Memory management unit incorporating prefetch control
JP3717212B2 (ja) * 1995-10-27 2005-11-16 株式会社日立製作所 情報処理装置及び情報処理ユニット
US6055621A (en) * 1996-02-12 2000-04-25 International Business Machines Corporation Touch history table
US5854934A (en) * 1996-08-23 1998-12-29 Hewlett-Packard Company Optimizing compiler having data cache prefetch spreading
JP3546341B2 (ja) * 1997-04-17 2004-07-28 株式会社日立製作所 多重ループ向けデータプリフェッチ方法およびプログラム生成方法
US6139199A (en) * 1997-06-11 2000-10-31 Sun Microsystems, Inc. Fast just-in-time (JIT) scheduler
US6128703A (en) * 1997-09-05 2000-10-03 Integrated Device Technology, Inc. Method and apparatus for memory prefetch operation of volatile non-coherent data
JP3289661B2 (ja) * 1997-11-07 2002-06-10 日本電気株式会社 キャッシュメモリシステム
US5964867A (en) * 1997-11-26 1999-10-12 Digital Equipment Corporation Method for inserting memory prefetch operations based on measured latencies in a program optimizer
US6000044A (en) * 1997-11-26 1999-12-07 Digital Equipment Corporation Apparatus for randomly sampling instructions in a processor pipeline
US6070009A (en) * 1997-11-26 2000-05-30 Digital Equipment Corporation Method for estimating execution rates of program execution paths
US5948095A (en) * 1997-12-31 1999-09-07 Intel Corporation Method and apparatus for prefetching data in a computer system
US6249845B1 (en) * 1998-08-19 2001-06-19 International Business Machines Corporation Method for supporting cache control instructions within a coherency granule

Also Published As

Publication number Publication date
US6851025B2 (en) 2005-02-01
US20020026561A1 (en) 2002-02-28
JPH11272553A (ja) 1999-10-08

Similar Documents

Publication Publication Date Title
EP1096371B1 (en) A method and apparatus for prefetching instructions
US5515519A (en) Data processor and method utilizing coded no-operation instructions
JP2007058875A (ja) コンピュータシステムのためのプログラマブルなブランチ予測システムおよび方法
DK0938703T3 (da) Accelerator for tidstro programsprog
CN101539853A (zh) 信息处理单元、程序和指令序列生成方法
US6301652B1 (en) Instruction cache alignment mechanism for branch targets based on predicted execution frequencies
JPH06242949A (ja) キュー管理式命令キャッシュ
US9304750B2 (en) System and method for processor with predictive memory retrieval assist
US5274776A (en) Information processing system having mode signal holding means and selecting operand access mode based on mode signal indicating type of currently executed instruction
JP2006522398A (ja) パイプライン型命令プロセッサにおけるバイパスの使用
KR19990049284A (ko) 데이터 프로그램 장치
KR960042329A (ko) 프로그램의 코드크기의 축소화를 지원하는 마이크로 프로세서
JP2004519028A (ja) 命令フェッチ制御ビットを有するコンピュータ命令
US20010037444A1 (en) Instruction buffering mechanism
JP2001166989A (ja) プリフェッチ機構を有するメモリシステム及びその動作方法
JP3532835B2 (ja) データ処理装置およびプログラム変換装置
JP3573980B2 (ja) 情報処理装置及び情報処理システム
US20030131345A1 (en) Employing value prediction with the compiler
JP5105359B2 (ja) 中央処理装置、選択回路および選択方法
JP3913895B2 (ja) 命令キャッシュ制御装置および記録媒体
JP2534674B2 (ja) 情報処理装置
JPH0553807A (ja) 条件分岐命令先行制御方式
JPH10254782A (ja) データ処理装置
JP4283226B2 (ja) アドレス範囲に依存した命令並行処理を行うデータ処理装置
JPH10187531A (ja) キャッシュメモリのプリフェッチ方式

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E801 Decision on dismissal of amendment
N231 Notification of change of applicant
E601 Decision to refuse application
J201 Request for trial against refusal decision
AMND Amendment
B601 Maintenance of original decision after re-examination before a trial
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20020822

Effective date: 20040629

Free format text: TRIAL NUMBER: 2002101003253; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20020822

Effective date: 20040629