generatetbstimulus

Сгенерируйте стимул испытательного стенда HDL

Описание

пример

dataIn = generatetbstimulus(filtSO,'InputDataType',nt) генерирует стимул испытательного стенда для заданного фильтра System object™ и типа входных данных, заданный как nt.

Кодер выбирает набор стимулов по умолчанию, в зависимости от вашего типа фильтра. Набор по умолчанию {'impulse','step','ramp','chirp','noise'}. Для БИХ, 'impulse' и 'step' исключены.

dataIn = generatetbstimulus(filterObj) генерирует стимул испытательного стенда для заданного dfilt объект фильтра.

dataIn = generatetbstimulus(___,Name,Value) использует необязательные аргументы имя-значение, в дополнение к любому из входных параметров в предыдущих синтаксисах. Используйте эти опции, чтобы изменить набор стимулов по умолчанию, используемый кодером.

Примеры

свернуть все

Разработайте lowpass фильтр и создайте фильтр прямой формы конечной импульсной характеристики System object™, fir_lp .

filtdes = fdesign.lowpass('N,Fc,Ap,Ast',30,0.4,0.05,0.03,'linear');
fir_lp = design(filtdes,'FilterStructure','dffir','SystemObject',true);

Сгенерируйте входные данные испытательного стенда. Вызов generatetbstimulus генерирует ramp и щебет раздражители и возвращает результаты. Задайте тип входных данных с фиксированной точкой как numerictype объект.

rc_stim = generatetbstimulus(fir_lp,'InputDataType',numerictype(1,12,10),'TestBenchStimulus',{'ramp','chirp'});

Примените квантованный фильтр к данным и постройте график результатов. Вызов step функция вычисляет фильтрованную реакцию на вход стимул. Входные данные для функции step должны быть вектором-столбцом, чтобы указывать выборки с течением времени. Вектор-строка будет представлять независимые каналы данных.

plot(step(fir_lp,rc_stim'))

Figure contains an axes. The axes contains an object of type line.

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

свернуть все

Фильтр, для которого можно сгенерировать стимул испытательного стенда, заданный как Системный объект фильтра. Чтобы создать Системный объект фильтра, используйте design или см. страницу с описанием объекта. Можно использовать следующие системные объекты из DSP System Toolbox™:

Входные данные, заданный как a numerictype объект. Этот аргумент применяется только, когда входной фильтр является системным объектом. Функции numerictype(s,w,f), где s равен 1 для со знаком и 0 для без знака, w - размер слова в битах и f - количество дробных бит.

Фильтр, для которого нужно сгенерировать стимул испытательного стенда, указанный как dfilt объект. Вы можете создать этот объект при помощи design функция. Обзор поддерживаемых функций фильтра см. в разделе Опции строения фильтра.

Аргументы в виде пар имя-значение

Задайте необязательные разделенные разделенными запятой парами Name,Value аргументы. Name - имя аргумента и Value - соответствующее значение. Name должны находиться внутри кавычек. Можно задать несколько аргументов в виде пар имен и значений в любом порядке Name1,Value1,...,NameN,ValueN.

Пример: 'TestBenchStimulus',{'ramp','impulse'}

Входные стимулы, чтобы сгенерированный испытательный стенд применил к фильтру, заданные как 'impulse', 'step', 'ramp', 'chirp', или 'noise'. Можно задать комбинации этих стимулов в массиве ячеек из векторов символов или строковых массивов в любом порядке.

Можно также задать пользовательский входной вектор при помощи TestBenchUserStimulus свойство. Когда TestBenchUserStimulus является непустым вектором, он принимает приоритет над TestBenchStimulus.

Пример: 'TestBenchStimulus',{'ramp','impulse','noise'}

Пользовательский вектор входных данных, которые сгенерированный испытательный стенд применяет к фильтру, заданный как пустой вектор или вызов функции, который возвращает вектор. Когда этот аргумент установлен в пустой вектор, испытательный стенд использует TestBenchStimulus свойство для генерации входных данных.

Для примера этот вызов функции генерирует квадратную волну с частотой дискретизации 8 битом в секунду (Fs/8).

repmat([1 1 1 1 0 0 0 0],1,10)
Задайте этот стимул при вызове generatetbstimulus.
generatetbstimulus(filt,'InputDataType',numerictype(1,16,15), ...
    'TestBenchUserStimulus',repmat([1 1 1 1 0 0 0 0],1,10))

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

свернуть все

Испытательный стенд стимул для фильтра, возвращенный как single, double, или fi массив. Если вход фильтр является dfilt filter object, результаты квантуются с помощью арифметического свойства объект. Если вход фильтр является Системный объект фильтра, стимул квантуется nt.

См. также

|

Представлено до R2006a