Архитектура Аудит Военная наука Иностранные языки Медицина Металлургия Метрология Образование Политология Производство Психология Стандартизация Технологии |
Структура ЭВМ в управляющих микропроцессорных устройствах
В качестве управляющих ЭВМ могут быть использованы как специализированные устройства (микроконтроллеры, промышленные ЭВМ), так и ЭВМ общего назначения. В настоящее время примерно одинаковое распространение получили два способа построения вычислительных машин (ВМ): с непосредственными связями и на основе шины [7]. Типичным представителем первого способа может служить классическая фон-неймановская ВМ, структура которой показана на рисунке 2.1. Рисунок 2.1. Структура фон-неймановской вычислительной машины В ней между взаимодействующими устройствами (процессор, память, устройство ввода/вывода) имеются непосредственные связи. Особенности связей (число линий в шинах, пропускная способность и т.п.) определяются видом информации, характером и интенсивностью обмена. Достоинством архитектуры с непосредственными связями можно считать возможность развязки “узких мест” путем улучшения структуры и характеристик только определенных связей, что экономически может быть выгодным. У фон-неймановских ВМ таким “узким местом” является канал пересылки данных между ЦП и памятью. ВМ с непосредственными связями плохо поддаются реконфигурации. Концепция вычислительной машины, изложенная в статье фон Неймана, предполагает единую память для хранения команд и данных. Такой подход был принят в вычислительных машинах, создававшихся в Принстонском университете, из-за чего и получил название принстонской архитектуры. Практически одновременно в Гарвардском университете предложили иную модель, в которой ВМ имела отдельную память команд и отдельную память данных. Этот вид архитектуры называют гарвардской архитектурой. Долгие годы преобладающей была и остается принстонская архитектура, хотя она порождает проблемы пропускной способности тракта “процессор-память”. В последнее время в связи с широким использованием кэш-памяти разработчики ВМ все чаще обращаются к гарвардской архитектуре. В варианте с общей шиной все устройства вычислительной машины подключены к магистральной шине, служащей единственным трактом для потоков команд, данных и управления. Структура ВМ показана на рисунке 2.2. Рисунок 2.2. Структура ВМ на базе общей шины Наличие общей шины существенно упрощает реализацию ВМ, позволяет легко менять состав и конфигурацию машины. Благодаря этим свойствам шинная архитектура получила широкое распространение в мини- и микроЭВМ. Вместе с тем, именно с шиной связан и основной недостаток архитектуры: в каждый момент передавать информацию по шине может только одно устройство. Основную нагрузку на шину создают обмены между процессором и памятью, связанные с извлечением из памяти команд и данных и записью в память результатов вычислений. На операции ввода/вывода остается лишь часть пропускной способности шины. Практика показывает, что даже при достаточно быстрой шине для 90% приложений этих остаточных ресурсов обычно не хватает, особенно в случае ввода или вывода больших массивов данных. В целом следует признать, что при сохранении фон-неймановской концепции последовательного выполнения команд программы шинная архитектура в чистом ее виде оказывается недостаточно эффективной. Более распространена архитектура с иерархией шин, где помимо магистральной шины имеется еще несколько дополнительных шин. Они могут обеспечивать непосредственную связь между устройствами с наиболее интенсивным обменом, например процессором и кэш-памятью. Другой вариант использования дополнительных шин – объединение однотипных устройств ввода/вывода с последующим выходом с дополнительной шины на магистральную. Все эти меры позволяют снизить нагрузку на общую шину и более эффективно расходовать ее пропускную способность. Можно предложить два типа ВМ с двухшинной структурой, изображенных на рисунках 2.3 и 2.4. Рисунок 2.3. Первый вариант двухшинной структуры ВМ Рисунок 2.4. Второй вариант двухшинной структуры ВМ Второй вариант двухшинной структуры ВМ обеспечивает большее быстродействие, так как при работе ЦП может продолжать отрабатывать программу (извлекая команды и данные из основной памяти), в то время как внешние устройства при необходимости сами обмениваются данными с основной памятью. Но такая структура достаточно дорога при реализации, так как требует интеллектуальных внешних устройств, ведущих самостоятельный обмен с основной памятью. Существуют варианты ВМ с тремя и более шинами. Существенное влияние на внутреннюю структуру ВМ оказывает набор команд, который реализуется данной ВМ. Современная технология программирования ориентирована на языки высокого уровня (ЯВУ), главная цель которых — облегчить процесс программирования. Например, для микроконтроллеров (однокристальных микро-ЭВМ) разработчики часто указывают “система команд оптимизирована под С”, так как считается, что сразу после разработки ВМ должны появиться компиляторы с ассемблера и С. Переход к ЯВУ, однако, породил серьезную проблему: сложные операторы, характерные для ЯВУ, существенно отличаются от простых машинных операций, реализуемых в большинстве вычислительных машин. Проблема получила название семантического разрыва, а ее следствием становится недостаточно эффективное выполнение программ на ВМ. Пытаясь это преодолеть, разработчики вычислительных машин в настоящее время выбирают один из трех подходов и, соответственно, один из трех типов АСК: 1. архитектуру с полным набором команд: CISC (Complex Instruction Set Computer); 2. архитектуру с сокращенным набором команд: RISC (Reduced Instruction Set Computer); 3. архитектуру с командными словами сверхбольшой длины: VLIW (Very Long Instruction Word). В вычислительных машинах типа CISC проблема семантического разрыва решается за счет расширения системы команд, дополнения ее сложными командами, семантически аналогичными операторам ЯВУ. Основоположником CISC-архитектуры считается компания IBM, которая начала применять данный подход с семейства машин IBM-360. Аналогичный подход характерен и для компании Intel в ее микропроцессорах серии 8086 и Pentium. Для CISC-архитектуры типичны: а. наличие в процессоре сравнительно небольшого числа регистров общего назначения; б. большое количество машинных команд, некоторые из них аппаратно реализуют сложные операторы ЯВУ; в. разнообразие способов адресации операндов; г. множество форматов команд различной разрядности; д. наличие команд, где обработка совмещается с обращением к памяти. К типу CISC можно отнести практически все ВМ, выпускавшиеся до середины 1980-х годов, и значительную часть производящихся в настоящее время. Рассмотренный способ решения проблемы семантического разрыва вместе с тем ведет к усложнению аппаратуры ВМ, главным образом устройства управления, что, в свою очередь, негативно сказывается на производительности ВМ в целом. Анализ результатов исследований системы команд привел к серьезному пересмотру традиционных решений, следствием чего стало появление RISC архитектуры. Термин RISC впервые был использован Д.Паттерсоном и Д.Дитцелем в 1980 году. Идея заключается в ограничении списка команд ВМ наиболее часто используемыми простейшими командами, оперирующими данными, размещенными только в регистрах процессорах. Обращение к памяти допускается лишь помощью специальных команд чтения и записи. Резко уменьшено количество форматов команд и способов указания адресов операндов. Сокращение числа форматов команд и их простота, использование ограниченного количества способов адресации, отделение операций обработки данных от операций обращения к памяти позволяет существенно упростить аппаратные средства ВМ и повысить их быстродействие. RISC-архитектура разрабатывалась таким образом, чтобы уменьшить время вычисления команды за счет сокращения количества тактов на одну команду и длительности такта процессора. Как следствие, реализация сложных команд за счет последовательности из простых, но быстрых RISC-команд оказывается не менее эффективной, чем аппаратный вариант сложных команд в CISC-архитектуре. Элементы RISC-архитектуры впервые появились в вычислительных машинах компании Cray Research. Достаточно успешно реализуется RISC-архитектура и в современных ВМ, например в процессорах Alpha фирмы DEC, серии РА фирмы Hewlett-Packard, семействе PowerPC и т. п. Отметим, что в последних микропроцессорах фирмы Intel и AMD широко используются идеи, свойственные RISC-архитектуре, так что многие различия между CISC и RISC постепенно стираются. Например, у современных микроконтроллеров, построенных по принципу RISC-архитектуры, число команд значительно превышает 100 (серия AVR фирмы Atmel). Правда, можно отметить, что современные компьютеры на базе процессоров Pentium и более поздних, имеют набор несколько сотен команд. Помимо CISC- и RISC-архитектур в общей классификации был упомянут еще один тип АСК — архитектура с командными словами сверхбольшой длины (VLIW). Концепция VLIW базируется на RISC-архитектуре, где несколько простых RISC-команд объединяются в одну сверхдлинную команду и выполняются параллельно. В плане АСК архитектура VLIW сравнительно мало отличается от RISC. Появился лишь дополнительный уровень параллелизма вычислений, в силу чего архитектуру VLIW логичнее адресовать не к вычислительным машинам, а к вычислительным системам. |
Последнее изменение этой страницы: 2019-04-19; Просмотров: 381; Нарушение авторского права страницы