Внутренняя шина и регистры процессора
Хоть процессор и получает данные из оперативной памяти с помощью шины некоторой ширины, это не значит, что внутри он может обрабатывать данные такой же разрядности. Количество битов данных, которые может обработать процессор за один прием, характеризуется разрядностью внутренних регистров. Регистр - это по существу ячейка памяти внутри процессора, например, процессор может складывать числа, записанные в двух разных регистрах, а результат записывать в третий регистр. Разрядность регистров описывает разрядность обрабатываемых процессором данных. Разрядность регистров определяет также характеристики программного обеспечения и команд, выполняемых процессором. Например, процессоры с 32-разрядными внутренними регистрами могут выполнять 32-разрядные команды, которые обрабатывают данные 32-разрядными порциями, а процессоры с 16-разрядными регистрами этого делать не могут.Кроме того в зависимости от структуры регистров различают два основных типа процессоров: RISC — Reduced (Restricted) Instruction Set Computer — процессоры (компьютеры) с сокращенной системой команд. Эти процессоры обычно имеют набор однородных регистров универсального назначения; их система команд отличается относительной простотой. В результате аппаратная реализация такой архитектуры позволяет с небольшими затратами выполнять эти инструкции за минимальное (в пределе 1) число тактов синхронизации. CISC — Complete Instruction Set Computer — процессоры (компьютеры) с полным набором инструкций, к которым относится и семейство х86. Состав и назначение их регистров существенно неоднородны, широкий набор команд усложняет декодирование инструкций, на что расходуются аппаратные ресурсы. Возрастает число тактов, необходимое для выполнения инструкций. Практически во всех современных процессорах внутренние регистры являются 32-разрядными (исключения Itanium от Intel и Hammer от AMD). В некоторых процессорах разрядность внутренней шины данных (а шина состоит из линий передачи данных и регистров), больше, чем разрядность внешней шины данных, той, которую мы с Вами уже обсуждали (которая связывает процессор с оперативной памятью). Обычно такие процессоры являются более дешевыми вариантами своих старших собратьев. Такая архитектура (внутренняя шина и регистры вдвое шире внешней) позволяет проектировать и создавать, например, недорогие 16-разрядные материнские платы, устанавливая в них 32-разрядные процессоры, обеспечивая таким образом 32-разрядную совместимость процессора при 16 разрядном обмене с памятью. Но такой способ удешевления системы остался в прошлом и в настоящее время совершенно не применяется. В современных процессорах все обстоит наоборот: внешняя шина данных, как мы уже говорили, 64-разрядная, а регистры и внутренняя шина процессора по-прежнему 32-разрядны. Странная ситуация, не правда ли? Но странной она кажется лишь до того момента, как мы узнаем, что в современном процессоре (например, Pentium) для обработки информации, поступающей по внешней 64-разрядной шине данных, существует два обрабатывающих ее (информацию) 32-разрядных блока, называемых конвейерами. Такой процессор напоминает два объединенных в одном корпусе 32-разрядных процессора, а 64-разрядная внешняя шина данных позволяет быстрее наполнить регистры процессора. Такая архитектура, применяющая для обработки поступивших данных несколько конвейеров, называется суперскалярной и применяется сегодня во всех современных процессорах
|