TWI290630B - On-board diagnostic circuit for an integrated circuit, and method for performing real time diagnostic operations upon integrated circuit - Google Patents
On-board diagnostic circuit for an integrated circuit, and method for performing real time diagnostic operations upon integrated circuit Download PDFInfo
- Publication number
- TWI290630B TWI290630B TW092130868A TW92130868A TWI290630B TW I290630 B TWI290630 B TW I290630B TW 092130868 A TW092130868 A TW 092130868A TW 92130868 A TW92130868 A TW 92130868A TW I290630 B TWI290630 B TW I290630B
- Authority
- TW
- Taiwan
- Prior art keywords
- bus
- diagnostic
- circuit
- functional
- integrated circuit
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 38
- 238000013461 design Methods 0.000 claims description 28
- 238000004891 communication Methods 0.000 claims description 27
- LHMQDVIHBXWNII-UHFFFAOYSA-N 3-amino-4-methoxy-n-phenylbenzamide Chemical compound C1=C(N)C(OC)=CC=C1C(=O)NC1=CC=CC=C1 LHMQDVIHBXWNII-UHFFFAOYSA-N 0.000 claims description 19
- 238000012360 testing method Methods 0.000 claims description 13
- 238000004519 manufacturing process Methods 0.000 claims description 9
- 238000003745 diagnosis Methods 0.000 claims description 5
- 238000012545 processing Methods 0.000 claims description 5
- 238000010168 coupling process Methods 0.000 claims 2
- 238000005859 coupling reaction Methods 0.000 claims 2
- 230000004888 barrier function Effects 0.000 claims 1
- 230000000903 blocking effect Effects 0.000 claims 1
- 230000007547 defect Effects 0.000 claims 1
- 230000008859 change Effects 0.000 description 10
- 230000007246 mechanism Effects 0.000 description 10
- 230000009471 action Effects 0.000 description 7
- 238000013507 mapping Methods 0.000 description 7
- 230000004044 response Effects 0.000 description 7
- 230000002457 bidirectional effect Effects 0.000 description 6
- 238000006243 chemical reaction Methods 0.000 description 5
- 239000003795 chemical substances by application Substances 0.000 description 5
- 238000012790 confirmation Methods 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000005540 biological transmission Effects 0.000 description 4
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 238000007689 inspection Methods 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- XKRFYHLGVUSROY-UHFFFAOYSA-N Argon Chemical compound [Ar] XKRFYHLGVUSROY-UHFFFAOYSA-N 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 238000013475 authorization Methods 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000003780 insertion Methods 0.000 description 2
- 230000037431 insertion Effects 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 238000012795 verification Methods 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000009825 accumulation Methods 0.000 description 1
- 238000013459 approach Methods 0.000 description 1
- 150000001485 argon Chemical class 0.000 description 1
- 229910052786 argon Inorganic materials 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 238000002405 diagnostic procedure Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 235000013399 edible fruits Nutrition 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 235000011389 fruit/vegetable juice Nutrition 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000001343 mnemonic effect Effects 0.000 description 1
- 238000012805 post-processing Methods 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/267—Reconfiguring circuits for testing, e.g. LSSD, partitioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/26—Functional testing
- G06F11/273—Tester hardware, i.e. output processing circuits
- G06F11/2733—Test interface between tester and unit under test
-
- 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/40—Bus structure
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Tests Of Electronic Circuits (AREA)
- Debugging And Monitoring (AREA)
- Semiconductor Integrated Circuits (AREA)
Description
1290630 九、發明說明: 【發明所屬之技術領域】 本發明與積體電路的領域相關。尤其I,本發明與積 體電路之機載診斷電路相關。 【先前技術】 為積體電路提供機載診斷電路,是眾所周知。此類習 知的電路之一示例是由一 JTAG類型的控制器所控制的序 列掃描鏈,其為 ARM limited of CambHdge,England 用於 一些微處理器中的設計。習知的掃描鏈類型之一問題是資 料的序列掃描入和掃描出並不足夠快速,無法允許即時和/ 或有效的診斷操作。尤其是,它可能需使一積體電路降至 它的正常操作速度之下,或使它停止,才可以將該序列診 斷資料自該序列掃描鏈掃描入和掃描出。以低於正常的操 作速度操作一積體電路會導致所執行的診斷操作並非真的 能表示該積體電路的實際功能性操作。它可能是某種錯 誤,只在全速操作時顯現,並只在較低的速度中看得見,曰 其中電路必須操作調整診斷序列掃描鏈的使用。尤有甚 者,在與處理器的通訊中使用JTAG來除錯時,會產生至 少一個二步驟之存取系統資源的方法。 【發明内容】 依據本發明之一個態樣提供一積體電路,包含·· 多種功能性電路,可操作以執行資料處理操作; 5
1290630 至少一個功能性®流排’可操作以提供在言 能性電路間的通訊;和 一診斷匯流排主控器電路’可操作以執行 作,在該多個之功能性電路之即時操作期間,矛 功能性電路之至少一個,藉由發出一匯流排交接 由該至少一個功能性匯流排至該多種功能性電禅 個。 本發明提供與積體電路的功能性匯流排連接 匯流排主控器電路。能夠用該診斷匯流排主控器 出匯流排交換至功能性匯流排,以完成診斷操作 流排交換可以用於以一些資料刺激一功能性電路 能性電路截取資料或上述動作與其他動作的結合 在功能性電路之間利用既已提供的一匯流排架構 斷信號刺激來源和截取提供一插入點,其可以即 而無需一序列掃描鍵周遭的時脈資料,以截入值 路的門閂電路裡。然而思及利用該功能性電路之 可能會限制它的功能,實際上,希望在現代系統 (System-on-Chip)類型積體電路中執行之診斷測 一大部分,涉及在各種功能性電路之間,藉由標 (例如,AMBA或AHB匯流排)檢查適當的通訊。 不同的功能性電路已被分別測試並確認為獨立的 在新的積體電路的設計中,最重要的是那些項目 連結和他們藉由功能性匯流排之適當通訊。本技 於提供迅速、相對非侵入和較少的額外負擔的此 έ多個之功 一診斷操 ί用該多種 卜請求,經 k之一或多 的一診斷 電路來發 。該些匯 、從一功 。該技術 ,以替診 時操作, 到遍及電 診斷存取 整合晶片 試類型的 準匯流排 它經常是 項目,而 彼此間的 術非常適 類診斷類 6 Ϊ290630 型操作。 該診斷匯流排主控器電路能夠以除錯或製造測試形 操作來執行診斷操作。還有,也能夠用該診斷匯流排主 器電路來執fr製造設計、製造設定,攔位設計和搁值設 類型操作。如此允許該診斷匯流排主控器電路能夠在該 診斷電路之外重複使用’因此有分攤它相關的額外負擔 、在本發明之較佳的實施例中,可以配置該診斷匯流 • 主控器電路,以在它執行診斷操作之前,對自己執行一 證操作。其中該診斷特徵可能被用於存取安全資料,例 安全加密金鑰等等,所以該特徵對安全系統非常有利。 由確保診斷匯流排主控器電路在使用之前必須先對自己 證’能夠限制對該機制的不當使用。尤其是,該認證所 用的形式可以是請求該診斷匯流排主控器電路發出符合 疋標準的認證請求’例如包括一安全金餘(由一^外部來源 供),其為在診斷匯流排主控器電路能夠存取功能性電路 件之前所必須。 ^ 除提供對功能性匯流排的存取以外,本發明之較佳 實施例,包括一專屬診斷匯流排,使診斷匯流排主控器 路可藉以存取通常不能藉由功能性匯流排來存取的資料 〜因此,能夠配置該專屬診斷匯流排在功能性電路之中存 狀態,通常不能藉由該功能性匯流排存取,如同在正常 作期間通常不會要求在功能性電路之間傳送。當與在上 的認證技術結合時,該特徵特別有用,可據以將該專屬 斷匯流排的存取限制為需認證的操作。尤有甚者,對此 式 控 定 純 Ο 排 認 如 藉 認 採 預 提 元 的 電 〇 取 操 述 診 類 7 1290630 匯流排的隔離可避免對該些 意外的使用。 附加資料值/登 錄器的惡意和 ,1夕個功能性 排可以有不同的匯流排通訊協 .^ ^ ^ ^ ^ 在較佳的實施例中,藉 由為該移斷匯流排主控器電 藉 ^ ^ 夕個匯流排界面電敗, 其負貝與使用其特定匯流排 ^ ^ 協疋之功能性匯流排通 訊。一選取機制允許選擇所存取的匯流排。 ι
該診斷匯流排主控器電路盥一 认s Λ ”外部診斷裝置使用外部 信號通訊協定進行通訊,例如,有 另週田界面卡的電腦。為 有利於此類通訊,肖診斷匯流排主控器電路包括一外部界 面電路,㈣在需要時提供在通訊協定之間的調整和通哎 聯結。 β 在本發明之較佳實施财,亦、可以一種將外部診斷環 境自該積體電路時脈環境有效地解除連結的方法,操作該 診斷匯流排主控器電路,以在時脈範圍之間傳送信號。 該診斷匯流排主控器電路特別適合操控在與功能性匯 流排連接的裝置之中所儲存的資料值,例如,在記憶體、 周邊裝置或其他的裝置之中所儲存的資料值。利用該診斷 匯流排主控器電路,能夠裝載、儲存、拷貝和確認該些資 料值。 此類類型用途之一特別有用的示例是當積體電路包括 與匯流排連接的一快閃記憶體和診斷匯流排主控器電路被 用於使用快閃記憶體設計通訊協定設計該快閃記憶體的程 式。對此類快閃記憶體的程式設計通常是一執行時間操作 8 教不太可能古祕玄 的功能性電路。 有效地使用該積體電路之—般用途 藉由詳細描述下令 施例,可生 节所讀入之相關於附圖的示例性實 J滑楚了组士 優點。 發明之上述内容和其他物件、特徵和 【實施方式】 圖說明連接一外部診 部診斷麥 /研展罝4的一積體電路2。該外 序列界面^該積體電路2之間的連結係藉由-雙向的 —界面電^如JTAG或SWI°在該積體電路2之中, 譯的資粗 接收該(多個)雙向的信號。將從序列信號解 8,其俺?從序列信號解譯的控制信號傳給-診斷電路 二:上述控制信號和資料,在該積體電路2的另一些 午上執行診斷操作。嗲 m , ^ μ貝枓和控制的信號也可以藉由該 雙向序列信號,自積體雷 體電路2傳回外部診斷裝置4。典型 •電路2將是-系統整合晶片(S〇C)積體電路。 10 :二積趙電路2之中的1力能性電路包括—處理器核心 1:辅助處理器12、—記憶體14和一序列uart裝置16。 連接了該些功能性電路(例如, AMBA、AHB或用以連接功 刀月b往冤路者之其他匯流排)。圖 示之該診斷電路8係在積體 冤路2之中的一區塊。應了解, 該診斷電路能夠採用多種 Π的I式和舉例而言在需要時 可以包括在積體電路2、在某此功萨 早二力月匕性元件的周邊延伸的 或在某些功能性元件之中的库播 Y的序列知插鏈。診斷電路系統8 9 1290630 也可以有例如BIST裝置、等等之其他形式。 κ用方面,一使用該外部診斷裝置的工程師將指揮 欲在積發電路2上執行的某些診斷操作,以回應沿著雙向 序列界面和藉由界面電路6傳遞至該積體電路2的控制信 號;和資料。所獲取的資料將沿著該雙向界面經由該界面電 路6傳遞至外部診斷裝置4。
第2圖圖示一積體電路52(例如,一 SoC積體電 路)’其與多種功能性電路共同作用,包括一處理器核心 54、輔助處理器%、一快閃記憶體58、一輸入/輸出電路 60和一記憶體62。該處理器核心54、該快閃記憶體58、 該輸入/輸出電路6〇和該記憶體62係藉由一普通功能性匯 流排64連接,其可以是,例如,一 arm AMBA AHB匯流 排或其他的系統匯流排。該普通功能性匯流排64具有一相 關聯的匯流排通訊協定和用於一般主控器/受控器類型的 配置’以在該些功能性電路之間傳遞資料和控制交換。 提 交換的 用至功 排主控 性匯流 專屬診 私有匯 該辅助 能夠提 限,ua "IL 工炫命 %蹲 〇 〇, 研孫作。該些匯流排交換可以將資料或控制值應 能性電路或從功能性電路復原資料。將該診斷匯流 器電路66藉由一選擇性的認證電路68連接至功能 64。將該診斷匯流排主控器電路66也連接至b S流排70(例如,一私古ΛΜβΔ成^认山·. 診斷操 排 « 研土径窃电峪66也連接至一 斷匯流排70(例如,一办女Αλ/ΓΏ Λ — 私有ΑΜΒΑ匯流排或特邀 流排),其提供對,在 製的 隹本例中,該處理器核心 處理器56之專屬冷邮+ 和 . 9斷存取。該專屬診斷匯流 供資料的存取,通7〇 常久有與功能性匯流排64連接, 10 純粹供診斷目的 1290630 並出現在專屬的診斷 %匯淹拖, 提供一界面電路〇, 排主控器電路66至〜外T〜診斷電路74以連接診斷g 電路72支援由外部%部診斷裝置(未見於圖示)。該 5乡斷裝铤 τ 如,如上所述之雙向序 置所使用之外部通訊協定, 66負責支援個別的匯产:通訊。該診斷匯流排主控器, 淼山ΛΑ —认" 机的匯流排信號通訊協定,复社 發出的交換係基於診斷目的。 励疋其寸 “已經通過一認證步驟& 鄉時,選擇性認證電路68所私 的功能只允許該診斷匯流排 广 之控器電路66存取功能怕 流排或匯流排64的部分功能。可以由符合一預定的安全 输之-適當金鑰供應自珍斷匯流排主控器至該認證電 68之認證步驟。因此,〇姑 八擁有安全金鑰的適當被授權人 夠以經由認證電路68存取該功能性匯流# 64的方法, 動該診斷匯流排主控器電路66。因此,能夠在該些功能 電路之t保護安全資料或其他的敏感資料。能夠使用該 «Β·來控制一些匯流排的存取例如存取需要權限的受 器,或其他可自由獲存取的匯流排。 應了解,積體電路52和外部診斷裝置可以在不同的 脈範圍中操作。該界面電路72有效地提供在該兩個時脈 圍之間橋接的工具。 該診斷匯流排主控器電路66可用於發出用以裝載 料值至一裝置(例如,一記憶體、周邊或其他的裝置)的 流排交換將資料值自上述裝置存回,在上述裝置中拷貝 料值或確認儲存上上述裝置中的資料。 ‘面 例 路 欲 應 匯 金 路 能 啟 性 認 控 時 範 資 匯 資 11 1290630 該診斷匯流排主控器電路66也可用以依據一快閃記 憶體設計通訊協定設計該快閃δ己憶體5 8的程式。上述為診 斷匯流排主控器電路66的非診斷用途,其分攤與其所供應 者相關的額外負擔’因為需要一些機制以供在積體電路52 之中設計快閃記憶體5 8的程式。 術語和縮窵 一較佳實施例之示列之詳細述述如下: 術語 解釋 JTAG IEEE Joint Access Group,用於 4-6 線 的介面’以將一序列介面連接至掃描 鍵。JTAG係用於除錯及測試。SWJ係 以JTAG除錯模組為基礎。ScanTAp係 以JTAG的測試部分為基礎。 模擬器 此為誤稱,意指附加至晶片供除錯之執 (Emulator) 行控制盒(HW的部分)。一般的模擬器 係以JTAG為基礎的。因為歷史因素, 連接至 swj介面的一個盒子亦可稱 為模擬器 AMBA 曰日片内之ARM匯流排標準。 AHB A高速界面,供存取一般記憶體之 用(相對於APB) APB AMBA低速界面,供低速存取之用 12 1290630 AHB Lite 參照一 AMBA的精簡版本,沒有多主控 器也沒有完全突發傳輸模式和它的相 關信號之AHB 。 多主控器 一種 AMBA 共享架構(不是在 (Multi-Master) AMBA-Lite)其中不同的主控器可以獲 得一匯流排鎖(授權)以一種插入方式存 取該匯流排。 多區塊 一種AMBA架構,用以將一匯流排分成 (Multi-Segment), 數個區塊,其在存取上受到控制。如此 多層 允許區域主控器以減少鎖定額外負擔。 (Multi-Layered) 判優存取控制器 一種用以取代多主控器之匯流排模 (Arbiter), 式。一判優存取控制器自競爭的主控器 Arbitration 中選擇以暢化對一匯流排的存取。更常 使用於M C U s和非對稱多處理器核心佈 局中。當設定得當,它可以提供比一匯 流排授權模式更佳的表現。 快閃記憶體 一種型態之唯讀記憶體,其可以以一種 (Flash) 特殊的程式方法寫入。如此允許MCUs 有程式碼和文字燒入該裝置的結果構 造物。對低階MCUs而言,可在生產中 達成,而非藉由應用達成(亦即可以藉由 一外部工具在更新/維護期間達成) 嵌入式快閃記憶如同處理器一般而不同於外部晶片,快 13
1290630 體 閃格(cell)在相同的晶片上。特別要 (Embedded Flash) 的是,快閃裝置具有一嵌入式控 (MCU),其使晶粒大小之嵌入式快 憶體成本昂貴。 介紹 DBT(Debug Bus Tap)是一種較小的 JTAG TAP,其 一 AMBA匯流排。DBT可以使用TJAG、SWJ、直接 或其他的工具自一主機存取,並可以在除了 AMBA匯 以外的匯流排操作。因系統設計之不同而異,匯流排 可以是一多匯流排主控器設計的一匯流排主控器區塊 如果由判優存取控制器所管理,則可以是一 AMBA 區塊。 不論是否ARM核心正執行中、停下除錯、或保 設,記憶體TAP允許對記憶體系統的存取。如此允許 TAP更廣泛使用於多目的的系統: 在核心起動前,起動並測試系統。其在所有快閃系 尤為重要,但也對晶片層級測試深具意義。 能以比使用處理器JTAG模組所可能的速度更快 和讀取記憶體。 在一執行中的系統讀取/寫入存取至記憶體和周 置,而無需停止核心。如此會造成侵入,但是,它 定且小的(因為對記憶體的存取不是固定的,但會 JTAG TCK時間的限制)。 說明 制器 閃記 連接 埠、 流排 連結 ,或 Lite 持重 將該 統中 載入 邊裝 是固 受到 14 1290630 戒夠存取記憶體,而不論核心時脈速度的變化為何(低 速休眠)。 _當出現在匯流排時,能夠用以設計快閃記憶體的程式 (然而’如果不是AMBA受控器,無法存取一些fpga 啟動快閃記憶體)。 設定/控制非核心之部分的任何除錯登錄器。如此避免 需要多個TAP支援不同的除錯區塊。應注意的是,能 夠由核心輸出除錯登錄器,以避免内部機構的需要·如 此允許在執行時存取並且允許較簡潔的設計。 記憶體TAP高度最佳化以允許快速的存取,不論是排 序的(例如下载)和非排序的。它亦為一單一位置的重複檢 查最佳化,並能夠在檢查支援時間量測(從確定該匯流排動 作開始)的一模擬器時提供精確的時間戳記。藉由在匯流排 封套(Wrapper)中嵌入小部分的快閃程式也有利於快速的 快閃記憶體載入。 途·^系統匯流排TAP元# s己憶體TAP的目的在於滿足7個基本問題: L允許極快速的記憶體載入(和上载)。在1〇兆赫的速度 中,3Mbytes/second的載入速度對較快的模擬器而言是 合理的,對較慢速者則為600Kbytes/second。 2·在ARM核心停止(在除錯中)、執行、休眠、保持重設、 或任何其他狀態時,允許存取記憶體。意指該元件允許 15
1290630 更多的系統檢視。 3·在讀取和寫入匯流排時,允許較簡潔的錯誤控制。 構能夠簡潔地控制異常結束的狀況而不會造成改 理器狀態的結果。當藉由處理器核心達成記憶體的 時,它的狀態將受所動作衝擊,但由錯誤對它的狀 造成的衝擊會更多。在一匯流排發生錯誤之後,除 所設定般發出信號外’ DBT不改變它的狀態。 4·允許直接設計快閃記憶體的程式(不使用核心)。它 允許以它的最大速度設計快閃記憶體的程式(由快 憶體自己調配速度),而且當處理器仍然在重設中 亦允許計設快閃記憶體的程式(所以可以用於程式 重要的啟動碼)。如果F P G A位元啟動快閃記憶體 他使用快閃記憶體的裝置出現在匯流排上時,亦可 設計該些元件的程式。甚至於在沒有可選擇的快閃 體的支援下,能夠將DBT用於直接的快閃記憶體 設計,只要模擬器能夠在存取之間產生可預測的時 遲(對於快閃記憶體裝置而言,其為逾時),或以具 送確認之每一文字批次方式寫入。 5.可用於存取只為除錯而留下的一區域區塊。亦即, 可為了除錯用途而符合一專屬匯流排(並亦可為全 途而符合系統匯流排)。為了除錯元件和一般元件 亦可用於輪出ASIC專屬的除錯登錄,所以,一 匯流排周邊能在該區塊上輸出一些登錄,以利於除 6·可用作與目標SW(例如,監視器和RT〇S代理)之 該機 變處 存取 態所 了如 不僅 閃記 時, 非常 或其 用於 記憶 程式 間延 有發 DBT 域用 ,它 CAN 錯)。 —通 16 1290630 訊路徑。不同於第5點,其亦可在主要匯流排上執行 它。所以,一 RTOS除錯代理亦可將它用於存取(甚至 用在執行於一 DSP之RT〇Ses,舉例而言)。不门於 DCC(ARM除錯通訊通道登錄器(ARM 叫
Communication Channel Register)),其允許緩衝。具有 一中斷驅動和一些符合記憶體位置者,該主機與目標 SW使用一簡單信號交換(handshake)互相通訊。訊束大 小可以如所需般一樣長,而將不阻住目標sw(例如,在 CP 14在等待)因為它僅寫入RAM而後繼續其他活動。 7·可用於高速度卸載追蹤資料。映射(map)至ahb之晶片 上的追蹤緩衝可以使用該方法,以很高的速度卸載。進 一步,擁有一個可消耗亦可裝載的一追蹤緩衝器,吾人 可持續收集(在一些頻寬限制之下,例如 3-4Mbytes/second) 〇
""""^^ ^ ^ (Attention;>ru ^ ^ (ACK 可想像當處理器執行時,DBT將有助於直接存取記憶 體(無需監視器)i^ T # je J- v ,, J進仃下載和存取。亦忐在執行時與目標方 面的-代理進行通訊。代理通訊之運作係藉由寫入一封包 至RAM’以〉主意位元(Attention bit)發信號表示它已完成, 然後等待欲宣告之確認(ACK)信號/位元。然後,其可將它 讀回i模、、且的優點是你只為每一封包中斷付出代價(和甚 至於你可以檢查,但對每一封包而言,緩衝是無需代價 的)封匕的大小是不固定的,但是由代理或監視器的通訊 17
1290630 協定和選擇決定。 將該「注意(Attention)」信號連接至核心(作為中斷) 上的選擇和自該核心連接回來之「確認(ACK)」信號選擇 (作為GPIO)係由系統設計所決定。它將很可能大量用於某 些類別的處理器和應用用途。 賴以通訊的主要代理是用於直接除錯的一監視器和 RT0S除錯(執行系統除錯(rsd)模式)的一執行緒。 快閃記憶艚#接 提供選擇性的快閃記憶體支援,以允許快速設計系統 中嵌入的快閃記憶體的程式。藉由增加經過遮罩的R〇M 常數,以供預寫入位址/資料和可能之後寫入的位址/資料 之用,使該機制得以運作。當需要時(然而,通常較佳的作 法是寫入該整個區塊,然後回去並檢驗,這樣比較快速並 安全),其亦可提供作業中的檢驗。對於發送的確認,檢驗 步驟很快速。 快閃記憶、體模組亦允許自一外部機制(例如為一引擎 控制更新設計常數的汽修廠機械工人)依照領域再次設計 快閃記憶體。它有助於在從不改變快閃記憶體本身的應用。 在DBT具有快閃記憶體的支援的一般原因是因為不 論大小與否,它允許極快速的Flash程式設計。如此加快 了除錯的速度。請注意,對於許多Flash裝置而言,在預 寫入和資料寫入之間的時間一定在一特定期間之内,否則 它將逾時。這意味著不可能藉由一 JTAG模擬器直接進行 18
1290630 程式設計。藉由DBT Flash的支援,它就不成問題。
fe取問題和TCM DBT只能查看匯流排。儘管它提供一次要區塊模組, 但它不能查看一 L 1快取。如果將DBT置於其前(一系統設 計選擇亦然),它只能看見L2快取。緊密耦合記憶體(TCM) 亦出現問題。 對一 L1快取而言,只在某些狀況下發生問題: 當下載編碼時,"I"快取必須清除/失效,以重新載入新 資料。對下載而言,其通常不是問題(因為核心已經停 止而模擬器/執行將控制快取的清除)。 當下載資料時,"〇”快取必須先清除(flushed)(如果寫回 的話),或如果在完全寫入之後(或沒有被核心修改。對 於下載而言,其通常不是一問題(如上文所概述般)。 _ 當在目標執行中檢查一位置時,如果不是一寫回快取線 可看見該位置(所以,該位置可以在非快取或一寫入完 全的快取區域)。如果使用寫回的方式,直到下一快取 清除(flush)時才(從應用行為或執行控制支援)更新該 位置。所以,其仍然可以檢查所寫回者,但是,將有不 確定期間的延遲(依據在該快取因為不為應用所使用而 被清除之前的時間長度)。 當在目標執行中修改一位置’如果它已被快取該位置將 不影響應用。直到清除該快取,才採用該變化(如果寫 回並改變了該快取’則可能失去該DBT修正)。 19 1290630
對 TCM而言’除非其為以一些形式之雙埠者,DBT 將元全看不到該憶體。例如,如果該TCM也是一 AMBA 又控器或匕s有一外部dma埠(其被封套(wrap)為一 ahb 受控器),而後該DBT可存取該TCM。另一種支援的方法 係藉由一系統模組支援,其提供下列3種方法中的一種: 1·該TCM封套含有可讓DBT稍後得到的一外部埠(例 • 如’ DMA璋卜可以藉由使其可見諸於AMBA匯流排或 φ 藉由在DBT之中使用可替代記的憶體概念以達成。 • 2·將該TCM連同ARM多工轉接(mux)至〇ΒΤ。它沒有調 配,所以只有在ARM核心停止時才能使用。其有可能 需要登錄該界面以避免路徑問題。該模組以低消耗提供 上述存取’但是當處理器執行時,記憶體是不能存取的。 3·該TCM與一些型式的調配(等待狀態,如果該dBt正 要存取核心)被多工轉接至DBT的一些形式。其與上述 第2項相同,除了當核心執行時允許存取以外。尚不清 楚是否該模组的代價對DBT用途而言是正確的。 _ 若沒有DBT的支援,只可藉由停土核心和藉由它的 JTAG機制(或其他的工具,例如監視器)存取該TCM。 螫 罐 ΜΜϋ/ΜΡϋ(微處理 該DBT元件只能看見實體位址(匯流排位址)。該除錯 器負責在虛擬和實體位址之間做任何需要的映射(map)。對 於將MMU/MPU用於保護和快取控制的應用,這不是一個 問題(對於核心中的任何位址X,它在匯流排上也是位址 20 1290630 X)。對於的確使用MMU以產生解決方案的應用 中該虛擬位址不與實體者相符,有4種情況: 1 ·動態再次映射位置(意指在執行時該映射改變 擬位置映射至不同的實體位置以「進行處 (processes)」。其為處理模組〇Ses用作避免-稱,任務)之間接觸的一種方法。在該種情況 該除錯器本身可自該〇s或自分頁表找到它。 φ 射可以依時間而變,所以當允許核心執行時, ’ 些位置時會有風險。 2·靜態/一次映射(意指在啟動時建立映射並以 繼續存在)。該虛擬位置映射周邊裝置或其他 件至一"普通”地方。它只可由分頁表的檢查決 疋很並通’但是該除錯器必須藉由讀取該些表 支挺依據ARM核心為何,可能在核心執行 些分頁表在哪裡(藉由掃描鏈讀數CP15)。如 頁表可見於匯流排上(參照TCMs的討論),| • 允許該除錯器讀取該些分頁表以決定該些映J 能該物件檔案包含該映射的資訊。 • 3·產生分頁錯誤區域。其用於各種目的,包含在 • 製、稀疏矩陣/陣列、映射檔案(或等同物)、 憶體請求载入程式碼、等等。該些架構在所欲 者都會變化。該除錯器需要瞭解記憶體控制的 知道什麼是適當行為(從該除錯器所引起的分 適Μ的)。在某些情況下,該除錯器知: 而言,其 )。該些虛 理的程序 在程序(亦 下,通常 但是,映 在存取該 那種方法 匯流排物 :定。這不 格以提供 時決定該 果該些分 !|J DBT 可 时。亦有可 讀取時複 自快閃記 者和所需 内容,以 頁錯誤經 道資料來 21
1290630 自何處(例如,快閃記憶體),所以可用DBT來直接存 取該資料。一般而言,只在核心停止時可處理該種記憶 4·產生一更廣的位址。儘管最常用的方法(不論是否是 ASISs、Domains、或其他延伸型式)不需要不同的虛擬 和實體位置,該機制可用於產生換入(swap-in)區塊和 類似者。再次,該除錯器需要知道該些規則才能映射它 們。 值得注意的是,只有情況2對核心基礎的存取模組 (JTAG或監視器)而言不是問題。存在著其餘的問題和不論 使用什麼存取方法必須由除錯器提出。 更值得注意的是在此刻,系統層級中,大多數的設計 使用再次映射(re-mapping)(可使用晶片的和晶片選擇器等 等)。由於新的ARM核心更直接地支援MMU特徵,有可 能有更多的設計將依靠該核心。所以,很可能該除錯器將 必須敘述該些問題而該些核心將需要使不用停止即可存取 資訊變為可能。 存取 在JTAG或等同物中可使用一組IR/DR交換,以存取 DBT。 用該IR在全部不同的用途中間選取: 各種 JTAG : BYPASS(OxF)、IDCODE(OxOA)、JTAG 需 22 1290630 求動作(對該些而言,可以忽略)。 在TAP是在一區域區塊(0χ〇1)時之區域記憶體存取。 正常匯流排能看見的全域記憶體存取,不管所使用的匯 流排連接型態(0x02)。
在ARM核心為存取較舊型的掃描模組(〇χ3和〇χ4)。此 為為氬(Argon)和 V6族核心所保留。它能在 ARM7/9/10/11核心上用作一封套以提供一類氬模組。 它也能用於在較舊的核心上封套普通的存取,以使SWJ 更為快速。它亦可能用於邊界掃描測試(與除錯無關 的)0 所有的記憶體操作係使用一 IR(全域或區域)以存取, 所以所有的操作都是DR基礎的。該模組係依據該dr分 成4種請求:控制、敘述、讀取、和寫入。dr總合是34 位元。 進行DR的操作,以使他們立即讀取和寫入。
CaptUreDR樣本資料通常是先前操作的結果。用UpdateDR 寫入的資料將操縱該4種請求類型之一。 模組化 DBT元件將被分成數個部分,它們大多數是選擇性 的。第1圖圖示該概念。只有指令區塊是需要的。該選擇 性的區塊是由如何使用所決定的: 如果使用其他的工具進行存取則不需要TAP。例如,當 23
1290630 與SWJ連接時,不需要任何的TAP,因為SWJ元件將 直接驅動DBT。 掃描鏈TAP登錄器只在封套存在ARM EmbeddedICE邏 輯時或測試掃描鏈時需要。 各種適合的匯流排配件只在需要時使用。多主控器(完 全AMBA)者係用於一多主控器系統。簡單AMBA Lite 者係使用一判優存取控制器(Arbiter)用於一 MCU。一 AMBA Lite者加上一簡單判優存取控制器可在沒有判 優存取控制器的情況下,用於一 MCU (用以驅動調整/ 保持ARM存取,與等待狀態多工轉換之簡單匯流排信 號)。 可能或沒有包括額外的特徵。它包括:快閃記憶體程式 設計、注意(Attention)信號、AcK信號進入、寬匯流排 存取、可替換的匯流排存取(區域與系統)、等等。主機 可從界面直接分辨現在有什麼功能(藉由IDC0DE、控 制登錄器、和其他選擇性周邊登錄器)。藉由啟用他們 可以偵測出一些特徵並觀察是否它們在啟用時會讀 回’其他以IDCODE元件號碼標示。 亟需注意的是,已有許多的注意力放在避免太多的模 組化。亦即,複雜的模組化是有代價的(太多種可能結合)
和額外負擔(將不同的部分放在一起)。一般方法是將DBT 分成5種類型的模組化: _自然區塊。將DBT分成如第1圖所示的區塊之3個層 級。所以’為SWJ移除最高區塊(TAP),或選擇哪個匯 24
1290630 流排封套是自然合適的。 依據核心以及匯流排之何者。例如,具有64位元支援 者是唯一可能支援64位元資料的核心/匯流排。 依據系統之特定細項,例如快閃記憶體。該選擇性快閃 記憶體區塊只在系統上有快閃記憶體且其與該模組相 容被包含。 依據繞送選擇。如果注意(Attention)或確認(ACK)信號 不能被繞送,他們必須被停止。為了相容性,所以非常 鼓勵該些種類。但是,某些可能沒有意義。例如,區域 的除錯區塊只對某些設計而言適當。 因為系統延伸/考量,例如,安全性和JTAG測試掃描 鏈。該些延伸允許DBT使用於一更廣的目的。 IDCODE JTAG 播;^ 該IDC0DE含有該arm製造商的認證碼(ID code), 一 DBT之特定部分數字,和修訂的資訊。 將該部分的數字分成一 DBT(可能是3xx)的專屬字首 和XX部分,以作為作為基礎設定資訊。該設定資訊允許 對該些而的全部能力進行快速分析(㈣與全域記憶趙 存取、Flash支援、測試掃描鍵支援、安全性等等)。 起憶艚存取指令界1 DR是34位元β # 对包位元以使最後2位元係類型當囍 由TDI進入時(主機斜 精 Τ目軚)和係狀況當藉由TDO出去時。 25 1290630 所以’ TDI->32位元資料·>2位元控制/狀態->TDO。 傳送格式是: [Type as l:0][Value as 31:0] 回應格式是: [Status as l:0][Return data as 31:0] 請注意可能因為一交換而扭曲(所以,藉由UpdateDR 自一類型/值傳送的的回應將在下一個CaptureDR回應)。 尤應注意,進行CaptureDR位元->UpdateDR而沒有轉換, 係寫入模式之一種特殊狀況,它允許一填滿(當自動增量時) 戈再寫入(當不自動增量時)。
類型為下列之一: 0 控制。值為控制位元,其可或不可被改變(見確認旗標 (commit flag)) 1 位址。值是位址。 2 資料寫入。值是欲寫入之值。如果所寫入者小於32位 元’則資料為小尾序(little-endian)(LSB包含資料)。 3 資料讀取。值被忽略ά供記憶體讀取。 狀,的組合讀作(Bit 1, BitO) 0,0 交換完成ΟΚ(所以傳回的資料為所請求的資料) 〇,1 交換未元成β對位址或控制而言這是不可能的。 1,〇 交換完成但有錯誤發生。傳回資料包含錯誤資訊。 1,1 保留。 ~^ 26
1290630 控制諸灰 [00b] [Control word] 其中控制文字包含來自LSB和MSB的位元: 位元〇:在讀取或寫入資料時自動增吾# 曰夏位址。只在 有交換完成時增量。即在因錯誤或新的請求來得太 而失敗時,不會增量(在完成之前)。請注意:增量 部1 2位元。所以在一 2Λ 1 2分頁之中增量。 位元1-3 ··操作的大小為: 0 = 8位元 1 = 1 6位元 2 = 32位元 3 =64位元(資料匯流排當只調整) Ν =4-7保留。 位元4-7 :快閃記憶體作的控制為: 0=沒有快閃記憶體-正常之ΑΗΒ操作。 1 =快閃記憶體寫入啟用。意即所有的寫入將在需 值之前/之後,發出快閃記憶體控制操作。如果 獲得快閃記憶體支援,該位元將不會維持在所 者。 2 =沒有快閃記憶體,發送確認。意指所有爾後寫 都將不執行一實際寫入,但將讀取在匯流排上之 位置和將結果與所傳遞之值比較。如果比較符合 「寫入」視為成功。如果比較失敗’標不為一錯 當現 快時 僅底 要該 無法 設定 入者 現有 ,將 誤狀 27
1290630 況。 3 =快閃記憶體寫入與讀回啟用。意即在寫入以後’將 該資料讀回以以確認設定適當。請注意’快閃記憶體 寫入的規則必須確定為操作完成。 4=4-15 保留。 位元8-11 ··為操作覆寫保留。它稍後將允許存取「替 代性的(a 11 e r n a t e)」記憶體和匯流排。〇為正常匯排 操作。 位元1 2 :注意(Attention)信號。當可獲得時’其將使一 中斷送到ARM核心。其允許信箱類型信號(請參照確認 信號(ACK))。其為一自我清除的信號。寫入一宣告 (Assert),將發信號細ARM然後清除。請注意,該注意 (Attention)/確認(ACK)延伸模式可用以改變所驅動的 信號(當系統提供多個注意(Attention)發信號時)。 位元13 : ACK傳回信號。當可獲得時,其允許ARM核 心發信號給已回應或已接收一信箱操作(封包傳送) 者。其為一自我清除的門閂電路。所以,其將只讀取一 次宣告,而後將讀取解除宣告,直到下一次宣告。請注 意,該注意/確認延伸模式可用以改變樣本信號(當系統 提供多個 ACK信號時)。 位元3 0 :黏性狀況(Sticky-Status)。如果一錯誤或未完 成發生時,將忽略爾後的請求直到再次讀取「控制 (Control)」時。亦即,如果一資料讀取/寫入請求已產 生而它失敗或者產生任何其他的請求,然而它仍然在匯 28 129〇63〇 位兀3 1 .確涊控制變化。必須設定該旗標以控制欲 寫入控制設定的文字。如果沒設定,控制文字會被忽略
^ ^ T W有未來者都將被忽略直到控 制请求送入。如此確保主 汁王機可辨別發生了什麼事。請注 意,當設定了該位元,所古 R有破忽略的指令所退回的狀況 也都將指示為失敗。♦诗么 田〜系統的設定不確認為清除。 (其允許只讀取它(包括清除該「黏性狀況」),和作為 一簡單的N〇p)。 η回應(下一次掃描的結果)將是目前鎖住的控制設定。 其可用於檢查黏性狀況(是否確認)並且可用於決定是否是 允許操作:例如’如果將大小設定成Μ(大小& 3),但作 為32(2)讀回,則該TAP不支援64位元的操作。快閃記憶 體的操作和操作覆寫是類似的。 位址 [01b][Address(位址)] 當操作覆寫是供正常匯流排操作所用時,則位址是一 匯流排位址(實體)(詳見「控制(Control)」)。 為將來的資料讀取寫入操作保留寫入的位址和。請注 意’自動增量模式意指該位址將在所有後續的成功資 料的讀取/寫入操作上增量(根據資料大小)。 該回應(下一次掃描的結果)將與在該請求所寫入的位 址相同。 29 1290630
DataWrite(資料窵入) [10b][Value to write(欲寫入的值)] 該操作將寫入來自被傳入儲存的位址設定t 之一 64位元值之8、16、32、或第1個/第2 見位址請求)。若成功’之後位址將以1、: 增量(在它可以增量的位元數目之内)。 回應(下一次掃描的結果)將指示寫入是否在 成功。
DataRead(資料譆甲) [llb][Ignored Value(忽略的值)] 當為正常匯流排操作設定操作覆寫時,忽巧 (它可以用於掃描操作,以為由位址指定的书 錄器命名)。 該操作將讀取來自在儲存的位址設定中的現 64位70值之8、M、32、或第1個/第2 見位址清求)。若成功,之後位址將以1、2 增量(在它可以增量的位元數目之内)。 °應(下一次掃描的結果)將是讀取是否狀 的’反之若有錯誤則通知錯誤。(請注意:如 錯誤位70 ’回到ReadDATA匯流排為AMBA 工作。) 現有位址 個一半(詳 、4、或 8 誤失敗或 -發出之值 描鏈的登 有位址之 ί固一半(詳 、4、或 8 況是〇κ 果設定了 控制器的 30 1290630 示例 下列例子說明如何使用所欲之介面。請注意,對多數 模擬器而& ’將掃描建在一緩衝器之内而後立即執行 它們較為實際。其延伸至多個單操作和载入。最後可 檢查傳回的資料以決定是否全部成功與否。 窵入一單一值
下文說明如何寫入一單值。請注意,如果它們已經含 有正確值,則控制(Control)和位址(Address)的寫入是 沒必要的。
ScanOut(Control,SIZE(2)|COMMIT)-設定大小為 32 位元 ScanOut(Address, addr) -設定欲寫入的位址
ScanOut(DataWrite? value) -設定欲寫入的值 -取得確保運作的結&
ScanIO(Control,0,&results) If(!results[status])
Succeeded
Else
Failed 讀取一單值 下文說明如何讀取一單值。請注意,如果它价σ ]已趣含 有正確值則自控制(Control)和位址(Address)的讀 β 取是不 需要的。
ScanOut(Control,SIZE(2)|COMMIT)-設定大小為 3) 31
1290630
ScanOut(Address, addr) -設定位址為讀
ScanOut(DataRead,0) -設定值為讀取
ScanIO(Control,0,&results) -取得結果
If(!results[status])
Data_read = results [value]
Else
Failed 寫入多值(下載) 下文說明如何寫入多值。請注意,如果它們已 正確值則沒必要寫入控制和位址。請注意,該算法 套超過4千的極限的情況(位元組位址極限)。亦即 增量特徵只作用於底部1 2位元。所以’當位址超過 對齊點時,其必須重寫。因為我們不知道是否進來 對齊4千的邊界,當它改變為下一個邊界時,我們 入它。亦請注意,在每一區塊的未端使用黏性位元 體錯誤。如果測得一錯誤,則能使用一較慢速的掃 迴圈(例如,在RunTestldle有較多的旋轉(spins)) 〇
ScanOut(Control,AUTO一INC|SIZE(2)|COMMIT)-大小=32, ScanOut(Address, addr) -設定欲寫入之開, for (index = 0; index < length; index + + ) {
ScanOut(DataWrite, value [ index]) -設定欲寫入之下 addr += 4; 經含有 處理封 ,自動 4千的 的位址 只是寫 檢查集 描重試 増量 位址 一值 32 1290630
if(!(addr & OxFFF)) -注意:位址增量為12位元 only { -封套下一分頁
ScanOut(Control, 0) -取得確保運作之結果
ScanIO(Address,addr,&results)-設定下一對齊點 if(results[data] & STICKY_STATUS) ·來自控制請求的結果 Failed •收集失敗 窵入多值至快閃記憶體 對快閃記憶體的寫入基本上與正常記憶體操作是相同 的,除了下列幾點。 當位元4(快閃記憶體程式設計)被設定時,快閃記憶 體程式設計指令亦連同資料向匯流排界面發出。因為設計 快閃記憶體的程式所花費的時間比SRAM來得久,一旦以 RTI延遲(在UpdateDR和CaptureDR之間)接收了指令,則 程式設計的下一文字可以被排序以節省時間,在PauseDR 其後跟著調整延遲。亦即,一寫入跟在另一寫入之後,而 後在PauseDR有充分旋轉(spin)以確保該快閃記憶體寫入 (和選擇性的讀回)和完成。然後,通常藉由UpdateDR發展 該種狀態,其將開始該寫入。再次,可排序得更多。在該 些中的一區塊之後,呼叫者應檢查黏性狀況以了解操作是 否成功完成了。 33 1290630 各種結果 具有 RVI-ΜΕ 之積分器(Integrator)/AP (4·8ΜΗζ TCK) 下載 500kB/sec (RAM) Flash 程式設計 I80kB/sec 記憶體填滿 3700kB/sec
設計方法 如上所述,將環繞一模組以建立DBT,例如,在問 和解決方案中,以提供更多詳細内容,本段說明為什麼不 同的元件依其本身之不同而建構。 全部設計 DBT的全部設計係提供一機制以允許對晶片記情、 ^ j 周邊系統之極快速的和容易的存取。意指其大小或Dr和 DR掃描鍵和使用風格都設計為最佳化表現以供除錯器# 測試工具的典型使用:下載、填滿、對位置採樣、在— 行系統中的快速修補、與一監視器或代理通訊、恤門—^ π「〜S己憶 體程式設計、記憶體確認。 DBT沒被設計為能直接對含蓋其他種類的用途除_ 亦即,其為一簡單AHB/AHB-Lite的記憶體存取元件。如 果它們使用一匯流排模組呈現自己,則使用DBT古# ^ 1另助於其 他種類的除錯,不論是否在系統匯流排或專屬的除錯匯# 34 1290630 排(區塊)上。該專屬使用的模組旨在允許DBT能夠用於 各式裝置。尤有甚者,意指當增加其他記憶體存取元件時’ 它們可藉由使用DBT或在無法獲得DBT時使用傳統JTAG 進行存取。它幫助確保最純粹的操作性。使用一匯流排模 組(系統或區域的)「耦接(c〇uple)」之示例性的裝置係: ETM(追蹤)、ETB(追綜緩衝器)、一除錯監視器、在一 SOC 上之ASICs(資訊收集)、CTI/CTM(交又觸發)、和FPB(快 閃記憶體修補程式及斷點)。 請注意,DBT的設計係依據jTag模擬器傾向於擅長 傳送資料勝於收集資料(請注意,若不考慮該模擬器之用 途,SWJ(Single Wire JTAG)是一個極端的例子)。這是因為 後處理結果需要資訊和通訊模組。檢驗和集體的錯誤是它 的一個極好例子。那不是說一很強大的模擬器(例如arm RVI)不能選擇使用雙向的工具和區域的分析,而是該些模 擬器將得益於緊密耦接的選擇,因為它減少需要用以執行 大多數操作的TCKs的數目。
匯流排介面 匯流排界面模組係設計為模組化不同系統設計之調 整。當AHB-Lite是所欲者時,預期一微控制器 (miCr〇_C〇ntr〇ller)使用一完全 AHB 多主控器(muUi master) 模組是不合理的。同樣地,假定一單區塊並期望系統設計 者建立主要橋接(mastering bridge)亦是不合理的。 區域與全域模組(允許兩種匯流排立即配接)係設計為 35 1290630 調整系統設計,其需要有明顯不同的存取模紅。對— 要需要係除錯監控區域記憶體及系統記憶體。 ' 稽由將^ 監視Is §己憶體疋義為"特別區塊(其亦可以包括映射 的除錯記憶體),當進行區域存取時,不需要匯流排主 和/或判優存取控制器(Arbitration);它允許在除錯操 間以較小的侵入執行完全的系統。尤有甚者,該區域 排模组確保匯流排上其他元件不會破壞或擾亂該資料 後,該區域區塊允許沒有窺探選擇的安全資訊控制。 快閃記鯈艚 快閃S己憶體模組之概念係依據大多數快閃記憶體 可使用該值之前的一組寫入、該值、和在之後選擇性 些寫入以進行程式設計。為得到最佳速度,許多快閃 體裝置允許狀況檢查以決定何時進行。DBT模組通常 行此類動作。反之,其操作係藉由令jTAG界面使用 時間以調整正常的快閃記憶體寫入。一後寫入驗證將 疋否有任何格子(cell)沒有適當寫入。該方法就應用而 不適用’但是為一主機模組提供最佳速度安全方法。 的情況只是如果超過的話,快閃記憶體必須再次寫入 在必須立即確認快閃記憶體狀況下,可使用以確 法選擇性寫入快閃記憶體。其允許jTAG模擬器在寫 位元組或文字之後立即進行失敗檢查,然而仍然利用 文字批次寫入一區塊。 的主 除錯 登錄 控器 作期 匯流 。最 元件 的一 記憶 不進 充分 偵測 言並 最壞 〇 認方 入一 一多 36 1290630 發送(Pushed)驗證 檢驗模組係公一非直覺的「發送(push)」模組為基礎。 意指已傳送寫入,但未作為寫入來執行。反 夂之,讀取位置(從 匯流排)並與發送值比較。而後以2位元(錯誤 兩/狀況)傳回結 果並亦與集體錯誤模組一同處理。可達成 — M馮匕有助於 一傳送模組。另一方法係將遞交一讀取和傳送回結果以在 主機上進行比較。藉由在更多的操作之後進行發送比較, 又在其後進行區塊寫入,主機可批次最大量的操作,以得 到最好的整體表現。如果該些驗證失敗,則忽略剩下的操 作’其為適當的(對錯誤處理而言)。如此避免在主機和目 標之間來回。 可將發送檢驗用於快閃記憶體確認、SRAM下載確 認、一般寫入確認、和值變化採樣。後者意指該主機可看 見一位置(或位置的設定)以改變,而後當它改變時得到一 近似的時間戳記。發送期望值而後一再巡環該操作。藉由 時常查看該些狀態位元(2),此時該主機可決定何時改變一 值(當不同於所發送者時,璿認傳回一錯誤)。 注意(Attention )和碹铖 該注意和ACK模組對於習於信箱模組的任何人來說 是清楚的。它避免由目標檢杳知 宜和避免由DBT裝置的匯流排 檢查(其為一種侵入方式注土 土愚和ACK的延伸模組允許 DBT元件選擇具有多個注意 和/或ACK信號(例如,對不同 的核心),但不會減漫簡單情 也的速度。亦即,該延伸模組 37
1290630 允許使用個別的控制請求來選取欲驅動的注意信號( 更多)和欲採樣的ACK信號(一或更多)而後可使用利戶 制(Control)」驅動現有設定之正常模組。意指可將注 ACK用於更快速直接的内聯(iniine)模式,而當更改該 取的設定時,只需要額外的掃描。 第6圖說明MemTAP至ScanTAP的關係(以一種 近記憶體存取之支援掃描的方法)和該兩者如何裝 DBT中以及顯示一執行/架構模組。為ScanTAP所提 模組係設計為執行下列4個任務: 在時脈範圍邊界清除分隔。其提供最小可能之登錄 和在時脈範圍之間管理簡單信號交換(handshake), 在掃描方面處理傳播的額外消耗。 簡單MUX模組允許多個掃描鏈控制器。 _易於部署掃描鏈控制器-如果它們本身不想要使用 面(橋接支援和時脈),它們可用簡單的Verilog封 以支援ScanTAP界面。 以大掃描鏈使插入/擷取的使用最佳化。
ScanTAP架構產生4個不同的區塊,系統設計者 部署其中之一(和可能已經具有)。如第7圖所示之該 塊。 1.通訊協定區塊。該區塊使用與MemTAP子元件相 基本通訊協定。其可藉由(直接JTAG的)TAP區 一或 I「控 意和 些選 較接 配到 出的 界面 尤其 該界 套, 只需 些區 同的 塊或 38
1290630 SWJ的On-Chip Run-Control區塊存取。其管理一簡單 的34位元登錄器模組’其提供對4個32登錄器的存 取。該4個登錄器與MemTAP之4個登錄器類似,但 用途有些微的差異: 控制:選擇器(掃描鏈的)、請求、和資料計數器。 傳回狀態(如果細作已完成)。請求指示:只前置pre only)、只後置post only)、只插入資料、只擷取資 料、前置再插入資料再後置(pre then insert data then post)、和前置再擷取資料再後置(pre then extract data then post) ° 位址:計數器之前和之後(每一個1 6位元)。當由控 制啟用時,該些跳過掃描格以得到欲插入和擷取者。 額外者:未使用。可能用於讀回現有的掃描鏈大小。 資料:插入和截取資料值。該些係用於在現有的掃 描鏈位置中設定/取得資料。它每次使用支援1-32 位元的操作。每次用在控制中給定的大小重複存取 登錄器以完成現有請求的操作。所以,每次使用4 個32位元的操作來處理128位元的掃描。因為只有 2位元的額外消耗,意指使用該機制的消耗是較低 的。
2. ShiftIF區塊。該區塊在一時脈範圍邊界的另一邊。其 允許該些掃描格以遠比進入通訊協定區塊裡的請求的 運作來得高的時脈速度操作。該區塊管理模式(mode)、 計數(counts)+資料(data)(— 20位元的登錄器),和MUX 39
1290630 的選取(selections)。將 3個相同的登錄器用於所有模 式。ShiftIF模式指示該採取何種動作:設定選擇器、 設定計數而後清空(在前置或後置之前)、設定資料 (data) +計數(count)而後清空以插入、設定計數而後擷 取資料至資料登錄器。ShiftIF的界面使用一簡單信號 交換(handshake)來告知接收完成。該選擇器(Seieet()I·) 和計算(count) +資料(data)係登錄界面,當不請求_模 式時’其可被寫入和讀取。一插入看似:寫入資料+計 算(20位元),然後寫入模式,然後等待簡單信號交換 (handshake)。一擷取看似··寫入計數(4位元以上),然 後寫入模式’然後等待信號交換(handshake),然後讀取 資料(1 6位元)。 3·選擇器MUX。ShiftIF區塊請求MUX以轉換目前所選 取的掃描。當選擇器登錄寫入而後將模式設定為選擇器 已設定(set-selector)。該MUX用一簡單信號交換和確 認(ACK)/錯誤(Error)信號以指示是否接受。一錯誤回應 將清除在ShiftIF區塊中的該選擇器的登錄,以使該通 訊協定區塊可偵測是否接受(在讀回時)。其允許模仿 SW(emulati〇n SW)決定是否該特定裝置的掃描鏈存在。 4.序列轉換裝置。SoC/ASIC的供應商提供該序列轉換裝 置。其可使用5種信號的界面,或使用所提供的封套。 該5種信號界面包含3種輸入:一 r時脈」(向前的)、 一「橋接」請求、和SI(ShifWnp該5個信號界面亦 包含2種輸出··一簡單信號交換(ACK)、和 40 1290630 SO^Slnft-Out)。當完成轉換時(信號傳播整個掃描鍵), 在每一向前的請求(任何形式)脈衝時脈,而後序列轉換 裝置驅使簡單信號交換彳古號 父換彳°旒。當該s〇信號應被導為si 輸入時,在該時脈都'舍νσ ^ 一〇並保持該橋接信號。其允許掃 5
描向前和保存相同的内容(如果所有的位元都改變了)。 F區塊藉由保持該橋接信號和脈衝計數次數執行 一前置或後置略過(由通訊協定區塊裝載)。簡單信號交 換決定可能的速度。直到完成,肖ShiftIF區塊才宣告 自己的簡單信號交換回到通訊協定區塊,所以不可能有 過速(overrun)的可能。該ShimF區塊藉由保持該橋接 信號和脈衝時脈計數次數執行資料「擷取(extract)」操 作。每一 SO轉換成資料登錄。而後當宣告簡單信號交 換時’該通訊協定區塊讀取資料。該Shi ft IF區塊藉由 不保持該橋接信號和脈衝時脈計數次數,以執行資料 「插入」操作。使用之後會轉換之資料登錄的底部位 元驅動每一 SI。該通訊協定區塊將具有預先裝載的資 料(和計數)。 雖然本文參照附圖晝詳盡描述了本發明之示例性實施 例’應了解本發明並不侷限於那些精確的實施例,而透過 那些熟知本項技藝者,本發明及於不悖離如下文之申請專 利&圍所定義的範圍和精神之各種變化和修正。 【圖式簡單說明】 第1圖圖示一積體電路,其包含連接至一外部診斷裝 41 1290630 置之機載診斷系統; 第2圖係一方塊圖,圖示一積體電路,其與一診斷匯 流排主控器電路共同作用,用以發出匯流排交換,以使用 一積體電路執行診斷操作; 第3 -5圖示一診斷匯流排主控器電路技術之多個態 樣;和 第6·7圖圖示一診斷匯流排主控器和邊界鏈控制之型
【元件代表符號簡單說明】 2積體電路 4外部診斷裝置 6界面電路 8診斷電路 1 0處理器核心 12輔助處理器 14記憶體
16 UART 1 8功能性匯流排 52積體電路 54處理器核心 56輔助處理器 5 8快閃記憶體 42 1290630
60輸入/輸出電路 62 RAM 66診斷匯流排主控器電路 6 8認證電路 70專屬診斷匯流排 72界面電路 74診斷電路
43
Claims (1)
1290630 十、申請專利範圍: 1. 一種積體電路包含: 多個功能性電路,可操作以執行資料處理操作; 至少一功能性匯流排,可操作以在該積體電路之非 診斷功能性操作期間,提供在該多個功能性電路之間的 通訊;和
一診斷匯流排主控器電路,可操作以在該多個功能 性電路之即時操作期間,執行一診斷操作,以該多個功 能性電路之至少一個藉由發出一匯流排交換請求,經由 該至少一功能性匯流排,至該多個功能性電路之一或多 個0 2.如申請專利範圍第1項所述之一種積體電路,其中該診 斷匯流排主控器電路係可執行下列之一或多個操作: 除錯操作;
製造程式設計操作; 製造設定操作; 攔位程式設計操作;和 攔位設定操作。 3·如申請專利範圍第1項所述之一種積體電路,其中該診 斷匯流排主控器電路可操作以執行一認證操作,以授權 44 1290630 該診斷匯流排主控器電路執行診斷操作和存取該功能 性匯流排之至少一種。
4.如申請專利範圍第3項所述之一種積體電路,包括連接 至該至少一功能性匯流排的一認證電路,該認證操作包 含由該診斷匯流排主控器電路發出一認證請求至該認 證電路,依據符合預定標準之該認證請求操作該認證電 路,以選擇性地授權該診斷匯流排主控器電路。 5·如申請專利範圍第1項所述之一種積體電路,包含一專 屬診斷匯流排,其將該診斷匯流排主控器電路連接至該 多個功能性電路的至少一者,該專屬診斷匯流排提供不 能經由該至少一功能性電路存取之資料的存取。
6·如申請專利範圍第1項所述之一種積體電路,包括具有 不同匯流排通訊協定的多個功能性匯流排,該診斷匯流 排主控器電路包括多個匯流排界面電路,其每一者使用 一各自的功能性匯流排的一匯流排通訊協定與該各自 的功能性匯流排進行通訊。 7.如申請專利範圍第1項所述之一種積體電路,其中該診 斷匯流排主控器電路包括一外部界面電路,以使用各自 的外部信號通訊協定與各自的外部診斷裝置進行通訊。 45 1290630 8·如申請專利範圍第1項所述之一種積體電路,其中該診 斷匯流排主控器電路係可操作以在該積體電路一時脈 範圍和耦接至該診斷匯流排主控器電路連接的一外部 診斷裝置的一時脈範圍之間傳送信號。
9.如申請專利範圍第1項所述之一種積體電路,其中該診 斷匯流排主控器電路係可操作以執行下列之一或多個 步驟: 自耦接至該至少一功能性匯流排的一裝置下載資料 值; 儲存資料值至與該至少一功能性匯流棑耦接的一裝 置; 在與該至少一個功能性匯流排耦接的裝置之間複製 資料;和 確認儲存在與該至少一功能性匯流排耦接之一裝置 中的資料值。 10.如申請專利範圍第1項所述之一種積體電路,其中一 快閃記憶體係與該至少一功能性匯流排耦接,且該診斷 匯流排主控器電路係可操作以使用快閃記憶體程式設 計通訊協定設計該快閃記憶體之程式。 46 1290630 11·如申請專利範圍第1項所述之一種積體電路,其中該 積體電路是一系統整合晶片積體電路。 12.如申請專利範圍第1項所述之一種積體電路,其中該 至少一功能性匯流排是該積體電路的一外部匯流排。
13.如申請專利範圍第1項所述之一種積體電路,其中該 至少一功能性匯流排是一 ΑΜΒΑ匯流排。 1 4. 一種在具有多個功能性電路和至少一功能性匯流排之 一積體電路上執行即時診斷操作的方法,該功能性電路 係可操作以執行資料處理操作,該至少一功能性匯流排 係可操作以在該積體電路之非診斷功能性操作期間,提 供在該多個功能性電路之間的通訊,該方法包含之步驟 為在該多個功能性電路之即時操作期間,自一診斷匯流 排主控器電路藉由該至少一功能性匯流排發出一匯流 排交換請求至該多個功能性電路之一或多個。 1 5 ·如申請專利範圍第1 4項所述之方法,其中該診斷匯流 排主控器電路係可執行下列之一或多個操作: 除錯操作; 製造測試操作; 製造程式設計操作; 47 1290630 製造設定操作; 欄位程式設計操作;和 欄位設定操作。
1 6·如申請專利範圍第1 4項所述之方法,其中該診斷匯流 排主控器電路係可操作以執行一認證操作,以授權該診 斷匯流排主控器電路執行診斷操作和存取該功能性匯 流排之至少一種。 17.如申請專利範圍第16項所述之方法,其中一認證電路 係連接至該至少一功能性匯流排,該認證操作包含該診 斷匯流排主控器電路發出一認證請求至該認證電路,依 據符合預定標準之該認證請求操作該認證電路,以選擇 性地授權該診斷匯流排主控器電路。
18.如申請專利範圍第14項所述之方法,其中一專屬診斷 匯流排可將該診斷匯流排主控器電路連接至該多個功 能性電路的至少一個,該專屬診斷匯流排提供不能經由 該至少一功能性電路存取之資料的存取。 19.如申請專利範圍第14項所述之方法,其中該積體電路 包含具有不同匯流排通訊協定的多個功能性匯流排,該 診斷匯流排主控器電路包括多個匯流排界面電路,其每 48
1290630 一者使用一各自的功能性匯流排的一匯流排通 與該各自的功能性匯流排進行通訊。 20.如申請專利範圍第14項所述之方法,其中該診 排主控器電路包括一外部界面電路,其係以各自 信號通訊協定與各自的外部診斷裝置進行通訊。 21.如申請專利範圍第14項所述之方法,其中該診 排主控器電路係可操作以在該積體電路一時脈 耦接至該診斷匯流排主控器電路連接的一外部 置的一時脈範圍之間傳送信號。 22.如申請專利範圍第14項所述之方法,其中該診 排主控器電路係可操作以執行下列之一或多個步 自耦接至該至少一功能性匯流排的一裝置下 儲存資料值至與該至少一功能性匯流排耦接 置; 在與該至少一功能性匯流排耦接的裝置之間 料;和 確認儲存在與該至少一功能性匯流排耦接之 中的資料值。 訊協定 斷匯流 的外部 斷匯流 範圍和 診斷裝 斷匯流 驟· 載資料 的一裝 複製資 一裝置 49
1290630 23. 如申請專利範圍第1 4項所述之方法,其中一快閃 體係與該至少一功能性匯流排耦接,該診斷匯流排 器電路係可操作以使用快閃記憶體程式設計通訊 設計該快閃記憶體之程式。 24. 如申請專利範圍第14項所述之方法,其中該積體 是一系統整合晶片積體電路。 25. 如申請專利範圍第14項所述之方法,其中該至少 能性匯流排是該積體電路的一内部匯流排。 26. 如申請專利範圍第14項所述之方法,其中該至少 能性匯流排是一 AMBA匯流排。 記憶 主控 協定 電路 一功 一功
50 1290630 七、指定代表圖: (一) 、本案指定代表圖為:第1圖。 (二) 、本代表圖之元件代表符號簡單說明: 置 裝 路斷路路 l&i&D 體部面斷 積外界診 12輔助處理器 14記憶體 16 UART 1 8功能性匯流為g 心 核 器 ?·· 理 處 八、本案若有化學式時,請揭示最能顯示 發明特徵的化學式: 無
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US10/417,335 US7444546B2 (en) | 2003-04-17 | 2003-04-17 | On-board diagnostic circuit for an integrated circuit |
Publications (2)
Publication Number | Publication Date |
---|---|
TW200422626A TW200422626A (en) | 2004-11-01 |
TWI290630B true TWI290630B (en) | 2007-12-01 |
Family
ID=33158878
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW092130868A TWI290630B (en) | 2003-04-17 | 2003-11-04 | On-board diagnostic circuit for an integrated circuit, and method for performing real time diagnostic operations upon integrated circuit |
Country Status (11)
Country | Link |
---|---|
US (1) | US7444546B2 (zh) |
EP (1) | EP1614039B1 (zh) |
JP (1) | JP2006514375A (zh) |
KR (1) | KR101016711B1 (zh) |
CN (1) | CN100380335C (zh) |
AU (1) | AU2003269144A1 (zh) |
IL (1) | IL169848A (zh) |
MY (1) | MY138620A (zh) |
RU (1) | RU2005131959A (zh) |
TW (1) | TWI290630B (zh) |
WO (1) | WO2004095279A1 (zh) |
Families Citing this family (59)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6941538B2 (en) * | 2002-02-22 | 2005-09-06 | Xilinx, Inc. | Method and system for integrating cores in FPGA-based system-on-chip (SoC) |
US7200775B1 (en) | 2002-10-04 | 2007-04-03 | American Megatrends, Inc. | Method and data structures for use in providing on-demand computer diagnostics |
US7334166B1 (en) | 2002-10-04 | 2008-02-19 | American Megatrends, Inc. | Method, system, and apparatus for providing and utilizing server-side entry points for use in diagnostics on-demand services |
US7231549B1 (en) * | 2002-10-04 | 2007-06-12 | American Megatrends, Inc. | Method and apparatus for providing on-demand computer diagnostics |
FI5706U1 (fi) * | 2002-11-21 | 2003-02-26 | Patria New Technologies Oy | JTAG-testilaitteisto ja -testausjärjestelmä |
US7216276B1 (en) | 2003-02-27 | 2007-05-08 | Marvell International Ltd. | Apparatus and method for testing and debugging an integrated circuit |
US7496818B1 (en) | 2003-02-27 | 2009-02-24 | Marvell International Ltd. | Apparatus and method for testing and debugging an integrated circuit |
US7444571B1 (en) | 2003-02-27 | 2008-10-28 | Marvell International Ltd. | Apparatus and method for testing and debugging an integrated circuit |
US7634817B2 (en) * | 2003-07-22 | 2009-12-15 | Gateway, Inc. | Diagnostic authentication codes |
US7689726B1 (en) * | 2004-10-01 | 2010-03-30 | Xilinx, Inc. | Bootable integrated circuit device for readback encoding of configuration data |
US20060179380A1 (en) * | 2005-01-14 | 2006-08-10 | Ivo Tousek | On-chip electronic hardware debug support units having execution halting capabilities |
DE602005005289T2 (de) * | 2005-01-31 | 2009-07-09 | Stmicroelectronics S.R.L., Agrate Brianza | Verfahren, System und Computerprogrammprodukt zur Korrektur von Fehlern in einem Festwertspeicher |
US7437618B2 (en) * | 2005-02-11 | 2008-10-14 | International Business Machines Corporation | Method in a processor for dynamically during runtime allocating memory for in-memory hardware tracing |
US7418629B2 (en) * | 2005-02-11 | 2008-08-26 | International Business Machines Corporation | Synchronizing triggering of multiple hardware trace facilities using an existing system bus |
US7701240B2 (en) * | 2005-03-04 | 2010-04-20 | Arm Limited | Integrated circuit with error correction mechanisms to offset narrow tolerancing |
JP2006252267A (ja) * | 2005-03-11 | 2006-09-21 | Oki Electric Ind Co Ltd | システム検証用回路 |
US7370257B2 (en) * | 2005-04-08 | 2008-05-06 | Lsi Logic Corporation | Test vehicle data analysis |
JP2006318172A (ja) * | 2005-05-12 | 2006-11-24 | Renesas Technology Corp | マイクロコンピュータ |
US8881114B2 (en) * | 2005-05-16 | 2014-11-04 | Texas Instruments Incorporated | Stored program writing stall information when a processor stalls waiting for another processor |
US7730545B2 (en) * | 2005-05-23 | 2010-06-01 | Arm Limited | Test access control for secure integrated circuits |
KR101377305B1 (ko) * | 2005-06-24 | 2014-03-25 | 구글 인코포레이티드 | 집적 메모리 코어 및 메모리 인터페이스 회로 |
US7363564B2 (en) * | 2005-07-15 | 2008-04-22 | Seagate Technology Llc | Method and apparatus for securing communications ports in an electronic device |
US7734674B2 (en) * | 2005-08-08 | 2010-06-08 | Freescale Semiconductor, Inc. | Fast fourier transform (FFT) architecture in a multi-mode wireless processing system |
US7802259B2 (en) * | 2005-08-08 | 2010-09-21 | Freescale Semiconductor, Inc. | System and method for wireless broadband context switching |
US8140110B2 (en) * | 2005-08-08 | 2012-03-20 | Freescale Semiconductor, Inc. | Controlling input and output in a multi-mode wireless processing system |
US7653675B2 (en) * | 2005-08-08 | 2010-01-26 | Freescale Semiconductor, Inc. | Convolution operation in a multi-mode wireless processing system |
JP2009505486A (ja) * | 2005-08-08 | 2009-02-05 | フリースケール セミコンダクター インコーポレイテッド | マルチモード無線広帯域信号プロセッサシステムおよび方法 |
US20070033349A1 (en) * | 2005-08-08 | 2007-02-08 | Freescale Semiconductor, Inc. | Multi-mode wireless processor interface |
US7457726B2 (en) | 2005-08-08 | 2008-11-25 | Freescale Semiconductor, Inc. | System and method for selectively obtaining processor diagnostic data |
US20070030801A1 (en) * | 2005-08-08 | 2007-02-08 | Freescale Semiconductor, Inc. | Dynamically controlling rate connections to sample buffers in a mult-mode wireless processing system |
JP4795147B2 (ja) * | 2006-07-11 | 2011-10-19 | 富士通株式会社 | 伝送装置 |
US7594140B2 (en) * | 2006-08-02 | 2009-09-22 | International Business Machines Corporation | Task based debugger (transaction-event-job-trigger) |
US7823017B2 (en) | 2006-08-02 | 2010-10-26 | International Business Machines Corporation | Structure for task based debugger (transaction-event-job-trigger) |
GB2443277B (en) * | 2006-10-24 | 2011-05-18 | Advanced Risc Mach Ltd | Performing diagnostics operations upon an asymmetric multiprocessor apparatus |
US7610532B2 (en) * | 2006-11-01 | 2009-10-27 | Avago Technologies General Ip (Singapore) Pte. Ltd. | Serializer/de-serializer bus controller interface |
GB2445166A (en) | 2006-12-27 | 2008-07-02 | Advanced Risc Mach Ltd | Integrated circuit with an interface that can selectively communicate a diagnostic signal or a functional signal to external devices. |
US7925465B2 (en) * | 2007-02-12 | 2011-04-12 | Mentor Graphics Corporation | Low power scan testing techniques and apparatus |
US7882405B2 (en) * | 2007-02-16 | 2011-02-01 | Atmel Corporation | Embedded architecture with serial interface for testing flash memories |
KR100869953B1 (ko) * | 2007-05-30 | 2008-11-24 | 경북대학교 산학협력단 | Etm 인터페이스를 이용한 전력 측정 시스템 및 그 방법 |
US8176355B2 (en) * | 2007-06-07 | 2012-05-08 | International Business Machines Corporation | Recovery from hardware access errors |
US8014976B2 (en) * | 2007-10-24 | 2011-09-06 | Microsoft Corporation | Secure digital forensics |
US20090113245A1 (en) * | 2007-10-30 | 2009-04-30 | Teradyne, Inc. | Protocol aware digital channel apparatus |
JP4648961B2 (ja) * | 2008-03-25 | 2011-03-09 | 富士通株式会社 | 装置メンテナンスシステム、方法および情報処理装置 |
US20090259457A1 (en) * | 2008-04-14 | 2009-10-15 | Mentor Graphics Corporaton | Trace Routing Network |
US9141776B2 (en) | 2008-04-30 | 2015-09-22 | Telefonaktiebolaget Lm Ericsson (Publ) | Method and apparatus for secure hardware analysis |
US8055936B2 (en) * | 2008-12-31 | 2011-11-08 | Pitney Bowes Inc. | System and method for data recovery in a disabled integrated circuit |
JP5629981B2 (ja) * | 2009-05-29 | 2014-11-26 | 富士通セミコンダクター株式会社 | 半導体集積回路及び半導体集積回路の故障診断方法 |
US8484451B2 (en) * | 2010-03-11 | 2013-07-09 | St-Ericsson Sa | Method and apparatus for software boot revocation |
FR2958063B1 (fr) * | 2010-03-26 | 2012-04-20 | Thales Sa | Dispositif permettant de securiser un bus de type jtag |
US8438436B1 (en) * | 2010-06-04 | 2013-05-07 | Xilinx, Inc. | Secure design-for-test scan chains |
CN102184134A (zh) * | 2010-06-22 | 2011-09-14 | 上海盈方微电子有限公司 | 一种片上系统的性能分析器 |
US20130031419A1 (en) * | 2011-07-28 | 2013-01-31 | International Business Machines Corporation | Collecting Debug Data in a Secure Chip Implementation |
GB2493405B (en) * | 2011-08-03 | 2017-04-05 | Advanced Risc Mach Ltd | Debug barrier transactions |
US20130159591A1 (en) * | 2011-12-14 | 2013-06-20 | International Business Machines Corporation | Verifying data received out-of-order from a bus |
WO2013147730A1 (en) * | 2012-03-25 | 2013-10-03 | Intel Corporation | Asynchronous programmable jtag-based interface to debug any system-on-chip states, power modes, resets, clocks, and complex digital logic |
US10769051B2 (en) * | 2016-04-28 | 2020-09-08 | International Business Machines Corporation | Method and system to decrease measured usage license charges for diagnostic data collection |
US11347712B2 (en) | 2017-11-07 | 2022-05-31 | International Business Machines Corporation | Preventing long running transactions from holding record locks |
US11494329B2 (en) * | 2020-02-27 | 2022-11-08 | Advantest Corporation | NVMe-MI over SMBus multi-master controller with other SMBus and I2C masters in a single FPGA chip |
CN113703552B (zh) * | 2021-07-30 | 2024-02-09 | 浪潮电子信息产业股份有限公司 | 一种服务器散热调控方法、设备及存储介质 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4183459A (en) * | 1978-04-24 | 1980-01-15 | Fluke Trendar Corporation | Tester for microprocessor-based systems |
JPH01134639A (ja) | 1987-11-20 | 1989-05-26 | Nec Corp | トレース停止制御方式 |
JP2960560B2 (ja) * | 1991-02-28 | 1999-10-06 | 株式会社日立製作所 | 超小型電子機器 |
GB2282244B (en) | 1993-09-23 | 1998-01-14 | Advanced Risc Mach Ltd | Integrated circuit |
US5664124A (en) * | 1994-11-30 | 1997-09-02 | International Business Machines Corporation | Bridge between two buses of a computer system that latches signals from the bus for use on the bridge and responds according to the bus protocols |
DE19616293A1 (de) * | 1996-04-24 | 1997-10-30 | Bosch Gmbh Robert | Bussystem für die Übertragung von Nachrichten |
GB9626412D0 (en) * | 1996-12-19 | 1997-02-05 | Sgs Thomson Microelectronics | Diagnostic procedures in an integrated circuit device |
JP3712810B2 (ja) | 1997-02-25 | 2005-11-02 | 富士通株式会社 | 通信装置の監視制御方式 |
US6065078A (en) * | 1997-03-07 | 2000-05-16 | National Semiconductor Corporation | Multi-processor element provided with hardware for software debugging |
US6142683A (en) * | 1997-04-08 | 2000-11-07 | Advanced Micro Devices, Inc. | Debug interface including data steering between a processor, an input/output port, and a trace logic |
US6115763A (en) * | 1998-03-05 | 2000-09-05 | International Business Machines Corporation | Multi-core chip providing external core access with regular operation function interface and predetermined service operation services interface comprising core interface units and masters interface unit |
GB2338791B (en) | 1998-06-22 | 2002-09-18 | Advanced Risc Mach Ltd | Apparatus and method for testing master logic units within a data processing apparatus |
US6779145B1 (en) * | 1999-10-01 | 2004-08-17 | Stmicroelectronics Limited | System and method for communicating with an integrated circuit |
JP2001331442A (ja) | 2000-03-16 | 2001-11-30 | Nec Eng Ltd | システムバス競合制御装置及びそれに用いるシステムバス競合制御方式 |
JP4409056B2 (ja) | 2000-06-30 | 2010-02-03 | 富士通株式会社 | Lsi,lsiを搭載した電子装置、デバッグ方法、lsiのデバッグ装置 |
GB2406416A (en) | 2000-10-31 | 2005-03-30 | Advanced Risc Mach Ltd | Describing an integrated circuit configuration |
JP2002149498A (ja) | 2000-11-08 | 2002-05-24 | Hitachi Building Systems Co Ltd | 監視診断装置 |
JP3913470B2 (ja) * | 2000-12-28 | 2007-05-09 | 株式会社東芝 | システムlsi |
US6948098B2 (en) * | 2001-03-30 | 2005-09-20 | Cirrus Logic, Inc. | Circuits and methods for debugging an embedded processor and systems using the same |
DE10146516A1 (de) * | 2001-09-21 | 2003-04-24 | Infineon Technologies Ag | Programmgesteuerte Einheit |
US7277972B2 (en) * | 2002-03-08 | 2007-10-02 | Freescale Semiconductor, Inc. | Data processing system with peripheral access protection and method therefor |
EP1349071A1 (en) * | 2002-03-29 | 2003-10-01 | STMicroelectronics N.V. | Integrated circuit with direct debugging architecture |
US7080283B1 (en) * | 2002-10-15 | 2006-07-18 | Tensilica, Inc. | Simultaneous real-time trace and debug for multiple processing core systems on a chip |
US20040082297A1 (en) * | 2002-10-28 | 2004-04-29 | Stambaugh Mark A. | Test protocols for wireless test |
US7386639B2 (en) * | 2003-01-15 | 2008-06-10 | Avago Technologies Fiber Ip (Singapore) Pte. Ltd. | Switch for coupling one bus to another bus |
-
2003
- 2003-04-17 US US10/417,335 patent/US7444546B2/en active Active
- 2003-09-17 WO PCT/GB2003/003994 patent/WO2004095279A1/en active Application Filing
- 2003-09-17 EP EP03750925.4A patent/EP1614039B1/en not_active Expired - Lifetime
- 2003-09-17 KR KR1020057019586A patent/KR101016711B1/ko active IP Right Grant
- 2003-09-17 JP JP2004571047A patent/JP2006514375A/ja active Pending
- 2003-09-17 AU AU2003269144A patent/AU2003269144A1/en not_active Abandoned
- 2003-09-17 CN CNB038263157A patent/CN100380335C/zh not_active Expired - Lifetime
- 2003-09-17 RU RU2005131959/09A patent/RU2005131959A/ru not_active Application Discontinuation
- 2003-10-20 MY MYPI20033987A patent/MY138620A/en unknown
- 2003-11-04 TW TW092130868A patent/TWI290630B/zh not_active IP Right Cessation
-
2005
- 2005-07-24 IL IL169848A patent/IL169848A/en active IP Right Grant
Also Published As
Publication number | Publication date |
---|---|
US7444546B2 (en) | 2008-10-28 |
EP1614039A1 (en) | 2006-01-11 |
IL169848A (en) | 2011-03-31 |
CN1764902A (zh) | 2006-04-26 |
JP2006514375A (ja) | 2006-04-27 |
MY138620A (en) | 2009-07-31 |
CN100380335C (zh) | 2008-04-09 |
WO2004095279A1 (en) | 2004-11-04 |
US20040210797A1 (en) | 2004-10-21 |
EP1614039B1 (en) | 2018-10-17 |
KR20060009255A (ko) | 2006-01-31 |
RU2005131959A (ru) | 2006-02-10 |
AU2003269144A1 (en) | 2004-11-19 |
TW200422626A (en) | 2004-11-01 |
KR101016711B1 (ko) | 2011-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI290630B (en) | On-board diagnostic circuit for an integrated circuit, and method for performing real time diagnostic operations upon integrated circuit | |
US6430727B1 (en) | Diagnostic procedures in an integrated circuit device | |
KR101581702B1 (ko) | 테스트, 검증, 및 디버그 아키텍처 | |
JP4190114B2 (ja) | マイクロコンピュータ | |
EP0849670B1 (en) | Integrated computer providing an instruction trace | |
US7051239B2 (en) | Method and apparatus for efficiently implementing trace and/or logic analysis mechanisms on a processor chip | |
EP0849668B1 (en) | Diagnostics system and procedure in an integrated circuit device | |
US7555605B2 (en) | Data processing system having cache memory debugging support and method therefor | |
EP0840217A1 (en) | An integrated circuit with TAP (test access port) controller | |
KR102413593B1 (ko) | 교착상태 방지를 위한 방법들 및 회로들 | |
US9529686B1 (en) | Error protection for bus interconnect circuits | |
EP0840218B1 (en) | An integrated circuit device and method of communication therewith | |
EP0840235B1 (en) | Message protocol | |
US10042692B1 (en) | Circuit arrangement with transaction timeout detection | |
JP2007522554A (ja) | 車両内のセキュリティ上問題のあるコンピュータシステムのための埋込式システムの分析装置及び方法 | |
JP3917817B2 (ja) | 半導体装置 | |
Becker | Short burst software transparent on-line MBIST | |
US6694489B1 (en) | Test interface for a configurable system on-chip | |
JP2008152421A (ja) | 半導体集積回路 | |
JP2004094451A (ja) | オンチップjtagインタフェース回路およびシステムlsi | |
Neishaburi et al. | On a new mechanism of trigger generation for post-silicon debugging | |
Neishaburi et al. | A distributed AXI-based platform for post-silicon validation | |
Park et al. | On‐Chip Debug Architecture for Multicore Processor | |
JP4162846B2 (ja) | マイクロコンピュータ | |
US20240220365A1 (en) | Error and debug information capturing for a boot process |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
MK4A | Expiration of patent term of an invention patent |