最近的技術(shù)發(fā)展導(dǎo)致了系統(tǒng)調(diào)試和優(yōu)化復(fù)雜性的飛躍。系統(tǒng)變得越來越小,越來越復(fù)雜,許多不同的功能被集成在一個(gè)芯片上。在嵌入式開發(fā)中,多個(gè)芯片之間有更多的通信。甚至什么構(gòu)成了一個(gè)bug也變得更加難以定義。
更大、更復(fù)雜的系統(tǒng)意味著調(diào)試、故障排除或微調(diào)設(shè)備的過程更長、更艱巨。如果一個(gè)組織需要幾個(gè)月的時(shí)間來調(diào)試,那就相當(dāng)于幾個(gè)月的收入損失。
很少有人愿意為調(diào)試支付額外費(fèi)用。這是一種必要的邪惡。任何可以最小化調(diào)試影響的事情都是有價(jià)值的。MIPI聯(lián)盟廣泛的標(biāo)準(zhǔn)化調(diào)試和跟蹤規(guī)范組合旨在簡化物聯(lián)網(wǎng)(IoT)、汽車、5G和其他應(yīng)用領(lǐng)域的移動(dòng)系統(tǒng)開發(fā)。
分層、系統(tǒng)化方法
MIPI采取了分層的方法進(jìn)行調(diào)試和跟蹤,從最底層的硬件一直到軟件層。這個(gè)想法是讓一個(gè)組織能夠挑選它需要的規(guī)范,有策略地將它們加入到它的嵌入式開發(fā)環(huán)境中,然后圍繞標(biāo)準(zhǔn)分層的接口和協(xié)議集添加它自己的價(jià)值。九個(gè)MIPI調(diào)試和跟蹤規(guī)范的組合最近公開提供下載:
l 用于IP套接字的MIPI千兆調(diào)試(MIPI GbD IPS)v1.0-MPI GbD IPS是一種適配器,用于促進(jìn)從智能手機(jī)到物聯(lián)網(wǎng)端點(diǎn)的所有類型連接設(shè)備的遠(yuǎn)程調(diào)試。
l MIPI Gigabit Debug for USB(MIPI GbD USB)v1.1-MIPI GbD USB最大限度地減少了調(diào)試對(duì)系統(tǒng)功能的影響,并使工程師能夠在連接承載其他流量時(shí)使用USB連接調(diào)試設(shè)備。
l MIPI高速跟蹤接口(MIPI HTI)v1.0-MPI HTI是數(shù)據(jù)端口的串行實(shí)現(xiàn),通過在裸機(jī)環(huán)境中重用這些接口的低級(jí)別物理高速部分,利用了可用的高速串行接口技術(shù)。通過這種方式,與并行實(shí)現(xiàn)相比,MIPI HTI以更少的I/O引腳提供更高的傳輸帶寬。
l 用于調(diào)試和測試的MIPI窄接口(MIPI NIDnT)v1.2-MIPI NIDnT標(biāo)準(zhǔn)化了設(shè)備上用于調(diào)試和試驗(yàn)程序的功能端口的使用。該規(guī)范旨在使嵌入式開發(fā)人員更容易識(shí)別復(fù)雜設(shè)計(jì)中的問題,并通過最小化對(duì)昂貴的專有測試工具的依賴來降低開發(fā)成本。設(shè)計(jì)師喜歡在移動(dòng)和受移動(dòng)影響的設(shè)計(jì)中廣泛使用的其他接口上執(zhí)行調(diào)試和測試的多功能性。
l MIPI并行跟蹤接口(MIPI PTI)v2.0-MPI PTI是一個(gè)具有多個(gè)數(shù)據(jù)信號(hào)和時(shí)鐘的并行接口,用于將有關(guān)系統(tǒng)功能和行為的跟蹤數(shù)據(jù)導(dǎo)出到主機(jī)系統(tǒng)以進(jìn)行分析和顯示。
l MIPI SneakPeek協(xié)議(MIPI SPP)v2.0-MIPI SPP允許調(diào)試測試系統(tǒng)(DTS)和移動(dòng)終端目標(biāo)系統(tǒng)(TS)之間的通信,有助于DTS內(nèi)的軟件調(diào)試TS操作。用戶減少了對(duì)專用調(diào)試通信接口的依賴,并利用熟悉的地址映射讀寫事務(wù)機(jī)制來觀察、查詢和調(diào)整TS。
l MIPI系統(tǒng)跟蹤協(xié)議(MIPI STP)v2.2作為一種通用的基本協(xié)議開發(fā),可由多個(gè)特定于應(yīng)用程序的跟蹤協(xié)議共享,MIPI STP允許其數(shù)據(jù)流與高度優(yōu)化的協(xié)議共存,該協(xié)議用于傳輸處理器程序流、定時(shí)或低層總線事務(wù)的數(shù)據(jù)。
l MIPI系統(tǒng)軟件跟蹤(MIPI SyS-T)v1.0-MPI SyS-T是用于在測試系統(tǒng)和設(shè)備(例如片上系統(tǒng)(SoC)或平臺(tái))之間傳輸軟件跟蹤和調(diào)試信息的通用數(shù)據(jù)格式。在嵌入式開發(fā)中,它提供了一種與供應(yīng)商或操作系統(tǒng)(OS)無關(guān)的便捷方法,可以跨軟件、固件或硬件實(shí)現(xiàn)交換調(diào)試信息。
MIPI跟蹤包裝協(xié)議(MIPI TWP)v1.1-MIPI TWP允許將多個(gè)源跟蹤流折疊為單個(gè)跟蹤流。源字節(jié)流被分配了系統(tǒng)唯一標(biāo)識(shí),包裝協(xié)議封裝了系統(tǒng)中的所有流。
此外,MIPI Debug for I3C是一種用于在DTS和TS之間傳輸調(diào)試控制和數(shù)據(jù)的規(guī)范,正在開發(fā)中,計(jì)劃于2020年公開。
MIPI調(diào)試工作組遵循了許多不同的策略,以盡量減少調(diào)試和跟蹤過程的影響。例如,減少專用接口對(duì)于物聯(lián)網(wǎng)和其他移動(dòng)應(yīng)用領(lǐng)域尤其重要,因?yàn)橛脩魺o法負(fù)擔(dān)將主要的房地產(chǎn)用于額外的引腳和額外的尺寸。具有重用接口和利用功能接口的能力解決了高效使用不動(dòng)產(chǎn)的需求,因此這一需求為工作組開發(fā)和完善MIPI調(diào)試和跟蹤規(guī)范提供了信息。
此外,在嵌入式開發(fā)中,在開發(fā)調(diào)試和跟蹤規(guī)范時(shí),MIPI力求:
l 最小化引腳成本并提高基本調(diào)試接口的性能
l 提高高性能接口的帶寬、功能和可靠性,以便將高帶寬、單向處理器跟蹤數(shù)據(jù)導(dǎo)出到調(diào)試工具
l 部署具有高帶寬需求所需性能的物理健壯調(diào)試連接器
l 開發(fā)通用跟蹤協(xié)議,允許將許多不同的片上跟蹤源封裝到單個(gè)跟蹤數(shù)據(jù)流中
l 最大化現(xiàn)場系統(tǒng)的調(diào)試可見性
l 利用移動(dòng)系統(tǒng)新的高帶寬功能接口進(jìn)行調(diào)試傳輸
專注于增值
通過專注于限制移動(dòng)數(shù)據(jù)的框架和協(xié)議的影響,并為調(diào)試和跟蹤過程提供控制,MIPI釋放了硅供應(yīng)商和原始設(shè)備制造商(OEM),以最大限度地利用這些標(biāo)準(zhǔn)化管道,然后投資于有助于提高吞吐量的高價(jià)值活動(dòng)。
例如,跟蹤周圍的規(guī)范;MIPI PTI、MIPI HTI、MIPI-STP、MIPI TWP和MIPI SyS-T對(duì)于為系統(tǒng)設(shè)計(jì)者和嵌入式開發(fā)人員提供嵌入式系統(tǒng)行為的可見性尤其重要。
嵌入式SoC上的流式接口可用于將有關(guān)系統(tǒng)功能和行為的數(shù)據(jù)導(dǎo)出到主機(jī)系統(tǒng)以進(jìn)行分析和顯示。監(jiān)控處理器指令和數(shù)據(jù)流的組件、在處理器上運(yùn)行的軟件中的儀表或監(jiān)控處理器外活動(dòng)的組件可以提供數(shù)據(jù),使開發(fā)人員能夠重建或“跟蹤”系統(tǒng)活動(dòng)的某些方面。一個(gè)或多個(gè)嵌入式處理器的指令執(zhí)行序列、嵌入式處理器內(nèi)核進(jìn)行的數(shù)據(jù)總線事務(wù)、系統(tǒng)互連上的事務(wù)快照或儀表化應(yīng)用程序代碼的流式輸出都是這種跟蹤數(shù)據(jù)的示例。隨著物聯(lián)網(wǎng)、汽車、5G和其他應(yīng)用領(lǐng)域移動(dòng)系統(tǒng)中嵌入式系統(tǒng)的復(fù)雜性,這種可見性的重要性也在不斷增加。
通過公開規(guī)范,MIPI使開發(fā)人員、工具供應(yīng)商和其他人能夠圍繞調(diào)試通信和跟蹤數(shù)據(jù)建立價(jià)值。通過這種方式,它允許一個(gè)強(qiáng)大的生態(tài)系統(tǒng)扎根,進(jìn)一步擴(kuò)大規(guī)范的互操作性,并豐富規(guī)范周圍的嵌入式開發(fā)環(huán)境。