Что такое sopc builder

Руководство пользователя SOPC Builder

Введение в SOPC Builder

SOPC Builder представляет собой мощный инструмент разработки систем. SOPC Builder позволяет создать полную систему на программируемом чипе (SOPC) за гораздо меньший временной промежуток, чем при использовании традиционных, ручных методов интеграции. SOPC Builder включен в качестве части программного обеспечения Quartus II.

Архитектура системы SOPC Builder

Altera и сторонние разработчики предоставляют готовые к использованию SOPC Builder компоненты, такие как:
■ Микропроцессоры, например процессор Nios II;
■ микроконтроллеры периферийных устройств, например Scatter-Gather DMA контроллер и таймер;
■ Последовательный интерфейс связи, такой как UART и последовательный периферийный интерфейс (SPI);
■ Компоненты общего назначения, ввода-вывода (I / O );
■ Периферийные устройства связи, такие как 10/100/1000 Ethernet MAC;
■ Интерфейсы устройств, которые вне кристалла.

1. Определение интерфейсов, используемых для взаимодействия с пользовательским компонентом;
2. Создание компонента логики, используя языки HDL;
3. Использование редактора компонентов SOPC Builder для создания SOPC Builder компонента с вашими файлами HDL ;

4. Создание экземпляра компонента в системе.

Как только вы создали компонент SOPC Builder, вы можете использовать его в других системах SOPC Builder, а также передавать этот компонент другим группам разработчиков.

Вы также можете использовать готовые компоненты SOPC Builder, которые были разработаны третьими сторонами. Altera поощряет наградами готовые сертификации IP-функций, которые готовы к интеграции со встроенным процессором Nios II или с фабрик ой системных межсоединений через SOPC Builder. Эти ядра поддерживают Avalon-ММ-интерфейс или потоковый Avalon-интерфейс (Avalon-ST), и могут включать в себя ограничения, программные драйверы, моделирование моделей, а также эталонные конструкции, когда это применимо.

■ Все внешние подключения для системы;

■ Мemory Мap с указанием адреса каждого Avalon-MM S lave по отношению к каждому Avalon-MM Мaster, к которому он подключен;

■ Все назначения параметров для каждого компонента;

■ функциональные test bench для SOPC Builder и системы ModelSim ® моделирования файлов проекта;

■ файл информации SOPC (. Sopcinfo), описывающий все компоненты и
соединения в системе. Этот файл представляет собой полное описание системы, и используется нижестоящими инструментами, такими как инструмент цепи Nios II. В нём также описываются параметризации каждого из компонентов в системе, следовательно, Вы можете разобрать его содержание, чтобы получить его требования при разработке программного обеспечения драйверов для компонентов SOPC Builder;

■ IP Quartus II файл (. QIP), который предоставляет Quartus II всю необходимую информацию о вашей системе SOPC Builder. QIP-файл содержит ссылки на следующую информацию:
■ HDL файлы, используемые в системеBuilder SOPC;

■ TimeQuest тайминг Analyzer Synopsys Design Constraint файл (. SDC);

■ Файлы описания компонентов для архивирования;

После создания системы в SOPC Builder, вы можете скомпилировать её в Quartus II, или подключить его в другую FPGA-систему.

Создание Memory Map для разработки программного обеспечения

Когда система SOPC Builder включает в себя процессор Nios II, SOPC Builder генерирует файл заголовка cpu.h, что обеспечивает базовый адрес каждого Avalon-MM S lave компонента. Кроме того, каждый S lave-компонент может предоставлять программные драйверы, библиотеки
и другие программные функции для процессора. Вы можете создать заголовочные C-файлы для вашей системы с помощью утилиты sopc-create-header-files.

Вы можете моделировать систему после её генерирования при помощи SOPC Builder. Во время генерации системы SOPC Builder создаёт скрипты test bench и системы моделирования ModelSim, которые облегчают работу. Тest bench выполняет следующие действия:
■ Подтверждает правильность созданной в SOPC Builder системы;
■ Управляет всеми синхросигналами и сигналами сброса;

■ Подтверждает имитационные модели для устройств не на кристалле при их наличии.

Процесс разработки в SOPC Builder

На рисунке 1 показан пример «восходящего» проектирования SOPC Builder, которое начинается с разработки компонента. Как эта схема показывает, типичный ход дизайна включает в себя следующие действия высокого уровня:

1. Упаковка компонента для SOPC Builder с использованием редактора компонентов (Component Editor);

2. Моделирование на уровне одной единицы (компонента), с возможным включением Avalon BFMs для проверки (верификации) системы;
3. Завершение разработки системы в SOPC Builder путем добавления других компонентов, указанием прерываний, синхроимпульсов, сигналов сброса и адресов;

4. Генерирование системы в SOPC Builder;

5. Выполнение моделирования на системном уровне;

6. Сжатие (оптимизация) и завершение разработки;

7. Загрузка готовой системы в устройство Altera;

8. Испытание на аппаратном уровне.

В альтернативном «нисходящем» проектировании разработку начинают с проектирования системы в SOPC Builder, а затем определяют и подтверждают пользовательский компонент SOPC Builder. Такой подход уточняет требования к системе ещё в начале процесса проектирования.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 1 – Процесс разработки в SOPC Builder

Источник

Поддержка sopc Builder

Intel® FPGA рекомендует использовать Qsys, инструмент системной интеграции следующего поколения, для новых проектов. Qsys предоставляет множество преимуществ по сравнению с SOPC Builder, включая более высокую производительность с новым соединением Qsys и более быструю разработку с поддержкой иерархических конструкций. Для получения дополнительной информации посетите страницу продукта Qsys или страницу поддержки Qsys.

Эта страница поддержки SOPC Builder содержит ссылки на литературные документы, руководства, учебные пособия, руководства пользователя и учебные классы, а также онлайн-демонстрации. Вы также найдете примеры дизайна и ссылки для загрузки.

Связанные учебные классы

Содержание данной страницы представляет собой сочетание выполненного человеком и компьютерного перевода оригинального содержания на английском языке. Данная информация предоставляется для вашего удобства и в ознакомительных целях и не должна расцениваться как исключительная, либо безошибочная. При обнаружении каких-либо противоречий между версией данной страницы на английском языке и переводом, версия на английском языке будет иметь приоритет и контроль. Посмотреть английскую версию этой страницы.

Для работы технологий Intel может потребоваться специальное оборудование, ПО или активация услуг. // Ни один продукт или компонент не может обеспечить абсолютную защиту. // Ваши расходы и результаты могут отличаться. // Производительность зависит от вида использования, конфигурации и других факторов. // См. наши юридические уведомления и отказ от ответственности. // Корпорация Intel выступает за соблюдение прав человека и избегает причастности к их нарушению. См. Глобальные принципы защиты прав человека в корпорации Intel. Продукция и программное обеспечение Intel предназначены только для использования в приложениях, которые не приводят или не способствуют нарушению всемирно признанных прав человека.

Источник

Инструментальные средства проектирования и отладки систем на программируемых кристаллах компании Altera (стр. 3 )

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builderИз за большого объема этот материал размещен на нескольких страницах:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

1.2 Способы запуска SOPC Builder

Запустить SOPC Builder можно несколькими способами.

1) Используя пункт SOPC Builder из меню Tools пакета Quartus II, рис. 1.1. Если до этого SOPC система еще не была создана, на экране появится окно, показанное на рис. 1.2, в котором следует задать её имя. В противном случае откроется окно SOPC Builder, содержащее спроектированную ранее систему.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рис 1.1 – Запуск SOPC Builder

2) Через MegaWizard PlugIn Manager, описание которого содержится в [5]. В этом случае на экране монитора появится окно со списком мегафункций, в котором необходимо выбрать Altera SOPC Builder, затем ввести имя будущей SOPC системы и путь к ней, как показано на рис. 1.3. В этом же окне необходимо выбрать тип кристалла FPGA, в котором будет реализована система, и указать язык HDL, на котором будут созданы файлы описания компонентов системы. Путь к системе можно указать с помощью кнопки “” (см. рис. 1.4).

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рис. 1.2 – Задание имени SOPC системы

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рис. 1.3 – Запуск SOPC Builder через MegaWizard

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рис. 1.4 – Указание местоположения процессорной системы

1.3 Графический интерфейс SOPC Builder

1.3.1 Главное окно SOPC Builder

Графический интерфейс SOPC Builder представлен на рис. 1.5. В верхней строке экрана приводится название проектируемой системы с указанием полного пути к папке с проектными файлами SOPC системы. Имя системы и папка задаются при создании SOPC системы, способами описанными выше. В правой верхней части основного окна содержатся кнопки, с помощью которых можно свернуть окно, развернуть его до полного экрана либо закрыть приложение SOPC Builder стандартным образом. В следующей строке экрана размещено меню приложения. Ниже содержатся две вкладки System contents и System Generation. На рис. 1.5 представлена вкладка System contents, отражающая компоненты процессорной системы. Функционально главное окно разделено на 4 основные части:

· библиотека готовых компонентов;

· рабочая область SOPC Builder;

· список синхросигналов SOPC системы;

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builderЧто такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рис 1.5 – Главное окно SOPC Builder

1.3.1.1 Библиотека готовых компонентов

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builderБиблиотека готовых компонентов представляет собой список установленных в САПР Quartus II IP ядер, готовых к использованию (рис. 1.6). SOPC Builder также дает возможность пользователю создавать свои собственные компоненты, используя HDL файлы описания. Создание компонента без HDL файла описания, но с указанием интерфейсных параметров также возможно. В этом случае после добавлении такого компонента в процессорную систему и ее генерации, процессорная система будет иметь дополнительные интерфейсы в соответствии с параметрами созданного компонента. Под окном с библиотечными компонентами размещены следующие три кнопки:

– для создания новых компонентов;

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder– для изменения параметров созданных пользователем компонентов;

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder– для добавления выбранного компонента в проектируемую систему.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рис. 1.6 – Библиотека

1.3.1.2 Рабочая область SOPC Builder

В нижней части рабочей области располагаются следующие кнопки:

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder— для удаления компонента из системы;

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

— для изменения параметров компонента;

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

— для отображения адресного пространства системы;

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder— для определения того, что будет отображаться в рабочей области;

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder— для перемещения компонента в начало, вверх, вниз и в конец списка, соответственно.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Список компонентов проектируемой системы включает следующие столбцы.

· Use – выполнив щелчок левой кнопкой мыши в соответствующем поле этого столбца, пользователь указывает какие компоненты из списка будут использоваться в создаваемой системе. Об этом будет свидетельствовать установленная галочка. Повторный щелчок мыши в этом поле приведет к запрету использования компонента в системе (галочка удаляется).

· Connections – в этом столбце графически отображаются соединения компонентов, которые, при необходимости, пользователь может изменить.

· Name – в данном столбце приводятся имена компонентов, которые, при необходимости, пользователь может изменить, а также перечисляются использованные интерфейсы этого компонента с шиной Avalon.

· Descriptions – здесь содержится краткое описание компонентов и их интерфейсов.

· Clock – в этом столбце отражаются назначенные компонентам синхросигналы.

· Base – в данном столбце отображаются начальные адреса компонентов для доступа к ним со стороны процессора. Адреса назначаются автоматически, тем не менее, пользователь может изменить их вручную.

· End – здесь отображаются конечные адреса компонентов, назначаемые автоматически.

· IRQ – в полях данного столбца компонентам назначаются номера прерываний, а также осуществляется соединение соответствующих линий запросов прерываний от компонентов источников к компонентам приемникам сигналов прерываний.

· Tags – в этом столбце указываются комментарии к компонентам.

1.3.1.3 Список синхросигналов SOPC системы

Данная область отображает используемые в SOPC системе синхросигналы, рис. 1.8. Здесь можно задать имя синхросигнала и его частоту.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рис 1.8 – Список используемых синхросигналов

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builderВ правой части окна содержатся следующие кнопки:

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder– для добавления синхросигналов;

– для удаления выделенных синхросигналов из процессорной системы.

Двойной щелчок левой кнопки мыши по имени или частоте дает возможность их редактировать. В этом случае редактируемые значения будут выделены синим цветом.

1.3.1.4 Информационная область

Данная область содержит рекомендации, предупреждения и сообщения о возникших в процессе проектирования ошибках. Представленная здесь информация поможет пользователю быстро их устранить. На рис. 1.9 приведен пример информационного окна.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рис 1.9 – Информационное поле

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builderВ меню File содержатся следующие пункты (рис. 1.10):

New System…” – создание новой SOPC системы;

Open…” – открытие ранее созданной SOPC системы;

Save – сохранение текущей SOPC системы;

Рис. 1.10 – Меню File

Save As…” – сохранение текущей SOPC системы под другим именем ;

Refresh System – проверка папок Quartus II и проекта на наличие IP компонентов;

New component…” – запуск мастера создания новых компонентов;

Browse Project Directory…” – отображение рабочей директории проекта;

1.3.2.2 Пункты меню Edit

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builderМеню Edit включает следующие три пункта (Рис. 1.11):

Remove Dangling Connections – удаление неподключенного соединения;

Источник

Сравнение средств построения систем на кристалле для FPGA платформы фирмы
ALTERA: SOPC Builder и Qsys

Содержание

Аннотация

Горохов И.В., Деменко А.Г., Лобанов Е.В., Сероштан С.Ю. Сравнение средств построения систем на кристалле для FPGA платформы фирмы ALTERA: SOPC Builder и Qsys. В данной статье рассматриваются вопросы использования программных средств SOPC Builder и Qsys фирмы Altera для построения систем на кристалле на базе отладочных плат FPGA данной фирмы. Выполняется функциональный анализ работы рассматриваемых инструментариев для выявления общих черт и различий.

Введение

Общие положения в использовании инструментариев

Основные нововведения в Qsys

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 1 — Пример иерархической структуры проекта

Помимо этого, повышена эффективность передачи информации по шине данных (от master к slave ), что обеспечивает повышение пропускной способности соединений. Сравнительные схемы передачи информации представлены на рис. 2.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 2 — Схемы передачи информации в SOPC Builder и Qsys

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 3 — Пример соединения компонентов c различными интерфейсами

Источник

ЛР1 > Разработка процессорного ядра NiosII и программного обеспечения для него

Теоретические сведения

Скачать Материалы к лабораторной работе №1.

NiosII – программное процессорное ядро, описанное на языке программирования аппаратуры и предназначенное для реализации в ПЛИС фирмы ALTERA. Для создания «системы на кристалле» к процессорному ядру необходимо добавить дополнительные компоненты – память, порты ввода/вывода, таймер, необходимые интерфейсы. Для этой цели используется специальная утилита, входящая в состав САПР Quartus II – SOPC Builder, позволяющая формировать требуемую архитектуру процессорной системы. Пример одного из вариантов реализации архитектуры процессорного ядра показан на рисунке 1.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 1. Пример архитектуры процессорного ядра с Nios II.

Для обмена данными с внешними микросхемами (например – SRAM, SDRAM, Flash и пр.) внутри ПЛИС формируются специальные компоненты – интерфейсные блоки. Они связаны с процессорным ядром с помощью специальной шины – Avalon switch fabric. В состав процессорного ядра могут входить и специализированные блоки: JTAG UART – для обмена информацией с компьютером с помощью загрузочного кабеля (USB-Blaster или ByteBlaster), модуль JTAG Debug – для выполнения отладки программного обеспечения с помощью компьютера. Пользователь может подключать к процессорному ядру как библиотечные компоненты (входящие в состав САПР Quartus II), так и собственные модули.

Для выполнения данной лабораторной работы используется отладочный модуль DE2 Cyclone II Edition. Исходные данные для работы размещены в папке «ИД для Лаб_1».

Задание 1

1. Создайте новый проект в Вашей рабочей директории. Укажите название проекта (рисунок 1).

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 1. Создание нового проекта.

2. В качестве микросхемы, для которой создается проект, укажите микросхему EP2C35F672C6 семейства Cyclone II (установлена на отладочном модуле DE2).

3. Создаваемый процессорный модуль должен содержать следующие компоненты:

— процессорное ядро (Nios II CPU);

внутренний блок памяти для хранения программы и данных (onchip memory);

— контроллер последовательного канала связи JTAG UART;

— параллельные порты ввода/вывода для связи с внешними компонентами отладочного модуля – светодиодами, кнопками (PIO peripherals).

4. Вызовите утилиту формирования архитектуры процессорного ядра (меню Tools > SOPC Builder…). Укажите имя процессорной системы – nios_system и язык описания – Verilog (рисунок 2).

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 2. Указание имени процессорной системы.

5. В открывшемся диалоговом окне (рисунок 3) проверьте системные настройки – семейство ПЛИС Cyclone II, тактовая частота (clk_0) – внешняя, 50МГц.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 3. Проверка системных настроек.

6. Добавьте процессорное ядро в проект. В окне библиотеки системных компонентов (Component Library) в папке Processors выделите Nios II Processor и нажмите кнопку Add. В открывшемся диалоговом окне выберите архитектуру Nios II/e (рисунок 4).

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 4. Настройка процессорного ядра.

7. Нажмите кнопку Finish. В окне сообщений утилиты SOPC Builder могут появиться предупреждения или сообщения об ошибке. Они связаны с тем, что для процессора Nios II был пропущен ряд настроек. Мы их сделаем позже.

8. Внешний вид диалогового окна утилиты SOPC Builder должен выглядеть так, как показано на рисунке 5.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 5. Внешний вид диалогового окна утилиты SOPC Builder.

9. Подключите к процессорному ядру внутренний блок памяти. Для этого в разделе Memories and Memory Controllers раскройте папку On-Chip и выделите компонент On-Chip Memory (RAM or ROM). Нажмите кнопку Add… В открывшемся диалоговом окне установите следующие параметры: тип памяти RAM (Writable), объем памяти – 4096 байт, разрядность шины данных – 32 (как показано на рисунке 6). Остальные настройки оставьте по умолчанию. Нажмите кнопку Finish.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 6. Настройка внутреннего блока памяти.

10. Внешний вид диалогового окна утилиты SOPC Builder должен выглядеть так, как показано на рисунке 7.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 7. Внешний вид диалогового окна утилиты SOPC Builder

11. Подключите к процессорному ядру контроллер порта ввода/вывода для переключателей. Для этого в перечне устройств в разделе Peripherals раскройте папку Microcontroller Peripherals и выделите компонент PIO (Parallel I/O). Нажмите кнопку Add…В открывшемся диалоговом окне установите разрядность порта равную 8 бит и направление передачи данных – Input ports only (как показано на рисунке 8). Нажмите кнопку Finish.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 8. Настройки порта ввода/вывода для переключателей.

12. Аналогичным способом подключите к процессорному ядру контроллер порта ввода/вывода для светодиодов. Для этого в перечне устройств в разделе Peripherals раскройте папку Microcontroller Peripherals и выделите компонент PIO (Parallel I/O). Нажмите кнопку Add…В открывшемся диалоговом окне установите разрядность порта равную 8 бит и направление передачи данных – Output ports only. Нажмите кнопку Finish.

13. Внешний вид диалогового окна утилиты SOPC Builder должен выглядеть так, как показано на рисунке 9.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 9. Внешний вид диалогового окна утилиты SOPC Builder.

14. Подключите к процессорному ядру контроллер последовательного канала JTAG UART. Для этого в перечне устройств в разделе Interface Protocols раскройте папку Serial и выделите компонент JTAG UART. Нажмите кнопку Add… В открывшемся диалоговом окне оставьте все значения без изменений (как показано на рисунке 10). Нажмите кнопку Finish.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 10. Настройки контроллера последовательного канала.

15. Процессорный модуль собран. Для изменения имени компонента, входящего в состав процессорного модуля, нужно выделить компонент, нажать правую кнопку мышки и выбрать команду Rename из контекстного меню. По заданным именам происходит обращение к компонентам из программы.

16. Переименуйте порт ввода/вывода pio_0 на Switches, а порт ввода/вывода pio_1 на LEDs. Внешний вид диалогового окна утилиты SOPC Builder должен выглядеть так, как показано на рисунке 11.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 11. Внешний вид диалогового окна утилиты SOPC Builder.

17. Для присвоения базовых адресов устройствам, входящим в состав процессорной системы, в меню System утилиты SOPC Builder выберите команду Auto-Assign Base Addresses. Обратите внимание на изменение базовых адресов компонентов, входящих в состав процессорного модуля.

18. Если все выполнено правильно, то процессорная система должна выглядеть так, как показано на рисунке 12.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 12. Внешний вид процессорной системы.

19. Укажите размещение стартового адреса программы и таблицы векторов прерывания. Для этого вызовите диалоговое окно настройки процессорного модуля cpu_0 (двойным нажатием левой кнопки мыши на его имени). Из выпадающего меню для Reset Vector выберите значение onchip_memory2_0. И для Exception Vector – значение onchip_memory2_0 (рисунок 13). Нажмите кнопку Finish.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 13. Настройка векторов прерывания процессора.

20. Перейдите на страницу System Generation утилиты SOPC Builder. Проверьте, что опция Simulation. Create project simulator files осталась не выбранной. Сохраните все настройки процессорной системы (меню File > Save). Нажмите кнопку Generate.

21. После получения сообщения об успешном завершении создания процессорной системы, закройте утилиту SOPC Builder.

22. Создайте в САПР Quartus II файл верхнего уровня иерархии. Это может быть графический файл или файл на языке HDL. В нем должны быть указаны внешние сигналы, которые подаются на процессорный модуль (тактовая частота, сигнал сброс, входные сигналы с переключателей и выходные сигналы на светодиоды).

23. Добавьте в файл созданный процессорный модуль (рисунок 14). Он находится в рабочей директории проекта. Данный пример – создание графического файла.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 14. Добавление в проект процессорного модуля nios_system.

Для того, чтобы воспользоваться файлом с назначениями контактов ввода/вывода, поставляемым вместе с отладочным модулем DE2, имена внешних сигналов в Вашем файле должны совпадать с именами сигналов, указанных в файле DE2_pin_assignments.csv (как показано на рисунке 15).

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 15. Пример файла верхнего уровня иерархии.

24. Сохраните файл (меню File > Save). Сохраните проект (меню File > Save Project).

25. Подключите файл с назначениями контактов ввода/вывода. Для этого в меню Assignments выберите команду Import Assignments. В открывшемся диалоговом окне (рисунок 16) укажите расположение файла DE2_pin_assignments.csv. Нажмите ОК.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 16. Подключение файла с назначениями.

26. Выполните полную компиляцию проекта.

Задание 2

1. После успешной компиляции проекта, загрузите его в ПЛИС, установленную на отладочном модуле (конфигурационный файл – *.sof).

2. Откройте среду разработки программного обеспечения для встраиваемого процессорного ядра Nios II IDE.

3. Создайте новый проект для процессорного ядра. Для этого в меню File выберите команду New > Project. В открывшемся диалоговом окне выберите Nios II C/C++ Application и нажмите кнопку Next>.

4. На следующей странице диалогового окна укажите имя проекта. В графе SOPC Builder System PTF File укажите расположение файла описания процессорного модуля nios_system.ptf (используйте кнопку Browse…Файл располагается в рабочей директории проекта). В окне выбора шаблона для проекта (Select Project Template) укажите Blank Project (рисунок 17). Нажмите кнопку Next>.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 17. Настройки проекта для разработки программного обеспечения.

5. На следующей странице выберите настройку Create a new system library named:. Нажмите кнопку Finish. В окне доступных проектов приложения Nios II IDE появятся две новые директории: директория исходных данных проекта (training) и директория системной библиотеки проекта (training_syslib[nios_system]).

6. Создайте для проекта новый исходный файл training.c. Для этого в меню File выберите команду New > Source File. В открывшемся диалоговом окне укажите имя файла (рисунок 18). Нажмите Finish.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 18. Создание исходного файла.

Напишите простую программу, которая отображает состояние переключателей с помощью светодиодов. Пример такой программы представлен ниже:

#define Switches (volatile char*)0×0003000

#define LEDs (char*)0×0003010

void main()

Обратите внимание – имена переменных Switches и LEDs совпадают с именами портов ввода/вывода процессорного модуля, а значения адресов этих переменных – с адресами, назначенными утилитой SOPC Builder.

8. Выделите директорию системной библиотеки проекта, нажмите правую кнопку мыши и выберите команду Properties из открывшегося контекстного меню. В открывшемся диалоговом окне выберите закладку System Library (рисунок 19).

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 19. Настройки системной библиотеки проекта.

9. Проверьте, что в настройках системной библиотеки проекта функции stdout, stderr, stdin связаны с устройством jtag_uart_0. Все секции программы располагаются в onchip_memory2_0. Сделаны установки для использования минимальных библиотек языка С и системных драйверов. Нажмите ОК.

10. Для компиляции проекта выделите рабочую директорию проекта training, нажмите правую кнопку мыши и выберите команду Build Project из открывшегося контекстного меню.

11. Если компиляция проекта завершилась без ошибок, проверьте работу программы с помощью отладочного модуля. Для этого выделите рабочую директорию проекта, нажмите правую кнопку мыши и выберите команду Run As > Nios II Hardware из открывшегося контекстного меню (рисунок 20).

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 20. Запуск программы на отладочном модуле.

12. После загрузки программы, проверьте ее работоспособность с помощью отладочного модуля.

13. Перейдите в режим отладки программного обеспечения. Для этого выделите рабочую директорию проекта, нажмите правую кнопку мыши и выберите команду Debug As > Nios II Hardware из открывшегося контекстного меню. Подтвердите разрешение перехода в режим отладки (кнопка Yes). Внешний вид отладочной среды показан на рисунке 21.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 21. Режим отладки программного обеспечения.

14. Установите точку останова в строке 13 исходного текста программы (двойное нажатие левой кнопки мыши слева от номера строки). Если номер строки не отображается в текстовом редакторе, в меню Window выберите команду Preferences.. В открывшемся окне раскройте папку General, затем папку Editors и выделите строку Text Editors. В правой части диалогового окна установите опцию Show line numbers (рисунок 22). Нажмите ОК.

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 22. Настройка текстового редактора.

15. Нажмите кнопку запуска программы resume (или клавишу F8). Обратите внимание на точку останова программы.

16. Нажмите один из переключателей на отладочном модуле и повторно запустите программу. Что изменилось?

17. Для выхода из режима отладки в окне Debug выделите элемент Thread[0], нажмите правую кнопку мыши и выберите команду Terminate and Remove из открывшегося контекстного меню (рисунок 23).

Что такое sopc builder. Смотреть фото Что такое sopc builder. Смотреть картинку Что такое sopc builder. Картинка про Что такое sopc builder. Фото Что такое sopc builder

Рисунок 23. Завершение отладки программы.

Задания для самостоятельной работы

1. Разработайте свой вариант программы для процессорного ядра nios_system. Проверьте ее работоспособность на отладочном модуле.

2. Подключите к процессорному модулю дополнительные порты ввода/вывода для отображения информации на семисегментных индикаторах и красных светодиодах.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *