Pull to refresh
64
Karma
0.8
Rating
Дмитрий Самсонов @Sdima1357

image processing

Разглядывая JTAG: что внутри?

FPGA *Programming microcontrollers *Manufacture and development of electronics *Electronics for beginners

Ознакомившись с работой JTAG в общих чертах и написав файл BSDL для воображаемой микросхемы в предыдущей статье, можно рассмотреть работу модуля JTAG внутри микросхем более детально. Для этого мы напишем прошивку для микроконтроллера и для ПЛИС (на «Си» и на «SystemVerilog»), которые позволят считывать/устанавливать логические уровни на отдельных выводах микросхемы через данный интерфейс.

Реализовать интерфейс JTAG
Total votes 31: ↑31 and ↓0 +31
Views 6.1K
Comments 8

Быстрый бэкап всех ваших репозиториев Github

Go *GitHub
Sandbox

Я так давно пользуюсь услугами Github, что уже начал забывать как это страшно потерять код который целый день сочинял и отлаживал. Раньше для сохранения кода я использовал дискетки, потом cd-rom и переносной жесткий диск, потом пришли флешки... Все это для того что бы перенести код с рабочего компьютера на домашний и не потерять. И все эти устройства постоянно ломались терялись, у них заканчивался срок службы и т.п.

Потом я завел свои "облака" и хранил код на своем железе и рабочих компьютерах. И наконец появился Github. По началу что-то ещё дублировалось на своих серверах и внешних дисках, но к сегодняшнему дню я на столько привык к сервису Github, все на столько удобно и надёжно, что страх о том что "дискетка" может сломаться постепенно улетучился.

И тут на тебе! Оказывается в любой момент, по не зависимой от меня причине, меня могут отключить от этого технологического чуда! :-)

Читать далее
Total votes 38: ↑31 and ↓7 +24
Views 13K
Comments 25

Когда умрёт мой SSD — расчёт срока жизни

FirstVDS corporate blog System administration *Computer hardware Data storaging Desktop PC's


У каждого SSD есть ресурс на количество циклов перезаписи, то есть объём записанной информации в течение всей жизни. Физика и механика SSD очень сложные, но долговечность накопителя в итоге сводится к простому правилу — чем больше на него пишешь, тем меньше он проживёт.

У одних SSD критический сбой происходит через несколько месяцев, другие работают годами. Это зависит от качества комплектующих, условий эксплуатации и везения. В общем, как у людей.
Читать дальше →
Total votes 41: ↑41 and ↓0 +41
Views 27K
Comments 112

Как я учился скоростной печати, но что-то пошло не так

Programming *IT career Lifehacks for geeks

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

WPM - это Words Per Minute, в английском принята эта единица измерения, считается что одно слово это 5 букв, т.е. это 850 символов в минуту. В других языках слова обычно длиннее и используется единица CPM (Characters Per Minute).

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

Читать далее
Total votes 48: ↑47 and ↓1 +46
Views 19K
Comments 112

Удивительное приключение в стране оптимизирующих компиляторов

Python *Programming *C++ *Lisp *C *

Приглашаю вас в небольшое приключение выходного дня, в котором никто никому ничего не будет доказывать. Мы просто будем реализовывать один и тот же несложный алгоритм, разыскивающий простые числа в некотором диапазоне, на нескольких языках программирования: C, C++, Scheme и Python - и смотреть, что этим кодом могут сделать современные оптимизирующие компиляторы. В процессе приключения мы увидим, что «динамический» не означает «совсем уж медленный», и посмотрим на приёмы программирования на Scheme, что, как мне кажется, можно сравнить с путешествием на экзотический остров.

Читать далее
Total votes 66: ↑64 and ↓2 +62
Views 22K
Comments 82

Zynq 7000. Прикручиваем Wi-Fi модуль RTL8822CS с использованием SDIO через EMIO

FPGA *CPU DIY Electronics for beginners

Наконец-то пришла пора продолжить изучение возможностей платы Zynq QMTech и SoC XC7Z020. Следующая интересная задача, которую я для себя придумал в качестве обучающей - оснастить плату Wi-Fi модулем Realtek RTL8822CS и, если Wi-Fi модуль будет не нужен, а нужна будет ещё одна флешка - вторым портом для SD-карточки. Если интересны подробности того, как я это всё реализовал - добро пожаловать под кат. 

Читать далее
Total votes 35: ↑35 and ↓0 +35
Views 3.9K
Comments 4

Создание игр для NES на ассемблере 6502: оборудование NES и знакомство с ассемблером

Assembler *Game development *Compilers *History of IT Old hardware
Translation
image


4. Оборудование NES


Содержание:

  • Консоль
  • Картриджи
  • Как это связано с нашим тестовым проектом?
  • Цвета и палитры
  • Возвращаемся к тестовому проекту

Прежде чем приступать к разбору ассемблера, начнём с обзора самой NES.
Читать дальше →
Total votes 10: ↑10 and ↓0 +10
Views 3.7K
Comments 3

NODE: Нейро-ансамбли решений с забыванием для глубокого обучения по табличным данным

Python *GitHub
Translation

Аннотация

В настоящее время глубокие нейронные сети (DNN) стали основным инструментом для решения задач машинного обучения в широком спектре областей, включая компьютерное зрение, НЛП и речевое общение. Между тем, в важном случае гетерогенных (неоднородных – как по типу, форме, так и по структуре) табличных данных преимущество DNN перед частными аналогами остается сомнительным. В частности, нет достаточных доказательств того, что механизмы глубокого обучения позволяют создавать методы, которые превосходят деревья решений с выбором по росту градиента (GBDT), которые часто являются лучшим выбором для табличных задач. В этой статье мы представляем ансамбли нейронных решений без внимания (NODE), новую архитектуру глубокого обучения, предназначенную для работы с любыми табличными данными. Кратко, предлагаемая архитектура NODE обобщает ансамбли деревьев решений с забыванием (без памяти), но извлекает выгоду как из сквозной оптимизации на основе градиентов, так и из возможностей многоуровневого обучения иерархическому представлению. Проведя обширное экспериментальное сравнение с ведущими пакетами GBDT на большом количестве табличных наборов данных, мы демонстрируем преимущество предлагаемой архитектуры NODE, которая превосходит конкурентов по большинству тестовых задач. Мы используем реализацию NODE с открытым исходным кодом PyTorch и считаем, что она станет универсальной платформой для машинного обучения на основе табличных данных.

Читать далее
Total votes 1: ↑1 and ↓0 +1
Views 833
Comments 0

GBDev #1: разработка игр под Game Boy. История, инструменты, ресурсы

Game development *History of IT Games and game consoles

Как-то так получилось, что работая в редакции, мне часто приходилось писать новостные заметки про Game Boy. Про ту саму легендарную консоль, буквально перевернувшую идею гейминга и позволившую играть везде, а не быть привязанным к телевизору или монитору. Я писал про порты современных игр на платформу 1989 года и мне стало интересно узнать, как же писали и продолжают писать игры под Game Boy. За все это время мне удалось узнать много нового, разобраться в деталях и теперь я готов поделиться этим.

Читать далее
Total votes 26: ↑26 and ↓0 +26
Views 3K
Comments 3

DevOps для производства Firmware

Programming *C *Programming microcontrollers *DevOps *DIY

В этом тексте я намерен пофантазировать каким мог бы быть абстрактный процесс разработки firmware с точки зрения DevOps. И перечислить атрибуты такого процесса.

Читать далее
Total votes 12: ↑9 and ↓3 +6
Views 4.1K
Comments 18

Ошибки, которые не ловит Rust

Compilers *Go *Rust *
Translation

Мне по-прежнему интересны языки программирования. Но сегодня уже не так сильно, и не из-за того, что они позволяют мне делать, а, скорее, из-за того, что они мне делать не позволяют.

В конечном итоге, возможности того, что можно сделать при помощи языка программирования, редко ограничены самим языком: нет ничего, что можно сделать на C++, но нельзя повторить на C, при наличии бесконечного количества времени.

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

На самом деле, достаточно лишь команды mov.

Разумеется, существуют различия в выразительности: для выполнения определённых задач в разных языках может потребоваться больше или меньше кода. Язык Java печально известен своей многословностью: но благодаря другим его преимуществам он и сегодня является привлекательным выбором для многих компаний.

Кроме того, есть такие аспекты, как производительность, отладкопригодность (если такого слова нет, то его стоит придумать) и дюжина других факторов, которые стоит рассмотреть при «выборе языка».
Читать дальше →
Total votes 74: ↑70 and ↓4 +66
Views 16K
Comments 12

Парадокс, положивший начало научным вычислениям

RUVDS.com corporate blog Reading room Popular science Physics
Translation


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

Но однажды, из-за затянувшегося обеденного перерыва, машину оставили работать дольше обычного. Спохватившись, учёные вернулись в компьютерный зал и заметили, что расчётная система, пробыв некоторое время в состоянии теплового равновесия, вышла из него, а энергия в процессе эволюции периодично кочевала между наиболее длиноволновыми модами, практически не передаваясь на коротковолновые колебания. И в конце концов, система возвращалась из хаоса в исходное состояние! Этот парадокс ознаменовал собой рождение компьютерного моделирования, теории детерминированного хаоса и солитоники.
Читать дальше →
Total votes 92: ↑92 and ↓0 +92
Views 38K
Comments 46

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

Physics Electronics for beginners

Несколько лет назад мне потребовалось рассчитать импульсный трансформатор для УЗИ сварочной установки. В инженерном ремесле всегда бывает избыток вопросов и недостаток готовых рецептов. Поэтому пришлось немного поработать и написать этот реферат.

Читать далее
Total votes 21: ↑21 and ↓0 +21
Views 5.6K
Comments 8

Распознавание лиц на RASPBERRY PI

Python *Programming *Machine learning *Natural Language Processing *

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

С каждым годом расширяется область применения таких систем. Например, пользователи могут приобрести у Google систему Nest — Nest Cam IQ Indoor, стоимостью 349 долларов с интеграцией в умный дом и возможностью распознавания лиц по подписке (за 10 долларов в месяц). И отечественных аналогов для частного пользования немало. Различные СКУД (системы контроля и управления доступом) от Ростелекома, HikVision, VisionLabs и других фирм. Описание зачастую мутное, опыт работы в реальных условиях можно найти на YouTube по запросу «Умный домофон не пускает мужчину домой».

Читать далее
Total votes 7: ↑5 and ↓2 +3
Views 5.6K
Comments 10

Civilization VI прокачает ваш английский: годный инструмент для лексики и словарного запаса

EnglishDom corporate blog Games and game consoles Learning languages

Умные люди говорят, что после релиза игры должно пройти несколько лет, пока издатели не исправят все баги. Игра Civilization VI вышла в релиз аж в 2016, но последний патч вышел меньше года назад. А мелкие багфиксы и вовсе стабильно появляются каждый месяц. Так что можно говорить, что шестую «Циву» наконец-то довели до ума. Ну или почти довели.

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

Читать далее
Total votes 15: ↑10 and ↓5 +5
Views 9K
Comments 10

Как раскрасить вершины графа

Algorithms *Mathematics *Popular science
Sandbox

В этой небольшой заметке я хочу показать, как с помощью алгебры можно решать классическую задачу о раскраске вершин графа. Об этом сюжете я узнал из книги W.W. Adams, P. Loustanau. An Introduction to Groebner Basis (параграф 2.7).

Раскрасить граф
Total votes 11: ↑11 and ↓0 +11
Views 3.3K
Comments 11

Расширение возможностей Raspberry Pi с помощью загрузочного NVMe-диска

RUVDS.com corporate blog Programming microcontrollers *Development for Raspberry Pi *Data storaging
Translation
Возможности подсистемы хранения данных одноплатного компьютера Raspberry Pi можно расширить, подключив к нему NVMe-диск. Такие диски обычно подключают к PCIe, что даёт им потенциальную возможность считывать и записывать данные на скорости более 3000 Мб/с.

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

Раскрыть весь потенциал NVMe-накопителя на Raspberry Pi 4 не удастся. Но у NVMe-диска есть пара преимуществ перед обычной SD-картой. Это — надёжность и скорость. Покупка подобного диска и адаптера к нему не потребует заметно больше средств, чем покупка более старого диска M.2. А если понадобится, то NVMe-диску можно найти и другое применение (ниже, при разговоре о CM4, я ещё к этому вернусь).



Если у вас имеется внешний SSD с интерфейсом USB или M.2-диск, то вы тоже можете воспользоваться этим руководством.
Читать дальше →
Total votes 45: ↑40 and ↓5 +35
Views 27K
Comments 22

Компьютерная симуляция звуков воды

Working with 3D-graphics *
Сгенерированные компьютером изображения и видео сегодня достигли такого совершенства, что их практически невозможно отличить от реальности. Однако со звуком ситуация прямо противоположная. Во всех компьютерных играх и в фильмах звуки делают из сэмплов, записанных в реальности. До настоящего момента не удавалось генерировать реалистичные звуки прямо из математических моделей, в которых симулируются физические процессы.

Однако, вскоре компьютеры смогут делать саундтрек к фильму с нуля — так же успешно, как и видеоряд. Учёные Даг Джеймс и Чанзи Женг из Корнелльского университета продемонстрировали технологию, которая может стать первым кирпичиком в здании компьютерных звуковых симуляций.

Учёные решили создать модель для генерации различных звуков воды. Они перерыли литературу по акустике и выяснили, что в потоке воды звук генерируется вибрацией маленьких пузырьков воздуха диаметром от 0,5 до 5 мм.
Читать дальше →
Total votes 51: ↑49 and ↓2 +47
Views 3.6K
Comments 48

Дрон подводный…

Robotics DIY

Версия 0...

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

Но у нас есть АБСОЛЮТНО не освоенная стихия, море, а море у нас вокруг... и там еще никого не ловят (дронов в частности)...

Подумано - задумано, перво-наперво погружаемся в интернеты...

Читать далее
Total votes 84: ↑82 and ↓2 +80
Views 12K
Comments 58

Консоль на прокачку Часть 2, Аддоны и необычные версии Sega Mega Drive

Western Digital corporate blog History of IT Old hardware Games and game consoles

Продолжаем рассказывать об экспериментах Sega в сфере консолестроения на примере легендарной Sega Genesis, более известной в России, как Mega Drive. Если предыдущий наш материал был посвящен необычным картриджам, то сегодня мы поговорим об аддонах для игровой приставки и ее уникальных версиях от партнеров японской компании.

Погрузиться в прошлое!
Total votes 13: ↑13 and ↓0 +13
Views 6.7K
Comments 5

Information

Rating
1,042-nd
Location
Хацафон, Израиль
Date of birth
Registered
Activity