TWI604303B - 輸入輸出擴展晶片以及其驗證方法 - Google Patents
輸入輸出擴展晶片以及其驗證方法 Download PDFInfo
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/20—Handling requests for interconnection or transfer for access to input/output bus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
- G06F13/4291—Bus 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)
- Semiconductor Integrated Circuits (AREA)
- Debugging And Monitoring (AREA)
Description
本案係關於輸入輸出擴展晶片(input/output expander(IOE)chip)以及其驗證方法。
晶片流片(tapeout)後尚須經過驗證程序。驗證程序通常是抓取晶片內部不同硬件模組的偵錯信號(debug signal)進行分析來達到偵錯的目的。
以晶片組(chipset)為例,一般是經由其上動態隨機存取記憶體控制器(DRAM controller)大量的高速輸入輸出腳位(IO pins)偵錯。
然而,輸入輸出擴展晶片(IOE chip;例如,高速周邊元件互連切換器(PCIE switch))不一定存在類似動態隨機存取記憶體控制器如此具有大量高速輸入輸出腳位的硬件,傳統解決方式是額外增加輸入輸出腳位,以實現晶片驗證。如此一來,封裝體積以及成本都會顯著增加。特別是,增設之輸入輸出腳位(如,通用型輸入輸出腳位(GPIO))一般是連結邏輯分析裝置(logic analyzer)展現其信號之波形以供偵錯。但通用型輸入輸出腳位(GPIO)的操作速度有限,對高速內部信號偵錯不利,有可能導致偵錯信號失真。
本案揭露一種輸入輸出擴展晶片,得以利用既有的信號下行埠(signal downstream port),以不過分限制傳送速度的方式輸出信號供偵錯。
根據本案一種實施方式實現的一輸入輸出擴展晶片包括一偵錯用信號產生器、一偵錯用封包產生器以及至少一信號下行埠。該偵錯用信號產生器將根據該輸入輸出擴展晶片內部一主時脈自該輸入輸出擴展晶片中至少一硬件模組採樣獲得的信號組合產生一偵錯用信號。該偵錯用封包產生器產生一偵錯用封包,其中該偵錯用封包乘載該偵錯用信號。該偵錯用封包經由上述至少一信號下行埠中之一者從該輸入輸出擴展晶片輸出以進行信號偵錯。
本案揭露一種輸入輸出擴展晶片驗證方法,其中一種實施方式包括以下步驟:將根據一輸入輸出擴展晶片內部一主時脈自該輸入輸出擴展晶片中至少一硬件模組採樣獲得的信號組合產生一偵錯用信號;產生一偵錯用封包,其中該偵錯用封包乘載該偵錯用信號;以及傳送該偵錯用封包至該輸入輸出擴展晶片之至少一信號下行埠中之一者從該輸入輸出擴展晶片輸出以進行信號偵錯。
本發明之前述輸入輸出擴展晶片及其驗證方法將偵錯用信號封裝為偵錯用封包,並利用輸入輸出擴展晶片已有之信號下行埠作為晶片驗證的輸入/輸出埠,無需額外增加輸入輸出腳位。此外,本發明採樣用的主時脈可選自該輸入輸出擴展晶片上既有的較高操作時脈;例如,直接記憶體存取(DMA)用之操作時脈。如此一來,無須為了晶片驗證另外提供專用的
時脈,相當節約成本。
下文特舉實施例,並配合所附圖示,詳細說明本發明內容。
100‧‧‧輸入輸出擴展晶片
102_1…102_N‧‧‧硬件模組
104_1…104_N‧‧‧採樣器
106‧‧‧偵錯用信號產生器
108‧‧‧偵錯用封包產生器
110‧‧‧路由器
112‧‧‧信號下行埠
202‧‧‧環回卡
204‧‧‧信號分析軟體
206‧‧‧驗證用計算機
208‧‧‧協議分析儀
400‧‧‧採樣器
402‧‧‧寄存器
404‧‧‧多工器
600‧‧‧64位元封裝模式的偵錯用封包
610‧‧‧32位元封裝模式的偵錯用封包
Async_FIFO_0…Async_FIFO_3‧‧‧先入先出緩衝器
DBBG_GRP0[0]…DBBG_GRP0[n]、DBBG_GRP1[0]…DBBG_GRP1[n]、DBBG_GRP2[0]…DBBG_GRP2[n]、DBBG_GRP3[0]…DBBG_GRP3[n]‧‧‧數據
DP‧‧‧偵錯用封包
DP_S‧‧‧串行之偵錯用封包
DS‧‧‧偵錯用信號
MS_CLK‧‧‧主時脈
S302…S312、S502…S508‧‧‧步驟
第1圖根據本案一種實施方式圖解一輸入輸出擴展晶片100;第2圖根據本案一種實施方式圖解該輸入輸出擴展晶片100驗證時的連結狀況;第3圖以流程圖搭配第1圖、第2圖說明根據本案一種實施方式所實現的一種輸入輸出擴展晶片驗證方法;第4圖根據本案一種實施方式圖解對應一硬件模組的一採樣器400;第5圖以流程圖根據本案一種實施方式說明硬件模組的信號採樣;第6A圖根據本案一種實施方式圖解64位元封裝模式的偵錯用封包600;以及第6B圖根據本案一種實施方式圖解32位元封裝模式的偵錯用封包600。
以下敘述列舉本發明的多種實施例。以下敘述介紹本發明的基本概念,且並非意圖限制本發明內容。實際發明範圍應依照申請專利範圍界定之。
第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)。
該等採樣器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。
上述主時脈MS_CLK可選自該輸入輸出擴展晶片100上既有的較高操作時脈。例如,自該等硬件模組102_1、102_2…102_(N-1)、102_N之操作時脈中的高頻者擇一。例如,選用直接記憶體存取(DMA)用之操作時脈。如此一來,本案無須為了晶片驗證另外提供專用的時脈,相當節約成本。
特別是,該信號下行埠112也可以是既存於傳統輸入輸出擴展晶片者,無須為了晶片驗證另外增設。傳統輸入輸出擴展晶片通常採用信號下行埠來外接裝置、或級聯其他介面
擴展切換器。本案係更將信號下行埠用作晶片驗證的輸入/輸出埠。
一種實施方式中,該輸入輸出擴展晶片100可為一高速周邊元件互連切換器(PCIE switch)。該信號下行埠112可以是PCIE下行埠(PCIE downstream port)。該路由器110可以由一PCIE集線器(PCIE hub)以及一多工器串接組合而成,使偵錯用封包DP經該PCIE集線器再經該多工器傳送至PCIE下行埠。此外,PCIE切換器所具備的多通道(lane)特性也有助於傳送高速的大數量數據供偵錯。PCIE切換器更有不受限於控制器驅動器(controller driver)就可以往外打封包的特性,極適合應用本案技術。值得注意的是,除PCIE切換器外,其他具有信號下行埠、採多通道、且不受限於控制器驅動器就可以往外打封包的晶片皆適合使用本案技術。
整理之,依照以上定義之主時脈MS_CLK作硬件模組取樣、且利用既有之信號下行埠112作輸出的設計,不僅成本低廉,更得以較高的傳送速度輸出信號供偵錯。值得注意的是,在輸入輸出擴展晶片100的製程和成本允許的情況下,選擇既有的操作時脈中越高者作為主時脈MS_CLK來進行採樣,所得到的偵錯用信號的失真越小;但是低成本的晶片往往不允許使用太高的操作時脈,因此本發明選擇該輸入輸出擴展晶片100上哪一個既有的操作時脈作為主時脈MS_CLK取決於輸入輸出擴展晶片100的製程和成本,即是說,本發明之主時脈MS_CLK係採用工藝條件和成本允許的既有的操作時脈中較高者。
一種實施方式中,該輸入輸出擴展晶片100更整合有晶片組之南橋。
一種實施方式中,該等硬件模組102_1、102_2…102_(N-1)、102_N可為PCIE硬件、XHCI硬件、SATA硬件、GNIC硬件…等,至於各自提供何種信號作偵錯,則可由使用者經由基本輸入輸出系統(BIOS)或作業系統(OS)中特定的偵錯工具設置特定的控制暫存器(control register)決定。然而,如此直接由晶片上硬件模組取得的信號相當高速(例如60M~500M),本案一種實施方式係規畫由耦接於信號下行埠112的協議分析儀抓取偵錯用封包(後面第2圖會詳述),然後以離線方式分析所抓取之偵錯用封包以偵錯,較通過低速的通用型輸入輸出腳位(GPIO)耦接之邏輯分析器(LA)實時地分析偵錯用信號的波形進行偵錯之先前技術更優,因為低速的GPIO腳位有可能引入偵錯信號失真。
第2圖根據本案一種實施方式圖解該輸入輸出擴展晶片100驗證時的連結狀況。該輸入輸出擴展晶片100係經由該信號下行埠112耦接一環回卡(loopback card)202確立一連結狀態(link status),使出自該輸入輸出擴展晶片100呈串行之偵錯用封包DP_S得以被一協議分析儀208抓取以進行偵錯。在一實施例中,環回卡202將自該信號下行埠112之一發送端(TX)輸出的偵錯用封包DP_S送回該信號下行埠112之一接收端(RX),以確立對應之協議(例如PCIE協議)的連結(link)。
一種實施方式係以一信號分析軟體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上進行,提高了抓取偵錯信號的效率。
本案一種實施方式係一種輸入輸出擴展晶片驗證方法,第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抓取供偵錯。
由於硬件模組102_1、102_2…102_(N-1)、102_N的操作時脈相當多元,若要統一以主時脈MS_CLK採樣,須進行時脈域轉換(Clock Domain Crossing,CDC)。例如,USB3硬件的操作時脈可能高達500M頻,遠超過其它低速硬件的操作時頻(例如,60M,120M,125M,250M)。當主時脈MS_CLK選擇為250M頻時,時脈域轉換需求即相應而生。
一種實施方式中,該等採樣器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自所對應的硬件模組採樣獲得的信號不失真。
關於數據之處理,面對硬件模組102_1、102_2…102_(N-1)、102_N多元的操作時脈,該等採樣器104_1、104_2…104_(N-1)、104_N需使數據單元的操作時脈統一。一種實施方式中,所揭露之採樣器是採複數個寄存器以及複數個多工器將所對應的硬件模組供應的被採信號劃分為複數組,其中同一組被採信號的操作時脈屬於相同時脈域。
第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位元時鐘同步(如,操作時脈屬於同一時脈域)。
以下更討論先入先出緩衝器Asyn_FIFO_0…Asyn_FIFO_3如何實現時脈域轉換。
一被採信號(由多工器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層深度。
被採信號的被採信號時脈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)來並行實現時脈域轉換。
至於主時脈MS_CLK的頻率大於被採信號時脈DB_CLK之兩倍頻率時(例如,DB_CLK<125M),根據採樣定理,以高於被採信號2倍以上的採樣時脈採樣,即便採樣時脈與被採信號不屬於同一時脈域,採樣后獲得數據能夠還原原來的被採信號。因此這種被採信號可不經先入先出緩衝器(Asyn_FIFO_0…Asyn_FIFO_3其中之一)進行時脈域轉換即直接以該主時脈MS_CLK採樣該被採信號仍不失真。或者,如此條件的被採信號仍是可利用先入先出緩衝器(如第4圖所示)由主時脈MS_CLK採樣。
第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採樣。
以下討論偵錯用信號DS如何載於偵錯用封包DP。一種實施方式是將偵錯用信號DS封裝在偵錯用封包DP的負載資料區(payload data),並將封包化的偵錯用信號DS對應的標頭(header)封裝在偵錯用封包DP的位址區(address)。偵錯用封包DP可乘載多達N筆的偵錯用信號DS。N為數字,相關於該偵錯用封包DP之位址區寬度。偵錯用封包DP之位址區寬度越寬,可以記錄的標頭筆數越多,N值越高。
第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之對應的標頭:包括觸發旗標、溢位旗標以及計時器等。
第6B圖根據本案一種實施方式圖解32位元封裝模式的偵錯用封包610,其中受限於TLP位址區64位元的寬度,TLP負載資料區乘載的偵錯用信號仍是共6筆。惟32位元的封裝模式使得TLP負載資料區僅包括TLP負載0以及TLP負載1。
雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明,任何熟悉此項技藝者,在不脫離本發明之精神和範圍內,當可做些許更動與潤飾,因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100‧‧‧輸入輸出擴展晶片
102_1…102_N‧‧‧硬件模組
104_1…104_N‧‧‧採樣器
106‧‧‧偵錯用信號產生器
108‧‧‧偵錯用封包產生器
110‧‧‧路由器
112‧‧‧信號下行埠
DP‧‧‧偵錯用封包
DP_S‧‧‧串行之偵錯用封包
DS‧‧‧偵錯用信號
MS_CLK‧‧‧主時脈
Claims (20)
- 一種輸入輸出擴展晶片,包括:至少一硬件模組及其各自所對應的採樣器;一偵錯用信號產生器,將根據該至少一硬件模組及其各自所對應的採樣器基於該輸入輸出擴展晶片內部一主時脈採樣獲得的信號組合產生一偵錯用信號;一偵錯用封包產生器,產生一偵錯用封包,其中該偵錯用封包乘載該偵錯用信號;以及至少一信號下行埠,其中,該偵錯用封包經由上述至少一信號下行埠之一者從該輸入輸出擴展晶片輸出以進行信號偵錯。
- 如申請專利範圍第1項所述之輸入輸出擴展晶片,其中:上述至少一信號下行埠中之一者係藉由耦接一環回卡確立一連結狀態,使該偵錯用封包得以自該輸入輸出擴展晶片輸出後被一協議分析儀抓取以進行偵錯。
- 如申請專利範圍第1項所述之輸入輸出擴展晶片,更包括:上述至少一硬件模組及其各自所對應的採樣器中的一採樣器,根據該主時脈自所對應的硬件模組採樣獲得信號。
- 如申請專利範圍第3項所述之輸入輸出擴展晶片,其中:上述採樣器各自包括一先入先出緩衝器結構,用以對所對應的硬件模組的至少一被採信號實現時脈域轉換,將上述被採信號轉換至該主時脈的時脈域。
- 如申請專利範圍第3項所述之輸入輸出擴展晶片,其中:上述採樣器在該主時脈的頻率大於所對應的硬件模組的一 被採信號的一被採信號時脈之兩倍頻率時,係直接以該主時脈採樣該被採信號。
- 如申請專利範圍第1項所述之輸入輸出擴展晶片,其中:上述採樣器在所對應的硬件模組的一被採信號的一被採信號時脈之頻率大於或等於該主時脈的二分之一頻率、且小於或等於該主時脈之頻率時,係根據該被採信號時脈將該被採信號推入一先入先出緩衝器,再根據該主時脈將數據推出該先入先出緩衝器。
- 如申請專利範圍第1項所述之輸入輸出擴展晶片,其中:上述採樣器在所對應的硬件模組的一被採信號的一被採信號時脈之頻率大於該主時脈之頻率、且小於等於該主時脈之兩倍頻率時,降頻該被採信號時脈、並拓寬該被採信號之位元數,根據降頻後的該被採信號時脈將拓寬位元數後的該被採信號推入並行的複數個先入先出緩衝器,再根據該主時脈將數據推出並行的該等先入先出緩衝器。
- 如申請專利範圍第1項所述之輸入輸出擴展晶片,其中:上述採樣器各自以複數個寄存器以及複數個多工器將所對應的硬件模組供應的被採信號劃分為複數組,其中同一組被採信號的操作時脈屬於相同時脈域。
- 如申請專利範圍第1項所述之輸入輸出擴展晶片,其中:該偵錯用封包乘載多達N筆的偵錯用信號;且N為數字,相關於該偵錯用封包之位址區寬度。
- 如申請專利範圍第1項所述之輸入輸出擴展晶片,其中:該偵錯用封包之位址區紀錄該偵錯用封包所乘載的各偵錯 用信號之標頭;且該偵錯用封包之位址區的複數個低位位元設定為固定值,以避免跨邊界位址混淆。
- 一種輸入輸出擴展晶片驗證方法,包括:為一輸入輸出擴展晶片的至少一硬件模組各自提供對應的採樣器;將根據該至少一硬件模組及其各自所對應的採樣器基於該輸入輸出擴展晶片內部一主時脈採樣獲得的信號組合產生一偵錯用信號;產生一偵錯用封包,其中該偵錯用封包乘載該偵錯用信號;以及傳送該偵錯用封包至該輸入輸出擴展晶片之至少一信號下行埠中之一者從該輸入輸出擴展晶片輸出以進行信號偵錯。
- 如申請專利範圍第11項所述之輸入輸出擴展晶片驗證方法,更包括:耦接上述至少一信號下行埠中之一者至一環回卡確立一連結狀態,使該偵錯用封包得以自該輸入輸出擴展晶片輸出後被一協議分析儀抓取以進行偵錯。
- 如申請專利範圍第11項所述之輸入輸出擴展晶片驗證方法,更包括:操作上述採樣器中的一採樣器根據該主時脈自所對應的硬件模組採樣獲得信號。
- 如申請專利範圍第13項所述之輸入輸出擴展晶片驗證方 法,其中:上述採樣器各自以先入先出緩衝器結構對所對應的硬件模組的至少一被採信號實現時脈域轉換,將上述被採信號轉換至該主時脈的時脈域。
- 如申請專利範圍第13項所述之輸入輸出擴展晶片驗證方法,其中:上述採樣器在該主時脈的頻率大於該採樣器所對應的硬件模組的一被採信號的一被採信號時脈之兩倍頻率時,係直接以該主時脈採樣該被採信號。
- 如申請專利範圍第11項所述之輸入輸出擴展晶片驗證方法,其中:上述採樣器在所對應的硬件模組的一被採信號的一被採信號時脈之頻率大於或等於該主時脈的二分之一頻率、且小於或等於該主時脈之頻率時,係根據該被採信號時脈將該被採信號推入一先入先出緩衝器,再根據該主時脈將數據推出該先入先出緩衝器。
- 如申請專利範圍第11項所述之輸入輸出擴展晶片驗證方法,其中:上述採樣器在所對應的硬件模組的一被採信號的一被採信號時脈之頻率大於該主時脈之頻率、且小於等於該主時脈之兩倍頻率時,降頻該被採信號時脈、並拓寬該被採信號之位元數,根據降頻後的該被採信號時脈將拓寬位元數後的該被採信號推入並行的複數個先入先出緩衝器,再根據該主時脈將數據推出並行的該等先入先出緩衝器。
- 如申請專利範圍第11項所述之輸入輸出擴展晶片驗證方法,其中:上述採樣器各自以複數個寄存器以及複數個多工器將所對應的硬件模組供應的被採信號劃分為複數組,其中同一組被採信號的操作時脈屬於相同時脈域。
- 如申請專利範圍第11項所述之輸入輸出擴展晶片驗證方法,其中:該偵錯用封包乘載多達N筆的偵錯用信號;且N為數字,相關於該偵錯用封包之位址區寬度。
- 如申請專利範圍第11項所述之輸入輸出擴展晶片驗證方法,其中:該偵錯用封包之位址區紀錄該偵錯用封包所乘載的各偵錯用信號之標頭;且該偵錯用封包之位址區的複數個低位位元設定為固定值,以避免跨邊界位址混淆。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610679377.3A CN106294228B (zh) | 2016-08-17 | 2016-08-17 | 输入输出扩展芯片以及其验证方法 |
??201610679377.3 | 2016-08-17 |
Publications (2)
Publication Number | Publication Date |
---|---|
TWI604303B true TWI604303B (zh) | 2017-11-01 |
TW201810037A TW201810037A (zh) | 2018-03-16 |
Family
ID=57679637
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW105135226A TWI604303B (zh) | 2016-08-17 | 2016-10-31 | 輸入輸出擴展晶片以及其驗證方法 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN106294228B (zh) |
TW (1) | TWI604303B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107643992B (zh) * | 2017-09-27 | 2020-09-08 | 成都忆芯科技有限公司 | PCIe控制器与使用PCIe控制器的环回数据通路 |
TWI801412B (zh) * | 2018-09-06 | 2023-05-11 | 神雲科技股份有限公司 | 偵錯方法 |
CN109491846B (zh) * | 2018-10-17 | 2022-02-18 | 郑州云海信息技术有限公司 | 一种用于服务器抓取SATA硬盘trace的方法和系统 |
CN111124974B (zh) * | 2019-12-25 | 2024-01-26 | 西安易朴通讯技术有限公司 | 接口扩展装置及方法 |
Citations (5)
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 (zh) * | 2006-07-28 | 2008-01-30 | 佛山市顺德区顺达电脑厂有限公司 | 用以检查主板的诊断界面卡 |
TW201439749A (zh) * | 2012-12-28 | 2014-10-16 | Intel Corp | 即時錯誤復原 |
CN105302755A (zh) * | 2014-06-27 | 2016-02-03 | 曙光信息产业(北京)有限公司 | 一种具有监控功能的pcie板卡及其监控方法 |
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)
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 (zh) * | 2010-12-17 | 2015-10-01 | Via Tech Inc | 電腦系統之偵錯裝置及其方法 |
US9274915B2 (en) * | 2014-05-19 | 2016-03-01 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Sideband logic for monitoring PCIe headers |
CN105847714B (zh) * | 2016-05-24 | 2018-10-09 | 中国科学院长春光学精密机械与物理研究所 | Cmos输入图像数据的延时校正系统 |
-
2016
- 2016-08-17 CN CN201610679377.3A patent/CN106294228B/zh active Active
- 2016-10-31 TW TW105135226A patent/TWI604303B/zh active
Patent Citations (5)
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 (zh) * | 2006-07-28 | 2008-01-30 | 佛山市顺德区顺达电脑厂有限公司 | 用以检查主板的诊断界面卡 |
TW201439749A (zh) * | 2012-12-28 | 2014-10-16 | Intel Corp | 即時錯誤復原 |
CN105302755A (zh) * | 2014-06-27 | 2016-02-03 | 曙光信息产业(北京)有限公司 | 一种具有监控功能的pcie板卡及其监控方法 |
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 |
---|---|
CN106294228A (zh) | 2017-01-04 |
CN106294228B (zh) | 2019-06-04 |
TW201810037A (zh) | 2018-03-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10318468B2 (en) | FPGA-based interface signal remapping method | |
TWI604303B (zh) | 輸入輸出擴展晶片以及其驗證方法 | |
US9217774B2 (en) | Cycle-accurate replay and debugging of running FPGA systems | |
WO2018076650A1 (zh) | 监控axi总线的方法、装置和计算机可读存储介质 | |
JP2007066336A (ja) | 集積回路内の診断データ取り込み | |
US7779194B2 (en) | Data modification module | |
US20130290594A1 (en) | Core-driven translation and loopback test | |
CN105573922B (zh) | 一种实现数据格式转换的方法和装置 | |
US20080195793A1 (en) | Microcontroller with memory trace module | |
Kavianipour et al. | High performance FPGA-based scatter/gather DMA interface for PCIe | |
JP4988411B2 (ja) | 直列データ源からのデータを並列フォーマットで読取る方法および装置 | |
US7925741B2 (en) | Black-box host stack latency measurement | |
TWI727581B (zh) | 資料傳輸系統 | |
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 | |
JP2005222446A (ja) | オンボードデバッグ装置および半導体回路装置 | |
Mroczek | SoPC-based DMA for PCI Express DAQ cards | |
CN114003352B (zh) | 抓取处理器内部信号的系统及方法 | |
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 (zh) | 基于fpga的超声检测数据存储模块及fpga电路 | |
Ge et al. | Design of a Data Transmission Control Unit in a Multi-core DSP System | |
Raju et al. | Implementation of High Speed Distributed Data Acquisition System | |
Bin et al. | Implementation of FPGA-Based Logic Blocks for High Speed Signal Processing System | |
Ji et al. | Software FIFO based interconnection between DSP and FPGA in video encoding system |