Pull to refresh
0
0
Send message

Моделируем работу ПЛИС красиво

Level of difficultyEasy
Reading time7 min
Views3.5K

Настройка визуального представления сигналов при моделировании в среде ModelSim (часть 1)

Добрый день читателям Хабра! Меня зовут Алексей, я занимаюсь работой с ПЛИС (FPGA) уже более 15 лет. Хабр читаю давно, но статьи здесь никогда не писал. В общем решил попробовать. Не знаю, насколько на Хабре интересны темы, связанные с ПЛИС? Но всё же, вдруг кому-то эта небольшая статья будет полезна.

Читать далее
Total votes 14: ↑14 and ↓0+20
Comments2

Адаптация платы Colorlight 5A-75B для примеров «Школы синтеза цифровых схем»

Level of difficultyMedium
Reading time5 min
Views2.4K

Привет!

Начался новый поток «Школы синтеза цифровых схем» и я хотел бы поделиться своим опытом по адаптации бюджетной платы с ПЛИС для запуска на ней лабораторных работ Школы. Отдельным преимуществом такого решения является возможность использования Open Source маршрута для синтеза и моделирования цифровых схем на базе Yosys и Icarus Verilog. Colorlight 5A-75B не является отладочной платой в привычном понимании этого понятия - будет интересно.

Читать далее
Total votes 24: ↑23 and ↓1+29
Comments8

Абсолютно все способы обхода блокировки Ютуб

Level of difficultyEasy
Reading time5 min
Views119K

В связи с этим решил собрать в 1 статью абсолютно все доступные способы ускорения YouTube, начиная от GoodByeDPI и подробными мануалами для Smart TV, Android и настройкой своего личного сервера

Читать далее
Total votes 67: ↑31 and ↓36+3
Comments62

Интеграция библиотек C/C++ в .NET приложения с использованием P/Invoke

Level of difficultyMedium
Reading time5 min
Views2.3K

В своей практике я несколько раз сталкивался с задачей интеграции и взаимодействия с низкоуровневыми языками программирования (C/C++) и низкоуровневыми API, такими как Windows API.

Этот туториал упрощает мой опыт использования низкоуровневых языков и API, а также демонстрирует, как написать и интегрировать простую C-библиотеку в ваше C# приложение с интеграцией Windows API.

Эта тема имеет специальное название — Platform Invocation (P/Invoke) в .NET.

PS: Есть и другие простые способы решения этой проблемы. Вы можете воспользоваться любым из них, но этот урок поможет вам понять, как работает P/Invoke.

P/Invoke (Platform Invocation) — это мощный механизм в C#, который позволяет взаимодействовать с неуправляемыми библиотеками кода (как правило, DLL) из управляемых приложений .NET. Это дает возможность использовать существующие кодовые базы на C или C++ или получать доступ к системным функциям, которые напрямую не поддерживаются в .NET.

P/Invoke играет важную роль в C#, так как позволяет преодолеть разрыв между управляемым миром .NET и неуправляемым миром нативного кода (обычно на C или C++).

Многие компании имеют значительные вложения в код на C или C++. P/Invoke позволяет использовать эту функциональность без необходимости переписывать её на C#. Это зачастую более эффективно, чем создавать всё с нуля.

О, я забыл упомянуть: если чтение кажется скучным, вот русская версия видео на YouTube, где я всё объясняю с нуля и более подробно.

Читать далее
Total votes 5: ↑1 and ↓4-1
Comments5

Некоторые малоизвестные фичи, фокусы и причуды языка C

Reading time19 min
Views25K

В этом посте разобраны некоторые фокусы, причуды и фичи языка C (некоторые из них – весьма фундаментальные!), которые, казалось бы, могут сбить с толку даже опытного разработчика. Поэтому я потрудился сделать за вас грязную работу и (в произвольном порядке) собрал некоторые из них в этом посте. Примеры сопровождаются ещё более вольными краткими пояснениями и/или листингами (некоторые из них цитируются).

Конечно же, здесь я не берусь перечислять абсолютно всё, так как факты из разряда «функция nan() не может устанавливать errno, поскольку в определённых ситуациях поведёт себя как strtod()» не слишком интересны.

ВНИМАНИЕ: сам факт попадания тех или иных вещей в эту подборку  не означает автоматически, что я рекомендую или, наоборот, не рекомендую ими пользоваться! Некоторые из приведённых примеров никогда не должны просачиваться за пределы списков наподобие этого, тогда как другие примеры невероятно полезны! Уверен, что могу положиться на ваш здравый смысл, дорогие читатели.

Читать далее
Total votes 77: ↑76 and ↓1+95
Comments45

Железо или архитектура? Два направления книг по схемотехнике для начинающих

Reading time5 min
Views9.6K

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

Для полного погружения можно изучить оба направления. Но, если хотите углубиться в тему электроники, читайте материалы из железного трека. А для тех, кто хочет отойти от физики работы приборов на более абстрактный уровень проектирования, подойдут книги из архитектурного направления.

Читать далее
Total votes 20: ↑18 and ↓2+25
Comments20

Запускаем Embedded Linux на Hard- и Soft-CPU Xilinx Zynq: проект программируемой логики

Level of difficultyHard
Reading time20 min
Views5.4K

Привет, Хабр! Меня зовут Павел Панкратов, я ведущий инженер-программист в дивизионе искусственного интеллекта YADRO. Этим текстом я запускаю цикл статей — экскурс в особенности работы с SoC, комбинирующей в себе реализованные в «железе» аппаратные блоки (Hard IP’s) и программируемую логику (Soft IP’s). Основная задача, которая объединит все три статьи, — параллельный запуск встраиваемой операционной системы на двух различных по архитектуре процессорах, представленных в виде Hard и Soft IP-блоков.

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

Читать далее
Total votes 42: ↑42 and ↓0+58
Comments5

Создаем свою простую (C++) библиотеку с документацией, CMake и блекджеком

Level of difficultyMedium
Reading time33 min
Views14K

В мире программирования создание собственных библиотек — это не просто возможность пополнения своего портфолио или способ структурировать код, а настоящий акт творческого самовыражения (и иногда велосипедостроения). Каждый разработчик иногда использовал в нескольких своих проектах однообразный код, который приходилось каждый раз перемещать. Да и хотя бы как упаковать свои идеи и знания в удобный и доступный формат, которым можно будет поделиться с сообществом.

Если вы ловили себя на мысли: ‭«А почему мне бы не создать свою полноценную библиотеку?‭», то я рекомендую прочитать вам мою статью.

Эту статью вы можете использовать как шпаргалку для создания проектов, и не только библиотек.

Некоторые из вас могут подумать что мы изобретаем велосипед. А я в ответ скажу — сможете ли вы прямо сейчас, без подсказок, только по памяти, нарисовать велосипед без ошибок?

Читать далее
Total votes 48: ↑47 and ↓1+58
Comments68

Как использовать Google Sheets в качестве базы данных

Level of difficultyEasy
Reading time6 min
Views5.5K

Привет, я Настя — младший разработчик в M2. М2 — это экосистема цифровых сервисов, которые помогают пользователям проводить сделки с недвижимостью удобно, быстро и безопасно. Мы с командой разрабатываем CMS, которая позволяет управлять контентом на сайте m2.ru

Расскажу о том, как мы используем Apps Script для парсинга данных из Google Sheets и зачем это нам. Если вам интересна только пошаговая инструкция с примерами кода, ее можно посмотреть здесь.

Читать далее
Total votes 12: ↑10 and ↓2+13
Comments13

Дэвид Харрис, автор «Цифровой схемотехники и архитектуры компьютера», ответил на вопросы про его следущую книгу и вообще

Reading time13 min
Views11K

Встретился на ланч с Дэвидом Харрисом, автором (вместе с Сарой Харрис) популярного учебника «Цифровая Схемотехника и Архитектура Компьютера», который за последние 10 лет помог закрыть монументальную дыру в техническом образовании десятков вузов России и Украины. До этого учебника во многих вузах сразу после триггеров шло программирование микроконтроллеров, то есть раньше у многих студентов вообще не возникала база для проектирования современных чипов по маршруту RTL‑to‑GDSII, технологии, которая за последние 30 лет привела нас к смартфонам, быстрому интернету и ускорителям ИИ.

Учебник Дэвида активно используется на Школе Синтеза Цифровых Схем, которую поддерживают 24 российских и 1 белорусский университет. Регистрация на новый сезон Школы только что открылась.

Читать далее
Total votes 44: ↑41 and ↓3+48
Comments22

Qucs-S: руководство по видам моделирования, часть 2

Reading time6 min
Views2.2K

Qucs-S является программой с открытым исходным кодом для моделирования электронных схем. Qucs-S кроссплатформенный (поддерживаются Linux и Windows) и написан на С++ с использованием набора библиотек Qt. О данной программе рассказывают мои предыдущие статьи. Для работы Qucs-S рекомендуется использовать также открытый движок моделирования Ngspice. Актуальным релизом Qucs-S на текущий момент является версия 24.3.2. Статья продолжает подробное рассмотрение видов моделирования в Qucs-S, начатое в первой части.

Читать далее
Total votes 13: ↑13 and ↓0+20
Comments5

Рецензия на книгу «Изучаем Git: пошаговое руководство с наглядными примерами»

Level of difficultyEasy
Reading time8 min
Views9.7K

Если и есть инструмент, который на 100% обязаны освоить все слушатели ИТ‑курсов и начинающие разработчики еще в начале карьеры — то это Git. Книга «Изучаем Git: пошаговое руководство с наглядными примерами» (Learning Git. A Hands‑On and Visual Guide to the Basics of Git) от издательства O'Reilly Media, в переводе от Alist (БХВ Петербург) — это руководство «с нуля» по самой популярной системой контроля версий. Изложены основы Git: установка, графический интерфейс и командная строка, локальные репозитории и коммиты, ветки и слияния.

Читать далее
Total votes 14: ↑12 and ↓2+16
Comments8

Квантовая теория поля для гуманитариев. Зоопарк частиц Стандартной модели

Level of difficultyMedium
Reading time22 min
Views19K

Зачем гуманитарию знать Стандартную модель квантовой теории поля? Затем, что это научная база, которая важнее, чем таблица умножения или периодическая таблица Менделеева. Она является самой успешной, проверенной и перепроверенной физической теорией, дающей предсказания с невероятной точностью. В таблице Стандартной модели всего 17 элементов, из которых для нашей жизни имеют значение не более десяти. Мы сами и всё, что нас окружает, состоит из трёх фермионов первого поколения – верхнего и нижнего кварков и электрона, а все физические процессы сводятся к четырём фундаментальным взаимодействиям, переносимым фотоном, глюонами и тяжёлыми калибровочными бозонами. Ну и конечно знаменитый бозон Хиггса – без него у нас бы не было массы. С непривычки названия и функции этих частиц запомнить трудно, но если постараться – задача вполне посильная без необходимости получать техническое образование. Наградой за ваш умственный труд будет исчерпывающее понимание глубинной сути вещей и стойкий иммунитет к разного рода псевдонаучным мифам.

Читать далее
Total votes 27: ↑24 and ↓3+30
Comments54

System Console. Доступ к регистрам ПЛИС из Quartus

Level of difficultyMedium
Reading time5 min
Views1.2K

Привет, Хабр! Меня зовут Роман Вернин, я разработчик систем на кристалле в компании Аквариус. Вместе с коллегами мы разрабатываем микросхемы ASIC. В этой статье я хотел бы поделиться опытом, как можно использовать отладочное средство ПЛИС от фирмы Intel для тестирования, настройки или исследования устройств и стендовых систем.

Читать далее
Total votes 10: ↑10 and ↓0+15
Comments5

Обходим замедление Youtube на Android TV без VPN

Level of difficultyMedium
Reading time3 min
Views246K

Всем привет, сегодня речь пойдет про Android TV. Мне обход именно на телевизоре показался самым проблемным и сложным. Так как дома имеется несколько лишенных ютуба телевизоров, а еще больше ожидают настройки у друзей и знакомых - решил собрать все найденные способы обхода блокировки.

Читать далее
Total votes 51: ↑48 and ↓3+56
Comments84

Программирование на C в Linux на примере создания командной оболочки: часть 2

Level of difficultyMedium
Reading time55 min
Views7.7K

Я решил недавно улучшить свой навык владения C, путем написания проектов. Самая первая мысль, которая пришла мне на ум — это командный интерпретатор, командная оболочка, shell проще говоря. А также я расскажу о системе сборки make, и о том, как правильно писать и документировать C-код.

В первой части мы задали базовую структуру кода, разобрались с чтением вывода и созданием процессов. А в этой части нашей задачи будет дойти с альфа-стадии на бета-стадию — то есть реализовать прочий важный функционал, такой как: минимальная поддержка плагинов; автодополнение; подсветка синтаксиса; переменные окружения, новые встроенные утилиты.

Да-да, мы превратим наш велосипед в мопед! Я вынес из прошлой статьи итоги, и попытался решить все проблемы и замечания. Продолжаем погружение в пучины разработки под Linux!

Читать далее
Total votes 25: ↑24 and ↓1+33
Comments12

Make на мыло, redo сила

Reading time12 min
Views8.6K
Приветствую! Хочу рассказать о главных, не всегда очевидных, недостатках системы сборки Make, делающих её часто не пригодной для использования, а также рассказать о прекрасной альтернативе и решении проблемы — гениальнейшей по своей простоте, системе redo. Задумка известнейшего DJB, криптография которого где только не применяется. Лично меня, redo настолько впечатлил life-changing простотой, гибкостью и куда лучшим выполнением задач сборки, что я практически во всех своих проектах им полностью заменил Make (там где не заменил — значит ещё руки не дошли), у которого я не смог найти ни одного преимущества или причины оставлять в живых.

Читать дальше →
Total votes 13: ↑13 and ↓0+13
Comments23

Дымовая Завеса в Eclipse IDE

Level of difficultyEasy
Reading time4 min
Views1.8K

Прошивки часто пишут в Eclipse.

В Eclipse есть такая возможность как серая дымка неиспользуемых сейчас кусков кода. Якобы то, что не используется в коде визуально становится серой зоной отчуждения.

Именно этот аргумент огромная fun база Eclipse плагинов и приводит в качестве главного за Eclipse плагины.

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

Читать далее
Total votes 7: ↑3 and ↓4+3
Comments21

Дорогая, я уменьшил {fmt}: уменьшил размер до 14kB и избавился от рантайма C++

Level of difficultyMedium
Reading time11 min
Views13K

Библиотека форматирования {fmt} известна своим небольшим влиянием на размер бинарников. Чаще всего её код в несколько раз меньше по сравнению с такими библиотеками, как IOStreams, Boost Format или, что иронично, tinyformat.

Давайте разберем, как можно уменьшить размер бинарников еще больше!

Читать далее
Total votes 40: ↑38 and ↓2+47
Comments26

Реализация событий через HTTP

Level of difficultyEasy
Reading time3 min
Views2K

Для некоторых задач, связанных с обновлением данных в реальном времени — например, новостные ленты, уведомления или поток чата, можно обойтись без сложных двусторонних протоколов, как WebSocket. Мы можем использовать простой механизм передачи данных от сервера к клиенту через HTTP, который часто оказывается удобнее и эффективнее в настройке для однонаправленного обмена данными.

Читать далее
Total votes 7: ↑5 and ↓2+4
Comments4
1
23 ...

Information

Rating
Does not participate
Location
Иваново, Ивановская обл., Россия
Registered
Activity