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

 
 
> Подход к проектированию систем на кристалле, Кто как делает?
Mad_max
сообщение May 19 2009, 13:11
Сообщение #1


Местный
***

Группа: Свой
Сообщений: 377
Регистрация: 23-12-06
Из: Зеленоград
Пользователь №: 23 811



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

С fpga работаю давно и реализовывал достаточно не простые проекты. Разработки были в области
цифровой обработкой видео: фильтрация, пороговая обработка, сегментация, всевозможные интерфейсы
как стандартизированные, так и свои собственные. Подход был следующий: работал в Active-HDL, соответственно
начинал с нуля, с разработки общего алгоритма работы схема и далее по порядку, заточенные под конкретные задачи,
шины, автоматы-арбитры, вычислительные блоки и все межблочные механизмы взаимодействия. В общем получалась
схема под выполнение определенной задачи.

В первом ознакомлении с системами на кристалле, натыкаешься на EDK как основной инструмент разработки.
Соответственно, предлагается принять данный подход как истину и дальше от него отталкиваться. Взять в нагрузку
использование предлагаемой архитектуры межблочного взаимодействия CoreConect ( тут хоть есть альтернатива, например,
wishbone, но все же). Принять, что центром в системе является процессор, хотя иногда это не всегда оправдано. Смирится с тем что,
используя предлагаемый в EDK подход подсоединения user logic, не одно действие в системе не происходит без ведома
поцессора (а что если от одного интерфейсного блока до другого мне надо Гбиты данных перекачивать)
и то что свою схему нужно обязательно сжать на PLB (иначе не понятно как ее подтянуть к проекту), да и вообще что нутря проекта максимально
отдаленны от разработчика (это как главный принцип работы винды, максимально защитится от действий юзира) приступить к разработке конечного продукта.

Есть конечно и свои преимущества у EDK, например, визарды для подключения к поцу внутренней и внешней памяти, хотя для опытного
разработчика, кто делал контроллеры памяти в системах без всяких там PPC, и это не вопрос. Ну и конечно главный плюс это волшебная утилита
на входе которой Си и hdl, а на выходе файл конфигурации.

Для Active-hdl есть библиотека, где PPC идет прямо отдельным библиотечным элементом. Данный путь разработки полностью своей системы на кристалле будет
конечно тернист и сложен, но зато тут сам себе хозяин. И главный вопрос как тут быть с программированием процессора?

В общем, хотелось бы порассуждать на данную тему, услышать мнение опытных разработчиков и вообще кто что по этому поводу думает.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
per_aspera_ad_as...
сообщение Jun 5 2009, 10:20
Сообщение #2


Участник
*

Группа: Участник
Сообщений: 27
Регистрация: 26-01-08
Из: Гусь-Хрустальный - Владимир
Пользователь №: 34 452



Существует два основных подхода это Implement Design in XPS и Implement Design in ISE.

В первом случае вы используете EDK, а что-то внешнее (ваши модули) подключаете как Peripheral к процессору.

Во втором наоборот, вы в свой VHDL/Verilog подключаете процесор как обычный модуль или IP-core, для работы с ним из ISE будет подгружаться EDK. Сигналы которые вы увидите в описании PPC как компонента, это external signal в EDK (все внутренние соединения, такие как память, MPMC, BRAM в ISE будут не видны).

Второй путь во всех документах помечен как - deprecated, но я так понял по вашему посту вас это совсем не смущает, а даже радует :-)

Вообще эта тема достаточно интересная и можно долго по этому поводу спорить. У нас тоже все разработчики только на ISE сидят и никакие маршруты (мировозрения) менять не хотят.

Сообщение отредактировал per_aspera_ad_astra - Jun 5 2009, 10:21


--------------------
За беспокойство не беспокойтесь.
Go to the top of the page
 
+Quote Post
rsv
сообщение Jun 17 2009, 18:41
Сообщение #3


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

Группа: Свой
Сообщений: 119
Регистрация: 16-07-07
Из: Тула
Пользователь №: 29 160



Цитата(per_aspera_ad_astra @ Jun 5 2009, 14:20) *
Существует два основных подхода это Implement Design in XPS и Implement Design in ISE.

Еще один есть подход (для богатых или ленивых) - использование System Generator for DSP. Там смысл такой: творишь в симулинке некую систему, а потом в нее импортируешь дизайн из XPS. После этого, прямо из симулинка, делаешь Implement Design придуманной тобой в симулинке системы и микропроцессороной системы. Там же описывается как будут общаться процессор и ваше IP ядро, а также генерятся драйвера.
В теории выглядит красиво, а на практике, как всегда, встречаются тонкости...
Go to the top of the page
 
+Quote Post



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

 


RSS Текстовая версия Сейчас: 24th July 2025 - 19:57
Рейтинг@Mail.ru


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