JPH0476731A - Pipeline type microprocessor assembler processing system - Google Patents

Pipeline type microprocessor assembler processing system

Info

Publication number
JPH0476731A
JPH0476731A JP19026690A JP19026690A JPH0476731A JP H0476731 A JPH0476731 A JP H0476731A JP 19026690 A JP19026690 A JP 19026690A JP 19026690 A JP19026690 A JP 19026690A JP H0476731 A JPH0476731 A JP H0476731A
Authority
JP
Japan
Prior art keywords
assembler
instructions
instruction
data dependency
memory
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
JP19026690A
Other languages
Japanese (ja)
Inventor
Tetsuo Ohama
大濱 哲夫
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
NEC Corp
Original Assignee
NEC Corp
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 NEC Corp filed Critical NEC Corp
Priority to JP19026690A priority Critical patent/JPH0476731A/en
Publication of JPH0476731A publication Critical patent/JPH0476731A/en
Pending legal-status Critical Current

Links

Landscapes

  • Advance Control (AREA)
  • Devices For Executing Special Programs (AREA)

Abstract

PURPOSE:To form an object program having high execution efficiency by analyzing the address of an assembler instruction for accessing a memory and executing scheduling based upon the analyzed result. CONSTITUTION:This assembler processing system is constituted of an assembler instruction string 1, a reference block detection part 2, a reference block 3, a data depending relation analyzing part 4, data depending relation information 5, a memory access analyzing part 6, a scheduling part 7, an assembler instruction string 8, an object output part 9, and an object module 10. The address of the assembler instruction for accessing the memory is analyzed and the analyzed result is used for scheduling. Consequently, the pipeline type microprocessor assembler processing system improving the execution efficiency of an object module can be obtained.

Description

【発明の詳細な説明】 〔産業上の利用分野〕 本発明は、パイプライン方式のマイクロプロセッサ用ア
センブラの処理方式に間し、特にアセンブラ命令のスケ
ジューリング方式に関する。
DETAILED DESCRIPTION OF THE INVENTION [Field of Industrial Application] The present invention relates to a processing method of an assembler for a pipelined microprocessor, and particularly to a scheduling method of assembler instructions.

〔従来の技術〕[Conventional technology]

パイプライン方式のマイクロプロセッサでは、ハードウ
ェアがインタロック機構を持たない場合、パイプライン
が正常に動作するように、アセンブラがスケジューリン
グを行わなければならない。またインタロック機構を持
つ場合も、インタロックを最小限に抑えてオブジェクプ
ログラムの実行効率を上げるために、スケジューリング
を行う必要がある。
In a pipelined microprocessor, if the hardware does not have an interlock mechanism, the assembler must perform scheduling so that the pipeline operates normally. Even when an interlock mechanism is provided, scheduling must be performed in order to minimize interlocks and increase execution efficiency of object programs.

従来のインタロック機構を持たないマイクロプロセッサ
のアセンブラの処理方式を第2図により説明する。第2
図は、従来のアセンブラの処理方式による処理構成図を
示し、ユーザによって書かれ、またはコンパイラによっ
て出力されたアセンブラ命令列1は、基本ブロック検出
部2で、途中に分岐命令を含まず外から分岐してくるこ
ともないアセンブラ命令列である、基本ブロック3に分
割される。データ依存関係解析部4は、この基本ブロッ
ク3のアセンブラ命令の間のデータ依存関係を解析し、
その結果をデータ依存関係情報5として出力する。スケ
ジューリング部7は、このデータ依存関係情報5を参照
して基本ブロック3のアセンブラ命令列をスケジューリ
ングし、アセンブラ命令列8を出力する。オブジェクト
出力部9は、スケジュールされたアセンブラ命令列8を
読込み、オブジェクトモジュール10として出力する。
The processing method of a conventional assembler of a microprocessor without an interlock mechanism will be explained with reference to FIG. Second
The figure shows a processing block diagram according to a conventional assembler processing method. An assembler instruction string 1 written by a user or output by a compiler is detected by a basic block detection unit 2, and is branched from outside without containing a branch instruction in the middle. It is divided into three basic blocks, each of which is a sequence of assembler instructions that never occurs. The data dependency analysis unit 4 analyzes data dependencies between assembler instructions of this basic block 3,
The result is output as data dependency information 5. The scheduling unit 7 schedules the assembler instruction sequence of the basic block 3 with reference to the data dependency relationship information 5, and outputs the assembler instruction sequence 8. The object output unit 9 reads the scheduled assembler instruction sequence 8 and outputs it as an object module 10.

次に、データ依存関係解析部4の処理を説明する。第1
表は、5つのアセンブラ命令からなる基本ブロックの一
例を示す。
Next, the processing of the data dependency analysis section 4 will be explained. 1st
The table shows an example of a basic block consisting of five assembler instructions.

第1表 ここで、1d命令の実行に2クロツク、add、st、
jr命令の実行に1クロツクかかるものとする。データ
依存関係解析部4は、アセンブラ命令の間にデータ依存
関係があるか解析し、データ依存関係があるアセンブラ
命令の組をデータ依存ノ 関係情報5として出力する。ここでは、2つのアセンブ
ラ命令について次のいずれかが成り立つとき、または、
成り立つ可能性のあるとき、データ依存関係があるとす
る。
Table 1 Here, it takes 2 clocks to execute the 1d instruction, add, st,
It is assumed that it takes one clock to execute the jr instruction. The data dependency analysis unit 4 analyzes whether there is a data dependency between assembler instructions, and outputs a set of assembler instructions that have a data dependency as data dependency relationship information 5. Here, when either of the following holds true for the two assembler instructions, or
A data dependency exists when there is a possibility that it holds true.

(1)第1のアセンブラ命令がレジスタかメモリに書き
込んだデータを第2のアセンブラ命令が使用している。
(1) The second assembler instruction uses data that the first assembler instruction wrote to a register or memory.

(2)第1のアセンブラ命令がデータを使用しなレジス
タかメモリに第2のアセンブラ命令を書込んでいる。
(2) The first assembler instruction writes the second assembler instruction to a register or memory that does not use data.

(3)第1のアセンブラ命令がデータをレジスタからメ
モリに書込んだ後、第2のアセンブラ命令が同じレジス
タかメモリにデータを書込んでいる6デ一タ依存関係解
析部4は、各アセンブラ命令の組に対して次のような解
析を行う6 (1)アセンブラ命令■でレジスタr1に入れた内容を
アセンブラ命令■で使用しているので、2つのアセンブ
ラ命令の間にはデータ依存関係かある。
(3) After the first assembler instruction writes data from a register to memory, the second assembler instruction writes data to the same register or memory. Perform the following analysis on a set of instructions 6 (1) Since the contents stored in register r1 by the assembler instruction ■ are used by the assembler instruction ■, there is no data dependency between the two assembler instructions. be.

(2)アセンブラ命令■は、メモリからデータを読込ん
でおり、アセンブラ命令■はメモリにデータを書込んで
いる。2つの命令が同じアドレスのメモリをアクセスす
る可能性はないが、それを知るためには、2つの命令の
間の命令でレジスタspの内容が変っていないことと、
2つの命令のディスプレイスメントの値が異なることを
調べなければならない。しかし、これを行う手段を持た
ない従来のアセンブラは、2つの命令が同じアドレスの
メモリをアクセスする可能性を否定できず、2つの命令
の間にはデータ依存関係があるとする。
(2) Assembler instruction ■ reads data from memory, and assembler instruction ■ writes data to memory. There is no possibility that two instructions access memory at the same address, but in order to know this, the contents of register sp must not have changed between the two instructions, and
We must check that the displacement values of the two instructions are different. However, conventional assemblers that do not have the means to do this cannot deny the possibility that two instructions access memory at the same address, and assume that there is a data dependency between the two instructions.

(3)アセンブラ命令■とアセンブラ命令■は、どちら
もメモリからデータを読込んでいるので、データ依存関
係はない。
(3) Assembler instruction ■ and assembler instruction ■ both read data from memory, so there is no data dependency relationship.

(4)アセンブラ命令■とアセンブラ命令■、アセンブ
ラ命令■と一アセンブラ命令■、アセンブラ命令■とア
センブラ命令■、アセンブラ命令■とアセンブラ命令■
の間には、3つの条件のうちどれも成り立たないので、
データ依存関係はない。
(4) Assembler instruction ■ and assembler instruction ■, assembler instruction ■ and one assembler instruction ■, assembler instruction ■ and assembler instruction ■, assembler instruction ■ and assembler instruction ■
Since none of the three conditions hold between
There are no data dependencies.

(5〉アセンブラ命令■でレジスタr2に入れた内容を
アセンブラ命令■で使用しているので、2つのアセンブ
ラ命令の間にはデータ依存関係がある。
(5> Since the contents stored in the register r2 by the assembler instruction ■ are used by the assembler instruction ■, there is a data dependency between the two assembler instructions.

(6)アセンブラ命令■はメモリにデータを書込んでお
り、アセンブラ命令■はメモリからデータを読込んでい
る。2つの命令が同じアドレスのメモリをアクセスする
可能性はないが、それを知るには、2つの命令の間の命
令でレジスタspの内容が変っていないことと、2つの
命令のディスプレイスメントの値が異なることを調べな
ければならない。しかし、これを行う手段を持たない従
来のアセンブラは、2つの命令が同じアドレスのメモリ
をアクセスする可能性を否定できず、2つの命令の間に
はデータ依存関係があるとする。
(6) Assembler instruction ■ writes data to memory, and assembler instruction ■ reads data from memory. There is no possibility that two instructions access memory at the same address, but to know this, we need to know that the contents of register sp have not changed in the instructions between the two instructions, and the displacement value of the two instructions. It is necessary to investigate that the two are different. However, conventional assemblers that do not have the means to do this cannot deny the possibility that two instructions access memory at the same address, and assume that there is a data dependency between the two instructions.

(7)アセンブラ命令■でレジスタr3に入れた内容を
アセンブラ命令■で使用しているので、2つのアセンブ
ラ命令の間にはデータ依存関係がある。
(7) Since the contents stored in the register r3 by the assembler instruction ■ are used by the assembler instruction ■, there is a data dependency between the two assembler instructions.

データ依存関係解析部4は、以上の解析の結果を、次の
第2表に示すように、データ依存関係情報5として出力
する。データ依存関係情報5は、データ依存関係のある
2つのアセンブラ命令の番号の組を、番号の小さいもの
を左にして並べたものである。
The data dependency analysis unit 4 outputs the results of the above analysis as data dependency information 5, as shown in Table 2 below. The data dependency relationship information 5 is a set of numbers of two assembler instructions having a data dependency relationship, arranged with the smallest number on the left.

第2表 スケジューリング部7は、データ依存関係情報5を参照
してスジューリングを行い、スケジューリングされたア
センブラ命令列8を出力する。第1表の基板ブロックは
、命令の並替えが行えないので、作用のない命令である
nop命令が必要な場所に挿入され、対応するアセンブ
ラ命令列8は、第3表のようになる。このアセンブラ命
令列の実行には7クロツクを必要とする。
The Table 2 scheduling unit 7 performs scheduling with reference to the data dependency relationship information 5, and outputs the scheduled assembler instruction sequence 8. In the board block shown in Table 1, instructions cannot be rearranged, so a nop instruction, which is an instruction with no effect, is inserted at a necessary location, and the corresponding assembler instruction sequence 8 becomes as shown in Table 3. Seven clocks are required to execute this assembler instruction sequence.

〔以下余白〕[Margin below]

第3表 このアセンブラの処理方式では、同じアドレスのメモリ
をアクセスする可能性のない2つのアセンブラ命令の順
序を変えられないため命令の並替えが制限され、最終的
に得られるオブジェクトモジュール10の実行効率が悪
くなってしまう。
Table 3 In this assembler processing method, the order of two assembler instructions that have no possibility of accessing memory at the same address cannot be changed, so the rearrangement of instructions is limited, and the execution of the resulting object module 10 It becomes less efficient.

〔発明が解決しようとする課題〕[Problem to be solved by the invention]

上述したように従来のアセンブラの処理方式では、メモ
リアクセスのアドレスを解析する手段がないため、アセ
ンブラ命令の並べ替えが制限され、その結果、最終的に
得られるオブジェクトモジュール10の実行効率が悪く
なってしまうという問題点がある。
As mentioned above, in the conventional assembler processing method, there is no means to analyze memory access addresses, so the reordering of assembler instructions is limited, and as a result, the execution efficiency of the object module 10 that is finally obtained deteriorates. There is a problem with this.

本発明の目的は、このような問題を解決し、メモリをア
クセスするアセンブラ命令に対してそのアドレスを解析
する手段を設けることにより、その解析結果をスケジュ
ーリングに用いることができ、オブジェクトモジュール
の実行効率を改善したパイプライン型マイクロプロセッ
サのアセンブラ処理方式を提供することにある。
An object of the present invention is to solve such problems by providing a means for analyzing addresses of assembler instructions that access memory, so that the results of the analysis can be used for scheduling, and the execution efficiency of object modules can be improved. The object of the present invention is to provide an assembler processing method for a pipelined microprocessor that improves the following.

〔課題を解決するための手段〕[Means to solve the problem]

本発明のパイプライン型マイクロプロセッサのアセンブ
ラ処理方式の構成は、パイプライン方式のマイクロプロ
セッサに用いられるアセンブラ処理方式において、メモ
リをアクセスする複数のアセンブラ命令が同じアドレス
をアクセスする可能性を解析するメモリアクセス解析手
段と、このメモリアクセス解析手段の解析結果を用いて
前記アセンブラ命令の間のデータ依存関係情報を出力す
るデータ依存関係解析手段と、前記データ依存関係情報
を用いて前記アセンブラ命令の並びかえとなるスケジュ
ーリングを行うスケジューリング手段とを備えることを
特徴とする。
The structure of the assembler processing method of the pipelined microprocessor of the present invention is such that the assembler processing method used in the pipelined microprocessor analyzes the possibility that multiple assembler instructions accessing the memory access the same address. access analysis means; data dependency analysis means for outputting data dependency relationship information between the assembler instructions using the analysis result of the memory access analysis means; and rearrangement of the assembler instructions using the data dependency relationship information. and a scheduling means for performing scheduling.

本発明において、メモリアクセス解析手段が、2つの命
令の間の命令でレジスタの内容が変えられていないこと
と、これら2つの命令のディスプレイスメントの値の異
なることを調べるものであることができる。
In the present invention, the memory access analysis means can check whether the contents of a register have not been changed by an instruction between two instructions and whether the displacement values of these two instructions are different.

〔実施例〕〔Example〕

次に、本発明の実施例を図面を参照して説明する。 Next, embodiments of the present invention will be described with reference to the drawings.

第1図は本発明の一実施例の処理方式を説明するフロー
図である。ユーザによって書かれ、またはコンパイラに
よって出力されたアセンブラ命令列1は、基本ブロック
検出部2で、途中に分岐命令を含まず外から分岐してく
ることもないアセンブラ命令列である基本ブロック3に
分割される。
FIG. 1 is a flow diagram illustrating a processing method according to an embodiment of the present invention. An assembler instruction string 1 written by a user or output by a compiler is divided by a basic block detection unit 2 into basic blocks 3, which are assembler instruction strings that do not include branch instructions in the middle and do not branch from outside. be done.

データ依存関係解析部4は、この基本プロ・ンク3のア
センブラ命令の間のデータ依存関係を解析し、その結果
をデータ依存関係情報5として出力する。このときメモ
リをアクセスするアセンブラ命令の組に対しては、デー
タ依存関係解析部4は2つの命令が同じアドレスをアク
セスする可能性があるかどうかをメモリアクセス解析部
6に問い合せを行い、メモリアクセス解析部6が2つの
命令が同じアドレスをアクセスする可能性があるかどう
かを判断し、データ依存関係解析部4はこの結果を用い
てデータ依存関係情報らを出力する。
The data dependency analysis unit 4 analyzes the data dependency between assembler instructions of the basic program 3 and outputs the result as data dependency information 5. At this time, for a set of assembler instructions that access memory, the data dependency analysis unit 4 queries the memory access analysis unit 6 as to whether there is a possibility that two instructions access the same address, and The analysis unit 6 determines whether there is a possibility that two instructions access the same address, and the data dependency relationship analysis unit 4 uses this result to output data dependency information.

スケジューリング部7は、データ依存関係情報5を参照
して基本ブロック3のアセンブラ命令列をスケジューリ
ングし、アセンブラ命令列8を出力する。オブジェクト
出力部9は、スケジュールされたアセンブラ命令列8を
読込み、オブジェクトモジュール10を出力する。
The scheduling unit 7 schedules the assembler instruction sequence of the basic block 3 with reference to the data dependency relationship information 5, and outputs the assembler instruction sequence 8. The object output unit 9 reads the scheduled assembler instruction sequence 8 and outputs the object module 10.

次に、前述の第1表を参照して、データ依存関係解析部
4とメモリアクセス解析部6の処理を説明する。第1表
では、1d命令の実行に2クロツク、add、st、j
r命令の実行に1クロツクかかるものとする。データ依
存関係解析部4は、アセンブラ命令の間にデータ依存関
係があるか解析し、データ依存関係があるアセンブラ命
令の組をデータ依存関係情報5として出力する。データ
依存関係解析部4とメモリアクセス解析部6は、各アセ
ンブラ命令の組に対して次のような解析を行う。
Next, the processing of the data dependency analysis section 4 and the memory access analysis section 6 will be explained with reference to the above-mentioned Table 1. In Table 1, it takes 2 clocks to execute the 1d instruction, add, st, j
Assume that it takes one clock to execute the r instruction. The data dependency analysis unit 4 analyzes whether there is a data dependency between assembler instructions, and outputs a set of assembler instructions that have a data dependency as data dependency information 5. The data dependency analysis unit 4 and memory access analysis unit 6 perform the following analysis on each set of assembler instructions.

まず、次のアセンブラ命令の組に対しては、従来例と全
く同じ解析が行われる。
First, the next set of assembler instructions is analyzed in exactly the same way as in the conventional example.

■と■、■と■、■と■、■と■、■と■、■と■、■
と■、■と■、 このほかの組(■と■、■と■)に対しては、次のよな
解析が行われる。
■ and ■, ■ and ■, ■ and ■, ■ and ■, ■ and ■, ■ and ■, ■
and ■, ■ and ■, and other pairs (■ and ■, ■ and ■), the following analysis is performed.

(1)アセンブラ命令■とアセンブラ命令■は、共にメ
モリをアクセスしている。この場合、データ依存関係解
析部4は、メモリアクセス解析部6に2つの命令が同じ
アドレスをアクセスする可能性があるか問い合わせる。
(1) Both assembler instruction ■ and assembler instruction ■ access memory. In this case, the data dependency analysis unit 4 inquires of the memory access analysis unit 6 whether there is a possibility that two instructions access the same address.

メモリアクセス解析部6は、2つの命令の間の命令でレ
ジスタspの内容が変えられていないことと、2つの命
令のディスプレイスメントの値が異なることから、2つ
の命令が同じアドレスのメモリをアクセスする可能性は
ないと判断する。データ依存関係解析部4は、この結果
から2つのアセンブラ命令の間にデータ依存関係はない
と判断する。
The memory access analysis unit 6 determines that the two instructions access memory at the same address because the contents of register sp are not changed by the instruction between the two instructions and the displacement values of the two instructions are different. I judge that there is no possibility of doing so. Based on this result, the data dependency analysis unit 4 determines that there is no data dependency between the two assembler instructions.

(2)アセンブラ命令■とアセンブラ命令■はともにメ
モリをアクセスしている。この場合、データ依存関係解
析部4は、メモリアクセス解析部6に2つの命令が同じ
アドレスをアクセスする可能性があるか問い合わせる。
(2) Both assembler instruction ■ and assembler instruction ■ access memory. In this case, the data dependency analysis unit 4 inquires of the memory access analysis unit 6 whether there is a possibility that two instructions access the same address.

メモリアクセス解析部6は、2つの命令の間の命令でレ
ジスタspの内容が変えられていないことと、2つの命
令のディスプレイスメントの値が異なることから、2つ
の命令が同じアドレスのメモリをアクセスする可能性は
ないと判断する。データ依存関係解析部4は、この結果
から2つのアセンブラ命令の間にデータ依存関係はない
と判断する。
The memory access analysis unit 6 determines that the two instructions access memory at the same address because the contents of register sp are not changed by the instruction between the two instructions and the displacement values of the two instructions are different. I judge that there is no possibility of doing so. Based on this result, the data dependency analysis unit 4 determines that there is no data dependency between the two assembler instructions.

データ依存関係解析部4は以上の解析の結果を、第4表
に示すような、データ依存関係情報5として出力する。
The data dependency relationship analysis unit 4 outputs the results of the above analysis as data dependency relationship information 5 as shown in Table 4.

第4表 第5表 スケジューリング部7は、データ依存関係情報5を参照
してスケジューリングを行い、スケジューリングされた
アセンブラ命令列8を出力する。
Table 4 Table 5 The scheduling unit 7 performs scheduling with reference to the data dependency relationship information 5, and outputs the scheduled assembler instruction sequence 8.

第1表の基本ブロックに対しては、アセンブラ命令■が
アセンブラ命令■の前に移動され、対応するアセンブラ
命令列8は第5表のようになる。このアセンブラ命令列
の実行に必要なりロック数は5であり、従来例に示した
アセンブラ命令列に比べて2クロツク短縮されている。
For the basic block shown in Table 1, assembler instruction ■ is moved before assembler instruction ■, and the corresponding assembler instruction sequence 8 becomes as shown in Table 5. The number of locks required to execute this assembler instruction sequence is five, which is two clocks shorter than the assembler instruction sequence shown in the conventional example.

〔以下余白〕[Margin below]

〔発明の効果〕 以上説明したように、本発明のアセンブラの処理方式は
、メモリをアクセスするアセンブラ命令に対してそのア
ドレスを解析し、その結果を用いてスケジューリングを
行うことができるなめ、より実行効率の良いオブジェク
トプログラムを生成することができるという効果がある
[Effects of the Invention] As explained above, the assembler processing method of the present invention can analyze the address of an assembler instruction that accesses memory and perform scheduling using the result, which makes execution easier. This has the effect that an efficient object program can be generated.

【図面の簡単な説明】[Brief explanation of drawings]

第1図は本発明の実施例を示すアセンブラの処理方式の
処理フロー図、第2図は従来のアセンブラの処理方式の
一例の処理フロー図である。 1・・・アセンブラ命令列、2・・・基本ブロック検出
部、3・・・基本ブロック、4・・・データ依存関係解
析部、5・・・データ依存関係情報、6・・・メモリア
クセス解析部、7・・・スケジューリング部、8・・・
アセンブラ命令列、9・・・オブジェクト出力部、1o
・・・オブジェクトモジュール。
FIG. 1 is a processing flow diagram of an assembler processing method showing an embodiment of the present invention, and FIG. 2 is a processing flow diagram of an example of a conventional assembler processing method. 1... Assembler instruction sequence, 2... Basic block detection section, 3... Basic block, 4... Data dependency analysis section, 5... Data dependency information, 6... Memory access analysis Department, 7... Scheduling Department, 8...
Assembler instruction sequence, 9...Object output section, 1o
...object module.

Claims (1)

【特許請求の範囲】  1、パイプライン方式のマイクロプロセッサに用いら
れるアセンブラ処理方式において、メモリをアクセスす
る複数のアセンブラ命令が同じアドレスをアクセスする
可能性を解析するメモリアクセス解析手段と、このメモ
リアクセス解析手段の解析結果を用いて前記アセンブラ
命令の間のデータ依存関係情報を出力するデータ依存関
係解析手段と、前記データ依存関係情報を用いて前記ア
センブラ命令の並びかえとなるスケジューリングを行う
スケジューリング手段とを備えることを特徴とするパイ
プライン型マイクロプロセッサのアセンブラ処理方式。 2、メモリアクセス解析手段が、2つの命令の問の命令
でレジスタの内容が変えられていないことと、これら2
つの命令のディスプレイスメントの値の異なることを調
べるものである請求項1記載のパイプライン型マイクロ
プロセッサのアセンブラ処理方式。
[Claims] 1. In an assembler processing method used in a pipelined microprocessor, a memory access analysis means for analyzing the possibility that multiple assembler instructions accessing memory access the same address; a data dependency analysis unit that outputs data dependency relationship information between the assembler instructions using the analysis result of the analysis unit; and a scheduling unit that performs scheduling for rearranging the assembler instructions using the data dependency relationship information. An assembler processing method for a pipelined microprocessor characterized by comprising: 2. The memory access analysis means determines that the register contents are not changed by the instruction between the two instructions, and that the contents of the register are not changed by the instruction between the two instructions.
2. The assembler processing method for a pipelined microprocessor according to claim 1, wherein the assembler processing method for a pipelined microprocessor is used to check whether the displacement values of two instructions are different.
JP19026690A 1990-07-18 1990-07-18 Pipeline type microprocessor assembler processing system Pending JPH0476731A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP19026690A JPH0476731A (en) 1990-07-18 1990-07-18 Pipeline type microprocessor assembler processing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP19026690A JPH0476731A (en) 1990-07-18 1990-07-18 Pipeline type microprocessor assembler processing system

Publications (1)

Publication Number Publication Date
JPH0476731A true JPH0476731A (en) 1992-03-11

Family

ID=16255288

Family Applications (1)

Application Number Title Priority Date Filing Date
JP19026690A Pending JPH0476731A (en) 1990-07-18 1990-07-18 Pipeline type microprocessor assembler processing system

Country Status (1)

Country Link
JP (1) JPH0476731A (en)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0628182A (en) * 1992-04-16 1994-02-04 Matsushita Electric Ind Co Ltd Information processor
JPH06208462A (en) * 1991-02-27 1994-07-26 Sun Microsyst Inc Method and apparatus for scheduling instruction heuristically on the basis of cost for pipeline processor
WO2001086467A1 (en) * 2000-05-12 2001-11-15 Fujitsu Limited Data controller and atm controller

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
EFFICIENT INSTRUCTION SCHEDULING FOR A PIPELINED ARCHITECTURE=1986 *

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH06208462A (en) * 1991-02-27 1994-07-26 Sun Microsyst Inc Method and apparatus for scheduling instruction heuristically on the basis of cost for pipeline processor
JPH0628182A (en) * 1992-04-16 1994-02-04 Matsushita Electric Ind Co Ltd Information processor
WO2001086467A1 (en) * 2000-05-12 2001-11-15 Fujitsu Limited Data controller and atm controller
US6895473B2 (en) 2000-05-12 2005-05-17 Fujitsu Limited Data control device and an ATM control device

Similar Documents

Publication Publication Date Title
JP2818249B2 (en) Electronic computer
US6334182B2 (en) Scheduling operations using a dependency matrix
US5404469A (en) Multi-threaded microprocessor architecture utilizing static interleaving
Mosberger Memory consistency models
Huang et al. Speculative disambiguation: A compilation technique for dynamic memory disambiguation
US6826677B2 (en) Renaming registers to values produced by instructions according to assigned produce sequence number
US6175910B1 (en) Speculative instructions exection in VLIW processors
Kohli et al. A characterization of scalable shared memories
US7673294B2 (en) Mechanism for pipelining loops with irregular loop control
JP4589305B2 (en) Reconfigurable processor array utilizing ILP and TLP
US5642523A (en) Microprocessor with variable size register windowing
JPH0476731A (en) Pipeline type microprocessor assembler processing system
US5542079A (en) Data driven processor for reading data from storage to apply prescribed operation in response to operation updating instruction and updating the contents of the storage
Kawano et al. Fine-grain multi-thread processor architecture for massively parallel processing
US20040034858A1 (en) Programming a multi-threaded processor
KR20150051083A (en) Re-configurable processor, method and apparatus for optimizing use of configuration memory thereof
Thorelli The EDA multiprocessing model
US7024664B2 (en) Symbolic assembly language
JP2883465B2 (en) Electronic computer
Feuerhahn A data-flow driven resource allocation in a retargetable microcode compiler
JP4298868B2 (en) Pair register allocation processing method, compile processing device, and compiler program recording medium
JP4006887B2 (en) Compiler, processor and recording medium
Gupta A fine-grained MIMD architecture based upon register channels
Anderson M2: An architectural system for computer design
KR20040080520A (en) A digital signal processor for parallel processing of instructions and its process method