[go: up one dir, main page]

HK1063862A1 - General input/output architecture, protocol and related methods to provide isochronous channels - Google Patents

General input/output architecture, protocol and related methods to provide isochronous channels Download PDF

Info

Publication number
HK1063862A1
HK1063862A1 HK04106578A HK04106578A HK1063862A1 HK 1063862 A1 HK1063862 A1 HK 1063862A1 HK 04106578 A HK04106578 A HK 04106578A HK 04106578 A HK04106578 A HK 04106578A HK 1063862 A1 HK1063862 A1 HK 1063862A1
Authority
HK
Hong Kong
Prior art keywords
isochronous
egio
general input
transaction
output
Prior art date
Application number
HK04106578A
Other languages
English (en)
French (fr)
Chinese (zh)
Other versions
HK1063862B (en
Inventor
Jasmin Ajanovic
Hong Jiang
David L. Harriman
Original Assignee
Intel Corporation
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
Family has litigation
First worldwide family litigation filed litigation Critical https://patents.darts-ip.com/?family=23221101&utm_source=google_patent&utm_medium=platform_link&utm_campaign=public_patent_search&patent=HK1063862(A1) "Global patent litigation dataset” by Darts-ip is licensed under a Creative Commons Attribution 4.0 International License.
Application filed by Intel Corporation filed Critical Intel Corporation
Priority claimed from PCT/US2002/026781 external-priority patent/WO2003019392A1/en
Publication of HK1063862A1 publication Critical patent/HK1063862A1/en
Publication of HK1063862B publication Critical patent/HK1063862B/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/10Program control for peripheral devices
    • G06F13/12Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor
    • G06F13/124Program control for peripheral devices using hardware independent of the central processor, e.g. channel or peripheral processor where hardware is a sequential transfer control unit, e.g. microprocessor, peripheral processor or state-machine
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/4027Coupling between buses using bus bridges
    • G06F13/405Coupling between buses using bus bridges where the bridge performs a synchronising function
    • G06F13/4059Coupling between buses using bus bridges where the bridge performs a synchronising function where the synchronisation uses buffers, e.g. for speed matching between buses
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/4247Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus
    • G06F13/4252Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain bus using a handshaking protocol
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/4265Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/4265Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus
    • G06F13/4269Bus transfer protocol, e.g. handshake; Synchronisation on a point to point bus using a handshaking protocol, e.g. Centronics connection
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F5/00Methods or arrangements for data conversion without changing the order or content of the data handled
    • G06F5/06Methods or arrangements for data conversion without changing the order or content of the data handled for changing the speed of data flow, i.e. speed regularising or timing, e.g. delay lines, FIFO buffers; over- or underrun control therefor
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/30Flow control; Congestion control in combination with information about buffer occupancy at either end or at transit nodes

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)
  • Microelectronics & Electronic Packaging (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Systems (AREA)
  • Communication Control (AREA)
  • Computer And Data Communications (AREA)
  • Radio Relay Systems (AREA)
  • Debugging And Monitoring (AREA)

Claims (14)

  1. Ein Verfahren, das die Schritte beinhaltet, um einen Request für isochrone Kommunikationsressourcen innerhalb einer allgemeinen Ein-/Ausgangsstruktur eines elektronischen Gerätes zu empfangen (504), wobei die isochronen Kommunikationsressourcen einen oder mehrere virtuelle Kanäle der allgemeinen Ein-/Ausgangsstruktur beinhalten, die dazu bestimmt sind, isochrone Kommunikationen mit garantierter Bandbreite und Latenz abzuwickeln; und zu prüfen (506), ob ein oder mehrere Betriebsanforderungen in Verbindung mit dem empfangenen Request durch ein entsprechendes Subset der allgemeinen Ein-/Ausgangsstruktur befriedigt werden können, um eine mit dem empfangenen Request zusammenhängende isochrone Kommunikation zu unterstützen.
  2. Ein Verfahren nach Anspruch 1, bei dem ferner:
    eine isochrone Verbindung zwischen einem Requester (Initiator) der isochronen Kommunikation und der allgemeinen Ein-/Ausgangsstruktur aufgebaut wird (512) und die isochrone Verbindung ein oder mehrere Betriebsparameter ausweist, unter denen die isochrone Kommunikation durch die allgemeine Ein-/Ausgangsstruktur unterstützt wird.
  3. Ein Verfahren nach Anspruch 2, bei dem ferner:
    mindestens ein Subset allgemeiner Ein-/Ausgangselemente bereitgestellt wird, welche am isochronen Datenaustausch der isochronen Verbindung beteiligt sind, und die Einfüge-Requests von Requester (Initiator) bzw. Completer (Target) in Übereinstimmung mit der aufgebauten Verbindung geregelt und überwacht werden.
  4. Ein Verfahren nach Anspruch 3, bei dem ferner:
    isochrone Transaktionen mittels eines zeitabhängigen, gewichteten Port-Arbitrations-Mechanismus im Round-Robin-Verfahren geregelt und überwacht (514) werden.
  5. Ein Verfahren nach Anspruch 4, bei dem ferner:
    die Transaction-Service-Zuteilung in einer oder mehreren Datenstrukturen in Übereinstimmung mit der aufgebauten isochronen Verbindung aufrechterhalten wird.
  6. Ein Verfahren nach Ansprüchen 3 bis 5, bei dem ferner:
    in selektiver Weise durch ein oder mehrere Elemente eines aufgebauten, isochronen Kommunikationskanals Flow-Control (Flussregelung) initiiert wird, um Einfüge-Requests zu verzögern, die über ein oder mehrere Privilegien der isochronen Verbindung hinausgehen.
  7. Ein Verfahren nach einem der vorangegangenen Ansprüche, bei dem ferner:
    ein Hinweis auf Kommunikationsanforderungen und/oder-fähigkeit von zumindest einem Subset von Elementen innerhalb der allgemeinen Ein-/Ausgangsstruktur empfangen wird, nachdem an einem Hostgerät ein Reset-Event stattgefunden hat.
  8. Ein Verfahren nach Anspruch 7, bei dem ferner:
    eine Fähigkeitstabelle erstellt wird, die zumindest teilweise auf den Hinweisen basiert, die zumindest von dem Subset von Elementen innerhalb der allgemeinen Ein-/Ausgangsstruktur empfangen werden.
  9. Ein allgemeines Ein-/Ausgangselement, bestehend aus:
    einem oder mehreren Ein-/Ausgangsports, die mit einem oder mehreren anderen allgemeinen Ein-/Ausgangselementen einer allgemeinen Ein-/Ausgangsstruktur gekoppelt sind; und ferner bestehend aus einem Bandbreitenmanager, um Requests für isochrone Kommunikationsressourcen von einem Requester-/Completer-Paar zu empfangen (504) und in selektiver Weise die angeforderten, isochronen Kommunikationsressourcen bereitzustellen, nachdem geprüft worden ist (506), dass zumindest ein Subset der allgemeinen Ein-/Ausgangsstruktur eine oder mehrere Betriebsanforderungen in Verbindung mit dem empfangenen Request unterstützen kann;
    wobei die isochronen Kommunikationsressourcen einen oder mehrere virtuelle Kanäle der allgemeinen Ein-/Ausgangsstruktur beinhalten, die dazu bestimmt sind, die isochronen Kommunikationen mit garantierter Bandbreite und Latenz abzuwickeln.
  10. Ein allgemeines Ein-/Ausgangselement nach Anspruch 9, bei dem der Bandbreitenmanager einen Hinweis auf Kommunikationsfähigkeit von zumindest einem Subset der gekoppelten, allgemeinen Ein-/Ausgangselemente empfängt, um danach zu bestimmen, ob der Request für isochrone Kommunikationsressourcen erfüllt werden soll.
  11. Ein allgemeines Ein-/Ausgangselement nach Anspruch 10, bei dem der Bandbreitenmanager die Betriebsanforderungen in Verbindung mit dem isochronen Request mit der Kommunikationsfähigkeit von zumindest einem Subset eines allgemeinen Ein-/Ausgangselementes zwischen Requester und Completer vergleicht (506), um zu bestimmen, ob der Request für isochrone Ressourcen erfüllt werden soll.
  12. Ein allgemeines Ein-/Ausgangselement nach Anspruch 10 oder 11, bei dem der Bandbreitenmanager eine isochrone Verbindung zwischen dem Requester-/Completer-Paar aufbaut (512) und die allgemeine Ein-/Ausgangsstruktur einen oder mehrere Betriebsparameter ausweist, unter denen die isochronen Kommunikationsressourcen auf das Requester-/Completer-Paar zugeteilt worden sind.
  13. Ein allgemeines Ein-/Ausgangselement nach Anspruch 12, bei dem der Bandbreitenmanager für jedes intervenierende, allgemeine Ein-/Ausgangselement zwischen dem Requester-/Completer-Paar die isochrone Verbindung bereitstellt, um die in der Verbindung ausgewiesenen Betriebsparameter zu realisieren (514).
  14. Ein allgemeines Ein-/Ausgangselement nach Anspruch 13, bei dem das (die) intervenierende(n), allgemeine(n) Ein-/Ausgangselement(e) isochrone Transaktionen mittels eines zeitabhängigen, gewichteten Port-Arbitrations-Mechanismus im Round-Robin-Verfahren regeln und überwachen.
HK04106578.3A 2001-08-24 2002-08-23 General input/output architecture, protocol and related methods to provide isochronous channels HK1063862B (en)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US31470801P 2001-08-24 2001-08-24
US60/314,708 2001-08-24
PCT/US2002/026781 WO2003019392A1 (en) 2001-08-24 2002-08-23 A general input/output architecture, protocol and related methods to provide isochronous channels
US10/226,718 2002-08-23

Publications (2)

Publication Number Publication Date
HK1063862A1 true HK1063862A1 (en) 2005-01-14
HK1063862B HK1063862B (en) 2007-04-27

Family

ID=

Also Published As

Publication number Publication date
EP1442548B1 (de) 2008-05-14
DE60222782D1 (de) 2007-11-15
EP1421501A1 (de) 2004-05-26
KR20040029002A (ko) 2004-04-03
US20030115380A1 (en) 2003-06-19
EP1442548A2 (de) 2004-08-04
EP1419446A1 (de) 2004-05-19
US20140189174A1 (en) 2014-07-03
KR100750036B1 (ko) 2007-08-16
ATE395759T1 (de) 2008-05-15
US7536473B2 (en) 2009-05-19
DE60213616D1 (de) 2006-09-14
US20140129747A1 (en) 2014-05-08
KR100647161B1 (ko) 2006-11-23
US7231486B2 (en) 2007-06-12
WO2003019391A3 (en) 2003-05-30
CN1547705A (zh) 2004-11-17
EP1421501B1 (de) 2006-08-02
US9736071B2 (en) 2017-08-15
US20130254451A1 (en) 2013-09-26
US20030145134A1 (en) 2003-07-31
US9049125B2 (en) 2015-06-02
WO2003019391A2 (en) 2003-03-06
KR20040036919A (ko) 2004-05-03
WO2003019393A1 (en) 2003-03-06
US8819306B2 (en) 2014-08-26
US20140185436A1 (en) 2014-07-03
DE60226627D1 (de) 2008-06-26
US20030158992A1 (en) 2003-08-21
US20090193164A1 (en) 2009-07-30
DE60213616T2 (de) 2007-08-09
US7152128B2 (en) 2006-12-19
US20130268712A1 (en) 2013-10-10
US9602408B2 (en) 2017-03-21
CN100367254C (zh) 2008-02-06
HK1064537A1 (en) 2005-01-28
ATE374971T1 (de) 2007-10-15
US9071528B2 (en) 2015-06-30
KR20040029010A (ko) 2004-04-03
WO2003019394A1 (en) 2003-03-06
EP1419446B1 (de) 2007-10-03
US7353313B2 (en) 2008-04-01
US20070038793A1 (en) 2007-02-15
US20130254452A1 (en) 2013-09-26
KR100624610B1 (ko) 2006-09-19
US9088495B2 (en) 2015-07-21
US9860173B2 (en) 2018-01-02
CN100357922C (zh) 2007-12-26
AU2002326752A1 (en) 2003-03-10
ATE335237T1 (de) 2006-08-15
US9565106B2 (en) 2017-02-07
US20130117474A1 (en) 2013-05-09
US8566473B2 (en) 2013-10-22
US20150178241A1 (en) 2015-06-25
CN100409606C (zh) 2008-08-06
CN1547823A (zh) 2004-11-17
CN1547704A (zh) 2004-11-17

Similar Documents

Publication Publication Date Title
EP1421501B1 (de) Eine allgemeine eingabe-/ausgabearchitektur, protokoll und entsprechende verfahren zur umsetzung der flusssteuerung
EP1428130B1 (de) Allgemeine eingabe-/ausgabearchitektur und entsprechende verfahren zur bereitstellung virtueller kanäle
US9836424B2 (en) General input/output architecture, protocol and related methods to implement flow control
EP1433067B1 (de) Eine allgemeine eingabe-/ausgabearchitektur und entsprechende verfahren zur aufbau virtueller kanäle darin
HK1063862B (en) General input/output architecture, protocol and related methods to provide isochronous channels
HK1064537B (en) A general input/output interface and related method to manage data integrity
HK1063091B (en) An enhanced general input/output architecture and related methods for establishing virtual channels therein

Legal Events

Date Code Title Description
PC Patent ceased (i.e. patent has lapsed due to the failure to pay the renewal fee)

Effective date: 20160823