RU2013146508A - СПОСОБ И УСТРОЙСТВО ДЛЯ ОБЕСПЕЧЕНИЯ ПОТОКОВ НА ОСНОВЕ ИДЕНТИФИКАТОРА ЧЕРЕЗ ШИНУ PCI Express - Google Patents

СПОСОБ И УСТРОЙСТВО ДЛЯ ОБЕСПЕЧЕНИЯ ПОТОКОВ НА ОСНОВЕ ИДЕНТИФИКАТОРА ЧЕРЕЗ ШИНУ PCI Express Download PDF

Info

Publication number
RU2013146508A
RU2013146508A RU2013146508/08A RU2013146508A RU2013146508A RU 2013146508 A RU2013146508 A RU 2013146508A RU 2013146508/08 A RU2013146508/08 A RU 2013146508/08A RU 2013146508 A RU2013146508 A RU 2013146508A RU 2013146508 A RU2013146508 A RU 2013146508A
Authority
RU
Russia
Prior art keywords
transaction
attribute
identifier
ido
bypass
Prior art date
Application number
RU2013146508/08A
Other languages
English (en)
Other versions
RU2559727C2 (ru
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 RU2013146508A publication Critical patent/RU2013146508A/ru
Application granted granted Critical
Publication of RU2559727C2 publication Critical patent/RU2559727C2/ru

Links

Classifications

    • 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/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Systems (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

1. Устройство для упорядочивания пакетов, содержащее:логическую схему, выполненную с возможностью:идентификации определенной транзакции, произведенной после первой транзакции, причем указанная определенная транзакция включает в себя атрибут упорядочивания на основе идентификатора (IDO), а первая транзакция включает в себя отправленный запрос;определения, что атрибут IDO указанной определенной транзакции установлен; ипредоставления возможности указанной определенной транзакции обойти указанную первую транзакцию на основе, по меньшей мере, частично установленного атрибута IDO.2. Устройство по п.1, в которой логическая схема выполнена, по меньшей мере, частично в виде аппаратной схемы.3. Устройство по п.2, в котором логическая схема дополнительно выполнена с возможностью определять, отличается ли идентификатор запросчика указанной первой транзакции от идентификатора запросчика указанной определенной транзакции, при этом указанная определенная транзакция дополнительно выполнена с возможностью обойти указанную первую транзакции на основе определения отличия идентификатора запросчика указанной первой транзакции от идентификатора запросчика указанной определенной транзакции.4. Устройство по п.1, в котором логическая схема дополнительно выполнена с возможностью идентификации идентификатора запросчика указанной первой транзакции из заголовка первой транзакции и идентификации идентификатора запросчика указанной определенной транзакции из заголовка определенной транзакции.5. Устройство по п.1, в котором указанный отправленный запрос содержит запрос записи в память или запрос сообщения.6. Устройство по �

Claims (25)

1. Устройство для упорядочивания пакетов, содержащее:
логическую схему, выполненную с возможностью:
идентификации определенной транзакции, произведенной после первой транзакции, причем указанная определенная транзакция включает в себя атрибут упорядочивания на основе идентификатора (IDO), а первая транзакция включает в себя отправленный запрос;
определения, что атрибут IDO указанной определенной транзакции установлен; и
предоставления возможности указанной определенной транзакции обойти указанную первую транзакцию на основе, по меньшей мере, частично установленного атрибута IDO.
2. Устройство по п.1, в которой логическая схема выполнена, по меньшей мере, частично в виде аппаратной схемы.
3. Устройство по п.2, в котором логическая схема дополнительно выполнена с возможностью определять, отличается ли идентификатор запросчика указанной первой транзакции от идентификатора запросчика указанной определенной транзакции, при этом указанная определенная транзакция дополнительно выполнена с возможностью обойти указанную первую транзакции на основе определения отличия идентификатора запросчика указанной первой транзакции от идентификатора запросчика указанной определенной транзакции.
4. Устройство по п.1, в котором логическая схема дополнительно выполнена с возможностью идентификации идентификатора запросчика указанной первой транзакции из заголовка первой транзакции и идентификации идентификатора запросчика указанной определенной транзакции из заголовка определенной транзакции.
5. Устройство по п.1, в котором указанный отправленный запрос содержит запрос записи в память или запрос сообщения.
6. Устройство по п.1, в котором указанная определенная транзакция содержит отправленный запрос.
7. Устройство по п.1, в котором указанная определенная транзакция содержит неотправленный запрос.
8. Устройство по п.7, в котором указанный неотправленный запрос содержит запрос на считывание.
9. Устройство по п.1, характеризующееся тем, что выполнено с возможностью приема указанных первой и определенной транзакций через двухточечную последовательную линию передачи данных.
10. Устройство по п.9, в котором последовательная линия передачи данных является совместимой с межсоединением периферийных компонентов Express (PCIe).
11. Устройство по п.1, в котором указанная определенная транзакция содержит заголовок, включающий в себя идентификатор запросчика, поле атрибута ослабленного упорядочивания и поле атрибута IDO.
12. Устройство по п.11, в котором поле атрибута IDO содержит один бит.
13. Устройство по п.11, в котором логическая схема дополнительно выполнена с возможностью определения, установлен ли атрибут ослабленного упорядочивания, и предоставления возможности указанной определенной транзакции обойти указанную первую транзакцию при установленном атрибуте ослабленного упорядочивания.
14. Устройство для упорядочивания пакетов, содержащее:
стек многоуровневого протокола, содержащий логическую схему уровня транзакции, логическую схему уровня соединения и логическую схему физического уровня, причем логическая схема уровня транзакции выполнена с возможностью:
идентификации остановленной первой транзакции, содержащей данные заголовка, причем данные заголовка включают в себя идентификатор первого запросчика, а первая транзакция содержит отправленный запрос;
идентификации второй транзакции, произведенной после первой транзакции, причем вторая транзакция содержит данные заголовка, включающие в себя идентификатор второго запросчика, поле атрибута ослабленного упорядочивания и поле атрибута упорядочивания на основе идентификатора (IDO), при этом вторая транзакция включает в себя другой отправленный запрос, или неотправленный запрос на считывание, или неотправленный запрос с данными;
определения того, что атрибут IDO второй транзакции установлен;
определения, установлен ли атрибут ослабленного упорядочивания второй транзакции, с предоставлением возможности второй транзакции обойти первую транзакцию, когда установлен атрибут ослабленного упорядочивания, а вторая транзакция является отправленным запросом или неотправленным запросом с данными;
определения отличия идентификатора первого запросчика от идентификатора второго запросчика; и
предоставления возможностью второй транзакции обойти первую транзакцию на основе, по меньшей мере, частично установленного атрибута IDO и определения отличия идентификатора первого запросчика от идентификатора второго запросчика.
15. По меньшей мере один доступный для компьютера носитель информации, содержащий хранящийся на нем код, причем код при его исполнении компьютером вызывает выполнение компьютером:
идентификации второй транзакции, произведенной после первой транзакции, причем вторая транзакция включает в себя атрибут упорядочивания на основе идентификатора (IDO), а первая транзакция включает в себя отправленный запрос;
определения, что атрибут IDO второй транзакции установлен; и
предоставления возможности второй транзакции обойти первую транзакцию на основе, по меньшей мере, частично установленного атрибута IDO.
16. Носитель информации по п.15, в котором код при его исполнении дополнительно вызывает выполнение компьютером:
идентификации второй транзакции, произведенной после первой транзакции, причем вторая транзакция включает в себя атрибут упорядочивания на основе идентификатора (IDO), а первая транзакция включает в себя отправленный запрос;
определения, что атрибут IDO второй транзакции установлен; и
предоставления возможности второй транзакции обойти первую транзакцию на основе, по меньшей мере, частично установленного атрибута IDO.
17. Носитель информации по п.16, в котором код при его исполнении дополнительно вызывает выполнение компьютером:
определения отличия идентификатора запросчика в данных заголовка первой транзакции от идентификатора запросчика в данных заголовка второй транзакции, при этом предоставление возможностью второй транзакции обойти первую транзакцию дополнительно основано на определении отличия идентификатора запросчика первой транзакции от идентификатора запросчика второй транзакции.
18. Носитель информации по п.16, в котором вторая транзакция дополнительно включает в себя атрибут ослабленного упорядочивания, при этом код при его исполнении дополнительно вызывает выполнение компьютером определения, установлен ли атрибут ослабленного упорядочивания второй транзакции, при этом возможность обойти первую транзакцию предоставляется второй транзакции в случае, когда установлен атрибут ослабленного упорядочивания.
19. Способ упорядочивания пакетов, содержащий этапы, на которых:
идентифицируют вторую транзакцию, произведенную после первой транзакции, при этом вторая транзакция включает в себя атрибут упорядочивания на основе идентификатора (IDO), а первая транзакция включает в себя отправленный запрос;
определяют, что атрибут IDO второй транзакции установлен; и
предоставляют возможность второй транзакции обойти первую транзакцию на основе, по меньшей мере, частично установленного атрибута IDO.
20. Система для упорядочивания пакетов, содержащая:
средство идентификации второй транзакции, произведенной после первой транзакции, причем вторая транзакция включает в себя атрибут упорядочивания на основе идентификатора (IDO), а первая транзакция включает в себя отправленный запрос;
средство определения, что атрибут IDO второй транзакции установлен; и
средство предоставления возможности второй транзакции обойти первую транзакцию на основе, по меньшей мере, частично установленного атрибута IDO.
21. Система для упорядочивания пакетов, содержащая:
первое устройство ввода-вывода;
второе устройство ввода-вывода и
третье устройство ввода-вывода, соединенное с возможностью связи с первым и вторым устройствами ввода-вывода, при этом третье устройство ввода-вывода выполнено с возможностью:
приема первой транзакции от первого устройства ввода-вывода;
приема после первой транзакции второй транзакции от второго устройства ввода-вывода;
определения, что атрибут упорядочивания на основе идентификатора (IDO) второй транзакции установлен; и
предоставления возможности второй транзакции обойти первую транзакцию на основе, по меньшей мере, частично установленного атрибута IDO.
22. Система по п.21, в которой третье устройство ввода-вывода дополнительно выполнено с возможностью определения отличия идентификатора запросчика первой транзакции от идентификатора запросчика второй транзакции, при этом второй транзакции предоставлена возможность обойти первую транзакцию дополнительно на основе определения отличия идентификатора запросчика первой транзакции от идентификатора запросчика второй транзакции.
23. Система по п.21, в которой третье устройство ввода вывода дополнительно содержит переключатель.
24. Система по п.23, в которой первое устройство ввода-вывода содержит микропроцессор, и/или графический ускоритель, и/или контроллер памяти.
25. Система по п.21, в котором третье устройство ввода-вывода соединено с возможностью связи с первым и вторым устройствами ввода-вывода посредством последовательного двухточечного межсоединения, совместимого с PCIe.
RU2013146508/08A 2009-05-29 2010-03-10 Способ и устройство для обеспечения потоков на основе идентификатора через шину pci express RU2559727C2 (ru)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/474,480 US8199759B2 (en) 2009-05-29 2009-05-29 Method and apparatus for enabling ID based streams over PCI express
US12/474,480 2009-05-29

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
RU2011153260/08A Division RU2509348C2 (ru) 2009-05-29 2010-03-10 Способ и устройство для обеспечения потоков на основе идентификатора через шину pci express

Publications (2)

Publication Number Publication Date
RU2013146508A true RU2013146508A (ru) 2015-04-27
RU2559727C2 RU2559727C2 (ru) 2015-08-10

Family

ID=43220157

Family Applications (2)

Application Number Title Priority Date Filing Date
RU2013146508/08A RU2559727C2 (ru) 2009-05-29 2010-03-10 Способ и устройство для обеспечения потоков на основе идентификатора через шину pci express
RU2011153260/08A RU2509348C2 (ru) 2009-05-29 2010-03-10 Способ и устройство для обеспечения потоков на основе идентификатора через шину pci express

Family Applications After (1)

Application Number Title Priority Date Filing Date
RU2011153260/08A RU2509348C2 (ru) 2009-05-29 2010-03-10 Способ и устройство для обеспечения потоков на основе идентификатора через шину pci express

Country Status (8)

Country Link
US (1) US8199759B2 (ru)
JP (2) JP2012527036A (ru)
KR (1) KR101298862B1 (ru)
CN (2) CN101901205B (ru)
DE (2) DE112010002178T5 (ru)
RU (2) RU2559727C2 (ru)
TW (2) TWI633442B (ru)
WO (1) WO2010138230A2 (ru)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8199759B2 (en) 2009-05-29 2012-06-12 Intel Corporation Method and apparatus for enabling ID based streams over PCI express
EP2577936A2 (en) * 2010-05-28 2013-04-10 Lawrence A. Laurich Accelerator system for use with secure data storage
WO2013105978A1 (en) * 2012-01-13 2013-07-18 Intel Corporation Allocation of flow control credits for high performance devices
KR101828756B1 (ko) * 2012-10-22 2018-02-12 인텔 코포레이션 고성능 인터커넥트 코히어런스 프로토콜
US9600431B2 (en) 2012-10-22 2017-03-21 Intel Corporation High performance interconnect physical layer
US9558143B2 (en) * 2014-05-09 2017-01-31 Micron Technology, Inc. Interconnect systems and methods using hybrid memory cube links to send packetized data over different endpoints of a data handling device
US9602464B2 (en) 2014-12-12 2017-03-21 Intel Corporation Apparatus, system and method for allocating identifiers to components of a control system
US10176126B1 (en) * 2015-06-29 2019-01-08 Cadence Design Systems, Inc. Methods, systems, and computer program product for a PCI implementation handling multiple packets
US11216396B2 (en) * 2016-09-29 2022-01-04 Intel Corporation Persistent memory write semantics on PCIe with existing TLP definition
US10353833B2 (en) 2017-07-11 2019-07-16 International Business Machines Corporation Configurable ordering controller for coupling transactions
CN108471384B (zh) * 2018-07-02 2020-07-28 北京百度网讯科技有限公司 用于端到端通信的报文转发的方法和装置
US11477049B2 (en) * 2018-08-02 2022-10-18 Xilinx, Inc. Logical transport over a fixed PCIE physical transport network
CN110580202A (zh) * 2019-06-04 2019-12-17 阿里巴巴集团控股有限公司 服务器系统内消息的处理方法、装置及系统
US11748285B1 (en) * 2019-06-25 2023-09-05 Amazon Technologies, Inc. Transaction ordering management
KR102529761B1 (ko) 2021-03-18 2023-05-09 에스케이하이닉스 주식회사 PCIe 디바이스 및 그 동작 방법
KR102496994B1 (ko) * 2021-03-23 2023-02-09 에스케이하이닉스 주식회사 PCIe 인터페이스 장치 및 그 동작 방법

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3505728B2 (ja) * 1993-01-13 2004-03-15 株式会社日立製作所 記憶制御装置
US6138192A (en) * 1996-12-31 2000-10-24 Compaq Computer Corporation Delivering a request to write or read data before delivering an earlier write request
US6385708B1 (en) * 1998-11-16 2002-05-07 Infineon Technologies Ag Using a timing-look-up-table and page timers to determine the time between two consecutive memory accesses
US6691192B2 (en) * 2001-08-24 2004-02-10 Intel Corporation Enhanced general input/output architecture and related methods for establishing virtual channels therein
CN100409606C (zh) * 2001-08-24 2008-08-06 英特尔公司 管理数据完整性的通用输入/输出体系结构、协议和方法
US6728790B2 (en) * 2001-10-15 2004-04-27 Advanced Micro Devices, Inc. Tagging and arbitration mechanism in an input/output node of a computer system
US6912612B2 (en) * 2002-02-25 2005-06-28 Intel Corporation Shared bypass bus structure
US7149857B2 (en) * 2002-05-14 2006-12-12 Micron Technology, Inc. Out of order DRAM sequencer
DE10234934A1 (de) * 2002-07-31 2004-03-18 Advanced Micro Devices, Inc., Sunnyvale Antwortreihenwiederherstellungsmechanismus
US7443869B2 (en) * 2003-08-04 2008-10-28 Intel Corporation Deadlock avoidance queuing mechanism
US7444558B2 (en) * 2003-12-31 2008-10-28 Intel Corporation Programmable measurement mode for a serial point to point link
US7165131B2 (en) * 2004-04-27 2007-01-16 Intel Corporation Separating transactions into different virtual channels
US7957428B2 (en) * 2004-05-21 2011-06-07 Intel Corporation Methods and apparatuses to effect a variable-width link
US20050289306A1 (en) * 2004-06-28 2005-12-29 Sridhar Muthrasanallur Memory read requests passing memory writes
CN100456273C (zh) * 2005-03-24 2009-01-28 富士通株式会社 PCI-Express通信系统及其通信方法
US7461190B2 (en) * 2005-08-11 2008-12-02 P.A. Semi, Inc. Non-blocking address switch with shallow per agent queues
US7664904B2 (en) * 2006-03-10 2010-02-16 Ricoh Company, Limited High speed serial switch fabric performing mapping of traffic classes onto virtual channels
US20080005484A1 (en) * 2006-06-30 2008-01-03 Joshi Chandra P Cache coherency controller management
US7836220B2 (en) * 2006-08-17 2010-11-16 Apple Inc. Network direct memory access
US7949794B2 (en) * 2006-11-02 2011-05-24 Intel Corporation PCI express enhancements and extensions
US8050290B2 (en) * 2007-05-16 2011-11-01 Wilocity, Ltd. Wireless peripheral interconnect bus
US7904629B2 (en) * 2007-10-02 2011-03-08 NVON, Inc. Virtualized bus device
US8199759B2 (en) 2009-05-29 2012-06-12 Intel Corporation Method and apparatus for enabling ID based streams over PCI express

Also Published As

Publication number Publication date
US8199759B2 (en) 2012-06-12
RU2509348C2 (ru) 2014-03-10
WO2010138230A2 (en) 2010-12-02
TW201101044A (en) 2011-01-01
KR20120024669A (ko) 2012-03-14
CN101901205A (zh) 2010-12-01
RU2011153260A (ru) 2013-07-10
CN101901205B (zh) 2014-07-30
JP5897524B2 (ja) 2016-03-30
CN104123262A (zh) 2014-10-29
US20100303079A1 (en) 2010-12-02
RU2559727C2 (ru) 2015-08-10
JP2014017006A (ja) 2014-01-30
TWI633442B (zh) 2018-08-21
WO2010138230A3 (en) 2011-01-20
KR101298862B1 (ko) 2013-08-21
CN104123262B (zh) 2018-03-30
JP2012527036A (ja) 2012-11-01
TW201636865A (zh) 2016-10-16
TWI568220B (zh) 2017-01-21
DE112010002178T5 (de) 2012-09-20
DE202010018100U1 (de) 2014-04-09

Similar Documents

Publication Publication Date Title
RU2013146508A (ru) СПОСОБ И УСТРОЙСТВО ДЛЯ ОБЕСПЕЧЕНИЯ ПОТОКОВ НА ОСНОВЕ ИДЕНТИФИКАТОРА ЧЕРЕЗ ШИНУ PCI Express
US9753875B2 (en) Systems and an apparatus with a sideband interface interconnecting agents with at least one router
JP5922268B2 (ja) 拡張ヘッダを用いたパケット送信
US9639409B2 (en) Device and method for communicating between cores
US9128920B2 (en) Interrupt handling systems and methods for PCIE bridges with multiple buses
US20150067412A1 (en) Providing Error Handling Support To Legacy Devices
US8631184B2 (en) Interconnection method and device, for example for systems-on-chip
CN105718408A (zh) 可热插拔的计算系统、计算机实施方法及系统
JP2009540681A5 (ru)
RU2016105513A (ru) Масштабируемый прямой обмен данными между узлами через шину межсоединения периферийных компонентов типа экспресс (pcie)
WO2013048856A2 (en) Common idle state, active state and credit management for an interface
CN109997117B (zh) 用于将门铃合并在请求消息中的技术
US8266331B2 (en) Transmitting retry request associated with non-posted command via response credit channel
US20190121765A1 (en) System, Apparatus And Method For Hardware-Based Bi-Directional Communication Via Reliable High Performance Half-Duplex Link
JP2011170848A (ja) トレースデータの優先度の選択
TW200931422A (en) A high-speed flash memory storage device
TW202121879A (zh) 透過虛擬匯流排編碼傳播遙測資訊的系統、設備及方法
US7644222B2 (en) Low latency event communication system and method
CN104049692A (zh) 一种刀片服务器
TW201705007A (zh) 擴充的訊息信號中斷(msi)訊息資料
TWI750386B (zh) 匯流排系統
CN100587680C (zh) 管理分离总线上总线代理之间的数据流的方法和系统
CN105068962A (zh) I2c控制器访问方法及系统
US9535850B1 (en) System and method for efficient DMA transfers
CN114884768B (zh) 一种总线空闲状态的检测装置、系统及检测方法

Legal Events

Date Code Title Description
MM4A The patent is invalid due to non-payment of fees

Effective date: 20160311