欧美在线观看视频网站,亚洲熟妇色自偷自拍另类,啪啪伊人网,中文字幕第13亚洲另类,中文成人久久久久影院免费观看 ,精品人妻人人做人人爽,亚洲a视频

具有調(diào)試單元的信息處理設(shè)備及其調(diào)試方法

文檔序號:6354793閱讀:383來源:國知局
專利名稱:具有調(diào)試單元的信息處理設(shè)備及其調(diào)試方法
技術(shù)領(lǐng)域
本發(fā)明涉及信息處理設(shè)備、調(diào)試單元以及信息處理設(shè)備的調(diào)試方法。
背景技術(shù)
在專利文獻(xiàn)1 (JP 2006-252006A)所述的示例中,通過利用異步通信單元(UART 通用異步收發(fā)器),將1針式外部端子用于外部工具(主裝置)與在其中設(shè)立有微控制器 (MCU)的調(diào)試單元之間的接口。從CPU(中央處理單元)向異步通信單元發(fā)出發(fā)送/接收指令,并且從時鐘振蕩器提供異步通信單元的操作時鐘信號。該時鐘信號也被供給CPU。因此,當(dāng)微控制器改變?yōu)榈凸哪J揭酝V箷r鐘信號時,異步通信單元也停止,以中止與外部工具的通信,因此導(dǎo)致調(diào)試操作中斷。專利文獻(xiàn)2 (日本專利No. 4145146)公開了一種將后臺調(diào)試系統(tǒng)用于外部工具 (主單元)與在其中設(shè)立有微控制器(MCU)的調(diào)試單元之間的接口。在具有微控制器的調(diào)試單元中,將1針式外部端子用于與外部工具的接口。后臺調(diào)試系統(tǒng)可獨立于CPU操作。通過來自時鐘單元的專用后臺調(diào)試時鐘信號來提供操作時鐘。當(dāng)通過EN_BDM信號向時鐘單元通知后臺調(diào)試系統(tǒng)的啟動時,即使停止向CPU等提供時鐘信號,也不停止提供后臺調(diào)試時鐘信號。在這一點上,專利文獻(xiàn)2中公開的技術(shù)與專利文獻(xiàn)1中公開的技術(shù)有很大區(qū)別。專利文獻(xiàn)2進(jìn)一步公開了將后臺調(diào)試系統(tǒng)與外部工具之間的通信速率同步的方法,分頻時鐘信號被從時鐘控制部提供給后臺調(diào)試系統(tǒng),時鐘控制部具有將時鐘信號分頻的功能。通信速率同步程序如下。首先,外部工具輸出同步請求。當(dāng)檢測到同步請求時,后臺調(diào)試系統(tǒng)響應(yīng)該請求輸出“L”脈沖,“L”脈沖的寬度為預(yù)定數(shù)量的時鐘(1 個周期)。 外部工具可通過測量“L”脈沖的寬度(時間),識別后臺調(diào)試系統(tǒng)使用的后臺調(diào)試時鐘信號的時鐘速率。外部工具以與后臺調(diào)試時鐘的時鐘速率相同的時鐘速率進(jìn)行通信。通過這種方式,可將通信速率同步。如上所述,當(dāng)啟動后臺調(diào)試系統(tǒng)時,即使微控制器(MCU)停止其時鐘信號并切換到低功耗模式,也不停止后臺調(diào)試時鐘。因此,微控制器可在任何時候與外部工具通信,從而繼續(xù)調(diào)試操作。但是,根據(jù)將微控制器切換到低功耗模式的一般方法,經(jīng)常根據(jù)待調(diào)試的用戶應(yīng)用程序改變時鐘控制部的分頻比。因此,當(dāng)微控制器(MCU)切換到低速時鐘模式時, 也就是說,當(dāng)共同地提供低功耗模式、時鐘控制部和振蕩器時,后臺調(diào)試時鐘信號的時鐘速率的轉(zhuǎn)換點通常與后臺調(diào)試系統(tǒng)與外部工具之間的通信狀態(tài)無關(guān),并且通信速率可能異步地改變,導(dǎo)致錯誤通信。換而言之,不能正常地繼續(xù)調(diào)試操作。專利文獻(xiàn)2公開了將后臺調(diào)試系統(tǒng)與外部工具之間的通信速率同步的方法。但是,根據(jù)通信速率同步方法,因為是響應(yīng)于外部工具的同步請求來啟動開始同步程序,所以即使在調(diào)試操作期間(特別是在通信期間)改變時鐘控制部的分頻比時,外部工具也不能在正確的時序改變通信速率。因此,因為外部工具沒有手段和方法來檢測改變后臺調(diào)試時鐘信號的時鐘速率的時序,所以不可能避免上述錯誤通信。參考文獻(xiàn)
[專利文獻(xiàn) 1] JP 2006-252006A[專利文獻(xiàn)2]日本專利No. 414514
發(fā)明內(nèi)容
本發(fā)明提供一種調(diào)試單元、通信方法和信息處理設(shè)備,能以適合于通信內(nèi)容的通信速率發(fā)送/接收數(shù)據(jù),而不會引起通信錯誤,因此能最佳地維持調(diào)試功能的執(zhí)行。在本發(fā)明的一個方面,一種信息處理設(shè)備包括外部工具單元,配置為向調(diào)試用戶提供人機接口 ;以及微控制器。微控制器包括CPU部,配置為響應(yīng)于第一時鐘信號執(zhí)行作為調(diào)試目標(biāo)的程序,其中,響應(yīng)于來自CPU部的指示改變第一時鐘信號的時鐘速率;第一發(fā)送部,配置為響應(yīng)于第一時鐘信號向外部工具單元發(fā)送調(diào)試數(shù)據(jù);第二發(fā)送部,配置為響應(yīng)于與第一時鐘信號不同的第二時鐘信號向外部工具單元發(fā)送調(diào)試數(shù)據(jù);以及接收部,配置為接收從外部工具單元發(fā)送的數(shù)據(jù)。在本發(fā)明的另一方面,一種微控制器包括CPU部,配置為響應(yīng)于第一時鐘信號執(zhí)行作為調(diào)試目標(biāo)的程序,其中,基于來自CPU部的指示改變第一時鐘信號的時鐘速率;第一發(fā)送部,配置為響應(yīng)于第一時鐘信號向外部工具單元發(fā)送調(diào)試數(shù)據(jù),外部工具單元具有與調(diào)試用戶的人機接口 ;第二發(fā)送部,配置為響應(yīng)于與第一時鐘信號不同的第二時鐘信號向外部工具單元發(fā)送調(diào)試數(shù)據(jù);以及接收部,配置為接收從外部工具單元發(fā)送的數(shù)據(jù)。在本發(fā)明的另一方面,一種調(diào)試設(shè)備包括第一發(fā)送部,配置為響應(yīng)于第一時鐘信號向外部工具單元發(fā)送調(diào)試數(shù)據(jù),其中,基于來自CPU部的指令改變第一時鐘信號的時鐘速率,CPU部執(zhí)行作為調(diào)試目標(biāo)的程序;第二發(fā)送部,配置為響應(yīng)于與第一時鐘信號不同的第二時鐘信號向外部工具單元發(fā)送調(diào)試數(shù)據(jù);以及接收部,配置為接收從外部工具單元發(fā)送的數(shù)據(jù)。在本發(fā)明的另一方面,一種外部工具單元包括接收部,配置為接收響應(yīng)于第一時鐘信號從執(zhí)行作為調(diào)試目標(biāo)的程序的微控制器的第一發(fā)送部發(fā)送的調(diào)試數(shù)據(jù),并接收基于與第一時鐘信號不同的第二時鐘信號從微控制器的第二發(fā)送部發(fā)送的調(diào)試數(shù)據(jù),第一時鐘信號的時鐘速率基于來自CPU部的指令而被改變;以及工具發(fā)送部,配置為向微控制器的接收部發(fā)送指令。在本發(fā)明的另一方面,提供一種通過使用微控制器和外部工具單元的調(diào)試方法, 微控制器響應(yīng)于第一時鐘信號執(zhí)行作為調(diào)試目標(biāo)的程序,外部工具單元向調(diào)試用戶提供人機接口。調(diào)試方法通過以下步驟實現(xiàn)響應(yīng)于第一時鐘信號從微控制器的第一發(fā)送部向外部工具單元發(fā)送調(diào)試數(shù)據(jù);響應(yīng)于與第一時鐘信號不同的第二時鐘信號從微控制器的第二發(fā)送部向外部工具單元發(fā)送調(diào)試數(shù)據(jù);通過微控制器中的接收部接收從外部工具單元發(fā)送的數(shù)據(jù);以及基于來自微控制器的指令而改變第一時鐘信號的時鐘速率。根據(jù)本發(fā)明,可提供信息處理設(shè)備、信息處理設(shè)備的調(diào)試單元和調(diào)試方法,其中即使獨立于調(diào)試操作根據(jù)用戶程序改變了系統(tǒng)時鐘速率,也能最佳地維持調(diào)試通信速率,不會由于外部工具引起任何通信錯誤。


根據(jù)下面一些實施例結(jié)合附圖的描述,本發(fā)明的上述及其他目的、優(yōu)點和特點將更加明顯,附圖中圖1是方框圖,示出根據(jù)本發(fā)明第一實施例的信息處理設(shè)備的構(gòu)造;圖2是方框圖,示出CPU部201的構(gòu)造;圖3是方框圖,示出發(fā)送和接收部301的構(gòu)造;圖4是方框圖,示出發(fā)送部400的構(gòu)造;圖5是方框圖,示出外部工具501的構(gòu)造;圖6是示意圖,示出通信速率管理表521的構(gòu)造;圖7是示意圖,示出第一實施例中描述的指令;圖8A至圖8D是示意圖,示出微控制器101與外部工具501之間的通信中的傳輸格式;圖9是流程圖,示出外部工具501的操作;圖10是流程圖,示出發(fā)送和接收部301的操作;圖11是方框圖,示出根據(jù)本發(fā)明第二實施例的信息處理設(shè)備的構(gòu)造;圖12是方框圖,示出CPU部202的構(gòu)造;圖13是方框圖,示出發(fā)送和接收部302的構(gòu)造;圖14是方框圖,示出發(fā)送部402的構(gòu)造;圖15是方框圖,示出外部工具502的構(gòu)造;圖16是示意圖,示出第二實施例中的指令;圖17是方框圖,示出通信速率管理表522的構(gòu)造;圖18A至圖18E是示意圖,示出微控制器102與外部工具502之間的通信中的傳輸格式;圖19A至圖19C是示意圖,示出發(fā)送/接收數(shù)據(jù)的格式;圖20是流程圖,示出外部工具502的操作;圖21是流程圖,示出數(shù)據(jù)跟蹤結(jié)束時外部工具502的操作;以及圖22A和圖22B是流程圖,示出發(fā)送和接收部302的操作。
具體實施例方式
下面參照附圖描述根據(jù)本發(fā)明的信息處理設(shè)備。[第一實施例]圖1是方框圖,示出根據(jù)本發(fā)明的信息處理設(shè)備中與調(diào)試操作有關(guān)的構(gòu)造。信息處理設(shè)備包括微控制器(MCU) 101和外部工具501。這里,可將外部工具501設(shè)置在信息處理設(shè)備中或與信息處理設(shè)備分離。外部工具向用戶提供人機接口。微控制器101設(shè)置有發(fā)送和接收部301、發(fā)送部401、CPU部201、調(diào)試時鐘產(chǎn)生部150、同步電路130和140、時鐘速率顯示寄存器120以及時鐘產(chǎn)生部110。除了 CPU部201之外的部分構(gòu)成所謂的調(diào)試單元,并且CPU部201具有支持調(diào)試操作的功能。在這些部分中,發(fā)送和接收部301、發(fā)送部 401和時鐘速率顯示寄存器120是本發(fā)明的特征。本發(fā)明的特征還在于,將調(diào)試時鐘產(chǎn)生部 150輸出的調(diào)試時鐘信號DCLK提供給發(fā)送和接收部301,將CPU部201產(chǎn)生的系統(tǒng)時鐘信號SCLK提供給發(fā)送部401。本實施例將實現(xiàn)RAM監(jiān)視器功能的示例示出為調(diào)試功能之一。 同步電路130和140是用于將在其中基準(zhǔn)操作時鐘信號不同的部分之間輸入/輸出的信號同步的電路。因為在同步前后信號的含義不變,所以通過將表示同步之前的信號的符號加上“(SYN) ”來表示同步之后的信號。圖2是方框圖,示出CPU部201的構(gòu)造。CPU部201包括CPU 210、ROM 220、RAM 230、系統(tǒng)時鐘控制部MO、RAM地址設(shè)定寄存器250以及RAM監(jiān)視器控制部沈0,并且CPU 部201支持RAM監(jiān)視器功能作為調(diào)試功能。ROM 220是在其中存儲用戶應(yīng)用程序的只讀存儲器。RAM230是在其中保持執(zhí)行用戶應(yīng)用程序所需數(shù)據(jù)的隨機訪問存儲器。RAM230有一個訪問端口來自CPU 201,有一個訪問端口來自RAM監(jiān)視器控制部260。CPU 201是執(zhí)行在 ROM 220中存儲的用戶應(yīng)用程序的中央處理單元。RAM地址設(shè)定寄存器250是保持用于訪問RAM 230的地址的寄存器,以用于調(diào)試操作。通過調(diào)試局部總線DLB,將要訪問的地址設(shè)定在RAM地址設(shè)定寄存器250中。設(shè)定的地址被通知給RAM監(jiān)視器控制部沈0。RAM監(jiān)視器控制部260基于從RAM地址設(shè)定寄存器250通知的RAM地址向RAM 230產(chǎn)生訪問周期。通過RAM監(jiān)視器數(shù)據(jù)信號RMNT將作為訪問結(jié)果獲得的數(shù)據(jù)輸出到發(fā)送部401。通過調(diào)試局部總線DLB,通過在RAM監(jiān)視器控制部 260中設(shè)定RAM訪問開始控制位來進(jìn)行對RAM 230的訪問。系統(tǒng)時鐘控制部240將基于輸入時鐘信號ICLK產(chǎn)生的系統(tǒng)時鐘信號SCLK輸出。 也就是說,系統(tǒng)時鐘控制部240具有將時鐘信號ICLK分頻并停止時鐘信號的功能,并且可以從CPU 210設(shè)定。此外,系統(tǒng)時鐘控制部240在進(jìn)行時鐘速率的改變之前例如分頻和停止時鐘之前輸出時鐘速率改變請求信號CREQ。之后,當(dāng)響應(yīng)時鐘速率改變請求信號CREQ從發(fā)送和接收部301輸出的時鐘速率改變確認(rèn)信號CACK被設(shè)定為生效時,系統(tǒng)時鐘控制部240 改變時鐘速率。在本實施例中,將未經(jīng)過分頻的系統(tǒng)時鐘信號的時鐘速率稱為“高速系統(tǒng)時鐘速率”,將經(jīng)過分頻的系統(tǒng)時鐘信號的時鐘速率稱為“低速系統(tǒng)時鐘速率”,將系統(tǒng)時鐘信號被停止的狀態(tài)稱為“系統(tǒng)時鐘停止”。當(dāng)然,在“系統(tǒng)時鐘停止”狀態(tài)中,CPU部201停止其操作。響應(yīng)向CPU部201輸入復(fù)位請求、以及中斷等,進(jìn)行“系統(tǒng)時鐘停止”狀態(tài)的取消。 在初始狀態(tài)中,已經(jīng)設(shè)定“高速系統(tǒng)時鐘速率”。如圖3所示,發(fā)送和接收部301包括序列控制部311、發(fā)送部405、接收數(shù)據(jù)采樣部 321、接收移位器330、指令緩沖部340、寫入數(shù)據(jù)緩沖部350以及指令執(zhí)行部360。序列控制部311在實現(xiàn)RAM監(jiān)視器處理中起主要作用,并進(jìn)行發(fā)送/接收程序控制、指令分析、指令執(zhí)行的指示、系統(tǒng)時鐘控制部240的時鐘速率改變確認(rèn)控制以及添加INFO位的指示。下面描述詳細(xì)操作。接收數(shù)據(jù)采樣部321基于調(diào)試時鐘信號DCLK對表示從外部工具501傳輸?shù)臄?shù)據(jù)的調(diào)試通信輸入信號DI異步地采樣,并將獲得的1位數(shù)據(jù)輸出到接收移位器330。接收數(shù)據(jù)采樣部321還具有檢測開始位(STR位)和停止位(STP位)的功能,用于識別接收的開始和結(jié)束。當(dāng)開始位被用于僅檢測接收的開始并且不作為1位數(shù)據(jù)輸出時,將停止位的2 位數(shù)據(jù)值輸出到接收移位器330。接收移位器330是11位移位寄存器,其從接收數(shù)據(jù)采樣部321接收1位數(shù)據(jù),并逐位移位以進(jìn)行串行-并行轉(zhuǎn)換。當(dāng)移位了 11位時,接收移位器330通過接收數(shù)據(jù)信號RCVD 將位0至位7輸出作為接收數(shù)據(jù)。同時,接收移位器330激活接收結(jié)束信號RVED并通知序列控制部311已經(jīng)從外部工具501接收到接收數(shù)據(jù)。當(dāng)將指令獲得信號CMGT設(shè)定為生效時,指令緩沖部340通過接收數(shù)據(jù)信號RCVD接收8位接收數(shù)據(jù),從接收到的數(shù)據(jù)中提取指令代碼(CMD
),并通過指令數(shù)據(jù)信號CD 將提取的指令代碼輸出到序列控制部311。當(dāng)將寫入數(shù)據(jù)獲得信號WDGT設(shè)定為生效時,寫入數(shù)據(jù)緩沖部350通過接收數(shù)據(jù)信號RCVD接收8位接收數(shù)據(jù),并通過寫入數(shù)據(jù)信號WD將接收數(shù)據(jù)輸出到指令執(zhí)行部360。當(dāng)將指令執(zhí)行開始信號CST設(shè)定為生效時,指令執(zhí)行部360進(jìn)行與每個指令相對應(yīng)的操作。指令執(zhí)行開始信號CST包含正在處理的指令數(shù)據(jù)。當(dāng)指令處理被結(jié)束時,指令執(zhí)行部360向序列控制部311輸出指令執(zhí)行結(jié)束信號CED。例如,當(dāng)正在處理的指令數(shù)據(jù)指示寫入數(shù)據(jù)傳輸指令“02H” (RAM地址設(shè)定寄存器寫入),指令執(zhí)行部360通過8位寫入數(shù)據(jù)信號WD接收數(shù)據(jù)并將數(shù)據(jù)輸出到指令執(zhí)行部寫入總線WB。將數(shù)據(jù)輸出后,指令執(zhí)行部360輸出指令執(zhí)行結(jié)束信號CED。當(dāng)指令數(shù)據(jù)指示讀取數(shù)據(jù)傳輸指令“00H” (時鐘速率顯示寄存器讀取)時,指令執(zhí)行部360通過指令執(zhí)行部讀取總線RB接收8位數(shù)據(jù),通過指令執(zhí)行部讀取數(shù)據(jù)輸出信號CRDO將數(shù)據(jù)輸出到發(fā)送部405,并將指令執(zhí)行結(jié)束信號CED輸出到序列控制部311。例如“00H”這樣的符號表示十六進(jìn)制數(shù)字。圖4是方框圖,示出發(fā)送部400的構(gòu)造。發(fā)送部405安裝在發(fā)送和接收部301中, 并且發(fā)送部401與圖4所示發(fā)送部400相同的構(gòu)造,包括讀取數(shù)據(jù)緩沖部410和發(fā)送移位器 420。讀取數(shù)據(jù)緩沖部410通過數(shù)據(jù)輸入信號RDI接收和保持8位數(shù)據(jù),并輸出讀取緩沖部有效信號BVD。這里,對于發(fā)送部405,數(shù)據(jù)輸入信號RDI與從指令執(zhí)行部360提供的指令執(zhí)行部讀取數(shù)據(jù)輸出信號CRDO相對應(yīng),對于發(fā)送部401,數(shù)據(jù)輸入信號RDI與從CPU部201 輸出的RAM監(jiān)視器數(shù)據(jù)信號RMNT相對應(yīng)。對于發(fā)送部405,讀取緩沖部有效信號BVD與輸出到序列控制部311的讀取緩沖部有效信號BVDB相對應(yīng),對于發(fā)送部401,讀取緩沖部有效信號BVD與通過同步電路140輸出到序列控制部311的讀取緩沖部有效信號BVDA相對應(yīng)。發(fā)送移位器420是12位移位寄存器。當(dāng)將發(fā)送開始信號SST設(shè)定為生效時,將存儲在讀取數(shù)據(jù)緩沖部410中的8位數(shù)據(jù)設(shè)定到發(fā)送移位器420,并根據(jù)圖8A至圖8D所示的讀取數(shù)據(jù)傳輸格式,在輸入時鐘信號CLK的時鐘速率下將其移位和輸出作為發(fā)送部輸出信號RD0。當(dāng)在移位和輸出中將INFO信息設(shè)定請求信號SIQ設(shè)定為生效時,發(fā)送移位器420 將位9的INFO位設(shè)定為在激活狀態(tài)中的“1”。當(dāng)完成12位數(shù)據(jù)的移位和輸出時,發(fā)送移位器420激活發(fā)送結(jié)束信號SED。這里,對于發(fā)送部401,輸入時鐘信號CLK與系統(tǒng)時鐘信號 SCLK相對應(yīng),對于發(fā)送部405,輸入時鐘信號CLK與調(diào)試時鐘信號DCLK相對應(yīng)。對于發(fā)送部401,發(fā)送開始信號SST與發(fā)送開始信號SSTA (SYN)相對應(yīng),對于發(fā)送部405,發(fā)送開始信號SST與發(fā)送開始信號SSTB相對應(yīng)。對于發(fā)送部401,發(fā)送部輸出信號RDO與發(fā)送部輸出信號SDO相對應(yīng),對于發(fā)送部405,發(fā)送部輸出信號RDO與發(fā)送部輸出信號SRO相對應(yīng)。對于發(fā)送部401,INFO信息設(shè)定請求信號SIQ與INFO信息設(shè)定請求信號SIQA(SYN)相對應(yīng), 對于發(fā)送部405,INFO信息設(shè)定請求信號SIQ與INFO信息設(shè)定請求信號SIQB相對應(yīng)。對于發(fā)送部401,發(fā)送結(jié)束信號SED與發(fā)送結(jié)束信號SEDA相對應(yīng),對于發(fā)送部405,發(fā)送結(jié)束信號SED與發(fā)送結(jié)束信號SEDB相對應(yīng)。圖5是方框圖,示出外部工具501的構(gòu)造。外部工具501包括工具控制部511、通信速率管理表521、工具發(fā)送部530以及工具接收部M0。工具發(fā)送部530基于預(yù)定的傳輸格式,通過調(diào)試通信輸入/輸出信號DIO將來自外部工具501的數(shù)據(jù)發(fā)送到微控制器101。 工具接收部540基于預(yù)定的傳輸格式,通過調(diào)試通信輸入/輸出信號DIO接收從微控制器101發(fā)送到外部工具501的數(shù)據(jù)。參照通信速率管理表521,工具控制部511此時控制通信速率。圖6示出通信速率管理表521的構(gòu)造。通信速率管理表521與指令代碼CMD相關(guān)聯(lián)地存儲與微控制器101相通信的發(fā)送時鐘速率和接收時鐘速率的數(shù)據(jù)。參照表格,工具控制部511基于每個發(fā)出的指令,適當(dāng)?shù)剞D(zhuǎn)換發(fā)送時鐘速率和接收時鐘速率。工具控制部 511根據(jù)必要性更新表格的內(nèi)容。圖7示出本實施例中所述指令的內(nèi)容。通過從外部工具501發(fā)出這些指令并通過微控制器101處理指令來實現(xiàn)本實施例中所述的RAM監(jiān)視器功能。圖8A至圖8B是示意圖,示出通過使用調(diào)試通信輸入/輸出信號DIO在微控制器 101與外部工具501之間的通信中的讀取/寫入傳輸格式。固定為“0”的開始位(STR)被分配到位0,8位數(shù)據(jù)被分配到位1至位8,預(yù)定數(shù)據(jù)被分配到位9,固定為“ 1 ”的停止位(STP) 被分配到位10至位11。以傳輸格式來傳輸通過外部工具501發(fā)出并通過微控制器101執(zhí)行的指令。如圖8A所示,根據(jù)讀取指令傳輸格式,指令代碼CMD被分配到位1至位2,不使用位3至位8,位9固定為“0”。如圖8B所示,根據(jù)讀取數(shù)據(jù)傳輸格式,傳輸?shù)?位讀取數(shù)據(jù)被分配到位1至位8。根據(jù)讀取數(shù)據(jù)傳輸格式,指示時鐘速率顯示寄存器120已經(jīng)被更新的INFO位被分配到位9。如圖8C所示,根據(jù)寫入指令傳輸格式,指令代碼CMD被分配到位 1至位2,不使用位3至位8,位9固定為“0”。如圖8D所示,根據(jù)寫入數(shù)據(jù)傳輸格式,傳輸?shù)?位寫入數(shù)據(jù)被分配到位1至位8。下面,描述本實施例的操作的要點。通過使用單針,發(fā)送和接收部301和發(fā)送部 401通過使用調(diào)試通信輸入/輸出信號DIO異步地與外部工具501通信。根據(jù)圖8A至圖 8D所示的讀取/寫入傳輸格式進(jìn)行通信。進(jìn)行寫入傳輸如下。當(dāng)圖7所示的要求寫入傳輸?shù)闹噶畲a(CMD W: 1])從外部工具501傳輸?shù)桨l(fā)送和接收部301時,發(fā)送和接收部301接收并分析指令,然后執(zhí)行指令。 例如,當(dāng)指令代碼(CMDW:1])為“02H”(RAM地址設(shè)定寄存器寫入)時,發(fā)送和接收部301 在指令的傳輸之后接收從外部工具501傳輸?shù)臄?shù)據(jù),并通過同步電路130將數(shù)據(jù)輸出到調(diào)試局部總線DLB以進(jìn)行寫入周期。傳輸?shù)臄?shù)據(jù)被寫入設(shè)置在CPU部201中的RAM地址設(shè)定寄存器250中。進(jìn)行讀取傳輸如下。當(dāng)圖7所示要求讀取傳輸?shù)闹噶畲a(CMD W: 1])從外部工具501傳輸?shù)桨l(fā)送和接收部301時,發(fā)送和接收部301接收并分析指令,然后執(zhí)行指令。例如,當(dāng)指令代碼(CMDW:1])為“03H”(RAM監(jiān)視器讀取)時,發(fā)送和接收部301通過同步電路130將控制數(shù)據(jù)輸出到調(diào)試局部總線DLB以進(jìn)行寫入周期,并指示RAM監(jiān)視器控制部260 開始對RAM 230的讀取訪問。響應(yīng)來自發(fā)送和接收部301的指示,RAM監(jiān)視器控制部260基于保持在RAM地址設(shè)定寄存器250中的RAM地址進(jìn)行對RAM 230的讀取訪問。通過RAM監(jiān)視器數(shù)據(jù)信號RMNT 將作為讀取訪問的結(jié)果獲得的數(shù)據(jù)輸出到發(fā)送部401。發(fā)送部401以系統(tǒng)時鐘信號SCLK的時鐘速率通過發(fā)送部輸出信號SDO輸出RAM監(jiān)視器數(shù)據(jù)。根據(jù)圖8B所示的傳輸格式傳輸 RAM監(jiān)視器數(shù)據(jù)。用于發(fā)送部輸出信號SDO的總線是與用于調(diào)試通信輸入/輸出信號DIO 的總線相連接的三態(tài)總線。因此,通過調(diào)試通信輸入/輸出信號DIO將從發(fā)送部401輸出的RAM監(jiān)視器數(shù)據(jù)傳輸?shù)酵獠抗ぞ?01。
在將指令“03H”(RAM監(jiān)視器讀取)傳輸?shù)轿⒖刂破?01之后,外部工具501準(zhǔn)備通過調(diào)試通信輸入/輸出信號DIO獲得從微控制器101輸出的RAM監(jiān)視器數(shù)據(jù)。換言之, 參考通信速率管理表521,工具控制部511將用于接收響應(yīng)指令“03H”而被傳輸?shù)臄?shù)據(jù)的接收時鐘速率設(shè)定到工具接收部M0。之后,工具接收部540通過調(diào)試通信輸入/輸出信號DIO接收從CPU部201輸出到外部工具501的RAM監(jiān)視器數(shù)據(jù)。然后,外部工具501在顯示單元等上顯示獲得的RAM監(jiān)視器數(shù)據(jù),以將RAM監(jiān)視器數(shù)據(jù)通知給進(jìn)行調(diào)試的用戶。類似地,當(dāng)指令代碼(CMDW:1])為“00H”(時鐘速率顯示寄存器讀取)時,發(fā)送和接收部301通過指令執(zhí)行部讀取總線RB讀取設(shè)置到時鐘速率顯示寄存器120的數(shù)據(jù)。發(fā)送部405以調(diào)試時鐘速率通過發(fā)送和接收部輸出信號SRO輸出讀取數(shù)據(jù)。在將指令“00H”(時鐘速率顯示寄存器讀取)傳輸?shù)轿⒖刂破?01之后,外部工具 501準(zhǔn)備通過調(diào)試通信輸入/輸出信號DIO獲得從微控制器101輸出的數(shù)據(jù)。換言之,參考通信速率管理表521,工具控制部511將用于接收響應(yīng)指令“00H”而被傳輸?shù)臄?shù)據(jù)的接收時鐘速率設(shè)定到工具接收部M0。之后,工具接收部540通過調(diào)試通信輸入/輸出信號DIO 接收從微控制器101輸出到外部工具501的數(shù)據(jù)。獲得的數(shù)據(jù)用于控制工具接收部MO的接收速率。微控制器101具有降低時鐘速率以轉(zhuǎn)換到低功耗模式的功能。因此,在包括上述通信處理的調(diào)試處理過程中,微控制器101可降低系統(tǒng)時鐘速率。在這種情況下,根據(jù)以下程序改變系統(tǒng)時鐘信號SCLK的速率。例如,給出一個示例為,在處理指令“03H”(RAM監(jiān)視器讀取)之前或處理指令 “03H”(RAM監(jiān)視器讀取)的過程中,CPU 210請求系統(tǒng)時鐘控制部240改變時鐘速率。在這種情況下,系統(tǒng)時鐘控制部240激活時鐘速率改變請求信號CREQ,將其通知發(fā)送和接收部301并將指示已改變的速率的數(shù)據(jù)設(shè)定到時鐘速率顯示寄存器120。當(dāng)將時鐘速率改變請求信號CREQ設(shè)定為生效時,發(fā)送和接收部301激活I(lǐng)NFO信息設(shè)定請求信號SIQA,將其通知發(fā)送部401。當(dāng)將INFO信息設(shè)定請求信號SIQA設(shè)定為生效時,發(fā)送部401將位9的INFO位激活為生效狀態(tài)(“1”)并進(jìn)行讀取數(shù)據(jù)傳輸。當(dāng)將接收到的數(shù)據(jù)的INFO位設(shè)定為生效時,外部工具501發(fā)出指令“00H” (時鐘速率顯示寄存器讀取),獲得并分析時鐘速率顯示寄存器120的內(nèi)容。當(dāng)將位7的“請求”位設(shè)定為生效時(參照圖7),外部工具501根據(jù)在位0至位2顯示的系統(tǒng)時鐘速率更新在通信速率管理表521中的指令“03H”的接收時鐘速率列(參照圖6)。之后,當(dāng)發(fā)出指令“03H” 以接收RAM監(jiān)視器數(shù)據(jù)時,使用更新的接收時鐘速率數(shù)據(jù)。因此,工具接收部540能以改變的系統(tǒng)時鐘速率正常地接收數(shù)據(jù)。
一旦讀取之后,在位7的“請求”位就自動清除。當(dāng)在位0至位2顯示的系統(tǒng)時鐘速率表示“系統(tǒng)時鐘停止”時,外部工具501重復(fù)地讀取時鐘速率顯示寄存器120并等待直到系統(tǒng)時鐘速率表示“高速系統(tǒng)時鐘速率”或“低速系統(tǒng)時鐘速率”。當(dāng)完成來自發(fā)送部401的包括INFO位的數(shù)據(jù)的發(fā)送以后,發(fā)送部401通過同步電路140將發(fā)送結(jié)束信號SEDC通知發(fā)送和接收部301以指示發(fā)送的結(jié)束。當(dāng)從發(fā)送部401 被通知發(fā)送的結(jié)束時,發(fā)送和接收部301激活發(fā)送到CPU部201的系統(tǒng)時鐘控制部MO的時鐘速率改變確認(rèn)信號CACK。當(dāng)將時鐘速率改變確認(rèn)信號CACK設(shè)定為生效時,系統(tǒng)時鐘控制部240改變系統(tǒng)時鐘信號SCLK的時鐘速率。
下面進(jìn)一步描述每個部分的詳細(xì)操作。圖9和圖10示出與實現(xiàn)RAM監(jiān)視器功能所需的指令處理有關(guān)的操作以及用于系統(tǒng)時鐘信號SCLK的改變確認(rèn)控制的操作。圖9是流程圖,示出在RAM監(jiān)視器功能以及系統(tǒng)時鐘信號SCLK的改變確認(rèn)控制中外部工具501的操作。參照圖9,下面描述外部工具501的操作。在步驟S102,參考通信速率管理表521,工具控制部511將在發(fā)出指令“ 02H” (RAM 地址設(shè)定寄存器寫入)中的適合于寫入指令傳輸和寫入數(shù)據(jù)傳輸?shù)臅r鐘速率設(shè)定到工具發(fā)送部530。對于指令“02H”,如圖6所示,發(fā)送時鐘速率變?yōu)椤罢{(diào)試時鐘速率”。在步驟S104,以調(diào)試時鐘速率通過調(diào)試通信輸入/輸出信號DIO將CMD W: 1]= “02H”發(fā)送到微控制器101。在步驟S106,以調(diào)試時鐘速率通過調(diào)試通信輸入/輸出信號DIO發(fā)送期望的8位 RAM地址值。在步驟S108,參考通信速率管理表521,工具控制部511將在發(fā)出指令“03H” (RAM 監(jiān)視器讀取)中的適合于讀取指令傳輸和讀取數(shù)據(jù)傳輸?shù)臅r鐘速率設(shè)定到工具發(fā)送部530 和工具接收部討0。對于指令“03H”,如圖6所示,發(fā)送時鐘速率變?yōu)椤罢{(diào)試時鐘速率”,接收時鐘速率變?yōu)椤案咚傧到y(tǒng)時鐘速率(初始值)”。在步驟S110,工具發(fā)送部530以調(diào)試時鐘速率通過調(diào)試通信輸入/輸出信號DIO CMD
= 03H的數(shù)據(jù)發(fā)送到微控制器101。在步驟Sl 12,工具接收部MO以高速系統(tǒng)時鐘速率通過調(diào)試通信輸入/輸出信號 DIO接收從微控制器101的發(fā)送部401輸出的8位RAM監(jiān)視器數(shù)據(jù)和INFO位。在步驟S114,外部工具501進(jìn)行處理,以在顯示單元上顯示接收到的RAM監(jiān)視器數(shù)據(jù)。在步驟S120,工具控制部511檢查接收到的INFO位的值。當(dāng)INFO位的值為“0” 時,控制流程返回步驟S102,工具控制部511進(jìn)行處理以讀取隨后監(jiān)視的RAM數(shù)據(jù)。當(dāng)INFO 位的值為“1”時,也就是說,當(dāng)時鐘速率顯示寄存器120已經(jīng)被更新時,在步驟S122至步驟 S130,工具控制部511進(jìn)行處理以更新通信速率管理表521。在步驟S122,參考通信速率管理表521,工具控制部511將在發(fā)出指令“00H” (時鐘速率顯示寄存器讀取)中的適合于寫入指令傳輸和讀取數(shù)據(jù)傳輸?shù)臅r鐘速率設(shè)定到工具發(fā)送部530和工具接收部M0。對于指令“00H”,如圖6所示,將發(fā)送時鐘速率和接收時鐘速率設(shè)定為“調(diào)試時鐘速率”。在步驟S124,工具發(fā)送部530以調(diào)試時鐘速率通過調(diào)試通信輸入/輸出信號DIO 將CMD
= OOH的數(shù)據(jù)發(fā)送到微控制器101。在步驟S126,工具接收部MO以調(diào)試時鐘速率通過調(diào)試通信輸入/輸出信號DIO 接收從發(fā)送部405輸出的在時鐘速率顯示寄存器120中的8位值。在步驟S128,工具控制部511基于接收到的時鐘速率顯示寄存器120的值更新通信速率管理表521。在步驟S130,工具控制部511檢查時鐘速率顯示寄存器120的值。當(dāng)將位2 “停止”設(shè)定為生效時,控制流程返回步驟S124,工具控制部511再次讀取時鐘速率顯示寄存器 120的值并等待直到將位0 “高速”或位1 “低速”被設(shè)定為生效。這是因為在“系統(tǒng)時鐘停止”的狀態(tài)中,CPU部201已經(jīng)停止其操作,并且RAM監(jiān)視器控制部260不能進(jìn)行RAM監(jiān)視器處理。當(dāng)沒有將位2 “停止”設(shè)定為生效時,控制流程返回步驟S102,工具控制部511進(jìn)行處理以讀取隨后監(jiān)視的RAM數(shù)據(jù)。下面描述發(fā)送和接收部301的詳細(xì)操作,主要關(guān)于發(fā)送部405和序列控制部311。 圖10是流程圖,示出發(fā)送和接收部301的詳細(xì)操作,主要關(guān)于發(fā)送部401和序列控制部 311。在步驟S201,為了檢測讀取指令傳輸或?qū)懭胫噶顐鬏?,接收?shù)據(jù)采樣部321監(jiān)視調(diào)試通信輸入信號DI并等待直到檢測到STR位。在步驟S203,接收數(shù)據(jù)采樣部321通過基于調(diào)試時鐘信號DCLK產(chǎn)生的時鐘信號對調(diào)試通信輸入/輸出信號DIO采樣,并將獲得的1位數(shù)據(jù)輸出到接收移位器330。接收移位器330接收從接收數(shù)據(jù)采樣部321發(fā)送的數(shù)據(jù),同時逐位地移位數(shù)據(jù)。然后,當(dāng)完成11位的數(shù)據(jù)的存儲時,接收移位器330通過接收數(shù)據(jù)信號RCVD輸出8位數(shù)據(jù)的一部分,激活接收結(jié)束信號RVED,并將接收的結(jié)束通知給序列控制部311。當(dāng)將接收結(jié)束信號RVED設(shè)定為生效時,序列控制部311激活指令獲得信號CMGT并指示指令緩沖部340接收指令。當(dāng)將指令獲得信號CMGT設(shè)定為生效時,指令緩沖部340通過接收數(shù)據(jù)信號RCVD接收8位數(shù)據(jù)并將指令數(shù)據(jù)信號CD輸出到序列控制部311。在步驟S205,序列控制部311提取從指令緩沖部340輸出的指令數(shù)據(jù)信號CD的指令部分(CMD
的2位數(shù)據(jù))并分析指令。當(dāng)指令(CMD W :1])為“00H”時,控制流程進(jìn)入步驟S210,當(dāng)指令(CMD
)為“02H”時,控制流程進(jìn)入步驟S222,并且當(dāng)指令 (CMD
)為“03H”時,控制流程分支到步驟S230。當(dāng)指令(CMDW: 1])為其他值時,控制流程返回步驟S201,并且序列控制部311等待指令輸入。在步驟S210,序列控制部311激活指令執(zhí)行開始信號CST并指示指令執(zhí)行部360 執(zhí)行指令。指令執(zhí)行開始信號CST包含指示正在處理指令“00H” (時鐘速率顯示寄存器讀取)的數(shù)據(jù)。當(dāng)將指令執(zhí)行開始信號CST設(shè)定為生效時,指令執(zhí)行部360通過指令執(zhí)行部讀取總線RB進(jìn)行對時鐘速率顯示寄存器120的讀取訪問。當(dāng)接收設(shè)定到時鐘速率顯示寄存器120的8位值時,指令執(zhí)行部360通過指令執(zhí)行部讀取數(shù)據(jù)輸出信號CRDO輸出讀取數(shù)據(jù),激活指令執(zhí)行結(jié)束信號CED并將讀取的結(jié)束通知給序列控制部311。當(dāng)將從指令執(zhí)行部360輸出的指令執(zhí)行部讀取數(shù)據(jù)輸出信號CRDO的8位數(shù)據(jù)存儲在內(nèi)部讀取數(shù)據(jù)緩沖部 410中時,發(fā)送部405激活讀取緩沖部有效信號BVDB并將完成發(fā)送準(zhǔn)備通知給序列控制部 311。在步驟S212,當(dāng)將讀取緩沖部有效信號BVDB設(shè)定為生效時,序列控制部311檢查時鐘速率改變請求信號CREQ的狀態(tài)。當(dāng)將時鐘速率改變請求信號CREQ設(shè)定為生效時,序列控制部311將INFO信息設(shè)定請求信號SIQB激活為生效狀態(tài)(“1”)(步驟S214)。當(dāng)沒有將時鐘速率改變請求信號CREQ設(shè)定為生效時,序列控制部311將INFO信息設(shè)定請求信號SIQB去激活為失效狀態(tài)(“0”)(步驟S215)。在步驟S217,序列控制部311激活發(fā)送開始信號SSTB并指示發(fā)送部405發(fā)送數(shù)據(jù)。發(fā)送部405將通過組合存儲在讀取數(shù)據(jù)緩沖部410中的8位數(shù)據(jù)、通過INFO信息設(shè)定請求信號SIQB指定的1位數(shù)據(jù)、STR位的1位和STP位的2位而獲得的12位數(shù)據(jù)存儲在發(fā)送移位器420中。與調(diào)試時鐘信號DCLK同步地,發(fā)送移位器420逐位地移位和輸出數(shù)據(jù)作為發(fā)送和接收部輸出信號SR0。當(dāng)完成12位的移位和輸出以后,發(fā)送移位器420激活發(fā)送結(jié)束信號SEDB。在步驟S219,序列控制部311激活時鐘速率改變確認(rèn)信號CACK。當(dāng)將時鐘速率改變確認(rèn)信號CACK設(shè)定為生效時,系統(tǒng)時鐘控制部240改變系統(tǒng)時鐘信號SCLK的速率。之后,控制流程返回到步驟S201,并且發(fā)送和接收部301等待下一個指令。在步驟S222,為了檢測寫入數(shù)據(jù)傳輸,接收數(shù)據(jù)采樣部321監(jiān)視調(diào)試通信輸入/輸出信號DIO并等待直到檢測到STR位。在步驟S2M,接收數(shù)據(jù)采樣部321通過基于調(diào)試時鐘信號DCLK產(chǎn)生的信號對調(diào)試通信輸入/輸出信號DIO采樣,并將獲得的數(shù)據(jù)輸出到接收移位器330。接收移位器330 接收從接收數(shù)據(jù)采樣部321發(fā)送的數(shù)據(jù),同時逐位地移位數(shù)據(jù)。當(dāng)完成11位數(shù)據(jù)的存儲以后,接收移位器330通過接收數(shù)據(jù)信號RCVD輸出8位數(shù)據(jù)部分,激活接收結(jié)束信號RVED并將接收的結(jié)束通知給序列控制部311。序列控制部311激活寫入數(shù)據(jù)獲得信號WDGT并指示寫入數(shù)據(jù)緩沖部350接收數(shù)據(jù)。寫入數(shù)據(jù)緩沖部350接收接收數(shù)據(jù)信號RCVD的8位數(shù)據(jù)并將寫入數(shù)據(jù)信號WD輸出到指令執(zhí)行部360。在步驟,序列控制部311激活指令執(zhí)行開始信號CST并將其通知指令執(zhí)行部 360。指令執(zhí)行開始信號CST包含指示正在處理指令“02H”的數(shù)據(jù)。當(dāng)將指令執(zhí)行開始信號CST設(shè)定為生效時,指令執(zhí)行部360通過指令執(zhí)行部寫入總線WB將要寫入RAM地址設(shè)定寄存器250的數(shù)據(jù)輸出到調(diào)試局部總線DLB,以執(zhí)行寫入周期。指令執(zhí)行部360激活指令執(zhí)行結(jié)束信號CED并將執(zhí)行的結(jié)束通知給序列控制部311。之后,發(fā)送和接收部301返回到步驟S201并等待下一個指令。當(dāng)調(diào)試局部總線DLB處于向RAM地址設(shè)定寄存器250的寫入周期時,RAM地址設(shè)定寄存器250從調(diào)試局部總線DLB接收8位寫入數(shù)據(jù)并保持該數(shù)據(jù)在其中。將保持內(nèi)容通知給RAM監(jiān)視器控制部沈0。在步驟S230,序列控制部311激活指令執(zhí)行開始信號CST并通知指令執(zhí)行部360 執(zhí)行指令。指令執(zhí)行開始信號CST包含指示正在處理指令“03H”的數(shù)據(jù)。當(dāng)將指令執(zhí)行開始信號CST設(shè)定為生效時,指令執(zhí)行部360通過指令執(zhí)行部寫入總線WB輸出指示RAM監(jiān)視器控制部沈0中的RAM訪問開始控制位被設(shè)定到調(diào)試局部總線DLB的控制數(shù)據(jù),以執(zhí)行寫入周期。指令執(zhí)行部360激活指令執(zhí)行結(jié)束信號CED并將指令執(zhí)行的結(jié)束通知給序列控制部 311。在步驟S231,當(dāng)設(shè)定RAM訪問開始控制位時,RAM監(jiān)視器控制部260通過利用從 RAM地址設(shè)定寄存器250提供的8位RAM地址進(jìn)行到RAM 230的讀取訪問。通過RAM監(jiān)視器數(shù)據(jù)信號RMNT將作為讀取訪問的結(jié)果獲得的8位讀取數(shù)據(jù)輸出。發(fā)送部501將包含在 RAM監(jiān)視器數(shù)據(jù)信號RMNT中的8位讀取數(shù)據(jù)存儲在內(nèi)部讀取數(shù)據(jù)緩沖部410中,并激活讀取緩沖部有效信號BVDA。通過同步電路140將作為讀取緩沖部有效信號BVDA(SYN)的讀取緩沖部有效信號BVDA通知給序列控制部311。在步驟S232,當(dāng)將讀取緩沖部有效信號BVDA設(shè)定為生效時,序列控制部311檢查時鐘速率改變請求信號CREQ的狀態(tài)。當(dāng)將時鐘速率改變請求信號CREQ設(shè)定為生效時,序列控制部311將INFO信息設(shè)定請求信號SIQA激活為生效狀態(tài)(“1”)(步驟S234)。當(dāng)沒有將時鐘速率改變請求信號CREQ設(shè)定為生效時,序列控制部311將INFO信息設(shè)定請求信號SIQA去激活為失效狀態(tài)(“0”)(步驟S235)。
在步驟S237,序列控制部311激活發(fā)送開始信號SSTA并通過同步電路140將其通知給發(fā)送部401。當(dāng)將發(fā)送開始信號SSTA(SYN)設(shè)定為生效時,發(fā)送部401將包括存儲在讀取數(shù)據(jù)緩沖部410中的8位數(shù)據(jù)、通過經(jīng)同步電路140輸入的INFO信息設(shè)定請求信號SIQA(SYN)指定的1位數(shù)據(jù)、STR位的1位和STP位的2位的12位數(shù)據(jù)存儲在發(fā)送移位器420中。與系統(tǒng)時鐘信號SCLK同步地,發(fā)送移位器420逐位地移位和輸出發(fā)送數(shù)據(jù)作為發(fā)送和接收部輸出信號SR0。當(dāng)完成12位的移位和輸出后,發(fā)送移位器420激活發(fā)送結(jié)束信號SEDC。為了結(jié)束發(fā)送,通過同步電路140向序列控制部311通知作為發(fā)送結(jié)束信號 SEDA(SYN)的發(fā)送結(jié)束信號SEDC。在步驟S239,當(dāng)將發(fā)送結(jié)束信號SEDA(SYN)設(shè)定為生效時,序列控制部311激活發(fā)送到CPU部201中的系統(tǒng)時鐘控制部240的時鐘速率改變確認(rèn)CACK。當(dāng)將時鐘速率改變確認(rèn)信號CACK設(shè)定為生效時,系統(tǒng)時鐘控制部240將系統(tǒng)時鐘信號SCLK的時鐘速率改變?yōu)橥ㄟ^CPU 210設(shè)定的系統(tǒng)時鐘速率。之后,控制流程返回到步驟S201,并且發(fā)送和接收部 301等待下一個指令。如上所述,根據(jù)本發(fā)明,信息處理設(shè)備包括基于一般低速不停止調(diào)試時鐘信號 DCLK操作的發(fā)送和接收部301、基于具有可變時鐘速率的一般高速系統(tǒng)時鐘操作的發(fā)送部 401以及顯示速率可變系統(tǒng)時鐘的速率數(shù)據(jù)的時鐘速率顯示寄存器120,發(fā)送和接收部301 中的序列控制部311具有與CPU部201中的系統(tǒng)時鐘控制部MO同步信息交互的功能,和向發(fā)送部401通知指示時鐘速率顯示寄存器120中的顯示內(nèi)容被改變的數(shù)據(jù)的功能,從而向外部發(fā)送數(shù)據(jù)。因此,微控制器能進(jìn)行控制,使得微控制器與外部工具之間的調(diào)試通信速率同步。因此,即使當(dāng)根據(jù)應(yīng)用程序,與調(diào)試通信異步地改變系統(tǒng)時鐘速率時,也能正常進(jìn)行調(diào)試通信。[第二實施例]圖11示出根據(jù)本發(fā)明第二實施例的信息處理設(shè)備的構(gòu)造。在本實施例中,分別用發(fā)送和接收部302、發(fā)送部402、CPU部202和外部工具502替代第一實施例中的發(fā)送和接收部301、發(fā)送部401、CPU部201和外部工具501,這些替代部分相對于第一實施例中的各個部分被部分地改變。第一實施例中的調(diào)試時鐘產(chǎn)生部150被省略,并且從外部工具502 提供調(diào)試時鐘信號DCLK。此外,沒有INFO信息設(shè)定請求信號SIQA從發(fā)送和接收部302輸出,并且到發(fā)送部402的對應(yīng)輸入被固定為失效(“0”)。其他組件與第一實施例的相同, 因此省略其描述。圖12是方框圖,示出CPU部202的構(gòu)造,CPU部202用于進(jìn)行數(shù)據(jù)跟蹤功能作為調(diào)試功能之一。CPU 210、系統(tǒng)時鐘控制部M0、RAM 230以及ROM 220與第一實施例的相同,并且它們的操作相同。但是,RAM230的調(diào)試訪問端口未被連接。第一實施例中執(zhí)行RAM監(jiān)視器功能的RAM地址設(shè)定寄存器250和RAM監(jiān)視器控制部260被用于執(zhí)行數(shù)據(jù)跟蹤功能的數(shù)據(jù)跟蹤控制部270替代。數(shù)據(jù)跟蹤控制部270監(jiān)視CPU 210的操作,當(dāng)CPU 210向RAM 230 等發(fā)出存儲指令時產(chǎn)生跟蹤數(shù)據(jù),并與系統(tǒng)時鐘信號SCLK同步地通過跟蹤輸出信號TRO輸出跟蹤數(shù)據(jù)。跟蹤數(shù)據(jù)是在圖19A的格式A中的16位數(shù)據(jù)。當(dāng)將從系統(tǒng)時鐘控制部MO 輸出的時鐘速率改變請求信號CREQ設(shè)定為生效時,通過跟蹤輸出信號TRO產(chǎn)生并輸出在圖 19B的格式B中的8位數(shù)據(jù)。當(dāng)在將讀取緩沖部繁忙信號RBSY設(shè)定為生效的同時產(chǎn)生數(shù)據(jù)時,將數(shù)據(jù)保持在內(nèi)部,并且然后,在將讀取緩沖部繁忙信號RBSY設(shè)定為失效以后,將數(shù)據(jù)輸出。通過調(diào)試局部總線DLB,操作數(shù)據(jù)跟蹤控制部270中的控制位來進(jìn)行數(shù)據(jù)跟蹤控制部 270的有效/無效的設(shè)定。在本實施例中,為了進(jìn)行作為一個調(diào)試功能的數(shù)據(jù)跟蹤功能,將圖7所示的指令改為圖16所示的指令。圖16示出本實施例中所述的指令。通過這些指令來進(jìn)行數(shù)據(jù)跟蹤功能。圖13是方框圖,示出發(fā)送和接收部302的構(gòu)造。發(fā)送和接收部302包括序列控制部312、發(fā)送部405、接收數(shù)據(jù)采樣部322、接收移位器330、指令緩沖部340、寫入數(shù)據(jù)緩沖部 350以及指令執(zhí)行部360。在這些部分中,接收移位器330、寫入數(shù)據(jù)緩沖部350、指令緩沖部340、指令執(zhí)行部360以及發(fā)送部405與第一實施例中的相同,并且它們的操作相同。接收數(shù)據(jù)采樣部322與調(diào)試時鐘信號DCLK同步地進(jìn)行采樣。除此操作外,與接收數(shù)據(jù)采樣部 321相似,接收數(shù)據(jù)采樣部322也對從外部工具502傳輸?shù)恼{(diào)試通信輸入信號DI采樣,以獲得1位數(shù)據(jù)。與序列控制部311相似,序列控制部312分析從指令緩沖部340提供的指令 (CMD
),并通過利用寫入數(shù)據(jù)緩沖部350、指令執(zhí)行部360、發(fā)送部405以及時鐘速率改變確認(rèn)信號CACK進(jìn)行與指令相對應(yīng)的處理。圖14是方框圖,示出發(fā)送部402的構(gòu)造。發(fā)送部402包括發(fā)送控制部430、發(fā)送移位器420以及讀取數(shù)據(jù)緩沖部411。發(fā)送移位器420與第一實施例中的相同并進(jìn)行相同的操作。讀取數(shù)據(jù)緩沖部411是包括M緩沖部412和L緩沖部413的存儲單元,M緩沖部412 和L緩沖部413均保持8位數(shù)據(jù)。M緩沖部412和L緩沖部413均保持從發(fā)送控制部430 寫入的8位數(shù)據(jù)。發(fā)送控制部430控制跟蹤數(shù)據(jù)的存儲和發(fā)送移位器420的操作。當(dāng)通過跟蹤輸出信號TRO從CPU部202提供的跟蹤數(shù)據(jù)是格式A(參照圖19A)的跟蹤數(shù)據(jù)時,發(fā)送控制部430將位0至位7的8位數(shù)據(jù)存儲在讀取數(shù)據(jù)緩沖部411的M緩沖部412中,將位8至位15的8位數(shù)據(jù)存儲在讀取數(shù)據(jù)緩沖部411的L緩沖部413中。發(fā)送控制部430激活讀取緩沖部有效信號BVDC。之后,當(dāng)將發(fā)送開始信號SST設(shè)定為生效時, 發(fā)送控制部430向發(fā)送移位器420發(fā)送存儲在M緩沖部412和L緩沖部413的每個中的8 位數(shù)據(jù),并將數(shù)據(jù)作為發(fā)送部輸出信號SSO輸出到外部工具502。當(dāng)發(fā)送移位器420通過發(fā)送部輸出信號SSO完成16位數(shù)據(jù)的輸出時,發(fā)送控制部430激活發(fā)送結(jié)束信號SEDC。當(dāng)通過跟蹤輸出信號TRO提供的跟蹤數(shù)據(jù)是格式B(參照圖19B)的數(shù)據(jù)時,將位0 至位7的8位數(shù)據(jù)存儲在M緩沖部412中。然后,發(fā)送控制部430激活讀取緩沖部有效信號BVDC。之后,當(dāng)將發(fā)送開始信號SSTC(SYN)設(shè)定為生效時,將存儲在M緩沖部412中的8 位數(shù)據(jù)發(fā)送到發(fā)送移位器420,激活移位開始信號SFTS,并通過發(fā)送部輸出信號SSO將該信號輸出。當(dāng)發(fā)送移位器420完成8位數(shù)據(jù)的輸出時,發(fā)送移位器420激活指示發(fā)送結(jié)束的移位結(jié)束信號SFTE。當(dāng)從移位結(jié)束信號SFTE檢測到發(fā)送的結(jié)束時,發(fā)送控制部430激活發(fā)送結(jié)束信號SEDC并向發(fā)送和接收部302(序列控制部312)通知發(fā)送的結(jié)束。圖15是方框圖,示出外部工具502的構(gòu)造。外部工具502包括工具控制部512、 通信速率管理表522、工具發(fā)送部530、工具接收部M0、跟蹤存儲部550以及調(diào)試時鐘產(chǎn)生部560。工具接收部540與第一實施例中的相同,并且進(jìn)行相同的操作。本實施例中的工具發(fā)送部530與第一實施例中的工具發(fā)送部具有不同的同步時鐘。本實施例中的工具發(fā)送部530與調(diào)試時鐘信號DCLK同步地以圖18A至圖18E中所示的傳輸格式發(fā)送數(shù)據(jù)。與調(diào)試時鐘產(chǎn)生部150相似,調(diào)試時鐘產(chǎn)生部560產(chǎn)生調(diào)試時鐘信號DCLK。在本實施例中,從外部工具502將調(diào)試時鐘信號DCLK提供給微控制器102。跟蹤存儲部550是存儲單元,用于將通過工具接收部540接收的跟蹤數(shù)據(jù)存儲在其中。工具控制部512參考通信速率管理表522控制接收時鐘速率。當(dāng)工具接收部540接收到圖19A中所示格式的跟蹤數(shù)據(jù)時,工具控制部512向跟蹤存儲部550發(fā)送跟蹤數(shù)據(jù)并將數(shù)據(jù)存儲在跟蹤存儲部550中。工具控制部512還包括與第一實施例中的工具控制部511相同的功能。圖17是示意圖,示出通信速率管理表522的構(gòu)造。通信速率管理表522與指令代碼CMD相關(guān)地存儲如下的數(shù)據(jù),S卩,所述數(shù)據(jù)指示在與微控制器102的通信中的發(fā)送時鐘速率和接收時鐘速率。與第一實施例中的通信速率管理表521相似,在與微控制器102 的通信中,參考通信速率管理表522。在本實施例中,為了描述作為一個調(diào)試功能的數(shù)據(jù)跟蹤功能,改變了一些指令。因為是通過外部工具502的調(diào)試時鐘產(chǎn)生部560產(chǎn)生指令 (CMD
) “00H”的發(fā)送時鐘速率和接收時鐘速率,所以將時鐘速率固定為調(diào)試時鐘速率。 但是,時鐘速率可變。圖18A至圖18E為示意圖,示出通過調(diào)試通信輸入信號DI和調(diào)試通信輸出信號DO 在微控制器102與外部工具502通信的傳輸格式。傳輸格式包括讀取指令傳輸格式(圖 18A)、讀取數(shù)據(jù)傳輸格式(圖18B)、數(shù)據(jù)跟蹤傳輸格式(圖18C和圖18D)、控制指令傳輸格式(圖18E)。如圖18C和圖18D所示,通過發(fā)送8位數(shù)據(jù)兩次來實現(xiàn)在數(shù)據(jù)跟蹤傳輸中的 16位數(shù)據(jù)的發(fā)送。當(dāng)數(shù)據(jù)跟蹤控制部270產(chǎn)生多個16位跟蹤數(shù)據(jù)時,重復(fù)地進(jìn)行跟蹤傳輸L和跟蹤傳輸M。類似地,當(dāng)產(chǎn)生8位跟蹤數(shù)據(jù)時,重復(fù)地進(jìn)行跟蹤傳輸L。在第一實施例中分配用于讀取數(shù)據(jù)傳輸?shù)奈?的INFO位未使用并固定為“0”。圖19A至圖19C示出發(fā)送/接收數(shù)據(jù)的格式。圖19A示出通過數(shù)據(jù)跟蹤控制部 270產(chǎn)生的16位跟蹤數(shù)據(jù)的數(shù)據(jù)格式(格式A)。圖19B示出8位數(shù)據(jù)的格式(格式B), 該8位數(shù)據(jù)指示已經(jīng)將從系統(tǒng)時鐘控制部240輸出的時鐘速率改變請求信號CREQ設(shè)定為生效。格式B的跟蹤數(shù)據(jù)充當(dāng)?shù)谝粚嵤├械腎NFO位信息的替代物。圖19C示出在每種格式中通過分配給位0至位2的TCODE表示的數(shù)據(jù)。下面將描述實現(xiàn)數(shù)據(jù)跟蹤功能中和系統(tǒng)時鐘信號SCLK的改變確認(rèn)控制的操作。 圖20是流程圖,示出外部工具502的操作。在步驟S301,工具控制部512與調(diào)試時鐘信號DCLK同步地通過調(diào)試通信輸入信號 DI向微控制器102發(fā)送CMDW:2] = 04H( “數(shù)據(jù)跟蹤開始”)作為控制指令數(shù)據(jù)。在步驟S303,參照通信速率管理表522,工具控制部512將適合于隨后待傳輸?shù)闹噶睢?6H”(跟蹤傳輸L、跟蹤傳輸M)的接收時鐘速率設(shè)定到工具接收部M0。在步驟S304,工具控制部512與調(diào)試時鐘信號DCLK同步地通過調(diào)試通信輸入信號 DI向微控制器102發(fā)送CMDW:2] = 06H( “跟蹤數(shù)據(jù)獲得”)作為讀取指令數(shù)據(jù)。在步驟S305,作為CPU 210的執(zhí)行的結(jié)果,因為通過調(diào)試通信輸出信號DO傳輸由數(shù)據(jù)跟蹤控制部270產(chǎn)生的跟蹤數(shù)據(jù),所以工具接收部540接收跟蹤數(shù)據(jù)。跟蹤數(shù)據(jù)是采取格式A的低8位跟蹤數(shù)據(jù)或采取格式B的8位跟蹤數(shù)據(jù)。將接收到的跟蹤數(shù)據(jù)暫時存儲在工具控制部512中。在步驟S306,工具控制部512分析包含在通過工具接收部540接收的8位數(shù)據(jù)中的TC0DE
。如果TC0DE
= 01H,則通過工具接收部540接收隨后傳輸?shù)牟扇「袷?A的高8位跟蹤數(shù)據(jù)(步驟S308)。工具控制部512基于步驟S308接收的8位跟蹤數(shù)據(jù)和步驟S305接收的8位跟蹤數(shù)據(jù)而恢復(fù)采取格式A的跟蹤數(shù)據(jù),并將恢復(fù)數(shù)據(jù)存儲在跟蹤存儲部550中(步驟S309)。如果TCODE
= 02H,則微控制器102請求改變時鐘速率。因此,進(jìn)行以下處理。在步驟S311,參考通信速率管理表522,工具控制部512將適合于隨后待傳輸?shù)闹噶睢?0H”的讀取數(shù)據(jù)傳輸?shù)慕邮諘r鐘速率設(shè)定到工具接收部M0。在步驟S313,工具控制部512發(fā)出CMDW:2] = OOH(“時鐘速率顯示寄存器讀取”) 作為讀取指令數(shù)據(jù),并且工具發(fā)送部530與調(diào)試時鐘信號DCLK同步地通過調(diào)試通信輸入信號DI向微控制器102發(fā)送指令。在步驟S314,工具接收部MO通過調(diào)試通信輸出信號DO接收以調(diào)試時鐘速率提供的數(shù)據(jù)。接收的數(shù)據(jù)是在時鐘速率顯示寄存器120中的8位值。在步驟S316,工具控制部512根據(jù)時鐘速率顯示寄存器120的接收值將通信速率管理表522更新。在步驟S317,工具控制部512發(fā)出CMDW:2] = 01H( “時鐘速率改變確認(rèn)”)作為控制指令。工具發(fā)送部530與調(diào)試時鐘信號DCLK同步地通過調(diào)試通信輸入信號DI向微控制器102發(fā)送指令。在步驟S319,工具控制部512檢查接收到的時鐘速率顯示寄存器120的值,并且當(dāng)將位2 “停止”被設(shè)定為生效時,控制流程返回到步驟S313。工具控制部512再次讀取時鐘速率顯示寄存器120的值,并等待直到將位0 “高速”或位1 “低速”設(shè)定為生效。因為在“系統(tǒng)時鐘停止”狀態(tài)中數(shù)據(jù)跟蹤控制部270停止,所以不產(chǎn)生跟蹤數(shù)據(jù)。當(dāng)“系統(tǒng)時鐘停止”狀態(tài)被清除時(步驟S319中的否),控制流程返回到步驟S303,并且工具控制部512 重新開始處理以獲得跟蹤數(shù)據(jù)。圖21示出在完成數(shù)據(jù)跟蹤處理中工具控制部512的操作。在步驟S350,工具控制部512發(fā)出CMDW:2] = 05H( “數(shù)據(jù)跟蹤結(jié)束”)作為控制指令,并且工具發(fā)送部530與調(diào)試時鐘信號DCLK同步地通過調(diào)試通信輸入信號DI向微控制器102發(fā)送指令。通過發(fā)出該指令,將步驟S301至步驟S319的數(shù)據(jù)跟蹤處理結(jié)束。圖22A和圖22B是流程圖,示出微控制器102的操作,也就是,發(fā)送和接收部302 的操作,主要關(guān)于發(fā)送部402和序列控制部312。在步驟S402(圖22A),為了檢測讀取指令傳輸或控制指令傳輸,接收數(shù)據(jù)采樣部 322監(jiān)視調(diào)試通信輸入信號DI并等待直到檢測到STR位。在步驟S404,接收數(shù)據(jù)采樣部322基于調(diào)試時鐘信號DCLK對調(diào)試通信輸入/輸出信號DIO進(jìn)行采樣,并將獲得的1位數(shù)據(jù)輸出到接收移位器330。在逐位地移位的同時,接收移位器330接收從接收數(shù)據(jù)采樣部321發(fā)送的數(shù)據(jù)。當(dāng)完成11位數(shù)據(jù)的存儲時,接收移位器330通過接收數(shù)據(jù)信號RCVD輸出8位數(shù)據(jù)部分,激活接收結(jié)束信號RVED,并將接收的結(jié)束通知給序列控制部312。序列控制部312激活指令獲得信號CMGT并指示指令緩沖部 340接收指令。指令緩沖部340接收接收數(shù)據(jù)信號RCVD的8位數(shù)據(jù)并將指令數(shù)據(jù)信號CD 輸出到序列控制部312。在步驟S410,序列控制部312從通過來自指令緩沖部340的指令數(shù)據(jù)信號CD輸出的8位數(shù)據(jù)中提取指令(CMD W:2])的3位并分析指令。當(dāng)指令(CMD W:2])為“00H”時,控制流程進(jìn)入步驟S412(圖22B),當(dāng)指令(CMD W: 2])為“01H”時,控制流程進(jìn)入步驟S422 (圖 22B),當(dāng)指令(CMD W: 2])為“04H”時,控制流程進(jìn)入步驟S432(圖22B),當(dāng)指令(CMD W: 2]) 為“05H”時,控制流程進(jìn)入步驟S442(圖22B),當(dāng)指令(CMDW:2])為“06H”時,控制流程分支到步驟S452 (圖22A)。在步驟S412(圖22B),指令(CMD
)表示“00H”(時鐘速率顯示寄存器讀取), 并且序列控制部312激活指令執(zhí)行開始信號CST,并指示指令執(zhí)行部360執(zhí)行指令。指令執(zhí)行開始信號CST包含指示正在處理指令“00H”(時鐘速率顯示寄存器讀取)的數(shù)據(jù)。當(dāng)將指令執(zhí)行開始信號CST設(shè)定為生效時,指令執(zhí)行部360通過指令執(zhí)行部讀取總線RB進(jìn)行對時鐘速率顯示寄存器120的讀取訪問。指令執(zhí)行部360通過指令執(zhí)行部讀取數(shù)據(jù)輸出信號 CRDO輸出讀取的8位數(shù)據(jù),激活指令執(zhí)行結(jié)束信號CED并將讀取的結(jié)束通知給序列控制部 312。同時,發(fā)送部405將從指令執(zhí)行部360輸出的指令執(zhí)行部讀取數(shù)據(jù)輸出信號CRDO的 8位數(shù)據(jù)存儲在內(nèi)部讀取數(shù)據(jù)緩沖部410中,激活讀取緩沖部有效信號BVDB,并向序列控制部312通知發(fā)送準(zhǔn)備的結(jié)束。在步驟S414,序列控制部312激活發(fā)送開始信號SSTB,并指示發(fā)送部405進(jìn)行發(fā)送。發(fā)送部405將包括存儲在讀取數(shù)據(jù)緩沖部410中的8位數(shù)據(jù)、通過INFO信息設(shè)定請求信號SIQB指定的1位數(shù)據(jù)(值固定為“0”)、1個STR位和2個STP的12位數(shù)據(jù)存儲在內(nèi)部發(fā)送移位器420中。發(fā)送移位器420與調(diào)試時鐘信號DCLK同步地通過發(fā)送和接收部輸出信號SRO逐位地移位和輸出數(shù)據(jù)。當(dāng)完成12位的移位和輸出以后,發(fā)送移位器420激活發(fā)送結(jié)束信號SEDB。在步驟S422,指令(CMD W:2])表示“01H”(時鐘速率改變確認(rèn)),并且序列控制部 312激活時鐘速率改變確認(rèn)信號CACK,并通知系統(tǒng)時鐘控制部240時鐘速率的改變被確認(rèn)。 CPU部201中的系統(tǒng)時鐘控制部240改變系統(tǒng)時鐘信號SCLK的速率。在步驟S432,指令(CMD W:2])表示“04H”(數(shù)據(jù)跟蹤開始),并且序列控制部312 激活指令執(zhí)行開始信號CST,并指示指令執(zhí)行部360開始數(shù)據(jù)跟蹤。指令執(zhí)行開始信號CST 包含指示正在處理指令“04H”的數(shù)據(jù)。指令執(zhí)行部360通過指令執(zhí)行部寫入總線WB操作數(shù)據(jù)跟蹤控制部270中的內(nèi)部控制位,并指示數(shù)據(jù)跟蹤的開始。同時,指令執(zhí)行部360激活指令執(zhí)行結(jié)束信號CED,并通知序列控制部312數(shù)據(jù)跟蹤開始。在步驟S442,指令(CMD W:2])表示“05H”(數(shù)據(jù)跟蹤結(jié)束),并且序列控制部312 激活指令執(zhí)行開始信號CST,并指示指令執(zhí)行部360完成數(shù)據(jù)跟蹤。指令執(zhí)行開始信號CST 包含指示正在處理指令“05H”的數(shù)據(jù)。指令執(zhí)行部360通過指令執(zhí)行部寫入總線WB操作數(shù)據(jù)跟蹤控制部270中的控制位,并指示數(shù)據(jù)跟蹤的結(jié)束。同時,指令執(zhí)行部360激活指令執(zhí)行結(jié)束信號CED,并通知序列控制部312數(shù)據(jù)跟蹤完成。在步驟S452(圖22A),指令(CMD W:2])表示“06H”(跟蹤數(shù)據(jù)獲得),并且發(fā)送控制部430等待直到8位跟蹤數(shù)據(jù),也就是格式A的低8位跟蹤數(shù)據(jù)或格式B的跟蹤數(shù)據(jù),通過跟蹤輸出信號TRO從CPU部202傳輸。當(dāng)傳輸8位跟蹤數(shù)據(jù)時(步驟S452中的是),發(fā)送控制部430進(jìn)入下一操作(步驟S454)。在步驟S4M,發(fā)送控制部430將通過跟蹤輸出信號TRO傳輸?shù)?位跟蹤數(shù)據(jù)存儲在M緩沖部412中。在步驟S456,發(fā)送控制部430檢查傳輸?shù)母檾?shù)據(jù)的TC0DE。當(dāng)TCODE為“01H” (CPU寫入)時,控制流程進(jìn)入步驟S458,當(dāng)TCODE為“02H” (INFO生效)時,控制流程分支到步驟S472。在步驟S458,發(fā)送控制部430等待直到通過跟蹤輸出信號TRO傳輸接下來的8位跟蹤數(shù)據(jù),也就是格式A的高8位跟蹤數(shù)據(jù)。在步驟S462,發(fā)送控制部430將傳輸?shù)?位跟蹤數(shù)據(jù)存儲在L緩沖部413中。在步驟S463,發(fā)送控制部430激活讀取緩沖部繁忙信號RBSY,并通知CPU部202 已經(jīng)保持待輸出的跟蹤數(shù)據(jù)。發(fā)送控制部430激活讀取緩沖部有效信號BVDC,并通知發(fā)送和接收部302已經(jīng)將格式A的16位跟蹤數(shù)據(jù)存儲在M緩沖部412和L緩沖部413中。當(dāng)將讀取緩沖部繁忙信號RBSY設(shè)定為生效時,即使產(chǎn)生了跟蹤數(shù)據(jù),CPU部202中的數(shù)據(jù)跟蹤控制部270仍然保持跟蹤數(shù)據(jù)并等待直到讀取緩沖部繁忙信號RBSY被設(shè)定為失效。在步驟S465,當(dāng)將通過同步電路140提供的讀取緩沖部有效信號BVDC(SYN)設(shè)定為生效時,序列控制部312激活發(fā)送開始信號SSTC。當(dāng)將通過同步電路140提供的發(fā)送開始信號SSTC (SYN)設(shè)定為生效時,發(fā)送控制部430激活發(fā)送開始信號SFTS,并指示發(fā)送移位器420開始發(fā)送。發(fā)送移位器420與系統(tǒng)時鐘信號SCLK同步地通過發(fā)送部輸出信號SSO 逐位地移位和輸出如下的12位數(shù)據(jù),即,該12位數(shù)據(jù)包括從發(fā)送控制部430輸出的M緩沖部412的8位數(shù)據(jù)、1個STR位、固定值為“0”的1個位以及2個STP位。當(dāng)完成12位的移位和輸出時,發(fā)送移位器420激活指示發(fā)送結(jié)束的發(fā)送結(jié)束信號SFTE。在步驟S466,當(dāng)將發(fā)送結(jié)束信號SFTE設(shè)定為生效時,發(fā)送控制部430激活發(fā)送開始信號SFTS,并指示發(fā)送移位器420發(fā)送接下來的數(shù)據(jù)。發(fā)送移位器420與系統(tǒng)時鐘信號 SCLK同步地通過發(fā)送部輸出信號SSO逐位地移位和輸出如下的12位數(shù)據(jù),即,該12位數(shù)據(jù)包括從發(fā)送控制部430輸出的L緩沖部413的8位數(shù)據(jù)、1個STR位、固定值為“0”的1個位以及2個STP位。當(dāng)完成12位的移位和輸出時,發(fā)送移位器420激活發(fā)送結(jié)束信號SFTE, 并向發(fā)送控制部430通知發(fā)送結(jié)束。發(fā)送控制部430激活發(fā)送結(jié)束信號SEDC,并向序列控制部312通知16位跟蹤數(shù)據(jù)的發(fā)送結(jié)束。在步驟S468,發(fā)送控制部430去激活讀取緩沖部繁忙信號RBSY。序列控制部312 基于通過同步電路140提供的發(fā)送結(jié)束信號SEDC(SYN)被設(shè)定為生效的事實,而檢測數(shù)據(jù)發(fā)送結(jié)束,返回到指令分析(步驟S410),并重復(fù)數(shù)據(jù)發(fā)送直到指令被改變。在步驟S472,TCODE表示“02H” (INFO生效),發(fā)送控制部430激活讀取緩沖部繁忙信號RBSY和讀取緩沖部有效信號BVDC。讀取緩沖部有效信號BVDC指示格式B的8位跟蹤數(shù)據(jù)已經(jīng)被存儲在M緩沖部412中。在步驟S474,當(dāng)將通過同步電路140提供的讀取緩沖部有效信號BVDC(SYN)設(shè)定為生效時,序列控制部312激活發(fā)送開始信號SSTC,并指示發(fā)送部402開始8位數(shù)據(jù)的發(fā)送。當(dāng)將通過同步電路140提供的發(fā)送開始信號SSTC(SYN)設(shè)定為生效時,發(fā)送控制部430 激活發(fā)送開始信號SFTS,并指示發(fā)送移位器420開始發(fā)送。發(fā)送移位器420與系統(tǒng)時鐘信號SCLK同步地通過發(fā)送部輸出信號SSO逐位地移位和輸出如下的12位數(shù)據(jù),即,該12位數(shù)據(jù)通過組合從發(fā)送控制部430輸出的在M緩沖部412中的8位數(shù)據(jù)、1個STR位、固定值為“0”的1個位以及2個STP位而獲得。當(dāng)完成12位的移位和輸出時,發(fā)送移位器420激活發(fā)送結(jié)束信號SFTE,并向發(fā)送控制部430通知發(fā)送結(jié)束。發(fā)送控制部430激活發(fā)送結(jié)束信號SEDC,并向序列控制部312通知8位數(shù)據(jù)的發(fā)送被完成。
在步驟S476,發(fā)送控制部430去激活讀取緩沖部繁忙信號RBSY。序列控制部312 基于通過同步電路140提供的發(fā)送結(jié)束信號SEDC(SYN)已經(jīng)被設(shè)定為生效的事實,而檢測數(shù)據(jù)發(fā)送結(jié)束,返回到指令分析(步驟S410),并重復(fù)數(shù)據(jù)發(fā)送直到指令被改變。在本實施例中,示出了操作示例,其中能不受限地進(jìn)行數(shù)據(jù)跟蹤,不需要從外部工具502進(jìn)行讀取指令傳輸。換言之,因為能從微控制器102向外部工具502發(fā)送數(shù)據(jù),而不需要從外部工具502進(jìn)行讀取指令傳輸,所以可以將能夠監(jiān)視對CPU 210的數(shù)據(jù)寫入訪問的執(zhí)行狀態(tài)的數(shù)據(jù)跟蹤功能實現(xiàn)作為微控制器102與外部工具502之間的通信的一部分。根據(jù)本發(fā)明,因為將微控制器中的系統(tǒng)時鐘信號用作調(diào)試通信時鐘,所以有這樣的情況即使與調(diào)試通信狀態(tài)無關(guān)地改變系統(tǒng)時鐘的速率(包括停止),也不能正確進(jìn)行用于調(diào)試的通信。因此,可以繼續(xù)基于用于調(diào)試的通信的調(diào)試操作,而不需要依靠系統(tǒng)時鐘的速率。此外,可將微控制器中的高速時鐘用作用于調(diào)試通信的時鐘,從而有助于增加通信速率和改善調(diào)試功能的執(zhí)行。在以上描述中,除了 CPU部之外,調(diào)試設(shè)備具有與微控制器等同的構(gòu)造。雖然參照實施例描述了本發(fā)明,但是本發(fā)明并不限于上述實施例,并且可以被組合和實施從而不至于引起任何矛盾??梢岳斫猓绢I(lǐng)域技術(shù)人員對本發(fā)明可實現(xiàn)落入本發(fā)明范圍的多種改型。
權(quán)利要求
1.一種信息處理設(shè)備,包括外部工具單元,配置為向調(diào)試用戶提供人機接口 ;以及微控制器,其中,所述微控制器包括CPU部,配置為響應(yīng)于第一時鐘信號執(zhí)行作為調(diào)試目標(biāo)的程序,其中,響應(yīng)于來自所述 CPU部的指示改變所述第一時鐘信號的時鐘速率;第一發(fā)送部,配置為響應(yīng)于所述第一時鐘信號向所述外部工具單元發(fā)送調(diào)試數(shù)據(jù); 第二發(fā)送部,配置為響應(yīng)于與所述第一時鐘信號不同的第二時鐘信號向所述外部工具單元發(fā)送所述調(diào)試數(shù)據(jù);以及接收部,配置為接收從所述外部工具單元發(fā)送的數(shù)據(jù)。
2.根據(jù)權(quán)利要求1的信息處理設(shè)備,其中,所述外部工具單元包括工具接收部,配置為接收從所述第一發(fā)送部和所述第二發(fā)送部發(fā)送的所述調(diào)試數(shù)據(jù); 工具發(fā)送部,配置為向所述接收部發(fā)送指令;發(fā)送速率管理表,配置為與所述指令相關(guān)地存儲指示在發(fā)送和接收中的通信速率的數(shù)據(jù);以及工具控制部,配置為基于所述指令參考所述發(fā)送速率管理表以確定通信速率,并將所述工具接收部和所述工具發(fā)送部的通信速率切換為確定的通信速率。
3.根據(jù)權(quán)利要求2的信息處理設(shè)備,進(jìn)一步包括速率改變數(shù)據(jù)存儲部,配置為存儲指示所述第一時鐘信號的時鐘速率的改變的數(shù)據(jù), 其中,存儲在所述速率改變數(shù)據(jù)存儲部中的數(shù)據(jù)被發(fā)送到所述外部工具單元并被用于更新所述發(fā)送速率管理表。
4.根據(jù)權(quán)利要求1至3任一項的信息處理設(shè)備,進(jìn)一步包括序列控制部,配置為響應(yīng)于從所述外部工具單元發(fā)出的指令,選擇所述第一發(fā)送部和所述第二發(fā)送部中的一個,并通過使用選擇的一個發(fā)送部來發(fā)送所述調(diào)試數(shù)據(jù)。
5.根據(jù)權(quán)利要求1的信息處理設(shè)備,其中,所述CPU部在向所述外部工具單元通知切換之后,切換所述第一時鐘信號的時鐘速率。
6.根據(jù)權(quán)利要求4的信息處理設(shè)備,其中,所述CPU部包括 CPU,配置為響應(yīng)于所述第一時鐘信號執(zhí)行所述程序;以及時鐘控制部,配置為接收所述第一時鐘信號的時鐘速率的改變請求作為來自所述CPU 的指示,將時鐘速率改變請求通知給所述序列控制部,并且當(dāng)從所述序列控制部接收到對所述時鐘速率改變請求的許可時,改變所述第一時鐘信號的時鐘速率,以及其中,所述序列控制部響應(yīng)于所述時鐘速率改變請求的通知,將所述時鐘速率改變請求通知給所述外部工具單元,并將對所述時鐘速率改變請求的許可輸出到所述時鐘控制部。
7.根據(jù)權(quán)利要求1至3任一項的信息處理設(shè)備,其中,所述第一時鐘信號是被提供給所述CPU部的系統(tǒng)時鐘信號,所述第二時鐘信號是用于調(diào)試的具有固定時鐘速率的調(diào)試時鐘信號。
8.一種微控制器,包括CPU部,配置為響應(yīng)于第一時鐘信號執(zhí)行作為調(diào)試目標(biāo)的程序,其中,基于來自所述CPU部的指示改變所述第一時鐘信號的時鐘速率;第一發(fā)送部,配置為響應(yīng)于所述第一時鐘信號向外部工具單元發(fā)送調(diào)試數(shù)據(jù),所述外部工具單元具有與調(diào)試用戶的人機接口;第二發(fā)送部,配置為響應(yīng)于與所述第一時鐘信號不同的第二時鐘信號向所述外部工具單元發(fā)送所述調(diào)試數(shù)據(jù);以及接收部,配置為接收從所述外部工具單元發(fā)送的數(shù)據(jù)。
9.根據(jù)權(quán)利要求8的微控制器,進(jìn)一步包括速率改變數(shù)據(jù)存儲部,配置為存儲指示所述第一時鐘信號的時鐘速率的改變的數(shù)據(jù), 其中,存儲在所述速率改變數(shù)據(jù)存儲部中的數(shù)據(jù)被發(fā)送到所述外部工具單元,并被用于改變與所述外部工具單元的通信速率。
10.根據(jù)權(quán)利要求8的微控制器,進(jìn)一步包括序列控制部,配置為響應(yīng)于從所述外部工具單元發(fā)出的指令,選擇所述第一發(fā)送部和所述第二發(fā)送部中的一個,并通過使用選擇的一個發(fā)送部來發(fā)送所述調(diào)試數(shù)據(jù)。
11.根據(jù)權(quán)利要求8的微控制器,其中,所述CPU部在向所述外部工具單元通知切換之后,切換所述第一時鐘信號的時鐘速率。
12.根據(jù)權(quán)利要求10的微控制器,其中,所述CPU部包括 CPU,配置為響應(yīng)于所述第一時鐘信號執(zhí)行程序;以及時鐘控制部,配置為接收所述第一時鐘信號的時鐘速率的改變請求作為來自所述CPU 的指示,將時鐘速率改變請求通知給所述序列控制部,并且當(dāng)從所述序列控制部接收到對所述時鐘速率改變請求的許可時,改變所述第一時鐘信號的時鐘速率,以及其中,所述序列控制部響應(yīng)于所述時鐘速率改變請求的通知,將所述時鐘速率改變請求通知給所述外部工具單元,并將對所述時鐘速率改變請求的許可輸出到所述時鐘控制部。
13.一種調(diào)試設(shè)備,包括第一發(fā)送部,配置為響應(yīng)于第一時鐘信號向外部工具單元發(fā)送調(diào)試數(shù)據(jù),其中,基于來自CPU部的指令改變所述第一時鐘信號的時鐘速率,并且所述CPU部執(zhí)行作為調(diào)試目標(biāo)的程序;第二發(fā)送部,配置為響應(yīng)于與所述第一時鐘信號不同的第二時鐘信號向所述外部工具單元發(fā)送所述調(diào)試數(shù)據(jù);以及接收部,配置為接收從所述外部工具單元發(fā)送的數(shù)據(jù)。
14.根據(jù)權(quán)利要求13的調(diào)試設(shè)備,進(jìn)一步包括速率改變數(shù)據(jù)存儲部,配置為存儲指示所述第一時鐘信號的時鐘速率的改變的數(shù)據(jù), 其中,存儲在所述速率改變數(shù)據(jù)存儲部中的數(shù)據(jù)被發(fā)送到所述外部工具單元,從而所述數(shù)據(jù)被用于改變與所述調(diào)試設(shè)備的通信速率。
15.根據(jù)權(quán)利要求13的調(diào)試設(shè)備,進(jìn)一步包括序列控制部,配置為響應(yīng)于從所述外部工具單元發(fā)出的指令,選擇所述第一發(fā)送部和所述第二發(fā)送部中的一個,并通過使用選擇的一個發(fā)送部來發(fā)送所述調(diào)試數(shù)據(jù)。
16.根據(jù)權(quán)利要求15的調(diào)試設(shè)備,其中,所述序列控制部響應(yīng)于時鐘速率改變請求的通知,將所述時鐘速率改變請求通知給所述外部工具單元,并將對所述時鐘速率改變請求的許可輸出到所述時鐘控制部。
17.一種外部工具單元,包括接收部,配置為接收響應(yīng)于第一時鐘信號從執(zhí)行作為調(diào)試目標(biāo)的程序的微控制器的第一發(fā)送部發(fā)送的調(diào)試數(shù)據(jù),并接收基于與所述第一時鐘信號不同的第二時鐘信號從所述微控制器的第二發(fā)送部發(fā)送的調(diào)試數(shù)據(jù),所述第一時鐘信號的時鐘速率基于來自CPU部的指令而改變;以及工具發(fā)送部,配置為向所述微控制器的所述接收部發(fā)送指令。
18.根據(jù)權(quán)利要求17的外部工具單元,進(jìn)一步包括發(fā)送速率管理表,配置為與所述指令相關(guān)地存儲指示用于發(fā)送和接收的通信速率的數(shù)據(jù);以及工具控制部,配置為基于所述指令參考所述發(fā)送速率管理表以確定通信速率,并將通信速率改變?yōu)榇_定的通信速率。
19.根據(jù)權(quán)利要求18的外部工具單元,其中,基于從所述微控制器接收的時鐘速率更新所述發(fā)送速率管理表。
20.一種通過使用微控制器和外部工具單元的調(diào)試方法,所述微控制器響應(yīng)于第一時鐘信號執(zhí)行作為調(diào)試目標(biāo)的程序,所述外部工具單元向調(diào)試用戶提供人機接口,所述調(diào)試方法包括響應(yīng)于所述第一時鐘信號從所述微控制器中的第一發(fā)送部向所述外部工具單元發(fā)送調(diào)試數(shù)據(jù);響應(yīng)于與所述第一時鐘信號不同的第二時鐘信號從所述微控制器中的第二發(fā)送部向所述外部工具單元發(fā)送調(diào)試數(shù)據(jù);通過所述微控制器中的接收部接收從所述外部工具單元發(fā)送的數(shù)據(jù);以及基于來自所述微控制器的指令改變所述第一時鐘信號的時鐘速率。
21.根據(jù)權(quán)利要求20的調(diào)試方法,進(jìn)一步包括通過所述外部工具單元中的工具接收部接收從所述第一發(fā)送部和所述第二發(fā)送部發(fā)送的調(diào)試數(shù)據(jù);從所述外部工具單元中的工具發(fā)送部向所述微控制器中的所述接收部發(fā)送指令;基于來自所述外部工具單元的指令參考發(fā)送速率管理表以確定與所述工具接收部和所述工具發(fā)送部的通信速率;以及將通信速率改變?yōu)榇_定的通信速率,其中,所述發(fā)送速率管理表與來自所述外部工具單元的指令相關(guān)地存儲指示通信速率的數(shù)據(jù)。
22.根據(jù)權(quán)利要求21的調(diào)試方法,進(jìn)一步包括讀取存儲在速率改變數(shù)據(jù)存儲部中的數(shù)據(jù),所述速率改變數(shù)據(jù)存儲部配置為存儲指示所述第一時鐘信號的時鐘速率的改變的數(shù)據(jù);以及基于讀取的數(shù)據(jù)更新所述發(fā)送速率管理表。
23.根據(jù)權(quán)利要求20的調(diào)試方法,進(jìn)一步包括響應(yīng)于從所述外部工具單元發(fā)出的指令,選擇所述第一發(fā)送部和所述第二發(fā)送部中的一個;以及通過使用選擇的一個發(fā)送部來發(fā)送調(diào)試數(shù)據(jù)。
24.根據(jù)權(quán)利要求20至23任一項的調(diào)試方法,其中所述改變時鐘速率包括 向所述外部工具單元通知時鐘速率的改變, 其中,在通知之后改變所述第一時鐘信號的時鐘速率。
全文摘要
本發(fā)明涉及一種具有調(diào)試單元的信息處理設(shè)備及其調(diào)試方法。信息處理設(shè)備包括配置為向調(diào)試用戶提供人機接口的外部工具單元以及微控制器。微控制器包括CPU部,配置為響應(yīng)于第一時鐘信號執(zhí)行作為調(diào)試目標(biāo)的程序,其中,響應(yīng)于來自CPU部的指示改變第一時鐘信號的時鐘速率;第一發(fā)送部,配置為響應(yīng)于第一時鐘信號向外部工具單元發(fā)送調(diào)試數(shù)據(jù);第二發(fā)送部,配置為響應(yīng)于與第一時鐘信號不同的第二時鐘信號向外部工具單元發(fā)送調(diào)試數(shù)據(jù);以及接收部,配置為接收從外部工具單元發(fā)送的數(shù)據(jù)。
文檔編號G06F13/42GK102163182SQ20111004311
公開日2011年8月24日 申請日期2011年2月21日 優(yōu)先權(quán)日2010年2月19日
發(fā)明者松川和哉 申請人:瑞薩電子株式會社
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
象山县| 紫阳县| 邹城市| 平凉市| 疏附县| 保山市| 宁乡县| 怀柔区| 易门县| 鄯善县| 龙游县| 巩义市| 深泽县| 定襄县| 常山县| 新疆| 岗巴县| 金山区| 平南县| 威远县| 九江市| 胶州市| 昌图县| 临安市| 富平县| 清涧县| 张家口市| 屏边| 金华市| 大洼县| 霍城县| 皋兰县| 偏关县| 明光市| 边坝县| 顺平县| 临沭县| 镇巴县| 永吉县| 安康市| 樟树市|