【導(dǎo)讀】基于Hein van den Heuvel的電路,構(gòu)建了一個(gè)經(jīng)典的、三運(yùn)放、狀態(tài)變量振蕩器,并用一小粒小麥燈泡作為振幅穩(wěn)定電路。對(duì)電路中運(yùn)算放大器的各級(jí)負(fù)載進(jìn)行了一天的擺弄,成功地將諧波失真產(chǎn)物降至-95 dBc以下,滿(mǎn)足了當(dāng)時(shí)的需求。
幾年前曾需要一個(gè)快速、低頻、且失真極低的源來(lái)測(cè)試片上微控制器ADC,看它是否接近數(shù)據(jù)手冊(cè)所給出的有效位數(shù)(ENOB)和線(xiàn)性度。
凌特公司的設(shè)計(jì)失真度很低,不過(guò)設(shè)計(jì)有些復(fù)雜,對(duì)于那時(shí)的需要來(lái)說(shuō),似乎有點(diǎn)大材小用了。最后,基于Hein van den Heuvel的電路,構(gòu)建了一個(gè)經(jīng)典的、三運(yùn)放、狀態(tài)變量振蕩器,并用一小粒小麥燈泡作為振幅穩(wěn)定電路。
對(duì)電路中運(yùn)算放大器的各級(jí)負(fù)載進(jìn)行了一天的擺弄,成功地將諧波失真產(chǎn)物降至-95 dBc以下,滿(mǎn)足了當(dāng)時(shí)的需求。
雖然可以構(gòu)建分立式振蕩器電路,但調(diào)試起來(lái)比較復(fù)雜。還有溫度問(wèn)題,如幅度漂移、頻率漂移、啟動(dòng)和穩(wěn)定時(shí)間等。同樣,我認(rèn)為將來(lái)如果有一個(gè)快速設(shè)置振蕩器,具有2.5至+/-10v的多路輸出,這樣就可以實(shí)現(xiàn)一個(gè)通用ADC測(cè)試平臺(tái),可快速測(cè)量任何16位精度的ADC。
通用ADC測(cè)試平臺(tái)
該測(cè)試平臺(tái)如果采用模擬方案,實(shí)施起來(lái)太慢了,這讓我想起不知道專(zhuān)業(yè)音頻分析儀的源是如何實(shí)現(xiàn)的?我想要么是構(gòu)建精密的分立式DDS,要么使用高分辨率I2S音頻DAC。
然后,開(kāi)始瀏覽TI應(yīng)用手冊(cè),了解他們的超低失真測(cè)試振蕩器是如何實(shí)現(xiàn)的。果不其然,使用了一款Burr Brown的 帶I2S的音頻DAC,后接了一些高性能低通濾波器。
我買(mǎi)了幾個(gè)I2S DAC,將它們連接到我的一個(gè)微控制器演示板上,大約一天時(shí)間,I2S就開(kāi)始運(yùn)行了,并且系統(tǒng)中產(chǎn)生出了一些基本像樣的信號(hào)。I2S的奇妙之處在于,它可以連接到處理器的DMA,使99%的數(shù)據(jù)傳輸對(duì)處理器透明。處理器所要做的就是,每隔一段時(shí)間把DMA管道充滿(mǎn)。
這只是一次體驗(yàn),在經(jīng)濟(jì)上并沒(méi)有優(yōu)勢(shì),因?yàn)門(mén)I的電路售價(jià)才不到300美元,不過(guò)沒(méi)有公開(kāi)API接口,無(wú)法從自己的測(cè)試程序來(lái)控制他們的解決方案。
然后我想,“USB聲卡加密狗怎么樣?它們也許既好用又便宜。”
快速搜索后發(fā)現(xiàn),Creative Labs確實(shí)有一款成本很低、但性能又非常高的16/24位USB加密狗,其名字令人印象深刻:“Creative Labs Sound Blaster Play!3"。這款不到20美元的設(shè)備,竟然具有24位/96 kHz的數(shù)據(jù)速率。我相信Creative Labs制造的不會(huì)是“垃圾”,所以買(mǎi)了來(lái)試用。
使用18位FFT分析儀進(jìn)行的初步測(cè)試表明,筆記本電腦不僅聽(tīng)起來(lái)音質(zhì)更好,而且性能確實(shí)達(dá)到了16位失真水平,噪聲基底非常干凈。
對(duì)于我的通用ADC測(cè)試平臺(tái)來(lái)說(shuō),這種方法確實(shí)是一種“快速”解決方案,因?yàn)樗熊浖伎梢栽趯?shí)驗(yàn)室電腦上運(yùn)行;如今,我擁有了一套頻率和幅度都“可控”的信號(hào)源,并且運(yùn)行在我自己的電腦上,這樣就可以擁有獨(dú)立的應(yīng)用程序,甚至可以構(gòu)建API,以便在以后需要時(shí)納入自動(dòng)測(cè)試套件。
這就解決了很多問(wèn)題,通過(guò)使用外部聲卡,精確的振幅和已知的質(zhì)量可以在任何測(cè)試平臺(tái)之間轉(zhuǎn)移,因?yàn)槲业臏y(cè)試筆記本電腦內(nèi)部聲卡的輸出振幅和真實(shí)音質(zhì)因地可變。
使用筆記本電腦作為測(cè)試控制器的另一個(gè)好處是,可以拔出電源適配器并用電池供電,從而消除了試圖快速更換地點(diǎn)并完成工作時(shí)經(jīng)常出現(xiàn)的許多接地回路問(wèn)題。
聲霸(Blaster)放大器
現(xiàn)在需要的是用于聲霸加密狗(sound blaster dongle)的模擬接口板,以獲得“通用”測(cè)試裝置所需的輸出。
我在300歐姆的指定耳機(jī)負(fù)載上測(cè)量聲霸音頻輸出,并使用了一些測(cè)試音,滿(mǎn)量程輸出測(cè)量到一致的0.37V峰值,并與使用的PC或操作系統(tǒng)無(wú)關(guān)。
表1列出了常見(jiàn)的ADC輸入范圍。我認(rèn)為,如果覆蓋了常見(jiàn)的ADC輸入范圍,則通過(guò)音量控制來(lái)調(diào)整幅度,就可以實(shí)現(xiàn)范圍內(nèi)任何輸入的測(cè)量,不過(guò)這最終會(huì)降低可實(shí)現(xiàn)的信噪比(SNR ),然而,聲霸的SNR已足以滿(mǎn)足所預(yù)期的所有測(cè)量應(yīng)用。
表1:表中所列涵蓋了幾乎所有常見(jiàn)的ADC輸入范圍,這些是計(jì)算聲霸加密狗輸出端放大器所需增益和偏置的基礎(chǔ)。
表中的3.3V峰值范圍貌似有點(diǎn)奇怪,但在分辨率較低的設(shè)計(jì)中仍然會(huì)出現(xiàn),無(wú)論如何,基本設(shè)計(jì)大多是10位或12位ADC,因此決定在這些應(yīng)用中只使用音量控制和0-5V范圍,此時(shí)信噪比損失很小。
然后,我設(shè)計(jì)了具有所需的增益和偏置、且稱(chēng)之為“BlasterAmp”的放大器,能夠轉(zhuǎn)換0.37峰值,即聲霸加密狗的滿(mǎn)量程輸出,以與表2中的數(shù)值匹配。
表2:BlasterAmp設(shè)計(jì)用于覆蓋表1中的常見(jiàn)電壓范圍,僅有4個(gè)增益步長(zhǎng)和3個(gè)偏置設(shè)置。對(duì)于單極性則需要使用三個(gè)偏置電壓。
對(duì)于單極性范圍,有一點(diǎn)需要注意,雖然目前所講的這些范圍都是“軌到軌”,但幾乎總有一點(diǎn)偏差。這將對(duì)任何ADC/緩沖器測(cè)試造成嚴(yán)重影響,因?yàn)槿绻肮╇娷墶辈煌耆幱诹汶娖交驖M(mǎn)量程,ADC就會(huì)削波,導(dǎo)致嚴(yán)重失真,從而無(wú)法進(jìn)行任何有意義的測(cè)量。此外,有時(shí)ADC基準(zhǔn)電壓為2.048或4.096V,而不是2.5和5V。為了應(yīng)對(duì)這些情況,我使用了25圈精密微調(diào)電位器,以便在需要時(shí)對(duì)增益和偏置進(jìn)行微調(diào)。該精密微調(diào)還可以對(duì)聲霸加密狗、電阻容差和運(yùn)算放大器失調(diào)電壓存在的任何細(xì)微差異進(jìn)行補(bǔ)償。
圖1顯示了成品BlasterAmp的一個(gè)通道。根據(jù)需要,短路跳線(xiàn)用于改變偏置和增益,以適應(yīng)所需的各種輸出范圍。
圖1:立體聲聲霸放大器的單通道示意圖。
圖1中,增益和偏置范圍通過(guò)可移動(dòng)跳線(xiàn)設(shè)置,然后借助精密的25圈微調(diào)電位器進(jìn)行微調(diào)。U101周?chē)碾娮杈W(wǎng)絡(luò)是Vishay (OSOPTC1001AT0)的1 k歐姆匹配網(wǎng)絡(luò)。為了最大限度地減少電阻發(fā)熱和后續(xù)的失真,所有其他電阻的尺寸均為0805,精度為0.1%。為了消除失真,C100和C101必須是薄膜或COG陶瓷電容。
對(duì)于放大器,選用了久經(jīng)考驗(yàn)的Burr-Brown OPA1611,這是一款失真超低的音頻運(yùn)算放大器,其性能符合數(shù)據(jù)手冊(cè)所列,可以說(shuō)非常出色。
對(duì)于偏置基準(zhǔn)電壓,用的是TI REF5050,為一款5V精密基準(zhǔn)電壓源。
由于期望該電路用在測(cè)試工作臺(tái)上,因此將其設(shè)計(jì)成由+/-15v電壓軌供電,并使用了另一個(gè)久經(jīng)考驗(yàn)的HP6234A雙線(xiàn)性電源,將其放在工作臺(tái)上以備此類(lèi)場(chǎng)合使用。使用HP6234A這類(lèi)的線(xiàn)性電源非常有用,因?yàn)樗哂械驮肼暋⒌虸O電容設(shè)計(jì),而且沒(méi)有開(kāi)關(guān)電源到處冒出的共模電流。如果供電設(shè)計(jì)必須使用一個(gè)開(kāi)關(guān)的話(huà),應(yīng)在電路中使用一些線(xiàn)性、低壓差調(diào)節(jié)器和大共模扼流圈,以盡可能地消除電路板上的開(kāi)關(guān)噪聲。值得信賴(lài)的HP6234A消除了所有這些問(wèn)題。
最后,將雙通道BlasterAmp PCB放在一個(gè)小尺寸的Hammond外殼中,沒(méi)有蓋上外殼,因?yàn)檫@樣可以方便地進(jìn)行各種跳線(xiàn)更換和可調(diào)電位器調(diào)整,見(jiàn)圖2。
圖2:完整的聲霸放大器示意圖。
圖中,印刷電路板被安裝在一個(gè)沖壓外殼中進(jìn)行保護(hù)。PCB右上角的黑色電纜為聲卡的音頻電纜。電源由 HP6234A線(xiàn)性工作臺(tái)電源,并通過(guò)PCB中間右側(cè)的導(dǎo)線(xiàn)連接器供電。
測(cè)試軟件
使用聲霸卡確實(shí)大大簡(jiǎn)化了設(shè)計(jì),節(jié)省了開(kāi)發(fā)時(shí)間,但還需要一種方法將大動(dòng)態(tài)范圍測(cè)試信號(hào)播放到聲霸卡中。我嘗試了大概十幾種音頻測(cè)試音軟件解決方案,其中大多數(shù)的失真水平都只有60 dBc或更低,這對(duì)于聽(tīng)力測(cè)試來(lái)說(shuō)還好,但對(duì)于我的應(yīng)用來(lái)說(shuō)就不夠了,我的應(yīng)用需要將失真降至16位水平。
互聯(lián)網(wǎng)上有幾個(gè)發(fā)燒友網(wǎng)站提供了非常低失真的測(cè)試文件。為了回放,需要一個(gè)WAV或MP3文件播放器,循環(huán)播放時(shí)沒(méi)有死區(qū)時(shí)間。使用中發(fā)現(xiàn)這個(gè)“foobar2000” 程序雖然命名愚蠢,但卻是一個(gè)極好的選擇。最初使用該程序在筆記本電腦上播放白噪音,試圖在睡覺(jué)時(shí)淹沒(méi)外來(lái)聲音,另外,當(dāng)循環(huán)播放白噪音文件時(shí),不能有任何點(diǎn)擊或彈出,否則就會(huì)立即醒來(lái)。foobar2000程序非常適合BlasterAmp和睡眠。
這些預(yù)先錄制好的測(cè)試文件的頻率固定,但振幅可以根據(jù)需要通過(guò)聲霸放大器中的微調(diào)電位器或電腦的音量控制來(lái)微調(diào)。
至于能夠以編程方式設(shè)置頻率和音量,我發(fā)現(xiàn)了一個(gè)名為PyAudio 的Python庫(kù),它可以生成特定幅度的精密正弦波信號(hào),然后能夠直接從Python腳本中播放。這已經(jīng)證明可以產(chǎn)生失真非常低的信號(hào),如圖3所示。
圖3:在DMT9000 FFT分析儀上測(cè)量聲霸放大器范圍設(shè)置為+/-10V時(shí)的測(cè)量結(jié)果。可以看出,滿(mǎn)量程失真產(chǎn)物為滿(mǎn)量程以下16位,即-96 dBc。
然而,在產(chǎn)生任何測(cè)試音時(shí)都必須小心。要么必須為測(cè)試創(chuàng)建一個(gè)連續(xù)且足夠長(zhǎng)的文件,要么必須連續(xù)循環(huán)。循環(huán)時(shí),只需確保波形的起點(diǎn)和終點(diǎn)完全對(duì)齊,否則會(huì)出現(xiàn)不連續(xù),這會(huì)增加循環(huán)點(diǎn)的失真。
關(guān)于使用聲霸加密狗進(jìn)行精確音調(diào)生成的最后一點(diǎn)注意事項(xiàng)是,請(qǐng)務(wù)必關(guān)閉正在播放PC上的任何音頻均衡器或控制程序,以確保沒(méi)有不可預(yù)見(jiàn)的問(wèn)題出現(xiàn)。
(參考原文:An easier way to test integrated analog-to-digital converters,本文為《電子工程專(zhuān)輯》2022年10月刊雜志文章)
(來(lái)源:EDN電子設(shè)計(jì),作者:Steve Hageman,Embedded.com特約作者)
免責(zé)聲明:本文為轉(zhuǎn)載文章,轉(zhuǎn)載此文目的在于傳遞更多信息,版權(quán)歸原作者所有。本文所用視頻、圖片、文字如涉及作品版權(quán)問(wèn)題,請(qǐng)聯(lián)系小編進(jìn)行處理。
推薦閱讀:
用PLC實(shí)現(xiàn)步進(jìn)電機(jī)的直接控制
低Iq LDO 對(duì)可穿戴設(shè)備實(shí)現(xiàn)長(zhǎng)電池壽命有多重要?
利用3D NAND克服工業(yè)數(shù)據(jù)存儲(chǔ)問(wèn)題
同相運(yùn)算放大器電壓增益、輸入/輸出阻抗計(jì)算方法