Обработка ошибок – не самая распространенная вещь для операционных систем, предназначенных для приложений встраиваемых систем. Это неизбежный результат ограниченных ресурсов встраиваемых систем. И лишь небольшое количество таких систем имеет возможность вести себя как настольные, то есть предлагать пользователю возможность выбора действий в случае возникновения исключительных событий. В Nucleus SE существуют три типа проверки ошибок. Подробнее об этом — в очередной статье Колина Уоллса.
Читать далее...Продолжаем серию статей, посвященных разработкам под Redd. В этой статье мы рассмотрим основы потокового протокола шины Avalon-ST, через который организована связь центрального процессора Redd с процессорной системой, реализованной в ПЛИС.
Читать далее...В этой статьей автор рассматривает мехнизмы запуска ОСРВ, которые горазде проще (а следовательно, и быстрее), чем у настольных ПК.
Читать далее...Прерывания не управляются такой ОСРВ, как Nucleus SE: они обрабатываются при возникновении в соответствии с установленными приоритетами. Время их выполнения просто «крадется» из доступного времени в коде основного приложения. Поэтому все обработчики прерывания должны быть простыми, короткими и быстрыми.
Читать далее...Недавно автор взял очередную плату, прошил уже хорошо отлаженной и проверенной «прошивкой» и... получил неопознанное USB-устройство. Взял другую плату, «прошил» её, там устройство заработало. Тут бы делу и конец, но интересно же, в чём дело. Результаты разбора полёта – в статье.
Читать далее...В статье описываются две методики разработки и отладки программного кода, исполняемого на центральном процессоре комплекса Redd: средствами Microsoft Visual Studio и на виртуальной машине с ОС Linux. Оба способа соответствуют декларируемым принципам работы под Redd: низкие трудозатраты на разработку и удалённая отладка.
Читать далее...Идея программных таймеров уже встречалась нам в статьях этого цикла. Таймеры являются объектами ядра, предоставляющими задачам простой способ запуска событий по времени, или, чаще всего, способ выполнять действия на регулярной основе. Все детали функционала, связанного со временем (точность, обработка прерываний и т.д.) в Nucleus SE были рассмотрены в предыдущей статье (#27).
Читать далее...В первой статье цикла говорилось, что для управления нашим оборудованием, реализованным средствами ПЛИС, для комплекса Redd лучше всего использовать процессорную систему, после чего на протяжении первой и второй статей показывалось, как эту систему сделать. Пришла пора рассмотреть, как включить в процессорную систему произвольное ядро.
Читать далее...Понятие времени в контексте ОСРВ была введена Колином Уоллсом в одной из предыдущих статей (#6), вместе с идеей о связанных со временем механизмах, доступных в ОС.
Читать далее...В прошлой статье мы разработали простейшую процессорную систему, с помощью которой планируем провести тест микросхемы ОЗУ, подключённой к ПЛИС комплекса Redd. Сегодня же мы сделаем для этой аппаратной среды программу на языке С++, а также разберёмся, как эту программу вливать, а главное — отлаживать.
Читать далее...