TW201530170A - 用於半導體晶粒之晶粒上邏輯分析器 - Google Patents

用於半導體晶粒之晶粒上邏輯分析器 Download PDF

Info

Publication number
TW201530170A
TW201530170A TW104112205A TW104112205A TW201530170A TW 201530170 A TW201530170 A TW 201530170A TW 104112205 A TW104112205 A TW 104112205A TW 104112205 A TW104112205 A TW 104112205A TW 201530170 A TW201530170 A TW 201530170A
Authority
TW
Taiwan
Prior art keywords
storage
agent
memory
information
data
Prior art date
Application number
TW104112205A
Other languages
English (en)
Other versions
TWI559018B (zh
Inventor
Tina C Zhong
Jason G Sandri
Kenneth P Griesser
Lori R Borger
Original Assignee
Intel Corp
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 Intel Corp filed Critical Intel Corp
Publication of TW201530170A publication Critical patent/TW201530170A/zh
Application granted granted Critical
Publication of TWI559018B publication Critical patent/TWI559018B/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3648Software debugging using additional hardware
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3177Testing of logic operation, e.g. by logic analysers
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/31705Debugging aspects, e.g. using test circuits for debugging, using dedicated debugging test circuits
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318505Test of Modular systems, e.g. Wafers, MCM's
    • G01R31/318511Wafer Test
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/3185Reconfiguring for testing, e.g. LSSD, partitioning
    • G01R31/318505Test of Modular systems, e.g. Wafers, MCM's
    • G01R31/318513Test of Multi-Chip-Moduls
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/317Testing of digital circuits
    • G01R31/3181Functional testing
    • G01R31/319Tester hardware, i.e. output processing circuits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/079Root cause analysis, i.e. error or fault diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/25Testing of logic operation, e.g. by logic analysers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3089Monitoring arrangements determined by the means or processing involved in sensing the monitored data, e.g. interfaces, connectors, sensors, probes, agents
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3636Software debugging by tracing the execution of the program
    • G06F11/364Software debugging by tracing the execution of the program tracing values on a bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)
  • Tests Of Electronic Circuits (AREA)
  • Semiconductor Integrated Circuits (AREA)

Abstract

在一個實施例中,本發明包括一半導體晶粒,諸如包括具有一內建線跡緩衝器之一邏輯分析器之一系統單晶片,線跡緩衝器用以高速儲存於諸晶粒上代理器間傳遞之資訊,且以一較低速將該資訊提供到一晶粒外代理器。本文也描述了其它實施例,並加以請求專利。

Description

用於半導體晶粒之晶粒上邏輯分析器 發明領域
本發明係有關於用於半導體晶粒之晶粒上邏輯分析器。
發明背景
隨著矽設計之複雜度增長且轉向多晶片整合,執行後矽除錯之挑戰增大。例如,系統單晶片(SoC;又稱“晶片上系統”)實施態樣在很多不同生產線上變得越來越普遍。由於消費者期望更小的形狀因數,除錯此類系統之難度增大。尤其是當一單一矽晶粒上之元件間的互連線隱藏而不能由一外部邏輯分析器擷取時。
除了該矽上之電晶體數量增加,利用外部邏輯分析器快速擷取高頻信號之成本也在增長。設計小組通常將除錯掛鉤(debug hooks)植入該電路中。然而,由於內部節點之敏感性及觀察該等內部節點之軟體工具,所以此等強大的除錯特徵一般不能提供給消費者使用。這迫使任一消費者問題要在一廠商端實驗室(與消費者端相對)重現。在消費者端以外重現此等問題非常難。
依據本發明之一實施例,係特地提出一種裝置,其包含:一半導體晶粒,其包括經由一內部互連線耦接之一第一代理器及一第二代理器;及該半導體晶粒還包括一邏輯分析器,該邏輯分析器具有一線跡緩衝器,該線跡緩衝器用以儲存從該第一代理器傳遞到該第二代理器之第一資訊及儲存從該第二代理器傳遞到該第一代理器之第二資訊,且將該第一及第二資訊提供到一晶粒外代理器。
10‧‧‧積體電路
20‧‧‧處理器
25‧‧‧互連線
30、220‧‧‧晶片組
32‧‧‧多工器
34‧‧‧匯流排應答機
36‧‧‧多工器
40、260‧‧‧ODLA
42‧‧‧測試向量暫存器、信號處 理模組
43‧‧‧緩衝器控制器
44‧‧‧線跡緩衝器
45‧‧‧組態暫存器
45a‧‧‧第二TAP介面
45b‧‧‧測試存取埠(TAP)介面
46‧‧‧觸發器邏輯元件
49‧‧‧輸出邏輯元件
60‧‧‧代理器
70‧‧‧儲存單元
72a、72b、72n‧‧‧獨立分區
74a、74b、74n‧‧‧匹配/過濾功能、功能方塊
75a、75b、75n‧‧‧區段
100‧‧‧緩衝器
110a‧‧‧佇列
110b‧‧‧佇列
120a‧‧‧佇列
120b‧‧‧佇列
130‧‧‧動態合併邏輯元件
130a‧‧‧上層資料佇列
130b‧‧‧上層資料佇列
135‧‧‧多工器
140‧‧‧邏輯閘
200‧‧‧系統
210‧‧‧CPU
230‧‧‧記憶體控制器
240‧‧‧特定應用積體電路(ASIC)方塊
250‧‧‧內部節點觀測模組
264‧‧‧記憶體前模組
265‧‧‧時間戳記邏輯元件
268‧‧‧緩衝器指標邏輯元件
270‧‧‧隨機存取記憶體(RAM)
280‧‧‧外部邏輯分析器
290‧‧‧記憶體映像介面
300‧‧‧方法
310、320、330、340、350‧‧‧方塊
第1圖是根據本發明之一個實施例的一積體電路之一方塊圖。
第2圖是根據本發明之一實施例的一晶粒上邏輯分析器之一方塊圖。
第3圖是根據本發明之一個實施例的一線跡緩衝器之多個佇列之一方塊圖。
第4圖是根據本發明之一個實施例的用於一線跡緩衝器之一佇列之輸入之一方塊圖。
第5圖是根據本發明之一個實施例的一匯流排及儲存架構之一概述。
第6圖顯示了本發明之另一實施例之一系統級圖。
第7圖是根據本發明之一個實施例的一晶粒上邏輯分析器之一部分之一方塊圖。
第8圖是根據本發明之一個實施例的一方法之一流程圖。
詳細描述
在各種實施例中,一晶粒上邏輯分析器(ODLA)可作為一半導體裝置之一除錯解決方案,該半導體裝置諸如一系統單晶片(SoC)。在一個實施例中,該ODLA可用來收集在諸如一處理器-晶片組互連線之一互連線上傳遞之資料,例如一單向前側匯流排(iFSB)。在一個實施例中,此互連線可包括多於700左右個內部信號。此等信號對於一裝置介面處之位於晶片外之一傳統邏輯分析器是不可見的,因為該iFSB埋植於該SoC內部。透過利用本發明之一實施例將可見性提供給該iFSB,一除錯工程師能夠獲得流入及流出該處理器之精確資料。
現在參考第1圖,其顯示了一積體電路10之一方塊圖,該積體電路10在一些實施例中可以是一SoC。如圖所示,該SoC之主要元件包括一處理器20,其可以是一中央處理單元(CPU),諸如一嵌入式英特爾TM處理器或者另一這樣之CPU。依次地,處理器20可經由一互連線25耦接到一晶片組30,在一個實施例中該互連線25可以是包括多個各以一個方向傳播之線道之一嵌入式前側匯流排互連體。因而,單向線可字處理器20耦接到晶片組30且反之亦然。
還如第1圖所示,晶片組30可包括各種元件。為了便於說明,要了解到,可用來致能該處理器與該SoC之各種其它元件(諸如,專用邏輯單元、記憶體控制器、周邊控制器等)之間的通訊之該晶片組之基本邏輯元件未顯示。相反,第1 圖顯示了根據本發明之一實施例參與執行除錯及測試操作之晶片組30之高級組件。
如圖所示,來自處理器20之通訊可提供到一匯流排應答機34且還提供到一ODLA 40。相應地,自匯流排應答機34到處理器20之通訊可通過一多工器32提供,該多工器32還接收來自ODLA 40之一輸入。根據提供該ODLA資料的一測試模式是否遭啟動,多工器32可由一測試模式信號(ODLA_testmode)控制以選擇匯流排應答機34或者ODLA 40之資料以傳遞到處理器20。
還如圖所示,ODLA 40可接收來自一內部介面及來自一第二個多工器36之輸入,該第二個多工器36遭耦接以經由一測試向量暫存器42接收除錯信號及資訊且接著耦接到一測試存取埠(TAP)介面45b。該TAP介面可符合電機電子工程師學會(IEEE)1149.1-1999、聯合測試行動小組(JTAG)標準。如圖所示,介面45b可經由一輸入串列線(TDI)及一輸出串列線(TDO)與一晶片外元件進行串列通訊。還如圖所示,一第二TAP介面45a可直接耦接到ODLA 40。接著,ODLA 40可利用一除錯埠(未顯示在第1圖中)經由一並列匯流排進行晶片外通訊,該並列匯流排例如一16位元並列資料匯流排及一條一位元時鐘線。儘管第1圖之該實施例顯示了此特定實施態樣,本發明之範圍不局限於此方面。
如圖所示,該ODLA作為一獨立單元實施於該矽上。在一個實施例中,該ODLA位於該晶片組中,但在其它實施例中,其可位於該處理器與該晶片組之間或者位於另一晶片 上位置中。該ODLA監測該等介面信號且將線跡擷取入一內部緩衝器(未顯示在第1圖中)中。在該線跡擷取結束時,一用戶可卸載該緩衝器內容,例如通過該除錯埠或者該TAP埠。該用戶將典型地把該除錯埠連接到一外部邏輯分析器或者一預期之除錯埠。穿過該除錯埠之該資料以一標頭樣式開始且按照某一順序,例如按照一固定順序,使得後處理軟體可重建該資料。通過兩個埠收集之該資料還包含時序資訊。該標頭樣式、卸載順序及時序資訊為該用戶所知,使得該資訊可容易分析及重建以顯示該iFSB上之逐個時鐘動作。
該ODLA提供了一套完整的觸發器,其使該用戶對一預期事件產生一觸發且有效地利用該有限之晶片上線跡緩衝器。例如,一觸發器可開始或者結束一線跡擷取動作。此外,一重復事件可遭觸發。在一個實施例中,觸發器可通過該ODLA之內部暫存器遭程式化。此暫存器組還可包含可通過一主要記憶體映像介面(例如,除錯埠)或者一次要TAP介面接取之其它組態暫存器。
除了監測該iFSB之外,出於特定消費者除錯目的,該ODLA允許該SoC將該擷取能力擴大到其它信號。在各不同實施例中,這樣之除錯信號可來自該晶片上之各個不同位置。例如,該晶片之很多不同的邏輯塊可具有與之有關之一個或多個內部觀測節點。來自此等各個不同觀測節點之該等信號接著可提供到一內部節點觀測模組,該等信號收集於該內部節點觀測模組處。此等信號可接著提供給該 ODLA(例如,通過多工器36)以用於進一步處理、儲存及發送至一晶片外代理器。類似於該iFSB,該ODLA將此等信號擷取於它的緩衝器中且以逐個時鐘為基礎提供觀察。因而,單元級觀測節點可路由安排到該ODLA。不受限於一次只觀測一小位元寬度(例如,32位元)及多次運行一測試,實施例可用來只運行一次測試且接著獲得所有觀測信號。
由於該SoC封裝架構,該ODLA本身有助於針對大批量製造(HVM)測試對該處理器作出反應。該ODLA可作為該iFSB上之一代理器來對功能測試及除錯作出決定性響應,其透過提供一功能性內建自檢(BIST)能力而可用於針對結構、速度及電力甄別之功能性HVM測試。而且,當與目標硬體測試結合時,實施例可有助於在此方面出錯之部分的故障分析及錯誤隔離。
為了致能資料收集,該ODLA緩衝器可以以一方式建立,使得該處理器到晶片組及晶片組到處理器異動彼此獨立。因此,與該晶片組到處理器異動有關之一佇列緩衝器可預先加載獲得的測試內容(例如,通過該TAP埠)。接著,一觸發器遭設定以開啟一驅動返回模式(drive-back mode)。在驅動返回模式期間,測試內容遭驅逐至該處理器,同時該緩衝器擷取從該處理器到該晶片組之任一異動。在此特定測試模式中,該ODLA替代該匯流排應答機來在該內部匯流排上傳遞信號。為了完成此,其與在正常模式下之該匯流排應答機共用同一代理器識別符。因此,不需要額外的邏輯元件來在該兩個代理器之間做出裁決。當該測試完成 時,擷取於該緩衝器中之該線跡遭卸載以用於比較及用於在該HVM測試期間檢查一通過/失敗狀態。實施例可遭擴展以致能概括用於HVM測試之功能性測試內容,藉此消除對該晶片組實施特定硬體以支持用於該CPU之功能性HNM測試之需要。
如上所述,該ODLA可包括各種元件,該各種元件包括邏輯元件、控制元件及可包括依電性及非依電性儲存器之儲存器。現在參考第2圖,根據本發明之一實施例,其顯示了出現於一晶粒上邏輯分析器中之各種元件之一方塊圖。如第2圖中所示,ODLA 40可包括用以接收及處理來自一SoC或其它半導體裝置之各個部分之信號之各種元件。如圖所示,要儲存到ODLA 40之輸入資料可由一信號處理模組42接收。信號處理模組42可執行各種處理,例如以一恰當格式放置該等信號以儲存到一線跡緩衝器44中。在不同實施例中,線跡緩衝器44可以是任一種依電性或非依電性記憶體,諸如一隨機存取記憶體(RAM)、快取記憶體或等等。如圖所示,一緩衝器控制器43可以耦接到線跡緩衝器44或者是其之部分,且可用來致能動態佇列組合,如下面進一步討論。更進一步,緩衝器控制器43可執行各種匹配/過濾操作,也如下所討論,使得實際上只有接收到之資料之一限定量儲存到線跡緩衝器44中,因而緩解儲存要求且利用一更小尺寸緩衝器致能晶粒上除錯,減少了晶粒消耗。
如圖所示,一觸發器邏輯元件46可與緩衝器控制器43通訊以致能線跡儲存之起始/終止。接著,觸發器邏輯元件 46可基於存在於一個或多個組態暫存器45中之資訊而遭控制,該一個或多個組態暫存器45載有接收自該SoC或者一用戶之控制資訊。該等暫存器還可包括命令及狀態暫存器。在一個實施例中,記憶體映像輸入/輸出(IO)異動可用來程式化暫存器45。此外,一輸出邏輯元件49可將來自線跡緩衝器44之線跡資料輸出到一外部代理器,諸如一外部邏輯分析器或者其它信號處理器。儘管第2圖之該實施例顯示了此特定實施態樣,本發明之範圍不局限於此方面。
在一個實施例中,該線跡緩衝器44可分成多個部分(或者佇列)。至每一佇列之輸入可源於多個來源。例如,每一佇列可受組配以接收來自該內部互連線或者該晶片上存在之其它除錯節點之一輸入。一多工器或者其它選擇器可用來選擇該等來源中之一個作為輸入。當至一特定佇列之全部來源設計為關閉時,該閒置佇列可與一主動佇列合併以作為一溢出佇列。在可能的時候合併該等不同佇列,這有效地增大了用於一個佇列之儲存容量且最小化了所耗晶粒面積之使用。
在一個實施例中,該等序列可基於一邏輯表合併。現在參考第3圖,其根據本發明之一實施例顯示了一線跡緩衝器之多個序列之一方塊圖。如第3圖中所示,緩衝器100包括多個個別序列,該多個個別序列包括命令/位址(CMD/ADDR)佇列110a與110b、下層資料佇列120a與120b及上層資料佇列130a與130b。此等序列之每一個可具有一給定寬度及大小,例如128位元寬。因而,如圖所示,來自該匯 流排之命令及位址資訊可儲存在命令/位址佇列110中,而匯流排資料之不同部分,例如低及高部分,可儲存在該下層資料佇列120a與120b及上層資料佇列130a與130b中。在很多實施態樣中,期望獲得之該除錯資訊之大部分可與在該匯流排上獲得之命令/位址資訊有關。因此,在此等情況下,動態序列合併可致能未用之資料佇列作為該等命令/位址佇列110中之一個的額外儲存器。
核心之間的佇列合併可利用控制邏輯元件及一邏輯表實現。特定地,如第3圖中所示,該等序列之間的帶箭頭之線之該等數字表示一佇列遭合併之優先順序。例如,當該下層資料佇列(P2H)120b閒置時,其首先與該相對的下層資料佇列(H2P)120a合併。如果下層資料佇列120a也碰巧閒置,佇列120b可與命令/位址佇列110b合併。如果命令/位址佇列110b也閒置,則佇列120b可與上層資料佇列130b合併。在此安排中,當下層資料佇列120b與上層資料佇列130b都閒置且都想要與該命令/位址佇列110b合併時,該下層資料佇列具有優先順序,其由第3圖中之星號表示以顯示該兩個佇列之間的優先順序。儘管第3圖中之該實施態樣為了簡化而一次合併兩個佇列,但其它的選擇是可能的。要注意到,個別佇列之分割依賴於擷取之資料。例如,如果另一應用可將該動態佇列合併用於除了位址、資料及控制外的資訊此外,要理解的是,該佇列之寬度及大小不一定是固定的,而可根據在一應用上得到多少空間而變化。
當一閒置佇列與一活動佇列合併時,該閒置佇列成為 次要佇列,即溢出佇列。到該主要佇列之輸入成為該次要佇列之輸入。因此,根據本發明之一實施例,在每一佇列通常具有兩個輸入之一實施例中,一第三輸入遭提供以用於動態佇列合併。此第三源只可用於該佇列閒置時。
現在參考第4圖,其根據本發明之一實施例顯示了用於一線跡緩衝器之一佇列之該等輸入之一方塊圖。特定地,第4圖顯示了只用於一個佇列之輸入。即,只顯示了用於P2H命令/位址佇列110b之該等輸入。要理解的是,同樣的輸入可提供給H2P佇列110a。特定地,如第4圖中所示,一個三來源之多工器135耦接到佇列110b,且受動態合併邏輯元件130控制。根據本發明之一實施例,在不同的實施例中,合併邏輯元件130可包括一邏輯表以基於該各個佇列之狀態及該ODLA之其它組態暫存器而判定該多工器135之哪一輸入提供給佇列110b。如圖所示,到該多工器135之該三個輸入可包括來自該內部互連線(iFSB)之信號資訊、來自存在於該裝置(SoC)上之其它除錯信號之資訊及耦接到命令/位址佇列110之一相似多工器之輸出。
當佇列110b閒置且佇列110a滿時,如該H2P_full信號所示,一允許寫入信號提供給佇列110b。特定地,一邏輯閘140,例如一與邏輯閘,可接收該滿緩衝器信號及用於佇列110a之一允許寫入信號,且如果該兩個信號是有效的時,佇列110b之一允許寫入信號遭產生。以此方式,佇列110a之多工輸出(Mux_out)由合併邏輯元件130選擇作為該佇列110b之該輸入。儘管第4圖之該實施例顯示了此特定實施態 樣,要理解,本發明之範圍不局限於此方面。例如,儘管本文所述之該動態緩存用於一ODLA類型之設計,但其可應用於任一其它包括用以提供動態大小改變以增大靈活性之儲存元件之設計,包括在一除錯使用模型外部之一設計中。
實施例為一設計提供效率且將多種選擇提供給一矽除錯小組之使用模型。當該矽除錯小組仔細查看一特定問題時,需要從一組信號擷取大量線跡,而其它信號是無關緊要的。若無佇列合併,該線跡緩衝器會具有一固定大小且會浪費閒置佇列空間同時缺乏該等活動佇列。根據本發明之一實施例,動態佇列合併可節省晶粒面積且自動增大該佇列大小以用於無法預料之除錯情況。該用戶只需判定在一特定除錯狀態下哪些輸入是必需的。剩下之動作對該用戶隱藏,用戶不需作額外努力或進行人工程式設計。
如上所述,該iFSB互連線匯流排可包括位址、資料及命令信號且可以是單向的。第5圖根據本發明之一實施例顯示了該匯流排之架構及其與一緩衝器之關係之一概述。如第5圖中所示,互連線25可由單向鏈路構成且可包括用於每一代理器之n組相似信號,例如,命令、位址及資料信號。在第5圖中顯示之該實施例中,此等代理器包括處理器20及晶片組30。然而,可存在其它代理器,諸如一代理器60。還如第5圖中所示,一組儲存元件可與該互連系統有關。特定地,儲存單元70可包括多個不同儲存元件,分成獨立分區72a-72n,每一獨立分區與耦接到該匯流排互連線之該等代理器中之一個相關聯。如進一步所示,每一分區72可包 括一匹配/過濾功能74及多個區段751-75n。來自該互連線上之該等代理器之資訊之儲存可分成n部分。每一分區72獨立地保存入一儲存元件。每一部分之該儲存可進一步分成更小區段75以容納該等信號之該等不同功能。作為一個範例,如第3圖中顯示之該分區,不同的信號類型,例如命令/位址及資料(下層)及資料(上層)可儲存到不同的區段75中。在每一時鐘邊緣可擷取信號。一時間戳記還可和每一項一起儲存。然而,為了降低所需的儲存空間量,可提供一依變化儲存特徵,其中一特定區段只在該區段中之一個或多個信號轉換時遭保存。由於每一區段彼此獨立,該時間戳記提供了一方式將項目與該等區段關聯且在該互連線上再次產生一週期精確異動流程。
此外,功能方塊74可執行檢測每一區段上之各種圖案或者多個區段上之圖案之一組合之不同匹配功能。該等匹配功能之結果判定與那個圖案有關之該異動是否應當儲存或過濾。即,非匹配圖案可遭過濾(即,不儲存)以降低儲存要求。該匹配功能可受組配以允許匹配位址、資料及控制位元,例如記憶體讀、記憶體寫或者IO異動。過濾可基於一特定位址且其可用以選擇那些位址以遭儲存在該佇列中或者可用以阻止某些位址遭儲存在該佇列中。此外,實施例可包括作為該匹配/過濾功能之部分之壓縮邏輯元件。在一些實施例中,匹配功能74可用來判定哪些事件開始/停止一觸發器。例如,一旦到達一事件(諸如,一預定計數器達到某一值等等),一開始觸發器將只開始擷取內容。相反, 當重置時,一停止觸發器將開始擷取且當一預定事件發生時將停止。其它組態可使用開始及停止觸發之一組合。例如,有用於多個事件之計數器且它們可致能連續觸發。
因而,實施例可提供一整個匯流排之週期精確擷取。當在一情況下沒有明顯的導線時,此資訊可用來解決一故障。此外,該可配置選項為除錯工程師提供了很大的靈活性以在不同場景下擷取資訊。當花很長時間解決一故障時,該過濾器有助於仔細產看受關注之物且還可透過只保存該所需資訊而節省該儲存空間。
第6圖顯示了本發明之另一實施例之一系統級圖。如第6圖中所示,一系統200可以是利用個別元件構成之一SoC或者系統。在第6圖中顯示之該實施例中,此等元件可包括經由一晶片組220耦接到一記憶體控制器230之一CPU 210。此外,各種特定應用積體電路(ASIC)方塊240可經由晶片組220耦接到CPU 210。為了致能除錯各種內部節點,一內部節點觀測模組250可遭提供且其可與一外部邏輯分析器280進行通訊。然而,並非利用邏輯分析器280嘗試恢復來自該各個內部區塊之大量信號,實施例可包括一ODLA 260,諸如關於第2圖所述之ODLA。如圖所示,ODLA 260可遭耦接以從內部節點觀測模組250接收信號及時鐘資訊。在一個實施例中,內部節點觀測模組250源同步地向ODLA 260提供該資料及該至少一個時鐘。
與ODLA有關之其它細節關於第7圖顯示。如第7圖中所示,ODLA遭耦接以接收來自內部節點觀測模組250之資料 及時鐘資訊。在第7圖中顯示之該實施態樣中,提供一單一時鐘線及8條資料線,但本發明之範圍不局限於此方面。該時鐘及資料兩者可提供給一記憶體前(pre-memory)模組264,其以適於儲存之一形式放置該資料在一相應記憶體中,該相應記憶器在一個實施例中可以是一隨機存取記憶體(RAM)270。
記憶體前模組264將內部節點觀測信號封裝成記憶體270之正確寬度。該等記憶體前資料區塊可充滿從1到n-1個記憶體線。如圖所示,記憶體前模組264包括一時間戳記邏輯元件265。在該資料包形成期間,時間戳記邏輯元件265還利用一時間戳記更新該資料區塊[n]。此時間戳記可用來糾正發生在該系統中之事件,例如,第一及第二代理器之間的一通訊及發生在另一代理器處之另一事件。因此,當資料從記憶體270卸載到一外部裝置之後,此糾正可用以幫助除錯及重建資料。當資料之一整個線滿時,該已封裝之資料呈現給記憶體270以用於擷取。在不同實施例中,記憶體270還提供該寫與讀時鐘域之間的同步。為了判定記憶體270(例如:RAM)中之用於儲存之一恰當位置,一緩衝器指標邏輯元件268可遭耦接將位址提供給RAM 270。接著,ODLA 260可經由一記憶體映像介面290與一外部裝置進行通訊,且該記憶體映像介面290可經由除錯埠耦接到該外部裝置。儘管第7圖之該實施例顯示了此特定實施態樣,要理解到,本發明之範圍不局限於此方面。
在一傳統之除錯情況下,工程師將典型地把該外部邏 輯分析器280連接到該內部節點觀測模組250。儘管成千上萬個信號可由此架構收集,但可以在該邏輯分析器上觀測到之信號量同時受在該裝置上可用之通道數目限制。此外,很多高頻率設計在該邏輯分析器上需要千兆赫(GHz)帶寬以用於擷取。相反,ODLA 260可觀測到之信號遠遠多於一邏輯分析器,且可以以該等信號之原生速度擷取該等信號。該模組之內容可以以一小得多的速度範圍(例如,兆赫(MHz))由一測試工具下載或者遭擷取到該邏輯分析器上。
實施例還使消費者實見能容易地除錯,而不篡改來自該消費者之關鍵資訊或揭露廠商技術。典型地,在一廠商實驗室下,盡可能地再生該消費者環境。然而,丟失一小條資訊可輕易地導致與該除錯情況不符且延長該除錯時間。因而,實施例可從一消費者擷取準確資訊且使該等故障較容易地再生。該週期精確資訊還使一應用工程師分析一故障而根本不產生該故障,改善了除錯時間、提高了生產率且增强了消費者關係。在不同實施例中,一消費者可遭提供以指令以將矽資訊保存於一內部節點中且接著下載該內容以用於以後查看。特定地,當一消費者提出一視察時,該廠商之產品工程師可提供給該消費者此ODLA之組態,而不透露什麽正在遭擷取。該消費者可在其自身之實驗室產生該故障情況。接著該模組之該內容可遭擷取出且傳回該廠商之該產品實驗室且由產品工程師利用該故障時的該詳細精確之信號動作來分析。
現在參考第8圖,其顯示了根據本發明之一個實施例之 一方法之一流程圖。如第8圖中所示,方法300可用來在一現場情況(例如,在一消費者位置)擷取除錯資訊且致能該SoC之一廠商之該資訊之傳輸以基於該資訊執行除錯。在第8圖中,方法300可透過組配該SoC之一ODLA以擷取與一系統故障有關之資料而開始(方塊310)。在一個實施例中,一消費者可接收來自該廠商之資訊以組配此ODLA,此資訊典型地對於該消費者保持隱藏。此資訊可包括用於該ODLA之組態暫存器之各種組態資訊及觸發資訊。在某些實施例中,還可提供一個或多個測試圖案以輸入到該ODLA以致能根據該ODLA之一線跡緩衝器之一預先定義測試資料之儲存致能運行該預先測試。作為一個範例,此資訊可經由一安全網際網路連接而接收到,但本發明之範圍不局限於此方面。
還參考第8圖,接著該消費者可啟動系統操作且因此,該ODLA可自動擷取由該組態資訊建立之該資料(方塊320)。接著該資料可遭擷取(方塊330)。此資料擷取可以以低於資料擷取之一原生速度低之一速度發生。在不同實施例中,一邏輯分析器、其它測試裝置或耦接到例如該ODLA之一除錯埠之一電腦系統可擷取該資訊且將其放置在一恰當檔案中。此檔案可接著傳遞到該SoC廠商(方塊340)。儘管本發明之範圍不局限於此方面,但在一個實施態樣中,該資料可經由該網際網路在一安全通道上傳遞。接著,該廠商之除錯、現場、測試工程師及其它可分析該資料以解決該故障(方塊350)。以此方式,可避免需要在該廠商實驗室 複製出現在一消費者位置之該故障。儘管第8圖之該實施例顯示了此特定實施態樣,但本發明之範圍不局限於方面。例如,在一些實施態樣中,諸如,該系統擷取由該SoC廠商執行之實施態樣中,控制可從方塊330直接轉到方塊350。
因而,利用本發明之一實施例,可從晶粒上、全速內部節點擷取資訊。而且,實施例增強現存內部節點觀測除錯特徵且與其兼容及經由一系統時鐘時間戳記根據其它除錯特徵協調事件,這可降低除錯硬體之成本,即,不需要高端邏輯分析器。不考慮消費者特定寬廣特徵,對於任一平臺建立,實施例可以進一步靈活且可提高消費者-設計者所有除錯時間。
因而,實施例提供可攜性及可擴展性以致能植入式互連線之除錯且致能在該處理器外部之該晶片之部分之覆蓋範圍。該ODLA中之該緩衝器及觸發器邏輯元件致能實施例可作用於具有一內部互連線之任一產品上。在不同實施例中,該緩衝器之預先加載及卸載可以低速發生,其降低了對高端(高成本)裝置之需要。而且,透過提供用於HVM測試之一回應機,CPU HVM測試所需之所有功能性HVM測試內容可重新應用於不同的SoC,而不需測試移植、重新確認及故障分級成本。
實施例還致能較快地除錯對於外部邏輯分析器不可見之大量內部介面,可能除錯時間從幾周降到幾小時。而且,透過提供一晶粒上LA,用於測試一SoC產品之有關邏輯分析器成本可避免。
實施例可以以程式碼形式實現且可儲存在儲存有指令之一儲存媒體上,該等指令用來程式化一系統以執行該等指令。該儲存媒體可包括但不局限於:包括軟碟、光碟、光碟之任一種碟片、固態驅動機(SSD)、唯讀光碟記憶體(CD-ROM)、可重寫光碟(CD-RW)及磁光碟、諸如唯讀記憶體(ROM)之半導體裝置、諸如動態隨機存取記憶體(DRAM)之隨機存取記憶體(RAM)、靜態隨機存取記憶體(SRAM)、可抹除可規劃唯讀記憶體(EPROM)、快閃記憶體、電氣可抹除可規劃唯讀記憶體(EEPROM)、磁卡或光卡或適於儲存電子指令之任一其它類型之媒體。
儘管本發明已針對一定數量之實施例予以描述,但熟於此技者將明白,可對其做恰當的大量修改及變化。後附申請專利範圍涵蓋落入本發明之真實精神及範圍中的所有此等修改及變化。
20‧‧‧處理器
25‧‧‧互連線
30‧‧‧晶片組
60‧‧‧代理器
70‧‧‧儲存單元
72a、72b、72n‧‧‧獨立分區
74a、74b、74n‧‧‧匹配/過濾功能、功能方塊
75a、75b、75n‧‧‧區段

Claims (8)

  1. 一種裝置,其包含:用以儲存資料之一記憶體,該記憶體至少分成一第一儲存器、一第二儲存器及一第三儲存器,其中每一儲存器專用於與該記憶體有關聯之一系統之一相對應代理器,且當與該第一儲存器相對應之一第一代理器閒置時,該第一儲存器可以與該記憶體之另一儲存器動態合併以儲存與該另一儲存器相對應之一第二代理器之資料。
  2. 如申請專利範圍第1項所述之裝置,其中該另一儲存器是該第二代理器之一主要佇列而該第一儲存器是該第二代理器之一次要佇列,且進一步地,當與該第三儲存器相對應之一第三代理器閒置時,該第三儲存器與該另一儲存器動態合併,其中該第一儲存器具有較該第三儲存器高的一優先順序供儲存與該第二代理器有關聯之資料。
  3. 如申請專利範圍第2項所述之裝置,其進一步包含一控制器,該控制器包括有指出該第一儲存器與該第三儲存器之間的該動態合併相對於該第二儲存器之一優先順序的一表單。
  4. 如申請專利範圍第1項所述之裝置,其中該記憶體係用以儲存與包括該第一代理器及該第二代理器之一系統之除錯或測試操作有關聯之線跡資訊。
  5. 如申請專利範圍第4項所述之裝置,其中該控制器係用以接收與該等系統代理器有關之活動資訊,且用以基於該活動資訊動態地合併該第一儲存器與該第二儲存器。
  6. 如申請專利範圍第1項所述之裝置,其進一步包含一匹配功能,此匹配功能係用以接收來自耦接於該第一代理器與該第二代理器之間的一互連線之資訊,且在該資料匹配於一預定圖案時將該資訊儲存在該記憶體中,否則不儲存該資訊。
  7. 如申請專利範圍第1項所述之裝置,其進一步包含一過濾功能,此過濾功能係用以接收來自耦接於該第一代理器與該第二代理器之間的一互連線之資料,且防止與一第一預定位址有關聯之資訊儲存在該記憶體中,且允許與一第二預定位址有關聯之資訊儲存在該記憶體中。
  8. 如申請專利範圍第1項所述之裝置,其中該記憶體係用以於在該第一代理器與該第二代理器之間傳遞的資料具有與在該第一代理器與該第二代理器之間傳遞的一先前資料不同之一狀態時,以一時間戳記將在該第一代理器與該第二代理器之間傳遞的該資料儲存在該第一儲存器中,且於在該第一代理器與該第二代理器之間傳遞的該資料與該先前資料之狀態相同時防止該儲存動作,該時間戳記係用以致能與該裝置中發生之其它事件之關聯。
TW104112205A 2009-08-14 2010-07-23 用於半導體晶粒之晶粒上邏輯分析器 TWI559018B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/541,472 US8327198B2 (en) 2009-08-14 2009-08-14 On-die logic analyzer for semiconductor die

Publications (2)

Publication Number Publication Date
TW201530170A true TW201530170A (zh) 2015-08-01
TWI559018B TWI559018B (zh) 2016-11-21

Family

ID=43586731

Family Applications (2)

Application Number Title Priority Date Filing Date
TW099124347A TWI495887B (zh) 2009-08-14 2010-07-23 半導體裝置及用於系統單晶片之方法
TW104112205A TWI559018B (zh) 2009-08-14 2010-07-23 用於半導體晶粒之晶粒上邏輯分析器

Family Applications Before (1)

Application Number Title Priority Date Filing Date
TW099124347A TWI495887B (zh) 2009-08-14 2010-07-23 半導體裝置及用於系統單晶片之方法

Country Status (4)

Country Link
US (4) US8327198B2 (zh)
CN (2) CN103499786B (zh)
TW (2) TWI495887B (zh)
WO (1) WO2011019487A2 (zh)

Families Citing this family (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8327198B2 (en) * 2009-08-14 2012-12-04 Intel Corporation On-die logic analyzer for semiconductor die
DE102010047718A1 (de) * 2010-10-07 2012-04-12 Infineon Technologies Ag Vorrichtung und Verfahren zum Formatieren und Vorauswählen von Trace Daten
US20130031419A1 (en) * 2011-07-28 2013-01-31 International Business Machines Corporation Collecting Debug Data in a Secure Chip Implementation
US8806283B1 (en) 2011-12-15 2014-08-12 Western Digital Technologies, Inc. Automatic and on-demand testing of non-volatile storage devices
US9201804B1 (en) * 2012-02-06 2015-12-01 Google Inc. Dynamically adapting the configuration of a multi-queue cache based on access patterns
US8966313B2 (en) 2012-04-30 2015-02-24 Hewlett-Packard Development Company, L.P. Systems and methods for a shared debug pin
GB2501135B (en) * 2012-07-09 2015-08-26 Ultrasoc Technologies Ltd Event driven debug data capture
US11126522B2 (en) 2013-06-18 2021-09-21 Nxp Usa, Inc. Method and apparatus for offloading functional data from an interconnect component
US9372768B2 (en) 2013-12-26 2016-06-21 Intel Corporation Debug interface
US9317385B2 (en) 2013-12-30 2016-04-19 Samsung Electronics Co., Ltd. Hardware profiling
TW201530546A (zh) * 2014-01-17 2015-08-01 Nuvoton Technology Corp 晶片、測試方法以及電子裝置的製造方法
US10437694B2 (en) * 2014-02-21 2019-10-08 Rolf Segger Real time terminal for debugging embedded computing systems
WO2015181389A2 (en) * 2014-05-29 2015-12-03 Universiteit Gent Integrated circuit verification using parameterized configuration
US10180890B2 (en) * 2014-06-19 2019-01-15 Telefonaktiebolaget L M Ericsson (Publ) Systems and methods for monitoring hardware observation points within a system on a Chip (SoC)
US9264187B1 (en) 2014-10-09 2016-02-16 Intel Corporation Measuring bit error rate during runtime of a receiver circuit
WO2016128050A1 (en) * 2015-02-12 2016-08-18 Pro Design Electronic Gmbh Content adaptive signal probing in hardware emulation devices
WO2016200723A1 (en) * 2015-06-06 2016-12-15 The Board Of Trustees Of The Leland Stanford Junior University Post-silicon validation and debug using symbolic quick error detection
KR20180073300A (ko) * 2016-12-22 2018-07-02 삼성전자주식회사 스캔 데이터 컨트롤 장치 및 이를 갖는 전자 시스템
US20180225063A1 (en) * 2017-02-08 2018-08-09 Intel IP Corporation Device, system and method to provide categorized trace information
CN110032482A (zh) * 2019-04-11 2019-07-19 盛科网络(苏州)有限公司 片上调试装置和方法
US11250167B2 (en) * 2019-09-26 2022-02-15 Intel Corporation Secure external SoC debugging
WO2021223098A1 (en) * 2020-05-06 2021-11-11 Alibaba Group Holding Limited Hierarchical methods and systems for storing data
US11327867B2 (en) * 2020-10-09 2022-05-10 Micron Technology, Inc. On-die logic analyzer
US11544210B1 (en) * 2021-07-15 2023-01-03 Beijing Tenafe Electronic Technology Co., Ltd. Collection of runtime information for debug and analysis
US11848067B2 (en) * 2021-09-07 2023-12-19 Micron Technology, Inc. Apparatus including internal test mechanism and associated methods
CN116257399A (zh) * 2021-12-09 2023-06-13 瑞昱半导体股份有限公司 具有调试功能的芯片与芯片调试方法
TWI812395B (zh) * 2022-08-11 2023-08-11 緯創資通股份有限公司 用於邏輯分析的微控制器、方法及電子系統

Family Cites Families (62)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04317123A (ja) * 1991-04-17 1992-11-09 Tohoku Nippon Denki Software Kk システム更新情報表示制御装置
GB2275119B (en) * 1993-02-03 1997-05-14 Motorola Inc A cached processor
US5442639A (en) * 1993-10-12 1995-08-15 Ship Star Associates, Inc. Method and apparatus for monitoring a communications network
US5621690A (en) * 1995-04-28 1997-04-15 Intel Corporation Nonvolatile memory blocking architecture and redundancy
US5969538A (en) * 1996-10-31 1999-10-19 Texas Instruments Incorporated Semiconductor wafer with interconnect between dies for testing and a process of testing
US6016392A (en) * 1995-11-03 2000-01-18 Intergraph Corporation Method for object-oriented programming using dynamic interfaces
US5802348A (en) * 1995-12-18 1998-09-01 Virtual Machine Works, Inc. Logic analysis system for logic emulation systems
US6148381A (en) * 1997-04-08 2000-11-14 Advanced Micro Devices, Inc. Single-port trace buffer architecture with overflow reduction
US5960191A (en) * 1997-05-30 1999-09-28 Quickturn Design Systems, Inc. Emulation system with time-multiplexed interconnect
US5943490A (en) * 1997-05-30 1999-08-24 Quickturn Design Systems, Inc. Distributed logic analyzer for use in a hardware logic emulation system
US6009488A (en) * 1997-11-07 1999-12-28 Microlinc, Llc Computer having packet-based interconnect channel
US6092127A (en) * 1998-05-15 2000-07-18 Hewlett-Packard Company Dynamic allocation and reallocation of buffers in links of chained DMA operations by receiving notification of buffer full and maintaining a queue of buffers available
US7065481B2 (en) * 1999-11-30 2006-06-20 Synplicity, Inc. Method and system for debugging an electronic system using instrumentation circuitry and a logic analyzer
US6581191B1 (en) * 1999-11-30 2003-06-17 Synplicity, Inc. Hardware debugging in a hardware description language
US6434681B1 (en) * 1999-12-02 2002-08-13 Emc Corporation Snapshot copy facility for a data storage system permitting continued host read/write access
US6331957B1 (en) * 2000-02-14 2001-12-18 Intel Corporation Integrated breakpoint detector and associated multi-level breakpoint techniques
US6748558B1 (en) * 2000-05-10 2004-06-08 Motorola, Inc. Performance monitor system and method suitable for use in an integrated circuit
WO2001086513A2 (en) * 2000-05-11 2001-11-15 Quickturn Design Systems, Inc. Emulation circuit with a hold time algorithm, logic analyzer and shadow memory
US6636056B1 (en) * 2000-10-20 2003-10-21 Intel Corporation Apparatus and method for testing integrated circuits
US7222315B2 (en) * 2000-11-28 2007-05-22 Synplicity, Inc. Hardware-based HDL code coverage and design analysis
US6769054B1 (en) * 2001-02-26 2004-07-27 Emc Corporation System and method for preparation of workload data for replaying in a data storage environment
US6813731B2 (en) * 2001-02-26 2004-11-02 Emc Corporation Methods and apparatus for accessing trace data
US6725336B2 (en) * 2001-04-20 2004-04-20 Sun Microsystems, Inc. Dynamically allocated cache memory for a multi-processor unit
US7047521B2 (en) * 2001-06-07 2006-05-16 Lynoxworks, Inc. Dynamic instrumentation event trace system and methods
JP2003006003A (ja) * 2001-06-18 2003-01-10 Mitsubishi Electric Corp Dmaコントローラおよび半導体集積回路
US7080289B2 (en) * 2001-10-10 2006-07-18 Arm Limited Tracing multiple data access instructions
US6834360B2 (en) * 2001-11-16 2004-12-21 International Business Machines Corporation On-chip logic analyzer
US6760898B1 (en) * 2002-02-22 2004-07-06 Xilinx, Inc. Method and system for inserting probe points in FPGA-based system-on-chip (SoC)
US7089473B2 (en) * 2002-03-29 2006-08-08 Intel Corporation Method and apparatus for testing a circuit using a die frame logic analyzer
GB2387677B (en) * 2002-04-16 2005-06-22 Zarlink Semiconductor Inc Packet buffer memory with integrated allocation/de-allocation circuit
JP2004102331A (ja) * 2002-09-04 2004-04-02 Renesas Technology Corp 半導体装置
US7017093B2 (en) * 2002-09-16 2006-03-21 Lsi Logic Corporation Circuit and/or method for automated use of unallocated resources for a trace buffer application
US7216276B1 (en) * 2003-02-27 2007-05-08 Marvell International Ltd. Apparatus and method for testing and debugging an integrated circuit
US20050041510A1 (en) * 2003-08-19 2005-02-24 Jean Khawand Method and apparatus for providing interprocessor communications using shared memory
US7234017B2 (en) * 2005-02-24 2007-06-19 International Business Machines Corporation Computer system architecture for a processor connected to a high speed bus transceiver
US7454666B1 (en) * 2005-04-07 2008-11-18 Sun Microsystems, Inc. Real-time address trace generation
US20060251416A1 (en) * 2005-05-06 2006-11-09 Lockheed Martin Corporation Switching module
US8694970B2 (en) * 2005-06-02 2014-04-08 Seagate Technology Llc Unified debug system with multiple user-configurable trace volumes and trace buffers
US20070011492A1 (en) * 2005-07-05 2007-01-11 Arm Limited Generation of trace data
US7548085B2 (en) * 2005-07-15 2009-06-16 Tabula, Inc. Random access of user design states in a configurable IC
US7496474B2 (en) * 2005-11-16 2009-02-24 Lsi Corporation Dynamic on-chip logic analysis
US7332929B1 (en) * 2006-03-03 2008-02-19 Azul Systems, Inc. Wide-scan on-chip logic analyzer with global trigger and interleaved SRAM capture buffers
US7401199B2 (en) * 2006-06-28 2008-07-15 Motorola, Inc Method and system for allocating memory to an electronic device
US20090307770A1 (en) * 2006-08-17 2009-12-10 Peter William Harris Apparatus and method for performing integrity checks on sofware
US7917828B2 (en) * 2006-12-28 2011-03-29 Intel Corporation Providing error correction coding for probed data
US20080184150A1 (en) * 2007-01-31 2008-07-31 Marc Minato Electronic circuit design analysis tool for multi-processor environments
US20080244118A1 (en) * 2007-03-28 2008-10-02 Jos Manuel Accapadi Method and apparatus for sharing buffers
US7839162B2 (en) * 2007-06-27 2010-11-23 Tabula, Inc. Configurable IC with deskewing circuits
US8069425B2 (en) * 2007-06-27 2011-11-29 Tabula, Inc. Translating a user design in a configurable IC for debugging the user design
US8412990B2 (en) * 2007-06-27 2013-04-02 Tabula, Inc. Dynamically tracking data values in a configurable IC
US7895430B2 (en) * 2007-07-24 2011-02-22 Hewlett-Packard Development Company, L.P. On-chip logic analyzer using compression
US7827356B2 (en) * 2007-09-10 2010-11-02 Qualcomm Incorporated System and method of using an N-way cache
US7944234B2 (en) * 2008-03-19 2011-05-17 Micron Technology, Inc. Programmable on-chip logic analyzer apparatus, systems, and methods
US7900098B2 (en) 2008-04-01 2011-03-01 Intel Corporation Receiver for recovering and retiming electromagnetically coupled data
WO2010016857A1 (en) * 2008-08-04 2010-02-11 Tabula, Inc. Trigger circuits and event counters for an ic
US7839155B2 (en) * 2008-12-15 2010-11-23 Texas Instruments Incorporated Methods and apparatus to analyze on-chip controlled integrated circuits
US8180991B2 (en) * 2009-03-12 2012-05-15 Cisco Technology, Inc. Adaptive memory allocation
US8225069B2 (en) * 2009-03-31 2012-07-17 Intel Corporation Control of on-die system fabric blocks
US8990633B2 (en) * 2009-04-21 2015-03-24 Freescale Semiconductor, Inc. Tracing support for interconnect fabric
US8327198B2 (en) * 2009-08-14 2012-12-04 Intel Corporation On-die logic analyzer for semiconductor die
US8407444B2 (en) * 2009-12-23 2013-03-26 International Business Machines Corporation Hardware off-load garbage collection acceleration for languages with finalizers
US8943108B2 (en) * 2009-12-23 2015-01-27 International Business Machines Corporation Hardware off-load memory garbage collection acceleration

Also Published As

Publication number Publication date
US20130054931A1 (en) 2013-02-28
TWI495887B (zh) 2015-08-11
US8799728B2 (en) 2014-08-05
CN103499786A (zh) 2014-01-08
US20140053026A1 (en) 2014-02-20
WO2011019487A3 (en) 2011-04-28
US20130103987A1 (en) 2013-04-25
US20110041017A1 (en) 2011-02-17
US8543776B2 (en) 2013-09-24
CN101995547A (zh) 2011-03-30
CN103499786B (zh) 2016-04-13
WO2011019487A2 (en) 2011-02-17
US8327198B2 (en) 2012-12-04
TWI559018B (zh) 2016-11-21
TW201133008A (en) 2011-10-01
US8589745B2 (en) 2013-11-19
CN101995547B (zh) 2013-09-11

Similar Documents

Publication Publication Date Title
TWI559018B (zh) 用於半導體晶粒之晶粒上邏輯分析器
US10515165B2 (en) State visibility and manipulation in integrated circuits
US6829751B1 (en) Diagnostic architecture using FPGA core in system on a chip design
Riley et al. Cell broadband engine debugging for unknown events
US8988956B2 (en) Programmable memory built in self repair circuit
CN100392617C (zh) 片上系统与应用于其中的测试/除错方法
JP6653756B2 (ja) 回路設計をデバッグするための方法および回路
JP4194799B2 (ja) 被試験デバイスの試験中にエラーが生じた場合にテストプログラムのアルゴリズム制御のその時点の状態を回復する方法
US20090132882A1 (en) Scan-load-based dynamic scan configuration
US9448872B2 (en) Hardware state data logger for silicon debug
US20130198566A1 (en) Method and Apparatus for Debugging System-on-Chip Devices
US20030233601A1 (en) Non-intrusive signal observation techniques usable for real-time internal signal capture for an electronic module or integrated circuit
US9710349B2 (en) Storing first computer trace information in memory of second computer
US7617428B2 (en) Circuits and associated methods for improved debug and test of an application integrated circuit
US9201448B2 (en) Observing embedded signals of varying clock domains by fowarding signals within a system on a chip concurrently with a logic module clock signal
US11335383B2 (en) Memory component for a system-on-chip device
Grosso et al. A software-based self-test methodology for system peripherals
JP6138666B2 (ja) 車載用制御装置のロギングシステム
CN102332308B (zh) 一种对存储器接口电路进行在线调试的方法
Hu et al. A Lifelong Health Monitoring Framework in Processors: Work-in-Progress
Maly et al. Multi-Chip Module Smart Substrate System
TWI470421B (zh) 微處理器及其除錯方法
Vermeulen et al. CSAR Debug Overview
Dubey et al. GALS Based Shared Test Architecture for Embedded Memories
US20080270860A1 (en) Integrated Circuit for Writing and Reading Registers Distributed Across a Semiconductor Chip