一種嵌入式基帶系統(tǒng)定時器裝置的研究
2.3 軟件定時器的增加
操作系統(tǒng)定時器增加時,根據(jù)新定時器的超時時間順序,插入到系統(tǒng)定時器列表中,同時保證系統(tǒng)定時器剩余超時時間的有序性。若新插入定時器剩余超時時間小于TL,即插入定時器為高精度定時器,需要按照下列流程處理:
①如果插入前定時器列表頭的定時器不是高精度定時器,則判斷當(dāng)前鏈表頭定時器的剩余超時時間t是否大于新插入定時器時間x。其中,t為主定時器剩余超時時間;x為新插入定時器剩余超時時間;m為當(dāng)前時刻,10是指TD—SCDMA的定時精度為10 ms。
②若xt,則將該定時器插入到定時器列表頭中,啟動輔助定時器。
③若x≥t,則對新增定時器剩余超時時間按照公式x=x-t+10進(jìn)行修正,再根據(jù)修正的值的大小,將其插入到鏈表頭定時器后鏈表中,定時器增加流程1如圖4所示。本文引用地址:http://cafeforensic.com/article/148228.htm
如果插入前定時器列表頭的定時器是高精度定時器,定時器增加流程2如圖5所示。根據(jù)當(dāng)前輔定時器超時時間時刻t與新插入定時器x超時時間關(guān)系進(jìn)行處理,步驟如下:
①若xt,則調(diào)整輔定時器超時時間為x,同時修正鏈表中第二個元素剩余超時時間長為y—x。其中,t為輔定時器超時時間時刻,x為新加入定時器剩余超時時間。
②若x≥t,修正新插入輔定時器超時時間為x=x-t,同時根據(jù)當(dāng)前x的值按超時順序?qū)⑵洳迦氲疥犃兄小?br />
結(jié)語
在嵌入式系統(tǒng)的設(shè)計中,很多應(yīng)用中的時間特性都是很重要的參數(shù),尤其在TD—LTE/TD—SCDMA雙模基帶系統(tǒng)的開發(fā)中顯得尤為重要。在基帶操作系統(tǒng)中,一般維護(hù)的一個定時器列表無法滿足定時器需求。若設(shè)置定時器時間較短,則可能加重系統(tǒng)中斷服務(wù)程序的負(fù)荷,若設(shè)置時間片較長,則無法滿足協(xié)議時間的精度要求。故本優(yōu)化方案中,在高精度定時器達(dá)到超時時刻時,才啟動輔定時器,用輔定時器控制觸發(fā)高精度定時器的超時動作,減少輔定時器的中斷次數(shù)。另外,也不需要動態(tài)調(diào)整主定時器的時鐘設(shè)置,可以保證操作系統(tǒng)軟時鐘穩(wěn)定、準(zhǔn)確,能夠同時滿足多模終端對操作系統(tǒng)定時器的要求。
評論