Реализуйте волну косинуса фиксированной точки, оптимизированную для генерации HDL-кода
HDL Coder™ / Интерполяционные таблицы
Блок Cosine HDL Optimized реализует волну косинуса фиксированной точки при помощи метода интерполяционной таблицы, который использует симметрию волны четвертью.
Для самой эффективной реализации HDL сконфигурируйте блок с точной степенью двойки как число элементов. В диалоговом окне Block Parameters, для Number of data points, задают целое число, которое является точной степенью двойки. Таким образом, задайте точки данных интерполяционной таблицы, чтобы быть (2^n)
, где n является целым числом. По умолчанию Number of data points равняется 64.
Когда вы задаете степень двойки для Number of data points, интерполяционные таблицы предшествуют регистру без сброса после генерации HDL-кода. Комбинация блока интерполяционной таблицы и регистра без сброса сопоставляет эффективно с RAM на целевом устройстве.
В зависимости от вашего выбора параметра Output formula блоки могут вывести эти функции входного сигнала:
sin (2πu)
because(2πu)
exp (i 2πu)
sin (2πu) и because(2πu),
Используйте параметр Table data type, чтобы задать размер слова типа выходных данных фиксированной точки. Дробная продолжительность вывода является выходным размером слова минус 2.
Блок Cosine HDL Optimized принимает сигналы этих типов данных:
Плавающая точка
Встроенное целое число
Фиксированная точка
Булевская переменная
Вывод блока является типом данных с фиксированной точкой.
Для получения дополнительной информации смотрите Типы данных, Поддержанные Simulink (Simulink) в документации Simulink®.
Выберите сигнал (сигналы) вывести.
Задайте количество точек данных, чтобы получить из интерполяционной таблицы. Реализация является самой эффективной, когда вы задаете точки данных интерполяционной таблицы, чтобы быть (2^n)
, где n является целым числом.
Задайте тип данных table. Можно задать выражение, которое оценивает к типу данных, например, fixdt(1,16,0)
.
Нажмите кнопку Show data type assistant, чтобы отобразить Data Type Assistant, который помогает вам установить тип данных table.
Выберите режим спецификации типа данных. Если вы выбираете Expression
, введите выражение, которое оценивает к типу данных, например, fixdt(1,16,0)
.
Если вы выбираете Fixed point
, можно использовать опции в Data Type Assistant, чтобы задать тип данных с фиксированной точкой. В режиме Fixed point
можно выбрать масштабирование двоичной точки и задать размер слова со знаком, дробную длину и установку переопределения типа данных.
Типы данных | Дважды | один | булевская переменная | основывают целое число | фиксированная точка |
'SampleTime' | Наследованный от управления блоком |
Прямое сквозное соединение | Да |
Многомерные сигналы | Нет |
Сигналы переменного размера | Нет |
Обнаружение пересечения нулем | Нет |
Генерация кода | Да |
HDL-код реализует блок Cosine HDL Optimized при помощи интерполяционной таблицы волны четвертью, которую вы задаете в параметрах блока Simulink.
Количество регистров, чтобы поместить при выходных параметрах путем перемещения существующих задержек в рамках проекта. Распределенная конвейеризация не перераспределяет эти регистры. Значение по умолчанию 0. См. также ConstrainedOutputPipeline.
Количество входных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. Значение по умолчанию 0. См. также InputPipeline.
Количество выходных настроек канала связи, чтобы вставить в сгенерированный код. Распределенная конвейеризация и ограниченная выходная конвейеризация могут переместить эти регистры. Значение по умолчанию 0. См. также OutputPipeline.
Оптимизированный HDL синуса | Синус, косинус | Тригонометрическая функция