CISC или RISC?

Архитектура процессоров.

Цифровые сигнальные процессоры.

Цифровые сигнальные процессоры (DSP) - относительно новая категория процессоров. Назначение DSP состоит в том, чтобы получать текущие данные от аналоговой системы и формировать соответствующий отклик. DSP и их ALU (Arithmetic Logic Unit - арифметико-логическое устройство, которое является аппаратным средством для выполнения вычислений) работают с очень высо­кой скоростью, что позволяет осуществлять обработку данных в реальном мас­штабе времени. DSP часто используются в активных шумоподавляющих мик­рофонах, которые устанавливаются в самолетах (второй микрофон обеспечивает сигнал окружающего шума, который вычитается из сигнала первого микро­фона, позволяя таким образом подавить шум и оставить только голос) или для подавления раздвоения изображения в телевизионных сигналах.

Разработка DSP алгоритмов - это специальный раздел теории управле­ния. Изложение этой теории требует использования весьма сложной ма­тематической базы.

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

Как указано выше, мне бы не хотелось вдаваться в дискуссию по поводу того, какая из архитектур лучше — CISC или RISC, Гарвардская или Принстонская. Я попытаюсь объяснить различия между этими архитектурами и показать, какое отношение они имеют к микроконтроллерам.

В настоящее время существует множество RISC (Reduced Instruct Set Computers — компьютеры с сокращенной системой команд) процессоров, так как сложилось мнение, что RISC быстрее чем CISC (Complex Instruction Set Computers: компьютеры со сложной системой команд) процессоры. Такое мнение не со­всем верно. Имеется много процессоров называемых RISC, но на самом деле относящихся к CISC. Более того, в некоторых приложениях CISC-процессоры выполняют программный код быстрее, чем это делают RISC-процессоры, или решают такие задачи, которые RISC-процессоры не могут выполнить.

Каково истинное различие между RISC и CISC? CISC-процессоры выполня­ют большой набор команд с развитыми возможностями адресации (непосред­ственная, индексная и т.д.), давая разработчику возможность выбрать наиболее подходящую команду для выполнения необходимой операции. В RISC-процессо­рах набор выполняемых команд сокращен до минимума. При этом разработчик должен комбинировать команды, чтобы реализовать более сложные операции.

Возможность равноправного использования всех регистров процессора на­зывается «ортогональностью» или «симметричностью» процессора. Это обес­печивает дополнительную гибкость при выполнении некоторых операций. Рас­смотрим, например, выполнение условных переходов в программе. В CISC-процессорах условный переход обычно реализуется в соответствии с определенным значением бита (флага) в регистре состояния. В RISC-процес­сорах условный переход может происходить при определенном значении бита, который находится в любом месте памяти. Это значительно упрощает опера­ции с флагами и выполнение программ, использующих эти флаги.

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


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: