Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Связь количества вентилей на ПЛИС с объемом задачи.
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Работаем с ПЛИС, области применения, выбор
Igel
Собственно - как оценить и прикинуть что брать? smile.gif
Есть задача, в цифре с аналоговой частью, с процессором, парочкой интерфейсов, ускорителями и памятью. Вот и интересно, как выбрать ПЛИС подходящего объема.
KykyryzzZ
Прежде всего нужно подсчитать сколько ножек ПЛИС вам понадобится занять под связи с внешними элементами.
Когда определитесь, можно и объем прикинуть, только для этого нужно хотябы приблизительно знать что там будет реализовываться
Igel
Цитата(KykyryzzZ @ Apr 5 2006, 10:13) *
Прежде всего нужно подсчитать сколько ножек ПЛИС вам понадобится занять под связи с внешними элементами.
Когда определитесь, можно и объем прикинуть, только для этого нужно хотябы приблизительно знать что там будет реализовываться


Там будет что-то типа микроконтроллера с расширеными функциями.
Насчет ножек, тут сложнее, 44 - это точно, это выводы микроконтроллера (с учетом размерности входных портов). А вот с аналоговой частью - не знаю, по идее, она не должна увеличить количества ножек. Если я реализовываю фильтр входного напряжения, то от него в ПЛИС там и пойдет всего 1 сигнал CLK, если я не ошибаюсь.
KykyryzzZ
Цитата(Igel @ Apr 5 2006, 10:26) *
Там будет что-то типа микроконтроллера с расширеными функциями.
Насчет ножек, тут сложнее, 44 - это точно, это выводы микроконтроллера (с учетом размерности входных портов). А вот с аналоговой частью - не знаю, по идее, она не должна увеличить количества ножек. Если я реализовываю фильтр входного напряжения, то от него в ПЛИС там и пойдет всего 1 сигнал CLK, если я не ошибаюсь.

Так может проще действительно подыскать какой-нибудь микроконтроллер вместо ПЛИС? И интерфейсы реализовывать не придется, и встроенную аналоговую часть подходящую подобрать можно, да и по цене меньше выйти должно...
В общем советую МК посмотреть, ну а если всетаки ПЛИС, то на WWW.OPENCORES.ORG можно разные ядра контроллеров посмотреть, взять их вес, и прикинуть примерно требуемый объем
o-henry
Если время не сильно поджимает, лучше заранее попытаться реализовать макетный проект обработки на FPGA в среде Xilinx ISE (или альтеровской) . Посмотреть в какую FPGA влазит такой проект и заказать микросхему в два раза больше smile.gif
Если время поджимает - то заказывать ту микросхему, которую позволяет бюджет.
iosifk
Цитата(Igel @ Apr 5 2006, 09:52) *
Собственно - как оценить и прикинуть что брать? smile.gif
Есть задача, в цифре с аналоговой частью, с процессором, парочкой интерфейсов, ускорителями и памятью. Вот и интересно, как выбрать ПЛИС подходящего объема.


Попробуйте прочитать о "Гайке М3" у меня на сайте.
Когда определитесь с требуемыми в FPGA ресурсами - просто скомпилите проект, привязанный к гипотетической плате. И помните, что для первого проекта надо брать FPGA с большим запасом. Потом, в серию на это место можно будет паять микросхемы с меньшей начинкой. А при отладке первого проекта очень удобно встраивать лог анализатор прямо в FPGA. И об этом тоже и там же найдите статью. Или можно пользоваться лог анализаторами, встроенными в "родное" ПО.
Потом, как Вам уже сказали, микроконтроллер будет всегда дешевле, чем FPGA.
Удачи!
Igel
Спасибо за советы.
Насчет того, чтобы взять какой-нибудь микроконтроллер - вариант не подходит. Надо создать именно макет в ПЛИС со всеми цифровыми блоками. И его тестировать.
А так, мне интересен вопрос как прикинуть количество логических вентелей. Т.е., к примеру, один из блоков - процессор, совместимый с 51-м. Сколько от может весить в размерности вентелей. И как это подсчитывается, только после компиляции описания в гипотетическую плату или можно заранее сказать размер?
vetal
Процессор, совместимый с 51, будет весить примерно 2500-4000 LUT (В зависимости от функциональности и требованиям к быстродействию).
Подсчитывается это путем синтеза готового проекта и анализа его результатов.
o-henry
Цитата(Igel @ Apr 5 2006, 14:04) *
Спасибо за советы.
А так, мне интересен вопрос как прикинуть количество логических вентелей. Т.е., к примеру, один из блоков - процессор, совместимый с 51-м. Сколько от может весить в размерности вентелей. И как это подсчитывается, только после компиляции описания в гипотетическую плату или можно заранее сказать размер?

Тогда, как сказал KykyryzzZ, вам прямая дорога на OPENCORES.
Выберите там подходящее ядро процессора, скачайте и попробуйте синтезировать например в ISE.
В отчете по синтезу и посмотрите, сколько ядро занимает.
К тому же на OPENCORES народ часто пишет в какой FPGA тестировался проект и сколько ресурсов он при этом съедал.
Igel
Ясно, спасибо
des00
Цитата(Igel @ Apr 5 2006, 09:20) *
Ясно, спасибо

рекомендую посетить сахару, так как раз дебаты по поводу процов в плис.
3.14
2 Igel
А я бы Вам не советовал связываться с различными FPGA реинкарнациями микроконтроллеров. Произодители (Xilinx и Altera) создают оптимизированные процессорные ядра (MicroBlaze и Nios) на свои FPGA (если залезть внуть его потрохов то там практически межсоединения "технологических" элементов а не описание автомаов) в результате это весит меньше и быстрее работает. К тому же полный комплект софта для разработки и отладки имеется (и даже порты линуха). Основная заковырка будет в доступе к памяти команд, например, 50MIPS-овый MicroBlaze запрсто превратится в 1MIPS-овый при работе из SDRAM, без специальных мер.
Ну а по поводу ресурсов, например, в Spartan3-200 (2500slices) влез MicroBlazev4(4k ICACHE, 8k DCACHE), 2 UART, EthernetLite, GPIO, Timer, Interrupt controller, SDRAM controller.
vladec
Если решаемых задач требующих контроллерной обработки несколько, может быть имеет смысл скомпонавать их на нескольких маленьких микроконтроллерных ядрах, типа например, PicoBlaze. На каждую задачу по своему контроллеру. Эти контроллеры занимают очень мало ресурсов и при этом существенно упростится написание программы и отладка.
des00
Цитата(vladec @ Apr 6 2006, 00:52) *
Если решаемых задач требующих контроллерной обработки несколько, может быть имеет смысл скомпонавать их на нескольких маленьких микроконтроллерных ядрах, типа например, PicoBlaze. На каждую задачу по своему контроллеру. Эти контроллеры занимают очень мало ресурсов и при этом существенно упростится написание программы и отладка.



у пикоблейза ИМХО косяк есть, 16 бит арифметика плохо ложиться.
вот если бы был пикоблейз8 и пикоблейз16 да еще и с конвеером вот тогда было бы счастье smile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.