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

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

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

邏輯分析儀內(nèi)存不足? “拼”出解決之道!

星星科技指導(dǎo)員 ? 來源:ADI ? 作者:ADI ? 2023-06-16 14:38 ? 次閱讀

MATLAB?是一個強有力的工具,可用來快速分析從模數(shù)轉(zhuǎn)換器(ADC)輸出所捕獲的數(shù)據(jù)。本應(yīng)用筆記演示了如何使用MATLAB來突破邏輯分析儀存儲深度的局限。描述并比較了三種數(shù)碼拼接方式(基本,超前和反轉(zhuǎn))。并給出了三種方法所得的結(jié)果。

介紹

要評估一個高速模數(shù)轉(zhuǎn)換器(ADC)的性能,就需要捕獲其數(shù)字輸出碼,然后進行分析。邏輯分析儀的存儲深度常常成為一個重要局限,妨礙系統(tǒng)捕獲足夠的數(shù)據(jù)點,以生成高分辨率FFT,或者精確的INL/DNL圖。解決該問題的一個簡單辦法是使用某種數(shù)學(xué)工具,例如MATLAB ( 圖1 ),將多組數(shù)據(jù)連接起來。連接數(shù)據(jù)的一個缺點是,通常會在兩組數(shù)據(jù)之間的連接點出現(xiàn)很大的不連續(xù)性。盡管不連續(xù)性對INL/DNL圖的影響極小,但對高分辨率FFT而言,幾乎是毀滅性的( 圖2 )。

圖1. 連接后的數(shù)據(jù)在兩組數(shù)據(jù)之間出現(xiàn)不連續(xù)。

圖1. 連接后的數(shù)據(jù)在兩組數(shù)據(jù)之間出現(xiàn)不連續(xù)。

![圖2. a) 捕獲單組16384點數(shù)據(jù)并分析;b) 捕獲兩組8192點數(shù)據(jù),連接,然后分析“拼接”技術(shù)。]微信截圖_20200307100422.png
圖2. a) 捕獲單組16384點數(shù)據(jù)并分析;b) 捕獲兩組8192點數(shù)據(jù),連接,然后分析“拼接”技術(shù)。

有一種辦法可以消除不連續(xù)性,就是在各組數(shù)據(jù)中尋找相同的點簇(一般為3到4個點),然后在這些點將兩組數(shù)據(jù)“拼接”在一起( 圖3 )。最簡單的“拼接”方法是,記錄下第一組數(shù)據(jù)中的最后四個點,然后在第二組數(shù)據(jù)里尋找相同的點簇。相同點簇出現(xiàn)在第二組數(shù)據(jù)中的位置稱為“拼接點”。第二組數(shù)據(jù)中在拼接點之前的所有數(shù)據(jù)均被舍棄;第二組數(shù)據(jù)中的剩余部分與第一組數(shù)據(jù)合并。這種技術(shù)即所謂的基本數(shù)碼拼接,實現(xiàn)起來非常簡單,可以在MATLAB中非??斓剡\行。

圖3. 基本數(shù)碼拼接后得到的最終“拼接”數(shù)組

圖3. 基本數(shù)碼拼接后得到的最終“拼接”數(shù)組。

采用基本拼接方法拼接數(shù)據(jù)時,有時必須丟掉第二組數(shù)據(jù)中的近一半,才能找到與第一組數(shù)據(jù)最后四個點相匹配的一簇點。作為另一種選擇,丟掉第一組數(shù)據(jù)尾部的幾個點,常常有助于找到更靠近第二組數(shù)據(jù)起點的拼接點( 圖4 )。然而,通過丟掉第一組數(shù)據(jù)尾部、第二組數(shù)據(jù)頭部的部分采樣點來尋找匹配點的方法實現(xiàn)起來比較困難。這種處理被稱為超前數(shù)碼拼接。理想拼接點應(yīng)該能夠保留盡可能多的數(shù)據(jù)點,尋找這樣的拼接點需要認(rèn)真的考慮和一定的編程技巧。正確地實現(xiàn)之后,超前拼接技術(shù)通常能夠得到兩組小數(shù)組所含數(shù)據(jù)點總數(shù)的至少90%。

圖4. 采用超前拼接技術(shù)尋找理想拼接點,最終得到“拼接”后的數(shù)組。

圖4. 采用超前拼接技術(shù)尋找理想拼接點,最終得到“拼接”后的數(shù)組。

將第二組數(shù)據(jù)(數(shù)組B)拼接到第一組數(shù)據(jù)(數(shù)組A)之前被稱為反轉(zhuǎn)拼接,這種方式有可能得到更大的拼接數(shù)組( 圖5 )。但是,這種技術(shù)會使處理時間翻倍,因為必須在A領(lǐng)先于B和B領(lǐng)先于A兩種情況下尋找拼接點。此外,當(dāng)與其他拼接技術(shù)一起使用時,反轉(zhuǎn)拼接方式所帶來的好處通常很少。因此,對于較慢的PC,反轉(zhuǎn)拼接技術(shù)大幅度增加的處理時間開銷較之它所帶來的好處而言并不太值。表1詳細(xì)比較了這三種代碼拼接方法。

圖5. 反轉(zhuǎn)拼接的處理時間加倍,但常常收效甚微。

圖5. 反轉(zhuǎn)拼接的處理時間加倍,但常常收效甚微。

表1. 三種拼接技術(shù)對比 *

Stitch Technique Size of Final Data Set Description
Data Set Numbers # of codes(averaged) % of two data sets(averaged)
1 + 2 3 + 4 1 + 4
Concatenate? N/A 16384
Basic 11060 8192?
Reverse 11060 8192?
Advanced 13790 16046
Advanced+Reverse 15427 16176

*采用上述拼接技術(shù)對兩組8K (8192個)數(shù)據(jù)進行拼接。為確保準(zhǔn)確性,采用四組8192點數(shù)據(jù)(分別編號為1至4)重復(fù)本測試。每組測試所合成的數(shù)據(jù)取平均后列于測試數(shù)據(jù)的右側(cè)。

? 直接連接總能得到100%的數(shù)據(jù)。

? 無法拼接數(shù)據(jù)。### MATLAB函數(shù)說明

本文后附的MATLAB代碼(附錄A和B中的StitchMatrices和FindStitchPoint)將上述論點結(jié)合到一個易于使用的函數(shù)中。這些函數(shù)可接受兩組數(shù)據(jù)(MATLAB中的單列矩陣)和幾個輸入變量(用來選擇超前/反轉(zhuǎn)拼接功能)。FindStitchPoint例程用來確定拼接點在數(shù)組A和B中的偏移量。StitchMatrices例程則根據(jù)FindStitchPoint例程給出的偏移量對兩組數(shù)據(jù)A和B進行舍棄和組合。同時,最終數(shù)據(jù)的拼接點被記錄在PrevStitchBins數(shù)組中,以便于后續(xù)處理。當(dāng)拼接多組數(shù)據(jù)時,PrevStitchBins可保存老的拼接點。

結(jié)論

拼接兩組數(shù)據(jù)可以得到一組理想的結(jié)果。圖6給出了三組8192點數(shù)據(jù)使用上述拼接技術(shù)拼接起來(使用5個拼接點)后的FFT圖。所得的FFT幾乎與前面圖2a所示,基于16384個連續(xù)點所得結(jié)果相同。

圖6. 數(shù)碼拼接后得到精確的FFT圖。

圖6. 數(shù)碼拼接后得到精確的FFT圖。

審核編輯:郭婷

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

    關(guān)注

    179

    文章

    2946

    瀏覽量

    229463
  • adc
    adc
    +關(guān)注

    關(guān)注

    97

    文章

    6300

    瀏覽量

    542458
收藏 人收藏

    評論

    相關(guān)推薦

    邏輯分析儀是什么

    分析儀已經(jīng)非常成熟,仍存不足之處,例如在高速采樣狀態(tài)下無法實時顯示波形。相信這種情況將不會持續(xù)太久,隨著技術(shù)發(fā)展串行通信帶寬得到大幅提高(USB 3.0),虛擬邏輯分析儀將有望快速步入
    發(fā)表于 08-23 16:31

    安捷倫科技邏輯分析儀推出最深的內(nèi)存

    安捷倫科技邏輯分析儀推出最深的內(nèi)存
    發(fā)表于 10-14 07:42

    RAM內(nèi)存不足錯誤

    遇到難題一、:RAM內(nèi)存不足錯誤:一 、將UC/OS III移植到STM32F103C8T6的遇到內(nèi)存不足的報錯。分析,c8t6系類RAM內(nèi)存只有20KB。如上圖。在代碼中將heap_
    發(fā)表于 08-20 08:14

    邏輯分析儀的應(yīng)用分析

    邏輯分析儀原理及相關(guān)術(shù)語簡介。邏輯分析儀的工作原理簡介邏輯分析儀的組成結(jié)構(gòu)如圖1所示,它主要包括
    發(fā)表于 11-27 13:06 ?11次下載

    邏輯分析儀的使用

    邏輯分析儀的使用 本文主要介紹邏輯分析儀的使用步驟與方法,從探頭與被測系統(tǒng)連接、設(shè)置時鐘模式和觸發(fā)功能、捕獲、分析、顯示波
    發(fā)表于 11-27 08:50 ?2031次閱讀

    邏輯分析儀內(nèi)存不足?“解決之道

    摘要:MATLAB®是一個強有力的工具,可用來快速分析從模數(shù)轉(zhuǎn)換器(ADC)輸出所捕獲的數(shù)據(jù)。本應(yīng)用筆記演示了如何使用MATLAB來突破邏輯分析儀存儲深度的局限。描述并比較了三種數(shù)
    發(fā)表于 04-25 09:58 ?523次閱讀
    <b class='flag-5'>邏輯</b><b class='flag-5'>分析儀</b><b class='flag-5'>內(nèi)存不足</b>?“<b class='flag-5'>拼</b>”<b class='flag-5'>出</b><b class='flag-5'>解決之道</b>

    邏輯分析儀選型參數(shù)有哪些_邏輯分析儀有哪些技術(shù)指標(biāo)_邏輯分析儀有什么推薦的?

    邏輯分析儀分析數(shù)字系統(tǒng)邏輯關(guān)系的儀器。邏輯分析儀是屬于數(shù)據(jù)域測試[2]儀器中的一種總線
    發(fā)表于 12-20 16:43 ?5367次閱讀

    HFSS軟件內(nèi)存不足的解決方法

    HFSS軟件內(nèi)存不足該如何解決?
    的頭像 發(fā)表于 07-15 10:15 ?2.2w次閱讀

    虛擬內(nèi)存不足的原因

    電腦系統(tǒng)是WinXP,最近使用時,沒開多少程序,卻常常出現(xiàn)虛擬內(nèi)存不足的系統(tǒng)提示??赡苡幸韵聨讉€原因
    的頭像 發(fā)表于 03-14 14:25 ?3036次閱讀

    虛擬內(nèi)存不足怎么解決

    電腦的虛擬內(nèi)存不足以后,很多功能就無法使用了,且會彈出如下所示的頁面。這就說明虛擬內(nèi)存無法滿足我們的使用需求,就需要咱們對電腦的虛擬內(nèi)存進行重新設(shè)置。那么如何設(shè)置呢?請看下文。
    的頭像 發(fā)表于 03-14 14:29 ?1.3w次閱讀

    手機內(nèi)存不足的清理方法

    很多時候當(dāng)我們拿起手機時,突然提示我們手機內(nèi)存不足,無法安裝應(yīng)用,部分功能受影響,手機最近頻頻提醒內(nèi)存空間不足,隨著手機使用時間的延長,手機不可避免的越來越臃腫,手機運行速度也是一卡再卡。怎么辦?沒關(guān)系,又顯示
    發(fā)表于 05-20 09:49 ?9881次閱讀

    電腦和手機的內(nèi)存不足怎么辦

    如果是電腦內(nèi)存不足,可以通過任務(wù)管理器關(guān)閉部分應(yīng)用程序,也可以在控制面板中調(diào)整虛擬內(nèi)存的大小,還可以通過增加內(nèi)存容量方式解決。如果是手機運行內(nèi)存不足,可以一鍵關(guān)閉多任務(wù)。如果是手機存儲
    發(fā)表于 05-22 09:41 ?1627次閱讀

    電腦內(nèi)存不足怎么解決win10

    電腦內(nèi)存大家一定都知道吧,通常我們在用電腦的時候,當(dāng)我們打開大型的網(wǎng)絡(luò)游戲和各種應(yīng)用的軟件時,如果我們的電腦本身的內(nèi)存不足,就會使游戲和大型的軟件打開失敗或者是終止。而且電腦內(nèi)存不足會大大降低電腦
    發(fā)表于 06-12 10:31 ?1124次閱讀

    邏輯分析儀是干啥用的 邏輯分析儀的主要用途 邏輯分析儀的應(yīng)用場景

    邏輯分析儀是干啥用的 邏輯分析儀的主要用途 邏輯分析儀的應(yīng)用場景
    的頭像 發(fā)表于 09-19 16:03 ?2530次閱讀

    邏輯分析儀如何使用 邏輯分析儀使用教程

    邏輯分析儀如何使用 邏輯分析儀使用教程? 邏輯分析儀是一種用來監(jiān)測和
    的頭像 發(fā)表于 09-19 16:03 ?2523次閱讀