JPH07505968A - Cisc型からrisc型命令への変換のためのアライメント並びにデコーディング - Google Patents
Cisc型からrisc型命令への変換のためのアライメント並びにデコーディングInfo
- Publication number
- JPH07505968A JPH07505968A JP5517306A JP51730693A JPH07505968A JP H07505968 A JPH07505968 A JP H07505968A JP 5517306 A JP5517306 A JP 5517306A JP 51730693 A JP51730693 A JP 51730693A JP H07505968 A JPH07505968 A JP H07505968A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- bytes
- alignment
- byte
- instructions
- 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.)
- Granted
Links
- 238000006243 chemical reaction Methods 0.000 title description 4
- 238000000034 method Methods 0.000 claims description 42
- 150000001875 compounds Chemical class 0.000 claims description 29
- 239000000284 extract Substances 0.000 claims description 24
- 238000000605 extraction Methods 0.000 claims description 22
- 238000006073 displacement reaction Methods 0.000 claims description 18
- 239000000872 buffer Substances 0.000 claims description 13
- 230000004044 response Effects 0.000 claims description 7
- 238000012545 processing Methods 0.000 claims description 6
- 230000009471 action Effects 0.000 claims description 4
- 239000002131 composite material Substances 0.000 claims 5
- 238000010586 diagram Methods 0.000 description 45
- 230000008569 process Effects 0.000 description 19
- 230000006870 function Effects 0.000 description 13
- 238000001514 detection method Methods 0.000 description 8
- 238000012546 transfer Methods 0.000 description 8
- 238000007792 addition Methods 0.000 description 5
- 235000013305 food Nutrition 0.000 description 5
- 230000008901 benefit Effects 0.000 description 4
- 235000014443 Pyrus communis Nutrition 0.000 description 3
- 230000008859 change Effects 0.000 description 3
- 125000004122 cyclic group Chemical group 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 3
- 241000287462 Phalacrocorax carbo Species 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 210000003127 knee Anatomy 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- AHLBNYSZXLDEJQ-FWEHEUNISA-N orlistat Chemical compound CCCCCCCCCCC[C@H](OC(=O)[C@H](CC(C)C)NC=O)C[C@@H]1OC(=O)[C@H]1CCCCCC AHLBNYSZXLDEJQ-FWEHEUNISA-N 0.000 description 2
- 230000000630 rising effect Effects 0.000 description 2
- 240000005020 Acaciella glauca Species 0.000 description 1
- RZVAJINKPMORJF-UHFFFAOYSA-N Acetaminophen Chemical compound CC(=O)NC1=CC=C(O)C=C1 RZVAJINKPMORJF-UHFFFAOYSA-N 0.000 description 1
- 101100452681 Arabidopsis thaliana INVD gene Proteins 0.000 description 1
- 102100022436 CMRF35-like molecule 8 Human genes 0.000 description 1
- UNPLRYRWJLTVAE-UHFFFAOYSA-N Cloperastine hydrochloride Chemical compound Cl.C1=CC(Cl)=CC=C1C(C=1C=CC=CC=1)OCCN1CCCCC1 UNPLRYRWJLTVAE-UHFFFAOYSA-N 0.000 description 1
- 101150092569 Ctsc gene Proteins 0.000 description 1
- 241000257465 Echinoidea Species 0.000 description 1
- 101000901669 Homo sapiens CMRF35-like molecule 8 Proteins 0.000 description 1
- 101000694017 Homo sapiens Sodium channel protein type 5 subunit alpha Proteins 0.000 description 1
- 208000010718 Multiple Organ Failure Diseases 0.000 description 1
- 101150065817 ROM2 gene Proteins 0.000 description 1
- AUNGANRZJHBGPY-SCRDCRAPSA-N Riboflavin Chemical compound OC[C@@H](O)[C@@H](O)[C@@H](O)CN1C=2C=C(C)C(C)=CC=2N=C2C1=NC(=O)NC2=O AUNGANRZJHBGPY-SCRDCRAPSA-N 0.000 description 1
- 235000000935 Santalum yasi Nutrition 0.000 description 1
- 241000775525 Santalum yasi Species 0.000 description 1
- 241001441724 Tetraodontidae Species 0.000 description 1
- 241000190020 Zelkova serrata Species 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 235000021162 brunch Nutrition 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000007596 consolidation process Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 208000002173 dizziness Diseases 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 230000000873 masking effect Effects 0.000 description 1
- 235000003499 redwood Nutrition 0.000 description 1
- 239000012925 reference material Substances 0.000 description 1
- 102200025788 rs179363875 Human genes 0.000 description 1
- 210000002784 stomach Anatomy 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
- 238000013519 translation Methods 0.000 description 1
- 235000021419 vinegar Nutrition 0.000 description 1
- 239000000052 vinegar Substances 0.000 description 1
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
- 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/30098—Register arrangements
- G06F9/30101—Special purpose registers
-
- 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/30145—Instruction analysis, e.g. decoding, instruction word fields
-
- 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/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/30149—Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
-
- 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/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/30149—Instruction analysis, e.g. decoding, instruction word fields of variable length instructions
- G06F9/30152—Determining start or end of instruction; determining instruction length
-
- 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/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
- G06F9/30163—Decoding the operand specifier, e.g. specifier format with implied specifier, e.g. top of stack
-
- 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/30145—Instruction analysis, e.g. decoding, instruction word fields
- G06F9/3016—Decoding the operand specifier, e.g. specifier format
- G06F9/30167—Decoding the operand specifier, e.g. specifier format of immediate specifier, e.g. constants
-
- 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/3017—Runtime instruction translation, e.g. macros
-
- 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/3017—Runtime instruction translation, e.g. macros
- G06F9/30174—Runtime instruction translation, e.g. macros for non-native instruction set, e.g. Javabyte, legacy code
-
- 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/30181—Instruction operation extension or modification
- G06F9/30185—Instruction operation extension or modification according to one or more bits in the instruction, e.g. prefix, sub-opcode
-
- 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/3802—Instruction prefetching
- G06F9/3816—Instruction alignment, e.g. cache line crossing
-
- 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/3818—Decoding for concurrent execution
- G06F9/382—Pipelined decoding, e.g. using predecoding
-
- 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/3853—Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution of compound instructions
-
- B—PERFORMING OPERATIONS; TRANSPORTING
- B82—NANOTECHNOLOGY
- B82Y—SPECIFIC USES OR APPLICATIONS OF NANOSTRUCTURES; MEASUREMENT OR ANALYSIS OF NANOSTRUCTURES; MANUFACTURE OR TREATMENT OF NANOSTRUCTURES
- B82Y10/00—Nanotechnology for information processing, storage or transmission, e.g. quantum computing or single electron logic
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
- Executing Machine-Instructions (AREA)
Abstract
Description
Claims (1)
- 【特許請求の範囲】 1.複合命令のストリームから複合の可変長コンピュータ命令を抽出してアライ メントするためのシステムで、各複合命令が不定数の命令バイトに細分されてお り、そのシステムが、 (a)複合命令のストリームを受け取るための第1手段と、(b)前記第1手段 に応答して、複合命令のストリームから命令バイト・セットを抽出するための第 2手段と、 (c)前記第2手段に応答して、複合命令の第1命令に対応する命令バイト数を 確定するための第3手段と、 (d)前記第3手段に応答して、前記の該当する命令バイト数に基づいて複合命 令の前記第1命令をアライメントするための第4手段と、(e)前記第4手段に 応答して、複合命令の前記第1命令を出力するための第5手段と、 を備えていることを特徴とするシステム。 2.前記第2手段が抽出シフト制御信号に基づいて複合命令ストリームから命令 バイトを抽出するための抽出シフタを備えていることを特徴とする請求項1記載 のシステム。 3.前記システムが、 少なくとも一つの整列ラッチをさらに備えており、前記第4手段が整列シフト制 御信号に基づいて複合命令をアレイメントすろための整列シフタをさらに備えて おり、前記整列シフタが少なくとも一つの整列ラッチに対してアライメントされ た複合命令バイトを出力することを特徴とする請求項1記載のシステム。 4.前記第3手段が前記整列ラッチから前記のアライメントされた複合命令を受 け取り、さらに前記のアライメントされた複合命令バイトに基づいて複合命令中 の命令バイト数を確定し、出力するための次命令検出器を備えていることを特徴 とすろ請求項3記載のシステム。 5.前記整列シフト制御信号が前記次命令検出器により確定された先行複合命令 の命令バイト数から成り、さらに前記整列シフタが次の複合命令に対応するさら なる命令バイトをアライメントするために前記命令バイト数をシフトし、前記整 列シフタがそれから前記の次の複合命令に対応する前記さらなる命令バイトを前 記の少なくとも1つの整列ラッチに出力することを特徴とする請求項4記載のシ ステム。 6.前記システムが前記の少なくとも一つの整列ラッチから前記のアライメント された複合命令バイトを受け取り、且つ前記のアライメントされた複合命令バイ トの始めに含まれたブレフィックス・バイト数を確定するためのプレフィックス 検出器をさらに備えていることを特徴とする請求項3記載のシステム。 7.前記システムが前記の少なくとも一つの整列ラッチから前記のアライメント された複合命令バイトを受け取るためのプレフィックス検出器をさらに備えてお り、且つ前記のアライメントされた複合命令バイトの始めに含まれたプレフィッ クス・バイト数を確定することを特徴とする請求項5記載のシステム。 8.前記整列シフト制御信号が前記プレフィックス検出器により確定された前記 のプレフィックス・バイト数から成り、且つ対応するプレフィックス・バイト数 をシフトアウトするために、前記整列シフト制御信号が前記整列シフタに受け取 られることを特徴とする請求項6記載のシステム。 9.前記整列シフト制御信号が前記プレフィックス検出器により確定された前記 のプレフィックス・バイト数から成り、且つ対応するプレフィックス・バイト数 をシフトアウトするために前記整列シフタに受け取られることを特徴とする請求 項7記載のシステム。 10.前記の少なくとも一つの整列ラッチからアライメントされた複合命令バイ トを受け取り、且つ前記の抽出された命令バイト中のイミディエト・データ及び ディスプレースメント・データの位置を確定するための第6手段をさらに備えて いる請求項3記載のシステム。 11.前記第6手段が、 (a)前記のアライメントされた複合命令バイトに対応するイミディエト・デー タをアライメントするためのイミディエト・データ・シフタと、(b)前記のア ライメントされた複合命令バイトに対応するディスプレースメント・データをア ライメントするためのディスプレースメント・データ・シフタと、 をさらに備えていることを特徴とする請求項10記載のシステム。 12.前記イミディエト・データ・シフタ及び前記ディスプレースメント・デー タ・ンフタが前記のアライメントされたイミディエト・データ及び前記のアライ メントされたディスプレースメント・データを命令デコーダ・ユニットに直接出 力することを特徴とする請求項11のシステム。 13.前記の第1手段がバスを有することを特徴とする請求項1のシステム。 14.前記バスがバッファ装置から複合命令ストリームを受け取ることを特徴と する請求項13記載のシステム。 15.不定数の命令バイトに各々細分された、複合命令ストリームからの複合の 可変長コンピュータ命令を抽出し、さらに複合命令の個々の命令の命令バイトを アライメントするための方法で、その方法が、(1)複合命令ストリームの一部 を受け取るステップと、(2)抽出シフタを使って、第1命令バイトで始まる命 令バイトの第1セットを抽出するステップと、 (3)前記の命令バイト・セットを整列ラッチに渡すステップと、(4)前記ラ ッチから次命令検出器にアライメントされた命令バイトを出力するステップと、 (5)前記の次命令検出器を使って前記の命令バイト・セットに基づき第1命令 の終わりを確定するステップと、 (6)命令バイトの次のセットを抽出し、且つ整列シフタに供給するために前記 抽出シフタを制御するステップと、(7)次の命令をアライメントして出力する ために前記整列シフタを制御するステップと、 (8)前記整列シフタの前記出力を前記整列ラッチにラッチするステップと、( 9)複合命令ストリーム中の残りの命令バイトに関して4〜8のステップを繰り 返すステップと、 を備えていることを特徴とする方法。 16.前記ラッチからのアライメントされた命令バイトを命令デコード・ユニッ トに出力するステップと、 アライメントされた命令バイトをロード、格納及び算術・論理の動作グループか ら成る1つ以上のナノ命令動作にデコードするステップと、をさらに備えている ことを特徴とする請求項15記載の方法。 17.前記1つ以上のナノ命令動作を事前に定められたロード、格納及び算術論 理の動作フィールドから成る命令バケットに入れるステップと、前記命令パケッ トを第1命令ラッチににそして当該第1命令ラッチが空でない場合は第2命令ラ ッチに格納するステップと、前記命令バケット・フィールドの組み合わせを支配 する所定のルール・セットに基づいて、前記の第1及び第2の命令ラッチの内容 を最終命令バケットに統合するステップと、 をさらに備えていることを特徴とする請求項15記載の方法。 18.前記ラッチからプレフィックス検出器にアライメントされた命令バイトを 出力するステップと、 プレフィックス情報を提供するために、1個以上のプレフィックス・バイトが存 在するか否かを確定するステップとを備えており、プレフィックス・バイトが存 在する場合、(i)前記プレフィックス情報をラッチし、プレフィックス・バイ トが存在しない場合、(ii)前記の次命令検出器の出力を選択することを特徴 とする請求項15記載の方法。 19.サブステツプ(i)が、対応するアライメントされた命令を有する前記ラ ッチ・プレフィックス情報を出力するステップをさらに備えていることを特徴と する請求項18記載の方法。 20.前記最終命令バケットをナノ命令デコーダに出力するステップをさらに備 えていることを特徴とする請求項17記載の方法。 21.不定数の命令バイトを有する複合コンピュータ命令を、縮小命令セット・ コンピュータで処理するためのナノ命令動作にデコードするためのシステムで、 そのシステムが (a)アライメントされた複合命令を受け取るための第1手段と、(b)前記第 1手段から前記のアライメントされた複合命令を受け取り、且つ前記アライメン トされた複合命令をロード、格納及び算術・論理の動作グループから成る1個以 上のナノ命令にデコードするための第2手段と、(c)前記第2手段に応答して 、前記の1個以上のナノ命令動作を事前に定められたロード、格納及び算術・論 理の動作フィールドから成る命令バケットに入れるための第3手段と、 (d)前記第3手段に応答して、前記命令バケットを第1命令ラッチに、そして 当該第1命令ラッチが空でない場合、第2命令ラッチに格納するための第4手段 と、 (e)前記第4手段に応答して、前記命令バケット・フィールドの組み合わせを 支配する所定のルール・セットに基づき、前記第1及び第2命令ラッチの内容を 最終命令バケットに統合するための第5手段と、を備えていることを特徴とする システム。 22.前記命令バケット及び最終バケットが各々第1及び第2命令バケットから 成ることを特徴とする請求項21記載のシステム。 23.前記第1命令パケットが3個ののナノ命令動作フィールドから成ることを 特徴とする請求項22記載のシステム。 24.前記第2命令バケットが1個のナノ命令動作フィールドから成ることを特 徴とする請求項22記載のシステム。 25.前記第1命令バケットの前記3個のナノ命令動作フィールドがロード・ナ ノ命令動作フィールド、格納ナノ命令動作フィールド及び算術論理ナノ命令演算 フィールドから成ることを特徴とする請求項23記載のシステム。 26.前記第2命令バケットの前記の1個のナノ命令動作フィールドが算術論理 ナノ命令演算フィールドから成ることを特徴とする請求項24記載のシステム。 27.以下の条件、 (i)第1及び第2命令ラッチのみが共に1個の算術論理演算を格納する、(i i)第1及び第2命令ラッチのうちの1個のみが1個の算術論理演算を格納し、 もう1個が1つのロード動作、1つの格納動作、及び1つの算術論理演算のみを 格納する、 のうちの1つが存在する場合、前記第1及び第2バケットの前記組み合わせが発 生することを特徴とする請求項21記載のシステム。 28.前記第3手段がマルチプレクサを備えていることを特徴とする請求項21 記載のシステム。 29.前記第4手段が制御ゲートー式を備えていることを特徴とする請求項21 記載のシステム。 30.不定数の命令バイトを有する複合コンピュータ命令を、縮小命令セット・ コンピュータで処理するためのナノ命令動作にデコードするための方法で、その 方法が、 (1)アライメントされた複合命令を受け取るステップと、(2)前記アライメ ントされた複合命令をロード、格納及び算術論理の動作グループから成る1個以 上のナノ命令動作にデコードするステップと、(3)前記の1個以上のナノ命令 動作を事前に定められたロード、格納及び算術論理の動作フィールドから成る命 令バケットの中に入れるステップと、(4)前記命令バケットを第1命令ラッチ に、そして当該第1命令ラッチが空でない場合は、第2命令ラッチに格納するス テップと、(5)前記命令バケット・フィールドの組み合わせを支配する所定の ルールセットに基づいて、前記第1及び第2命令ラッチの内容を最終命令バケッ トに統合するステップと、 を備えていることを特徴とする方法。 31.前記統合するステップが、前記第1及び第2命令ラッチの前記内容を前記 最終命令バケット内の第1及び第2命令バケットに格納するステップをさらに備 えていることを特徴とする請求項30記載の方法。 32.前記統合するステップが、前記第1及び第2命令ラッチの前記内容を前記 第1命令バケット内の3個のナノ命令動作フィールドの中に格納するステップを さらにまた備えていることを特徴とする請求項31記載の方法。 33.前記のさらに格納するステップが、前記第1及び第2命令ラッチの前記内 容を前記第2命令バケット内の1個のナノ命令動作フィールドの中に格納するス テップを備えていることを特徴とする請求項32記載の方法。 34.前記統合するステップが、 (i)前記第1及び第2命令ラッチが共に1つの算術論理演算のみを格納するか 、或いは (ii)前記の第1及び第2命令ラッチのうちの1個のみが1つの算術論理演算 のみを格納し、もう1個が1つのロード動作、1つの格納動作、及び1つの算術 論理演算のみを格約するか、 を確定することによって前記第1及び第2バケットの前記組み合わせを実行する ことを特徴とする請求項30記載の方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US07/857,599 US5438668A (en) | 1992-03-31 | 1992-03-31 | System and method for extraction, alignment and decoding of CISC instructions into a nano-instruction bucket for execution by a RISC computer |
US857,599 | 1992-03-31 | ||
PCT/JP1993/000417 WO1993020507A2 (en) | 1992-03-31 | 1993-03-30 | Cisc to risc instruction translation alignment and decoding |
Related Child Applications (8)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000007262A Division JP2000215051A (ja) | 1992-03-31 | 2000-01-17 | 命令ストリ―ムの変換システム |
JP2000007264A Division JP3544334B2 (ja) | 1992-03-31 | 2000-01-17 | 命令ストリームの変換方法 |
JP2000007259A Division JP3544331B2 (ja) | 1992-03-31 | 2000-01-17 | 命令ストリームの変換方法 |
JP2000007263A Division JP3544333B2 (ja) | 1992-03-31 | 2000-01-17 | コンピュータシステム |
JP2000007260A Division JP3544332B2 (ja) | 1992-03-31 | 2000-01-17 | コンピュータシステム |
JP2000007265A Division JP3544335B2 (ja) | 1992-03-31 | 2000-01-17 | 複合命令ストリームのアライメントシステム |
JP2000007261A Division JP2000215050A (ja) | 1992-03-31 | 2000-01-17 | プロセッサ |
JP2000007258A Division JP3544330B2 (ja) | 1992-03-31 | 2000-01-17 | 命令ストリームの変換システム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH07505968A true JPH07505968A (ja) | 1995-06-29 |
JP3547052B2 JP3547052B2 (ja) | 2004-07-28 |
Family
ID=25326342
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP51730693A Expired - Lifetime JP3547052B2 (ja) | 1992-03-31 | 1993-03-30 | Cisc型からrisc型命令への変換のためのアライメント並びにデコーディング |
JP2000007262A Withdrawn JP2000215051A (ja) | 1992-03-31 | 2000-01-17 | 命令ストリ―ムの変換システム |
JP2000007261A Withdrawn JP2000215050A (ja) | 1992-03-31 | 2000-01-17 | プロセッサ |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2000007262A Withdrawn JP2000215051A (ja) | 1992-03-31 | 2000-01-17 | 命令ストリ―ムの変換システム |
JP2000007261A Withdrawn JP2000215050A (ja) | 1992-03-31 | 2000-01-17 | プロセッサ |
Country Status (6)
Country | Link |
---|---|
US (8) | US5438668A (ja) |
EP (2) | EP0636257B1 (ja) |
JP (3) | JP3547052B2 (ja) |
KR (2) | KR100343530B1 (ja) |
DE (2) | DE69329644T2 (ja) |
WO (1) | WO1993020507A2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001504957A (ja) * | 1996-09-26 | 2001-04-10 | トランスメタ・コーポレーション | 先進のプロセッサにおけるメモリ・データ・エリアシング方法および装置 |
Families Citing this family (244)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5226126A (en) * | 1989-02-24 | 1993-07-06 | Nexgen Microsystems | Processor having plurality of functional units for orderly retiring outstanding operations based upon its associated tags |
US5768575A (en) * | 1989-02-24 | 1998-06-16 | Advanced Micro Devices, Inc. | Semi-Autonomous RISC pipelines for overlapped execution of RISC-like instructions within the multiple superscalar execution units of a processor having distributed pipeline control for sepculative and out-of-order execution of complex instructions |
US5781753A (en) | 1989-02-24 | 1998-07-14 | Advanced Micro Devices, Inc. | Semi-autonomous RISC pipelines for overlapped execution of RISC-like instructions within the multiple superscalar execution units of a processor having distributed pipeline control for speculative and out-of-order execution of complex instructions |
US5438668A (en) * | 1992-03-31 | 1995-08-01 | Seiko Epson Corporation | System and method for extraction, alignment and decoding of CISC instructions into a nano-instruction bucket for execution by a RISC computer |
US5628021A (en) * | 1992-12-31 | 1997-05-06 | Seiko Epson Corporation | System and method for assigning tags to control instruction processing in a superscalar processor |
US5463748A (en) | 1993-06-30 | 1995-10-31 | Intel Corporation | Instruction buffer for aligning instruction sets using boundary detection |
JP3248992B2 (ja) * | 1993-07-13 | 2002-01-21 | 富士通株式会社 | マルチプロセッサ |
EP0651320B1 (en) * | 1993-10-29 | 2001-05-23 | Advanced Micro Devices, Inc. | Superscalar instruction decoder |
DE69429061T2 (de) * | 1993-10-29 | 2002-07-18 | Advanced Micro Devices, Inc. | Superskalarmikroprozessoren |
US5903772A (en) * | 1993-10-29 | 1999-05-11 | Advanced Micro Devices, Inc. | Plural operand buses of intermediate widths coupling to narrower width integer and wider width floating point superscalar processing core |
DE69434669T2 (de) * | 1993-10-29 | 2006-10-12 | Advanced Micro Devices, Inc., Sunnyvale | Spekulative Befehlswarteschlange für Befehle mit variabler Byteslänge |
US5689672A (en) * | 1993-10-29 | 1997-11-18 | Advanced Micro Devices, Inc. | Pre-decoded instruction cache and method therefor particularly suitable for variable byte-length instructions |
US5630082A (en) * | 1993-10-29 | 1997-05-13 | Advanced Micro Devices, Inc. | Apparatus and method for instruction queue scanning |
JPH07239780A (ja) * | 1994-01-06 | 1995-09-12 | Motohiro Kurisu | 1クロック可変長命令実行処理型命令読み込み電子計 算機 |
US5884057A (en) * | 1994-01-11 | 1999-03-16 | Exponential Technology, Inc. | Temporal re-alignment of a floating point pipeline to an integer pipeline for emulation of a load-operate architecture on a load/store processor |
US5600806A (en) * | 1994-03-01 | 1997-02-04 | Intel Corporation | Method and apparatus for aligning an instruction boundary in variable length macroinstructions with an instruction buffer |
JP3212213B2 (ja) * | 1994-03-16 | 2001-09-25 | 株式会社日立製作所 | データ処理装置 |
US5574927A (en) * | 1994-03-25 | 1996-11-12 | International Meta Systems, Inc. | RISC architecture computer configured for emulation of the instruction set of a target computer |
EP0679990B1 (en) * | 1994-04-28 | 2000-03-01 | Hewlett-Packard Company | A computer apparatus having a means to force sequential instruction execution |
US5559975A (en) | 1994-06-01 | 1996-09-24 | Advanced Micro Devices, Inc. | Program counter update mechanism |
JP2982618B2 (ja) * | 1994-06-28 | 1999-11-29 | 日本電気株式会社 | メモリ選択回路 |
US5598546A (en) * | 1994-08-31 | 1997-01-28 | Exponential Technology, Inc. | Dual-architecture super-scalar pipeline |
US5619663A (en) * | 1994-09-16 | 1997-04-08 | Philips Electronics North America Corp. | Computer instruction prefetch system |
US6496922B1 (en) * | 1994-10-31 | 2002-12-17 | Sun Microsystems, Inc. | Method and apparatus for multiplatform stateless instruction set architecture (ISA) using ISA tags on-the-fly instruction translation |
US5640526A (en) * | 1994-12-21 | 1997-06-17 | International Business Machines Corporation | Superscaler instruction pipeline having boundary indentification logic for variable length instructions |
US5832249A (en) * | 1995-01-25 | 1998-11-03 | Advanced Micro Devices, Inc. | High performance superscalar alignment unit |
US6006324A (en) | 1995-01-25 | 1999-12-21 | Advanced Micro Devices, Inc. | High performance superscalar alignment unit |
US5737550A (en) * | 1995-03-28 | 1998-04-07 | Advanced Micro Devices, Inc. | Cache memory to processor bus interface and method thereof |
US5751982A (en) * | 1995-03-31 | 1998-05-12 | Apple Computer, Inc. | Software emulation system with dynamic translation of emulated instructions for increased processing speed |
US5991869A (en) * | 1995-04-12 | 1999-11-23 | Advanced Micro Devices, Inc. | Superscalar microprocessor including a high speed instruction alignment unit |
US5758114A (en) * | 1995-04-12 | 1998-05-26 | Advanced Micro Devices, Inc. | High speed instruction alignment unit for aligning variable byte-length instructions according to predecode information in a superscalar microprocessor |
US5822558A (en) * | 1995-04-12 | 1998-10-13 | Advanced Micro Devices, Inc. | Method and apparatus for predecoding variable byte-length instructions within a superscalar microprocessor |
US5815736A (en) * | 1995-05-26 | 1998-09-29 | National Semiconductor Corporation | Area and time efficient extraction circuit |
US6237074B1 (en) * | 1995-05-26 | 2001-05-22 | National Semiconductor Corp. | Tagged prefetch and instruction decoder for variable length instruction set and method of operation |
US5680578A (en) * | 1995-06-07 | 1997-10-21 | Advanced Micro Devices, Inc. | Microprocessor using an instruction field to specify expanded functionality and a computer system employing same |
US5822778A (en) * | 1995-06-07 | 1998-10-13 | Advanced Micro Devices, Inc. | Microprocessor and method of using a segment override prefix instruction field to expand the register file |
US5768574A (en) * | 1995-06-07 | 1998-06-16 | Advanced Micro Devices, Inc. | Microprocessor using an instruction field to expand the condition flags and a computer system employing the microprocessor |
JP3451595B2 (ja) * | 1995-06-07 | 2003-09-29 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 二つの別個の命令セット・アーキテクチャへの拡張をサポートすることができるアーキテクチャ・モード制御を備えたマイクロプロセッサ |
US5875315A (en) * | 1995-06-07 | 1999-02-23 | Advanced Micro Devices, Inc. | Parallel and scalable instruction scanning unit |
US5867701A (en) * | 1995-06-12 | 1999-02-02 | Intel Corporation | System for inserting a supplemental micro-operation flow into a macroinstruction-generated micro-operation flow |
DE69638241D1 (de) * | 1995-08-01 | 2010-09-30 | Bull Hn Information Syst | Verfahren für die emulation von programmbefehlen |
US5678032A (en) * | 1995-09-06 | 1997-10-14 | Bull Hn Information Systems Inc. | Method of optimizing the execution of program instuctions by an emulator using a plurality of execution units |
US5781789A (en) * | 1995-08-31 | 1998-07-14 | Advanced Micro Devices, Inc. | Superscaler microprocessor employing a parallel mask decoder |
US5809273A (en) * | 1996-01-26 | 1998-09-15 | Advanced Micro Devices, Inc. | Instruction predecode and multiple instruction decode |
US6093213A (en) * | 1995-10-06 | 2000-07-25 | Advanced Micro Devices, Inc. | Flexible implementation of a system management mode (SMM) in a processor |
US5920713A (en) * | 1995-10-06 | 1999-07-06 | Advanced Micro Devices, Inc. | Instruction decoder including two-way emulation code branching |
US5794063A (en) * | 1996-01-26 | 1998-08-11 | Advanced Micro Devices, Inc. | Instruction decoder including emulation using indirect specifiers |
DE69629484D1 (de) * | 1995-10-06 | 2003-09-18 | Advanced Micro Devices Inc | Befehlsvordekodierung und dekodierung mehrerer befehle |
US5819056A (en) * | 1995-10-06 | 1998-10-06 | Advanced Micro Devices, Inc. | Instruction buffer organization method and system |
US5926642A (en) * | 1995-10-06 | 1999-07-20 | Advanced Micro Devices, Inc. | RISC86 instruction set |
US5872947A (en) * | 1995-10-24 | 1999-02-16 | Advanced Micro Devices, Inc. | Instruction classification circuit configured to classify instructions into a plurality of instruction types prior to decoding said instructions |
US5768553A (en) * | 1995-10-30 | 1998-06-16 | Advanced Micro Devices, Inc. | Microprocessor using an instruction field to define DSP instructions |
US5796974A (en) * | 1995-11-07 | 1998-08-18 | Advanced Micro Devices, Inc. | Microcode patching apparatus and method |
US5790825A (en) * | 1995-11-08 | 1998-08-04 | Apple Computer, Inc. | Method for emulating guest instructions on a host computer through dynamic recompilation of host instructions |
US5809272A (en) * | 1995-11-29 | 1998-09-15 | Exponential Technology Inc. | Early instruction-length pre-decode of variable-length instructions in a superscalar processor |
US5740392A (en) * | 1995-12-27 | 1998-04-14 | Intel Corporation | Method and apparatus for fast decoding of 00H and OFH mapped instructions |
US5778246A (en) * | 1995-12-27 | 1998-07-07 | Intel Corporation | Method and apparatus for efficient propagation of attribute bits in an instruction decode pipeline |
US5710914A (en) * | 1995-12-29 | 1998-01-20 | Atmel Corporation | Digital signal processing method and system implementing pipelined read and write operations |
US5819080A (en) * | 1996-01-02 | 1998-10-06 | Advanced Micro Devices, Inc. | Microprocessor using an instruction field to specify condition flags for use with branch instructions and a computer system employing the microprocessor |
US5826089A (en) * | 1996-01-04 | 1998-10-20 | Advanced Micro Devices, Inc. | Instruction translation unit configured to translate from a first instruction set to a second instruction set |
JP3634379B2 (ja) * | 1996-01-24 | 2005-03-30 | サン・マイクロシステムズ・インコーポレイテッド | スタックキャッシングのための方法及び装置 |
WO1997027537A2 (en) * | 1996-01-24 | 1997-07-31 | Sun Microsystems, Inc. | A processor for executing instruction sets received from a network or from a local memory |
US6105124A (en) * | 1996-01-26 | 2000-08-15 | Intel Corporation | Method and apparatus for merging binary translated basic blocks of instructions |
US5790821A (en) * | 1996-03-08 | 1998-08-04 | Advanced Micro Devices, Inc. | Control bit vector storage for storing control vectors corresponding to instruction operations in a microprocessor |
US5867681A (en) * | 1996-05-23 | 1999-02-02 | Lsi Logic Corporation | Microprocessor having register dependent immediate decompression |
US5822560A (en) * | 1996-05-23 | 1998-10-13 | Advanced Micro Devices, Inc. | Apparatus for efficient instruction execution via variable issue and variable control vectors per issue |
US5896519A (en) * | 1996-06-10 | 1999-04-20 | Lsi Logic Corporation | Apparatus for detecting instructions from a variable-length compressed instruction set having extended and non-extended instructions |
US5905893A (en) * | 1996-06-10 | 1999-05-18 | Lsi Logic Corporation | Microprocessor adapted for executing both a non-compressed fixed length instruction set and a compressed variable length instruction set |
JP2000515275A (ja) * | 1996-07-16 | 2000-11-14 | アドバンスト・マイクロ・ディバイシズ・インコーポレイテッド | 高速命令整列ユニットを含むスーパースカラマイクロプロセッサ |
US6049863A (en) * | 1996-07-24 | 2000-04-11 | Advanced Micro Devices, Inc. | Predecoding technique for indicating locations of opcode bytes in variable byte-length instructions within a superscalar microprocessor |
US5958061A (en) * | 1996-07-24 | 1999-09-28 | Transmeta Corporation | Host microprocessor with apparatus for temporarily holding target processor state |
US5867680A (en) * | 1996-07-24 | 1999-02-02 | Advanced Micro Devices, Inc. | Microprocessor configured to simultaneously dispatch microcode and directly-decoded instructions |
US6199152B1 (en) | 1996-08-22 | 2001-03-06 | Transmeta Corporation | Translated memory protection apparatus for an advanced microprocessor |
US5890009A (en) * | 1996-12-12 | 1999-03-30 | International Business Machines Corporation | VLIW architecture and method for expanding a parcel |
US5870576A (en) * | 1996-12-16 | 1999-02-09 | Hewlett-Packard Company | Method and apparatus for storing and expanding variable-length program instructions upon detection of a miss condition within an instruction cache containing pointers to compressed instructions for wide instruction word processor architectures |
US5918031A (en) * | 1996-12-18 | 1999-06-29 | Intel Corporation | Computer utilizing special micro-operations for encoding of multiple variant code flows |
US5923862A (en) * | 1997-01-28 | 1999-07-13 | Samsung Electronics Co., Ltd. | Processor that decodes a multi-cycle instruction into single-cycle micro-instructions and schedules execution of the micro-instructions |
US5909567A (en) * | 1997-02-28 | 1999-06-01 | Advanced Micro Devices, Inc. | Apparatus and method for native mode processing in a RISC-based CISC processor |
US5852727A (en) * | 1997-03-10 | 1998-12-22 | Advanced Micro Devices, Inc. | Instruction scanning unit for locating instructions via parallel scanning of start and end byte information |
US5875336A (en) * | 1997-03-31 | 1999-02-23 | International Business Machines Corporation | Method and system for translating a non-native bytecode to a set of codes native to a processor within a computer system |
US6047368A (en) * | 1997-03-31 | 2000-04-04 | Sun Microsystems, Inc. | Processor architecture including grouping circuit |
US5940602A (en) * | 1997-06-11 | 1999-08-17 | Advanced Micro Devices, Inc. | Method and apparatus for predecoding variable byte length instructions for scanning of a number of RISC operations |
US6009511A (en) * | 1997-06-11 | 1999-12-28 | Advanced Micro Devices, Inc. | Apparatus and method for tagging floating point operands and results for rapid detection of special floating point numbers |
US5933626A (en) * | 1997-06-12 | 1999-08-03 | Advanced Micro Devices, Inc. | Apparatus and method for tracing microprocessor instructions |
US5930491A (en) * | 1997-06-18 | 1999-07-27 | International Business Machines Corporation | Identification of related instructions resulting from external to internal translation by use of common ID field for each group |
US5978901A (en) * | 1997-08-21 | 1999-11-02 | Advanced Micro Devices, Inc. | Floating point and multimedia unit with data type reclassification capability |
US6230259B1 (en) | 1997-10-31 | 2001-05-08 | Advanced Micro Devices, Inc. | Transparent extended state save |
US6216218B1 (en) | 1997-11-03 | 2001-04-10 | Donald L. Sollars | Processor having a datapath and control logic constituted with basis execution blocks |
US6016539A (en) | 1997-11-03 | 2000-01-18 | Teragen Corporation | Datapath control logic for processors having instruction set architectures implemented with hierarchically organized primitive operations |
US6438679B1 (en) | 1997-11-03 | 2002-08-20 | Brecis Communications | Multiple ISA support by a processor using primitive operations |
US5923894A (en) * | 1997-11-03 | 1999-07-13 | Teragen Corporation | Adaptable input/output pin control |
US5940626A (en) * | 1997-11-03 | 1999-08-17 | Teragen Corporation | Processor having an instruction set architecture implemented with hierarchically organized primitive operations |
US6067601A (en) * | 1997-11-03 | 2000-05-23 | Brecis Communications | Cache memory based instruction execution |
US6178482B1 (en) | 1997-11-03 | 2001-01-23 | Brecis Communications | Virtual register sets |
US6157996A (en) * | 1997-11-13 | 2000-12-05 | Advanced Micro Devices, Inc. | Processor programably configurable to execute enhanced variable byte length instructions including predicated execution, three operand addressing, and increased register space |
US6021484A (en) * | 1997-11-14 | 2000-02-01 | Samsung Electronics Co., Ltd. | Dual instruction set architecture |
US6167506A (en) | 1997-11-17 | 2000-12-26 | Advanced Micro Devices, Inc. | Replacing displacement in control transfer instruction with encoding indicative of target address, including offset and target cache line location |
US6134649A (en) * | 1997-11-17 | 2000-10-17 | Advanced Micro Devices, Inc. | Control transfer indication in predecode which identifies control transfer instruction and an alternate feature of an instruction |
US6134650A (en) * | 1997-12-12 | 2000-10-17 | Advanced Micro Devices, Inc. | Apparatus and method for predicting a first scanned instruction as microcode instruction prior to scanning predecode data |
US6061775A (en) * | 1997-12-12 | 2000-05-09 | Advanced Micro Devices, Inc. | Apparatus and method for predicting a first microcode instruction of a cache line and using predecode instruction data to identify instruction boundaries and types |
US6039765A (en) * | 1997-12-15 | 2000-03-21 | Motorola, Inc. | Computer instruction which generates multiple results of different data types to improve software emulation |
US6012138A (en) * | 1997-12-19 | 2000-01-04 | Lsi Logic Corporation | Dynamically variable length CPU pipeline for efficiently executing two instruction sets |
US6044460A (en) * | 1998-01-16 | 2000-03-28 | Lsi Logic Corporation | System and method for PC-relative address generation in a microprocessor with a pipeline architecture |
US5881260A (en) * | 1998-02-09 | 1999-03-09 | Hewlett-Packard Company | Method and apparatus for sequencing and decoding variable length instructions with an instruction boundary marker within each instruction |
EP1457876B1 (en) * | 1998-03-18 | 2017-10-04 | Qualcomm Incorporated | Systems for and method of controlling a digital signal processor using a variable length instruction set, method of generating and storing said instructions and memory comprising said instructions |
US6425070B1 (en) * | 1998-03-18 | 2002-07-23 | Qualcomm, Inc. | Variable length instruction decoder |
US6014735A (en) * | 1998-03-31 | 2000-01-11 | Intel Corporation | Instruction set extension using prefixes |
US6061786A (en) * | 1998-04-23 | 2000-05-09 | Advanced Micro Devices, Inc. | Processor configured to select a next fetch address by partially decoding a byte of a control transfer instruction |
US6141745A (en) * | 1998-04-30 | 2000-10-31 | Advanced Micro Devices, Inc. | Functional bit identifying a prefix byte via a particular state regardless of type of instruction |
US6175908B1 (en) | 1998-04-30 | 2001-01-16 | Advanced Micro Devices, Inc. | Variable byte-length instructions using state of function bit of second byte of plurality of instructions bytes as indicative of whether first byte is a prefix byte |
US6275927B2 (en) * | 1998-09-21 | 2001-08-14 | Advanced Micro Devices. | Compressing variable-length instruction prefix bytes |
US6253309B1 (en) | 1998-09-21 | 2001-06-26 | Advanced Micro Devices, Inc. | Forcing regularity into a CISC instruction set by padding instructions |
US6460116B1 (en) | 1998-09-21 | 2002-10-01 | Advanced Micro Devices, Inc. | Using separate caches for variable and generated fixed-length instructions |
US6240506B1 (en) | 1998-10-02 | 2001-05-29 | Advanced Micro Devices, Inc. | Expanding instructions with variable-length operands to a fixed length |
US6339822B1 (en) | 1998-10-02 | 2002-01-15 | Advanced Micro Devices, Inc. | Using padded instructions in a block-oriented cache |
US6260134B1 (en) * | 1998-11-02 | 2001-07-10 | Advanced Micro Devices, Inc. | Fixed shift amount variable length instruction stream pre-decoding for start byte determination based on prefix indicating length vector presuming potential start byte |
US6826749B2 (en) | 1998-12-08 | 2004-11-30 | Nazomi Communications, Inc. | Java hardware accelerator using thread manager |
US6332215B1 (en) | 1998-12-08 | 2001-12-18 | Nazomi Communications, Inc. | Java virtual machine hardware for RISC and CISC processors |
US20050149694A1 (en) * | 1998-12-08 | 2005-07-07 | Mukesh Patel | Java hardware accelerator using microcode engine |
US7225436B1 (en) | 1998-12-08 | 2007-05-29 | Nazomi Communications Inc. | Java hardware accelerator using microcode engine |
US7013456B1 (en) | 1999-01-28 | 2006-03-14 | Ati International Srl | Profiling execution of computer programs |
US6954923B1 (en) | 1999-01-28 | 2005-10-11 | Ati International Srl | Recording classification of instructions executed by a computer |
US8074055B1 (en) | 1999-01-28 | 2011-12-06 | Ati Technologies Ulc | Altering data storage conventions of a processor when execution flows from first architecture code to second architecture code |
US8065504B2 (en) * | 1999-01-28 | 2011-11-22 | Ati International Srl | Using on-chip and off-chip look-up tables indexed by instruction address to control instruction execution in a processor |
US7111290B1 (en) | 1999-01-28 | 2006-09-19 | Ati International Srl | Profiling program execution to identify frequently-executed portions and to assist binary translation |
US7065633B1 (en) | 1999-01-28 | 2006-06-20 | Ati International Srl | System for delivering exception raised in first architecture to operating system coded in second architecture in dual architecture CPU |
US8127121B2 (en) * | 1999-01-28 | 2012-02-28 | Ati Technologies Ulc | Apparatus for executing programs for a first computer architechture on a computer of a second architechture |
US7275246B1 (en) | 1999-01-28 | 2007-09-25 | Ati International Srl | Executing programs for a first computer architecture on a computer of a second architecture |
US6763452B1 (en) | 1999-01-28 | 2004-07-13 | Ati International Srl | Modifying program execution based on profiling |
US6978462B1 (en) | 1999-01-28 | 2005-12-20 | Ati International Srl | Profiling execution of a sequence of events occuring during a profiled execution interval that matches time-independent selection criteria of events to be profiled |
US7941647B2 (en) | 1999-01-28 | 2011-05-10 | Ati Technologies Ulc | Computer for executing two instruction sets and adds a macroinstruction end marker for performing iterations after loop termination |
US6453407B1 (en) * | 1999-02-10 | 2002-09-17 | Infineon Technologies Ag | Configurable long instruction word architecture and instruction set |
US6581154B1 (en) * | 1999-02-17 | 2003-06-17 | Intel Corporation | Expanding microcode associated with full and partial width macroinstructions |
EP1050799A1 (en) | 1999-05-03 | 2000-11-08 | STMicroelectronics S.A. | Execution of a computer program |
US6779107B1 (en) | 1999-05-28 | 2004-08-17 | Ati International Srl | Computer execution by opportunistic adaptation |
EP1216287B1 (en) | 1999-08-19 | 2005-11-23 | Manufacturing And Technology Conversion International, Inc. | System integration of a steam reformer and fuel cell |
US7213129B1 (en) * | 1999-08-30 | 2007-05-01 | Intel Corporation | Method and system for a two stage pipelined instruction decode and alignment using previous instruction length |
US7254806B1 (en) | 1999-08-30 | 2007-08-07 | Ati International Srl | Detecting reordered side-effects |
US6460132B1 (en) | 1999-08-31 | 2002-10-01 | Advanced Micro Devices, Inc. | Massively parallel instruction predecoding |
US6405303B1 (en) | 1999-08-31 | 2002-06-11 | Advanced Micro Devices, Inc. | Massively parallel decoding and execution of variable-length instructions |
US6438664B1 (en) | 1999-10-27 | 2002-08-20 | Advanced Micro Devices, Inc. | Microcode patch device and method for patching microcode using match registers and patch routines |
AU2745001A (en) * | 1999-12-31 | 2001-07-16 | Intel Corporation | External microcode |
US6934832B1 (en) | 2000-01-18 | 2005-08-23 | Ati International Srl | Exception mechanism for a computer |
US6654872B1 (en) * | 2000-01-27 | 2003-11-25 | Ati International Srl | Variable length instruction alignment device and method |
US6542862B1 (en) * | 2000-02-18 | 2003-04-01 | Hewlett-Packard Development Company, L.P. | Determining register dependency in multiple architecture systems |
US7584234B2 (en) * | 2002-05-23 | 2009-09-01 | Qsigma, Inc. | Method and apparatus for narrow to very wide instruction generation for arithmetic circuitry |
US6968469B1 (en) | 2000-06-16 | 2005-11-22 | Transmeta Corporation | System and method for preserving internal processor context when the processor is powered down and restoring the internal processor context when processor is restored |
US6877084B1 (en) | 2000-08-09 | 2005-04-05 | Advanced Micro Devices, Inc. | Central processing unit (CPU) accessing an extended register set in an extended register mode |
US6981132B2 (en) | 2000-08-09 | 2005-12-27 | Advanced Micro Devices, Inc. | Uniform register addressing using prefix byte |
US6633969B1 (en) | 2000-08-11 | 2003-10-14 | Lsi Logic Corporation | Instruction translation system and method achieving single-cycle translation of variable-length MIPS16 instructions |
SE0003398D0 (sv) * | 2000-09-22 | 2000-09-22 | Ericsson Telefon Ab L M | Optimization of a pipelined processor system |
EP1197847A3 (en) * | 2000-10-10 | 2003-05-21 | Nazomi Communications Inc. | Java hardware accelerator using microcode engine |
US7149878B1 (en) | 2000-10-30 | 2006-12-12 | Mips Technologies, Inc. | Changing instruction set architecture mode by comparison of current instruction execution address with boundary address register values |
US6738792B1 (en) | 2001-03-09 | 2004-05-18 | Advanced Micro Devices, Inc. | Parallel mask generator |
JP4542722B2 (ja) * | 2001-04-25 | 2010-09-15 | 富士通株式会社 | 命令処理方法 |
US7107439B2 (en) * | 2001-08-10 | 2006-09-12 | Mips Technologies, Inc. | System and method of controlling software decompression through exceptions |
US8769508B2 (en) | 2001-08-24 | 2014-07-01 | Nazomi Communications Inc. | Virtual machine hardware for RISC and CISC processors |
US7107584B2 (en) * | 2001-10-23 | 2006-09-12 | Microsoft Corporation | Data alignment between native and non-native shared data structures |
US20030093775A1 (en) * | 2001-11-14 | 2003-05-15 | Ronald Hilton | Processing of self-modifying code under emulation |
US7092869B2 (en) * | 2001-11-14 | 2006-08-15 | Ronald Hilton | Memory address prediction under emulation |
US7493470B1 (en) | 2001-12-07 | 2009-02-17 | Arc International, Plc | Processor apparatus and methods optimized for control applications |
US7278137B1 (en) | 2001-12-26 | 2007-10-02 | Arc International | Methods and apparatus for compiling instructions for a data processor |
EP1470476A4 (en) * | 2002-01-31 | 2007-05-30 | Arc Int | CONFIGURABLE DATA PROCESSOR WITH MULTI-LENGTH INSTRUCTION KIT ARCHITECTURE |
US7785340B2 (en) * | 2002-02-04 | 2010-08-31 | Boston Scientific Scimed, Inc. | Bonding sleeve for medical device |
US6977162B2 (en) * | 2002-03-01 | 2005-12-20 | Ravgen, Inc. | Rapid analysis of variations in a genome |
US6957321B2 (en) | 2002-06-19 | 2005-10-18 | Intel Corporation | Instruction set extension using operand bearing NOP instructions |
EP1387252B1 (en) * | 2002-07-31 | 2019-02-13 | Texas Instruments Incorporated | Instruction prefix to indicate system commands |
EP1387256B1 (en) * | 2002-07-31 | 2018-11-21 | Texas Instruments Incorporated | Program counter adjustment based on the detection of an instruction prefix |
US7349934B2 (en) * | 2002-12-20 | 2008-03-25 | Texas Instruments Incorporated | Processor system and method with combined data left and right shift operation |
US7444471B1 (en) | 2002-12-30 | 2008-10-28 | Transmeta Corporation | Method and system for using external storage to amortize CPU cycle utilization |
EP1447742A1 (en) | 2003-02-11 | 2004-08-18 | STMicroelectronics S.r.l. | Method and apparatus for translating instructions of an ARM-type processor into instructions for a LX-type processor |
US20040193845A1 (en) * | 2003-03-24 | 2004-09-30 | Sun Microsystems, Inc. | Stall technique to facilitate atomicity in processor execution of helper set |
US7219218B2 (en) * | 2003-03-31 | 2007-05-15 | Sun Microsystems, Inc. | Vector technique for addressing helper instruction groups associated with complex instructions |
US7917734B2 (en) * | 2003-06-30 | 2011-03-29 | Intel Corporation | Determining length of instruction with multiple byte escape code based on information from other than opcode byte |
US7707389B2 (en) * | 2003-10-31 | 2010-04-27 | Mips Technologies, Inc. | Multi-ISA instruction fetch unit for a processor, and applications thereof |
US7404178B2 (en) * | 2004-02-18 | 2008-07-22 | Hewlett-Packard Development Company, L.P. | ROM-embedded debugging of computer |
US7873815B2 (en) * | 2004-03-04 | 2011-01-18 | Qualcomm Incorporated | Digital signal processors with configurable dual-MAC and dual-ALU |
US20060101504A1 (en) * | 2004-11-09 | 2006-05-11 | Veveo.Tv, Inc. | Method and system for performing searches for television content and channels using a non-intrusive television interface and with reduced text input |
US20070266406A1 (en) * | 2004-11-09 | 2007-11-15 | Murali Aravamudan | Method and system for performing actions using a non-intrusive television with reduced text input |
US7895218B2 (en) * | 2004-11-09 | 2011-02-22 | Veveo, Inc. | Method and system for performing searches for television content using reduced text input |
US20060155961A1 (en) * | 2005-01-06 | 2006-07-13 | International Business Machines Corporation | Apparatus and method for reformatting instructions before reaching a dispatch point in a superscalar processor |
US7646886B2 (en) * | 2005-05-11 | 2010-01-12 | Lockheed Martin Corporation | Closely-spaced multiple targets detection using a regional window as a discriminant function |
US7543287B2 (en) * | 2005-06-30 | 2009-06-02 | Intel Corporation | Using a block device interface to invoke device controller functionality |
US7454492B2 (en) * | 2005-08-26 | 2008-11-18 | International Business Machines Corporation | Method and apparatus for configuring and modeling server information in an enterprise tooling environment |
US7779011B2 (en) | 2005-08-26 | 2010-08-17 | Veveo, Inc. | Method and system for dynamically processing ambiguous, reduced text search queries and highlighting results thereof |
US7788266B2 (en) | 2005-08-26 | 2010-08-31 | Veveo, Inc. | Method and system for processing ambiguous, multi-term search queries |
US20070074199A1 (en) * | 2005-09-27 | 2007-03-29 | Sebastian Schoenberg | Method and apparatus for delivering microcode updates through virtual machine operations |
US20070083736A1 (en) * | 2005-10-06 | 2007-04-12 | Aravindh Baktha | Instruction packer for digital signal processor |
US7644054B2 (en) * | 2005-11-23 | 2010-01-05 | Veveo, Inc. | System and method for finding desired results by incremental search using an ambiguous keypad with the input containing orthographic and typographic errors |
US7792666B2 (en) * | 2006-05-03 | 2010-09-07 | Sony Computer Entertainment Inc. | Translation block invalidation prehints in emulation of a target system on a host system |
US7739280B2 (en) | 2006-03-06 | 2010-06-15 | Veveo, Inc. | Methods and systems for selecting and presenting content based on user preference information extracted from an aggregate preference signature |
US8073860B2 (en) * | 2006-03-30 | 2011-12-06 | Veveo, Inc. | Method and system for incrementally selecting and providing relevant search engines in response to a user query |
EP4209927A1 (en) | 2006-04-20 | 2023-07-12 | Veveo, Inc. | User interface methods and systems for selecting and presenting content based on user navigation and selection actions associated with the content |
CA2989780C (en) | 2006-09-14 | 2022-08-09 | Veveo, Inc. | Methods and systems for dynamically rearranging search results into hierarchically organized concept clusters |
US7925986B2 (en) | 2006-10-06 | 2011-04-12 | Veveo, Inc. | Methods and systems for a linear character selection display interface for ambiguous text input |
US8078884B2 (en) | 2006-11-13 | 2011-12-13 | Veveo, Inc. | Method of and system for selecting and presenting content based on user identification |
US9177111B1 (en) | 2006-11-14 | 2015-11-03 | Hitachi Global Storage Technologies Netherlands B.V. | Systems and methods for protecting software |
WO2008148012A1 (en) | 2007-05-25 | 2008-12-04 | Veveo, Inc. | System and method for text disambiguation and context designation in incremental search |
US8943539B2 (en) | 2007-11-21 | 2015-01-27 | Rovi Guides, Inc. | Enabling a friend to remotely modify user data |
US8060356B2 (en) | 2007-12-19 | 2011-11-15 | Sony Computer Entertainment Inc. | Processor emulation using fragment level translation |
US8281109B2 (en) | 2007-12-27 | 2012-10-02 | Intel Corporation | Compressed instruction format |
US8028153B2 (en) * | 2008-08-14 | 2011-09-27 | International Business Machines Corporation | Data dependent instruction decode |
CN101853148B (zh) * | 2009-05-19 | 2014-04-23 | 威盛电子股份有限公司 | 适用于微处理器的装置及方法 |
CN101819517B (zh) * | 2009-05-19 | 2013-05-22 | 威盛电子股份有限公司 | 适用于微处理器的装置及方法 |
US9166714B2 (en) | 2009-09-11 | 2015-10-20 | Veveo, Inc. | Method of and system for presenting enriched video viewing analytics |
TWI424445B (zh) | 2009-12-29 | 2014-01-21 | Macronix Int Co Ltd | 指令解碼電路及其方法 |
US20110191332A1 (en) | 2010-02-04 | 2011-08-04 | Veveo, Inc. | Method of and System for Updating Locally Cached Content Descriptor Information |
WO2012103359A2 (en) | 2011-01-27 | 2012-08-02 | Soft Machines, Inc. | Hardware acceleration components for translating guest instructions to native instructions |
WO2012103253A2 (en) | 2011-01-27 | 2012-08-02 | Soft Machines, Inc. | Multilevel conversion table cache for translating guest instructions to native instructions |
WO2012103245A2 (en) | 2011-01-27 | 2012-08-02 | Soft Machines Inc. | Guest instruction block with near branching and far branching sequence construction to native instruction block |
WO2012103373A2 (en) | 2011-01-27 | 2012-08-02 | Soft Machines, Inc. | Variable caching structure for managing physical storage |
KR101612594B1 (ko) | 2011-01-27 | 2016-04-14 | 소프트 머신즈, 인크. | 프로세서의 변환 룩 어사이드 버퍼를 이용하는 게스트 명령-네이티브 명령 레인지 기반 매핑 |
WO2012103367A2 (en) | 2011-01-27 | 2012-08-02 | Soft Machines, Inc. | Guest to native block address mappings and management of native code storage |
US9141389B2 (en) | 2011-04-07 | 2015-09-22 | Via Technologies, Inc. | Heterogeneous ISA microprocessor with shared hardware ISA registers |
US9244686B2 (en) | 2011-04-07 | 2016-01-26 | Via Technologies, Inc. | Microprocessor that translates conditional load/store instructions into variable number of microinstructions |
US9043580B2 (en) | 2011-04-07 | 2015-05-26 | Via Technologies, Inc. | Accessing model specific registers (MSR) with different sets of distinct microinstructions for instructions of different instruction set architecture (ISA) |
US9645822B2 (en) | 2011-04-07 | 2017-05-09 | Via Technologies, Inc | Conditional store instructions in an out-of-order execution microprocessor |
US9274795B2 (en) | 2011-04-07 | 2016-03-01 | Via Technologies, Inc. | Conditional non-branch instruction prediction |
US9378019B2 (en) | 2011-04-07 | 2016-06-28 | Via Technologies, Inc. | Conditional load instructions in an out-of-order execution microprocessor |
US8880851B2 (en) | 2011-04-07 | 2014-11-04 | Via Technologies, Inc. | Microprocessor that performs X86 ISA and arm ISA machine language program instructions by hardware translation into microinstructions executed by common execution pipeline |
US8880857B2 (en) * | 2011-04-07 | 2014-11-04 | Via Technologies, Inc. | Conditional ALU instruction pre-shift-generated carry flag propagation between microinstructions in read-port limited register file microprocessor |
US9317288B2 (en) | 2011-04-07 | 2016-04-19 | Via Technologies, Inc. | Multi-core microprocessor that performs x86 ISA and ARM ISA machine language program instructions by hardware translation into microinstructions executed by common execution pipeline |
US9176733B2 (en) | 2011-04-07 | 2015-11-03 | Via Technologies, Inc. | Load multiple and store multiple instructions in a microprocessor that emulates banked registers |
US9146742B2 (en) | 2011-04-07 | 2015-09-29 | Via Technologies, Inc. | Heterogeneous ISA microprocessor that preserves non-ISA-specific configuration state when reset to different ISA |
US9292470B2 (en) | 2011-04-07 | 2016-03-22 | Via Technologies, Inc. | Microprocessor that enables ARM ISA program to access 64-bit general purpose registers written by x86 ISA program |
US8924695B2 (en) | 2011-04-07 | 2014-12-30 | Via Technologies, Inc. | Conditional ALU instruction condition satisfaction propagation between microinstructions in read-port limited register file microprocessor |
US9128701B2 (en) * | 2011-04-07 | 2015-09-08 | Via Technologies, Inc. | Generating constant for microinstructions from modified immediate field during instruction translation |
US9898291B2 (en) | 2011-04-07 | 2018-02-20 | Via Technologies, Inc. | Microprocessor with arm and X86 instruction length decoders |
US9336180B2 (en) | 2011-04-07 | 2016-05-10 | Via Technologies, Inc. | Microprocessor that makes 64-bit general purpose registers available in MSR address space while operating in non-64-bit mode |
US9032189B2 (en) | 2011-04-07 | 2015-05-12 | Via Technologies, Inc. | Efficient conditional ALU instruction in read-port limited register file microprocessor |
US8645618B2 (en) | 2011-07-14 | 2014-02-04 | Lsi Corporation | Flexible flash commands |
US8806112B2 (en) | 2011-07-14 | 2014-08-12 | Lsi Corporation | Meta data handling within a flash media controller |
JP5932347B2 (ja) * | 2012-01-18 | 2016-06-08 | ピーエスフォー ルクスコ エスエイアールエルPS4 Luxco S.a.r.l. | 半導体装置 |
CN103279325B (zh) * | 2013-03-11 | 2015-12-09 | 浙江大学 | 加密文本数据时可提高SoC处理器指令运算效率的方法 |
WO2014151652A1 (en) | 2013-03-15 | 2014-09-25 | Soft Machines Inc | Method and apparatus to allow early dependency resolution and data forwarding in a microprocessor |
CN105122206B (zh) | 2013-03-15 | 2018-11-09 | 英特尔公司 | 用于支持推测的访客返回地址栈仿真的方法和装置 |
US20140281398A1 (en) * | 2013-03-16 | 2014-09-18 | William C. Rash | Instruction emulation processors, methods, and systems |
US9792112B2 (en) | 2013-08-28 | 2017-10-17 | Via Technologies, Inc. | Propagation of microcode patches to multiple cores in multicore microprocessor |
US9465432B2 (en) | 2013-08-28 | 2016-10-11 | Via Technologies, Inc. | Multi-core synchronization mechanism |
US9891927B2 (en) | 2013-08-28 | 2018-02-13 | Via Technologies, Inc. | Inter-core communication via uncore RAM |
US10157164B2 (en) * | 2016-09-20 | 2018-12-18 | Qualcomm Incorporated | Hierarchical synthesis of computer machine instructions |
US11204768B2 (en) | 2019-11-06 | 2021-12-21 | Onnivation Llc | Instruction length based parallel instruction demarcator |
FR3106422B1 (fr) | 2020-01-20 | 2021-12-10 | Continental Automotive | Passerelle de communication de trames de données pour véhicule automobile |
JP2024056266A (ja) * | 2022-10-11 | 2024-04-23 | 富士通株式会社 | プロセッサ |
Family Cites Families (114)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US510341A (en) * | 1893-12-05 | Composition and process of producing same for commutator-brushes | ||
US3346851A (en) * | 1964-07-08 | 1967-10-10 | Control Data Corp | Simultaneous multiprocessing computer system |
US3789365A (en) * | 1971-06-03 | 1974-01-29 | Bunker Ramo | Processor interrupt system |
US3771138A (en) * | 1971-08-31 | 1973-11-06 | Ibm | Apparatus and method for serializing instructions from two independent instruction streams |
US3916388A (en) * | 1974-05-30 | 1975-10-28 | Ibm | Shifting apparatus for automatic data alignment |
US4084235A (en) * | 1975-04-14 | 1978-04-11 | Honeywell Information Systems Inc. | Emulation apparatus |
US4034349A (en) * | 1976-01-29 | 1977-07-05 | Sperry Rand Corporation | Apparatus for processing interrupts in microprocessing systems |
AU529675B2 (en) * | 1977-12-07 | 1983-06-16 | Honeywell Information Systems Incorp. | Cache memory unit |
US4315314A (en) * | 1977-12-30 | 1982-02-09 | Rca Corporation | Priority vectored interrupt having means to supply branch address directly |
US4200927A (en) * | 1978-01-03 | 1980-04-29 | International Business Machines Corporation | Multi-instruction stream branch processing mechanism |
US4189768A (en) * | 1978-03-16 | 1980-02-19 | International Business Machines Corporation | Operand fetch control improvement |
US4189772A (en) * | 1978-03-16 | 1980-02-19 | International Business Machines Corporation | Operand alignment controls for VFL instructions |
US4236206A (en) * | 1978-10-25 | 1980-11-25 | Digital Equipment Corporation | Central processor unit for executing instructions of variable length |
US4228495A (en) * | 1978-12-19 | 1980-10-14 | Allen-Bradley Company | Multiprocessor numerical control system |
JPS6041768B2 (ja) * | 1979-01-19 | 1985-09-18 | 株式会社日立製作所 | デ−タ処理装置 |
US4296470A (en) * | 1979-06-21 | 1981-10-20 | International Business Machines Corp. | Link register storage and restore system for use in an instruction pre-fetch micro-processor interrupt system |
JPS5616248A (en) * | 1979-07-17 | 1981-02-17 | Matsushita Electric Ind Co Ltd | Processing system for interruption |
CA1174370A (en) * | 1980-05-19 | 1984-09-11 | Hidekazu Matsumoto | Data processing unit with pipelined operands |
JPS5743239A (en) * | 1980-08-27 | 1982-03-11 | Hitachi Ltd | Data processor |
JPS6028015B2 (ja) * | 1980-08-28 | 1985-07-02 | 日本電気株式会社 | 情報処理装置 |
US4434461A (en) * | 1980-09-15 | 1984-02-28 | Motorola, Inc. | Microprocessor with duplicate registers for processing interrupts |
JPS5757345A (en) * | 1980-09-24 | 1982-04-06 | Toshiba Corp | Data controller |
US4654781A (en) * | 1981-10-02 | 1987-03-31 | Raytheon Company | Byte addressable memory for variable length instructions and data |
JPS58151655A (ja) * | 1982-03-03 | 1983-09-08 | Fujitsu Ltd | 情報処理装置 |
US4514803A (en) * | 1982-04-26 | 1985-04-30 | International Business Machines Corporation | Methods for partitioning mainframe instruction sets to implement microprocessor based emulation thereof |
JPS5932045A (ja) | 1982-08-16 | 1984-02-21 | Hitachi Ltd | 情報処理装置 |
US4587612A (en) * | 1982-10-22 | 1986-05-06 | International Business Machines Corporation | Accelerated instruction mapping external to source and target instruction streams for near realtime injection into the latter |
JPS59154546A (ja) * | 1983-02-24 | 1984-09-03 | Toshiba Corp | 情報処理装置 |
US4569016A (en) * | 1983-06-30 | 1986-02-04 | International Business Machines Corporation | Mechanism for implementing one machine cycle executable mask and rotate instructions in a primitive instruction set computing system |
US4800486A (en) * | 1983-09-29 | 1989-01-24 | Tandem Computers Incorporated | Multiple data patch CPU architecture |
US4807115A (en) * | 1983-10-07 | 1989-02-21 | Cornell Research Foundation, Inc. | Instruction issuing mechanism for processors with multiple functional units |
GB8329509D0 (en) * | 1983-11-04 | 1983-12-07 | Inmos Ltd | Computer |
US4629989A (en) * | 1983-11-10 | 1986-12-16 | General Electric Company | Patient alignment system for NMR studies |
US4720779A (en) * | 1984-06-28 | 1988-01-19 | Burroughs Corporation | Stored logic program scanner for a data processor having internal plural data and instruction streams |
US4766564A (en) * | 1984-08-13 | 1988-08-23 | International Business Machines Corporation | Dual putaway/bypass busses for multiple arithmetic units |
US5025368A (en) * | 1984-12-27 | 1991-06-18 | Sony Corporation | Microprocessor with option area adjacent CPU core facilitating interfacing with peripheral devices |
US4714994A (en) * | 1985-04-30 | 1987-12-22 | International Business Machines Corp. | Instruction prefetch buffer control |
JPH0762823B2 (ja) * | 1985-05-22 | 1995-07-05 | 株式会社日立製作所 | デ−タ処理装置 |
US4739471A (en) * | 1985-06-28 | 1988-04-19 | Hewlett-Packard Company | Method and means for moving bytes in a reduced instruction set computer |
US4722049A (en) * | 1985-10-11 | 1988-01-26 | Unisys Corporation | Apparatus for out-of-order program execution |
JPS62152043A (ja) * | 1985-12-26 | 1987-07-07 | Nec Corp | 命令コ−ドアクセス制御方式 |
JPS62165242A (ja) * | 1986-01-17 | 1987-07-21 | Toshiba Corp | プロセツサ |
DE3751503T2 (de) * | 1986-03-26 | 1996-05-09 | Hitachi Ltd | Datenprozessor in Pipelinestruktur mit der Fähigkeit mehrere Befehle parallel zu dekodieren und auszuführen. |
US4903196A (en) * | 1986-05-02 | 1990-02-20 | International Business Machines Corporation | Method and apparatus for guaranteeing the logical integrity of data in the general purpose registers of a complex multi-execution unit uniprocessor |
JPS6324428A (ja) * | 1986-07-17 | 1988-02-01 | Mitsubishi Electric Corp | キヤツシユメモリ |
US4766566A (en) * | 1986-08-18 | 1988-08-23 | International Business Machines Corp. | Performance enhancement scheme for a RISC type VLSI processor using dual execution units for parallel instruction processing |
US4841476A (en) * | 1986-10-06 | 1989-06-20 | International Business Machines Corporation | Extended floating point operations supporting emulation of source instruction execution |
US5133072A (en) * | 1986-11-13 | 1992-07-21 | Hewlett-Packard Company | Method for improved code generation in reduced instruction set computers |
JPS63131230A (ja) * | 1986-11-21 | 1988-06-03 | Hitachi Ltd | 情報処理装置 |
US4992934A (en) * | 1986-12-15 | 1991-02-12 | United Technologies Corporation | Reduced instruction set computing apparatus and methods |
CA1278382C (en) * | 1986-12-15 | 1990-12-27 | Brian J. Sprague | Reduced instruction set computing apparatus and methods |
US4814976C1 (en) * | 1986-12-23 | 2002-06-04 | Mips Tech Inc | Risc computer with unaligned reference handling and method for the same |
JPS63163930A (ja) * | 1986-12-26 | 1988-07-07 | Toshiba Corp | アライメント補正方式 |
US5226170A (en) * | 1987-02-24 | 1993-07-06 | Digital Equipment Corporation | Interface between processor and special instruction processor in digital data processing system |
US4992938A (en) * | 1987-07-01 | 1991-02-12 | International Business Machines Corporation | Instruction control mechanism for a computing system with register renaming, map table and queues indicating available registers |
US4926323A (en) * | 1988-03-03 | 1990-05-15 | Advanced Micro Devices, Inc. | Streamlined instruction processor |
US4992930A (en) * | 1988-05-09 | 1991-02-12 | Bull Hn Information Systems Inc. | Synchronous cache memory system incorporating tie-breaker apparatus for maintaining cache coherency using a duplicate directory |
US5003462A (en) * | 1988-05-31 | 1991-03-26 | International Business Machines Corporation | Apparatus and method for implementing precise interrupts on a pipelined processor with multiple functional units with separate address translation interrupt means |
US4897810A (en) * | 1988-06-13 | 1990-01-30 | Advanced Micro Devices, Inc. | Asynchronous interrupt status bit circuit |
JP3034257B2 (ja) * | 1988-06-22 | 2000-04-17 | 大日本印刷株式会社 | シャドウマスク製版用パターン及び製造方法 |
US5006980A (en) * | 1988-07-20 | 1991-04-09 | Digital Equipment Corporation | Pipelined digital CPU with deadlock resolution |
US5019967A (en) * | 1988-07-20 | 1991-05-28 | Digital Equipment Corporation | Pipeline bubble compression in a computer system |
JPH0673105B2 (ja) * | 1988-08-11 | 1994-09-14 | 株式会社東芝 | 命令パイプライン方式のマイクロプロセッサ |
US5101341A (en) * | 1988-08-25 | 1992-03-31 | Edgcore Technology, Inc. | Pipelined system for reducing instruction access time by accumulating predecoded instruction bits a FIFO |
JPH0638676B2 (ja) * | 1988-09-19 | 1994-05-18 | 松下電工株式会社 | ワイヤレス送信制御システム |
JP2810068B2 (ja) * | 1988-11-11 | 1998-10-15 | 株式会社日立製作所 | プロセッサシステム、コンピュータシステム及び命令処理方法 |
GB8828817D0 (en) * | 1988-12-09 | 1989-01-18 | Int Computers Ltd | Data processing apparatus |
US5127091A (en) * | 1989-01-13 | 1992-06-30 | International Business Machines Corporation | System for reducing delay in instruction execution by executing branch instructions in separate processor while dispatching subsequent instructions to primary processor |
US5075840A (en) * | 1989-01-13 | 1991-12-24 | International Business Machines Corporation | Tightly coupled multiprocessor instruction synchronization |
US5249273A (en) * | 1989-01-17 | 1993-09-28 | Fujitsu Limited | Microprocessor having a variable length instruction format |
US5148528A (en) * | 1989-02-03 | 1992-09-15 | Digital Equipment Corporation | Method and apparatus for simultaneously decoding three operands in a variable length instruction when one of the operands is also of variable length |
US4985825A (en) * | 1989-02-03 | 1991-01-15 | Digital Equipment Corporation | System for delaying processing of memory access exceptions until the execution stage of an instruction pipeline of a virtual memory system based digital computer |
US5113515A (en) * | 1989-02-03 | 1992-05-12 | Digital Equipment Corporation | Virtual instruction cache system using length responsive decoded instruction shifting and merging with prefetch buffer outputs to fill instruction buffer |
US5768575A (en) * | 1989-02-24 | 1998-06-16 | Advanced Micro Devices, Inc. | Semi-Autonomous RISC pipelines for overlapped execution of RISC-like instructions within the multiple superscalar execution units of a processor having distributed pipeline control for sepculative and out-of-order execution of complex instructions |
US5226126A (en) * | 1989-02-24 | 1993-07-06 | Nexgen Microsystems | Processor having plurality of functional units for orderly retiring outstanding operations based upon its associated tags |
GB2230116B (en) * | 1989-04-07 | 1993-02-17 | Intel Corp | An improvement for pipelined decoding of instructions in a pipelined processor |
CA2016068C (en) * | 1989-05-24 | 2000-04-04 | Robert W. Horst | Multiple instruction issue computer architecture |
JPH0314025A (ja) * | 1989-06-13 | 1991-01-22 | Nec Corp | 命令実行制御方式 |
EP0419105B1 (en) * | 1989-09-21 | 1997-08-13 | Texas Instruments Incorporated | Integrated circuit formed on a surface of a semiconductor substrate and method for constructing such an integrated circuit |
US5019937A (en) * | 1989-10-30 | 1991-05-28 | A. B. Chance Company | Circuit improvement apparatus having combination current limiting fuse and resettable vacuum switch to prevent single-phasing of three-phase loads |
JP2835103B2 (ja) * | 1989-11-01 | 1998-12-14 | 富士通株式会社 | 命令指定方法及び命令実行方式 |
US5487156A (en) * | 1989-12-15 | 1996-01-23 | Popescu; Valeri | Processor architecture having independently fetching issuing and updating operations of instructions which are sequentially assigned and stored in order fetched |
US5193206A (en) * | 1989-12-27 | 1993-03-09 | Motorola, Inc. | Reduce instruction set microprocessor |
US5168571A (en) * | 1990-01-24 | 1992-12-01 | International Business Machines Corporation | System for aligning bytes of variable multi-bytes length operand based on alu byte length and a number of unprocessed byte data |
US5230068A (en) * | 1990-02-26 | 1993-07-20 | Nexgen Microsystems | Cache memory system for dynamically altering single cache memory line as either branch target entry or pre-fetch instruction queue based upon instruction sequence |
DE69130588T2 (de) * | 1990-05-29 | 1999-05-27 | National Semiconductor Corp., Santa Clara, Calif. | Cache-Speicher von partiell decodierten Befehlen und Verfahren hierfür |
CA2038264C (en) | 1990-06-26 | 1995-06-27 | Richard James Eickemeyer | In-memory preprocessor for a scalable compound instruction set machine processor |
US5778423A (en) * | 1990-06-29 | 1998-07-07 | Digital Equipment Corporation | Prefetch instruction for improving performance in reduced instruction set processor |
US5155843A (en) * | 1990-06-29 | 1992-10-13 | Digital Equipment Corporation | Error transition mode for multi-processor system |
US5430862A (en) * | 1990-06-29 | 1995-07-04 | Bull Hn Information Systems Inc. | Emulation of CISC instructions by RISC instructions using two pipelined stages for overlapped CISC decoding and RISC execution |
US5163139A (en) * | 1990-08-29 | 1992-11-10 | Hitachi America, Ltd. | Instruction preprocessor for conditionally combining short memory instructions into virtual long instructions |
DE69130723T2 (de) * | 1990-10-05 | 1999-07-22 | Koninklijke Philips Electronics N.V., Eindhoven | Verarbeitungsgerät mit Speicherschaltung und eine Gruppe von Funktionseinheiten |
US5507030A (en) * | 1991-03-07 | 1996-04-09 | Digitial Equipment Corporation | Successive translation, execution and interpretation of computer program having code at unknown locations due to execution transfer instructions having computed destination addresses |
US5450575A (en) * | 1991-03-07 | 1995-09-12 | Digital Equipment Corporation | Use of stack depth to identify machine code mistakes |
US5307492A (en) * | 1991-03-07 | 1994-04-26 | Digital Equipment Corporation | Mapping assembly language argument list references in translating code for different machine architectures |
US5307504A (en) * | 1991-03-07 | 1994-04-26 | Digital Equipment Corporation | System and method for preserving instruction granularity when translating program code from a computer having a first architecture to a computer having a second reduced architecture during the occurrence of interrupts due to asynchronous events |
US5539911A (en) * | 1991-07-08 | 1996-07-23 | Seiko Epson Corporation | High-performance, superscalar-based computer system with out-of-order instruction execution |
KR100299691B1 (ko) | 1991-07-08 | 2001-11-22 | 구사마 사부로 | 확장가능알아이에스씨마이크로프로세서구조 |
US5438668A (en) * | 1992-03-31 | 1995-08-01 | Seiko Epson Corporation | System and method for extraction, alignment and decoding of CISC instructions into a nano-instruction bucket for execution by a RISC computer |
US5335460A (en) * | 1992-04-27 | 1994-08-09 | Smith Jr Joseph H | Tilt to clean gutter system |
DE69429061T2 (de) * | 1993-10-29 | 2002-07-18 | Advanced Micro Devices, Inc. | Superskalarmikroprozessoren |
US5574927A (en) * | 1994-03-25 | 1996-11-12 | International Meta Systems, Inc. | RISC architecture computer configured for emulation of the instruction set of a target computer |
US5819056A (en) * | 1995-10-06 | 1998-10-06 | Advanced Micro Devices, Inc. | Instruction buffer organization method and system |
US5778210A (en) * | 1996-01-11 | 1998-07-07 | Intel Corporation | Method and apparatus for recovering the state of a speculatively scheduled operation in a processor which cannot be executed at the speculated time |
US6138271A (en) * | 1996-06-26 | 2000-10-24 | Rockwell Technologies, Llc | Operating system for embedded computers |
JP3274608B2 (ja) * | 1996-07-12 | 2002-04-15 | 日本電気株式会社 | 携帯端末装置 |
US5832205A (en) * | 1996-08-20 | 1998-11-03 | Transmeta Corporation | Memory controller for a microprocessor for detecting a failure of speculation on the physical nature of a component being addressed |
US6442570B1 (en) * | 1997-10-27 | 2002-08-27 | Microsoft Corporation | Object identification and data communication during an object synchronization process |
US6671745B1 (en) * | 1998-03-23 | 2003-12-30 | Microsoft Corporation | Application program interfaces and structures in a resource limited operating system |
US6253309B1 (en) * | 1998-09-21 | 2001-06-26 | Advanced Micro Devices, Inc. | Forcing regularity into a CISC instruction set by padding instructions |
US6862617B1 (en) * | 1998-10-12 | 2005-03-01 | Microsoft Corp. | System and method for synchronizing objects between two devices |
US7032213B1 (en) * | 1999-09-01 | 2006-04-18 | Microsoft Corporation | Fixing incompatible applications using a light debugger |
US6959330B1 (en) * | 2000-05-16 | 2005-10-25 | Palmsource, Inc. | Sync-time read only memory image binding for limited resource devices |
WO2005107929A2 (en) * | 2004-04-22 | 2005-11-17 | Siemens Water Technologies Corp. | Filtration apparatus comprising a membrane bioreactor and a treatment vessel for digesting organic materials |
-
1992
- 1992-03-31 US US07/857,599 patent/US5438668A/en not_active Expired - Lifetime
-
1993
- 1993-03-30 JP JP51730693A patent/JP3547052B2/ja not_active Expired - Lifetime
- 1993-03-30 WO PCT/JP1993/000417 patent/WO1993020507A2/en active Application Filing
- 1993-03-30 DE DE69329644T patent/DE69329644T2/de not_active Expired - Lifetime
- 1993-03-30 EP EP93906870A patent/EP0636257B1/en not_active Expired - Lifetime
- 1993-03-30 EP EP00108579A patent/EP1028370B1/en not_active Expired - Lifetime
- 1993-03-30 KR KR1019940703361A patent/KR100343530B1/ko not_active IP Right Cessation
- 1993-03-30 DE DE69333630T patent/DE69333630T2/de not_active Expired - Lifetime
- 1993-03-30 KR KR10-2001-7005744A patent/KR100371929B1/ko not_active IP Right Cessation
-
1995
- 1995-05-12 US US08/440,225 patent/US5546552A/en not_active Expired - Lifetime
- 1995-06-02 US US08/460,272 patent/US5619666A/en not_active Expired - Lifetime
-
1997
- 1997-01-16 US US08/784,339 patent/US5983334A/en not_active Expired - Lifetime
-
1999
- 1999-09-22 US US09/401,860 patent/US6263423B1/en not_active Expired - Fee Related
-
2000
- 2000-01-17 JP JP2000007262A patent/JP2000215051A/ja not_active Withdrawn
- 2000-01-17 JP JP2000007261A patent/JP2000215050A/ja not_active Withdrawn
-
2002
- 2002-02-04 US US10/061,295 patent/US6954847B2/en not_active Expired - Fee Related
-
2005
- 2005-06-28 US US11/167,289 patent/US7343473B2/en not_active Expired - Fee Related
-
2008
- 2008-03-11 US US12/046,318 patent/US7664935B2/en not_active Expired - Fee Related
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001504957A (ja) * | 1996-09-26 | 2001-04-10 | トランスメタ・コーポレーション | 先進のプロセッサにおけるメモリ・データ・エリアシング方法および装置 |
Also Published As
Publication number | Publication date |
---|---|
DE69329644D1 (de) | 2000-12-14 |
US7343473B2 (en) | 2008-03-11 |
US5546552A (en) | 1996-08-13 |
EP0636257B1 (en) | 2000-11-08 |
KR100343530B1 (ko) | 2002-11-27 |
US5983334A (en) | 1999-11-09 |
EP1028370A2 (en) | 2000-08-16 |
US7664935B2 (en) | 2010-02-16 |
US6263423B1 (en) | 2001-07-17 |
EP1028370A3 (en) | 2002-02-20 |
KR100371929B1 (ko) | 2003-02-12 |
US5438668A (en) | 1995-08-01 |
KR950701100A (ko) | 1995-02-20 |
US6954847B2 (en) | 2005-10-11 |
DE69329644T2 (de) | 2001-03-01 |
US20030084270A1 (en) | 2003-05-01 |
EP0636257A1 (en) | 1995-02-01 |
WO1993020507A3 (en) | 1994-01-06 |
JP2000215050A (ja) | 2000-08-04 |
WO1993020507A2 (en) | 1993-10-14 |
JP2000215051A (ja) | 2000-08-04 |
EP1028370B1 (en) | 2004-09-15 |
US20080162880A1 (en) | 2008-07-03 |
US5619666A (en) | 1997-04-08 |
DE69333630D1 (de) | 2004-10-21 |
JP3547052B2 (ja) | 2004-07-28 |
DE69333630T2 (de) | 2005-09-22 |
US20050251653A1 (en) | 2005-11-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JPH07505968A (ja) | Cisc型からrisc型命令への変換のためのアライメント並びにデコーディング | |
KR100327777B1 (ko) | 다중명령 세트를 이용한 데이터 프로세싱 장치 | |
JPH07334361A (ja) | 命令を処理するためのパイプラインを有するマイクロプロセッサ装置およびそれにおいて用いるためのプログラムカウンタ値を発生する装置 | |
JPH03174626A (ja) | データ処理装置 | |
JPH01214932A (ja) | データ処理装置 | |
JPH0391029A (ja) | データ処理装置 | |
JPS6160459B2 (ja) | ||
JP3544330B2 (ja) | 命令ストリームの変換システム | |
JP3732233B2 (ja) | スーパースカラマイクロプロセッサ内で可変バイト長命令をプリデコードするための方法および装置 | |
TWI223773B (en) | Suppression of store checking | |
TWI222015B (en) | Mechanism for extending the number of registers in a microprocessor | |
TW200417926A (en) | Selective interrupt suppression | |
JPH1021071A (ja) | 複数の命令を処理するプロセッサ動作方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20040105 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20040220 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20040406 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20040409 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20080423 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20090423 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100423 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110423 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110423 Year of fee payment: 7 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120423 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120423 Year of fee payment: 8 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130423 Year of fee payment: 9 |