亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

半導(dǎo)體裝置制造方法

文檔序號(hào):6494697閱讀:175來(lái)源:國(guó)知局
半導(dǎo)體裝置制造方法
【專利摘要】半導(dǎo)體裝置具有:第1和第2中央處理裝置(0、3);以及設(shè)置在第2中央處理裝置(3)的內(nèi)部或外部的監(jiān)視用寄存器組(60)。在監(jiān)視用寄存器組(60)中,在程序的執(zhí)行中從第1中央處理裝置(0)轉(zhuǎn)送了表示第1中央處理裝置(0)的內(nèi)部狀態(tài)的信息,監(jiān)視用寄存器組(60)對(duì)這些被轉(zhuǎn)送的信息進(jìn)行保持。監(jiān)視用寄存器組(60)映射到第2中央處理裝置(3)的存儲(chǔ)器空間。
【專利說(shuō)明】半導(dǎo)體裝置【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及搭載了多個(gè)中央處理裝置的半導(dǎo)體裝置。
【背景技術(shù)】
[0002]為了使軟件的開(kāi)發(fā)高效化,多在中央處理裝置(CPU:Central Processing Unit)上,搭載與JTAG (Joint Test Action Group,聯(lián)合測(cè)試行為組織)標(biāo)準(zhǔn)等對(duì)應(yīng)的片上調(diào)試功能。片上調(diào)試功能是如下這樣的功能:通過(guò)專用接ロ輸入指令碼從而使CPU工作,取出半導(dǎo)體芯片內(nèi)的資源信息。在片上調(diào)試功能中,存在能夠在期望的地方停止用戶/程序的執(zhí)行的中斷功能、能夠獲取用戶/程序執(zhí)行中的任意時(shí)刻的內(nèi)部總線的信息的跟蹤功能等。
[0003]在記載于日本特開(kāi)2001-350648號(hào)公報(bào)(專利文獻(xiàn)I)的技術(shù)中,在具備上述片上調(diào)試功能的微機(jī)中,進(jìn)ー步設(shè)置有:在用戶/程序執(zhí)行中向外部輸出預(yù)定的內(nèi)部狀態(tài)信息的內(nèi)部狀態(tài)輸出電路;以及用于輸出所述內(nèi)部狀態(tài)信息的端子。
[0004]在日本特開(kāi)平6-214819號(hào)公報(bào)(專利文獻(xiàn)2)中也有與上述文獻(xiàn)同樣的記載。具體地講,在該文獻(xiàn)記載的微機(jī)中,設(shè)置有將程序計(jì)數(shù)器的內(nèi)容輸出到外部、或者選擇在CPU與功能模塊之間進(jìn)行輸入輸出的信號(hào)等而輸出到外部的輸出電路。
[0005]但是,近年來(lái),為了實(shí)現(xiàn)低功耗且高性能的系統(tǒng),進(jìn)行了將多個(gè)CPU搭載在相同的LSI (Large Scale Integration,大規(guī)模集成)上的多處理器(多核處理器)的開(kāi)發(fā)。在搭載了多個(gè)CPU的系統(tǒng)的調(diào)試中,存在與搭載了單個(gè)CPU的系統(tǒng)不同的新的問(wèn)題。
[0006]例如,在搭載了多個(gè)CPU的系統(tǒng)的調(diào)試中,對(duì)每個(gè)CPU實(shí)施中斷、步驟執(zhí)行、以及跟蹤等。因此,為了進(jìn)行高效率的 調(diào)試,需要使各CPU的中斷、步驟執(zhí)行進(jìn)行協(xié)調(diào)工作、以及知道各CPU的跟蹤數(shù)據(jù)的時(shí)間關(guān)系。在日本特開(kāi)2003-162426號(hào)公報(bào)(專利文獻(xiàn)3)中,對(duì)具有用于這些的控制電路的計(jì)算機(jī)系統(tǒng)進(jìn)行了記載。
[0007]調(diào)試用的端子組與多個(gè)CPU之間的連接方法也是在多處理器中固有的問(wèn)題。根據(jù)植田等(非專利文獻(xiàn)I ),在假設(shè)了使用JTAG接ロ的調(diào)試時(shí),關(guān)于JTAG端ロ與控制對(duì)象的CPU核心之間的連接方法,可以考慮4種類。即,存在進(jìn)行級(jí)聯(lián)連接還是并行/開(kāi)關(guān)連接的選項(xiàng)、和是否具備獲取CPU核心間的同步的功能等的選項(xiàng)。例如,日本特開(kāi)2004-164367號(hào)公報(bào)(專利文獻(xiàn)4)公開(kāi)了如下的技術(shù):通過(guò)使用了寄存器的簡(jiǎn)單結(jié)構(gòu)的開(kāi)關(guān)電路(選擇電路),連接調(diào)試用端子組與所選擇的CPU。
[0008]日本特開(kāi)2009-193305號(hào)公報(bào)(專利文獻(xiàn)5)公開(kāi)了能夠應(yīng)對(duì)在將多個(gè)CPU搭載在相同的LSI上的多核LSI中,在其他CPU正常工作期間,某CPU失控而掛斷(Hung Up) 了共享總線的情況的技木。具體地講,該文獻(xiàn)的多核LSI具有:與第I共享總線連接的多個(gè)CPU ;與第2共享總線連接的ー個(gè)以上的模塊;在第I共享總線與第2共享總線之間連接,對(duì)針對(duì)多個(gè)CPU的模塊的接入進(jìn)行調(diào)節(jié)的共享總線控制部;以及對(duì)是否從接入目標(biāo)的模塊,輸出了對(duì)于各CPU的接入請(qǐng)求信號(hào)的響應(yīng)信號(hào)進(jìn)行監(jiān)視的系統(tǒng)控制器。從由共享總線控制部向第2共享總線輸出了接入請(qǐng)求信號(hào)開(kāi)始經(jīng)過(guò)預(yù)定時(shí)間為止,系統(tǒng)控制器在沒(méi)有從接入目標(biāo)的模塊輸出響應(yīng)信號(hào)時(shí),通過(guò)共享總線控制部向第I共享總線輸出偽響應(yīng)信號(hào),使接入中的CPU的相應(yīng)接入結(jié)束。
[0009]現(xiàn)有技術(shù)文獻(xiàn)
[0010]專利文獻(xiàn)
[0011]專利文獻(xiàn)1:日本特開(kāi)2001-350648號(hào)公報(bào)
[0012]專利文獻(xiàn)2:日本特開(kāi)平6-214819號(hào)公報(bào)
[0013]專利文獻(xiàn)3:日本特開(kāi)2003-162426號(hào)公報(bào)
[0014]專利文獻(xiàn)4:日本特開(kāi)2004-164367號(hào)公報(bào)
[0015]專利文獻(xiàn)5:日本特開(kāi)2009-193305號(hào)公報(bào)
[0016]非專利文獻(xiàn)
[0017]非專利文獻(xiàn)1:除了植田外4名,“Linux (登録商標(biāo))やマルチコア環(huán)境のデバッグを支える仮想化技術(shù)(支持Linux (注冊(cè)商標(biāo))和多核環(huán)境的調(diào)試的虛擬化技木)”,日経ヱレク卜ロニクス(日經(jīng)電子),2006年I月2日號(hào),p.115-122

【發(fā)明內(nèi)容】

[0018]發(fā)明所要解決的課題
[0019]在CPU由于某些理由而掛斷時(shí),在片上調(diào)試功能中不能取出已掛斷的CPU的內(nèi)部信息。因此,很難確定已掛斷的程序的地方。
[0020]特別是,在搭載有多個(gè)CPU的多處理器的情況下,調(diào)試比單處理器的情況更困難。該理由是因?yàn)?,在多處理器中,由于任?wù)分配毎次都改變因此掛斷產(chǎn)生的重現(xiàn)性低,例如,每次執(zhí)行程序時(shí)在不同的CPU中產(chǎn)生掛斷。而且,在多處理器中,由于從各CPU產(chǎn)生接入因此容易產(chǎn)生資源競(jìng)爭(zhēng),并且為了操作大規(guī)模的程序而調(diào)試的分量也很多,這些都使調(diào)試變得更困難。
[0021]在單處理器的情況下,雖然實(shí)現(xiàn)了利用跟蹤功能而使掛斷時(shí)的調(diào)試容易化,但是在多處理器的情況下,由于電路規(guī)模和端子的制約,對(duì)所有的處理器附上與單處理器相同的跟蹤功能是非常困難的。
[0022]上述日本特開(kāi)2003-162426號(hào)公報(bào)(專利文獻(xiàn)3)和日本特開(kāi)2004-164367號(hào)公報(bào)(專利文獻(xiàn)4),雖然以多處理器的調(diào)試的容易化為目的,但是對(duì)CPU掛斷的情況并未提及。日本特開(kāi)2009-193305號(hào)公報(bào)(專利文獻(xiàn)5)雖然是關(guān)于CPU掛斷的情況的發(fā)明,但并不是將重點(diǎn)放在消除掛斷,提供用于調(diào)試容易化的手段的發(fā)明。
[0023]因此,本發(fā)明的目的在于,提供如下的半導(dǎo)體裝置:在搭載了多個(gè)中央處理裝置(CPU)的半導(dǎo)體裝置中,在任意ー個(gè)CPU掛斷的情況下,能夠比以往更容易地進(jìn)行調(diào)試。
[0024]用于解決課題的手段
[0025]本發(fā)明的ー實(shí)施方式的半導(dǎo)體裝置,具有第I中央處理裝置和第2中央處理裝置;以及設(shè)置在第2中央處理裝置的內(nèi)部或外部的監(jiān)視用寄存器組。在監(jiān)視用寄存器組中,在程序的執(zhí)行中從第I中央處理裝置轉(zhuǎn)送了表示第I中央處理裝置的內(nèi)部狀態(tài)的信息,監(jiān)視用寄存器組保持這些所轉(zhuǎn)送的信息。監(jiān)視用寄存器組映射到第2中央處理裝置的存儲(chǔ)器空間。
[0026]發(fā)明效果
[0027]根據(jù)上述實(shí)施方式,在第I中央處理裝置掛斷吋,由于能夠使用第2中央處理裝置 獲取第I中央處理裝置的內(nèi)部狀態(tài),因此能夠比以往更容易地進(jìn)行調(diào)試。
【專利附圖】

【附圖說(shuō)明】
[0028]圖1是示出本發(fā)明的實(shí)施方式I的微機(jī)芯片100的結(jié)構(gòu)的框圖。
[0029]圖2是示出在圖1所示的CPUO的內(nèi)部信息的轉(zhuǎn)送中使用的硬件的一例的電路圖。
[0030]圖3是用于對(duì)具有四個(gè)CPU的微機(jī)芯片中的CPU核心間的信號(hào)傳送進(jìn)行說(shuō)明的概念圖。
[0031]圖4是在CPU3中設(shè)置的監(jiān)視用寄存器組的ー覽表。
[0032]圖5是用于對(duì)圖4的各監(jiān)視用寄存器進(jìn)行說(shuō)明的圖。
[0033]圖6是示出圖1的CPU3的地址地圖的一例的圖。
[0034]圖7是用于對(duì)CPUO沒(méi)有掛斷時(shí)的片上調(diào)試方法進(jìn)行說(shuō)明的圖。
[0035]圖8是用于對(duì)CPUO掛斷時(shí)的片上調(diào)試方法進(jìn)行說(shuō)明的圖。
[0036]圖9是具有四個(gè)CPU的微機(jī)芯片中的各CPU的內(nèi)部狀態(tài)的讀出路徑成為環(huán)形結(jié)構(gòu)的例子的圖。
[0037]圖10是示出具有四個(gè)CPU的微機(jī)芯片中的各CPU的內(nèi)部狀態(tài)的讀出路徑成為總線結(jié)構(gòu)的例子的圖。
[0038]圖11是具有七個(gè)CPU的微機(jī)芯片中的各CPU的內(nèi)部狀態(tài)的讀出路徑成為樹(shù)結(jié)構(gòu)的例子的圖。
【具體實(shí)施方式】
[0039]以下,參照附圖詳細(xì)說(shuō)明本發(fā)明的實(shí)施方式。另外,對(duì)相同或相當(dāng)?shù)牟糠指缴舷嗤膮⒄諛?biāo)號(hào),不重復(fù)進(jìn)行其說(shuō)明。
[0040]<實(shí)施方式1>
[0041][微機(jī)芯片的結(jié)構(gòu)]
[0042]圖1是示出本發(fā)明的實(shí)施方式I的微機(jī)芯片100的結(jié)構(gòu)的框圖。參照?qǐng)D1,微機(jī)芯片100包括:多個(gè)中央處理裝置(CPU);內(nèi)部存儲(chǔ)器21 ;用于將微機(jī)芯片100與外圍設(shè)備連接的輸入輸出接ロ(外圍10)22 ;以及外部總線接ロ 23。這些要素通過(guò)內(nèi)部總線20而相互連接。另外,在圖1中設(shè)置在微機(jī)芯片100上的多個(gè)CPU之中,作為代表示出了 CPUO和CPU3。
[0043]輸入輸出接ロ 22通過(guò)輸入輸出端ロ 26而與設(shè)置在微機(jī)芯片100外部的外圍設(shè)備連接。
[0044]外部總線接ロ 23通過(guò)輸入輸出端ロ 27與設(shè)置在微機(jī)芯片100外部的外部存儲(chǔ)器(例如,DRAM(Dynamic Random Access Memory,動(dòng)態(tài)隨機(jī)訪問(wèn)存儲(chǔ)器))或ASIC(ApplicationSpecific Integrated Circuit,專用集成電路)等連接。
[0045]CPUO包括:核心電路(CPU核心)10_0 ;存儲(chǔ)器管理單兀(MMU:Memory ManagementUnit) 11_0 ; 一級(jí)緩存(指令緩存(icache) 13_0和數(shù)據(jù)緩存(dcache) 12_0);調(diào)試電路14_0。核心電路10_0是執(zhí)行存儲(chǔ)于內(nèi)部存儲(chǔ)器21或外部存儲(chǔ)器的程序的CPU的核心部分。存儲(chǔ)器管理単元11_0進(jìn)行虛擬地址與物理地址之間的轉(zhuǎn)換。一級(jí)緩存是通過(guò)轉(zhuǎn)送存儲(chǔ)器的一部分?jǐn)?shù)據(jù)而實(shí)現(xiàn)數(shù)據(jù)接入的高速化的緩存。調(diào)試電路14_0是為了實(shí)現(xiàn)JTAG ICE(In-circuit Emulator,內(nèi)電路仿真器)的板上調(diào)試而設(shè)置在處理器內(nèi)部的專用電路。
[0046]CPU3與CPUO同樣,包括核心電路10_3、MMU11_3、一級(jí)緩存(12_3、13_3)、調(diào)試電路14_3。但是,如后所述,在CPU3的核心電路10_3中,設(shè)置有在程序執(zhí)行中轉(zhuǎn)送與CPUO的內(nèi)部狀態(tài)有關(guān)的信息的監(jiān)視用的寄存器組。監(jiān)視用的寄存器組被映射到CPU3的存儲(chǔ)器空間。即,在構(gòu)成監(jiān)視用寄存器組的各寄存器上分配地址。向CPU3發(fā)布將該分配的地址記載為操作數(shù)地址的讀出命令,從而能夠讀出保存在監(jiān)視用寄存器組中的內(nèi)容。
[0047]微機(jī)芯片100進(jìn)ー步包括:與多個(gè)CPU分別對(duì)應(yīng)設(shè)置的JTAG接ロ 15 ;開(kāi)關(guān)電路24 JTAG端ロ 28。在圖1中代表性地示出與CPU0、3分別對(duì)應(yīng)的JTAG接ロ 15_0、15_3。
[0048]各JTAG接ロ 15具有稱為T(mén)AP (Test Access Port,測(cè)試接入端ロ)16的專用的控制器,通過(guò)TAP進(jìn)行對(duì)應(yīng)的CPU與連接于JATG端ロ 28的外部調(diào)試裝置之間的通信。JTAG接ロ 15成為僅特定的TAP能夠與外部的調(diào)試裝置進(jìn)行通信的規(guī)格。開(kāi)關(guān)電路24對(duì)JTAG端ロ 28與各JTAG接ロ 15之間的連接進(jìn)行切換。
[0049]圖2是示出在圖1所示的CPUO的內(nèi)部信息的轉(zhuǎn)送中使用的硬件的一例的電路圖。
[0050]參照?qǐng)D2,在程序執(zhí)行中,CPUO的內(nèi)部信息被轉(zhuǎn)送到設(shè)置在CPU3的核心電路10_3上的監(jiān)視用寄存器組60。監(jiān)視用寄存器組60被映射到CPU3的存儲(chǔ)器空間。被轉(zhuǎn)送的CPUO的內(nèi)部狀態(tài)例如是在程序執(zhí)行時(shí)使用的程序計(jì)數(shù)器等特殊寄存器組30的值,是與在嵌入工作時(shí)保存的CPU上下文相當(dāng)?shù)男畔ⅰ?br> [0051]在實(shí)施方式I的情況下,如圖2所示,程序計(jì)數(shù)器(EPC:Execute ProgramCounter,也簡(jiǎn)單記載為PC) 31的值、備份程序計(jì)數(shù)器(BPC:Backup Program Counter) 32的值、程序狀態(tài)字(PSW:Program Status Word) 33的值、以及操作數(shù)接入(0A:0perandAccess)的信息34等被轉(zhuǎn)送到監(jiān)視用寄存器組60。作為操作數(shù)接入的信息,可以例舉操作數(shù)接入請(qǐng)求(REQ)、讀取和寫(xiě)入屬性(WR)、總線鎖定請(qǐng)求屬性(LOCK)、字節(jié)控制(BC)、操作數(shù)地址信息(ADDR)、以及對(duì)于操作數(shù)接入請(qǐng)求的總線接受(acknowledge)信號(hào)(DCC1H0AACK)等。在該實(shí)施方式的情況下,由于總線結(jié)構(gòu)上的理由,總線接受信號(hào)(DCC1H0AACK)由數(shù)據(jù)緩存12_0輸出。另外,BPC32在產(chǎn)生嵌入、陷阱、例外時(shí)保存PC的值。
[0052]雖然在圖2中沒(méi)有圖示,但優(yōu)選將圖1的存儲(chǔ)器管理単元11_0的內(nèi)部信息、即TLB(Translation Look-aside Buffer,轉(zhuǎn)譯后備緩沖區(qū))入口(與虛擬地址對(duì)應(yīng)起來(lái)的物理地址的信息)也轉(zhuǎn)送到監(jiān)視用寄存器組60。
[0053]將被轉(zhuǎn)送的CPUO的內(nèi)部信息,考慮延遲(遲滯時(shí)間)而通過(guò)多個(gè)觸發(fā)器(保持電路)而轉(zhuǎn)送到監(jiān)視用寄存器組。在圖2的情況下,觸發(fā)器41?45設(shè)置在作為信息輸出側(cè)的CPU0,觸發(fā)器46?54設(shè)置在作為信息接收側(cè)的CPU3。
[0054]關(guān)于構(gòu)成監(jiān)視用寄存器組60的各寄存器61?68的結(jié)構(gòu)的詳細(xì),參照?qǐng)D4和圖5在后面敘述。此處,相對(duì)于寄存器61、63、64、65、66的值在每個(gè)時(shí)鐘周期更新,寄存器62、67,68的值不一定在每個(gè)時(shí)鐘周期更新。
[0055]寄存器62僅在程序計(jì)數(shù)器(PC)的值被更新吋,保持更新前的程序計(jì)數(shù)器的值。由于該目的,在寄存器62的前級(jí)設(shè)置有觸發(fā)器52,并且設(shè)置有比較電路55。比較電路55比較在觸發(fā)器51中保持的程序計(jì)數(shù)器的值、與在每個(gè)時(shí)鐘周期輸入的新的程序計(jì)數(shù)器的值,在兩者一致時(shí)輸出“0”,在不一致時(shí)輸出“I”。觸發(fā)器52在每個(gè)時(shí)鐘周期保持程序計(jì)數(shù)器的值,僅在比較電路55的輸出為“I”時(shí)(WE= “1”),通過(guò)將已保持的程序計(jì)數(shù)器的值輸出到寄存器62從而更新寄存器62的值。
[0056]寄存器67、68僅在操作數(shù)地址和操作數(shù)接入的屬性被更新吋,保持更新前的值。由于該目的,在寄存器67、68的前級(jí)設(shè)置有觸發(fā)器54。觸發(fā)器54在每個(gè)時(shí)鐘周期保持操作數(shù)地址和操作數(shù)接入的屬性。觸發(fā)器54在總線接受信號(hào)(DCC1H0AACK)被活性化吋,通過(guò)將已保持的操作數(shù)地址和操作數(shù)接入的屬性分別輸出到寄存器67、68從而更新寄存器67、68的內(nèi)容。
[0057]另外,監(jiān)視用寄存器組60雖然不一定設(shè)置在CPU核心10_3的內(nèi)部,但是為了縮短用于傳遞CPUO的內(nèi)部信息的信號(hào)路徑,期望如圖2所示設(shè)置在CPU核心10_3的內(nèi)部。如果將監(jiān)視用寄存器組60設(shè)置在CPU3的外部,則當(dāng)通過(guò)總線20連接監(jiān)視用寄存器組60與CPU3之間時(shí),在總線20掛斷的情況下不能從CPU3接入到監(jiān)視用寄存器組60?;蛘邽榱吮苊庠搯?wèn)題,用多個(gè)專用信號(hào)線連接監(jiān)視用寄存器組60與CPU3之間。
[0058]圖3是用于對(duì)具有四個(gè)CPU的微機(jī)芯片中的CPU核心間的信號(hào)傳送進(jìn)行說(shuō)明的概念圖,不出了各CPU內(nèi)部狀態(tài)的讀出路徑構(gòu)成為樹(shù)狀的例子。
[0059]參照?qǐng)D3,CPU0、1、2的各內(nèi)部信息被轉(zhuǎn)送到設(shè)置在CPU3的監(jiān)視用寄存器組。而且,優(yōu)選將用于保持CPU3自身的內(nèi)部信息的監(jiān)視用寄存器組設(shè)置在CPU3的內(nèi)部。由于設(shè)置在CPU3的監(jiān)視用寄存器組被映射到CPU3的存儲(chǔ)器空間,因此能夠使用搭載有一般的調(diào)試器的存儲(chǔ)器轉(zhuǎn)儲(chǔ)功能,將這些CPUO?3的內(nèi)部信息一并輸出到CPU的外部。即,僅通過(guò)將期望的觀測(cè)對(duì)象映射到CPU3的存儲(chǔ)器空間,就能夠使用存儲(chǔ)器轉(zhuǎn)儲(chǔ)功能而從微機(jī)芯片的外部觀測(cè)這些觀測(cè)對(duì)象。不需要進(jìn)行仿真器或仿真器固件等的調(diào)試器側(cè)的改變。
[0060]另外,在實(shí)際對(duì)程序進(jìn)行調(diào)試時(shí),在初始階段,優(yōu)選將CPU3作為監(jiān)視器專用而僅通過(guò)CPUO?CPU2使程序工作。并且,在某程度進(jìn)行了調(diào)試的階段,使用所有的CPUO?3而使程序工作更有效率。
[0061][監(jiān)視用寄存器組的詳細(xì)]
[0062]圖4是設(shè)置在CPU3的監(jiān)視用寄存器組的ー覽表。圖4所示的地址的高位比特(higher order bit) “XXXX_XX”表示存儲(chǔ)器空間內(nèi)的特定地址。
[0063]圖5是用于對(duì)圖4的各監(jiān)視用寄存器進(jìn)行說(shuō)明的圖。參照?qǐng)D4、圖5,寄存器CRMCPU0PC?CRMCPU3PC (圖2的寄存器61),分別保持CPUO?3的程序計(jì)數(shù)器(PC)的值(32比特:比特b0?b31)。
[0064]寄存器CRMCPU0BPC?CRMCPU3BPC (圖2的寄存器63),分別保持CPUO?3的備份程序計(jì)數(shù)器(BPC)的值(32比持)。
[0065]寄存器CRMCPU00LDPC?CRMCPU30LDPC(圖2的寄存器62),分別保持CPUO?3的程序計(jì)數(shù)器在剛好變?yōu)楫?dāng)前的值之前的值(0LDPC:32比特)。在CPU掛斷時(shí),與當(dāng)前執(zhí)行中的命令相比前ー個(gè)以上的命令成為原因的情況較多,并且為了獲取程序流,重要的是保持I級(jí)以上的程序計(jì)數(shù)器履歷。
[0066]寄存器CRMCPU0PSW?CRMCPU3PSW (圖2的寄存器64),分別保持CPUO?3的程序狀態(tài)字(PSW)的值(32比特)。
[0067]寄存器CRMCPU00AADDR ?CRMCPU30AADDR (圖 2 的寄存器 65),分別保持 CPUO ?3輸出的操作數(shù)接入地址(OAADDR:32比特)。
[0068]寄存器CRMCPU00AATTR ?CRMCPU30AAITR (圖 2 的寄存器 66),保持 CPUO ?3 分別輸出的操作數(shù)接入的屬性(請(qǐng)求R、讀取W、鎖定L、字節(jié)控制BC)。具體地講,R=O的情況表示無(wú)請(qǐng)求,R=I的情況表示有請(qǐng)求。W=O的情況表示寫(xiě)入請(qǐng)求,W=I的情況表示讀取請(qǐng)求。W的值僅在R=I時(shí)為有效。L=O的情況不是鎖定期間中,或者表示是解鎖請(qǐng)求中,L=I的情況表示是鎖定期間中,或者表示是鎖定請(qǐng)求中。字節(jié)控制BC為4比特的字節(jié)控制信號(hào),僅在R=I時(shí)為有效。
[0069]寄存器CRMCPU00LD0AAD ?CRMCPU30LD0AAD (圖 2 的寄存器 67),保持與 CPUO ?3分別輸出的當(dāng)前的操作數(shù)接入地址相比前ー個(gè)操作數(shù)接入地址(0LD0AAD)的值(32比特)。在CPU掛斷時(shí),由干與當(dāng)前執(zhí)行中的操作數(shù)接入相比前ー個(gè)以上的操作數(shù)接入成為原因的情況較多,因此重要的是表示I級(jí)以上的操作數(shù)接入地址的履歷。
[0070]寄存器CRMCPU00LD0AAT ?CRMCPU30LD0AAT(圖 2 的寄存器 68),保持 CPUO ?3 分別輸出的當(dāng)前的操作數(shù)接入的屬性(請(qǐng)求R、讀取W、鎖定L、字節(jié)控制BC)的前ー個(gè)的操作數(shù)接入的屬性。在CPU掛斷時(shí),由于比當(dāng)前執(zhí)行中的操作數(shù)接入ー個(gè)以上之前的操作數(shù)接入成為原因的情況較多,因此重要的是保持I級(jí)以上的操作數(shù)接入的屬性的履歷。
[0071 ] 圖6是示出圖1的CPU3的地址地圖的一例的圖。
[0072]參照?qǐng)D6,H,0000_0000?H,1FFF_FFFF的512M字節(jié)被分割成塊。在各塊中分配16MB的外部區(qū)域。外部區(qū)域通過(guò)圖1的外部總線接ロ 23而接入。圖1的內(nèi)部存儲(chǔ)器、外圍1022被分配到內(nèi)部區(qū)域。
[0073]H,F(xiàn)E00_00000?H,F(xiàn)FFF_FFFF的32M字節(jié)被分配到系統(tǒng)區(qū)域。
[0074]圖4的監(jiān)視用寄存器組例如能夠分配到位于系統(tǒng)區(qū)域內(nèi)的區(qū)域A、或作為內(nèi)部區(qū)域2M字節(jié)的一部分的區(qū)域B等沒(méi)有分配給其他資源的空缺區(qū)域。
[0075][調(diào)試方法的說(shuō)明]
[0076]圖7是用于對(duì)CPUO沒(méi)有掛斷時(shí)的片上調(diào)試方法進(jìn)行說(shuō)明的圖。
[0077]參照?qǐng)D7,將CPU核心10_0自身、能夠從CPU核心10_0接入的內(nèi)部存儲(chǔ)器21、輸入輸出接ロ 22、以及外部總線接ロ 23作為調(diào)試對(duì)象70。
[0078]首先,控制碼從微機(jī)芯片100的外部到達(dá)調(diào)試電路14_0。在此時(shí)的控制碼為操作數(shù)接入時(shí),調(diào)試電路14_0將加載、貯存等命令發(fā)布到CPU核心10_0 (圖7的參照標(biāo)號(hào)71)。CPU核心10_0接受來(lái)自調(diào)試電路14_0的命令,例如,接入到作為觀測(cè)對(duì)象的內(nèi)部存儲(chǔ)器21(圖7的參照標(biāo)號(hào)72)。CPU核心10_0的存儲(chǔ)器接入的結(jié)果,通過(guò)調(diào)試電路14_0、JTAG接ロ15_0、以及JTAG端ロ 28輸出到外部(圖7的參照標(biāo)號(hào)73)。
[0079]圖8是用于對(duì)CPUO掛斷時(shí)的片上調(diào)試方法進(jìn)行說(shuō)明的圖。
[0080]作為CPU核心無(wú)法工作的原因,可以認(rèn)為即使向CPU供給命令,總線接入路徑也已占滿。此時(shí),CPU不能完成先行的操作數(shù)接入處理,而掛斷。作為其他原因,可以認(rèn)為是由于CPU核心內(nèi)的錯(cuò)誤而掛斷的情況等。當(dāng)CPUO掛斷時(shí),不能從調(diào)試對(duì)象系統(tǒng)70向外部發(fā)出信息。
[0081]如已經(jīng)說(shuō)明,在實(shí)施方式I的微機(jī)芯片100中,表示CPUO的內(nèi)部狀態(tài)的信息被轉(zhuǎn)送到CPU核心10_3內(nèi)的監(jiān)視用寄存器組。并且,監(jiān)視用寄存器組被映射到CPU3的存儲(chǔ)器空間。因此,調(diào)試電路14_3通過(guò)向CPU3發(fā)布加載監(jiān)視用寄存器組的內(nèi)容的命令(圖8的參照標(biāo)號(hào)74),能夠?qū)⒁褣鞌嗟腃PUO的信息通過(guò)JTAG接ロ 15_3和JTAG端ロ 28輸出到外部(圖8的參照標(biāo)號(hào)75)。其結(jié)果,能夠比以往更容易地進(jìn)行調(diào)試。[0082]<實(shí)施方式2>
[0083]在實(shí)施方式I中示出了如下例子:內(nèi)部狀態(tài)的讀出路徑構(gòu)成為樹(shù)狀,使得表示CPUO?3的內(nèi)部狀態(tài)的信息被全部轉(zhuǎn)送到設(shè)置于CPU3的監(jiān)視用寄存器組。在實(shí)施方式2中,對(duì)各CPU的內(nèi)部狀態(tài)的讀出路徑的變形例進(jìn)行說(shuō)明。各CPU的內(nèi)部狀態(tài)的讀出路徑,不會(huì)被各CPU的結(jié)合網(wǎng)的方式(片上總線,片上網(wǎng)絡(luò)的各拓?fù)?所左右,而能夠自由地確定,因此本發(fā)明的片上調(diào)試方法適合片上多處理器。例如,即使在結(jié)合網(wǎng)在片上網(wǎng)絡(luò)中取網(wǎng)格結(jié)構(gòu)時(shí),各CPU的內(nèi)部狀態(tài)的讀出路徑通過(guò)取樹(shù)結(jié)構(gòu)而能夠使路徑簡(jiǎn)單化。
[0084]圖9是示出具有四個(gè)CPU的微機(jī)芯片中的各CPU的內(nèi)部狀態(tài)的讀出路徑成為環(huán)形結(jié)構(gòu)的例子的圖。在圖9所示的例子中,CPUO的內(nèi)部信息被轉(zhuǎn)送到設(shè)置于CPUl的監(jiān)視用寄存器組,CPUl的內(nèi)部信息被轉(zhuǎn)送到設(shè)置于CPU3的監(jiān)視用寄存器組,CPU3的內(nèi)部信息被轉(zhuǎn)送到設(shè)置于CPU2的監(jiān)視用寄存器組,CPU2的內(nèi)部信息被轉(zhuǎn)送到設(shè)置于CPUO的監(jiān)視用寄存器組。即,各CPU的內(nèi)部狀態(tài)的讀出路徑成為環(huán)形結(jié)構(gòu)。
[0085]圖10是示出具有四個(gè)CPU的微機(jī)芯片中的各CPU的內(nèi)部狀態(tài)的讀出路徑成為總線結(jié)構(gòu)的例子的圖。在圖10所示的例子中,CPUO?3各自的內(nèi)部信息經(jīng)由總線(BUS)而被轉(zhuǎn)送到設(shè)置于CPUO?3的至少ー個(gè)的監(jiān)視用寄存器組。
[0086]圖11是示出具有七個(gè)CPU的微機(jī)芯片中的各CPU的內(nèi)部狀態(tài)的讀出路徑成為樹(shù)結(jié)構(gòu)的例子的圖。在圖11中,示出了各CPU的內(nèi)部狀態(tài)的讀出路徑構(gòu)成為樹(shù)狀的例子。具體地講,CPU10U1的各內(nèi)部信息被轉(zhuǎn)送到設(shè)置于CPUl的監(jiān)視用寄存器組,CPU20、21的各內(nèi)部信息被轉(zhuǎn)送到設(shè)置于CPU2的監(jiān)視用寄存器組,CPUU2的各內(nèi)部信息被轉(zhuǎn)送到設(shè)置于CPUO的監(jiān)視用寄存器組。
[0087]應(yīng)認(rèn)為此次公開(kāi)的實(shí)施方式在所有的點(diǎn)上為例示而不是限制的。本發(fā)明的范圍由權(quán)利要求表示而不是由上述說(shuō)明表示,意圖包含與權(quán)利要求等同的意思和范圍內(nèi)的所有變更。
[0088]標(biāo)號(hào)說(shuō)明
[0089]0?3CPU,10核心電路(CPU核心),11存儲(chǔ)器管理単元,12數(shù)據(jù)緩存,13指令緩存,14調(diào)試電路,15 JTAG接ロ,20內(nèi)部總線,21內(nèi)部存儲(chǔ)器,22輸入輸出接ロ,23外部總線接ロ,24開(kāi)關(guān)電路,26、27輸入輸出端ロ,28 JTAG端ロ,30特殊寄存器組,31程序計(jì)數(shù)器,33程序狀態(tài)字,41?54觸發(fā)器,60監(jiān)視用寄存器組,100微機(jī)芯片。
【權(quán)利要求】
1.一種半導(dǎo)體裝置,具有: 第I中央處理裝置和第2中央處理裝置;以及 監(jiān)視用寄存器組,設(shè)置在所述第2中央處理裝置的內(nèi)部或外部,在程序的執(zhí)行中表示所述第I中央處理裝置的內(nèi)部狀態(tài)的信息從所述第I中央處理裝置轉(zhuǎn)送到所述監(jiān)視用寄存器組,所述監(jiān)視用寄存器組保持所轉(zhuǎn)送的信息, 所述監(jiān)視用寄存器組映射到所述第2中央處理裝置的存儲(chǔ)器空間。
2.根據(jù)權(quán)利要求1所述的半導(dǎo)體裝置,其中, 所述第2中央處理裝置,包括: 執(zhí)行程序的核心電路;以及 調(diào)試電路,在通過(guò)專用端ロ從所述半導(dǎo)體裝置的外部接收了特定命令時(shí),將映射到存儲(chǔ)器空間的所述監(jiān)視用寄存器組的值輸出到所述核心電路,將所輸出的所述監(jiān)視用寄存器組的值通過(guò)所述專用端ロ而輸出到所述半導(dǎo)體裝置的外部。
3.根據(jù)權(quán)利要求1所述的半導(dǎo)體裝置,其中, 所述第I中央處理裝置包括執(zhí)行程序的核心電路, 所述核心電路具有在程序的執(zhí)行中使用的特殊寄存器組, 所述特殊寄存器組的值作為表示所述第I中央處理裝置的內(nèi)部狀態(tài)的信息,被轉(zhuǎn)送到所述監(jiān)視用寄存器組。
4.根據(jù)權(quán)利要求3所述的半導(dǎo)體裝置,其中, 所述特殊寄存器組包括程序計(jì)數(shù)器。
5.根據(jù)權(quán)利要求3所述的半導(dǎo)體裝置,其中, 所述特殊寄存器組包括對(duì)操作數(shù)地址進(jìn)行保持的寄存器。
6.根據(jù)權(quán)利要求1所述的半導(dǎo)體裝置,其中, 所述第I中央處理裝置包括進(jìn)行虛擬地址與物理地址之間的轉(zhuǎn)換的存儲(chǔ)器管理単元,通過(guò)所述存儲(chǔ)器管理單元而與虛擬地址對(duì)應(yīng)起來(lái)的物理地址的信息作為表示所述第I中央處理裝置的內(nèi)部狀態(tài)的信息,被轉(zhuǎn)送到所述監(jiān)視用寄存器組。
7.根據(jù)權(quán)利要求1所述的半導(dǎo)體裝置,其中, 作為所述監(jiān)視用寄存器組的一部分的一個(gè)或多個(gè)監(jiān)視用寄存器的值,通過(guò)在每個(gè)時(shí)鐘周期從所述第I中央處理裝置轉(zhuǎn)送的信息而被更新。
8.根據(jù)權(quán)利要求1所述的半導(dǎo)體裝置,其中, 所述半導(dǎo)體裝置進(jìn)ー步具有ー個(gè)或多個(gè)保持電路,該ー個(gè)或多個(gè)保持電路分別設(shè)置在作為所述監(jiān)視用寄存器組的一部分的一個(gè)或多個(gè)監(jiān)視用寄存器的前級(jí), 所述ー個(gè)或多個(gè)保持電路分別保持在每個(gè)時(shí)鐘周期從所述第I中央處理裝置轉(zhuǎn)送的新的信息, 所述ー個(gè)或多個(gè)保持電路各自僅在已保持的信息的值變化時(shí),通過(guò)變化前的信息來(lái)更新對(duì)應(yīng)的監(jiān)視用寄存器的值。
9.根據(jù)權(quán)利要求1所述的半導(dǎo)體裝置,其中, 所述半導(dǎo)體裝置進(jìn)ー步具有ー個(gè)或多個(gè)保持電路,該ー個(gè)或多個(gè)保持電路分別設(shè)置在作為所述監(jiān)視用寄存器組的一部分的一個(gè)或多個(gè)監(jiān)視用寄存器的前級(jí), 所述ー個(gè)或多個(gè)保持電路各自保持在每個(gè)時(shí)鐘周期從所述第I中央處理裝置轉(zhuǎn)送的新的信息, 所述ー個(gè)或多個(gè)保持電路各自在從所述第I中央處理裝置接收的特定的信號(hào)被活性化的期間,通過(guò)已保持的信息來(lái) 更新對(duì)應(yīng)的寄存器的保持內(nèi)容。
【文檔編號(hào)】G06F11/28GK103443776SQ201280014595
【公開(kāi)日】2013年12月11日 申請(qǐng)日期:2012年2月20日 優(yōu)先權(quán)日:2011年3月24日
【發(fā)明者】大谷壽賀子, 近藤弘郁 申請(qǐng)人:瑞薩電子株式會(huì)社
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1