Search
Write a publication
Pull to refresh
2
0

Инженер-программист

Send message

Вечный соперник: история AMD K7. Часть 1 — Слот

Level of difficultyMedium
Reading time13 min
Views10K


После основательного экскурса в историю «нетрадиционных» (на сегодняшний день) систем и долгого перерыва пора вернуться к самой массовой архитектуре для ПК — х86. Сегодня у нас на очереди долгожданный цикл о процессорах AMD. Начнем его, конечно же, с К7, но перед этим позволю себе небольшую ретроспективу. Так мы поймем, что предшествовало появлению процессоров седьмого поколения и почему они получились именно такими.
Читать дальше →

Raspberry Pi Pico на МК RP2040: начало и первые шаги. Что есть поесть за $4

Reading time8 min
Views130K

Начало


Raspberry Pi Foundation всегда знает чем порадовать или удивить нас, а так же как подталкивать других производителей на интересные шаги и решения для хорошей конкуренции.
В четверг (рыбный день, кстати) 21-ого января 2021 года был анонсирован выпуск нового микроконтроллера RP2040 и небольшой платы с его применением, которая получила название Raspberry Pi Pico.



Честно говоря, я прочитал эту новость и не планировал ничего делать по этому поводу. Но потом случайно заметил несколько особенностей этого микроконтроллера, что разбудило любопытство во мне и подтолкнуло к покупке пары плат для дальнейших экспериментов. Очень привлекло наличие PIO блоков и множество PWM. Справедливости ради, PWM можно как-то решить, а вот с PIO есть смысл поиграться.

После пары дней занимательной возни я решил поделиться своим небольшим опытом с Хабром и его гостями.

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

Запуск Линукс на TV-боксе на чипе RK3528

Level of difficultyMedium
Reading time8 min
Views17K

Мне удалось запустить Armbian сборку Ubuntu на TV-боксе с новым чипсетом RK3528. Используя конфиги для Hinlink H28K, первого поддерживаемого в Armbian устройства на этом чипе.

Это продолжение статьи, где я описал несколько способов достать Device Tree файлы из Андроид установленного на TV-боксе. Нужно для запуска на конкретном устройстве, даже для одной и той же модели - компоненты устройства могут отличаться, эти детали есть в Device Tree. Эта инструкция рассказывает как собрать и запустить Armbian используя полученный Device Tree файл. Написано для пользователей Линукс, средней сложности - почти всё подробно описано по шагам.

Инструкция для запуска в том числе с USB накопителя, что по умолчанию отключено в загрузчике U-Boot.

Читать далее

IMSProg — программатор для CH341a в Linux

Level of difficultyMedium
Reading time4 min
Views21K

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

Читать далее

Cloud Native или cloud-native: как мы разбирались с написанием термина и почему Open Source тоже пишут без дефиса

Level of difficultyEasy
Reading time3 min
Views1.5K

На днях мы работали над переводом глоссария CNCF и начали спорить о том, как писать словосочетание cloud-native. Раньше мы использовали название с дефисом — такое правило применяется к составным прилагательным в английском языке (пример — well-known actor). «Википедия» в статье «Cloud-native computing» тоже следует этому правилу, с другой стороны, название CNCF расшифровывается уже без дефиса: Cloud Native Computing Foundation. Так что нам пришлось провести небольшое расследование.

Читать далее

Компиляция моделей МО в С

Level of difficultyHard
Reading time28 min
Views5.8K

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

Недавно у меня состоялся приятный разговор с моим другом Крисом. Он познакомил меня с основами машинного обучения, когда я разбирал написанный Андреем Карпаты micrograd.

Для тех, кто не знает, micrograd – это небольшая реализация нейронной сети, написанная на чистом Python без библиотек, в которой вычислительными единицами выступают не векторы и матрицы, а скалярные величины.
Читать дальше →

Виртуальное облучение рентгеном

Level of difficultyMedium
Reading time9 min
Views2.4K

Привет, Хабр! Как ты уже знаешь, в Smart Engines мы разрабатываем томографическое программное обеспечение. Компьютерная томография (КТ) – это неинвазивный метод исследования внутренних особенностей предмета. На сегодняшний день КТ является одним из основных томографических методов исследования внутренних органов человека, также КТ это перспективный инструмент для контроля качества в промышленности.

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

Читать далее

Проектируем узлы печатной платы с учетом особенностей монтажа при массовом производстве. Подход DFA

Reading time18 min
Views17K

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

Подход, на который мы будем опираться, называется DFA — Design for Assembly (проектирование для сборки). Набор методов DFA гарантирует возможность сборки компонентов на плате, когда она поступит на монтажный участок, и позволяет отправлять плату в тираж без страха потерять деньги и время.

Читать далее

Как сделать простой UPS для NAS

Level of difficultyMedium
Reading time11 min
Views28K

Как известно, большинство UPS подключаются между розеткой 220В и NAS. При этом ничто не мешает разместить UPS внутри корпуса NAS или хотя бы позаботиться об этом заранее.

Рассмотрим вариант дизайна такого UPS, который можно разместить внутри корпуса для тех NAS, которые для работы требуют только одного напряжения питания 12В.

Всё ещё хочешь собрать UPS?

Джойстик, тачпад, кнопки — делаем USB контроллер ввода на RP2040

Reading time7 min
Views7.3K

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

Самое простое - это найти готовую клавиатуру, тачпад, джойстик и т.д. и подключить к GPIO или нескольким портам USB основного контроллера. Нормальный вариант, многие так и делают. Но возможно, что либо GPIO не хватит, а может быть USB портов. 

Тогда может быть имеет смысл добавить небольшой и дешевый микроконтроллер и всё-таки собрать свой собственный  геймпад или пульт, оснастив его при этом стандартным USB HID Joystick драйвером для игровых контроллеров. В таком случае контроллер можно будет подключить к любой Win / Linux системе, без необходимости разработки драйвера для USB.

Насколько это сложно? Можно ли сделать свой собственный тачпад?

Попробуем разобраться

KLA-Tencor — революция в много-лучевой электронной литографии

Reading time7 min
Views7.2K

KLA-Tencor Corporation – крупный производитель оборудования для всех этапов производства микроэлектроники: пластин, матриц, микросхем и упаковки. От исследований и разработок до конечного серийного производства. В корпорации прекрасно понимают потребности и тенденции в отрасли и продолжают разработку электронно-многолучевой технологии при финансовой поддержке от DARPA в рамках программы Безмасочной Нанолитографии (Maskless Nanowriter Program).

Технология от KLA-Tencor – самый изощренный представитель электронно-многолучевой литографии.

Электронные микрозеркала, вращающийся стол

И другие радикальные решения...

Руководство по цветовым функциям CSS

Level of difficultyEasy
Reading time6 min
Views15K

Возможно, вы использовали CSS для изменения цвета элемента на веб-странице, но слышали ли вы что-нибудь о цветовых функциях CSS? Если нет, то из этой статьи узнаете нечто новое и крайне полезное!

Что такое цветовые функции CSS?


Цветовые функции CSS (CSS color functions) — это способ задания цвета в CSS при помощи математических функций, а не простого кода цвета. Функции обеспечивают больше контроля и гибкости при работе с цветами, используемыми в таблице стилей.

При помощи цветовых функций можно настраивать тон (hue), насыщенность (saturation), светлоту (lightness) и непрозрачность (opacity) цвета и даже смешивать вместе несколько цветов.
Читать дальше →

Датчик присутствия для Home Assistant с использованием Zigbee

Level of difficultyEasy
Reading time5 min
Views25K

Для своего умного дома решил собрать датчик присутствия на доплеровском датчике rcwl-0516 и микроконтроллере Zigbee — cc2530, работающий на протоколе Zigbee, отличающийся низким энергопотреблением.

Читать далее

Припой припою рознь, или Несколько слов о флюсах

Reading time7 min
Views48K

Общаясь сейчас со связистами на предмет «сообщите, кому какой припой нужен», получил достаточно типовой ответ — «хороший, чтобы всё паял». Углублённое обсуждение вопроса вынесло на поверхность несколько запомнившихся людям торговых марок — в первую очередь Asahi — но и только. Про флюсы и их различия сказано ничего не было.

Спектр задач по пайке при этом у связистов простирается от антенно-фидерного хозяйства (кабели, разъёмы), через аксессуары (зарядки, гарнитуры) и до ремонта собственно радиоаппаратуры (SMD-компоненты).

В связи с этим я не только провёл краткий ликбез и показал пару табличек, но и хочу написать про это здесь, чтобы потом было удобно давать ссылку :)

Итак: какие бывают флюсы в припоях, что лучше — ORL0 или ROM1 (я проверил гуглем, обе аббревиатуры на Хабре встречались 0 раз), где искать эту информацию и зачем вообще это надо.

Читать далее

Технология электронно-много-лучевой литографии

Reading time6 min
Views15K

Скорость засветки у электронно-лучевого литографа на порядки меньше скорости засветки у лазерного генератора фотошаблонов.

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

Учитывая стоимость электронно-лучевого литографа (порядка 15 млн. USD), становиться понятно, почему комплект масок для техпроцесса 130 нм может стоить 500 тыс. USD, а для продвинутого техпроцесса 7-14 нм может легко уйти за 10 млн. USD.

Может стоит ускориться?

Как это делают можно узнать под катом

Mapper — наш, или еще одна технология электронно-много-лучевой литографии

Reading time7 min
Views9.1K

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

Однако, примерно в то же самое время, когда в Австрии на IMS конструировали свою установку, в Нидерландах тоже решили попробовать силы в этом направлении.

Причем, поставили себе задачу достичь производительности не меньше 10 шт./час для пластин 300 мм.

MAPPER — акроним расшифровывается, как Multiple Aperture Pixel by Pixel Enhancement of Resolution, т. е. многоапертурное попиксельное улучшение разрешения. Название технологии почти никак не связанное с ее сущностью.

Что из этого получилось...

Всё про USB-C: введение для электронщиков

Level of difficultyMedium
Reading time8 min
Views33K

Прошло уже почти пять лет, как во всевозможных устройствах начали появляться порты USB-C. Это стандарт, за рамки которого могут выходить многие производители и электронщики. Поначалу существовало много путаницы относительно того, что он в себе несёт, и всяческие отклонения со стороны производителей некоторых людей отталкивали. Однако теперь USB-C уже прочно вошёл в нашу жизнь, и я хочу показать вам, как именно этот стандарт используется, чего могут ожидать от него пользователи, а что он способен предложить электронщикам.
Читать дальше →

Пробуем IPv6 в домашней сети

Reading time4 min
Views44K
image

Давно хотел пощупать что это такое. Много новостей связанных с ipv6 мелькает в интернете. Близится всемирный день запуска, прошлогодний день тестирования я как-то пропустил. Да и вообще за ним будущее и я считаю лучше быть впереди чем потом догонять.
А недавняя статья на хабре окончательно сподвигла меня изучить этот вопрос на собственном опыте.

Читать дальше →

IPv6-адреса через EUI-64: Точки над i

Reading time3 min
Views47K
В этой небольшой статье (ещё раз) объясняется, зачем в IPv6 адреса генерируются таким странным, на первый взгляд, образом.



Тех, кто понимает смысл процедуры EUI-48 -> EUI-64 -> Modified EUI-64, статья вряд ли обогатит новыми знаниями. Остальные – добро пожаловать под кат.
Читать дальше →

Организация многозадачности в ядре ОС

Reading time22 min
Views81K
Волею судеб мне довелось разбираться с организацией многозадачности, точнее псевдо-многозадачности, поскольку задачи делят время на одном ядре процессора. Я уже несколько раз встречала на хабре статьи по данной теме, и мне показалось, что данная тема сообществу интересна, поэтому я позволю себе внести свою скромную лепту в освещение данного вопроса.
Сначала я попытаюсь рассказать о типах многозадачности (кооперативной и вытесняющей). Затем перейду к принципам планирования для вытесняющей многозадачности. Рассказ рассчитан скорее на начинающего читателя, который хочет разобраться, как работает многозадачность на уровне ядра ОС. Но поскольку все будет сопровождаться примерами, которые можно скомпилировать, запустить, и с которыми при желании можно поиграться, то, возможно, статья заинтересует и тех, кто уже знаком с теорией, но никогда не пробовал планировщик “на вкус”. Кому лень читать, может сразу перейти к изучению кода, поскольку код примеров будет взят из нашего проекта.
Ну, и многопоточные котики для привлечения внимания.

Читать дальше →

Information

Rating
Does not participate
Registered
Activity