Ошибки распространения типа данных после применения предложенных типов данных

При определенных обстоятельствах Fixed-Point Tool может предложить тип данных, который не совместим с моделью. Следующая тема обрисовывает в общих чертах настройки модели, которые могут вызвать эту проблему, и как можно решить вопрос.

Совет

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

Группы типа разделяемых данных

Представление осуществляло обмен данными группы типа

Организация Fixed-Point Tool заканчивается в группы, которые должны совместно использовать совпадающий тип данных, может помочь в процессе отладки.

Чтобы просмотреть группу типа данных, которой принадлежит результат, добавьте столбец DTGroup в электронную таблицу. Нажмите добавить кнопку столбца. Выберите DTGroup в меню.

Кликните по заголовку столбца DTGroup, чтобы отсортировать результаты по этому столбцу.

Заблокированный тип данных в разделяемой группе

Когда объект заблокирован против изменений Fixed-Point Tool, Fixed-Point Tool не предлагает нового типа данных для объекта. Если один из результатов в группе результатов, которые должны совместно использовать совпадающий тип данных, заблокирован, Fixed-Point Tool предлагает типы данных для всех других объектов в группе за исключением заблокированного объекта. Если тип данных, предложенный для группы, не совместим с заблокированным типом данных, ошибка распространения заканчивается.

Чтобы избежать несовместимых предложений по типу данных, выполните одно из следующих.

  • Заблокируйте все объекты в группе против изменений Fixed-Point Tool.

  • Разблокируйте объект в группе с заблокированным типом данных.

Столбец ProposedDT Fixed-Point Tool отображает locked для всех результатов, которые заблокированы против изменений Fixed-Point Tool.

Часть Shared Data Type Group Вне Осциллографа

Когда результаты, которые находятся в группа типа разделяемых данных, совместно используют тип данных снаружи осциллографа системы в соответствии с проектом, Fixed-Point Tool не может предложить тип данных.

Чтобы получить предложение по типу данных, выполните одно из следующих.

  • Гарантируйте, что объекты в системе в соответствии с проектом не совместно используют свой тип выходных данных с объектом вне выбранной системы. Один способ гарантировать, что объекты в вашей системе в соответствии с проектом не совместно используют свой тип данных с объектами вне системы, путем вставки блоков Преобразования типа данных на системных контурах.

  • Гарантируйте, что все объекты, которые должны совместно использовать тип данных, в рамках системы в соответствии с проектом.

Блоки модели - ссылки

Системы, которые осуществляют обмен данными типы через контуры модели - ссылки, могут получить ошибки распространения типа данных.

Чтобы избежать ошибок распространения типа данных, рассмотрите следующее.

  • Не используйте тот же объект сигнала через контуры модели - ссылки.

  • Вставьте блоки Преобразования типа данных на контурах модели - ссылки.

Блокируйте ограничения

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

  • Определенные блоки в Communications Toolbox™, DSP System Toolbox™ и библиотеках Computer Vision Toolbox™ имеют ограничения типа данных. Fixed-Point Tool не знает об этом требовании и не использует его для автоматического ввода данных. Поэтому инструмент может предложить тип данных, который противоречив с требованиями блока. В этом случае вручную отредактируйте предложенный тип данных, таким образом, что он выполняет ограничения блока.

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

Внутренние правила блока

Суммируйте блоки

Блоки суммы имеют обоих тип выходных данных, а также тип данных аккумулятора. При определенных обстоятельствах, когда тип данных аккумулятора установлен в Inherit: Inherit via internal rule, может закончиться ошибка распространения типа данных.

Чтобы получить совместимое предложение по типу данных, выполните одно из следующих.

  • Измените тип данных аккумулятора на что-то другое, чем Inherit: Inherit via internal rule и повторно предложите типы данных для вашей модели, чтобы получить совместимые предложения по типу данных.

  • Заблокируйте блок против изменений Fixed-Point Tool.

Похожие темы