Генератор кода реализует допущения, которые зависят, например, от настроек аппаратной реализации вашей модели. Важно проверить, что допущения действительны для вашего целевого компьютера. Используйте buildStandaloneCoderAssumptions
функция для создания приложения, которое выполняет проверку предположений на вашем целевом компьютере.
Когда вы конфигурируете модель, попробуйте задать аппаратную реализацию и создать настройки строения, соответствующие вашему целевому компьютеру. Затем, чтобы проверка кода допущения генератора для вашего целевого компьютера, используйте этот рабочий процесс:
С GenerateReport
установлено на 'on'
, создайте (Ctrl+B) свою модель.
Чтобы просмотреть список допущений генератора кода, которые можно проверить, откройте отчет о генерации кода и щелкните Coder Assumptions ссылку.
Для получения дополнительной информации смотрите Список допущений кодера.
Выполняйте buildStandaloneCoderAssumptions
, который использует сгенерированный код в папке сборки, чтобы создать приложение, которое запускает проверку допущений генерации кода.
Загрузите приложение на целевой компьютер или целевое окружение, а затем запустите приложение.
Во время работы приложения используйте инструмент отладки, чтобы просмотреть результаты проверки, которые находятся в структуре данных.
Если целевым компьютером является, например, ваша Windows® компьютер разработчика, вы можете использовать Microsoft® Визуальная студия® чтобы запустить и отлажить приложение:
Чтобы открыть модель, в Командном окне введите rtwdemo_sil_topmodel
.
В диалоговом окне Model Параметры Конфигурации, на панели Hardware Implementation, задайте настройки, соответствующие целевому компьютеру. Для примера на 64-разрядном компьютере Windows задайте следующие параметры:
Device vendor – Intel
Device type – x86-64 (Windows 64)
Очистите Enable portable word sizes параметра конфигурации модели.
Создайте модель (Ctrl+B).
Чтобы просмотреть список допущений генератора кода, откройте отчет о генерации кода и щелкните Coder Assumptions ссылку.
Из Командного окна, в рабочей папке, запустите:
buildStandaloneCoderAssumptions('rtwdemo_sil_topmodel_ert_rtw')
coderassumptions\standalone
подпапка, содержащая целевое приложение, rtwdemo_sil_topmodel_ca
.Откройте Microsoft Visual Studio и выберите File > Open > Project/Solution
Используя диалоговое окно «Открыть проект», перейдите к coderassumptions\standalone
и выберите подпапку rtwdemo_sil_topmodel_ca
. Затем нажмите Open.
Выберите File > Open > File. Используя диалоговое окно «Открыть файл», выберите coderassumptions\standalone\rtwdemo_sil_topmodel_ca.c
На return
оператор, вставьте точку пропуска.
Выберите Debug > Start Debugging.
Чтобы проверить допущения генератора кода, используйте окно Watch, чтобы просмотреть Results
структура данных:
В rtwdemo_sil_topmodel_ca.c
код, щелкните правой кнопкой мыши Results
.
В контекстном меню выберите Add Watch.
Переменные в структуре данных содержат:
Проверяйте результаты (TestResults
)
Целевые аппаратные истины (ActualValues
)
Допущения генератора кода (ExpectedValues
)
Для примера, если предположение генератора кода для bitsPerChar
точно, вы видите CA_PASS
значение в status
переменная.
Раздел содержимого отчета о генерации кода имеет ссылку на страницу Coder Assumptions. На странице представлен список:
Допущения генерации кода, которые можно проверить
Ожидаемые результаты для проверок допущений
Эта таблица описывает метки, которые вы видите в списке.
Категория | Метка | Предположение, что вы можете проверить |
---|---|---|
Настройка языка C/C + + для целевого компьютера или компьютера разработчика |
| Количество бит в |
| Количество бит в | |
| Количество бит в | |
| Количество бит в | |
| Размер | |
| Размер | |
| Количество бит в | |
| Количество бит в | |
| Количество бит в | |
| Упорядоченное расположение байтов ( | |
| Поведение битов знака ( | |
| Округление для целого деления ( | |
Стандарт языка C/C + + |
| Нулевая инициализация памяти ( |
Числа с плавающей запятой |
| Обработка субнормальных чисел в нуле |
| Денормалы - это субнормальная обработка числа с нулем |
buildStandaloneCoderAssumptions