GB2522057B - A data processing system and method for handling multiple transactions - Google Patents

A data processing system and method for handling multiple transactions

Info

Publication number
GB2522057B
GB2522057B GB1400503.7A GB201400503A GB2522057B GB 2522057 B GB2522057 B GB 2522057B GB 201400503 A GB201400503 A GB 201400503A GB 2522057 B GB2522057 B GB 2522057B
Authority
GB
United Kingdom
Prior art keywords
data processing
processing system
multiple transactions
handling multiple
handling
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
GB1400503.7A
Other versions
GB201400503D0 (en
GB2522057A (en
Inventor
James Mathewson Bruce
Croxford Daren
Parker Jason
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
ARM Ltd
Original Assignee
ARM Ltd
Advanced Risc Machines Ltd
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 ARM Ltd, Advanced Risc Machines Ltd filed Critical ARM Ltd
Priority to GB1400503.7A priority Critical patent/GB2522057B/en
Publication of GB201400503D0 publication Critical patent/GB201400503D0/en
Priority to US14/579,316 priority patent/US9830294B2/en
Priority to TW104100099A priority patent/TWI651620B/en
Priority to JP2016544675A priority patent/JP6574779B2/en
Priority to KR1020167021460A priority patent/KR102319809B1/en
Priority to CN201580003877.9A priority patent/CN105900076B/en
Priority to EP15700149.6A priority patent/EP3095037B1/en
Priority to PCT/GB2015/050009 priority patent/WO2015104535A1/en
Publication of GB2522057A publication Critical patent/GB2522057A/en
Priority to IL245841A priority patent/IL245841B/en
Application granted granted Critical
Publication of GB2522057B publication Critical patent/GB2522057B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0817Cache consistency protocols using directory methods
    • G06F12/0828Cache consistency protocols using directory methods with concurrent directory accessing, i.e. handling multiple concurrent coherency transactions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F12/0806Multiuser, multiprocessor or multiprocessing cache systems
    • G06F12/0815Cache consistency protocols
    • G06F12/0831Cache consistency protocols using a bus scheme, e.g. with bus monitoring or watching means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4022Coupling between buses using switching circuits, e.g. switching matrix, connection or expansion network
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • G06F15/163Interprocessor communication
    • G06F15/173Interprocessor communication using an interconnection network, e.g. matrix, shuffle, pyramid, star, snowflake
    • G06F15/17306Intercommunication techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Multi Processors (AREA)
GB1400503.7A 2014-01-13 2014-01-13 A data processing system and method for handling multiple transactions Active GB2522057B (en)

Priority Applications (9)

Application Number Priority Date Filing Date Title
GB1400503.7A GB2522057B (en) 2014-01-13 2014-01-13 A data processing system and method for handling multiple transactions
US14/579,316 US9830294B2 (en) 2014-01-13 2014-12-22 Data processing system and method for handling multiple transactions using a multi-transaction request
TW104100099A TWI651620B (en) 2014-01-13 2015-01-05 Data processing system and method for processing multiple transactions
EP15700149.6A EP3095037B1 (en) 2014-01-13 2015-01-06 A data processing system and method for handling multiple transactions
KR1020167021460A KR102319809B1 (en) 2014-01-13 2015-01-06 A data processing system and method for handling multiple transactions
CN201580003877.9A CN105900076B (en) 2014-01-13 2015-01-06 Data processing system and method for processing multiple transactions
JP2016544675A JP6574779B2 (en) 2014-01-13 2015-01-06 Data processing system and data processing method for handling a plurality of transactions
PCT/GB2015/050009 WO2015104535A1 (en) 2014-01-13 2015-01-06 A data processing system and method for handling multiple transactions
IL245841A IL245841B (en) 2014-01-13 2016-05-25 A data processing system and method for handling multiple transactions

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
GB1400503.7A GB2522057B (en) 2014-01-13 2014-01-13 A data processing system and method for handling multiple transactions

Publications (3)

Publication Number Publication Date
GB201400503D0 GB201400503D0 (en) 2014-02-26
GB2522057A GB2522057A (en) 2015-07-15
GB2522057B true GB2522057B (en) 2021-02-24

Family

ID=50191219

Family Applications (1)

Application Number Title Priority Date Filing Date
GB1400503.7A Active GB2522057B (en) 2014-01-13 2014-01-13 A data processing system and method for handling multiple transactions

Country Status (9)

Country Link
US (1) US9830294B2 (en)
EP (1) EP3095037B1 (en)
JP (1) JP6574779B2 (en)
KR (1) KR102319809B1 (en)
CN (1) CN105900076B (en)
GB (1) GB2522057B (en)
IL (1) IL245841B (en)
TW (1) TWI651620B (en)
WO (1) WO2015104535A1 (en)

Families Citing this family (33)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102428563B1 (en) * 2015-09-30 2022-08-03 삼성전자주식회사 Coherent interconnect for managing snoop operation and data processing apparatus including the same
US10157133B2 (en) 2015-12-10 2018-12-18 Arm Limited Snoop filter for cache coherency in a data processing system
US10417218B2 (en) 2015-12-23 2019-09-17 Intel Corporation Techniques to achieve ordering among storage device transactions
EP3411999A1 (en) * 2016-02-01 2018-12-12 Qualcomm Incorporated Unidirectional clock signaling in a high-speed serial link
US10159053B2 (en) 2016-02-02 2018-12-18 Qualcomm Incorporated Low-latency low-uncertainty timer synchronization mechanism across multiple devices
CA3015725C (en) 2016-02-26 2022-03-22 Micro Motion, Inc. Communicating with two or more slaves
US9817760B2 (en) 2016-03-07 2017-11-14 Qualcomm Incorporated Self-healing coarse-grained snoop filter
US9990292B2 (en) * 2016-06-29 2018-06-05 Arm Limited Progressive fine to coarse grain snoop filter
CN108228647B (en) * 2016-12-21 2022-05-24 伊姆西Ip控股有限责任公司 Method and apparatus for data copying
US10042766B1 (en) 2017-02-02 2018-08-07 Arm Limited Data processing apparatus with snoop request address alignment and snoop response time alignment
US10402349B2 (en) * 2017-02-08 2019-09-03 Arm Limited Memory controller having data access hint message for specifying the given range of one or more memory addresses
US10795820B2 (en) * 2017-02-08 2020-10-06 Arm Limited Read transaction tracker lifetimes in a coherent interconnect system
WO2018170391A1 (en) * 2017-03-17 2018-09-20 Convida Wireless, Llc Distributed transaction management in a network service layer
CN107809480A (en) * 2017-10-25 2018-03-16 上海瀚银信息技术有限公司 One kind transaction commutation system
US10692077B2 (en) 2017-10-25 2020-06-23 Mastercard International Incorporated Method and system for conveyance of machine readable code data via payment network
GB2569304B (en) * 2017-12-12 2020-05-13 Advanced Risc Mach Ltd Regulation for atomic data access requests
US11347667B2 (en) * 2018-01-10 2022-05-31 Qualcomm Incorporated Bus controller and related methods
KR102007117B1 (en) * 2018-01-19 2019-08-02 전북대학교산학협력단 Method and system for processing transaction
US10761985B2 (en) * 2018-08-02 2020-09-01 Xilinx, Inc. Hybrid precise and imprecise cache snoop filtering
EP3644190B1 (en) * 2018-10-22 2021-06-23 Arm Ltd I/o coherent request node for data processing network with improved handling of write operations
US10783080B2 (en) * 2018-10-29 2020-09-22 Arm Limited Cache maintenance operations in a data processing system
US10657055B1 (en) * 2018-12-13 2020-05-19 Arm Limited Apparatus and method for managing snoop operations
US10936048B2 (en) * 2019-03-29 2021-03-02 Intel Corporation System, apparatus and method for bulk register accesses in a processor
US10970225B1 (en) * 2019-10-03 2021-04-06 Arm Limited Apparatus and method for handling cache maintenance operations
CN113448899A (en) * 2020-03-25 2021-09-28 瑞昱半导体股份有限公司 Method and system for controlling data response by means of attributes of transaction identification code
US11281403B2 (en) * 2020-03-26 2022-03-22 Arm Limited Circuitry and method
JP2020173852A (en) * 2020-07-10 2020-10-22 マイクロ モーション インコーポレイテッド Communicating with two or more slaves
US20240004551A1 (en) * 2020-10-26 2024-01-04 Google Llc Modulating Credit Allocations in Memory Subsystems
CN112491855B (en) * 2020-11-19 2023-04-07 中国联合网络通信集团有限公司 Method and device for determining handle identifier analysis state
KR102326892B1 (en) * 2020-11-25 2021-11-16 오픈엣지테크놀로지 주식회사 Adaptive transaction handling method and device for same
US11899607B2 (en) * 2021-06-01 2024-02-13 Arm Limited Sending a request to agents coupled to an interconnect
TWI813316B (en) * 2022-05-31 2023-08-21 瑞昱半導體股份有限公司 Method for data access control among multiple nodes and data access system
GB2620198A (en) * 2022-07-01 2024-01-03 Advanced Risc Mach Ltd Coherency control

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030020397A1 (en) * 2001-06-28 2003-01-30 Lite Array Inc. Enhancement of luminance and life in electroluminescent devices
US20080040523A1 (en) * 2006-08-08 2008-02-14 Arm Limited Interconnect logic for a data processing apparatus
US20080313365A1 (en) * 2007-06-14 2008-12-18 Arm Limited Controlling write transactions between initiators and recipients via interconnect logic
US20110107345A1 (en) * 2008-07-02 2011-05-05 Nxp B.V. Multiprocessor circuit using run-time task scheduling
US20120290752A1 (en) * 2011-05-09 2012-11-15 Arm Limited Transaction indentifier expansion circuitry and method of operation of such circuitry
US20130318308A1 (en) * 2012-05-24 2013-11-28 Sonics, Inc. Scalable cache coherence for a network on a chip

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6075740A (en) 1998-10-27 2000-06-13 Monolithic System Technology, Inc. Method and apparatus for increasing the time available for refresh for 1-t SRAM compatible devices
US6665730B1 (en) * 1999-12-16 2003-12-16 At&T Corp. Method and apparatus for transaction routing in a connection-oriented packet network using a non-fault-tolerant directory server
US6928520B2 (en) 2000-04-30 2005-08-09 Hewlett-Packard Development Company, L.P. Memory controller that provides memory line caching and memory transaction coherency by using at least one memory controller agent
GB0122401D0 (en) 2001-09-17 2001-11-07 Ttp Communications Ltd Interfacing processors with external memory
ITRM20020281A1 (en) 2002-05-20 2003-11-20 Micron Technology Inc METHOD AND EQUIPMENT FOR QUICK ACCESS OF MEMORIES.
CN1174584C (en) * 2002-08-13 2004-11-03 北京长城鼎兴网络通信技术有限公司 Method for realizing multiple point communication by using serial bus
US6981088B2 (en) 2003-03-26 2005-12-27 Lsi Logic Corporation System and method of transferring data words between master and slave devices
US7159084B1 (en) 2003-12-30 2007-01-02 Altera Corporation Memory controller
US7475168B2 (en) 2004-03-11 2009-01-06 Sonics, Inc. Various methods and apparatus for width and burst conversion
US7543088B2 (en) 2004-03-11 2009-06-02 Sonics, Inc. Various methods and apparatuses for width and burst conversion
US20050253858A1 (en) 2004-05-14 2005-11-17 Takahide Ohkami Memory control system and method in which prefetch buffers are assigned uniquely to multiple burst streams
US20070011396A1 (en) * 2005-06-30 2007-01-11 Utstarcom, Inc. Method and apparatus for bandwidth efficient and bounded latency packet buffering
US7984202B2 (en) * 2007-06-01 2011-07-19 Qualcomm Incorporated Device directed memory barriers
US8438320B2 (en) 2007-06-25 2013-05-07 Sonics, Inc. Various methods and apparatus for address tiling and channel interleaving throughout the integrated system
GB2473505B (en) * 2009-09-15 2016-09-14 Advanced Risc Mach Ltd A data processing apparatus and a method for setting priority levels for transactions
GB2474446A (en) * 2009-10-13 2011-04-20 Advanced Risc Mach Ltd Barrier requests to maintain transaction order in an interconnect with multiple paths
US8972995B2 (en) 2010-08-06 2015-03-03 Sonics, Inc. Apparatus and methods to concurrently perform per-thread as well as per-tag memory access scheduling within a thread and across two or more threads

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030020397A1 (en) * 2001-06-28 2003-01-30 Lite Array Inc. Enhancement of luminance and life in electroluminescent devices
US20080040523A1 (en) * 2006-08-08 2008-02-14 Arm Limited Interconnect logic for a data processing apparatus
US20080313365A1 (en) * 2007-06-14 2008-12-18 Arm Limited Controlling write transactions between initiators and recipients via interconnect logic
US20110107345A1 (en) * 2008-07-02 2011-05-05 Nxp B.V. Multiprocessor circuit using run-time task scheduling
US20120290752A1 (en) * 2011-05-09 2012-11-15 Arm Limited Transaction indentifier expansion circuitry and method of operation of such circuitry
US20130318308A1 (en) * 2012-05-24 2013-11-28 Sonics, Inc. Scalable cache coherence for a network on a chip

Also Published As

Publication number Publication date
JP6574779B2 (en) 2019-09-11
US9830294B2 (en) 2017-11-28
EP3095037B1 (en) 2018-08-08
CN105900076B (en) 2019-12-06
US20150199290A1 (en) 2015-07-16
GB201400503D0 (en) 2014-02-26
WO2015104535A1 (en) 2015-07-16
KR20160107233A (en) 2016-09-13
IL245841A0 (en) 2016-07-31
TW201539196A (en) 2015-10-16
EP3095037A1 (en) 2016-11-23
GB2522057A (en) 2015-07-15
JP2017504897A (en) 2017-02-09
CN105900076A (en) 2016-08-24
TWI651620B (en) 2019-02-21
IL245841B (en) 2018-12-31
KR102319809B1 (en) 2021-11-01

Similar Documents

Publication Publication Date Title
IL245841A0 (en) A data processing system and method for handling multiple transactions
HK1249633A1 (en) A computer implemented method for processing a financial transaction and a system therefor
HK1207707A1 (en) Method for processing inventory information and system thereof
EP2988230A4 (en) Data processing method and computer system
HK1211102A1 (en) Method for processing data and processor
SG11201707803PA (en) Data handling method and apparatus
GB201621403D0 (en) Data processing system and method for financial or non-financial data
SG11201708917SA (en) Data processing method and system
GB201415091D0 (en) Method and system for processing a fuel transaction
GB201409214D0 (en) A method and system for processing a data set
GB201416869D0 (en) Method, data processing unit and system for managing a property
HK1221311A1 (en) Method and device for processing business data
SG10201912939YA (en) System, method and device for processing a transaction
GB201519510D0 (en) Method and system for handling data
HK1243573A1 (en) A system and method for handling video data
HK1211101A1 (en) Data processing method and system for creating input suggestions
SG10201604843VA (en) Methods and systems for processing a fund transfer
GB2533347B (en) Method and system for processing tomosynthesis data
GB201412367D0 (en) Method and system of processing a transaction for a group
IL252145B (en) System error handling in a data processing apparatus
GB201403896D0 (en) Data processing systems and methods
SG11201701856PA (en) A method, a means and a system for processing service data
GB201406223D0 (en) Method and system for facilitating a transaction
SG11201609413WA (en) Method and system for data processing
GB201702813D0 (en) Method for a computer system and computer system