關(guān)鍵詞: 電容式 , LED照明
作者: Vairamuthu Ramasamy和Shruti Hanumanthaiah,賽普拉斯半導(dǎo)體
2014-6-30 16:45:03 上傳
在第三部分中,我們探討了如何應(yīng)對(duì)具有電容式感應(yīng)和LED照明的系統(tǒng)的常見設(shè)計(jì)挑戰(zhàn)?,F(xiàn)在我們來介紹針對(duì)此類應(yīng)用的低功耗設(shè)計(jì)考慮因素。
低功耗設(shè)計(jì)考慮因素
為了優(yōu)化功耗,電容式傳感器通常以掃描-休眠-掃描-休眠的重復(fù)程序進(jìn)行掃描。應(yīng)按照特定時(shí)間間隔掃描傳感器,且器件會(huì)在連續(xù)掃描之間進(jìn)入休眠狀態(tài)。一個(gè)掃描-休眠周期被稱為刷新間隔。 下面給出了掃描-休眠-掃描-休眠周期的時(shí)序圖。
圖1:掃描-休眠-掃描周期
現(xiàn)在我們來著重研究刷新間隔內(nèi)的器件功率模式。當(dāng)傳感器被掃描時(shí),稱器件處于活動(dòng)模式。傳感器掃描完成后,器件繼續(xù)處于活動(dòng)模式,這期間CPU處理傳感器數(shù)據(jù),驅(qū)動(dòng)LED、蜂鳴器等輸出,并將傳感器數(shù)據(jù)傳輸?shù)街鳈C(jī)。這步完成后,器件才進(jìn)入休眠模式。
在活動(dòng)模式下,以下模塊啟動(dòng)。
1.以MHz速度運(yùn)行的主時(shí)鐘
2.電容式感應(yīng)引擎
3.CPU
4.通信模塊,例如I2C或SPI
5.用于實(shí)現(xiàn)PWM以進(jìn)行LED亮度控制的定時(shí)器。我們稱之為“快速定時(shí)器”,因?yàn)樗芴峁┪⒚霑r(shí)基。
6.用于維持刷新間隔的定時(shí)器。我們稱之為“慢速定時(shí)器”,因?yàn)樗峁┖撩霑r(shí)基。
在休眠模式下,以下模塊啟動(dòng)。
1.用于維持刷新間隔的慢速定時(shí)器。該定時(shí)器還能將器件從休眠模式中喚醒。
2.通信模塊,例如I2C(啟用喚醒地址匹配)或SPI
為實(shí)現(xiàn)最佳的功耗,應(yīng)使用如下方法:
1.當(dāng)掃描傳感器時(shí),CPU進(jìn)入休眠狀態(tài)
2.在掃描某個(gè)傳感器的同時(shí),處理之前掃描過的傳感器的數(shù)據(jù)。這樣就避免了器件在所有傳感器掃描完成后處理傳感器數(shù)據(jù)的過程中處于活動(dòng)狀態(tài)。
這些方法確實(shí)有助于優(yōu)化功耗,但如果設(shè)計(jì)中包含LED亮度控制等高級(jí)功能,那么功耗優(yōu)化就會(huì)退居次席。這是因?yàn)長ED亮度控制需要在器件的整個(gè)執(zhí)行周期內(nèi)發(fā)生,因此要求快速定時(shí)器一直處于啟動(dòng)狀態(tài),也就是使MHz時(shí)鐘處于開啟狀態(tài)。這會(huì)導(dǎo)致更高的功耗。然而在功耗優(yōu)化與LED亮度控制之間仍存在折衷方案。我們看看應(yīng)該如何做。
1.CPU休眠
有些高級(jí)器件,包括賽普拉斯的PSoC4等ARM cortex-M器件,能在CPU進(jìn)入休眠狀態(tài)的同時(shí)讓定時(shí)器等外設(shè)在后臺(tái)運(yùn)行。我們以前了解了有兩種方法可以實(shí)現(xiàn)PWM:
a.在基于固件的實(shí)現(xiàn)方案中,我們使用定時(shí)器中斷來驅(qū)動(dòng)PWM。最好的方式是:只要中斷未被觸發(fā)就讓CPU處于休眠狀態(tài)。一旦觸發(fā)中斷,CPU立即喚醒以服務(wù)該中斷。ISR必須保持越短越好,以獲得更佳的功耗。
b.當(dāng)使用硬件PWM時(shí)存在兩種情況。第一種情況是使用具有比較功能的定時(shí)器,該定時(shí)器不能直接驅(qū)動(dòng)引腳。這種情況的功耗比較低,原因在于確定PWM的占空比時(shí)ISR只驅(qū)動(dòng)引腳而不驅(qū)動(dòng)邏輯,因此CPU喚醒的時(shí)間較短。第二種情況是使用能直接驅(qū)動(dòng)輸出引腳的定時(shí)器。這種情況下不需要喚醒CPU來服務(wù)任何ISR,因此能進(jìn)一步改善功耗。
以下的圖2給出了不同情景的CPU狀態(tài)。為了簡化,圖中未顯示CPU喚醒以處理傳感器數(shù)據(jù)的部分。
2014-6-30 16:45:04 上傳
下載附件 (34.42 KB)圖2:基于固件和硬件的PWM實(shí)現(xiàn)方案中的CPU狀態(tài)
2.在休眠模式下驅(qū)動(dòng)LED
采用以上討論的功耗降低方法實(shí)現(xiàn)的優(yōu)化效果并不明顯,因?yàn)橹挥蠧PU處于休眠狀態(tài)。主時(shí)鐘和定時(shí)器仍然開啟,并消耗功率。
一種解決方法是采用由低功率休眠模式下的時(shí)鐘驅(qū)動(dòng)的定時(shí)器。這種情況下可將主時(shí)鐘關(guān)閉,并使器件進(jìn)入休眠模式。如果有一個(gè)以上的定時(shí)器能在休眠模式下運(yùn)行,那么其中一個(gè)可用來實(shí)現(xiàn)PWM,其它的用來維持刷新間隔。否則,這兩個(gè)工作都將通過慢速定時(shí)器來實(shí)現(xiàn)。
如果采用慢速定時(shí)器實(shí)現(xiàn)PWM以及維持刷新間隔,那么我們需要注意在功耗優(yōu)化與PWM的占空比粒度之間進(jìn)行權(quán)衡。如果要求的粒度低,應(yīng)設(shè)定好定制器的周期,使其不能過于頻繁地產(chǎn)生中斷和喚醒器件。
例如,慢速定時(shí)器以32KHz的時(shí)鐘運(yùn)行,刷新間隔為120ms。如果要求占空比以10的步長變化,例如10%、20%、30%等,而且所需PWM頻率是100Hz,那么定時(shí)器可加載周期值32,這樣每隔1ms生成中斷。如果要求的占空比粒度增加,那么中斷必須出現(xiàn)得比1ms更加頻繁。此時(shí)的功耗將比之前更高。
在很多SoC中,休眠模式下工作的時(shí)鐘其精度比主時(shí)鐘的精度要低很多。典型的休眠模式時(shí)鐘容差很大,可達(dá)到±60%。而且,為了節(jié)省BOM成本通常不使用外部晶體。這種情況下,可定期根據(jù)主時(shí)鐘校正休眠時(shí)鐘,這樣生成的PWM將與由主時(shí)鐘計(jì)時(shí)的定時(shí)器所生成的PWM一樣精確。
我們來了解一種借助主時(shí)鐘校正休眠模式時(shí)鐘的方法。定時(shí)器用休眠模式時(shí)鐘計(jì)時(shí),并根據(jù)主時(shí)鐘周期的數(shù)量使用固件延遲程序生成固定延遲。固件邏輯在延遲的末尾讀取定時(shí)器計(jì)數(shù)。這就是定時(shí)器校正值??蓪⑿U祷蚱浔稊?shù)加載到定時(shí)器以創(chuàng)建延遲。
校正值 = 休眠模式時(shí)鐘 x 固件延遲
2014-6-30 16:45:06 上傳
下載附件 (13.84 KB)
評(píng)論
查看更多