KR101593107B1 - 메모리 요청들을 처리하기 위한 시스템들 및 방법들 - Google Patents

메모리 요청들을 처리하기 위한 시스템들 및 방법들 Download PDF

Info

Publication number
KR101593107B1
KR101593107B1 KR1020127009174A KR20127009174A KR101593107B1 KR 101593107 B1 KR101593107 B1 KR 101593107B1 KR 1020127009174 A KR1020127009174 A KR 1020127009174A KR 20127009174 A KR20127009174 A KR 20127009174A KR 101593107 B1 KR101593107 B1 KR 101593107B1
Authority
KR
South Korea
Prior art keywords
memory
processing unit
cache
probe
request
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
KR1020127009174A
Other languages
English (en)
Korean (ko)
Other versions
KR20120060230A (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 KR20120060230A publication Critical patent/KR20120060230A/ko
Application granted granted Critical
Publication of KR101593107B1 publication Critical patent/KR101593107B1/ko
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G—PHYSICS
    • G06—COMPUTING OR CALCULATING; COUNTING
    • G06F—ELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00—Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02—Addressing or allocation; Relocation
    • G06F12/08—Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802—Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0806—Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815—Cache consistency protocols
    • G06F12/0831—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • G06F12/0835—Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means for main memory peripheral accesses (e.g. I/O or DMA)
    • G—PHYSICS
    • G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/001—Arbitration of resources in a display system, e.g. control of access to frame buffer by video controller and/or main processor
    • G—PHYSICS
    • G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363—Graphics controllers
    • G—PHYSICS
    • G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36—Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39—Control of the bit-mapped memory
    • G09G5/393—Arrangements for updating the contents of the bit-mapped memory
    • G—PHYSICS
    • G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2350/00—Solving problems of bandwidth in display systems
    • G—PHYSICS
    • G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09G—ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00—Aspects of the architecture of display systems
    • G09G2360/12—Frame memory handling
    • G09G2360/121—Frame memory handling using a cache memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Digital Computer Display Output (AREA)
  • Hardware Redundancy (AREA)
  • Multi Processors (AREA)
KR1020127009174A 2009-09-10 2010-09-10 메모리 요청들을 처리하기 위한 시스템들 및 방법들 Active KR101593107B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US24120309P 2009-09-10 2009-09-10
US61/241,203 2009-09-10
US12/878,223 US8615637B2 (en) 2009-09-10 2010-09-09 Systems and methods for processing memory requests in a multi-processor system using a probe engine
US12/878,223 2010-09-09
PCT/US2010/048428 WO2011031969A1 (en) 2009-09-10 2010-09-10 Systems and methods for processing memory requests

Publications (2)

Publication Number Publication Date
KR20120060230A KR20120060230A (ko) 2012-06-11
KR101593107B1 true KR101593107B1 (ko) 2016-02-11

Family

ID=43648547

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020127009174A Active KR101593107B1 (ko) 2009-09-10 2010-09-10 메모리 요청들을 처리하기 위한 시스템들 및 방법들

Country Status (7)

Country Link
US (1) US8615637B2 (cg-RX-API-DMAC10.html)
EP (1) EP2476051B1 (cg-RX-API-DMAC10.html)
JP (1) JP6196445B2 (cg-RX-API-DMAC10.html)
KR (1) KR101593107B1 (cg-RX-API-DMAC10.html)
CN (1) CN102576299B (cg-RX-API-DMAC10.html)
IN (1) IN2012DN02863A (cg-RX-API-DMAC10.html)
WO (1) WO2011031969A1 (cg-RX-API-DMAC10.html)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9176913B2 (en) 2011-09-07 2015-11-03 Apple Inc. Coherence switch for I/O traffic
US9430391B2 (en) 2012-03-29 2016-08-30 Advanced Micro Devices, Inc. Managing coherent memory between an accelerated processing device and a central processing unit
US9218289B2 (en) * 2012-08-06 2015-12-22 Qualcomm Incorporated Multi-core compute cache coherency with a release consistency memory ordering model
US9323679B2 (en) * 2012-08-14 2016-04-26 Nvidia Corporation System, method, and computer program product for managing cache miss requests
US9373182B2 (en) 2012-08-17 2016-06-21 Intel Corporation Memory sharing via a unified memory architecture
US20140101405A1 (en) * 2012-10-05 2014-04-10 Advanced Micro Devices, Inc. Reducing cold tlb misses in a heterogeneous computing system
CN104216837A (zh) * 2013-05-31 2014-12-17 华为技术有限公司 一种内存系统、内存访问请求的处理方法和计算机系统
US9734079B2 (en) * 2013-06-28 2017-08-15 Intel Corporation Hybrid exclusive multi-level memory architecture with memory management
CN117215971A (zh) * 2013-10-21 2023-12-12 Flc环球有限公司 最终级高速缓存系统和对应的方法
US11822474B2 (en) 2013-10-21 2023-11-21 Flc Global, Ltd Storage system and method for accessing same
JP2016170729A (ja) 2015-03-13 2016-09-23 株式会社東芝 メモリシステム
US9424192B1 (en) 2015-04-02 2016-08-23 International Business Machines Corporation Private memory table for reduced memory coherence traffic
US9842050B2 (en) 2015-04-30 2017-12-12 International Business Machines Corporation Add-on memory coherence directory
CN106651748B (zh) * 2015-10-30 2019-10-22 华为技术有限公司 一种图像处理方法与图像处理装置
US10409614B2 (en) 2017-04-24 2019-09-10 Intel Corporation Instructions having support for floating point and integer data types in the same register
US10474458B2 (en) 2017-04-28 2019-11-12 Intel Corporation Instructions and logic to perform floating-point and integer operations for machine learning
US11030126B2 (en) * 2017-07-14 2021-06-08 Intel Corporation Techniques for managing access to hardware accelerator memory
US10402937B2 (en) 2017-12-28 2019-09-03 Nvidia Corporation Multi-GPU frame rendering
GB2571539B (en) 2018-02-28 2020-08-19 Imagination Tech Ltd Memory interface
GB2571538B (en) 2018-02-28 2020-08-19 Imagination Tech Ltd Memory interface
GB2571536B (en) * 2018-02-28 2020-03-11 Imagination Tech Ltd Coherency manager
JP7407134B2 (ja) 2018-06-18 2023-12-28 エフ・エル・シィ・テクノロジー・グループ・インコーポレイテッド 記憶システムをメインメモリとして使用するための方法および装置
US11934342B2 (en) 2019-03-15 2024-03-19 Intel Corporation Assistance for hardware prefetch in cache access
US12182035B2 (en) 2019-03-15 2024-12-31 Intel Corporation Systems and methods for cache optimization
CN113396401A (zh) 2019-03-15 2021-09-14 英特尔公司 多贴片存储器管理
JP7408671B2 (ja) 2019-03-15 2024-01-05 インテル コーポレイション シストリックアレイに対するブロックスパース演算のためのアーキテクチャ
US11861761B2 (en) 2019-11-15 2024-01-02 Intel Corporation Graphics processing unit processing and caching improvements
KR20220064230A (ko) * 2020-11-11 2022-05-18 삼성전자주식회사 다중 프로토콜에 기초하여 메모리에 액세스하기 위한 시스템, 장치 및 방법
CN115202892B (zh) * 2022-09-15 2022-12-23 粤港澳大湾区数字经济研究院(福田) 一种机密计算协处理器的内存扩展系统和内存扩展方法

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0180369B1 (en) * 1984-10-31 1992-08-19 Texas Instruments Incorporated Cache memory addressable by both physical and virtual addresses
US4991081A (en) * 1984-10-31 1991-02-05 Texas Instruments Incorporated Cache memory addressable by both physical and virtual addresses
US5586297A (en) * 1994-03-24 1996-12-17 Hewlett-Packard Company Partial cache line write transactions in a computing system with a write back cache
US6094686A (en) * 1997-10-24 2000-07-25 Compaq Computer Corporation Multi-processor system for transferring data without incurring deadlock using hierarchical virtual channels
EP1269330B1 (en) * 2000-04-03 2004-03-24 Advanced Micro Devices, Inc. Bus bridge including a memory controller having an improved memory request arbitration mechanism
US6633960B1 (en) * 2000-08-31 2003-10-14 Hewlett-Packard Development Company, L.P. Scalable directory based cache coherence protocol
US6868481B1 (en) * 2000-10-31 2005-03-15 Hewlett-Packard Development Company, L.P. Cache coherence protocol for a multiple bus multiprocessor system
US6973543B1 (en) * 2001-07-12 2005-12-06 Advanced Micro Devices, Inc. Partial directory cache for reducing probe traffic in multiprocessor systems
US7034849B1 (en) 2001-12-31 2006-04-25 Apple Computer, Inc. Method and apparatus for image blending
US7120755B2 (en) * 2002-01-02 2006-10-10 Intel Corporation Transfer of cache lines on-chip between processing cores in a multi-core system
US6891543B2 (en) * 2002-05-08 2005-05-10 Intel Corporation Method and system for optimally sharing memory between a host processor and graphics processor
US6976117B2 (en) * 2002-08-13 2005-12-13 Intel Corporation Snoopy virtual level 1 cache tag
US7296121B2 (en) * 2002-11-04 2007-11-13 Newisys, Inc. Reducing probe traffic in multiprocessor systems
US7162589B2 (en) * 2002-12-16 2007-01-09 Newisys, Inc. Methods and apparatus for canceling a memory data fetch
US7373466B1 (en) * 2004-04-07 2008-05-13 Advanced Micro Devices, Inc. Method and apparatus for filtering memory write snoop activity in a distributed shared memory computer
US8332592B2 (en) * 2004-10-08 2012-12-11 International Business Machines Corporation Graphics processor with snoop filter
US7577794B2 (en) 2004-10-08 2009-08-18 International Business Machines Corporation Low latency coherency protocol for a multi-chip multiprocessor system
US7305524B2 (en) 2004-10-08 2007-12-04 International Business Machines Corporation Snoop filter directory mechanism in coherency shared memory system
US20060112226A1 (en) * 2004-11-19 2006-05-25 Hady Frank T Heterogeneous processors sharing a common cache
US7406613B2 (en) * 2004-12-02 2008-07-29 Qualcomm Incorporated Translation lookaside buffer (TLB) suppression for intra-page program counter relative or absolute address branch instructions
US20070143546A1 (en) * 2005-12-21 2007-06-21 Intel Corporation Partitioned shared cache
US7653789B2 (en) * 2006-02-01 2010-01-26 Sun Microsystems, Inc. Multiprocessor system that supports both coherent and non-coherent memory accesses
US7814279B2 (en) * 2006-03-23 2010-10-12 International Business Machines Corporation Low-cost cache coherency for accelerators
US20090106498A1 (en) * 2007-10-23 2009-04-23 Kevin Michael Lepak Coherent dram prefetcher
US9035959B2 (en) * 2008-03-28 2015-05-19 Intel Corporation Technique to share information among different cache coherency domains

Also Published As

Publication number Publication date
EP2476051B1 (en) 2019-10-23
IN2012DN02863A (cg-RX-API-DMAC10.html) 2015-07-24
EP2476051A1 (en) 2012-07-18
CN102576299A (zh) 2012-07-11
US20110060879A1 (en) 2011-03-10
WO2011031969A1 (en) 2011-03-17
JP6196445B2 (ja) 2017-09-13
JP2013504822A (ja) 2013-02-07
KR20120060230A (ko) 2012-06-11
CN102576299B (zh) 2015-11-25
US8615637B2 (en) 2013-12-24

Similar Documents

Publication Publication Date Title
US8615637B2 (en) Systems and methods for processing memory requests in a multi-processor system using a probe engine
US8250254B2 (en) Offloading input/output (I/O) virtualization operations to a processor
KR100545951B1 (ko) 최적화된 입/출력 애플리케이션을 위한 분산된 판독 및기입 캐싱 구현
JP3924206B2 (ja) 不均一メモリ・アクセス(numa)データ処理システム
US6721848B2 (en) Method and mechanism to use a cache to translate from a virtual bus to a physical bus
CN104346294B (zh) 基于多级缓存的数据读/写方法、装置和计算机系统
US8285969B2 (en) Reducing broadcasts in multiprocessors
US9792210B2 (en) Region probe filter for distributed memory system
TWI676891B (zh) 轉譯後備緩衝器管理
US9208088B2 (en) Shared virtual memory management apparatus for providing cache-coherence
CN112631961A (zh) 一种内存管理单元、地址转译方法以及处理器
US10754791B2 (en) Software translation prefetch instructions
GB2507759A (en) Hierarchical cache with a first level data cache which can access a second level instruction cache or a third level unified cache
US20120054380A1 (en) Opportunistic improvement of mmio request handling based on target reporting of space requirements
US10467138B2 (en) Caching policies for processing units on multiple sockets
CN114218132B (zh) 信息预取方法、处理器、电子设备
CN104321750B (zh) 在共享存储器编程中保持释放一致性的方法和系统
US7523260B2 (en) Propagating data using mirrored lock caches
US10204053B2 (en) Modeling processor shared memory using a cacheability status
US9442856B2 (en) Data processing apparatus and method for handling performance of a cache maintenance operation
US20250315377A1 (en) Hybrid-paging
CN114238171A (zh) 电子设备、数据处理方法和装置、计算机系统
US9983995B2 (en) Delayed write through cache (DWTC) and method for operating the DWTC

Legal Events

Date Code Title Description
PA0105 International application

St.27 status event code: A-0-1-A10-A15-nap-PA0105

PG1501 Laying open of application

St.27 status event code: A-1-1-Q10-Q12-nap-PG1501

R18-X000 Changes to party contact information recorded

St.27 status event code: A-3-3-R10-R18-oth-X000

A201 Request for examination
A302 Request for accelerated examination
E13-X000 Pre-grant limitation requested

St.27 status event code: A-2-3-E10-E13-lim-X000

P11-X000 Amendment of application requested

St.27 status event code: A-2-2-P10-P11-nap-X000

P13-X000 Application amended

St.27 status event code: A-2-2-P10-P13-nap-X000

PA0201 Request for examination

St.27 status event code: A-1-2-D10-D11-exm-PA0201

PA0302 Request for accelerated examination

St.27 status event code: A-1-2-D10-D17-exm-PA0302

St.27 status event code: A-1-2-D10-D16-exm-PA0302

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

St.27 status event code: A-1-2-D10-D22-exm-PE0701

GRNT Written decision to grant
PR0701 Registration of establishment

St.27 status event code: A-2-4-F10-F11-exm-PR0701

PR1002 Payment of registration fee

St.27 status event code: A-2-2-U10-U12-oth-PR1002

Fee payment year number: 1

PG1601 Publication of registration

St.27 status event code: A-4-4-Q10-Q13-nap-PG1601

R18-X000 Changes to party contact information recorded

St.27 status event code: A-5-5-R10-R18-oth-X000

FPAY Annual fee payment

Payment date: 20190103

Year of fee payment: 4

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 4

FPAY Annual fee payment

Payment date: 20200103

Year of fee payment: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 5

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 6

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 7

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 8

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 9

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 10

PR1001 Payment of annual fee

St.27 status event code: A-4-4-U10-U11-oth-PR1001

Fee payment year number: 11

U11 Full renewal or maintenance fee paid

Free format text: ST27 STATUS EVENT CODE: A-4-4-U10-U11-OTH-PR1001 (AS PROVIDED BY THE NATIONAL OFFICE)

Year of fee payment: 11