新聞中心

EEPW首頁(yè) > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > ARM11的TD-LTE多?;鶐脚_(tái)中的跟蹤技術(shù)分析

ARM11的TD-LTE多模基帶平臺(tái)中的跟蹤技術(shù)分析

作者: 時(shí)間:2012-09-18 來(lái)源:網(wǎng)絡(luò) 收藏

2.3 傳輸控制機(jī)制
實(shí)時(shí)跟蹤系統(tǒng)通過(guò)串口在PC端和子系統(tǒng)之間進(jìn)行通信,采用DMA總線控制器進(jìn)行跟蹤信息搬移。DMA是一種不經(jīng)過(guò)處理器的CPU,可直接從內(nèi)存中存取數(shù)據(jù)的數(shù)據(jù)交換模式。在DMA模式下,CPU只需向DMA總線控制器下達(dá)指令,就可使其處理數(shù)據(jù)的傳送,接收數(shù)據(jù)傳送完畢的反饋信息,從而大大降低了CPU資源占有率。傳輸控制單元采取DMA同步中斷發(fā)送跟蹤信息,每次以等長(zhǎng)字節(jié)傳輸,將跟蹤信息搬移至串口發(fā)送寄存器中,再通過(guò)配置串口發(fā)送寄存器,將跟蹤信息發(fā)送至PC端解析顯示單元。

3 優(yōu)化后跟蹤方案
3.1 新跟蹤緩存的管理
本設(shè)計(jì)方案采用的緩存機(jī)制是利用所有跟蹤函數(shù)在進(jìn)入跟蹤時(shí),均能夠確切知道當(dāng)前跟蹤信息所需存儲(chǔ)空間長(zhǎng)度的特點(diǎn),為當(dāng)前跟蹤信息預(yù)留出所需要的存儲(chǔ)空間。當(dāng)?shù)蛢?yōu)先級(jí)任務(wù)的跟蹤信息被高優(yōu)先級(jí)任務(wù)跟蹤信息搶占時(shí),內(nèi)存中已經(jīng)為低優(yōu)先級(jí)任務(wù)的跟蹤信息預(yù)留了存儲(chǔ)空間,不會(huì)導(dǎo)致跟蹤信息丟失和錯(cuò)亂的情況,新緩存機(jī)制圖如圖4所示。

本文引用地址:http://butianyuan.cn/article/148383.htm

d.JPG


通過(guò)維護(hù)兩個(gè)寫索引和一個(gè)全局讀索引來(lái)管理緩存,其中兩個(gè)寫索引分別為全局寫索引和當(dāng)前寫索引,全局寫索引用來(lái)與全局讀索引進(jìn)行匹配,通過(guò)這兩個(gè)索引來(lái)計(jì)算緩存的剩余空間和已用空間,從而判斷何時(shí)發(fā)送和寫入跟蹤信息;而當(dāng)前寫索引的作用就是為當(dāng)前的跟蹤信息預(yù)留空間。在本設(shè)計(jì)中摒棄了svnprintf函數(shù),采用memcpy函數(shù)直接將跟蹤信息寫入緩存中,并且采用固定參數(shù)的跟蹤接口,跟蹤源根據(jù)跟蹤信息的不同需求,調(diào)用相應(yīng)變量的跟蹤接口。
3.2 新跟蹤控制機(jī)制
新跟蹤控制機(jī)制的所有控制都由各個(gè)模塊的跟蹤源以函數(shù)宏定義的形式對(duì)跟蹤接口進(jìn)行重新封裝,將跟蹤信息的判斷放在跟蹤接口的外部。跟蹤控制的場(chǎng)景不再進(jìn)行詳細(xì)的劃分,考慮采用橫向和縱向兩個(gè)方面來(lái)對(duì)跟蹤進(jìn)行控制。橫向的控制通過(guò)對(duì)跟蹤信息的重要程度來(lái)劃分,包括全開(kāi)放、半開(kāi)放、速率測(cè)試、用戶釋放和測(cè)試終端等方面;縱向的控制是系統(tǒng)中各個(gè)模塊的跟蹤信息的控制,當(dāng)開(kāi)發(fā)人員需要查看某個(gè)或某些模塊的跟蹤信息時(shí),通過(guò)設(shè)置相應(yīng)的值來(lái)輸出預(yù)想模塊的跟蹤信息。新跟蹤控制圖如圖5所示。

e.JPG



4 性能對(duì)比分析
通過(guò)原始跟蹤方案與新跟蹤方案的性能測(cè)試與對(duì)比分析得出,新跟蹤方案提高了執(zhí)行效率表現(xiàn)在3個(gè)方面:
①在跟蹤控制方面,原始跟蹤方案的跟蹤控制過(guò)于細(xì)致,跟蹤判斷過(guò)程過(guò)于復(fù)雜繁瑣,多層的switch…case嵌套判斷消耗了一些處理器的時(shí)間;新跟蹤的控制采用跟蹤接口外部控制,若當(dāng)前跟蹤不需要打印時(shí),則當(dāng)前任務(wù)不會(huì)進(jìn)入跟蹤接口,直接丟棄本條跟蹤,這樣避免了函數(shù)上下文切換的過(guò)程,減少了任務(wù)棧的切換,從而提高了執(zhí)行效率。
②緩存管理方面,原始跟蹤方案采用嵌套緩存,高優(yōu)先級(jí)任務(wù)的跟蹤信息寫入嵌套緩存中,當(dāng)需要輸出跟蹤信息時(shí),需要將嵌套緩存中的數(shù)據(jù)回拷到全局跟蹤信息緩存,在回拷的過(guò)程中白白地消耗了處理器的時(shí)間。而新跟蹤緩存中,將所有的跟蹤信息全部存儲(chǔ)到一個(gè)緩存中,直接將跟蹤信息輸出,節(jié)省了回拷過(guò)程的時(shí)間,從而為處理器處理其他事件提高了效率。
③新跟蹤方案在跟蹤接口內(nèi)部摒棄了svnprintf函數(shù),直接將跟蹤數(shù)據(jù)memcpy轉(zhuǎn)移到跟蹤緩存中。原始方案中,跟蹤數(shù)據(jù)的原始碼流通過(guò)svnprintf函數(shù)在ARM內(nèi)部進(jìn)行字符串的轉(zhuǎn)化過(guò)程,再通過(guò)PC端的解碼軟件來(lái)解析原始碼流,從而轉(zhuǎn)化成可見(jiàn)字符串,省去了函數(shù)遍歷參數(shù)的過(guò)程(該過(guò)程消耗了ARM的執(zhí)行時(shí)間)。從變參的跟蹤接口優(yōu)化成定參跟蹤接口,這種方式大大地提高了ARM的執(zhí)行效率。
對(duì)于兩種跟蹤方案的測(cè)試分析,采用調(diào)用一條相同的跟蹤信息所消耗的中一個(gè)子幀的時(shí)間片來(lái)統(tǒng)計(jì)時(shí)間,從而對(duì)比原始跟蹤方案與新跟蹤方案的效率提高程度。的一個(gè)無(wú)線幀長(zhǎng)為10 ms,一個(gè)無(wú)線子幀又分為兩個(gè)5 ms的半幀,每個(gè)半幀中有5個(gè)1 ms子幀,每個(gè)子幀有0x7800個(gè)時(shí)間片。

f.JPG


跟蹤性能分析圖如圖6所示,在原始跟蹤方案中調(diào)用5次跟蹤接口打印字符串”ts_00_tra01_01tdynamicTrace01”及相應(yīng)個(gè)數(shù)的變量的值,跟蹤信息消耗的時(shí)間為T_old=(0x5679-0x481C)×(1/0x7800)=0.119 7 ms。在新跟蹤方案中,同樣調(diào)用5次新跟蹤方案,跟蹤接口打印同樣字符串的內(nèi)容及相應(yīng)個(gè)數(shù)的變量的值,跟蹤信息消耗的時(shí)間為T_new=(0x4809-0x4188)×(1/0x7800)=0.052 6 ms。由此可見(jiàn),T_old的消耗時(shí)間大約是T_new的2倍,新跟蹤方案節(jié)省了一半以上的時(shí)間,然后又多次對(duì)各種跟蹤接口進(jìn)行驗(yàn)證、測(cè)試、對(duì)比后,再次確認(rèn)了新跟蹤方案對(duì)ARM的執(zhí)行效率有很大的提高。

結(jié)語(yǔ)
在多?;鶐У母櫡桨钢?,由于跟蹤的傳輸通道只有一個(gè),不能在不同的系統(tǒng)模式下采用不同的跟蹤方案,并且TD_LTE多模方案中不僅要求跟蹤信息的可靠性、時(shí)序性和正確性,對(duì)跟蹤方案在ARM子系統(tǒng)中的執(zhí)行效率也有所要求,不能影響的高速率的業(yè)務(wù)需求。綜上考慮,本項(xiàng)目中采用新的跟蹤方案可以滿足TD-LTE下ARM子系統(tǒng)的執(zhí)行效率要求和數(shù)據(jù)業(yè)務(wù)的速率要求。


上一頁(yè) 1 2 下一頁(yè)

評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉