chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

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

3天內不再提示

如何在軟件中實現高精度NCO

星星科技指導員 ? 來源:嵌入式計算設計 ? 作者:Patrick Butler ? 2022-07-05 11:57 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

在第 2 部分中,我們將介紹如何在軟件中實現高精度 NCO。構建具有與最佳模擬振蕩器相似或更好的失真性能的高精度交流音調發(fā)生器。

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

構建一個具有與最好的模擬振蕩器相似或更好的失真性能的高精度交流音發(fā)生器,如最著名的惠普分析儀或應用筆記 AN-1323 中所述,即使專用于音頻,也不是一件容易的事頻譜(直流至 20 kHz 范圍)。然而,如前所述,完整的軟件實現,使用嵌入式處理器的足夠算術精度執(zhí)行相位計算 (ωt) 和正弦函數 (sin(ωt)) 近似,當然可以幫助最大限度地減少量化副作用、噪聲、以及由此產生的馬刺。這意味著圖 2 中的所有 NCO 功能塊都轉換為代碼行(沒有 VHDL!

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

首先,正弦逼近函數的明顯選擇是使用具有適當階數的直線 Taylor/MacLaurin 冪級數來滿足目標精度。然而,由于冪級數往往在端點處失效,因此在執(zhí)行任何多項式評估之前,必須將參數輸入范圍縮小到更小的區(qū)間。在沒有參數范圍縮減的情況下,只有非常高階的多項式才能支持函數域上的高精度,例如 [–π, +π]。因此,需要對初等函數應用一些變換以得到簡化參數,例如 sin(|x|) = sin(f + k × π/2) 和 sin(f) = sin(x – k × π/ 2) 0≤f《π/2。因此,應特別注意三角函數以避免減法抵消,這將導致嚴重的精度損失并產生災難性的結果,尤其是在算術精度較差的情況下。在我們的例子中,當相位輸入較大或接近 π/2 的整數倍時,可能會發(fā)生這種情況。

除了周期性和模 2π 重復之外,sin(x) 函數的對稱特性還可用于進一步減小逼近范圍。鑒于正弦函數在區(qū)間 [0, 2π] 中關于點 x = π 反對稱,因此可以使用以下關系:

poYBAGLDtt-Afc_YAAAffiemX2w545.png

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

pYYBAGLDtuWANhQIAAAnrFlGeho781.png

對于區(qū)間 [0, π/2] 中的 x,這進一步減小了角度輸入逼近范圍。進一步將參數減少到更小的區(qū)間(例如 [0, π/4] 以提高準確性)效率不高,因為它需要同時評估正弦和余弦函數,如常見的三角關系所示:sin(a+b ) = sin(a) × cos(b) + cos(a) × sin(b),值得產生正交音。

ADI 公司的 ADSP-21000 系列應用手冊第 1 卷描述了一種幾乎理想的(用于嵌入式系統(tǒng))正弦逼近函數,該函數基于為第一個 ADI DSP 浮點處理器(即 ADSP-21020)編寫的優(yōu)化冪級數,它基本上是一個SHARC核心。sin(x) 的這種實現依賴于 Hart 等人 4 發(fā)表并由 Cody 和 Waite5 改進的極小極大多項式近似,用于浮點運算,以減少舍入誤差并避免如前所述的取消的發(fā)生。minimax 方法依賴于 Chebyshev 多項式和 Remez 交換算法來確定所需最大相對誤差的系數。如圖 3 中的 MATLAB 所示,

poYBAGLDtuuAJyOQAACiMTFYKtE161.png

圖 3. 與定義在 0 附近的 Taylor-MacLaurin 方法不同,極小極大正弦近似方法在 [–π/2 到 +π/2] 區(qū)間內最小化和均衡最大相對誤差。

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

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

pYYBAGLDtvOAdeC7AACXaoideWI741.png

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

pYYBAGLDtvuAQCQLAAJ83Or1Vlc479.png

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

NCO 64 位相位累加器本身使用雙精度二進制補碼小數格式的 SHARC 32 位 ALU 來執(zhí)行。具有內存更新的完整相位累加器執(zhí)行需要 11 個內核周期,因此,每個 NCO 輸出樣本在大約 33 個內核周期內生成。

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

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

64 位小數定點到 40 位 FP 轉換塊;

范圍縮減塊 [0 到 + π/2] 和象限選擇(Cody 和 Waite);

用于相位幅度轉換的正弦逼近算法 (Hart);

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

必要時進行 LP FIR 濾波器和 sin(x)/x 補償;

以及 40 位 FP 到 D 位定點轉換和縮放功能,以適應 DAC 數字輸入。

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

NCO 的最終調整以獲得最佳 SFDR

如前所述,NCO 受到雜散的影響主要是由于相位累加器輸出的截斷,并且在較小程度上是由于對通過計算或制表獲得的正弦值進行的幅度量化造成的。相位截斷導致的誤差通過相位調制(鋸齒波)在載波頻率附近產生雜散,而正弦幅度量化導致諧波相關的雜散,盡管長期以來被認為是隨機誤差和噪聲。今天,如 Henry T. Nicholas 和 H. Samueli 的技術論文 7 中所描述的,相位累加器的操作在數學上是眾所周知的。經過全面分析,提出了一個模型,將相位累加器視為離散相位樣本置換發(fā)生器,從中可以預測頻率雜散。

poYBAGLDtwaAWgyLAAAgDze7vJ0187.png

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

poYBAGLDtw6AMbS2AAAfviGPPBU138.png

比率。在時域中生成的這些截斷相位樣本序列用于通過 DFT 確定頻域中每個雜散線的相應位置和幅度。這些序列還表明 M (FTW) 的奇數值表現出最低頻率雜散的幅度,并建議對相位累加器進行簡單修改,以滿足這些最小條件,只需將 1 LSB 添加到 FTW。這樣,無論 M 值和相位累加器的初始內容如何,相位累加器輸出序列都被迫始終具有相同的 2N 個相位元素。然后,最差雜散音幅度的電平降低 3.922 dB,等于 SFDR_min (dBc) = 6.02 × W。 Nicholas 改進的相位累加器為 NCO 帶來了幾個好處,

pYYBAGLDtxWAOEKjAAHkMqsj1lM606.png

圖 5. FTW 最右邊的非零位的位置設置了理論上的 SFDR 最壞情況水平。Nicholas 改進的相位累加器解決了任何 N 值的問題,并使 NCO 的 SFDR 最大化。

因此,對于 32 位的輸出相位字 W,由于相位截斷而導致的最大雜散幅度被限制為 –192 dBc!正弦樣本值的有限量化也會導致另一組頻率雜散,通常將其視為噪聲,并通過眾所周知的關系 SNRq(dB) = 6.02 × D + 1.76 進行估計。由于相位到正弦幅度轉換算法階段的近似誤差,這必須添加到寄生元素中,但是,考慮到在選擇相位到正弦近似算法和計算的精度。

這些結果表明,我們的軟件正弦 NCO 的線性度和噪聲都處于理論水平,遠遠超出了測試市場上大多數高精度 ADC 所需的閾值。仍然需要找到信號鏈中最后但最關鍵的元素:重建 DAC 及其互補模擬抗混疊濾波器和相關的驅動器電路,可以滿足預期的性能水平。

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

審核編輯:郭婷

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

    關注

    162

    文章

    8361

    瀏覽量

    184839
  • adc
    adc
    +關注

    關注

    100

    文章

    7452

    瀏覽量

    553913
  • dac
    dac
    +關注

    關注

    44

    文章

    2701

    瀏覽量

    196451
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    鐵路巡檢升級:云翎智能高精度執(zhí)法記錄儀+指揮調度系統(tǒng)實現故障秒級響應

    針對鐵路巡檢定位精度不足、響應滯后及數據可信度低等痛點,云翎智能的高精度執(zhí)法記錄儀與指揮調度系統(tǒng)的協同解決方案。通過北斗RTK厘米級定位、多模態(tài)傳感器融合及5G/衛(wèi)星雙通道通信,實現
    的頭像 發(fā)表于 07-29 22:37 ?611次閱讀
    鐵路巡檢升級:云翎智能<b class='flag-5'>高精度</b>執(zhí)法記錄儀+指揮調度系統(tǒng)<b class='flag-5'>實現</b>故障秒級響應

    何在狹小空間實現0.25°高精度尋北?

    在巷道掘進、地下鉆探、衛(wèi)星天線跟蹤等場景,傳統(tǒng)尋北設備往往因體積龐大或精度不足而難以滿足需求。ER-MNS-05C MEMS尋北系統(tǒng)突破技術瓶頸,采用最新MEMS陀螺技術,將高精度尋北功能濃縮至極
    的頭像 發(fā)表于 06-26 18:01 ?449次閱讀
    如<b class='flag-5'>何在</b>狹小空間<b class='flag-5'>實現</b>0.25°<b class='flag-5'>高精度</b>尋北?

    探索直線電機模組實現高精度的四大要素

    在工業(yè)自動化進程,直線電機模組憑借其高效、精準的直線運動輸出,成為眾多高端制造領域的核心驅動部件。直線電機模組的高精度特性是確保生產質量與效率的核心。從半導體芯片制造的納米級光刻工藝,到高端
    的頭像 發(fā)表于 06-13 11:28 ?698次閱讀
    探索直線電機模組<b class='flag-5'>實現</b><b class='flag-5'>高精度</b>的四大要素

    方案分享 | 高精度時間同步技術的實現與應用

    如何通過硬件級PTSS/CTSS技術實現亞微秒級時間同步,支持多傳感器數據精準對齊?PSB+QX550方案采用GPS/PPS/本地時鐘冗余設計,具備動態(tài)容錯功能,適用于自動駕駛測試等需要高精度時間同步的場景。
    的頭像 發(fā)表于 05-28 09:49 ?1953次閱讀
    方案分享 | <b class='flag-5'>高精度</b>時間同步技術的<b class='flag-5'>實現</b>與應用

    如何實現高精度、高可靠性的隔離式電流/電壓測量?如何在緊湊布局中平衡性能與成本?如何應對EMI干擾與安

    在工業(yè)控制、新能源汽車、伺服驅動等高壓系統(tǒng)設計,如何實現高精度、高可靠性的隔離式電流/電壓測量?如何在緊湊布局中平衡性能與成本?如何應對EMI干擾與安全合規(guī)挑戰(zhàn)?德州儀器(TI)重磅
    的頭像 發(fā)表于 04-19 14:47 ?1394次閱讀

    高精度交流充電樁負載方案

    隨著新能源汽車充電功率需求的持續(xù)攀升,交流充電樁的測試精度直接影響著設備認證與電網交互質量。高精度負載系統(tǒng)需在寬電壓范圍(85-264V AC)、全功率段(3.3-22kW)內實現±0.1%級別
    發(fā)表于 04-15 11:07

    汽車制造又一革新:Profinet-EtherCAT實現高精度激光焊接

    通過穩(wěn)聯技術Profinet到EtherCAT網關,將PLC控制系統(tǒng)與激光焊接機器人連接,實現高精度的汽車車身焊接。
    的頭像 發(fā)表于 04-12 11:05 ?520次閱讀

    旺詮WSL系列合金電阻的低阻值如何實現高精度?

    在現代電子設備,電阻器是不可或缺的元件,其性能直接影響到電路的穩(wěn)定性和精度。旺詮WSL系列合金電阻,以其低阻值和高精度的特點,在眾多應用場景脫穎而出。本文將探討旺詮WSL系列合金電
    的頭像 發(fā)表于 03-20 16:28 ?482次閱讀
    旺詮WSL系列合金電阻的低阻值如何<b class='flag-5'>實現</b><b class='flag-5'>高精度</b>?

    白皮書:在HMI應用實現高精度電容式觸摸傳感器

    在HMI 應用實現高精度電容式觸摸傳感器
    的頭像 發(fā)表于 03-17 16:46 ?1803次閱讀
    白皮書:在HMI應用<b class='flag-5'>中</b><b class='flag-5'>實現</b><b class='flag-5'>高精度</b>電容式觸摸傳感器

    如何對電壓進行高精度測試

    高達0.05%FS、帶寬高達100kHz,可滿足寬頻帶、高精度電壓測試需求。 高精度測試范圍 常規(guī)的電壓傳感器均為滿量程精度標稱,半量程以下測試時偏差較大,難以滿足寬范圍測試應用需求。VS高精
    的頭像 發(fā)表于 03-17 11:08 ?914次閱讀
    如何對電壓進行<b class='flag-5'>高精度</b>測試

    高精度晶圓劃片機切割解決方案

    高精度晶圓劃片機切割解決方案為實現高精度晶圓切割,需從設備精度、工藝穩(wěn)定性、智能化控制等多維度優(yōu)化,以下為關鍵實現路徑及技術支撐:一、核心
    的頭像 發(fā)表于 03-11 17:27 ?744次閱讀
    <b class='flag-5'>高精度</b>晶圓劃片機切割解決方案

    零知開源——ESP8266結合ICM20948實現高精度姿態(tài)解算

    IMU慣性測量單元,融合加速度計、陀螺儀和磁力計的核心傳感器,實現高精度姿態(tài)解算
    的頭像 發(fā)表于 03-07 14:09 ?2063次閱讀
    零知開源——ESP8266結合ICM20948<b class='flag-5'>實現</b><b class='flag-5'>高精度</b>姿態(tài)解算

    UWB高精度定位技術在智能倉儲的應用

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

    ads1278高速模式和高精度模式下所能得到的最高精度是多少?

    差分電路是正確的嗎,好像和ths4521的datasheet里面的單端轉差分原理圖(如下圖)不一致吧。 另外,想請教一下ads1278高速模式和高精度模式下所能得到的最高精度是多少。根據你們給的信噪比和精度之間換算的公式,
    發(fā)表于 01-16 07:41

    請問ADS1263能做到多高精度?實現高精度應該注意什么?

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