JP2015201216A - マイクロプロセッサ内の複数のレジスタ部を組み合わせる方法およびシステム - Google Patents
マイクロプロセッサ内の複数のレジスタ部を組み合わせる方法およびシステム Download PDFInfo
- Publication number
- JP2015201216A JP2015201216A JP2015107759A JP2015107759A JP2015201216A JP 2015201216 A JP2015201216 A JP 2015201216A JP 2015107759 A JP2015107759 A JP 2015107759A JP 2015107759 A JP2015107759 A JP 2015107759A JP 2015201216 A JP2015201216 A JP 2015201216A
- Authority
- JP
- Japan
- Prior art keywords
- register
- unit
- register unit
- resulting
- halfword
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30032—Movement instructions, e.g. MOVE, SHIFT, ROTATE, SHUFFLE
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/30003—Arrangements for executing specific machine instructions
- G06F9/30007—Arrangements for executing specific machine instructions to perform operations on data operands
- G06F9/30036—Instructions to perform operations on packed data, e.g. vector, tile or matrix operations
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/30105—Register structure
- G06F9/30112—Register structure comprising data of variable length
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/46—Multiprogramming arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Physics (AREA)
- Executing Machine-Instructions (AREA)
Abstract
Description
RD=combine(RS,RT)
命令の実行時に、レジスタ部RS510とレジスタ部RT520とが組み合わされ/連結されて、結果として、より大きい宛先レジスタ部RD530となり、レジスタ部RS510の中に存在するデータが、レジスタ部RD530の高い部分に入力されるようになり、レジスタ部RT520の中に存在するデータが、レジスタ部RD530の低い部分に入力されるようになる。例えば、RS510とRT520がともに、32ビット幅レジスタ部である場合、結果としての宛先レジスタ部RD530は、64ビット幅レジスタである。
RD=combine(RT[HL],RS[HL])
ただし、RT[HL]は、高いハーフワードHと、低いハーフワードLとを有するソースレジスタ部RTであり、RSは、高いハーフワードHと、低いハーフワードLとを有するソースレジスタ部RSである。
以下に本願発明の当初の特許請求の範囲に記載された発明を付記する。
[C1]コンピュータ可読媒体であって、処理システムにおいて実行されると、前記処理システムに、結果としてレジスタ部を形成するように、レジスタファイル構造から第1のレジスタ部および第2のレジスタ部を選択的に組み合わせるようにし、前記第1のレジスタ部と前記第2のレジスタ部は、前記レジスタファイル構造内で隣接せずに配置されている、前記媒体に含まれる複数の実行可能命令に関する命令を含む、コンピュータ可読媒体。
[C2]前記第1のレジスタ部内に存在するデータおよび前記第2のレジスタ部内に存在するデータは前記結果としてのレジスタ部の対応する部分の中に格納される、C1に記載のコンピュータ可読媒体。
[C3]前記第1のレジスタ部および前記第2のレジスタ部は32ビット幅レジスタ部であり、前記結果としてのレジスタ部は64ビット幅レジスタ部である、C2に記載のコンピュータ可読媒体。
[C4]前記第1のレジスタ部の第1のハーフワード部および前記第2のレジスタ部の第2のハーフワード部は前記結果としてのレジスタ部の対応する部分の中に格納される、C1に記載のコンピュータ可読媒体。
[C5]前記第1のハーフワード部および前記第2のハーフワード部は16ビット幅部であり、前記結果としてのレジスタ部は32ビット幅レジスタ部である、C4に記載のコンピュータ可読媒体。
[C6]方法であって、実行可能命令を受信し、および結果としてレジスタ部を形成するためレジスタファイル構造から第1のレジスタ部と第2のレジスタ部とを選択的に組み合わせるために前記命令を実行することを含み、前記第1のレジスタ部と前記第2のレジスタ部は前記レジスタファイル構造内で隣接せずに配置されている方法。
[C7]前記実行することは、前記第1のレジスタ部内に存在するデータおよび前記第2のレジスタ部内に存在するデータを前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納することをさらに含む、C6に記載の方法。
[C8]前記第1のレジスタ部および前記第2のレジスタ部は32ビット幅レジスタ部であり、前記結果としてのレジスタ部は64ビット幅レジスタ部である、C7に記載の方法。
[C9]前記実行することは、前記第1のレジスタ部の第1のハーフワード部、および前記第2のレジスタ部の第2のハーフワード部を前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納することをさらに含む、C6に記載の方法。
[C10]前記第1のハーフワード部および前記第2のハーフワード部は16ビット幅部であり、前記結果としてのレジスタ部は32ビット幅レジスタ部であるC9に記載の方法。
[C11]前記実行することは、前記第1のレジスタ部および前記第2のレジスタ部に関連するデータをメモリから取り出すこと、前記データを、前記第1のレジスタ部内および前記第2のレジスタ部内にそれぞれ格納すること、および前記結果としてのレジスタ部に前記データを選択的に組み合わせることをさらに含む、C6に記載の方法。
[C12]方法であって、処理部内のレジスタファイル構造から第1のレジスタ部および第2のレジスタ部を取り出し、前記第1のレジスタ部および前記第2のレジスタ部は前記レジスタファイル構造内で隣接せずに配置されており、結果としてのレジスタ部を形成するために、単一の命令の実行中に前記第1のレジスタ部と前記第2のレジスタ部とを選択的に組み合わせ、およびさらなる処理のために、前記結果としてのレジスタ部を前記レジスタファイル構造内に格納することを含む方法。
[C13]前記組み合わせることは、前記第1のレジスタ部と前記第2のレジスタ部とを組み合わせる前記命令を受信すること、および前記処理部内で前記命令を実行することをさらに含む、C12に記載の方法。
[C14]前記組み合わせることは、前記第1のレジスタ部内に存在するデータおよび前記第2のレジスタ部内に存在するデータを前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納することをさらに含む、C12に記載の方法。
[C15]前記第1のレジスタ部および前記第2のレジスタ部は、32ビット幅レジスタ部であり、前記結果としてのレジスタ部は64ビット幅レジスタ部である、C14に記載の方法。
[C16]前記組み合わせることは、前記第1のレジスタ部の第1のハーフワード部および前記第2のレジスタ部の第2のハーフワード部を前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納することをさらに含む、C12に記載の方法。
[C17]前記第1のハーフワード部および前記第2のハーフワード部は16ビット幅部であり、前記結果としてのレジスタ部は32ビット幅レジスタ部である、C16に記載の方法。
[C18]前記第1のレジスタ部および前記第2のレジスタ部に関連するデータをメモリから取り出すこと、前記データを前記第1のレジスタ部内および前記第2のレジスタ部内にそれぞれ格納すること、および前記結果としてのレジスタ部に前記データを選択的に組み合わせることをさらに含む、C12に記載の方法。
[C19]実行可能命令を含むコンピュータ可読媒体であって、処理システムにおいて実行されると、前記処理システムに、処理部内のレジスタファイル構造から第1のレジスタ部および第2のレジスタ部を取り出し、前記第1のレジスタ部および前記第2のレジスタ部は前記レジスタファイル構造内で隣接せずに配置されおり、単一の命令の実行中に結果としてのレジスタ部を形成するため、前記第1のレジスタ部と前記第2のレジスタ部とを選択的に組み合わせ、および前記結果としてのレジスタ部をさらなる処理のために前記レジスタファイル構造内に格納することを含む方法を実行させるようにするコンピュータ可読媒体。
[C20]前記組み合わせることは、前記第1のレジスタ部と前記第2のレジスタ部とを組み合わせる前記命令を受信すること、および前記処理部内で前記命令を実行することをさらに含む、C19に記載のコンピュータ可読媒体。
[C21]前記組み合わせることは、前記第1のレジスタ部内に存在するデータおよび前記第2のレジスタ部内に存在するデータを前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納することをさらに含む、C19に記載のコンピュータ可読媒体。
[C22]前記第1のレジスタ部および前記第2のレジスタ部は32ビット幅レジスタ部であり、前記結果としてのレジスタ部は64ビット幅レジスタ部である、C21に記載のコンピュータ可読媒体。
[C23]前記組み合わせることは、前記第1のレジスタ部の第1のハーフワード部および前記第2のレジスタ部の第2のハーフワード部を前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納することをさらに含む、C19に記載のコンピュータ可読媒体。
[C24]前記第1のハーフワード部および前記第2のハーフワード部は16ビット幅部であり、前記結果としてのレジスタ部は32ビット幅レジスタ部である、C23に記載のコンピュータ可読媒体。
[C25]前記方法は、前記第1のレジスタ部および前記第2のレジスタ部に関連するデータをメモリから取り出すこと、前記データを前記第1のレジスタ部内および前記第2のレジスタ部内にそれぞれ格納すること、および前記結果としてのレジスタ部に前記データを選択的に組み合わせる、ことをさらに含む、C19に記載のコンピュータ可読媒体。
[C26]集積回路であって、1つまたは複数の命令を含むパケットを格納するメモリと、および前記メモリに結合されたプロセッサとを含み、前記プロセッサは処理部および前記処理部に結合されたレジスタファイル構造とをさらに含み、前記処理部は、第1のレジスタ部と第2のレジスタ部とを前記レジスタファイル構造から取り出し、第1のレジスタ部と第2のレジスタ部は、前記第1のレジスタ部と前記第2のレジスタ部とを選択的に組み合わせ、単一の命令の実行中に結果としてのレジスタ部を形成し、そして前記結果としてのレジスタ部をさらなる処理のために前記レジスタファイル構造内に格納するため、前記レジスタファイル構造内で隣接せずに配置されている、集積回路。
[C27]前記処理部は前記第1のレジスタ部と前記第2のレジスタ部とを組み合わせる前記命令を前記メモリからさらに受信しそして前記命令を実行する、C26に記載の回路。
[C28]前記処理部は、前記第1のレジスタ部内に存在するデータおよび前記第2のレジスタ部内に存在するデータを前記結果としてのレジスタ部内の同一の幅の対応する部分の中にさらに格納する、C26に記載の回路。
[C29]前記第1のレジスタ部および前記第2のレジスタ部は32ビット幅レジスタ部であり、前記結果としてのレジスタ部は64ビット幅レジスタ部である、C28に記載の回路。
[C30]前記処理部は、前記第1のレジスタ部の第1のハーフワード部および前記第2のレジスタ部の第2のハーフワード部を前記結果としてのレジスタ部内の同一の幅の対応する部分の中にさらに格納する、C26に記載の回路。
[C31]前記第1のハーフワード部および前記第2のハーフワード部は16ビット幅部であり、前記結果としてのレジスタ部は32ビット幅レジスタ部である、C30に記載の回路。
[C32]前記メモリは前記第1のレジスタ部および前記第2のレジスタ部に関連するデータをさらに格納し、前記レジスタファイル構造は前記データをさらに取り出し前記データを前記第1のレジスタ部内および前記第2のレジスタ部内にそれぞれ格納し、前記処理部は前記データを前記結果としてのレジスタ部内に選択的にさらに組み合わせる、C26に記載の回路。
[C33]装置であって、処理部内のレジスタファイル構造から、前記レジスタファイル構造内で隣接せずに配置されている第1のレジスタ部と第2のレジスタ部とを取り出するための手段と、単一の命令の実行中に、結果としてレジスタ部を形成するために、前記第1のレジスタ部と前記第2のレジスタ部とを選択的に組み合わせる手段と、および前記結果としてのレジスタ部をさらなる処理のために前記レジスタファイル構造内に格納するための手段とを含む装置。
[C34]前記第1のレジスタ部と前記第2のレジスタ部とを組み合わせる前記命令を受信するための手段と、前記処理部内で前記命令を実行するための手段とをさらに含む、C33に記載の装置。
[C35]前記第1のレジスタ部内に存在するデータおよび前記第2のレジスタ部内に存在するデータを前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納するための手段をさらに含む、C33に記載の装置。
[C36]前記第1のレジスタ部および前記第2のレジスタ部は32ビット幅レジスタ部であり、前記結果としてのレジスタ部は、4ビット幅レジスタ部である、C35に記載の装置。
[C37]前記第1のレジスタ部の第1のハーフワード部、および前記第2のレジスタ部の第2のハーフワード部を、前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納するための手段をさらに含む、C33に記載の装置。
[C38]前記第1のハーフワード部および前記第2のハーフワード部は16ビット幅部であり、前記結果としてのレジスタ部は32ビット幅レジスタ部である、C37に記載の装置。
[C39]前記第1のレジスタ部および前記第2のレジスタ部に関連するデータをメモリから取り出するための手段と、前記データを、前記第1のレジスタ部内、および前記第2のレジスタ部内にそれぞれ格納するための手段と、前記結果としてのレジスタ部内に前記データを選択的に組み合わせるための手段とをさらに含む、C33に記載の装置。
Claims (39)
- コンピュータ可読媒体であって、
処理システムにおいて実行されると、前記処理システムに、結果としてレジスタ部を形成するように、レジスタファイル構造から第1のレジスタ部および第2のレジスタ部を選択的に組み合わせるようにし、前記第1のレジスタ部と前記第2のレジスタ部は、前記レジスタファイル構造内で隣接せずに配置されている、前記媒体に含まれる複数の実行可能命令に関する命令を含む、コンピュータ可読媒体。 - 前記第1のレジスタ部内に存在するデータおよび前記第2のレジスタ部内に存在するデータは前記結果としてのレジスタ部の対応する部分の中に格納される、請求項1に記載のコンピュータ可読媒体。
- 前記第1のレジスタ部および前記第2のレジスタ部は32ビット幅レジスタ部であり、前記結果としてのレジスタ部は64ビット幅レジスタ部である、請求項2に記載のコンピュータ可読媒体。
- 前記第1のレジスタ部の第1のハーフワード部および前記第2のレジスタ部の第2のハーフワード部は前記結果としてのレジスタ部の対応する部分の中に格納される、請求項1に記載のコンピュータ可読媒体。
- 前記第1のハーフワード部および前記第2のハーフワード部は16ビット幅部であり、前記結果としてのレジスタ部は32ビット幅レジスタ部である、請求項4に記載のコンピュータ可読媒体。
- 方法であって、
実行可能命令を受信し、および
結果としてレジスタ部を形成するためレジスタファイル構造から第1のレジスタ部と第2のレジスタ部とを選択的に組み合わせるために前記命令を実行することを含み、前記第1のレジスタ部と前記第2のレジスタ部は前記レジスタファイル構造内で隣接せずに配置されている方法。 - 前記実行することは、前記第1のレジスタ部内に存在するデータおよび前記第2のレジスタ部内に存在するデータを前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納することをさらに含む、請求項6に記載の方法。
- 前記第1のレジスタ部および前記第2のレジスタ部は32ビット幅レジスタ部であり、前記結果としてのレジスタ部は64ビット幅レジスタ部である、請求項7に記載の方法。
- 前記実行することは、前記第1のレジスタ部の第1のハーフワード部、および前記第2のレジスタ部の第2のハーフワード部を前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納することをさらに含む、請求項6に記載の方法。
- 前記第1のハーフワード部および前記第2のハーフワード部は16ビット幅部であり、前記結果としてのレジスタ部は32ビット幅レジスタ部である請求項9に記載の方法。
- 前記実行することは、
前記第1のレジスタ部および前記第2のレジスタ部に関連するデータをメモリから取り出すこと、
前記データを、前記第1のレジスタ部内および前記第2のレジスタ部内にそれぞれ格納すること、および
前記結果としてのレジスタ部に前記データを選択的に組み合わせることをさらに含む、請求項6に記載の方法。 - 方法であって、
処理部内のレジスタファイル構造から第1のレジスタ部および第2のレジスタ部を取り出し、前記第1のレジスタ部および前記第2のレジスタ部は前記レジスタファイル構造内で隣接せずに配置されており、
結果としてのレジスタ部を形成するために、単一の命令の実行中に前記第1のレジスタ部と前記第2のレジスタ部とを選択的に組み合わせ、および
さらなる処理のために、前記結果としてのレジスタ部を前記レジスタファイル構造内に格納することを含む方法。 - 前記組み合わせることは、
前記第1のレジスタ部と前記第2のレジスタ部とを組み合わせる前記命令を受信すること、および
前記処理部内で前記命令を実行することをさらに含む、請求項12に記載の方法。 - 前記組み合わせることは、前記第1のレジスタ部内に存在するデータおよび前記第2のレジスタ部内に存在するデータを前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納することをさらに含む、請求項12に記載の方法。
- 前記第1のレジスタ部および前記第2のレジスタ部は、32ビット幅レジスタ部であり、前記結果としてのレジスタ部は64ビット幅レジスタ部である、請求項14に記載の方法。
- 前記組み合わせることは、前記第1のレジスタ部の第1のハーフワード部および前記第2のレジスタ部の第2のハーフワード部を前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納することをさらに含む、請求項12に記載の方法。
- 前記第1のハーフワード部および前記第2のハーフワード部は16ビット幅部であり、前記結果としてのレジスタ部は32ビット幅レジスタ部である、請求項16に記載の方法。
- 前記第1のレジスタ部および前記第2のレジスタ部に関連するデータをメモリから取り出すこと、
前記データを前記第1のレジスタ部内および前記第2のレジスタ部内にそれぞれ格納すること、および
前記結果としてのレジスタ部に前記データを選択的に組み合わせることをさらに含む、請求項12に記載の方法。 - 実行可能命令を含むコンピュータ可読媒体であって、
処理システムにおいて実行されると、前記処理システムに、
処理部内のレジスタファイル構造から第1のレジスタ部および第2のレジスタ部を取り出し、前記第1のレジスタ部および前記第2のレジスタ部は前記レジスタファイル構造内で隣接せずに配置されおり、
単一の命令の実行中に結果としてのレジスタ部を形成するため、前記第1のレジスタ部と前記第2のレジスタ部とを選択的に組み合わせ、および
前記結果としてのレジスタ部をさらなる処理のために前記レジスタファイル構造内に格納する
ことを含む方法を実行させるようにするコンピュータ可読媒体。 - 前記組み合わせることは、
前記第1のレジスタ部と前記第2のレジスタ部とを組み合わせる前記命令を受信すること、および
前記処理部内で前記命令を実行することをさらに含む、
請求項19に記載のコンピュータ可読媒体。 - 前記組み合わせることは、
前記第1のレジスタ部内に存在するデータおよび前記第2のレジスタ部内に存在するデータを前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納することをさらに含む、請求項19に記載のコンピュータ可読媒体。 - 前記第1のレジスタ部および前記第2のレジスタ部は32ビット幅レジスタ部であり、前記結果としてのレジスタ部は64ビット幅レジスタ部である、請求項21に記載のコンピュータ可読媒体。
- 前記組み合わせることは、前記第1のレジスタ部の第1のハーフワード部および前記第2のレジスタ部の第2のハーフワード部を前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納することをさらに含む、請求項19に記載のコンピュータ可読媒体。
- 前記第1のハーフワード部および前記第2のハーフワード部は16ビット幅部であり、前記結果としてのレジスタ部は32ビット幅レジスタ部である、請求項23に記載のコンピュータ可読媒体。
- 前記方法は、
前記第1のレジスタ部および前記第2のレジスタ部に関連するデータをメモリから取り出すこと、
前記データを前記第1のレジスタ部内および前記第2のレジスタ部内にそれぞれ格納すること、および
前記結果としてのレジスタ部に前記データを選択的に組み合わせる、
ことをさらに含む、請求項19に記載のコンピュータ可読媒体。 - 集積回路であって、
1つまたは複数の命令を含むパケットを格納するメモリと、および
前記メモリに結合されたプロセッサとを含み、前記プロセッサは処理部および前記処理部に結合されたレジスタファイル構造とをさらに含み、
前記処理部は、第1のレジスタ部と第2のレジスタ部とを前記レジスタファイル構造から取り出し、第1のレジスタ部と第2のレジスタ部は、前記第1のレジスタ部と前記第2のレジスタ部とを選択的に組み合わせ、単一の命令の実行中に結果としてのレジスタ部を形成し、そして前記結果としてのレジスタ部をさらなる処理のために前記レジスタファイル構造内に格納するため、前記レジスタファイル構造内で隣接せずに配置されている、集積回路。 - 前記処理部は前記第1のレジスタ部と前記第2のレジスタ部とを組み合わせる前記命令を前記メモリからさらに受信しそして前記命令を実行する、請求項26に記載の回路。
- 前記処理部は、前記第1のレジスタ部内に存在するデータおよび前記第2のレジスタ部内に存在するデータを前記結果としてのレジスタ部内の同一の幅の対応する部分の中にさらに格納する、請求項26に記載の回路。
- 前記第1のレジスタ部および前記第2のレジスタ部は32ビット幅レジスタ部であり、前記結果としてのレジスタ部は64ビット幅レジスタ部である、請求項28に記載の回路。
- 前記処理部は、前記第1のレジスタ部の第1のハーフワード部および前記第2のレジスタ部の第2のハーフワード部を前記結果としてのレジスタ部内の同一の幅の対応する部分の中にさらに格納する、請求項26に記載の回路。
- 前記第1のハーフワード部および前記第2のハーフワード部は16ビット幅部であり、前記結果としてのレジスタ部は32ビット幅レジスタ部である、請求項30に記載の回路。
- 前記メモリは前記第1のレジスタ部および前記第2のレジスタ部に関連するデータをさらに格納し、前記レジスタファイル構造は前記データをさらに取り出し前記データを前記第1のレジスタ部内および前記第2のレジスタ部内にそれぞれ格納し、前記処理部は前記データを前記結果としてのレジスタ部内に選択的にさらに組み合わせる、請求項26に記載の回路。
- 装置であって、
処理部内のレジスタファイル構造から、前記レジスタファイル構造内で隣接せずに配置されている第1のレジスタ部と第2のレジスタ部とを取り出するための手段と、
単一の命令の実行中に、結果としてレジスタ部を形成するために、前記第1のレジスタ部と前記第2のレジスタ部とを選択的に組み合わせる手段と、および
前記結果としてのレジスタ部をさらなる処理のために前記レジスタファイル構造内に格納するための手段と
を含む装置。 - 前記第1のレジスタ部と前記第2のレジスタ部とを組み合わせる前記命令を受信するための手段と、
前記処理部内で前記命令を実行するための手段と
をさらに含む、請求項33に記載の装置。 - 前記第1のレジスタ部内に存在するデータおよび前記第2のレジスタ部内に存在するデータを前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納するための手段をさらに含む、請求項33に記載の装置。
- 前記第1のレジスタ部および前記第2のレジスタ部は32ビット幅レジスタ部であり、前記結果としてのレジスタ部は、4ビット幅レジスタ部である、請求項35に記載の装置。
- 前記第1のレジスタ部の第1のハーフワード部、および前記第2のレジスタ部の第2のハーフワード部を、前記結果としてのレジスタ部内の同一の幅の対応する部分の中に格納するための手段をさらに含む、請求項33に記載の装置。
- 前記第1のハーフワード部および前記第2のハーフワード部は16ビット幅部であり、前記結果としてのレジスタ部は32ビット幅レジスタ部である、請求項37に記載の装置。
- 前記第1のレジスタ部および前記第2のレジスタ部に関連するデータをメモリから取り出するための手段と、
前記データを、前記第1のレジスタ部内、および前記第2のレジスタ部内にそれぞれ格納するための手段と、
前記結果としてのレジスタ部内に前記データを選択的に組み合わせるための手段とをさらに含む、請求項33に記載の装置。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US11/498,627 US8417922B2 (en) | 2006-08-02 | 2006-08-02 | Method and system to combine multiple register units within a microprocessor |
| US11/498,627 | 2006-08-02 |
Related Parent Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2013103471A Division JP2013218709A (ja) | 2006-08-02 | 2013-05-15 | マイクロプロセッサ内の複数のレジスタ部を組み合わせる方法およびシステム |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2017038550A Division JP2017138993A (ja) | 2006-08-02 | 2017-03-01 | マイクロプロセッサ内の複数のレジスタ部を組み合わせる方法およびシステム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2015201216A true JP2015201216A (ja) | 2015-11-12 |
| JP2015201216A5 JP2015201216A5 (ja) | 2016-01-28 |
Family
ID=38745271
Family Applications (5)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2009523009A Withdrawn JP2009545823A (ja) | 2006-08-02 | 2007-07-31 | マイクロプロセッサ内の複数のレジスタ部を組み合わせる方法およびシステム |
| JP2013103471A Withdrawn JP2013218709A (ja) | 2006-08-02 | 2013-05-15 | マイクロプロセッサ内の複数のレジスタ部を組み合わせる方法およびシステム |
| JP2013125449A Active JP5680709B2 (ja) | 2006-08-02 | 2013-06-14 | マイクロプロセッサ内の複数のレジスタ部を組み合わせる方法およびシステム |
| JP2015107759A Withdrawn JP2015201216A (ja) | 2006-08-02 | 2015-05-27 | マイクロプロセッサ内の複数のレジスタ部を組み合わせる方法およびシステム |
| JP2017038550A Pending JP2017138993A (ja) | 2006-08-02 | 2017-03-01 | マイクロプロセッサ内の複数のレジスタ部を組み合わせる方法およびシステム |
Family Applications Before (3)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2009523009A Withdrawn JP2009545823A (ja) | 2006-08-02 | 2007-07-31 | マイクロプロセッサ内の複数のレジスタ部を組み合わせる方法およびシステム |
| JP2013103471A Withdrawn JP2013218709A (ja) | 2006-08-02 | 2013-05-15 | マイクロプロセッサ内の複数のレジスタ部を組み合わせる方法およびシステム |
| JP2013125449A Active JP5680709B2 (ja) | 2006-08-02 | 2013-06-14 | マイクロプロセッサ内の複数のレジスタ部を組み合わせる方法およびシステム |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2017038550A Pending JP2017138993A (ja) | 2006-08-02 | 2017-03-01 | マイクロプロセッサ内の複数のレジスタ部を組み合わせる方法およびシステム |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US8417922B2 (ja) |
| EP (1) | EP2069913A1 (ja) |
| JP (5) | JP2009545823A (ja) |
| KR (1) | KR101048234B1 (ja) |
| CN (1) | CN101495959B (ja) |
| TW (1) | TW200825906A (ja) |
| WO (1) | WO2008016902A1 (ja) |
Families Citing this family (16)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8898436B2 (en) * | 2009-04-20 | 2014-11-25 | Oracle America, Inc. | Method and structure for solving the evil-twin problem |
| CN102457268B (zh) * | 2010-10-15 | 2014-10-22 | 北京德威特继保自动化科技股份有限公司 | 32位捕获寄存器的实现方法 |
| KR101801920B1 (ko) | 2010-12-17 | 2017-12-28 | 삼성전자주식회사 | 동적 클러스터링이 가능한 레지스터 파일 및 동적 클러스터링이 가능한 레지스터 파일을 이용한 재구성 가능 컴퓨팅 장치 |
| EP2798459B1 (en) * | 2011-12-28 | 2019-02-27 | Intel Corporation | Reducing the number of io requests to memory when executing a program that iteratively processes contiguous data |
| US9323532B2 (en) | 2012-07-18 | 2016-04-26 | International Business Machines Corporation | Predicting register pairs |
| US9323529B2 (en) | 2012-07-18 | 2016-04-26 | International Business Machines Corporation | Reducing register read ports for register pairs |
| US9298459B2 (en) * | 2012-07-18 | 2016-03-29 | International Business Machines Corporation | Managing register pairing |
| US9026791B2 (en) | 2013-03-11 | 2015-05-05 | Qualcomm Incorporated | Linear feedback shift register (LFSR) |
| US10228941B2 (en) * | 2013-06-28 | 2019-03-12 | Intel Corporation | Processors, methods, and systems to access a set of registers as either a plurality of smaller registers or a combined larger register |
| US9582419B2 (en) * | 2013-10-25 | 2017-02-28 | Arm Limited | Data processing device and method for interleaved storage of data elements |
| US9886276B2 (en) * | 2014-10-10 | 2018-02-06 | Arm Limited | System register access |
| US9952865B2 (en) * | 2015-04-04 | 2018-04-24 | Texas Instruments Incorporated | Low energy accelerator processor architecture with short parallel instruction word and non-orthogonal register data file |
| US10162634B2 (en) * | 2016-05-20 | 2018-12-25 | International Business Machines Corporation | Extendable conditional permute SIMD instructions |
| CN107621949A (zh) * | 2016-07-15 | 2018-01-23 | 龙芯中科技术有限公司 | 内存拷贝方法及装置 |
| US10747531B1 (en) * | 2018-04-03 | 2020-08-18 | Xilinx, Inc. | Core for a data processing engine in an integrated circuit |
| US20230205528A1 (en) * | 2021-12-23 | 2023-06-29 | Intel Corporation | Apparatus and method for vector packed concatenate and shift of specific portions of quadwords |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH07152559A (ja) * | 1993-10-18 | 1995-06-16 | Cyrix Corp | パイプ制御及びレジスタ変換機能を増強したスーパースカラーパイプライン式のプロセッサ |
| JPH0944356A (ja) * | 1995-08-03 | 1997-02-14 | Hitachi Ltd | プロセッサおよびデータ処理装置 |
| JP2002117009A (ja) * | 2000-06-30 | 2002-04-19 | Intel Corp | 配列されたsimdのための汎用レジスタファイルアーキテクチャ |
| JP2002132499A (ja) * | 2000-10-27 | 2002-05-10 | Hitachi Ltd | データ処理装置及び記録媒体 |
| JP2005174301A (ja) * | 2003-12-09 | 2005-06-30 | Arm Ltd | レジスタとメモリとの間でデータを移動するためのデータ処理装置及び方法 |
| JP2005535966A (ja) * | 2002-08-09 | 2005-11-24 | インテル・コーポレーション | アライメントまたはブロードキャスト命令を含むマルチメディア・コプロセッサの制御メカニズム |
Family Cites Families (27)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5564056A (en) | 1994-03-01 | 1996-10-08 | Intel Corporation | Method and apparatus for zero extension and bit shifting to preserve register parameters in a microprocessor utilizing register renaming |
| JPH07262010A (ja) * | 1994-03-25 | 1995-10-13 | Hitachi Ltd | 演算処理装置および演算処理方法 |
| DE69524862T2 (de) | 1995-05-16 | 2002-11-07 | Oce-Technologies B.V., Venlo | Druckersystem, das ein Kommunikationssteuerungsgerät beinhaltet |
| GB9509987D0 (en) | 1995-05-17 | 1995-07-12 | Sgs Thomson Microelectronics | Manipulation of data |
| WO1997009671A1 (en) | 1995-09-01 | 1997-03-13 | Philips Electronics North America Corporation | Method and apparatus for custom operations of a processor |
| US5854939A (en) * | 1996-11-07 | 1998-12-29 | Atmel Corporation | Eight-bit microcontroller having a risc architecture |
| US6052522A (en) * | 1997-10-30 | 2000-04-18 | Infineon Technologies North America Corporation | Method and apparatus for extracting data stored in concatenated registers |
| US6041404A (en) * | 1998-03-31 | 2000-03-21 | Intel Corporation | Dual function system and method for shuffling packed data elements |
| US6247112B1 (en) * | 1998-12-30 | 2001-06-12 | Sony Corporation | Bit manipulation instructions |
| US6463525B1 (en) * | 1999-08-16 | 2002-10-08 | Sun Microsystems, Inc. | Merging single precision floating point operands |
| US6631460B1 (en) * | 2000-04-27 | 2003-10-07 | Institute For The Development Of Emerging Architectures, L.L.C. | Advanced load address table entry invalidation based on register address wraparound |
| WO2001086431A1 (en) | 2000-05-05 | 2001-11-15 | Lee Ruby B | A method and system for performing subword permutation instructions for use in two-dimensional multimedia processing |
| JP3779540B2 (ja) * | 2000-11-08 | 2006-05-31 | 株式会社ルネサステクノロジ | 複数レジスタ指定が可能なsimd演算方式 |
| US7228403B2 (en) * | 2000-12-23 | 2007-06-05 | International Business Machines Corporation | Method for handling 32 bit results for an out-of-order processor with a 64 bit architecture |
| JP3776732B2 (ja) * | 2001-02-02 | 2006-05-17 | 株式会社東芝 | プロセッサ装置 |
| US7103756B2 (en) | 2002-09-30 | 2006-09-05 | Hewlett-Packard Development Company, L.P. | Data processor with individually writable register subword locations |
| GB2409066B (en) | 2003-12-09 | 2006-09-27 | Advanced Risc Mach Ltd | A data processing apparatus and method for moving data between registers and memory |
| GB2409064B (en) | 2003-12-09 | 2006-09-13 | Advanced Risc Mach Ltd | A data processing apparatus and method for performing in parallel a data processing operation on data elements |
| JP4202244B2 (ja) | 2003-12-22 | 2008-12-24 | Necエレクトロニクス株式会社 | Vliw型dsp,及びその動作方法 |
| US7376813B2 (en) * | 2004-03-04 | 2008-05-20 | Texas Instruments Incorporated | Register move instruction for section select of source operand |
| US7177876B2 (en) * | 2004-03-04 | 2007-02-13 | Texas Instruments Incorporated | Speculative load of look up table entries based upon coarse index calculation in parallel with fine index calculation |
| US7237096B1 (en) * | 2004-04-05 | 2007-06-26 | Sun Microsystems, Inc. | Storing results of producer instructions to facilitate consumer instruction dependency tracking |
| WO2005119439A2 (en) | 2004-06-01 | 2005-12-15 | The Regents Of The University Of California | Retargetable instruction set simulators |
| US8127117B2 (en) | 2006-05-10 | 2012-02-28 | Qualcomm Incorporated | Method and system to combine corresponding half word units from multiple register units within a microprocessor |
| US8445994B2 (en) | 2009-05-07 | 2013-05-21 | Qualcomm Incorporated | Discontinuous thin semiconductor wafer surface features |
| US20100314725A1 (en) | 2009-06-12 | 2010-12-16 | Qualcomm Incorporated | Stress Balance Layer on Semiconductor Wafer Backside |
| US8076762B2 (en) | 2009-08-13 | 2011-12-13 | Qualcomm Incorporated | Variable feature interface that induces a balanced stress to prevent thin die warpage |
-
2006
- 2006-08-02 US US11/498,627 patent/US8417922B2/en active Active
-
2007
- 2007-07-31 CN CN2007800282684A patent/CN101495959B/zh active Active
- 2007-07-31 KR KR1020097004441A patent/KR101048234B1/ko active Active
- 2007-07-31 JP JP2009523009A patent/JP2009545823A/ja not_active Withdrawn
- 2007-07-31 WO PCT/US2007/074820 patent/WO2008016902A1/en not_active Ceased
- 2007-07-31 EP EP07840609A patent/EP2069913A1/en not_active Withdrawn
- 2007-08-02 TW TW096128461A patent/TW200825906A/zh unknown
-
2013
- 2013-05-15 JP JP2013103471A patent/JP2013218709A/ja not_active Withdrawn
- 2013-06-14 JP JP2013125449A patent/JP5680709B2/ja active Active
-
2015
- 2015-05-27 JP JP2015107759A patent/JP2015201216A/ja not_active Withdrawn
-
2017
- 2017-03-01 JP JP2017038550A patent/JP2017138993A/ja active Pending
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH07152559A (ja) * | 1993-10-18 | 1995-06-16 | Cyrix Corp | パイプ制御及びレジスタ変換機能を増強したスーパースカラーパイプライン式のプロセッサ |
| JPH0944356A (ja) * | 1995-08-03 | 1997-02-14 | Hitachi Ltd | プロセッサおよびデータ処理装置 |
| JP2002117009A (ja) * | 2000-06-30 | 2002-04-19 | Intel Corp | 配列されたsimdのための汎用レジスタファイルアーキテクチャ |
| JP2002132499A (ja) * | 2000-10-27 | 2002-05-10 | Hitachi Ltd | データ処理装置及び記録媒体 |
| JP2005535966A (ja) * | 2002-08-09 | 2005-11-24 | インテル・コーポレーション | アライメントまたはブロードキャスト命令を含むマルチメディア・コプロセッサの制御メカニズム |
| JP2005174301A (ja) * | 2003-12-09 | 2005-06-30 | Arm Ltd | レジスタとメモリとの間でデータを移動するためのデータ処理装置及び方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| CN101495959A (zh) | 2009-07-29 |
| JP2009545823A (ja) | 2009-12-24 |
| TW200825906A (en) | 2008-06-16 |
| KR20090042294A (ko) | 2009-04-29 |
| JP2013218709A (ja) | 2013-10-24 |
| EP2069913A1 (en) | 2009-06-17 |
| JP5680709B2 (ja) | 2015-03-04 |
| JP2013242879A (ja) | 2013-12-05 |
| KR101048234B1 (ko) | 2011-07-08 |
| US8417922B2 (en) | 2013-04-09 |
| JP2017138993A (ja) | 2017-08-10 |
| CN101495959B (zh) | 2012-04-25 |
| US20080184007A1 (en) | 2008-07-31 |
| WO2008016902A1 (en) | 2008-02-07 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP5680709B2 (ja) | マイクロプロセッサ内の複数のレジスタ部を組み合わせる方法およびシステム | |
| JP6242615B2 (ja) | マイクロプロセッサ内において複数のレジスタユニットからの対応する半語ユニットを結合するための方法及びシステム | |
| TWI489382B (zh) | 改良的萃取指令背景之設備及方法 | |
| CN108319559B (zh) | 用于控制矢量内存存取的数据处理装置及方法 | |
| JPH10232779A (ja) | 命令並列処理方法及び装置 | |
| US11714641B2 (en) | Vector generating instruction for generating a vector comprising a sequence of elements that wraps as required | |
| CN112559037B (zh) | 一种指令执行方法、单元、装置及系统 | |
| US6055628A (en) | Microprocessor with a nestable delayed branch instruction without branch related pipeline interlocks | |
| JPH10143365A (ja) | 並列処理装置及びその命令発行方式 | |
| JP2003005954A (ja) | データ処理装置およびその制御方法 | |
| US20040078553A1 (en) | Pipelined processing | |
| US6922760B2 (en) | Distributed result system for high-performance wide-issue superscalar processor | |
| EP1050800A1 (en) | A pipelined execution unit | |
| JP3473506B2 (ja) | パイプライン処理装置 | |
| JP2002073329A (ja) | プロセッサ | |
| JP2004152049A (ja) | データ処理装置 | |
| JP2005134987A (ja) | パイプライン演算処理装置 | |
| JP2002123389A (ja) | データ処理装置 | |
| JPH1165923A (ja) | 演算処理装置およびメモリアクセス方法 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20151203 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20160614 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20160705 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161005 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20161101 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20170301 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20170313 |
|
| A912 | Re-examination (zenchi) completed and case transferred to appeal board |
Free format text: JAPANESE INTERMEDIATE CODE: A912 Effective date: 20170324 |
|
| A761 | Written withdrawal of application |
Free format text: JAPANESE INTERMEDIATE CODE: A761 Effective date: 20170519 |