В этом примере показано, как использовать Fixed-Point Tool, чтобы предложить размеры слова для модели, которая реализует простой алгоритм скользящего среднего значения. Модель уже использует типы данных с фиксированной точкой, но они не оптимальны. Симулируйте модель и предложите типы данных на основе данных моделирования. Чтобы видеть, как целевой компьютер влияет на предложения по размеру слова, сначала установил целевой компьютер на встраиваемый процессор и предлагает размеры слова. Затем установите целевой компьютер на FPGA и предложите размеры слова.
В диалоговом окне Configuration Parameters, на панели Аппаратной реализации, можно задать поставщика Устройства и Тип устройства целевого компьютера. Fixed-Point Tool использует эту информацию, когда это предлагает типы данных с фиксированной точкой для объектов в вашей модели. Например, если вы зададите целевой компьютер, чтобы быть встраиваемым процессором, инструмент предложит стандартные размеры слова, подходящие для цели.
Откройте ex_moving_average
пример.
open_system('ex_moving_average')
Проверьте, что целевой компьютер является встраиваемым процессором. В диалоговом окне Configuration Parameters, на панели Аппаратной реализации, устанавливает поставщика Устройства на Custom Processor
. Закройте диалоговое окно Configuration Parameters.
Некоторые блоки в модели уже задали типы данных с фиксированной точкой.
Блок | Тип данных, заданный на блоке |
---|---|
Dbl2Fixpt | fixdt(1,16,10) |
Gain1 | fixdt(1,32,17) |
Gain2 | fixdt(1,32,17) |
Gain3 | fixdt(1,32,17) |
Gain4 | fixdt(1,16,1) |
Add1 | fixdt(1,32,17) |
Add2 | fixdt(1,32,17) |
Add3 | fixdt(1,32,17) |
Используйте итеративный рабочий процесс преобразования фиксированной точки в Fixed-Point Tool, чтобы видеть, как целевой компьютер влияет на предложения по размеру слова.
В модели, в галерее Apps, выбирают Fixed-Point Tool.
В Fixed-Point Tool нажмите New и выберите Iterative Fixed-Point Conversion
.
В Fixed-Point Tool, под System Under Design (SUD), выбирают ex_moving_average
как система, чтобы преобразовать.
Под Range Collection Mode выберите Simulation ranges как метод набора области значений. Это конфигурирует модель, чтобы собраться, области значений с помощью идеализировали типы данных с плавающей точкой.
В панели инструментов нажмите Prepare, чтобы подготовить систему к преобразованию.
Расширьте стрелу кнопки Collect Ranges и выберите Double precision
. Нажмите Collect Ranges, чтобы запустить симуляцию.
Fixed-Point Tool хранит данные моделирования в запуске, названном BaselineRun
. Можно исследовать информацию об области значений блоков в модели в электронной таблице.
В разделе Convert панели инструментов можно сконфигурировать настройки предложения по типу данных для блоков. Кликните по стреле кнопки Settings. В диалоговом окне Настроек, рядом с Propose, выбирают Word Length
.
Нажмите Propose Data Types.
Fixed-Point Tool использует доступные данные об области значений, чтобы вычислить предложения по типу данных согласно следующим правилам:
Минимальные и максимальные значения проекта более приоритетны по сравнению с областью значений симуляции.
Инструмент наблюдает область значений симуляции, потому что вы выбрали Simulation ranges как метод сбора области значений.
Параметр Safety margin for simulation min/max (%) указывает диапазон, который отличается от заданного областью значений симуляции. В этом примере используется запас прочности по умолчанию.
Fixed-Point Tool анализирует типы данных всех блоков фиксированной точки, параметр Lock output data type setting against changes by the fixed-point tools которых очищен.
Для каждого объекта в модели Fixed-Point Tool предлагает минимальный размер слова, который избегает переполнения для собранной информации области значений. Поскольку целевой компьютер является 16-битным встраиваемым процессором, Fixed-Point Tool предлагает размеры слова на основе количества битов, используемых процессором для каждого типа данных. Для получения дополнительной информации смотрите Как информация о Целевом компьютере Использования Fixed-Point Tool.
Инструмент предлагает меньшие размеры слова для Gain4
и Gain4:Gain
. Инструмент вычислил, что их идеальный размер слова меньше чем или равен символьной длине в битах для встраиваемого процессора (8
), таким образом, инструмент окружает размер слова к 8
.
Чтобы видеть, как целевой компьютер влияет на предложение по размеру слова, измените целевой компьютер в FPGA/ASIC.
В диалоговом окне Configuration Parameters, на панели Hardware Implementation, устанавливает Device vendor на ASIC/FPGA
.
Нажмите Apply и закройте диалоговое окно Configuration Parameters.
В Fixed-Point Tool нажмите Propose data types снова.
Поскольку целевой компьютер является FPGA, нет никаких ограничений на размеры слова, которые предлагает Fixed-Point Tool. Размер слова для Gain4:Gain
теперь 2
.