Разработчик
Путешествие Embox на Baikal
Всем привет.
Многие знают, что мы в проекте Embox любим портироваться на отечественные платформы. Статьи об этом можно посмотреть у нас в блоге. Например, Embox уже успешно восходил на Эльбрус. Теперь очередь за еще одним известным географическим названием и по совместимости процессором — Байкалом. У компании Байкал Электроникс есть два процессора (Baikal-M и Baikail-T1), поскольку Embox ориентирован на встроенные системы, начать мы решили с MIPS32 и запустились на Baikal-T1
Embox начинает восхождение на Эльбрус
Сделаю пару замечаний по содержимому статьи. Во-первых, процесс освоения нами данной архитектуры находится на начальной стадии, нам удалось запустить Embox на данной платформе, но мы еще не реализовали много необходимых частей, об этом речь пойдет в будущих публикациях. Во вторых, данная архитектура – сложная, и
для детального описания требуется гораздо больше текста, чем позволяет формат
одной статьи. Поэтому предлагаем воспринимать данную статью как вводную,
содержащую минимум технической информации о самой архитектуре.
Приступим.
Запускаем .NET на RISC-V и разрабатываем IoT приложение для Sipeed Lichee RV
До недавнего времени разрабатывать IoT приложения на C# можно было только для компьютеров построенных на архитектуре ARM или x86. Поддержка RISC-V процессоров для платформы .NET уже давно в стадии разработки. В начале этого года был представлен не официальный .NET 8.0 SDK, который уже сейчас вы сможете запустить на RISC-V процессоре под ОС Debian/Ubuntu. В качестве платформы запуска возьмем одноплатный компьютер Sipeed Lichee RV на RISC-V процессоре Allwinner D1 (ядро Alibaba/T-Head Xuantie C906 RISC-V). В первой части поста рассмотрим установку .NET 8.0 SDK на Sipeed Lichee RV. Во второй, запустим приложение для работы с контактами GPIO и датчиком BME280 для замера температуры, влажности и давления.
Разработка цифровой аппаратуры нетрадиционным методом: Yosys, SpinalHDL, VexRiscv (ч. 2)
Это вторая и заключительная часть большой статьи. Ознакомиться с первой частью можно по ссылке.
Основная прелесть использования ПЛИС, на мой взгляд, состоит в том, что разработка аппаратуры превращается в программирование со всеми его свойствами: написание и отладка кода как текста на специализированных языках описания аппаратуры (HDL); код распространяется в виде параметризованных модулей (IP-блоков), что позволяет его легко переиспользовать в других проектах; распределенная разработка обширным коллективом разработчиков с системой контроля версий, такой же, как у программистов (Git); и, как и в программировании, ничтожно низкая стоимость ошибки.
Последнее очень важно, так как если при разработке устройства классическим методом разработчик несет вполне существенные затраты на сборку и производство изделия, и любая схемотехническая ошибка или ошибка трассировки печатной платы — это всегда выход на очередную итерацию и попадание на деньги, то при работе с ПЛИС ошибки ничтожны по своей стоимости и легко устранимы. И даже если в серийном изделии обнаруживается ошибка, то её во многих случаях можно устранить очередным апгрейдом прошивки «в поле» без замены изделия. Короче, с приходом ПЛИС разработка цифровой аппаратуры все больше и больше выглядит как программирование, а это, помимо всего прочего, существенно понижает порог вхождения в тему, и все больше программистов становятся разработчиками «железа». А новые люди, в свою очередь, приносят с собой в индустрию новые подходы и принципы.
В этой статье я хочу поделиться своим небольшим опытом «программирования» микросхем ПЛИС и тем, как я постепенно погружался в тему ПЛИСоводства. Изначально я собирался написать небольшую заметку про открытый тулчейн для синтеза Yosys. Потом — про язык SpinalHDL и синтезируемое микропроцессорное ядро VexRiscv, на нём написанное. Потом — про замену микроконтроллеров микросхемами ПЛИС на примере моей отладочной платы «Карно». Но в процессе я погрузился в историю появления Hardware Description Languages (HDL), и когда я начал писать, Остапа, как это часто бывает, понесло... В общем, получилось то, что получилось.
Обзор платы Tang Primer 20K на Gowin GW2A-LV18
Кого заинтересовала тема — добро пожаловать под кат! =)
Установка OC Linux на плату Kintex 7 (KC705) от Xilinx с софт-процессором MicroBlaze часть 1
Данная серия статей является туториалом по установке линукса на плату KC705 с софт-процессорным ядром Микроблэйз.
В первой части я описываю процесс создания схемы платформы, на которую мы поставим систему, с описанием некоторых нюансов.
Во второй части я опишу процесс сборки образа линукса и тестирование его работоспособности на отладочной плате путём прошивания через usb.
В третей — расскажу о том, как прошить SPI флэшку на плате, чтобы система стартовала сразу при включении платы.
Буду рад любым советам, замечаниям и фидбэку в комментариях. Статью считаю полезной, т.к. в процессе столкнулся с достаточно большим количеством неочевидных вещей, настроек и решений, информацию о которых в интернете нашёл с трудом. Да и вообще, актуальных туториалов и статей, конкретно по этой отладочной плате в интернете ничтожно мало. Поехали!
Hello World на Tang Primer 20K под Linux
Опытом настройки я с вами хотел бы поделиться в этой статье. Всех интересующихся — я по традиции приглашаю под кат!
Автономный программатор SWD
При разработке и последующем производстве электроники неизбежно встаёт вопрос проверки собранных изделий. Если компания небольшая, а производство мелкосерийное, то в жертву рутине можно принести какого-нибудь начинающего специалиста, либо самого разработчика. Как правило, требуется проверить несколько напряжении, пару цифровых интерфейсов, световую, звуковую индикацию и т. п. Но предварительно в контроллер необходимо записать программу. В мелкой серии длительность тестирования особой роли не играет. Трудности начинаются, когда каждый месяц производится десяток тысяч изделий.
Вопрос в том, что прошивка устройства внешним программатором – это отдельная технологическая операция, требующая времени и оплаты. Столкнувшись с такой постановкой задачи, пришлось некоторое время повозиться, чтобы реализовать автономный SWD программатор в составе технологической оснастки. Все операции по проверке собранных печатных плат, включая программирование, объединяются в тестовую последовательность, а полное время проверок сводится к возможному минимуму. Надеюсь, что представленная информация облегчит дело тем самураям, которые решат пройти по схожему пути.
Библиотека контролов для Avalonia UI
Последний год наша команда работала над кроссплатформенной версией САПР Delta Design. В результате этой работы была создана своя библиотека UI контролов для Avalonia, которая поддерживает как ОС Windows, так и ряд систем Linux, включая российские АстраЛинукс, РедОс, а также их модификации под Эльбрус.
Создание единой библиотеки контролов EremexControls.NET позволило компании ЭРЕМЕКС значительно ускорить темпы разработки и показать мультиплатформенную версию САПР Delta Design раньше обещанного срока. Применение готовых типовых блоков дало возможность инженерам фокусироваться на предметной области, не отвлекаясь на другие задачи. Сейчас библиотека контролов используются в трех внутренних проектах компании.
Под катом обзорная статья по новому продукту от компании ЭРЕМЕКС – библиотека компонентов EremexControls.NET для Avalonia UI.
Наш опыт в распознавании наличия подписи на .NET + EmguCV (OpenCV). Ч. 1
Привет, Хабр! Я работаю разработчиком в АльфаСтрахование – в команде, которая занимается электронным документооборотом
В чем суть проблемы, с которой мы столкнулись: несмотря на то, что документооборот внутри компании полностью электронный, на «входе» документы могут поступать к нам в самых разных форматах: отсканированные с бумажных носителей, в «цифре» с ЭЦП или без электронной подписи – чтобы обеспечить сквозную обработку таких документов, в ряде процессов нам требуется распознавать наличие подписи.
Краткая история космических микропроцессоров, часть вторая
Следующий большой шаг в обеспечении радиационной стойкости наступил с переходом на суб-100 нм, где практически каждое следующее поколение технологии приносит новые вопросы: меняются материалы, меняются требования к топологии, растет статическая мощность (утечки безо всякой радиации, которые под дозой становятся еще хуже), продолжает расти значимость одиночных эффектов, которые превращаются во множественные. Эти задачи потребовали разработки новых подходов и, что удивительно, частичного возврата к старым, потому что часть вещей, отлично себя зарекомендовавших на нормах 1-0.18 мкм, на более тонких нормах не работает. Например, в таких технологиях для повышения выхода годных запрещено делать любимые дизайнерами радстойких чипов кольцевые транзисторы. О том, как дизайнеры справляются с новыми вызовами, я расскажу на примере России – и заодно сравню достижения наших соотечественников с успехами иностранных коллег и покажу, чего стоит ожидать в обозримом будущем.
День Святого Валентина: Как найти девушку при хайтек-эмиграции в «Силиконовый Лес» в Портленд, Орегон?
Silicon Forest в штате Орегон не так известен как Silicon Valley в Калифорнии, но он несомненно входит в топ-5 хайтек-мест в США. Просто факт из Википедии: хотя штаб-квартира Интела остается в Калифорнии, но еще в 1990-х компания начала переносить самую продвинутую разработку микроархитектуры в Орегон. Как очевидец, могу сообщить банальную причину: в начале интернет-бума цены на дома в Долине выросли вдвое, а потом втрое, и агломерация вокруг Портланда стала ближайшим местом бегства из Калифорнии для инженеров, которые хотели купить дом, но не хотели переучиваться на джаву и становиться дотком-миллионерами.
Но "Кремниевым Лесом" окресности Портленда назвали еще до описываемых событий. После второй мировой войны там выросла компания-производитель осциллографов Tektronix, а в начале 1980-х годов - производитель софтвера для проектировщиков микросхем Mentor Graphics (сейчас Siemens EDA). Чуть позже в Лесу возник производитель ПЛИС Lattice, а потом подтянулись японские компании: Fujitsu, Epson, NEC. Наконец, там сделали отделения IBM и HP, и "Кремниевый Лес" состоялся.
Жить в области Портленда хорошо. Полтора часа езды налево - океан. Полтора часа направо - горные лыжи. В самом Портленде - самый большой в мире книжный магазин, вокруг много лесных троп и рыбалки. Одна проблема для юного русского программиста: где искать девушек?
Что видит на своем экране проектировщик айфона в Купертино, Калифорния
Каждый год мы видим очереди фанатов, которым не терпится первыми прикоснуться к только что выпущенному новому айфону. А хотите узнать, как выглядит смартфон за два года до начала его продаж в магазине? Он в это время уже существует, как набор файлов в компьютерах проектировщиков его системы на кристалле.
Что же видит проектировщик Apple на своем экране? Завесу над этой тайной поможет над приоткрыть знаменитый в узких кругах блоггер Джон Кули (John Cooley), который начал свой вебсайт deepchip.com еще в 1990-е годы. Джон собирает всякие слухи, сливы и мнения тысяч инженеров больших электронных компаний, стартапов и контракторов, которые потом все это с большим интересом читают.
Когда-то в 2015 году, Джон опубликовал заметку "За закрытыми дверями", на основе анонимных емейлов от 36 инженеров. Аккурат в это время Apple переходил на собственные версии CPU и GPU (до этого Apple использовал готовые ядра от ARM и Imagination Technologies). Заметка выглядела так:
Как разработать микросхему, от идеи до результата. Часть 4. DRC/LVS/PEX
В этой части мы:
- Запустим Design Rule Check, чтобы проверить возможность произвести нашу схему
- Запустим Device Extraction для сравнения нашего Layout с целевой схемой.
- Произведём сравнение наших компонентов из Layout и нашей схемы, которую мы нарисовали в XSCHEM.
- Сгенерируем netlist с паразитными конденсаторами и резисторами (PEX).
- Просимулируем netlist с паразитными конденсаторами и резисторами.
- Сгенерируем LEF файл.
- Подведём итоги этой серии статей.
Документирование по ГОСТ 34* — это просто
Как работает альфа-композитинг
Возможно, прозрачность не кажется какой-то интересной темой. Формат GIF, позволявший некоторым пикселям просвечивать сквозь фон, опубликован более 30 лет назад. Почти в каждом приложении для графического дизайна, выпущенном за последние два десятка лет, поддерживается создание полупрозрачного контента. Эти понятия давно перестали быть чем-то новым.
В своей статье я хочу показать, что на самом деле прозрачность в цифровых изображениях намного интереснее, чем кажется — в том, что мы воспринимаем как нечто само собой разумеющееся, есть невидимая глубина и красота.
Что нам стоит чип построить? Об экономике создания микропроцессоров
В вопросе развития отечественной микроэлектронной индустрии один из ключевых вопросов – экономический. Ведь разработка микропроцессоров – удовольствие не из дешевых. В данной статье я попытаюсь на базовом уровне разобрать сколько стоит разработка современного general-purpose CPU и какие партии необходимы отечественным дизайн-центрам, чтобы выйти на окупаемость.
Себестоимость микропроцессора, который в итоге дойдёт до вашего компьютера/ноутбука/сервера, можно грубо разделить на 3 составные части:
Использование бюджетных JTAG-отладчиков в PlatformIO
В этом туториале я хотел бы рассказать о том, как использовать ультрабюджетные JTAG-отладчики CJMCU FT232H и RV-Degugger-Lite в PlatformIO для прошивки и отладки устройств на платформах ESP32 и GD32. Полноценной инструкции на просторах интернета я не нашел, и в процессе настройки столкнулся со многими проблемами, поэтому этот туториал появляется здесь для вашего удобства. Оговорюсь сразу, что настройка прописана для Linux, но для Windows принципиальной разницы нет за исключением танцев с Zadig.
Прошивка для фотополимерного LCD 3D-принтера своими руками. Часть 3
В предыдущих двух частях я рассказал о том как делал GUI, заводил управление шаговым двигателем и организовывал работу с файлами на USB-флэшке.
Сегодня я напишу о процессе печати, выводе печатаемых слоев на экран засветки и об оставшихся, не таких существенных вещах:
4. Вывод изображений слоев на дисплей засветки.
5. Всякая мелочь типа управления засветкой и вентиляторами, загрузки и сохранения настроек и т.п.
6. Дополнительные возможности для комфорта и удобства.
Информация
- В рейтинге
- Не участвует
- Откуда
- Москва, Москва и Московская обл., Россия
- Зарегистрирован
- Активность