Однобитный полиморфный процессор

17,718 35
 

Фильтр
PublicJoke
 
Слушатель
Карма: +2.13
Регистрация: 12.01.2008
Сообщений: 1,126
Читатели: 0
Тред №242663
Дискуссия   410 16
Собственно, субж. Без фиксированного АЛУ (и без жёсткого разделения на АЛУ и память), с однобитными интерфейсами, специально заточенный для использования функциональных языков. Вроде бы, это ПЛИС? Нет, они не годятся из-за, с одной стороны, избыточности (например, обязательное синхронное тактирование), а с другой, недостаточности (точнее, плохого соотношения цена/ёмкость). Не найдётся ли желающих побеседовать на околоподобные темы? Я специально не стал развивать тему сразу, поскольку, если не найдётся, я просто снесу топик.

Сам я в микросхемотехнике ни ухом, ни рылом, так что только со мной, возможно, общаться будет неинтересно.

Для затравки: в книге Клайва Максфилда "Проектирование на ПЛИС. Архитектура, средства и методы" есть глава 23 "FPNA -- программируемый пользователем массив узлов". В ней описываются две похожие на субж архитектуры, разрабатывавшиеся во время написания книги. PicoChip сегодня неплохо продаётся (даже GCC под неё портировали), а QuickSilver (наиболее, по-моему, интересная) приказала долго жить (по случайному совпадению, в тот же год, когда родилась Google).
  • +0.00 / 0
  • АУ
Мимохожий
 
russia
Слушатель
Карма: +50.81
Регистрация: 11.04.2008
Сообщений: 4,960
Читатели: 9
Цитата: PublicJoke от 31.07.2010 18:37:46
Собственно, субж. Без фиксированного АЛУ (и без жёсткого разделения на АЛУ и память), с однобитными интерфейсами, специально заточенный для использования функциональных языков. Вроде бы, это ПЛИС?
Вообще-то то, что Вы описали - подозрительно машет на FPGA (field programmable gate array), типа вот этого: http://atmel.com/dyn…rt_id=2061
  • +0.00 / 0
  • АУ
PublicJoke
 
Слушатель
Карма: +2.13
Регистрация: 12.01.2008
Сообщений: 1,126
Читатели: 0
Цитата: Мимохожий от 31.07.2010 22:01:03
Вообще-то то, что Вы описали - подозрительно машет на FPGA (field programmable gate array), типа вот этого: http://atmel.com/dyn…rt_id=2061



Ну, ПЛИС и есть FPGA (если не вдаваться в терминологические нюансы). Так вот, ПЛИС не годится. Собственно, то, почему это так, могло бы стать частью обсуждения. Вообще, меня сподвиг завести ветку некий фундаментальный затык, который я, не будучи специалистом, никак не могу обойти и даже не уверен, что его вообще можно обойти (по крайней мере, с помощью современных микросхемных технологий). Мне хотелось бы, чтобы он всплыл в обсуждении плавно. Для этого я специально не раскрыл практически ничего, надеясь, что вопросы-ответы помогли бы "разогнать" ветку.
  • +0.00 / 0
  • АУ
Мимохожий
 
russia
Слушатель
Карма: +50.81
Регистрация: 11.04.2008
Сообщений: 4,960
Читатели: 9
Цитата: PublicJoke от 31.07.2010 23:15:23Ну, ПЛИС и есть FPGA (если не вдаваться в терминологические нюансы).
А если вдаться, но не в терминологические нюансы, а в структуру кристалла, то между классической ПЛИС (PAL/GAL/CPLD) и FPGA - разница примерно та же, что между канализацией и каналом...Подмигивающий Если "классика" заточена под прошивку ДНФ (причём - как правило, однократную), то FPGA - "море ячеек", которые мы можем коммутировать во столько слоёв, во сколько посчитаем нужным (и тактировать так, как посчитаем нужным, например, у AT40K тактирование восьмифазное), что явно ближе к методикам работы с БМК. А реконфигурация кристалла - может быть вообще динамической (например, если в какой-то момент мне вместо аппаратного конвольвера понадобилась "бабочка" БПФ - я её просто подгружаю (кстати, при желании - даже не стирая внутреннюю память кристалла) - и дело с концом...Подмигивающий Т.е., в отличии от "классики", структура процессора может меняться динамически, например в процессе адаптации ко входным данным...Подмигивающий

Ну и плюс традиционные отымеловские мелочи для лентяев и извращенцев (AT94K40 я имею...Подмигивающий ).
Отредактировано: Мимохожий - 01 авг 2010 00:39:43
  • +0.00 / 0
  • АУ
PublicJoke
 
Слушатель
Карма: +2.13
Регистрация: 12.01.2008
Сообщений: 1,126
Читатели: 0
Цитата: Мимохожий от 01.08.2010 00:36:13
А если вдаться, но не в терминологические нюансы, а в структуру кристалла, то между классической ПЛИС (PAL/GAL/CPLD) и FPGA - разница примерно та же, что между канализацией и каналом...Подмигивающий Если "классика" заточена под прошивку ДНФ (причём - как правило, однократную), то FPGA - "море ячеек", которые мы можем коммутировать во столько слоёв, во сколько посчитаем нужным (и тактировать так, как посчитаем нужным, например, у AT40K тактирование восьмифазное), что явно ближе к методикам работы с БМК. А реконфигурация кристалла - может быть вообще динамической (например, если в какой-то момент мне вместо аппаратного конвольвера понадобилась "бабочка" БПФ - я её просто подгружаю (кстати, при желании - даже не стирая внутреннюю память кристалла) - и дело с концом...Подмигивающий Т.е., в отличии от "классики", структура процессора может меняться динамически, например в процессе адаптации ко входным данным...Подмигивающий



Ага, так Вы и есть желающий! Я-то думал, Вы как модер заглянули. Ну что же, поехали.

Во-первых, "море" ячеек -- это, мягко говоря, не так. На "50K Gates" нормального процессора не сделаешь. Но даже у этой мелкой игрушки цены не сказать чтобы очень гуманные. У лидеров (Altera, Xilinx) в этом плане ситуация ничуть не лучше. А всё почему? А всё потому, что существует тот самый базовый затык, о котором я уже упоминал -- накладные расходы на возможность соединения "всех со всеми" просто чудовищные. Как раз это и хотелось бы обсудить.

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

Третий момент -- только однобитные интерфейсы. Смешное обоснование -- меня как программиста раздражают вшитые в язык типы. Более серьёзное -- возможность без накладных расходов работать с данными произвольной длины. И самое главное -- бесшовная масштабируемость.
  • +0.00 / 0
  • АУ
Korpus
 
47 лет
Слушатель
Карма: +0.11
Регистрация: 12.06.2010
Сообщений: 182
Читатели: 0

Аккаунт заблокирован
Цитата: PublicJoke от 01.08.2010 10:10:35
Ага, так Вы и есть желающий! Я-то думал, Вы как модер заглянули. Ну что же, поехали.

Во-первых, "море" ячеек -- это, мягко говоря, не так. На "50K Gates" нормального процессора не сделаешь. Но даже у этой мелкой игрушки цены не сказать чтобы очень гуманные. У лидеров (Altera, Xilinx) в этом плане ситуация ничуть не лучше. А всё почему? А всё потому, что существует тот самый базовый затык, о котором я уже упоминал -- накладные расходы на возможность соединения "всех со всеми" просто чудовищные. Как раз это и хотелось бы обсудить.

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

Третий момент -- только однобитные интерфейсы. Смешное обоснование -- меня как программиста раздражают вшитые в язык типы. Более серьёзное -- возможность без накладных расходов работать с данными произвольной длины. И самое главное -- бесшовная масштабируемость.


Я не сильно в теме. Но у меня такое впечатление, что Вы хотите построить нейросеть, реализованную аппаратно.
  • +0.00 / 0
  • АУ
PublicJoke
 
Слушатель
Карма: +2.13
Регистрация: 12.01.2008
Сообщений: 1,126
Читатели: 0
Цитата: Korpus от 01.08.2010 11:07:24
Я не сильно в теме. Но у меня такое впечатление, что Вы хотите построить нейросеть, реализованную аппаратно.



Чего её строить, дети практически сами собой родятся. А если серьёзно, то нет, внутри каждой ячейки, по задумке, сидит элемент сдвигового регистра. И межсоединения полностью подконтрольны, в отличие от neural sprouting. Это если Вы о подражании природе. А если о нейровычислениях, то существует, например, Л1879ВМ1.
  • +0.00 / 0
  • АУ
Korpus
 
47 лет
Слушатель
Карма: +0.11
Регистрация: 12.06.2010
Сообщений: 182
Читатели: 0

Аккаунт заблокирован
Цитата: PublicJoke от 01.08.2010 11:32:37
Чего её строить, дети практически сами собой родятся. А если серьёзно, то нет, внутри каждой ячейки, по задумке, сидит элемент сдвигового регистра. И межсоединения полностью подконтрольны, в отличие от neural sprouting. Это если Вы о подражании природе. А если о нейровычислениях, то существует, например, Л1879ВМ1.


Т.е. речь идет о быстрой перстраиваемости структуры (программно), я правильно понимаю?
  • +0.00 / 0
  • АУ
PublicJoke
 
Слушатель
Карма: +2.13
Регистрация: 12.01.2008
Сообщений: 1,126
Читатели: 0
Цитата: Korpus от 01.08.2010 11:36:04
Т.е. речь идет о быстрой перстраиваемости структуры (программно), я правильно понимаю?



В том числе. Другой ключевой момент -- отсутствие фиксированного числа контекстов исполнения. Поэтому я и говорю, что функциональные языки тут должны рулить.
  • +0.00 / 0
  • АУ
Бабушка (приехала)
 
Слушатель
Карма: 0.00
Регистрация: 09.09.2009
Сообщений: 78
Читатели: 0
Тред №242903
Дискуссия   251 1
PublicJoke,
честно говоря, трудно понять о чем вы говорите... всё смешано в кучу
Машины, управляемые потоком данных? Обработка потоков?


пожалуйста, сформулируйте тему/вопрос обсуждения более членораздельно

чего и какими средствами вы (как программист) хотите достичь:

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

какова ваша высокая цель:

- упростить программирование (класс задач?)
- повысить надежность кода (относительно чего?)
- оставить след в истории НиТ
- другое

начните издалека, с предыстории
что именно у вас чешется?
Всё? Выходите на поляну...
  • +0.00 / 0
  • АУ
PublicJoke
 
Слушатель
Карма: +2.13
Регистрация: 12.01.2008
Сообщений: 1,126
Читатели: 0
Цитата: Бабушка (приехала) от 01.08.2010 20:28:39
чего и какими средствами вы (как программист) хотите достичь:

- создать "свой" функциональный язык (обоснуйте необходимость)



Вполне возможно будет использовать существующие.

Цитата: Бабушка (приехала) от 01.08.2010 20:28:39
- создать свой эффективный(?) компилятор для существующего ф.я. (обоснуйте необходимость)



Задача создания компилятора неотделима от разработки архитектуры процессора, отдельно неинтересна.

Цитата: Бабушка (приехала) от 01.08.2010 20:28:39
- создать оптимальную вычислительную архитектуру для использования с языками функц. программирования (критерии)



Скорее, функциональные языки должны хорошо ложиться на предлагаемую к обсуждению/проектированию архитектуру.

Цитата: Бабушка (приехала) от 01.08.2010 20:28:39
- приятно провести время, окунувшись с головой в теоретизирование
- другое



Безусловно.

Цитата: Бабушка (приехала) от 01.08.2010 20:28:39
какова ваша высокая цель:

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



Тут уж как получится.

Цитата: Бабушка (приехала) от 01.08.2010 20:28:39
- оставить след в истории НиТ
- другое



Не интересует.

Цитата: Бабушка (приехала) от 01.08.2010 20:28:39
начните издалека, с предыстории
что именно у вас чешется?



Гражданские вычислительно-коммуникационные сети в кармане у каждого. Торговля этими ресурсами. Самоорганизация граждан. Так что можно сформулировать так: радикальное (на пару порядков) снижение энергопотребления при сохранении вычислительных мощностей, сравнимых с современными ПК плюс возможность вязать всё это в гетерогенные (в основном, беспроводные) сети.
  • +0.00 / 0
  • АУ
Frenki.
 
45 лет
Слушатель
Карма: +4.04
Регистрация: 28.10.2008
Сообщений: 401
Читатели: 0
Тред №243237
Дискуссия   196 0
Чёрт, прикольно, но работать не будет. Если только при рождении вживлять.
Дождя хватит на всех.
  • +0.00 / 0
  • АУ
IL
 
Слушатель
Карма: 0.00
Регистрация: 02.08.2010
Сообщений: 259
Читатели: 0
Цитата: PublicJoke от 01.08.2010 10:10:35...
Во-первых, "море" ячеек -- это, мягко говоря, не так. На "50K Gates" нормального процессора не сделаешь. Но даже у этой мелкой игрушки цены не сказать чтобы очень гуманные. У лидеров (Altera, Xilinx) в этом плане ситуация ничуть не лучше. ...


Как уже было сказано - FPGA пожалуй единственная сейчас технология для постройки любого процессора - хоть одно- хоть 133-х битного. За универсальность надо платить. Ситуация однако-ж становится лучше со временем. Недавно анонсированная Xilinx 28 nm серия к примеру: даже младшая модель (должно быть не дороже $10 - 15) считалась бы большой и дорогой пару поколений назад. С FPGA в некоторых областях (обработка изображений и т.п.) сейчас конкурируют GPGPU(GGPU) - куча (сотни) процессоров (графических и не очень) на одном кристалле.
Отредактировано: IL - 02 авг 2010 18:11:30
  • +0.00 / 0
  • АУ
PublicJoke
 
Слушатель
Карма: +2.13
Регистрация: 12.01.2008
Сообщений: 1,126
Читатели: 0
Цитата: IL от 02.08.2010 18:09:05
Как уже было сказано - FPGA пожалуй единственная сейчас технология для постройки любого процессора - хоть одно- хоть 133-х битного. За универсальность надо платить. Ситуация однако-ж становится лучше со временем.



А зачем за неё платить? Разве что на этапе моделирования...

Цитата: IL от 02.08.2010 18:09:05
Недавно анонсированная Xilinx 28 nm серия к примеру: даже младшая модель (должно быть не дороже $10 - 15) считалась бы большой и дорогой пару поколений назад.



Я так понял, Вы были на семинаре? Не в курсе, почём обещают старшие Artix'ы (уж явно не по $10)?

Цитата: IL от 02.08.2010 18:09:05
С FPGA в некоторых областях (обработка изображений и т.п.) сейчас конкурируют GPGPU(GGPU) - куча (сотни) процессоров (графических и не очень) на одном кристалле.



Насчёт Fermi я в курсе, но как она приложима к данной задаче?
  • +0.00 / 0
  • АУ
Бабушка (приехала)
 
Слушатель
Карма: 0.00
Регистрация: 09.09.2009
Сообщений: 78
Читатели: 0
Цитата: PublicJoke от 02.08.2010 19:30:54
но как она приложима к данной задаче?



к какой (задаче)?

и да, не могли бы вы всё-таки ответить на предыдущие мои вопросы?
Всё? Выходите на поляну...
  • +0.00 / 0
  • АУ
IL
 
Слушатель
Карма: 0.00
Регистрация: 02.08.2010
Сообщений: 259
Читатели: 0
Цитата: PublicJoke от 02.08.2010 19:30:54
А зачем за неё платить? Разве что на этапе моделирования...

Я так понял, Вы были на семинаре? Не в курсе, почём обещают старшие Artix'ы (уж явно не по $10)?

Насчёт Fermi я в курсе, но как она приложима к данной задаче?


-1- Альтернатива (мне известная) FPGA, ASIC - довольно дорогая инвестиция, миллион долларов или сколько сейчас за маску, далеко не для любой партии оправдана. Ну и не реконфигурируемая. Правда мне кажется эта особенность в runtime не слишком широко используется, может быть пока.

-2- Инсайдом не владею, инфо с их сайта. Я вообще то про младшую модель писал, а она не такая уж чтобы маленькая.

-3- FYI в общем-то, для общего развития, мало ли кто ещё прочитает. Вообще наверно не профильный форум для таких дел. Я сам только Xilinx занимаюсь.
  • +0.00 / 0
  • АУ
PublicJoke
 
Слушатель
Карма: +2.13
Регистрация: 12.01.2008
Сообщений: 1,126
Читатели: 0
Цитата: IL от 02.08.2010 21:02:46
-1- Альтернатива (мне известная) FPGA, ASIC - довольно дорогая инвестиция, миллион долларов или сколько сейчас за маску, далеко не для любой партии оправдана. Ну и не реконфигурируемая. Правда мне кажется эта особенность в runtime не слишком широко используется, может быть пока.



Нет, процессор же планируется полиморфный. Рассматривайте его как узкоспециализированный FPGA.

Цитата: IL от 02.08.2010 21:02:46
-2- Инсайдом не владею, инфо с их сайта. Я вообще то про младшую модель писал, а она не такая уж чтобы маленькая.



И я про неё же. Artix -- младшая линейка.

Цитата: IL от 02.08.2010 21:02:46
-3- FYI в общем-то, для общего развития, мало ли кто ещё прочитает. Вообще наверно не профильный форум для таких дел. Я сам только Xilinx занимаюсь.



Я думал, что Вы вот об этом.
  • +0.00 / 0
  • АУ
IL
 
Слушатель
Карма: 0.00
Регистрация: 02.08.2010
Сообщений: 259
Читатели: 0
Цитата: PublicJoke от 02.08.2010 22:14:35
Нет, процессор же планируется полиморфный. Рассматривайте его как узкоспециализированный FPGA.

И я про неё же. Artix -- младшая линейка.

Я думал, что Вы вот об этом.


Вы ведь не предполагаете самостоятельно FPGA производить? Конкретно, даже в самый маленький Artix 7A20 их 32-битный проц. думаю войдёт с некоторым трудом. В 7A40 уж точно. Цену наверно скоро объявят.

Кроме графических типа nvidia делают люди и "обычные" многопроцессорные чипы. Числом поболе ценой подешевле - ну и попроще, целочисленные. Читал недавно, не помню название. Завтра могу посмотреть на работе.
  • +0.00 / 0
  • АУ
Бабушка (приехала)
 
Слушатель
Карма: 0.00
Регистрация: 09.09.2009
Сообщений: 78
Читатели: 0
Тред №243411
Дискуссия   228 1
Цитатане могли бы вы всё-таки ответить на предыдущие мои вопросы?

Цитата
Мог бы



мда...
редкий однобитный мудак
нетактируемый

А вот на личности переходить не стоило...Подмигивающий
Сутки.

С сожалением,
Мимохожий
Отредактировано: Мимохожий - 02 авг 2010 23:52:50
Всё? Выходите на поляну...
  • +0.00 / 0
  • АУ
PublicJoke
 
Слушатель
Карма: +2.13
Регистрация: 12.01.2008
Сообщений: 1,126
Читатели: 0
Цитата: IL от 02.08.2010 22:48:54
Вы ведь не предполагаете самостоятельно FPGA производить?



Это как раз тоже хотелось бы обсудить. Нет ли на экспериментальных стадиях какой-либо альтернативы кремнию, желательно жидкой? Дело в том, что архитектура современных FPGA меня не устраивает. Нет хороших возможностей создавать произвольные соединения. Тактируются-то FPGA не от хорошей жизни, это средство борьбы с гонками, что, в свою очередь, обусловлено (в общем случае) разными длинами соединений между гейтами.

Цитата: IL от 02.08.2010 22:48:54
Кроме графических типа nvidia делают люди и "обычные" многопроцессорные чипы. Числом поболе ценой подешевле - ну и попроще, целочисленные. Читал недавно, не помню название. Завтра могу посмотреть на работе.



Да не нужно. Я же говорю, это направление мне ни к чему, я за высокой физической плотностью производительности не гонюсь.
  • +0.00 / 0
  • АУ
Сейчас на ветке: 1, Модераторов: 0, Пользователей: 0, Гостей: 0, Ботов: 1