info

Получите совокупное переполнение и недогрузку

Синтаксис

Описание

пример

S = info(asyncBuff) возвращает структуру, S, содержа совокупное переполнение и информацию о недогрузке dsp.AsyncBuffer Система object™, asyncBuff.

Примеры

свернуть все

dsp.AsyncBuffer Система object™ форматы кадра переменной чтения поддержек от буфера.

Создайте dsp.AsyncBuffer Системный объект. Вход является белым Гауссовым шумом со средним значением 0, стандартным отклонением 1 и форматом кадра 512 выборок. Запишите вход в буфер с помощью write метод.

asyncBuff = dsp.AsyncBuffer;
input = randn(512,1);
write(asyncBuff,input);
plot(input)
hold on

Храните данные, которые считаны из буфера в outTotal.

Постройте входной сигнал и данные, которые считаны из буфера в том же графике. Считайте данные из буфера, пока все выборки не будут считаны. В каждой итерации цикла, randi определяет количество выборок, чтобы читать. Поэтому сигнал читается в как сигнал переменного размера. prevIndex переменная отслеживает предыдущее значение индекса, которое содержит данные.

outTotal = zeros(size(input));
prevIndex = 0;
while asyncBuff.NumUnreadSamples ~= 0
    numToRead = randi([1,64]);
    out = read(asyncBuff,numToRead);
    outTotal(prevIndex+1:prevIndex+numToRead) = out;
    prevIndex = prevIndex+numToRead;
end
plot(outTotal,'r')
hold off

Проверьте, что входные данные и данные, считанные из буфера (исключая выборки недогрузки, если таковые имеются), являются тем же самым. Совокупное число превышенных и выборок недогрузки в буфере определяется info функция.

S = info(asyncBuff)
S = struct with fields:
     CumulativeOverrun: 0
    CumulativeUnderrun: 28

CumulativeUnderrun поле показывает количество демонстрационной недогрузки на канал. Недогрузка происходит, при попытке считать больше выборок, чем доступный.

Входные параметры

свернуть все

Асинхронный буфер, заданный как dsp.AsyncBuffer Системный объект.

Выходные аргументы

свернуть все

Совокупное переполнение и информация о недогрузке, возвращенная как структура. Поля для S описаны в таблице.

Поле Значение
CumulativeOverrun

Количество выборок превышается на канал начиная с последней возможности к reset. Количество превышенных выборок является количеством непрочитанных перезаписанных выборок.

CumulativeUnderrun

Количество демонстрационной недогрузки на канал начиная с последней возможности к reset. Недогрузка происходит, при попытке считать больше выборок, чем доступный.

CumulativeOverrun и CumulativeUnderrun свойства являются типом данных int32.

Смотрите также

Функции

Системные объекты

Введенный в R2017a