Команды процессора. Принцип работы процессора. Система команд процессора.
Доброго времени суток уважаемый пользователь. На этой страничке мы поговорим на такие темы, как : Команды процессора, Принцип работы процессора, Система команд процессора.
Предположим, что вы — рабочая группа, которой необходимо как можно быстрее решить некоторую задачу. Вы должны работать в помещении 1, а условие задачи, исходные данные и этапы решения находятся в помещении 2, причем выдача необходимой информации происходит достаточно медленно. В помещение 2 может ходить только 1 человек.
Ваша работа должна выполняться по следующему плану:
- Человек идет в помещение 2 за порцией данных, необходимых для решения задачи.
- Приносит их в помещение 1.
- Рабочая группа быстро обрабатывает данные и посылает за следующей порцией информации. При этом она бездействует в ее ожидании.
- Человек идете в помещение 2 за следующей порцией информации.
- Приносит их в помещение 1.
- Рабочая группа быстро обрабатывает данные и посылает за следующей порцией информации. При этом она бездействует в ее ожидании.
- И т.д., до тех пор, пока задача не будет решена.
Подумайте и скажите, каким образом можно ускорить этот процесс, если Вы обрабатываете информацию быстрее, чем вам ее вам дают в помещении 2, в результате чего вы теряете много времени.
Возникают следующие вопросы:
- Можно ли поручить решение задачи более «умной» рабочей группе, которая решит ее быстрее?
- Можно ли информацию из помещения 2 частично сразу перенести в Помещение 1?
- Можно ли посылать за информацией в помещение 2 не одного человека, а нескольких?
Только что, вы смоделировали процесс ускорения работы процессора. Помещение 1 — это процессор, а помещение 2 — это оперативная память. Главная задача ученых и инженеров — сделать процессоры более производительными.
Достигается это за счет:
- Повышения тактовой частоты (более «умная» рабочая группа). Это самый очевидный путь повышения производительности.
- Повышения разрядности процессора (поручить приносить информацию из помещения 2 более чем одному человеку). Чем выше разрядность процессора ( количество человек), тем больше байтов (больше информации) он может обработать за один такт.
- Кэширования памяти. Процессор по отношению, например, к оперативной памяти является более быстрым устройством, поэтому он вынужден постоянно простаивать, ожидая медленно работающую память. Поэтому, чтобы процессор реже обращался к оперативной памяти, внутри него создают небольшой участок памяти размерим 256 или 512 Кбайт. Эта «сверхоперативная» память получила название кэш. В кэш-память процессор записывает те данные, которые получил из оперативной памяти, и если это данные понадобятся еще раз, он возьмет их из кэш. Таким образом, работа процессора происходит быстрее.
Принцип работы процессора.
Процессор является одним из тех устройств, которые все время должен работать. Процессор ПК не может быть выключен. Даже если на наш взгляд процессор ничего не делает, все равно выполняется какая-то программа.
Процессор работает, по сравнению с другими устройствами компьютера, с наибольшей скоростью. И самыми медленными по сравнению с ним являются внешние устройства, в том числе и человек. Так, например, работая с клавиатурой, человек отправляет в компьютер в среднем один байт в секунду (нажимает на одну клавишу в секунду). Процессор обрабатывает такую и формацию за 0,000001 секунды. А что же делает процессор в остальное время, если он не может выключаться? А в остальное время он может получать сигналы от мыши, от других компьютеров, от гибких и жестких дисков. Он успевает несколько раз в течение секунды подзарядить оперативную память, обслужить внутренние часы компьютера, отдать распоряжение, как правильно отображать информацию на экране, и выполнить множество прочих дел.
Система прерываний процессора.
Каким образом, в таком ритме работы, процессор узнает, откуда приходят данные — от клавиатуры или от мыши, от монитора или от принтера? А может быть от микроволновой печи? И как с такими данными работать?
Для этого используются прерывания, которых существует 256 видов. Прерывания прерывают работу процессора над текущим заданием и направляют его на выполнение другой программы.
Предположим, мы решили подключить к компьютеру микроволновую печь. Выберем для нее какое-нибудь прерывание, не используемое другим устройством, например «103». Когда микроволновая печь захочет обратить на себя внимание процессора, она пошлет к нему сигнал и число 103. Процессор получит число и заглянет в специальную область памяти- вектор прерываний, где найдет адрес руководства по работе с микроволновой печью и начнет работать с этим устройством.
Новые сигналы прерываний могут временно приостановить работу текущей программы, и вернуться к ней по окончании работы с пришедшим прерыванием. Что было бы, если бы процессор работал не со скоростью сотни миллионов байтов в секунду, а в привычном для человека ритме. Как часто получал бы он сигналы?
- Сигналы от клавиатуры он получал бы один раз в десять лет. Обработка слова «компьютер» занимала бы почти 100 лет.
- Данные от мыши — один раз в год. Перемещение указателя мыши из одного угла экрана в другой заняло бы тысячелетие.
- Данные, поступившие по телефонным проводам через модем, — один раз в сутки. Прием и обработка одной страницы текста занимали бы 5-7 лет.
- Данные от гибкого диска — один символ в несколько часов.
- Данные от жесткого или лазерного диска — один байт в час.
Система команд процессора.
Процессор обрабатывает информацию, выполняя определенные команды. Таких команд может быть более тысячи. У каждой команды есть свой код (номер). Например, есть команда 000, 001, 002 и т.д. Коды всех команд процессора записаны в двоичной форме в специальном документе, который называется системой команд процессора.
У каждого процессора своя система команд, поэтому один и тот же код для, разных процессоров может обозначать разные команды. Если же процессоры имеют ограниченную совместимость, то их рассматривают как семейство. Примером семейства процессоров являются все процессоры Intel. Их родоначальником был процессор Intel 8086, на базе которого был сделан первый IBM PC. Процессоры семейства совместимы «сверху вниз», т.е. новый процессор понимает» все команды своих предшественников, но не наоборот.
Таблица прерываний AMD Atlon 64 X2:
Прерывание | Вид | Описание |
---|---|---|
DMA 02 | Исключительный | Стандартный контроллер гибких дисков |
DMA 04 | Исключительный | Контроллер прямого доступа к памяти |
IRQ 00 | Исключительный | Высокоточный таймер событий |
IRQ 01 | Исключительный | Стандартная (101/102 клавиши) или клавиатура PS/2 Microsoft Natural |
IRQ 03 | Общий | Ethernet-контроллер |
IRQ 04 | Общий | Прочее устройство моста PCI |
IRQ 06 | Исключительный | Последовательный порт (COM1) |
IRQ 08 | Исключительный | Стандартный контроллер гибких дисков |
IRQ 09 | Исключительный | Высокоточный таймер событий |
IRQ 11 | Общий | Microsoft ACPI-совместимая система |
IRQ 13 | Общий | SM контроллер шины |
IRQ 11 | Исключительный | Процессор числовых данных |
IRQ 17 | Общий | Realtek RTL8139 Family PCI Fast Ethernet NIC |
IRQ 17 | Общий | NVIDIA GeForce 7600 GT |
IRQ 18 | Общий | Стандартный OpenHCD USB хост-контроллер |
IRQ 22 | Общий | Стандартный двухканальный контроллер PCI IDE |
IRQ 22 | Общий | Стандартный расширенный PCI — USB хост-контроллер |
IRQ 23 | Общий | Стандартный двухканальный контроллер PCI IDE |
IRQ 23 | Общий | Стандартный контроллер гибких дисков |
Всю таблицу выписывать нет смысла, так, как она очень обьемная. Посмотреть свою таблицу прерываний вы можите через программу EVEREST, заходим во вкладку Устройства, и выбираем Ресурсы устройств.
Все процессоры можно разделить на:
- Процессоры с расширенной системой команд (CISC — процессоры).
- Процессоры с сокращенной системой команд (RISC — процессоры).
Первый тип процессоров характеризуется небольшим числом регистров, но большим количеством команд, более длинным форматом их записи в байтах и, соответственно, более медленной работой. Такие процессоры используются в универсальных вычислительных системах и являются стандартом для микрокомпьютеров.
Второй тип процессоров характеризуется меньшим количеством команд и, соответственно, более высоким быстродействием. Но сложные операции в этом случае приходится разбивать на последовательность простейших команд, что не всегда эффективно. Поэтому такие процессоры используются в специализированных вычислительных системах, ориентированных на выполнение однообразных операций.