CN1728105B - 纵横开关及包括该纵横开关的系统 - Google Patents
纵横开关及包括该纵横开关的系统 Download PDFInfo
- Publication number
- CN1728105B CN1728105B CN200510088233.2A CN200510088233A CN1728105B CN 1728105 B CN1728105 B CN 1728105B CN 200510088233 A CN200510088233 A CN 200510088233A CN 1728105 B CN1728105 B CN 1728105B
- Authority
- CN
- China
- Prior art keywords
- port
- crossbar switch
- ports
- debug
- debugging
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Debugging And Monitoring (AREA)
Abstract
一种具有多个端口(301、302、303、304、305、306、307、308)的纵横开关(300),它使得可以利用多个端口之一对纵横开关(300)执行调试过程,以输出芯片的状态信息。所述纵横开关利用调试块(317)来存储芯片的状态信息。
Description
交叉参考
本申请要求2004年7月30提交的美国临时申请No.60/592,474的优先权。
技术领域
本发明涉及计算机系统中的纵横开关调试。
背景技术
计算机和计算机部件利用串行或并行数据传输进行通信。并行数据传输是经由各分开的信道同时发送若干数据位,而串行数据传输则是在单一信道上一次发送一个数据位。虽然并行传输可以在互相很靠近的部件之间进行高速传输,但常常并不适合于较长距离的数据传输。串行传输用于较长距离的传输有好几个优势(例如由于只需一个信道,故成本较低)。同时利用两种数据传输方法优势的一种技术是将并行数据转换成串行数据在信道上传输,然后将串行数据转换回并行数据。为了实现此技术而不致于不恰当地限制传送速率,可以使用有足够带宽的信道进行数据传输。
为对较高带宽数据通信体系结构的这种需求作出响应,研发了诸如SERDES(串行/解串行器)结构等数据通信体系结构。SERDES是按照预定方案(例如8位/10位编码)编码和解码数据的协议。编码的数据经由一个或多个通信信道从串行器传送到解串行器进行解码。利用SERDES结构,增加了配合的计算机部件之间数据通信的带宽。
纵横开关常用来在诸如SERDES的高带宽数据通信体系结构中提供交换。纵横开关用于互连计算机系统中处于通信状态的装置。纵横开关的基本功能是从一个装置接收数据并将其路由到另一装置。纵横开关通常在专用集成电路(ASIC)上形成。ASIC通常封装在具有 多个管脚的芯片上(例如硅芯片上),通过所述管脚连接到芯片上的各元件。
通常的作法是测试ASIC来验证纵横开关的正常功能。各种测试技术已用于进行芯片级的ASIC测试。这些测试技术通常涉及使用在ASIC上形成的专用调试端口。通常,通过将专用调试端口的输出连接到监控装置(例如逻辑分析器)来监控ASIC上各种元件的功能。但这种技术有几个缺点。由于需要附加的端口作为专用调试端口,于是消耗了芯片空间。而且,需要有输入/输出管脚专用于所述专用调试端口。验证了ASIC的功能之后,调试端口和关联的输入/输出管脚一般就不再使用,使得调试端口无效使用了芯片资源。
发明内容
提供一种具有多个端口,例如输入/输出(I/0)端口的纵横开关。利用多个端口之一来输出芯片状态信息而对纵横开关进行调试过程。纵横开关通常利用调试块来存储芯片状态信息。在一个实施例中,调试块连接到调试总线,调试总线用于将状态信息传送到所选端口,将其输出。
在示范实施例中,纵横开关调试过程包括:选择关于纵横开关的输出端口;将状态信息传送到所选的输出端口;以及通过所选的输出端口输出状态信息。在一个示范实施例中,按照SERDES协议以串行格式输出信息。
附图说明
为了说明本发明,附图中示出一个示范实施例,但应理解本发明不限于所示的准确配置和装置。
图1是图解说明本发明的一种实施方案可以对其起作用的示范计算机系统的方框图。
图2是图解说明包含8端口纵横开关的专用集成电路(ASIC)的 方框图。
图3是按照本发明一个实施例的包含8端口纵横开关的示范ASIC的方框图。
图4是说明用于测试纵横开关的示范过程的步骤的流程图。
具体实施方式
说明性计算环境
参阅图1,图中示出按照本发明的纵横开关可以在其中工作的示范计算系统100。图1示出可量测和可分区的计算机系统,它包括多个元件或单元。所述各单元可以配置成形成一个或多个单独的逻辑或虚拟机器,称为分区。这种类型的计算系统的一个实例是由Hewlett-Packard(Pa1o Alto,CA)制造的Superdome系统。
在图1所示的示范实施例中,示出三个分区101a、101b和101c,每个分区包含四个单元。但应理解,系统中可以包含许多分区,仅受可用单元总数的限制,每个分区所包含的单元数的范围从每分区一个单元到系统中的单元总数都包含在单一的分区中。每个分区与系统的其余部分在逻辑上是分隔开的。
在图1所示的示范实施例中,第一分区101a包括四个单元102a、102b、102c和102d;第二分区101b包括四个单元102e、102f、102g和102h;第三分区101c包括四个单元102i、102j、102k和1021。通常这样配置可分区系统(如图1所示系统),使得一个分区中的每个单元能够与同一分区中的其它单元通信,或与其它分区中的其它单元通信。
通过一个或多个纵横开关10Sa、105b、105c、105d(统称为105)进行分区之间或分区内单元之间的通信。此外,来自任何特定单元和系统上各种其它装置(例如打印机107,用户接口109,媒体驱动器111)的通信也通过纵横开关105完成。纵横开关105可以包括各种数量的端口,并且通常形成在ASIC上。图1所示计算机环境的比较复 杂的性质就需要具有验证纵横开关105性能的能力以确保正常的系统的性能。
概述
纵横开关105通常包括连接到计算机环境中的各种装置的多个输入/输出端口。参阅图2,图中示出传统的8端口纵横开关200。纵横开关200含有8个端口201、202、203、204、205、206、207、208。纵横开关本身通常是”智能”纵横开关,即,纵横开关可以起按照提供的指令来路由数据的作用。纵横开关200通常形成在ASIC250上。ASIC250还可以包含若干寄存器阵列、存储器模块、处理器芯等。为简单起见,仅示出单一的寄存器阵列222。但应理解,ASIC250上可以包含许多寄存器阵列。
输入/输出端口(201-208)连接到调试端口220。这种配置通常称为”调试环”。寄存器阵列222也连接到调试端口220。调试端口220连接到ASIC250上的多个I/O管脚。为了测试ASIC250的功能,通常将逻辑分析器连接到调试端口的I/O管脚。通常使用特殊的指令在特定点暂停系统工作,以便能从调试端口220读出寄存器(例如寄存器阵列222)的内容。数据可以从ASIC250上的任何寄存器阵列,或从任何纵横端口(201、202、203、204、205、206、207、208)发送到调试端口220,再从所述调试端口输出到逻辑分析器(图3中示为325),通常利用定制设计的接口将逻辑分析器连接到调试端口。这种调试ASIC器件(例如纵横开关)的技术需要专用的总线通路,使状态信息可以从任何寄存器或任何端口提供到多个I/O管脚上。它还需要专用的I/O管脚和接口,用以将逻辑分析器连接到I/O管脚。所有这些项目增加了芯片开销,减少了可用的管脚资源,这常是一种稀有的商品。
按照本发明示范实施例的调试端口配置
图3所示的调试端口使用了新颖的技术来节省管脚资源和芯片比例封装面积。图3示出8端口纵横开关300的示范实施例,利用8 个已有端口之一将其调试能力结合到原有的芯片结构上。在示范实施例中,所述纵横开关驻留在ASIC上,并且可以包含任何数量的寄存器阵列、存储器模块、处理器芯等,为简单起见,这些均未示出。示范纵横开关300包括8个端口301、302、303、304、305、306、307、308。每个端口都能够通过纵横开关的互连光纤(图3中示为315)与每个其它端口通信。互连光纤315通常是低等待时间光纤。互连光纤315使在任何一个输入端口接收的数据可以被路由到所需的输出端口。
此外,调试总线320驻留在纵横开关300中。调试总线320通常具有比互连光纤315更高的等待时间。在图示的实施例中,调试总线320连接到端口301、302、303、304、305、306、307、308中的每一个,而且也连接到调试块317。调试块317能够存储数据,并可以包括寄存器阵列、随机存取存储器的区域或其它类似形式的数据存储器。调试总线320可将数据从任何端口301、302、303、304、305、306、307、308发送到调试块317,或者,另外,从调试块317发送到任何片外位置。表示任何给定时间或在任何特定条件下芯片状态的数据称为状态信息,存储在调试块317中。
经由调试总线320从调试块317读出的数据通过现有端口进行传送,所述现有端口利用按照其配置所述纵横开关的通信协议进行通信(例如按照SERDES的串行通信)。为了为来自调试块317的通信作好准备,将多个端口之一配置成在必要时作为调试端口。利用局部全端口配置(local per-port configuration),指令特定端口对调试总线320读出和写入,就可实现到这一点。在图示的实施例中,纵横开关300的任何端口都可用来创建调试端口。
在示范实施例中,选择作为调试端口的端口不能用来传输其它数据。这是因为将所述端口配置成对调试总线320读出和写入,而不用纵横开关互连光纤315。但是,由于一般纵横开关的工作通常都有一个或多个不用或备用的端口,这种限制对于系统的性能并无大 碍。在可供选择的实施例中,如果不再需要调试端口,或者如果需要将调试端口改变为不同的端口,那么,所选端口可以重新配置成作为典型的数据端口。可以利用保持端口配置信息的控制寄存器(例如控制和状态寄存器(CSR)321)来实现端口配置。必要时可以通过写入到CSR321来把所选调试端口重新设定为正常工作。
图4示出按照本发明的示范实施例对纵横开关进行调试测试的步骤。在纵横开关上选择用于调试目的的端口(步骤401)。利用标准局部全端口配置过程对所选端口进行配置,以便指令所述端口从调试总线读出(步骤403)。系统工作时,有关芯片工作的状态信息通过调试总线发送后存储在调试块中(步骤405)。通过选作调试端口的端口读出所述信息(步骤407)。然后对经由调试端口读出的信息进行分析(步骤409),方法是将此信息提供到逻辑分析器(图3中的325),或将此信息直接提供到能够分析状态数据的处理器。
这样,可以在不需要先有技术中使用的消耗资源的调试端口的情况下,在工作的所有阶段验证纵横开关的性能。通过将一个先有端口配置成起调试端口的作用,就不需要附加的I/O管脚,也不需要附加的芯片空间。此外,接收的数据可以按照原有的数据传输协议(例如,SERDES)输出,从而能够以与功能数据一样的方式在同一带宽传输/处理所述数据。
虽然已对本发明的示范实施例作了详细说明,但是,本专业的技术人员从上述公开的内容中可以明显看出对所述实施例可作各种改动。所以,在不背离本发明的精神或实质属性的前提下,本发明可以用其它具体形式体现,故本发明的范围应参考所附权利要求书,而不是上述说明。
Claims (9)
1.一种纵横开关(300),它包括:
多个输入/输出I/O端口(301、302、303、304、305、306、307、308),其中所述多个输入/输出I/O端口能够被配置成调试端口或者典型的数据端口;
调试块(317),用于存储芯片状态信息,它连接到从所述多个输入/输出I/O端口中选择的一个选择端口,其中所述选择端口用于调试;以及
调试总线(320),所述调试总线(320)连接到所述调试块(317)和所述多个输入/输出I/O端口(301,302,303,304,305,306,307,308),用于经过所述选择端口输出所述状态信息。
2.如权利要求1所述的纵横开关(300),其中还包括:
纵横开关光纤,它连接到所述多个输入/输出I/O端口。
3.如权利要求1所述的纵横开关(300),其中所述多个输入/输出I/O端口包括8个端口。
4.如权利要求1所述的纵横开关(300),其中所述纵横开关驻留在专用集成电路上。
5.如权利要求1所述的纵横开关(300),其中通过控制寄存器(321)中所存储的配置数据来选择所述选择端口。
6.如权利要求5所述的纵横开关(300),其中可以把所述控制寄存器(321)中存储的所述配置数据改为撤消对所述选择端口的选择。
7.一种计算机系统,它包括:
纵横开关(300),它具有多个输入/输出I/O端口(301、302、303、304、305、306、307、308)、驻留在所述纵横开关(300)中的调试块(317)和调试总线(320),其中所述多个输入/输出I/O端口能够被配置成调试端口或者典型的数据端口;
其中所述调试块(317)连接到从所述多个输入/输出I/O端口(301、302、303、304、305、306、307、308)中选择的一个选择端口,其中所述选择端口用于调试;
其中指示任何给定时间或在任何特定条件下芯片状态的状态信息存储在所述调试块(317)中并通过所述选择端口输出。
8.如权利要求7所述的系统,其中在所述调试块(317)和所述调试总线(320)上的所述选择端口之间传输所述状态信息。
9.如权利要求8所述的系统,其中按照并串行与串并行转换器SERDES协议输出所述状态信息。
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US59247404P | 2004-07-30 | 2004-07-30 | |
US60/592474 | 2004-07-30 | ||
US11/079,414 US8000322B2 (en) | 2004-07-30 | 2005-03-14 | Crossbar switch debugging |
US11/079414 | 2005-03-14 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN1728105A CN1728105A (zh) | 2006-02-01 |
CN1728105B true CN1728105B (zh) | 2011-01-19 |
Family
ID=35733798
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200510088233.2A Active CN1728105B (zh) | 2004-07-30 | 2005-07-29 | 纵横开关及包括该纵横开关的系统 |
Country Status (2)
Country | Link |
---|---|
US (1) | US8000322B2 (zh) |
CN (1) | CN1728105B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070024471A1 (en) * | 2005-08-01 | 2007-02-01 | Lexmark International, Inc. | Systems and methods for secure communication over wired transmission channels |
US20120019668A1 (en) * | 2009-01-21 | 2012-01-26 | Gennum Corporation | Video specific built-in self test and system test for crosspoint switches |
CN102214132B (zh) * | 2011-05-16 | 2014-07-02 | 曙光信息产业股份有限公司 | 一种调试龙芯cpu和南北桥芯片的方法和装置 |
JP6550733B2 (ja) * | 2014-12-01 | 2019-07-31 | 富士通株式会社 | 情報処理装置、診断方法及び診断プログラム |
CN105842615B (zh) * | 2015-01-14 | 2019-03-05 | 扬智科技股份有限公司 | 可于异常状态下进行调试的系统芯片及其调试方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6697359B1 (en) * | 1999-07-02 | 2004-02-24 | Ancor Communications, Inc. | High performance switch fabric element and switch systems |
Family Cites Families (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5189665A (en) * | 1989-03-30 | 1993-02-23 | Texas Instruments Incorporated | Programmable configurable digital crossbar switch |
US5625780A (en) * | 1991-10-30 | 1997-04-29 | I-Cube, Inc. | Programmable backplane for buffering and routing bi-directional signals between terminals of printed circuit boards |
US6189140B1 (en) * | 1997-04-08 | 2001-02-13 | Advanced Micro Devices, Inc. | Debug interface including logic generating handshake signals between a processor, an input/output port, and a trace logic |
US5982753A (en) * | 1997-06-09 | 1999-11-09 | Fluke Corporation | Method of testing a switched local area network |
US6141344A (en) * | 1998-03-19 | 2000-10-31 | 3Com Corporation | Coherence mechanism for distributed address cache in a network switch |
US6445682B1 (en) * | 1998-10-06 | 2002-09-03 | Vertical Networks, Inc. | Systems and methods for multiple mode voice and data communications using intelligently bridged TDM and packet buses and methods for performing telephony and data functions using the same |
US6751698B1 (en) * | 1999-09-29 | 2004-06-15 | Silicon Graphics, Inc. | Multiprocessor node controller circuit and method |
US6587965B1 (en) * | 2000-04-29 | 2003-07-01 | Hewlett-Packard Development Company, L.P. | System and method for single point observability of a dual-mode control interface |
ATE354227T1 (de) * | 2000-06-19 | 2007-03-15 | Broadcom Corp | Vermittlungsstelle mit einer speicherverwaltungeinheit zur verbesserung der flusssteurung |
US6850852B1 (en) * | 2000-07-14 | 2005-02-01 | Agilent Technologies, Inc. | System and method for configuring a logic analyzer to trigger on data communications packets and protocols |
US6721313B1 (en) * | 2000-08-01 | 2004-04-13 | International Business Machines Corporation | Switch fabric architecture using integrated serdes transceivers |
US7245587B2 (en) * | 2000-12-20 | 2007-07-17 | Inmon Corporation | Method to associate input and output interfaces with packets read from a mirror port |
US6892248B2 (en) * | 2001-02-21 | 2005-05-10 | International Business Machines Corporation | Method and apparatus for configuring a port on a legacy-free device for general I/O purposes or debugging purposes |
US7209476B1 (en) * | 2001-10-12 | 2007-04-24 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Method and apparatus for input/output port mirroring for networking system bring-up and debug |
US7051180B2 (en) * | 2002-01-09 | 2006-05-23 | International Business Machines Corporation | Masterless building block binding to partitions using identifiers and indicators |
US7200151B2 (en) * | 2002-06-28 | 2007-04-03 | Manter Venitha L | Apparatus and method for arbitrating among equal priority requests |
US7630300B2 (en) * | 2002-07-02 | 2009-12-08 | Emulex Design & Manufacturing Corporation | Methods and apparatus for trunking in fibre channel arbitrated loop systems |
US7373561B2 (en) * | 2002-10-29 | 2008-05-13 | Broadcom Corporation | Integrated packet bit error rate tester for 10G SERDES |
US7188277B2 (en) * | 2003-03-28 | 2007-03-06 | Hewlett-Packard Development Company, L.P. | Integrated circuit |
US7184916B2 (en) * | 2003-05-20 | 2007-02-27 | Cray Inc. | Apparatus and method for testing memory cards |
US6954821B2 (en) * | 2003-07-31 | 2005-10-11 | Freescale Semiconductor, Inc. | Crossbar switch that supports a multi-port slave device and method of operation |
US7564791B2 (en) * | 2003-12-29 | 2009-07-21 | Intel Corporation | Monitoring packet flows |
-
2005
- 2005-03-14 US US11/079,414 patent/US8000322B2/en active Active
- 2005-07-29 CN CN200510088233.2A patent/CN1728105B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6697359B1 (en) * | 1999-07-02 | 2004-02-24 | Ancor Communications, Inc. | High performance switch fabric element and switch systems |
Also Published As
Publication number | Publication date |
---|---|
US8000322B2 (en) | 2011-08-16 |
CN1728105A (zh) | 2006-02-01 |
US20060026468A1 (en) | 2006-02-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6675284B1 (en) | Integrated circuit with multiple processing cores | |
EP0840134B1 (en) | A method of effecting communication using a test access port (TAP) controller | |
US6185703B1 (en) | Method and apparatus for direct access test of embedded memory | |
US5978870A (en) | On-chip parallel-serial data packet converter to interconnect parallel bus of integrated circuit chip with external device | |
CN100568187C (zh) | 一种用于对调试消息进行掩码的方法和装置 | |
EP0840219B1 (en) | An integrated circuit device and method of communication therewith | |
CN100565472C (zh) | 一种适用于多处理器核系统芯片的调试方法 | |
EP0840217B1 (en) | An integrated circuit with TAP (test access port) controller | |
CN1728105B (zh) | 纵横开关及包括该纵横开关的系统 | |
US11704023B2 (en) | Extensible storage system and method | |
CN102314950A (zh) | 用于新兴存储器技术的可编程测试引擎(pcdte) | |
US6041378A (en) | Integrated circuit device and method of communication therewith | |
US6526535B1 (en) | Synchronous data adaptor | |
US6484273B1 (en) | Integrated EJTAG external bus interface | |
CN111722968A (zh) | 一种硬件调试方法、装置、系统及可读存储介质 | |
EP0840235B1 (en) | Message protocol | |
CN101689159A (zh) | 令牌协议 | |
CN101470597B (zh) | 一种高速随机性检测卡 | |
CN112557886B (zh) | 协议转换桥接电路以及系统级芯片 | |
US7165132B1 (en) | Processing node including a plurality of processor cores and an interconnect configurable in a test-mode to cause first and second transaction source indicators to be interchanged | |
CN101141227A (zh) | 误码测试装置 | |
CN118311916B (zh) | 一种可编程逻辑系统和微处理器 | |
US6292908B1 (en) | Method and apparatus for monitoring internal bus signals by using a reduced image of the internal bus | |
CN100354849C (zh) | 加强型可扩充分时总线架构 | |
CN115757240A (zh) | 调试接口电路及芯片 |
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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20170207 Address after: American Texas Patentee after: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP Address before: American Texas Patentee before: HP Development Co., Ltd. |
|
TR01 | Transfer of patent right |