Введение в проектирование микропроцессорных систем на базе К1810

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

В качестве учебной платформы мы будем использовать легендарный отечественный микропроцессорный комплект К1810. Это не просто архаичная элементная база, а ценнейший образовательный инструмент. Являясь аналогом широко известной архитектуры Intel 8086, серия К1810 позволяет изучить фундаментальные принципы построения 16-разрядных систем, которые легли в основу современных компьютеров. Работа с этими микросхемами требует глубокого понимания аппаратной части, что формирует у студента прочную инженерную базу.

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

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

Раздел 1. Формулируем техническое задание на разработку контроллера

Любой серьезный проект начинается не с паяльника, а с документа. Техническое задание (ТЗ) — это фундаментальный документ, который переводит абстрактную идею в набор четких, измеримых и проверяемых требований. Ошибки, допущенные на этом этапе, обходятся дороже всего, поэтому его проработке необходимо уделить максимальное внимание. Формализация требований является первым и ключевым этапом в жизненном цикле проектирования МПС.

Для нашего системного контроллера ТЗ должно включать следующие ключевые разделы:

  1. Назначение и область применения: Краткое описание того, для чего создается устройство и где оно может использоваться (например, в учебных целях, для управления лабораторным стендом).
  2. Основные функции устройства: Это ядро ТЗ. Здесь необходимо перечислить все, что должен уметь делать контроллер. Для нашего примера это может быть:
    • Управление группой низковольтных электродвигателей постоянного тока.
    • Контроль состояния выпрямительных вентилей или электронных переключателей.
    • Сбор и первичная обработка данных с аналоговых и дискретных датчиков (температуры, положения, давления).
    • Реализация простого пользовательского интерфейса через терминал для отправки команд и получения отладочной информации.
  3. Требования к производительности: Определение быстродействия системы. Например, время реакции на внешнее событие (прерывание) не должно превышать N микросекунд.
  4. Требования к интерфейсам: Описание всех входов и выходов. Сколько и каких портов нужно (например, 8 дискретных входов, 4 аналоговых входа, 8 выходов для управления двигателями).
  5. Требования к электропитанию и надежности: Указание напряжения питания, максимального энергопотребления и условий эксплуатации.

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

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

Раздел 2. Как разработать структурную схему будущей системы

После того как «что делать» определено в ТЗ, наступает этап «как делать». И начинается он с разработки структурной схемы. Это не принципиальная схема с деталями, а высокоуровневая «карта» всего устройства. Ее главная цель — определить основные функциональные блоки и показать логические связи между ними, реализуя ключевой принцип проектирования МПС — модульность.

Модульный подход позволяет разбить одну большую и сложную задачу на несколько меньших и управляемых. Каждый блок на структурной схеме — это «черный ящик», который выполняет свою конкретную функцию. Для нашего контроллера на базе К1810 такая схема будет состоять из следующих основных модулей:

  • Центральный процессор (ЦП): «Мозг» всей системы. В нашем случае это будет микропроцессор КМ1810ВМ86. Он выполняет программный код и управляет работой всех остальных узлов.
  • Подсистема памяти: Включает в себя два типа памяти. Постоянное запоминающее устройство (ПЗУ) для хранения прошивки и Оперативное запоминающее устройство (ОЗУ) для временного хранения данных и переменных.
  • Подсистема ввода-вывода (I/O): Набор микросхем, которые обеспечивают связь процессора с внешним миром — датчиками, двигателями, кнопками и индикаторами.
  • Генератор тактовых импульсов (ГТИ): «Сердце» системы. Эта микросхема генерирует стабильные тактовые сигналы, которые синхронизируют работу всех цифровых компонентов. Без него процессор не сможет выполнить ни одной операции.
  • Системный контроллер: Важнейший вспомогательный узел, который формирует управляющие сигналы для системной шины, координируя обмен данными между процессором, памятью и периферией.

Эта схема наглядно показывает архитектуру будущего устройства. Она является прямым следствием требований из ТЗ и служит основой для следующего, самого ответственного этапа — выбора конкретных электронных компонентов.

Структурная схема дала нам общее видение. Теперь настало время наполнить эти абстрактные блоки реальными электронными компонентами.

Раздел 3. Подбор элементной базы на основе микропроцессорного комплекта К1810

Этот раздел является ядром практической части курсовой работы. Здесь мы переходим от абстрактных блоков к конкретным микросхемам. Наша задача — аргументированно выбрать компоненты для каждого модуля, описанного в структурной схеме, опираясь на отечественную серию К1810. Это 16-разрядный микропроцессорный комплект, работающий с напряжением питания 5 В, что делает его удобным для учебных проектов.

Вот перечень ключевых компонентов для нашего контроллера:

  1. Центральный процессор — КМ1810ВМ86: Это основа нашей системы. 16-разрядный процессор, являющийся полным аналогом Intel 8086. Его производительности, достигающей 5 МГц, более чем достаточно для выполнения задач управления и обработки данных, поставленных в ТЗ. Его система команд, совместимая с MCS-86, хорошо изучена и документирована.
  2. Генератор тактовых импульсов — КР1810ГФ84: Специализированная микросхема, которая решает сразу несколько задач: генерирует тактовый сигнал для процессора, формирует сигналы готовности (READY) и сброса (RESET). Использование готового генератора значительно упрощает проектирование схемы тактирования.
  3. Системный контроллер — КР1810ВГ88: Этот чип — «дирижер» системной шины. Процессор ВМ86 формирует сигналы состояния, а ВГ88 преобразует их в полноценные команды управления шиной: чтение/запись в память, чтение/запись в порты ввода-вывода. Без него невозможно организовать взаимодействие между компонентами системы.
  4. Контроллер приоритетных прерываний — КР1810ВН59А: Устройство реального времени должно мгновенно реагировать на внешние события (например, сигнал с аварийного датчика). Данный контроллер позволяет обрабатывать до 8 внешних запросов на прерывание, назначать им приоритеты и корректно передавать управление соответствующим подпрограммам-обработчикам.
  5. Контроллер динамической памяти — КР1810ВТ3: Если в системе используется динамическая оперативная память (DRAM), то эта микросхема обязательна. Она берет на себя всю сложную работу по регенерации ячеек памяти и мультиплексированию адресов, освобождая от этих задач центральный процессор.

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

Теперь, когда у нас есть полный список «действующих лиц», мы должны соединить их вместе, разработав детальную принципиальную схему.

Раздел 4. Проектирование принципиальной электрической схемы контроллера

Если структурная схема — это набросок, то принципиальная электрическая схема (Э3) — это уже подробный чертеж. Она показывает каждый компонент, каждую связь и каждый вывод микросхемы. Разработка этой схемы — кропотливый процесс, требующий внимания к деталям и понимания документации на компоненты.

Основная задача на этом этапе — правильно соединить выбранные нами микросхемы с помощью трех основных системных шин:

  • Шина адреса (Address Bus): Используется процессором для выбора конкретной ячейки памяти или порта ввода-вывода, с которым он хочет работать. У КМ1810ВМ86 она 20-разрядная, но мультиплексирована с шиной данных.
  • Шина данных (Data Bus): По этой шине передается сама информация — команды и данные между процессором, памятью и периферией. У нашего процессора она 16-разрядная.
  • Шина управления (Control Bus): Набор сигналов, которые определяют направление и тип операции (чтение или запись, обращение к памяти или к порту ввода-вывода). Эти сигналы как раз и формирует системный контроллер КР1810ВГ88.

Процесс проектирования выглядит следующим образом: процессор КМ1810ВМ86 подключается к системной шине. Системный контроллер КР1810ВГ88 «слушает» сигналы состояния процессора и генерирует команды для всей остальной системы. Контроллер памяти КР1810ВТ3 подключается к шине и управляет микросхемами ОЗУ. Периферийные устройства (порты ввода-вывода) также подключаются к системной шине и активируются по своим адресам.

Критически важным аспектом на этом этапе является проектирование цепей питания и тактирования. Все микросхемы серии К1810 требуют стабильного напряжения питания +5 В, поэтому в схеме обязательно должен быть предусмотрен качественный стабилизатор напряжения. Тактовые сигналы от генератора КР1810ГФ84 должны быть разведены к соответствующим входам процессора и периферии максимально короткими и прямыми дорожками для минимизации помех.

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

Раздел 5. Создание программного обеспечения для управления и тестирования

Аппаратная часть (hardware) и программное обеспечение (software) — две стороны одной медали. Для того чтобы наш контроллер ожил, ему нужна программа. В курсовой работе по микропроцессорной технике оптимальным выбором языка программирования является Ассемблер. Почему? Потому что он дает полный, низкоуровневый контроль над всеми ресурсами процессора и заставляет досконально разобраться в его архитектуре и системе команд, которая у К1810ВМ86 совместима с MCS-86.

Логическая структура программы для встраиваемой системы, как правило, стандартна и состоит из нескольких частей:

  1. Блок инициализации: Это код, который выполняется один раз при включении питания. Его задачи:
    • Настройка стека.
    • Инициализация контроллера прерываний (КР1810ВН59А).
    • Программирование портов ввода-вывода на нужный режим (вход или выход).
    • Настройка таймеров и других периферийных модулей.
  2. Основной рабочий цикл (Main Loop): Бесконечный цикл, в котором выполняется основная логика работы контроллера. Это может быть последовательный опрос датчиков, управление индикацией и выполнение фоновых задач.
  3. Обработчики прерываний: Специальные подпрограммы, которые вызываются аппаратно при возникновении внешнего события (например, нажатие кнопки или поступление данных). Именно они обеспечивают быструю реакцию системы.

Пример псевдокода для простейшей операции — включить светодиод на 5-м бите порта B:


MOV AL, 00100000b ; Загрузить в регистр AL битовую маску (1 на 5-й позиции)
OUT PORT_B_ADDR, AL ; Вывести значение из AL в порт B

Важно понимать, что процесс разработки ПО тесно связан с отладкой «железа». Это итерационный процесс: написали небольшой фрагмент кода (например, инициализацию), прошили его в ПЗУ, проверили его работу на реальной плате. Если работает — двигаемся дальше. Если нет — ищем ошибку либо в коде, либо в схеме.

Когда аппаратная и программная части спроектированы, наступает самый ответственный момент — их объединение, комплексная отладка и испытания.

Раздел 6. Комплексная отладка и испытания разработанного устройства

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

План тестирования должен быть пошаговым, от простого к сложному:

  1. Проверка цепей питания: Первый шаг после сборки платы. С помощью мультиметра нужно убедиться, что на все микросхемы подается корректное и стабильное напряжение +5 В и нигде нет коротких замыканий.
  2. Проверка тактового сигнала: С помощью осциллографа необходимо проверить наличие и форму тактовых импульсов на входе процессора и других микросхем. Без тактового сигнала система «мертва».
  3. Загрузка тестовой прошивки: В ПЗУ записывается простейшая программа, которая, например, циклически выводит какое-либо значение в один из портов. Успешное выполнение этой программы говорит о том, что процессор, ПЗУ и системная шина в целом функционируют.
  4. Тестирование памяти: Запускается специальный тест, который записывает в ячейки ОЗУ различные последовательности данных и затем считывает их, проверяя на совпадение. Это подтверждает исправность ОЗУ и контроллера памяти.
  5. Тестирование периферии и функций: Разрабатываются тестовые сценарии для проверки каждой функции, заявленной в ТЗ. Например:
    • Подать сигнал на дискретный вход и убедиться, что программа его корректно считывает.
    • Отправить команду на включение двигателя и проверить, появилось ли напряжение на соответствующем выходе.
    • Проверить реакцию системы на внешнее прерывание.

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

Успешно спроектировав, реализовав и протестировав наш контроллер, мы подошли к финалу. Осталось подвести итоги проделанной работы и грамотно оформить результаты для успешной защиты.

Заключение и подготовка к защите курсового проекта

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

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

Для успешной защиты проекта необходимо грамотно оформить результаты в виде пояснительной записки. Ее структура, как правило, повторяет пройденные нами этапы:

  • Введение (актуальность, цель и задачи).
  • Теоретические основы (обзор микропроцессорного комплекта К1810).
  • Разработка аппаратной части (ТЗ, структурная и принципиальная схемы, выбор компонентов).
  • Разработка программного обеспечения (алгоритмы, листинг программы).
  • Тестирование и результаты (методика испытаний, полученные данные).
  • Заключение (выводы по работе).
  • Библиографический список и приложения.

При подготовке к защите уделите особое внимание ответам на возможные вопросы: «Почему был выбран именно этот компонент?», «Как работает этот узел схемы?», «Каким образом ваша программа решает поставленную задачу?». Уверенные ответы на эти вопросы покажут комиссии глубину вашего понимания проекта.

Список использованной литературы

  1. Алексеенко А.Г., Галицын А.А., Иванников А. Д. Проектирование радиоэлектронной аппаратуры на микропроцессорах. М.: Радио и связь, 1984.
  2. Бойко. Г. М., Власова. В. К. Нормоконтроль оформления дипломного (курсового) проекта (работы). — Балаково. : Ризограф «Print-Fix», 2007. — 52 с.
  3. Волочий Б. Ю., Калашников И. Д., Мазепа Р. Б., Мандзий Б. А. Проектирование отказоустойчивых микропроцессорных информа-ционно- измерительных систем — Львов: Виша школа, 1987.
  4. Долкарт В. М., Шереметьевский Н. Н. Магистрально-модульные микро-средства управляющей вычислительной техники // Микро-процессорные средства и системы. — 1986 — №1. — с. 28-33.
  5. Кобылинский А. В., Москалевский А. Н. Однокристальный высоко-производительный 16-разрядный микропроцессор КМ1810ВМ86 // Микропроцессорные средства и системы. — 1986. — №1 — с. 28-33.
  6. Панфилов Д. И., Романенико О. А., Сафашок В. С. Учебная микроЭВМ на основе микропроцессора КМ1810ВМ86 // Микропроцессорные средства и системы. — 1986. — №5 — с. 16-22.
  7. Шило В. Л. Популярные цифровые микросхемы: Справочник. — М. : Радио и связь, 1989. — 252 с.: ил.
  8. Горбачев Г. Н., Чаплыгин Е. Е. Промышленная электроника: Учебник для вузов / Под. ред. В. А. Лабунцова. — М.: Энергоатомиздат, 1988. — 320 с.: ил.
  9. Шевкоплеев Б. В. Микропроцессорные структуры. Инженерные решения: Справочник. — М.: Радио и связь, 1990. — 512 с.: ил.
  10. Пангишвили И. В. Микропроцессоры и локальные сети микроЭВМ в распределенных системах управления. — М.: Энергоатомиздат, 1985. — 272 с.: ил.
  11. Хвощ С. Т. и др. Микропроцессоры и микроЭВМ в САУ: Справочник (С.Т. Хвощ, Н. Н. Варшинский, Е. А. Попов); Под общ. ред. С. Т. Хвоща. — Л. : Машиностроение. Ленинградское отделение, 1987. — 640 с.: ил.
  12. Каган Б. М., Сташин В. В. Основы проектирования микропроцессорных устройств автоматики. — М.: Энергоатомиздат, 1987. — 304 с.: ил.
  13. Лебедев О. Н. Микросхемы памяти и их применение. — М.: Радио и связь, 1990. — 160 с.: ил.
  14. Горбунов В. Л., Панфилов Д. И., Бикухин Д. Л. справочное пособие по микропроцессорам и микроЭВМ / Под ред. Л. Н. Брикухина. — М.: высшая школа, 1988. — 272 с.: ил.
  15. Орлов И. А., Коршошко В. Ф. Основы вычислительной техники и организации вычислительных работ: Учебник для инженеров. — М.: Энергоатомиздат 1984. — 336 с.: ил.

Похожие записи