Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
ВССиТК-Лекция05.doc
Скачиваний:
11
Добавлен:
23.11.2019
Размер:
167.42 Кб
Скачать

Архитектура информационно-вычислительных систем.

Персональный компьютер.

Структурная организация ПК.

Многоядерные процессоры.

(Слайд 1)

1. Предварительные определения: архитектура.

2. Предварительные определения: системотехника.

3. Особенности архитектуры

4. Многоядерные процессоры: история возникновения

5. Многоядерные процессоры: производительность

6. Многоядерные процессоры: наращивание количества ядер

7. Многоядерные чипы для мобильных устройств

8. Многоядерные процессоры: Intel и AMD – два подхода

8.1. Первые двухядерные процессоры Intel

8.2. Процессоры AMD: SUMA, SRI и интегрированный Northbridge

9. Современные многоядерные процессоры Intel.

10. Современные многоядерные процессоры AMD.

11. Современные многоядерные процессоры ibm.

12. Процессоры компании Tilera

Появившиеся в начале XXI века первые двухъядерные процессоры от Intel и AMD стали не просто очередными конкурирующими новинками от лидеров отрасли ПК, как это часто бывало в последние годы. Их появление - начало нового этапа проникновения профессиональных технологий в потребительский сегмент «настольных» вычислений, как в тактическом, так и в стратегическом понимании.

1. Предварительные определения: архитектура.

Архитектура многоядерных процессоров аналогична архитектуре построения многопроцессорных систем. Существует общепринятая классификация:

1. SMP - системы (Symmetrical Multi Processor systems) (Слайд 2) - все процессоры имеют равноправный доступ к общей оперативной памяти. Создавать подобные системы с определенным уровнем рентабельности сложно: SMP - системы обычно содержат 2-4 процессора. Цена системы с большим числом процессоров может достигать сотен тысяч долларов (SMP с 32-мя CPU может стоить несколько миллионов долларов) Экономически более целесообразно использовать менее дорогостоящие архитектуры. Intel предпочитает создавать SMP - системы.

2. NUMA - системы (Non-Uniform Memory Access systems) (Слайд 3) - память таких систем неоднородна один её фрагмент «быстрее», другой – «медленнее. В системе при этом образуются сегменты со своей, быстрой «локальной» памятью, соединенные относительно медленными линиями связи. Обращения к «своей» памяти происходят быстро, к «чужой» - медленнее. Чем «дальше» чужая память расположена, тем медленнее получается доступ к ней. Создавать NUMA - системы куда проще, чем SMP- системы, но без учета неоднородности памяти для NUMA - системы создать эффективное ПО практически невозможно. AMD, IBM и Sun предпочитает создавать те или иные варианты NUMA - систем.

3. Кластеры (Слайд 4) - объединение нескольких компьютеров (узлы кластера или «ноды») посредством быстродействующих линий связи. В отличие от NUMA - систем, при работе с кластером требуется очень четко программно распределять функции обработки. Это создает трудности при программировании приложений и накладывает существенные ограничения на применимость кластерных систем. Основная область применения кластеров – суперкомпьютеры.

2. Предварительные определения: системотехника.

 

1. APIC (Advanced Programmable Interrupt Controller) – одна из важнейших схем, занимающаяся сбором и обработкой возникающих в компьютере прерываний.

Пример прерывания. Нажатие клавиши на клавиатуре – контроллер клавиатуры зафиксировал это событие, занес код нажатой клавиши в свою встроенную память – и сгенерировал прерывание – выдал по специальной линии сигнал-запрос с просьбой прервать выполнение текущей программы и обработать событие «нажата клавиша на клавиатуре». Это классическая задача специальных контроллеров (IC –контроллеров): они позволяют процессору не терять время, регулярно опрашивая внешние устройства на предмет возникновения событий.

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

Типичные примеры:

  • в программе встретилась непонятная или просто запрещенная инструкция (#GP, General Protection Exception),

  • произошло деление на ноль (#DE, Divide-by-Zero Error Exception),

  • программа обратилась к несуществующему адресу в памяти (#PF, Page Fault Exception).

Некоторые прерывания может генерировать сама программа, а, некоторые используются операционной системой для отладки программ. Реакция на каждое из прерываний задается вектором прерываний – набором адресов в памяти, описывающих действия процессора в случае возникновения прерывания: какие функции (обработчики прерывания) ему в этом случае необходимо выполнять.

Для многопроцессорных, многоядерных и даже для процессоров с Hyper - Threading (виртуальной многоядерностью) требуется для обработки программных прерываний по одному APIC на каждое ядро процессора (включая каждое виртуальное ядро).

Кроме того, нужен еще один, «синхронизирующий» APIC в чипсете, который обеспечивает обработку аппаратных прерываний и, занимается распределением программных прерываний в тех случаях, когда возникшее на одном процессоре прерывание почему-то затрагивает и остальные процессоры.

2. DMA (Direct Memory Access) – блок чипсета, выполняющий обработку фоновых задач, связанных с периферией. DMA обеспечивает работу процессора по обмену с жесткими дисками, начиная с интерфейса Ultra ATA/33 (будет рассмотрен позже).

Пример. Если процессору требуется прочитать данные с жесткого диска, то не надо ждать несколько миллисекунд, пока эти самые данные ему не будут предоставлены. Вместо этого он программирует DMA - контроллер, чтобы тот выполнил эту задачу за него, и переключиться на другую задачу, пока запрос выполняется.

3. GART (Graphical Address Relocation Table) - блок, обеспечивающий графическому ускорителю доступ к системной памяти процессора. GART появился в компьютерах одновременно с шиной AGP. Его задача – реализация механизма виртуальной памяти для CPU. Позволяет 3D - ускорителям использовать не только собственную видеопамять, но и основную системную память компьютера.