摘要
TPA2028D1 是 TI 針對便攜設備推出的具有 AGC/DRC 功能的低功耗 D 類放大器。由于性能突出,在業界得到了廣泛的應用。而其本身可以通過 I2C 進行配置,從而使得設計者能夠根據不同的應用,優化芯片設置,獲得更好的效果。
本文討論了怎樣優化 TPA2028D1 設置,使其能夠更好的快速響應智能手機等設備中的突發音,例如鍵盤音,提示音等信號。
1.介紹
TPA2028D1 是 TI 針對移動設備推出的高效率 D 類放大器。所集成的 DRC 和 AGC 功能能夠根據輸入信號的大小自動調整放大器的增益,以達到防止功放削波失真的目的,并且有效的提升輸出平均功率,從而改善音樂的回放效果。
TPA2028D1 具有靈活的可配置性。設計者能夠通過 I2C 訪問其寄存器,對放大器使能,增益,響應速度等多個參數進行配置,使其能夠針對不同的應用場景進行優化。
由于 DRC 和 AGC 會根據信號大小調節增益,針對連續的音樂信號需要設置一定的 Attack Time 和Release Time 來保證優良的回放效果。但是對于突發音信號維持時間過短,并且由于省電的需要,需要在播放前使能 TPA2028D1,并在播放結束后將其關閉。因此一些設計中,在播放例如鍵盤音或拍照音的時候存在聲音過小,或聲音漸變等現象。
本文通過對此現象的成因進行分析,討論了如何通過優化芯片參數的設置,解決類似問題的方法。
2.TPA2028的兩種關閉/使能方式
TPA2028可以通過硬件和軟件兩種方式進行關閉和使能。
l 通過芯片 EN管腳,硬件的使能關閉方式;
l 通過芯片寄存器 0x01 bit6 EN和 bit5 SWS,軟件的使能關閉方式
2.1
2.2
2.1 硬件關閉/使能
關閉:
l EN管腳置低,芯片進入關閉狀態,所有寄存器被清除
使能:
l EN管腳置高,芯片進入使能狀態,所有寄存器進入初始狀態,如 Table 1。由于在初始狀態寄存器 0x01 EN=1 SWS=0 ,功放部分使能,可以直接進行播放;
Table 1. TPA2028D1寄存器初始值
TPA2028D1的設計為,芯片使能后放大器初始增益由 Fixed Gain決定。而 TPA2028D1 Fixed Gain寄存器 Reg5/bit5:0 初始值為 00110,即 6dB,因此在此狀態下放大器的增益初始值固定為 6dB。由于Max Gain寄存器 Reg7/bit7:4初始值為 30dB,因此此時播放的信號以 Release time寄存器 Reg3/bit5:0的初始值 1.81秒/6dB的速度,從 6dB慢慢向 30dB增加。如 Figure 1所示。因此會造成明顯的淡入效果,對于存在時間過于短暫的信號,則造成過小的現象。
Figure 1. 硬件使能 TPA2028D1增益遞增
2.2軟件關閉/使能
關閉:
l EN=0 (Reg1/bit6)或者 SWS=1 (Reg1/bit5)
使能:
l EN=1 (Reg1/bit6)或者 SWS=0 (Reg1/bit5)
EN 和 SWS 不會清除寄存器的設定狀態,所有寄存器值維持原先的設置,因此 TPA2028D1 在軟件使能之后可以按照設定的 Fixed Gain和 Max Gain以及 Release Time進行變化。如 Figure 2所示。因此只需要設置合適的 Fixed Gain, Max Gain 和 Release Time,就可以控制這種變化,從而消除 AGC和DRC帶來的淡入淡出問題。
Figure 2. 硬件使能 TPA2028D1增益遞增
值得注意的是,由于芯片內部狀態的建立需要時間,因此會產生一定的輸出延遲。TPA2028 的延遲在 6ms 左右,由于這個時間相對 Ramp up 的時間相對短暫,而且處理器播放突發音時普遍存在一定的延遲,所以在一般的設計中輸出延遲可以忽略。但如果在實際的應用中有處理器播放未加延遲的情況,則可以通過在處理器播放突發音文件前加入 6ms延遲來解決。
Figure 3. 輸出延遲
3. 利用不同的應用模式選擇合適的參數設置
根據上面對突發音淡入現象原因的分析,為了解決 TPA2028D1 對突發音信號的響應問題,解決問題的方式為:
l 用軟件使能 TPA2028D1代替硬件使能;
l 縮小設置的 Fixed Gain和 Max Gain之間的差別。
但由于音樂播放等應用中,Fixed Gain和 Max Gain仍需要存在一定的差別。因此我們可以通過:
l 找到一組中間參數能夠平衡連續的音樂播放和突發音播放效果;
l 根據不同的應用判斷是否存在突發音的播放,分別針對連續音樂的播放和突發音的播放設置兩套不同的參數。由于在實際應用中,使能 TPA2028D1,播放突發音,再關閉,的應用都是在一些特定的應用下進行。例如播放拍照音時,設備一般處于拍照狀態;鍵盤音,設備處于鍵盤輸入狀態。因此我們可以根據不用的應用決定 TPA2028 參數的設置,使得在消除突發音淡入淡出效果時,不影響到音樂的播放效果。
由于現存的智能便攜設備操作系統應用程序處于 UI層,而控制 TPA2028D1的驅動處于驅動層,因此需要通過驅動讀取操作系統的相關 log文件對于應用程序進行判斷。
3.1適合突發音的設置
由于快速信號和音樂動態范圍和播放幅度不一樣,因此可以選擇獨立于音樂播放之外的另一套更適合快速信號播放的 TPA2028的參數。
選擇提示音播放增益。因為 TPA2028在芯片輸出使能后,增益會從 Fixed Gain向 Max Gain變化,因此縮小 Fixed Gain 與 Max Gain 的區別(3dB 以內的增益變化一般不會引起聽覺響度明顯的變化),能夠限制 Gain的大幅變化。
選擇這個增益時還需要注意信號幅度和最大音量之間的關系,防止提示音過小或過大引起的問題。對于峰峰值在 500mV左右的輸出信號,建議的增益設置在 18dB~22dB之間。
由于快速信號動態范圍相對固定,因此一般不需要 DRC的介入,因此建議設置壓縮比為 1:1。
當增益的變化被控制在較小的變化范圍以內,Attack Time, Hold Time和 Release Time等參數對于漸變的影響就變得相對較小,但仍建議盡量減小將這幾個參數的值。
此外,因為軟件關閉芯片后,芯片的 I2C 部分仍然使能,因此相比硬件關閉芯片功耗要高。在 3.6V至 4.2V 范圍內,硬件關閉芯片,靜態電流在 0.2uA 至 0.3uA 之間。而使用軟件關閉芯片后,芯片的靜態電流在 50uA至 65uA之間。因此在設備進入待機后可以硬件關閉 TPA2028。
3.2突發音設置的時序控制
因為在開機或者退出待機狀態等情況下,仍然存在 EN 從拉低狀態到拉高狀態的變化,此時TPA2028D1 所有寄存器值均為初始狀態。因此在一次進入突發音播放的情況下,我們需要設置芯片寄存器參數,使其適合突發音信號的播放。而使用軟件使能和關閉芯片,不會清除寄存器的狀態,因此之后使用軟件關閉芯片后,再次使能前則不需要重新設置寄存器參數。
首次使能時序的控制:
l 將 EN管腳拉高,使能芯片;
l 在 6ms內使用 I2C將 SWS設置為 1,軟件關閉 TPA2028;
l 設置 Fixed Gain和 Max Gain,以及 Attack/Release Time;
l 使用 I2C將 SWS設置為 0,軟件使能 TPA2028;
l 延遲 6ms后開始進行突發音的播放。
關閉時序的控制:
l 保持 EN管腳拉高,芯片一直處于使能狀態;
l 使用 I2C將 SWS設置為 1,軟件關閉 TPA2028;
再次使能時序的控制
l 使用 I2C將 SWS設置為 0,軟件使能 TPA2028;
l 延遲 6ms后開始進行突發音的播放。
3.3實際案例
Android 智能手機,TPA2028D1 的應用中,出現了電話撥號的應用中,連續按撥號鍵,按鍵提示音逐漸變大的現象。
檢查按鍵音播放的流程為:
l 進入電話撥號應用程序后,TPA2028D1的 EN管腳被拉低;
l 處理器得到按鍵鍵值后,讀取按鍵音音頻文件,并同時拉高 EN腳進行播放;
l 延時 1秒,如果沒有其他鍵按下,則拉低 EN腳關閉 TPA2028D1。
用 1kHz連續信號代替按鍵音,實測 TPA2028D1輸出波形如 Figure 4,信號緩慢增加,音量由小到大漸變。
Figure 4. 實際案例更改前 TPA2028D1輸出遞增波形
更改播放時序如下:
l 進入電話撥號應用程序后,拉高 TPA2028D1的 EN管腳;
l 通過 I2C設置芯片:
I2CWrite(0xb0, 0x01, 0xe3); //SWS=1, disable TPA2028D1
I2CWrite(0xb0, 0x05, 0x1e); //Fixed Gain=30dB
I2CWrite(0xb0, 0x07, 0xc0); //Max Gain=30dB
l 處理器得到按鍵鍵值后,讀取按鍵音音頻文件,同時通過 I2C設置芯片:
I2CWrite(0xb0, 0x01, 0xc3); //SWS=1, enable TPA2028D1
使能 TPA2028,進行按鍵音播放;
l 延時 1秒,如果沒有其他鍵按下,則同時通過 I2C設置芯片:
I2CWrite(0xb0, 0x01, 0xe3); //SWS=1, disable TPA2028D1
關閉 TPA2028。
l 手機推出電話撥號應用程序后,或者手機進入待機狀態后拉低 TPA2028D1的 EN管腳。
實測波形如 Figure 5。實際使用中,連續按按鍵,按鍵提示音正常。
Figure 5. 實際案例更改后輸出波形
4 小結
TPA2028D1由于加入了有效改善音樂重放效果的 AGC/DRC,其中包含的延遲設置,無法對于突發音等短暫信號起到快速響應的效果。在我們的實際應用中,如果能夠從以下兩個方面完善設計:
l 判斷播放模式,區分音樂和突發音的應用場景,分別優化參數設置;
l 以軟件方式使能或者關閉芯片;
即可達到更優的播放效果。
評論
查看更多