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

 
 
> Стековый процессор., Попытка benchmark.
3.14
сообщение Jan 7 2005, 16:12
Сообщение #1


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



Итак, начну пожалуй из далека wink.gif
Во первых, я крайне восхищен появлением такого ...
Во вторых, я крайне удивлен (от части даже завидую), с какой "легкостью" люди это делают ...
(для тех кто не в курсе чего я "разорался", тыкайте сюда http://forum.electronix.ru/index.php?showtopic=2004)

Теперь по существу.
Я, как и многие "юзера" FPGA, озадачился вопросом "это мне надо?".
И решил в меру своих возможностей сравнить PicoBlazer и "Стековый процессор", ну или по крайней мере определить сектора задач и потребностей в ресурсах.

"Стековый процессор"
"Синтезировал" вариант процессора, конфигурация которого идет в "комплекте". Изменил только настроки ядра процессора с 3 на 8 бит (вроде еще знак включил wink.gif).
PicoBlazer.
Блайзер как блайзер, добавил PROM, в виде BRAM, добавил по одному одноразрядному порту на вход и выход.

"Земля! Прощай!"
Важные части отчета PAR Стекового процессора
...
Number of BLOCKRAMs 2 out of 14 14%
Number of SLICEs 148 out of 2352 6%
Number of GCLKs 1 out of 4 25%
...
+----------------------------+----------+--------+------------+-------------+
| Clock Net | Resource | Fanout |Net Skew(ns)|Max Delay(ns)|
+----------------------------+----------+--------+------------+-------------+
| clk_BUFGP | Global | 73 | 0.501 | 0.763 |
+----------------------------+----------+--------+------------+-------------+
| sc_clk_second10 | Local | 7 | 2.197 | 3.938 |
+----------------------------+----------+--------+------------+-------------+
...
--------------------------------------------------------------------------------
Constraint | Requested | Actual | Logic
| | | Levels
--------------------------------------------------------------------------------
NET "clk_BUFGP/IBUFG" PERIOD = 25 nS H | 25.000ns | 24.476ns | 7
IGH 50.000000 % | | |
--------------------------------------------------------------------------------

Теперь PicoBlazer
...
Number of BLOCKRAMs 1 out of 14 7%
Number of SLICEs 75 out of 2352 3%
Number of GCLKs 1 out of 4 25%
...
+----------------------------+----------+--------+------------+-------------+
| Clock Net | Resource | Fanout |Net Skew(ns)|Max Delay(ns)|
+----------------------------+----------+--------+------------+-------------+
| p30MHz_BUFGP | Global | 55 | 0.428 | 0.697 |
+----------------------------+----------+--------+------------+-------------+
...
--------------------------------------------------------------------------------
Constraint | Requested | Actual | Logic
| | | Levels
--------------------------------------------------------------------------------
NET "p30MHz_BUFGP/IBUFG" PERIOD = 16.667 | 16.667ns | 16.192ns | 6
nS HIGH 50.000000 % | | |
--------------------------------------------------------------------------------

Ну как видно из отчета, такой же по разрядности Стековый процессор занимает в два раза больше места, и в 1.5 раза медленнее sad.gif

Теперь еще заковырки.
Скриншот Floorplanner Стекового процессора
Прикрепленное изображение

Скриншот Floorplanner Picoblazer
Прикрепленное изображение


Если обратите внимание на заштрихованные области, я до сей поры считал, что это части слайсов затянутые констрейном RLOC, который появляется когда синтезатор находит "библиотечные" макросы с HDL. Подобные вещи будут просто спасательным кругом в случае "сильно" заполненного кристалла, особенно для чайников. А как видно из рисунков, в процентном соотношении Picoblazer выигрывает.


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
3.14
сообщение Jan 9 2005, 19:31
Сообщение #2


Их либе дих ...
******

Группа: СуперМодераторы
Сообщений: 2 010
Регистрация: 6-09-04
Из: Russia, Izhevsk
Пользователь №: 609



Спасибо за дружелюбный ответ!
Если честно, я ожидал шквал брани и уличений в некомпетентности.

Теперь по пунктрам.
У PicoBlazer имеется один вектор прерывания. Ну а добавить таймер - несколько слайсов.

<2. Скорость. Время выполнения команды у PicoBlaze 2 машинных цикла, у StackCPU – 1.>
Это радует!

<Языки программирования. PicoBlaze – ассемблер, StackCPU – форт. Форт куда приятней, в плане неплохого соединения низко и высоко уровнего программирования.>
В общем согласен, но ломка привычки программирования, то же требует мотива.

<Жаль, что нет сравнения с MicroBlaze. Его Xilinx то же создал оптимизированными под свои ПЛИС различных серий.>
Щас будет!
Скриншот MicroBlaze
Прикрепленное изображение

Развелся на 50МГц.
Хотя номинально занимает около 500 слайсов(на глаз), как видно из рисунка, занимает фактически половину кристалла. Если допустить логику пользователя в область самого процессора (левый здоровый прямоугольник), добром это не кончится sad.gif

Скриншот Стекового процессора на 32 разряда
Прикрепленное изображение

Занял 241 слайс (10%). Развелся на 30МГц.

Скриншот Стекового процессора на 16 разрядов
Прикрепленное изображение

Занял 180 слайсов (7%). Развелся на 40МГц.

Теперь размышления переходящия в вопросы.
Играясь с разрядностью СП (стековый процессор) заметил, при уменьшении разрядности, занимеамый размер уменьшается не прапорционально (в большую сторону). При всех экспериментах не менял глубину стека, это правомерно?

Еще. Если огрубить процесс "синтеза" (так проще будет) процессора (не включать таймеры и IO, выбрать одну разрядность), то можно создать RPM макрос на процессор, чем увеличим частоту и стабильность разводки. Правда тогда от дебугера наверное много пользы не будет.

Еще. Склоняюсь к мысли что СП - "золотая" середина между PicoBlaze и MicroBlaze. Первый, как Вы верно подметили, слишком ограничен, второй слишком "развесист".


--------------------
Усы, борода и кеды - вот мои документы :)
Go to the top of the page
 
+Quote Post
kuchynski
сообщение Jan 10 2005, 01:34
Сообщение #3


Участник
*

Группа: Свой
Сообщений: 58
Регистрация: 28-12-04
Из: Минск
Пользователь №: 1 713



MicroBlaze занимает 500 слайсов на Spartan 3, где есть встроенные умножители. А во втором Spartan умножение реализуется на всякой логике, вот процессор и раздулся.
СП 32 разряда, стеки 16+16, с сумматором и умножителем на той же микросхеме (XC2S200) займёт не меньше.

Согласен, что PicoBlaze слишком ограничен, MicroBlaze слишком "развесист". Но StackCPU - это не между PB и MB. Он из другой области. Наберите в Yandex «стековый процессор» и увидите, сколько их, даже купить можно. Под те же ПЛИС выпускают. А StackCPU – это ответ Иосифу Каршенбойму
http://iosifk.narod.ru/stack_up1.pdf
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- 3.14   Стековый процессор.   Jan 7 2005, 16:12
- - kuchynski   1. Объём. В этом примере, насколько я понял, два ...   Jan 9 2005, 09:57
|- - alexf   Цитата(kuchynski @ Jan 9 2005, 02:57)Возможно...   Jan 10 2005, 11:15
- - vetal   ЦитатаЯ на днях запихал в Cyclone некое подобие PI...   Jan 10 2005, 12:27
|- - alexf   Цитата(vetal @ Jan 10 2005, 05:27)Написать пр...   Jan 11 2005, 09:26
- - 3.14   to kuchynski А все-таки, имеется зависимость необх...   Jan 10 2005, 16:15
|- - kuchynski   1024 слова получены благодаря большей bram. Прости...   Jan 10 2005, 18:36
|- - alexf   Цитата(3.14 @ Jan 10 2005, 09:15)А эти 1024 с...   Jan 11 2005, 09:22
- - 3.14   <Все вполне натурально: у Spartan 3 (и всяких д...   Jan 11 2005, 10:12
|- - alexf   Цитата(3.14 @ Jan 11 2005, 03:12)<Все впол...   Jan 12 2005, 08:09
- - vetal   Цитата(alexf @ Jan 11 2005, 12:26)Цитата(veta...   Jan 11 2005, 11:06
- - makc   ЦитатаОбьясните чем же все таки стековый процессор...   Jan 11 2005, 16:31
- - 3.14   <Самое по моему мнению большое достоинство - пл...   Jan 11 2005, 19:46
- - makc   Цитата(3.14 @ Jan 11 2005, 22:46)<Самое по...   Jan 12 2005, 05:36


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

 


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


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