Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
АВМиС - Готовые шпоры.doc
Скачиваний:
145
Добавлен:
15.09.2014
Размер:
1.75 Mб
Скачать

8. Сдвиговые операции ммх

 Команда:

PSLLW приемник,источник PSLLD приемник,источник PSLLQ приемник,источник

 Назначение:

Логический сдвиг влево

 Процессор:

ММХ

Команды сдвигают влево биты в каждом элементе (в словах — для PSLLW, в двойных словах — для PSLLD, во всем регистре — для PSLLQ) приемника (регистр ММХ) на число бит, указанное в источнике (8-битное число, регистр ММХ или переменная). При сдвиге младшие биты заполняются нулями, так что, например, команды

psllw mm0,15

pslld mm0,31

psllq mm0,63

обнуляют регистр ММ0.

 Команда:

PSRLW приемник,источник PSRLD приемник,источник PSRLQ приемник,источник

 Назначение:

Логический сдвиг вправо

 Процессор:

ММХ

Команды сдвигают вправо биты в каждом элементе (в словах — для PSRLW, в двойных словах — для PSRLD, во всем регистре — для PSRLQ) приемника (регистр ММХ) на число бит, указанное в источнике (8-битное число, регистр ММХ или переменная). При сдвиге старшие биты заполняются нулями.

 Команда:

PSRAW приемник,источник PSRAD приемник,источник

 Назначение:

Арифметический сдвиг вправо

 Процессор:

ММХ

Команды сдвигают вправо биты в каждом элементе (в словах — для PSRAW и в двойных словах — для PSRAD) приемника (регистр ММХ) на число бит, указанное в источнике (8-битное число, регистр ММХ или переменная). При сдвиге самый старший (знаковый) бит используется для заполнения пустеющих старших бит, так что фактически происходит знаковое деление на 2 в степени, равной содержимому источника.

9. Команды управления состоянием ммх

 Команда:

EMMS

 Назначение:

Освободить регистры ММХ

 Процессор:

ММХ

Если выполнялись какие-нибудь команды ММХ (кроме EMMS), все регистры FPU помечаются как занятые (в регистре TW). Команда EMMS помечает все регистры FPU как пустые для того, чтобы после завершения работы с ММХ можно было передать управление процедуре, использующей FPU.

10. Расширение amd 3d

Процессоры AMD, начиная с AMD К6 3D, поддерживают дополнительное расширение набора команд ММХ. В AMD 3D вводится новый тип данных — упакованные 32-битные вещественные числа, определяются новые команды (начинающиеся с PF) и несколько дополнительных команд для работы с обычными ММХ-типами данных:

  • PI2FD приемник, источник — преобразовывает упакованные 32-битные целые со знаком (двойные слова) в упакованные вещественные числа;

  • PF2ID приемник, источник — преобразовывает упакованные вещественные в упакованные целые числа со знаком (преобразование с насыщением);

  • PAVGUSB приемник, источник — вычисляет средние арифметические для упакованных 8-битных целых чисел без знака;

  • PMULHRW приемник, источник — перемножает упакованные 16-битные целые со знаком и сохраняет результаты как 16-битные целые в приемнике (при переполнениях выполняется насыщение);

  • PFACC приемник, источник — сумма вещественных чисел в приемнике помещается в младшую половину приемника, сумма вещественных чисел из источника помещается в старшую половину приемника;

  • PFADD приемник, источник — сложение упакованных вещественных чисел;

  • PFSUB приемник, источник — вычитание упакованных вещественных чисел;

  • PFSUBR приемник, источник — обратное вычитание (приемник из источника) упакованных вещественных чисел;

  • PFMUL приемник,источник — умножение упакованных вещественных чисел.

Набор команд для быстрого вычисления по итерационным формулам:

Быстрое деление:

xi+1 = хi(2 - bхi)

х0 = PFRCP(b)

х1 = PFRCPIT1(b, x0)

х2 = PFRCPIT2(x1, x0)

х4 = PFMUL(b, x3)

Быстрое вычисление квадратного корня:

хi+1 = хi(3 - bxi2)/2

х0 = PFRSQRT(b)

х1 = PFMUL(x0, x0)

х2 = PFRSQIT(b, x1)

х3 = PFRCPIT2(x2, x0)

х4 = PFMUL(b, x3)

  • PFCMPEQ приемник, источник — проверка равенства для упакованных вещественных чисел (полностью аналогично PCMPEQW);

  • PFCMPGE приемник, источник — сравнение упакованных вещественных чисел: если число в приемнике больше или равно числу в источнике, все его биты устанавливаются в 1;

  • PFCMPGT приемник, источник — сравнение упакованных вещественных чисел: если число в приемнике больше числа в источнике, все его биты устанавливаются в 1;

  • PFMAX приемник, источник — сохраняет в приемнике максимальное из каждой пары сравниваемых вещественных чисел;

  • PFMIN приемник, источник — сохраняет в приемнике минимальное из каждой пары сравниваемых вещественных чисел;

  • FEMMS — более быстрая версия команды EMMS;

  • PREFETCH источник — заполняет строку кэша L1 из памяти по адресу, указанному источником;

  • PREFETCHW источник — заполняет строку кэша L1 из памяти по адресу, указанному источником, и помечает как модифицированную.

23. Расширения SSE

  • SIMD - SISD - SSE - SSE2 - SSE3 - SSE4 - SSE4.1 - SSE4.2 - SSE4A - SSSE3

SIMD SIMD (англ. Single Instruction, Multiple Data) — принцип компьютерных вычислений, позволяющий обеспечить параллелизм на уровне данных.

SISD SISD (англ. Single Instruction, Single Data) — архитектура компьютера, в которой один процессор выполняет один поток команд, оперируя одним потоком данных. Относится к фон-Неймановской архитектуре.

SSE SSE (англ. Streaming SIMD Extensions, потоковое SIMD-расширение процессора) — это SIMD (англ. Single Instruction, Multiple Data, Одна инструкция — множество данных) набор инструкций, разработанный Intel, и впервые представленный в процессорах серии Pentium III как ответ на аналогичный набор инструкций 3DNow! от AMD, который был представлен годом раньше. Первоначально названием этих инструкций было KNI что расшифровывалось как Katmai New Instructions (Katmai — название первой версии ядра процессора Pentium III). Технология SSE позволяла преодолеть 2 основных проблемы MMX — при использовании MMX невозможно было одновременно использовать инструкции сопроцессора, так как его регистры использовались для MMX и работы с вещественными числами. SSE включает в архитектуру процессора восемь 128-битных регистров (xmm0 до xmm7), каждый из которых трактуется как 4 последовательных значения с плавающей точкой одинарной точности. SSE включает в себя набор инструкций, который производит операции со скалярными и упакованными типами данных. Преимущество в производительности достигается в том случае, когда необходимо произвести одну и ту же последовательность действий над разными данными. Реализация блоков SIMD осуществляется распараллеливанием вычислительного процесса между данными. То есть когда через один блок проходит поочерёдно множество потоков данных.

SSE2 SSE2 (англ. Streaming SIMD Extensions 2, потоковое SIMD-расширение процессора) — это SIMD (англ. Single Instruction, Multiple Data, Одна инструкция — множество данных) набор инструкций, разработанный Intel, и впервые представленный в процессорах серии Pentium 4. SSE2 использует восемь 128-битных регистров (xmm0 до xmm7), включённых в архитектуру x86 с вводом расширения SSE, каждый из которых трактуется как 2 последовательных значения с плавающей точкой двойной точности. SSE2 включает в себя набор инструкций, который производит операции со скалярными и упакованными типами данных. Также SSE2 содержит инструкции для потоковой обработки целочисленных данных в тех же 128-битных xmm регистрах, что делает это расширение более предпочтительным для целочисленных вычислений, нежели использование набора инструкций MMX, появившегося гораздо раньше. Преимущество в производительности достигается в том случае, когда необходимо произвести одну и ту же последовательность действий над большим набором однотипных данных.

SSE3 SSE3 (PNI — Prescott New Instruction) — третья версия SIMD-расширения Intel, потомок SSE, SSE2 и x87. Впервые представлено 2 февраля 2004 года в ядре Prescott процессора Pentium 4. В 2005 AMD предложила свою реализацию SSE3 для процессоров Athlon 64 (ядра Venice и San Diego). Набор SSE3 содержит 13 инструкций: - FISTTP (x87) - MOVSLDUP (SSE) - MOVSHDUP (SSE) - MOVDDUP (SSE2) - LDDQU (SSE/SSE2) - ADDSUBPD (SSE) - ADDSUBPD (SSE2) - HADDPS (SSE) - HSUBPS (SSE) - HADDPD (SSE2) - HSUBPD (SSE2) - MONITOR (нет аналога в SSE3 для AMD) - MWAIT (нет аналога в SSE3 для AMD).

SSE4 SSE4 это набор команд Intel Core микроархитектуры, впервые реализованный в процессорах серии Penryn (не следует путать с SSE4A от AMD). Он был анонсирован 27 Сентября 2006, однако детальное описание стало доступно только весной 2007. SSE4 состоит из 54 инструкций, 47 из них относят к SSE4.1 (они есть только в процессорах Penryn). Ожидается, что полный набор команд (SSE4.1 и SSE4.2, то есть 47 + оставшиеся 7 команд) будет доступен в процессорах Nehalem. Ни одна из SSE4 инструкций не работает с 64-х битными mmx регистрами (только с 128-ми битными xmm0-15). Компилятор языка Си от Intel начиная с версии 10 генерирует инструкции SSE4 при задании опции -QxS. В SSE4 добавлены инструкции, ускоряющие компенсацию движения в видеокодеках, быстрое чтение из WC памяти, множество инструкций для упрощения векторизации программ компиляторами. Впервые в SSE4 регистр xmm0 стал использоваться как неявный аргумент для некоторых инструкций.

SSE4.1 SSE4.1 это расширенный набор команд SSE4 от Intel. Ниже приведены инструкции, входящие в SSE4.1: - Ускорение видео (3 инструкции) - Векторные примитивы (5 инструкций) - Вставки/извлечения (4 инструкции) - Скалярное умножение векторов (2 инструкции) - Смешивания (4 инструкции) - Проверки бит - Округления (2 инструкции) - Чтение WC памяти

SSE4.2 SSE4.2 это расширенный набор команд SSE4 от Intel. SSE4.2 состоит из 7 инструкций. Ожидается, что полный набор команд будет доступен в процессорах Nehalem. Инструкции SSE4.2: - Обработка строк (4 инструкции) - Подсчет CRC32 - Подсчет популяции единичных бит - Векторные примитивы

SSE4A SSE4A это расширенный набор команд SSE4 от AMD, разработанный скорее не как дополнение, а как альтернатива инструкциям SSE4 от Intel.

SSSE3 SSSE3 (Supplemental Streaming SIMD Extension 3) — это обозначение данное Intel 4-му расширению системы команд. Предыдущее имело обозначение SSE3 и Intel добавил ещё один символ 'S' вместо того, чтобы увеличить номер расширения, возможно потому, что они посчитали SSSE3 простым дополнением к SSE3. Часто, до того как стало использоваться официальное обозначение SSSE3, эти новые команды назывались SSE4. Также их называли кодовыми именами Tejas New Instructions (TNI) и Merom New Instructions (MNI) по названию процессоров, где впервые Intel намеревалась поддержать эти новые команды. Появившись в Intel Core Microarchitecture, SSSE3 доступно в сериях процессоров Xeon 5100 (Server и Workstation версии), а также в процессорах Intel Core 2 (Notebook и Desktop версии). Новыми в SSSE3, по сравнению с SSE3, являются 16 уникальных команд, работающих с упакованными целыми. Каждая из них может работать как с 64-х битными (MMX), так и с 128-ми битными (XMM) регистрами, поэтому Intel в своих материалах ссылается на 32 новые команды. Вот некоторые из них: - Работа со знаком (2 инструкции) - Сдвиги - Перемешивание байт - Умножения (2 инструкции) - Горизонтальные сложения/вычитания целых (4 инструкции)

  1. Системная логика ПК(чипсеты).

Материнская плата

Материнская плата стандарта ATX (модель MSI K7T266 Pro2)

Компоненты материнской платы

Матери́нская пла́та (англ. motherboard, MB, также используется название англ. mainboard — главная плата; сленг. мама, мать, материнка) — это сложная многослойная печатная плата, на которой устанавливаются основные компоненты персонального компьютера (центральный процессор, контроллер ОЗУ и собственно ОЗУ, загрузочное ПЗУ, контроллеры базовых интерфейсов ввода-вывода). Как правило, материнская плата содержит разъёмы (слоты) для подключения дополнительных контроллеров, для подключения которых обычно используются шины USB, PCI и PCI-Express.

Основные компоненты, установленные на материнской плате:

Центральный процессор.

набор системной логики (англ. chipset) — набор микросхем, обеспечивающих подключение ЦПУ к ОЗУ и контроллерам периферийных устройств. Как правило, современные наборы системной логики строятся на базе двух СБИС: «северного» и «южного мостов».

Северный мост (англ. Northbridge), MCH (Memory controller hub), системный контроллер — обеспечивает подключение ЦПУ к узлам, использующим высокопроизводительные шины: ОЗУ, графический контроллер.

Для подключения ЦПУ к системному контроллеру могут использоваться такие FSB-шины, как Hyper-Transport и SCI.

Обычно к системному контроллеру подключается ОЗУ. В таком случае он содержит в себе контроллер памяти. Таким образом, от типа применённого системного контроллера обычно зависит максимальный объём ОЗУ, а также пропускная способность шины памяти персонального компьютера. Но в настоящее время имеется тенденция встраивания контроллера ОЗУ непосредственно в ЦПУ (например, контроллер памяти встроен в процессор в AMD K8 и Intel Core i7), что упрощает функции системного контроллера и снижает тепловыделение.

В качестве шины для подключения графического контроллера на современных материнских платах используется PCI Express. Ранее использовались общие шины (ISA, VLB, PCI) и шина AGP.

Южный мост (англ. Southbridge), ICH (I/O controller hub), периферийный контроллер — содержит контроллеры периферийных устройств (жёсткого диска, Ethernet, аудио), контроллеры шин для подключения периферийных устройств (шины PCI, PCI-Express и USB), а также контроллеры шин, к которым подключаются устройства, не требующие высокой пропускной способности (LPC — используется для подключения загрузочного ПЗУ; также шина LPC используется для подключения мультиконтроллера (англ. Super I/O) — микросхемы, обеспечивающей поддержку «устаревших» низкопроизводительных интерфейсов передачи данных: последовательного и параллельного интерфейсов, контроллера клавиатуры и мыши).

Как правило, северный и южный мосты реализуются в виде отдельных СБИС, однако существуют и одночиповые решения. Именно набор системной логики определяет все ключевые особенности материнской платы и то, какие устройства могут подключаться к ней.

Оперативная память (также оперативное запоминающее устройство, ОЗУ) — в информатике — память, часть системы памяти ЭВМ, в которую процессор может обратиться за одну операцию (jump, move и т. п.). Предназначена для временного хранения данных и команд, необходимых процессору для выполнения им операций. Оперативная память передаёт процессору данные непосредственно, либо через кеш-память. Каждая ячейка оперативной памяти имеет свой индивидуальный адрес.

ОЗУ может изготавливаться как отдельный блок или входить в конструкцию однокристальной ЭВМ или микроконтроллера.

загрузочное ПЗУ — хранит ПО, которое исполняется сразу после включения питания. Как правило, загрузочное ПЗУ содержит BIOS, однако может содержать и ПО, работающие в рамках EFI.

Классификация материнских плат по форм-фактору

Форм-фактор материнской платы — стандарт, определяющий размеры материнской платы для персонального компьютера, места ее крепления к корпусу; расположение на ней интерфейсов шин, портов ввода/вывода, сокета центрального процессора (если он есть) и слотов для оперативной памяти, а также тип разъема для подключения блока питания.

Форм-фактор (как и любые другие стандарты) носит рекомендательный характер. Спецификация форм-фактора определяет обязательные и опциональные компоненты. Однако подавляющее большинство производителей предпочитают соблюдать спецификацию, поскольку ценой соответствия существующим стандартам является совместимость материнской платы и стандартизированного оборудования (периферии, карт расширения) других производителей.

Устаревшие: Baby-AT; Mini-ATX; полноразмерная плата AT; LPX.

Современные: АТХ; microATX; Flex-АТХ; NLX; WTX, CEB.

Внедряемые: Mini-ITX и Nano-ITX; Pico-ITX; BTX, MicroBTX и PicoBTX

Существуют материнские платы, не соответствующие никаким из существующих форм-факторов (см. таблицу). Обычно это обусловлено либо тем, что производимый компьютер узкоспециализирован, либо желанием производителя материнской платы самостоятельно производить и периферийные устройства к ней, либо невозможностью использования стандартных компонентов (так называемый «бренд», например Apple Computer, Commodore, Silicon Graphics, Hewlett Packard, Compaq чаще других игнорировали стандарты; кроме того в нынешнем виде распределённый рынок производства сформировался только к 1987 году, когда многие производители уже создали собственные платформы).

Наиболее известными производителями материнских плат на российском рынке в настоящее время являются фирмы Asus, Gigabyte, MSI, Intel, Elitegroup, AsRock. Ранее большой известностью пользовались платы фирм Abit и Epox. На сегодня обе фирмы прекратили выпуск материнских плат. Из российских производителей материнских плат можно упомянуть только компанию Формоза, которая производила платы, используя компоненты фирм Lucky Star и Albatron.

Чипсет (англ. chip set) — набор микросхем, спроектированных для совместной работы с целью выполнения набора каких-либо функций. Так, в компьютерах чипсет выполняет роль связующего компонента, обеспечивающего совместное функционирование подсистем памяти, ЦПУ, ввода-вывода и других. Чипсеты встречаются и в других устройствах, например, в радиоблоках сотовых телефонов.

Чипсет материнских плат компьютеров состоит из двух основных микросхем (иногда они объединяются в один чип, например SCH):

MCH — контроллер-концентратор памяти (Memory Controller Hub) — северный мост (англ. northbridge) — обеспечивает взаимодействие центрального процессора (ЦП) с памятью и видеоадаптером (PCI Express). В новых чипсетах часто имеется интегрированная видеоподсистема. Контроллер памяти может быть интегрирован в процессор (например Opteron, Nehalem, UltraSPARC T1).

ICH — контроллер-концентратор ввода-вывода (I/O Controller Hub) — южный мост (англ. southbridge) — обеспечивает взаимодействие между ЦП и жестким диском, картами PCI, интерфейсами IDE, SATA, USB и пр.

Также иногда к чипсетам относят микросхему Super I/O, которая подключается к южному мосту и отвечает за низкоскоростные порты RS232, LPT, PS/2.

Южный мост (от англ. Southbridge) (функциональный контроллер), также известен как контроллер-концентратор ввода-вывода от англ. I/O Controller Hub (ICH). Это микросхема, которая реализует «медленные» взаимодействия на материнской плате между чипсетом материнской платы и её компонентами. Южный мост обычно не подключён напрямую к центральному процессору (ЦПУ), в отличие от северного моста. Северный мост связывает южный мост с ЦПУ.

Функционально южный мост включает в себя:

контроллер шины PCI;

контроллер шины ISA;

контроллер шины SMBus или I2C;

DMA контроллер;

контроллер прерываний;

IDE (SATA или PATA) контроллеры;

контроллер шины LPC;

часы реального времени (Real Time Clock);

управление питанием (Power management (APM и ACPI);

энергонезависимую память BIOS (CMOS);

звуковой контроллер AC97 (опционально).

Опционально южный мост также может включать в себя контроллер Ethernet, RAID-контроллеры, контроллеры USB, контроллеры FireWire и аудио-кодек.

Реже южный мост включает в себя поддержку клавиатуры, мыши и последовательных портов, но обычно эти устройства подключаются с помощью другого устройства — Super I/O (контроллера ввода-вывода). Поддержка шины PCI включает в себя традиционную спецификацию PCI, но может также обеспечивать поддержку шины PCI-X и PCI Express. Хотя поддержка шины ISA используется достаточно редко, она осталась, что интересно, неотъемлемой частью современного южного моста. Шина SM используется для связи с другими устройствами на материнской плате (например, для управления вентиляторами). Контроллер DMA позволяет устройствам на шине ISA или LPC получать прямой доступ к оперативной памяти, обходясь без помощи центрального процессора.

Контроллер прерываний обеспечивает механизм информирования ПО, исполняющегося на ЦПУ о событиях в периферийных устройствах. IDE интерфейс позволяет «увидеть» системе жёсткие диски. Шина LPC обеспечивает передачу данных и управление SIO (это такие устройства, как клавиатура, мышь, параллельный, последовательный порт, инфракрасный порт и флоппи-контроллер) и BIOS ROM (флэш).

APM или ACPI функции позволяют перевести компьютер в «спящий режим» или выключить его.

Системная память CMOS, поддерживаемая питанием от батареи, позволяет создать ограниченную по объёму область памяти для хранения системных настроек (настроек BIOS).

Известные южные мосты

Семейство ICH:

ICH(ICH0)

ICH2

ICH2-M

ICH3-M

ICH3-S

ICH4/4R

ICH4-M

ICH5/5R

ICH6/6R

ICH6W

ICH7/7R

ICH7-DH

ICH8-DH

ICH9/9R

ICH9-DH

ICH10/10R

Другие:

MPIIX

MPCI2

MISA2

PIIX

PIIX3

PIIX4

PIIX4E

SIOH

IFB

nForce 410/430

IXP400/IXP450

Северный мост (от англ. Northbridge) (системный контроллер [1], [1]), также известен как контроллер-концентратор памяти от англ. Memory Controller Hub (MCH) — один из основных элементов чипсета компьютера, отвечающий за работу с процессором, памятью и видеоадаптером. Северный мост определяет частоту системной шины, возможный тип оперативной памяти (в системах на базе процессоров Intel) (SDRAM, DDR, другие), её максимальный объем и скорость обмена информацией с процессором. Кроме того, от северного моста зависит наличие шины видеоадаптера, её тип и быстродействие. Для компьютерных систем нижнего ценового уровня в северный мост нередко встраивают и графическое ядро. Во многих случаях именно северный мост определяет тип и быстродействие шины расширения системы (PCI, PCI Express, другое).

Северный мост и разгон процессора

Северный мост в значительной степени влияет на то, до какой степени может быть разогнан компьютер, поскольку используемая им частота является базовой для частоты работы процессора. В современных системах, когда компьютер становится быстрее, чип всё более нагревается. Поэтому на сегодняшний день нередко используются различные типы охлаждения северного моста, например радиаторы, кулеры или жидкостное охлаждение.

Происхождение названия

Название этого элемента можно объяснить представлением архитектуры чипсета в виде карты. В результате процессор будет располагаться на вершине карты, точно на севере. Он будет соединён с чипсетом через быстрый северный мост. А северный мост, в свою очередь, будет соединён с остальной частью чипсета через медленный южный мост.