Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Nios II, Custom peripherals.
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Системы на ПЛИС - System on a Programmable Chip (SoPC)
Волощенко
Привет всем.
В SOPC три метода ускорения (см. Embedded Design Handbook, edh_ed_handbook.pdf, стр.20):
1. C2H accelerated software, мне пока недоступны.
2. Custom instructions, притормаживает CPU до своего выполнения.
3. Custom peripherals, работает параллельно с CPU, поэтому привлекает.

Мне Custom peripherals нужен для того, чтобы сделать в FPGA два небольших буфера памяти с переключаемым доступом (типа Ping-Pong). То есть когда один из буферов загружается, из второго NiosII считывает данные, и наоборот.
Загрузка в буфер должна выполняться отдельной схемой через дополнительные цепи, которые не есть цепями интерфейсов Avalon-master и Avalon-slave. Выполнив пример с вычислением checksum из qts_qii54007.pdf (9. Developing Components for SOPC Builder), я не нашел там возможности извне подключиться к Custom peripherals.

Как лучше решить данную задачу, т.е. сделать модуль с Custom peripherals, с доступом к нему через Avalon, а также от своих схем?
Есть ли примеры?
id_gene
Цитата(Волощенко @ Apr 17 2008, 17:09) *
Как лучше решить данную задачу, т.е. сделать модуль с Custom peripherals, с доступом к нему через Avalon, а также от своих схем?
Есть ли примеры?

В вашем модуле будет два интерфейса - avalon slave и второй к вашим схемам.
При создании компонента из вашего верилога вы второй интерфейс указываете как export /global. тогда он у вас останется в проекте, и вы просто подключите к нему все, что хотите.
Волощенко
Цитата(id_gene @ Apr 17 2008, 16:32) *
В вашем модуле будет два интерфейса - avalon slave и второй к вашим схемам.
При создании компонента из вашего верилога вы второй интерфейс указываете как export /global. тогда он у вас останется в проекте, и вы просто подключите к нему все, что хотите.

Спасибо за подсказку, получилось!
В Component Editor->Signal, я задавал внешнему сигналу следующее:
Datain (Name), conduit_end_1 (Interface), export (Signal Type), 32 (Width), input (Direction)
То есть для внешних сигналов решающим является опция new Conduit Input/Output в графе Interface, а также export в графе Signal Type.

Интересно, почему такое разночтение между quartusii_handbook.pdf для Q71 и Q72 в главе “Signal Tab”, а именно в Table 5–2. Valid Values for <Interface Type>. Где для Q71 был предопределитесь имени gls Global signals not associated to a specific Avalon-MM port, а потом в Q72 его не стало.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.