Первый проект для отладочной платы SMARTFUSION EVALUATION KIT
В статье приведен краткий обзор программного обеспечения Libero Ide фирмы Microsemi (Actel), а также описан алгоритм создания проекта для отладочной платы SMARTFUSION EVALUATION KIT.
1. КРАТКИЙ ОБЗОР ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
LIBERO IDE ФИРМЫ MICROSEMI (ACTEL)
Интегрированная среда разработки Microsemi (Actel) Libero IDE включает в себя полный набор инструментов для создания, отладки и верификации, синтеза и физической имплементации проектов, а так же генерации файлов прошивки под все семейства ПЛИС фирмы Microsemi (Actel).
После запуска среды разработки Libero IDE, будет представлено окно, которое поделено на несколько частей (Рисунок. 1).
Рисунок 1. Среда разработки Microsemi (Actel) Libero IDE
Рассмотрим более подробно эти части окна среды разработки. Начнем с интерактивной среды разработки (Рисунок. 2). В интерактивной среде разработки представлен доступ ко всем программным средствам для полноценной разработки цифровых устройств и систем на ПЛИС, проведения моделирования на всех этапах разработки, а также программирования ПЛИС и внутрисхемной отладки.
Таким как:
Графический редактор описания архитектуры ПЛИС, который позволяет быстро и легко создать законченный дизайн ПЛИС, в том числе разрабатывать проекты Систем на Кристалле с использованием IP-ядер процессоров, предоставляемых бесплатно фирмой Microsemi (Actel) или сторонних производителей и дополнительных IP ядер, как готовых, так и созданных пользователем. Автоматически создает файл описания проекта на языке HDL. Работает в среде Libero IDE.
Программа логического синтезатора кода компании Synpsys включена в инсталляционный пакет Libero IDE, но может быть установлена отдельно.
Программа синтезатора компании Mentor Graphic - для ПЛИС фирмы Microsemi (Actel) обеспечивает высокие характеристики логического синтеза, используя улучшенные алгоритмы оптимизации, временного и структурного анализа.
Поддерживает работу с программаторами FlashPro4, FlashPro3/3X и FlashPro Lite для внутрисхемного программирования FLASH ПЛИС Microsemi (Actel) семейств серий IGLOO и ProASIC 3 (включая RT ProASIC3), SmartFusion, Fusion, ProASICPLUS и ProASIC.
Поддерживает работу с универсальными программаторами ПЛИС Microsemi (Actel) Silicon Sculptor II и SiliconSculptor3. Silicon Sculptor поддерживает программирование FLASH ПЛИС семейств IGLOO, ProASIC3 и Fusion и всех однократно-программируемых ПЛИС, выполненных по технологии antifuse.
Для FLASH ПЛИС Microsemi (Actel) семейств IGLOO, ProASIC3, SmartFusion и Fusion после трассировки имеется возможность подключить внутренний сигнал проекта к выводу микросхемы. Это позволяет быстро без изменения проекта и трассировки ПЛИС протестировать ее внутренние сигналы на плате. Инструмент Designer Probe Insertion является частью Libero IDE и доступен через меню программы Designer.
Инструмент для внутрисхемной отладки RTL модели для ПЛИС семейств IGLOO, ProASIC3, Fusion и ProASICPLUS, позволяющий протестировать сигналы внутри запрограммированной ПЛИС.
Инструмент для логического анализа и верификации проектов для однократно-программируемых ПЛИС Actel, выполненных по технологии antifuse, обеспечивающий внутрисхемную отладку проектов в реальном времени.
Пакет разработки программ для встроенных процессоров. Включает GNU C/C++ транслятор, GDB отладчик и эмулятор.
Рисунок 2. Интерактивная среда разработки
Наличие Каталога (Catalog) облегчает создание программного кода для IP-процессоров 8051, ARM7, Cortex-M1, интегрированного в ПЛИС SmartFusion аппаратного процессора Cortex-M3 и IP периферийных контроллеров. Поддерживает генерацию кода программных драйверов для SoftConsole, Keil и IAR Systems.
Каталог (Рисунок. 3, 4, 5) состоит из трех разделов (закладок):
-
на закладке Core представлены различные Core-макросы, конфигурируемые блоки и IP-модули;
-
на закладке Templates представлены шаблоны большого количества стандартных функций и конструкций на языках Verilog и VHDL;
-
на закладке “Bus definitions” представлены интерфейсы шин ARM процессоров и CoreABC.
В интерфейсы могут быть добавлены в разрабатываемые пользователем модули.
Менеджер проектов (Design Explorer) обеспечивает гибкое и эффективное управление файлами проекта и процессом разработки. Графический редактор SmartDesign позволяет быстро и легко создавать как простые, так и большие комплексные Системы на Кристалле.
Менеджер проекта (Рисунок. 6, 7) представлен двумя закладками:
-
Закладка Hierarchy. Представлены только модули модели проекта в иерархическом виде
-
Закладка Files. Представлены все файлы проекта, разделенные на категории:
-
компоненты, сгенерированные из каталога;
-
модули, созданные в редакторе ViewDraw;
-
модули проекта в текстовом представлении;
-
файлы для настройки симуляции, синтеза и трассировки проекта;
-
результаты синтеза и трассировки проекта.
В Окне лога работы (Рисунок. 8) отображаются сведения о запуске программных средств и их отчетов о работе, а также различные сообщения об ошибках и предупреждениях.
Рисунок 3, 4, 5. Закладки каталога
Рисунок 6, 7. Закладки Менеджера проекта
Рисунок 8. Окно лога работы
2. СОЗДАНИЕ ПРОЕКТА
Для первого проекта выберем обычный 32 разрядный счетчик, описанный на VHDL.
Создадим проект – сделаем синтез, Post-Route и в конце работы произведем программирование ПЛИС на плате и увидим результат своей работы – мигание светодиодов.
Для того чтобы начать новый проект (Рисунок 9) – в меню нужно выбирать и нажать «Project». Выберите меню пункт «Project → New Project». Или нажмите «Create Project…» на панели быстрого запуска.
Рисунок 9. Создание нового проекта
Откроется окно создания нового проекта (Рисунок 10).
Рисунок 10. Окно создания нового проекта
Вводим название проекта и указываем его месторасположения на жестком диске и нажимаем кнопку «Next» .
Рисунок 11. Окно создания нового проекта (продолжение)
Здесь (Рисунок 11) производим выбор ПЛИС и корпуса и также нажимаем «Next».
Рисунок 12. Окно создания нового проекта (продолжение)
Здесь (Рисунок 12) можем произвести выбор средства для разработки, программирования и моделирования, но сейчас просто нажимаем «Next».
Рисунок 13. Окно создания нового проекта (продолжение)
Здесь (Рисунок 13) можем добавить в проект файлы из ранее созданных проектов, но сейчас просто нажимаем «Next».
Рисунок 14. Окно создания нового проекта (продолжение)
Здесь (Рисунок 14) приведена информация о произведенных действий при создании нового проекта.
В интерактивной среде разработки в инструментах разработки модели проекта нажимаем кнопку «SmartDesign». В появившемся меню (Рисунок 15) выбираем «VHDL Source File» и вводим название для файла.
Рисунок 15. Создание VHDL файла
В появившемся окне вводим следующий текст VHDL описания:
-- count.vhd
library IEEE;
use IEEE.STD_LOGIC_1164.ALL;
use IEEE.STD_LOGIC_ARITH.ALL;
use IEEE.STD_LOGIC_UNSIGNED.ALL;
entity counter32 is
Port ( clk : in std_logic;
en : in std_logic;
rst : in std_logic;
count : out std_logic_vector(7 downto 0));
end counter32;
architecture behavioral of counter32 is
signal cnt: std_logic_vector (31 downto 0):= (others => '0');
begin
process (clk, en, cnt, rst)
begin
if (rst = '0') then
cnt <= (others => '0');
elsif (clk'event and clk = '1') then
if (en = '1') then
cnt <= cnt + "00000000000000000000000000000001";
end if; end if;
count <= cnt(31 downto 24);
end process;
end behavioral;
Сохраняем файл.
Из-за того что работаем с ПЛИС семейства SmartFusion, тактовую частоту для разработанной цифровой схемы необходимо брать от встроенного микропроцессора ARM Cortex M3.
Далее конфигурируем в MSS частоту (Рисунок 16). Для этого открываем MSS конфигуратор и в нем ClockManagement. MSS конфигуратор - это графическая оболочка для конфигурации аппаратной цифровой и аналоговой частей ПЛИС.
Блок ClockManagement конфигурирует тактовые частоты, как для процессорной части, так и для аналоговой, и для ПЛИС. В качестве источника частоты может выступать FAB_CLK, GLC или, если снять галочку с FAB_CLK, выход GLB. Затем в SmartDesign делаем модуль, в который добавляем процессорный модуль (он включает и блок частоты) и свой модуль. На процессорном модуле будут выходы тактовой частоты, которые соединяем с тактовым входом своего модуля, т.е. счетчиком.
Рисунок 16. Конфигурация частоты в MSS
Для этого делаем, что делали при создании VHDL файла, но выбираем «SmartDesign Component» (Рисунок 15). В новом модуле SmartDesign, создаем схему с процессором и счетчиком (Рисунок 17).
Рисунок 17. Подсоединение тактовой частоты к счетчику
Рассмотрим более подробно, как производится работа в SmartDesign. Соединение и вывод сигналов на верхний уровень (Top Level) представлены на рисунках 18 и 19 соответственно.
Рисунок 18. Процесс подсоединения тактовой частоты к счетчику
Рисунок 19. Вывод сигналов на верхний уровень (Top Level)
Если в процессе редактирования иерархического компонента изменился состав и/или наименование портов, необходимо обновить его в схеме, где он используется. Элемент, требующий обновления будет автоматически помечен в схеме желтым треугольником с восклицательным знаком внутри (Рисунок 20).
Рисунок 20. Редактирование иерархического элемента схемы
Далее в меню нужно выбирать и нажать по «SmartDesign».
Выберите меню пункт «SmartDesign → Generate Design». Таким образом, произведется компиляция схемы.
Последним этапом является назначения пинов/выводов ПЛИС. Для этого в интерактивной среде разработки в инструментах разработки модели проекта нажимаем кнопку «I/O Attribute Editor».
Рисунок 21. Выводы/пины ПЛИС, к которым подключены светодиоды
Присваиваем каждому сигналу свой пин/вывод ПЛИС (Рисунок 21).
Далее запускаем синтезатор Synplify компании Synopsys (Рисунок 22), который сформирует оптимизированный файл соединений примитивов в соответствии с архитектурой выбранного семейства ПЛИС.
Лог файл содержит:
- Результаты оптимизации
- Анализ временных параметров
- Отчет по используемым ресурсам ПЛИС
Рисунок 22. Запуск программы синтезатора
Рисунок 23. Окно программы синтезатора Synplify компании Synopsys
Производим синтез разработанной схемы (рисунок 23), т.е. схемы, которая описана на языке описания аппаратуры VHDL и отчет работы в лог файле. Для чего нажимаем кнопку «Run».
Следующим шагом запускаем Microsemi (Actel) Designer. Программа для физической трассировки проекта ПЛИС и генерации файла прошивки. Для запуска пакета нажмите левой клавишей мыши кнопку Place&Route в окне (рисунок 24).
Рисунок 24. Запуск программы Microsemi (Actel) Designer
Если необходимо запустить программу с ограничениями и требованиями по размещению и трассировке, то процесс представлен на рисунке 25. Эти требования оформляются и прописываются в файле по правилам Synopsys Design Constraint — язык задания временных ограничений.
Рисунок 25. Процедура запуска программы Microsemi (Actel) Designer с ограничениями и требованиями по размещению и трассировке
После этого проходим весь этап трассировке, размещения и генерирования файла конфигурации (рисунок 26).
Рисунок 26. Окно программы Designer с инструментами физической имплементации
Далее с помощью программы FlashPro производим конфигурацию ПЛИС.
За дополнительной технической информацией и по вопросам приобретения микросхем ПЛИС, отладочных плат и программным обеспечением обращайтесь к официальному дистрибьютору компании Microsemi (Actel) на территории Украины - ООО «СЭА Электроникс», тел.: (044) 296-24-00, info@sea.com.ua
Достарыңызбен бөлісу: |