Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: не удалось с разбегу quartus->sopc->nios ide проехать
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Системы на ПЛИС - System on a Programmable Chip (SoPC)
yes
просто наблюдение:

я не особо с EDK работал - нужно было встроеный PPC в FX запустить - за день дошел до работоспособности примера и за пару дней до работы нужной мне системы (но софт раздражает и подглюкивает)

попробовал ради эксперимента пройти Альтеровское флоу от идеи до работающей программы - не вышло:
вроде бы более правильно описано подключение железа (создание и подключение авалон-слейвов) но проект (темплейт "hello world!" со стандартными слейвами) таки не собрался - какие-то там депенденсы мэйк не нашел

не бывает полного счастья sad.gif
Stewart Little
Цитата(yes @ Aug 11 2009, 16:03) *

Репорт в студию!
Скорее всего чего-то в IDE забыли подключить.
yes
Цитата(Stewart Little @ Aug 11 2009, 16:33) *
Репорт в студию!
Скорее всего чего-то в IDE забыли подключить.


подозреваю, что цигвин как-то не так встал или всякие дурацкие виндовзные имена затесались
там же туториал есть степ-бай-степ

следует отметить, что эксперимент был под виндовс 7 - сейчас снесли эту каку, если будет и под ХР - тогда напишу
AlexanderX
А у меня получилось wink.gif
Egor_N
Вроде бы там у Альтеры не сложно, если внимательно вчитаться. У меня почти сразу получилось.
COMA
Попробуйте тут почитать. Много интересного.
http://www.nioswiki.com/
yes
поставил ХР - все заработало (видимо цыгвин для Вынь7 не работает)
да, нужно отметить, что NIOS SOPC+EDK сделаны поудобней ксайлинской EDK

в вопрос : есть ли для разных коров из SOPC проверочные тестовые приложения - ну там SDRAM | FLASH контроллеры и т.п., чтобы быстренько проверить, что работает?

-----------------

но про ксайлинкс нужно сказать, что PPC с CORECONNECT-ом все-таки более слложная система и задачи может решать, которые NIOS никак не потянет
vadimuzzz
Цитата(yes @ Sep 1 2009, 16:45) *
в вопрос : есть ли для разных коров из SOPC проверочные тестовые приложения - ну там SDRAM | FLASH контроллеры и т.п., чтобы быстренько проверить, что работает?

с китом обычно идут. ну и на фтп есть.

Цитата
но про ксайлинкс нужно сказать, что PPC с CORECONNECT-ом все-таки более слложная система и задачи может решать, которые NIOS никак не потянет

например?
Stewart Little
Цитата(yes @ Sep 1 2009, 13:45) *
но про ксайлинкс нужно сказать, что PPC с CORECONNECT-ом все-таки более слложная система и задачи может решать, которые NIOS никак не потянет

ЕМНИП, ППЦ у ксайлинкса - это, все-таки, хардовое ядро. И сравнивать его с ниосом2 не совсем корректно.
Сравнивать имеет смысл ниос2 с микроблейзом.
yes
Цитата(vadimuzzz @ Sep 1 2009, 15:44) *
с китом обычно идут. ну и на фтп есть.


а где точнее?

у меня не кит - собственная плата

конкретно нужно SDRAM и CFI FLASH, ну и для SSRAM CY7C1380

я предполагал, что есть что-то типа ксайлинского test_app - для каждой корки набор тестов (генерится в EDK автоматом).

---------------------

по поводу PPC - я сталкивался с тем, что мне 300МИПС-ов помогло (а РРС-шные МИПСы, подозреваю, пожирнее НИОСовых будут smile.gif )

ну а вообще там немеряный thrououtput по шинам ядра - для всяких "разбирателей" высокоскоросных потоков, имхо, вещь незаменимая
http://www.xilinx.com/support/documentatio...uides/ug200.pdf (5МБ)


Цитата(Stewart Little @ Sep 1 2009, 16:43) *
ЕМНИП, ППЦ у ксайлинкса - это, все-таки, хардовое ядро. И сравнивать его с ниосом2 не совсем корректно.
Сравнивать имеет смысл ниос2 с микроблейзом.


в защиту их софта можно сказать - тащат два ядра все-таки (по два симулятора, по два набора драйверов и т.п.), ну и вся шинная фигня из-за coreconnect-a достаточно сложная
но это не извиняет кривизны UI - с тем же цигвином - они его как-то так хитро ставят, что умирает не ксайлинский цигвин и т.п., а достаточно пару переменных правильно определить и все будет ОК

про НИОС - я не считаю, что простота это плохо для технических решений, важно, что сделано хорошо и не глючит.
а сравнить можно не только с блейзом, но и с LatticeMico32 - имхо, даже больше общего (Wishbone)
однозначно NIOS удобнее

------------------

а практический вопрос по поводу тестов : что-то я не нашел ничего
самому писать или где-то добыть?

задача сейчас железку проверить - шины памяти всякое остальное... быстро...
Stewart Little
Цитата(yes @ Sep 1 2009, 17:38) *
у меня не кит - собственная плата
конкретно нужно SDRAM и CFI FLASH, ну и для SSRAM CY7C1380

задача сейчас железку проверить - шины памяти всякое остальное... быстро...

Тестовые проекты живут в NiosII EDS - папки ..\examples\verilog и ..\examples\vhdl.
Если нужно сделать быстро, я рекомендовал бы посмотреть там : http://www.nioswiki.com/Cyclone_III_-_Nios...-_Starter_board
Там все сделано пот третий циклон - сделайте все то же самое под Ваш стратикс, и будет Вам счастье smile.gif
vadimuzzz
Цитата(yes @ Sep 1 2009, 20:38) *
по поводу PPC - я сталкивался с тем, что мне 300МИПС-ов помогло (а РРС-шные МИПСы, подозреваю, пожирнее НИОСовых будут smile.gif )
ну а вообще там немеряный thrououtput по шинам ядра - для всяких "разбирателей" высокоскоросных потоков, имхо, вещь незаменимая
http://www.xilinx.com/support/documentatio...uides/ug200.pdf (5МБ)

МИПСы гиганта мысли спасают до поры до времени. всегда найдется задача, где и 300 будет мало smile.gif тут главное вовремя унюхать тенденцию и перекинуть вычисления/разбор потоков/что-там-еще на периферию. пусть ядро только прерывания ловит.
yes
Цитата(Stewart Little @ Sep 1 2009, 18:44) *
Тестовые проекты живут в NiosII EDS - папки ..\examples\verilog и ..\examples\vhdl.
Если нужно сделать быстро, я рекомендовал бы посмотреть там : http://www.nioswiki.com/Cyclone_III_-_Nios...-_Starter_board
Там все сделано пот третий циклон - сделайте все то же самое под Ваш стратикс, и будет Вам счастье smile.gif


да с железом все замечательно - работает, "хело ворд" пишет, светодиодом мигает и т.п.

я пытаюсь понять - есть ли софт для поддержки железа? ну то есть что-то типа драйвера, если это можно так назвать, или набора утилит (в виде функций API)

ну для SDRAM-а - проинициализировать, погонять бегущий 0/1 и т.д.
для флашки - прочитать CFI, стереть/записать блок и т.п.

это все несложно, но уйму времени забирает - поэтому хочется нахаляву.


Цитата(vadimuzzz @ Sep 1 2009, 20:24) *
МИПСы гиганта мысли спасают до поры до времени. всегда найдется задача, где и 300 будет мало smile.gif тут главное вовремя унюхать тенденцию и перекинуть вычисления/разбор потоков/что-там-еще на периферию. пусть ядро только прерывания ловит.


есть, имхо, простой принцип, которому должен следовать и стар и млад smile.gif - пока что-то можно посчитать процессором, считать процессором, а в ПЛИС засовывать то, что уже никак в процессор не лезет
следование этому принципу сильно экономит время и деньги

и как следствие - более мощный процессор всегда хорошо

ну и по потреблению процессорное решение обычно лучше ПЛИСового
vadimuzzz
Цитата(yes @ Sep 2 2009, 19:28) *
да с железом все замечательно - работает, "хело ворд" пишет, светодиодом мигает и т.п.

я пытаюсь понять - есть ли софт для поддержки железа? ну то есть что-то типа драйвера, если это можно так назвать, или набора утилит (в виде функций API)

ну для SDRAM-а - проинициализировать, погонять бегущий 0/1 и т.д.
для флашки - прочитать CFI, стереть/записать блок и т.п.

это все несложно, но уйму времени забирает - поэтому хочется нахаляву.

есть HAL (hardware abstraction layer). все описано в 5 томе квартус-хендбука. коды открыты, можно поковыряться там.


Цитата
есть, имхо, простой принцип, которому должен следовать и стар и млад smile.gif - пока что-то можно посчитать процессором, считать процессором, а в ПЛИС засовывать то, что уже никак в процессор не лезет
следование этому принципу сильно экономит время и деньги

и как следствие - более мощный процессор всегда хорошо

ну и по потреблению процессорное решение обычно лучше ПЛИСового

не согласен smile.gif. чтобы поиметь ниос на ~300 мипс нужен стратикс (сравните цены с циклонами). а если вынести тупые(fft, например), но вычислительно сложные задачи из ядра на периферию, то выяснится, что и 50 мипс хватает. так что экономия тут спорная, тут скорее человеческий фактор - пристрастия ведущего разработчика wink.gif
yes
Цитата(vadimuzzz @ Sep 3 2009, 16:24) *
есть HAL (hardware abstraction layer). все описано в 5 томе квартус-хендбука. коды открыты, можно поковыряться там.
-----------
не согласен smile.gif. чтобы поиметь ниос на ~300 мипс нужен стратикс (сравните цены с циклонами). а если вынести тупые(fft, например), но вычислительно сложные задачи из ядра на периферию, то выяснится, что и 50 мипс хватает. так что экономия тут спорная, тут скорее человеческий фактор - пристрастия ведущего разработчика wink.gif


да, спасибо, до HAL API Reference я добрался,
еще в software examples есть memtest

------------------

а что за C2H компилер - он входит в квартус/ниос стандартный пакет или ставится отдельно?

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

но чем бюджетнее продукт (то есть удешевление компонентов важно) тем меньше вероятность использования софт-ядер.

недавно, например, спрашивали меня - а можно ли кэн контроллер засунуть в Латтисовскую ПЛИС (XP2-8) - я отвечал - да пожалуйста, хоть десять
а потом синтезировал, отплейсил как отдельный модуль - так этот CAN отъел почти четверть ПЛИС. то есть бюджетнее будет поставить какой-нибудь PIC с кэном
просто раньше разворачивал микропроцессорные системы в ПЛИСинах другого калибра - самая маленькая раз в 20 больше - поэтому и считал, что этот кэн занимает меньше процента

другое дело когда старшие стратиксы/виртексы в каких-то экспериментальных целях - ну там продвинутые DSP алгоритмы или новые архитектуры (например видеоаксератора) отлаживать - там проще внутрь ядро засунуть
тут и всякие "хитрые" тулзы типа c2h или матлаба тут могут пригодится
vadimuzzz
c2h - это примерно то, о чем я писал (только я ручками делаю, и б.м. зря) www.altera.com/literature/ug/ug_nios2_c2h_compiler.pdf

может "расшить" следующие узкие места:
Цитата
Parallel scheduling – The C2H Compiler recognizes events that can
occur in parallel. Independent statements are performed
simultaneously in hardware.

Direct memory access – Accelerators access the same memories that
the Nios II processor does during execution.

Loop pipelining – The C2H Compiler pipelines the logic
implemented for loops, based on memory access latency and the
amount of code that operates in parallel.

Memory access pipelining – The C2H Compiler pipelines memory
accesses to reduce the effects of memory latency.


... и что можно не делать:
Цитата
Increasing clock speed

Upgrading to a processor with higher Dhrystone MIPS-per-megahertz performance

Coding critical sections of software in assembly language


короче, из некоторых шаблонов кода на C создает компоненты для SOPC, которые можно задействовать ниосом.
да, все идет с квартусом в комплекте.
yes
Цитата(vadimuzzz @ Sep 5 2009, 04:34) *
c2h
--------


а практическая доступность тула?

то есть - встроеный в квартус(ниос) с2н генерит нормальное железо или ограниченное (ну, например, таймер внутри, который после определенного числа клоков блокирует функциональность акселератора)?

какая лицензия нужна для с2н?
нужно ли дополнительный софт или при наличии лицензии работать начинает то, что встроено в квартус(ниос)?
vadimuzzz
Цитата(yes @ Sep 8 2009, 18:06) *
какая лицензия нужна для с2н?
нужно ли дополнительный софт или при наличии лицензии работать начинает то, что встроено в квартус(ниос)?

софта вроде не надо
https://mysupport.altera.com/lic/lic-ipm-pu...ed.asp?prod=n2h
или к Stewart_Little smile.gif
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.