Введение в микропроцессоры

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

Главная трудность в изучении микропроцессоров состоит в том, что их невозможно понять, рассмотрев только аппаратные средства и программное обеспечение. Программисты обнаружат, что микропроцессоры имеют архитектуру, систему команд и программное обеспечение подобные другим ЭВМ, с которыми они уже знакомы. Инженеры найдут, что микропроцессоры имеют те же физические особенности, сигналы ввода-вывода и рабочие характеристики, что и привычные для них.интегральные микросхемы. Однако и программисты, и инженеры обнаружат, что разработка систем, основанных на микропроцессорах, требует понимания как аппаратных средств, так и программного обеспечения. В этой книге я исходил из того, что при использовании микропроцессоров основной упор в разработке приходится не на аппаратные средства, а на программное обеспечение, и поэтому уделил ему больше внимания. В то же время я подробно рассматривал микропроцессоры с точки зрения аппаратных средств, особо останавливаясь на конструировании блоков памяти, использовании стандартных и специальных интегральных микросхем, оранизации. интерфейса простых периферийных устройств. Я не рассматривал проектирование цифровых схем, так как считаю, что достаточное число книг освещает этот вопрос. Таким образом, в написанной мною книге основное внимание уделено программному обеспечению, но в то же время в ней рассмотрены вопросы, связанные с аппаратными средствами.

Чтобы не рассматривать широкий круг микропроцессоров и не изобретать какой-то образец для изучения, я выбрал два наиболее широко используемых микропроцессора: Intel 8080 и Motorola 6800. Эти микропроцессоры аналогичны большинству стандартных систем. Они также в достаточной степени отличаются друг от друга как в программировании, так и в технике организации интерфейса, чтобы быть характерными для целого ряда микропроцессоров. Я полагаю, что имеется соответствующий обзор микропроцессоров и что в учебниках дается подробный анализ одного или двух устройств. Я остановил свой выбор именно на этих микропроцессорах по коммерческим соображениям, но у меня нет оснований считать, что эти два процессора (или любые другие) имеют преимущества перед своими конкурентами. В этой книге иногда упоминаются некоторые особенности различных конкурирующих процессоров.

Книга построена следующим образом. Глава 1 является вредением в предмет. В ней микропроцессоры сравниваются с мини-ЭВМ, и большими ЭВМ, а также с другими БИС. Здесь описываются полупроводниковая технология и типы памяти, рассматриваются преимущества и недостатки микропроцессоров, перечисляются области применения микропроцессоров и дается несколько конкретных примеров устройств, разработанных на основе этих микропроцессоров.

В гл. 2 рассматривается архитектура микропроцессоров (МП). Кратко описаны различные устройства ЭВМ: центральный процессор (ЦП), память, устройство ввода-вывода. В остальном внимание здесь сконцентрировано на ЦП. Дается описание регистров, арифметического устройства и механизма дешифрации команд. В конце главы представлены архитектуры микро-ЭВМ Intel 8080 и Motorola 6800.

В гл. 3 описывается система команд. В первых параграфах этой главы содержится общее описание форматов команд, методов адресации и групп команд. В последних параграфах описываются системы команд МП Intel 8080 и Motorola 6800.

В гл. 4 рассматриваются ассемблеры. В начале главы рассматриваются преимущества и недостатки различных языковых уровней и основные особенности ассемблеров. В конце главы дается конкретное описание стандартных ассемблеров Intel 8080 и Motorolа 6800.

В гл. 5 описывается технология программирования на языке ассемблера для МП Intel 8080 и Motorola 6800. Глава начинается с простых программ. Далее в ней описываются цикл, манипуляции с символами, преобразование кодов, арифметические операции, обработка списков, таблиц и работа с подпрограммами.

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

В гл. 7 рассмотрена память. В ней описываются основные типы связи микропроцессора с памятью. Затем рассматривается организация

интерфейса простых блоков памяти и структура шин, которые требуются для более сложных блоков памяти. Здесь же описывается конструкция блоков памяти для МП Intel 8080 и Motorola 6800 и их работа.

В гл. 8 рассматриваются устройства ввода-вывода (УВВ). Начинается она с описания процедур ввода и вывода. Затем рассматриваются простые блоки УВВ и более сложные, разбираются некоторые схемы, которые широко используются в УВВ, и простые УВВ. В конце главы описывается специфика аппаратных средств и программного обеспечения, необходимых для организации интерфейса УВВ микропроцессоров Intel 808 и Motorola 6800.

В гл. 9 рассмотрены системы прерывания. Описываются их использование, преимущества и недостатки. Затем разбираются процедуры прерывании, особенности систем прерывания и управления источниками прерываний. Далее описывается программирование и организация интерфейса систем прерывания, принятые в МП Intel 8080 и Motorola 6800. Заканчивается глава кратким описанием метода прямого доступа к памяти.

Очевидно, что многие вопросы я оставил без внимания. Я кратко рассмотрел назначение микропрограммирования без описания техники микропрограммирования (микропрограммированию микропроцессоров следует посвятить отдельную книгу). Объяснено использование языков высокого уровня, но не приведены конкретные примеры. Такие технические методы, как мультиобработка, параллельное нро-цессирование и виртуальная память, не рассматривались совсем. Периферийные устройства микропроцессоров и разнообразные интегральные цифровые и аналоговые схемы, которые попутно используются, описаны поверхностно. О памяти с прямым доступом имеется только краткое упоминание. Возможно, некоторые из этих тем впоследствии будут рассмотрены.

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

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

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