Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
evm.doc
Скачиваний:
0
Добавлен:
01.05.2025
Размер:
4.1 Mб
Скачать

18. Процессоры гарвардской архитектуры: общие принципы и архитектура микроконтроллера 8051

Типичные операции (сложение и умножение) требуют от любого вычислительного устройства нескольких действий:

  1. выборку двух операндов,

  2. выбор инструкции и её выполнение,

  3. и, наконец, сохранение результата.

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

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

Однако можно выделить некоторые черты архитектуры и системы команд, общие для всех современных микроконтроллеров, это:

  • так называемая Гарвардская архитектура – то есть раздельные области памяти для хранения команд (программы) и данных. Они могут иметь разную разрядность, в системе команд для обращения к ним предусмотрены различные команды и т.д.

  • интеграция в одном корпусе микросхемы (на одном кристалле) практически всех блоков, характерных для полнофункционального компьютера – процессора, ПЗУ, ОЗУ, устройств ввода-вывода, тактового генератора, контроллера прерываний и т.д. Поэтому в русскоязычной литературе подобные устройства часто называются однокристальные ЭВМ (ОЭВМ).

Микроконтроллеры обычно классифицируют по разрядности обрабатываемых чисел

  • четырехразрядные- самые простые и дешевые,

  • восьмиразрядные - наиболее многочисленная группа (оптимальное сочетание цены и возможностей), к этой группе относятся микроконтроллеры серии MCS-51 (Intel) и совместимые с ними, PIC (MicroChip), HC68 (Motorola), Z8 (Zilog) и др.

  • шестнадцатиразрядные - MCS-96 (intel)и др. - более высокопроизводительные но более дорогостоящие

  • тридцатидвухразрядные - обычно являющиеся модификациями универсальных микропроцессоров, например i80186 или i386EX.

Структурная организация микроконтроллера i8051.

2.1.1.Общие характеристики. Микроконтроллер семейства 8051 имеют следующие аппаратные особенности:

  • внутреннее ОЗУ объемом 128 байт;

  • четыре двунаправленных побитно настраиваемых восьмиразрядных порта ввода-вывода;

  • два 16-разрядных таймера-счетчика;

  • встроенный тактовый генератор;

  • адресация 64 КБайт памяти программ и 64 Кбайт памяти данных;

  • две линии запросов на прерывание от внешних устройств;

  • интерфейс для последовательного обмена информацией с другими микроконтроллерами или персональными компьютерами.

Микроконтроллер 8751 снабжен УФ ПЗУ объемом 4 Кбайт.

Функциональная схема микроконтроллера семейства 8051.

Микроконтроллер выполнен на основе высокоуровневой n-МОП технологии. Через четыре программируемых параллельных порта ввода/вывода и один последовательный порт микроконтроллер взаимодействует с внешними устройствами. Основу структурной схемы (рис. 1) образует внутренняя двунаправленная8-битная шина, которая связывает между собой основные узлы и устройства микроконтроллера: резидентную память программ (RPM), резидентную память данных (RDM), арифметико-логическое устройство (ALU), блок регистров специальных функций, устройство управления (CU) и порты ввода/вывода (P0-P3).

19. RISC (англ. Reduced Instruction Set Computer)— компьютер с сокращённым

набором команд. Это концепция проектирования cpu, которая во главу ставит

следующий принцип: более компактные и простые инструкции выполняются

быстрее. Простая архитектура позволяет удешевить процессор, поднять

тактовую частоту, а также распараллелить исполнение команд между

несколькими блоками исполнения (т.н. суперскалярные архитектуры

процессоров). Многие ранние RISC-процессоры даже не имели команд

умножения и деления. Идея создания RISC процессоров пришла после того, как

в 1970-х годах ученые из IBM обнаружили, что многие из функциональных

особенностей традиционных ЦПУ игнорировались программистами. Отчасти

это был побочный эффект сложности компиляторов. В то время компиляторы

могли использовать лишь часть из набора команд процессора. Следующее

открытие заключалось в том, что, поскольку некоторые сложные операции

использовались редко, они, как правило, были медленнее, чем те же действия,

выполняемые набором простых команд. Это происходило из-за того, что

создатели процессоров тратили гораздо меньше времени на улучшение

сложных команд, чем на улучшение простых.

четыре основных принципа RISC-архитектуры:

• каждая команда независимо от ее типа выполняется за один машинный цикл,

длительность которого должна быть максимально короткой;

• все команды должны иметь одинаковую длину и использовать минимум адресных

форматов, что резко упрощает логику центрального управления процессором;

• обращение к памяти происходит только при выполнении операций записи и чтения,

вся обработка данных осуществляется исключительно в регистровой структуре

процессора;

• система команд должна обеспечивать поддержку языка высокого уровня. (Имеется в

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

программирования.)

Как оказалось в начале 1990-х годов, RISC-архитектуры позволяют получить

большую производительность, чем CISC, за счет использования

суперскалярного и VLIW-подхода (инструкция cpu содержит несколько

операций выполняющихся параллельно), а также за счёт возможности

серьезного повышения тактовой частоты и упрощения кристалла с

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

Также, RISC-архитектуры позволили сильно снизить энергопотребление

процессора за счет уменьшения числа транзисторов.

Первое время RISC-архитектуры с трудом принимались рынком из-за отсутствия

программного обеспечения для них. Эта проблема была быстро решена переносом

UNIX-подобных операционных систем (SunOS) на RISC-архитектуры.

Новые CPU являются CISC-процессорами с RISC-ядром!!!

RISC (англ. Reduced Instruction Set Computing) — вычисления с сокращённым набором команд. Характерные особенности RISC-процессоров:

  1. Фиксированная длина машинных инструкций (например, 32 бита) и простой формат команды.

  2. Специализированные команды для операций с памятью — чтения или записи. Операции вида «прочитать-изменить-записать» отсутствуют. Любые операции "изменить" выполняются только над содержимым регистров (т.н. load-and-store архитектура).

  3. Большое количество регистров общего назначения (32 и более).

  4. Отсутствие поддержки операций вида "изменить" над укороченными типами данных - байт, 16битное слово. Так, например, система команд DEC Alpha содержала только операции над 64битными словами, и требовала разработки и последующего вызова процедур для выполнения операций над байтами, 16- и 32-битными словами.

  5. Отсутствие микропрограмм внутри самого процессора. То, что в CISC процессоре исполняется микропрограммами, в RISC процессоре исполняется как обыкновенный (хотя и помещенный в специальное хранилище) машинный код, не отличающийся принципиально от кода ядра ОС и приложений.

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

Первые RISC-процессоры были разработаны в начале 1980-х годов в Стэнфордском и Калифорнийском университетах США. Они выполняли небольшой (50 - 100) набор команд, тогда как обычные CISC (Complex Instruction Set computer) выполняли 100 - 200.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]