Разработка программы управления синтезатором 1508ПЛ9Т 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Разработка программы управления синтезатором 1508ПЛ9Т



Для управления синтезатором была написана программа на языке Verilog HDL. Управление синтезатором 1508ПЛ9Т осуществляется путем записи регистров управления, используя протокол последовательной передачи данных “SPI”. Данные, для удобства, нужно записать одним блоком с присвоением адресов (рис. 19).

 

Рис. 19 Фрагмент кода блок регистров управления

 

Выборку и синхронизацию по времени организуем с помощью счетчиков. Программа протокола SPI описывается в общем виде (без привязки к величине слова). С помощью функции настраиваем программу под требуемую величину слова. ПЛИС не имеет готовых устройств или выделенных модулей этого протокола, поэтому необходимо реализовать побитную передачу данных. Данные представлены 24 битным кодом, для преобразования в последовательный код необходимо воспользоваться регистром, который делает выборку по словам и подает слово на блок выборки бита. Он состоит из регистра сдвига и побитного перемножителя, далее результирующая шина суммируется (Рис. 20).

В программу включена часть для внешнего управления. На отладочной плате «DE0-Nano» имеется две тактовых кнопки. Для проверки кода перестройки сетки частот, необходимо описать алгоритм прибавления константы к требуемому регистру. В данном фрагменте кода к ней присвоено имя «CONST» (Рис. 19). При нажатом ключе KEY 1 (лог 1), константа вычитается, в противном случае прибавляется. Программирование синтезатора и считывание уровня ключа KEY 1 происходит по переднему фронту ключа KEY 2.

 

Рис. 20 Упрощенная функциональная схема реализации последовательного протокола SPI средствами ПЛИС

После компиляции средствами Quartus II строим логическую схему программы (Рис. 21)

 

Рис. 21 Логическая схема программы управления синтезатором 1508ПЛ9Т

Схема, построенная средствами Quartus II, включает основные блоки упрощенной схемы протокола, за исключением обозначений элементарной логики. Информационные выводы имеют оконечный триггер, это требуется для исключения всплесков (скачков-иголок) из-за наличия комбинаторной логики.

 

Проверка программы

Для проверки корректности работы программы используется логический анализатор Agilent. Скорость перезаписи регистров не указана в техническом задании, поэтому выбираем 100 кб. Тогда скорость отправки слова 240 мкс. На рис. 22 представлена логическая диаграмма работы программы, поле «Bus 1[0]» CLK – тактовые импульсы, «Bus 1[1]» SCSN – выборка устройства, «Bus 1[2]» MISO – информационные биты. Считывание информационных битов происходит по переднему фронту тактовых импульсов «CLK». При управлении выводом «SCSN», необходимо останавливать тактовые импульсы до смены уровня (Рис. 23). Полный текст программы представлен в приложении 1.

 

Рис. 22 Логическая диаграмма программы протокола «SPI», отладочная плата DE0-Nano, ПЛИС Cyclone 4, логический анализатор Agilent 16822A

 

Рис. 23 Диаграмма протокола SPI из технического описания синтезатора

Исходя из полученных результатов, средствами ПЛИС удалось реализовать данный протокол.



Поделиться:


Последнее изменение этой страницы: 2016-12-29; просмотров: 569; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.142.197.198 (0.005 с.)