Функции, поддерживаемые для генерации HDL-кода — категориальный список

Можно сгенерировать эффективный HDL-код для подмножества встроенных функций MATLAB® и функций тулбокса, которые вы вызываете из кода MATLAB. Эти функции перечислены категорией MATLAB или категорией тулбокса в следующих таблицах.

Для алфавитного списка поддерживаемых функций смотрите Функции, Поддерживаемые для генерации HDL-кода — Алфавитный список.

Арифметические операции в MATLAB

ИмяКомментарии и ограничения
ctranspose(A)
mpower(A,B)A и B должен быть скаляр и B должно быть целое число.
mtimes(A,B)
plus(A,B)Никакой A ни B может быть тип данных logical.
power(A,B)A и B должен быть скаляр и B должно быть целое число.
times(A,B)Никакой A ни B может быть тип данных logical.
transpose(A)

Битовые операции в MATLAB

ИмяКомментарии и ограничения
bitand
bitcmp
bitget
bitor
bitset
bitshift

Для эффективной генерации HDL-кода используйте функции Fixed-Point Designer™ bitsll, bitsrl, или bitsra вместо bitshift.

bitxor

Комплексные числа в MATLAB

ИмяКомментарии и ограничения
complex
imag
real

Поток управления в MATLAB

ИмяКомментарии и ограничения
for

Не используйте for циклы без статических границ.

Не используйте & и | операторы в условиях for оператор. Вместо этого используйте && и || операторы.

HDL Coder™ не поддерживает нескалярные выражения в условиях for операторы. Вместо этого используйте all или any функции, чтобы свернуть логические векторы в скаляры.

if

Не используйте & и | операторы в условиях if оператор. Вместо этого используйте && и || операторы.

HDL Coder не поддерживает нескалярные выражения в условиях if операторы. Вместо этого используйте all или any функции, чтобы свернуть логические векторы в скаляры.

switch

Условное выражение в switch или case оператор должен использовать только:

  • uint8uint16uint32int8int16, или int32 типы данных

  • Скалярные данные

Если несколько case операторы делают присвоения на ту же переменную, числовой тип и fimath спецификацией для той переменной должно быть то же самое в каждом case оператор.

Логические операторы в MATLAB

ИмяКомментарии и ограничения
and
not
or
xor

Массивы в MATLAB

ИмяКомментарии и ограничения
ones

Размерности должны быть действительными, неотрицательными целыми числами.

zeros

Размерности должны быть действительными, неотрицательными целыми числами.

Операторы отношения в MATLAB

ИмяКомментарии и ограничения
eq
ge
gt
le
lt
ne

Fixed-Point Designer

Поддержка генерации HDL-кода функций библиотеки времени выполнения фиксированной точки от Fixed-Point Designer получена в итоге в следующей таблице. Смотрите Ограничения Функции Фиксированной точки для общих ограничений функций библиотеки времени выполнения фиксированной точки для генерации кода.

ФункцияКомментарии и ограничения

abs

Дважды и сложные типы данных, не поддержанные.

add

bitand

bitandreduce

bitcmp

bitconcat

bitget

bitor

bitorreduce

bitreplicate

bitrol

bitror

bitset

bitshift

bitsliceget

bitsll

bitsra

bitsrl

bitxor

bitxorreduce

ceil

complex

conj

convergent

ctranspose

divide

  • Для генерации HDL-кода делитель должен быть константой и степенью двойки.

  • Non-fi входные параметры должны быть постоянными; то есть, их значения должны быть известны во время компиляции так, чтобы они могли быть брошены к fi объекты.

  • Комплексные и мнимые делители не поддержаны.

  • Генерация кода в MATLAB не поддерживает синтаксис T.divide(a,b).

eps

  • Поддерживаемый для скалярной фиксированной точки сигнализирует только.

  • Поддерживаемый для скаляра, вектора, и матрицы, fi один и fi сигналы double.

eq

fi

fimath

fix

floor

ge

getlsb

getmsb

gt

horzcat

int8 int16 int32

isequal

isfi

isfimath

isfimathlocal

isnumerictype

issigned

le

lowerbound

lsb

lt

max

min

minus

mpower

Оба входных параметров должны быть скаляром, и входом экспоненты, k, должно быть постоянное целое число.

mtimes

nearest

numerictype

ones

Размерности должны быть действительными, неотрицательными целыми числами.

plus

Входные параметры не могут быть типом данных logical.

power

Оба входных параметров должны быть скаляром, и входом экспоненты, k, должно быть постоянное целое число.

range

realmax

realmin

reinterpretcast

rescale

round

sfi

sign

sqrt

sub

subsasgn

Поддерживаемые типы данных для генерации HDL-кода перечислены в Поддерживаемых типах данных MATLAB, Операторах и Операторах управления.

subsref

Поддерживаемые типы данных для генерации HDL-кода перечислены в Поддерживаемых типах данных MATLAB, Операторах и Операторах управления.

sum

times

Входные параметры не могут быть типом данных logical.

ufi

uint8 uint16 uint32

uminus

upperbound

vertcat