CN1598798A - 在快速pci结构上产生来自pci装置的多个业务类别 - Google Patents

在快速pci结构上产生来自pci装置的多个业务类别 Download PDF

Info

Publication number
CN1598798A
CN1598798A CN200410057496.2A CN200410057496A CN1598798A CN 1598798 A CN1598798 A CN 1598798A CN 200410057496 A CN200410057496 A CN 200410057496A CN 1598798 A CN1598798 A CN 1598798A
Authority
CN
China
Prior art keywords
pci
quick
data
bridge
bus
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.)
Granted
Application number
CN200410057496.2A
Other languages
English (en)
Other versions
CN100437537C (zh
Inventor
安德鲁·W·吕克
凯文·K·梅恩
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.)
Texas Instruments Inc
Original Assignee
Texas Instruments Inc
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 Texas Instruments Inc filed Critical Texas Instruments Inc
Publication of CN1598798A publication Critical patent/CN1598798A/zh
Application granted granted Critical
Publication of CN100437537C publication Critical patent/CN100437537C/zh
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/4031Coupling between buses using bus bridges with arbitration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0024Peripheral component interconnect [PCI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0026PCI express

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

本发明涉及具有快速PCI结构及与其连接的PCI装置的系统,传送来自指定有快速PCI业务类别的PCI装置的数据。快速PCI到PCI的桥接器向用于耦合到PCI总线的每一PCI装置的授权线路指定预定的地址,并在PCI事务队列中与来自PCI装置的数据一同存储这一地址中。当数据沿快速PCI结构传送或当其在快速PCI到PCI的桥接器中被处理时,指定给各授权线路的地址成为用于该数据的快速PCI业务类别。这使得在PCI总线上来自一个装置的命令能够与来自其他PCI装置的命令无关地被处理。

Description

在快速PCI结构上产生 来自PCI装置的多个业务类别
技术领域
本发明涉及对于来自PCI装置的数据在快速PCI(PCTExpress)结构(互连的装置和交换机的网络)上产生多个业务类别(traffic class),并特别涉及产生这些业务类别的快速PCI到PCI的桥接器。
背景技术
外部部件互连(PCI)是在1992年开发的并行总线体系结构,其成为个人计算机及类似的平台的主流局域总线。这一技术的实现已接近其实际性能的极限且不易升级频率或降低电压。使用点对点传输具而有较高速度并可对于未来的改进升级的一种新的体系结构,称为快速PCI。
根据PCI总线规范,WRITE命令优先于READ命令。表2-23中对此有概述:快速PCI基本规范排序规则一览表,Rev.1.0。这样,例如,如果因为被读取的装置忙而READ命令保持在队列中,后继的WRITE命令将提前到READ命令之前。由于耦合到PCI总线的桥接器不知道哪一个装置产生了数据这样的事实,如果耦合到总线的一个PCI装置启动而发送出WRITE命令,则它可能阻挡总线上另一个PCI装置的READ命令,因而增加了其延迟。
快速PCI通过提供业务类别提供了克服这一限制的方法。所述类别由位于通过快速PCI结构发送的分组报头中的3比特组成。对每一业务类别的READ和WRITE命令与用于其他类别的这些命令独立处理。快速PCI基本规范,Rev.1.0的2.5节讨论了快速PCI虚拟通道(VC)机制,其提供了对遍及使用TC(业务类别)标签区分的快速PCI结构业务的支持。为了提供设备设计的灵活性,快速PCI标准建立了用于实现业务类别的规则,但使得对业务类别的支持超过TC0选项。该标准允许用户决定如何使用TC。
快速PCI到PCI桥接器允许PCI装置连接到快速PCI体系结构中的PCI总线。图1示出实现了到PCI桥接器112的标准快速PCI的计算机系统100的框图。桥接器由线路108耦合到快速PCI交换机106,交换机由线路104耦合到CPU 102。快速PCI交换机通过线路110还耦合到其他装置(未示出)。PCI总线114分别连接到桥接器和两个PCI应用116,112。每一应用分别具有请求/授权线路118和122。假设PCI应用(装置)120产生READ命令,该命令存储在桥接器112中的PCI FIFO队列(未示出)中。被读取的该装置忙,于是该命令被保持为再试(一种普通情形)。稍后,PCI应用116产生一进入队列的WRITE命令,同时用于应用120的READ命令仍然等待。即使被读取的该装置现在变为可用,并甚至应用120已等待响应很长时间,而应用160刚刚产生其WRITE命令,但桥接器将在READ命令之前处理WRITE命令。这样,对于应用120将要忍受延迟时间。
发明内容
本发明的总目的是要对于由PCI装置产生的数据实现快速PCI业务类别的产生。
根据本发明的一种方式,通过包括可与PCI总线耦合的PCI总线接口的快速PCI到PCI的桥接器,提供了这一和其他目的与特征。PCI总线仲裁器耦合到PCI总线接口,并具有用于被连接到PCI总线的PCI装置的请求/授权线路。PCI事务队列耦合到PCI总线接口,用于接收PCI事务。快速PCI接口耦合到PCI事务队列,并耦合到快速PCI输出端口;其中PCI总线仲裁器向从PCI装置接收的数据指定快速PCI业务类别代码,对于每一连接到PCI总线的PCI装置业务类别代码不同。
本发明另一种方式包括操作快速PCI到PCI的桥接器的方法,该方法包括从耦合到PCI总线的PCI装置接收访问PCI总线的请求。产生对PCI装置访问该总线的授权。在PCI事务队列中存储从PCI装置接收到的数据,该数据以只对应于该PCI装置的快速PCI业务类别被存储。
本发明的另一方式是要提供一种在快速PCI结构上传输由PCI装置产生的数据的方法。
从PCI装置接收数据。数据以预定的对应于该PCI装置的快速PCI业务类别代码存储。该数据和业务类别代码在快速PCI结构上传输。
本发明的另一方式包括快速PCI到PCI的桥接器,具有到PCI总线的连接以及到快速PCI结构的连接。装置向来自耦合到桥接器的每一相应装置的数据指定预定的快速PCI业务代码。装置存储该数据和业务代码。
附图说明
图1是快速PCI到PCI桥接器的当前实现的框图;以及
图2是根据本发明快速PCI到PCI桥接器及系统的框图。
具体实施方式
图2是根据本发明的系统200以及快速PCI到PCI桥接器212。桥接器212通过线路210连接到快速PCI结构并连接到PCI总线224。快速PCI结构包括快速PCI交换机206,交换机通过线路204与CPU202耦合。交换机206还通过线路208耦合到其他快速PCI装置或交换机(未示出)。附加到PCI总线224的有三个PCI依从装置232,234与236。这些装置的每一个分别具有请求/授权线路对230,228,226。所述请求/授权线路耦合到PCI总线仲裁器220。PCI总线耦合到PCI总线接口218。PCI总线接口218通过双向总线耦合到PCI事务队列216。PCI总线接口218还由请求/授权对222耦合到PCI总线仲裁器220。由PCI总线仲裁器220提供的可在PCI事务队列216中以数据存储的附加信息,如以下所讨论,沿线路238提供。PCI事务队列216由双向总线耦合到快速PCI接口214,该接口耦合到线路210。
请求/授权线路对230,228,226的授权线路的每一个分别与一地址相关联。诸如212这样的桥接器一般可允许多达六个PCI装置连接到PCI总线,以致为此3比特地址已足够。当其中一个PCI装置诸如PCI装置232发送出访问总线的请求时,PCI总线仲裁器将根据预定的协议处理这一请求。该协议可以是标准的PCI循环协议,或可采用其他协议,诸如与本申请共同未决、共同转让、同日提交的美国专利申请序列号No.____(TI-35560),其在此结合作为参考。一旦PCI总线仲裁器断定在请求/授权对230的授权线路上的授权,例如从PCI装置232向PCI总线224发送的数据将与用于这一授权线路的地址相关联,例如其可以是地址000。这一地址沿线路238传送到PCI事务队列216。来自装置的数据由PCI总线接口218接收,且接口中的受控电路接收该数据并将该数据处理到PCI事务队列。在PCI事务队列中,数据将与授权线路的地址组合,且这一地址将成为对于该数据的快速PCI业务类别。当数据沿快速PCI结构传送时,数据将从PCI事务队列发送到标准的快速PCI接口214,继续向线路210向快速PCI交换机206发送。从快速PCI交换机206,数据可发送到CPU 202,或发送到快速PCI结构上其他装置(未示出)。
如果PCI装置232正在沿总线发送READ命令,以获得快速PCI结构上另一装置的状态,因为被READ的装置忙而该READ命令被挂起,该命令不会受到来自任一PCI装置234或236的WRITE请求的影响。这是因为由这些装置产生的命令将指定给不同的业务类别,它们将分别是授权线路228和226的地址。例如这些地址可以是011或010。这样,来自PCI装置232的READ命令,将不会因为总线上其他PCI装置的活动受到较长的延迟。类似地,在快速PCI交换机206中,如果有来自耦合到线路208的其他装置的WRITE命令,只有具有相同业务类别的那些命令才会影响该READ命令在快速PCI结构中的传输。
应当注意,不必讨论从快速PCI结构进入快速PCI到PCI桥接器212的数据流,因为快速PCI结构已经支持业务类别。建立快速PCI到PCI桥接器212所需的装置以及系统200在本领域是周知的而不需要在此详细描述。
虽然已参照其优选实施例展示并描述了本发明,但本领域专业人员可很好理解,在不背离由所附权利要求定义的本发明的精神和范围之下,可对本发明作出各种变化和修改。

Claims (20)

1.一种快速PCI到PCI的桥接器,包括:
可与PCI总线连接的PCI总线接口;
PCI总线仲裁器,其耦合到PCI总线接口并具有用于被连接到PCI总线的PCI装置的请求/授权线路;
PCI事务队列,耦合到PCI总线接口,用于接收PCI事务;
快速PCI接口,其耦合到PCI事务队列,并耦合到快速PCI输出端口;其中PCI总线仲裁器向从PCI装置接收的数据指定快速PCI业务类别代码,对于每一连接到PCI总线的PCI装置业务类别代码不同。
2.权利要求1的桥接器,其中指定给来自PCI装置的数据的快速PCI业务代码与用于该装置的请求/授权线路的地址相关联。
3.权利要求1的桥接器,其中快速PCI业务代码包括3比特。
4.权利要求2的桥接器,其中快速PCI业务代码包括3比特。
5.一种操作快速PCI到PCI桥接器的方法,包括:
从耦合到PCI总线的PCI装置接收访问PCI总线的请求;
产生对PCI装置访问该总线的授权;
在PCI事务队列中存储从PCI装置接收到的数据,该数据与只对应于该PCI装置的快速PCI业务类别一起被存储。
6.权利要求5的方法,其中指定给来自PCI装置的数据的快速PCI业务代码与用于该装置的请求/授权线路的地址相关联。
7.权利要求5的方法,其中快速PCI业务类别包括3比特。
8.权利要求6的方法,其中快速PCI业务类别包括3比特。
9.一种在快速PCI结构上传输由PCI装置产生的数据的方法,包括:
接收来自PCI装置的数据;
与预定的对应于该PCI装置的快速PCI业务类别代码一起存储该数据;以及
在快速PCI结构上传输该数据和业务代码。
10.权利要求9的方法,其中快速PCI业务代码包含在快速PCI结构上传输的分组的报头中。
11.权利要求9的方法,其中快速PCI业务类别包括3比特。
12.权利要求10的方法,其中快速PCI业务类别包括3比特。
13.权利要求9的方法,其中指定给来自PCI装置的数据的快速PCI业务代码与用于该装置的请求/授权线路的地址相关联。
14.权利要求10的方法,其中指定给来自PCI装置的数据的快速PCI业务代码与用于该装置的请求/授权线路的地址相关联。
15.权利要求13的方法,其中快速PCI业务类别包括3比特。
16.权利要求14的方法,其中快速PCI业务类别包括3比特。
17.在具有到PCI总线的连接以及到快速PCI结构的连接的快速PCI到PCI的桥接器中,改进包括:用于向来自耦合到桥接器的每一相应装置的数据指定预定的快速PCI业务代码的装置;以及
用于存储该数据和业务代码的装置。
18.权利要求17的桥接器,其中指定给来自PCI装置的数据的快速PCI业务代码与用于该装置的请求/授权线路的地址相关联。
19.权利要求17的桥接器,其中快速PCI业务代码为3比特。
20.权利要求17的桥接器,其中快速PCI业务代码存储在快速PCI结构上传输的分组的报头中。
CNB2004100574962A 2003-08-14 2004-08-13 在快速pci结构上产生来自pci装置的多个业务类别 Expired - Fee Related CN100437537C (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/640,994 US7028130B2 (en) 2003-08-14 2003-08-14 Generating multiple traffic classes on a PCI Express fabric from PCI devices
US10/640,994 2003-08-14

Publications (2)

Publication Number Publication Date
CN1598798A true CN1598798A (zh) 2005-03-23
CN100437537C CN100437537C (zh) 2008-11-26

Family

ID=34136242

Family Applications (1)

Application Number Title Priority Date Filing Date
CNB2004100574962A Expired - Fee Related CN100437537C (zh) 2003-08-14 2004-08-13 在快速pci结构上产生来自pci装置的多个业务类别

Country Status (2)

Country Link
US (2) US7028130B2 (zh)
CN (1) CN100437537C (zh)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2012164416A1 (en) * 2011-06-01 2012-12-06 International Business Machines Corporation Avoiding non-posted request deadlocks in devices
CN101169767B (zh) * 2006-10-23 2014-01-29 Nec爱克赛斯科技株式会社 访问控制设备及访问控制方法
US8903966B2 (en) 2011-06-01 2014-12-02 International Business Machines Corporation Re-programming programmable hardware devices without system downtime

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7657692B2 (en) * 1999-08-04 2010-02-02 Super Talent Electronics, Inc. High-level bridge from PCIE to extended USB
US7028130B2 (en) * 2003-08-14 2006-04-11 Texas Instruments Incorporated Generating multiple traffic classes on a PCI Express fabric from PCI devices
US7240141B2 (en) * 2004-04-09 2007-07-03 Broadcom Corporation Programmable inter-virtual channel and intra-virtual channel instructions issuing rules for an I/O bus of a system-on-a-chip processor
US7266631B2 (en) * 2004-07-29 2007-09-04 International Business Machines Corporation Isolation of input/output adapter traffic class/virtual channel and input/output ordering domains
US20060092928A1 (en) * 2004-10-15 2006-05-04 Dell Products L.P. System and method for providing a shareable input/output device in a PCI express environment
US7487274B2 (en) * 2005-08-01 2009-02-03 Asic Architect, Inc. Method and apparatus for generating unique identification numbers for PCI express transactions with substantially increased performance
US20070028152A1 (en) * 2005-08-01 2007-02-01 Mishra Kishore K System and Method of Processing Received Line Traffic for PCI Express that Provides Line-Speed Processing, and Provides Substantial Gate-Count Savings
CN100403733C (zh) * 2005-08-02 2008-07-16 威盛电子股份有限公司 串行传输接口的数据处理方法与系统
JP2007053465A (ja) * 2005-08-16 2007-03-01 Kddi Corp トラヒック制御システム、トラヒック制御方法、通信装置及びコンピュータプログラム
US7536489B2 (en) * 2005-08-30 2009-05-19 Ricoh Company Limited Information processing system for determining payload size based on packet-to-payload size ratio
US20080034147A1 (en) * 2006-08-01 2008-02-07 Robert Stubbs Method and system for transferring packets between devices connected to a PCI-Express bus
JP5180729B2 (ja) * 2008-08-05 2013-04-10 株式会社日立製作所 計算機システム及びバス割当方法
US8307138B2 (en) * 2010-07-12 2012-11-06 Arm Limited Apparatus and method for controlling issuing of transaction requests
US10846126B2 (en) * 2016-12-28 2020-11-24 Intel Corporation Method, apparatus and system for handling non-posted memory write transactions in a fabric
CN107357753B (zh) * 2017-07-12 2020-03-10 郑州云海信息技术有限公司 一种实现PCIE port和硬盘地址自动匹配的方法及系统

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3641505A (en) * 1969-06-25 1972-02-08 Bell Telephone Labor Inc Multiprocessor computer adapted for partitioning into a plurality of independently operating systems
US5450549A (en) * 1992-04-09 1995-09-12 International Business Machines Corporation Multi-channel image array buffer and switching network
US5867480A (en) * 1996-09-12 1999-02-02 Cabletron Systems, Inc. Method and apparatus for controlling congestion in a network node
US5822612A (en) * 1996-09-12 1998-10-13 Thomas; Robert E. Apparatus and method for managing schedule table pointers
US5878237A (en) * 1997-07-11 1999-03-02 Compaq Computer Corp. Apparatus, method and system for a comuter CPU and memory to PCI bridge having a pluarlity of physical PCI buses
US6191998B1 (en) * 1997-10-16 2001-02-20 Altera Corporation Programmable logic device memory array circuit having combinable single-port memory arrays
US6591299B2 (en) * 1997-11-25 2003-07-08 Packeteer, Inc. Method for automatically classifying traffic with enhanced hierarchy in a packet communications network
IL148258A0 (en) * 1999-09-08 2002-09-12 Mellanox Technologies Ltd Parallel bus communications over a packet-switching fabric
US6751698B1 (en) * 1999-09-29 2004-06-15 Silicon Graphics, Inc. Multiprocessor node controller circuit and method
US6785760B2 (en) * 2001-10-19 2004-08-31 International Business Machines Corporation Performance of a PCI-X to infiniband bridge
US6910108B2 (en) * 2002-01-09 2005-06-21 International Business Machines Corporation Hardware support for partitioning a multiprocessor system to allow distinct operating systems
US20040022094A1 (en) * 2002-02-25 2004-02-05 Sivakumar Radhakrishnan Cache usage for concurrent multiple streams
US7024510B2 (en) * 2003-03-17 2006-04-04 Hewlett-Packard Development Company, L.P. Supporting a host-to-input/output (I/O) bridge
US7155553B2 (en) * 2003-08-14 2006-12-26 Texas Instruments Incorporated PCI express to PCI translation bridge
US7028130B2 (en) * 2003-08-14 2006-04-11 Texas Instruments Incorporated Generating multiple traffic classes on a PCI Express fabric from PCI devices

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101169767B (zh) * 2006-10-23 2014-01-29 Nec爱克赛斯科技株式会社 访问控制设备及访问控制方法
WO2012164416A1 (en) * 2011-06-01 2012-12-06 International Business Machines Corporation Avoiding non-posted request deadlocks in devices
US8495265B2 (en) 2011-06-01 2013-07-23 International Business Machines Corporation Avoiding non-posted request deadlocks in devices by holding the sending of requests
US8516177B2 (en) 2011-06-01 2013-08-20 International Business Machines Corporation Avoiding non-posted request deadlocks in devices by holding the sending of requests
GB2503632A (en) * 2011-06-01 2014-01-01 Ibm Avoiding non-posted request deadlocks in devices
GB2503632B (en) * 2011-06-01 2014-04-16 Ibm Avoiding non-posted request deadlocks in devices
US8903966B2 (en) 2011-06-01 2014-12-02 International Business Machines Corporation Re-programming programmable hardware devices without system downtime
US8909745B2 (en) 2011-06-01 2014-12-09 International Business Machines Corporation Re-programming programmable hardware devices without system downtime

Also Published As

Publication number Publication date
US7028130B2 (en) 2006-04-11
US20060123178A1 (en) 2006-06-08
US20050038948A1 (en) 2005-02-17
CN100437537C (zh) 2008-11-26

Similar Documents

Publication Publication Date Title
CN100437537C (zh) 在快速pci结构上产生来自pci装置的多个业务类别
US7917658B2 (en) Switching apparatus and method for link initialization in a shared I/O environment
US7698483B2 (en) Switching apparatus and method for link initialization in a shared I/O environment
US6747984B1 (en) Method and apparatus for transmitting Data
US7953074B2 (en) Apparatus and method for port polarity initialization in a shared I/O device
KR100666515B1 (ko) 저장 및 포워드 스위치 장치, 시스템 및 방법
US6978331B1 (en) Synchronization of interrupts with data packets
US8745306B2 (en) Scalable distributed memory and I/O multiprocessor system
JP4091665B2 (ja) スイッチ・ネットワーク要素における共用メモリ管理
US7590791B2 (en) Optimized switching method
EP1591908A1 (en) Separating transactions into different virtual channels
JPH09223089A (ja) 複数バス・ターゲットへのパケット・データの分割を可能にする方法および装置
US7596148B2 (en) Receiving data from virtual channels
JP2002149592A (ja) ネットワーク上でのpciブリッジ
US20050030963A1 (en) Deadlock avoidance queuing mechanism
US7124231B1 (en) Split transaction reordering circuit
EP1815663B1 (en) Performance based packet ordering in a pci express bus
US20040019704A1 (en) Multiple processor integrated circuit having configurable packet-based interfaces
US6678782B1 (en) Flow architecture for remote high-speed interface application
JP4391819B2 (ja) コンピュータ・システムの入出力ノード
US7218638B2 (en) Switch operation scheduling mechanism with concurrent connection and queue scheduling
US11593281B2 (en) Device supporting ordered and unordered transaction classes
US20040017813A1 (en) Transmitting data from a plurality of virtual channels via a multiple processor device
CN101044727B (zh) 使用直插式信用扩充器与主机总线适配器的方法及系统
US6877039B2 (en) Simplified pipeline writes over a network

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20081126