Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: процессор VHDL
Форум разработчиков электроники ELECTRONIX.ru > Программируемая логика ПЛИС (FPGA,CPLD, PLD) > Системы на ПЛИС - System on a Programmable Chip (SoPC)
Maverick
Доброго времени суток! Нужно организовать 32-bit процессор в FPGA с хорошей переферией на VHDL, но есть маленький нюанс код должен быть полностью открыт, соответственно Microblaze не подходит.
Нашел на www.gaisler.com процессор, но там математический со-процессор закрытый вроде (я так понял с сайта). Если у кого чего есть поделитесь, плиз help.gif Процессор нужен для использования в космической технике. Да и желательно и компилятор под него.
Doka
LatticeMico32 Open, Free 32-Bit Soft Processor ?

ну а насчет периферии - там шина WISHBONE: где брать компоненты думаю знаете wink.gif
CaPpuCcino
Цитата(Doka @ Aug 4 2007, 15:54) *
LatticeMico32 Open, Free 32-Bit Soft Processor

пользовались? как впечатления? недостатки?
Doka
Цитата(CaPpuCcino @ Aug 4 2007, 20:39) *
пользовались? как впечатления? недостатки?
да как-то не было задач пока..
.. однако надо заметить что младший брат (LatticeMicro8) мало уступает в ресурсах/быстродействию PicoBlaze (синтез для Spartan-3E).
vladz
Не знаю насчет Mico32, но в Mico8 мне некоторые вещи показались странными, хотя, может, оно так и задумывалось.
При чтении из внешнего порта адрес на шине держится 2 такта, но само чтение происходит по стробу во время первого такта. Т.е на дешифрацию адреса дается только один такт.
Команды загрузки константы в регистр и пересылки между регистрами изменяют флаг Z. До сих пор в микроконтроллерах я такого не встречал.
При наличии 32 регистров, родной ассемблер не позволяет присваивать им символьные имена. Хорошо хоть адреса портов и scratch pad memory разрешили именовать. Есть еще AS Assembler, написанный энтузиастом, там все в порадке с именами, но его выходные форматы hex и bin не поддерживаются ispLEVER-ом. Надо писать конвертер.
В общем, Xilinx со своим PicoBlaze-ом совсем разбаловал.
yes
а что сопроцессор есть у Mico ?

сильно редкая вешч сопроцессор - я когда искал не нашел (даже 32х битный float)

если кто-то знает свободный сопроцессор - было бы интересно...

а у Гейслера core открыто под GPL - то есть нужно будет публиковать все устройство,
но наверно если разместить в двух FPGA, то можно GPL обойти

также sparc 9 на verilog выкладывали сами SUN-s в opensparc (но не лезет в FPGA smile.gif)

а сконвертировать с verilog в vhdl не трудно, так как полностью покрывается
vladec
To vladz
Видимо есть общие проблемы таких контроллеров. Xilinx-ский ассемблер для picoblaze то же весьма убогий. А в ассемблере написанном энтузиастами из Mediatronix выходные файлы для Picoblaze3, форматов MEM и COE мне тоже не удалось без конвертации подпихнуть в ISE.
Maverick
Спасибо Doka за предложенный процессор
Если не сложно кто использовал процессор LatticeMico32 опишите сколько тактов тратиться на выполнение основных операций (особенно деление и вычисление тригонометрических функций), так сказать основные характеристики и как он в работе стабилен или сбоит?
Doka
да вот еще один проц забыл (класса ЛЕОНа, и тоже кстати делают в силиконе): OpenRISC 1200
есть к нему всякие тузлы вроде компиляторов выского уровня и портов линуха (только вот сайт забыл, который поддержкой занимается)

Цитата(vladz @ Aug 6 2007, 09:47) *
Есть еще AS Assembler, написанный энтузиастом, там все в порадке с именами, но его выходные форматы hex и bin не поддерживаются ispLEVER-ом. Надо писать конвертер.
В общем, Xilinx со своим PicoBlaze-ом совсем разбаловал.
да это наоборот: с пикоблейзом особо не разбалуешься, а к Micro8 все исходники - в какой хочешь формат выводить - в такой и выводишь - хоть для альтеры, хоть для хилинх.
а с пикоблейзом ваще никакой свободы(((.. ни C-code не поковыряешь, ни HDL-ware... ((

Цитата(yes @ Aug 7 2007, 00:50) *
а что сопроцессор есть у Mico ?

сильно редкая вешь сопроцессор - я когда искал не нашел (даже 32х битный float)
есть wishbone - цепляйте опенкроресовский (если конечно не столь интенсивны вычисления с плавучкой)

а вообще это вопрос такой..
ИМХО, есть процы ПЛИС-ориентированные: микроблейз32, мико32,
а есть ASIC-ориентировнные: ЛЕОН, ОпенРиск1200
и для первых мала целесообразность использования всяких "тяжёлых" модулей (e.g.: для работы с плавучкой)
а для вторых - низка целесообразность реализации в ПЛИС
(опять же могу ошибаться - с этими игрушками дела не имел - так.. касался поскольку-постольку).

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

to ZMaverickZ
..хотя.. тот же ЛЕОН вроде предлагают в Fault-Tolerant RadHard-исполнении с джентельментским набором "космических" интерфейсов - вам такой вариант не подходит??


--------
upd: вот еще ссылка интересная попалась:
Comparison of LEON2, Microblaze and Openrisc processors
des00
Цитата(Doka @ Aug 7 2007, 11:45) *
да это наоборот: с пикоблейзом особо не разбалуешься, а к Micro8 все исходники - в какой хочешь формат выводить - в такой и выводишь - хоть для альтеры, хоть для хилинх.
а с пикоблейзом ваще никакой свободы(((.. ни C-code не поковыряешь, ни HDL-ware... ((


Добрый день! Не мог не вмешаться, кто сказал что не по ковыряешь ? Все великолепно ковыряется и це код ассемблера (на питоне бы его переписать не помешало) и сам код пикоблейза. И расширяется он достаточно просто и комфортно smile.gif)

НО под CoolRanner II smile.gif т.е. без ScratchPad памяти.
lutik
Цитата(des00 @ Aug 8 2007, 06:02) *
Добрый день! Не мог не вмешаться, кто сказал что не по ковыряешь ? Все великолепно ковыряется и це код ассемблера (на питоне бы его переписать не помешало) и сам код пикоблейза. И расширяется он достаточно просто и комфортно smile.gif)

НО под CoolRanner II smile.gif т.е. без ScratchPad памяти.


угу..
пикоблейз (тот что для CR II) ваще рульная штука.
поправив код можно производительность поднять, глубину стека увеличить (4-х ступеней явно маловато), и командами расширяется (лично PUSH/POP добавлял). даже (при сильном желании) можно шинку внешнюю в вишбон преобразовать.

последняя дурка в которую удалось его преобразовать - 16-ти битный проц с exec'ом из внешней SRAM и бутлоадером во внутреннем BRAM. двумя внешними шинами WB и поддержкой нитей (РОН'ы как у 51-ого контроллера переключаются) + 2-а источника прерываний

утакот.. и при всем этом идеология пикоблаза осталась да и асм правится достаточно просто
WingLion
Цитата(ZMaverickZ @ Aug 4 2007, 15:44) *
Доброго времени суток! Нужно организовать 32-bit процессор в FPGA с хорошей переферией на VHDL, но есть маленький нюанс код должен быть полностью открыт, соответственно Microblaze не подходит.
Нашел на www.gaisler.com процессор, но там математический со-процессор закрытый вроде (я так понял с сайта). Если у кого чего есть поделитесь, плиз help.gif Процессор нужен для использования в космической технике. Да и желательно и компилятор под него.


Смешной вопрос, а почему именно на VHDL?
AHDL совсем не подходит?
http://winglion.ru/Forth-CPU/
Там оно в довольно "запущеном" состоянии, но если надо для работы и есть правильный заказчик, то можно и доделать под заказ. Или просто взять самому и переделать как хочется.
Mad Makc
Цитата
..хотя.. тот же ЛЕОН вроде предлагают в Fault-Tolerant RadHard-исполнении с джентельментским набором "космических" интерфейсов - вам такой вариант не подходит??

А вы в курсе, за сколько они это предлагают? А я вам скажу. 70 тыс. евриков- и пользуйся в своё удовольствие. При этом исходники не дадут, а дадут только нетлисты.И это без FPU.
Maverick
Я об этом тоже недавно узнал Mad Maks. Кстати леон 3 уже есть, но без математического со-процессора (они его продают за отдельные деньги), к сожалению. Говорят что новый более быстрый и более оптимизирован. crying.gif

WingLion:
Смешной вопрос, а почему именно на VHDL?
AHDL совсем не подходит?
Я не знаю языка AHDL и Xilinx его поддерживает 05.gif И как я знаю Altera не выпускает продукцию под космос WingLion.
yes
Цитата(ZMaverickZ @ Aug 8 2007, 16:39) *
Я об этом тоже недавно узнал Mad Maks. Кстати леон 3 уже есть, но без математического со-процессора (они его продают за отдельные деньги), к сожалению. Говорят что новый более быстрый и более оптимизирован. crying.gif


Leon3 лежит под GPL, так же как и Leon2 и уже очень давно (два года назад была 10-я версия, сейчас 16-я)
они собирались делать с более длинным пайплайном, ну то есть если leon3 сравним с ARM9, то следующий будет типа как АРМ11, может об этом речь?

исходники сопроцессора предлагают за 150Кевро
нетлист сопроцессора под технологию - 20-30К, для ксайлинкса/альтеры выложены бесплатные нетлисты
Doka
вот еще один 32-разрядный опенсоурц докучи =)

microSPARC - SPARC's rich set of architectural features is based on 32-bit SPARC V8 Architecture.
vetal
кто-нибудь скачивал этот микроспарк?
какие цифры для циклона получаются?
anatolich
Делаю роутер для UART. Сделал на PicoBlaze. В Spartan3 xc3s250e поместилось два проца и 6-ть UART-ов. Два канала.
Но теперь в 3FF не помещаюсь. Очень сложный протокол обмена телеграммами. Стало тяжело писать в кодах. В реал тайме не отдебажить.

Стал заглядываться на Mico32.
Разъясните, кто знает...
Лицензия на Diamond и Lattice Dev Tool бесплатная?

Имеет ли смысл поднимать mb-lite? Не могу найти внятного описания tool чейна
gk2
На Diamond бесплатная, на год, после окончания запрашиваете и шлют снова на год.
Бесплатная правда не на все семейства Lattice. А на Mico 32 лицензия не нужна.

Если будете разбираться с LM32 то здесь http://electronix.ru/forum/index.php?showtopic=96942
есть проект где он используется, приспособленный к Xilinx
anatolich
Спасибо, почитаю.
Вчера откомпилировался mb-lite в ISE. Прийдется себя ломать, все что было - сделано в схематике. Не очень удобно без GUI интегрировать
svrdc
Цитата(ZMaverickZ @ Aug 4 2007, 14:44) *
Доброго времени суток! Нужно организовать 32-bit процессор в FPGA с хорошей переферией на VHDL, но есть маленький нюанс код должен быть полностью открыт, соответственно Microblaze не подходит.
Нашел на www.gaisler.com процессор, но там математический со-процессор закрытый вроде (я так понял с сайта). Если у кого чего есть поделитесь, плиз help.gif Процессор нужен для использования в космической технике. Да и желательно и компилятор под него.


Могу предложить VHDL Леон2 с AMBA2, PCI, SDRAM conrtoller, UART.
Плавающая точка есть написанная на Verilog - FP ALU, FP Multiplier, Fp Divider, SQRT, RSQRT, RECP.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.