TWI604303B - Inout/output expander chip and verification method therefor - Google Patents

Inout/output expander chip and verification method therefor Download PDF

Info

Publication number
TWI604303B
TWI604303B TW105135226A TW105135226A TWI604303B TW I604303 B TWI604303 B TW I604303B TW 105135226 A TW105135226 A TW 105135226A TW 105135226 A TW105135226 A TW 105135226A TW I604303 B TWI604303 B TW I604303B
Authority
TW
Taiwan
Prior art keywords
signal
input
frequency
output
packet
Prior art date
Application number
TW105135226A
Other languages
Chinese (zh)
Other versions
TW201810037A (en
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 上海兆芯集成電路有限公司
Application granted granted Critical
Publication of TWI604303B publication Critical patent/TWI604303B/en
Publication of TW201810037A publication Critical patent/TW201810037A/en

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/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • 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/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
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Debugging And Monitoring (AREA)
  • Semiconductor Integrated Circuits (AREA)

Description

輸入輸出擴展晶片以及其驗證方法 Input and output extension chip and verification method thereof

本案係關於輸入輸出擴展晶片(input/output expander(IOE)chip)以及其驗證方法。 This case is about input/output expander (IOE) chip and its verification method.

晶片流片(tapeout)後尚須經過驗證程序。驗證程序通常是抓取晶片內部不同硬件模組的偵錯信號(debug signal)進行分析來達到偵錯的目的。 The wafer has to be verified after the tapeout. The verification program usually captures the debug signal of different hardware modules inside the chip for analysis to achieve the purpose of debugging.

以晶片組(chipset)為例,一般是經由其上動態隨機存取記憶體控制器(DRAM controller)大量的高速輸入輸出腳位(IO pins)偵錯。 Taking a chipset as an example, a large number of high-speed input/output pins (IO pins) are detected via a DRAM controller.

然而,輸入輸出擴展晶片(IOE chip;例如,高速周邊元件互連切換器(PCIE switch))不一定存在類似動態隨機存取記憶體控制器如此具有大量高速輸入輸出腳位的硬件,傳統解決方式是額外增加輸入輸出腳位,以實現晶片驗證。如此一來,封裝體積以及成本都會顯著增加。特別是,增設之輸入輸出腳位(如,通用型輸入輸出腳位(GPIO))一般是連結邏輯分析裝置(logic analyzer)展現其信號之波形以供偵錯。但通用型輸入輸出腳位(GPIO)的操作速度有限,對高速內部信號偵錯不利,有可能導致偵錯信號失真。 However, an input/output extension chip (IOE chip; for example, a high-speed peripheral component interconnect switch (PCIE switch) does not necessarily have a hardware like a dynamic random access memory controller having a large number of high-speed input and output pins, a conventional solution Additional input and output pins are added for wafer verification. As a result, the package size and cost will increase significantly. In particular, the added input and output pins (eg, general purpose input and output pin (GPIO)) are typically connected to a logic analyzer to display the waveform of their signals for debugging. However, the general-purpose input/output pin (GPIO) has a limited operation speed, which is disadvantageous for high-speed internal signal detection, which may cause distortion of the debug signal.

本案揭露一種輸入輸出擴展晶片,得以利用既有的信號下行埠(signal downstream port),以不過分限制傳送速度的方式輸出信號供偵錯。 The present invention discloses an input/output extension chip that can utilize the existing signal downstream port to output a signal for debugging without excessively limiting the transmission speed.

根據本案一種實施方式實現的一輸入輸出擴展晶片包括一偵錯用信號產生器、一偵錯用封包產生器以及至少一信號下行埠。該偵錯用信號產生器將根據該輸入輸出擴展晶片內部一主時脈自該輸入輸出擴展晶片中至少一硬件模組採樣獲得的信號組合產生一偵錯用信號。該偵錯用封包產生器產生一偵錯用封包,其中該偵錯用封包乘載該偵錯用信號。該偵錯用封包經由上述至少一信號下行埠中之一者從該輸入輸出擴展晶片輸出以進行信號偵錯。 An input/output extension chip implemented according to an embodiment of the present invention includes a debug signal generator, a debug packet generator, and at least one signal downlink. The debug signal generator generates a debug signal according to a combination of signals obtained by sampling at least one hardware module of the input/output extension chip from a main clock in the input/output extension chip. The debug packet generator generates a debug packet, wherein the debug packet carries the debug signal. The debug packet is output from the input/output extension chip via one of the at least one signal downlink to perform signal detection.

本案揭露一種輸入輸出擴展晶片驗證方法,其中一種實施方式包括以下步驟:將根據一輸入輸出擴展晶片內部一主時脈自該輸入輸出擴展晶片中至少一硬件模組採樣獲得的信號組合產生一偵錯用信號;產生一偵錯用封包,其中該偵錯用封包乘載該偵錯用信號;以及傳送該偵錯用封包至該輸入輸出擴展晶片之至少一信號下行埠中之一者從該輸入輸出擴展晶片輸出以進行信號偵錯。 The present invention discloses an input/output extended chip verification method, wherein an embodiment includes the following steps: generating a Detector according to a signal combination obtained by sampling at least one hardware module in the input/output extension chip according to an input/output extension chip internal master clock Generating an error detection packet, wherein the error detection packet carries the error detection signal; and transmitting the error detection packet to one of at least one signal downlink of the input/output extension chip from the Input and output extended chip outputs for signal debugging.

本發明之前述輸入輸出擴展晶片及其驗證方法將偵錯用信號封裝為偵錯用封包,並利用輸入輸出擴展晶片已有之信號下行埠作為晶片驗證的輸入/輸出埠,無需額外增加輸入輸出腳位。此外,本發明採樣用的主時脈可選自該輸入輸出擴展晶片上既有的較高操作時脈;例如,直接記憶體存取(DMA)用之操作時脈。如此一來,無須為了晶片驗證另外提供專用的 時脈,相當節約成本。 The foregoing input/output extension chip and the verification method thereof of the invention package the error detection signal into a debugging package, and use the input and output extension chip to extend the existing signal of the chip as the input/output port of the wafer verification, without additional input and output. Feet. In addition, the primary clock for sampling of the present invention can be selected from the higher operating clocks on the input and output extension chip; for example, the operating clock for direct memory access (DMA). In this way, there is no need to provide dedicated for wafer verification. The clock is quite cost effective.

下文特舉實施例,並配合所附圖示,詳細說明本發明內容。 The invention is described in detail below with reference to the accompanying drawings.

100‧‧‧輸入輸出擴展晶片 100‧‧‧Input and output expansion chip

102_1…102_N‧‧‧硬件模組 102_1...102_N‧‧‧ hardware module

104_1…104_N‧‧‧採樣器 104_1...104_N‧‧‧sampler

106‧‧‧偵錯用信號產生器 106‧‧‧Detection signal generator

108‧‧‧偵錯用封包產生器 108‧‧‧Detection packet generator

110‧‧‧路由器 110‧‧‧ router

112‧‧‧信號下行埠 112‧‧‧ Signal Downstream

202‧‧‧環回卡 202‧‧‧Circular Card

204‧‧‧信號分析軟體 204‧‧‧Signal Analysis Software

206‧‧‧驗證用計算機 206‧‧‧Verification computer

208‧‧‧協議分析儀 208‧‧‧ Protocol Analyzer

400‧‧‧採樣器 400‧‧‧sampler

402‧‧‧寄存器 402‧‧‧ Register

404‧‧‧多工器 404‧‧‧Multiplexer

600‧‧‧64位元封裝模式的偵錯用封包 Interrogation packet for 600‧‧‧64-bit encapsulation mode

610‧‧‧32位元封裝模式的偵錯用封包 610‧‧‧32-bit encapsulation mode debug packet

Async_FIFO_0…Async_FIFO_3‧‧‧先入先出緩衝器 Async_FIFO_0...Async_FIFO_3‧‧‧First In First Out Buffer

DBBG_GRP0[0]…DBBG_GRP0[n]、DBBG_GRP1[0]…DBBG_GRP1[n]、DBBG_GRP2[0]…DBBG_GRP2[n]、DBBG_GRP3[0]…DBBG_GRP3[n]‧‧‧數據 DBBG_GRP0[0]...DBBG_GRP0[n], DBBG_GRP1[0]...DBBG_GRP1[n], DBBG_GRP2[0]...DBBG_GRP2[n], DBBG_GRP3[0]...DBBG_GRP3[n]‧‧‧ Data

DP‧‧‧偵錯用封包 DP‧‧‧Detection packet

DP_S‧‧‧串行之偵錯用封包 DP_S‧‧‧ Serial debugging package

DS‧‧‧偵錯用信號 DS‧‧‧Detection signal

MS_CLK‧‧‧主時脈 MS_CLK‧‧‧Main clock

S302…S312、S502…S508‧‧‧步驟 S302...S312, S502...S508‧‧‧ steps

第1圖根據本案一種實施方式圖解一輸入輸出擴展晶片100;第2圖根據本案一種實施方式圖解該輸入輸出擴展晶片100驗證時的連結狀況;第3圖以流程圖搭配第1圖、第2圖說明根據本案一種實施方式所實現的一種輸入輸出擴展晶片驗證方法;第4圖根據本案一種實施方式圖解對應一硬件模組的一採樣器400;第5圖以流程圖根據本案一種實施方式說明硬件模組的信號採樣;第6A圖根據本案一種實施方式圖解64位元封裝模式的偵錯用封包600;以及第6B圖根據本案一種實施方式圖解32位元封裝模式的偵錯用封包600。 1 is a diagram illustrating an input/output extension chip 100 according to an embodiment of the present invention; FIG. 2 is a diagram illustrating a connection state when the input/output extension chip 100 is verified according to an embodiment of the present invention; and FIG. 3 is a flowchart with FIG. 1 and FIG. FIG. 4 illustrates a sampler 400 corresponding to a hardware module according to an embodiment of the present invention; FIG. 5 illustrates a flow chart according to an embodiment of the present invention. Signal sampling of the hardware module; FIG. 6A illustrates a 64-bit encapsulation mode debug packet 600 according to an embodiment of the present invention; and FIG. 6B illustrates a 32-bit encapsulation mode debug packet 600 according to an embodiment of the present invention.

以下敘述列舉本發明的多種實施例。以下敘述介紹本發明的基本概念,且並非意圖限制本發明內容。實際發明範圍應依照申請專利範圍界定之。 The following description sets forth various embodiments of the invention. The following description sets forth the basic concepts of the invention and is not intended to limit the invention. The scope of the actual invention shall be defined in accordance with the scope of the patent application.

第1圖根據本案一種實施方式圖解一輸入輸出擴 展晶片100,包括複數個硬件模組102_1、102_2…102_(N-1)、102_N、複數個採樣器104_1、104_2…104_(N-1)、104_N、一偵錯用信號產生器106、一偵錯用封包產生器108、一路由器110以及至少一信號下行埠(downstream port)112(圖中為了簡潔僅顯示選定使用之信號下行埠112)。 Figure 1 illustrates an input/output expansion according to an embodiment of the present invention. The wafer 100 includes a plurality of hardware modules 102_1, 102_2...102_(N-1), 102_N, a plurality of samplers 104_1, 104_2...104_(N-1), 104_N, a debug signal generator 106, and a The debug packet generator 108, a router 110, and at least one downstream port 112 (only the selected signal downlink 112 is shown for simplicity in the figure).

該等採樣器104_1、104_2…104_(N-1)、104_N個別對應該等硬件模組102_1、102_2…102_(N-1)、102_N,根據該輸入輸出擴展晶片100內部一主時脈MS_CLK分別自所對應的硬件模組採樣獲得信號,交由該偵錯用信號產生器106組合產生一偵錯用信號DS。該偵錯用封包產生器108用於產生一偵錯用封包DP,該偵錯用封包DP乘載該偵錯用信號DS。該偵錯用封包DP經由其中之一信號下行埠112從該輸入輸出擴展晶片100輸出以進行信號偵錯。在一實施例中,該路由器110傳送該偵錯用封包DP至選定之信號下行埠112。信號下行埠112可以其中物理層實現偵錯用封包DP之並串轉換,輸出串行之偵錯用封包DP_S。 The samplers 104_1, 104_2, ..., 104_(N-1), 104_N are respectively corresponding to the hardware modules 102_1, 102_2, ..., 102_(N-1), 102_N, according to the input/output extension chip 100, a main clock MS_CLK A signal is obtained from the corresponding hardware module sample, and the debug signal generator 106 is combined to generate a debug signal DS. The error detection packet generator 108 is configured to generate an error detection packet DP, and the error detection packet DP carries the error detection signal DS. The debug packet DP is output from the input/output extension chip 100 via one of the signal downlinks 112 for signal detection. In one embodiment, the router 110 transmits the debug packet DP to the selected signal downlink 112. The signal downlink 112 can be implemented by the physical layer implementing parallel-to-serial conversion of the packet for debugging, and outputting the serial debugging packet DP_S.

上述主時脈MS_CLK可選自該輸入輸出擴展晶片100上既有的較高操作時脈。例如,自該等硬件模組102_1、102_2…102_(N-1)、102_N之操作時脈中的高頻者擇一。例如,選用直接記憶體存取(DMA)用之操作時脈。如此一來,本案無須為了晶片驗證另外提供專用的時脈,相當節約成本。 The master clock MS_CLK may be selected from the higher operating clocks that are present on the input and output extension die 100. For example, the high frequency ones in the operating clocks of the hardware modules 102_1, 102_2...102_(N-1), 102_N are selected. For example, use the operating clock for direct memory access (DMA). In this way, the case does not need to provide a dedicated clock for wafer verification, which is quite cost-effective.

特別是,該信號下行埠112也可以是既存於傳統輸入輸出擴展晶片者,無須為了晶片驗證另外增設。傳統輸入輸出擴展晶片通常採用信號下行埠來外接裝置、或級聯其他介面 擴展切換器。本案係更將信號下行埠用作晶片驗證的輸入/輸出埠。 In particular, the signal downlink 112 can also be a conventional input/output extension chip, without additional addition for wafer verification. Traditional I/O expansion chips usually use signal downlinks to connect external devices or cascade other interfaces. Extend the switcher. In this case, the signal downlink is used as the input/output port for wafer verification.

一種實施方式中,該輸入輸出擴展晶片100可為一高速周邊元件互連切換器(PCIE switch)。該信號下行埠112可以是PCIE下行埠(PCIE downstream port)。該路由器110可以由一PCIE集線器(PCIE hub)以及一多工器串接組合而成,使偵錯用封包DP經該PCIE集線器再經該多工器傳送至PCIE下行埠。此外,PCIE切換器所具備的多通道(lane)特性也有助於傳送高速的大數量數據供偵錯。PCIE切換器更有不受限於控制器驅動器(controller driver)就可以往外打封包的特性,極適合應用本案技術。值得注意的是,除PCIE切換器外,其他具有信號下行埠、採多通道、且不受限於控制器驅動器就可以往外打封包的晶片皆適合使用本案技術。 In one embodiment, the input and output extension die 100 can be a high speed peripheral component interconnect switch (PCIE switch). The signal downlink 112 can be a PCIE downstream port. The router 110 can be a combination of a PCIE hub and a multiplexer, so that the debug packet DP is transmitted to the PCIE downlink via the multiplexer via the PCIE hub. In addition, the multi-lane feature of the PCIE switcher also helps to transmit high-speed, large amounts of data for debugging. The PCIE switcher is more suitable for applying the technology without being limited to the controller driver. It is worth noting that, in addition to the PCIE switch, other chips that have signal down-going, multi-channel, and can be packaged without being limited by the controller driver are suitable for use in the present technology.

整理之,依照以上定義之主時脈MS_CLK作硬件模組取樣、且利用既有之信號下行埠112作輸出的設計,不僅成本低廉,更得以較高的傳送速度輸出信號供偵錯。值得注意的是,在輸入輸出擴展晶片100的製程和成本允許的情況下,選擇既有的操作時脈中越高者作為主時脈MS_CLK來進行採樣,所得到的偵錯用信號的失真越小;但是低成本的晶片往往不允許使用太高的操作時脈,因此本發明選擇該輸入輸出擴展晶片100上哪一個既有的操作時脈作為主時脈MS_CLK取決於輸入輸出擴展晶片100的製程和成本,即是說,本發明之主時脈MS_CLK係採用工藝條件和成本允許的既有的操作時脈中較高者。 According to the above definition, the main clock MS_CLK is used as the hardware module sampling, and the design of the existing signal downlink 112 is used for output, which is not only low in cost, but also has a higher transmission speed output signal for debugging. It should be noted that, in the case where the process and cost of the input/output extension chip 100 are allowed, the higher of the existing operation clocks is selected as the main clock MS_CLK for sampling, and the distortion of the obtained error detection signal is smaller. However, low-cost wafers often do not allow the use of too high operating clocks, so the present invention selects which of the existing operating clocks on the input-output expansion chip 100 as the primary clock MS_CLK depends on the process of the input-output expansion chip 100. And the cost, that is, the main clock MS_CLK of the present invention is the higher of the existing operating clocks allowed by the process conditions and cost.

一種實施方式中,該輸入輸出擴展晶片100更整合有晶片組之南橋。 In one embodiment, the input and output extension chip 100 is further integrated with a south bridge of a chip set.

一種實施方式中,該等硬件模組102_1、102_2…102_(N-1)、102_N可為PCIE硬件、XHCI硬件、SATA硬件、GNIC硬件…等,至於各自提供何種信號作偵錯,則可由使用者經由基本輸入輸出系統(BIOS)或作業系統(OS)中特定的偵錯工具設置特定的控制暫存器(control register)決定。然而,如此直接由晶片上硬件模組取得的信號相當高速(例如60M~500M),本案一種實施方式係規畫由耦接於信號下行埠112的協議分析儀抓取偵錯用封包(後面第2圖會詳述),然後以離線方式分析所抓取之偵錯用封包以偵錯,較通過低速的通用型輸入輸出腳位(GPIO)耦接之邏輯分析器(LA)實時地分析偵錯用信號的波形進行偵錯之先前技術更優,因為低速的GPIO腳位有可能引入偵錯信號失真。 In an implementation manner, the hardware modules 102_1, 102_2...102_(N-1), 102_N may be PCIE hardware, XHCI hardware, SATA hardware, GNIC hardware, etc., as for which signals are provided for debugging, The user sets a specific control register decision via a specific input/output system (BIOS) or a specific debug tool in the operating system (OS). However, the signal obtained directly by the hardware module on the chip is relatively high speed (for example, 60M~500M). One embodiment of the present invention is to capture the error detection packet by the protocol analyzer coupled to the signal downlink 112 (the latter) 2 will be detailed), and then analyze the captured debug packet for offline debugging, which is more real-time analysis than the low-speed general-purpose input and output pin (GPIO) coupled logic analyzer (LA). The prior art of misdetecting the waveform of the signal is better because the low speed GPIO pin may introduce distortion of the debug signal.

第2圖根據本案一種實施方式圖解該輸入輸出擴展晶片100驗證時的連結狀況。該輸入輸出擴展晶片100係經由該信號下行埠112耦接一環回卡(loopback card)202確立一連結狀態(link status),使出自該輸入輸出擴展晶片100呈串行之偵錯用封包DP_S得以被一協議分析儀208抓取以進行偵錯。在一實施例中,環回卡202將自該信號下行埠112之一發送端(TX)輸出的偵錯用封包DP_S送回該信號下行埠112之一接收端(RX),以確立對應之協議(例如PCIE協議)的連結(link)。 FIG. 2 illustrates a connection condition when the input/output extension chip 100 is verified according to an embodiment of the present invention. The input/output extension chip 100 is coupled to a loopback card 202 via the signal downlink 112 to establish a link status, so that the input/output extension chip 100 is serially debugged with the packet DP_S. It is captured by a protocol analyzer 208 for debugging. In an embodiment, the loopback card 202 sends the error detection packet DP_S outputted from one of the signal downlinks 112 (TX) back to the receiving end (RX) of the signal downlink 112 to establish a corresponding A link to a protocol (such as the PCIE protocol).

一種實施方式係以一信號分析軟體204對協議分析儀208抓取之偵錯用封包DP_S進行偵錯。以PCIE切換器為 例,傳統應用上,協議分析儀208是用於抓取PCIE切換器與PCIE裝置之間的PCIE封包來分析。根據本案一種實施方式,協議分析儀208則是抓取信號下行埠112與環回卡202之間的串行的偵錯用封包DP_S,該信號分析軟體204更可離線地分析協議分析儀208所抓取到的串行之偵錯用封包DP_S中的有效信息,使數位信號轉換為易於理解的波形圖以進行偵錯。特別是,輸入輸出擴展晶片100以封包方式打出的信號得以採文字檔(txt file)存於協議分析儀208內,在一實施例中,可在需要分析時將該文字檔拷貝至驗證用計算機206,以驗證用計算機206之信號分析軟體204進行分析以實現偵錯,故輸入輸出擴展晶片100內部無須特別設置存儲空間以存儲偵錯用封包DP_S,並且偵錯分析可以離線地在驗證用計算機206上進行,提高了抓取偵錯信號的效率。 One embodiment is to use a signal analysis software 204 to debug the debug packet DP_S captured by the protocol analyzer 208. With PCIE switch For example, in a conventional application, the protocol analyzer 208 is configured to capture PCIE packets between a PCIE switch and a PCIE device for analysis. According to an embodiment of the present invention, the protocol analyzer 208 is a serial debug packet DP_S between the capture signal downlink 112 and the loopback card 202. The signal analysis software 204 can analyze the protocol analyzer 208 offline. The captured serial debug packet uses the valid information in the packet DP_S to convert the digital signal into an easy-to-understand waveform for error detection. In particular, the signal outputted by the input/output extension chip 100 in a packetized manner is stored in the protocol analyzer 208 in a txt file. In an embodiment, the text file can be copied to the verification computer when analysis is required. 206, the signal analysis software 204 of the verification computer 206 is used for analysis to implement debugging, so that the input/output extension chip 100 does not need to specifically set a storage space to store the error detection packet DP_S, and the error analysis can be performed offline in the verification computer. Performed on 206 to improve the efficiency of capturing debug signals.

本案一種實施方式係一種輸入輸出擴展晶片驗證方法,第3圖以流程圖搭配第1圖、第2圖說明之。步驟S302耦接該信號下行埠112至環回卡202,由環回卡202模擬回應該信號下行埠112,確立該信號下行埠112處連結狀態、且所輸出信號得以確實送出後被協議分析儀208抓取以供偵錯。步驟S304操作該等採樣器104_1、104_2…104_(N-1)、104_N根據該主時脈MS_CLK分別自該等硬件模組102_1、102_2…102_(N-1)、102_N採樣獲得信號,交由步驟S306組合產生偵錯用信號DS。步驟S308產生偵錯用封包DP,其乘載該偵錯用信號DS。步驟S310傳送該偵錯用封包DP至該信號下行埠112。步驟S312中,信號下行埠112對該偵錯用封包DP進行並串轉換,輸出串行之 偵錯用封包DP_S藉由環回卡202確立的連結狀態由該協議分析儀208抓取供偵錯。 One embodiment of the present invention is an input/output extended wafer verification method, and FIG. 3 is a flowchart with the first and second figures. Step S302 is coupled to the signal downlink 112 to the loopback card 202, and the loopback card 202 simulates the response signal downlink 112, establishes the connection state of the signal downlink 112, and the output signal is sent out by the protocol analyzer. 208 grabbed for debugging. Step S304, the samplers 104_1, 104_2, ..., 104_(N-1), 104_N respectively obtain signals from the hardware modules 102_1, 102_2, ..., 102_(N-1), 102_N according to the main clock MS_CLK, and the signals are obtained. Step S306 combines to generate the error detecting signal DS. Step S308 generates a debug packet DP that carries the debug signal DS. Step S310 transmits the error detection packet DP to the signal downlink 112. In step S312, the signal downlink 112 performs parallel-to-serial conversion on the debug packet DP, and outputs serial The link state established by the loopback card 202 by the debug packet DP_S is captured by the protocol analyzer 208 for debugging.

由於硬件模組102_1、102_2…102_(N-1)、102_N的操作時脈相當多元,若要統一以主時脈MS_CLK採樣,須進行時脈域轉換(Clock Domain Crossing,CDC)。例如,USB3硬件的操作時脈可能高達500M頻,遠超過其它低速硬件的操作時頻(例如,60M,120M,125M,250M)。當主時脈MS_CLK選擇為250M頻時,時脈域轉換需求即相應而生。 Since the operating clocks of the hardware modules 102_1, 102_2, ..., 102_(N-1), 102_N are quite diverse, clock domain switching (Clock Domain Crossing, CDC) is required to uniformly sample the main clock MS_CLK. For example, the operating clock of USB3 hardware can be as high as 500M, far exceeding the operating time of other low-speed hardware (for example, 60M, 120M, 125M, 250M). When the main clock MS_CLK is selected to be 250M, the clock domain conversion requirement is corresponding.

一種實施方式中,該等採樣器104_1、104_2…104_(N-1)、104_N以先入先出緩衝器(FIFO buffer)的多層結構,分別對該等採樣器104_1、104_2…104_(N-1)、104_N所對應的硬件模組102_1、102_2…102_(N-1)、102_N的至少一被採信號實現時脈域轉換(CDC),將對應的被採信號轉換至該主時脈MS_CLK的時脈域,使根據該主時脈MS_CLK自所對應的硬件模組採樣獲得的信號不失真。 In one embodiment, the samplers 104_1, 104_2...104_(N-1), 104_N are in a multi-layer structure of a FIFO buffer, respectively for the samplers 104_1, 104_2...104_(N-1 And at least one of the hardware modules 102_1, 102_2...102_(N-1), 102_N corresponding to 104_N implements clock domain conversion (CDC), and converts the corresponding signal to the main clock MS_CLK. The clock domain is such that the signal obtained from the sampling of the corresponding hardware module according to the main clock MS_CLK is not distorted.

關於數據之處理,面對硬件模組102_1、102_2…102_(N-1)、102_N多元的操作時脈,該等採樣器104_1、104_2…104_(N-1)、104_N需使數據單元的操作時脈統一。一種實施方式中,所揭露之採樣器是採複數個寄存器以及複數個多工器將所對應的硬件模組供應的被採信號劃分為複數組,其中同一組被採信號的操作時脈屬於相同時脈域。 Regarding the processing of data, facing the operation clocks of the hardware modules 102_1, 102_2...102_(N-1), 102_N, the samplers 104_1, 104_2...104_(N-1), 104_N need to operate the data unit The clock is unified. In one embodiment, the disclosed sampler divides a plurality of registers and a plurality of multiplexers to divide the extracted signals supplied by the corresponding hardware modules into complex arrays, wherein the operation clocks of the same group of signals are the same. Clock domain.

第4圖根據本案一種實施方式圖解對應一硬件模組的一採樣器400,其中除了時脈域轉換所需的先入先出緩衝器Asyn_FIFO_0…Asyn_FIFO_3、更採用被採信號劃分所需的 複數個寄存器402以及複數個多工器404。如圖所示,硬件模組供應的各筆16位元數據將以x4方式並行推入寄存器402。例如,圖上寄存器402儲存(n+1)x4筆16位元數據DBBG_GRP0[0]…DBBG_GRP0[n]、DBBG_GRP1[0]…DBBG_GRP1[n]、DBBG_GRP2[0]…DBBG_GRP2[n]、DBBG_GRP3[0]…DBBG_GRP3[n]。經多工器404選擇後,實際傳遞給後續模塊偵錯用的各16位元數據單元可確保其中16位元時鐘同步(如,操作時脈屬於同一時脈域)。 FIG. 4 illustrates a sampler 400 corresponding to a hardware module according to an embodiment of the present invention, wherein the first-in first-out buffers Asyn_FIFO_0...Asyn_FIFO_3 required for clock domain conversion are further required to be used for signal division. A plurality of registers 402 and a plurality of multiplexers 404. As shown, each 16-bit metadata supplied by the hardware module will be pushed into register 402 in parallel in x4 mode. For example, the on-picture register 402 stores (n+1)x4 pen 16-bit metadata DBBG_GRP0[0]...DBBG_GRP0[n], DBBG_GRP1[0]...DBBG_GRP1[n], DBBG_GRP2[0]...DBBG_GRP2[n], DBBG_GRP3[ 0]...DBBG_GRP3[n]. After being selected by the multiplexer 404, each 16-bit metadata unit actually passed to the subsequent module for debugging can ensure that the 16-bit clock is synchronized (eg, the operating clock belongs to the same clock domain).

以下更討論先入先出緩衝器Asyn_FIFO_0…Asyn_FIFO_3如何實現時脈域轉換。 The following discusses how the first-in first-out buffer Asyn_FIFO_0...Asyn_FIFO_3 implements clock domain conversion.

一被採信號(由多工器404從對應的寄存器402所儲存(n+1)筆被採信號中選擇出來的一筆)的一被採信號時脈(編號為DB_CLK)之頻率大於或等於該主時脈MS_CLK的二分之一頻率、且小於或等於該主時脈MS_CLK之頻率時(例如,主時脈MS_CLK採用250M,而125MDB_CLK250M),所揭露的採樣器400係根據該被採信號時脈DB_CLK將該被採信號推入一先入先出緩衝器(Asyn_FIFO_0…Asyn_FIFO_3其中之一),再根據該主時脈MS_CLK將數據推出該先入先出緩衝器。先入先出緩衝器在一實施例中可設計為4層,原因是數據推出(Pop)的時脈比數據推入(push)的時脈快或頻率相同,即,數據不會在先入先出緩衝器中累積,但考慮到數據推入/推出指標(push/pop pointer)的產生各需要2個時脈週期,故設計先入先出緩衝器設計提供4層深度。 The frequency of a signaled signal (numbered DB_CLK) of a signal (a number selected by the multiplexer 404 from the corresponding register 402 stored (n+1) of the pen signals) is greater than or equal to the frequency of the signaled clock (numbered DB_CLK). The frequency of the main clock MS_CLK is less than or equal to the frequency of the main clock MS_CLK (for example, the main clock MS_CLK is 250M, and 125M DB_CLK 250M), the disclosed sampler 400 pushes the signal to be input into a first-in first-out buffer (Asyn_FIFO_0...Asyn_FIFO_3) according to the signaled clock pulse DB_CLK, and then pushes the data according to the main clock MS_CLK. The first in first out buffer. The first-in first-out buffer can be designed as four layers in one embodiment because the clock of the data push (Pop) is faster or the same frequency as the data push, that is, the data is not in the first-in first-out. Accumulated in the buffer, but considering the data push/pop pointer generation requires 2 clock cycles, the design first in first out buffer design provides 4 layers of depth.

被採信號的被採信號時脈DB_CLK之頻率大於該 主時脈MS_CLK之頻率、且小於等於該主時脈MS_CLK之兩倍頻率時(例如,250M<DB_CLK500M),所揭露的採樣器400降頻該被採信號時脈DB_CLK、並拓寬該被採信號之位元數,根據降頻後的該被採信號時脈將拓寬位元數後的該被採信號推入並行的複數個先入先出緩衝器(Asyn_FIFO_0…Asyn_FIFO_3其中多個),再根據該主時脈MS_CLK將數據推出並行的該等先入先出緩衝器。以300M頻之被採信號時脈DB_CLK為例,16位元x300M的被採信號需先降頻一半轉換為32位元x150M,再分成2組16位元的150M頻信號推入並行的兩組先入先出緩衝器(例如,ASYNC_FIFO_0以及ASYNC_FIFO_1)來並行實現時脈域轉換。 When the frequency of the signaled signal clock DB_CLK of the signal is greater than the frequency of the main clock MS_CLK and less than or equal to twice the frequency of the main clock MS_CLK (for example, 250M<DB_CLK) 500M), the disclosed sampler 400 down-converts the signal clock DB_CLK, and widens the number of bits of the signal to be taken. According to the frequency-reduced signal, the signal is widened by the number of bits. The signal is pushed into a plurality of parallel first-in first-out buffers (a plurality of Asyn_FIFO_0...Asyn_FIFO_3), and then the data is pushed out to the parallel first-in first-out buffers according to the main clock MS_CLK. Taking the signal timing DB_CLK of the 300M frequency as an example, the signal of the 16-bit x300M signal needs to be down-converted half to 32-bit x150M, and then divided into two groups of 16-bit 150M frequency signals and pushed into two parallel groups. First-in first-out buffers (for example, ASYNC_FIFO_0 and ASYNC_FIFO_1) implement clock domain conversion in parallel.

至於主時脈MS_CLK的頻率大於被採信號時脈DB_CLK之兩倍頻率時(例如,DB_CLK<125M),根據採樣定理,以高於被採信號2倍以上的採樣時脈採樣,即便採樣時脈與被採信號不屬於同一時脈域,採樣后獲得數據能夠還原原來的被採信號。因此這種被採信號可不經先入先出緩衝器(Asyn_FIFO_0…Asyn_FIFO_3其中之一)進行時脈域轉換即直接以該主時脈MS_CLK採樣該被採信號仍不失真。或者,如此條件的被採信號仍是可利用先入先出緩衝器(如第4圖所示)由主時脈MS_CLK採樣。 As for the frequency of the main clock MS_CLK is greater than twice the frequency of the signal clock DB_CLK (for example, DB_CLK<125M), according to the sampling theorem, the sampling clock is sampled more than 2 times higher than the signal to be taken, even if the sampling clock is sampled. The data is not in the same time domain as the signal being acquired, and the data obtained after sampling can restore the original signal. Therefore, the signal can be sampled without first-in first-out buffer (one of Asyn_FIFO_0...Asyn_FIFO_3), and the signal is directly sampled by the main clock MS_CLK. Alternatively, the signal of such a condition is still sampled by the primary clock MS_CLK using a first-in first-out buffer (as shown in Figure 4).

第5圖以流程圖根據本案一種實施方式說明硬件模組的信號採樣。步驟S502比較主時脈MS_CLK以及被採信號時脈DB_CLK。若比較結果是0.5MS_CLKDB_CLKMS_CLK,流程進行步驟S504,根據該被採信號時脈DB_CLK 將被採信號推入先入先出緩衝器,再根據該主時脈MS_CLK將數據推出先入先出緩衝器。若比較結果是MS_CLK<DB_CLK2MS_CLK,流程進行步驟S506,降頻該被採信號時脈DB_CLK、並拓寬該被採信號之位元數,根據降頻後的該被採信號時脈將拓寬位元數後的該被採信號推入並行的複數個先入先出緩衝器,再根據該主時脈MS_CLK將數據推出並行的該等先入先出緩衝器。若比較結果是DB_CLK<0.5MS_CLK,流程進行步驟S508,不經先入先出緩衝器即直接以該主時脈MS_CLK採樣該被採信號。或者,步驟S508也可依照第4圖設計仍是利用先入先出緩衝器由主時脈MS_CLK採樣。 Figure 5 illustrates a signal sampling of a hardware module in accordance with an embodiment of the present invention in a flow chart. Step S502 compares the main clock MS_CLK and the signaled clock time DB_CLK. If the comparison result is 0.5MS_CLK DB_CLK MS_CLK, the flow proceeds to step S504, according to the extracted signal clock DB_CLK, the signal is pushed into the first-in first-out buffer, and then the data is pushed out of the first-in first-out buffer according to the main clock MS_CLK. If the comparison result is MS_CLK<DB_CLK 2MS_CLK, the process proceeds to step S506, the frequency signal DB_CLK is down-converted, and the number of bits of the signal is widened. According to the frequency-reduced signal, the signal is widened by the number of bits. Pushing in parallel multiple first-in first-out buffers, and then pushing data into parallel first-in first-out buffers according to the main clock MS_CLK. If the comparison result is DB_CLK<0.5MS_CLK, the flow proceeds to step S508, and the taken signal is directly sampled by the main clock MS_CLK without the first-in first-out buffer. Alternatively, step S508 can also be sampled by the primary clock MS_CLK using the first in first out buffer according to the fourth figure design.

以下討論偵錯用信號DS如何載於偵錯用封包DP。一種實施方式是將偵錯用信號DS封裝在偵錯用封包DP的負載資料區(payload data),並將封包化的偵錯用信號DS對應的標頭(header)封裝在偵錯用封包DP的位址區(address)。偵錯用封包DP可乘載多達N筆的偵錯用信號DS。N為數字,相關於該偵錯用封包DP之位址區寬度。偵錯用封包DP之位址區寬度越寬,可以記錄的標頭筆數越多,N值越高。 The following discusses how the error detection signal DS is carried in the error detection packet DP. In one embodiment, the error detection signal DS is encapsulated in the payload data of the error detection packet DP, and the header corresponding to the packetized error detection signal DS is encapsulated in the error detection packet DP. Address area (address). The debug DP can carry up to N of the debug signal DS. N is a number, which is related to the address area width of the debug packet DP. The wider the address area of the debug packet DP, the more the number of headers that can be recorded, and the higher the N value.

第6A圖根據本案一種實施方式圖解64位元封裝模式的偵錯用封包600,其中包括資料交易層封包(Transaction Layer Packet,簡稱TLP)位址區、以及TLP負載0…TLP負載2組成的TLP負載資料區。TLP負載資料區採64位元封裝模式,各自對應8位元標頭。受限於TLP位址區64位元的寬度,共有6筆偵錯用信號DS各自封裝由TLP負載資料區乘載,分別為封包0…封包5。TLP位址區除了載有封包0…封包5之標頭,複數個 低位位元(例如低14位元[13:0])設定為固定值(14’h0),以避免跨邊界位址混淆(如,cross 4K boundary)。此外,在一實施例中,TLP位址區的最高位位元可以設定為1,以避免全零位址區信號導致輸出該輸入輸出擴展晶片100後的信號偵錯無法運行。值得注意的是,這裡以輸入輸出擴展晶片100係高速周邊元件互連(PCIE)協議規格舉例,但本發明不限於此。在本實施例中,偵錯用封包600遵守PCIE協議規範,格式形同普通的PCIE資料交易層封包(TLP)封包,但其TLP位址區並非如普通TLP封包係載有存儲器位址(memory address),而是載有封包0…封包5之對應的標頭:包括觸發旗標、溢位旗標以及計時器等。 FIG. 6A illustrates a 64-bit encapsulation mode error detection packet 600 according to an embodiment of the present invention, including a data transaction layer packet (Transaction Layer Packet (TLP) address area, and a TLP load 0...TLP load 2 TLP. Load data area. The TLP load data area is in a 64-bit package mode, each corresponding to an 8-bit header. Limited by the width of the TLP address area of 64 bits, a total of six error detection signals DS are packaged by the TLP load data area, respectively, packet 0 ... packet 5. In addition to the header of packet 0 (packet 5), the TLP address area contains a plurality of headers. The lower bits (e.g., the lower 14 bits [13:0]) are set to a fixed value (14'h0) to avoid cross-boundary address confusion (e.g., cross 4K boundary). Moreover, in one embodiment, the most significant bit of the TLP address region can be set to one to avoid that the all zero address region signal causes signal detection after outputting the input and output extension chip 100 to fail. It is to be noted that the input/output extension chip 100 is a high-speed peripheral component interconnection (PCIE) protocol specification, but the invention is not limited thereto. In this embodiment, the error detection packet 600 complies with the PCIE protocol specification, and the format is the same as the normal PCIE data transaction layer packet (TLP) packet, but the TLP address area is not like the normal TLP packet system carrying the memory address (memory Address), but the corresponding header containing the packet 0...packet 5: including the trigger flag, overflow flag and timer.

第6B圖根據本案一種實施方式圖解32位元封裝模式的偵錯用封包610,其中受限於TLP位址區64位元的寬度,TLP負載資料區乘載的偵錯用信號仍是共6筆。惟32位元的封裝模式使得TLP負載資料區僅包括TLP負載0以及TLP負載1。 FIG. 6B illustrates a debug packet 610 of a 32-bit encapsulation mode according to an embodiment of the present invention, wherein the error detection signal of the TLP load data area is still limited by a width of 64 bits in the TLP address area. pen. However, the 32-bit encapsulation mode allows the TLP payload data area to include only TLP load 0 and TLP load 1.

雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明,任何熟悉此項技藝者,在不脫離本發明之精神和範圍內,當可做些許更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。 While the present invention has been described in its preferred embodiments, the present invention is not intended to limit the invention, and the present invention may be modified and modified without departing from the spirit and scope of the invention. The scope of protection is subject to the definition of the scope of the patent application.

100‧‧‧輸入輸出擴展晶片 100‧‧‧Input and output expansion chip

102_1…102_N‧‧‧硬件模組 102_1...102_N‧‧‧ hardware module

104_1…104_N‧‧‧採樣器 104_1...104_N‧‧‧sampler

106‧‧‧偵錯用信號產生器 106‧‧‧Detection signal generator

108‧‧‧偵錯用封包產生器 108‧‧‧Detection packet generator

110‧‧‧路由器 110‧‧‧ router

112‧‧‧信號下行埠 112‧‧‧ Signal Downstream

DP‧‧‧偵錯用封包 DP‧‧‧Detection packet

DP_S‧‧‧串行之偵錯用封包 DP_S‧‧‧ Serial debugging package

DS‧‧‧偵錯用信號 DS‧‧‧Detection signal

MS_CLK‧‧‧主時脈 MS_CLK‧‧‧Main clock

Claims (20)

一種輸入輸出擴展晶片,包括:至少一硬件模組及其各自所對應的採樣器;一偵錯用信號產生器,將根據該至少一硬件模組及其各自所對應的採樣器基於該輸入輸出擴展晶片內部一主時脈採樣獲得的信號組合產生一偵錯用信號;一偵錯用封包產生器,產生一偵錯用封包,其中該偵錯用封包乘載該偵錯用信號;以及至少一信號下行埠,其中,該偵錯用封包經由上述至少一信號下行埠之一者從該輸入輸出擴展晶片輸出以進行信號偵錯。 An input/output extension chip includes: at least one hardware module and a corresponding sampler thereof; and a debug signal generator, based on the input and output according to the at least one hardware module and its corresponding sampler The signal combination obtained by expanding a main clock sample inside the chip generates a debug signal; a debug packet generator generates a debug packet, wherein the debug packet carries the debug signal; and at least A signal downlink, wherein the debug packet is output from the input/output extension chip via one of the at least one signal downlink for signal detection. 如申請專利範圍第1項所述之輸入輸出擴展晶片,其中:上述至少一信號下行埠中之一者係藉由耦接一環回卡確立一連結狀態,使該偵錯用封包得以自該輸入輸出擴展晶片輸出後被一協議分析儀抓取以進行偵錯。 The input/output extension chip of claim 1, wherein: one of the at least one signal downlinks establishes a connection state by coupling a loopback card, so that the error detection packet is obtained from the input. The output of the extended chip is captured by a protocol analyzer for error detection. 如申請專利範圍第1項所述之輸入輸出擴展晶片,更包括:上述至少一硬件模組及其各自所對應的採樣器中的一採樣器,根據該主時脈自所對應的硬件模組採樣獲得信號。 The input/output extension chip of claim 1, further comprising: one of the at least one hardware module and one of the corresponding samplers, and the corresponding hardware module according to the main clock Sampling to obtain a signal. 如申請專利範圍第3項所述之輸入輸出擴展晶片,其中:上述採樣器各自包括一先入先出緩衝器結構,用以對所對應的硬件模組的至少一被採信號實現時脈域轉換,將上述被採信號轉換至該主時脈的時脈域。 The input/output extension chip of claim 3, wherein: the samplers each comprise a first-in first-out buffer structure for implementing clock domain conversion on at least one of the signals of the corresponding hardware module. And converting the above-mentioned signal to the clock domain of the main clock. 如申請專利範圍第3項所述之輸入輸出擴展晶片,其中:上述採樣器在該主時脈的頻率大於所對應的硬件模組的一 被採信號的一被採信號時脈之兩倍頻率時,係直接以該主時脈採樣該被採信號。 The input/output extension chip of claim 3, wherein: the frequency of the sampler in the main clock is greater than one of the corresponding hardware modules. When the frequency of the signal is doubled, the signal is directly sampled by the main clock. 如申請專利範圍第1項所述之輸入輸出擴展晶片,其中:上述採樣器在所對應的硬件模組的一被採信號的一被採信號時脈之頻率大於或等於該主時脈的二分之一頻率、且小於或等於該主時脈之頻率時,係根據該被採信號時脈將該被採信號推入一先入先出緩衝器,再根據該主時脈將數據推出該先入先出緩衝器。 The input/output extension chip of claim 1, wherein: the sampler is at a frequency of a signal of a signal of the corresponding hardware module that is greater than or equal to the frequency of the main clock. When the frequency is less than or equal to the frequency of the main clock, the signal is pushed into a first-in first-out buffer according to the signaled time of the signal, and the data is pushed out according to the main clock. First out buffer. 如申請專利範圍第1項所述之輸入輸出擴展晶片,其中:上述採樣器在所對應的硬件模組的一被採信號的一被採信號時脈之頻率大於該主時脈之頻率、且小於等於該主時脈之兩倍頻率時,降頻該被採信號時脈、並拓寬該被採信號之位元數,根據降頻後的該被採信號時脈將拓寬位元數後的該被採信號推入並行的複數個先入先出緩衝器,再根據該主時脈將數據推出並行的該等先入先出緩衝器。 The input/output extension chip of claim 1, wherein: the frequency of a signal of a sampled signal of a sampled signal of the corresponding hardware module is greater than a frequency of the main clock, and When the frequency is less than or equal to twice the frequency of the main clock, the frequency of the signal is reduced, and the number of bits of the signal is widened. According to the frequency of the signal after the frequency reduction, the number of bits is widened. The signal is pushed into a plurality of parallel first-in first-out buffers, and the data is pushed out to the parallel first-in first-out buffers according to the main clock. 如申請專利範圍第1項所述之輸入輸出擴展晶片,其中:上述採樣器各自以複數個寄存器以及複數個多工器將所對應的硬件模組供應的被採信號劃分為複數組,其中同一組被採信號的操作時脈屬於相同時脈域。 The input/output extension chip of claim 1, wherein: the sampler divides the extracted signals supplied by the corresponding hardware module into a complex array by using a plurality of registers and a plurality of multiplexers, wherein the same The operating clocks of the grouped signals belong to the same clock domain. 如申請專利範圍第1項所述之輸入輸出擴展晶片,其中:該偵錯用封包乘載多達N筆的偵錯用信號;且N為數字,相關於該偵錯用封包之位址區寬度。 The input/output extension chip of claim 1, wherein: the debugging packet carries up to N pens of the debugging signal; and N is a number, and is related to the address area of the debugging packet. width. 如申請專利範圍第1項所述之輸入輸出擴展晶片,其中:該偵錯用封包之位址區紀錄該偵錯用封包所乘載的各偵錯 用信號之標頭;且該偵錯用封包之位址區的複數個低位位元設定為固定值,以避免跨邊界位址混淆。 The input/output extension chip of claim 1, wherein: the address area of the error detection packet records each debug of the error detection packet The header of the signal is used; and the complex low-order bits of the address area of the packet are set to a fixed value to avoid confusion of cross-boundary addresses. 一種輸入輸出擴展晶片驗證方法,包括:為一輸入輸出擴展晶片的至少一硬件模組各自提供對應的採樣器;將根據該至少一硬件模組及其各自所對應的採樣器基於該輸入輸出擴展晶片內部一主時脈採樣獲得的信號組合產生一偵錯用信號;產生一偵錯用封包,其中該偵錯用封包乘載該偵錯用信號;以及傳送該偵錯用封包至該輸入輸出擴展晶片之至少一信號下行埠中之一者從該輸入輸出擴展晶片輸出以進行信號偵錯。 An input/output extension chip verification method includes: providing a corresponding sampler for each of at least one hardware module of an input/output extension chip; and expanding the sampler according to the at least one hardware module and its corresponding sampler based on the input and output Generating a signal obtained by sampling a main clock sample inside the chip to generate a signal for detecting error; generating a packet for debugging, wherein the debugging packet is used to carry the signal for debugging; and transmitting the packet for debugging to the input and output One of the at least one signal downlink of the extended chip is output from the input and output extension chip for signal detection. 如申請專利範圍第11項所述之輸入輸出擴展晶片驗證方法,更包括:耦接上述至少一信號下行埠中之一者至一環回卡確立一連結狀態,使該偵錯用封包得以自該輸入輸出擴展晶片輸出後被一協議分析儀抓取以進行偵錯。 The method for verifying the input/output extended chip according to claim 11, further comprising: coupling one of the at least one signal downlink to a loopback card to establish a link state, so that the debug packet is obtained from the The input and output extended chip outputs are captured by a protocol analyzer for debugging. 如申請專利範圍第11項所述之輸入輸出擴展晶片驗證方法,更包括:操作上述採樣器中的一採樣器根據該主時脈自所對應的硬件模組採樣獲得信號。 The input/output extended chip verification method of claim 11, further comprising: operating one of the samplers to obtain a signal from the corresponding hardware module according to the main clock. 如申請專利範圍第13項所述之輸入輸出擴展晶片驗證方 法,其中:上述採樣器各自以先入先出緩衝器結構對所對應的硬件模組的至少一被採信號實現時脈域轉換,將上述被採信號轉換至該主時脈的時脈域。 The input/output extension chip verifier as described in claim 13 The method, wherein each of the samplers implements a clock domain conversion on at least one of the acquired signals of the corresponding hardware module in a first-in first-out buffer structure, and converts the extracted signal to a clock domain of the primary clock. 如申請專利範圍第13項所述之輸入輸出擴展晶片驗證方法,其中:上述採樣器在該主時脈的頻率大於該採樣器所對應的硬件模組的一被採信號的一被採信號時脈之兩倍頻率時,係直接以該主時脈採樣該被採信號。 The input/output extended chip verification method of claim 13, wherein: the sampler is at a frequency greater than a received signal of a received signal of the hardware module corresponding to the sampler when the frequency of the main clock is greater than When the frequency is twice the frequency, the signal is sampled directly by the main clock. 如申請專利範圍第11項所述之輸入輸出擴展晶片驗證方法,其中:上述採樣器在所對應的硬件模組的一被採信號的一被採信號時脈之頻率大於或等於該主時脈的二分之一頻率、且小於或等於該主時脈之頻率時,係根據該被採信號時脈將該被採信號推入一先入先出緩衝器,再根據該主時脈將數據推出該先入先出緩衝器。 The method for verifying the input/output extended chip according to claim 11, wherein: the sampler is at a frequency of a signal of a signal of the corresponding hardware module that is greater than or equal to the main clock. When the frequency of the second half is less than or equal to the frequency of the main clock, the signal is pushed into a first-in first-out buffer according to the signaled time of the signal, and then the data is pushed according to the main clock. The first in first out buffer. 如申請專利範圍第11項所述之輸入輸出擴展晶片驗證方法,其中:上述採樣器在所對應的硬件模組的一被採信號的一被採信號時脈之頻率大於該主時脈之頻率、且小於等於該主時脈之兩倍頻率時,降頻該被採信號時脈、並拓寬該被採信號之位元數,根據降頻後的該被採信號時脈將拓寬位元數後的該被採信號推入並行的複數個先入先出緩衝器,再根據該主時脈將數據推出並行的該等先入先出緩衝器。 The input/output extended chip verification method according to claim 11, wherein: the sampler is at a frequency of a taken signal of a corresponding signal of the corresponding hardware module, and the frequency of the clock is greater than the frequency of the main clock. And less than or equal to twice the frequency of the main clock, down-clocking the signaled clock, and widening the number of bits of the signal to be taken, according to the frequency of the signal after the frequency reduction, the number of bits will be widened The subsequent signal is pushed into a plurality of parallel first-in first-out buffers, and the data is pushed out to the parallel first-in first-out buffers according to the main clock. 如申請專利範圍第11項所述之輸入輸出擴展晶片驗證方法,其中:上述採樣器各自以複數個寄存器以及複數個多工器將所對應的硬件模組供應的被採信號劃分為複數組,其中同一組被採信號的操作時脈屬於相同時脈域。 The input/output extended chip verification method according to claim 11, wherein: the sampler divides the extracted signals supplied by the corresponding hardware modules into a complex array by using a plurality of registers and a plurality of multiplexers, respectively. The operating clocks of the same group of signals are in the same clock domain. 如申請專利範圍第11項所述之輸入輸出擴展晶片驗證方法,其中:該偵錯用封包乘載多達N筆的偵錯用信號;且N為數字,相關於該偵錯用封包之位址區寬度。 The method for verifying the input/output extended chip according to claim 11, wherein: the debugging packet carries up to N pens of the debugging signal; and N is a number, which is related to the bit of the debugging packet. The width of the address area. 如申請專利範圍第11項所述之輸入輸出擴展晶片驗證方法,其中:該偵錯用封包之位址區紀錄該偵錯用封包所乘載的各偵錯用信號之標頭;且該偵錯用封包之位址區的複數個低位位元設定為固定值,以避免跨邊界位址混淆。 The input/output extended chip verification method according to claim 11, wherein: the address area of the error detection packet records a header of each of the error detection signals carried by the error detection packet; and the Detector The plurality of low-order bits in the address area of the misuse packet are set to a fixed value to avoid confusion across the boundary address.
TW105135226A 2016-08-17 2016-10-31 Inout/output expander chip and verification method therefor TWI604303B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201610679377.3A CN106294228B (en) 2016-08-17 2016-08-17 Input and output extended chip and its verification method
??201610679377.3 2016-08-17

Publications (2)

Publication Number Publication Date
TWI604303B true TWI604303B (en) 2017-11-01
TW201810037A TW201810037A (en) 2018-03-16

Family

ID=57679637

Family Applications (1)

Application Number Title Priority Date Filing Date
TW105135226A TWI604303B (en) 2016-08-17 2016-10-31 Inout/output expander chip and verification method therefor

Country Status (2)

Country Link
CN (1) CN106294228B (en)
TW (1) TWI604303B (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107643992B (en) * 2017-09-27 2020-09-08 成都忆芯科技有限公司 PCIe controller and loopback data path using PCIe controller
TWI801412B (en) * 2018-09-06 2023-05-11 神雲科技股份有限公司 Debug method
CN109491846B (en) * 2018-10-17 2022-02-18 郑州云海信息技术有限公司 Method and system for capturing SATA hard disk trace by server
CN111124974B (en) * 2019-12-25 2024-01-26 西安易朴通讯技术有限公司 Interface expanding device and method

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW468104B (en) * 1999-11-24 2001-12-11 Inventec Corp Method and device for displaying BIOS debug code
CN101114248A (en) * 2006-07-28 2008-01-30 佛山市顺德区顺达电脑厂有限公司 Diagnose interface card used for examining mainboard
TW201439749A (en) * 2012-12-28 2014-10-16 Intel Corp Live error recovery
CN105302755A (en) * 2014-06-27 2016-02-03 曙光信息产业(北京)有限公司 PCIE board card with monitoring function and monitoring method therefor
US20160147587A1 (en) * 2014-11-21 2016-05-26 Ewha University-Industry Collaboration Foundation Method of analyzing a fault of an electronic system

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6985152B2 (en) * 2004-04-23 2006-01-10 Nvidia Corporation Point-to-point bus bridging without a bridge controller
US20060161818A1 (en) * 2005-01-14 2006-07-20 Ivo Tousek On-chip hardware debug support units utilizing multiple asynchronous clocks
TWI502336B (en) * 2010-12-17 2015-10-01 Via Tech Inc Debug device for computer system and method thereof.
US9274915B2 (en) * 2014-05-19 2016-03-01 Avago Technologies General Ip (Singapore) Pte. Ltd. Sideband logic for monitoring PCIe headers
CN105847714B (en) * 2016-05-24 2018-10-09 中国科学院长春光学精密机械与物理研究所 The delay of CMOS input image datas corrects system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW468104B (en) * 1999-11-24 2001-12-11 Inventec Corp Method and device for displaying BIOS debug code
CN101114248A (en) * 2006-07-28 2008-01-30 佛山市顺德区顺达电脑厂有限公司 Diagnose interface card used for examining mainboard
TW201439749A (en) * 2012-12-28 2014-10-16 Intel Corp Live error recovery
CN105302755A (en) * 2014-06-27 2016-02-03 曙光信息产业(北京)有限公司 PCIE board card with monitoring function and monitoring method therefor
US20160147587A1 (en) * 2014-11-21 2016-05-26 Ewha University-Industry Collaboration Foundation Method of analyzing a fault of an electronic system

Also Published As

Publication number Publication date
TW201810037A (en) 2018-03-16
CN106294228A (en) 2017-01-04
CN106294228B (en) 2019-06-04

Similar Documents

Publication Publication Date Title
TWI604303B (en) Inout/output expander chip and verification method therefor
US10318468B2 (en) FPGA-based interface signal remapping method
US9217774B2 (en) Cycle-accurate replay and debugging of running FPGA systems
WO2018076650A1 (en) Method and device for monitoring axi bus, and computer readable storage medium
JP2007066336A (en) Diagnostic data capture within integrated circuit
US7779194B2 (en) Data modification module
US20130290594A1 (en) Core-driven translation and loopback test
CN105573922B (en) Method and device for realizing data format conversion
US20080195793A1 (en) Microcontroller with memory trace module
Kavianipour et al. High performance FPGA-based scatter/gather DMA interface for PCIe
JP4988411B2 (en) Method and apparatus for reading data from a serial data source in a parallel format
CN115687012A (en) Bus monitoring module, monitoring method and related equipment
TWI727581B (en) Data transmission system
JP2005222446A (en) On-board debugging apparatus and semiconductor circuit apparatus
Zhao et al. Research on FPGA timing optimization methods with large on-chip memory resource utilization in PCIe DMA
US8966051B2 (en) Technique for monitoring component processing
Mroczek SoPC-based DMA for PCI Express DAQ cards
CN114003352B (en) System and method for capturing internal signals of processor
Li et al. A Wrapper of PCI Express with FIFO Interfaces based on FPGA
Lakshmi et al. AMBA-AXI Protocol Verification by using System Verilog
US8745457B2 (en) Methods and structure for utilizing external interfaces used during normal operation of a circuit to output test signals
CN109144889B (en) Ultrasonic testing data storage module based on FPGA and FPGA circuit
Sun et al. A real-time multi-channel signal acquisition card based on pci express interface
Ge et al. Design of a Data Transmission Control Unit in a Multi-core DSP System
Ji et al. Software FIFO based interconnection between DSP and FPGA in video encoding system