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
- 238000004364 calculation method Methods 0.000 claims abstract description 12
- 238000000034 method Methods 0.000 claims description 24
- 230000004927 fusion Effects 0.000 claims description 10
- 238000013461 design Methods 0.000 claims description 9
- 230000015572 biosynthetic process Effects 0.000 claims 2
- 238000003786 synthesis reaction Methods 0.000 claims 2
- 230000003252 repetitive effect Effects 0.000 claims 1
- 238000012545 processing Methods 0.000 description 28
- 230000006870 function Effects 0.000 description 18
- 230000008569 process Effects 0.000 description 13
- 230000009977 dual effect Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 5
- 238000007726 management method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000009877 rendering Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000007620 mathematical function Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000010977 unit operation Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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; CALCULATING OR 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; 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/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; 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/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; 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/3885—Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
-
- 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/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; 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/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; 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/3877—Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- 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)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Processing Or Creating Images (AREA)
- Executing Machine-Instructions (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) | TWI622014B (ja) |
WO (1) | WO2017095547A1 (ja) |
Families Citing this family (4)
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 |
Family Cites Families (95)
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 |
JPH07234778A (ja) | 1994-02-22 | 1995-09-05 | Texas Instr Japan Ltd | 演算回路 |
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 |
EP0875031B1 (de) | 1996-01-15 | 2001-06-20 | Infineon Technologies AG | Prozessor zur bildverarbeitung |
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 |
WO2000055810A1 (fr) | 1999-03-16 | 2000-09-21 | Hamamatsu Photonics K. K. | Capteur de vision ultra-rapide |
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 |
WO2003088033A1 (en) | 2002-04-09 | 2003-10-23 | University Of Rochester | Multiplier-based processor-in-memory architectures for image and graphics processing |
WO2004021176A2 (de) | 2002-08-07 | 2004-03-11 | Pact Xpp Technologies Ag | Verfahren und vorrichtung zur datenverarbeitung |
ATE459042T1 (de) * | 2003-04-15 | 2010-03-15 | Koninkl Philips Electronics Nv | Rechnersystem mit parallelität auf befehls- und draht-ebene |
DE602004006516T2 (de) * | 2003-08-15 | 2008-01-17 | Koninklijke Philips Electronics N.V. | Parallel-verarbeitungs-array |
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 | 富士通マイクロエレクトロニクス株式会社 | 画像処理装置及び画像処理方法 |
ATE504043T1 (de) | 2005-04-28 | 2011-04-15 | Univ Edinburgh | Umkonfigurierbares anweisungs-zellen-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 |
EP2663071B1 (en) | 2007-09-05 | 2015-11-18 | Tohoku University | Solid-state image sensor and drive method for the same |
CN102047241B (zh) | 2008-05-30 | 2014-03-12 | 先进微装置公司 | 本地与全局数据共享 |
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 | 京セラドキュメントソリューションズ株式会社 | 画像形成装置 |
EP2798467A4 (en) | 2011-12-30 | 2016-04-27 | Intel Corp | CONFIGURABLE CORE WITH RESTRICTED COMMAND SET |
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 |
US9769356B2 (en) | 2015-04-23 | 2017-09-19 | Google Inc. | Two dimensional shift array for image processor |
US9965824B2 (en) | 2015-04-23 | 2018-05-08 | Google Llc | Architecture for high performance, power efficient, programmable image processing |
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 |
US10291813B2 (en) | 2015-04-23 | 2019-05-14 | Google Llc | Sheet generator for image processor |
US9772852B2 (en) | 2015-04-23 | 2017-09-26 | Google Inc. | Energy efficient processor core architecture for image processor |
US9756268B2 (en) | 2015-04-23 | 2017-09-05 | Google Inc. | Line buffer unit for image processor |
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 |
-
2015
- 2015-12-04 US US14/960,334 patent/US9830150B2/en active Active
-
2016
- 2016-10-19 EP EP16790499.4A patent/EP3384376B1/en active Active
- 2016-10-19 CN CN201680060253.5A patent/CN108139886B/zh 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-10-19 WO PCT/US2016/057771 patent/WO2017095547A1/en active Application Filing
- 2016-10-19 KR KR1020187010230A patent/KR102000894B1/ko active IP Right Grant
- 2016-10-19 EP EP19213291.8A patent/EP3633504B1/en active Active
- 2016-11-17 TW TW105137593A patent/TWI622014B/zh active
- 2016-11-17 TW TW107106346A patent/TWI680435B/zh active
- 2016-11-17 TW TW108133222A patent/TWI724545B/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 active Pending
Also Published As
Publication number | Publication date |
---|---|
DE112016005521T5 (de) | 2018-08-30 |
KR102000894B1 (ko) | 2019-07-16 |
CN108139886A (zh) | 2018-06-08 |
GB201805590D0 (en) | 2018-05-23 |
US20190213006A1 (en) | 2019-07-11 |
TWI680435B (zh) | 2019-12-21 |
US20220206796A1 (en) | 2022-06-30 |
EP3633504A1 (en) | 2020-04-08 |
TWI622014B (zh) | 2018-04-21 |
TW201721580A (zh) | 2017-06-16 |
US10185560B2 (en) | 2019-01-22 |
GB2561306A (en) | 2018-10-10 |
EP3384376A1 (en) | 2018-10-10 |
TW201816715A (zh) | 2018-05-01 |
EP3384376B1 (en) | 2019-12-04 |
TW202004655A (zh) | 2020-01-16 |
US9830150B2 (en) | 2017-11-28 |
CN108139886B (zh) | 2021-11-16 |
TWI724545B (zh) | 2021-04-11 |
US20170161064A1 (en) | 2017-06-08 |
US20170242695A1 (en) | 2017-08-24 |
WO2017095547A1 (en) | 2017-06-08 |
JP6789287B2 (ja) | 2020-11-25 |
KR20180052721A (ko) | 2018-05-18 |
EP3633504B1 (en) | 2021-10-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20220043652A1 (en) | Systems, methods, and apparatus for tile configuration | |
KR102232722B1 (ko) | 프로그램 가능한 2차원 이미지 프로세서상의 컨볼루션 신경망 | |
KR102278658B1 (ko) | 높은 성능, 전력 효율, 프로그램 가능 이미지 처리 프로세싱을 위한 아키텍처 | |
US20220206796A1 (en) | Multi-functional execution lane for image processor | |
JP5089776B2 (ja) | 浮動小数点演算のための再構成アレイプロセッサ | |
Yu et al. | Vector processing as a soft-core CPU accelerator | |
TWI752343B (zh) | 用於執行絕對差計算之加總的執行單元電路、影像處理器以及方法 | |
JP6745389B2 (ja) | 低減された配線複雑度を有するシフトレジスタ | |
CN107533460B (zh) | 紧缩有限冲激响应(fir)滤波处理器、方法、系统和指令 | |
CN110909883A (zh) | 用于执行指定三元片逻辑操作的指令的系统和方法 | |
EP3326060B1 (en) | Mixed-width simd operations having even-element and odd-element operations using register pair for wide data elements | |
EP1936492A1 (en) | SIMD processor with reduction unit | |
US20050055394A1 (en) | Method and system for high performance, multiple-precision multiply-and-add operation | |
Hansson et al. | Case study of efficient parallel memory access programming for the embedded heterogeneous multicore DSP architecture ePUMA | |
WO2008077803A1 (en) | Simd processor with reduction unit | |
CN115857872A (zh) | 针对每个矩阵维度的多个片的矩阵操作 |
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 |