coder.HardwareImplementation

Специфичные для оборудования параметры конфигурации для генерации кода C/C++ из кода MATLAB

Описание

coder.HardwareImplementation объект содержит специфичные для оборудования параметры конфигурации что codegen использование для генерации статической библиотеки, динамически подключаемой библиотеки или исполняемой программы.

Использовать coder.HardwareImplementation объект, необходимо сопоставить его с объектом настройки (coder.CodeConfig возразите или coder.EmbeddedCodeConfig объект), что вы передаете codegen. Создать coder.HardwareImplementation объект и партнер это с объектом настройки, создайте объект настройки при помощи coder.config.

Доступ к coder.HardwareImplementation свойства одним из этих способов:

По умолчанию, coder.HardwareImplementation свойства задают характеристики хоста - компьютера MATLAB®. Чтобы задать различное устройство, измените ProdHWDeviceType свойство. Аппаратное устройство определяет значения других специфичных для устройства свойств и свойств, которые можно изменить.

Создание

Создать coder.HardwareImplementation объект, используйте coder.config создать объект настройки (coder.CodeConfig возразите или coder.EmbeddedCodeConfig объект) для генерации автономного кода. Когда coder.config создает объект настройки, он также создает coder.HardwareImplementation объект. coder.config устанавливает HardwareImplementation свойство настройки возражает против coder.HardwareImplementation объект.

Свойства

развернуть все

Описание coder.HardwareImplementation объект, заданный как вектор символов.

Имя объекта, заданное как вектор символов.

Эквивалентность производства и цели (тест) характеристики оборудования, заданные как true или false.

coder.HardwareImplementation объект имеет два набора аппаратных свойств — один для характеристик производственного оборудования и один для характеристик цели (тест) оборудование. По умолчанию, codegen использует свойства производственного оборудования. Как правило, вы оставляете ProdEqTarget установите на true и работайте только с производственными свойствами.

Установка ProdEqTarget к false расширенная функция, которая включает свойства целевого компьютера. Если вы изменяете ProdEqTarget к false, codegen использует свойства в целевом компьютере и генерирует код, чтобы эмулировать поведение производственного оборудования на целевом компьютере. Если вы устанавливаете ProdEqTarget к false для тестирования, прежде чем вы развернете сгенерированный код в производственное оборудование, устанавливают ProdEqTarget к true и регенерируйте код.

В начале процессора Embedded Coder® в цикле (PIL) выполнение программное обеспечение проверяет свойства аппаратной реализации со ссылкой на целевой компьютер, на котором запускается выполнение PIL. Если ProdEqTarget true, программное обеспечение проверяет производственные свойства (свойства, которые запускаются с Prod). Если ProdEqTarget false, программное обеспечение проверяет целевые свойства (свойства, которые запускаются с Target). См. программное обеспечение Code Verification Through в цикле и процессор в выполнении цикла (Embedded Coder).

Производственные аппаратные свойства

Длина в битах типа данных char C, что производственные аппаратные поддержки, заданные как целочисленное значение от 8 до 32. Значение должно быть кратным 8.

Это свойство доступно только для чтения.

Длина в битах C удваивает тип данных что производственные аппаратные поддержки.

Это свойство доступно только для чтения.

Длина в битах типа данных с плавающей точкой C, что производственные аппаратные поддержки.

Длина в битах int C тип данных, что производственные аппаратные поддержки, заданные как целочисленное значение от 8 до 32. Значение должно быть кратным 8.

Длина в битах long C тип данных, что производственные аппаратные поддержки, заданные как целочисленное значение от 32 до 128. Значение должно быть кратным 8.

Длина в битах long long C тип данных, что производственные аппаратные поддержки, заданные как целочисленное значение от 64 до 128. Значение должно быть кратным 8.

Используйте long long C тип данных, только если ваш компилятор C поддерживает long long.

Зависимость:

  • ProdLongLongMode включает использование ProdBitPerLongLong свойство.

Длина в битах данных об указателе, что производственные аппаратные поддержки, заданные как целочисленное значение от 8 до 64. Значение должно быть кратным 8.

Длина в битах ptrdiff_t данные, что производственные аппаратные поддержки, заданные как 8, 16, 24, 32, 40, 64, или 128. Значение должно быть больше или быть равно значению ProdBitPerInt.

Длина в битах short C тип данных, что производственные аппаратные поддержки, заданные как кратное 8, от 8 до 32.

Длина в битах size_t данные, что производственные аппаратные поддержки, заданные как 8, 16, 24, 32, 40, 64, или 128. Значение должно быть больше или быть равно значению ProdBitPerInt.

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

ЗначениеОписание
'LittleEndian'

Это значение является значением по умолчанию.

Младший значащий байт появляется первым в порядке байтов.

'BigEndian'Старший значащий байт появляется первым в порядке байтов.
'Unspecified'Код определяет порядок байтов оборудования. Это значение производит менее эффективный код.

Производитель и тип производственной аппаратной платы, заданной как вектор символов.

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

codegen не может сгенерировать код для ASICs или FPGAs. Если вы устанавливаете ProdHWDeviceType к 'ASIC/FPGA->ASIC/FPGA', ProdEqTarget становится false так, чтобы генератор кода использовал свойства в цели (тест) устройство. 'ASIC/FPGA->ASIC/FPGA' не допустимое значение для TargetHWDeviceType.

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

ЗначениеОписание
'Zero'

Это значение является значением по умолчанию.

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

'Floor'Если частное между двумя целыми числами, раундами компилятора к целому числу, которое ближе к отрицательной бесконечности.
'Undefined'Компилятор не делает вокруг к нулевой или отрицательной бесконечности, или компилятор, округляющий поведение, не определен.

Поддержка компилятора C долгого долгого типа данных, заданного как одно из значений в этой таблице.

ЗначениеОписание
true

Это значение является значением по умолчанию.

Генератор кода использует long long C тип данных в сгенерированном коде.

false

Генератор кода не использует long long C тип данных в сгенерированном коде.

Большинство компиляторов C99 поддерживает long long.

Советы:

  • ProdLongLongMode включен только если заданные производственные аппаратные поддержки long long C тип данных.

  • Если ваш компилятор не поддерживает long long C, не выбирайте этот параметр.

Зависимость:

  • ProdLongLongMode включает использование ProdBitPerLongLong свойство.

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

ЗначениеОписание
true

Это значение является значением по умолчанию.

Указывает, что компилятор C реализует сдвиг вправо целого числа со знаком как арифметический сдвиг вправо. Арифметический сдвиг вправо заполняет бит, освобожденный сдвигом вправо со значением старшего значащего бита. Старший значащий бит указывает на знак номера.

false

Указывает, что компилятор C не реализует сдвиг вправо целого числа со знаком как арифметический сдвиг вправо.

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

Свойства целевого компьютера

Длина в битах типа данных char C, который целевой компьютер поддерживает, заданный как целочисленное значение от 8 до 32. Значение должно быть кратным 8.

Это свойство доступно только для чтения.

Длина в битах C удваивает тип данных, который поддерживает целевой компьютер.

Это свойство доступно только для чтения.

Длина в битах типа данных с плавающей точкой C, который поддерживает целевой компьютер.

Длина в битах int C тип данных, который целевой компьютер поддерживает, заданный как целочисленное значение от 8 до 32. Значение должно быть кратным 8.

Длина в битах long C тип данных, который целевой компьютер поддерживает, заданный как целочисленное значение от 32 до 128. Значение должно быть кратным 8.

Длина в битах long long C тип данных, который целевой компьютер поддерживает, заданный как целочисленное значение от 64 до 128. Значение должно быть кратным 8.

Используйте long long C тип данных, только если ваш компилятор C поддерживает long long.

Зависимость:

  • TargetLongLongMode включает использование TargetBitPerLongLong свойство.

Длина в битах данных об указателе, которые целевой компьютер поддерживает, заданный как целочисленное значение от 8 до 64. Значение должно быть кратным 8.

Длина в битах ptrdiff_t данные, заданные как 8, 16, 24, 32, 40, 64, или 128. Значение должно быть больше или быть равно значению ProdBitPerInt.

Длина в битах short C тип данных, который целевой компьютер поддерживает, заданный как кратное 8, от 8 до 32.

Длина в битах size_t данные, которые целевой компьютер поддерживает, заданный как 8, 16, 24, 32, 40, 64, или 128. Значение должно быть больше или быть равно значению ProdBitPerInt.

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

ЗначениеОписание
'LittleEndian'

Это значение является значением по умолчанию.

Младший значащий байт появляется первым в порядке байтов.

'BigEndian'Старший значащий байт появляется первым в порядке байтов.
'Unspecified'Код определяет порядок байтов оборудования. Это значение производит менее эффективный код.

Производитель и тип цели (тест) аппаратная плата, заданная как вектор символов.

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

codegen не может сгенерировать код для ASICs или FPGAs. Если вы устанавливаете ProdHWDeviceType к 'ASIC/FPGA->ASIC/FPGA', ProdEqTarget становится false так, чтобы генератор кода использовал свойства в цели (тест) устройство. 'ASIC/FPGA->ASIC/FPGA' не допустимое значение для TargetHWDeviceType

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

ЗначениеОписание
'Zero'

Это значение является значением по умолчанию.

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

'Floor'Если частное между двумя целыми числами, раундами компилятора к целому числу, которое ближе к отрицательной бесконечности.
'Undefined'Компилятор не делает вокруг к нулевой или отрицательной бесконечности, или компилятор, округляющий поведение, не определен.

Поддержка компилятора C долгого долгого типа данных, заданного как одно из значений в этой таблице.

ЗначениеОписание
true

Это значение является значением по умолчанию.

Генератор кода использует long long C тип данных в сгенерированном коде.

false

Генератор кода не использует long long C тип данных в сгенерированном коде.

Большинство компиляторов C99 поддерживает long long.

Советы:

  • TargetLongLongMode включен только если заданные производственные аппаратные поддержки long long C тип данных.

  • Если ваш компилятор не поддерживает long long C, не выбирайте этот параметр.

Зависимость:

  • TargetLongLongMode включает использование TargetBitPerLongLong свойство.

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

ЗначениеОписание
true

Это значение является значением по умолчанию.

Указывает, что компилятор C реализует сдвиг вправо целого числа со знаком как арифметический сдвиг вправо. Арифметический сдвиг вправо заполняет бит, освобожденный сдвигом вправо со значением старшего значащего бита. Старший значащий бит указывает на знак номера.

false

Указывает, что компилятор C не реализует сдвиг вправо целого числа со знаком как арифметический сдвиг вправо.

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

Примеры

свернуть все

Создайте объект настройки для генерации автономного кода. Например, создайте объект настройки для генерации статической библиотеки.

cfg = coder.config('lib');

coder.config устанавливает HardwareImplementation свойство настройки возражает против coder.HardwareImplementation объект со значениями параметров по умолчанию для хоста - компьютера MATLAB.

Чтобы задать различное аппаратное устройство и настроить специфичные для устройства свойства, установите свойство ProdHWDeviceType coder.HardwareImplementation возразите против одного из доступных устройств. Например:

cfg.HardwareImplementation.ProdHWDeviceType = 'AMD->Athlon 64'

Использовать coder.HardwareImplementation объект для генерации кода, используйте -config опция, чтобы задать объект настройки генерации кода, сопоставленный с coder.HardwareImplementation объект.

codegen -config cfg myFunction

Откройте диалоговое окно для объекта настройки, который относится к coder.HardwareImplementation объект. Например:

cfg = coder.config('lib');
open('cfg');

В диалоговом окне кликните по вкладке Hardware.

Если вы установили пакет поддержки для своей аппаратной платы (требует Embedded Coder), выберите плату из опций в Hardware Board. В противном случае установите Hardware Board на None - select device below. Затем установите Device vendor и Device type.

Настройки аппаратной реализации имеют значения для заданного устройства. Чтобы видеть или изменить эти настройки, щелкните по ссылке Customize hardware implementation. Можно изменить установку, только если она включена для заданного устройства.

Диалоговое окно объекта настройки не поддержано в MATLAB Online™.

Советы

Установить ProdHWDeviceType свойство, выберите устройство из доступных параметров путем открытия диалогового окна для объекта настройки, который относится к coder.HardwareImplementation объект. Смотрите доступ к Свойствам Аппаратной реализации с Диалоговым окном.

Альтернативная функциональность

  • Можно непосредственно создать coder.HardwareImplementation объект и присвоение это к coder.CodeConfig возразите или coder.EmbeddedCodeConfig объект.

    hw_cfg = coder.HardwareImplementation;
    hw_cfg.ProdHWDeviceType = 'AMD->Athlon 64';
    cfg = coder.config('lib');
    cfg.HardwareImplementation = hw_cfg;

  • Если вы устанавливаете пакет поддержки для своего оборудования, можно настроить специфичные для оборудования параметры генерации кода путем установки Hardware свойство coder.EmbeddedCodeConfig возразите против coder.Hardware объект. Создать coder.Hardware объект, используйте coder.hardware. Например:

    cfg = coder.config('lib');
    hw = coder.hardware('Raspberry Pi');
    cfg.Hardware = hw;

Введенный в R2011a