Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Как поднять uClinux ...
Форум разработчиков электроники ELECTRONIX.ru > Cистемный уровень проектирования > Операционные системы
Страницы: 1, 2
3.14
Этот модуль общается с внешним миром через UART, никаких дров нет.
Мультикорка никак не поживает, т.к. нет особой мотивации, в спартан-200 итак все необходимое влазит, к тому же прийдется писать не драйвера а патчить ядро, которое и без того не реже раза в месяц меняеся.
Насчет спартана3Е-500, дык все давно гораздо оптимистичнее - спартан3-400 (TQ144) стоит ~15$ (я на него кстати плату и развел).
Evgeny_CD
Цитата(3.14 @ Mar 17 2006, 17:52) *
Этот модуль общается с внешним миром через UART, никаких дров нет.
Мультикорка никак не поживает, т.к. нет особой мотивации, в спартан-200 итак все необходимое влазит, к тому же прийдется писать не драйвера а патчить ядро, которое и без того не реже раза в месяц меняеся.
Насчет спартана3Е-500, дык все давно гораздо оптимистичнее - спартан3-400 (TQ144) стоит ~15$ (я на него кстати плату и развел).
TQ144 - а пинов не маловато ли будет? SDRAM 16 битный? А 32 битный можно прикрутить? А то жаль - на ровном месте заметная часть производительности теряется.

Ethernet MAC, насколько я понимаю, в этой конфигурации нет? Какие вообще контроллеры в 200 удалось запихнуть? И какая модификация Microblaze?
3.14
Пинов в 144 достаточно (SDRAM, PHY, 4 UART (RX,TX.RTS,CTS), NANDflash, MMC, + 3 линии для контроллера "закрывашки"/менеджера питания), я считаю, что излишне использовать 32х SDRAM, думаю реальная производительность увеличится на ~10%.
В спартан3-200 влезло:
microblaze v4, (8к кеш инструкций, 4к кеш данных, остальные фишки по минимуму), ethernetLite корка, тиаймер и контроллер SDRAM (естественно), 2 UART-а, еще порты ввода-вывода (через них я MMC подключил).
Evgeny_CD
Цитата(3.14 @ Mar 17 2006, 21:53) *
...я считаю, что излишне использовать 32х SDRAM, думаю реальная производительность увеличится на ~10%...
Может быть. Размер кеш лайна с размером burst совпадает? Интересно, а если DDR контроллер прикрутить - он влезет в 200?
Цитата(3.14 @ Mar 17 2006, 21:53) *
В спартан3-200 влезло:
microblaze v4, (8к кеш инструкций, 4к кеш данных, остальные фишки по минимуму), ethernetLite корка, тиаймер и контроллер SDRAM (естественно), 2 UART-а, еще порты ввода-вывода (через них я MMC подключил).
Хорошо! Вот если в 400 влезет +
* DMA
* Ethernet c DMA
* UART с FIFO
* Контроллер NAND или MMC с DMA (чтобы сразу блок в память перегонять без участия CPU)

Будет просто рулез!
3.14
У корки контрполлера SDRAM имеется опция поддержки burst mode, но у меня он выключен, насколько он будет эффективен, сказать не могу. Не уверен, но думаю что контроллер DDR в спартан3-200 не влезет (при той же конфигурации).

Полноценная корка EthernetMAC весит ~2000 слайсов (по памяти), например емкость спартана3-200 = 2500 слайсов, думаю этим самым она теряет привлекательносить.
UART и так идет с FIFO (16).
Контроллера MMC в EDK нет.
Насколько знаю NANDflash подключается просто к обычному контроллеру внешней памяти, не помню чтоб он поддерживал DMA.
Evgeny_CD
Цитата(3.14 @ Mar 19 2006, 22:48) *
У корки контрполлера SDRAM имеется опция поддержки burst mode, но у меня он выключен, насколько он будет эффективен, сказать не могу. Не уверен, но думаю что контроллер DDR в спартан3-200 не влезет (при той же конфигурации).
Хм... Насколько я понимаю в колбасных обрезках, burst может в случае кеша сильно поднять производительность. Бог с ним, с DDR, но вот интересно бы bust SDR включить, и сравнить, сколько bogo MIPS показывает с ним и без него.
Цитата(3.14 @ Mar 19 2006, 22:48) *
Полноценная корка EthernetMAC весит ~2000 слайсов (по памяти), например емкость спартана3-200 = 2500 слайсов, думаю этим самым она теряет привлекательносить.
Да, в баню. Интересно, есть ли готовый DMA контроллер, и сколько он весит?
Цитата(3.14 @ Mar 19 2006, 22:48) *
UART и так идет с FIFO (16).
Ну хоть тут можно спать спокойно.
Цитата(3.14 @ Mar 19 2006, 22:48) *
Контроллера MMC в EDK нет.
О да, это страшный буржуйский © - за 25k$ продают (узнавал.) Понятно, что его придется ручками писать.
Цитата(3.14 @ Mar 19 2006, 22:48) *
Насколько знаю NANDflash подключается просто к обычному контроллеру внешней памяти, не помню чтоб он поддерживал DMA.
А он и не должен ничего про DMA знать. Для него это просто обращение по внейшней шине.

За DMA я воюю вот почему. При слабеньком проце оно может сильно поднять производительность системы на блочных пересылках. Тем более тут такая лафа - можно делать custom IO модули, и по DMA качать ( в | из ) память...
3.14
Сейчас на сравнения режимов работы SDRAM корки нет времени, потом (когда плату соберу) обязательно проверю.
Готового контроллера DMA в EDK7.1 нет, но ограничений в плане мультимастерности на штине OPB нет, так что он должен появится.
Насчет MMC, я бы вообще от нее отказался - медленная (в добавок, банальный геморой - сокет не найти), но от меня ее требуют.
DMA это конечно хорошо, но линух на microblaze как ни крути штука тормозливая (да наверное и на любом проце его веса), можно будет посинеть при отладке корок и написания драйверов (последнее просто травма для психики (моей smile.gif)) а производительности все равно не получить.
Evgeny_CD
Нда, как-то Вы не радостно все это рассказываете. Сколько сейчас девайс bogo MIPS показывает?

В общем, похоже, проще AT91RM9200 взять (+ линух с готовыми дровами; берется в партиях за 15$) + 200 спартан ему на шину для специфических контроллеров. Дороже на 10$, зато море времени и сил сэкономится.

Видомо, чтобы всерьез этими софтпроцами заниматься, надо иметь коллектив (ну и машины мощные - чтобы тулзы ксиловые летали).
3.14
Ну богомипсы и так почти на теоретическом пределе >24.
Насчет необходимого коллектива трудно сказать, я все по вечерам/ночам сижу, еслиб проект висел основной задачей наверяка я бы говорил с большим оптимизмом.
Насчет вычислителя, никакой машины не хватит чтоб EDK/ISE "летал", можно только сократить, в пределах бюджета, мучительное время ожидания.
Мне в плане uCLinux BlackFin-ы эмпонируют, может когда займусь.
Единственное что смущает, внешняя SDRAM/DDR и предпологаемая периферия в FPGA будут сидеть на одной шине и на частотах за 100М думаю будут проблемы с разводкой.
Evgeny_CD
Коллектив нужен хотя бы потому, что Linux софтописатель и FPGA хакер - это сильно разная "настройка мозгов". Трудно одному человек переключаться.

Да, когда шина под SRAM совмещена с шиной данных - это злобит по многоим причинам (прежде всего, сильное падение эффективности DMA). Но увы - правильных процов мало. Из распространенных это многие MIPS (в том числе от AMD), да Philips в LPC3000 обещает.

У блекфинов еще PPI есть - иногда может помочь.
Evgeny_CD
Цитата(3.14 @ Mar 17 2006, 18:52) *
Насчет спартана3Е-500, дык все давно гораздо оптимистичнее - спартан3-400 (TQ144) стоит ~15$ (я на него кстати плату и развел).
Интересно, а где спартан3-400 (TQ144) берется по 15 и в каких объемах?
3.14
Из прайса www.xilinx.ru (про объемы не знаю).
Evgeny_CD
Цитата(3.14 @ Mar 28 2006, 15:06) *
Из прайса www.xilinx.ru (про объемы не знаю).
Понял! Мне зато только что предложили EP2C8Q208C8 по $20,88 (с НДС, в малых партиях), он вроде как по ресурсам больше S3-400, вот я сижу и думаю, что лучше взять для JPEG кодека (основанного на http://www.opencores.org/projects.cgi/web/jpeg/overview). Сорри за bb-offtopic.gif
KA_ru
EP2C8Q208C8
odnoznachno esli ne xotite sami mnogo pravit' smile.gif
Evgeny_CD
Цитата(KA_ru @ Mar 28 2006, 17:11) *
EP2C8Q208C8
odnoznachno esli ne xotite sami mnogo pravit' smile.gif
Так я не понял, Вы за EP2C8 или против? Тот проект на опенкорес - он на Virtex (хотя ничего особого там не использовано). Там есть корки DCT, сгенеренные ксиловой тулзой. Интересно, насколько это сложно перетащить на Cyclone-II? Там, наверное, тоже DCT корка есть.
Evgeny_CD
1. Вроде появился Spartan-3E Starter Kit (HW-SPAR3E-SK-US)
http://www.xilinx.com/xlnx/xebiz/designRes...yNavPick=BOARDS

соотношение цены и ресурсов просто завораживает biggrin.gif

2. А нет ли на эту чудо плату уже готового дистрибута uClinux? Т.е. чтобы просто по инструкции все сделать - и оно забутилось....

Пока единственный известный мне готовый кит Microblaze и uClinux - это
http://www.atmark-techno.com/en/products/suzaku

Берется, например, здесь
http://shop.trenz-electronic.de/catalog/pr...=66&language=en
http://shop.trenz-electronic.de/catalog/pr...&products_id=65

Конечно, 200 евриков - это уже терпимо, чтобы "пощупать" uClinux на Microblaze. Но 200$ за HW-SPAR3E-SK еще приятнее : biggrin.gif Тем более, что ресурсов у HW-SPAR3E-SK гораздо больше...
3.14
>> Is it the XCS500E Starter kit that you have the uClinux running on?
>
> Yes, I am using HW-SPAR3E-SK-J (Spartan-3E Starter Kit,
> For Japan version).
>
> This kit includes the board of the Spartan-3E (XC3S500E-4FG320C).
> (the board is Rev.D)
>
> - My Sample Project of the XPS. (include uClinux image)
> http://muranaka.info/xilinx/edk/s3esk/s3eb...ready_rev01.zip
>
> - EDK 8.1.01i Project Report of above.
> http://muranaka.info/xilinx/edk/report/system.html
Evgeny_CD
Цитата(3.14 @ Apr 28 2006, 00:39) *
> - My Sample Project of the XPS. (include uClinux image)
> http://muranaka.info/xilinx/edk/s3esk/s3eb...ready_rev01.zip
>
> - EDK 8.1.01i Project Report of above.
> http://muranaka.info/xilinx/edk/report/system.html
a14.gif Это из мейл листа uClinux? Подписаться чтоль...

Я немного погуглил - и не нагуглилось.

Кстати, центровое место по теме - это оно?
http://www.itee.uq.edu.au/~jwilliams/mblaze-uclinux/
3.14
Извини за задержку, центровое мосто наидено правильно.
А на майллист можно и не подписываться, вот его веб версия http://www.itee.uq.edu.au/~listarch/microblaze-uclinux/ .
Evgeny_CD
Цены на кит прислали
HW-SPAR3E-SK-US Xilinx 1шт $196,43 3-4 недели Базис цен и сроков: склад Москва.
Так что я правильно цену тут оценил biggrin.gif

Так что можно потихоньку начинать тренироваться.

И хотя тема uClinux Microblaze пока вызывает у меня суеверный ужас, идея изготовления "умной" периферии для внешнего проца на Picoblaze внутри FPGA мне жутко нравится! При правильном подходе можно съкономить массу времени для "основного" проца.

Спасибо за ответы по листу.
Dainis
Есть новая версия
http://muranaka.info/xilinx/edk/s3esk/s3eb...ready_rev02.zip

Заработал smile.gif
Linux version 2.4.32-uc0 (muranaka@colinux) (gcc version 3.4.1 ( Xilinx EDK 8.1 Build EDK_I.17 121005 )) #2 Mon Apr 24 00:43:06 JST 2006
On node 0 totalpages: 8192
zone(0): 8192 pages.
zone(1): 0 pages.
zone(2): 0 pages.
CPU: MICROBLAZE
Kernel command line:
Console: xmbserial on UARTLite
Calibrating delay loop... 32.56 BogoMIPS
Memory: 32MB = 32MB total
Memory: 29868KB available (1134K code, 1402K data, 52K init)

......

s3esk login: root
Password:
# ifconfig eth0 192.168.205.1
# ping 192.168.205.205
PING 192.168.205.205 (192.168.205.205): 56 data bytes
64 bytes from 192.168.205.205: icmp_seq=0 ttl=128 time=8.9 ms
64 bytes from 192.168.205.205: icmp_seq=1 ttl=128 time=2.8 ms

--- 192.168.205.205 ping statistics ---
2 packets transmitted, 2 packets received, 0% packet loss
round-trip min/avg/max = 2.8/5.8/8.9 ms
#
Evgeny_CD
Цитата(Dainis @ May 2 2006, 20:17) *
Calibrating delay loop... 32.56 BogoMIP
Однако проц малость турбировали (или это эффект E серии). 3.14 говорил о 25 BogoMIPS. Прогресс идет, что радует!
3.14
Видимо там 65МГц генератор, на постом стартере 50.
Я детально не ковырялся, но на теперешней плате Spartan3-400, система разводится на 80МГц. Тут сильно от периферии зависит (как написана), например на ранних стадиях экспериментов с микроблейзом я разгонял систему и до 100МГц. К тому же никто не мешает на все это хозяйство PlanAhead натравить ...

Кстати, а что на этой плате в качестве Ethernet MAC?
Там своя корка с драйвером или они свой драйвер на EthernetLite написали. Дело в том что пока "официального" драйвера на EthernetLite нет, зимой с помощью makс-а я чего то родил, но в итоге все очень медленно получилось (порядка десятков килобайт в сек.). Я своими ламерскими попытками вдохновил идеолога порта Джона Вильямса и он склепал заготовку но доводить до ума не стал (по моему она вообще никак не функционирует).
Evgeny_CD
Цитата(3.14 @ May 2 2006, 22:50) *
...Кстати, а что на этой плате в качестве Ethernet MAC?...
http://muranaka.info/xilinx/edk/report/ds_...l#_Ethernet_MAC
Ethernet_MAC OPB 10/100 Ethernet MAC
'IEEE Std. 802.3 MII interface MAC with OPB interface, full implementation'

Размером с сам проц...
Dainis
Цитата(3.14 @ May 2 2006, 21:50) *
Видимо там 65МГц генератор, на постом стартере 50.
Я детально не ковырялся, но на теперешней плате Spartan3-400, система разводится на 80МГц. Тут сильно от периферии зависит (как написана), например на ранних стадиях экспериментов с микроблейзом я разгонял систему и до 100МГц. К тому же никто не мешает на все это хозяйство PlanAhead натравить ...


Генератор у меня на столе 50MHz, но уменя есть подозрение что CPU работает на 66MHz.
# System clock frequency: 66.666667 MHz

Ещо у меня есть вопрос как ролучить соурс от EDK Ethernet корки, соурс лицензия имеется???
Проектном подкатологе только пишется крыптованные VHDL фаилы.

Запуск uCLinux мой первый эксперимент c FPGA smile.gif


# Created by Base System Builder Wizard for Xilinx EDK 8.1.01 Build EDK_I.19.5
# Fri Apr 14 00:30:24 2006
# Target Board: Xilinx Spartan-3E Starter Board Rev D
# Family: spartan3e
# Device: XC3S500e
# Package: FG320
# Speed Grade: -4
# Processor: Microblaze
# System clock frequency: 66.666667 MHz
# Debug interface: On-Chip HW Debug Module
# Data Cache: 8 KB
# Instruction Cache: 2 KB
# On Chip Memory : 8 KB
# Total Off Chip Memory : 48 MB
# - FLASH_16Mx8 = 16 MB
# - DDR_SDRAM_32Mx16 = 32 MB
3.14
Как лицезии получать, это в соответсвующем разделе форума. Но думаю, люди добрые пока этим не занимались, в EDK при смене патча приходится лицензии менять (хотя может я что упустил).

После того как сможете декриптовать, просто замените криптованные файлы на декриптованные и творите с потрохами что душе угодно (если времени не жалко smile.gif).
3.14
Ребята, хорошие новости.
Я собрал драйвер EthernetLite что был создан Джоном Вильямсом, скорость скачивания с платы из корневой файловой системы (SDRAM) составила 330кБайт. Вот правда в обратную сторону всего 20к.
Еще я приделал простенькую SPI корку и через нее подружил uClinux с MMC картой, скорость сливания через ftp с карты составила 220кбайт.
Еще, дистрибутивы самого линуха стали более "человеческие". Я с месяц назад скачал сам дистрибутив и обновил его через CVS, единственное что пока пришлось отпатчить это insmod. Крайний раз когда я этим ханимался (осень) мне пришлось поправить несколько makefile и какой-то конфигурационный файл, сами понимаете все это сопровождалось сильным душевным растройством. Еще раньше EDK (вернее uClinux BSP) не мог родить auto-config.in (конфиг файл железячного содержимого) если не выполнялся целый ряд условий (нет flash, не указана LBM и т.п.), мне приходилось его руками глядя на примеры лепить, а сейчас милое дело smile.gif
Dainis
Цитата(3.14 @ May 3 2006, 22:45) *
Как лицезии получать, это в соответсвующем разделе форума. Но думаю, люди добрые пока этим не занимались, в EDK при смене патча приходится лицензии менять (хотя может я что упустил).

После того как сможете декриптовать, просто замените криптованные файлы на декриптованные и творите с потрохами что душе угодно (если времени не жалко smile.gif).


>> Ещо у меня есть вопрос как ролучить соурс от EDK Ethernet корки, соурс лицензия имеется???
>>Проектном подкатологе только пишется крыптованные VHDL фаилы.

Так и ничево и непонял, полную FLEXLM лицензию я установыл и лицензия работает, но што надо делать штоб получить нормальный VHDL ?
makc
Цитата(Dainis @ May 25 2006, 01:50) *
>> Ещо у меня есть вопрос как ролучить соурс от EDK Ethernet корки, соурс лицензия имеется???
>>Проектном подкатологе только пишется крыптованные VHDL фаилы.

Так и ничево и непонял, полную FLEXLM лицензию я установыл и лицензия работает, но што надо делать штоб получить нормальный VHDL ?


В EDK даже полная лицензия не дает исходников в чистом виде. Только возможность использования.
3.14
Зацените мою мазербоард smile.gif
aaarrr
Внушает. Особенно количество интерфейсов - GSM, GPS, Wi-Fi, Ethernet, USB, SD... ничего не забыл?

А что это будет, или, виноват, уже есть?
3.14
Еще GPRS ...
По замыслу, это автономный HTTP сервер с GPS тиелеметрией, хотя при полной нагрузке (GPRS+WiFi) батарей наверное даже на час не хватит (пока не проверял) smile.gif
Doka
Цитата(3.14 @ Jul 11 2006, 01:56) *
Еще GPRS ...
По замыслу, это автономный HTTP сервер с GPS тиелеметрией, хотя при полной нагрузке (GPRS+WiFi) батарей наверное даже на час не хватит (пока не проверял) smile.gif


так-так-так... а вот с этого места поподробнее =)
какой веб-сервер можно поставить на это самый микроЛинукс?!
Апач собрали или от BusyBox'a решили прикрутить?

ЗЫ: кстати, у ЭФО есть RJ-45 со встроенными трансформаторами.
3.14
Я насчитал три возможных HTTP сервера: бузибокс, еще один в составет сетевых утилит (может он и Апач, не знаю) и встраиваемый в ядро. Не смог проверить работу только одного, встраиваемого в ядро, после его включения ядро не собралось, разбираться не стал. В целом, сервер работает довольно тормознуто, сами объекты грузятся быстро а вот пауза между загрузкой довольно ощутимые. Если не разберусь с чем дело, наверное свой прийдется писать.
Цитата
ЗЫ: кстати, у ЭФО есть RJ-45 со встроенными трансформаторами.
Я знаю, человек который меня комплектовал, сказал что они сняты с производства а с другими ... http://electronix.ru/forum/index.php?showtopic=15565
voyt
Хотел поинтересоваться, что в итоге получилось с проектом?
Сам хочу сдлеать курсовой проект по Микропроцессорным Системам на ПЛИС. Есть отладочная плата SK Spartan3E500 rev. D.
Вместо MicroBlaze планирую использовать его аналог ( программно-совместимый ) AEMB ( http://www.opencores.org/projects.cgi/web/aemb/overview ). Для курсового планирую ограничится обвязкой мелкой переферией - типа счетчиков и т.п. Если останется время - UART с примером вывода текста из PC по uart на ЖК платы. Проги будут на асме и Си.

Т.к. у нас курсовой проект является частью бакалврской работы, то хотел бы этот проект взять за основу системы с uCLinux на борту. Ethernet, TCP/IP, веб-сервер.
В общем очень хочется, чтобы все это хозяйство работала на вышеупомянутой плате и работала следующая демонстрация: на PC, который будет соеденен в сеть с платой по ethernet, через веб-интерфейс можно было выводить текст на ЖК и управлять светодиодами или типа того.

Люди, кто делал анологичные проекты, как вы думаете, реально ли сделать такое за 10 месяцев, если работать пару часов в день и на выходных по 5 часов?

Радует, что люди делали анологичные проекты ( правда используют Microblaze). Вот интересная ссылка:
http://www.petalogix.com/resources/reference_designs/xilinx

add:
Еще понравился софт-процессор OpenRISC 1200. Но пока взял про запас, т.к. не находил в инете ( не сильно искал ) заметок о работающем uCLinux на данной отладочной плате.
KirillS
Цитата(voyt @ Aug 13 2007, 19:32) *
Хотел поинтересоваться, что в итоге получилось с проектом?
Сам хочу сдлеать курсовой проект по Микропроцессорным Системам на ПЛИС. Есть отладочная плата SK Spartan3E500 rev. D.
Вместо MicroBlaze планирую использовать его аналог ( программно-совместимый ) AEMB ( http://www.opencores.org/projects.cgi/web/aemb/overview ). Для курсового планирую ограничится обвязкой мелкой переферией - типа счетчиков и т.п. Если останется время - UART с примером вывода текста из PC по uart на ЖК платы. Проги будут на асме и Си.

Т.к. у нас курсовой проект является частью бакалврской работы, то хотел бы этот проект взять за основу системы с uCLinux на борту. Ethernet, TCP/IP, веб-сервер.
В общем очень хочется, чтобы все это хозяйство работала на вышеупомянутой плате и работала следующая демонстрация: на PC, который будет соеденен в сеть с платой по ethernet, через веб-интерфейс можно было выводить текст на ЖК и управлять светодиодами или типа того.

Люди, кто делал анологичные проекты, как вы думаете, реально ли сделать такое за 10 месяцев, если работать пару часов в день и на выходных по 5 часов?

Радует, что люди делали анологичные проекты ( правда используют Microblaze). Вот интересная ссылка:
http://www.petalogix.com/resources/reference_designs/xilinx

add:
Еще понравился софт-процессор OpenRISC 1200. Но пока взял про запас, т.к. не находил в инете ( не сильно искал ) заметок о работающем uCLinux на данной отладочной плате.


Работы тут немало.
IMHO надо переделывать EMAC core (Ethernet) чтоб работал с WISHBONE
UART нужен обязательно, без него трудно поднимать Linux
... который в лучшем случае надо будет слегка подделать - ассемблерные функции - так как они пользуются MFS,MTS

Решайте, справитесь ли...
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.