Записки CPU designer'a – Telegram
Записки CPU designer'a
2.93K subscribers
195 photos
2 videos
5 files
292 links
Всем привет. Меня зовут Николай.
Работаю RTL design инженером, амбассадором в RISC-V International.
В свободное время пишу о магии процессоростроения и цифровом дизайне.
Download Telegram
Записки CPU designer'a
Делюсь впечатлениями от доклада про поддержку Posit-вычислений в RISC-V процессорах. Расстроило, что для поддержки Posit инструкций просто смапили наборы F/D. То есть программа может работать, либо с IEEE-754, либо с Posit. Одновременно перегонять плавучку…
В контексте бесед о Posit и его поддержки на уровне расширения в ISA RISC-V рекомендую почитать эту статью (спасибо Doke за ссылку). Здесь разбирается "proposed XPosit RISC-V extension".

Тема для размышлений:
Напомню, что в Posit только 1 режим округления. Посмотрите на набор инструкций для поддержки расширения F - там 3 бита отведены под поле rm (rounding mode).
Как это можно/нужно обыграть на уровне проектирования Posit-extension?
Тем временем мы кажется пропустили новость дня про Yadro и Imagination Technologies

"Imagination Technologies announces that its ultra-efficient BXM-4-64 GPU has been licensed by YADRO Microprocessors, a fabless IC design house, subsidiary of YADRO, a leader in enterprise server and storage solutions in the Russian market. The processor will be implemented in YADRO Microprocessors’ EL Construct T RISC-V based System-on-Chip (SoC), targeting enterprise tablet application and is expected to ship in 2023."

CPU от Syntacore
GPU от Imagination?
🧐🧐🧐
Технические неполадки на RISC-V Summit
Если подключились к трансляции, то не обновляйте экран.
Александр Редькин, генеральный директор Syntacore, войдёт в состав совета директоров RISC-V

"At this Premier level, Alexander Redkin, CEO and co-founder at Syntacore, will join the RISC-V Board of Directors."
На YouTube канале RISC-V International начали выкладывать записи докладов с RISC-V Summit 2021
Доклад Syntacore и анонс нового IP
Доклад от института вычислительной техники Китайской академии наук.

Успехи коллег из Китая впечатляют.
Удивил timeline разработки hp out-of-order CPU на Chisel. От первого коммита до тейпаута прошло чуть больше года.
Конечно я не знаю количественные характеристики на проекте по человеко-часам, но все равно впечатляет.

В докладе очень подробно расписаны подходы к perfomance modelling - вот тут таймкод. Про эмуляторы за миллионы долларов тоже упомянули.

Моделирование сложного CPU в составе которого многоуровневые кэши, протоколы когерентности, глубокие конвейеры, внеочередное исполнение команд, сложный предсказатель переходов, и.т.д. - отдельный технический челлендж.

В докладе рассмотрен подход к параллельной симуляции при помощи чекпоинтов. Подробнее про подводные камни такого подхода - смотри по ссылке выше.

Сам процессор полностью открыт, написан на Chisel. Исходники найти можно на git'e
Сравнение векторных расширений RISC-V, ARM, AVX-512 на RISC-V General Member Meeting

Спасибо Дмитрию Кузнецову за наводку
Актуальный вопрос [особенно на фоне мирового дефицита чипов] от автора легендарного учебника по цифровой схемотехнике и архитектуре компьютера - Девида Паттерсона (либо вопрос от его тёзки).

Вопрос: когда снизится цена на чипы на базе RISC-V? Видимо вопрос адресован больше к SiFive.

Сейчас простейшая отладка на базе FE310 стоит порядка 20$

За отладку в форм-факторе Arduino придется отдать уже 40$

Всегда конечно есть разработчики из поднебесной - Longan с отладкой за 7.5$

Думаю последний вариант не особо интересен преподавателям в США😅
Записки CPU designer'a
Доклад от института вычислительной техники Китайской академии наук. Успехи коллег из Китая впечатляют. Удивил timeline разработки hp out-of-order CPU на Chisel. От первого коммита до тейпаута прошло чуть больше года. Конечно я не знаю количественные характеристики…
Наконец-то дошли руки до XiangShan

Давно хотел разобраться с chisel, посмотреть как себя ведет сгенерированный verilog под vivado/quartus.

Спустя несколько часов, прописывания
всех environment, установки chisel, jdk, verilator, изучения issue на китайско-английском языке пришел к следующим выводам:

1. с 16 гб собрать процессор даже в минимальной конфигурации не получится.
# An error report file with more information is saved as:
# /home/nicktern/XiangShan/hs_err_pid12197.log
1 targets failed
XiangShan.runMain subprocess failed
Однако, вот тут у пользователя это получилось. в build config он прописал 16гб, но при этом реальной памяти было 24гб. Так что если у вас, как и у меня 16гб оперативки, то можно даже не пытаться

2. я бы не потратил несколько часов на попытки переписать build config, если сразу прочел бы Troubleshooting Guide, где на первой же строчке написано:

Make sure your device have enough memory. Xiangshan project is quite memory intensive. We recommand 32GB memory for MinimalConfig and 64GB memory for full XiangShan
🤦‍♂️🤦‍♂️🤦‍♂️

3. Хорошо, когда у процессора есть документация. Плохо когда она только на китайском.

Пока что буду подыскивать сервер для экспериментов и переключусь на Berkeley Out-of-Order RISC-V Processor, хотя кажется мне лучше все-таки начать с ChiselV😅
This media is not supported in your browser
VIEW IN TELEGRAM
С ChiselV и правда оказалось все проще. Chisel to Verilog в этот раз не запросил 16+гб оперативной памяти. Дизайн с первого раза собрался под Vivado. Покопался в Verilator, нарисовал в консоли название лучшего FPGA комьюнити🤟🏻

p.s. @KeisN13, я знаю что ты уже хочешь написать. Статья для ПЛИС-систем в процессе
Записки CPU designer'a
Наконец-то дошли руки до XiangShan Давно хотел разобраться с chisel, посмотреть как себя ведет сгенерированный verilog под vivado/quartus. Спустя несколько часов, прописывания всех environment, установки chisel, jdk, verilator, изучения issue на китайско…
XiangShan продолжение

Машины с 64гб оперативки хватило, чтобы транслировать Chisel в Verilog.

XiangShan в минимальной конфигурации (осталось разобраться по докам на китайском, что же включает в себя сборка в MinimalConfig и чем отличается от других).
По времени ушло минут 40, что кажется вполне себе неплохим результатом.
Ограничил память ОЗУ для сборки минимального конфига в 40гб ( в Troubleshooting Guide рекомендуют 32гб, но решил взять запасом). Судя по тому, что выдавал репорт загруженности системы в топовой нагрузке сжиралось 50 гб ОЗУ🥲
Вопрос - к чему тогда параметр, который судя по описанию ограничивает максимальную загрузку ОЗУ?

Полученный Verilog файл весит 44мб, 680804 строк.

Далее интересно оценить hw utilization процессора и убедиться в том, что сгенерированный Verilog вообще синтезизурется.

Закинул сгенерированные файлы в Vivado, выставил флаг out of context. Собирал проект под самый жирный Artix, увы под Kintex/Virtex синтезить не позволяет лицензия.

Итоги синтеза смотрите на картинке.
Для тех кому интересно поэкспериментировать с Chisel небольшой advanced list:
◽️Официальный сайт проекта;
◽️Chisel Tutorials;
◽️Лабораторные работы в Jupyter Notebook в браузере (не нужно ничего устанавливать на локальную машину);
◽️Лабораторные работы по Chisel от Technical University of Denmark;
◽️ Бесплатная книжка по Цифровому Дизайну на Chisel;
◽️ Ответ на вопрос о преимуществах работы с Chisel в сравнении с классическими проектирование на HDL;
◽️ Chisel/FIRRTL очень прожорливы к ОЗУ. О текущих проблемах и развитии компилятора Chisel/FIRRTL рекомендую посмотреть это видео.

p.s. за наводку на видео спасибо Игорю Фомину🤟🏻
Яндекс явно что-то знает🧐🧐🧐
AirPods за лабу?

В Berkeley Apple подкидывает мотивации студентам.
Выполнили лабораторные задания в команде раньше и лучше всех - получайте Airpods Pro.

Слайд стащил - отсюда [ссылка на загрузку презентации]

Напомню, что многие топовые ВУЗы давненько открыли доступ к большей части образовательных материалов.

Например презентации к лекциям в Berkeley по Computer Architecture and Engineering [CS152] можно найти тут
🔥4👍2
Приехала награда от RISC-V international😱😱😱

В этом году с командой школы синтеза подготовили и провели отличную сессию бесплатных занятий в Сколково, где так же были лекции и лабораторные работы по проектированию процессоров на базе RISC-V.

Лабораторные работы по теме RISC-V:

1. Микроархитектура однотактового процессора.

2. Микроархитектура конвейерного процессора и интеграция процессора с периферией.

3. Проектирование процессорного кэша и измерение его производительности.
🔥19👍6🎉6