Записки 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
SiliWiz aka кремниевый маг 🧙‍♂️

Всем привет. Принес вам интересный ресурс/курс SiliWiz.

Что это и для кого это?

Это небольшой курс на базе открытых инструментов проектирования, которые могут помочь вам получить базовое понимание того, как работают и производятся полупроводники. Без преувеличения можно смело сказать, что полупроводники - самая важная технология 21 века.
Так что самое время разобраться что это за semiconductor, и почему долина кремниевая, а не силиконовая😅

Исходники инструмента для рисования логических гейтов в открытом доступе на github. Поковыряться в коде можно тут.

Для себя нахожу этот курс очень самобытным и занимательным. Вся моя работа RTL инженера лежит в части frontend'a цифрового дизайна. Настало время спуститься на уровень backend'a и изучить, что происходит на уровне проектирования логических гейтов 🤓

Как я понял курс является демо-версией платного курса Zero to ASIC. Если интересно с подробностями сможете ознакомитесь по ссылке выше.

Stay tuned! 😎
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🔥10🐳3😁1🤓1
RISC-V процессор серверного класса😘

Все привет. Сегодня поговорим что интересного было представлено на мероприятии RISC-V Open Hours от 8-го февраля [см. запись на youtube].

Не так давно, на зимнем RISC-V Summit в Сан-Франциско компания Ventana анонсировала 192-ядерный процессор серверного класса.
Теперь с анонсом выступила компания SOPHGO, представив процессор SG2042 и двух-сокетный RISC-V Server.
Процессор SG2042 состоит из 64 ядер, [на двух-сокетной плате умножаем количество ядер на 2], с набором инструкций RV64GC — поддержки вектора, гипервизора, битманипа нет. По когерентной шине ядра общаются с ОЗУ на базе DDR4 и PCIe 4.0 (денег на ip не пожалели). Подробнее блок-схему архитектуры чипа смотри на этом слайде.

Помимо двух-сокетной платы, представили Pioneer Board в форм факторе microATX, и Pioneer Box [Whats in the box!?], где судя по описанию есть видеокарта AMD RX550, адаптер Intel AX210, 1TB Nvme SSD, проводной адаптер 10GbE с двумя портами SFP+ и внимание... RGB CPU cooler 🥳
Да, они отдельным пунктом прописали, что в их системе Pioneer Box не просто кулер, а с красивыми огонечками.

Думаю, 2023 год можно объявлять годом анонсов серверных процессоров и прототипов на базе RISC-V ISA. Что же касается новинки от SOPHGO странно сегодня видеть релизы серверных процессоров без поддержки H, V, B расширений.
Причем в этом же докладе SOPHGO представили RISC-V MPU CV1800B c подписью Vector, но так и не уточнили это полноценный V-ext или какая-то фича для около векторных вычислений аля аппаратный вычислитель для вычисления функции активации или операции свёртки. Вменяемую документацию найти не удалось, поэтому, пока что довольствуйтесь моими и своими догадками 👨‍💻

Stay tuned! 😎
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🐳3🎉2🔥1🤯1
The OpenROAD 7nm Physical Design Contest 🤔

Всем привет, сегодня расскажу вам о контексте от OpenROAD.

OpenROAD это открытый маршрут проектирования RTL-to-GDS. От этапа написания Verilog кода, до отправки заветного архива с GDS на фабрику.
Примеры открытых проектов, разработанных при помощи инструментария OpenROAD вы можете найти на сайте efabless в разделе Open MPW.
Например, проект микроконтроллерного ядра. Аналог AtMega328 [аналог по функционалу, но с лучшим перфомансом]. Ядром микроконтроллера выступает opensource IP от Syntacore SCR1.

Контест подразумевает работу не с HDL, а с инструментарием OpenROAD и 7нм [7нм Карл!] учебной библиотекой от ASU. Так что, software инженеры, самое время коллабится с железячниками и вкатываться в контест.

На контесте два основных направления.

Problem A Best Performance. Задача — работая с репозиторием OpenROAD-flow-noscripts добиться лучшего перфоманса для целевого дизайна. Критерий лучшего перфоманса "Best fmax with 0 wns".

Problem B Best Possible Runtime. Репозиторий тот же, но теперь нужно добиться наилучшего Runtime без значительных отклонений по площади и частоте для целевого дизайна. То есть улучшая показатель рантайма ваши изменения в конфигурационных скриптах не должны превратить дизайн процессора в счетчик или в огромный последовательный сумматор. "For the given machine setup, minimize runtime for best area and performance."

В качестве целевых дизайнов предлагается 3 ядра на базе RISC-V:
1) RISC-V32i
2) ibex
3) swerv_wrapper

Награда за победу в одной из категорий 500 долларов 💰

Процесс регистрации в контесте, сроки, системные требования для установки OpenROAD, дополнительные призовые категории, смотри на сайте соревнования. Так же на сайте найдешь канал в gitter, slack, e-mail, куда можно задать любые интересующие тебя вопросы. 🤓

GLHF! 😎
Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🤯32🐳2🤔1
HAL open science ✏️

Всем привет 👋🏻
Принес вам полезных ссылочек🚀

Сегодня расскажу, где искать научные публикации, кандидатские диссертации, чтобы отслеживать какие тренды на сегодня являются актуальными и популярными.
Умение пользоваться открытыми архивами — достаточно важный навык, как и для RnD задач, так и при подготовке квалификационных работ.
А если еще связать авторов работ с их LinkedIn 🎰 профайлом, то из открытых источников можно понять, чем занимается та или иная компания. Например, в 2021-м обсуждали, как Chisel, FIRRTL и RISC-V начали фигурировать в описании вакансий у Intel, AMD, Nvidia.

Думаю, все знают про arXiv, IEEE Xplore, а вот про HAL open science, как правило народ не слышал.
HAL [загляни на вики, название выбрано не просто так🤓] — бесплатный электронный архив научных статей. Ориентирован в первую очередь на французских ученых, но участие в нём никак не ограничивается.

Пользоваться очень просто. Переходишь по ссылке из заголовка поста и вбиваешь ключевые слова, которые тебе интересны.

Вот, например, статья про отказоустойчивое RISC-V ядро, с поддержкой векторного расширения.

Или можете тебе интересно как выглядят кандидатские диссертации в европейских вузах? Вот диссертация про компромисс между энергопотреблением и точностью в FPU вычислителях.

В заключении поста поделюсь еще классным твиттер-аккаунтом.
Автор HPC энтузиаст, и в его твиттере часто проскакивают ссылки на крутые исследовательские работы. Например, вот эту статью, я подсмотрел в аккаунте Underfox'a.

Stay tuned! 😎
Please open Telegram to view this post
VIEW IN TELEGRAM
👍25🤓4🔥32🐳2
А что почитать? 📖

Всем привет. Сегодня принес вам книгу ссылку на книгу, которую прикупил.

Речь идет о книге Chip War: The Fight for the World's Most Critical Technology. Книгу написал историк экономики Крис Миллер.

Интересно посмотреть на противостояние США и Китая в борьбе за новую нефть и газ [примерный перевод CEO Intel'a. Да, сегодня новый ресурс — это чипы, подробнее читай по ссылке выше] с точки зрения человека со степенью по истории из Йельского университета.

Как же так, не прочитал книгу, а уже советуешь? 🧐
Не совсем. Подкупило меня в этой книге три вещи:

1. Интервью Криса с обсуждением книги.
2. Огромное количество положительных отзывов на Amazon.
3. О книге писали в The Economist, Forbes. Что-то это да значит.

Покупать, пиратить, читать или не читать - дело каждого, но не поделиться с вами этой находкой я не мог.


Stay Tuned! 😎
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13👌4🔥3🤔2❤‍🔥1🐳1🤓1
Конференция FPGA-systems IV

Всем привет 👋🏻
Если конференций, митапов по программированию десятки, сотни, то с конференциями по разработке цифровой аппаратуры все совсем грустно.

Одна из немногих ламповых, локальных конференций - это конференция FPGA-Systems.
Участие полностью бесплатно, не надо покупать никаких билетов на офлайн/онлайн участие. Делается конференция полностью на альтруизме Михаила Коробкова и силами неравнодушных помощников.

Почему нужно участвовать на таких конференциях?

1. Нетворкинг. На конференции я познакомился с замечательными людьми. С кем-то совместно пилили пет-проект, с кем-то обменялись идеями и наработками для ph.d тезисов.
2. Если вы студент, стажер, то можно познакомиться с потенциальными работодателями. Обсудить интересующие вопросы прохождения стажировки или задать любые интересующие вопросы о нюансах профессии?
Мол, а правда что на JS писать проще, а денег дают больше? 🤡
3. Может у вас идея для стартапа и вы хотите обсудить ее целесообразность или найти исполнителей? Живое общение на конференции - это то что вам нужно.

Когда?

▫️01 апреля 2023 Москва
▫️08 апреля 2023 Санкт Петербург
▫️15 апреля 2023 Томск

Не достаточно тебя убедил? Бегом читать пост Доки и регистрироваться на конференцию ПЛИС Систем.
👍154🔥3🐳1🏆1
Портал инженерной культуры от Yadro

Всем привет 👋🏻

Если пропустили мой пост про применение RISC-V процессоров в космосе, то можете ознакомиться с версией, адаптированной под широкую аудиторию на портале Yadro.
Оформление и картинка там приятнее телеграмных/твиттерских постов.

p.s. не забывайте про Школу Синтеза, которую коллеги из Истового Инженера активно поддерживают. Рекомендую ознакомиться с занятием "от FIFO к flow control". Сам с большим удовольствием прослушал лекцию и закрыл пару пробелов в знаниях 🤓
👍12😱4🐳21👌1
Одноплатный компьютер от ASUS на базе RISC-V ядра от Andes🇹🇼

Всем привет 👋🏻
В мире одноплатных компьютеров пополнение. Две тайванские компании ASUS и Andes совместно выпустили одноплатный компьютер Tinker V на базе RISC-V процессора.

Мозгом платы выступил 64-битный процессор Renesas RZ/Five, содержащий одно ядро AndesCore AX45MP.

Ядро для процессора выбрано достаточно простое (одно из самых дешевых представляемых Andes? 🧐).
AX45MP: in-order, dual-issue, c 8 стадийным конвейером. Из интересных особенностей - поддержка draft'a P extension.
Как и в примере с чипами от Alibaba, Andes указывают в качестве целевой ISA AndeStar V5, a не RISC-V, но при этом указывая, что Andes ISA полностью совместима с RISC-V RV64 GCP little endian.
Зачем это делается остается только гадать. Думаю — это один из маркетинговых ходов, чтобы продемонстрировать, что кроме чипа с поддержкой RISC-V вы приобретаете различные программные фичи от Andes. На странички ядра A45MP упоминается про некоторый Andes V5 performance/code size extensions, который судя из названия дает какой-то буст в перфомансе при компиляции на dev tools от Andes.

Что там по бенчмаркам?
5.63 Coremark/MHz, 3.27 DMIPS/MHz
Сравнить результаты Coremark с конкурентами можно на wikichip.

А что там по периферии на одноплатнике?
Есть два сетевых порта 1GbE (RJ45), по одному разъёму Micro-USB и Micro-USB (OTG), гребенка gpio, 2 x CAN Bus (6 pin terminal block), JTAG для отладки.

Видно, что в сравнении с другими одноплатными компьютерами серии Tinker ASUS Tinker V выглядит максимально просто.

C чем сравнить плату TINKER V?
Тут на ум приходит сразу Raspberry Pi 4 c Cortex A72 на борту и китайский одноплатник от StarFive VisionFive с процессором на базе ядра Xuantie-910, о котором я уже писал тут.

Заключение

По субъективному мнению автора канала к Tinker V стоит относиться как к хардверному анонсу о намерении в сотрудничестве между Andes и ASUS.
Ценник 💰на данную отладочную плату найти не удалось, поэтому и сравнить с конкурентами по цене/качеству смысла нет
👍111🔥1🐳1
Подготовка к хардверному собесу в FAANG? 😱

Всем привет 👋🏻
На реддите наткнулся на занимательный пост. Новый сервис chipdev.io предоставляет услуги по подготовкe к интервью с инженерами из топ компаний, аля Apple или Nvidia.

Испытываю достаточно противоречивые чувства к данной бизнес модели и по большей степени негативные.
С одной стороны это прекрасная возможность получить фидбек от квалифицированного инженера из топ.тех компании и начать работать над своими пробелами в знаниях.
С другой стороны это кажется сервис по натаскиванию на прохождение собеседования в определённую компанию, что кажется как минимум не этичным.
Стоп, хардвер инженеры придумали репетиторов? 🛑
А самое забавное, что будет с кандидатом через пару месяцев, когда онбоардинг закончится и нужно будет решать реальные задачи, а не проходить интервью? 🧐

Кажется, самая малина тут для анонимных спецов из условного FAANG'a:
1) за деньги собеседуем пытливого кандидата
2) если не совсем плох, то говорим какие пробелы закрыть, что изучить
3) через пару месяцев кидаем рефералку и собесим к себе в команду
4) получаем премию за баунти программу
5) ...
6) PROFIT!

Что думаете о таком подходе? Добро пожаловать в комментарии для обсуждения ⌨️
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🤔5🤯1😱1🐳1
System Verilog Assertion и синтаксический сахар, разбираемся |=> или |-> ##1

В рамках данной рубрики мы уже обсуждали подходы для описания процедурных блоков always (ссылаясь на утекшие код-стайл гайдлайны от Intel), оператор inside, а теперь добрались до SVA.

Наткнулся на интересное сообщение от Юрия Панчула в чате Школы Синтеза.

Обсуждается вопрос, как лучше описывать задержку для проверки выражение в следующем такте: через |=>, что является синтаксическим аналогом неблокирующего присваивания, или через оператор |-> ##N (привет задержкам в синтезируемом коде).

Небольшой ликбез для энтузиастов, которые еще не сталкивались с ассёршинами.
SystemVerilog Assertions (SVA) используются для проверки соответствия поведения цифровой схемы заданным требованиям и свойствам. Это позволяет выявлять ошибки в проектировании на ранних этапах верификации и ускоряет процесс разработки.
Например, мы знаем, что в одном такте не может произойти N взаимоисключающих событий, такое условие мы можем описать при помощи SVA, объединяя сигналы оператором конкатенации и используя функцию $onehot. Смотри пример для csr блока в дизайне scr1.

Вернемся к нашему синтаксическому сахару😋
Основные доводы для замены |=> на |-> ##1 из статьи Каммингса:

1) для описания SVA достаточно |->, а оператор |=> избыточная надстройка, заменяемая |-> ##1;
2) инженер может перепутать операторы |-> и |=>, а при явном описании величины задержи ##1, ##N, ##0 выстрелить в ногу становится сложнее;
3) поговаривают, что в ARM в кодстайл гайде запрещается использовать |=>
Доверяем ли мы инженерам ARM'а в этом вопросе? 😁

"At multiple DAC conferences many years ago (~2004 and ~2005), my colleague, Alan Hunter of
ARM shared that ARM engineers were not allowed to use |=> instead they were required to use
|-> ##1
"

Подробнее ознакомиться с сабжем можно в статье Каммингса [линк на pdf], раздел 9. А обсудить описание SVA или почему опять инженерам нечем заняться кроме придумывание очередного гайдлайна всегда можно в комментариях 💬
#bestpractice
Please open Telegram to view this post
VIEW IN TELEGRAM
👍13🤯21🐳1🤓1
Хакатон SoC design challenge 2023

Всем привет 👋🏻
В прошлом году прошел первый в России хардверный хакатон [заметка на сайте RISC-V].

Прошел год и пришло время анонсировать второй хакатон SoC Design Challenge.

На хакатоне, помимо прошлогодних треков: Функциональная верификация, Топологическое проектирование, RTL проектирование появилось направление RTL проектирование PRO. Это новый трек для инженеров в области аппаратной разработки, которые уже имеют опыт проектирования процессоров.

Подробнее о том какие были задания в прошлом году на треках топология и верификация можно прочитать в заметках на хабре. Про трек RTL проектирование можете прочитать мою заметку на канале.

Что нового в этом году

Задачи по трекам остались в той же направленности но были прокачаны по функционалу. В частности потому что теперь хакатон рассчитан на 3 дня с пятницы по воскресенье.

На RTL треке вместо двух стадийного процессора дается 5 стадийный процессор с архитектурой RV32IM, что дает больше путей по его оптимизации и улучшению не зацикливаясь на задачи банального увеличения стадий вычислительного ядра. Так же задача увеличения стадий вычислительного ядра усложняет верификацию ядра. Теперь участники работают над IP-сore максимально приближенным к индустриальным решениям микроконтроллерного класса.
Верификация. Заменен проверяемый дизайн для большего функционального покрытия и вариаций проверяемых ситуаций. Так же идея осталась в написании констрейнов для готового testbench.
Топология. Улучшены дизайны которые необходимо разработать и провести их моделирование и экстракцию.

FAQ
1) Ого! Крутотенюшка. Как подать заявку на участие?
🧐

На страничке SoC design challenge найдете ответы на все вопросы по регистрации и участию.

2) До какого числа открыта регистрация? 📅

Сроки подачи заявки на участие - до 7 апреля включительно.

GLHF 😎
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15🔥9❤‍🔥3🐳3🤔1🎉1🍌1
После стольких лет? 🧙‍♂️

Всем привет 👋🏻

Microchip обновила страничку с информацией о микроконтроллере ATmega328P добавив метку NRFND.

Теперь по рекомендации Microchip в 2023-м лучше не использовать 8-битные контроллеры в новых разработках, но Arduino евангелисты с вами не согласятся 🤡 [автор канала двумя руками за DIY колхоз на арудинках/малинках, речь идет про коммерческие продукты сегодняшнего дня].

В тему о размышлениях о месте 8-битных контроллеров в продукции 2023-го года, softcore IP и конечно же RISC-V, рекомендую посмотреть доклад Olof'a с RISC-V Summit.

И не забудьте про заглянуть в поисках интересных дизайнов на efabless, например вот вам RISCDUINO на базе SCR1.
👍16🐳3😢2🤡1
Conference on Next Generation Arithmetic (CoNGA)

Всем, привет. В этом месяце актив на канале совсем упал, поэтому попробую исправить ситуацию ссылками на интересные и важные события этого месяца, по мнению автора канала конечно же😎

Речь в этом посте пойдет о прошедшей конференции CoNGA.
Конференция CoNGA (англ. Conference on Next Generation Arithmetic) - это научно-техническая конференция, на которой обсуждаются последние достижения в области разработки новых арифметических систем и алгоритмов для решения сложных математических задач.

Ознакомиться с слайдами докладов вы можете по этой ссылке.

Must see доклад - это Keynote: Posit arithmetic in the European Processor Initiative. Тут круто расписано про компании, которые вовлечены в EPI*, из каких блоков состоит европейский ускоритель и какое место Posit в EPI.

*Подробный разбор EPI я проводил в этом посте.

Остальные доклады, представленные на CoNGA относятся непосредственно к имплементациям аппаратных блоков или программных библиотек для поддержки стандарта Posit.
👍119🔥3❤‍🔥2🤓1
Читаю интервью Бориса Арташесовича Бабаяна от 2017 года. Ничего ж не меняется :)
😢21👍3😱2🤡1🥱1
SAPEON X220 AI accelerator chip

Сегодня поговорим о ускорителе инрференса нейронных сетей от SAPEON.
Раньше я не встречал ускорителей, которые работают только с целочисленной арифметикой. На выбор int4/8/16 и никаких тебе флотов-754, брейнфлоатов и тем более позитов.
Что из себя представляет SAPEON X220? Наша любимая числодробилка с внушительными тэрраопсными вычислительными показателями - Сomputation Capability
(INT8)
87
TOPS
Boost 100 TOPS
(данные взял из этой презентации)
Для сравнения у NVIDIA A2 -
Peak INT8 Tensor Core 36 TOPS | 72 TOPS*

1)при этом нвидия отлично работает с флотами
2) *With sparsity - 72 TOPS достигается при наличии большого количества нулей в наборе данных

Выше нашел только у VERSAL от AMD/Xilinx,
с показателем 145 TOPS (INT8).

Стоимость продукта для сравнения с конкурентами пока не известна, ждем апдейтов на сайте производителя.

Вопрос к читателям 🤓 канала. Насколько распространен подход инференса нейросетей используя только целочисленную арифметику? Я от темы ML/AI далек и буду рад любым ссылкам и ответам в комментариях 😅
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍4👎1🤬1
Всем привет. Пришел к вам за фидбеком. Думаю добавить немного образовательного контента на канал и хочется понять, что именно вам может быть интересно. У меня на канале, как уже и матерые RTL разрабы, так и стажеры, студенты и люди не связанные с разработкой hardware.

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

1) Пройти избранные, с точки зрения автора канала конечно же, лабы из курса RVfpga и подготовить лонгрид с разбором и дополнительными разъяснениями лабораторной работы. Например, приглянулась 17-я лаба Superscalar Execution. Столько раз рекламировал этот бесплатный курс, следующий шаг начать его проходить на канале 😎
2) За время работы, учебы, преподавания скопилась коллекция вопросов и задачек по HDL, компьютерным архитектурам, цифровому синтезу. Вижу примерно такой вариант, я прикладываю скриншот с кодом на языке Verilog/SV и ваша задача найти и написать, что с ним не так с синтаксической точки зрения или с точки зрения синтеза, а может с точки зрения логики работы блока. Либо разбираем академические задачки/вопросы с курса по компьютерным архитектурам, что-то из серии:
Количество инструкций, извлекаемых за один такт тактирования - определяется архитектурой или микроархитектурой процессора?
3) Сейчас в работе начал активно применять cocotb. Не скажу, что cocotb прекрасен для всех задач верификации, но в контексте компьютерной арифметики, когда у тебя поток входных данных и выход, который нужно сравнивать с некоторой золотой моделью в этой области cocotb + python просто изумительны.
На python легко нагенерить необходимые данные, а cocotb позволяет накидать простенький юнит_тест, не спотыкаясь об синтаксис SV. Стильно, модно, молодежно. Собственно думаю почему бы нам не написать очередной матричный умножитель/ FMA для условного int4 и не верифицировать его при помощи cocotb?

Для дискуссии, обменом мнений и предложений велком в комментарии и не забудь пройти опрос под этим сообщением🙃
Please open Telegram to view this post
VIEW IN TELEGRAM
8👍3
Radiona ULX4M

Всем привет 👋

Готовится к выпуску новая отладочная плата от Radiona - ULX4M.

Предыдущая разработка компании ULX3S нашла большой отклик среди адептов open source hardware. Фишка ULX3S - это FPGA от Lattice ECP5, с которой умеют работать большинство открытых маршрутов проектирования HDL to bitstream, а так же внушительная периферия: GPDI, SDRAM, ESP32 (wifi + bluetooth).
Примеры проектов, реализованных на ULX3S можно найти тут.

А что там у новинки? Разработчики платы решили перейти к формату Expansion Boards & Accessories, когда у нас есть несущая плата с FPGA + DDR памятью, а ля System on Module от trenz-electronic и плата с необходимой периферией, куда подключается наш SoM. Соответственно платы расширения могут меняться в зависимости от задачи. Для видеопреоцессинга одна плата, для DIY проектов какие-либо шилды по размерам совместимые с малинкой или orangepi.

Подробнее с фишками платы и различиях в версиях LS/LD можно ознакомиться на странице проекта.

За ходом разработки можно следить на гитхаб. Да-да гитхаб для разработки печатных плат git тоже активно используется😎

p.s. Всем спасибо кто прошел опрос, лаба по RVfpga и задачки по HDL уже в работе 👨‍💻
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11👍6
Zfa Standard Extension for Additional Floating-Point Instruction

3-го мая 2023-го года на public review выкатили новое RISC-V расширение.

Основная фишка - это добавление Load-Immediate, а именно мгновенная загрузка в fp регистр, а не выгрузка из памяти или move из целочисленного регистрового файла, что в некоторых задачах будет ускорять передачу операндов на вычислительный юнит.

Откуда же брать эти константы? Как и где хранить знак, экспоненту, мантиссу? Предлагается хранить 32 значения, т.к. immediate поле кодируются 5 битами. Таблицу (массив хранимых значений) предлагается заполнить константными значениями, которые являются наиболее часто используемыми в наборе мат. библиотек, например: Min positive normal, inf, ±1.0, 0.5 и.т.д.
Конкретно, эти значения имеют не более двух значащих битов мантиссы, отличные от нуля. Такой подход был выбран для упрощения реализации таблицы. Чтобы хранить не все поле мантиссы [а это 52 бита для dp, 112 бит для qp], а только, например, старшие три бита, которые представляются различными комбинациями 1 и 0.

Для подробностей смотри раздел 25.1

Второе нововведение стандарта - это дополнение для операций минимума и максимума, видимо для того, чтобы поддерживать одновременно 2008 и 2019 стандарт 754-го, когда изменилась обработка функций max/min.

Стандарт IEEE 754-2008 определяет функции minNum и maxNum, которые возвращают минимальное и максимальное значение из двух входных данных соответственно. Эти функции не возвращают NaN, если один из входных параметров является NaN, а другой - не NaN.

Zfa вводит команды fminm.s и fmaxm.s, которые выполняют точно такую же операцию, как fmin.s и fmax.s, за исключением того, что если любой операнд является NaN, то возвращается каноническое NaN. Это означает, что если один операнд является числом, а другой - NaN, то возвращается каноническое NaN.

Рассуждения о различиях max/min в стандартах 2008/2019 и NaN-prop можно найти тут и тут.
👍6🔥5🐳4👌1
После стольких лет?

Xilinx в недавнем релизе Vivado добавили поддержку линта.

Чем это принципиально отличается от подсветки ошибок и ворнингов, которые были раньше не расскажу. Кому интереснее покопаться подробнее - качайте последний релиз Vivado 2023.
Из приятных фич можно вейвить ворнинги, которые вам не важны в текущем проекте.

Линтер на лету ошибки не ловит, а при каждом изменении исходником нужно его перезапускать отдельно, как синтез или RTL analysis.

В релизе про Lint ничего не упоминается, а найти хоть какую-то информацию можно в нашем любимом UG895.

А если в поисках дешевого и строгого и сердитого линта, то не забывайте про Verilator.

Вот небольшой пост про настройку линтера Verilator.
6👍4🐳3
Capability Hardware Enhanced RISC Instructions (CHERI) и RISC-V ядро от Miscosoft

Сегодня поговорим о CHERI и как Microsoft допиливал CHERI-IOT к softcore от ibex

Примерный перевод с сайта университета Кембриджа о том что же такое CHERI.
Capability Hardware Enhanced RISC Instructions (CHERI) - это архитектурная концепция и набор инструкций (да-да это ISA над ISA), разработанных для повышения безопасности и изоляции в компьютерных системах.

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

Microsoft для проекта cheriot-ibex имплементировала поддержку 30 (да-да спешите видеть как инженеры Microsoft пишут на Verilog!) инструкций из спецификации CheriIoT ISA.
Ознакомиться со спецификацией на Cheri IoT можно тут. Там же приведен список инструкций, необходимый для имплементации подмножества Cheri ☺️
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8🔥41🐳1