Category: архитектура

Daemon

Платка для RetroBSD

Фирма Olimex выпустила плату специально для операционной системы RetroBSD.


На плате установлен микроконтроллер Microchip PIC32MX795F512H с архитектурой MIPS M4K частотой 80МГц, памятью ЭСППЗУ 512 кбайт и ОЗУ 128 кбайт.

Операционная система RetroBSD представляет собой глубоко переработанную модификацию Unix 2.11BSD, приспособленную для работы на процессорах с "плоской" памятью. В состав системы входит компилятор Си, интерпретаторы Basic, Forth, Scheme, Pico-C, текстовые редакторы vi, re, med, классический набор игр BSD.

Всем разработчикам из команды RetroBSD фирма Olimex предоставила бесплатные образцы платы, за что ей большое спасибо.
Улыбка

MIPS-микроконтроллер от Samsung

Samsung теперь тоже выпускает микроконтроллеры архитектуры MIPS. Да не простые, а двухпроцессорные!



Внутри у него неонка два процессора MIPS microAptiv с частотами 250MHz и 80MHz, сопроцессор с плавающей точкой, дополнительная система команд DSP, 1 мегабайт SRAM, 4 мегабайта SPI Flash, Bluetooth low energy, контроллер дисплея 800x480, гироскоп, акселерометр и магнетометр. Предварительную спецификацию можно скачать здесь (PDF).

Надо будет прикинуть, можно ли на этой железяке запустить LiteBSD.
Улыбка

Симулятор QEMU для PIC32

Сварганил на досуге забавную штуку: вариант симулятора QEMU для микроконтролеров Microchip PIC32. Инструкцию по сборке и примеры запуска можно посмотреть здесь: https://github.com/sergev/qemu/wiki

Симулятор реализует две архитектуры: pic32mx7 и pic32mz. Для каждой из архитектур поддерживается несколько разных плат. Весь список на сегодняшний день:Примеры запуска реальных приложений:
"Hello World" на плате Max32
2.11BSD на плате Max32
4.4BSD на плате WiFire
Улыбка

Описание системы команд Эльбрус

Спасибо коллегам из бывшего новосибирского ИТМиВТ: желающие имеют возможность изучить архитектуру и систему команд Эльбрус (PDF, 38Мб).  Имеется в виду Эльбрус-1 (1973-1979гг) и Эльбрус-2 (1977-1984гг) имени Бурцева, не путать с Эльбрусом-3 Бабаяна.

Прямо скажем, не самая простая архитектура, даже если сделать скидку на тяжелый стиль описания.  Я насчитал 236 машинных инструкций.  Повеселила мнемоника ПОСПИ: поиск по списку.  :)

Друзья, если у Вас есть возможность добыть какие-нибудь бинарные коды программ от Эльбруса, это может сильно помочь в создании эмулятора.  
Улыбка

Язык Эль-76

В дебрях сети обнаружились симулятор и примеры языка Эль-76:
http://web.archive.org/web/20030710092032/www.mstu.ru/studies/Others/War/IlbrusLanguage-emul.rar
http://web.archive.org/web/20030710091904/www.mstu.ru/studies/Others/War/IlbrusLanguage-docs.rar

Спасибо oboguev за наводку.  Язык в целом очень похож на Алгол-68, но семантически отражает особенности архитектуры Эльбруса: полиморфные операции, аппаратная защита массивов и т.п.  Переложил примеры в свою копилку.  Так выглядит обработка списков:Collapse )
Улыбка

Мультиклет и Кварк

Всю последнюю неделю новостные ленты пестрят радостными сообщениями про российский процессор принципиально новой архитектуры:В целом хорошее, положительное дело.  Команду разработчиков можно поздравить с изобретением действительно оригинальной архитектуры и получением инвестиций на её воплощение.  Но.  При ближайшем рассмотрении вся поднятая шумиха начинает вызывать подозрения.  Слишком много звучит противоречивых, неподтверждённых, да и просто ложных высказываний.  Я понимаю, что нынешнему поколению советских людей хочется хоть чем-нибудь гордиться: космосом, хоккеем, большим теннисом, ну или хотя бы процессором.  Но заменять реальную инженерную разработку имитацией успеха всё же не стоит.  Уже и про Линукс фантазируют, и про замену Интелу, а между тем всё на что может претендовать Мультиклет - микроконтроллеры и быстрая обработка цифровых сигналов.

На Хабре появилась взвешенная статья "Критический взгляд со стороны на процессоры Мультиклет", где озвучены многие сомнительные места.  А я конспективно пройдусь по списку преимуществ новой архитектуры, заявленному на официальном сайте Мультиклет.
  • Увеличение производительности при одновременном снижении энергопотребления - не представлено никаких реальных данных по сравнению производительности с другими архитектурами.  Например Dhrystone или Specmark.
  • «Естественная» реализация параллелизма (без решения задачи распараллеливания) - хотелось бы видеть примеры такого распараллеливания, хотя бы для простых известных алгоритмов. 
  • Уменьшение площади кристалла - отсутствуют данные для сравнения.
  • Эффективная реализация любого класса задач (коммутационная среда не вносит каких-либо ограничений в межклеточный обмен данными) - не подтверждено цифрами.  Боюсь, главный тормоз будет в подгрузке потока инструкций.
  • Выполнение задачи без перекомпиляции на любом количестве клеток - в качестве доказательства меня бы устроил запуск какого-нибудь простого кода на RTL-симуляторе процессора с разным количеством клеток. 
  • Непрерывное выполнение программы при деградации аппаратной среды (отказ клеток) - интересно, как это работает при отсутствии в процесоре схем контроля и отключения клеток.
  • Дефектоустойчивость производства (кристалл считается годным, даже при отбракованности части клеток) - аналогично.
Печалит отсутствие симулятора и компилятора Си для заявленной архитектуры.  На мой взгляд, имело бы смысл всю разработку затевать именно с этого, и при получении хороших результатов выпекать кремний.  А так телега впереди лошади.

Между тем, незамеченным прошло другая интереснейшая вещь: процессор "Кварк", разработанный дизайн-центром KM211.   Абсолютно оригинальный RISC-процессор с интересными параметрами, компилятор GCC, работающий Линукс, готовая микросхема К5512БП1Ф.

 

С документацией, правда, тоже хреново. 
Улыбка

Несложная логическая задачка

Мне тут надысь задачку подсунули, которую я слёту не смог решить. Дано: небоскрёб высотой 100 этажей и две бутылки водки. Требуется определить этаж, с которого бутылка, выброшенная в окно, разбивается. За минимальное количество попыток, естественно.

Есть верные решения от maugletta, trustix, chtovimenitebe, skolk, ircicq, denis_iv. А parovoz и dadv дали общую формулу для N этажей.

spamsink предложил идею решения для N этажей и K бутылок.