реклама на сайте
подробности

 
 
4 страниц V   1 2 3 > »   
Reply to this topicStart new topic
verali
сообщение Dec 22 2014, 08:38
Сообщение #1


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 6-11-14
Пользователь №: 83 540



Добрый день!
Собрал из IP ядер цифровой приемник (digital down converter).
Провел моделирование в ModelSim. Все хорошо, но есть НО!
В IP ядрах цифровых фильтров присутствуют входные и выходные сигналы для шины Avalon.
Из литературы я понял, что Avalon - универсальная шина для построения системы на кристалле.
Правильно ли я понимаю, что помимо прямого соединения компонентов цифровой обработки сигналов, их еще и надо связать этой шиной?
CIC фильтр так же требует входной сигнал с этой шины (in_valid(), .out_ready(), .in_error(). При моделировании я самостоятельно задавал эти сигналы.
Немного непонятно, зачем она нужна, направьте пожалуйста в правильную сторону.
Go to the top of the page
 
+Quote Post
Копейкин
сообщение Dec 22 2014, 09:06
Сообщение #2


Частый гость
**

Группа: Участник
Сообщений: 190
Регистрация: 7-11-07
Из: С-Петербург
Пользователь №: 32 134



Если вы для сборки системы используете QSYS или SOPC builder,
то соединения посредством шины Авалон будут сгенерированы автоматом.
Если есть несовместимость сигналов - будут выданы ошибки и предупреждения.
Если вы делали свой собственный компонент, то рекомендую использовать мастер,
для генерации шаблона.
Go to the top of the page
 
+Quote Post
verali
сообщение Dec 22 2014, 09:28
Сообщение #3


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 6-11-14
Пользователь №: 83 540



Цитата(Копейкин @ Dec 22 2014, 10:06) *
Если вы для сборки системы используете QSYS или SOPC builder,
то соединения посредством шины Авалон будут сгенерированы автоматом.
Если есть несовместимость сигналов - будут выданы ошибки и предупреждения.
Если вы делали свой собственный компонент, то рекомендую использовать мастер,
для генерации шаблона.

Для сборки системы я использовал Quartus. Делал step by step: последовательно соединял ip ядра и моделировал их.
Получается что данную системы (цифровой приемник) правильнее сделать в Qsys или Sopc builder?
Go to the top of the page
 
+Quote Post
Копейкин
сообщение Dec 22 2014, 10:27
Сообщение #4


Частый гость
**

Группа: Участник
Сообщений: 190
Регистрация: 7-11-07
Из: С-Петербург
Пользователь №: 32 134



Если вы планируете использовать шину Авалон и готовые IP
(типа NIOSII, DDR(1,2,3), Ethernet и т.п. ), то следует использовать Qsys или Sopc builder.
Для создания шаблонов компонентов и затем создания системы.
Также последняя версия Квартуса поддерживает не только Авалон.
Если вы создаёте собственную систему "с нуля" "врукопашную", то всё равно, что
использовать. wink.gif
Go to the top of the page
 
+Quote Post
Golikov A.
сообщение Dec 22 2014, 11:14
Сообщение #5


Гуру
******

Группа: Свой
Сообщений: 4 256
Регистрация: 17-02-06
Пользователь №: 14 454



у ксалинкса IP ядра могут быть 2 видов (выбираются при запихивании в проект) нативные и на AXI шину. Последняя если цеплять на проц микроблайз, для систем без проца, я брал нативные и работал с предоставленными сигналами. Может у альтеры есть что-то подобное?
Go to the top of the page
 
+Quote Post
verali
сообщение Dec 22 2014, 14:44
Сообщение #6


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 6-11-14
Пользователь №: 83 540



Цитата(Копейкин @ Dec 22 2014, 11:27) *
Если вы планируете использовать шину Авалон и готовые IP
(типа NIOSII, DDR(1,2,3), Ethernet и т.п. ), то следует использовать Qsys или Sopc builder.

А чем отличается Qsys от SOPC Builder?
Go to the top of the page
 
+Quote Post
Копейкин
сообщение Dec 22 2014, 16:53
Сообщение #7


Частый гость
**

Группа: Участник
Сообщений: 190
Регистрация: 7-11-07
Из: С-Петербург
Пользователь №: 32 134



Цитата(verali @ Dec 22 2014, 18:44) *
А чем отличается Qsys от SOPC Builder?

Версии Квартуса после 10 (если правильно помню), для построения систем, имеют в составе QSYS.
Более ранние - SOPC builder.
Go to the top of the page
 
+Quote Post
krux
сообщение Dec 22 2014, 18:29
Сообщение #8


Профессионал
*****

Группа: Свой
Сообщений: 1 700
Регистрация: 2-07-12
Из: дефолт-сити
Пользователь №: 72 596



Смотря что этой шиной делать.
Сигналы у вас streaming или memory-mapped?
Если надо данные через неё загонять куда-нибудь (может, например, в DDR2/3 ?) - это одно. Если надо по этой шине всего-лишь управление организовать - это другое.
Другими словами, нужно для начала понять - для чего она используется: для передачи данных или для управления?

Выходы видятся следующие:
1) если нужно гибкое управления - то напрашивается микроконтроллер, и, как следствие, Nios2, который в свою очередь, тянет qsys, который требует аккуратного заворачивания всех субмодулей в qsys-обёртки.
2) если гибкость не требуется, вы понимаете что и куда, и писать объемные компоненты не предвидится, а нарисовать небольшой конечный автомат для вас не проблема - то можно плюнуть на qsys, и наваять один-два недостающих компонента врукопашную.


--------------------
провоцируем неудовлетворенных провокаторов с удовольствием.
Go to the top of the page
 
+Quote Post
verali
сообщение Dec 23 2014, 09:56
Сообщение #9


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 6-11-14
Пользователь №: 83 540



Цитата(krux @ Dec 22 2014, 19:29) *
Смотря что этой шиной делать.
Сигналы у вас streaming или memory-mapped?
Если надо данные через неё загонять куда-нибудь (может, например, в DDR2/3 ?) - это одно. Если надо по этой шине всего-лишь управление организовать - это другое.
Другими словами, нужно для начала понять - для чего она используется: для передачи данных или для управления?

Выходы видятся следующие:
1) если нужно гибкое управления - то напрашивается микроконтроллер, и, как следствие, Nios2, который в свою очередь, тянет qsys, который требует аккуратного заворачивания всех субмодулей в qsys-обёртки.
2) если гибкость не требуется, вы понимаете что и куда, и писать объемные компоненты не предвидится, а нарисовать небольшой конечный автомат для вас не проблема - то можно плюнуть на qsys, и наваять один-два недостающих компонента врукопашную.

Задача такая:
На вход приемника (16 разрядный вход) приходит сигнал с АЦП . Управление планирую сделать по SPI.
Съем данных (квадратуры) планирую сделать тоже по SPI.
Не до конца понял назначение шины Avalon, требуется ли она для моего проекта, если управление идет по spi?


Решил в качестве получения доп.опытав пересобрать систему в Qsys.
Но есть одно НО:
почему то для Cyclone V недоступно ядро NCO и CIC фильтр.
 Р В Р’ Р’ Р в‚¬Р В РЎВ˜Р В Р’µР Р…ьшено Р Т‘Р С• 81%
Прикрепленное изображение
1680 x 1050 (265.59 килобайт)

Или требуется отдельная лицензия на эти ядра?
Стоит Quartus 14.0 Web Edition

Сообщение отредактировал verali - Dec 23 2014, 10:34
Go to the top of the page
 
+Quote Post
verali
сообщение Dec 24 2014, 07:09
Сообщение #10


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 6-11-14
Пользователь №: 83 540



Кто-нибудь соединял блоки DSP в Qsys?
Требуется отдельная лицензия на ip ядра в qsys, чтобы их активировать?
Go to the top of the page
 
+Quote Post
Копейкин
сообщение Dec 24 2014, 12:10
Сообщение #11


Частый гость
**

Группа: Участник
Сообщений: 190
Регистрация: 7-11-07
Из: С-Петербург
Пользователь №: 32 134



Цитата(verali @ Dec 24 2014, 11:09) *
Кто-нибудь соединял блоки DSP в Qsys?
Требуется отдельная лицензия на ip ядра в qsys, чтобы их активировать?

С этими блоками не сталкивался. laughing.gif
Другие TSE, DDR, NIOS позволяли собрать timelimited систему,
которая работала, пока к схеме подключен программатор или только 1 час.
Возможно с вашими IP есть какие-то нюансы, почитайте подробное описание.
Go to the top of the page
 
+Quote Post
verali
сообщение Dec 24 2014, 13:14
Сообщение #12


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 6-11-14
Пользователь №: 83 540



Цитата(Копейкин @ Dec 24 2014, 13:10) *
С этими блоками не сталкивался. laughing.gif
Другие TSE, DDR, NIOS позволяли собрать timelimited систему,
которая работала, пока к схеме подключен программатор или только 1 час.
Возможно с вашими IP есть какие-то нюансы, почитайте подробное описание.

Описание полностью идентично, как для ip ядра в Визарде, так и для ядра в qsys - они имеют только временные ограничения по работе.
Go to the top of the page
 
+Quote Post
serjj
сообщение Dec 25 2014, 08:49
Сообщение #13


Знающий
****

Группа: Участник
Сообщений: 527
Регистрация: 4-06-14
Из: Санкт-Петербург
Пользователь №: 81 866



В Quartus 14.1 для Cyclone V доступны перечисленные вами ядра. Если хотите использовать их через QSys, обновите софтину и все появится rolleyes.gif . Обратите внимание, что Авалон у фильтров имеет тип Streaming, тогда как у большинства компонентов (в т.ч. Nios) он Memory mapped. Соответсвенно, если вы хотите передать результат фильтрации/децимации в Nios для дальнейшей обработки, вам интерфейсы нужно будет согласовать, поставив преобразование Streaming-MM. SPI так же имеет интерфейс Memory mapped, следовательно что бы передать данные из SPI в NCO нужно будет реализовать преобразование MM-Streaming.
Go to the top of the page
 
+Quote Post
verali
сообщение Jan 3 2015, 12:23
Сообщение #14


Частый гость
**

Группа: Свой
Сообщений: 82
Регистрация: 6-11-14
Пользователь №: 83 540



Цитата(serjj @ Dec 25 2014, 09:49) *
В Quartus 14.1 для Cyclone V доступны перечисленные вами ядра. Если хотите использовать их через QSys, обновите софтину и все появится rolleyes.gif . Обратите внимание, что Авалон у фильтров имеет тип Streaming, тогда как у большинства компонентов (в т.ч. Nios) он Memory mapped. Соответсвенно, если вы хотите передать результат фильтрации/децимации в Nios для дальнейшей обработки, вам интерфейсы нужно будет согласовать, поставив преобразование Streaming-MM. SPI так же имеет интерфейс Memory mapped, следовательно что бы передать данные из SPI в NCO нужно будет реализовать преобразование MM-Streaming.

Спасибо за ответ!
Скажите пожалуйста зачем в ядре spi нужен сигнал data_in?
 Р В Р’ Р’ Р в‚¬Р В РЎВ˜Р В Р’µР Р…ьшено Р Т‘Р С• 48%
Прикрепленное изображение
612 x 255 (37.41 килобайт)
Go to the top of the page
 
+Quote Post
novartis
сообщение Jan 3 2015, 13:05
Сообщение #15


Местный
***

Группа: Свой
Сообщений: 375
Регистрация: 9-10-09
Из: Свердловский регион
Пользователь №: 52 845



Ваш slave spi должен возвращать мастеру какие-либо данные, вот для этого и нужна шина data_in.
Почитал документацию на эту корку, не понял как там данные складируются, надо вдаваться в тонкости, так что дерзайте.
Go to the top of the page
 
+Quote Post

4 страниц V   1 2 3 > » 
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 3rd July 2025 - 05:05
Рейтинг@Mail.ru


Страница сгенерированна за 0.01505 секунд с 7
ELECTRONIX ©2004-2016