KR101507096B1 - 명령어 스트림을 공유하는 코프로세서 유닛 - Google Patents

명령어 스트림을 공유하는 코프로세서 유닛 Download PDF

Info

Publication number
KR101507096B1
KR101507096B1 KR1020117016279A KR20117016279A KR101507096B1 KR 101507096 B1 KR101507096 B1 KR 101507096B1 KR 1020117016279 A KR1020117016279 A KR 1020117016279A KR 20117016279 A KR20117016279 A KR 20117016279A KR 101507096 B1 KR101507096 B1 KR 101507096B1
Authority
KR
South Korea
Prior art keywords
unit
coprocessor
processor
instructions
interface
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.)
Active
Application number
KR1020117016279A
Other languages
English (en)
Korean (ko)
Other versions
KR20110106368A (ko
Inventor
마이클 프랭크
Original Assignee
어드밴스드 마이크로 디바이시즈, 인코포레이티드
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 어드밴스드 마이크로 디바이시즈, 인코포레이티드 filed Critical 어드밴스드 마이크로 디바이시즈, 인코포레이티드
Publication of KR20110106368A publication Critical patent/KR20110106368A/ko
Application granted granted Critical
Publication of KR101507096B1 publication Critical patent/KR101507096B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3877Concurrent instruction execution, e.g. pipeline or look ahead using a slave processor, e.g. coprocessor
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/10Address translation
    • G06F12/1027Address translation using associative or pseudo-associative address translation means, e.g. translation look-aside buffer [TLB]
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3836Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution
    • G06F9/3851Instruction issuing, e.g. dynamic instruction scheduling or out of order instruction execution from multiple instruction streams, e.g. multistreaming
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3854Instruction completion, e.g. retiring, committing or graduating
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3854Instruction completion, e.g. retiring, committing or graduating
    • G06F9/3858Result writeback, i.e. updating the architectural state or memory
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/30Providing cache or TLB in specific location of a processing system
    • G06F2212/301In special purpose processing node, e.g. vector processor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Advance Control (AREA)
  • Multi Processors (AREA)
KR1020117016279A 2008-12-17 2009-12-10 명령어 스트림을 공유하는 코프로세서 유닛 Active KR101507096B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US12/337,159 2008-12-17
US12/337,159 US7930519B2 (en) 2008-12-17 2008-12-17 Processor with coprocessor interfacing functional unit for forwarding result from coprocessor to retirement unit
PCT/US2009/067409 WO2010077751A2 (en) 2008-12-17 2009-12-10 Coprocessor unit with shared instruction stream

Publications (2)

Publication Number Publication Date
KR20110106368A KR20110106368A (ko) 2011-09-28
KR101507096B1 true KR101507096B1 (ko) 2015-03-30

Family

ID=41820594

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020117016279A Active KR101507096B1 (ko) 2008-12-17 2009-12-10 명령어 스트림을 공유하는 코프로세서 유닛

Country Status (6)

Country Link
US (1) US7930519B2 (enExample)
EP (1) EP2374060B1 (enExample)
JP (1) JP5676470B2 (enExample)
KR (1) KR101507096B1 (enExample)
CN (1) CN102282540B (enExample)
WO (1) WO2010077751A2 (enExample)

Families Citing this family (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7391865B2 (en) 1999-09-20 2008-06-24 Security First Corporation Secure data parser method and system
CN101375284B (zh) 2004-10-25 2012-02-22 安全第一公司 安全数据分析方法和系统
WO2008054406A2 (en) 2005-11-18 2008-05-08 Orsini Rick L Secure data parser method and system
US8538015B2 (en) * 2007-03-28 2013-09-17 Intel Corporation Flexible architecture and instruction for advanced encryption standard (AES)
JP4868012B2 (ja) * 2009-03-09 2012-02-01 日本電気株式会社 コンピュータシステム、コンピュータシステムの制御方法、及びプログラム
JP5650238B2 (ja) 2009-11-25 2015-01-07 セキュリティー ファースト コープ. 移動中のデータをセキュア化するためのシステムおよび方法
JP4809497B2 (ja) 2010-02-25 2011-11-09 ファナック株式会社 複数の独立したシーケンスプログラムを並列実行するプログラマブルコントローラ
EP2553905B1 (en) 2010-03-31 2018-05-09 Security First Corp. Systems and methods for securing data in motion
US8824492B2 (en) 2010-05-28 2014-09-02 Drc Computer Corporation Accelerator system for remote data storage
US9304774B2 (en) 2011-02-04 2016-04-05 Qualcomm Incorporated Processor with a coprocessor having early access to not-yet issued instructions
US8683175B2 (en) * 2011-03-15 2014-03-25 International Business Machines Corporation Seamless interface for multi-threaded core accelerators
US20120236010A1 (en) * 2011-03-15 2012-09-20 Boris Ginzburg Page Fault Handling Mechanism
US9405550B2 (en) 2011-03-31 2016-08-02 International Business Machines Corporation Methods for the transmission of accelerator commands and corresponding command structure to remote hardware accelerator engines over an interconnect link
US9633407B2 (en) 2011-07-29 2017-04-25 Intel Corporation CPU/GPU synchronization mechanism
SE537552C2 (sv) * 2011-12-21 2015-06-09 Mediatek Sweden Ab Digital signalprocessor
CN104137060B (zh) * 2011-12-30 2018-03-06 英特尔公司 高速缓存协处理单元
US9075623B2 (en) * 2012-01-18 2015-07-07 International Business Machines Corporation External auxiliary execution unit interface for format conversion of instruction from issue unit to off-chip auxiliary execution unit
CN106708753B (zh) 2012-03-30 2021-04-02 英特尔公司 在使用共享虚拟存储器的处理器中加速操作的装置和方法
WO2014031495A2 (en) 2012-08-18 2014-02-27 Arteris SAS System translation look-aside buffer with request-based allocation and prefetching
US9582287B2 (en) * 2012-09-27 2017-02-28 Intel Corporation Processor having multiple cores, shared core extension logic, and shared core extension utilization instructions
US9594594B2 (en) * 2012-10-18 2017-03-14 Advanced Micro Devices, Inc. Media hardware resource allocation
US20140189333A1 (en) * 2012-12-28 2014-07-03 Oren Ben-Kiki Apparatus and method for task-switchable synchronous hardware accelerators
TWI477121B (zh) * 2012-12-28 2015-03-11 Askey Computer Corp 多級模組擴充系統及多級模組通訊方法
US9361116B2 (en) 2012-12-28 2016-06-07 Intel Corporation Apparatus and method for low-latency invocation of accelerators
US10140129B2 (en) 2012-12-28 2018-11-27 Intel Corporation Processing core having shared front end unit
US9417873B2 (en) * 2012-12-28 2016-08-16 Intel Corporation Apparatus and method for a hybrid latency-throughput processor
US10346195B2 (en) 2012-12-29 2019-07-09 Intel Corporation Apparatus and method for invocation of a multi threaded accelerator
US20140201409A1 (en) * 2013-01-17 2014-07-17 Xockets IP, LLC Offload processor modules for connection to system memory, and corresponding methods and systems
US10203958B2 (en) * 2013-07-15 2019-02-12 Texas Instruments Incorporated Streaming engine with stream metadata saving for context switching
USRE49652E1 (en) 2013-12-16 2023-09-12 Qualcomm Incorporated Power saving techniques in computing devices
US9535490B2 (en) * 2013-12-16 2017-01-03 Qualcomm Incorporated Power saving techniques in computing devices
CN104301253A (zh) * 2014-10-21 2015-01-21 合肥星服信息科技有限责任公司 线程池和共享池组合优化大负荷通讯服务器
US11449452B2 (en) * 2015-05-21 2022-09-20 Goldman Sachs & Co. LLC General-purpose parallel computing architecture
CN106325819B (zh) 2015-06-17 2019-08-02 华为技术有限公司 计算机指令处理方法、协处理器和系统
US9727944B2 (en) * 2015-06-22 2017-08-08 Apple Inc. GPU instruction storage
GB2544994A (en) * 2015-12-02 2017-06-07 Swarm64 As Data processing
US10037229B2 (en) * 2016-05-11 2018-07-31 International Business Machines Corporation Operation of a multi-slice processor implementing a load/store unit maintaining rejected instructions
US11029659B2 (en) 2016-06-30 2021-06-08 Intel Corporation Method and apparatus for remote field programmable gate array processing
US20180150125A1 (en) * 2016-11-28 2018-05-31 Qualcomm Incorporated Wifi memory power minimization
KR102235803B1 (ko) * 2017-03-31 2021-04-06 삼성전자주식회사 반도체 장치
US12299446B2 (en) 2017-06-28 2025-05-13 Texas Instruments Incorporated Streaming engine with stream metadata saving for context switching
US10437739B2 (en) * 2017-09-26 2019-10-08 Intel Corporation Low-latency accelerator
CN108196849A (zh) * 2018-01-12 2018-06-22 江苏华存电子科技有限公司 一种低延迟指令调度器
CN110618833B (zh) * 2018-06-19 2022-01-11 深圳大心电子科技有限公司 指令处理方法及存储控制器
US10776125B2 (en) 2018-12-05 2020-09-15 Apple Inc. Coprocessor memory ordering table
US10909054B2 (en) * 2019-04-26 2021-02-02 Samsung Electronics Co., Ltd. Method for status monitoring of acceleration kernels in a storage device and storage device employing the same
US11816037B2 (en) * 2019-12-12 2023-11-14 Advanced Micro Devices, Inc. Enhanced page information co-processor
US11429451B2 (en) * 2020-01-22 2022-08-30 Microsoft Technology Licensing, Llc Managing exceptions on a shared resource
GB2630748A (en) * 2023-06-05 2024-12-11 Advanced Risc Mach Ltd Task delegation

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR920001353A (ko) * 1990-06-21 1992-01-30 정용문 프로세서와 코프로세서의 프로세서간 통신방식
KR20040074628A (ko) * 2004-02-18 2004-08-25 마이크로소프트 코포레이션 코프로세서의 성능을 개선하기 위한 시스템 및 방법

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2987308B2 (ja) * 1995-04-28 1999-12-06 松下電器産業株式会社 情報処理装置
US5764939A (en) 1995-10-06 1998-06-09 Lsi Logic Corporation RISC processor having coprocessor for executing circular mask instruction
US6105127A (en) * 1996-08-27 2000-08-15 Matsushita Electric Industrial Co., Ltd. Multithreaded processor for processing multiple instruction streams independently of each other by flexibly controlling throughput in each instruction stream
JP3189727B2 (ja) * 1997-04-15 2001-07-16 日本電気株式会社 コプロセッサ内蔵パケット型メモリlsi、それを用いたメモリシステム及びそれらの制御方法
US5923893A (en) 1997-09-05 1999-07-13 Motorola, Inc. Method and apparatus for interfacing a processor to a coprocessor
US6557065B1 (en) 1999-12-20 2003-04-29 Intel Corporation CPU expandability bus
EP1139222A1 (en) * 2000-03-31 2001-10-04 Texas Instruments Incorporated Prefetch for TLB cache
US20020010848A1 (en) 2000-05-29 2002-01-24 Shoichi Kamano Data processing system
US7237090B1 (en) 2000-12-29 2007-06-26 Mips Technologies, Inc. Configurable out-of-order data transfer in a coprocessor interface
US6754804B1 (en) 2000-12-29 2004-06-22 Mips Technologies, Inc. Coprocessor interface transferring multiple instructions simultaneously along with issue path designation and/or issue order designation for the instructions
US6684305B1 (en) * 2001-04-24 2004-01-27 Advanced Micro Devices, Inc. Multiprocessor system implementing virtual memory using a shared memory, and a page replacement method for maintaining paged memory coherence
GB2378271B (en) * 2001-07-30 2004-12-29 Advanced Risc Mach Ltd Handling of coprocessor instructions in a data processing apparatus
US7260424B2 (en) 2002-05-24 2007-08-21 Schmidt Dominik J Dynamically configured antenna for multiple frequencies and bandwidths
US20030225816A1 (en) * 2002-06-03 2003-12-04 Morrow Michael W. Architecture to support multiple concurrent threads of execution on an arm-compatible processor
US8090928B2 (en) 2002-06-28 2012-01-03 Intellectual Ventures I Llc Methods and apparatus for processing scalar and vector instructions
US7421694B2 (en) * 2003-02-18 2008-09-02 Microsoft Corporation Systems and methods for enhancing performance of a coprocessor
US7079147B2 (en) * 2003-05-14 2006-07-18 Lsi Logic Corporation System and method for cooperative operation of a processor and coprocessor
CN101849227A (zh) * 2005-01-25 2010-09-29 透明信息技术有限公司 在单片构造的硅芯片上采用多个图形核心的图形处理和显示系统
US7647475B2 (en) 2006-09-06 2010-01-12 Mips Technologies, Inc. System for synchronizing an in-order co-processor with an out-of-order processor using a co-processor interface store data queue
DE102007025397B4 (de) * 2007-05-31 2010-07-15 Advanced Micro Devices, Inc., Sunnyvale System mit mehreren Prozessoren und Verfahren zu seinem Betrieb
US8156307B2 (en) * 2007-08-20 2012-04-10 Convey Computer Multi-processor system having at least one processor that comprises a dynamically reconfigurable instruction set

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR920001353A (ko) * 1990-06-21 1992-01-30 정용문 프로세서와 코프로세서의 프로세서간 통신방식
KR20040074628A (ko) * 2004-02-18 2004-08-25 마이크로소프트 코포레이션 코프로세서의 성능을 개선하기 위한 시스템 및 방법

Also Published As

Publication number Publication date
EP2374060B1 (en) 2018-08-22
CN102282540A (zh) 2011-12-14
US20100153686A1 (en) 2010-06-17
CN102282540B (zh) 2015-07-01
JP2012512490A (ja) 2012-05-31
WO2010077751A3 (en) 2011-01-27
US7930519B2 (en) 2011-04-19
EP2374060A2 (en) 2011-10-12
WO2010077751A2 (en) 2010-07-08
JP5676470B2 (ja) 2015-02-25
KR20110106368A (ko) 2011-09-28

Similar Documents

Publication Publication Date Title
KR101507096B1 (ko) 명령어 스트림을 공유하는 코프로세서 유닛
US12086603B2 (en) Processor having multiple cores, shared core extension logic, and shared core extension utilization instructions
US11500778B2 (en) Prefetch kernels on data-parallel processors
JP6708335B2 (ja) ユーザレベルの分岐及び結合を行うプロセッサ、方法、システム、及び命令
CN104204990B (zh) 在使用共享虚拟存储器的处理器中加速操作的装置和方法
US8966232B2 (en) Data processing system operable in single and multi-thread modes and having multiple caches and method of operation
KR101744081B1 (ko) 이진 변환된 자가 수정 코드 및 교차 수정 코드의 처리
WO2014042747A1 (en) Concurrent control for a page miss handler
US20170286301A1 (en) Method, system, and apparatus for a coherency task list to minimize cache snooping between cpu and fpga
US20180285105A1 (en) Efficient range-based memory writeback to improve host to device commmunication for optimal power and performance
US9424190B2 (en) Data processing system operable in single and multi-thread modes and having multiple caches and method of operation
CN114661434A (zh) 用于难以预测的分支的替代路径解码
WO2019133172A1 (en) Processor, method, and system for reducing latency in accessing remote registers
WO2022133841A1 (en) Apparatus and method for address pre-translation to enhance direct memory access by hardware subsystems
US10579378B2 (en) Instructions for manipulating a multi-bit predicate register for predicating instruction sequences
CN118034784B (zh) Risc-v向量处理器和用于risc-v向量处理器的方法
CN115858022A (zh) 集群化解码管线的可缩放切换点控制电路系统
EP4268081B1 (en) Apparatus and method for extending enqueue command instructions to general-purpose commands to reduce context-switching in virtualization environment
CN120723151A (zh) 用于固定存储器迁移的系统体系结构和技术

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20110713

Patent event code: PA01051R01D

Comment text: International Patent Application

PG1501 Laying open of application
A201 Request for examination
A302 Request for accelerated examination
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20141210

Comment text: Request for Examination of Application

PA0302 Request for accelerated examination

Patent event date: 20141210

Patent event code: PA03022R01D

Comment text: Request for Accelerated Examination

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20141224

PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20150324

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20150325

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
FPAY Annual fee payment

Payment date: 20180219

Year of fee payment: 4

PR1001 Payment of annual fee

Payment date: 20180219

Start annual number: 4

End annual number: 4

FPAY Annual fee payment

Payment date: 20190218

Year of fee payment: 5

PR1001 Payment of annual fee

Payment date: 20190218

Start annual number: 5

End annual number: 5

FPAY Annual fee payment

Payment date: 20200227

Year of fee payment: 6

PR1001 Payment of annual fee

Payment date: 20200227

Start annual number: 6

End annual number: 6

PR1001 Payment of annual fee

Payment date: 20210218

Start annual number: 7

End annual number: 7

PR1001 Payment of annual fee

Payment date: 20220216

Start annual number: 8

End annual number: 8

PR1001 Payment of annual fee

Payment date: 20230322

Start annual number: 9

End annual number: 9

PR1001 Payment of annual fee

Payment date: 20240321

Start annual number: 10

End annual number: 10

PR1001 Payment of annual fee

Payment date: 20250317

Start annual number: 11

End annual number: 11