国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

如何通過三個簡單步驟來設置數據流

MATLAB ? 來源:MATLAB ? 作者:MATLAB ? 2021-09-10 10:03 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

MathWorks信號處理系統設計往往涉及復雜的算法或者數據密集型應用,因此通常具有較高的計算復雜度。構建和仿真這些復雜系統可能相當耗時。Simulink 中的數據流執行域功能是減少模型仿真時間的方法之一。該功能可以對 Simulink 模型自動分區,然后使用主機上閑置的 CPU 內核并行執行各分區,從而加速仿真。本文說明如何通過三個簡單步驟來設置數據流。然后,我們用無線電模型作為示例來演示數據流的實際運用,并比較啟用和未啟用數據流的模型仿真時間。此示例中使用的模型可以直接點擊文末“閱讀原文”下載。

數據流使用的并行機制類型

為進行模型分區和并行執行,數據流會采用以下數據和任務并行機制組合之一(圖 1):

顯式并行機制通過不同算法處理不同數據集。

展開并行機制通過同一算法處理一個數據流的連續幀。

管道并行機制通過不同算法處理同一數據的不同部分。

設置數據流

要在 Simulink 模型中啟用數據流執行域,首先要實現子系統。實現方式取決于您的具體設計進度。如果您的設計剛剛開始,請使用 DSP System Toolbox 中的 Dataflow Subsystem 模塊(圖 2)。該模塊經過預配置,可以直接使用。您只需將它拖到 Simulink 模型中,然后在其中填充算法組件。 如果您的設計模型已構建完畢,請將表示要并行化的算法的模塊放在子系統中,并按如下方式設置數據流:

選擇您剛剛創建的子系統。

在屬性檢查器的“執行”選項卡下,勾選設置執行域復選框。

將域選項設置為數據流。

在子系統內部,左下角的 》 圖標表示子系統設置為數據流執行域。數據流執行域首先通過在單線程上運行模型來分析模型,然后自動進行子系統分區以用于多線程執行。

數據流的實際運用

該示例模型對無線電發射機和接收機進行仿真。它包含數字上變頻器和下變頻器來調整信號頻率,并實現調制器和解調器(圖 3)。輸入是以 8 kHz 采樣的錄制語音。輸出是兩個頻譜分析儀和一個音頻接收端。

首先,我們測量在不啟用數據流的情況下仿真該模型所需的時間1。我們可以注釋掉輸出模塊,以便專注于仿真算法,而不受運行示波器和音頻輸出所需的固定時長的限制。(1. 所有仿真都在 Windows 桌面計算機上運行,該計算機采用 Intel Xeon CPU W-2133 @ 3.6 GHz 6 核 12 線程處理器。)我們使用 tic-toc 命令測量仿真時間:

modelname = ‘mono_radiomodel’;

tic;

simData = sim(modelname);

t = toc

運行該模型的執行時間為 3.67 秒。現在我們引入數據流。我們將表示算法的模塊放入子系統中,并將域設置為數據流(圖 4)。

助手建議的更改之一是添加延遲。當數據流發現并行機制可能增大吞吐量時,通常會向模型添加延遲。沿信號線添加的延遲用 z-n 標簽表示。我們接受更改,并將啟用了數據流的模型保存為 mono_radiomodel_dataflow。然后,我們使用與之前相同的 tic-toc 命令來測量新子系統的執行時間。

modelname = ‘mono_radiomodel_dataflow’;

tic;

simData2 = sim(modelname);

t_Dataflow = toc

啟用數據流后的執行時間為 2.5 秒,比正常的單線程執行速度快 1.7 倍。加速得益于編譯器優化、模型設置更改和數據流添加的延遲。然而,該模型僅在單線程上執行,加速并不顯著。這是因為大部分計算負載都集中在上下變頻器模塊中。當計算負載分散在整個模型中時,數據流效果最佳,因為這為創建并行線程提供了更多機會。在下一節中,我們將擴展模型,展示數據流的實現如何進一步提高仿真性能。

處理大型模型

我們通過引入多通道音頻輸入信號來增大模型的計算復雜度。這會使需要處理的數據量倍增,也為數據流提供了更多優化仿真性能的機會。圖 6 顯示經過修改、采用立體聲音頻輸入的模型,運行時間為 18.6 秒。通過啟用信號維度信息疊加,我們可以看到信號輸入確實有兩個音頻通道。

在啟用數據流并重新運行模型后,我們觀察到模型在 5 個并發線程上運行,執行時間為 4.5 秒,幾乎實現了 4 倍加速(圖 7)。

使用數據流的多線程代碼生成數據流支持使用 Simulink Coder 和 Embedded Coder 的單核和多核 C/C++ 代碼生成。首先在 Simulink 模型的“求解器”窗格中啟用允許任務在目標上并發執行參數,然后使用 Ctrl + B 生成代碼。為桌面目標生成的代碼通過 OpenMP 實現多線程化。為 Embedded Coder 目標生成的代碼通過 POSIX 實現多線程化。圖 8 顯示基于以上無線電模型生成的 OpenMP C 代碼,包括由數據流創建的并發任務。

數據流的限制

雖然數據流有助于加速大多數仿真,但它對有些模型可能并不適用,例如較小的模型、不太復雜的模型,或者計算負載集中在少數幾個模塊中的模型。在這些情況下,數據流實現的速度提升不會抵消在并行線程上同步和執行模型所需的開銷。如無線電模型示例所示,當計算負載在模型中均勻分布時,數據流效果最佳,因為均勻分布的負載意味著有更多機會進行模型分區和并行執行。就建模限制而言,從版本 2020b 開始,數據流不支持連續模塊、可變大小信號或虛擬 Simulink 總線的多線程仿真。

小結

通過數據流執行域,您可以在 Simulink 模型中識別可以分布到多個線程中并行執行的建模模式。這種方法可利用主機 CPU 上閑置的處理能力,優化吞吐量,并減少模型仿真時間。數據流執行域最適合計算負載分散在整個模型中的情形(此時可引入并行機制),并且只能處理離散信號。

責任編輯:haq

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

    關注

    54

    文章

    4482

    瀏覽量

    138251
  • 信號
    +關注

    關注

    12

    文章

    2914

    瀏覽量

    80122
  • 模型
    +關注

    關注

    1

    文章

    3751

    瀏覽量

    52099

原文標題:加速 Simulink 模型中的信號處理算法仿真

文章出處:【微信號:MATLAB,微信公眾號:MATLAB】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    變頻器PID參數設置步驟

    變頻器PID控制是工業自動化領域中實現精確調節的關鍵技術之一,其核心在于通過比例(P)、積分(I)、微分(D)三個參數的協同作用,實現對電機轉速、壓力、流量等物理量的閉環控制。本文將結合西門子
    的頭像 發表于 03-03 17:14 ?447次閱讀
    變頻器PID參數<b class='flag-5'>設置</b><b class='flag-5'>步驟</b>

    MAX1916:高性能低 dropout 恒通道白光 LED 偏置電源

    MAX1916 是傳統白光 LED 設計中簡單鎮流電阻的高性能替代方案。它只需一電阻就能為三個 LED 設置偏置電流,且三個 LED 的
    的頭像 發表于 02-03 14:55 ?162次閱讀

    束管式光纜最簡單三個步驟

    束管式光纜的安裝或施工可簡化為以下三個核心步驟,確保光纖傳輸性能穩定且操作高效: 第一步:路由規劃與準備 路徑勘察 確定光纜敷設路線,避開強電磁干擾源(如高壓線)、尖銳物體或易受外力破壞的區域(如
    的頭像 發表于 01-07 10:12 ?230次閱讀

    使用簡儀科技產品構建高速數據流盤與回放系統解決方案

    本案例面向國產自主可控PXI軟硬件平臺,構建了一套運行于銀河麒麟實時操作系統環境下的高速數據流盤與回放系統。系統以高速數字化儀為核心,實現多通道高速信號的實時采集、連續盤存儲及離線回放分析,保障
    的頭像 發表于 12-30 10:52 ?535次閱讀
    使用簡儀科技產品構建高速<b class='flag-5'>數據流</b>盤與回放系統解決方案

    如何查看電能質量在線監測裝置的數據自動清理規則參數設置是否成功?

    查看電能質量在線監測裝置數據自動清理規則參數設置是否成功,需通過 參數核對 、 日志驗證 、 模擬測試 三個維度進行,以下是完整操作方法: 一、參數配置核對(確認
    的頭像 發表于 12-10 16:29 ?297次閱讀
    如何查看電能質量在線監測裝置的<b class='flag-5'>數據</b>自動清理規則參數<b class='flag-5'>設置</b>是否成功?

    歐姆龍推出全新數據流邊緣控制器DX1

    2025年11月,歐姆龍自動化(中國)有限公司發布新品【數據流控制器DX1】。DX1作為一款數據流邊緣控制器,面對生產現場數據采集與活用困難、數據需求因人/設備而異、需關停設備才能引入
    的頭像 發表于 11-26 18:02 ?1267次閱讀
    歐姆龍推出全新<b class='flag-5'>數據流</b>邊緣控制器DX1

    在以下嵌入式軟件設計模型中,屬于數據流模型的是,哪里有設計模型的介紹?

    在以下嵌入式軟件設計模型中,屬于數據流模型的是()。A. CCSB. CSPC. FSMD. Petri Net
    發表于 11-24 15:55

    如何在大核rtt上把kd_mpi_vicap_start_stream三個攝像頭各自出的拼成一呢?

    內容為空就行,三個格對應三個攝像頭 最后目的是進行這個frame編解碼然后uvc 你好,實現多個攝像頭畫面的合成顯示,可借助 VO(視頻輸出)的 WBC(窗口合成)功能,具體步驟如下: 首先在 VO
    發表于 09-09 07:20

    求助,關于stm32H7多DMA數據流問題求解

    情況如下:stm32H7配置了一adc進行采樣,通過dma進行數據傳輸,串口接收和發送命令,用兩dma數據流通道,采用的空閑中斷。 問題
    發表于 07-29 15:02

    如何使用WaveDac8設置簡單數據采集系統,以生成不同持續時間的脈沖?

    我目前正在嘗試使用 WaveDac8 設置簡單數據采集系統,以生成不同持續時間的脈沖,并應用于 RC 簡單電路。我成功生成了 250
    發表于 07-25 07:55

    用IS8000軟件和WT5000功率分析儀的DS波形數據流功能分析形數據

    橫河IS8000集成軟件平臺,將功率分析儀的波形采集與示波器的波形數據分析融為一體,提高測試效率。下面我們將為您揭曉如何通過IS8000軟件和WT5000的DS波形數據流功能輕松保存并分析相關波形
    的頭像 發表于 07-03 18:30 ?633次閱讀
    用IS8000軟件和WT5000功率分析儀的DS波形<b class='flag-5'>數據流</b>功能分析形<b class='flag-5'>數據</b>

    FX3板是否兼容2k和4k分辨率的視頻數據流

    ,實現了 1920 * 1080 @ 60 fps 的設計,但現在我想檢查與上述更高分辨率的兼容性。 關于這一點,我有幾個問題 1.FX3 板是否兼容 2k 和 4k 分辨率的視頻數據流? 2.視頻數據流
    發表于 05-23 06:35

    通過 FX3 以 5200*3900 分辨率、15fps 的速度從我的 fpga 傳輸視頻數據流,但無法設置最小/最大比特率描述符值,怎么解決?

    我正試圖通過 FX3 以 5200*3900 分辨率、15fps 的速度從我的 fpga 傳輸視頻數據流,但無法設置最小/最大比特率描述符值,因為描述符大小只有 32 位。 描述符的預期值應該是
    發表于 05-23 06:35

    使用FX3測試程序中的數據流時,遇到了每8字節重復的場景,是什么原因導致的?

    我在使用 FX3 測試程序中的數據流時,遇到了每 8 個字節重復的場景。
    發表于 05-21 06:59

    如何檢測極管的三個

    可以用萬用表初步確定極管的好壞及類型 (NPN 型還是 PNP 型 ),并辨別出e(發射極)、b(基極)、c(集電極)三個電極。
    發表于 03-08 16:40