Оглавление:

Кордический алгоритм с использованием VHDL: 4 шага
Кордический алгоритм с использованием VHDL: 4 шага

Видео: Кордический алгоритм с использованием VHDL: 4 шага

Видео: Кордический алгоритм с использованием VHDL: 4 шага
Видео: Нервная система: общая характеристика. Вспомогательные системы мозга 2024, Июль
Anonim

Автор AmCoder https://www.linkedin.com/in/mituFollow Еще от автора:

Проектирование синхронного FIFO, LIFO / стека в Verilog
Проектирование синхронного FIFO, LIFO / стека в Verilog
Проектирование синхронного FIFO, LIFO / стека в Verilog
Проектирование синхронного FIFO, LIFO / стека в Verilog
Видеоинтерфейс с FPGA с использованием VGA
Видеоинтерфейс с FPGA с использованием VGA
Видеоинтерфейс с FPGA с использованием VGA
Видеоинтерфейс с FPGA с использованием VGA
Синхронизаторы, пересечение тактовых доменов, тактовые генераторы, детекторы фронтов и многое другое - основные схемы настройки
Синхронизаторы, пересечение тактовых доменов, тактовые генераторы, детекторы фронтов и многое другое - основные схемы настройки
Синхронизаторы, пересечение тактовых доменов, тактовые генераторы, детекторы фронтов и многое другое - основные схемы настройки
Синхронизаторы, пересечение тактовых доменов, тактовые генераторы, детекторы фронтов и многое другое - основные схемы настройки

О себе: Миту Радж - просто хобби и ученик - дизайнер микросхем - разработчик программного обеспечения - энтузиаст физики и математики Подробнее об AmCoder »

## Это наиболее посещаемая и популярная ссылка в Google для VHDL-реализации CORDIC ALGORITHM для генерации синусоидальной и косинусоидальной волны. ## В настоящее время существует множество эффективных аппаратных алгоритмов, но они малоизвестны из-за преобладания программных систем над много лет. CORDIC - это такой алгоритм, который представляет собой не что иное, как набор логики сдвига и добавления, используемый для вычисления широкого спектра функций, включая определенные тригонометрические, гиперболические, линейные и логарифмические функции. Это алгоритм, используемый в калькуляторах и т. Д. Таким образом, просто используя простые шифтеры и сумматоры, мы можем спроектировать аппаратное обеспечение с меньшей сложностью, но мощностью DSP, используя сердечный алгоритм. Следовательно, он может быть разработан как простой RTL-дизайн на VHDL или Verilog без использования каких-либо выделенных модулей с плавающей запятой или сложных математических IP-адресов.

Шаг 1: VHDL и Modelsim

Здесь сердечный алгоритм реализован с использованием VHDL для генерации синусоидальной и косой волны. Он может выводить синус и косинус входного угла с большой точностью. Код можно синтезировать на ПЛИС. Modelsim используется для моделирования конструкции и испытательного стенда.

Шаг 2: код VHDL для проектирования и испытательный стенд

Код VHDL для проектирования и тестового стенда
Код VHDL для проектирования и тестового стенда

Для представления чисел с плавающей запятой используется метод двоичного масштабирования.

Пожалуйста, ознакомьтесь с прилагаемой документацией, прежде чем писать код.

Пройдите через Моделирование cordic_v4.vhd - Дизайн -Ввод - угол в 32 бита + бит знака; он может обрабатывать любой угол от 0 до +/- 360 градусов с точностью ввода 0,000000000233 градуса. При вводе -> MSB является битом знака, а остальные 32 бита представляют величину. -Выходом схемы является его значение синуса и cos в 16 битах + бит знака.ie; с точностью 0,00001526. Обратите внимание, что результат отображается в форме дополнения 2, если соответствующее значение синуса или cos отрицательное. Моделирование testb.vhd - Испытательный стенд для проекта (1) Введите углы и сбросьте значение = '0'. После двух шагов симуляции сбросьте на «1» и «запустить все». (2) В окне симуляции установите систему счисления sin и cos сигналов как десятичную и формат> Аналоговый (автоматически). (3) Уменьшите масштаб, чтобы увидеть форму сигнала должным образом.

Шаг 3: прикрепленные файлы

(1) cordic_v4.vhd - Дизайн. (2) testb.vhd - Тестовый стенд для дизайна.

(3) Документируйте, как принудительно вводить угловые значения и преобразовывать двоичные результаты.

Обновление: ЭТИ ФАЙЛЫ УСТАРЕЛИ И БОЛЬШЕ НЕ ПРЕДОСТАВЛЯЮТСЯ. ПОЖАЛУЙСТА, ИСПОЛЬЗУЙТЕ ФАЙЛЫ СО СЛЕДУЮЩЕГО ШАГА

Шаг 4: IP-ядро Mini-Cordic - 16 бит

Ограничение вышеупомянутой реализации - медленная, более низкая тактовая частота работы из-за выполнения вычислений за один тактовый цикл. Mini-Cordic IP Core - 16 бит

- Критические пути распределены по нескольким циклам для повышения производительности. - Быстрее - Проверенная конструкция FPGA синтезирует тактовую частоту до 100 МГц. - Большая область оптимизирована для HDL, меньшее оборудование. - Добавлены сигналы состояния загрузки и завершения. - Единственным недостатком является меньшее разрешение по сравнению с предыдущий.

полностью автоматизированный ввод углов от 0 до 360 градусов

Прикрепленные файлы: 1) основной файл vhdl mini cordic 2) испытательный стенд mini cordic 3) руководство по Mini Cordic IP Core 4) документ о том, как форсировать углы и преобразовывать результаты

По любым вопросам обращайтесь ко мне:

Миту Радж

следуй за мной:

почта: [email protected]

### Всего загрузок: 325 по состоянию на 01-05-2021 ###

### Код последний раз редактировался: июль-07-2020 ###

Рекомендуемые: