JP2018532200A - 画像プロセッサ用多機能実行レーン - Google Patents
画像プロセッサ用多機能実行レーン Download PDFInfo
- Publication number
- JP2018532200A JP2018532200A JP2018519299A JP2018519299A JP2018532200A JP 2018532200 A JP2018532200 A JP 2018532200A JP 2018519299 A JP2018519299 A JP 2018519299A JP 2018519299 A JP2018519299 A JP 2018519299A JP 2018532200 A JP2018532200 A JP 2018532200A
- Authority
- JP
- Japan
- Prior art keywords
- instruction
- alu
- unit
- logical unit
- execution
- 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
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/38—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
- G06F7/48—Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
- G06F7/57—Arithmetic logic units [ALU], i.e. arrangements or devices for performing two or more of the operations covered by groups G06F7/483 – G06F7/556 or for performing logical operations
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F15/00—Digital computers in general; Data processing equipment in general
- G06F15/76—Architectures of general purpose stored program computers
- G06F15/80—Architectures of general purpose stored program computers comprising an array of processing units with common control, e.g. single instruction multiple data processors
-
- 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/3001—Arithmetic instructions
-
- 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/3001—Arithmetic instructions
- G06F9/30014—Arithmetic instructions with variable precision
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3887—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
- G06F9/3893—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled in tandem, e.g. multiplier-accumulator
-
- 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/38—Concurrent instruction execution, e.g. pipeline or look ahead
- G06F9/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a secondary processor, e.g. coprocessor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Computing Systems (AREA)
- Computer Hardware Design (AREA)
- Advance Control (AREA)
- Image Processing (AREA)
- Executing Machine-Instructions (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Processing Or Creating Images (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Abstract
Description
100 ステンシルプロセッサアーキテクチャ
101 データ算出ユニット
102 スカラプロセッサ
103 メモリ、命令メモリ、スカラメモリ
104 I/Oユニット
105 配列、実行レーン配列
106 2次元シフト配列構造、2次元シフトレジスタ構造、レジスタ構造、2次元シフトレジスタ、シフトレジスタ
107 ランダムアクセスメモリ、メモリ
109 プログラムコントローラ
201 実行レーン、ハードウェア実行レーン
202 レジスタファイル
203 出力マルチプレクサ、マルチプレクサ構成、マルチプレクサ回路
204 マルチプレクサ構成、マルチプレクサ回路、入力マルチプレクサ
205 ALU実行ユニット、ALUユニット
301 積和(MAD)演算、MAD演算、MAD命令
302 演算、デュアル並列FW演算、デュアル並列全幅ALU演算、半幅演算
303 2倍幅ALU演算
304 演算、融合演算
306 演算、反復除算命令
401 第1のALU論理ユニット、論理ユニット、ALU論理ユニット
402 第2のALU論理ユニット、論理ユニット、ALU論理ユニット、第2のALU論理
403 積和論理ユニット、積和ユニット
404 桁上げ線
405 実行ユニット、実行ユニット回路
406 マルチプレクサ
501 第1のALU論理ユニット、論理ユニット、第1のALU
502 第2のALU論理ユニット、論理ユニット
506 マルチプレクサ
508 第2のマルチプレクサ
509 Y出力ポート
510 最下位ビット
511 減算
515 減算
517 商結果
518 商結果
700 システム
701 CPU、中央処理装置
702 システムメモリ
703 タッチスクリーンディスプレイ、ディスプレイ
704 通信インタフェース、インタフェース
705 ネットワークI/O機能
706 通信インタフェース、インタフェース
707 通信インタフェース、インタフェース
708 GPSインタフェース、全地球測位システムインタフェース
709 センサ
709_1 センサ
709_N センサ
710 カメラ
711 バッテリ
712 電力管理制御ユニット
713 マイクロホン、マイクロホンコーデック
714 デコーダ、マイクロホンコーデック
715 汎用処理コア
715_1 汎用処理コア
715_N 汎用処理コア
716 グラフィカル処理ユニット、グラフィックス処理ユニット
717 メモリ制御機能、メモリ管理機能、メインメモリコントローラ
718 I/O制御機能
719 画像処理ユニット
750 マルチコアプロセッサ
Claims (23)
- 積和算出ユニットと第1のALU論理ユニットと第2のALU論理ユニットとを備える実行ユニットであって、
第1の命令であって、積和命令である第1の命令、
第2の命令であって、同時に動作する前記第1のALU論理ユニットおよび前記第2のALU論理ユニットを用いて並列ALU演算を行って第2の命令の異なるそれぞれの出力結果を生じさせるための第2の命令、
第3の命令であって、前記ALU論理ユニットの他方の出力から動作する前記ALU論理ユニットのうちの一方を用いて逐次的ALU演算を行って第3の命令の出力結果を決定するための第3の命令、
第4の命令であって、前記第1のALU論理ユニットおよび前記第2のALU論理ユニットが第1の除算結果桁値および第2の除算結果桁値を決定するように動作する反復的除算演算を行うための第4の命令
を行う実行ユニット
を備える装置。 - 前記実行ユニットがさらに、第5の命令を行い、前記第5の命令は、同時に動作する前記第1のALU論理ユニットおよび前記第2のALU論理ユニットを用いて並列ALU演算も行う、請求項1に記載の装置。
- 前記第2の命令と前記第5の命令が、異なるデータ幅に従って演算する、請求項2に記載の装置。
- 前記幅の一方が8ビットであり、前記幅のもう一方が16ビットである、請求項3に記載の装置。
- 前記第1のALU論理ユニットおよび前記第2のALU論理ユニットが、桁上げ項信号線と結合される、請求項1に記載の装置。
- 前記実行ユニットがさらに、第5の命令を行い、前記第5の命令が融合命令である、請求項1に記載の装置。
- 前記実行ユニットがさらに、第5の命令を行い、前記第5の命令は、前記第1のALU論理ユニットおよび前記第2のALU論理ユニットがそれぞれ結果の異なる半分を生成する2倍幅命令である、請求項1に記載の装置。
- 前記第2の命令、前記第3の命令、および前記第4の命令が前記第1の命令よりも多くの時間を消費せず、前記実行ユニットのサイクル時間が前記積和命令に相応する、請求項1に記載の装置。
- 実行レーンの配列を備える画像プロセッサであって、各実行レーンが実行ユニットを備え、前記実行ユニットが、積和算出ユニットと、第1のALU論理ユニットと、第2のALU論理ユニットとを備え、前記ALUユニットが、
第1の命令であって、積和命令である第1の命令、
第2の命令であって、同時に動作する前記第1のALU論理ユニットおよび前記第2のALU論理ユニットを用いて並列ALU演算を行って第2の命令の異なるそれぞれの出力結果を生じさせるための第2の命令、
第3の命令であって、前記ALU論理ユニットの他方の出力から動作する前記ALU論理ユニットのうちの一方を用いて逐次的ALU演算を行って第3の命令の出力結果を決定するための第3の命令、
第4の命令であって、前記第1のALU論理ユニットおよび前記第2のALU論理ユニットが第1の結果桁値および第2の結果桁値を決定するように動作する反復的除算演算を行うための第4の命令
を行う、画像プロセッサ
を備える装置。 - 前記画像プロセッサが2次元シフトレジスタ配列構造をさらに備え、前記2次元シフトレジスタ配列の配列場所が前記実行レーンの配列のそれぞれの実行レーンにローカルに結合する、請求項9に記載の装置。
- 前記実行ユニットがさらに、第5の命令を行い、前記第5の命令は、同時に動作する前記第1のALU論理ユニットおよび前記第2のALU論理ユニットを用いて並列ALU演算も行う、請求項9に記載の装置。
- 前記第2の命令と前記第5の命令が、異なるデータ幅に従って演算する、請求項11に記載の装置。
- 前記幅の一方が8ビットであり、前記幅のもう一方が16ビットである、請求項12に記載の装置。
- 前記第1のALU論理ユニットおよび前記第2のALU論理ユニットが、桁上げ項信号線と結合される、請求項11に記載の装置。
- 前記実行ユニットがさらに、第5の命令を行い、前記第5の命令が融合命令である、請求項10に記載の装置。
- 前記実行ユニットがさらに、第5の命令を行い、前記第5の命令は、前記第1のALU論理ユニットおよび前記第2のALU論理ユニットがそれぞれ結果の異なる半分を生成する2倍幅命令である、請求項10に記載の装置。
- 前記第2の命令、前記第3の命令、および前記第4の命令が前記第1の命令よりも短い時間を消費し、前記実行ユニットのサイクル時間が、前記第1の命令によって消費される時間に相応する、請求項9に記載の装置。
- 前記画像プロセッサがコンピューティングシステム内にある、請求項9に記載の装置。
- 実行ユニットの回路設計合成ツール互換記述であって、前記実行ユニットが、積和算出ユニットと、第1のALU論理ユニットと、第2のALU論理ユニットとを備え、前記ALUユニットが、
第1の命令であって、積和命令である第1の命令、
第2の命令であって、同時に動作する前記第1のALU論理ユニットおよび前記第2のALU論理ユニットを用いて並列ALU演算を行って第2の命令の異なるそれぞれの出力結果を生じさせるための第2の命令、
第3の命令であって、前記ALU論理ユニットの他方の出力から動作する前記ALU論理ユニットのうちの一方を用いて逐次的ALU演算を行って第3の命令の出力結果を決定するための第3の命令、
第4の命令であって、前記第1のALU論理ユニットおよび前記第2のALU論理ユニットが第1の除算結果桁値および第2の除算結果桁値を決定するように動作する反復的除算演算を行うための第4の命令
を行う、回路設計合成ツール互換記述
を備える装置。 - 前記記述が、実行レーンの配列を備える画像プロセッサについてさらに記述し、前記実行レーンの1つが前記実行ユニットを備える、請求項19に記載の装置。
- 前記画像プロセッサが2次元シフトレジスタ配列回路をさらに備え、前記2次元シフトレジスタ配列回路の配列場所が前記実行レーンの配列のそれぞれのALUユニットにローカルに結合する、請求項20に記載の装置。
- 前記実行ユニットがさらに、第5の命令を行い、前記第5の命令は、同時に動作する前記第1のALU論理ユニットおよび前記第2のALU論理ユニットを用いて並列ALU演算も行う、請求項19に記載の装置。
- 画像プロセッサの実行ユニットを用いて、
第1の命令を実行するステップであって、前記第1の命令が積和命令である、ステップと、
同時に動作する第1のALU論理ユニットおよび第2のALU論理ユニットを用いて並列ALU演算を行って第2の命令の異なるそれぞれの出力結果を生じさせるステップを含む、第2の命令を実行するステップと、
前記ALU論理ユニットの他方の出力から動作する前記ALU論理ユニットのうちの一方を用いて逐次的ALU演算を行って第3の命令の出力結果を決定するステップを含む、第3の命令を実行するステップと、
前記第1のALU論理ユニットおよび前記第2のALU論理ユニットが第1の除算結果桁値および第2の除算結果桁値を決定するように動作する反復的除算演算を行うステップを含む、第4の命令を実行するステップ
を行うステップ
を含む方法。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US14/960,334 US9830150B2 (en) | 2015-12-04 | 2015-12-04 | Multi-functional execution lane for image processor |
| US14/960,334 | 2015-12-04 | ||
| PCT/US2016/057771 WO2017095547A1 (en) | 2015-12-04 | 2016-10-19 | Multi-functional execution lane for image processor |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2018532200A true JP2018532200A (ja) | 2018-11-01 |
| JP6789287B2 JP6789287B2 (ja) | 2020-11-25 |
Family
ID=57223790
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2018519299A Active JP6789287B2 (ja) | 2015-12-04 | 2016-10-19 | 画像プロセッサ用多機能実行レーン |
Country Status (9)
| Country | Link |
|---|---|
| US (4) | US9830150B2 (ja) |
| EP (2) | EP3384376B1 (ja) |
| JP (1) | JP6789287B2 (ja) |
| KR (1) | KR102000894B1 (ja) |
| CN (1) | CN108139886B (ja) |
| DE (1) | DE112016005521T5 (ja) |
| GB (1) | GB2561306A (ja) |
| TW (3) | TWI724545B (ja) |
| WO (1) | WO2017095547A1 (ja) |
Families Citing this family (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US10261786B2 (en) | 2017-03-09 | 2019-04-16 | Google Llc | Vector processing unit |
| US10534736B1 (en) | 2018-12-31 | 2020-01-14 | Texas Instruments Incorporated | Shared buffer for multi-output display systems |
| CN109902795B (zh) * | 2019-02-01 | 2023-05-23 | 京微齐力(北京)科技有限公司 | 处理单元设置有输入复用器的人工智能模块和系统芯片 |
| US10552939B1 (en) | 2019-02-12 | 2020-02-04 | Google Llc | Image processor complex transfer functions |
| US12236238B2 (en) | 2021-06-25 | 2025-02-25 | Intel Corporation | Large integer multiplication enhancements for graphics environment |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS57162030A (en) * | 1981-03-31 | 1982-10-05 | Toshiba Corp | Multiplying and dividing circuit |
| JPH07234778A (ja) * | 1994-02-22 | 1995-09-05 | Texas Instr Japan Ltd | 演算回路 |
| JP2000222208A (ja) * | 1999-01-29 | 2000-08-11 | Mitsubishi Electric Corp | 情報処理装置、命令割当て制御方法、命令割当て制御装置および命令割当て制御プログラムを記録したコンピュータで読取り可能な記録媒体 |
| US20050219422A1 (en) * | 2004-03-31 | 2005-10-06 | Mikhail Dorojevets | Parallel vector processing |
Family Cites Families (96)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US542600A (en) * | 1895-07-09 | Lattice hedge fence and method of plashing | ||
| US4445177A (en) | 1981-05-22 | 1984-04-24 | Data General Corporation | Digital data processing system utilizing a unique arithmetic logic unit for handling uniquely identifiable addresses for operands and instructions |
| US4486848A (en) * | 1982-07-28 | 1984-12-04 | Sperry Corporation | Microprocessor parallel additive execution of a computer count ones instruction |
| DE3851005T2 (de) | 1987-06-01 | 1995-04-20 | Applied Intelligent Syst Inc | Paralleles Nachbarverarbeitungssystem und -Verfahren. |
| US4935894A (en) | 1987-08-31 | 1990-06-19 | Motorola, Inc. | Multi-processor, multi-bus system with bus interface comprising FIFO register stocks for receiving and transmitting data and control information |
| US5253308A (en) | 1989-06-21 | 1993-10-12 | Amber Engineering, Inc. | Massively parallel digital image data processor using pixel-mapped input/output and relative indexed addressing |
| WO1994009595A1 (en) | 1991-09-20 | 1994-04-28 | Shaw Venson M | Method and apparatus including system architecture for multimedia communications |
| US5258944A (en) | 1992-09-01 | 1993-11-02 | Cray Research, Inc. | High performance mantissa divider |
| JP3482660B2 (ja) | 1993-09-08 | 2003-12-22 | ソニー株式会社 | 画像データ処理装置および画像データ処理方法 |
| US5426600A (en) | 1993-09-27 | 1995-06-20 | Hitachi America, Ltd. | Double precision division circuit and method for digital signal processor |
| US5612693A (en) | 1994-12-14 | 1997-03-18 | International Business Machines Corporation | Sliding window data compression using a toroidal bit shift register |
| US7395298B2 (en) * | 1995-08-31 | 2008-07-01 | Intel Corporation | Method and apparatus for performing multiply-add operations on packed data |
| US5777918A (en) * | 1995-12-22 | 1998-07-07 | International Business Machines Corporation | Fast multiple operands adder/subtracter based on shifting |
| KR100415417B1 (ko) | 1996-01-15 | 2004-04-17 | 지멘스 악티엔게젤샤프트 | 이미지-처리프로세서 |
| US6128726A (en) * | 1996-06-04 | 2000-10-03 | Sigma Designs, Inc. | Accurate high speed digital signal processor |
| US5892962A (en) | 1996-11-12 | 1999-04-06 | Lucent Technologies Inc. | FPGA-based processor |
| US6366289B1 (en) | 1998-07-17 | 2002-04-02 | Microsoft Corporation | Method and system for managing a display image in compressed and uncompressed blocks |
| US6587158B1 (en) | 1998-07-23 | 2003-07-01 | Dvdo, Inc. | Method and apparatus for reducing on-chip memory in vertical video processing |
| US7010177B1 (en) | 1998-08-27 | 2006-03-07 | Intel Corporation | Portability of digital images |
| US6970196B1 (en) | 1999-03-16 | 2005-11-29 | Hamamatsu Photonics K.K. | High-speed vision sensor with image processing function |
| JP3922859B2 (ja) | 1999-12-28 | 2007-05-30 | 株式会社リコー | 画像処理装置、画像処理方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体 |
| US6745319B1 (en) | 2000-02-18 | 2004-06-01 | Texas Instruments Incorporated | Microprocessor with instructions for shuffling and dealing data |
| US6606700B1 (en) * | 2000-02-26 | 2003-08-12 | Qualcomm, Incorporated | DSP with dual-mac processor and dual-mac coprocessor |
| US7124160B2 (en) * | 2000-03-08 | 2006-10-17 | Sun Microsystems, Inc. | Processing architecture having parallel arithmetic capability |
| US6728862B1 (en) | 2000-05-22 | 2004-04-27 | Gazelle Technology Corporation | Processor array and parallel data processing methods |
| US6728722B1 (en) | 2000-08-28 | 2004-04-27 | Sun Microsystems, Inc. | General data structure for describing logical data spaces |
| US6675376B2 (en) * | 2000-12-29 | 2004-01-06 | Intel Corporation | System and method for fusing instructions |
| US7286717B2 (en) | 2001-10-31 | 2007-10-23 | Ricoh Company, Ltd. | Image data processing device processing a plurality of series of data items simultaneously in parallel |
| JP4146654B2 (ja) | 2002-02-28 | 2008-09-10 | 株式会社リコー | 画像処理回路、複合画像処理回路、および、画像形成装置 |
| US9170812B2 (en) | 2002-03-21 | 2015-10-27 | Pact Xpp Technologies Ag | Data processing system having integrated pipelined array data processor |
| AU2003221680A1 (en) | 2002-04-09 | 2003-10-27 | The Research Foundation Of State University Of New York | Multiplier-based processor-in-memory architectures for image and graphics processing |
| AU2003286131A1 (en) | 2002-08-07 | 2004-03-19 | Pact Xpp Technologies Ag | Method and device for processing data |
| US7392368B2 (en) * | 2002-08-09 | 2008-06-24 | Marvell International Ltd. | Cross multiply and add instruction and multiply and subtract instruction SIMD execution on real and imaginary components of a plurality of complex data elements |
| US20060212678A1 (en) * | 2003-04-15 | 2006-09-21 | Koninklijke Philips Electronics N.V. | Reconfigurable processor array exploiting ilp and tlp |
| KR20060060689A (ko) * | 2003-08-15 | 2006-06-05 | 코닌클리즈케 필립스 일렉트로닉스 엔.브이. | 병렬 처리 어레이 및 데이터 처리 방법 |
| GB2409065B (en) * | 2003-12-09 | 2006-10-25 | Advanced Risc Mach Ltd | Multiplexing operations in SIMD processing |
| US7873815B2 (en) * | 2004-03-04 | 2011-01-18 | Qualcomm Incorporated | Digital signal processors with configurable dual-MAC and dual-ALU |
| US20060044576A1 (en) | 2004-07-30 | 2006-03-02 | Kabushiki Kaisha Toshiba | Apparatus for image processing |
| US7667764B2 (en) | 2004-06-04 | 2010-02-23 | Konica Minolta Holdings, Inc. | Image sensing apparatus |
| JP4219887B2 (ja) | 2004-12-28 | 2009-02-04 | 富士通マイクロエレクトロニクス株式会社 | 画像処理装置及び画像処理方法 |
| WO2006114642A1 (en) | 2005-04-28 | 2006-11-02 | The University Court Of The University Of Edinburgh | Reconfigurable instruction cell array |
| US7882339B2 (en) | 2005-06-23 | 2011-02-01 | Intel Corporation | Primitives to enhance thread-level speculation |
| JP2007067917A (ja) | 2005-08-31 | 2007-03-15 | Matsushita Electric Ind Co Ltd | 画像データ処理装置 |
| US7602974B2 (en) | 2005-10-21 | 2009-10-13 | Mobilic Technology (Cayman) Corp. | Universal fixed-pixel-size ISP scheme |
| FR2895103B1 (fr) | 2005-12-19 | 2008-02-22 | Dxo Labs Sa | Procede et systeme de traitement de donnees numeriques |
| US7555514B2 (en) * | 2006-02-13 | 2009-06-30 | Atmel Corportation | Packed add-subtract operation in a microprocessor |
| US7802073B1 (en) | 2006-03-29 | 2010-09-21 | Oracle America, Inc. | Virtual core management |
| US7882307B1 (en) * | 2006-04-14 | 2011-02-01 | Tilera Corporation | Managing cache memory in a parallel processing environment |
| US20080111823A1 (en) | 2006-11-13 | 2008-05-15 | Faraday Technology Corp. | Graphics processing system |
| EP1927949A1 (en) | 2006-12-01 | 2008-06-04 | Thomson Licensing | Array of processing elements with local registers |
| US8321849B2 (en) | 2007-01-26 | 2012-11-27 | Nvidia Corporation | Virtual architecture and instruction set for parallel thread computing |
| US20080244222A1 (en) | 2007-03-30 | 2008-10-02 | Intel Corporation | Many-core processing using virtual processors |
| JP4389976B2 (ja) | 2007-06-29 | 2009-12-24 | ブラザー工業株式会社 | 画像処理装置および画像処理プログラム |
| US8521800B1 (en) * | 2007-08-15 | 2013-08-27 | Nvidia Corporation | Interconnected arithmetic logic units |
| WO2009031302A1 (ja) | 2007-09-05 | 2009-03-12 | Tohoku University | 固体撮像素子及びその駆動方法 |
| KR101474478B1 (ko) | 2008-05-30 | 2014-12-19 | 어드밴스드 마이크로 디바이시즈, 인코포레이티드 | 로컬 및 글로벌 데이터 공유 |
| JP4999791B2 (ja) | 2008-06-30 | 2012-08-15 | キヤノン株式会社 | 情報処理装置、その制御方法、及びプログラム |
| US8456480B2 (en) | 2009-01-14 | 2013-06-04 | Calos Fund Limited Liability Company | Method for chaining image-processing functions on a SIMD processor |
| KR101572879B1 (ko) | 2009-04-29 | 2015-12-01 | 삼성전자주식회사 | 병렬 응용 프로그램을 동적으로 병렬처리 하는 시스템 및 방법 |
| US8429453B2 (en) | 2009-07-16 | 2013-04-23 | Hitachi, Ltd. | Management system for outputting information denoting recovery method corresponding to root cause of failure |
| TWI398781B (zh) * | 2009-08-03 | 2013-06-11 | Hon Hai Prec Ind Co Ltd | 離散餘弦轉換電路及裝置 |
| US20110055495A1 (en) | 2009-08-28 | 2011-03-03 | Qualcomm Incorporated | Memory Controller Page Management Devices, Systems, and Methods |
| US8976195B1 (en) | 2009-10-14 | 2015-03-10 | Nvidia Corporation | Generating clip state for a batch of vertices |
| US8436857B2 (en) | 2009-10-20 | 2013-05-07 | Oracle America, Inc. | System and method for applying level of detail schemes |
| US8595428B2 (en) | 2009-12-22 | 2013-11-26 | Intel Corporation | Memory controller functionalities to support data swizzling |
| US8749667B2 (en) | 2010-08-02 | 2014-06-10 | Texas Instruments Incorporated | System and method for maintaining maximum input rate while up-scaling an image vertically |
| US8508612B2 (en) | 2010-09-30 | 2013-08-13 | Apple Inc. | Image signal processor line buffer configuration for processing ram image data |
| US8797323B2 (en) | 2011-01-18 | 2014-08-05 | Intel Corporation | Shadowing dynamic volumetric media |
| CN103339604B (zh) | 2011-01-31 | 2016-10-26 | 株式会社索思未来 | 程序生成装置、程序生成方法、处理器装置以及多处理器系统 |
| US20120254588A1 (en) | 2011-04-01 | 2012-10-04 | Jesus Corbal San Adrian | Systems, apparatuses, and methods for blending two source operands into a single destination using a writemask |
| US9092267B2 (en) | 2011-06-20 | 2015-07-28 | Qualcomm Incorporated | Memory sharing in graphics processing unit |
| US20130027416A1 (en) | 2011-07-25 | 2013-01-31 | Karthikeyan Vaithianathan | Gather method and apparatus for media processing accelerators |
| JP5742651B2 (ja) | 2011-10-15 | 2015-07-01 | コニカミノルタ株式会社 | 画像処理装置、連携方法および連携プログラム |
| JP5746100B2 (ja) | 2011-12-27 | 2015-07-08 | 京セラドキュメントソリューションズ株式会社 | 画像形成装置 |
| WO2013101147A1 (en) | 2011-12-30 | 2013-07-04 | Intel Corporation | Configurable reduced instruction set core |
| US8823736B2 (en) | 2012-01-20 | 2014-09-02 | Intel Corporation | Graphics tiling architecture with bounding volume hierarchies |
| US10244246B2 (en) | 2012-02-02 | 2019-03-26 | Texas Instruments Incorporated | Sub-pictures for pixel rate balancing on multi-core platforms |
| US9235769B2 (en) | 2012-03-15 | 2016-01-12 | Herta Security, S.L. | Parallel object detection method for heterogeneous multithreaded microarchitectures |
| CN102637124B (zh) * | 2012-03-22 | 2015-09-30 | 中国电子科技集团公司第五十八研究所 | 一种基4fft算法的并行处理装置及方法 |
| TWI520598B (zh) | 2012-05-23 | 2016-02-01 | 晨星半導體股份有限公司 | 影像處理裝置與影像處理方法 |
| CN102750133B (zh) * | 2012-06-20 | 2014-07-30 | 中国电子科技集团公司第五十八研究所 | 支持simd的32位三发射的数字信号处理器 |
| US9232139B2 (en) | 2012-07-24 | 2016-01-05 | Apple Inc. | Image stabilization using striped output transformation unit |
| US9588766B2 (en) | 2012-09-28 | 2017-03-07 | Intel Corporation | Accelerated interlane vector reduction instructions |
| US10318308B2 (en) | 2012-10-31 | 2019-06-11 | Mobileye Vision Technologies Ltd. | Arithmetic logic unit |
| US9378181B2 (en) | 2012-11-09 | 2016-06-28 | Intel Corporation | Scalable computing array |
| US8954992B2 (en) | 2013-03-15 | 2015-02-10 | Lenovo Enterprise Solutions (Singapore) Pte. Ltd. | Distributed and scaled-out network switch and packet processing |
| US9323535B2 (en) | 2013-06-28 | 2016-04-26 | Intel Corporation | Instruction order enforcement pairs of instructions, processors, methods, and systems |
| GB2522290B (en) * | 2014-07-14 | 2015-12-09 | Imagination Tech Ltd | Running a 32-bit operating system on a 64-bit machine |
| US9749548B2 (en) | 2015-01-22 | 2017-08-29 | Google Inc. | Virtual linebuffers for image signal processors |
| US9965824B2 (en) | 2015-04-23 | 2018-05-08 | Google Llc | Architecture for high performance, power efficient, programmable image processing |
| US9785423B2 (en) | 2015-04-23 | 2017-10-10 | Google Inc. | Compiler for translating between a virtual image processor instruction set architecture (ISA) and target hardware having a two-dimensional shift array structure |
| US9756268B2 (en) | 2015-04-23 | 2017-09-05 | Google Inc. | Line buffer unit for image processor |
| US9772852B2 (en) | 2015-04-23 | 2017-09-26 | Google Inc. | Energy efficient processor core architecture for image processor |
| US10291813B2 (en) | 2015-04-23 | 2019-05-14 | Google Llc | Sheet generator for image processor |
| US9769356B2 (en) | 2015-04-23 | 2017-09-19 | Google Inc. | Two dimensional shift array for image processor |
| US10095479B2 (en) | 2015-04-23 | 2018-10-09 | Google Llc | Virtual image processor instruction set architecture (ISA) and memory model and exemplary target hardware having a two-dimensional shift array structure |
-
2015
- 2015-12-04 US US14/960,334 patent/US9830150B2/en active Active
-
2016
- 2016-10-19 KR KR1020187010230A patent/KR102000894B1/ko active Active
- 2016-10-19 EP EP16790499.4A patent/EP3384376B1/en active Active
- 2016-10-19 WO PCT/US2016/057771 patent/WO2017095547A1/en not_active Ceased
- 2016-10-19 CN CN201680060253.5A patent/CN108139886B/zh active Active
- 2016-10-19 EP EP19213291.8A patent/EP3633504B1/en active Active
- 2016-10-19 JP JP2018519299A patent/JP6789287B2/ja active Active
- 2016-10-19 DE DE112016005521.8T patent/DE112016005521T5/de active Pending
- 2016-10-19 GB GB1805590.5A patent/GB2561306A/en not_active Withdrawn
- 2016-11-17 TW TW108133222A patent/TWI724545B/zh active
- 2016-11-17 TW TW105137593A patent/TWI622014B/zh active
- 2016-11-17 TW TW107106346A patent/TWI680435B/zh active
-
2017
- 2017-05-10 US US15/591,955 patent/US10185560B2/en active Active
-
2019
- 2019-01-18 US US16/251,887 patent/US20190213006A1/en not_active Abandoned
-
2022
- 2022-03-10 US US17/691,615 patent/US20220206796A1/en not_active Abandoned
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPS57162030A (en) * | 1981-03-31 | 1982-10-05 | Toshiba Corp | Multiplying and dividing circuit |
| JPH07234778A (ja) * | 1994-02-22 | 1995-09-05 | Texas Instr Japan Ltd | 演算回路 |
| JP2000222208A (ja) * | 1999-01-29 | 2000-08-11 | Mitsubishi Electric Corp | 情報処理装置、命令割当て制御方法、命令割当て制御装置および命令割当て制御プログラムを記録したコンピュータで読取り可能な記録媒体 |
| US20050219422A1 (en) * | 2004-03-31 | 2005-10-06 | Mikhail Dorojevets | Parallel vector processing |
Non-Patent Citations (2)
| Title |
|---|
| 尾形幸亮,外4名: "ALU Cascadingのための動的命令スケジューラ", 先進的計算基盤システムシンポジウムSACSIS2008論文集, JPN6019011905, 4 June 2008 (2008-06-04), JP, pages 105 - 114, ISSN: 0004267492 * |
| 恒川佳隆,外2名: "高基数に基づく選択型高速除算器の構成", 電気学会論文誌C, vol. 118, no. 6, JPN6019011907, 1 June 1998 (1998-06-01), JP, pages 833 - 841, ISSN: 0004267493 * |
Also Published As
| Publication number | Publication date |
|---|---|
| EP3633504B1 (en) | 2021-10-06 |
| TW201721580A (zh) | 2017-06-16 |
| GB201805590D0 (en) | 2018-05-23 |
| US20190213006A1 (en) | 2019-07-11 |
| WO2017095547A1 (en) | 2017-06-08 |
| TWI724545B (zh) | 2021-04-11 |
| KR102000894B1 (ko) | 2019-07-16 |
| TWI622014B (zh) | 2018-04-21 |
| CN108139886A (zh) | 2018-06-08 |
| GB2561306A (en) | 2018-10-10 |
| TW201816715A (zh) | 2018-05-01 |
| TW202004655A (zh) | 2020-01-16 |
| US20220206796A1 (en) | 2022-06-30 |
| US20170161064A1 (en) | 2017-06-08 |
| US20170242695A1 (en) | 2017-08-24 |
| EP3633504A1 (en) | 2020-04-08 |
| US9830150B2 (en) | 2017-11-28 |
| KR20180052721A (ko) | 2018-05-18 |
| JP6789287B2 (ja) | 2020-11-25 |
| DE112016005521T5 (de) | 2018-08-30 |
| CN108139886B (zh) | 2021-11-16 |
| EP3384376A1 (en) | 2018-10-10 |
| TWI680435B (zh) | 2019-12-21 |
| EP3384376B1 (en) | 2019-12-04 |
| US10185560B2 (en) | 2019-01-22 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US20220300286A1 (en) | Systems, methods, and apparatuses for zeroing a matrix | |
| US20220206796A1 (en) | Multi-functional execution lane for image processor | |
| TWI861131B (zh) | 用於矩陣運算加速器的指令之設備、方法及系統 | |
| KR102278658B1 (ko) | 높은 성능, 전력 효율, 프로그램 가능 이미지 처리 프로세싱을 위한 아키텍처 | |
| KR102232722B1 (ko) | 프로그램 가능한 2차원 이미지 프로세서상의 컨볼루션 신경망 | |
| US20210216318A1 (en) | Vector Processor Architectures | |
| Yu et al. | Vector processing as a soft-core CPU accelerator | |
| CN110149802A (zh) | 用于在虚拟图像处理器指令集架构(isa)与具有二维移位阵列结构的目标硬件之间进行转译的编译器 | |
| CN110909883A (zh) | 用于执行指定三元片逻辑操作的指令的系统和方法 | |
| JP6745389B2 (ja) | 低減された配線複雑度を有するシフトレジスタ | |
| CN107533750A (zh) | 虚拟图像处理器指令集架构(isa)和存储器模型与具有二维移位阵列结构的示例性目标硬件 | |
| CN107438861A (zh) | 用于图像生成器的数据片生成器 | |
| EP3326060B1 (en) | Mixed-width simd operations having even-element and odd-element operations using register pair for wide data elements | |
| CN110574007A (zh) | 执行双输入值绝对值和求和操作的电路 | |
| CN112149050A (zh) | 用于增强的矩阵乘法器架构的装置、方法和系统 | |
| CN110300944A (zh) | 具有可配置数目的活动核心和支持内部网络的图像处理器 | |
| US20050055394A1 (en) | Method and system for high performance, multiple-precision multiply-and-add operation |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20180413 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20190228 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20190408 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20190705 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20191216 |
|
| RD02 | Notification of acceptance of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7422 Effective date: 20191218 |
|
| RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20191220 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200313 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20200526 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20200825 |
|
| 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: 20201006 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20201102 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6789287 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |