ACC簡介
HICK時(shí)鐘校準(zhǔn)器(ACC)利用OTGFS作為設(shè)備時(shí)產(chǎn)生的SOF信號作為參考信號達(dá)到校準(zhǔn)HICK的目的,SOF信號為主機(jī)發(fā)給設(shè)備其周期為1ms的脈沖信號。ACC控制器采用“跨越回歸”算法,可以將HICK頻率盡可能校準(zhǔn)到靠近目標(biāo)頻率。圖1. ACC控制器架構(gòu)
ACC功能解析
主要特性
ACC控制器具備如下特性:
- 校準(zhǔn)HICK,已達(dá)到對OTGFS設(shè)備提供48MHz±0.25%精度的時(shí)鐘
- SOF標(biāo)志可選擇來源:OTGFS1或者OTGFS2
- 可配置的觸發(fā)校準(zhǔn)功能的邊界頻率
- 兩種校驗(yàn)方式:粗校驗(yàn)和精校驗(yàn)
- 狀態(tài)標(biāo)志:校準(zhǔn)就緒標(biāo)志和SOF參考信號丟失標(biāo)志
- 帶標(biāo)志的中斷源:校準(zhǔn)就緒標(biāo)志中斷源和SOF參考信號丟失標(biāo)志中斷源
中斷請求
擁有兩個(gè)中斷請求源:校準(zhǔn)就緒中斷源和SOF參考信號丟失中斷源表1. ACC中斷源
當(dāng)設(shè)置了對應(yīng)的使能位,當(dāng)產(chǎn)生了對應(yīng)的中斷,就會(huì)進(jìn)入對應(yīng)的中斷處理函數(shù)。
圖2. ACC中斷示意圖
校準(zhǔn)原理
首先需要了解到,如果系統(tǒng)使用的是HICK作為系統(tǒng)時(shí)鐘源,而本身ACC模塊又是對HICK進(jìn)行校準(zhǔn),那么此時(shí)整個(gè)系統(tǒng)是不具備校準(zhǔn)條件的,因?yàn)闆]有一個(gè)準(zhǔn)確的參考信號作為校準(zhǔn)的基準(zhǔn),所以就引入了OTGFS的SOF信號。SOF信號是外部主機(jī)提供的,主機(jī)將準(zhǔn)確的SOF信號(1ms周期)給到設(shè)備(待校準(zhǔn)系統(tǒng)),然后ACC模塊采樣SOF信號,并進(jìn)行一系列的計(jì)算達(dá)到判定HICK是否準(zhǔn)確,如若發(fā)現(xiàn)HICK不準(zhǔn)確那么就會(huì)進(jìn)行校準(zhǔn)動(dòng)作。
SOF周期信號:1毫秒的周期性必須是準(zhǔn)確的,是自動(dòng)校準(zhǔn)模塊能夠正常工作的前提條件;
SOF信號通過PA8輸出,如下圖:圖3. SOF信號示意圖
cross-return策略(跨越回歸算法):計(jì)算出離理論值最近的校準(zhǔn)值;從理論上來說,可以將校準(zhǔn)后的實(shí)際頻率調(diào)校到離目標(biāo)頻率(8MHz)約0.5個(gè)step的精度范圍以內(nèi)。
圖4. 跨越回歸算法示意圖如上圖所示,一旦觸發(fā)自動(dòng)校準(zhǔn)的條件滿足,自動(dòng)校準(zhǔn)就會(huì)按照step所規(guī)定的步長調(diào)整HICKCAL或者HICKTRIM。
跨越(cross):
在滿足自動(dòng)校驗(yàn)的條件后的第一個(gè)1毫秒采樣周期內(nèi)的實(shí)際采樣值要么小于C2,要么大于C2。當(dāng)這個(gè)值小于C2,自動(dòng)校準(zhǔn)按照step的定義,增加HICKCAL或者HICKTRIM,直到實(shí)際采樣值比C2大,實(shí)現(xiàn)實(shí)際采樣值由小到大對C2的跨越。當(dāng)這個(gè)值大于C2,自動(dòng)校準(zhǔn)按照step的定義,減少HICKCAL或者HICKTRIM,直到實(shí)際采樣值比C1小,實(shí)現(xiàn)實(shí)際采樣值由大到小對C2的跨越。
回歸(return):
在跨越完成后,比較在跨越前后的實(shí)際采樣值和C2之間的差值(按絕對值計(jì)算),得到離C2最近的實(shí)際采樣值,從而得到最佳的校驗(yàn)值HICKCAL或者HICKTRIM。若跨越后的實(shí)際采樣值和C2之間的差值小于跨越前的實(shí)際采樣值和C2之間的差值,則以跨越后的校驗(yàn)值為準(zhǔn),并結(jié)束校驗(yàn)流程,直到滿足下一個(gè)滿足自動(dòng)校驗(yàn)的條件。若跨越后的實(shí)際采樣值和C2之間的差值大于跨越前的實(shí)際采樣值和C2之間的差值,則以跨越前的校驗(yàn)值為準(zhǔn),那么校驗(yàn)值會(huì)退回一個(gè)step,并返回到跨越前的那個(gè)校驗(yàn)值,并結(jié)束校驗(yàn)流程,直到滿足下一個(gè)滿足自動(dòng)校驗(yàn)的條件。按照cross-return策略,在理論上,可以得到離中心頻率約0.5個(gè)step所對應(yīng)的頻率精度。
如下四種情形會(huì)啟動(dòng)自動(dòng)校準(zhǔn):
- CALON的上升沿(從0到1);
- 當(dāng)CALON=1時(shí),參考信號丟失之后又恢復(fù);
- 當(dāng)采樣計(jì)數(shù)器的值小于C1;
- 當(dāng)采樣計(jì)數(shù)器的值大于C3。
在CALON的上升沿,即便采樣計(jì)數(shù)器的值大于C1并小于C3,也會(huì)啟動(dòng)自動(dòng)校準(zhǔn),其目的在于,在CALON之后,能夠盡快將HICK的頻率調(diào)整到中心頻率的0.5個(gè)step以內(nèi)。
以上四種情形的自動(dòng)校準(zhǔn)的結(jié)果均能將HICK的頻率調(diào)整到中心頻率的0.5個(gè)step以內(nèi)。所以為了獲得最佳的校準(zhǔn)精度,建議將step保持為默認(rèn)值1。若將step設(shè)為0,則HICKCAL或者HICKTRIM將無法改變,也即,無法校準(zhǔn)。
ACC配置解析
以下對ACC的配置接口及流程進(jìn)行說明。
函數(shù)接口
表2. 配置函數(shù)列表
配置流程
- 系統(tǒng)以HICK作為系統(tǒng)時(shí)鐘源,并打開ACC時(shí)鐘;
- OTG_FS以HICK為時(shí)鐘源并初始化OTGFS;
- 使能ACC相關(guān)中斷;
- 配置C1/C2/C3值;
- 選擇SOF源;
- 使能ACC并選擇粗校驗(yàn)或者精校驗(yàn)。
案例 ACC校準(zhǔn)HICK
功能簡介
實(shí)現(xiàn)了使用ACC模塊將HCIK校準(zhǔn)在要求的精度內(nèi)。
資源準(zhǔn)備
1) 硬件環(huán)境:對應(yīng)產(chǎn)品型號的AT-START BOARD2) 軟件環(huán)境project\at_start_f4xx\examples\acc\calibration
軟件設(shè)計(jì)
1) 配置流程
- 開啟ACC/OTGFS外設(shè)時(shí)鐘
- 配置OTGFS設(shè)備和ACC模塊
- 開啟ACC
2) 代碼介紹
- main函數(shù)代碼描述
- 中斷處理函數(shù)
實(shí)驗(yàn)效果
- 如若HICK時(shí)鐘偏離正常值,ACC將自動(dòng)啟動(dòng)校準(zhǔn)(前提是OTGFS設(shè)備與主機(jī)成功連接),校準(zhǔn)完成后在中斷函數(shù)內(nèi)會(huì)翻轉(zhuǎn)LED2;產(chǎn)生SOF信號丟失后也會(huì)進(jìn)入對應(yīng)中斷函數(shù)內(nèi)翻轉(zhuǎn)LED3。
-
ACC
+關(guān)注
關(guān)注
1文章
57瀏覽量
22795 -
AT32
+關(guān)注
關(guān)注
1文章
118瀏覽量
2155
發(fā)布評論請先 登錄
相關(guān)推薦
評論