Какие сигналы поступают по шинам процессора
Аннотация: В этой лекции рассказывается о функциях основных устройств микропроцессорной системы: процессора, памяти, устройств ввода-вывода, о принципах их устройства и подключения к магистрали.
2.4. Функции устройств магистрали
Рассмотрим теперь, как взаимодействуют на магистрали основные устройства микропроцессорной системы : процессор , память (оперативная и постоянная), устройства ввода/вывода.
2.4.1. Функции процессора
Процессор (рис. 2.16) обычно представляет собой отдельную микросхему или же часть микросхемы (в случае микроконтроллера ). В прежние годы процессор иногда выполнялся на комплектах из нескольких микросхем, но сейчас от такого подхода уже практически отказались. Микросхема процессора обязательно имеет выводы трех шин: шины адреса , шины данных и шины управления. Иногда некоторые сигналы и шины мультиплексируются, чтобы уменьшить количество выводов микросхемы процессора.
Важнейшие характеристики процессора — это количество разрядов его шины данных , количество разрядов его шины адреса и количество управляющих сигналов в шине управления . Разрядность шины данных определяет скорость работы системы. Разрядность шины адреса определяет допустимую сложность системы. Количество линий управления определяет разнообразие режимов обмена и эффективность обмена процессора с другими устройствами системы.
Кроме выводов для сигналов трех основных шин процессор всегда имеет вывод (или два вывода) для подключения внешнего тактового сигнала или кварцевого резонатора ( CLK ), так как процессор всегда представляет собой тактируемое устройство. Чем больше тактовая частота процессора, тем он быстрее работает, то есть тем быстрее выполняет команды. Впрочем, быстродействие процессора определяется не только тактовой частотой, но и особенностями его структуры. Современные процессоры выполняют большинство команд за один такт и имеют средства для параллельного выполнения нескольких команд. Тактовая частота процессора не связана прямо и жестко со скоростью обмена по магистрали, так как скорость обмена по магистрали ограничена задержками распространения сигналов и искажениями сигналов на магистрали. То есть тактовая частота процессора определяет только его внутреннее быстродействие, а не внешнее. Иногда тактовая частота процессора имеет нижний и верхний пределы. При превышении верхнего предела частоты возможно перегревание процессора, а также сбои, причем, что самое неприятное, возникающие не всегда и нерегулярно. Так что с изменением этой частоты надо быть очень осторожным.
Еще один важный сигнал, который имеется в каждом процессоре, — это сигнал начального сброса RESET. При включении питания, при аварийной ситуации или зависании процессора подача этого сигнала приводит к инициализации процессора, заставляет его приступить к выполнению программы начального запуска. Аварийная ситуация может быть вызвана помехами по цепям питания и "земли", сбоями в работе памяти, внешними ионизирующими излучениями и еще множеством причин. В результате процессор может потерять контроль над выполняемой программой и остановиться в каком-то адресе. Для выхода из этого состояния как раз и используется сигнал начального сброса. Этот же вход начального сброса может использоваться для оповещения процессора о том, что напряжение питания стало ниже установленного предела. В таком случае процессор переходит к выполнению программы сохранения важных данных. По сути, этот вход представляет собой особую разновидность радиального прерывания .
Иногда у микросхемы процессора имеется еще один-два входа радиальных прерываний для обработки особых ситуаций (например, для прерывания от внешнего таймера).
Шина питания современного процессора обычно имеет одно напряжение питания (+5В или +3,3В) и общий провод ("землю"). Первые процессоры нередко требовали нескольких напряжений питания. В некоторых процессорах предусмотрен режим пониженного энергопотребления . Вообще, современные микросхемы процессоров, особенно с высокими тактовыми частотами, потребляют довольно большую мощность. В результате для поддержания нормальной рабочей температуры корпуса на них нередко приходится устанавливать радиаторы, вентиляторы или даже специальные микрохолодильники.
Для подключения процессора к магистрали используются буферные микросхемы, обеспечивающие, если необходимо, демультиплексирование сигналов и электрическое буферирование сигналов магистрали. Иногда протоколы обмена по системной магистрали и по шинам процессора не совпадают между собой, тогда буферные микросхемы еще и согласуют эти протоколы друг с другом. Иногда в микропроцессорной системе используется несколько магистралей (системных и локальных), тогда для каждой из магистралей применяется свой буферный узел. Такая структура характерна, например, для персональных компьютеров.
После включения питания процессор переходит в первый адрес программы начального пуска и выполняет эту программу. Данная программа предварительно записана в постоянную (энергонезависимую) память. После завершения программы начального пуска процессор начинает выполнять основную программу, находящуюся в постоянной или оперативной памяти, для чего выбирает по очереди все команды. От этой программы процессор могут отвлекать внешние прерывания или запросы на ПДП . Команды из памяти процессор выбирает с помощью циклов чтения по магистрали. При необходимости процессор записывает данные в память или в устройства ввода/вывода с помощью циклов записи или же читает данные из памяти или из устройств ввода/вывода с помощью циклов чтения.
Таким образом, основные функции любого процессора следующие:
- выборка (чтение) выполняемых команд;
- ввод (чтение) данных из памяти или устройства ввода/вывода;
- вывод (запись) данных в память или в устройства ввода/вывода;
- обработка данных (операндов), в том числе арифметические операции над ними;
- адресация памяти, то есть задание адреса памяти, с которым будет производиться обмен;
- обработка прерываний и режима прямого доступа.
Упрощенно структуру микропроцессора можно представить в следующем виде (рис. 2.17).
Основные функции показанных узлов следующие.
Схема управления выборкой команд выполняет чтение команд из памяти и их дешифрацию. В первых микропроцессорах было невозможно одновременное выполнение предыдущей команды и выборка следующей команды, так как процессор не мог совмещать эти операции. Но уже в 16-разрядных процессорах появляется так называемый конвейер (очередь) команд, позволяющий выбирать несколько следующих команд, пока выполняется предыдущая. Два процесса идут параллельно, что ускоряет работу процессора. Конвейер представляет собой небольшую внутреннюю память процессора, в которую при малейшей возможности (при освобождении внешней шины) записывается несколько команд, следующих за исполняемой. Читаются эти команды процессором в том же порядке, что и записываются в конвейер (это память типа FIFO, First In — First Out, первый вошел — первый вышел). Правда, если выполняемая команда предполагает переход не на следующую ячейку памяти, а на удаленную (с меньшим или большим адресом), конвейер не помогает, и его приходится сбрасывать. Но такие команды встречаются в программах сравнительно редко.
Развитием идеи конвейера стало использование внутренней кэш-памяти процессора, которая заполняется командами, пока процессор занят выполнением предыдущих команд. Чем больше объем кэш-памяти, тем меньше вероятность того, что ее содержимое придется сбросить при команде перехода. Понятно, что обрабатывать команды, находящиеся во внутренней памяти, процессор может гораздо быстрее, чем те, которые расположены во внешней памяти. В кэш-памяти могут храниться и данные, которые обрабатываются в данный момент, это также ускоряет работу. Для большего ускорения выборки команд в современных процессорах применяют совмещение выборки и дешифрации, одновременную дешифрацию нескольких команд, несколько параллельных конвейеров команд, предсказание команд переходов и некоторые другие методы.
Арифметико-логическое устройство (или АЛУ , ALU ) предназначено для обработки информации в соответствии с полученной процессором командой. Примерами обработки могут служить логические операции (типа логического "И", "ИЛИ", "Исключающего ИЛИ" и т.д.) то есть побитные операции над операндами, а также арифметические операции (типа сложения, вычитания, умножения, деления и т.д.). Над какими кодами производится операция, куда помещается ее результат — определяется выполняемой командой. Если команда сводится всего лишь к пересылке данных без их обработки, то АЛУ не участвует в ее выполнении.
Быстродействие АЛУ во многом определяет производительность процессора. Причем важна не только частота тактового сигнала , которым тактируется АЛУ , но и количество тактов, необходимое для выполнения той или иной команды. Для повышения производительности разработчики стремятся довести время выполнения команды до одного такта, а также обеспечить работу АЛУ на возможно более высокой частоте. Один из путей решения этой задачи состоит в уменьшении количества выполняемых АЛУ команд, создание процессоров с уменьшенным набором команд (так называемые RISC -процессоры). Другой путь повышения производительности процессора — использование нескольких параллельно работающих АЛУ .
Что касается операций над числами с плавающей точкой и других специальных сложных операций, то в системах на базе первых процессоров их реализовали последовательностью более простых команд, специальными подпрограммами, однако затем были разработаны специальные вычислители — математические сопроцессоры , которые заменяли основной процессор на время выполнения таких команд. В современных микропроцессорах математические сопроцессоры входят в структуру как составная часть.
Регистры процессора представляют собой по сути ячейки очень быстрой памяти и служат для временного хранения различных кодов: данных, адресов, служебных кодов. Операции с этими кодами выполняются предельно быстро, поэтому, в общем случае, чем больше внутренних регистров , тем лучше. Кроме того, на быстродействие процессора сильно влияет разрядность регистров . Именно разрядность регистров и АЛУ называется внутренней разрядностью процессора, которая может не совпадать с внешней разрядностью.
По отношению к назначению внутренних регистров существует два основных подхода. Первого придерживается, например, компания Intel, которая каждому регистру отводит строго определенную функцию. С одной стороны, это упрощает организацию процессора и уменьшает время выполнения команды, но с другой — снижает гибкость, а иногда и замедляет работу программы. Например, некоторые арифметические операции и обмен с устройствами ввода/вывода проводятся только через один регистр — аккумулятор, в результате чего при выполнении некоторых процедур может потребоваться несколько дополнительных пересылок между регистрами . Второй подход состоит в том, чтобы все (или почти все) регистры сделать равноправными, как , например, в 16-разрядных процессорах Т-11 фирмы DEC. При этом достигается высокая гибкость, но необходимо усложнение структуры процессора. Существуют и промежуточные решения, в частности, в процессоре MC68000 фирмы Motorola половина регистров использовалась для данных, и они были взаимозаменяемы, а другая половина — для адресов, и они также взаимозаменяемы.
Регистр признаков ( регистр состояния) занимает особое место, хотя он также является внутренним регистром процессора. Содержащаяся в нем информация — это не данные, не адрес, а слово состояния процессора ( ССП , PSW — Processor Status Word). Каждый бит этого слова (флаг) содержит информацию о результате предыдущей команды. Например, есть бит нулевого результата, который устанавливается в том случае, когда результат выполнения предыдущей команды — нуль, и очищается в том случае, когда результат выполнения команды отличен от нуля. Эти биты (флаги) используются командами условных переходов , например, командой перехода в случае нулевого результата. В этом же регистре иногда содержатся флаги управления, определяющие режим выполнения некоторых команд.
Схема управления прерываниями обрабатывает поступающий на процессор запрос прерывания , определяет адрес начала программы обработки прерывания (адрес вектора прерывания), обеспечивает переход к этой программе после выполнения текущей команды и сохранения в памяти (в стеке ) текущего состояния регистров процессора. По окончании программы обработки прерывания процессор возвращается к прерванной программе с восстановленными из памяти (из стека ) значениями внутренних регистров . Подробнее о стеке будет рассказано в следующем разделе.
Схема управления прямым доступом к памяти служит для временного отключения процессора от внешних шин и приостановки работы процессора на время предоставления прямого доступа запросившему его устройству.
Логика управления организует взаимодействие всех узлов процессора, перенаправляет данные, синхронизирует работу процессора с внешними сигналами, а также реализует процедуры ввода и вывода информации.
Таким образом, в ходе работы процессора схема выборки команд выбирает последовательно команды из памяти, затем эти команды выполняются, причем в случае необходимости обработки данных подключается АЛУ . На входы АЛУ могут подаваться обрабатываемые данные из памяти или из внутренних регистров . Во внутренних регистрах хранятся также коды адресов обрабатываемых данных, расположенных в памяти. Результат обработки в АЛУ изменяет состояние регистра признаков и записывается во внутренний регистр или в память (как источник, так и приемник данных указывается в составе кода команды). При необходимости информация может переписываться из памяти (или из устройства ввода/вывода) во внутренний регистр или из внутреннего регистра в память (или в устройство ввода/вывода).
Внутренние регистры любого микропроцессора обязательно выполняют две служебные функции:
- определяют адрес в памяти, где находится выполняемая в данный момент команда (функция счетчика команд или указателя команд );
- определяют текущий адрес стека (функция указателя стека ).
В разных процессорах для каждой из этих функций может отводиться один или два внутренних регистра . Эти два указателя отличаются от других не только своим специфическим, служебным, системным назначением, но и особым способом изменения содержимого. Их содержимое программы могут менять только в случае крайней необходимости, так как любая ошибка при этом грозит нарушением работы компьютера, зависанием и порчей содержимого памяти.
Содержимое указателя ( счетчика) команд изменяется следующим образом. В начале работы системы (при включении питания) в него заносится раз и навсегда установленное значение. Это первый адрес программы начального запуска. Затем после выборки из памяти каждой следующей команды значение указателя команд автоматически увеличивается (инкрементируется) на единицу (или на два в зависимости от формата команд и типа процессора). То есть следующая команда будет выбираться из следующего по порядку адреса памяти. При выполнении команд перехода, нарушающих последовательный перебор адресов памяти, в указатель команд принудительно записывается новое значение — новый адрес в памяти, начиная с которого адреса команд опять же будут перебираться последовательно. Такая же смена содержимого указателя команд производится при вызове подпрограммы и возврате из нее или при начале обработки прерывания и после его окончания.
Вы здесь: Главная Системные платы Типы, назначение и функционирование шин Шина процессора
Архитектура ЭВМ
Пропускная способность шины процессора
Для определения скорости передачи данных по шине процессора необходимо умножить разрядность шины данных (64 бит, или 8 байт, для Celeron/Pentium III/4 или Athlon/Duron/ Athlon XP/Athlon 64) на тактовую частоту шины (она равна базовой (внешней) тактовой частоте процессора).
Например, при использовании процессора Pentium 4 с тактовой частотой 3,6 ГГц, установленного на системной плате, частота которой равна 800 МГц, максимальная мгновенная скорость передачи данных будет достигать примерно 6400 Мбайт/с. Этот результат можно получить, используя следующую формулу:
800 МГц × 8 байт (64 бит) = 6400 Мбайт/с.
Для более медленной системы Pentium 4:
533,33 МГц × 8 байт (64 бит) = 4266 Мбайт/с;
400 МГц × 8 байт (64 бит) = 3200 Мбайт/с.
Для системы Athlon XP (Socket A) получится следующее:
400 МГц × 8 байт (64 бит) = 3200 Мбайт/с;
333 МГц × 8 байт (64 бит) = 2667 Мбайт/с;
266,66 МГц × 8 байт (64 бит) = 2133 Мбайт/с.
Для системы Pentium III (Socket 370):
133,33 МГц × 8 байт (64 бит) = 1066 Мбайт/с;
100 МГц × 8 байт (64 бит) = 800 Мбайт/с.
Максимальную скорость передачи данных называют также пропускной способностью шины (bandwidth) процессора.
534000-003 ymckt набор для печати datacard ymckt.
Типы, назначение и функционирование шин
Пропускная способность шины процессора
Для определения скорости передачи данных по шине процессора необходимо умножить разрядность шины данных (64 бит, или 8 байт, для Celeron/Pentium III/4 или Athlon/Duron/ Athlon XP/Athlon 64) на тактовую частоту шины (она равна базовой (внешней) тактовой частоте процессора).
Например, при использовании процессора Pentium 4 с тактовой частотой 3,6 ГГц, установленного на системной плате, частота которой равна 800 МГц, максимальная мгновенная скорость передачи данных будет достигать примерно 6400 Мбайт/с. Этот результат можно получить, используя следующую формулу:
800 МГц × 8 байт (64 бит) = 6400 Мбайт/с.
Для более медленной системы Pentium 4:
533,33 МГц × 8 байт (64 бит) = 4266 Мбайт/с;
400 МГц × 8 байт (64 бит) = 3200 Мбайт/с.
Для системы Athlon XP (Socket A) получится следующее:
400 МГц × 8 байт (64 бит) = 3200 Мбайт/с;
333 МГц × 8 байт (64 бит) = 2667 Мбайт/с;
266,66 МГц × 8 байт (64 бит) = 2133 Мбайт/с.
Для системы Pentium III (Socket 370):
133,33 МГц × 8 байт (64 бит) = 1066 Мбайт/с;
100 МГц × 8 байт (64 бит) = 800 Мбайт/с.
Максимальную скорость передачи данных называют также пропускной способностью шины (bandwidth) процессора.
Назначение разъемов расширения
Шина ввода-вывода позволяет процессору взаимодействовать с периферийными устройствами. Эта шина и подключенные к ней разъемы расширения предназначены для того, чтобы компьютер мог выполнить все предъявляемые запросы. Шина ввода-вывода позволяет подключать к компьютеру дополнительные устройства для расширения его возможностей. В разъемы расширения устанавливают такие жизненно важные узлы, как контроллеры накопителей на жестких дисках и платы видеоадаптеров; к ним можно подключить и более специализированные устройства, например звуковые платы, сетевые адаптеры, контроллеры SCSI и др.
Аннотация: В этой лекции речь идет об обмене информацией по шинам микропроцессорных систем, о циклах обмена информацией и их фазах, о принципах синхронизации обмена, принципах организации прерываний и ПДП.
Самое главное, что должен знать разработчик микропроцессорных систем — это принципы организации обмена информацией по шинам таких систем. Без этого невозможно разработать аппаратную часть системы, а без аппаратной части не будет работать никакое программное обеспечение .
За более чем 30 лет, прошедших с момента появления первых микропроцессоров, были выработаны определенные правила обмена, которым следуют и разработчики новых микропроцессорных систем. Правила эти не слишком сложны, но твердо знать и неукоснительно соблюдать их для успешной работы необходимо. Как показала практика, принципы организации обмена по шинам гораздо важнее, чем особенности конкретных микропроцессоров. Стандартные системные магистрали живут гораздо дольше, чем тот или иной процессор . Разработчики новых процессоров ориентируются на уже существующие стандарты магистрали. Более того, некоторые системы на основе совершенно разных процессоров используют одну и ту же системную магистраль . То есть магистраль оказывается самым главным системообразующим фактором в микропроцессорных системах.
Обмен информацией в микропроцессорных системах происходит в циклах обмена информацией. Под циклом обмена информацией понимается временной интервал , в течение которого происходит выполнение одной элементарной операции обмена по шине. Например, пересылка кода данных из процессора в память или же пересылка кода данных из устройства ввода/вывода в процессор . В пределах одного цикла также может передаваться и несколько кодов данных, даже целый массив данных, но это встречается реже.
Циклы обмена информацией делятся на два основных типа:
- Цикл записи (вывода) , в котором процессор записывает (выводит) информацию ;
- Цикл чтения (ввода) , в котором процессор читает (вводит) информацию.
В некоторых микропроцессорных системах существует также цикл "чтение-модификация- запись " или же "ввод-пауза- вывод ". В этих циклах процессор сначала читает информацию из памяти или устройства ввода/вывода, затем как-то преобразует ее и снова записывает по тому же адресу. Например, процессор может прочитать код из ячейки памяти, увеличить его на единицу и снова записать в эту же ячейку памяти. Наличие или отсутствие данного типа цикла связано с особенностями используемого процессора.
Особое место занимают циклы прямого доступа к памяти (если режим ПДП в системе предусмотрен) и циклы запроса и предоставления прерывания (если прерывания в системе есть). Когда в дальнейшем речь пойдет о таких циклах, это будет специально оговорено.
Во время каждого цикла устройства, участвующие в обмене информацией, передают друг другу информационные и управляющие сигналы в строго установленном порядке или, как еще говорят, в соответствии с принятым протоколом обмена информацией.
Длительность цикла обмена может быть постоянной или переменной, но она всегда включает в себя несколько периодов сигнала тактовой частоты системы. То есть даже в идеальном случае частота чтения информации процессором и частота записи информации оказываются в несколько раз меньше тактовой частоты системы.
Чтение кодов команд из памяти системы также производится с помощью циклов чтения. Поэтому в случае одношинной архитектуры на системной магистрали чередуются циклы чтения команд и циклы пересылки (чтения и записи) данных, но протоколы обмена остаются неизменными независимо от того, что передается — данные или команды. В случае двухшинной архитектуры циклы чтения команд и записи или чтения данных разделяются по разным шинам и могут выполняться одновременно.
Общие сведения о шине процессора
Шина процессора — соединяет процессор с северным мостом или контроллером памяти MCH. Она работает на частотах 66–200 МГц и используется для передачи данных между процессором и основной системной шиной или между процессором и внешней кэш-памятью в системах на базе процессоров пятого поколения. Схема взаимодействия шин в типичном компьютере на базе процессора Pentium (Socket 7) показано на рисунке.
На этом рисунке четко видна трехуровневая архитектура, в которой на самом верхнем уровне иерархии находится шина процессора, далее следует шина PCI и за ней шина ISA. Большинство компонентов системы подключается к одной из этих трех шин.
В системах, созданных на основе процессоров Socket 7, внешняя кэш-память второго уровня установлена на системной плате и соединена с шиной процессора, которая работает на частоте системной платы (обычно от 66 до 100 МГц). Таким образом, при появлении процессоров Socket 7 с более высокой тактовой частотой рабочая частота кэш-памяти осталась равной сравнительно низкой частоте системной платы. Например, в наиболее быстродействующих системах Intel Socket 7 частота процессора равна 233 МГц, а частота шины процессора при множителе 3,5х достигает только 66 МГц. Следовательно, кэш-память второго уровня также работает на частоте 66 МГц. Возьмем, например, систему Socket 7, использующую процессоры AMD K6-2 550, работающие на частоте 550 МГц: при множителе 5,5х ч астота шины процессора равна 100 МГц. Следовательно, в этих системах частота кэш-памяти второго уровня достигает только 100 МГц.
Проблема медленной кэш-памяти второго уровня была решена в процессорах класса P6, таких как Pentium Pro, Pentium II, Celeron, Pentium III, а также AMD Athlon и Duron. В этих процессорах использовались разъемы Socket 8, Slot 1, Slot 2, Slot A, Socket A или Socket 370. Кроме того, кэш-память второго уровня была перенесена с системной платы непосредственно в процессор и соединена с ним с помощью встроенной шины. Теперь эта шина стала называться шиной переднего плана (Front-Side Bus — FSB), однако я, согласно устоявшейся традиции, продолжаю называть ее шиной процессора.
Включение кэш-памяти второго уровня в процессор позволило значительно повысить ее скорость. В современных процессорах кэш-память расположена непосредственно в кристалле процессора, т.е. работает с частотой процессора. В более ранних версиях кэш-память второгоуровня находилась в отдельной микросхеме, интегрированной в корпус процессора, и работала с частотой, равной 1/2, 2/5 или 1/3 частоты процессора. Однако даже в этом случае скорость интегрированной кэш-памяти была значительно выше, чем скорость внешнего кэша, ограниченного частотой системной платы Socket 7.
В системах Slot 1 кэш-память второго уровня была встроена в процессор, но работала только на его половинной частоте. Повышение частоты шины процессора с 66 до 100 МГц привело к увеличению пропускной способности до 800 Мбайт/с. Следует отметить, что в большинство систем была включена поддержка AGP. Частота стандартного интерфейса AGP равна 66 МГц (т.е. вдвое больше скорости PCI), но большинство систем поддерживают порт AGP 2x, быстродействие которого вдвое выше стандартного AGP, что приводит к увеличению пропускной способности до 533 Мбайт/с. Кроме того, в этих системах обычно использовались модули памяти PC100 SDRAM DIMM, скорость передачи данных которых равна 800 Мбайт/с.
В системах Pentium III и Celeron разъем Slot 1 уступил место гнезду Socket 370. Это было связано главным образом с тем, что более современные процессоры включают в себя встроенную кэш-память второго уровня (работающую на полной частоте ядра), а значит, исчезла потребность в дорогом корпусе, содержащем несколько микросхем. Скорость шины процессора увеличилась до 133 МГц, что повлекло за собой повышение пропускной способности до 1066 Мбайт/с. В современных системах используется уже AGP 4x со скоростью передачи данных 1066 Мбайт/с.
Шина памяти
Шина памяти предназначена для передачи информации между процессором и основной памятью системы. Эта шина соединена с северным мостом или микросхемой Memory Controller Hub. В зависимости от типа памяти, используемой набором микросхем (а следовательно, и системной платой), шина памяти может работать с различными скоростями. Наилучший вариант, если рабочая частота шины памяти совпадает со скоростью шины процессора. Пропускная способность систем, использующих память PC133 SDRAM, равна 1066 Мбайт/с, что совпадает с пропускной способностью шины процессора, работающей на частоте 133 МГц. Рассмотрим другой пример: в системах Athlon и некоторых Pentium III используются шина процессора с частотой 266 МГц и память PC2100 DDR SDRAM, имеющая пропускную способность 2133 Мбайт/с — такую же, как и шина процессора. В системе Pentium 4 используется шина процессора с частотой 400 МГц, а также двухканальная память RDRAM со скоростью передачи данных для каждого канала 1600 или 3200 Мбайт/с при одновременной работе обоих каналов памяти, что совпадает с пропускной способностью шины процессора Pentium 4. В системах Pentium 4, содержащих шину процессора с тактовой частотой 533 МГц, могут использоваться двухканальные модули PC2100 или PC2700, параметры которых соответствуют пропускной способности шины процессора, равной 4266 Мбайт/с.
Память, работающая с той же частотой, что и шина процессора, позволяет отказаться от расположения внешней кэш-памяти на системной плате. Именно поэтому кэш-память второго и третьего уровней была интегрирована непосредственно в процессор. Некоторые мощные процессоры, к числу которых относится Intel Pentium Extreme Edition, содержат встроенную кэш-память третьего уровня объемом 2–4 Мбайт, работающую на полной частоте процессора. Самые современные процессоры, такие как Core Duo и Core 2 Quad, используют кэш-память только первого и второго уровней. Таким образом, в обозримом будущем кэш второго уровня будет оставаться наиболее распространенным типом вторичного кэша.
Примечание!
Назначение разъемов расширения
Шина ввода-вывода позволяет процессору взаимодействовать с периферийными устройствами. Эта шина и подключенные к ней разъемы расширения предназначены для того, чтобы компьютер мог выполнить все предъявляемые запросы. Шина ввода-вывода позволяет подключать к компьютеру дополнительные устройства для расширения его возможностей. В разъемы расширения устанавливают такие жизненно важные узлы, как контроллеры накопителей на жестких дисках и платы видеоадаптеров; к ним можно подключить и более специализированные устройства, например звуковые платы, сетевые адаптеры, контроллеры SCSI и др.
Примечание!
Типы, назначение и функционирование шин
Основой системной платы являются различные шины, служащие для передачи сигналов компонентам системы. Шина (bus) представляет собой общий канал связи, используемый в компьютере и позволяющий соединить два и более системных компонента.
Существует определенная иерархия шин ПК, которая выражается в том, что каждая более медленная шина соединена с более быстрой. Современные компьютерные системы включают в себя три, четыре или более шин. Каждое системное устройство соединено с какой-либо шиной, причем определенные устройства (чаще всего это наборы микросхем) играют роль моста между шинами.
Некоторые современные системные платы содержат специальный разъем, получивший название Audio Modem Riser (AMR) или Communications and Networking Riser (CNR). Подобные специализированные разъемы предназначены для плат расширения, обеспечивающих выполнение сетевых и коммуникационных функций. Следует заметить, что эти разъемы не являются универсальным интерфейсом шины, поэтому лишь немногие из специализированных плат AMR или CNR присутствуют на открытом рынке. Как правило, такие платы прилагаются к какой-либо определенной системной плате. Их конструкция позволяет легко создавать как стандартные, так и расширенные системные платы, не резервируя на них место для установки дополнительных микросхем. Большинство системных плат, обеспечивающих стандартные сетевые функции и функции работы с модемом, созданы на основе шины PCI, так как разъемы AMR/CNR имеют узкоспециализированное назначение.
Для подобных целей предназначена и шина LPC, которая представляет собой 4-разрядную шину с максимальной пропускной способностью 16,67 Мбайт/с и применяется в качестве более экономичного по сравнению с шиной ISA варианта. Обычно шина LPC используется для соединения Super I/O или компонентов ROM BIOS системной платы с основным набором микросхем. Шина LPC имеет примерно равную рабочую частоту, но использует значительно меньше контактов. Она позволяет полностью отказаться от использования шины ISA в системных платах.
Набор микросхем системной логики можно сравнить с дирижером, который руководит оркестром системных компонентов системы, позволяя каждому из них подключиться к собственной шине.
Для повышения эффективности во многих шинах в течение одного такта выполняется несколько циклов передачи данных. Это означает, что скорость передачи данных выше, чем это может показаться на первый взгляд. Существует достаточно простой способ повысить быстродействие шины с помощью обратно совместимых компонентов.
Самое читаемое
- Арифметико логическое устройство (АЛУ)
- Страничный механизм в процессорах 386+. Механизм трансляции страниц
- Организация разделов на диске
- Диск Picture CD
- White Book/Super Video CD
- Прямой доступ к памяти, эмуляция ISA DMA (PC/PCI, DDMA)
- Карты PCMCIA: интерфейсы PC Card, CardBus
- Таблица дескрипторов прерываний
- Разъемы процессоров
- Интерфейс Slot A
Шина процессора
Мини блог
Общие сведения о шине процессора
Шина процессора — соединяет процессор с северным мостом или контроллером памяти MCH. Она работает на частотах 66–200 МГц и используется для передачи данных между процессором и основной системной шиной или между процессором и внешней кэш-памятью в системах на базе процессоров пятого поколения. Схема взаимодействия шин в типичном компьютере на базе процессора Pentium (Socket 7) показано на рисунке.
На этом рисунке четко видна трехуровневая архитектура, в которой на самом верхнем уровне иерархии находится шина процессора, далее следует шина PCI и за ней шина ISA. Большинство компонентов системы подключается к одной из этих трех шин.
В системах, созданных на основе процессоров Socket 7, внешняя кэш-память второго уровня установлена на системной плате и соединена с шиной процессора, которая работает на частоте системной платы (обычно от 66 до 100 МГц). Таким образом, при появлении процессоров Socket 7 с более высокой тактовой частотой рабочая частота кэш-памяти осталась равной сравнительно низкой частоте системной платы. Например, в наиболее быстродействующих системах Intel Socket 7 частота процессора равна 233 МГц, а частота шины процессора при множителе 3,5х достигает только 66 МГц. Следовательно, кэш-память второго уровня также работает на частоте 66 МГц. Возьмем, например, систему Socket 7, использующую процессоры AMD K6-2 550, работающие на частоте 550 МГц: при множителе 5,5х ч астота шины процессора равна 100 МГц. Следовательно, в этих системах частота кэш-памяти второго уровня достигает только 100 МГц.
Проблема медленной кэш-памяти второго уровня была решена в процессорах класса P6, таких как Pentium Pro, Pentium II, Celeron, Pentium III, а также AMD Athlon и Duron. В этих процессорах использовались разъемы Socket 8, Slot 1, Slot 2, Slot A, Socket A или Socket 370. Кроме того, кэш-память второго уровня была перенесена с системной платы непосредственно в процессор и соединена с ним с помощью встроенной шины. Теперь эта шина стала называться шиной переднего плана (Front-Side Bus — FSB), однако я, согласно устоявшейся традиции, продолжаю называть ее шиной процессора.
Включение кэш-памяти второго уровня в процессор позволило значительно повысить ее скорость. В современных процессорах кэш-память расположена непосредственно в кристалле процессора, т.е. работает с частотой процессора. В более ранних версиях кэш-память второгоуровня находилась в отдельной микросхеме, интегрированной в корпус процессора, и работала с частотой, равной 1/2, 2/5 или 1/3 частоты процессора. Однако даже в этом случае скорость интегрированной кэш-памяти была значительно выше, чем скорость внешнего кэша, ограниченного частотой системной платы Socket 7.
В системах Slot 1 кэш-память второго уровня была встроена в процессор, но работала только на его половинной частоте. Повышение частоты шины процессора с 66 до 100 МГц привело к увеличению пропускной способности до 800 Мбайт/с. Следует отметить, что в большинство систем была включена поддержка AGP. Частота стандартного интерфейса AGP равна 66 МГц (т.е. вдвое больше скорости PCI), но большинство систем поддерживают порт AGP 2x, быстродействие которого вдвое выше стандартного AGP, что приводит к увеличению пропускной способности до 533 Мбайт/с. Кроме того, в этих системах обычно использовались модули памяти PC100 SDRAM DIMM, скорость передачи данных которых равна 800 Мбайт/с.
В системах Pentium III и Celeron разъем Slot 1 уступил место гнезду Socket 370. Это было связано главным образом с тем, что более современные процессоры включают в себя встроенную кэш-память второго уровня (работающую на полной частоте ядра), а значит, исчезла потребность в дорогом корпусе, содержащем несколько микросхем. Скорость шины процессора увеличилась до 133 МГц, что повлекло за собой повышение пропускной способности до 1066 Мбайт/с. В современных системах используется уже AGP 4x со скоростью передачи данных 1066 Мбайт/с.
2.4. Функции устройств магистрали
Рассмотрим теперь, как взаимодействуют на магистрали основные устройства микропроцессорной системы : процессор , память (оперативная и постоянная), устройства ввода/вывода.
2.4.1. Функции процессора
Процессор (рис. 2.16) обычно представляет собой отдельную микросхему или же часть микросхемы (в случае микроконтроллера ). В прежние годы процессор иногда выполнялся на комплектах из нескольких микросхем, но сейчас от такого подхода уже практически отказались. Микросхема процессора обязательно имеет выводы трех шин: шины адреса , шины данных и шины управления. Иногда некоторые сигналы и шины мультиплексируются, чтобы уменьшить количество выводов микросхемы процессора.
Важнейшие характеристики процессора — это количество разрядов его шины данных , количество разрядов его шины адреса и количество управляющих сигналов в шине управления . Разрядность шины данных определяет скорость работы системы. Разрядность шины адреса определяет допустимую сложность системы. Количество линий управления определяет разнообразие режимов обмена и эффективность обмена процессора с другими устройствами системы.
Кроме выводов для сигналов трех основных шин процессор всегда имеет вывод (или два вывода) для подключения внешнего тактового сигнала или кварцевого резонатора ( CLK ), так как процессор всегда представляет собой тактируемое устройство. Чем больше тактовая частота процессора, тем он быстрее работает, то есть тем быстрее выполняет команды. Впрочем, быстродействие процессора определяется не только тактовой частотой, но и особенностями его структуры. Современные процессоры выполняют большинство команд за один такт и имеют средства для параллельного выполнения нескольких команд. Тактовая частота процессора не связана прямо и жестко со скоростью обмена по магистрали, так как скорость обмена по магистрали ограничена задержками распространения сигналов и искажениями сигналов на магистрали. То есть тактовая частота процессора определяет только его внутреннее быстродействие, а не внешнее. Иногда тактовая частота процессора имеет нижний и верхний пределы. При превышении верхнего предела частоты возможно перегревание процессора, а также сбои, причем, что самое неприятное, возникающие не всегда и нерегулярно. Так что с изменением этой частоты надо быть очень осторожным.
Еще один важный сигнал, который имеется в каждом процессоре, — это сигнал начального сброса RESET. При включении питания, при аварийной ситуации или зависании процессора подача этого сигнала приводит к инициализации процессора, заставляет его приступить к выполнению программы начального запуска. Аварийная ситуация может быть вызвана помехами по цепям питания и "земли", сбоями в работе памяти, внешними ионизирующими излучениями и еще множеством причин. В результате процессор может потерять контроль над выполняемой программой и остановиться в каком-то адресе. Для выхода из этого состояния как раз и используется сигнал начального сброса. Этот же вход начального сброса может использоваться для оповещения процессора о том, что напряжение питания стало ниже установленного предела. В таком случае процессор переходит к выполнению программы сохранения важных данных. По сути, этот вход представляет собой особую разновидность радиального прерывания .
Иногда у микросхемы процессора имеется еще один-два входа радиальных прерываний для обработки особых ситуаций (например, для прерывания от внешнего таймера).
Шина питания современного процессора обычно имеет одно напряжение питания (+5В или +3,3В) и общий провод ("землю"). Первые процессоры нередко требовали нескольких напряжений питания. В некоторых процессорах предусмотрен режим пониженного энергопотребления . Вообще, современные микросхемы процессоров, особенно с высокими тактовыми частотами, потребляют довольно большую мощность. В результате для поддержания нормальной рабочей температуры корпуса на них нередко приходится устанавливать радиаторы, вентиляторы или даже специальные микрохолодильники.
Для подключения процессора к магистрали используются буферные микросхемы, обеспечивающие, если необходимо, демультиплексирование сигналов и электрическое буферирование сигналов магистрали. Иногда протоколы обмена по системной магистрали и по шинам процессора не совпадают между собой, тогда буферные микросхемы еще и согласуют эти протоколы друг с другом. Иногда в микропроцессорной системе используется несколько магистралей (системных и локальных), тогда для каждой из магистралей применяется свой буферный узел. Такая структура характерна, например, для персональных компьютеров.
После включения питания процессор переходит в первый адрес программы начального пуска и выполняет эту программу. Данная программа предварительно записана в постоянную (энергонезависимую) память. После завершения программы начального пуска процессор начинает выполнять основную программу, находящуюся в постоянной или оперативной памяти, для чего выбирает по очереди все команды. От этой программы процессор могут отвлекать внешние прерывания или запросы на ПДП . Команды из памяти процессор выбирает с помощью циклов чтения по магистрали. При необходимости процессор записывает данные в память или в устройства ввода/вывода с помощью циклов записи или же читает данные из памяти или из устройств ввода/вывода с помощью циклов чтения.
Таким образом, основные функции любого процессора следующие:
- выборка (чтение) выполняемых команд;
- ввод (чтение) данных из памяти или устройства ввода/вывода;
- вывод (запись) данных в память или в устройства ввода/вывода;
- обработка данных (операндов), в том числе арифметические операции над ними;
- адресация памяти, то есть задание адреса памяти, с которым будет производиться обмен;
- обработка прерываний и режима прямого доступа.
Упрощенно структуру микропроцессора можно представить в следующем виде (рис. 2.17).
Основные функции показанных узлов следующие.
Схема управления выборкой команд выполняет чтение команд из памяти и их дешифрацию. В первых микропроцессорах было невозможно одновременное выполнение предыдущей команды и выборка следующей команды, так как процессор не мог совмещать эти операции. Но уже в 16-разрядных процессорах появляется так называемый конвейер (очередь) команд, позволяющий выбирать несколько следующих команд, пока выполняется предыдущая. Два процесса идут параллельно, что ускоряет работу процессора. Конвейер представляет собой небольшую внутреннюю память процессора, в которую при малейшей возможности (при освобождении внешней шины) записывается несколько команд, следующих за исполняемой. Читаются эти команды процессором в том же порядке, что и записываются в конвейер (это память типа FIFO, First In — First Out, первый вошел — первый вышел). Правда, если выполняемая команда предполагает переход не на следующую ячейку памяти, а на удаленную (с меньшим или большим адресом), конвейер не помогает, и его приходится сбрасывать. Но такие команды встречаются в программах сравнительно редко.
Развитием идеи конвейера стало использование внутренней кэш-памяти процессора, которая заполняется командами, пока процессор занят выполнением предыдущих команд. Чем больше объем кэш-памяти, тем меньше вероятность того, что ее содержимое придется сбросить при команде перехода. Понятно, что обрабатывать команды, находящиеся во внутренней памяти, процессор может гораздо быстрее, чем те, которые расположены во внешней памяти. В кэш-памяти могут храниться и данные, которые обрабатываются в данный момент, это также ускоряет работу. Для большего ускорения выборки команд в современных процессорах применяют совмещение выборки и дешифрации, одновременную дешифрацию нескольких команд, несколько параллельных конвейеров команд, предсказание команд переходов и некоторые другие методы.
Арифметико-логическое устройство (или АЛУ , ALU ) предназначено для обработки информации в соответствии с полученной процессором командой. Примерами обработки могут служить логические операции (типа логического "И", "ИЛИ", "Исключающего ИЛИ" и т.д.) то есть побитные операции над операндами, а также арифметические операции (типа сложения, вычитания, умножения, деления и т.д.). Над какими кодами производится операция, куда помещается ее результат — определяется выполняемой командой. Если команда сводится всего лишь к пересылке данных без их обработки, то АЛУ не участвует в ее выполнении.
Быстродействие АЛУ во многом определяет производительность процессора. Причем важна не только частота тактового сигнала , которым тактируется АЛУ , но и количество тактов, необходимое для выполнения той или иной команды. Для повышения производительности разработчики стремятся довести время выполнения команды до одного такта, а также обеспечить работу АЛУ на возможно более высокой частоте. Один из путей решения этой задачи состоит в уменьшении количества выполняемых АЛУ команд, создание процессоров с уменьшенным набором команд (так называемые RISC -процессоры). Другой путь повышения производительности процессора — использование нескольких параллельно работающих АЛУ .
Что касается операций над числами с плавающей точкой и других специальных сложных операций, то в системах на базе первых процессоров их реализовали последовательностью более простых команд, специальными подпрограммами, однако затем были разработаны специальные вычислители — математические сопроцессоры , которые заменяли основной процессор на время выполнения таких команд. В современных микропроцессорах математические сопроцессоры входят в структуру как составная часть.
Регистры процессора представляют собой по сути ячейки очень быстрой памяти и служат для временного хранения различных кодов: данных, адресов, служебных кодов. Операции с этими кодами выполняются предельно быстро, поэтому, в общем случае, чем больше внутренних регистров , тем лучше. Кроме того, на быстродействие процессора сильно влияет разрядность регистров . Именно разрядность регистров и АЛУ называется внутренней разрядностью процессора, которая может не совпадать с внешней разрядностью.
По отношению к назначению внутренних регистров существует два основных подхода. Первого придерживается, например, компания Intel, которая каждому регистру отводит строго определенную функцию. С одной стороны, это упрощает организацию процессора и уменьшает время выполнения команды, но с другой — снижает гибкость, а иногда и замедляет работу программы. Например, некоторые арифметические операции и обмен с устройствами ввода/вывода проводятся только через один регистр — аккумулятор, в результате чего при выполнении некоторых процедур может потребоваться несколько дополнительных пересылок между регистрами . Второй подход состоит в том, чтобы все (или почти все) регистры сделать равноправными, как , например, в 16-разрядных процессорах Т-11 фирмы DEC. При этом достигается высокая гибкость, но необходимо усложнение структуры процессора. Существуют и промежуточные решения, в частности, в процессоре MC68000 фирмы Motorola половина регистров использовалась для данных, и они были взаимозаменяемы, а другая половина — для адресов, и они также взаимозаменяемы.
Регистр признаков ( регистр состояния) занимает особое место, хотя он также является внутренним регистром процессора. Содержащаяся в нем информация — это не данные, не адрес, а слово состояния процессора ( ССП , PSW — Processor Status Word). Каждый бит этого слова (флаг) содержит информацию о результате предыдущей команды. Например, есть бит нулевого результата, который устанавливается в том случае, когда результат выполнения предыдущей команды — нуль, и очищается в том случае, когда результат выполнения команды отличен от нуля. Эти биты (флаги) используются командами условных переходов , например, командой перехода в случае нулевого результата. В этом же регистре иногда содержатся флаги управления, определяющие режим выполнения некоторых команд.
Схема управления прерываниями обрабатывает поступающий на процессор запрос прерывания , определяет адрес начала программы обработки прерывания (адрес вектора прерывания), обеспечивает переход к этой программе после выполнения текущей команды и сохранения в памяти (в стеке ) текущего состояния регистров процессора. По окончании программы обработки прерывания процессор возвращается к прерванной программе с восстановленными из памяти (из стека ) значениями внутренних регистров . Подробнее о стеке будет рассказано в следующем разделе.
Схема управления прямым доступом к памяти служит для временного отключения процессора от внешних шин и приостановки работы процессора на время предоставления прямого доступа запросившему его устройству.
Логика управления организует взаимодействие всех узлов процессора, перенаправляет данные, синхронизирует работу процессора с внешними сигналами, а также реализует процедуры ввода и вывода информации.
Таким образом, в ходе работы процессора схема выборки команд выбирает последовательно команды из памяти, затем эти команды выполняются, причем в случае необходимости обработки данных подключается АЛУ . На входы АЛУ могут подаваться обрабатываемые данные из памяти или из внутренних регистров . Во внутренних регистрах хранятся также коды адресов обрабатываемых данных, расположенных в памяти. Результат обработки в АЛУ изменяет состояние регистра признаков и записывается во внутренний регистр или в память (как источник, так и приемник данных указывается в составе кода команды). При необходимости информация может переписываться из памяти (или из устройства ввода/вывода) во внутренний регистр или из внутреннего регистра в память (или в устройство ввода/вывода).
Внутренние регистры любого микропроцессора обязательно выполняют две служебные функции:
- определяют адрес в памяти, где находится выполняемая в данный момент команда (функция счетчика команд или указателя команд );
- определяют текущий адрес стека (функция указателя стека ).
В разных процессорах для каждой из этих функций может отводиться один или два внутренних регистра . Эти два указателя отличаются от других не только своим специфическим, служебным, системным назначением, но и особым способом изменения содержимого. Их содержимое программы могут менять только в случае крайней необходимости, так как любая ошибка при этом грозит нарушением работы компьютера, зависанием и порчей содержимого памяти.
Содержимое указателя ( счетчика) команд изменяется следующим образом. В начале работы системы (при включении питания) в него заносится раз и навсегда установленное значение. Это первый адрес программы начального запуска. Затем после выборки из памяти каждой следующей команды значение указателя команд автоматически увеличивается (инкрементируется) на единицу (или на два в зависимости от формата команд и типа процессора). То есть следующая команда будет выбираться из следующего по порядку адреса памяти. При выполнении команд перехода, нарушающих последовательный перебор адресов памяти, в указатель команд принудительно записывается новое значение — новый адрес в памяти, начиная с которого адреса команд опять же будут перебираться последовательно. Такая же смена содержимого указателя команд производится при вызове подпрограммы и возврате из нее или при начале обработки прерывания и после его окончания.
Вы здесь: Главная Системные платы Типы, назначение и функционирование шин Шина процессора
Шина процессора на основе hub-архитектуры
Обратите внимание на hub-архитектуру Intel, используемую вместо традиционной архитектуры “северный/южный мост”. В этой конструкции основное соединение между компонентами набора микросхем перенесено в выделенный hub-интерфейс со скоростью передачи данных 266 Мбайт/с (вдвое больше, чем у шины PCI), что позволило устройствам PCI использовать полную, без учета южного моста, пропускную способность шины PCI. Кроме того, микросхема Flash ROM BIOS, называемая теперь Firmware Hub, соединяется с системой через шину LPC. Как уже отмечалось, в архитектуре “северный/южный мост” для этого использовалась микросхема Super I/O. В большинстве систем для соединения микросхемы Super I/O вместо шины ISA теперь используется шина LPC. При этом hub-архитектура позволяет отказаться от использования Super I/O. Порты, поддерживаемые микросхемой Super I/O, называются традиционными (legacy), поэтому конструкция без Super I/O получила название нетрадиционной (legacy-free) системы. В такой системе устройства, использующие стандартные порты, должны быть подсоединены к компьютеру с помощью шины USB. В этих системах обычно используются два контроллера и до четырех общих портов (дополнительные порты могут быть подключены к узлам USB).
В системах, созданных на базе процессоров AMD, применена конструкция Socket A, в которой используются более быстрые по сравнению с Socket 370 процессор и шины памяти, но все еще сохраняется конструкция “северный/южный мост”. Обратите внимание на быстродействующую шину процессора, частота которой достигает 333 МГц (пропускная способность — 2664 Мбайт/с), а также на используемые модули памяти DDR SDRAM DIMM, которые поддерживают такую же пропускную способность (т.е. 2664 Мбайт/с). Также следует заметить, что большинство южных мостов включает в себя функции, свойственные микросхемам Super I/O. Эти микросхемы получили название Super South Bridge (суперъюжный мост).
Система Pentium 4 (Socket 423 или Socket 478), созданная на основе hub-архитектуры, показана на рисунке ниже. Особенностью этой конструкции является шина процессора с тактовой частотой 400/533/800 МГц и пропускной способностью соответственно 3200/4266/6400 Мбайт/с. Сегодня это самая быстродействующая шина. Также обратите внимание на двухканальные модули PC3200 (DDR400), пропускная способность которых (3200 Мбайт/с) соответствует пропускной способности шины процессора, что позволяет максимально повысить производительность системы. В более производительных системах, включающих в себя шину с пропускной способностью 6400 Мбайт/с, используются двухканальные модули DDR400 с тактовой частотой 400 МГц, благодаря чему общая пропускная способность шины памяти достигает 6400 Мбайт/с. Процессоры с частотой шины 533 МГц могут использовать парные модули памяти (PC2100/DDR266 или PC2700/DDR333) в двухканальном режиме для достижения пропускной способности шины памяти 4266 Мбайт/с. Соответствие пропускной способности шины памяти рабочим параметрам шины процессора является условием оптимальной работы.
Процессор Athlon 64, независимо от типа гнезда (Socket 754, Socket 939 или Socket 940), использует высокоскоростную архитектуру HyperTransport для взаимодействия с северным мостом или микросхемой AGP Graphics Tunnel. Первые наборы микросхем для процессоров Athlon 64 использовали версию шины HyperTransport с параметрами 16 бит/800 МГц, однако последующие модели, предназначенные для поддержки процессоров Athlon 64 и Athlon 64 FX в исполнении Socket 939, используют более быструю версию шины HyperTransport с параметрами 16 бит/1 ГГц.
Наиболее заметным отличием архитектуры Athlon 64 от всех остальных архитектур ПК является размещение контроллера памяти не в микросхеме северного моста (или микросхеме MCH/GMCH), а в самом процессоре. Процессоры Athlon 64/FX/Opteron оснащены встроенным контроллером памяти. Благодаря этому исключаются многие “узкие места”, связанные с внешним контроллером памяти, что положительно сказывается на общем быстродействии системы. Главный недостаток этого подхода состоит в том, что для добавления поддержки новых технологий, например памяти DDR2, придется изменять архитектуру процессора.
Поскольку шина процессора должна обмениваться информацией с процессором с максимально возможной скоростью, в компьютере она функционирует намного быстрее любой другой шины. Сигнальные линии (линии электрической связи), представляющие шину, предназначены для передачи данных, адресов и сигналов управления между отдельными компонентами компьютера. Большинство процессоров Pentium имеют 64-разрядную шину данных, поэтому за один цикл по шине процессора передается 64 бит данных (8 байт).
Тактовая частота , используемая для передачи данных по шине процессора, соответствует его внешней частоте. Это следует учитывать, поскольку в большинстве процессоров внутренняя тактовая частота, определяющая скорость работы внутренних блоков, может превышать внешнюю. Например, процессор AMD Athlon 64 3800+ работает с внутренней тактовой частотой 2,4 ГГц, однако внешняя частота составляет всего 400 МГц, в то время как процессор Pentium 4 с внутренней частотой 3,4 ГГц имеет внешнюю частоту, равную 800 МГц. В новых системах реальная частота процессора зависит от множителя шины процессора (2x, 2,5x, 3x и выше). Шина FSB, подключенная к процессору, по каждой линии данных может передавать один бит данных в течение одного или двух периодов тактовой частоты. Таким образом, в компьютерах с современными процессорами за один такт передается 64 бит.
2.1. Шины микропроцессорной системы
Прежде чем переходить к особенностям циклов обмена, остановимся подробнее на составе и назначении различных шин микропроцессорной системы.
Как уже упоминалось, в системную магистраль (системную шину) микропроцессорной системы входит три основные информационные шины: адреса , данных и управления .
Шина данных — это основная шина, ради которой и создается вся система. Количество ее разрядов (линий связи) определяет скорость и эффективность информационного обмена, а также максимально возможное количество команд.
Шина данных всегда двунаправленная, так как предполагает передачу информации в обоих направлениях. Наиболее часто встречающийся тип выходного каскада для линий этой шины — выход с тремя состояниями.
Шина адреса — вторая по важности шина, которая определяет максимально возможную сложность микропроцессорной системы, то есть допустимый объем памяти и, следовательно, максимально возможный размер программы и максимально возможный объем запоминаемых данных. Количество адресов, обеспечиваемых шиной адреса , определяется как 2 N , где N — количество разрядов. Например, 16-разрядная шина адреса обеспечивает 65 536 адресов. Разрядность шины адреса обычно кратна 4 и может достигать 32 и даже 64. Шина адреса может быть однонаправленной (когда магистралью всегда управляет только процессор ) или двунаправленной (когда процессор может временно передавать управление магистралью другому устройству, например контроллеру ПДП ). Наиболее часто используются типы выходных каскадов с тремя состояниями или обычные ТТЛ (с двумя состояниями).
Как в шине данных , так и в шине адреса может использоваться положительная логика или отрицательная логика. При положительной логике высокий уровень напряжения соответствует логической единице на соответствующей линии связи, низкий — логическому нулю. При отрицательной логике — наоборот. В большинстве случаев уровни сигналов на шинах — ТТЛ.
Для снижения общего количества линий связи магистрали часто применяется мультиплексирование шин адреса и данных . То есть одни и те же линии связи используются в разные моменты времени для передачи как адреса, так и данных (в начале цикла — адрес, в конце цикла — данные). Для фиксации этих моментов (стробирования) служат специальные сигналы на шине управления . Понятно, что мультиплексированная шина адреса / данных обеспечивает меньшую скорость обмена, требует более длительного цикла обмена (рис. 2.1). По типу шины адреса и шины данных все магистрали также делятся на мультиплексированные и немультиплексированные.
В некоторых мультиплексированных магистралях после одного кода адреса передается несколько кодов данных ( массив данных). Это позволяет существенно повысить быстродействие магистрали. Иногда в магистралях применяется частичное мультиплексирование , то есть часть разрядов данных передается по немультиплексированным линиям, а другая часть — по мультиплексированным с адресом линиям.
Шина управления — это вспомогательная шина, управляющие сигналы на которой определяют тип текущего цикла и фиксируют моменты времени, соответствующие разным частям или стадиям цикла. Кроме того, управляющие сигналы обеспечивают согласование работы процессора (или другого хозяина магистрали, задатчика, master) с работой памяти или устройства ввода/вывода (устройства-исполнителя, slave ). Управляющие сигналы также обслуживают запрос и предоставление прерываний, запрос и предоставление прямого доступа.
Сигналы шины управления могут передаваться как в положительной логике (реже), так и в отрицательной логике (чаще). Линии шины управления могут быть как однонаправленными, так и двунаправленными. Типы выходных каскадов могут быть самыми разными: с двумя состояниями (для однонаправленных линий), с тремя состояниями (для двунаправленных линий ), с открытым коллектором (для двунаправленных и мультиплексированных линий).
Самые главные управляющие сигналы — это стробы обмена, то есть сигналы, формируемые процессором и определяющие моменты времени, в которые производится пересылка данных по шине данных , обмен данными . Чаще всего в магистрали используются два различных строба обмена:
- Строб записи (вывода), который определяет момент времени, когда устройство-исполнитель может принимать данные, выставленные процессором на шину данных ;
- Строб чтения (ввода), который определяет момент времени, когда устройство-исполнитель должно выдать на шину данных код данных, который будет прочитан процессором.
При этом большое значение имеет то, как процессор заканчивает обмен в пределах цикла , в какой момент он снимает свой строб обмена. Возможны два пути решения (рис. 2.2):
- При синхронном обмене процессор заканчивает обмен данными самостоятельно, через раз и навсегда установленный временной интервал выдержки (tвыд), то есть без учета интересов устройства-исполнителя;
- При асинхронном обмене процессор заканчивает обмен только тогда, когда устройство-исполнитель подтверждает выполнение операции специальным сигналом (так называемый режим handshake — рукопожатие).
Достоинства синхронного обмена — более простой протокол обмена , меньшее количество управляющих сигналов. Недостатки — отсутствие гарантии, что исполнитель выполнил требуемую операцию, а также высокие требования к быстродействию исполнителя.
Достоинства асинхронного обмена — более надежная пересылка данных, возможность работы с самыми разными по быстродействию исполнителями. Недостаток — необходимость формирования сигнала подтверждения всеми исполнителями, то есть дополнительные аппаратурные затраты .
Какой тип обмена быстрее, синхронный или асинхронный ? Ответ на этот вопрос неоднозначен. С одной стороны, при асинхронном обмене требуется какое-то время на выработку, передачу дополнительного сигнала и на его обработку процессором. С другой стороны, при синхронном обмене приходится искусственно увеличивать длительность строба обмена для соответствия требованиям большего числа исполнителей, чтобы они успевали обмениваться информацией в темпе процессора. Поэтому иногда в магистрали предусматривают возможность как синхронного , так и асинхронного обмена , причем синхронный обмен является основным и довольно быстрым, а асинхронный применяется только для медленных исполнителей.
По используемому типу обмена магистрали микропроцессорных систем также делятся на синхронные и асинхронные.
Шина процессора
Компоненты ПК
Интерфейсы
Шина процессора на основе hub-архитектуры
Обратите внимание на hub-архитектуру Intel, используемую вместо традиционной архитектуры “северный/южный мост”. В этой конструкции основное соединение между компонентами набора микросхем перенесено в выделенный hub-интерфейс со скоростью передачи данных 266 Мбайт/с (вдвое больше, чем у шины PCI), что позволило устройствам PCI использовать полную, без учета южного моста, пропускную способность шины PCI. Кроме того, микросхема Flash ROM BIOS, называемая теперь Firmware Hub, соединяется с системой через шину LPC. Как уже отмечалось, в архитектуре “северный/южный мост” для этого использовалась микросхема Super I/O. В большинстве систем для соединения микросхемы Super I/O вместо шины ISA теперь используется шина LPC. При этом hub-архитектура позволяет отказаться от использования Super I/O. Порты, поддерживаемые микросхемой Super I/O, называются традиционными (legacy), поэтому конструкция без Super I/O получила название нетрадиционной (legacy-free) системы. В такой системе устройства, использующие стандартные порты, должны быть подсоединены к компьютеру с помощью шины USB. В этих системах обычно используются два контроллера и до четырех общих портов (дополнительные порты могут быть подключены к узлам USB).
В системах, созданных на базе процессоров AMD, применена конструкция Socket A, в которой используются более быстрые по сравнению с Socket 370 процессор и шины памяти, но все еще сохраняется конструкция “северный/южный мост”. Обратите внимание на быстродействующую шину процессора, частота которой достигает 333 МГц (пропускная способность — 2664 Мбайт/с), а также на используемые модули памяти DDR SDRAM DIMM, которые поддерживают такую же пропускную способность (т.е. 2664 Мбайт/с). Также следует заметить, что большинство южных мостов включает в себя функции, свойственные микросхемам Super I/O. Эти микросхемы получили название Super South Bridge (суперъюжный мост).
Система Pentium 4 (Socket 423 или Socket 478), созданная на основе hub-архитектуры, показана на рисунке ниже. Особенностью этой конструкции является шина процессора с тактовой частотой 400/533/800 МГц и пропускной способностью соответственно 3200/4266/6400 Мбайт/с. Сегодня это самая быстродействующая шина. Также обратите внимание на двухканальные модули PC3200 (DDR400), пропускная способность которых (3200 Мбайт/с) соответствует пропускной способности шины процессора, что позволяет максимально повысить производительность системы. В более производительных системах, включающих в себя шину с пропускной способностью 6400 Мбайт/с, используются двухканальные модули DDR400 с тактовой частотой 400 МГц, благодаря чему общая пропускная способность шины памяти достигает 6400 Мбайт/с. Процессоры с частотой шины 533 МГц могут использовать парные модули памяти (PC2100/DDR266 или PC2700/DDR333) в двухканальном режиме для достижения пропускной способности шины памяти 4266 Мбайт/с. Соответствие пропускной способности шины памяти рабочим параметрам шины процессора является условием оптимальной работы.
Процессор Athlon 64, независимо от типа гнезда (Socket 754, Socket 939 или Socket 940), использует высокоскоростную архитектуру HyperTransport для взаимодействия с северным мостом или микросхемой AGP Graphics Tunnel. Первые наборы микросхем для процессоров Athlon 64 использовали версию шины HyperTransport с параметрами 16 бит/800 МГц, однако последующие модели, предназначенные для поддержки процессоров Athlon 64 и Athlon 64 FX в исполнении Socket 939, используют более быструю версию шины HyperTransport с параметрами 16 бит/1 ГГц.
Наиболее заметным отличием архитектуры Athlon 64 от всех остальных архитектур ПК является размещение контроллера памяти не в микросхеме северного моста (или микросхеме MCH/GMCH), а в самом процессоре. Процессоры Athlon 64/FX/Opteron оснащены встроенным контроллером памяти. Благодаря этому исключаются многие “узкие места”, связанные с внешним контроллером памяти, что положительно сказывается на общем быстродействии системы. Главный недостаток этого подхода состоит в том, что для добавления поддержки новых технологий, например памяти DDR2, придется изменять архитектуру процессора.
Поскольку шина процессора должна обмениваться информацией с процессором с максимально возможной скоростью, в компьютере она функционирует намного быстрее любой другой шины. Сигнальные линии (линии электрической связи), представляющие шину, предназначены для передачи данных, адресов и сигналов управления между отдельными компонентами компьютера. Большинство процессоров Pentium имеют 64-разрядную шину данных, поэтому за один цикл по шине процессора передается 64 бит данных (8 байт).
Тактовая частота , используемая для передачи данных по шине процессора, соответствует его внешней частоте. Это следует учитывать, поскольку в большинстве процессоров внутренняя тактовая частота, определяющая скорость работы внутренних блоков, может превышать внешнюю. Например, процессор AMD Athlon 64 3800+ работает с внутренней тактовой частотой 2,4 ГГц, однако внешняя частота составляет всего 400 МГц, в то время как процессор Pentium 4 с внутренней частотой 3,4 ГГц имеет внешнюю частоту, равную 800 МГц. В новых системах реальная частота процессора зависит от множителя шины процессора (2x, 2,5x, 3x и выше). Шина FSB, подключенная к процессору, по каждой линии данных может передавать один бит данных в течение одного или двух периодов тактовой частоты. Таким образом, в компьютерах с современными процессорами за один такт передается 64 бит.
Читайте также: