TWI450078B - 重置或關機後用於終止處理器核心之偵錯暫存器 - Google Patents

重置或關機後用於終止處理器核心之偵錯暫存器 Download PDF

Info

Publication number
TWI450078B
TWI450078B TW100145658A TW100145658A TWI450078B TW I450078 B TWI450078 B TW I450078B TW 100145658 A TW100145658 A TW 100145658A TW 100145658 A TW100145658 A TW 100145658A TW I450078 B TWI450078 B TW I450078B
Authority
TW
Taiwan
Prior art keywords
register
reset
debug
processor
power
Prior art date
Application number
TW100145658A
Other languages
English (en)
Other versions
TW201237606A (en
Inventor
Deniz Balkan
Kevin R Walker
Mitchell P Lichtenberg Jr
Original Assignee
Apple Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple Inc filed Critical Apple Inc
Publication of TW201237606A publication Critical patent/TW201237606A/zh
Application granted granted Critical
Publication of TWI450078B publication Critical patent/TWI450078B/zh

Links

Classifications

    • 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/26Functional testing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • 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
    • G06F11/3656Software debugging using additional hardware using a specific debug interface
    • 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/3183Generation of test inputs, e.g. test vectors, patterns or sequences

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Debugging And Monitoring (AREA)
  • Microcomputers (AREA)

Description

重置或關機後用於終止處理器核心之偵錯暫存器
本發明係關於積體電路,且更特定而言係關於用於對積體電路進行偵錯之機構。
積體電路(IC)及電子總成通常在運送至客戶之前經受測試。經研發以用於測試IC至印刷電路板(PCB)之連接的一種此測試機制稱作邊界掃描。邊界掃描測試係基於通常稱作聯合測試行動小組(JTAG)之IEEE 1149.1標準。儘管最初經研發以用於邊界掃描測試,但JTAG架構之使用在近年中已擴展。舉例而言,JTAG埠有時用以存取待測試之IC的內部功能區塊。此外,JTAG存取埠之使用已進一步擴展以用於對IC設計以及經設計以在此等IC上執行的軟體進行偵錯。
JTAG存取埠之擴展使用已激勵了在提供對IC之內部存取方面之進一步研發。許多IC現包括具有耦接至各種內部組件之多個JTAG存取埠的偵錯埠(DP)。DP亦可包括一或多個串列導線埠(SWP)、記憶體存取埠及使得能夠存取內部IC功能區塊以用於偵錯目的之其他類型的埠。此等存取埠傳達各種信號至可存取功能區塊,包括資料信號及時脈信號。舉例而言,測試輸入資料、時脈及模式選擇信號可經由JTAG埠傳達至功能區塊,同時測試輸出資料可經由JTAG埠接收。一些IC(諸如,處理器)亦可包括偵錯暫存器。此等偵錯暫存器可藉由執行處理器核心中之處理器程式碼而經程式化。
揭示一種停止用於偵錯目的之積體電路(IC)之功能區塊的方法及裝置。在一實施例中,一IC包括可藉由一外部偵錯器經由一偵錯埠存取之數個功能單元。在偵錯操作期間,該IC中之電力控制器可使該功能單元休眠及/或斷電。在功能單元休眠/關機之時間之前或期間,一第一暫存器可經程式化。回應於該第一暫存器之程式化且在使該功能單元休眠之後,一第一信號可經確證且提供至該功能單元。當電力恢復至該功能單元或該功能單元經重置時,回應於該信號,可在指令或其他操作之執行之前終止該功能單元之操作。因此,該第一暫存器之程式化可用信號表示在下一重置處終止功能單元的意圖,但該終止可延遲直至此重置發生。
該方法及裝置亦可結合一重置操作使用。耦接至該偵錯埠之一偵錯器可程式化一第二暫存器以引起IC之功能單元中之每一者或IC之選定功能單元的重置,惟偵錯埠及相關聯之偵錯電路除外。該第一暫存器可藉由偵錯器或回應於該第二暫存器之程式化而亦經程式化。該第一暫存器可在重置該功能單元之前經程式化。該第一信號可在起始該重置之後藉由一功能單元接收。回應於接收到該第一信號,該功能單元可在退出該重置之後終止操作。
在一實施例中,IC可為多核心處理器。處理器核心中之每一者可經由偵錯匯流排耦接至偵錯埠。該偵錯埠可藉由外部偵錯器提供至處理器核心中之每一者的存取,且亦可包括可操作以提供與偵錯操作相關之各種控制功能的控制單元。該IC亦可包括可選擇性地使處理器核心休眠及/或自處理器核心移除電力的電力管理單元(PMU)。可由控制單元存取之暫存器之一群組可耦接至該偵錯匯流排。暫存器之該群組可包括可藉由外部偵錯器結合該IC之一重置或在該重置之前或在該PMU自該等處理器核心中之一或多者移除電力時經程式化的一暫存器。該暫存器可包括數個位元位置或位元位置群組,其中每一者對應於該等處理器核心中之一唯一者。若對應於特定處理器核心之位元位置或位元位置群組經程式化以終止處理器,則一信號可在處理器核心處於重置中時經確證至該處理器核心。當該處理器核心退出重置狀態時,該處理器核心可偵測信號。回應於該信號之偵測,該處理器核心可在重置之後在初始指令的執行之前終止操作。
本文中所描述之方法及裝置可使得外部偵錯器能夠執行數個偵錯功能,該等偵錯功能原本可能係不可能的。舉例而言,外部偵錯器可程式化上文所論述之暫存器以使得能夠對啟動序列進行偵錯。此外,由於執行指令可能改變處理器核心之狀態,因此在執行任何指令之前終止操作之能力可使得偵錯能夠自已知參考點開始。具體而言,提供在重置之前程式化偵錯暫存器以在下一重置之後終止處理器的能力可簡化偵錯,同時仍准許在執行任何指令之前處理器之終止。終止直至重置之延緩可改良偵錯系統之能力,該等偵錯系統可能頻繁地使處理器休眠及喚醒處理器(例如,經由重置)。
具有偵錯埠之積體電路(IC):
現轉向圖1,展示說明外部偵錯器至積體電路(IC)之一實施例之連接的方塊圖,該連接用於存取IC之內部組件。在所展示之實施例中,IC 10經由偵錯埠20耦接至外部偵錯器5。偵錯器5可為電腦系統或可操作以執行對IC 10及其組件之各種類型測試的其他類型之測試設備。詳言之,偵錯器5可用於對IC 10之設計及經寫入以在IC 10上執行的軟體進行偵錯。如本文中所定義,偵錯可包括判定IC 10內是否存在任何硬體錯誤。偵錯亦可包括判定軟體當前是否在IC 10上執行。
如下文將論述,IC 10可包括可由偵錯器5經由偵錯埠20存取之數個內部組件。此等組件可包括處理器之核心(例如,執行核心),但亦可包括其他組件(例如,輸入/輸出單元等)。偵錯器5可經由偵錯埠20提供測試刺激資料至IC 10之一或多個組件,且可起始測試。測試資料之結果可由偵錯器5經由偵錯埠20接收。除了提供測試刺激資料之外,偵錯器5亦可提供各種控制信號及程式化資訊以在偵錯期間控制IC 10內的特定操作。舉例而言,當偵錯軟體意欲在IC 10上執行時,偵錯器5可插入斷點以使一或多個組件停止操作,且因此允許此等組件之狀態經擷取以用於進一步分析。偵錯器5亦可發送控制信號及程式化資訊至IC 10以使特定組件在各種情形下開機、關機、重置或終止。
圖2係進一步詳細說明IC 10之一實施例的方塊圖。在所展示之實施例中,IC 10包括經由偵錯匯流排22耦接至偵錯埠20之複數個處理器核心25。IC 10在一實施例中可為異質(或非對稱)多核心處理器,其中處理器核心中之各處理器核心彼此不同。IC 10可為經設計以用於行動平台(諸如,智慧型手機、膝上型電腦或其他行動器件)之多核心處理器,其中各種處理器核心25中之每一者專用於特定任務。舉例而言,一處理器核心25可專用於執行音訊相關任務,另一處理器核心25可專用於圖形/視訊相關任務,而處理器核心中之一或多個其他者可專用於執行與音訊及/或視訊任務不明顯相關之指令。然而,注意,實施均質多核心處理器(亦即,所有處理器核心為相同的)之IC 10的實施例係可能的且經預期。IC 10之其他可能實施例包括特殊應用積體電路(ASIC)及其他類型之IC。
IC 10亦包括耦接至偵錯匯流排22之偵錯暫存器26的集合。偵錯暫存器26可包括可儲存供偵錯期間使用之資訊的數個不同暫存器。該等暫存器中之一些可用以在偵錯期間觸發IC 10內的特定動作,而其他暫存器可儲存指定特定條件或參數的資訊。下文將論述暫存器26中之特定者的額外細節。
在所展示之實施例中之偵錯埠20可提供用於執行偵錯操作之外部偵錯器(例如,圖1之偵錯器5)的一或多個實體連接。此等連接可包括聯合測試行動小組(JTAG)連接、串列導線偵錯(SWD)連接及/或可供外部偵錯器使用之其他類型的連接。偵錯埠20亦可包括支援此等連接的各種類型之功能電路。
在所展示之實施例中,偵錯埠20包括邏輯電路,其可在偵錯期間提供用於控制其自身及IC 10之其他電路之操作的特定控制功能。可藉由儲存於偵錯暫存器26中之資訊指定此等控制功能中之一些,且因此偵錯埠20經由雙向連接耦接至偵錯暫存器26。偵錯埠20可因此將資訊寫入至偵錯暫存器26中之各者中,且亦可自該偵錯暫存器26讀取資訊。此外,偵錯埠20亦可具有清除暫存器26中之特定者的能力。
在所展示之實施例中,偵錯埠20經組態以提供終止信號(「Halt」)至處理器核心25中之每一者。此處注意,儘管終止信號之單一路徑係使用單一線而描繪(出於簡單起見),但可提供終止信號的唯一例項至處理器核心25中之每一者。當終止信號經確證至給定處理器核心25時,該核心可在退出重置狀態或恢復至其之電力之後在執行第一指令之前終止操作。此可使得能夠輸入測試刺激,該輸入允許核心或在其上執行之軟體的操作以待執行之第一指令開始進行偵錯。終止信號的個別例項可回應於在偵錯暫存器26之特定者中的程式化而經確證,如下文將進一步詳細論述。
在所展示之實施例中之IC 10包括電力管理單元(PMU)29。PMU 29經耦接以接收供應電壓(「Vdd」),且可選擇性地使一或多個處理器核心25休眠。休眠中之處理器核心不執行指令。核心可為時脈閘控的,時脈源(例如,一或多個鎖相迴路(PLL))可關閉,或核心可甚至在休眠之各種實施及/或程度中關機。在正常(亦即,非偵錯操作)期間,PMU 29可使已閒置歷時特定量之時間的彼等處理器核心25休眠/關機。此外,PMU 29亦可喚醒休眠之處理器(恢復電力至關機處理器核心25以使得能夠使其重新啟動及/或重置處理器核心)。在一些實施例中,PMU 29可控制用於提供電力給處理器核心25之電壓位準,從而在效能需求較大時提供較高電壓且在效能需求較低時提供較低電壓。
在偵錯操作期間,可藉由確證重置信號及/或電源開啟核心以重新喚醒該核心來引起處理器核心25中之選定者或所有處理器核心25的重置。若偵錯暫存器26已藉由延緩終止而程式化,則偵錯埠20可在電力開啟/重置期間確證用於相應處理器核心的終止信號。
偵錯暫存器:
圖3係用於對IC進行偵錯之暫存器之區塊的一實施例之方塊圖。更特定而言,圖3說明偵錯暫存器26中之特定者。然而注意,此處未論述之額外暫存器亦可包括於偵錯暫存器26中。
在所展示之實施例中,偵錯暫存器26包括暖重置暫存器262。當經程式化時,暖重置暫存器262可引起IC 10或其部分之暖重置。如本文中所使用,術語「暖重置」係指一種重置,其中處理器核心25中之每一者、處理器核心25之子集(及可能其他電路)經重置,但偵錯域內之電路未經重置,舉例而言,在暖重置期間,偵錯埠20、偵錯暫存器26及此處未明顯論述之其他偵錯電路可保持在作用中,而處理器核心25及其他非偵錯電路經重置。注意,PMU 29之一些組件亦可在暖重置操作期間免於重置,此係因為此等組件可用以起始重置。在所展示之實施例中,暖重置可藉由少達一位元來指示。然而,具有較大數目之位元之暖重置暫存器262的實施例係可能的且經預期。舉例而言,每處理器核心25一位元可用以個別地重置核心。
終止暫存器264亦包括於偵錯暫存器26之此實施例中。在所展示之實施例中,終止暫存器264細分為數個不同部分,每一部分對應於處理器核心25中之特定者。每一子部分可包括一或多個位元。當特定子部分藉由外部偵錯器5程式化時,程式化可藉由偵錯埠20內之電路偵測。回應於暖重置之起始或PMU 29關機特定處理器核心25,偵錯埠20可確證相應終止信號(「Halt」)。特定而言,終止信號可不在程式化暫存器264時立即經確證,而在相應處理器核心25之重置期間或斷電之後經確證。終止信號可在特定處理器核心25之相應輸入端上經接收。回應於在退出重置狀態或以其他方式使電力恢復至特定處理器核心25時便偵測所確證終止信號,特定處理器核心25將在執行第一指令之前終止操作。此可使得偵錯器5能夠自已知狀態而非已藉由指令之執行更改的狀態開始對特定處理器核心25之測試或偵錯。
注意,終止暫存器264之部分中的每一者可獨立於彼此經程式化。因此,終止信號可選擇性地確證至一些處理器核心25而不確證至其他處理器核心25。此又可使得一些處理器核心25能夠在退出暖重置或使電力恢復至其時終止,而其他處理器核心25被允許執行指令(例如,按照引導程序或用於自休眠狀態回復)。一般而言,使處理器核心25中之選定者在退出重置或經供電時便終止的能力可在執行偵錯操作上提供一定程度的額外靈活性。此外,若需要,終止暫存器264之所有部分可在一些情況下經程式化以使所有處理器核心25在退出重置或以其他方式恢復至其之電力時便終止。
方法流程圖:
圖4係在恢復電力時用於終止IC之功能區塊之操作的方法之一實施例的流程圖。下文將參看上文所論述之硬體實施例論述方法400。然而注意,方法400可與本文中未論述之其他硬體實施例一起使用。
方法400以一或多個處理器核心25之關機(區塊405)開始。處理器核心25之關機可在偵錯操作之執行期間發生。當PMU 29關機處理器核心25時,其可提供指示至偵錯埠20(區塊410)。在一些狀況下,由偵錯埠20接收之指示可轉送至偵錯器5,偵錯器5可回應於該指示而採取行動,諸如程式化其他暫存器。在所展示之實施例中,終止暫存器264可針對關機之處理器核心25中之至少一者而經程式化(區塊415)。或者,終止暫存器264可在斷電之前經程式化,且偵錯埠20可延遲終止信號之確證直至斷電發生。終止暫存器264之程式化可藉由偵錯埠201偵測。回應於偵測到終止暫存器264之程式化及處理器核心25之斷電,偵錯埠20可確證且提供終止信號至對應於終止暫存器264之經程式化部分的(若干)處理器核心25(區塊420)。
在關機處理器核心25之後的某一時間點,PMU 29可重新施加電力至此(等)核心(區塊425)。當電力經重新施加時,接收各別終止信號之(若干)處理器核心25可在第一指令之執行之前終止操作(區塊430)。在執行任何指令之前終止處理器核心25可保留在電力最初經施加時存在的初始狀態。此又可允許偵錯器5自操作之開始控制或監視給定處理器核心25之狀態。此可以不同方式(諸如,當對啟動序列進行偵錯時)而為有用的。
在恢復電力至該(等)處理器核心25及終止確證各別終止信號所針對之處理器核心25的操作之後,可清除終止暫存器。
圖5係用於執行IC或特定處理器核心25之暖重置之方法的一實施例之流程圖。如同先前論述之方法400的實施例,本文中參看各種硬體實施例論述方法500,各種硬體實施例係參看圖1至圖3而經論述。然而注意,方法500可與本文中未明顯論述之其他硬體實施例一起使用。
方法500藉由偵錯器5程式化暖重置暫存器262及終止暫存器264之一或多個部分(區塊504及505)開始。如先前所論述,終止暫存器264可在程式化暖重置暫存器262之前的任一時刻經程式化。偵錯埠20亦可提供程式化暖重置暫存器之指示給PMU 29,藉此引起暖重置之執行(區塊510)。偵錯埠20可回應於暖重置而確證且提供終止信號至對應於終止暫存器264之(若干)經程式化部分的(若干)處理器核心25(區塊515)。在暖重置期間,可重置並非偵錯域之部分的組件。舉例而言,在圖1至圖2之IC 10中,處理器核心25中之每一者以及未明顯展示之其他組件(例如,輸入/輸出電路)可在暖重置期間經重置。然而,在暖重置期間,偵錯域之電路(包括偵錯埠20、暫存器26及此處未明顯展示或論述之偵錯域的任何其他電路)可免於重置。PMU 29亦可在暖重置期間免於重置。在一些實施例中,PMU 29可實際上起始暖重置。
重置狀態可在其起始之後保持歷時IC 10之時脈信號的特定數目個循環。在特定數目個時脈循環完成之後,可清除暖重置暫存器262(區塊520)。在一些實施例中,暖重置暫存器262之清除在一實施例中可藉由偵錯器5將「0」值寫入至暫存器而實現。在另一實施例中,暖重置暫存器262可包括自定時器,一旦預定數目個時脈循環已經過,自定時器便引起暫存器清除。
回應於清除暖重置暫存器262,經受重置之彼等組件可退出重置狀態(區塊525)。當退出重置狀態時,接收確證之終止信號的(若干)處理器核心25可在第一指令之執行之前終止操作(區塊530)。因此,確證終止信號所針對之處理器核心25可接收電力,但可保持與經開機而無指令經執行之狀態等效的狀態。
在退出重置狀態之後,可清除終止暫存器264(區塊535)。此後,偵錯操作可開始(區塊540)。
例示性系統:
接下來轉向圖6,展示系統150之一實施例的方塊圖。在所說明之實施例中,系統150包括耦接至一或多個周邊裝置154及一外部記憶體158的IC 10之至少一例項(來自圖1)。亦提供將供應電壓供應至IC 10以及將一或多個供應電壓供應至記憶體158及/或周邊裝置154的電源供應器156。在一些實施例中,可包括IC 10之一個以上例項(且亦可包括一個以上外部記憶體158)。
取決於系統150之類型,周邊裝置154可包括任何所要電路。舉例而言,在一實施例中,系統150可為行動器件(例如,個人數位助理(PDA)、智慧型手機等),且周邊裝置154可包括用於各種類型之無線通信(諸如,wifi、藍芽、蜂巢式、全球定位系統等)的器件。周邊裝置154亦可包括額外儲存器,包括RAM儲存器、固態儲存器或磁碟儲存器。周邊裝置154可包括使用者介面器件,諸如顯示螢幕(包括觸控顯示螢幕或多點觸控顯示螢幕)、鍵盤或其他輸入器件、麥克風、揚聲器等。在其他實施例中,系統150可為任何類型之計算系統(例如,桌上型個人電腦、膝上型電腦、工作站、迷你筆記型電腦(net top)等)。
外部記憶體158可包括任何類型之記憶體。舉例而言,外部記憶體158可為SRAM、動態RAM(DRAM)(諸如同步DRAM(SDRAM))、雙資料速率(DDR、DDR2、DDR3等)SDRAM、RAMBUS DRAM等。外部記憶體158可包括一或多個記憶體模組,記憶體器件(諸如,單列直插式記憶體模組(SIMM)、雙列直插式記憶體模組(DIMM)等)裝設至該一或多個記憶體模組。
對於熟習此項技術者而言,一旦已完全瞭解上述揭示內容,眾多變化及修改便將變得顯而易見。意欲將以下申請專利範圍解釋為涵蓋所有此等變化及修改。
雖然本發明容易有各種修改及替代形式,但其特定實施例在圖式中作為實例展示且將在本文中加以詳細描述。然而應理解,該等圖式及對其之詳細描述並不意欲將本發明限於所揭示的特定形式,而正相反,本發明意欲涵蓋屬於所附申請專利範圍所界定的本發明之精神及範疇內的所有修改、等效物及替代。本文中所使用之標題僅為達成組織性目的,且不意欲用以限制描述之範疇。如遍及本申請案所使用,詞「可」係在允許意義(亦即,意謂有可能)而非強制意義(亦即,意謂必須)上使用。類似地,詞「包括」意謂包括但不限於。
可將各種單元、電路或其他組件描述為「經組態以」執行一或多個任務。在此等情況下,「經組態以」係對結構之廣泛敍述,其大體上意謂「具有在操作期間執行該或該等任務之電路」。因而,單元/電路/組件可經組態以甚至在該單元/電路/組件當前未接通時執行該任務。一般而言,形成對應於「經組態以」之結構的電路可包括硬體電路。類似地,為便於描述,可將各種單元/電路/組件描述為執行一或多個任務。此等描述應解釋為包括片語「經組態以」。敍述經組態以執行一或多個任務之一單元/電路/組件明確地不意欲調用35 U.S.C. § 112第六段對於該單元/電路/組件之解釋。
5...偵錯器
10...積體電路
20...偵錯埠
22...偵錯匯流排
25...處理器核心
26...偵錯暫存器
29...電力管理單元
150...系統
154...周邊裝置
156...電源供應器
158...外部記憶體
262...暖重置暫存器
264...終止暫存器
Vdd...供應電壓
圖1係說明外部偵錯器至IC之一實施例之連接的方塊圖,該連接用於存取IC之內部組件。
圖2係IC之一實施例之方塊圖。
圖3係用於對IC進行偵錯之暫存器之區塊的一實施例之方塊圖。
圖4係在恢復電力時用於終止IC之功能區塊之操作的方法之一實施例的流程圖。
圖5係用於執行IC之暖重置之方法的一實施例之流程圖。
圖6係例示性系統之一實施例之方塊圖。
10...積體電路
20...偵錯埠
22...偵錯匯流排
25...處理器核心
26...偵錯暫存器
29...電力管理單元
Vdd...供應電壓

Claims (19)

  1. 一種積體電路,其包含:一或多個功能單元;一電力管理單元(PMU),其經組態以選擇性地自該一或多個功能單元中之每一者獨立於彼此地移除電力;一偵錯埠,其藉由一偵錯匯流排耦接該一或多個功能單元中之每一者;及複數個偵錯暫存器,其耦接至該偵錯匯流排,其中該複數個偵錯暫存器包括一終止暫存器,其中該偵錯埠經組態以傳達信號來藉由一第一值程式化該終止暫存器,且其中回應於藉由該第一值程式化的該終止暫存器,該第一功能單元經組態以在該PMU恢復至其之電力時終止操作,且其中該偵錯埠經組態以延遲該第一功能單元之該終止直至斷電事件發生。
  2. 如請求項1之積體電路,其中該偵錯埠可操作以用於耦接至一外部偵錯器,且其中該偵錯埠經組態以傳達自該外部偵錯器接收之信號以便程式化該終止暫存器。
  3. 如請求項1之積體電路,其中該偵錯埠進一步經組態以回應於該第一功能單元之一重置的一指示而傳達信號來藉由一第一值程式化該終止暫存器,其中該第一功能單元經組態以在退出一重置狀態時終止操作。
  4. 如請求項1之積體電路,其中該偵錯埠在該終止暫存器經程式化時經組態以使一第一信號在該斷電事件期間經確證至該第一功能單元。
  5. 如請求項4之積體電路,其中在電力之一恢復或自一重置狀態之一退出時,該第一功能單元經組態以在一第一指令之執行的一時間終止。
  6. 一種偵錯方法,其包含:一電力控制單元選擇性地在一偵錯操作期間獨立於自一積體電路(IC)之複數個功能單元中的其他功能單元移除電力地自該複數個功能單元中的一第一功能單元移除電力;程式化一第一暫存器至一第一值,其中該程式化係經由該偵錯埠執行;將電力恢復至該第一功能單元;及回應於在該第一暫存器經程式化至該第一值時將電力恢復至該第一功能單元而終止該第一功能單元之操作,其中在該程式化在電力之該移除之前發生的狀況下,該終止延遲直至該恢復。
  7. 如請求項6之偵錯方法,其進一步包含回應於接收到已自該複數個功能單元之一第二功能單元移除電力的一指示而程式化該第一暫存器至一第二值,且回應於將電力恢復至該第二功能單元及該第一暫存器經程式化至該第二值而終止該第二功能單元的操作。
  8. 如請求項6之偵錯方法,其進一步包含耦接至該IC之一外部偵錯器經由該偵錯埠傳達信號以程式化該第一暫存器。
  9. 如請求項6之偵錯方法,其進一步包含回應於藉由該第 一值程式化該第一暫存器,該第一暫存器使一第一信號經確證且提供至該第一功能單元,其中回應於接收到該第一信號,該第一功能單元經組態以在一第一指令之執行之前的該執行處終止操作。
  10. 如請求項6之偵錯方法,其進一步包含:執行該IC之該複數個功能單元中之每一者的一重置而不重置該偵錯埠;回應於執行該重置且回應於該第一暫存器之該程式化而確證且提供一終止信號至該複數個功能單元中之每一者;及回應於該等功能單元退出該重置而終止該複數個功能單元中之每一者的操作。
  11. 一種處理器,其包含:複數個執行核心;一偵錯單元,該偵錯單元包括經組態以用於耦接至一外部偵錯器的一存取埠;一匯流排,其耦接於該複數個執行核心中之每一者與該存取埠之間;複數個暫存器,其耦接至該匯流排,包括一第一暫存器及一第二暫存器,其中該第二暫存器包括劃分為一或多個位元之複數個子集的複數個位元位置,其中該等子集中之每一者對應於該等執行核心中之一唯一核心,及其中回應於該外部偵錯器程式化該第一暫存器及該第二暫存器,該處理器經組態以: 執行該處理器之該等執行核心中之每一者的一重置,其中該存取埠自該重置排除;及在退出該重置時終止該等執行核心中之至少一者的操作,其中在該重置之前該終止經程式化至該等暫存器中的狀況下,該終止延遲直至該退出。
  12. 如請求項11之處理器,其中回應於該偵錯器程式化一或多個位元之一特定子集,該偵錯單元經組態以確證一信號且提供一信號至該等執行核心中之一相應者。
  13. 如請求項12之處理器,其中該等執行核心中之該相應者經組態以在該信號經確證時退出該重置狀態時終止指令之執行。
  14. 如請求項11之處理器,其中該處理器經組態以回應於該第一暫存器之一清除而釋放該重置。
  15. 一種偵錯方法,其包含:一偵錯器經由一偵錯埠程式化一處理器之一第一暫存器;該偵錯器經由該偵錯埠程式化該處理器之一第二暫存器,其中該第二暫存器包括劃分為一或多個位元之複數個子集的複數個位元位置,其中該等子集中之每一者對應於複數個處理器核心中之一唯一核心;回應於程式化該第一暫存器,該處理器重置該複數個處理器核心中之每一者,其中自該重置排除該偵錯埠;退出該重置;回應於退出該重置及該第二暫存器之該程式化,終止 該等處理器核心中之至少一第一處理器核心的操作。
  16. 如請求項15之偵錯方法,其進一步包含回應於程式化該第二暫存器而確證一第一信號至該等處理器核心中之該至少一者,該第一信號使該等處理器核心中之該第一處理器核心在退出該重置時在執行指令之前終止操作。
  17. 如請求項15之偵錯方法,其進一步包含回應於清除該第一暫存器而退出該重置。
  18. 如請求項15之偵錯方法,其進一步包含當該等處理器核心經重置時排除該偵錯埠使該偵錯埠不被重置。
  19. 如請求項15之偵錯方法,其中該程式化該第二暫存器包含針對該複數個處理器核心中之每一者設定該第二暫存器中之位元位置,且在該第二暫存器之該等位元位置中之每一者經設定時使該複數個處理器核心中之每一者在退出該重置時終止操作。
TW100145658A 2010-12-09 2011-12-09 重置或關機後用於終止處理器核心之偵錯暫存器 TWI450078B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US12/963,975 US8402314B2 (en) 2010-12-09 2010-12-09 Debug registers for halting processor cores after reset or power off

Publications (2)

Publication Number Publication Date
TW201237606A TW201237606A (en) 2012-09-16
TWI450078B true TWI450078B (zh) 2014-08-21

Family

ID=45440124

Family Applications (1)

Application Number Title Priority Date Filing Date
TW100145658A TWI450078B (zh) 2010-12-09 2011-12-09 重置或關機後用於終止處理器核心之偵錯暫存器

Country Status (5)

Country Link
US (2) US8402314B2 (zh)
EP (1) EP2463780A1 (zh)
KR (1) KR101394850B1 (zh)
TW (1) TWI450078B (zh)
WO (1) WO2012082437A1 (zh)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10817043B2 (en) * 2011-07-26 2020-10-27 Nvidia Corporation System and method for entering and exiting sleep mode in a graphics subsystem
WO2013061369A1 (en) * 2011-10-26 2013-05-02 Hitachi, Ltd. Information system and control method of the same
US8799715B2 (en) * 2012-06-26 2014-08-05 Apple Inc. System on a chip (SOC) debug controllability
US9927486B2 (en) 2012-07-09 2018-03-27 Ultrasoc Technologies Ltd. Debug architecture
GB2500074B (en) 2012-07-09 2014-08-20 Ultrasoc Technologies Ltd Debug architecture
GB2503882B (en) * 2012-07-09 2014-07-02 Ultrasoc Technologies Ltd Debug architecture
US9423843B2 (en) * 2012-09-21 2016-08-23 Atmel Corporation Processor maintaining reset-state after reset signal is suspended
KR20150019457A (ko) * 2013-08-14 2015-02-25 삼성전자주식회사 시스템 온 칩, 이의 동작 방법, 및 이를 포함하는 시스템
US9329963B2 (en) * 2013-09-16 2016-05-03 Advanced Micro Devices, Inc. Debug apparatus and methods for dynamically switching power domains
US9262293B2 (en) * 2013-09-16 2016-02-16 Advanced Micro Devices, Inc. Debug apparatus and methods for dynamically switching power domains
KR102210770B1 (ko) 2014-09-02 2021-02-02 삼성전자주식회사 반도체 장치, 반도체 시스템 및 그 제어 방법
US9606175B2 (en) * 2014-12-26 2017-03-28 Intel Corporation Reprogramming a port controller via its own external port
US20160349326A1 (en) * 2015-05-26 2016-12-01 Analog Devices Global Debug trigger interface for non-debug domain system reset
US10254337B2 (en) * 2015-10-27 2019-04-09 Marvell World Trade Ltd. System and method for establishing a trusted diagnosis/debugging agent over a closed commodity device
KR102415388B1 (ko) * 2015-11-13 2022-07-01 삼성전자주식회사 시스템 온 칩 및 그것의 보안 디버깅 방법
CN105388982B (zh) * 2015-11-16 2019-01-08 中国电子科技集团公司第十研究所 多处理器上电复位电路
US10025741B2 (en) 2016-01-13 2018-07-17 Samsung Electronics Co., Ltd. System-on-chip, mobile terminal, and method for operating the system-on-chip
US10527673B2 (en) 2016-08-01 2020-01-07 Microsoft Technology Licensing, Llc Hardware debug host
TWI657447B (zh) * 2017-04-28 2019-04-21 Silicon Motion, Inc. 記憶裝置、存取系統及存取方法
TWI704560B (zh) * 2017-04-28 2020-09-11 慧榮科技股份有限公司 記憶裝置、存取系統及存取方法
US11023342B2 (en) * 2018-11-30 2021-06-01 Western Digital Technologies, Inc. Cache diagnostic techniques
US11847006B2 (en) * 2020-01-02 2023-12-19 Texas Instruments Incorporated Integrated circuit with debugger and arbitration interface
CN111966195B (zh) * 2020-07-28 2022-09-09 武汉光迅科技股份有限公司 一种启动控制电路及方法
US20220300403A1 (en) * 2021-03-16 2022-09-22 Ford Global Technologies, Llc Isolated software testing in production vehicles
CN115167651B (zh) * 2022-09-05 2022-11-25 北京紫光芯能科技有限公司 一种多核soc复位的负载均衡电路及系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200636447A (en) * 2005-04-13 2006-10-16 Via Tech Inc System-on-a-chip and test/debug method thereof
US20100223519A1 (en) * 2005-03-21 2010-09-02 Texas Instruments Incorporated Compact jtag adapter
TWI424177B (zh) * 2009-05-01 2014-01-21 Nihon Micronics Kk Test device for flat plate-like specimen

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0869434A3 (en) 1997-03-31 1999-09-15 Hewlett-Packard Company Method for outputting trace information of a microprocessor
US5970241A (en) 1997-11-19 1999-10-19 Texas Instruments Incorporated Maintaining synchronism between a processor pipeline and subsystem pipelines during debugging of a data processing system
US6311292B1 (en) 1998-07-30 2001-10-30 Sandcraft, Inc. Circuit, architecture and method for analyzing the operation of a digital processing system
US6370660B1 (en) 1999-04-21 2002-04-09 Advanced Micro Devices, Inc. Apparatus and method for providing a wait for status change capability for a host computer system
US20020133794A1 (en) 2001-02-24 2002-09-19 Ruban Kanapathippillai Method and apparatus for integrated circuit debugging
JP4321976B2 (ja) 2001-05-31 2009-08-26 富士通マイクロエレクトロニクス株式会社 デバッグ支援機能付きマイコン
DE10229129C1 (de) 2002-06-28 2003-12-11 Advanced Micro Devices Inc Debug-Schnittstelle für einen Ereigniszeitgeber
US7219265B2 (en) 2003-12-29 2007-05-15 Agere Systems Inc. System and method for debugging system-on-chips
US9038070B2 (en) 2004-09-14 2015-05-19 Synopsys, Inc. Debug in a multicore architecture
US7809987B2 (en) * 2004-12-02 2010-10-05 Texas Instruments Incorporated Accepting link ID upon supplied and sampled bits matching
US20070214389A1 (en) * 2006-03-08 2007-09-13 Severson Matthew L JTAG power collapse debug
US7761687B2 (en) 2007-06-26 2010-07-20 International Business Machines Corporation Ultrascalable petaflop parallel supercomputer
US7823019B2 (en) 2008-05-08 2010-10-26 Arm Limited Debug circuitry
US8555123B2 (en) * 2008-07-23 2013-10-08 Industrial Technology Research Institute Test device and method for the SoC test architecture
US8661302B2 (en) * 2010-11-17 2014-02-25 Advanced Micro Devices, Inc. Enhanced debug/test capability to a core reset process

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100223519A1 (en) * 2005-03-21 2010-09-02 Texas Instruments Incorporated Compact jtag adapter
TW200636447A (en) * 2005-04-13 2006-10-16 Via Tech Inc System-on-a-chip and test/debug method thereof
TWI424177B (zh) * 2009-05-01 2014-01-21 Nihon Micronics Kk Test device for flat plate-like specimen

Also Published As

Publication number Publication date
US20130159775A1 (en) 2013-06-20
EP2463780A1 (en) 2012-06-13
WO2012082437A1 (en) 2012-06-21
US8694830B2 (en) 2014-04-08
KR101394850B1 (ko) 2014-05-13
TW201237606A (en) 2012-09-16
US20120151264A1 (en) 2012-06-14
KR20120064642A (ko) 2012-06-19
US8402314B2 (en) 2013-03-19

Similar Documents

Publication Publication Date Title
TWI450078B (zh) 重置或關機後用於終止處理器核心之偵錯暫存器
US9037812B2 (en) Method, apparatus and system for memory validation
CN104412224B (zh) 在从低电力状态恢复时处理系统从易失性存储器的重新初始化
TWI474178B (zh) 動態資料選通偵測
US10248183B2 (en) System and method for power management
US9098305B2 (en) Computer system and bootup and shutdown method thereof
JP6021241B2 (ja) 周辺装置の設定情報のエラー検出を有するデータ処理システム
JP2009277223A (ja) コンピュータ・システム、コンピュータ・システムを初期化するための方法及びコンピュータ・プログラム
US8250250B2 (en) Using central direct memory access (CDMA) controller to test integrated circuit
TWI635382B (zh) 記憶體超頻方法及電腦裝置
TW200723107A (en) Power-on error detection system and method
US8799715B2 (en) System on a chip (SOC) debug controllability
US20130103887A1 (en) Computing system with non-disruptive fast memory restore mechanism and method of operation thereof
US20190004818A1 (en) Method of UEFI Shell for Supporting Power Saving Mode and Computer System thereof
TWI534707B (zh) 電腦系統及其開關機方法
US11294442B2 (en) Delay of power off to write data from volatile to non-volatile memory of a solid state drive
US20030112687A1 (en) System and method for providing asynchronous SRAM functionality with a DRAM array
US9183125B2 (en) DDR receiver enable cycle training
US8949756B2 (en) Debug access with programmable return clock
US20140223245A1 (en) Volatile memory device and methods of operating and testing volatile memory device
JP2005149503A (ja) Dmaを使用してメモリをテストするためのシステムおよび方法
CN108268392B (zh) 记忆体超频方法及电脑装置
US20160216756A1 (en) Power management in computing devices
JP2007213415A (ja) メモリ装置
TW200830095A (en) Method and apparatus for recording the power-on sequence