JP2005332361A5 - - Google Patents
Download PDFInfo
- Publication number
- JP2005332361A5 JP2005332361A5 JP2004343921A JP2004343921A JP2005332361A5 JP 2005332361 A5 JP2005332361 A5 JP 2005332361A5 JP 2004343921 A JP2004343921 A JP 2004343921A JP 2004343921 A JP2004343921 A JP 2004343921A JP 2005332361 A5 JP2005332361 A5 JP 2005332361A5
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- program
- program instructions
- data path
- data processing
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Claims (49)
- プログラム命令の中の1つまたは複数の命令フィールドを復号して少なくともいくつかの制御信号を発生するように動作可能な命令復号器と、
前記制御信号に応答し、前記プログラム命令によって指定されたそれぞれのデータ処理オペレーションを独立して並列に実行する複数のデータ経路構成要素であって、前記命令復号器によって復号された少なくともいくつかのプログラム命令は、それぞれのデータ経路構成要素のための制御命令が独立に指定されることを可能にする前記複数のデータ経路構成要素と
を含み、
前記命令復号器は、データ経路構成要素によって実行されるべき所与のデータ処理オペレーションが、異なるプログラム命令において異なって符号化された命令フィールドを使用して指定されうるように動作可能であるデータ処理装置。 - 請求項1に記載の装置において、前記データ処理オペレーションを表す前記異なって符号化された命令フィールドは、前記異なるプログラム命令の中に異なるビット長を有する前記装置。
- 請求項1に記載の装置において、前記データ処理オペレーションを表す前記異なって符号化された命令フィールドは、前記異なるプログラム命令の中に異なるビット位置を有する前記装置。
- 請求項1に記載の装置において、前記プログラム命令は複数の命令セットに分割され、前記命令復号器は、プログラム命令の中の少なくとも命令セット識別フィールドに応答して、前記プログラム命令の中のどのビットが、どのデータ経路構成要素に対する命令フィールドに対応するかを制御する前記装置。
- 請求項1に記載の装置において、前記プログラム命令は、可変プログラム命令長を有し、前記命令復号器は、前記命令セット識別子に応答してプログラム命令のプログラム命令長を決定する前記装置。
- 請求項1に記載の装置において、前記異なって符号化された命令フィールドは、前記データ経路構成要素によって実行されうるデータ処理オペレーションの異なるセットを表すように動作可能である前記装置。
- 請求項6に記載の装置において、プログラム命令の中の前記異なって符号化された命令フィールドの少なくとも1つは、異なるプログラム命令の中の前記異なって符号化された命令フィールドの異なる1つによって表されうるデータ処理オペレーションのサブセットを表すように動作可能である前記装置。
- 請求項7に記載の装置において、前記サブセットは、データ処理オペレーションの前記最大のセットと比較して減少したオペランド範囲を有する前記装置。
- 請求項8に記載の装置において、前記オペランド範囲は、
レジスタ指定子と、
プログラムの中の実行点におけるジャンプを表すジャンプアドレス指定子と、
アラインメント指定子と、
即値と、
の中の1つである前記装置。 - 請求項1に記載の装置において、プログラム命令自身の中の少なくとも1つの命令フィールドが、前記複数のデータ経路構成要素のうちのどれが前記少なくとも1つの命令フィールドによって制御されるかを指定する前記装置。
- 請求項1に記載の装置において、異なるプログラム命令に応答して、前記複数のデータ経路構成要素の可変個数のデータ経路構成要素が、アクティブであるかまたは非アクティブである前記装置。
- 請求項11に記載の装置において、所与のデータ経路構成要素に対して、データ処理オペレーションが指定されていないかまたはペンディングになっている場合、前記所与のデータ経路構成要素は非アクティブであり、Nopオペレーションを行なう前記装置。
- 請求項5に記載の装置であって、前記プログラム命令を格納するように動作可能であるとともに固定長メモリアクセスで可読な命令メモリを含む前記装置。
- 請求項13に記載の装置において、固定長メモリアクセスは、複数のプログラム命令の少なくともいくつかの部分を含む前記装置。
- 請求項14に記載の装置であって、前記命令復号器に供給するための所定位置に前記メモリアクセスの中のプログラム命令を揃えるように動作可能なローテータとプログラムカウンタ増分器(incrementer)とを含む前記装置。
- 請求項5に記載の装置であって、前記命令復号器に供給するための所定位置に前記メモリアクセスの中のプログラム命令を揃えるように動作可能なローテータとプログラムカウンタ増分器とを含み、前記ローテータは、前記命令セット識別子に応答して、前記プログラム命令を揃えるためにいかなる回転を与えるべきかを決定する前記装置。
- プログラム命令の中の1つまたは複数の命令フィールドを復号して少なくともいくつかの制御信号を発生するステップと、
前記制御信号に応答して複数のデータ経路構成要素を制御し、前記プログラム命令によって指定されたそれぞれのデータ処理オペレーションを並列に独立して実行し、少なくともいくつかのプログラム命令はそれぞれの各データ経路構成要素に対する制御信号が独立して指定されることを可能にするステップと
を含み、
データ経路構成要素によって行なわれる所与のデータ処理オペレーションは、異なるプログラム命令の中で異なって符号化された命令フィールドを使用して指定されうる方法。 - 請求項17に記載の方法において、前記データ処理オペレーションを表す前記異なって符号化された命令フィールドは、前記異なるプログラム命令の中に異なるビット長を有する前記方法。
- 請求項17に記載の方法において、前記データ処理オペレーションを表す前記異なって符号化された命令フィールドは、前記異なるプログラム命令の中に異なるビット位置を有する前記方法。
- 請求項17に記載の方法において、前記プログラム命令は複数の命令セットに分割され、前記命令復号器は、プログラム命令の中の少なくとも命令セット識別フィールドに応答して、前記プログラム命令の中のどのビットが、どのデータ経路構成要素に対する命令フィールドに対応するかを制御する前記方法。
- 請求項17に記載の方法において、前記プログラム命令は可変プログラム命令長を有し、前記命令復号器は、前記命令セット識別子に応答してプログラム命令のプログラム命令長を決定する前記方法。
- 請求項17に記載の方法において、前記異なって符号化された命令フィールドは、前記データ経路構成要素によって実行されうるデータ処理オペレーションの異なるセットを表すように動作可能である前記方法。
- 請求項22に記載の方法において、プログラム命令の中の少なくとも1つの前記異なって符号化された命令フィールドは、異なるプログラム命令の中の前記異なって符号化された命令フィールドの異なる1つによって表されうるデータ処理オペレーションのサブセットを表すように動作可能である前記方法。
- 請求項23に記載の方法において、前記サブセットは、データ処理オペレーションの前記最大のセットと比較して減少したオペランド範囲を有する前記方法。
- 請求項24に記載の方法において、前記オペランド範囲は、
レジスタ指定子と、
プログラムの中の実行点におけるジャンプを表すジャンプアドレス指定子と、
アラインメント指定子と、
即値と、
の中の1つである前記方法。 - 請求項17に記載の方法において、プログラム命令自身の中の少なくとも1つの命令フィールドが、前記複数のデータ経路構成要素のうちのどれが前記少なくとも1つの命令フィールドによって制御されるかを指定する前記方法。
- 請求項17に記載の方法において、異なるプログラム命令に応答して、前記複数のデータ経路構成要素の可変個数のデータ経路構成要素が、アクティブであるかまたは非アクティブである前記方法。
- 請求項27に記載の方法において、所与のデータ経路構成要素に対してデータ処理オペレーションが指定されていないかまたはペンディングになっている場合、前記所与のデータ経路構成要素は非アクティブでありNopオペレーションを実行する前記方法。
- 請求項21に記載の方法において、命令メモリは、前記プログラム命令を格納するように動作可能であるとともに固定長メモリアクセスで可読である前記方法。
- 請求項29に記載の方法において、固定長メモリアクセスは、複数のプログラム命令の少なくともいくつかの部分を含む前記方法。
- 請求項30に記載の方法において、ローテータとプログラムカウンタ増分器とは、前記命令復号器に供給するための所定位置に前記メモリアクセスの中のプログラム命令を揃えるように動作可能である前記方法。
- 請求項21に記載の方法において、ローテータとプログラムカウンタ増分器とは、前記命令復号器に供給するための所定位置に前記メモリアクセスの中のプログラム命令を揃えるように動作可能であり、前記ローテータは、前記命令セット識別子に応答して、前記プログラム命令を揃えるためにいかなる回転を与えるべきかを決定する前記方法。
- プログラム命令の中の1つまたは複数の命令フィールドを復号して、少なくともいくつかの制御信号を発生するように動作可能な命令復号器と、前記制御信号に応答して前記プログラム命令によって指定されたそれぞれのデータ処理オペレーションを独立して並列に実行する複数のデータ経路構成要素とを有するデータ処理装置を制御するコンピュータプログラム製品であって、
第1の符号化が、データ経路構成要素によって行なわれる所与のデータ処理オペレーションを指定する、符号化された命令フィールドを含む少なくとも1つのプログラム命令と、
前記第1の符号化とは異なる第2の符号化が、前記データ経路構成要素によって行なわれる前記所与のデータ処理オペレーションを指定する、異なって符号化された命令フィールドを含む少なくとも1つの異なるプログラム命令と
を含むコンピュータプログラム製品。 - 請求項33に記載のコンピュータプログラム製品において、前記データ処理オペレーションを表す前記異なって符号化された命令フィールドは、前記異なるプログラム命令の中の異なるビット長を有する前記コンピュータプログラム製品。
- 請求項33に記載のコンピュータプログラム製品において、前記データ処理オペレーションを表す前記異なって符号化された命令フィールドは、前記異なるプログラム命令の中に異なるビット位置を有する前記コンピュータプログラム製品。
- 請求項33に記載のコンピュータプログラム製品において、前記プログラム命令は複数の命令セットに分割され、前記命令復号器は、プログラム命令の中の少なくとも命令セット識別フィールドに応答して、前記プログラム命令の中のどのビットが、どのデータ経路構成要素に対する命令フィールドに対応するかを制御する前記コンピュータプログラム製品。
- 請求項33に記載のコンピュータプログラム製品において、前記プログラム命令は、可変プログラム命令長を有し、前記命令復号器は、前記命令セット識別子に応答してプログラム命令のプログラム命令長を決定する前記コンピュータプログラム製品。
- 請求項33に記載のコンピュータプログラム製品において、前記異なって符号化された命令フィールドは、前記データ経路構成要素によって実行されうるデータ処理オペレーションの異なるセットを表すように動作可能である前記コンピュータプログラム製品。
- 請求項38に記載のコンピュータプログラム製品において、プログラム命令の中の前記異なって符号化された命令フィールドの少なくとも1つは、異なるプログラム命令の中の前記異なって符号化された命令フィールドの異なる1つによって表されうるデータ処理オペレーションのサブセットを表すように動作可能である前記コンピュータプログラム製品。
- 請求項39に記載のコンピュータプログラム製品において、前記サブセットは、データ処理オペレーションの前記最大のセットと比較して減少したオペランド範囲を有する前記コンピュータプログラム製品。
- 請求項40に記載のコンピュータプログラム製品において、前記オペランド範囲は、
レジスタ指定子と、
プログラムの中の実行点におけるジャンプを表すジャンプアドレス指定子と、
アラインメント指定子と、
即値と、
の中の1つである前記コンピュータプログラム製品。 - 請求項33に記載のコンピュータプログラム製品において、プログラム命令自身の中の少なくとも1つの命令フィールドが、前記複数のデータ経路構成要素のうち、どれが前記少なくとも1つの命令フィールドによって制御されるかを指定する前記コンピュータプログラム製品。
- 請求項33に記載のコンピュータプログラム製品において、異なるプログラム命令に応答して、前記複数のデータ経路構成要素のうちの可変個数のデータ経路構成要素が、アクティブであるかまたは非アクティブである前記コンピュータプログラム製品。
- 請求項43に記載のコンピュータプログラム製品において、所定のデータ経路構成要素に対してデータ処理オペレーションが指定されていないかまたはペンディングになっている場合、前記所与のデータ経路構成要素は非アクティブでありヌルオペレーションを実行する前記コンピュータプログラム製品。
- 請求項37に記載のコンピュータプログラム製品において、命令メモリは、前記プログラム命令を格納するように動作可能であるとともに固定長メモリアクセスで可読である前記コンピュータプログラム製品。
- 請求項45に記載のコンピュータプログラム製品において、固定長メモリアクセスは、複数のプログラム命令の少なくともいくつかの部分を含む前記コンピュータプログラム製品。
- 請求項46に記載のコンピュータプログラム製品において、ローテータとプログラムカウンタ増分器とは、前記命令復号器に供給するための所定位置に前記メモリアクセスの中のプログラム命令を揃えるように動作可能である前記コンピュータプログラム製品。
- 請求項37に記載のコンピュータプログラム製品において、
ローテータとプログラムカウンタ増分器とは、前記命令復号器に供給するための所定位置に前記メモリアクセスの中のプログラム命令を揃えるように動作可能であり、前記ローテータは、前記命令セット識別子に応答して、前記プログラム命令を揃えるためにいかなる回転を与えるべきかを決定する前記コンピュータプログラム製品。 - 請求項33に記載のコンピュータプログラムを発生するように動作可能なコンピュータプログラムコンパイラ。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB0410986A GB2414308B (en) | 2004-05-17 | 2004-05-17 | Program instruction compression |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2005332361A JP2005332361A (ja) | 2005-12-02 |
JP2005332361A5 true JP2005332361A5 (ja) | 2007-02-22 |
Family
ID=32527186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004343921A Pending JP2005332361A (ja) | 2004-05-17 | 2004-11-29 | プログラム命令圧縮装置および方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US7302552B2 (ja) |
JP (1) | JP2005332361A (ja) |
GB (1) | GB2414308B (ja) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB2370380B (en) | 2000-12-19 | 2003-12-31 | Picochip Designs Ltd | Processor architecture |
GB2420884B (en) * | 2004-12-03 | 2009-04-15 | Picochip Designs Ltd | Processor architecture |
US7581082B2 (en) * | 2005-05-13 | 2009-08-25 | Texas Instruments Incorporated | Software source transfer selects instruction word sizes |
GB2430773A (en) * | 2005-10-03 | 2007-04-04 | Advanced Risc Mach Ltd | Alignment of variable length program instructions |
US20080077772A1 (en) * | 2006-09-22 | 2008-03-27 | Ronen Zohar | Method and apparatus for performing select operations |
US9069547B2 (en) * | 2006-09-22 | 2015-06-30 | Intel Corporation | Instruction and logic for processing text strings |
US7624251B2 (en) * | 2006-11-01 | 2009-11-24 | Apple Inc. | Instructions for efficiently accessing unaligned partial vectors |
US7620797B2 (en) * | 2006-11-01 | 2009-11-17 | Apple Inc. | Instructions for efficiently accessing unaligned vectors |
CN101398752B (zh) * | 2007-09-29 | 2011-08-31 | 国际商业机器公司 | 重叠指令存取单元和重叠指令存取方法 |
GB2454865B (en) | 2007-11-05 | 2012-06-13 | Picochip Designs Ltd | Power control |
CN102077195A (zh) * | 2008-05-08 | 2011-05-25 | Mips技术公司 | 具有紧凑指令集架构的微处理器 |
US20100312991A1 (en) * | 2008-05-08 | 2010-12-09 | Mips Technologies, Inc. | Microprocessor with Compact Instruction Set Architecture |
GB2470037B (en) | 2009-05-07 | 2013-07-10 | Picochip Designs Ltd | Methods and devices for reducing interference in an uplink |
GB2470771B (en) | 2009-06-05 | 2012-07-18 | Picochip Designs Ltd | A method and device in a communication network |
GB2470891B (en) | 2009-06-05 | 2013-11-27 | Picochip Designs Ltd | A method and device in a communication network |
GB2474071B (en) | 2009-10-05 | 2013-08-07 | Picochip Designs Ltd | Femtocell base station |
GB2482869B (en) | 2010-08-16 | 2013-11-06 | Picochip Designs Ltd | Femtocell access control |
GB2484489A (en) | 2010-10-12 | 2012-04-18 | Advanced Risc Mach Ltd | Instruction decoder using an instruction set identifier to determine the decode rules to use. |
GB2489716B (en) | 2011-04-05 | 2015-06-24 | Intel Corp | Multimode base system |
GB2489919B (en) | 2011-04-05 | 2018-02-14 | Intel Corp | Filter |
GB2491098B (en) | 2011-05-16 | 2015-05-20 | Intel Corp | Accessing a base station |
US20160179542A1 (en) * | 2014-12-23 | 2016-06-23 | Patrick P. Lai | Instruction and logic to perform a fused single cycle increment-compare-jump |
JP6907487B2 (ja) | 2016-09-09 | 2021-07-21 | 富士通株式会社 | 並列処理装置、並列処理装置の制御方法、及び並列処理装置に用いられる制御装置 |
KR20180031266A (ko) * | 2016-09-19 | 2018-03-28 | 삼성전자주식회사 | 전자 장치, vliw 프로세서 및 그 제어 방법들 |
Family Cites Families (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5057837A (en) * | 1987-04-20 | 1991-10-15 | Digital Equipment Corporation | Instruction storage method with a compressed format using a mask word |
GB2289354B (en) * | 1994-05-03 | 1997-08-27 | Advanced Risc Mach Ltd | Multiple instruction set mapping |
JP2931890B2 (ja) * | 1995-07-12 | 1999-08-09 | 三菱電機株式会社 | データ処理装置 |
US5826054A (en) * | 1996-05-15 | 1998-10-20 | Philips Electronics North America Corporation | Compressed Instruction format for use in a VLIW processor |
US5922065A (en) * | 1997-10-13 | 1999-07-13 | Institute For The Development Of Emerging Architectures, L.L.C. | Processor utilizing a template field for encoding instruction sequences in a wide-word format |
US6101592A (en) * | 1998-12-18 | 2000-08-08 | Billions Of Operations Per Second, Inc. | Methods and apparatus for scalable instruction set architecture with dynamic compact instructions |
JP4502532B2 (ja) * | 2001-02-23 | 2010-07-14 | 株式会社ルネサステクノロジ | データ処理装置 |
KR100991700B1 (ko) * | 2002-08-16 | 2010-11-04 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 처리 장치, 처리 방법 및 컴퓨터로 판독가능한 기록 매체 |
CN1685310A (zh) * | 2002-09-24 | 2005-10-19 | 皇家飞利浦电子股份有限公司 | 在一个超长指令字处理器中启动加载立即指令的处理的装置、方法和编译器 |
-
2004
- 2004-05-17 GB GB0410986A patent/GB2414308B/en not_active Expired - Lifetime
- 2004-10-14 US US10/963,722 patent/US7302552B2/en active Active
- 2004-11-29 JP JP2004343921A patent/JP2005332361A/ja active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2005332361A5 (ja) | ||
JP6227621B2 (ja) | 複数の試験ソースに対するor試験及びand試験機能を提供するために命令をフュージングする方法及び装置 | |
KR101016713B1 (ko) | 데이터 처리 시스템 내의 예측 명령 | |
US9804851B2 (en) | Operand size control | |
KR101706496B1 (ko) | 비인가 스택 피봇팅을 방지하기 위한 시스템들 및 방법들 | |
KR20130016246A (ko) | 다중 명령 세트에 의해 사용되는 레지스터 간의 매핑 | |
JP2005332361A (ja) | プログラム命令圧縮装置および方法 | |
JP2004054585A5 (ja) | ||
JP2014510351A5 (ja) | ||
US9977675B2 (en) | Next-instruction-type-field | |
WO2018007782A1 (en) | An apparatus and method for performing a rearrangement operation | |
US9424042B2 (en) | System, apparatus and method for translating vector instructions | |
US11314514B2 (en) | Vector length querying instruction | |
US10437598B2 (en) | Method and apparatus for selecting among a plurality of instruction sets to a microprocessor | |
DE112011104552T5 (de) | System, Vorrichtung und Verfahren zum Lesen und Schreiben von Segmentregistern unabhängig von Privilegierungsstufe | |
US7234043B2 (en) | Decoding predication instructions within a superscaler data processing system | |
JP6874262B2 (ja) | ベクトル被演算子ビットサイズの制御 | |
JP2007065999A (ja) | 命令コードの符号化方式及びcpu | |
JP2008129667A (ja) | プログラマブルコントローラ | |
JP2000298588A (ja) | プログラム実行制御システム及びその方法 | |
Wang et al. | A Control Path Design of Communications Processor | |
KR20070092093A (ko) | 다중 마이크로컨트롤러 시스템, 명령어, 및 그의 명령어실행 방법 | |
JP2002073326A (ja) | プログラム実行装置及びプログラム実行方法 | |
JPH04177428A (ja) | オペランドアドレス受渡し用レジスタを備えたデータ処理装置 |