Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Arria II GX dev kit
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Системы на ПЛИС - System on a Programmable Chip (SoPC)
Tue
Какое-то время назад приобрели Arria II GX FPGA Development Kit. Стояла она без дела, пока до нее руки не дошли. Покупалась в основном для отработки работы по PCI Express. Каково же было мое удивление, когда я увидел, что ребята из Альтеры не создали тестового проекта PCI Express. Есть Board Test System в которой есть проекты для тестирования работы DDR2, DDR3, Flash ..., а такого же проекта PCI Express нет.

Создал свой PCIe-проект Endpoint-устройства, используя Q9.1 SP2. То есть по сути вставил PCIe Hard IP ядро и назначил пины. Сконвертировал sof-файл как написано в User Guide утилитой sof2flash из NIOS EDS 9.1 SP2 командой:

sof2flash --input=arria2_ep.sof --output=arria2_ep.flash --offset=0x640000

Далее пытаюсь залить во Flash в "User hardware 1" область свой проект. Соответственно MAX II CPLD, которая стоит на этой плате, используя Parallel Flash Loader грузит в режиме Fast Passive Parallel ПЛИС Arria2 GX


Делаю это не через Board Update Portal, а через Nios II EDS. При этом ПЛИС сконфигурирована заводской прошивкой из "Factory hardware"-области, поэтому пункты 4-7 на стр. 39 пропускаю. В NIOS-консоли набираю:

nios2-flash-programmer --base=0x08000000 arria2_ep.flash

Flash прошивается, я переключаю USER LOAD switch (SW4.4) в "On", чтобы при включении питания ПЛИС конфигурировалась бы из Flash не заводской прошивкой, а вот только что записанным моим пользовательским проектом. Передергиваю питание - загорается "ERROR"-светодиод D16, ПЛИС не конфигурируется.

Никак не могу понять в чем может быть дело, ведь все делаю по инструкции. Кто-нибудь сталкивался с подобным ?
AndriAno
Мне кажется вы не совсем правы, Альтеровцы сделали тестовый дизайн (с более менее открытыми исходниками):
http://www.altera.com/support/refdesigns/i...rformance%20PCI

А вот у вашего дизайна откуда ноги ростут интересно??? Делали через NIOS'овский или через Avalon-ST интерфейс?
Tue
действительно есть PCIe тестовый проект, надо будет попробовать.
Цитата
А вот у вашего дизайна откуда ноги ростут интересно??? Делали через NIOS'овский или через Avalon-ST интерфейс?

Что Вы имеете ввиду ? Интерфейс общения с Hard IP ядром Avalon-ST 64 bit 125 МГц. В Квартусе вставил мегафункцию PCIe 9.1, настроил, добавил выводы PCIe и все
AndriAno
Мне просто интересно какую нибудь логику вокруг уже подключили?? или просто пустая корка?

Сам просто на этой плате некоторое время назад писал, остановился на написании дряйверов, потом дали другую задачу. Сейчас вскоре расхлебаюсь, опять за драйвера сяду.

На мой вгляд проще в начале через SOPC собрать схемку с ниосом и PCI, а также подцепить туда немного памяти и посмотреть корректность транзакций.
Tue
Логика есть (целый проект с Bus Master'ом и DMA), просто пока ее не вставляю. Хочу просто увидеть, что корка нормально конфигурируется по PCIe. В том проекте, о котором Вы говорите - они хитрые. Они пишут: возьмите два компа, в один вставьте вашу отладочную плату, запустите его, зайдите в BIOS (запаузить загрузку), а со второго компа по USB-Blaster прошейте sof-файл прямо в ПЛИС (не через Flash), далее на первом Ctrl-Alt-Del. ПЛИС не выключается и не теряет конфигурацию. Я также пробовал свой проект через JTAG напрямую в ПЛИС шить - все нормально(в PCIe-слот пока еще не вставлял) . Проблемма именно в конфигурации через Parallel Flash Loader в режиме Fast Passive Parallel. Причем думаю, что проблемма не в железной части (заводскую прошивку он ведь прошивает нормально), а на этапе конвертирования sof-файла в flash-файл.
AndriAno
Ну я примерно как описано и поступал. Просто у меня есть рабочий комп и есть отладочный, поэтому пока что, острой необходимости не возникало.
Но я не уверен что у Вас получится легко переделать из sof файла. Там скорее всего есть time limited ограничения. Сгенерировать POF файл есть возможность??
Tue
Значит так, последние новости с фронта !
Решить проблему удалось следующим образом: конвертировать sof-файл в flash-файл нужно следующей командой

sof2flash --input=arria2_ep.sof --output=arria2_ep.flash --offset=0x640000 --pfl --programmingmode=FPP --optionbit=0x0

Такой командой формируется правильный flash-файл. Откуда взяться time limited ограничениям, если я использую Hard IP ядро ?
AndriAno
Цитата(Tue @ Jul 28 2010, 13:49) *
Откуда взяться time limited ограничениям, если я использую Hard IP ядро ?

Это было только предположение.
Спасибо за информацию о конвертировании.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.