KR910001538A - 분기명령 실행장치 및 분기명령 트레이싱방법 - Google Patents
분기명령 실행장치 및 분기명령 트레이싱방법 Download PDFInfo
- Publication number
- KR910001538A KR910001538A KR1019900009050A KR900009050A KR910001538A KR 910001538 A KR910001538 A KR 910001538A KR 1019900009050 A KR1019900009050 A KR 1019900009050A KR 900009050 A KR900009050 A KR 900009050A KR 910001538 A KR910001538 A KR 910001538A
- Authority
- KR
- South Korea
- Prior art keywords
- branch
- instruction
- signal
- conditional
- execution
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims 5
- 238000003860 storage Methods 0.000 claims 9
- 230000003213 activating effect Effects 0.000 claims 3
- 230000009191 jumping Effects 0.000 claims 1
- 230000014759 maintenance of location Effects 0.000 claims 1
- 230000004044 response Effects 0.000 claims 1
- 238000010586 diagram Methods 0.000 description 3
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3636—Software debugging by tracing the execution of the program
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/362—Software debugging
- G06F11/3648—Software debugging using additional hardware
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/30—Arrangements for executing machine instructions, e.g. instruction decode
- G06F9/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3836—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
- G06F9/3842—Speculative instruction execution
- G06F9/3846—Speculative instruction execution using static prediction, e.g. branch taken strategy
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/30—Monitoring
- G06F11/34—Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Advance Control (AREA)
- Debugging And Monitoring (AREA)
Abstract
내용 없음
Description
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제 1도는 본 발명의 원리설명도,
제 2도는 본 발명의 일실시예의 구성도이며, 조건분기 명령의 분기 트레이스(branch trace)의 파이프라인 처리의 설명도,
제 3도는 본 발명의 명령실행부의 블록도.
Claims (21)
- 파이프라인 처리에 의해서 명령을 순차 실행하는 분기 명령실행 장치에 있어서, 조건부 분기 명령을 데코드하는 수단 ; 당해 조건의 판정결과를 기다리지 않고 조건성립을 추정하여 분기선 명령의 실행유무를 지시하는 분기선 실행 플래그를 제공하는 수단 ; 및 그후 실제의 판정결과가 얻어졌을때에 상기 분기선 실행 플래그의 내용을 수정하는 수단 ;을 포함하는 것을 특징으로 하는 분기 명령 실행장치.
- 제 1항에 있어서, 상기 분기선 실행플래그가 디버그 예외 발생 플래그이고, 상기 분기선이 디버그루틴인 것을 특징으로 하는 분기 명령 실행장치.
- 파이프라인 처리에 의한 각 명령의 실행중에 분기된 명령을 순차 실행하는 분기 명령 실행장치에 있어서, 조건부 분기 명령을 데코드하는 수단 ; 당해조건의 판정결과를 기다리지 않고 상기 조건의 성립을 추정하여 분기선 명령을 실행하는 수단 ; 및 그후 실제 판정결과가 얻어진 시점에서 분기 불성립일 경우에 상기 분기선명령의 실행을 불성립일 경우에 상기 분기선명령의 실행을 취소하는 수단 ;을 포함하는 것을 특징으로 하는 분기 명령 실행장치.
- 메인 메모리 유니트로부터의 명령을 페치하여 그것을 해독 연산하는 분기 명령 실행 장치에 있어서, 각 명령을 해독하고 해독된 명령이 무조건 분기인 경우 ; 분기될 확율이 높은 조건분기 명령의 경유 또는 분기될 확율이 낮은 조건분기 명령인 경우에 각각 무조건 분기신호, 조건 부분기 1신호, 조건부분기 2신호를 출력하는 명령 데코드 수단 ; 및 상기 조건부 분기명령의 조건이 성립하는 경우에는 조건 성립 신호를 활성하고 조건불성립의 경우에는 조건 불성립 신호를 활성화하는 판정수단 ; 상기 분기 불성립신호가 활성화되는 경우에 분기선 명령의 실행을 취소하고 또한 상기 데코드수단으로부터 조건분기 1신호가 활성화된 경우 분기조건 성립 또는 불성립의 결과를 기다리지 않고 조건분기를 행하는 제어수단 ;을 포함하는 것을 특징으로 하는 분기 명령 실행장치.
- 메인메모리 유니트로부터의 명령을 페치하여 그것을 해독 연산하는 명령 해독 실행장치 ; 해독된 명령이 무조건 분기인 경우에 활성화되는 무조건 분기신호, 분기될 확율이 높은 조건 분기 명령인 경우에 활성화되는 조건 분기 1신호 또는 분기될 확율이 낮은 조건 분기 명령인 경우에 활성화되는 조건분기 2신호를 출력하는 명령 데코드 수단 ; 상기 명령 데코드수단에 의해서 어드레스 제어되어 마이크로 프로그램을 기억하는 마이크로 명령기억수단 ; 상기 마이크로 명령 기억수단으로부터의 출력에 의해서 제어를 행하는 연산수단 ; 상기 연산수단으로부터의 상태 플래그와 상기 명령 데코더 수단에서 제공되는 분기 조건코드를 사용하여 상기 마이크로 기억수단으로부터의 마이크로 지시에 따라서 상기 조건분기 명령의 조건이 성립되는 경우에는 조건성립 신호를 활성화하고, 조건이 불성립의 경우에는 조건 불성립신호를 활성화하는 판정수단 ; 상기 명령 데코드 수단으로부터의 조건 분기1신호가 활성화되어 있는 경우에 상기 판정수단으로부터의 조건성립, 불성립의 결과를 기다리지 않고 조건 분기를 행하는 분기실행 비트를 설정하고, 상기 판정수단의 판정결과로서 분기 불성립신호가 활성화되는 경우에는 상기 분기선 실행비트의 수정을 행하는 제어수단 ;을 포함하고 있는 것을 특징으로 하는 분기 명령 실행장치.
- 제 5항에 있어서, 데코드 스테이지(DC), 어드레스 계산 스케이지(AC), 마이크로 명령독출 스테이지(MI), 실행 스테이지(DE) 및 실행결과 기입 스테이지(OW)로 되는 파이프라인 동작에 있어서, 상기 조건분기 2신호가 활성화되어 있는 경우에는 그 이전의 명령의 실행 스테이지에서 실행되는 연산부의 실행결과로서 생기는 상태 플래그의 생성을 보고 분기할 것인가 여부의 판정을 행하고, 분기하는 경우에는 조건 분기 2신호를 발생한 분기명령에 뒤이은 명령을 취소하고, 상기 조건분기 1신호가 활성화되어 있는 경우에는 조건분기 1명령의 분기선 어드레스 계산의 어드레스 계산 스테이지 직후에 분기선 명령을 선취하여 분기선 명령의 데코드 스테이지로 들어가고 실행 스테이지에 실행되는 연산부의 실행결과로서 생기는 상태플래그의 생성을 보고 분기 할 것인지 여부를 판정하고, 분기하는 경우에는 그대로 분기선 명령의 파이프라인 동작을 실행하고, 분기하지 않는 경우에는 분기선 명령을 취소하고 그 기입스테이지에 뒤이은 데코드 스테이지로부터 조건분기 1신호를 생성하는 조건분기 명령에 뒤이은 데코드 스테이지로 들어가는 것을 특징으로 하는 분기 명령 실행장치.
- 제 5항에 있어서, 상기 명령 데코드수단은 명령 선취 요구를 행하는 명령선취 요구회로 ; 조건분기 명령의 비분기측 명령열과 분기측 명령열을 각각 기억하는 2개의 영역을 갖고 있으며, 상기 설취 요구회로로부터의 명령선취 요구신호가 명령캐슈에 제공되고 그것에 대한 응답신호가 출력된 경우에 상기 명령캐슈에서 명령을 선취하여 기입하고 또 기입한 명령을 독출하는 동작을 실행하는 명령 선취 버퍼 ; 상기 명령 선취 버퍼로부터 독출되는 명령코드를 데코드하는 데코드수단 ; 상기 데코드수단으로부터 무조건 분기 명령인 경우에 활성화되는 모조건 분기명령 신호, 분기확율이 높은 경우에 활성화되는 조건분기 명령 1신호, 분기 확율이 낮은 경우에 활성화되는 조건분기 명령 2신호를 입력하고 상기 명령선취 버퍼의 라이트 포인터나 리드포인터의 값을 변화시키는 제어를 행하고 또 조건분기의 성립 불성립을 제어하는 판정회로로부터 보내오는 조건분기 성립신호와 조건분기 불성립신호의 입력에 의해서 상기 변화된 라이트 포인터 도는 리드포인의 값을 소정시간 후에 재차변화시키는 명령선취버퍼 제어수단 ; 상기 명령 선취버퍼의 제1 및 제2의 영역에 명령을 분배하기 위하여 가입어드레스를 생성 또는 세이브하는 라이트포인터 수단 ; 및 상기 명령 선취버퍼의 제1 및 제2의 영역으로부터 명령을 분배하는 독출어드레스를 생성 또는 세이브하는 리드포인트 수단을 포함하는 것을 특징으로 하는 분기 명령 실행장치.
- 제 7항에 있어서, 상기 명령 데코드수단이 무조건 분기를 데코드한 경우에는 라이트 포인터, 리드포인터의 기억용 레지스터의 엔트리번호부를 모두 영(0)으로 하여 WS=RS이 되도록 사이드 지정비트를 초기화 하는 수단과 리드포인터 기억용 레지스터의 엔트리내 옵세트부에 실행부에서 분기 어드레스 계산결과가 해당되는 하위부를 뽑아내어 세트하는 수단을 갖고 상기 명령 선취 버퍼의 한쪽 영역에 대해서 리드, 라이트를 행하는 것을 특징으로 하는 분기 명령 실행장치.
- 제 7항에 있어서, 상기 명령 데코드수단이 분기확율이 높은 명령인 조건분기신호를 데코드한 경우에는 라이트포인터, 리드포인터 기억용 레지스터의 엔트리번호부를 모두 영(0)으로 하여 WS/RS모두 반전(역 사이드)하는 수단과 리드 포인터의 엔트리내 옵세스부에 실행부로부터 분기어드레스 계산결과가 해당되는 하위부를 뽑아내어 세트하는 수단과 그 이전의 라이트 포인터, 리드포인터의 값을 각각 라이트 포인터와 리드포인터 기억용 레지스터에 세이브하는 수단과 이 상태에서 명령선취 버퍼의 역사이드에 분기선 명령을 선취하고 독출하여 실행하는 수단과 그후에 분기판정 결과에 의해서 분기조건 성립의 경우에는 그대로 계속하고 분기조건 불성립의 경우에는 명령실행을 취소하고 라이트 포인터, 리드포인터 기억용 레지스터에 각각 라이트포인터와 리드포인터 세이브용 레지스터에 세이브하고 있던 값을 되돌리고 또 WS/FS모두를 반전하고 명령 선취버퍼의 어드레스는 비분기측으로 되돌리는 수단을 갖는 것을 특징으로 하는 분기 명령 실행장치.
- 제 7항에 있어서, 상기 명령 데코드수단이 분기확율이 낮은 명령인 조건분기 2를 데코드한 경우에는 라이트포인터의 값을 라이트포인터 세이브용 레지스터에 세이브하고 라이트 포인터 기억용 레지스터의 엔트리번호부를 영(0)으로 하고 WS를 발전하는 수단과, 리드포인터는 그대로 하는 수단과 그후에 분기판정결과에 의해서 분기 조건성립의 경우에는 명령실행을 취소하고 리드포인터 기억용 레지스터의 엔트리부를 영(0)으로 하고 옵세트부에 분기어드레스의 하위측을 로드하고 RS를 반전하도록 제어하는 수단과 분기 조건 불성립의 경우에는 명령버퍼의 독출, 데코드실행은 그대로 계속하는 수단과 라이트포인터 기억용 레지스터에 라이트 포인터 2세이브용 레지스터에 세이브되어 있던 값을 되돌리고 WS를 반전하는 수단을 갖는 것을 특징으로 하는 분기 명령 실행장치.
- 제 7항에 있어서, 상기 명령 선취 버퍼 제어수단은 무조건 분기, 조건분기1, 조건분기2, 분기조건 불성립 분기조건 성립 신호들을 입력하고 무조건 분기신호가 활성화되는 경우에는 라이트포인터, 리드포인터 모두를 클레어하고 조건분기 1이 활성화된 경우에는 라이트 포인터를 세이브용 레지스터에 세트하는 인에이블신호 및 역사이드로 옮기는 제어신호를 형성하고 리드포인터 세이브용 레지스터에 세트하는 인에이블신호 및 역사이드로 옮기는 제어신호를 형성하고 조건분기 1신호가 데코드되고 나서 분기 조건성립, 불성립신호중 어느 것이 입력되도록까지 세트되어 있는 플립플롭에 의해서 조건 분기 1의 실행을 판단하고 분기조건 불성립의 경우에는 리드포인터 및 라이드 포인터를 세이브상태로부터 원래대로 되돌리고 분기 명령에 뒤이은 명령의 선취, 데코드를 재개하고 조건분기 신호2가 활성화되어 있는 경우에는 라이트포인터를 세이브용 레지스터에 세트하는 인에이블 신호 및 역사이드로 옮기는 제어신호를 형성하고 분기신호 불성립이 활성화된 경우에는 세이브 상태로부터 원래대로 라이트포인터를 되돌리고 원래의 분기명령에 뒤이은 명령의 라이트를 실행하는 제어신호를 발생하고 분기 조건 성립신호가 활성화된 경우에는 리드포인터를 역사이드로 옮기는 제어신호를 발생하는 것을 특징으로 하는 분기 명령 실행장치.
- 제 5항에 있어서, 상기 분기선 명령 실행비트로 구동되는 처리는 디버그루틴인 것을 특징으로 하는 분기 명령 실행장치.
- 제 12항에 있어서, 상기 분기명령으로서 디버그루틴으로 점프한 경우에 이 디버그루틴이 특권모드로 실행되는 것을 특징으로 하는 분기 명령 실행장치.
- 제 5항에 있어서, 상기 조건분기 1신호를 발생한 조건분기 명령은 DO LOOP인 것을 특징으로 하는 분기 명령 실행장치.
- 제 14항에 있어서, 상기 DO LOOP는 카운트 갱신과 동일 실행 스테이지에 DO LOOP로부터 벗어나기 위한 리미트치와의 비교를 행함으로써 실행되는 것을 특징으로 하는 분기 명령 실행장치.
- 제 14항에 있어서, 상기 DO LOOP는 DO LOOP의 카운트 갱신을 행하는 제 1실행 스테이지와 그 DL LOOP로부터 벗어나기 위한 리미트치와의 비교를 행하는 제 2실행 스테이즈로 실행하는 것을 특징으로 하는 분기 명령 실행장치.
- 제 5항에 있어서, 상기 판정수단이 연산부에서 출력되는 상태 플래그를 마이크로 지시에 의한 상태 플래그생성조건에 의해서 유효하게 하느냐 결정하는 수단과, 유효로 된 상태플래그를 조건분기명령의 분기조건코드에 의해서 상기 조건의 성립 또는 불성립을 결정하는 수단을 갖는 것을 특징으로 하는 분기 명령 실행장치.
- 제 5항에 있어서, 상기 명령 해독 실행 장치는 1칩의 CPU내에 설비되고 디버그루틴을 격납하는 메모리도 이 CPU내에 설비된 것을 특징으로 하는 분기 명령 실행장치.
- 제 5항에 있어서, 상기 명령 데코드수단을 과거에 분기조건이 성립된 분기명령의 명령어드레스를 등록하는 복수의 분기명령 어드레스 기억부와, 상기 분기 명령 어드레스에 대한 분기선 명령을 등록하는 분기선 명령 버퍼수단과, 현재의 프로그램 카운터치와 상기 분기 명령 어드레스 기억부에 기억되어 있는 복수의 분기명령 어드레스를 각각 비교하는 비교수단과, 상기 비교수단의 비교결과 프로그램 카운터의 값이 분기명령 어드레스중 어느것과 일치된 경우에는 일치된 분기명령 어드레스에 대응하는 분기선 명령을 상기 분기선 명령버퍼로부터 독출된 데코더에 제공하고 또 동시에 분기확율이 높은 명령을 나타내는 조건분기 1신호를 활성화하여 프로그램 카운터의 값이 상기 분기 명령 어드레스 기억부의 어느 어드레스에도 일치되지 않는 경우에는 명령선취의 버퍼의 명령을 상기 명령 데코더에 제공하고 분기확율이 낮은 명령을 나타낸 조건 분기 2신호를 활성화하는 제어를 행하는 분기 예측수단을 갖는 것을 특징으로 하는 분기 명령 실행장치.
- 파이프라인 처리에 의한 각 명령어의 실행중에 분기된 명령어를 순차 트레이스 하는 방법에 있어서 조건부 분기 명령이 데코드된 경우에 당해 조건의 판정결과를 기다리지 않고 즉시 조건성립을 추정하여 디버그 예의 발생비트를 설정하고 그 후에 실제의 판정 결과가 나온 시점에서 디버그 예외 발생비트의 내용을 수정하는 것을 특징으로 하는 분기명령 트레이스 방법.
- 파이프라인 처리에 의한 각 명령어의 실행중에 분기된 명령어를 순차 트레이스 하는 방법에 있어서, 조건부 분기 명령이 데코드된 경우에 당해 조건의 판정결과를 기다리지 않고 즉시 조건성립을 추정하여 분기선 명령을 실행하고 그 후에 실제의 판정 결과가 나온 시점에서 만약 분기불성립의 경우에는 상기 분기선 명령의 실행을 취소하는 것을 특징으로 하는 분기 명령 실행장치.※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP15790489 | 1989-06-20 | ||
JP1-157904 | 1989-06-20 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR910001538A true KR910001538A (ko) | 1991-01-31 |
KR930009756B1 KR930009756B1 (ko) | 1993-10-09 |
Family
ID=15659980
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019900009050A KR930009756B1 (ko) | 1989-06-20 | 1990-06-20 | 분기명령 실행장치 및 분기명령 트레이싱방법 |
Country Status (4)
Country | Link |
---|---|
US (1) | US5715440A (ko) |
EP (1) | EP0404068A3 (ko) |
JP (1) | JPH0795271B2 (ko) |
KR (1) | KR930009756B1 (ko) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0528002A (ja) * | 1991-07-24 | 1993-02-05 | Nec Corp | マイクロプロセツサ |
JP3494489B2 (ja) * | 1994-11-30 | 2004-02-09 | 株式会社ルネサステクノロジ | 命令処理装置 |
JP3699518B2 (ja) * | 1995-01-26 | 2005-09-28 | サン マイクロシステムズ インコーポレイテッド | パイプライン・プロセッサ内において、誤って予測された実行分岐後にアネックス内のヤング・ビットを回復する方法及び装置 |
US6026236A (en) * | 1995-03-08 | 2000-02-15 | International Business Machines Corporation | System and method for enabling software monitoring in a computer system |
TW470915B (en) * | 1996-03-12 | 2002-01-01 | Matsushita Electric Ind Co Ltd | Optimization apparatus which removes transfer instructions by a global analysis of equivalence relations |
JP3203180B2 (ja) * | 1996-03-27 | 2001-08-27 | 三菱電機株式会社 | 幾何学演算装置 |
US6119221A (en) * | 1996-11-01 | 2000-09-12 | Matsushita Electric Industrial Co., Ltd. | Instruction prefetching apparatus and instruction prefetching method for processing in a processor |
US6112298A (en) * | 1996-12-20 | 2000-08-29 | Texas Instruments Incorporated | Method for managing an instruction execution pipeline during debugging of a data processing system |
US6052753A (en) * | 1997-01-21 | 2000-04-18 | Alliedsignal Inc. | Fault tolerant data bus |
US5838962A (en) * | 1997-04-09 | 1998-11-17 | Hewlett-Packard Company | Interrupt driven dynamic adjustment of branch predictions |
US6122729A (en) * | 1997-05-13 | 2000-09-19 | Advanced Micro Devices, Inc. | Prefetch buffer which stores a pointer indicating an initial predecode position |
US6553564B1 (en) * | 1997-12-12 | 2003-04-22 | International Business Machines Corporation | Process and system for merging trace data for primarily interpreted methods |
EP0992907B1 (en) * | 1998-10-06 | 2005-09-28 | Texas Instruments Inc. | Trace fifo management |
US7206877B1 (en) | 1998-12-22 | 2007-04-17 | Honeywell International Inc. | Fault tolerant data communication network |
GB2365546B (en) | 1999-12-23 | 2004-02-18 | St Microelectronics Sa | A computer system with two debug watch modes |
GB2362968B (en) | 1999-12-23 | 2003-12-10 | St Microelectronics Sa | Computer system with debug facility |
GB2362730B (en) | 1999-12-23 | 2004-02-11 | St Microelectronics Sa | Computer register watch |
GB2366006B (en) * | 1999-12-23 | 2004-06-30 | St Microelectronics Sa | A computer system with debug facility |
GB2362729B (en) | 1999-12-23 | 2004-02-11 | St Microelectronics Sa | Memory access debug facility |
US6842811B2 (en) * | 2000-02-24 | 2005-01-11 | Pts Corporation | Methods and apparatus for scalable array processor interrupt detection and response |
US7350110B2 (en) * | 2002-01-14 | 2008-03-25 | International Business Machines Corporation | Method and system using hardware assistance for continuance of trap mode during or after interruption sequences |
US8959500B2 (en) * | 2006-12-11 | 2015-02-17 | Nytell Software LLC | Pipelined processor and compiler/scheduler for variable number branch delay slots |
JP5082716B2 (ja) * | 2007-09-20 | 2012-11-28 | 富士通セミコンダクター株式会社 | プログラム変換装置、プログラム変換方法およびプログラム変換プログラム |
GB2481385B (en) * | 2010-06-21 | 2018-08-15 | Advanced Risc Mach Ltd | Tracing speculatively executed instructions |
GB2487355B (en) | 2011-01-13 | 2020-03-25 | Advanced Risc Mach Ltd | Processing apparatus, trace unit and diagnostic apparatus |
US9489284B2 (en) | 2012-02-29 | 2016-11-08 | Freescale Semiconductor, Inc. | Debugging method and computer program product |
US10802828B1 (en) | 2018-09-27 | 2020-10-13 | Amazon Technologies, Inc. | Instruction memory |
Family Cites Families (21)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS518841A (ja) * | 1974-07-09 | 1976-01-24 | Hitachi Ltd | Bunkimeireiseigyohoshiki |
US4200927A (en) * | 1978-01-03 | 1980-04-29 | International Business Machines Corporation | Multi-instruction stream branch processing mechanism |
US4338661A (en) * | 1979-05-21 | 1982-07-06 | Motorola, Inc. | Conditional branch unit for microprogrammed data processor |
JPS57153342A (en) * | 1981-03-19 | 1982-09-21 | Mitsubishi Electric Corp | Pipeline computer |
US4477872A (en) * | 1982-01-15 | 1984-10-16 | International Business Machines Corporation | Decode history table for conditional branch instructions |
EP0109655B1 (en) * | 1982-11-17 | 1991-07-24 | Nec Corporation | Instruction prefetching device with prediction of a branch destination address |
JPS59223850A (ja) * | 1983-06-03 | 1984-12-15 | Fuji Electric Co Ltd | 命令先読み制御方式 |
JPH0752390B2 (ja) * | 1985-05-07 | 1995-06-05 | 株式会社日立製作所 | 命令処理装置 |
US4777587A (en) * | 1985-08-30 | 1988-10-11 | Advanced Micro Devices, Inc. | System for processing single-cycle branch instruction in a pipeline having relative, absolute, indirect and trap addresses |
JPS6255738A (ja) * | 1985-09-04 | 1987-03-11 | Hitachi Ltd | プログラムカウンタトレ−ス機構をもつデ−タ処理装置 |
EP0258453B1 (en) * | 1986-02-28 | 1993-05-19 | Nec Corporation | Instruction prefetch control apparatus |
JPS63245525A (ja) * | 1987-03-31 | 1988-10-12 | Toshiba Corp | マイクロプログラム処理装置 |
JPH0195331A (ja) * | 1987-10-08 | 1989-04-13 | Fujitsu Ltd | パイプライン処理システム |
US4943908A (en) * | 1987-12-02 | 1990-07-24 | International Business Machines Corporation | Multiple branch analyzer for prefetching cache lines |
GB8728493D0 (en) * | 1987-12-05 | 1988-01-13 | Int Computers Ltd | Jump prediction |
US5129087A (en) * | 1988-02-03 | 1992-07-07 | International Business Machines, Corp. | Computer system and a method of monitoring transient data structures in a computer system |
US4974155A (en) * | 1988-08-15 | 1990-11-27 | Evans & Sutherland Computer Corp. | Variable delay branch system |
US5142634A (en) * | 1989-02-03 | 1992-08-25 | Digital Equipment Corporation | Branch prediction |
US5072364A (en) * | 1989-05-24 | 1991-12-10 | Tandem Computers Incorporated | Method and apparatus for recovering from an incorrect branch prediction in a processor that executes a family of instructions in parallel |
US5136697A (en) * | 1989-06-06 | 1992-08-04 | Advanced Micro Devices, Inc. | System for reducing delay for execution subsequent to correctly predicted branch instruction using fetch information stored with each block of instructions in cache |
US5265213A (en) * | 1990-12-10 | 1993-11-23 | Intel Corporation | Pipeline system for executing predicted branch target instruction in a cycle concurrently with the execution of branch instruction |
-
1990
- 1990-06-19 EP EP19900111575 patent/EP0404068A3/en not_active Ceased
- 1990-06-19 JP JP2158825A patent/JPH0795271B2/ja not_active Expired - Lifetime
- 1990-06-20 KR KR1019900009050A patent/KR930009756B1/ko not_active IP Right Cessation
-
1995
- 1995-03-08 US US08/400,550 patent/US5715440A/en not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US5715440A (en) | 1998-02-03 |
JPH03129441A (ja) | 1991-06-03 |
EP0404068A2 (en) | 1990-12-27 |
JPH0795271B2 (ja) | 1995-10-11 |
KR930009756B1 (ko) | 1993-10-09 |
EP0404068A3 (en) | 1991-12-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR910001538A (ko) | 분기명령 실행장치 및 분기명령 트레이싱방법 | |
US5692169A (en) | Method and system for deferring exceptions generated during speculative execution | |
US4742466A (en) | System for measuring path coverage represented by the degree of passage of execution paths in a program | |
US6611909B1 (en) | Method and apparatus for dynamically translating program instructions to microcode instructions | |
KR870000643A (ko) | 쌍방향성 분기 예상 및 최적화방법 및 장치 | |
KR950007881B1 (ko) | 데이터 처리장치 | |
US5522084A (en) | Method and system for invalidating instructions utilizing validity and write delay flags in parallel processing apparatus | |
US8250344B2 (en) | Methods and apparatus for dynamic prediction by software | |
US5850551A (en) | Compiler and processor for processing loops at high speed | |
US5469552A (en) | Pipelined data processor having combined operand fetch and execution stage to reduce number of pipeline stages and penalty associated with branch instructions | |
KR880001418B1 (ko) | 데이터 처리장치 | |
US20030084272A1 (en) | Handling problematic events in a data processing apparatus | |
JP2008299729A (ja) | プロセッサ | |
JPH05216721A (ja) | 電子計算機 | |
KR900010552A (ko) | 명령을 페치(fetch)하기 위한 제어 시스템 | |
KR970011209B1 (ko) | 실행된 명령 스트림을 추적하기 위해 사용되는 신호를 발생하기 위한 회로를 포함하는 마이크로프로세서 | |
JP2581565B2 (ja) | ガード付命令を実行するデータ処理装置 | |
JP2503223B2 (ja) | 先行制御方式 | |
JP2835179B2 (ja) | 並列処理計算機 | |
JPH0774992B2 (ja) | データ処理装置 | |
KR100515039B1 (ko) | 조건부 명령어를 고려한 파이프라인 상태 표시 회로 | |
JPS6395539A (ja) | パイプライン処理方式 | |
JPH03164945A (ja) | データ処理装置 | |
JPH04359325A (ja) | 集積回路マイクロプロセッサのレジスタ・トレース機構 | |
JPH0769800B2 (ja) | データ処理装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
LAPS | Lapse due to unpaid annual fee |