Дали мне любопытную платку поиграться: GreenArrays EVB001.

На плате установлены два чипа GA144f18a. Каждый чип содержит 144 процессора с архитектурой f18a, соединённых в форме матрицы 8x18. Процессор имеет 144+144 байт памяти RAM+ROM (по 64 18-битных слова), а также набор регистров для общения процессоров между собой и с внешним миром через ножки ввода-вывода. Понятие частоты процессора отсутствует: это асинхронный дизайн.

Суть подхода в том, что каждый процессор выполняет небольшую программу, обмениваясь данными с соседями. К примеру, для реализации контроллера Ethernet 10Base-T достаточно всего 26 процессоров (PDF). Алгоритм вычисления контрольной суммы требует 14 процессоров (PDF).
Архитектура процессора и система команд представляют собой очень простой стековый компьютер со словной организацией. Слово данных и команда процессора имеют одинаковый размер в 18 бит. Подробное описание архитектуры имеется в документе "F18A Technology Reference". Для пользователей предлагается среда программирования на языке Forth.
Не могу сказать, что я сильно впечатлён. Судя по примерам MD5 и 10Base-T, разработка софта для такой архитектуры дело крайне трудоёмкое. Forth - типичный пример так называемого write-only language, на котором можно программу написать (один раз), но нельзя понять (больше никогда). Можно пытаться приспособить простой Си-компилятор, однако архитектура плохо для этого приспособлена. Отлаживать систему из сотен взаимодействующих процессоров тоже не сахар. В общем, чисто академический интерес получается.

На плате установлены два чипа GA144f18a. Каждый чип содержит 144 процессора с архитектурой f18a, соединённых в форме матрицы 8x18. Процессор имеет 144+144 байт памяти RAM+ROM (по 64 18-битных слова), а также набор регистров для общения процессоров между собой и с внешним миром через ножки ввода-вывода. Понятие частоты процессора отсутствует: это асинхронный дизайн.

Суть подхода в том, что каждый процессор выполняет небольшую программу, обмениваясь данными с соседями. К примеру, для реализации контроллера Ethernet 10Base-T достаточно всего 26 процессоров (PDF). Алгоритм вычисления контрольной суммы требует 14 процессоров (PDF).
Архитектура процессора и система команд представляют собой очень простой стековый компьютер со словной организацией. Слово данных и команда процессора имеют одинаковый размер в 18 бит. Подробное описание архитектуры имеется в документе "F18A Technology Reference". Для пользователей предлагается среда программирования на языке Forth.
Не могу сказать, что я сильно впечатлён. Судя по примерам MD5 и 10Base-T, разработка софта для такой архитектуры дело крайне трудоёмкое. Forth - типичный пример так называемого write-only language, на котором можно программу написать (один раз), но нельзя понять (больше никогда). Можно пытаться приспособить простой Си-компилятор, однако архитектура плохо для этого приспособлена. Отлаживать систему из сотен взаимодействующих процессоров тоже не сахар. В общем, чисто академический интерес получается.

no subject
Date: 2016-04-27 19:41 (UTC)До самого локтя перчатки,
И слово транспьютер, и в сумраке лож
Тот запах и душный и сладкий..."
no subject
Date: 2016-04-27 19:41 (UTC)GA-144 уже вроде как несколько лет в обед как выпущен, но что то производитель походу сдулся
no subject
Date: 2016-04-27 19:46 (UTC)no subject
Date: 2016-04-27 19:48 (UTC)no subject
Date: 2016-04-27 19:48 (UTC)минимальный заказ чипов у них 10 штук
я мож купил бы у них чисто для истории, но у нас растаможка с 21 евро начинается и возится с этим неохота
no subject
Date: 2016-04-27 19:53 (UTC)no subject
Date: 2016-04-27 20:01 (UTC)no subject
Date: 2016-04-27 20:02 (UTC)no subject
Date: 2016-04-27 20:03 (UTC)no subject
Date: 2016-04-27 20:03 (UTC)сайт правда смотрю что то у него ушел "в разработку", х.з. выйдет ли из неё
no subject
Date: 2016-04-27 20:25 (UTC)Сейчас такие вещи обычно делаются на Джаве -- всякий map-reduce, apache spark etc.
Ну или на этом, как его, который для программирования NVIDIA применяют.
К слову, как-то не сложилось поинтересоваться (или сложилось, но уже забыл), с чем Интел продаёт свои платы с тыщей пентиумов.
no subject
Date: 2016-04-27 20:58 (UTC)Был бы жёсткий реалтайм, интересно было бы для микроспутников. Если, цепочки процессоров можно перепрограммировать.
no subject
Date: 2016-04-27 21:40 (UTC)и epiphania лежит e16g301 - так и не дошли руки, кроме как на вспомогательном цинке Линукс пустить. я так понимаю, что adapteva всё? а как дышали с той епифанией... вобщем уже раритет. ну и как теоретически предполагаю - это было скорее что-то типа нвидеошных чипов, но пожиже. то есть как бы для эмбедед, но не совсем хомебрю
кстати и отечественная инициатива была (в рамках истерии импортозамещения, нанотехнологий и вообще вставания с колен непонятно было фейк или что-то реальное) мультиклет - но не видел вживую
а из хомебрю вспомнилось propeller chip (parallax) - в руках не держал, но очень понравилась целевая аудитория и исполнение в труЪ dip-40. я так понимаю, что ардуина не дала этому направлению развиться - имхо, пичаль
no subject
Date: 2016-04-27 22:02 (UTC)no subject
Date: 2016-04-27 23:35 (UTC)no subject
Date: 2016-04-27 23:40 (UTC)no subject
Date: 2016-04-28 00:42 (UTC)no subject
Date: 2016-04-28 03:17 (UTC)Но говорят что программировать для него это тот еще квест. Т.е. простую программу написать несложно, но вот добиться хорошего параллелизма и производительности крайне тяжело.
no subject
Date: 2016-04-28 05:19 (UTC)no subject
Date: 2016-04-28 05:22 (UTC)no subject
Date: 2016-04-28 05:30 (UTC)no subject
Date: 2016-04-28 05:34 (UTC)Я заранее извиняюсь за глупый вопрос, но...
Date: 2016-04-28 05:35 (UTC)no subject
Date: 2016-04-28 05:41 (UTC)no subject
Date: 2016-04-28 06:08 (UTC)no subject
Date: 2016-04-28 08:23 (UTC)no subject
Date: 2016-04-28 08:32 (UTC)Не соглашусь. Сановский OpenBoot - вполне хорошо читается в тех частях, которые не обфусцированы. И очень хорошо понимается - у тебя есть REPL, чтобы писать-читать любые регистры железки, интерактивно и удобно. Для этой области примемения, он по-моему очень хорошо подходит.
Магазин или CMS я бы на Форте писать, конечно, не стал. Но для околожелезных задач он хорошо подходит. REPL плюс расширяемость синтаксиса - можно фигячить любые DSL.
no subject
Date: 2016-04-28 17:03 (UTC)кроме того я вдруг вспомнил про православный мультиклет
no subject
Date: 2016-04-28 17:47 (UTC)Всех остальных птенцов выпихивают из гнезда, не оставляя никаких шансов.
no subject
Date: 2016-04-28 17:54 (UTC)Re: Я заранее извиняюсь за глупый вопрос, но...
Date: 2016-04-28 17:59 (UTC)Re: Я заранее извиняюсь за глупый вопрос, но...
Date: 2016-04-28 18:41 (UTC)Re: Я заранее извиняюсь за глупый вопрос, но...
Date: 2016-04-28 19:06 (UTC)Гипотеза спорная.
no subject
Date: 2016-04-29 07:27 (UTC)для FPGA/VHDL тоже есть свой язык, почти с++, почему б тут не сделать похожую надстройку над С или чем то подобным если уж чип есть, и по факту каждое ядро более менее "стандартно". Программят же уже под GRID и подобное когда у тебя 100500 и более ядер, и все связаны, но кто как, напрямую ваще внутри проца, по шине, или infiniband или еще как ...
no subject
Date: 2016-04-30 09:53 (UTC)