リングバッファはどの​ようにモデル化すれば​いいですか?

42 views (last 30 days)
MathWorks Support Team
MathWorks Support Team on 22 Nov 2016
リングバッファを実現したいと考えています。方法を教えてください。

Accepted Answer

MathWorks Support Team
MathWorks Support Team on 9 Mar 2021
Edited: MathWorks Support Team on 9 Mar 2021
基本的なブロックから、リングバッファを実現する1例としては、
SelectorとMux ブロックを使用する方法が考えられます。
(バッファとしてData Store Memoryを使用しています。)
Data Store Read 信号を読み出し、
Selector ブロック にて、最も古い1要素だけ捨てて取り出した後、
Mux ブロックで、最新の信号と連結させます。
また、バッファ(Data Store Memory)へのインデックスを循環させたい場合は、
Assignmentブロックを使用し、
インデックスベクトルへの入力値を循環する方法が考えられます。
その他として考えられる方法は、
・chart
・MATLAB Function
・For Iterator Subsystem
などを利用し、for文処理によって、
同一タイムステップでバッファリング処理を実現する方法も考えられます。
(関連資料)
・forループ
・for
・For Iterator

More Answers (1)

Atsushi Matsumoto
Atsushi Matsumoto on 6 Nov 2019
Delayブロックで[リング バッファーを使用]オプションを有効にするとリングバッファーを使った遅延となります。

Tags

No tags entered yet.

Products


Release

R2011b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!