KR910012915A - 소프트웨어 예정 기법을 사용한 파이프라인 브레이크 최소화 프로세스 - Google Patents
소프트웨어 예정 기법을 사용한 파이프라인 브레이크 최소화 프로세스 Download PDFInfo
- Publication number
- KR910012915A KR910012915A KR1019900021027A KR900021027A KR910012915A KR 910012915 A KR910012915 A KR 910012915A KR 1019900021027 A KR1019900021027 A KR 1019900021027A KR 900021027 A KR900021027 A KR 900021027A KR 910012915 A KR910012915 A KR 910012915A
- Authority
- KR
- South Korea
- Prior art keywords
- buffer
- instruction
- proceeding
- transfer
- control
- Prior art date
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/40—Transformation of program code
- G06F8/41—Compilation
- G06F8/44—Encoding
- G06F8/445—Exploiting fine grain parallelism, i.e. parallelism at instruction level
- G06F8/4451—Avoiding pipeline stalls
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Devices For Executing Special Programs (AREA)
Abstract
내용 없음.
Description
본 내용은 요부공개 건이므로 전문내용을 수록하지 않았음
제6도는 본 발명의 제1서브-프로세스 구성요소에 주어진 상세한 플로우챠트.
제8도는 파이프라인 브레이크를 방지하도록 본 발명에 따라 기록된 파이프 라인내의 명령을 나타내는 표로서 제1도와 유사한 도면.
Claims (6)
- 파이프라인 브레이크를 최소화시키도록 파이프라인식 아키텍쳐 프로세서에 사용을 위해 콤파일 프로그램의 명령 순서를 예정하는 프로세스에 있어서, A)명령 버퍼내에 이미 있는 명령의 표시와 관련하여 프로세스될 새로운 명령의 표시를 수신하도록 명령을 설정하는 단계; B)프로세스될 명령이 남아 있는 경우, 새로운 명령을 호출하고 상기 프로세스를 종결하는 단계; C)상기 새로운 명령이 프로세서되도록 그 메모리 및 레지스터의 사용과 관련하여 상기 명령상에 정보를 제공하는 어트리뷰트 필드를 설정하는 단계; D)상기 새로운 명령의 어트리뷰트 필드와 버퍼내에 표시된 명령의 어트리뷰트 필드 사이의 불일치를 확인하도록 그들을 논리적으로 비교하는 단계; E) 상기 단계 D)에서 불일치가 없는 것으로 확인되는 경우 단계 F)로 진행하는 단계; F)버퍼내에 표시된 최구의 명령을 목적 모듈로 전송하고, 새로운 명령의 표시를 상기 버퍼내로 인입시키는 단계 G)상기 단계 B)로 복귀하는 단계; H)상기 단계 D)에서 불일치가 없는 것으로 확인되는 경우 단계 I)로 진행하는 단계 I)버퍼내에 존재하는 최신의 명령을 버퍼내의 앞쪽의 위치로 전송될 캔리테이트 Im으로서 지정하는 단계; J)명령 Im과 In의 버퍼내의 위치가 안전하게 교환될 수 있는지 여부를 판단하도록 Im보다 앞족의 위치에 있는 버퍼내에 표시된 명령중 하나인 In의 어트리뷰트 필드와 Im의 어트리뷰트 필드를 대칭적으로 비교하는 단계; K)Im과 In이 안전하게 교환될 수 있는 경우, Im이 버퍼내에서 아직도 앞쪽으로 전송될 수 있는지 여부를 판단하도록 상기 교환을 효과적으로 하여 단계 J)로 복귀하는 단계; 및, L)Im과 In이 안전하게 교환될 수 없는 경우 또는 In으로서 지정을 하기 위한 명령이 버퍼내에 없는 경우 단계 F)로 진행하는 단계를 포함하는 것을 특징으로 하는 프로세스.
- 제1항에 있어서, 상기 단계 C)는 어드레싱 수행될 수 있는 즉, 레지스터가 사용되는 방식, 레지스터가 사용되고, 레지스터가 수정되는 방식 및 예정 프로세스가 적용되는 소정의 컴퓨터 프로세서의 레퍼터리내에 레지스터가 각 명령에 대해 수정되는 방식의 인코드 묘사를 포함하는 명령 어트리뷰트 테이블의 내용을 액세싱함으로써 이루어지는 것을 특징으로 하는 프로세스.
- 제1항에 있어서, 중간 단계 G)와 B)는 M) 버퍼내에 방급 인입된 새로운 명령이 제어의 전달인지 여부를 판단하는 단계; N)상기 단계 M)에서의 판단이 제어의 전달인 경우 목적 모듈로 버퍼를 플러슁하여 단계 B)로 진행하는 단계; 및 O)상기 단계 M)에서의 판단이 제어의 전달이 아닌 경우 단계 B)로 진행하는 단계를 추가로 포함하는 것을 특징으로 하는 프로세서.
- 제2항에 있어서, 상기 중간 단계 G)와 B)는 M)버퍼내에 방금 인입된 새로운 명령이 제어의 전달인지 여부를 판단하는 단계; N)상기 단계M)에서의 판단이 제어의 전달인 경우 목적모듈로 버퍼를 플러슁하여 단계 B)로 진행하는 단계 및, O)상기 단계 M)에서의 판단이 제어의 전달이 아닌 경우 단계 B)로 진행하는 단계로 추가로 포함하는 것을 특징으로 하는 프로세스.
- 제3항에 있어서, 단계N)동안, 그 적정한 시간에서 상기 프로세스의 재진입을 위해 수신지 라벨이 발생되는 것을 특징으로 하는 프로세스.
- 제4항에 있어서, 단계N)동안, 그 적정한 시간에서 상기 프로세서의 재진입을 위해 수신지 라벨이 발생되는 것을 특징으로 하는 프로세스.※ 참고사항 : 최초출원 내용에 의하여 공개하는 것임.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/454,222 US5119495A (en) | 1989-12-21 | 1989-12-21 | Minimizing hardware pipeline breaks using software scheduling techniques during compilation |
US454,222 | 1989-12-21 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR910012915A true KR910012915A (ko) | 1991-08-08 |
KR970005458B1 KR970005458B1 (en) | 1997-04-16 |
Family
ID=23803794
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR90021027A KR970005458B1 (en) | 1989-12-21 | 1990-12-19 | Minimizing hardware pipeline breaks using software scheduling techniques |
Country Status (8)
Country | Link |
---|---|
US (1) | US5119495A (ko) |
EP (1) | EP0433864B1 (ko) |
JP (1) | JP2898105B2 (ko) |
KR (1) | KR970005458B1 (ko) |
AU (1) | AU642927B2 (ko) |
CA (1) | CA2031112C (ko) |
DE (1) | DE69032394T2 (ko) |
SG (1) | SG48834A1 (ko) |
Families Citing this family (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE68927946T2 (de) * | 1988-08-02 | 1997-10-16 | Philips Electronics Nv | Verfahren und Vorrichtung für die Synchronisierung von parallelen Prozessoren unter Verwendung einer unscharf definierten Sperre |
JPH02234274A (ja) * | 1989-03-08 | 1990-09-17 | Hitachi Ltd | パイプライン制御論理の自動生成方法及び制御論理 |
CA2010067C (en) * | 1990-02-14 | 1993-10-26 | Steven Murray Hoxey | Reducing pipeline delays in compilers by code hoisting |
IL98248A0 (en) * | 1991-05-23 | 1992-06-21 | Ibm Israel | Instruction scheduler for a computer |
US5404469A (en) * | 1992-02-25 | 1995-04-04 | Industrial Technology Research Institute | Multi-threaded microprocessor architecture utilizing static interleaving |
DE4237417C2 (de) * | 1992-03-25 | 1997-01-30 | Hewlett Packard Co | Datenverarbeitungssystem |
JPH08501167A (ja) * | 1992-09-22 | 1996-02-06 | シーメンス アクチエンゲゼルシヤフト | 並列コンピュータシステムにおけるアプリケーションプログラムの処理方法 |
JP3338488B2 (ja) * | 1992-11-18 | 2002-10-28 | 富士通株式会社 | データ処理装置の検証方法及び装置 |
GB9412439D0 (en) * | 1994-06-21 | 1994-08-10 | Inmos Ltd | Computer instruction pipelining |
JP3113792B2 (ja) * | 1995-04-27 | 2000-12-04 | 松下電器産業株式会社 | 最適化装置 |
US5901295A (en) * | 1995-04-28 | 1999-05-04 | Apple Computer, Inc. | Address and data bus arbiter for pipelined transactions on a split bus |
US5815676A (en) * | 1995-04-28 | 1998-09-29 | Apple Computer, Inc. | Address bus arbiter for pipelined transactions on a split bus |
EP0755003A2 (en) * | 1995-07-19 | 1997-01-22 | Sun Microsystems, Inc. | Method and apparatus for reordering components of computer programs |
US6230317B1 (en) * | 1997-07-11 | 2001-05-08 | Intel Corporation | Method and apparatus for software pipelining of nested loops |
JP3220055B2 (ja) * | 1997-07-17 | 2001-10-22 | 松下電器産業株式会社 | 機械語命令列またはアセンブリ言語命令列を最適化する最適化装置、及び、高級言語で記載されたソースプログラムを機械語またはアセンブリ言語の命令列に変換するコンパイラ装置。 |
US6332214B1 (en) * | 1998-05-08 | 2001-12-18 | Intel Corporation | Accurate invalidation profiling for cost effective data speculation |
US6381691B1 (en) * | 1999-08-13 | 2002-04-30 | International Business Machines Corporation | Method and apparatus for reordering memory operations along multiple execution paths in a processor |
US7401328B2 (en) * | 2003-12-18 | 2008-07-15 | Lsi Corporation | Software-implemented grouping techniques for use in a superscalar data processing system |
US8612951B2 (en) * | 2009-04-21 | 2013-12-17 | Oracle International Corporation | Method of determining which computer program functions are changed by an arbitrary source code modification |
US8423981B2 (en) * | 2009-06-18 | 2013-04-16 | National Instruments Corporation | Compiling a graphical program having a textual language program portion for a real time target |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4295193A (en) * | 1979-06-29 | 1981-10-13 | International Business Machines Corporation | Machine for multiple instruction execution |
US4493027A (en) * | 1981-05-22 | 1985-01-08 | Data General Corporation | Method of performing a call operation in a digital data processing system having microcode call and return operations |
JPS62259142A (ja) * | 1986-05-02 | 1987-11-11 | Nec Corp | 命令のスケジユ−リング処理方式 |
US4965724A (en) * | 1987-03-05 | 1990-10-23 | Oki Electric Industry Co., Ltd. | Compiler system using reordering of microoperations to eliminate interlocked instructions for pipelined processing of assembler source program |
-
1989
- 1989-12-21 US US07/454,222 patent/US5119495A/en not_active Expired - Lifetime
-
1990
- 1990-11-26 AU AU66966/90A patent/AU642927B2/en not_active Ceased
- 1990-11-29 CA CA002031112A patent/CA2031112C/en not_active Expired - Lifetime
- 1990-12-12 DE DE69032394T patent/DE69032394T2/de not_active Expired - Lifetime
- 1990-12-12 EP EP90123956A patent/EP0433864B1/en not_active Expired - Lifetime
- 1990-12-12 SG SG1996002517A patent/SG48834A1/en unknown
- 1990-12-19 KR KR90021027A patent/KR970005458B1/ko not_active IP Right Cessation
- 1990-12-21 JP JP2405114A patent/JP2898105B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
US5119495A (en) | 1992-06-02 |
CA2031112A1 (en) | 1991-06-22 |
EP0433864A2 (en) | 1991-06-26 |
CA2031112C (en) | 1997-05-06 |
AU6696690A (en) | 1991-06-27 |
SG48834A1 (en) | 1998-05-18 |
KR970005458B1 (en) | 1997-04-16 |
AU642927B2 (en) | 1993-11-04 |
EP0433864A3 (en) | 1993-06-09 |
JPH03291726A (ja) | 1991-12-20 |
DE69032394D1 (de) | 1998-07-16 |
EP0433864B1 (en) | 1998-06-10 |
DE69032394T2 (de) | 1999-03-25 |
JP2898105B2 (ja) | 1999-05-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR910012915A (ko) | 소프트웨어 예정 기법을 사용한 파이프라인 브레이크 최소화 프로세스 | |
US4841436A (en) | Tag Data processing apparatus for a data flow computer | |
KR910012913A (ko) | 명령태그(tag)장치를 구비한 테이터처리시스팀 | |
KR960032172A (ko) | 컴퓨터 시스템 | |
KR870000643A (ko) | 쌍방향성 분기 예상 및 최적화방법 및 장치 | |
JPS63503177A (ja) | 命令先取制御装置 | |
JPH04233038A (ja) | データ処理装置およびコンピュータ・プログラムの実行方法 | |
KR950027561A (ko) | 처리 시스템 및 그의 동작 방법 | |
KR920001323A (ko) | 브랜치를 제거하여 컴퓨터 성능을 개선하는 프로세서 동작방법 | |
US5125097A (en) | Data flow type information processors where data packets pass through plurality of merging and branching portions of the internal path | |
KR950027565A (ko) | 처리 시스템 및 그의 동작 방법 | |
KR910008565A (ko) | 분기 제어 회로 | |
GB2016753A (en) | Data Processing System | |
CA1208798A (en) | Timing control system in data processor | |
EP0422784B1 (en) | Information transfer in information processing systems | |
JP2581565B2 (ja) | ガード付命令を実行するデータ処理装置 | |
JPS6240538A (ja) | デ−タ処理装置 | |
JPS57150040A (en) | Pipeline computer | |
US20230028929A1 (en) | Execution elision of intermediate instruction by processor | |
JPS62282332A (ja) | 情報処理装置 | |
JPS56147246A (en) | Program control device | |
KR960001081B1 (ko) | 호스트 시스템에서 실시간 데이타베이스 관리 시스팀(dbms)의 시뮬레이션 방법 | |
JPH08137690A (ja) | プログラム実行制御方法 | |
JPS6031646A (ja) | デ−タ処理装置 | |
KR850002910A (ko) | 데이타 처리 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
N231 | Notification of change of applicant | ||
G160 | Decision to publish patent application | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20090819 Year of fee payment: 13 |
|
LAPS | Lapse due to unpaid annual fee |