專利名稱:嵌入式系統(tǒng)的調(diào)試方法、調(diào)試器和調(diào)試系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明實施例涉及嵌入式系統(tǒng)技術(shù),尤其涉及一種嵌入式系統(tǒng)的調(diào)試方法、調(diào)試器和調(diào)試系統(tǒng)。
背景技術(shù):
嵌入式系統(tǒng)通常包括多個子系統(tǒng)。例如包括多種異構(gòu)的處理器,例如單核或多核中央處理器(Central Processing Unit,簡稱CPU)、或網(wǎng)絡(luò)處理器(Network Processor,簡稱NP)等;多核中央處理器的不同硬件核上可能運(yùn)行異構(gòu)的操作系統(tǒng)等等。嵌入式系統(tǒng)開發(fā)過程中,一般只通過單個串口等輸入輸出通道進(jìn)行調(diào)試。目前對嵌入式系統(tǒng)的調(diào)試主要包括以下兩種方案一種是共用單個串口對嵌入式系統(tǒng)中的多個子系統(tǒng)進(jìn)行調(diào)試,PC主機(jī)僅能打開一個調(diào)試窗口,只有一個子系統(tǒng)能接收PC主機(jī)發(fā)送的調(diào)試指令。如果多個子系統(tǒng)通過該串口同時輸出調(diào)試信息到PC主機(jī),PC主機(jī)的調(diào)試窗口上將顯示不同子系統(tǒng)反饋的調(diào)試信息,調(diào)試信息相互交織而難以區(qū)分;此外,當(dāng)多個子系統(tǒng)通過該串口接收到用戶經(jīng)該調(diào)試窗口發(fā)出的調(diào)試指令時,無法確定自身是否為當(dāng)前調(diào)試指令指向的目標(biāo)子系統(tǒng),因此,可能導(dǎo)致子系統(tǒng)的響應(yīng)錯誤,無法準(zhǔn)確完成嵌入式系統(tǒng)的調(diào)試。另一種是將該串口在PC主機(jī)和多個子系統(tǒng)之間進(jìn)行切換,一段時間內(nèi),該串口只傳輸PC主機(jī)和某個子系統(tǒng)之間的調(diào)試信息。這樣一方面降低了調(diào)試效率;另一方面,如果其他子系統(tǒng)也在輸出調(diào)試信息,則這部分調(diào)試信息無法傳輸?shù)絇C主機(jī);由于嵌入式系統(tǒng)結(jié)構(gòu)復(fù)雜,某子系統(tǒng)本次運(yùn)行產(chǎn)生的調(diào)試信息,在下次運(yùn)行時不一定會再現(xiàn),從而導(dǎo)致搜集到的整個系統(tǒng)的調(diào)試信息不完整。
發(fā)明內(nèi)容
本發(fā)明實施例提供一種嵌入式系統(tǒng)的調(diào)試方法、調(diào)試器和調(diào)試系統(tǒng),用以提高嵌入式系統(tǒng)的調(diào)試效率。根據(jù)本發(fā)明的一個方面,本發(fā)明提供了一種嵌入式系統(tǒng)的調(diào)試方法,包括從物理通信接口接收調(diào)試信息;所述物理通信接口連接調(diào)試主機(jī)和包括多個子系統(tǒng)的嵌入式系統(tǒng);所述調(diào)試信息包括所述多個子系統(tǒng)中第一子系統(tǒng)的調(diào)試結(jié)果數(shù)據(jù)及所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識;根據(jù)所述調(diào)試主機(jī)的多個調(diào)試窗口的窗口標(biāo)識和所述多個子系統(tǒng)的子系統(tǒng)標(biāo)識之間的映射關(guān)系,確定與所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識對應(yīng)的窗口標(biāo)識,并向所述確定的窗口標(biāo)識指向的調(diào)試窗口轉(zhuǎn)發(fā)所述調(diào)試結(jié)果數(shù)據(jù);獲取從所述多個調(diào)試窗口中第一調(diào)試窗口采集的調(diào)試指令、以及所述第一調(diào)試窗口的窗口標(biāo)識;根據(jù)所述映射關(guān)系,確定與所述第一調(diào)試窗口的窗口標(biāo)識對應(yīng)的子系統(tǒng)標(biāo)識,并生成控制信息,所述控制信息包括所述確定的子系統(tǒng)標(biāo)識和所述調(diào)試指令;通過所述物理通信接口向所述嵌入式系統(tǒng)發(fā)送所述控制信息。
根據(jù)本發(fā)明的第二方面,本發(fā)明提供了一種嵌入式系統(tǒng)的調(diào)試方法,包括從物理通信接口接收控制信息;所述物理通信接口連接調(diào)試主機(jī)和包括多個子系統(tǒng)的嵌入式系統(tǒng);所述控制信息包括調(diào)試指令以及子系統(tǒng)標(biāo)識;向所述嵌入式系統(tǒng)中所述子系統(tǒng)標(biāo)識對應(yīng)的子系統(tǒng),發(fā)送所述調(diào)試指令;接收所述多個子系統(tǒng)中第一子系統(tǒng)輸出的調(diào)試結(jié)果數(shù)據(jù),獲取所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識,并生成調(diào)試信息;所述調(diào)試信息包括所述調(diào)試結(jié)果數(shù)據(jù)以及所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識;通過所述物理通信接口向所述調(diào)試主機(jī)發(fā)送所述調(diào)試信息。根據(jù)本發(fā)明的第三方面,本發(fā)明提供了一種調(diào)試器,包括調(diào)試信息接收模塊,用于從物理通信接口接收調(diào)試信息;所述物理通信接口連接調(diào)試主機(jī)和包括多個子系統(tǒng)的嵌入式系統(tǒng);所述調(diào)試信息包括所述多個子系統(tǒng)中第一子系統(tǒng)的調(diào)試結(jié)果數(shù)據(jù)及所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識;調(diào)試結(jié)果數(shù)據(jù)轉(zhuǎn)發(fā)模塊,用于根據(jù)所述調(diào)試主機(jī)的多個調(diào)試窗口的窗口標(biāo)識和所述多個子系統(tǒng)的子系統(tǒng)標(biāo)識之間的映射關(guān)系,確定與所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識對應(yīng)的窗口標(biāo)識,并向所述確定的窗口標(biāo)識指向的調(diào)試窗口轉(zhuǎn)發(fā)所述調(diào)試結(jié)果數(shù)據(jù);控制信息獲取模塊,用于獲取從所述多個調(diào)試窗口中第一調(diào)試窗口采集的調(diào)試指令、以及所述第一調(diào)試窗口的窗口標(biāo)識;根據(jù)所述映射關(guān)系,確定與所述第一調(diào)試窗口的窗口標(biāo)識對應(yīng)的子系統(tǒng)標(biāo)識,并生成控制信息,所述控制信息包括所述確定的子系統(tǒng)標(biāo)識和所述調(diào)試指令;控制信息發(fā)送模塊,用于通過所述物理通信接口向所述嵌入式系統(tǒng)發(fā)送所述控制
fn息ο根據(jù)本發(fā)明的第四方面,本發(fā)明提供了一種調(diào)試器,包括控制信息接收模塊,用于從物理通信接口接收控制信息;所述物理通信接口連接調(diào)試主機(jī)和包括多個子系統(tǒng)的嵌入式系統(tǒng);所述控制信息包括調(diào)試指令以及子系統(tǒng)標(biāo)識;調(diào)試指令發(fā)送模塊,用于向所述嵌入式系統(tǒng)中所述子系統(tǒng)標(biāo)識對應(yīng)的子系統(tǒng),發(fā)送所述調(diào)試指令;調(diào)試信息獲取模塊,用于接收所述多個子系統(tǒng)中第一子系統(tǒng)輸出的調(diào)試結(jié)果數(shù)據(jù),獲取所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識,并生成調(diào)試信息;所述調(diào)試信息包括所述調(diào)試結(jié)果數(shù)據(jù)以及所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識;調(diào)試信息發(fā)送模塊,用于通過所述物理通信接口向所述調(diào)試主機(jī)發(fā)送所述調(diào)試信肩、ο根據(jù)本發(fā)明的第五方面,本發(fā)明提供了一種調(diào)試系統(tǒng),包括調(diào)試主機(jī)和嵌入式系統(tǒng)設(shè)備,其中所述調(diào)試主機(jī)包括上述一種調(diào)試器;所述嵌入式系統(tǒng)設(shè)備包括多個子系統(tǒng)和上述另一種調(diào)試器;所述調(diào)試主機(jī)和所述嵌入式系統(tǒng)設(shè)備通過一個物理通信接口相連。本發(fā)明提供的嵌入式系統(tǒng)的調(diào)試方法、調(diào)試器和調(diào)試系統(tǒng),復(fù)用一個物理通信接口進(jìn)行調(diào)試主機(jī)和嵌入式系統(tǒng)中多個子系統(tǒng)之間的數(shù)據(jù)交換,通過調(diào)試主機(jī)上開啟的多個調(diào)試窗口的窗口標(biāo)識、與嵌入式系統(tǒng)包括的多個子系統(tǒng)的子系統(tǒng)標(biāo)識之間的映射關(guān)系,處理通過該物理通信接口收發(fā)的數(shù)據(jù),可以將各個子系統(tǒng)發(fā)送的調(diào)試結(jié)果數(shù)據(jù)輸出到相應(yīng)的調(diào)試窗口,支持多個子系統(tǒng)的調(diào)試結(jié)果數(shù)據(jù)的并行輸出,還可以將各個調(diào)試窗口采集到的調(diào)試指令與需要執(zhí)行該調(diào)試指令的目標(biāo)子系統(tǒng)關(guān)聯(lián),使嵌入式系統(tǒng)及時、準(zhǔn)確地將調(diào)試指令發(fā)送到目標(biāo)子系統(tǒng),從而支持多個子系統(tǒng)的并行調(diào)試。因此,本發(fā)明實施例提高了嵌入式系統(tǒng)的調(diào)試效率。
為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖Ia為本發(fā)明實施例提供的一種嵌入式系統(tǒng)的調(diào)試方法流程圖;圖Ib為本發(fā)明實施例提供的調(diào)試信息的一種格式示例;圖Ic為本發(fā)明實施例提供的控制信息的一種格式示例;圖2為本發(fā)明實施例提供的另一種嵌入式系統(tǒng)的調(diào)試方法流程圖;圖3為本發(fā)明實施例提供的一種調(diào)試器的結(jié)構(gòu)示意圖;圖4為本發(fā)明實施例提供的另一種調(diào)試器的結(jié)構(gòu)示意圖;圖5為本發(fā)明實施例提供的一種調(diào)試系統(tǒng)的結(jié)構(gòu)示意圖。
具體實施例方式本發(fā)明實施例中,被調(diào)試系統(tǒng)為包括多個子系統(tǒng)的嵌入式系統(tǒng),調(diào)試主機(jī)和嵌入式系統(tǒng)復(fù)用一個物理通信接口交換數(shù)據(jù);其中調(diào)試主機(jī)和嵌入式系統(tǒng)包括的多個子系統(tǒng)進(jìn)行數(shù)據(jù)交換所復(fù)用的單個物理通信接口,可包括但不限于串口、并口或通用串行總線 (Universal Serial BUS,簡稱USB)接口 ;嵌入式系統(tǒng)的任一子系統(tǒng)可為但不限于單核 CPU、多核CPU中的任一硬件核處理器、NP、板卡或軟件系統(tǒng)。嵌入式系統(tǒng)中的不同子系統(tǒng)各自獨立運(yùn)行,并通過各子系統(tǒng)的運(yùn)行實現(xiàn)嵌入式系統(tǒng)需要實現(xiàn)的整體功能。為使本發(fā)明實施例的目的、技術(shù)方案和優(yōu)點更加清楚,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實施例是本發(fā)明一部分實施例,而不是全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有付出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護(hù)的范圍。圖Ia為本發(fā)明實施例提供的一種嵌入式系統(tǒng)的調(diào)試方法流程圖。本實施例從調(diào)試主機(jī)側(cè)的角度描述技術(shù)方案,其方法的執(zhí)行主體可為某一調(diào)試器,如運(yùn)行在調(diào)試主機(jī)上的調(diào)試器;具體的如圖Ia所示的方法包括11 從物理通信接口接收調(diào)試信息;所述物理通信接口連接調(diào)試主機(jī)和包括多個子系統(tǒng)的嵌入式系統(tǒng);所述調(diào)試信息包括所述多個子系統(tǒng)中第一子系統(tǒng)的調(diào)試結(jié)果數(shù)據(jù)及所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識。本實施例調(diào)試器在接收到嵌入式系統(tǒng)側(cè)通過物理通信接口發(fā)送的調(diào)試信息之后, 可根據(jù)該物理通信接口支持的通信協(xié)議對當(dāng)前接收到的調(diào)試信息進(jìn)行解析,獲取當(dāng)前接收到的調(diào)試信息包括的子系統(tǒng)標(biāo)識和調(diào)試結(jié)果數(shù)據(jù)。接收到的調(diào)試信息的一種可選格式示例如圖Ib所示。
12:根據(jù)所述調(diào)試主機(jī)的多個調(diào)試窗口的窗口標(biāo)識和所述多個子系統(tǒng)的子系統(tǒng)標(biāo)識之間的映射關(guān)系,確定與所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識對應(yīng)的窗口標(biāo)識,并向所述確定的窗口標(biāo)識指向的調(diào)試窗口轉(zhuǎn)發(fā)所述調(diào)試結(jié)果數(shù)據(jù)。上述映射關(guān)系可預(yù)先獲??;進(jìn)一步的,還可預(yù)先為所述物理通信接口配置多個虛擬邏輯接口,所述多個虛擬邏輯接口與所述多個調(diào)試窗口對應(yīng)。可選的,虛擬邏輯接口的數(shù)量等于嵌入式系統(tǒng)包括的子系統(tǒng)的數(shù)量,以便通過一個虛擬邏輯接口獨立調(diào)試嵌入式系統(tǒng)中的一個子系統(tǒng);并且,虛擬邏輯接口的數(shù)量也等于調(diào)試主機(jī)上開啟的調(diào)試窗口的數(shù)量,以便在一個調(diào)試窗口上實現(xiàn)一個子系統(tǒng)的調(diào)試指令采集和調(diào)試結(jié)果數(shù)據(jù)輸出。如此處理相當(dāng)于在實際占用一個物理通信接口的硬件資源的基礎(chǔ)上,為嵌入式系統(tǒng)中的每個子系統(tǒng)分別建立了獨立的虛擬調(diào)試通道。根據(jù)預(yù)先獲取的上述映射關(guān)系,確定與所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識對應(yīng)的窗口標(biāo)識,并向所述確定的窗口標(biāo)識指向的調(diào)試窗口輸出所述調(diào)試結(jié)果數(shù)據(jù)。如此處理之后,可將同一子系統(tǒng)發(fā)送的調(diào)試結(jié)果數(shù)據(jù)輸出到同一調(diào)試窗口,并可實現(xiàn)多個子系統(tǒng)的調(diào)試結(jié)果數(shù)據(jù)的并行輸出。13:獲取從所述多個調(diào)試窗口中第一調(diào)試窗口采集的調(diào)試指令、以及所述第一調(diào)試窗口的窗口標(biāo)識;根據(jù)所述映射關(guān)系,確定與所述第一調(diào)試窗口的窗口標(biāo)識對應(yīng)的子系統(tǒng)標(biāo)識,并生成控制信息,所述控制信息包括所述確定的子系統(tǒng)標(biāo)識和所述調(diào)試指令。14 通過所述物理通信接口向所述嵌入式系統(tǒng)發(fā)送所述控制信息。在調(diào)試主機(jī)上開啟的多個調(diào)試窗口中任一調(diào)試窗口采集到調(diào)試指令時,可獲取當(dāng)前采集到調(diào)試指令的調(diào)試窗口的窗口標(biāo)識以及該調(diào)試窗口當(dāng)前采集到的調(diào)試指令;根據(jù)預(yù)先獲取的上述映射關(guān)系,確定與當(dāng)前采集到調(diào)試指令的調(diào)試窗口的窗口標(biāo)識對應(yīng)的子系統(tǒng)標(biāo)識,該子系統(tǒng)標(biāo)識指向的子系統(tǒng)即為嵌入式系統(tǒng)中需要執(zhí)行調(diào)試指令的目標(biāo)子系統(tǒng);接下來,根據(jù)上述物理通信接口支持的通信協(xié)議,生成包括所述確定的子系統(tǒng)標(biāo)識和所述調(diào)試指令的控制信息,并復(fù)用所述物理通信接口向嵌入式系統(tǒng)側(cè)發(fā)送所述控制信息。所述控制信息的一種可選格式示例如圖Ic所示。如此處理之后,可以將各個調(diào)試窗口采集到的調(diào)試指令與需要執(zhí)行該調(diào)試指令的目標(biāo)子系統(tǒng)關(guān)聯(lián),使嵌入式系統(tǒng)及時、準(zhǔn)確地將調(diào)試指令發(fā)送到目標(biāo)子系統(tǒng),從而支持多個子系統(tǒng)的并行調(diào)試本領(lǐng)域普通技術(shù)人員可以理解,本發(fā)明實施中11-12和13-14沒有必然的時序關(guān)系的限制,11-12可以和13-14并行執(zhí)行,11-12也可以在13-14之后執(zhí)行。本實施例提供的嵌入式系統(tǒng)的調(diào)試方法,復(fù)用一個物理通信接口進(jìn)行調(diào)試主機(jī)和嵌入式系統(tǒng)中多個子系統(tǒng)之間的數(shù)據(jù)交換,通過調(diào)試主機(jī)上開啟的多個調(diào)試窗口的窗口標(biāo)識、與嵌入式系統(tǒng)包括的多個子系統(tǒng)的子系統(tǒng)標(biāo)識之間的映射關(guān)系,處理通過該物理通信接口收發(fā)的數(shù)據(jù),可以將各個子系統(tǒng)發(fā)送的調(diào)試結(jié)果數(shù)據(jù)輸出到相應(yīng)的調(diào)試窗口,支持多個子系統(tǒng)的調(diào)試結(jié)果數(shù)據(jù)的并行輸出,還可以將各個調(diào)試窗口采集到的調(diào)試指令與需要執(zhí)行該調(diào)試指令的目標(biāo)子系統(tǒng)關(guān)聯(lián),使嵌入式系統(tǒng)及時、準(zhǔn)確地將調(diào)試指令發(fā)送到目標(biāo)子系統(tǒng),從而支持多個子系統(tǒng)的并行調(diào)試。因此,本實施例提高了嵌入式系統(tǒng)的調(diào)試效率。圖2為本發(fā)明實施例提供的另一種嵌入式系統(tǒng)的調(diào)試方法流程圖。本實施例從被調(diào)試的嵌入式系統(tǒng)側(cè)描述技術(shù)方案,其方法的執(zhí)行主體可為某一調(diào)試器,如運(yùn)行在被調(diào)試的嵌入式系統(tǒng)上的調(diào)試器;具體的如圖2所示的方法包括21 從物理通信接口接收控制信息;所述物理通信接口連接調(diào)試主機(jī)和包括多個子系統(tǒng)的嵌入式系統(tǒng);所述控制信息包括調(diào)試指令以及子系統(tǒng)標(biāo)識。調(diào)試主機(jī)開啟的多個調(diào)試窗口中任一調(diào)試窗口采集的調(diào)試指令,和需要執(zhí)行該調(diào)試指令的目標(biāo)子系統(tǒng)的子系統(tǒng)標(biāo)識,封裝在符合上述物理通信接口支持的通信協(xié)議的一個控制信息中,并復(fù)用上述物理通信接口將該控制信息發(fā)送到嵌入式系統(tǒng)側(cè)。接收到的控制信息的一種可選格式示例如圖Ic所示。22 向所述嵌入式系統(tǒng)中所述子系統(tǒng)標(biāo)識對應(yīng)的子系統(tǒng),發(fā)送所述調(diào)試指令。嵌入式系統(tǒng)側(cè)對當(dāng)前接收到的控制信息進(jìn)行解析,獲取當(dāng)前接收到的控制信息中包括的調(diào)試指令和子系統(tǒng)標(biāo)識,并向該子系統(tǒng)標(biāo)識對應(yīng)的子系統(tǒng)發(fā)送調(diào)試指令。如此處理之后,可及時、準(zhǔn)確地將當(dāng)前獲取的調(diào)試指令發(fā)送到目標(biāo)子系統(tǒng),為實現(xiàn)多個子系統(tǒng)的并行調(diào)試提供了技術(shù)支持。23 接收所述多個子系統(tǒng)中第一子系統(tǒng)輸出的調(diào)試結(jié)果數(shù)據(jù),獲取所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識,并生成調(diào)試信息;所述調(diào)試信息包括所述調(diào)試結(jié)果數(shù)據(jù)以及所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識。24 通過所述物理通信接口向所述調(diào)試主機(jī)發(fā)送所述調(diào)試信息。當(dāng)嵌入式系統(tǒng)包括的多個子系統(tǒng)中任一子系統(tǒng)輸出有調(diào)試結(jié)果數(shù)據(jù)時,可將該調(diào)試結(jié)果數(shù)據(jù)和該子系統(tǒng)的子系統(tǒng)標(biāo)識,封裝在符合上述物理通信接口支持的通信協(xié)議的同一調(diào)試信息中,并復(fù)用上述物理通信接口將該調(diào)試信息發(fā)送到調(diào)試主機(jī)側(cè)。生成的調(diào)試信息的一種可選格式示例如圖Ib所示。如此處理之后,可實現(xiàn)多個子系統(tǒng)的調(diào)試結(jié)果數(shù)據(jù)的并行輸出,并便于調(diào)試主機(jī)側(cè)將將同一子系統(tǒng)發(fā)送的調(diào)試結(jié)果數(shù)據(jù)輸出到與該子系統(tǒng)一一對應(yīng)的調(diào)試窗口。本領(lǐng)域普通技術(shù)人員可以理解,本發(fā)明實施中21-22和23- 沒有必然的時序關(guān)系的限制,21-22可以和23-24并行執(zhí)行,11-12也可以在13-14之后執(zhí)行。本實施例提供的嵌入式系統(tǒng)的調(diào)試方法,復(fù)用一個物理通信接口進(jìn)行調(diào)試主機(jī)和嵌入式系統(tǒng)中多個子系統(tǒng)之間的數(shù)據(jù)交換,將嵌入式系統(tǒng)中每個子系統(tǒng)輸出的調(diào)試結(jié)果數(shù)據(jù),均和相應(yīng)子系統(tǒng)標(biāo)識一起通過上述物理通信接口發(fā)送給調(diào)試主機(jī)側(cè),實現(xiàn)多個子系統(tǒng)的調(diào)試結(jié)果數(shù)據(jù)的并行輸出,便于調(diào)試主機(jī)側(cè)將各個子系統(tǒng)發(fā)送的調(diào)試結(jié)果數(shù)據(jù)輸出到相應(yīng)的調(diào)試窗口 ;此外,調(diào)試器并獲取調(diào)試主機(jī)側(cè)發(fā)送的包括子系統(tǒng)標(biāo)識和調(diào)試指令的控制信息,可使嵌入式系統(tǒng)及時、準(zhǔn)確地將調(diào)試指令發(fā)送到目標(biāo)子系統(tǒng),為實現(xiàn)多個子系統(tǒng)的并行調(diào)試提供了技術(shù)支持。因此,本實施例提高了嵌入式系統(tǒng)的調(diào)試效率。圖3為本發(fā)明實施例提供的一種調(diào)試器的結(jié)構(gòu)示意圖,用于實現(xiàn)本發(fā)明圖Ia所示的方法。如圖3所示的調(diào)試器包括調(diào)試信息接收模塊31、調(diào)試結(jié)果數(shù)據(jù)轉(zhuǎn)發(fā)模塊32、控制信息獲取模塊33和控制信息發(fā)送模塊34。所述調(diào)試信息接收模塊31可用于從物理通信接口接收調(diào)試信息;所述物理通信接口連接調(diào)試主機(jī)和包括多個子系統(tǒng)的嵌入式系統(tǒng);所述調(diào)試信息包括所述多個子系統(tǒng)中第一子系統(tǒng)的調(diào)試結(jié)果數(shù)據(jù)及所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識。所述調(diào)試結(jié)果數(shù)據(jù)轉(zhuǎn)發(fā)模塊32可用于根據(jù)所述調(diào)試主機(jī)的多個調(diào)試窗口的窗口標(biāo)識和所述多個子系統(tǒng)的子系統(tǒng)標(biāo)識之間的映射關(guān)系,確定與所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識對應(yīng)的窗口標(biāo)識,并向所述確定的窗口標(biāo)識指向的調(diào)試窗口轉(zhuǎn)發(fā)所述調(diào)試結(jié)果數(shù)據(jù);所述控制信息獲取模塊33可用于獲取從所述多個調(diào)試窗口中第一調(diào)試窗口采集的調(diào)試指令、以及所述第一調(diào)試窗口的窗口標(biāo)識;根據(jù)所述映射關(guān)系,確定與所述第一調(diào)試窗口的窗口標(biāo)識對應(yīng)的子系統(tǒng)標(biāo)識,并生成控制信息,所述控制信息包括所述確定的子系統(tǒng)標(biāo)識和所述調(diào)試指令;所述控制信息發(fā)送模塊34可用于通過所述物理通信接口向所述嵌入式系統(tǒng)發(fā)送所述控制信息??蛇x的,本實施例提供的調(diào)試器還可以包括配置模塊35。所述配置模塊35可用于根據(jù)所述多個子系統(tǒng),為所述物理通信接口配置多個虛擬邏輯接口,所述多個虛擬邏輯接口與所述多個調(diào)試窗口對應(yīng)??蛇x的,本實施例提供的調(diào)試器還可包括映射關(guān)系獲取模塊36。所述映射關(guān)系獲取模塊36可用于獲取所述映射關(guān)系??蛇x的,本實施例所述的物理通信接口可為但不限于串口、并口或USB接口;所述嵌入式系統(tǒng)包括的任一子系統(tǒng)可為單核CPU、多核CPU中的任一硬件核處理器、NP、板卡或軟件系統(tǒng)。本實施例提供的調(diào)試器可運(yùn)行在調(diào)試主機(jī)上,復(fù)用一個物理通信接口進(jìn)行調(diào)試主機(jī)和嵌入式系統(tǒng)中多個子系統(tǒng)之間的數(shù)據(jù)交換,通過調(diào)試主機(jī)上開啟的多個調(diào)試窗口的窗口標(biāo)識、與嵌入式系統(tǒng)包括的多個子系統(tǒng)的子系統(tǒng)標(biāo)識之間的映射關(guān)系,處理通過該物理通信接口收發(fā)的數(shù)據(jù),可以將各個子系統(tǒng)發(fā)送的調(diào)試結(jié)果數(shù)據(jù)輸出到相應(yīng)的調(diào)試窗口,支持多個子系統(tǒng)的調(diào)試結(jié)果數(shù)據(jù)的并行輸出,還可以將各個調(diào)試窗口采集到的調(diào)試指令與需要執(zhí)行該調(diào)試指令的目標(biāo)子系統(tǒng)關(guān)聯(lián),使嵌入式系統(tǒng)及時、準(zhǔn)確地將調(diào)試指令發(fā)送到目標(biāo)子系統(tǒng),從而支持多個子系統(tǒng)的并行調(diào)試。因此,本發(fā)明實施例提高了嵌入式系統(tǒng)的調(diào)試效率。圖4為本發(fā)明實施例提供的另一種調(diào)試器的結(jié)構(gòu)示意圖,用于實現(xiàn)本發(fā)明圖2所示的方法。如圖4所示的調(diào)試器包括控制信息接收模塊41、調(diào)試指令發(fā)送模塊42、調(diào)試信息獲取模塊43和調(diào)試信息發(fā)送模塊44。所述控制信息接收模塊41可用于從物理通信接口接收控制信息;所述物理通信接口連接調(diào)試主機(jī)和包括多個子系統(tǒng)的嵌入式系統(tǒng);所述控制信息包括調(diào)試指令、以及所述調(diào)試指令對應(yīng)的目標(biāo)子系統(tǒng)的子系統(tǒng)標(biāo)識;所述調(diào)試指令發(fā)送模塊42可用于向所述嵌入式系統(tǒng)中所述控制信息包括的子系統(tǒng)標(biāo)識指向的子系統(tǒng),發(fā)送所述調(diào)試指令;所述調(diào)試信息獲取模塊43可用于接收所述多個子系統(tǒng)中第一子系統(tǒng)輸出的調(diào)試結(jié)果數(shù)據(jù),獲取所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識,并生成調(diào)試信息;所述調(diào)試信息包括所述調(diào)試結(jié)果數(shù)據(jù)以及輸出所述調(diào)試結(jié)果數(shù)據(jù)的所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識;所述調(diào)試信息發(fā)送模塊44可用于通過所述物理通信接口向所述調(diào)試主機(jī)發(fā)送所述調(diào)試信息??蛇x的,本實施例所述的物理通信接口可為但不限于串口、并口或USB接口;所述嵌入式系統(tǒng)包括的任一子系統(tǒng)可為單核CPU、多核CPU中的任一硬件核處理器、NP、板卡或軟件系統(tǒng)。
本實施例提供的調(diào)試器可運(yùn)行在被調(diào)試的嵌入式系統(tǒng)上,如可將嵌入式系統(tǒng)包括的任一子系統(tǒng)作為代理并在該子系統(tǒng)上運(yùn)行調(diào)試器。該情形下,嵌入式系統(tǒng)包括的不作為代理的其他子系統(tǒng),與作為代理的子系統(tǒng)之間通過子系統(tǒng)間通信通道交換數(shù)據(jù)。本實施例提供的調(diào)試器,復(fù)用一個物理通信接口進(jìn)行調(diào)試主機(jī)和嵌入式系統(tǒng)中多個子系統(tǒng)之間的數(shù)據(jù)交換,將嵌入式系統(tǒng)中每個子系統(tǒng)輸出的調(diào)試結(jié)果數(shù)據(jù),均和相應(yīng)子系統(tǒng)標(biāo)識一起通過上述物理通信接口發(fā)送給調(diào)試主機(jī)側(cè),實現(xiàn)多個子系統(tǒng)的調(diào)試結(jié)果數(shù)據(jù)的并行輸出,便于調(diào)試主機(jī)側(cè)將各個子系統(tǒng)發(fā)送的調(diào)試結(jié)果數(shù)據(jù)輸出到相應(yīng)的調(diào)試窗口 ; 此外,調(diào)試器并獲取調(diào)試主機(jī)側(cè)發(fā)送的包括子系統(tǒng)標(biāo)識和調(diào)試指令的控制信息,可使嵌入式系統(tǒng)及時、準(zhǔn)確地將調(diào)試指令發(fā)送到目標(biāo)子系統(tǒng),為實現(xiàn)多個子系統(tǒng)的并行調(diào)試提供了技術(shù)支持。因此,本實施例提高了嵌入式系統(tǒng)的調(diào)試效率。圖5為本發(fā)明實施例提供的一種調(diào)試系統(tǒng)的結(jié)構(gòu)示意圖。如圖5所示的調(diào)試系統(tǒng)包括調(diào)試主機(jī)51和嵌入式系統(tǒng)設(shè)備52,其中調(diào)試主機(jī)51包括第一調(diào)試器M,嵌入式系統(tǒng)設(shè)備52包括多個子系統(tǒng)和第二調(diào)試器55 ;調(diào)試主機(jī)51和嵌入式系統(tǒng)設(shè)備52通過一個物理通信接口 53相連。調(diào)試主機(jī)51支持開啟多個調(diào)試窗口 ;第一調(diào)試器M在調(diào)試主機(jī)側(cè)對經(jīng)該物理通信接口 53收發(fā)的數(shù)據(jù)進(jìn)行處理,第二調(diào)試器55在嵌入式系統(tǒng)側(cè)對經(jīng)物理通信接口 53收發(fā)的數(shù)據(jù)進(jìn)行處理。第一調(diào)試器M的結(jié)構(gòu)可參見圖3對應(yīng)實施例的記載,其工作機(jī)理可參見圖Ia對應(yīng)實施例的記載;第二調(diào)試器陽的結(jié)構(gòu)可參見圖4對應(yīng)實施例的記載,其工作機(jī)理可參見圖2對應(yīng)實施例的記載,在此不再贅述。所述第二調(diào)試器55運(yùn)行在所述多個子系統(tǒng)中的任一子系統(tǒng)上。可選的,可將嵌入式系統(tǒng)包括的多個子系統(tǒng)中的任一子系統(tǒng)作為代理,并在作為代理的子系統(tǒng)上運(yùn)行第二調(diào)試器55 ;嵌入式系統(tǒng)包括的不作為代理的其他子系統(tǒng),與作為代理的子系統(tǒng)之間通過子系統(tǒng)間通信通道交換數(shù)據(jù)。本實施例提供的通信系統(tǒng),復(fù)用一個物理通信接口進(jìn)行調(diào)試主機(jī)和嵌入式系統(tǒng)中多個子系統(tǒng)之間的數(shù)據(jù)交換,通過調(diào)試主機(jī)上開啟的多個調(diào)試窗口的窗口標(biāo)識、與嵌入式系統(tǒng)包括的多個子系統(tǒng)的子系統(tǒng)標(biāo)識之間的映射關(guān)系,處理通過該物理通信接口收發(fā)的數(shù)據(jù),可以將各個子系統(tǒng)發(fā)送的調(diào)試結(jié)果數(shù)據(jù)輸出到相應(yīng)的調(diào)試窗口,支持多個子系統(tǒng)的調(diào)試結(jié)果數(shù)據(jù)的并行輸出,還可以將各個調(diào)試窗口采集到的調(diào)試指令與需要執(zhí)行該調(diào)試指令的目標(biāo)子系統(tǒng)關(guān)聯(lián),使嵌入式系統(tǒng)及時、準(zhǔn)確地將調(diào)試指令發(fā)送到目標(biāo)子系統(tǒng),從而支持多個子系統(tǒng)的并行調(diào)試。因此,本發(fā)明實施例提高了嵌入式系統(tǒng)的調(diào)試效率。本領(lǐng)域普通技術(shù)人員可以理解實現(xiàn)上述實施例方法中的全部或部分步驟是可以通過程序來指令相關(guān)的硬件完成,所述的程序可以存儲于計算機(jī)可讀存儲介質(zhì)中,所述存儲介質(zhì)可以是R0M/RAM,磁盤或光盤等。以上所述,僅為本發(fā)明較佳的具體實施方式
,但本發(fā)明的保護(hù)范圍并不局限于此, 任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換, 都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。
權(quán)利要求
1.一種嵌入式系統(tǒng)的調(diào)試方法,其特征在于,包括從物理通信接口接收調(diào)試信息;所述物理通信接口連接調(diào)試主機(jī)和包括多個子系統(tǒng)的嵌入式系統(tǒng);所述調(diào)試信息包括所述多個子系統(tǒng)中第一子系統(tǒng)的調(diào)試結(jié)果數(shù)據(jù)及所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識;根據(jù)所述調(diào)試主機(jī)的多個調(diào)試窗口的窗口標(biāo)識和所述多個子系統(tǒng)的子系統(tǒng)標(biāo)識之間的映射關(guān)系,確定與所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識對應(yīng)的窗口標(biāo)識,并向所述確定的窗口標(biāo)識指向的調(diào)試窗口轉(zhuǎn)發(fā)所述調(diào)試結(jié)果數(shù)據(jù);獲取從所述多個調(diào)試窗口中第一調(diào)試窗口采集的調(diào)試指令、以及所述第一調(diào)試窗口的窗口標(biāo)識;根據(jù)所述映射關(guān)系,確定與所述第一調(diào)試窗口的窗口標(biāo)識對應(yīng)的子系統(tǒng)標(biāo)識,并生成控制信息,所述控制信息包括所述確定的子系統(tǒng)標(biāo)識和所述調(diào)試指令; 通過所述物理通信接口向所述嵌入式系統(tǒng)發(fā)送所述控制信息。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,在從物理通信接口接收調(diào)試信息之前,所述方法還包括根據(jù)所述多個子系統(tǒng),為所述物理通信接口配置多個虛擬邏輯接口,所述多個虛擬邏輯接口與所述多個調(diào)試窗口對應(yīng)。
3.根據(jù)權(quán)利要求1或2所述的方法,其特征在于,在從物理通信接口接收調(diào)試信息之前,所述方法還包括獲取所述映射關(guān)系。
4.一種嵌入式系統(tǒng)的調(diào)試方法,其特征在于,包括從物理通信接口接收控制信息;所述物理通信接口連接調(diào)試主機(jī)和包括多個子系統(tǒng)的嵌入式系統(tǒng);所述控制信息包括調(diào)試指令以及子系統(tǒng)標(biāo)識;向所述嵌入式系統(tǒng)中所述子系統(tǒng)標(biāo)識對應(yīng)的子系統(tǒng),發(fā)送所述調(diào)試指令; 接收所述多個子系統(tǒng)中第一子系統(tǒng)輸出的調(diào)試結(jié)果數(shù)據(jù),獲取所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識,并生成調(diào)試信息;所述調(diào)試信息包括所述調(diào)試結(jié)果數(shù)據(jù)以及所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識;通過所述物理通信接口向所述調(diào)試主機(jī)發(fā)送所述調(diào)試信息。
5.一種調(diào)試器,其特征在于,包括調(diào)試信息接收模塊,用于從物理通信接口接收調(diào)試信息;所述物理通信接口連接調(diào)試主機(jī)和包括多個子系統(tǒng)的嵌入式系統(tǒng);所述調(diào)試信息包括所述多個子系統(tǒng)中第一子系統(tǒng)的調(diào)試結(jié)果數(shù)據(jù)及所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識;調(diào)試結(jié)果數(shù)據(jù)轉(zhuǎn)發(fā)模塊,用于根據(jù)所述調(diào)試主機(jī)的多個調(diào)試窗口的窗口標(biāo)識和所述多個子系統(tǒng)的子系統(tǒng)標(biāo)識之間的映射關(guān)系,確定與所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識對應(yīng)的窗口標(biāo)識,并向所述確定的窗口標(biāo)識指向的調(diào)試窗口轉(zhuǎn)發(fā)所述調(diào)試結(jié)果數(shù)據(jù);控制信息獲取模塊,用于獲取從所述多個調(diào)試窗口中第一調(diào)試窗口采集的調(diào)試指令、 以及所述第一調(diào)試窗口的窗口標(biāo)識;根據(jù)所述映射關(guān)系,確定與所述第一調(diào)試窗口的窗口標(biāo)識對應(yīng)的子系統(tǒng)標(biāo)識,并生成控制信息,所述控制信息包括所述確定的子系統(tǒng)標(biāo)識和所述調(diào)試指令;控制信息發(fā)送模塊,用于通過所述物理通信接口向所述嵌入式系統(tǒng)發(fā)送所述控制信息ο
6.根據(jù)權(quán)利要求5所述的調(diào)試器,其特征在于,還包括配置模塊,用于根據(jù)所述多個子系統(tǒng),為所述物理通信接口配置多個虛擬邏輯接口,所述多個虛擬邏輯接口與所述多個調(diào)試窗口對應(yīng)。
7.根據(jù)權(quán)利要求5或6所述的調(diào)試器,其特征在于,還包括 映射關(guān)系獲取模塊,用于獲取所述映射關(guān)系。
8.—種調(diào)試器,其特征在于,包括控制信息接收模塊,用于從物理通信接口接收控制信息;所述物理通信接口連接調(diào)試主機(jī)和包括多個子系統(tǒng)的嵌入式系統(tǒng);所述控制信息包括調(diào)試指令以及子系統(tǒng)標(biāo)識;調(diào)試指令發(fā)送模塊,用于向所述嵌入式系統(tǒng)中所述子系統(tǒng)標(biāo)識對應(yīng)的子系統(tǒng),發(fā)送所述調(diào)試指令;調(diào)試信息獲取模塊,用于接收所述多個子系統(tǒng)中第一子系統(tǒng)輸出的調(diào)試結(jié)果數(shù)據(jù),獲取所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識,并生成調(diào)試信息;所述調(diào)試信息包括所述調(diào)試結(jié)果數(shù)據(jù)以及所述第一子系統(tǒng)的子系統(tǒng)標(biāo)識;調(diào)試信息發(fā)送模塊,用于通過所述物理通信接口向所述調(diào)試主機(jī)發(fā)送所述調(diào)試信息。
9.一種調(diào)試系統(tǒng),其特征在于,包括調(diào)試主機(jī)和嵌入式系統(tǒng)設(shè)備,其中 所述調(diào)試主機(jī)包括第一調(diào)試器;所述嵌入式系統(tǒng)設(shè)備包括多個子系統(tǒng)和第二調(diào)試器; 所述調(diào)試主機(jī)和所述嵌入式系統(tǒng)設(shè)備通過一個物理通信接口相連; 所述第一調(diào)試器為如權(quán)利要求5-7任一所述的調(diào)試器; 所述第二調(diào)試器為如權(quán)利要求8所述的調(diào)試器。
10.根據(jù)權(quán)利要求9所述的調(diào)試系統(tǒng),其特征在于,所述第二調(diào)試器運(yùn)行在所述多個子系統(tǒng)中的任一子系統(tǒng)上。
全文摘要
本發(fā)明公開了一種嵌入式系統(tǒng)的調(diào)試方法、調(diào)試器和調(diào)試系統(tǒng)。從物理通信接口接收調(diào)試信息;該接口連接調(diào)試主機(jī)和包括多個子系統(tǒng)的嵌入式系統(tǒng);調(diào)試信息包括多個子系統(tǒng)中第一子系統(tǒng)的調(diào)試結(jié)果數(shù)據(jù)及其子系統(tǒng)標(biāo)識;根據(jù)調(diào)試主機(jī)的多個調(diào)試窗口的窗口標(biāo)識和多個子系統(tǒng)的子系統(tǒng)標(biāo)識之間的映射關(guān)系,確定與第一子系統(tǒng)的子系統(tǒng)標(biāo)識對應(yīng)的窗口標(biāo)識,并向確定的窗口標(biāo)識指向的調(diào)試窗口轉(zhuǎn)發(fā)調(diào)試結(jié)果數(shù)據(jù);獲取從多個調(diào)試窗口中第一調(diào)試窗口采集的調(diào)試指令、以及第一調(diào)試窗口的窗口標(biāo)識;根據(jù)映射關(guān)系確定與第一調(diào)試窗口的窗口標(biāo)識對應(yīng)的子系統(tǒng)標(biāo)識,生成控制信息并通過上述接口發(fā)送。本發(fā)明提高了嵌入式系統(tǒng)的調(diào)試效率。
文檔編號G06F11/26GK102426548SQ201110343268
公開日2012年4月25日 申請日期2011年11月3日 優(yōu)先權(quán)日2011年11月3日
發(fā)明者徐永新 申請人:華為技術(shù)有限公司