TWI706256B - 加速器控制器及其方法 - Google Patents

加速器控制器及其方法 Download PDF

Info

Publication number
TWI706256B
TWI706256B TW105124369A TW105124369A TWI706256B TW I706256 B TWI706256 B TW I706256B TW 105124369 A TW105124369 A TW 105124369A TW 105124369 A TW105124369 A TW 105124369A TW I706256 B TWI706256 B TW I706256B
Authority
TW
Taiwan
Prior art keywords
dram
accelerator
array
logic
memory
Prior art date
Application number
TW105124369A
Other languages
English (en)
Chinese (zh)
Other versions
TW201723865A (zh
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 TW201723865A publication Critical patent/TW201723865A/zh
Application granted granted Critical
Publication of TWI706256B publication Critical patent/TWI706256B/zh

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B19/00Programme-control systems
    • G05B19/02Programme-control systems electric
    • G05B19/04Programme control other than numerical control, i.e. in sequence controllers or logic controllers
    • G05B19/042Programme control other than numerical control, i.e. in sequence controllers or logic controllers using digital processors
    • G05B19/0423Input/output
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0662Virtualisation aspects
    • G06F3/0665Virtualisation aspects at area level, e.g. provisioning of virtual or logical volumes
    • 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/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • 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/1009Address translation using page tables, e.g. page table structures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0613Improving I/O performance in relation to throughput
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD
    • 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/30003Arrangements for executing specific machine instructions
    • G06F9/3004Arrangements for executing specific machine instructions to perform operations on memory
    • G06F9/30043LOAD or STORE instructions; Clear instruction
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25257Microcontroller
    • 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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45583Memory management, e.g. access or allocation
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/10Providing a specific technical effect
    • G06F2212/1016Performance improvement
    • G06F2212/1024Latency reduction
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/15Use in a specific computing environment
    • G06F2212/152Virtualized environment, e.g. logically partitioned system
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/62Details of cache specific to multiprocessor cache arrangements
    • G06F2212/621Coherency control relating to peripheral accessing, e.g. from DMA or I/O device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Automation & Control Theory (AREA)
  • Logic Circuits (AREA)
  • Stored Programmes (AREA)
  • Memory System (AREA)
TW105124369A 2015-11-30 2016-08-02 加速器控制器及其方法 TWI706256B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201562261306P 2015-11-30 2015-11-30
US62/261,306 2015-11-30
US15/086,010 2016-03-30
US15/086,010 US10013212B2 (en) 2015-11-30 2016-03-30 System architecture with memory channel DRAM FPGA module

Publications (2)

Publication Number Publication Date
TW201723865A TW201723865A (zh) 2017-07-01
TWI706256B true TWI706256B (zh) 2020-10-01

Family

ID=58777561

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105124369A TWI706256B (zh) 2015-11-30 2016-08-02 加速器控制器及其方法

Country Status (5)

Country Link
US (1) US10013212B2 (cg-RX-API-DMAC7.html)
JP (1) JP6738262B2 (cg-RX-API-DMAC7.html)
KR (1) KR102380776B1 (cg-RX-API-DMAC7.html)
CN (1) CN106814662B (cg-RX-API-DMAC7.html)
TW (1) TWI706256B (cg-RX-API-DMAC7.html)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10338135B2 (en) 2016-09-28 2019-07-02 Amazon Technologies, Inc. Extracting debug information from FPGAs in multi-tenant environments
US11099894B2 (en) * 2016-09-28 2021-08-24 Amazon Technologies, Inc. Intermediate host integrated circuit between virtual machine instance and customer programmable logic
US10162921B2 (en) 2016-09-29 2018-12-25 Amazon Technologies, Inc. Logic repository service
US10250572B2 (en) 2016-09-29 2019-04-02 Amazon Technologies, Inc. Logic repository service using encrypted configuration data
US10423438B2 (en) 2016-09-30 2019-09-24 Amazon Technologies, Inc. Virtual machines controlling separate subsets of programmable hardware
US10642492B2 (en) 2016-09-30 2020-05-05 Amazon Technologies, Inc. Controlling access to previously-stored logic in a reconfigurable logic device
US11115293B2 (en) 2016-11-17 2021-09-07 Amazon Technologies, Inc. Networked programmable logic service provider
US10747565B2 (en) * 2017-04-18 2020-08-18 Amazon Technologies, Inc. Virtualization of control and status signals
US10503551B2 (en) * 2017-06-07 2019-12-10 Dell Products L.P. Coordinating FPGA services using cascaded FPGA service managers
US11169834B2 (en) * 2017-09-28 2021-11-09 Intel Corporation Dynamic platform feature tuning based on virtual machine runtime requirements
CN108897706B (zh) * 2018-05-10 2021-07-23 北京融芯微科技有限公司 一种加速器接口
KR102615443B1 (ko) * 2018-05-25 2023-12-20 에스케이하이닉스 주식회사 머신 러닝 장치 및 이를 이용한 머신 러닝 시스템
US10884949B2 (en) * 2019-04-05 2021-01-05 International Business Machines Corporation On-chip logic accelerator
CN112506087B (zh) * 2019-09-16 2024-07-23 阿里巴巴集团控股有限公司 Fpga加速系统和方法、电子设备以及计算机可读存储介质
US11403111B2 (en) 2020-07-17 2022-08-02 Micron Technology, Inc. Reconfigurable processing-in-memory logic using look-up tables
JP7619015B2 (ja) * 2020-11-18 2025-01-22 大日本印刷株式会社 インプリント装置、インプリント方法及び凹凸構造体の製造方法
CN112580285A (zh) * 2020-12-14 2021-03-30 深圳宏芯宇电子股份有限公司 嵌入式服务器子系统及其配置方法
US11355170B1 (en) 2020-12-16 2022-06-07 Micron Technology, Inc. Reconfigurable processing-in-memory logic
CN112947282B (zh) * 2021-03-08 2023-06-20 电子科技大学 一种应用于电源门控fpga结构中的新型隔离单元
KR20230016110A (ko) 2021-07-23 2023-02-01 삼성전자주식회사 메모리 모듈, 이를 포함하는 시스템, 및 메모리 모듈의 동작 방법

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200802011A (en) * 2005-12-01 2008-01-01 Liga Systems Inc Hardware acceleration system for simulation of logic and memory
TWI296757B (en) * 2003-12-29 2008-05-11 Intel Corp Method and system for managing data organization, article comprising a storage medium, and device for use with a data storage having a plurality of non-volatile storage units
TWI308719B (en) * 2004-12-10 2009-04-11 Via Tech Inc Cache controllers, buffers and cache systems with a filling cacheline for accessing data to cache memory
US20110010721A1 (en) * 2009-07-13 2011-01-13 Vishakha Gupta Managing Virtualized Accelerators Using Admission Control, Load Balancing and Scheduling
US20110307233A1 (en) * 1998-08-31 2011-12-15 Tseng Ping-Sheng Common shared memory in a verification system
US20140359219A1 (en) * 2013-05-31 2014-12-04 Altera Corporation Cache Memory Controller for Accelerated Data Transfer

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3106998B2 (ja) * 1997-04-11 2000-11-06 日本電気株式会社 メモリ付加型プログラマブルロジックlsi
JP3738802B2 (ja) * 1998-02-10 2006-01-25 富士ゼロックス株式会社 情報処理システム
JP3809727B2 (ja) * 1998-06-17 2006-08-16 富士ゼロックス株式会社 情報処理システム、回路情報管理方法および回路情報記憶装置
DE112006002300B4 (de) 2005-09-02 2013-12-19 Google, Inc. Vorrichtung zum Stapeln von DRAMs
JP4191219B2 (ja) * 2006-10-30 2008-12-03 エルピーダメモリ株式会社 メモリ回路、半導体装置及びメモリ回路の制御方法
CN101354677B (zh) * 2008-09-11 2014-12-03 青岛海信移动通信技术股份有限公司 一种应用程序运行状态的检测方法及装置
CN101477831A (zh) * 2009-01-22 2009-07-08 上海广电(集团)有限公司中央研究院 一种基于fpga器件的dram控制器
CN101924550A (zh) * 2009-06-11 2010-12-22 复旦大学 一种采用增益单元eDRAM的查找表
CN101717817B (zh) * 2009-07-17 2011-11-23 中国人民解放军国防科学技术大学 对基于随机上下文无关文法的rna二级结构预测进行加速的方法
US8589851B2 (en) * 2009-12-15 2013-11-19 Memoir Systems, Inc. Intelligent memory system compiler
JP2012084220A (ja) * 2011-10-25 2012-04-26 Fujitsu Semiconductor Ltd メモリシステム
WO2013081629A1 (en) * 2011-12-02 2013-06-06 Empire Technology Development. Llc Integrated circuits as a service
US9396020B2 (en) * 2012-03-30 2016-07-19 Intel Corporation Context switching mechanism for a processing core having a general purpose CPU core and a tightly coupled accelerator
EP3654178B1 (en) * 2012-03-30 2023-07-12 Intel Corporation Mechanism for issuing requests to an accelerator from multiple threads
US9697147B2 (en) * 2012-08-06 2017-07-04 Advanced Micro Devices, Inc. Stacked memory device with metadata management
US8984368B2 (en) * 2012-10-11 2015-03-17 Advanced Micro Devices, Inc. High reliability memory controller
US8880809B2 (en) 2012-10-29 2014-11-04 Advanced Micro Devices Inc. Memory controller with inter-core interference detection
US9098402B2 (en) * 2012-12-21 2015-08-04 Intel Corporation Techniques to configure a solid state drive to operate in a storage mode or a memory mode
US9954533B2 (en) * 2014-12-16 2018-04-24 Samsung Electronics Co., Ltd. DRAM-based reconfigurable logic

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110307233A1 (en) * 1998-08-31 2011-12-15 Tseng Ping-Sheng Common shared memory in a verification system
TWI296757B (en) * 2003-12-29 2008-05-11 Intel Corp Method and system for managing data organization, article comprising a storage medium, and device for use with a data storage having a plurality of non-volatile storage units
TWI308719B (en) * 2004-12-10 2009-04-11 Via Tech Inc Cache controllers, buffers and cache systems with a filling cacheline for accessing data to cache memory
TW200802011A (en) * 2005-12-01 2008-01-01 Liga Systems Inc Hardware acceleration system for simulation of logic and memory
US20110010721A1 (en) * 2009-07-13 2011-01-13 Vishakha Gupta Managing Virtualized Accelerators Using Admission Control, Load Balancing and Scheduling
US20140359219A1 (en) * 2013-05-31 2014-12-04 Altera Corporation Cache Memory Controller for Accelerated Data Transfer

Also Published As

Publication number Publication date
US20170153854A1 (en) 2017-06-01
CN106814662A (zh) 2017-06-09
KR20170063334A (ko) 2017-06-08
JP6738262B2 (ja) 2020-08-12
JP2017102923A (ja) 2017-06-08
CN106814662B (zh) 2019-06-25
US10013212B2 (en) 2018-07-03
TW201723865A (zh) 2017-07-01
KR102380776B1 (ko) 2022-04-01

Similar Documents

Publication Publication Date Title
TWI706256B (zh) 加速器控制器及其方法
US20250225079A1 (en) GPU Virtualisation
US9954533B2 (en) DRAM-based reconfigurable logic
KR102893502B1 (ko) 순환 큐 기반의 명령어 메모리를 포함하는 메모리 장치 및 그 동작방법
EP0931380B1 (en) Reconfigurable computing system
CN107209734A (zh) 用于控制混合存储系统的运行的电路和方法
US11561711B2 (en) Memory device performing configurable mode setting and method of operating the same
US9361956B2 (en) Performing logical operations in a memory
CN107078740A (zh) 可重构设备
US20240338334A1 (en) Monolithic non-volatile memory device using peripheral component interconnect express interface for embedded system
US11429769B1 (en) Implementing a hardware description language memory using heterogeneous memory primitives
KR101275628B1 (ko) 듀얼 포트 메모리 기반의 영역 크기 가변이 가능한 tcm 메모리 구조의 전자칩
US10180847B2 (en) Circuitry for configuring entities