Как стать автором
Обновить
46
0
Dmitry Votintsev @dmitryvv

Пользователь

Отправить сообщение

Как отличить начинающего профессионала от умудренного хоббиста в цифровой схемотехнике?

Время на прочтение7 мин
Количество просмотров13K

В чем главное отличие между FPGA-хоббистом, ностальгирующим по КР580ИК80 на пенсии - и начинающим микроархитектором, ориентированным на будущее трудоустройство в передовую процессорную компанию или сфинансированный венчурными капиталистами стартап?

Три слова: понимание концепции конвейера. Молодым профессионалом, не старым хоббистом.

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

(Некоторые из таких людей даже пишут книги - вот некий Роберт Дунне реализовал процессор конечным автоматом с состояниями fetch/decode/execute, но до конвейера не дожал)

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

Но это надо преодолеть, поскольку если вы прийдете интервьироваться в какой-нибудь AMD на позицию юного проектировщика, вас будут спрашивать не как помигать лампочками и засунуть Радио РК-86 в Xilinx, а как стоя перед интервьирующим написать на доске на языке описания аппаратуры Verilog - конвейерную реализацию какого-нибудь умножения со сложением. Или сделать это на компьютере отрезанном от интернета, так что вы даже не cможете нагуглить решение - вот садисты, а?

Именно этому вопросу будет посвящено следующее занятие Сколковской Школы Синтеза Цифровых Схем.

Объяснение концепции конвеера военкоматом
Всего голосов 22: ↑14 и ↓8+10
Комментарии91

Интеллектуальная производительность без выгорания: 7 техник использования мозга. Часть 1

Время на прочтение18 мин
Количество просмотров56K

В предыдущей статье я рассказал про пластичность мозга. Сегодня предлагаю первые три техники ее тренировки. Идея очень простая: представьте себе, что ваша работа состоит не в том, чтобы строить окружающую жизнь. И не в том, чтобы вручную управлять карьерой и взаимоотношениями в окружающем мире, тратя на это ограниченный ресурс нашей силы воли.

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

Читать далее
Всего голосов 63: ↑58 и ↓5+61
Комментарии23

Фонетическая раскладка на основе анализов частотности

Уровень сложностиПростой
Время на прочтение16 мин
Количество просмотров11K

Предыстория и предпосылки


Пару лет назад я, будучи стандартным пользователем «qwerty-йцукен», стал всё больше замечать, что процесс набора на этой паре раскладок имеет ряд неудобств, и чем больше я об этом думал, тем более раздражающими они казались.

На каждой раскладке свой набор символов, из-за чего для некоторого набора нужно было переключать раскладку, вводить символ, а после возвращаться на прошлую; на каждой раскладке своё расположение для одних и тех же символов; некоторые востребованные символы и вовсе доступны только через комбинации с alt; ужасное расположение «ё» на русской раскладке; ну а об общем позиционировании букв на «qwerty» вы наверняка уже читали ранее, как и о полулегенде о намеренно сложном для набора расположении, как костыле для обхода западания клавиш на первых пишущих машинках.

Тогда я стал искать, что же предлагают альтернативные раскладки. Как оказалось, они все пытаются решить только последнюю проблему. Бесспорно, весьма успешно, но только одну-единственную проблему. И только для английского языка. Для русского найденные раскладки выглядели крайне сомнительно и, как мы убедимся позже, едва ли были лучше стандартной. Также многие английские раскладки, очевидно, разрабатывались с оглядкой на «qwerty», не создавая альтернативу, а попросту немного изменяя стандартный вариант позиционирования.

И это всего две раскладки, для двух популярнейших в интернете языков, хотя многие пользуются и тремя, а то и более.
Читать дальше →
Всего голосов 38: ↑38 и ↓0+38
Комментарии38

Хочу красивую железку. PCB Art — печатная плата как искусство

Время на прочтение2 мин
Количество просмотров44K

Я с детства обожал смотреть на печатные платы. Они прекрасны! Легко мог разобрать отцовский магнитофон, чтобы просто посмотреть на его мозг. Собрать потом, правда, не мог. Мог очень долго изучать материнскую плату — это же целый город, со своими заводами, домами и автомагистралями. Но по-настоящему сильный восторг от печатной платы я испытал, когда навернулся голосовой чип у моего старичка Juno-106. Этому синтезатору больше 30 лет. Его голосовые чипы выходят из строя со временем, потому что компаунд, которым они покрыты, начинает пропускать влагу. Синтезатор давно не выпускается. Но многим нужны эти чипы. Один парень занялся их реверс-инженирингом, и собрал свой на современных компонентах. Ну и я купил 6 таких. Ребята, это чудо!


Красота
Источник


Платка толщиной в пол миллиметра. Полосы по краям — скрайбирование. Такая процарапанная борозда. Они сделаны специально для того, чтобы покупатель выломал голосовой чип из этой опалубки. Когда я выламывал свой… Ух! Это чистый восторг! Хрум, хрум.


К чему я это? А к тому, что можно сделать красивую железку вообще без корпуса!

Читать дальше →
Всего голосов 62: ↑61 и ↓1+60
Комментарии125

Проектирование импульсного источника питания с активным ККМ. Эпизод I

Время на прочтение28 мин
Количество просмотров188K

Предисловие


В своей предыдущей статье я говорил, что продолжу рассказ о работе с датчиками тока на эффекте Холла. С того момента прошло не мало времени, выход продолжения затянулся, да и писать «скучную теорию» я не любитель, поэтому ждал практической задачи.

Еще одной причиной отсутствия статей была моя работа в одной «современной успешной IT-hardware-компании», сейчас наконец-то я ее покинул и окончательно пересел на фриланс, так что время для статьи появилось))

Недавно ко мне обратился мой старый наставник и просто очень хороший человек. Естественно я не мог отказать в помощи, а оказалось все достаточно просто — меня попросили сделать блок питания для КВ трансивера FT-450, который будет более стабильный в работе, особенно при пониженном входном напряжении, чем уже имеющийся Mean Well. Прошу заметить, я не говорю о том, что Mean Well плохая фирма, просто в данном случае нагрузка достаточно специфическая, а так продукция у них вполне себе хорошая.

Диагноз примерно такой:


— Заявлен выходной ток в 40А, на деле при потреблением в 30-35А (на передаче) блок уходит в защиту;
— Наблюдается сильный нагрев при длительной нагрузке;
— Совсем становится плохо, когда использует его на даче, где напряжение в сети 160-180В;
— Напряжение максимальное 13,2-13,4В, а хотелось бы 13,8-14В с возможностью подкрутить +-20%.

Особенностью данной статьи будет то, что проект продвигается вместе с ней. Я за него только засел и поэтому смогу рассказать обо всех этапах разработки: от ТЗ до готового прототипа. В таком формате статей с наскоку на гике я не нашел, обычно люди пишут уже проделав всю работу и забыв половину мелочей, которые часто несут в себе главный интерес. Так же эту статью я хочу написать доступным для новичков языком, поэтому местным гуру стоит чуточку проще относиться к «неакадемичности» моего слога.
Читать дальше →
Всего голосов 52: ↑52 и ↓0+52
Комментарии289

Умный квест в реальности: демоны и проводки

Время на прочтение12 мин
Количество просмотров39K
Многие слышали про квесты в реальности — перенесенные в наш мир игры жанра escape the room. Решаешь головоломки, получаешь ответы, проходишь на следующий этап. Закончить нужно за час, в итоге открывается дверь на выход. Но немногие знают, как они устроены внутри. В этой статье мы заглянем за кулисы одного из таких квестов, а также сравним его с другими в техническом плане.

Как разработчик эскейп-румов, я видел реализации некоторых из них. Обычно квест делится на никак не связанные блоки, которые вместе реализуют возможность прохождения. Тем не менее, для нашего квеста мы использовали централизованную архитектуру. Постараюсь рассказать, какие плюсы и минусы этих подходов, а также опишу, какие задачи решает «техник», создающий квесты в реальности, т.к. эта тема не очень хорошо раскрыта в Интернете.



Читать дальше →
Всего голосов 37: ↑35 и ↓2+33
Комментарии23

Создаём свой сайт для управления Ардуиной

Время на прочтение3 мин
Количество просмотров67K
Как-то раз, мне на почту пришло письмо, человек интересовался возможностью реализации собственного сайта для работы с ардуиной. Что ж, подумал я, а ведь в самом деле, неплохо бы автоматизировать процесс создания подобных сайтов. Сказал-сделал, хорошо ли плохо, судите сами.
Читать дальше →
Всего голосов 17: ↑13 и ↓4+9
Комментарии3

Жизнь в стиле SMART (продолжение)

Время на прочтение6 мин
Количество просмотров9.4K
В предыдущей статье мы рассказывали о преимуществах и проблемах использования системы Умного дома с точки зрения пользователей. Теперь поговорим о конкретной реализации .

Читать дальше →
Всего голосов 7: ↑6 и ↓1+5
Комментарии1

Микросхемы с подпороговыми рабочими напряжениями питания – революционный подход к снижению тока потребления

Время на прочтение8 мин
Количество просмотров23K
imageimage

Последнее время в своей работе постоянно сталкиваюсь с задачами по снижению потребления разрабатываемых микросхем. Наиболее популярными на текущей момент решениями являются динамическое управление тактированием и напряжением питания. Т.е. если для решения текущей задачи не требуется тот или иной блок микросхемы, то для него отключается тактирование, снижается или вовсе отключается напряжение питания. Такие гранды как Texas Instruments и Renesas пока меряются пи…. потреблением своих микроконтроллеров на уровне 100 мкА/МГц. При этом история показывает, что первую роль в этом направлении очень часто играли стартапы. Так в период примерно с 2008 год по 2012 безусловным лидером в этом направлении была норвежская стартап-компания Energy Micro, которая в 2013 году была приобретена компаний Silicon Labs за примерно $170 миллионов. Последнее время появилось несколько новых стартапов уверяющих, что их решения позволят снизить потребление в разы. Так компания Ambiq Micro заявляет, что их микроконтроллер на базе ARM Cortex-M4F будет потреблять всего 30 мкА/МГц. В целом основная идея все та же – снижение напряжения питания, но в данном случае напряжение питания снижено ниже уровня порога транзистора.
Как это работает
Всего голосов 33: ↑33 и ↓0+33
Комментарии13

Car Hacking: так ли безопасны системы безопасности автомобиля?

Время на прочтение18 мин
Количество просмотров54K


Автомобили обросли огромным количеством электроники, начиная со спидометра и заканчивая контроллером тормозной системы. Все эти устройства связаны в единую локальную сеть, что дает простор для попыток влезть в нее и немного там обжиться. В этой статье я расскажу, как устроен среднестатистический автомобиль, и постараюсь посеять в тебе паранойю и страх (смайл).
Читать дальше →
Всего голосов 34: ↑30 и ↓4+26
Комментарии50

Использование DSP-сопроцессора DM8168 с помощью фреймворка C6Accel

Время на прочтение14 мин
Количество просмотров12K


В этой статье мы познакомимся с отладочной платой DM816x/C6A816x/AM389x и фреймворком C6Accel (он же C6EZAccel), а также рассмотрим инструкции по наладке системы для выполнения встроенных тестовых приложений.

Всё началось с интересной идеи использовать алгоритмы нынче очень популярной библиотеки компьютерного зрения OpenCV на микропроцессоре. Однако, изучив немного тему, идея уточнилась. Почему бы не реализовать алгоритмы не просто на ядре ARM, а на специализированном ядре для цифровой обработки сигналов DSP? Тем самым разгрузим ядро ARМ, ускорим выполнение алгоритмов, и, глядишь, самое громоздкое приложение заработает в реальном времени.

Итак, что же использовать для решения задачи? Оказалось вариантов немного…
Читать дальше →
Всего голосов 10: ↑10 и ↓0+10
Комментарии10

Arduino & Modbus

Время на прочтение6 мин
Количество просмотров210K
В предыдущей статье мы соединили открытую платформу домашней автоматизации OpenHAB с контроллером Arduino использовав очень простой, текстовый протокол. Но это решение поставит нас в тупик, если мы захотим подключить наш контроллер к другой системе, что же делать?

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

Что нам необходимо знать об этом стандарте?
Протокол Modbus использует последовательные линии связи (например, RS232, RS485), а протокол Modbus TCP рассчитан на передачу данных по сетям TCP/IP.
Протокол Modbus имеет два режима передачи RTU и ASCII, в режиме ASCII каждый байт передается как два ASCII символа его шестнадцатеричного представления.
В сети Modbus есть только один ведущий, который с заданным интервалом опрашивает несколько ведомых устройств, каждое из которых имеет свой уникальный адрес от 1 до 254, адрес 0 широковещательный и на него отвечают все устройства, так как ведущий в сети один у него нет своего адреса.
В спецификации Modbus определено два типа данных, один бит и 16 битное слово. Данные организованны в четыре таблицы с 16 битной адресацией ячеек, адресация в таблицах начинается с 0. Для доступа к данным из разных таблиц предназначены отдельные команды.
Discrete Inputs 1 бит только чтение
Coils 1 бит чтение и запись
Input Registers 16 бит только чтение
Holding Registers 16 бит чтение и запись

Как нам подключить Modbus устройство к OpenHAB?
Читать дальше →
Всего голосов 19: ↑19 и ↓0+19
Комментарии49

Raspberry и Telegram: предпосылки создания умного дома

Время на прочтение3 мин
Количество просмотров87K


Один итальянский магазинчик нащупал новые способы использования Телеграма (и ранее WhatsApp'а), установив его на одноплатный миниатюрный компьютер Raspberry Pi. Как выясняется, мессенджер можно использовать для удалённого общения с собственной техникой. Ниже – перевод статей (1, 2) с сайта Instructables.com. Если есть уточнения по переводу, напишите об этом в комментариях.

Читать дальше →
Всего голосов 52: ↑44 и ↓8+36
Комментарии62

STM32 и FreeRTOS. 1. Развлечение с потоками

Время на прочтение7 мин
Количество просмотров153K
Данный цикл из 5 статей рассчитан на тех, кому стало мало возможностей привычных «тинек» и ардуинок, но все попытки перейти на более мощные контроллеры оканчивались неудачей или не приносили столько удовольствия, сколько могли бы. Все ниженаписанное проговаривалось мной много раз на «ликбезе» программистов нашей студии (которые часто сознавались, что переход с «тинек» на «стмки» открывает столько возможностей, что попадаешь в ступор, не зная за что хвататься), поэтому смею надеяться, что польза будет всем. При прочтении подразумевается, что читающий — человек любопытный и сам смог найти и поставить Keil, STM32Cube и понажимать кнопки «ОК». Для практики я использую оценочную плату STM32F3DISCOVERY, ибо она дешевая, на ней стоит мощный процессор и есть куча светодиодиков.

Каждая статья рассчитана на «повторение» и «осмысление» где-то на один околовечерний час, ибо дом, семья или отдых…



Читать дальше →
Всего голосов 41: ↑40 и ↓1+39
Комментарии35

STM32 и FreeRTOS. 3. Встаем в очередь

Время на прочтение6 мин
Количество просмотров56K
Раньше: про потоки и про семафоры

«Вас много, а я одна!» — классическая фраза продавщицы, которую затерроризировали покупатели с вопросами «А есть ...?». Вот и в микроконтроллерах случаются полностью аналогичные ситуации, когда несколько потоков требуют внимания от какой-либо медленной штуки, которая просто физически не способна обслужить всех разом.

Возьмем наиболее яркий и богатый проблемами пример, на котором «валятся» большинство неопытных программистов. Есть мощный и достаточно быстрый микроконтроллер. К нему подключен с одной стороны адаптер com-порта, через который пользователь подает команды и получает результаты, а с другой — шаговый двигатель, который согласно этим командам поворачивается на какой-то угол. И конечно же, прикольная кнопочка, которая тоже что-то этакое значит для пользователя. Где можно наловить проблем?
Читать дальше →
Всего голосов 34: ↑33 и ↓1+32
Комментарии7

Термобарьеры, надгробные камни и прочие прелести печатных плат

Время на прочтение6 мин
Количество просмотров154K


Пока крутые конструкторы проектируют правильные платы и заказывают производство на суперсовременных американо-европейских заводах, обратимся к опыту разработки печатных плат под возможности срочного производства одного из подмосковных (на самом деле Зеленоград – район Москвы) заводов с ручным подвальным монтажом (на самом деле ручные монтажники у них сидят аж на втором этаже, а в подвале стоит линия на 60,000 компонентов в час).

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

Много картинок, видео и личных мыслей
Всего голосов 100: ↑98 и ↓2+96
Комментарии36

Руководство хакера по нейронным сетям. Глава 2: Машинное обучение. Более традиционный подход: Функции потерь

Время на прочтение4 мин
Количество просмотров14K
Мы публикуем перевод последней из существующих частей «книги». Обязательно будем следить за блогом автора и продолжим публикации этого материала, как только они появятся.

Содержание:
Глава 1: Схемы реальных значений
Часть 1:
   Введение   
      Базовый сценарий: Простой логический элемент в схеме
      Цель
         Стратегия №1: Произвольный локальный поиск

Часть 2:
         Стратегия №2: Числовой градиент

Часть 3:
         Стратегия №3: Аналитический градиент

Часть 4:
      Схемы с несколькими логическими элементами
         Обратное распространение ошибки

Часть 5:
         Шаблоны в «обратном» потоке 
      Пример "Один нейрон"

Часть 6:
      Становимся мастером обратного распространения ошибки


Глава 2: Машинное обучение
Часть 7:
      Бинарная классификация

Часть 8:
      Обучение сети на основе метода опорных векторов (SVM)

Часть 9:
      Обобщаем SVM до нейронной сети

Часть 10:
      Более традиционный подход: Функции потерь



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

По мере того, как я составляю эти математические формулы, я бы хотел начать относиться более внимательно к тому, как мы называем наши переменные и параметры. Я бы хотел, чтобы эти уравнения выглядели так же, как вы могли видеть их в книгах или других уроках, поэтому я начну использовать более стандартные наименования.
Читать дальше →
Всего голосов 12: ↑11 и ↓1+10
Комментарии0

Ловцы молний. Необычные эксперименты с грозой

Время на прочтение7 мин
Количество просмотров167K
Добрый день, уважаемые читатели Хабра.

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

image

Меня всегда вдохновляла красота и мощь молний. Сила тока в разряде молнии достигает 10-300 тысяч ампер, а напряжение — от десятков миллионов до миллиарда вольт. Мощность разряда — от 1 до 1000 ГВт. Вот было бы хорошо «приручить» эту энергию!

Хочу предупредить, не повторяй это дома! Я соблюдаю особую осторожность и хорошо знаю природу электрических явлений. Помни, поражение молнией смертельно.
Читать дальше →
Всего голосов 266: ↑245 и ↓21+224
Комментарии195

Обзор новых технологий в производстве источников питания

Время на прочтение5 мин
Количество просмотров104K
Текущий месяц выдался удачным для разработчиков элементов питания. В различных источниках то и дело появляются новости о новинках в этой отрасли. Я решил собрать информацию о них и поделиться с вами. Под катом вас ждёт много различных технологий хранения энергии — от сахарных до квантовых.

Читать дальше →
Всего голосов 56: ↑51 и ↓5+46
Комментарии37

Briggo: кофе-бот, который варит кофе не хуже бариста

Время на прочтение2 мин
Количество просмотров26K


Думаю, на Хабре большое количество любителей кофе. Есть, наверное, и просто любители вкуса кофейных напитков, и те, кто использует кофе только в качестве стимулятора (особенно по утрам). Так вот, совсем недавно была опубликована информация о роботизированном бариста Briggo, способном делать огромное количество кофейных напитков, включая и те, что готовятся по рецепту самого клиента.

Читать дальше →
Всего голосов 28: ↑21 и ↓7+14
Комментарии64
1
23 ...

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность