KR101753906B1 - 약하게 오더링된 도메인의 디바이스들에 강하게 오더링된 기록 트랜잭션들을 브리징하는 것, 및 관련된 장치들, 방법들 및 컴퓨터-판독 가능 매체들 - Google Patents
약하게 오더링된 도메인의 디바이스들에 강하게 오더링된 기록 트랜잭션들을 브리징하는 것, 및 관련된 장치들, 방법들 및 컴퓨터-판독 가능 매체들 Download PDFInfo
- Publication number
- KR101753906B1 KR101753906B1 KR1020177006443A KR20177006443A KR101753906B1 KR 101753906 B1 KR101753906 B1 KR 101753906B1 KR 1020177006443 A KR1020177006443 A KR 1020177006443A KR 20177006443 A KR20177006443 A KR 20177006443A KR 101753906 B1 KR101753906 B1 KR 101753906B1
- Authority
- KR
- South Korea
- Prior art keywords
- ordered
- strongly
- transactions
- consumer
- transaction
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000002093 peripheral effect Effects 0.000 claims description 9
- 230000004044 response Effects 0.000 claims description 7
- 238000004891 communication Methods 0.000 claims description 4
- 230000001419 dependent effect Effects 0.000 claims description 3
- 230000001413 cellular effect Effects 0.000 claims description 2
- 208000033748 Device issues Diseases 0.000 abstract 1
- 230000007704 transition Effects 0.000 description 9
- 238000013459 approach Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000013461 design Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 230000001172 regenerating effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000002411 adverse Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000002245 particle Substances 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4009—Coupling between buses with data restructuring
- G06F13/4013—Coupling between buses with data restructuring with data re-ordering, e.g. Endian conversion
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1605—Handling requests for interconnection or transfer for access to memory bus based on arbitration
- G06F13/161—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
- G06F13/1621—Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement by maintaining request order
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4004—Coupling between buses
- G06F13/4027—Coupling between buses using bus bridges
- G06F13/405—Coupling between buses using bus bridges where the bridge performs a synchronising function
- G06F13/4059—Coupling between buses using bus bridges where the bridge performs a synchronising function where the synchronisation uses buffers, e.g. for speed matching between buses
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4204—Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
- G06F13/4221—Bus 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
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)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Bus Control (AREA)
- Information Transfer Systems (AREA)
- Small-Scale Networks (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
[0011] 도 2a 내지 도 2c는, 도 1의 호스트 브리지 디바이스가 소비자 디바이스에 대해 강하게 오더링된 기록 트랜잭션들을 발행하고, 수용되지 않는 기록 트랜잭션을 검출하고, 기록 트랜잭션 및 후속 기록 트랜잭션들을 취소 및 재생하는 것을 예시하는 블록도들이다.
[0012] 도 3은 도 1의 호스트 브리지 디바이스의 상태 천이들을 예시하는 예시적인 상태 머신의 도면이다.
[0013] 도 4a 및 도 4b는 약하게 오더링된 도메인들의 소비자 디바이스들에 강하게 오더링된 기록 트랜잭션들을 브리징하기 위한 예시적인 프로세스를 예시하는 흐름도들이다.
[0014] 도 5는 도 1의 호스트 브리지 디바이스를 포함할 수 있는 예시적인 프로세서-기반 시스템의 블록도이다.
Claims (20)
- 호스트 브리지 디바이스(host bridge device)를 포함하는 장치로서,
상기 호스트 브리지 디바이스는,
하나 또는 그 초과의 강하게 오더링된(ordered) 생산자 디바이스들로부터 복수의 강하게 오더링된 기록 트랜잭션(transaction)들을 수신하고;
약하게 오더링된 도메인 내의 하나 또는 그 초과의 소비자 디바이스들에 대해 상기 복수의 강하게 오더링된 기록 트랜잭션들을 발행하고;
상기 하나 또는 그 초과의 소비자 디바이스들의 제 1 소비자 디바이스에 의해 수용되지 않는, 상기 복수의 강하게 오더링된 기록 트랜잭션들의 제 1 기록 트랜잭션을 검출하고;
상기 제 1 기록 트랜잭션에 후속하여 발행되고 그리고 상기 하나 또는 그 초과의 소비자 디바이스들의 각각의 소비자 디바이스에 의해 수용되는 하나 또는 그 초과의 기록 트랜잭션들 각각에 대해, 상기 각각의 소비자 디바이스에 취소 메시지를 전송하고; 그리고
상기 제 1 기록 트랜잭션 및 상기 제 1 기록 트랜잭션에 후속하여 발행된 하나 또는 그 초과의 기록 트랜잭션들을 재생(replay)하도록 구성되는,
호스트 브리지 디바이스를 포함하는 장치. - 제 1 항에 있어서,
상기 복수의 강하게 오더링된 기록 트랜잭션들을 저장하도록 구성된 트랜잭션 버퍼를 포함하고;
상기 호스트 브리지 디바이스는 상기 하나 또는 그 초과의 소비자 디바이스들에 대해 상기 복수의 강하게 오더링된 기록 트랜잭션들을 발행하기 전에 상기 트랜잭션 버퍼에 상기 복수의 강하게 오더링된 기록 트랜잭션들을 저장하도록 구성되는,
호스트 브리지 디바이스를 포함하는 장치. - 제 2 항에 있어서,
상기 하나 또는 그 초과의 소비자 디바이스들의 제 2 소비자 디바이스에 의해 수용되고, 그리고 종속되지 않는(not subject to a dependency), 상기 트랜잭션 버퍼에 저장된 상기 복수의 강하게 오더링된 기록 트랜잭션들의 제 2 기록 트랜잭션을 검출하고; 그리고
상기 트랜잭션 버퍼로부터 상기 제 2 기록 트랜잭션을 제거하도록 추가로 구성되는,
호스트 브리지 디바이스를 포함하는 장치. - 제 1 항에 있어서,
상기 제 1 소비자 디바이스로부터 재시도 응답을 수신함으로써 상기 제 1 소비자 디바이스에 의해 수용되지 않는 상기 제 1 기록 트랜잭션을 검출하도록 구성되는,
호스트 브리지 디바이스를 포함하는 장치. - 제 1 항에 있어서,
상기 각각의 소비자 디바이스에 제로-길이(zero-length) 데이터를 기대하라는 요청을 전송함으로써 상기 각각의 소비자 디바이스에 상기 취소 메시지를 전송하도록 구성되는,
호스트 브리지 디바이스를 포함하는 장치. - 제 1 항에 있어서,
하나 또는 그 초과의 PCI(Peripheral Component Interconnect) 생산자 디바이스들로부터 상기 복수의 강하게 오더링된 기록 트랜잭션들을 수신하도록 구성되는,
호스트 브리지 디바이스를 포함하는 장치.
- 제 1 항에 있어서,
집적 회로(IC)에 통합되는,
호스트 브리지 디바이스를 포함하는 장치.
- 제 1 항에 있어서,
셋톱 박스, 엔터테인먼트 유닛, 내비게이션 디바이스, 통신 디바이스, 고정 위치 데이터 유닛, 모바일 위치 데이터 유닛, 모바일 전화, 셀룰러 전화, 컴퓨터, 휴대용 컴퓨터, 데스크톱 컴퓨터, 개인용 디지털 보조기기(PDA), 모니터, 컴퓨터 모니터, 텔레비전, 튜너, 라디오, 위성 라디오, 음악 재생기, 디지털 음악 재생기, 휴대용 음악 재생기, 디지털 비디오 재생기, 비디오 재생기, 디지털 비디오 디스크(DVD) 재생기, 및 휴대용 디지털 비디오 재생기로 구성된 그룹으로부터 선택된 디바이스에 통합되는,
호스트 브리지 디바이스를 포함하는 장치.
- 호스트 브리지 디바이스를 포함하는 장치로서,
상기 호스트 브리지 디바이스는,
하나 또는 그 초과의 강하게 오더링된 생산자 디바이스들로부터 복수의 강하게 오더링된 기록 트랜잭션들을 수신하기 위한 수단;
약하게 오더링된 도메인 내의 하나 또는 그 초과의 소비자 디바이스들에 대해 상기 복수의 강하게 오더링된 기록 트랜잭션들을 발행하기 위한 수단;
상기 하나 또는 그 초과의 소비자 디바이스들의 제 1 소비자 디바이스에 의해 수용되지 않는, 상기 복수의 강하게 오더링된 기록 트랜잭션들의 제 1 기록 트랜잭션을 검출하기 위한 수단;
상기 제 1 기록 트랜잭션에 후속하여 발행되고 그리고 상기 하나 또는 그 초과의 소비자 디바이스들의 각각의 소비자 디바이스에 의해 수용되는 하나 또는 그 초과의 기록 트랜잭션들 각각에 대해, 상기 각각의 소비자 디바이스에 취소 메시지를 전송하기 위한 수단; 및
상기 제 1 기록 트랜잭션 및 상기 제 1 기록 트랜잭션에 후속하여 발행된 하나 또는 그 초과의 기록 트랜잭션들을 재생하기 위한 수단을 포함하는,
호스트 브리지 디바이스를 포함하는 장치. - 강하게 오더링된 기록 트랜잭션들을 약하게 오더링된 도메인들로 브리징(bridging)하기 위한 방법으로서,
호스트 브리지 디바이스에 의해, 하나 또는 그 초과의 강하게 오더링된 생산자 디바이스들로부터 복수의 강하게 오더링된 기록 트랜잭션들을 수신하는 단계;
약하게 오더링된 도메인 내의 하나 또는 그 초과의 소비자 디바이스들에 대해 상기 복수의 강하게 오더링된 기록 트랜잭션들을 발행하는 단계;
상기 하나 또는 그 초과의 소비자 디바이스들의 제 1 소비자 디바이스에 의해 수용되지 않는, 상기 복수의 강하게 오더링된 기록 트랜잭션들의 제 1 기록 트랜잭션을 검출하는 단계;
상기 제 1 기록 트랜잭션에 후속하여 발행되고 그리고 상기 하나 또는 그 초과의 소비자 디바이스들의 각각의 소비자 디바이스에 의해 수용되는 하나 또는 그 초과의 기록 트랜잭션들 각각에 대해, 상기 각각의 소비자 디바이스에 취소 메시지를 전송하는 단계; 및
상기 제 1 기록 트랜잭션 및 상기 제 1 기록 트랜잭션에 후속하여 발행된 하나 또는 그 초과의 기록 트랜잭션들을 재생하는 단계를 포함하는,
강하게 오더링된 기록 트랜잭션들을 약하게 오더링된 도메인들로 브리징하기 위한 방법. - 제 10 항에 있어서,
상기 하나 또는 그 초과의 소비자 디바이스들에 대해 상기 복수의 강하게 오더링된 기록 트랜잭션들을 발행하기 전에, 트랜잭션 버퍼에 상기 복수의 강하게 오더링된 기록 트랜잭션들을 저장하는 단계를 더 포함하는,
강하게 오더링된 기록 트랜잭션들을 약하게 오더링된 도메인들로 브리징하기 위한 방법.
- 제 11 항에 있어서,
상기 하나 또는 그 초과의 소비자 디바이스들의 제 2 소비자 디바이스에 의해 수용되고, 그리고 종속되지 않는, 상기 트랜잭션 버퍼에 저장된 상기 복수의 강하게 오더링된 기록 트랜잭션들의 제 2 기록 트랜잭션을 검출하는 단계; 및
상기 트랜잭션 버퍼로부터 상기 제 2 기록 트랜잭션을 제거하는 단계를 더 포함하는,
강하게 오더링된 기록 트랜잭션들을 약하게 오더링된 도메인들로 브리징하기 위한 방법. - 제 10 항에 있어서,
상기 제 1 소비자 디바이스에 의해 수용되지 않는 상기 제 1 기록 트랜잭션을 검출하는 단계는 상기 제 1 소비자 디바이스로부터 재시도 응답을 수신하는 단계를 포함하는,
강하게 오더링된 기록 트랜잭션들을 약하게 오더링된 도메인들로 브리징하기 위한 방법. - 제 10 항에 있어서,
상기 각각의 소비자 디바이스에 상기 취소 메시지를 전송하는 단계는 상기 각각의 소비자 디바이스에 제로-길이 데이터를 기대하라는 요청을 전송하는 단계를 포함하는,
강하게 오더링된 기록 트랜잭션들을 약하게 오더링된 도메인들로 브리징하기 위한 방법. - 제 10 항에 있어서,
상기 하나 또는 그 초과의 강하게 오더링된 생산자 디바이스들로부터 상기 복수의 강하게 오더링된 기록 트랜잭션들을 수신하는 단계는 하나 또는 그 초과의 PCI(Peripheral Component Interconnect) 생산자 디바이스들로부터 상기 복수의 강하게 오더링된 기록 트랜잭션들을 수신하는 단계를 포함하는,
강하게 오더링된 기록 트랜잭션들을 약하게 오더링된 도메인들로 브리징하기 위한 방법. - 컴퓨터-실행 가능 명령들이 저장되어 있는 비-일시적인 컴퓨터-판독 가능 저장 매체로서,
상기 컴퓨터-실행 가능 명령들은 프로세서로 하여금,
하나 또는 그 초과의 강하게 오더링된 생산자 디바이스들로부터 복수의 강하게 오더링된 기록 트랜잭션들을 수신하게 하고;
약하게 오더링된 도메인 내의 하나 또는 그 초과의 소비자 디바이스들에 대해 상기 복수의 강하게 오더링된 기록 트랜잭션들을 발행하게 하고;
상기 하나 또는 그 초과의 소비자 디바이스들의 제 1 소비자 디바이스에 의해 수용되지 않는, 상기 복수의 강하게 오더링된 기록 트랜잭션들의 제 1 기록 트랜잭션을 검출하게 하고;
상기 제 1 기록 트랜잭션에 후속하여 발행되고 그리고 상기 하나 또는 그 초과의 소비자 디바이스들의 각각의 소비자 디바이스에 의해 수용되는 하나 또는 그 초과의 기록 트랜잭션들 각각에 대해, 상기 각각의 소비자 디바이스에 취소 메시지를 전송하게 하고; 그리고
상기 제 1 기록 트랜잭션 및 상기 제 1 기록 트랜잭션에 후속하여 발행된 하나 또는 그 초과의 기록 트랜잭션들을 재생하게 하는,
비-일시적인 컴퓨터-판독 가능 저장 매체. - 제 16 항에 있어서,
추가로, 상기 프로세서로 하여금, 상기 하나 또는 그 초과의 소비자 디바이스들에 대해 상기 복수의 강하게 오더링된 기록 트랜잭션들을 발행하기 전에 트랜잭션 버퍼에 상기 복수의 강하게 오더링된 기록 트랜잭션들을 저장하게 하기 위한 컴퓨터-실행 가능 명령들이 저장되어 있는,
비-일시적인 컴퓨터-판독 가능 저장 매체. - 제 17 항에 있어서,
추가로, 상기 프로세서로 하여금,
상기 하나 또는 그 초과의 소비자 디바이스들의 제 2 소비자 디바이스에 의해 수용되고, 그리고 종속되지 않는, 상기 트랜잭션 버퍼에 저장된 상기 복수의 강하게 오더링된 기록 트랜잭션들의 제 2 기록 트랜잭션을 검출하게 하고, 그리고
상기 트랜잭션 버퍼로부터 상기 제 2 기록 트랜잭션을 제거하게 하기 위한
컴퓨터-실행 가능 명령들이 저장되어 있는,
비-일시적인 컴퓨터-판독 가능 저장 매체. - 제 16 항에 있어서,
상기 프로세서로 하여금, 상기 제 1 소비자 디바이스로부터 재시도 응답을 수신함으로써 상기 제 1 소비자 디바이스에 의해 수용되지 않는 상기 제 1 기록 트랜잭션을 검출하게 하기 위한 컴퓨터-실행 가능 명령들이 저장되어 있는,
비-일시적인 컴퓨터-판독 가능 저장 매체. - 제 16 항에 있어서,
상기 프로세서로 하여금, 상기 각각의 소비자 디바이스에 제로-길이 데이터를 기대하라는 요청을 전송함으로써 상기 각각의 소비자 디바이스에 상기 취소 메시지를 전송하게 하기 위한 컴퓨터-실행 가능 명령들이 저장되어 있는,
비-일시적인 컴퓨터-판독 가능 저장 매체.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/484,624 US9594713B2 (en) | 2014-09-12 | 2014-09-12 | Bridging strongly ordered write transactions to devices in weakly ordered domains, and related apparatuses, methods, and computer-readable media |
US14/484,624 | 2014-09-12 | ||
PCT/US2015/047727 WO2016040034A1 (en) | 2014-09-12 | 2015-08-31 | Bridging strongly ordered write transactions to devices in weakly ordered domains, and related apparatuses, methods, and computer-readable media |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20170046682A KR20170046682A (ko) | 2017-05-02 |
KR101753906B1 true KR101753906B1 (ko) | 2017-07-04 |
Family
ID=54106004
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020177006443A KR101753906B1 (ko) | 2014-09-12 | 2015-08-31 | 약하게 오더링된 도메인의 디바이스들에 강하게 오더링된 기록 트랜잭션들을 브리징하는 것, 및 관련된 장치들, 방법들 및 컴퓨터-판독 가능 매체들 |
Country Status (6)
Country | Link |
---|---|
US (1) | US9594713B2 (ko) |
EP (1) | EP3191971B1 (ko) |
JP (1) | JP6240809B2 (ko) |
KR (1) | KR101753906B1 (ko) |
CN (1) | CN106796561B (ko) |
WO (1) | WO2016040034A1 (ko) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10528253B2 (en) * | 2014-11-05 | 2020-01-07 | International Business Machines Corporation | Increased bandwidth of ordered stores in a non-uniform memory subsystem |
CN106445849B (zh) * | 2016-10-21 | 2019-05-28 | 郑州云海信息技术有限公司 | 一种多控制器中处理有序命令的方法 |
US10725955B2 (en) * | 2017-12-08 | 2020-07-28 | Arm Limited | Power control of inter-domain transaction bridge |
WO2022205130A1 (zh) * | 2021-03-31 | 2022-10-06 | 华为技术有限公司 | 读写操作执行方法和SoC芯片 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6370632B1 (en) | 1997-11-18 | 2002-04-09 | Intrinsity, Inc. | Method and apparatus that enforces a regional memory model in hierarchical memory systems |
JP2004512585A (ja) | 2000-09-29 | 2004-04-22 | オラクル・コーポレイション | きめの細かい一時的なデータベースへのアクセスを提供するためのシステムおよび方法 |
Family Cites Families (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5751986A (en) * | 1994-03-01 | 1998-05-12 | Intel Corporation | Computer system with self-consistent ordering mechanism |
US5835741A (en) * | 1996-12-31 | 1998-11-10 | Compaq Computer Corporation | Bus-to-bus bridge in computer system, with fast burst memory range |
US6088771A (en) * | 1997-10-24 | 2000-07-11 | Digital Equipment Corporation | Mechanism for reducing latency of memory barrier operations on a multiprocessor system |
US6038646A (en) * | 1998-01-23 | 2000-03-14 | Sun Microsystems, Inc. | Method and apparatus for enforcing ordered execution of reads and writes across a memory interface |
US6175889B1 (en) | 1998-10-21 | 2001-01-16 | Compaq Computer Corporation | Apparatus, method and system for a computer CPU and memory to high speed peripheral interconnect bridge having a plurality of physical buses with a single logical bus number |
US6405276B1 (en) * | 1998-12-10 | 2002-06-11 | International Business Machines Corporation | Selectively flushing buffered transactions in a bus bridge |
JP2001216259A (ja) * | 2000-02-04 | 2001-08-10 | Hitachi Ltd | マルチプロセッサシステム及びそのトランザックション制御方法 |
US6963967B1 (en) * | 2000-06-06 | 2005-11-08 | International Business Machines Corporation | System and method for enabling weak consistent storage advantage to a firmly consistent storage architecture |
US6754737B2 (en) | 2001-12-24 | 2004-06-22 | Hewlett-Packard Development Company, L.P. | Method and apparatus to allow dynamic variation of ordering enforcement between transactions in a strongly ordered computer interconnect |
US7162546B2 (en) * | 2001-12-27 | 2007-01-09 | Intel Corporation | Reordering unrelated transactions from an ordered interface |
US7353301B2 (en) | 2004-10-29 | 2008-04-01 | Intel Corporation | Methodology and apparatus for implementing write combining |
US7500045B2 (en) * | 2005-03-23 | 2009-03-03 | Qualcomm Incorporated | Minimizing memory barriers when enforcing strongly-ordered requests in a weakly-ordered processing system |
US9026744B2 (en) | 2005-03-23 | 2015-05-05 | Qualcomm Incorporated | Enforcing strongly-ordered requests in a weakly-ordered processing |
US7457905B2 (en) * | 2005-08-29 | 2008-11-25 | Lsi Corporation | Method for request transaction ordering in OCP bus to AXI bus bridge design |
US8019944B1 (en) * | 2005-09-28 | 2011-09-13 | Oracle America, Inc. | Checking for a memory ordering violation after a speculative cache write |
US7721023B2 (en) * | 2005-11-15 | 2010-05-18 | International Business Machines Corporation | I/O address translation method for specifying a relaxed ordering for I/O accesses |
JP4779010B2 (ja) * | 2006-02-27 | 2011-09-21 | 富士通株式会社 | バッファリング装置およびバッファリング方法 |
US7917676B2 (en) | 2006-03-10 | 2011-03-29 | Qualcomm, Incorporated | Efficient execution of memory barrier bus commands with order constrained memory accesses |
US7610458B2 (en) | 2006-04-25 | 2009-10-27 | International Business Machines Corporation | Data processing system, processor and method of data processing that support memory access according to diverse memory models |
US8645632B2 (en) * | 2009-02-04 | 2014-02-04 | Oracle America, Inc. | Speculative writestream transaction |
US8949500B2 (en) * | 2011-08-08 | 2015-02-03 | Lsi Corporation | Non-blocking processor bus bridge for network processors or the like |
CN102004709B (zh) * | 2009-08-31 | 2013-09-25 | 国际商业机器公司 | 处理器局部总线到高级可扩展接口之间的总线桥及映射方法 |
US8285908B2 (en) * | 2010-01-24 | 2012-10-09 | Freescale Semiconductor, Inc. | Bus bridge and method for interfacing out-of-order bus and multiple ordered buses |
JP5625737B2 (ja) | 2010-10-22 | 2014-11-19 | 富士通株式会社 | 転送装置、転送方法および転送プログラム |
US8782356B2 (en) | 2011-12-09 | 2014-07-15 | Qualcomm Incorporated | Auto-ordering of strongly ordered, device, and exclusive transactions across multiple memory regions |
US9229896B2 (en) * | 2012-12-21 | 2016-01-05 | Apple Inc. | Systems and methods for maintaining an order of read and write transactions in a computing system |
US9495318B2 (en) | 2013-11-25 | 2016-11-15 | Apple Inc. | Synchronizing transactions for a single master over multiple busses |
-
2014
- 2014-09-12 US US14/484,624 patent/US9594713B2/en active Active
-
2015
- 2015-08-31 CN CN201580047332.8A patent/CN106796561B/zh active Active
- 2015-08-31 WO PCT/US2015/047727 patent/WO2016040034A1/en active Application Filing
- 2015-08-31 KR KR1020177006443A patent/KR101753906B1/ko active IP Right Grant
- 2015-08-31 EP EP15763158.1A patent/EP3191971B1/en active Active
- 2015-08-31 JP JP2017511747A patent/JP6240809B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6370632B1 (en) | 1997-11-18 | 2002-04-09 | Intrinsity, Inc. | Method and apparatus that enforces a regional memory model in hierarchical memory systems |
JP2004512585A (ja) | 2000-09-29 | 2004-04-22 | オラクル・コーポレイション | きめの細かい一時的なデータベースへのアクセスを提供するためのシステムおよび方法 |
Also Published As
Publication number | Publication date |
---|---|
WO2016040034A1 (en) | 2016-03-17 |
EP3191971B1 (en) | 2020-01-01 |
KR20170046682A (ko) | 2017-05-02 |
CN106796561B (zh) | 2018-08-28 |
JP2017528827A (ja) | 2017-09-28 |
US9594713B2 (en) | 2017-03-14 |
EP3191971A1 (en) | 2017-07-19 |
JP6240809B2 (ja) | 2017-11-29 |
CN106796561A (zh) | 2017-05-31 |
US20160077991A1 (en) | 2016-03-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9053058B2 (en) | QoS inband upgrade | |
US9785605B2 (en) | Predefined static enumeration for dynamic enumeration buses | |
AU2017223094B2 (en) | Bus bridge for translating requests between a module bus and an axi bus | |
KR101753906B1 (ko) | 약하게 오더링된 도메인의 디바이스들에 강하게 오더링된 기록 트랜잭션들을 브리징하는 것, 및 관련된 장치들, 방법들 및 컴퓨터-판독 가능 매체들 | |
KR20140147898A (ko) | 메모리 액세스 지연을 트레이닝하기 위한 방법 및 장치 | |
US9842067B2 (en) | Processor communications | |
CN105468548B (zh) | 串行外围接口的通信 | |
EP3105761A1 (en) | Memory physical layer interface logic for generating dynamic random access memory (dram) commands with programmable delays | |
EP3514796B1 (en) | Providing memory training of dynamic random access memory (dram) systems using port-to-port loopbacks, and related methods, systems, and apparatuses | |
KR20150129316A (ko) | 명령 프로세싱 회로들에서의 리던던트 동기화 베리어들의 제거 및 관련 프로세서 시스템들, 방법들 및 컴퓨터-판독가능 매체 | |
US20150347017A1 (en) | Command trapping in an input/output virtualization (iov) host controller (hc) (iov-hc) of a flash-memory-based storage device | |
US20240320165A1 (en) | Advanced initialization bus (aib) | |
JP2008547139A (ja) | 一方向全二重インタフェースを有するメモリのポスト書き込みバッファのための方法、装置及びシステム | |
EP2856304B1 (en) | Issuing instructions to execution pipelines based on register-associated preferences, and related instruction processing circuits, processor systems, methods, and computer-readable media | |
US9760515B2 (en) | Shared control of a phase locked loop (PLL) for a multi-port physical layer (PHY) | |
WO2017105723A1 (en) | Audio bus interrupts | |
JP2009151486A (ja) | Dma転送処理装置 | |
US11327922B2 (en) | Bus ownership for a system power management interface (SPMI) bus | |
JP6393013B1 (ja) | リトライバスコヒーレンシプロトコルおよびインオーダーレスポンス非リトライバスコヒーレンシプロトコルを使用するプロセッサベースシステムにおけるデッドロックの回避 | |
JP2018032320A (ja) | バスシステム及びバスシステムの制御方法 | |
JP2009277004A (ja) | データ転送装置及びデータ転送システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PA0105 | International application |
Patent event date: 20170308 Patent event code: PA01051R01D Comment text: International Patent Application |
|
A201 | Request for examination | ||
A302 | Request for accelerated examination | ||
PA0201 | Request for examination |
Patent event code: PA02012R01D Patent event date: 20170419 Comment text: Request for Examination of Application |
|
PA0302 | Request for accelerated examination |
Patent event date: 20170419 Patent event code: PA03022R01D Comment text: Request for Accelerated Examination |
|
PG1501 | Laying open of application | ||
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: 20170619 |
|
GRNT | Written decision to grant | ||
PR0701 | Registration of establishment |
Comment text: Registration of Establishment Patent event date: 20170628 Patent event code: PR07011E01D |
|
PR1002 | Payment of registration fee |
Payment date: 20170629 End annual number: 3 Start annual number: 1 |
|
PG1601 | Publication of registration | ||
PR1001 | Payment of annual fee |
Payment date: 20200324 Start annual number: 4 End annual number: 4 |
|
PR1001 | Payment of annual fee |
Payment date: 20210329 Start annual number: 5 End annual number: 5 |
|
PR1001 | Payment of annual fee |
Payment date: 20230327 Start annual number: 7 End annual number: 7 |
|
PR1001 | Payment of annual fee |
Payment date: 20240320 Start annual number: 8 End annual number: 8 |