hdlfilterserialinfo

Информация о последовательных разделах для архитектур фильтров

Описание

пример

hdlfilterserialinfo(filtSO,'InputDataType',nt) отображает исчерпывающую таблицу значений последовательных разбиений с соответствующими коэффициентами складывания и числами умножителей для заданного фильтра System object™ и типа входных данных, заданную как nt. Эта информация поможет вам определить оптимальную последовательную архитектуру для фильтра в сгенерированном HDL-коде.

пример

hdlfilterserialinfo(filtSO,'InputDataType',nt,'FoldingFactor',ff) отображает только те значения последовательных разделов, которые соответствуют заданному коэффициенту складывания.

пример

hdlfilterserialinfo(filtSO,'InputDataType',nt,'Multipliers',mult) отображает только те значения последовательных разделов, которые соответствуют указанному количеству умножителей.

hdlfilterserialinfo(filtSO,'InputDataType',nt,'SerialPartition',[p1 ... pN]) отображает коэффициент складывания и количество умножителей, соответствующих вектору последовательного разбиения.

hdlfilterserialinfo(filtObj) отображает информацию о последовательном разделе для заданного dfilt объект фильтра.

hdlfilterserialinfo(filtObj,'FoldingFactor',ff) отображает только те значения последовательных разделов, которые соответствуют заданному коэффициенту складывания.

hdlfilterserialinfo(filtObj,'Multipliers',mult) отображает только те значения последовательных разделов, которые соответствуют указанному количеству умножителей.

hdlfilterserialinfo(filtObj,'SerialPartition',[p1 ... pN]) отображает коэффициент складывания и количество умножителей, соответствующих вектору последовательного разбиения.

пример

[sp,fold,nm] = hdlfilterserialinfo(___) захватывает значения последовательных разбиений с соответствующими ими коэффициентами складывания и числами умножителей для любой комбинации входных аргументов в предыдущих синтаксисах.

Примеры

свернуть все

Чтобы отобразить допустимые последовательные разделы, передайте фильтр, без других аргументов, в hdlfilterserialinfo.

filt = design(fdesign.lowpass('N,Fc',8,.4),'SystemObject',true);
hdlfilterserialinfo(filt,'InputDataType',numerictype(1,12,10))
   | Total Coefficients | Zeros | Effective |
   ------------------------------------------
   |          9         |   0   |     9     |

Effective filter length for SerialPartition value is 9.

  Table of 'SerialPartition' values with corresponding values of 
  folding factor and number of multipliers for the given filter.

   | Folding Factor | Multipliers |   SerialPartition   |
   ------------------------------------------------------
   |        1       |      9      |[1 1 1 1 1 1 1 1 1]  |
   |        2       |      5      |[2 2 2 2 1]          |
   |        3       |      3      |[3 3 3]              |
   |        4       |      3      |[4 4 1]              |
   |        5       |      2      |[5 4]                |
   |        6       |      2      |[6 3]                |
   |        7       |      2      |[7 2]                |
   |        8       |      2      |[8 1]                |
   |        9       |      1      |[9]                  |

Спроектируйте фильтр и передайте его в hdlfilterserialinfo. Запросите параметры последовательного разбиения для проекта, которая использует три умножителя.

filt = design(fdesign.lowpass('N,Fc',8,.4),'SystemObject',true);
hdlfilterserialinfo(filt,'InputDataType',numerictype(1,12,10),'Multipliers',3)
Serial Partition: [3 3 3], Folding Factor:    3, Multipliers:    3

Спроектируйте фильтр и передайте его в hdlfilterserialinfo. Запросите параметры последовательного разбиения для проекта, которая использует коэффициент складывания четыре.

filt = design(fdesign.lowpass('N,Fc',8,.4),'SystemObject',true);
hdlfilterserialinfo(filt,'InputDataType',numerictype(1,12,10),'FoldingFactor',4)
Serial Partition: [4 4 1], Folding Factor:    4, Multipliers:    3

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

filt = design(fdesign.lowpass('N,Fc',8,.4),'SystemObject',true);
[sp,ff,nm] = hdlfilterserialinfo(filt,'InputDataType',numerictype(1,12,10))
sp = 9x1 cell
    {'[1 1 1 1 1 1 1 1 1]'}
    {'[2 2 2 2 1]'        }
    {'[3 3 3]'            }
    {'[4 4 1]'            }
    {'[5 4]'              }
    {'[6 3]'              }
    {'[7 2]'              }
    {'[8 1]'              }
    {'[9]'                }

ff = 9x1 cell
    {'1'}
    {'2'}
    {'3'}
    {'4'}
    {'5'}
    {'6'}
    {'7'}
    {'8'}
    {'9'}

nm = 5x1 cell
    {'1'}
    {'2'}
    {'3'}
    {'5'}
    {'9'}

Можно также использовать этот синтаксис при задании количества умножителей или коэффициента складывания.

[sp_ff4,ff4,nm_ff4] = hdlfilterserialinfo(filt,'InputDataType',numerictype(1,12,10), ...
    'FoldingFactor',4)
sp_ff4 = 1×3

     4     4     1

ff4 = 4
nm_ff4 = 3

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

свернуть все

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

Для получения дополнительной информации смотрите Сравнение скорости и площади.

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

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

Аппаратный коэффициент складывания, заданный как целое число, больше 1 или Inf. Учитывая коэффициент складывания, кодер вычисляет последовательный раздел и количество умножителей. Если коэффициент складывания Inf, кодер использует максимальный коэффициент складывания.

Желаемое количество умножителей, заданное как целое число, больше 1 или Inf. Учитывая количество умножителей, кодер вычисляет последовательный раздел и коэффициент складывания. Если количество умножителей infкодер использует максимальное количество умножителей.

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

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

свернуть все

Доступные опции последовательного разбиения, возвращенные как массив ячеек векторов.

Доступные значения коэффициента складывания, возвращенные как массив ячеек.

Доступные значения множителя, возвращенные как массив ячеек.

Введенный в R2010b