Если вы предоставляете испытательный стенд для своего алгоритма MATLAB®, вы не должны задавать входные параметры первичной функции вручную. Программное обеспечение HDL Coder™ использует испытательный стенд, чтобы вывести типы данных.
HDL Coder должен определить свойства всех переменных в файлах MATLAB во время компиляции. Чтобы вывести переменные свойства в файлах MATLAB, HDL Coder должен смочь идентифицировать свойства входных параметров к первичной функции, также известной как функцию или точки входа верхнего уровня. Поэтому, если ваша первичная функция имеет входные параметры, необходимо задать свойства этих входных параметров к HDL Coder. Если ваша первичная функция не имеет никаких входных параметров, HDL Coder может скомпилировать ваш файл MATLAB без модификации. Вы не должны задавать свойства входных параметров к локальным функциям или внешним функциям, вызванным первичной функцией.
Если вы используете тильду (~) символ, чтобы задать неиспользованные входные параметры функции в проекте HDL Coder, и вы хотите, чтобы другой тип появился в сгенерированном коде, задал тип. В противном случае входное значение по умолчанию к действительному, скалярному удваивается.
Если ваша первичная функция имеет входные параметры, необходимо задать следующие свойства для каждого входа.
Для | Задайте свойства | ||||
---|---|---|---|---|---|
Класс | Размер | Сложность | numerictype | fimath | |
Входные параметры фиксированной точки |
|
|
|
|
|
Другие входные параметры |
|
|
|
Следующие типы данных не поддерживаются для входных параметров первичной функции, несмотря на то, что можно использовать их в первичной функции:
структура
матрица
Данные переменного размера не поддерживаются в испытательном стенде или первичной функции.
HDL Coder присваивает следующие значения по умолчанию для свойств входных параметров первичной функции.
Свойство | Значение по умолчанию |
---|---|
класс | double |
размер | scalar |
сложность | real |
numerictype | Никакое значение по умолчанию |
fimath | hdlfimath |
Следующая таблица представляет имена классов, поддержанные HDL Coder.
ClassName | Описание |
---|---|
logical | Логический массив истинных и ложных значений |
char | Массив символов |
int8 | 8-битный массив целого числа со знаком |
uint8 | 8-битный массив беззнаковых целых чисел |
int16 | 16-битный массив целого числа со знаком |
uint16 | 16-битный массив беззнаковых целых чисел |
int32 | 32-битный массив целого числа со знаком |
uint32 | 32-битный массив беззнаковых целых чисел |
single | Массив номера или фиксированной точки с плавающей точкой с одинарной точностью |
double | Массив номера или фиксированной точки с плавающей точкой с двойной точностью |
embedded.fi | Массив номера фиксированной точки |
При определении свойств первичных входных параметров следуйте этим правилам:
Необходимо задать класс всех первичных входных параметров. Если вы не задаете размер или сложность первичных входных параметров, они принимают значение по умолчанию к действительным скалярам.
Для каждого входа первичной функции, класс которого является фиксированной точкой (fi
), необходимо задать вход numerictype
и fimath
свойства.
Метод | Преимущества | Недостатки |
---|---|---|
Задайте входные свойства на примере в командной строке Примечание Если вы задаете входные свойства программно в файле MATLAB, вы не можете использовать этот метод |
|
|
|
|