欧美性猛交xxxx免费看_牛牛在线视频国产免费_天堂草原电视剧在线观看免费_国产粉嫩高清在线观看_国产欧美日本亚洲精品一5区

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

如何在軟件中實現(xiàn)高精度NCO

星星科技指導(dǎo)員 ? 來源:嵌入式計算設(shè)計 ? 作者:Patrick Butler ? 2022-11-28 17:06 ? 次閱讀

在本系列的第1部分中,我們將了解如何設(shè)計基于直接數(shù)字頻率合成(DDFS)原理的非常精確的正弦波發(fā)生器,但在浮點DSP處理器上通過軟件實現(xiàn)。在第 2 部分中,我們將介紹如何在軟件中實現(xiàn)高精度 NCO。

構(gòu)建具有與最佳模擬振蕩器相似或更好的失真性能的高精度交流音發(fā)生器,如最著名的惠普分析儀或應(yīng)用筆記AN-1323中所述,即使專用于音頻頻譜(直流至20 kHz范圍),也不是一件小事。然而,如前所述,使用嵌入式處理器的足夠算術(shù)精度執(zhí)行相位計算(ωt)和正弦函數(shù)(sin(ωt))近似的完整軟件實現(xiàn)肯定有助于最大限度地減少量化副作用,噪聲和由此產(chǎn)生的雜散。這意味著圖2中的所有NCO功能塊都轉(zhuǎn)換為代碼行(無VHDL?。詫崿F(xiàn)滿足實時約束的軟件版本,以確保最小采樣率和所需的頻率帶寬。

對于相位到正弦幅度轉(zhuǎn)換引擎,完整的LUT方案或任何變化都需要太多的內(nèi)存或太多的插值操作才能實現(xiàn)完美的正弦一致性。相反,正弦近似的多項式方法允許使用成本非常低的通用DSP,從而提供了非常好的復(fù)雜度與精度權(quán)衡。多項式級數(shù)擴展也非常有吸引力,因為它相對簡單,并且能夠在選擇冪級數(shù)類型時提供充分的靈活性,為給定精度定制算法。它不需要大的內(nèi)存空間,少于100行SHARC DSP裝配線,只需要幾個RAM位置來存儲多項式系數(shù)和變量,因為正弦值僅在采樣時計算。

首先,正弦近似函數(shù)的明顯選擇是使用具有適當(dāng)順序的直泰勒/麥克勞林冪級數(shù)來滿足目標(biāo)精度。但是,由于冪級數(shù)往往會在端點上失去有效性,因此在執(zhí)行任何多項式計算之前,必須將參數(shù)輸入范圍減小到較小的間隔。如果不減少參數(shù)范圍,函數(shù)域(如 [–π, +π] )上的高精度只能通過非常高階多項式來支持。因此,需要將一些變換應(yīng)用于初等函數(shù)以獲得簡化的參數(shù),例如 sin(|x|) = sin(f + k × π/2) 和 sin(f) = sin(x – k × π/2) 為 0 ≤f《π/2。因此,三角函數(shù)應(yīng)格外小心,以避免減法抵消,這將導(dǎo)致精度嚴(yán)重損失并產(chǎn)生災(zāi)難性結(jié)果,尤其是在算術(shù)精度較差的情況下。在我們的例子中,當(dāng)相位輸入很大或接近π/2的整數(shù)倍時,可能會發(fā)生這種情況。

除了周期性和模-2π重復(fù)之外,sin(x)函數(shù)的對稱性質(zhì)還可以用于進一步縮小近似范圍。鑒于正弦函數(shù)在區(qū)間 [0, 2π] 的點 x = π 上是反對稱的,因此可以使用以下關(guān)系:

poYBAGOEeiCAVOMpAAAO71CehYc498.jpg

將范圍減小到 [0, π]。以同樣的方式,sin(x) 顯示了區(qū)間 [0, π] 由 x = π/2 定義的直線的對稱性,使得:

poYBAGOEeiGAIG0pAAASvJEQtmU260.jpg

對于區(qū)間 [0, π/2] 中的 x,這進一步減小了角度輸入近似范圍。進一步將參數(shù)簡化為較小的區(qū)間(如 [0, π/4] 以提高精度是沒有效率的,因為它需要同時計算正弦和余弦函數(shù),這是由共同三角關(guān)系決定的:sin(a+b) = sin(a) × cos(b) + cos(a) × sin(b),這對于生成正交音來說是值得的。

ADI公司ADSP-21000系列應(yīng)用手冊第1卷介紹了一種幾乎理想的(用于嵌入式系統(tǒng))正弦逼近函數(shù),該函數(shù)基于為首款A(yù)DI DSP浮點處理器(即ADSP-21020)編寫的優(yōu)化功率級數(shù),該處理器基本上是一個SHARC內(nèi)核。sin(x) 的這種實現(xiàn)依賴于由 Hart 等人發(fā)表的最小最大多項式近似4,并由 Cody 和 Waite5 改進用于浮點運算,以減輕舍入誤差并避免發(fā)生前面提到的取消。最小最大值方法依賴于切比雪夫多項式和雷梅茲交換算法來確定所需最大相對誤差的系數(shù)。如圖 3 中的 MATLAB 所示,與 Taylor 的七階泰勒多項式相比,設(shè)定系數(shù)的微小變化會導(dǎo)致最小最大值的精度顯著提高.6 為了獲得最佳精度與速度權(quán)衡,此正弦近似函數(shù)的角度輸入范圍縮小到 [–π/2 到 +π/2] 區(qū)間,并且軟件例程包括一個高效的范圍縮小濾波器, 約占總“正弦”子例程執(zhí)行時間的 30%。

pYYBAGOEeiOAaiiSAADRCBInrfA731.jpg

圖3.與在 0 左右定義的 Taylor-MacLaurin 方法不同,最小最大值正弦近似方法最小化并均衡了 [–π/2 至 +π/2] 區(qū)間內(nèi)的最大相對誤差。

雖然所有的計算都可以用32位定點算法執(zhí)行,但數(shù)學(xué)計算最常見和最方便的格式,特別是在處理長數(shù)時,多年來一直是IEEE 754浮點標(biāo)準(zhǔn)。當(dāng)時,根本沒有單芯片浮點DSP處理器,只有簡單的浮點乘法器和ALU計算IC,例如ADSP-3212和ADSP-3222。這種格式取代了計算機行業(yè)的大多數(shù)專有格式,并成為所有SHARC DSP處理器的原生格式,包括單精度32位、擴展精度40位,以及最近ADSP-SC589和ADSP-SC573的雙精度64位。

SHARC 40 位擴展單精度浮點格式及其 32 位尾數(shù)為這種正弦波生成應(yīng)用提供了足夠的精度 (u 2–32),為了保持相等,Cody 和 Waite 表明,15 階多項式適用于 32 位的整體精度,在 [0 到 +π/2] 輸入域上均勻分布誤差。最小化操作次數(shù)并保持準(zhǔn)確性的最后一個調(diào)整是實現(xiàn)多項式計算的霍納規(guī)則,這是一種快速冪法,用于評估一個點的多項式,例如:

poYBAGOEeiSAczhMAABOVzmjZOk389.jpg

R1 到 R7 是多項式級數(shù)的 Cody 和 Waite 系數(shù),只需要 8 次乘法和 7 次加法即可計算任何輸入?yún)?shù) ε[0, π/2] 的正弦函數(shù)。以匯編子例程形式編寫的完整 sin(x) 近似代碼在 SHARC 處理器上以大約 22 個內(nèi)核周期執(zhí)行。原始程序集子例程經(jīng)過修改,以便在獲取 40 位多項式浮點系數(shù)時同時執(zhí)行雙內(nèi)存訪問,以節(jié)省六個周期。

poYBAGOEeiaAJX2hAAIfikYdLDs166.jpg

圖4.DDS軟件簡化框圖給出了數(shù)據(jù)算術(shù)格式和處理元件之間各種量化步驟的位置。

NCO 64 位相位累加器本身正在利用雙精度 2 補碼分?jǐn)?shù)格式的 SHARC 32 位 ALU 來執(zhí)行。一個完整的相位累加器執(zhí)行和內(nèi)存更新需要 11 個內(nèi)核周期,因此,每個 NCO 輸出樣本在大約 33 個內(nèi)核周期內(nèi)生成。

圖4中的圖表顯示了基于DSP的軟件NCO的功能塊實現(xiàn),并參考了每個階段的算術(shù)格式精度。此外,信號模擬重建需要一個或兩個DAC及其模擬抗混疊濾波器電路,并實現(xiàn)完整的DDFS。處理鏈的關(guān)鍵要素是:

64位相位累加器(帶溢流的SHARC ALU雙精度加法);

64位小數(shù)定點到40位FP轉(zhuǎn)換模塊;

范圍縮小塊 [0 到 + π/2] 和象限選擇(科迪和韋特);

用于相位到幅度轉(zhuǎn)換的正弦近似算法(Hart);

–1.0 至 +1.0 范圍內(nèi)的 sin(x) 重建和歸一化階段;

LP FIR 濾波器和 sin(x)/x 補償(如有必要);

以及 40 位 FP 到 D 位定點轉(zhuǎn)換和縮放功能,以適應(yīng) DAC 數(shù)字輸入。

可以在NCO的輸出端放置一個可選的數(shù)字低通濾波器,以消除可能在目標(biāo)頻帶中折疊的任何雜散和噪聲?;蛘?,該濾波器可以提供插值和/或反sin(x)/x頻率響應(yīng)補償,具體取決于為模擬重建選擇的DAC。這種低通FIR濾波器可以使用MATLAB濾波器設(shè)計器工具進行設(shè)計。例如,假設(shè)采樣頻率為48 kSPS,直流至20 kHz帶寬,帶內(nèi)紋波為0.0001 dB,帶外衰減為–150 dB,則可以使用40位浮點系數(shù)實現(xiàn)高質(zhì)量的等紋波濾波器。由于只有 99 個濾波器系數(shù),其總執(zhí)行時間將在單指令、單數(shù)據(jù) (SISD) 單計算單元模式下消耗約 120 個 SHARC 內(nèi)核周期。數(shù)字濾波后,DMA使用其中一個DSP同步串行端口將計算出的樣本對發(fā)送到DAC。為了獲得更好的速度性能,還可以使用大型乒乓內(nèi)存緩沖區(qū)鏈接 DMA 操作,以支持按塊操作進行處理。例如,塊數(shù)據(jù)大小可以等于 FIR 數(shù)據(jù)延遲線的長度。

NCO 的最終調(diào)整以實現(xiàn)最佳 SFDR

如前所述,NCO受到雜散的影響主要是由于相位累加器輸出的截斷,以及在較小程度上,由于通過計算或制表獲得的正弦值進行的幅度量化。相位截斷引起的誤差通過相位調(diào)制(鋸齒波)在載波頻率附近產(chǎn)生雜散,而正弦幅度量化會導(dǎo)致諧波相關(guān)的雜散,盡管長期以來被認為是隨機誤差和噪聲。今天,相位累加器的操作在數(shù)學(xué)上是完美的,正如Henry T. Nicholas和H. Samueli的技術(shù)論文7中所描述的那樣。經(jīng)過徹底分析后,提出了一個模型,使得相位累加器被認為是離散相位采樣置換發(fā)生器,從中可以預(yù)測頻率雜散。無論相位累加器參數(shù)(M、N、W)如何,相序的長度都等于

pYYBAGOEeiiABw2AAAAP2zUKul4147.jpg

(其中GCD是最大公約數(shù))由頻率調(diào)諧字M的最右邊位位置L決定,如圖4所示。因此,L 的值定義了序列類,每個序列類共享自己的一組相位分量,但根據(jù)

pYYBAGOEeiiABw2AAAAP2zUKul4147.jpg

率。這些在時域中生成的截斷相位樣本序列用于通過DFT確定頻域中每條雜散線的相應(yīng)位置和幅度。這些序列還表明,M(FTW)的奇數(shù)值表現(xiàn)出最低頻率雜散的幅度,并建議對相位累加器進行簡單的修改,只需在FTW中添加1 LSB即可滿足這些最小條件。這樣,無論相位累加器的M值和初始內(nèi)容如何,相位累加器輸出序列都被迫始終具有相同的2N相位元件。然后,最差雜散音幅度的電平降低3.922 dB,等于SFDR_min(dBc)= 6.02 × W。Nicholas改進的相位累加器為NCO帶來了幾個好處,因為首先它消除了FTW最右邊太接近其MSB(FMCW應(yīng)用中的頻率掃描)的情況,其次,它使雜散的幅度與頻率調(diào)諧字M無關(guān)。通過在采樣速率fS下切換ALU LSB,可以在軟件中輕松實現(xiàn)這種修改,可以模擬相位累加器的相同行為,就像FTW LSB設(shè)置為邏輯1一樣。當(dāng)相位累加器大小N = 64位時,1/2 LSB偏移可以被認為是關(guān)于所需頻率FOUT精度的可忽略不計的誤差。

poYBAGOEeiqAOA5-AAHt_1dnCxc117.jpg

圖5.FTW 最右邊的非零位的位置設(shè)置了理論上的 SFDR 最壞情況水平。尼古拉斯修改的相位累加器解決了N的任何值的問題,并使NCO的SFDR最大化。

輸出相位字W為32位時,相位截斷導(dǎo)致的最大雜散幅度被限制在–192 dBc!正弦采樣值的有限量化也會導(dǎo)致另一組頻率雜散,它通常被認為是噪聲,并通過眾所周知的關(guān)系SNRq(dB)= 6.02 × D + 1.76進行估計。由于相位-正弦幅度轉(zhuǎn)換算法級的近似誤差,必須將其添加到寄生元件中,但是,考慮到在選擇相位-正弦近似算法和計算精度時非常謹(jǐn)慎,該誤差被認為是可以忽略不計的。

這些結(jié)果表明,我們的軟件正弦NCO的線性度和噪聲都處于理論水平,遠遠超出了測試市場上大多數(shù)高精度ADC所需的閾值。信號鏈中最后一個但最關(guān)鍵的元件還有待找到:重建DAC及其互補模擬抗混疊濾波器以及相關(guān)的驅(qū)動器電路,這些電路很容易滿足預(yù)期的性能水平。

在本系列的第3部分中,我們將介紹如何選擇重建DAC并完成DDFS系統(tǒng)。

審核編輯:郭婷

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 處理器
    +關(guān)注

    關(guān)注

    68

    文章

    19440

    瀏覽量

    231332
  • dsp
    dsp
    +關(guān)注

    關(guān)注

    554

    文章

    8059

    瀏覽量

    350683
  • 振蕩器
    +關(guān)注

    關(guān)注

    28

    文章

    3855

    瀏覽量

    139420
收藏 人收藏

    評論

    相關(guān)推薦

    UWB高精度定位技術(shù)在智能倉儲的應(yīng)用

    UWB高精度定位系統(tǒng)結(jié)合RFID和ERP軟件,優(yōu)化倉儲管理,實現(xiàn)厘米級定位、抗干擾、低功耗安全,提升倉儲效率40%,減少誤差,未來應(yīng)用場景更廣,推動智能倉儲進入精準(zhǔn)高效新時代。
    的頭像 發(fā)表于 01-22 17:30 ?141次閱讀

    請問ADS1263能做到多高精度?實現(xiàn)高精度應(yīng)該注意什么?

    我想實現(xiàn)每通道10K以上采樣率,測量范圍為-500mV ~+500mV,請問ADS1263能做到多高精度?實現(xiàn)高精度應(yīng)該注意什么,比如電壓基準(zhǔn)源應(yīng)該選用什么器件?應(yīng)該選用什么電源器件
    發(fā)表于 01-01 06:28

    物聯(lián)網(wǎng)系統(tǒng)中高精度RTK定位方案的實現(xiàn)_高精度定位模塊

    物聯(lián)網(wǎng)系統(tǒng)為什么要使用高精度定位模塊 物聯(lián)網(wǎng)系統(tǒng)中使用高精度定位模塊的原因主要體現(xiàn)在以下幾個方面: 提高定位精度 厘米級高精度
    的頭像 發(fā)表于 09-26 17:53 ?1580次閱讀
    物聯(lián)網(wǎng)系統(tǒng)中<b class='flag-5'>高精度</b>RTK定位方案的<b class='flag-5'>實現(xiàn)</b>_<b class='flag-5'>高精度</b>定位模塊

    數(shù)字振蕩器的實現(xiàn)要求有哪些

    數(shù)字振蕩器(也稱為數(shù)控振蕩器,NCO)的實現(xiàn)要求涉及多個方面,主要包括高精度、靈活性、頻率分辨率、相位連續(xù)性以及實現(xiàn)方法的優(yōu)化等。以下是對這些要求的介紹: 1.
    的頭像 發(fā)表于 09-25 10:34 ?307次閱讀

    VS高精度電壓傳感器

    。 ? 高精度測試范圍 ? ? ? 常規(guī)的電壓傳感器均為滿量程精度標(biāo)稱,半量程以下測試時偏差較大,難以滿足寬范圍測試應(yīng)用需求。VS高精度電壓傳感器具有優(yōu)異的精度、線性度指標(biāo),即便在30
    的頭像 發(fā)表于 09-19 15:55 ?473次閱讀
    VS<b class='flag-5'>高精度</b>電壓傳感器

    探索UWB技術(shù)的獨特優(yōu)勢:實現(xiàn)高精度定位

    在UWB定位系統(tǒng),一個標(biāo)簽通過與三個基站的信號交互進行三角測量,最多可以有30個標(biāo)簽同時與這三個基站通信,實現(xiàn)對多個目標(biāo)的高精度定位和跟蹤。 采用三點平面定位法,精確的定位計算:在UWB和AoA
    的頭像 發(fā)表于 09-14 17:00 ?932次閱讀
    探索UWB技術(shù)的獨特優(yōu)勢:<b class='flag-5'>實現(xiàn)</b><b class='flag-5'>高精度</b>定位

    何在MSP430?上實現(xiàn)內(nèi)置振蕩器的高精度定時器

    電子發(fā)燒友網(wǎng)站提供《如何在MSP430?上實現(xiàn)內(nèi)置振蕩器的高精度定時器.pdf》資料免費下載
    發(fā)表于 09-14 11:10 ?0次下載
    如<b class='flag-5'>何在</b>MSP430?上<b class='flag-5'>實現(xiàn)</b>內(nèi)置振蕩器的<b class='flag-5'>高精度</b>定時器

    何在激光雷達和接近檢測利用高速比較器提高精度

    電子發(fā)燒友網(wǎng)站提供《如何在激光雷達和接近檢測利用高速比較器提高精度.pdf》資料免費下載
    發(fā)表于 09-02 09:33 ?0次下載
    如<b class='flag-5'>何在</b>激光雷達和接近檢測<b class='flag-5'>中</b>利用高速比較器提<b class='flag-5'>高精度</b>

    國產(chǎn)AFE可兼容ADS1248助力工業(yè)實現(xiàn)高精度的模擬性能

    國產(chǎn)AFE可兼容ADS1248助力工業(yè)實現(xiàn)高精度的模擬性能
    的頭像 發(fā)表于 08-15 09:50 ?542次閱讀
    國產(chǎn)AFE可兼容ADS1248助力工業(yè)<b class='flag-5'>實現(xiàn)</b>超<b class='flag-5'>高精度</b>的模擬性能

    什么是高精度定位平板?

    普通GPS設(shè)備的精度。 高精度定位平板的關(guān)鍵技術(shù)是RTK(Real-Time Kinematic,實時動態(tài)測量)技術(shù)。RTK技術(shù)通過接收來自基站的差分信號,實時修正GPS信號的誤差,實現(xiàn)
    的頭像 發(fā)表于 06-12 17:53 ?892次閱讀

    北斗高精度定位手持終端在哪些場景應(yīng)用

    隨著科技的飛速發(fā)展,高精度定位技術(shù)已成為現(xiàn)代社會不可或缺的一部分。北斗衛(wèi)星導(dǎo)航系統(tǒng)作為中國自主研發(fā)的全球衛(wèi)星導(dǎo)航系統(tǒng),其高精度定位手持終端在多個領(lǐng)域中展現(xiàn)出了巨大的應(yīng)用價值。這些手持終端以其卓越
    的頭像 發(fā)表于 06-04 14:32 ?564次閱讀
    北斗<b class='flag-5'>高精度</b>定位手持終端在哪些場景<b class='flag-5'>中</b>應(yīng)用

    高精度滾珠絲桿在航空航天技術(shù)實現(xiàn)精準(zhǔn)對接!

    滾珠絲桿以其高精度,高效率,高剛性,高壽命等特點。作為一種高效,節(jié)能,高精度的傳動與定位元件,在航空航天領(lǐng)域中有著非常出色的運用。它以精確的直線定位和運動控制能力,賦予智能制造設(shè)備高速、高效的傳動能力,從而輕松實現(xiàn)在航空航天領(lǐng)域
    的頭像 發(fā)表于 05-29 17:36 ?820次閱讀
    <b class='flag-5'>高精度</b>滾珠絲桿在航空航天技術(shù)<b class='flag-5'>中</b><b class='flag-5'>實現(xiàn)</b>精準(zhǔn)對接!

    北斗高精度定位終端的工作原理和精度范圍

    北斗高精度定位終端的工作原理主要基于北斗衛(wèi)星導(dǎo)航系統(tǒng),通過衛(wèi)星信號的接收、處理和計算,實現(xiàn)了對目標(biāo)位置的精確測量。以下是關(guān)于北斗高精度定位終端工作原理的引文:北斗高精度定位終端?北斗
    的頭像 發(fā)表于 05-28 11:15 ?798次閱讀
    北斗<b class='flag-5'>高精度</b>定位終端的工作原理和<b class='flag-5'>精度</b>范圍

    mcsdk無法做高精度位置控制如何解決?

    ,那么位置控制很容易超調(diào)和來回調(diào)整,速度調(diào)整不過來,因此我只能做在臨近位置時候切換成電流環(huán),可還是無法做高精度位置控制,我想請問一下問題如何解決 2第二個問題是,如何在MCSDK添加第二個傳感器,如
    發(fā)表于 03-12 07:25

    Aigtek:如何設(shè)計一個高精度電壓源

    在現(xiàn)代電子系統(tǒng),高精度電壓源是許多應(yīng)用的基礎(chǔ),如精密儀器、測試測量設(shè)備、通信系統(tǒng)等。設(shè)計一個高精度電壓源需要深入了解電源電路的原理和各種影響電壓穩(wěn)定性的因素,同時結(jié)合高性能的元器件和精密的控制技術(shù)
    的頭像 發(fā)表于 02-27 11:40 ?722次閱讀
    Aigtek:如何設(shè)計一個<b class='flag-5'>高精度</b>電壓源