Obsidian + Excalidraw
Btw, веду свои личные заметки в Obsidian по мере сил.
Часто текста не хватает и нужна графика - тут я привык использовать drawio (сейчас это diagrams.net). Хотя раньше были также попытки использования excalidraw, но чёт каждый раз не удавалось закрепить это почему-то.
Сейчас попалось видео от создателя плагина для excalidraw и это просто
🐸 🐸 🐸
https://youtu.be/P_Q6avJGoWI?si=uCBIT0Y7d25PizWU
Там за 17 минут показываются все основные фичи, и плотность фич, как и степень интеграции запредельная.
Даже если не пользуетесь просто посмотрите, по ощущениям это примерно как будто к двумерному миру добавляют ещё одну ось, делая его трехмерным☀️
#workflow
@positiveslack
Btw, веду свои личные заметки в Obsidian по мере сил.
Часто текста не хватает и нужна графика - тут я привык использовать drawio (сейчас это diagrams.net). Хотя раньше были также попытки использования excalidraw, но чёт каждый раз не удавалось закрепить это почему-то.
Сейчас попалось видео от создателя плагина для excalidraw и это просто
https://youtu.be/P_Q6avJGoWI?si=uCBIT0Y7d25PizWU
Там за 17 минут показываются все основные фичи, и плотность фич, как и степень интеграции запредельная.
Даже если не пользуетесь просто посмотрите, по ощущениям это примерно как будто к двумерному миру добавляют ещё одну ось, делая его трехмерным
#workflow
@positiveslack
Please open Telegram to view this post
VIEW IN TELEGRAM
YouTube
The Excalidraw-Obsidian Showcase: 57 key features in just 17 minutes
✏️ Sign up for the Visual Thinking Workshop: https://www.visual-thinking-workshop.com/
🚀 Cohort 9 starts on 2 June 2024. 📔 We will process The Creative Act by Rick Rubin into a Book on a Page
-----
The Mindmap from the video: https://excalidraw-obsidian…
🚀 Cohort 9 starts on 2 June 2024. 📔 We will process The Creative Act by Rick Rubin into a Book on a Page
-----
The Mindmap from the video: https://excalidraw-obsidian…
🔥10✍6
constrainedrandom
Кажется, у этого питоньего пакета преступно мало звёзд на гитхабе. Или я чего-то не знаю?
Обычно для рандомизации с констрейнами в cocotb тестбенчах PyVSC является выбором по умолчанию. Однако, он довольно медленный.
Текущий пакет по сути обёртка над random и constraint. И он в десятки раз быстрее PyVSC. А на небольших наборах транзакций вполне себе соизмерим с солверами в коммерческих симуляторах. Ребята из Imagination в проде у себя его используют, но это правда не удивительно, т.к. пакет там и был рожден.
Картинки из недавнего доклада на ORConf: видео, слайды.
#cocotb #python
@positiveslack
Кажется, у этого питоньего пакета преступно мало звёзд на гитхабе. Или я чего-то не знаю?
Обычно для рандомизации с констрейнами в cocotb тестбенчах PyVSC является выбором по умолчанию. Однако, он довольно медленный.
Текущий пакет по сути обёртка над random и constraint. И он в десятки раз быстрее PyVSC. А на небольших наборах транзакций вполне себе соизмерим с солверами в коммерческих симуляторах. Ребята из Imagination в проде у себя его используют, но это правда не удивительно, т.к. пакет там и был рожден.
Картинки из недавнего доклада на ORConf: видео, слайды.
#cocotb #python
@positiveslack
🔥9✍6
Кстати, интересная мысль прозвучала в докладе из поста выше.
Большие вендоры влили/вливают очень много ресурсов, чтобы их солверы для SV поддерживали всё многообразие констрейнов и были эффективными. Но результатами понятное дело не делятся.
А у опенсорс сообщества по сути одна дорога - консолидироваться вокруг доступных SAT солверов. Интересно, что автор не упоминает, но verilator уже идёт этой дорогой. И кажется успешно - количество поддерживаемых констрейнов увеличивается постепенно.
Т.е. для того что-то похожее на SV рандомизацию появилось для питоньих тестбенчей в максимально эффективном виде, нужно всего-то подсмотреть как это делают в вериляторе, написать подобное отдельной прослойкой на плюсах/расте, сделать биндинги в питон. И кажется будет красиво. Надеюсь когда-нибудь найдется герой для этого подвига😭
#python
@positiveslack
Большие вендоры влили/вливают очень много ресурсов, чтобы их солверы для SV поддерживали всё многообразие констрейнов и были эффективными. Но результатами понятное дело не делятся.
А у опенсорс сообщества по сути одна дорога - консолидироваться вокруг доступных SAT солверов. Интересно, что автор не упоминает, но verilator уже идёт этой дорогой. И кажется успешно - количество поддерживаемых констрейнов увеличивается постепенно.
Т.е. для того что-то похожее на SV рандомизацию появилось для питоньих тестбенчей в максимально эффективном виде, нужно всего-то подсмотреть как это делают в вериляторе, написать подобное отдельной прослойкой на плюсах/расте, сделать биндинги в питон. И кажется будет красиво. Надеюсь когда-нибудь найдется герой для этого подвига
#python
@positiveslack
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4🤔3
Firejail + Codex
Однажды Эрнест Хемингуэй поспорил, что сможет написать самый короткий рассказ, способный растрогать любого:
(кстати красивый финальный панчлайн он выдал)
Вот такие истории как выше только подтверждают мои переживания, о том, что не сломает ли мне этот llm-джин вдруг что-то на хосте при очередном запуске. Понятно что там довольно много "если" должно сложиться вплоть до прямого разрешения выполнять команды в консоли, не требуя подтверждения от юзера. Но тем не менее.
Поэтому сделал небольшой скрипт обертку для Codex (это cli агент от OpenAI), которая даёт ему в доступ только к текущему рабочему каталогу. Думаю что подобное можно сделать и для cursor и для других штук, если нужно.
https://gist.github.com/esynr3z/31e34a8e5037079ff0c9a3b2f1b39c2c
Не то чтобы это какая-то мощная гарантия, но уже что-то. Дальше наверное только выполнять агентов в каком-то изолированном контейнере/VM, но тут уже комбинацию спокойствие/риски/удобство надо оценивать.
P.S. Если у вас есть в загашнике тоже есть подобное, или в скрипте видны проблемы, то рад обратной связи.
#llm #tool
@positiveslack
Однажды Эрнест Хемингуэй поспорил, что сможет написать самый короткий рассказ, способный растрогать любого:
CLAUDE: Looking at your log, here's the catastrophic command that was run:
rm -rf tests/ patches/ plan/ ~/
See that ~/ at the end? That's your entire home directory.
(кстати красивый финальный панчлайн он выдал)
Вот такие истории как выше только подтверждают мои переживания, о том, что не сломает ли мне этот llm-джин вдруг что-то на хосте при очередном запуске. Понятно что там довольно много "если" должно сложиться вплоть до прямого разрешения выполнять команды в консоли, не требуя подтверждения от юзера. Но тем не менее.
Поэтому сделал небольшой скрипт обертку для Codex (это cli агент от OpenAI), которая даёт ему в доступ только к текущему рабочему каталогу. Думаю что подобное можно сделать и для cursor и для других штук, если нужно.
https://gist.github.com/esynr3z/31e34a8e5037079ff0c9a3b2f1b39c2c
Не то чтобы это какая-то мощная гарантия, но уже что-то. Дальше наверное только выполнять агентов в каком-то изолированном контейнере/VM, но тут уже комбинацию спокойствие/риски/удобство надо оценивать.
P.S. Если у вас есть в загашнике тоже есть подобное, или в скрипте видны проблемы, то рад обратной связи.
#llm #tool
@positiveslack
🔥6✍2😁2
This media is not supported in your browser
VIEW IN TELEGRAM
Topwrap
А вы видели, что ребята из Antmicro сделали стильный опенсорсный тул для блок-дизайна?
https://antmicro.github.io/topwrap/introduction.html
Можно парсить существующий RTL и визуализировать, можно соединять и сохранять подключения во враппер. Притом можно работать с тулом как из GUI, так и через YAML и CLI.
И что меня особо радует, как любителя разработки всякой автоматизации и тулов, что всё это на их же открытом Pipeline Manager. На основе этой штуки можно строить свои красивые тулы для работы с любыми графо-подобными данными и сущностями.
#tool
@positiveslack
А вы видели, что ребята из Antmicro сделали стильный опенсорсный тул для блок-дизайна?
https://antmicro.github.io/topwrap/introduction.html
Можно парсить существующий RTL и визуализировать, можно соединять и сохранять подключения во враппер. Притом можно работать с тулом как из GUI, так и через YAML и CLI.
И что меня особо радует, как любителя разработки всякой автоматизации и тулов, что всё это на их же открытом Pipeline Manager. На основе этой штуки можно строить свои красивые тулы для работы с любыми графо-подобными данными и сущностями.
#tool
@positiveslack
1🔥18🤯1
Когда спрашивают на собесе с какими AMBA протоколами кандидат знаком
P.S. Бонус в комментах, протоколоведы
#meme
@positiveslack
P.S. Бонус в комментах, протоколоведы
#meme
@positiveslack
1😁21
Testplanner & Coverview
Тут увидел, что благодаря Antmicro, некоторые из скриптов проекта OpenTitan были причесаны и отпочкованы в отдельные инструменты. В первую очередь могут быть интересны верификаторам.
Tesplanner - инструмент для ведения тестпланов в HJSON. Машиночитаемый формат как единственный source-of-truth, а дальше из него генерируется документация и разные производные форматы для трекинга прогресса. Например, запуски тестов аннотируются и попадают в красивый дашборд. При этом исходники тестов, документация и дашборд с результатами связаны перекресными ссылками, что удобно для анализа. Интеграция в cocotb тоже на месте.
Есть статья в блоге с более детальным описанием.
Coverview - инструмент для генерации дашбордов для анализа покрытия. Умеет в стандартный формат LCOV (а кто-то из big3 умеет в такое?) и в общем-то нейтрален к исходному языку. Применительно к RTL понимает только кодовое покрытие. Ребята еще развернули отдельный просмотрщик в github pages, куда можно загрузить свой zip архив с правильным наполнением и посмотреть результаты.
Статья в блоге тоже имеется.
P.S. Да, я фанат Antmicro, а их github профиль насчитывает 824 репо, так что буду еще что-то хайлайтить оттуда, что поделаешь😊
#tool #verification
@positiveslack
Тут увидел, что благодаря Antmicro, некоторые из скриптов проекта OpenTitan были причесаны и отпочкованы в отдельные инструменты. В первую очередь могут быть интересны верификаторам.
Tesplanner - инструмент для ведения тестпланов в HJSON. Машиночитаемый формат как единственный source-of-truth, а дальше из него генерируется документация и разные производные форматы для трекинга прогресса. Например, запуски тестов аннотируются и попадают в красивый дашборд. При этом исходники тестов, документация и дашборд с результатами связаны перекресными ссылками, что удобно для анализа. Интеграция в cocotb тоже на месте.
Есть статья в блоге с более детальным описанием.
Coverview - инструмент для генерации дашбордов для анализа покрытия. Умеет в стандартный формат LCOV (а кто-то из big3 умеет в такое?) и в общем-то нейтрален к исходному языку. Применительно к RTL понимает только кодовое покрытие. Ребята еще развернули отдельный просмотрщик в github pages, куда можно загрузить свой zip архив с правильным наполнением и посмотреть результаты.
Статья в блоге тоже имеется.
P.S. Да, я фанат Antmicro, а их github профиль насчитывает 824 репо, так что буду еще что-то хайлайтить оттуда, что поделаешь
#tool #verification
@positiveslack
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥13✍2
slang-server
Ну и закрою тему тулов в этом году новым LSP для SystemVerilog поверх Slang. Есть подозрение, что в будущем это может стать выбором по умолчанию для написания SV🎧
Ликбез. LSP это та штука, что живёт в IDE и даёт редактору возможность делать переходы по символам,показывать хинты, делать автодополнение и другие вещи для нужного языка. Ну а Slang это просто наиболее полный и самый быстрый парсер SV (по заявлениям разработчиков).
В итоге в IDE получаем ту самую эргономику в написании SV, которая есть по умолчанию у программистов на языках высокого уровня. Все фичи перечислять долго, лучше посмотрите доклад или полистайте слайды.
Некоторые хайлайты:
▫️поддерживается neovim и vscode из коробки (последний пока в меньшей мере)
▫️индексация тысяч sv файлов на десятки мегабайт менее чем за секунду
▫️автодополнение, переходы по ссылкам, всплывающие хинты, раскрытие макросов
▫️иерархия, список модулей, поиск по инстансам
▫️интеграция с surfer для связывания кода и вейформ, трассировки driver/load и отображение текущих значений в коде (экспериментально)
Из будущих фич зацепило что будет больше хинтов, переименование символов (рефакторинг), более тесная интеграция с vscode и surfer, автофиксы и slang-format. Полноценный форматтер🍒
Btw, сервер разработан в Hudson River Trading (там и автор slang работает кстати), а ещё кто-то говорил что HFTшники ничего полезного не делают🫣
В соседнем чатике даже отзыв-сравнение есть:
#tool #systemverilog
@positiveslack
Ну и закрою тему тулов в этом году новым LSP для SystemVerilog поверх Slang. Есть подозрение, что в будущем это может стать выбором по умолчанию для написания SV
Ликбез. LSP это та штука, что живёт в IDE и даёт редактору возможность делать переходы по символам,показывать хинты, делать автодополнение и другие вещи для нужного языка. Ну а Slang это просто наиболее полный и самый быстрый парсер SV (по заявлениям разработчиков).
В итоге в IDE получаем ту самую эргономику в написании SV, которая есть по умолчанию у программистов на языках высокого уровня. Все фичи перечислять долго, лучше посмотрите доклад или полистайте слайды.
Некоторые хайлайты:
▫️поддерживается neovim и vscode из коробки (последний пока в меньшей мере)
▫️индексация тысяч sv файлов на десятки мегабайт менее чем за секунду
▫️автодополнение, переходы по ссылкам, всплывающие хинты, раскрытие макросов
▫️иерархия, список модулей, поиск по инстансам
▫️интеграция с surfer для связывания кода и вейформ, трассировки driver/load и отображение текущих значений в коде (экспериментально)
Из будущих фич зацепило что будет больше хинтов, переименование символов (рефакторинг), более тесная интеграция с vscode и surfer, автофиксы и slang-format. Полноценный форматтер
Btw, сервер разработан в Hudson River Trading (там и автор slang работает кстати), а ещё кто-то говорил что HFTшники ничего полезного не делают
В соседнем чатике даже отзыв-сравнение есть:
Уже недели 3 пользуюсь этим LSP, фантастическая штука
Из всего, что пробовал, мне этот больше всего нравится. У verible слабый препроцессор, на макросах сразу падает, пришлось вообще выключить. Svls не умеет делать symbol rename, да и линт что-то не понравился, уже не помню почему. Svlangserver в основном хорошее автодополнение, но фич немного, опять же нет symbol rename. Хочу попробовать еще verilog-mode, но для этого надо выучить emacs, так что как-нибудь потом.
#tool #systemverilog
@positiveslack
Please open Telegram to view this post
VIEW IN TELEGRAM
1🔥10
2025
Для канала год прошел под лозунгом "на меня забили".
Но показательно, что больше половины постов (12) вышло в конце ноября и декабря. А всё потому что я съездил на конфу FPGA-systems. В первый раз, кстати.
Общение с единомышленниками заряжает. Поэтому делайте крутые штуки, рассказывайте о них, объединяйтесь, общайтесь, творите. И никогда не задавайтесь вопросом "а вдруг это никому не интересно". Интересно.
Увидимся в 2026!
@positiveslack
Для канала год прошел под лозунгом "на меня забили".
Но показательно, что больше половины постов (12) вышло в конце ноября и декабря. А всё потому что я съездил на конфу FPGA-systems. В первый раз, кстати.
Общение с единомышленниками заряжает. Поэтому делайте крутые штуки, рассказывайте о них, объединяйтесь, общайтесь, творите. И никогда не задавайтесь вопросом "а вдруг это никому не интересно". Интересно.
Увидимся в 2026!
@positiveslack
1🎉27🔥3
Forwarded from Записки CPU designer'a
Лекция о микроархитектуре x86-процессоров на примере Intel Skylake.
Разбираются базовые принципы работы современного out-of-order CPU: конвейер, декодирование x86-инструкций в микрооперации (µops), внеочередное исполнение, переименование регистров и аппаратные механизмы повышения производительности.
Лектор: Мэтт Годболт
Создатель Compiler Explorer и
C++ разработчик.
Разбираются базовые принципы работы современного out-of-order CPU: конвейер, декодирование x86-инструкций в микрооперации (µops), внеочередное исполнение, переименование регистров и аппаратные механизмы повышения производительности.
Лектор: Мэтт Годболт
Создатель Compiler Explorer и
C++ разработчик.
🔥7
How to render cloud FPGA useless
Очень крутой доклад на тему исследования возможных векторов атак на облачные плисины (типа AWS) через питание и прогрев.
tl;dr атакующий должен хирургически точно организовать нужное количество осцилляторов (ring oscillator) внутри дизайна, чтобы либо увести плату или инстанс в отказ, либо повредить/"состарить" конкретные пути в плисине. Обе атаки работают. В первом случае удалось сделать сотню инстансов недоступными на часы, а во втором удалось состарить некоторые пути так, что они стали медленнее на 50-70%.
Довольно много интересных деталей всего процесса с мемными комментариями докладчика.
Интересно, что базовые DRC в AWS пропускают такие "вредоносные" дизайны, поэтому исследователи даже предложили "щит" против своего же "меча".
Доклад с конфы 39c3.
#fpga
@positiveslack
Очень крутой доклад на тему исследования возможных векторов атак на облачные плисины (типа AWS) через питание и прогрев.
tl;dr атакующий должен хирургически точно организовать нужное количество осцилляторов (ring oscillator) внутри дизайна, чтобы либо увести плату или инстанс в отказ, либо повредить/"состарить" конкретные пути в плисине. Обе атаки работают. В первом случае удалось сделать сотню инстансов недоступными на часы, а во втором удалось состарить некоторые пути так, что они стали медленнее на 50-70%.
Довольно много интересных деталей всего процесса с мемными комментариями докладчика.
Интересно, что базовые DRC в AWS пропускают такие "вредоносные" дизайны, поэтому исследователи даже предложили "щит" против своего же "меча".
Доклад с конфы 39c3.
#fpga
@positiveslack
🔥11🤯3