專(zhuān)利名稱(chēng):一種仿真器及其與目標(biāo)板接口的適配方法
技術(shù)領(lǐng)域:
本發(fā)明是有關(guān)于一種仿真器,且特別是有關(guān)于一種對(duì)于目標(biāo)板的接口具
有可組態(tài)功能的仿真器,其利用內(nèi)嵌微控制器(MCU)及其執(zhí)行的固件程 序作為與目標(biāo)板間多重接口的控制機(jī)制。
背景技術(shù):
仿真器(In-Circuit Emulation,簡(jiǎn)稱(chēng)為ICE )是設(shè)計(jì)用來(lái)連接目標(biāo)板(Target Board)及主機(jī)(Host),并提供二者之間數(shù)據(jù)傳遞的裝置,主要應(yīng)用層面 為不同接口的除錯(cuò)系統(tǒng)。請(qǐng)參照?qǐng)D1,其所示為一種傳統(tǒng)的仿真器的方框圖。 仿真器100包括主機(jī)接口單元110、仿真器(ICE)功能單元120及目標(biāo)板 接口單元130,其中ICE功能單元120包括主控制單元121及中斷點(diǎn)控制單 元122。在一些比較高階的仿真器中,ICE功能單元120還會(huì)包括直接存儲(chǔ) 器存取(DMA)控制單元123或追蹤緩沖區(qū)(TraceBuffer)控制單元124。
主機(jī)接口單元no負(fù)責(zé)跟主機(jī)溝通并將信息傳給ICE功能單元120,其 例如是通用串行總線(xiàn)(USB)、并行端口或以太網(wǎng)(Ethernet)傳輸接口 。 ICE 功能單元120內(nèi)的主控制單元121通過(guò)中斷點(diǎn)控制單元122、 DMA控制單 元123或追蹤緩沖區(qū)控制單元124負(fù)責(zé)執(zhí)行仿真器100所需功能,并將上述 相關(guān)執(zhí)4于動(dòng)作及結(jié)果跟目標(biāo)板接口單元130溝通。目標(biāo)板接口單元130接收 ICE功能單元120的信息并負(fù)責(zé)跟目標(biāo)板溝通,其例如是JTAG、 EJTAG或 BDM接口 。
在ICE功能單元120中,中斷點(diǎn)控制單元122負(fù)責(zé)設(shè)定指令中斷點(diǎn)、數(shù) 據(jù)中斷點(diǎn)或軟件中斷點(diǎn),例如欲設(shè)定軟件中斷點(diǎn),則主控制單元121會(huì)將中 斷點(diǎn)地址傳給中斷點(diǎn)控制單元122,中斷點(diǎn)控制單元122便會(huì)回應(yīng)主控制單 元121,先讀取此地址原本的指令碼并儲(chǔ)存起來(lái),再把軟件中斷點(diǎn)指令碼寫(xiě) 至中斷點(diǎn)地址,待中斷點(diǎn)完成后再將原先儲(chǔ)存的指令碼寫(xiě)回中斷點(diǎn)地址。DMA控制單元123執(zhí)行直接存儲(chǔ)器存取,即根據(jù)存儲(chǔ)器讀取或?qū)懭氲牡刂?要求主控制單元121讀取或?qū)懭霐?shù)據(jù)至目標(biāo)板存儲(chǔ)器,而且DMA控制單元 123可以?xún)?nèi)建一個(gè)緩沖區(qū),以便在主機(jī)接口單元110跟目標(biāo)板接口單元130 速度不一致時(shí),先將數(shù)據(jù)暫存于此緩沖區(qū)再輸出至目標(biāo)板。追蹤緩沖區(qū)控制 單元124負(fù)責(zé)將程序執(zhí)行過(guò)程記錄于追蹤緩沖區(qū),并在主4幾要求時(shí)將數(shù)據(jù)經(jīng) 由主控制單元121傳給主機(jī)。
圖2所示為另 一種傳統(tǒng)的仿真器的方框圖,其為Green Hills Software公 司的產(chǎn)品。請(qǐng)參照?qǐng)D2,仿真器200包括主機(jī)接口單元210、 ICE功能單元
220、 目標(biāo)板接口單元230,其中ICE功能單元220包括中央處理器(CPU)
221、 動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM) 222、閃存存儲(chǔ)器223及現(xiàn)場(chǎng)可編程門(mén) 陣列(FPGA) 224。
主機(jī)接口單元210負(fù)責(zé)跟主機(jī)溝通并將信息傳給ICE功能單元220,在 此產(chǎn)品中主機(jī)接口單元210包括USB、 RS-232及以太網(wǎng)(Ethernet)三種傳 輸接口。 ICE功能單元220內(nèi)的中央處理器221負(fù)責(zé)執(zhí)行仿真器200所需功 能,其分別利用動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器222及閃存存儲(chǔ)器223儲(chǔ)存控制程序及 條件式且復(fù)雜的中斷點(diǎn)。通過(guò)程序化現(xiàn)場(chǎng)可編程門(mén)陣列224再搭配目標(biāo)接口 單元230,使得CPU221能夠再組態(tài)(reconfigured)以應(yīng)付不同接口的目標(biāo) 板。
如圖l所示的仿真器100,其缺點(diǎn)在于目標(biāo)板接口單元130只有單一接 口跟目標(biāo)板進(jìn)行連接,若連接到另一個(gè)不同接口的目標(biāo)板則必須重新設(shè)計(jì)或 更換不同的仿真器。另外,目標(biāo)板接口單元130—般不可以同時(shí)連接兩個(gè)以 上不同接口的目標(biāo)板,即仿真器IOO—次只能處理一個(gè)目標(biāo)板。而如圖2所 示的仿真器200,其缺點(diǎn)在于當(dāng)使用者欲使用自定義接口的目標(biāo)板時(shí),勢(shì)必 要仿真器設(shè)計(jì)公司的介入及幫助,重新設(shè)計(jì)電路并燒錄到現(xiàn)場(chǎng)可編程門(mén)陣列 224才有可能。
發(fā)明內(nèi)容
有鑒于此,本發(fā)明的目的就是在提供一種仿真器及其適配方法,其對(duì)于 目標(biāo)板的接口具有可組態(tài)的功能,因此針對(duì)不同接口的目標(biāo)板不再需要重新
設(shè)計(jì)或更換仿真器。
基于上述及其他目的,本發(fā)明提出一種仿真器,用以提供一主機(jī)及當(dāng) 前目標(biāo)板之間數(shù)據(jù)的傳遞。此仿真器包括一主機(jī)接口單元、 一仿真器功能單 元、 一非易失存儲(chǔ)器及一微控制器。主機(jī)接口單元耦接于主機(jī)及仿真器功能 單元之間,用以跟主機(jī)溝通并將信息傳給仿真器功能單元。仿真器功能單元 耦接于主機(jī)接口單元及微控制器之間,用以執(zhí)行仿真器所需功能,包含設(shè)定 指令中斷點(diǎn)、數(shù)據(jù)中斷點(diǎn)或軟件中斷點(diǎn)。非易失存儲(chǔ)器耦接于仿真器功能單 元及微控制器之間,用以存放一固件程序。微控制器耦接到仿真器功能單元、 非易失存儲(chǔ)器及當(dāng)前目標(biāo)板,用以執(zhí)行固件程序來(lái)跟當(dāng)前目標(biāo)板溝通,并將 執(zhí)行仿真器所需功能的信息傳給當(dāng)前目標(biāo)板。
基于上述及其他目的,本發(fā)明提出 一種仿真器與目標(biāo)板接口的適配方 法,該仿真器存放有一固件程序,并連接在一主機(jī)及當(dāng)前目標(biāo)板之間,該方
法包括以下步驟仿真器中的微處理器判斷該固件程序是否支持當(dāng)前目標(biāo) 板,如果支持,微處理器執(zhí)行該固件程序并進(jìn)行該主機(jī)及該當(dāng)前目標(biāo)板間的 數(shù)據(jù)傳輸,結(jié)束。如果不支持,判斷該主機(jī)是否有其他新的固件程序,如杲 沒(méi)有,連接失敗,如果有,該主機(jī)更新該仿真器上存放的該固件程序,仿真 器中的微處理器重新判斷該固件程序是否支持當(dāng)前目標(biāo)板。
上述仿真器的適配方法尚包括下列步驟如果該固件程序不支持該 當(dāng)前目標(biāo)板,則先判斷該固件程序是否還支持其他接口,如果支持,該固件 程序切換到下一個(gè)支持的接口 。
本發(fā)明因利用內(nèi)嵌微控制器執(zhí)行預(yù)先存放在非易失存儲(chǔ)器內(nèi)的固件程 序,使得此仿真器對(duì)于目標(biāo)板具有可組態(tài)的多重接口。這樣一來(lái),不但可以 節(jié)省仿真器開(kāi)發(fā)者在開(kāi)發(fā)相關(guān)產(chǎn)品的時(shí)間與成本,同時(shí)可以排除使用者在使
用上造成的不便的情形發(fā)生。對(duì)仿真器設(shè)計(jì)者而言,未來(lái)擴(kuò)充性?xún)H需考慮固 件程序的維護(hù)或更新,即可利用單一元件達(dá)成設(shè)計(jì)需求,進(jìn)而降^f氐終端產(chǎn)品 的成本。
為讓本發(fā)明的上述和其他目的、特征和優(yōu)點(diǎn)能更明顯易懂,下文特舉優(yōu) 選實(shí)施例,并配合附圖作詳細(xì)說(shuō)明如下。
圖1所示為一種傳統(tǒng)的仿真器的方框圖。
圖2所示為另一種傳統(tǒng)的仿真器的方框圖。 圖3至圖5所示為依照本發(fā)明不同實(shí)施例的仿真器的方框圖。 圖6及圖7所示為依照本發(fā)明不同實(shí)施例的仿真器中,微控制器對(duì)輔助 硬件電路的控制方式示意圖。
圖8所示為依照本發(fā)明一實(shí)施例的仿真器的適配方法的流程圖。
具體實(shí)施例方式
圖3所示為依照本發(fā)明一實(shí)施例的仿真器的方框圖。請(qǐng)參照?qǐng)D3,仿真 器300包括主機(jī)接口單元310、仿真器(ICE )功能單元320、微控制器(MCU) 330、易失存儲(chǔ)器340及非易失存儲(chǔ)器350,其中易失存儲(chǔ)器340例如是動(dòng) 態(tài)隨機(jī)存取存儲(chǔ)器(DRAM),而非易失存儲(chǔ)器350例如是閃存存儲(chǔ)器。
主機(jī)接口單元310負(fù)責(zé)跟主機(jī)溝通并將信息傳給仿真器功能單元320, 其例如是USB接口、并行端口或以太網(wǎng)傳輸接口。仿真器功能單元320負(fù) 責(zé)執(zhí)行仿真器300所需功能,并將上述相關(guān)執(zhí)行動(dòng)作及結(jié)杲通過(guò)微控制器 330跟目標(biāo)板溝通。其中,仿真器功能單元320可以如同圖1的仿真器功能 單元120—般,其包括主控制單元、中斷點(diǎn)控制單元及可選的DMA控制單 元、追蹤緩沖區(qū)控制單元。主控制單元執(zhí)行仿真器300所需功能,例如通過(guò) 中斷點(diǎn)控制單元設(shè)定指令中斷點(diǎn)、數(shù)據(jù)中斷點(diǎn)或軟件中斷點(diǎn),通過(guò)DMA控 制單元執(zhí)行直接存儲(chǔ)器存取,或通過(guò)追蹤緩沖區(qū)控制單元將程序執(zhí)行過(guò)程記 錄于追蹤緩沖區(qū)以便在主機(jī)需要時(shí)將數(shù)據(jù)回傳。
在本發(fā)明中,仿真器300內(nèi)嵌微控制器330,以取代圖1中的目標(biāo)板接 口單元130作為控制目標(biāo)板接口的裝置。仿真器功能單元320將執(zhí)行動(dòng)作與 結(jié)果輸入微控制器330,然后微控制器330搭配供其存取數(shù)據(jù)或程序的易失 存儲(chǔ)器340來(lái)執(zhí)行預(yù)先存放在非易失存儲(chǔ)器350的固件程序,并且根據(jù)支持 的目標(biāo)板接口信號(hào)少見(jiàn)格,利用通用輸入輸出端口 ( General Purpose Input Output,簡(jiǎn)稱(chēng)為GPIO)跟目標(biāo)板進(jìn)行溝通。
除此之外,內(nèi)嵌的微控制器330可以用來(lái)做仿真器300的自我診斷。當(dāng)
仿真器300或目標(biāo)板發(fā)生問(wèn)題,利用微控制器330即可解決,若無(wú)法解決 也可先把一些信息提取出來(lái)以便加速理清問(wèn)題。例如,仿真器300跟目標(biāo)板 之間的時(shí)鐘是由仿真器300決定頻率并送出,若仿真器300跟目標(biāo)板因頻率 不合無(wú)法連接,則在微控制器330發(fā)現(xiàn)無(wú)法連上時(shí)可以主動(dòng)切換至較低頻 率,達(dá)成自動(dòng)調(diào)校頻率功能而無(wú)須使用者介入。相反地,傳統(tǒng)的仿真器在跟 目標(biāo)板因頻率不合無(wú)法連接時(shí),通常都必須由使用者去更換震蕩器或是由主 機(jī)下命令指定適當(dāng)頻率。
再者,當(dāng)使用者使用自定義接口的目標(biāo)板時(shí),為了符合自定義的目標(biāo)板 接口,使用者可以修改存放在非易失存儲(chǔ)器350中微控制器330的固件程 序,或者可以設(shè)計(jì)成根據(jù)使用者規(guī)定的目標(biāo)板接口信號(hào)由軟件程序自動(dòng)產(chǎn) 生,如此只要更新固件即可。但是,傳統(tǒng)的如圖2的仿真器200在面對(duì)使用 者自定義的目標(biāo)板接口時(shí),必須由仿真器設(shè)計(jì)公司重新設(shè)計(jì)電路并燒錄到 FPGA224才能夠符合自定義的目標(biāo)板接口。此外,應(yīng)用微控制器330的中 斷可使得仿真器300在使用上更具彈性,特殊事件可以即時(shí)通知微控制器 300處理。例如,追蹤緩沖區(qū)一般來(lái)說(shuō)如果溢滿(mǎn)就會(huì)覆蓋到先前的數(shù)據(jù)而造 成先前的數(shù)據(jù)流失,此時(shí)若利用中斷通知微控制器330,發(fā)出中斷使目標(biāo)板 的工作暫停,先將追蹤緩沖區(qū)的數(shù)據(jù)送到主機(jī)存起來(lái)后,再恢復(fù)目標(biāo)板的工 作。
至于存放在非易失存儲(chǔ)器350中的固件程序的更新方式,可以由主機(jī)將 更新的固件程序通過(guò)仿真器功能單元320直接將非易失存儲(chǔ)器350程序化, 如此僅需由軟件操作即可達(dá)到更新效果,兼具擴(kuò)充性與便利性。仿真器300 的固件程序也可以為一特定的啟動(dòng)程序,使微控制器330啟動(dòng)后通過(guò)主機(jī) 接口單元310跟主機(jī)溝通,以便更換不同目標(biāo)板接口所需的微控制器程序及 數(shù)據(jù),以如此動(dòng)態(tài)載入程序的方式更免除了固件更新的需求。
藉由微控制器330的GPIO端口足夠多,仿真器300可以同時(shí)接上兩個(gè) 或以上目標(biāo)板,使得仿真器300可以一次處理兩個(gè)或以上接口不同的目標(biāo) 板。例如圖4的實(shí)施例中,仿真器300通過(guò)微控制器330同時(shí)連接兩個(gè)不同 的目標(biāo)*反。
考慮到GPIO端口速度問(wèn)題,應(yīng)需求可在微控制器330旁加上一個(gè)數(shù)據(jù)
轉(zhuǎn)換或命令模式的輔助硬件電路(Glue Logic),例如圖5的輔助硬件電路 360。在圖5的實(shí)施例中,微控制器330不直接輸出目標(biāo)板接口信號(hào),而是 將數(shù)據(jù)經(jīng)由此電路輸出。輔助硬件電路360接受微控制器330控制的方式, 其中一種是轉(zhuǎn)換成命令才莫式來(lái)進(jìn)行,如圖6所示。微控制器330將所需進(jìn) 行動(dòng)作利用命令模式,可能包含命令、地址、數(shù)據(jù)等經(jīng)由GPIO端口傳送給 輔助硬件電路360進(jìn)行溝通,輔助硬件電路360再根據(jù)執(zhí)行結(jié)果回應(yīng)微控制 器330。另一種是如圖7所示,GPIO端口每一信號(hào)代表不同的命令,例如 各自代表設(shè)定指令中斷點(diǎn)、設(shè)定數(shù)據(jù)中斷點(diǎn)、以及設(shè)定軟件中斷點(diǎn)等不同命 令。微控制器330將所需信息經(jīng)由數(shù)據(jù)緩沖區(qū)單元370與輔助硬件電路360 溝通,并以GPIO端口通知輔助硬件電路360進(jìn)行所需動(dòng)作,輔助硬件電路 360再根據(jù)執(zhí)行結(jié)果回應(yīng)微控制器330。在一實(shí)施例中,輔助硬件電路360 是一個(gè)可編程裝置,例如FPGA,若需變更硬件,則可將輔助硬件電路360 的編程數(shù)據(jù)輸入到微控制器330,再經(jīng)由微控制器330去編程輔助硬件電 路360。
圖8所示為圖3所示仿真器300的適配方法的流程圖。請(qǐng)同時(shí)參照?qǐng)D3 與圖8,在步驟S801,仿真器300與主機(jī)及目標(biāo)板連接。接著,使用者選擇 業(yè)界標(biāo)準(zhǔn)(例如JTAG、 EJTAG、 BDM)或自定義的目標(biāo)板接口 ,經(jīng)由主機(jī) 通知微控制器330。然后,在步驟S802,微控制器330執(zhí)行預(yù)先存放在非 易失存儲(chǔ)器350內(nèi)的固件程序,判斷是否支持目前的目標(biāo)板接口。若固件程 序支持目前的目標(biāo)板接口 ,則在步驟S803將對(duì)應(yīng)程序復(fù)制到易失存儲(chǔ)器340 以加快微控制器330執(zhí)行速度,其中微控制器330可以利用GPIO接口與 目標(biāo)板進(jìn)行溝通,此時(shí)到步驟S804:此時(shí)連接主機(jī)及目標(biāo)板成功,進(jìn)行數(shù) 據(jù)傳輸。
若固件程序不支持目前的目標(biāo)^L接口 ,則在步驟S805判斷固件程序是 否還支持其他接口。當(dāng)固件程序設(shè)計(jì)成具有多種接口,則到步驟S806將固 件程序切換到下一個(gè)接口,再回到步驟S802繼續(xù)執(zhí)行。當(dāng)固件程序支持的 接口均不符合目標(biāo)板接口或只支持一種接口 ,則只能到步驟S807看主機(jī)是 否有其他新的固件程序。再來(lái),若主機(jī)有新的固件程序則在步驟S808可以 用來(lái)更新非易失存儲(chǔ)器350內(nèi)的固件程序,再回到步驟S802繼續(xù)執(zhí)行。反
之,若主機(jī)沒(méi)有新的固件程序,則到步驟S809此時(shí)連接主機(jī)及目標(biāo)板失敗。
綜上所述,本發(fā)明利用內(nèi)嵌微控制器執(zhí)行預(yù)先存放在非易失存儲(chǔ)器內(nèi)的 固件程序,使得此仿真器對(duì)于目標(biāo)板具有可組態(tài)的多重接口。這樣一來(lái),不 但可以節(jié)省仿真器開(kāi)發(fā)者在開(kāi)發(fā)相關(guān)產(chǎn)品的時(shí)間與成本,同時(shí)可以排除使用 者在使用上需重新設(shè)計(jì)或更換仿真器等所造成的不便的情形發(fā)生。對(duì)仿真器 設(shè)計(jì)者而言,未來(lái)擴(kuò)充性?xún)H需考慮固件程序的維護(hù)或更新,即可利用單一元 件達(dá)成設(shè)計(jì)需求,進(jìn)而降低終端產(chǎn)品的成本。
雖然本發(fā)明已以?xún)?yōu)選實(shí)施例揭露如上,然其并非用以限定本發(fā)明,任何 熟習(xí)此技術(shù)者,在不脫離本發(fā)明的精神和范圍內(nèi),當(dāng)可作些許的更動(dòng)與潤(rùn)飾, 因此本發(fā)明的保護(hù)范圍當(dāng)視后附的權(quán)利要求范圍所界定的為準(zhǔn)。
權(quán)利要求
1、一種仿真器,用以提供一主機(jī)及當(dāng)前目標(biāo)板之間數(shù)據(jù)的傳遞,該仿真器包括一仿真器功能單元,用以執(zhí)行該仿真器所需功能;一主機(jī)接口單元,耦接至該主機(jī)及該仿真器功能單元,用以跟該主機(jī)溝通并將信息傳給該仿真器功能單元;一非易失存儲(chǔ)器,耦接至該仿真器功能單元,用以存放一固件程序;以及一微控制器,耦接至該仿真器功能單元、該非易失存儲(chǔ)器及該當(dāng)前目標(biāo)板,用以執(zhí)行該固件程序來(lái)跟該當(dāng)前目標(biāo)板溝通,并將執(zhí)行該仿真器所需功能的信息傳給該當(dāng)前目標(biāo)板。
2、 如權(quán)利要求1所述的仿真器,其中還包括一易失存儲(chǔ)器,耦接至該仿真器功能單元及該微控制器,用以暫存該微 控制器欲執(zhí)行的程序。
3、 如權(quán)利要求2所述的仿真器,包含設(shè)定一指令中斷點(diǎn)、 一數(shù)據(jù)中斷 點(diǎn)或一軟件中斷點(diǎn)。
4、 如權(quán)利要求1所述的仿真器,其中還包括一輔助硬件電路,耦接至該微控制器,用以輔助該微控制器及該當(dāng)前目 標(biāo)+反間的溝通。
5、 如權(quán)利要求1所述的仿真器,其中該仿真器功能單元包括一中斷點(diǎn)控制單元,用以設(shè)定一指令中斷點(diǎn)、 一數(shù)據(jù)中斷點(diǎn)或一軟件中 斷點(diǎn);以及一主控制單元,耦接至該主機(jī)接口單元、該微控制器及該中斷點(diǎn)控制單 元,用以控制該中斷點(diǎn)控制單元,并執(zhí)行該仿真器所需功能。
6、 如權(quán)利要求5所述的仿真器,其中該仿真器功能單元還包括一直接存儲(chǔ)器存取控制單元,耦接至該主控制單元,用以執(zhí)行直接存儲(chǔ) 器存取。
7、 如權(quán)利要求5所述的仿真器,其中該仿真器功能單元還包括 一追蹤緩沖區(qū)控制單元,耦接至該主控制單元,用以記錄該仿真器工作過(guò)程的信息于追蹤緩沖區(qū),并在該主機(jī)要求時(shí)將數(shù)據(jù)經(jīng)由該主控制單元傳 給該主才幾。
8、 權(quán)利要求5所述的仿真器,其中該微控制器包括當(dāng)前通用輸入輸出端口,耦接至該當(dāng)前目標(biāo)板,用以溝通該微控制器及 該當(dāng)前目標(biāo)板。
9、 一種仿真器與目標(biāo)板接口的適配方法,該仿真器存放有一固件程序, 并連接在一主機(jī)及當(dāng)前目標(biāo)板之間,該方法包括(a) 仿真器中的微處理器判斷該固件程序是否支持當(dāng)前目標(biāo)板,如果 支持,執(zhí)行步驟(c),如果不支持,執(zhí)行步驟(b);(b) 判斷該主機(jī)是否有其他新的固件程序,如果有,該主機(jī)更新該仿 真器上存放的該固件程序,返回步驟(a),否則,連接失敗。(c) 微處理器執(zhí)行該固件程序并進(jìn)行該主機(jī)及該當(dāng)前目標(biāo)板間的數(shù)據(jù) 傳輸,結(jié)束。
10、 如權(quán)利要求9所述的方法,其中所述步驟(a)中,如果該固件程 序不支持該當(dāng)前目標(biāo)板,則先判斷該固件程序是否還支持其他接口,如果支 持,該固件程序切換到下一個(gè)支持的接口,返回步驟(a);如果已不支持 其他接口,再執(zhí)行步驟(b)。
11、 如權(quán)利要求9所述的方法,其中步驟(c)中,先將該固件程序中 支持該當(dāng)前目標(biāo)板的對(duì)應(yīng)程序從該仿真器的一非易失存儲(chǔ)器復(fù)制到該仿真 器的一易失存儲(chǔ)器,以加快該對(duì)應(yīng)程序的執(zhí)行速度。
全文摘要
一種仿真器(ICE)及其適配方法,包括主機(jī)接口單元、ICE功能單元、微控制器(MCU)、易失存儲(chǔ)器及非易失存儲(chǔ)器。主機(jī)接口單元負(fù)責(zé)跟主機(jī)溝通并將信息傳給ICE功能單元。ICE功能單元負(fù)責(zé)執(zhí)行仿真器所需功能,例如設(shè)定指令中斷點(diǎn)、數(shù)據(jù)中斷點(diǎn)或軟件中斷點(diǎn)等,并將上述相關(guān)執(zhí)行動(dòng)作及結(jié)果通過(guò)MCU跟目標(biāo)板溝通。本發(fā)明利用MCU搭配供其存取數(shù)據(jù)或程序的易失存儲(chǔ)器來(lái)執(zhí)行預(yù)先存放在非易失存儲(chǔ)器內(nèi)的固件程序,使得此仿真器對(duì)于目標(biāo)板具有可組態(tài)的多重接口。從而,不但可以節(jié)省仿真器開(kāi)發(fā)者在開(kāi)發(fā)相關(guān)產(chǎn)品的時(shí)間與成本,同時(shí)可以排除使用者在使用上造成的不便的情形發(fā)生。
文檔編號(hào)G06F11/36GK101097541SQ20061008678
公開(kāi)日2008年1月2日 申請(qǐng)日期2006年6月26日 優(yōu)先權(quán)日2006年6月26日
發(fā)明者高敏富, 黃一桓, 黃明權(quán) 申請(qǐng)人:凌陽(yáng)科技股份有限公司