Меню ↑

Архитектура Zen 2

Процессоры AMD 3-го поколения Ryzen используют микроархитектуру «Zen 2», а Ryzen 2-го поколения улучшенное производное первого поколения «Zen» под названием «Zen+», имеющее улучшения в процессах и алгоритмах boost, что даёт повышения IPC примерно 4%. С «Zen 2» главная цель AMD — окончательно победить Intel в игре IPC. IPC, или инструкции за такт, свободно используются для обозначения производительности ядра процессора при данной тактовой частоте. Последние 15 лет Intel доминировала над AMD в этом вопросе, в то время как AMD пыталась сделать свои процессоры конкурентоспособными, втиснув больше процессорных ядер, чем Intel, в любой ценовой категории для конкурентоспособной многопоточной производительности. Современная программная среда, как и игры, становится все более многопоточной. С «Zen 2» AMD поставила перед собой амбициозную цель повышения IPC в виде двузначного процента, чтобы догнать или обогнать новейшую микроархитектуру Intel «Coffee Lake» в IPC. AMD не остановилась на этом и даже увеличила количество ядер для платформы. Семейство Ryzen 3-го поколения даже включает в себя 16-ядерный процессор, что является огромным количеством ядер для мейнстрим настольной платформы.

Прежде чем перейти к интересному и причудливому способу, при помощи которого AMD удалось, втиснула 16 ядер в этот чип, давайте поговорим о ядре процессора «Zen 2». После колоссального провала, которым стал «Bulldozer», AMD решила ещё раз создать мощные и монолитные ядра ЦП, которых не разделяет ничего, кроме кеша L3, с другими ядрами. Компания достигла желаемого результата с «Zen», продемонстрировавшего гигантское увеличение IPC на 40–50% по сравнению с «Bulldozer», вернув AMD к конкурентоспособности. Ядро «Zen» IPC находится где-то между «Haswell» и «Skylake/Coffee Lake», что было достаточно для AMD, поскольку оно поддерживало увеличение IPC с более высоким числом ядер по сравнению с Intel. На протяжении 8-го и 9-го поколений процессоров Core, сохранявших аналогичный IPC, что и «Skylake», Intel увеличивала количество ядер, чтобы соответствовать AMD. Желая установить окончательное преимущество над Intel, AMD работала не только над повышением IPC, но и над количеством ядер.

Ядро ЦП «Zen 2» по сути, имеет ту же структуру и иерархию компонентов, что и «Zen», но с существенными изменениями и расширением ключевых компонентов. Как и в случае с «Zen» (или большинством процессорных ядер x86), ядро «Zen 2» состоит из пяти ключевых компонентов: Fetch, Decode, Integer, Floating-point и Load/Store. Fetch и Decode сообщают ядру процессора, что нужно сделать и какие данные или инструкции необходимы; Integer и модуль с плавающей запятой выполняют математическую модель того, что необходимо сделать, в зависимости от типа данных и характера инструкции; Load/Store — ввод/вывод ядра ЦП. На разных уровнях существуют крошечные буферы, регистры, в которых хранятся инструкции, и большие кэши, упрощающие передачу данных между различными компонентами.

AMD обновила модули Fetch и Decode, способствующих IPC, сделав процессор «умнее». Обновленные Integer и FPU «усложняют» работу процессора, а задача модуля Load/Store состоит в том, чтобы другие компоненты не испытывали недостатка в работе. Модуль Fetch обновляется с помощью предиктора ветви TAGE. Изобретенный в 2006 году, TAGE считается лучшим методом прогнозирования ветвлений IEEE. AMD расширила BTB (целевые буферы ветвления) на L1 и L2, удвоив записи L1 до 512 тыс., а записи L2 до 7000 с 4000. ITA (косвенный целевой массив) также был расширен. Целью разработки для обновления модуля Fetch является снижение «неправильных прогнозов» (неправильных предположений), напрасно тратящих операции загрузки/хранения, примерно на 30%. Также был улучшен кэш инструкций L1 32 КБ. Модуль декодирования имеет два улучшения кэша операций: улучшенное объединение команд и возможность выдвигать до 4000 объединенных команд за такт.

Теперь перейдем к двум компонентам, вносящих наибольший вклад в IPC, — целочисленным и единицам с плавающей запятой. Целочисленный блок получил инкрементные обновления в виде более широкого целочисленного планировщика, обрабатывающего 92 записи (по сравнению с 84), с четырьмя 16-входными очередями ALU и одной 28-входной очередью AGU. Файл физического регистра общего назначения теперь был расширен до 180 записей из 168. Выпуск за цикл был расширен до 7 с 6, что теперь включает в себя 4 ALU и 3 AGU. Буфер переупорядочения (ROB) был расширен до 224 записей, по сравнению со 192. Логика SMT (одновременная многопоточность) была изменена, чтобы лучше разделить ALU и AGU между логическими процессорами. FPU имеет основную часть инноваций с «Zen 2». Пропускная способность загрузки/хранения FPU была удвоена до 256 бит, по сравнению со 128 битами на «Zen».

Ядро теперь также поддерживает своего рода AVX-256: AVX/AVX2 — помеченные инструкции с 256-битными регистрами. Существует множество приложений для этого, таких как моделирование физики, выполнение звукового стека и повышение производительности копирования в память. Задержка операции умножения была улучшена на 33%.

Наконец, переходим к блоку загрузки/хранения с аналогичным циклом улучшений поколений. Очередь хранилища записей расширена до 48 записей, по сравнению с 44 ранее. TLB L2 (буфер трансляции просмотра) был расширен на 33% до 2000 записей, а его задержка улучшена. Кэш данных L1 объемом 32 КБ имеет два 256-битных пути чтения и один 256-битный путь записи с 64-байтовой загрузкой и 32-байтовыми границами выравнивания хранилища. Пропускная способность загрузки/хранения до L2 была удвоена до 32 байтов за такт.

Теперь перейдем к иерархии кэша, которая, по сути, такая же, как и «Zen». Несмотря на описанные выше технические изменения, ядро «Zen 2» по-прежнему имеет L1I-кэш объёмом 32 КБ, L1D-кэш объёмом 32 КБ и выделенный кэш L2 объёмом 512 КБ. AMD удвоила размер общего кэша L3 до 16 МБ. Теперь каждый CCX (quad-core вычислительный комплекс) на процессоре «Zen 2» теперь имеет 16 МБ общей кэш L3. Удвоение размера кэша L3 было вызвано не только тем, что Intel делила большие объёмы кэша L3 между отдельными ядрами на кристалле «Coffee Lake Refresh» (16 МБ, разделенных между всеми 8 ядрами), но и потому, что больший объем кэша L3 на CCX «Zen2» смягчает передачу данных с помощью кристалла ввода/вывода.

Это подводит к интересному и причудливому способу, с помощью которого AMD удалось добиться 16 ядер. Процессорные пакеты Ryzen 9 3900X и Ryzen 5 3600 имеют кодовое название «Matisse». Это многочиповый модуль (MCM) из одного или двух 7-нм 8-ядерных чиплетов «Zen 2» и одного кристалла I/O контроллера, построенный по 12-нм техпроцессу. AMD позаботилась о том, чтобы только те компоненты, ощутимо выигрывающие от сжатия до 7 нм, а именно ядра процессора, были построены на новом процессе, в то время как те компоненты, не получающие от 7 нм ничего, остаются на существующих 12 нм на кристалле контроллера ввода/вывода. AMD выпустила Ryzen 5 3600, используя всего один чиплет «Zen 2», включив в него 6 ядер, по 3 на CCX.

Эти компоненты включают в себя 2-канальный контроллер памяти DDR4 процессора, 24-канальный корневой комплекс PCI-Express gen 4.0 и интегрированный южный мост, обеспечивающий подключение некоторых платформ непосредственно из сокета AM4, например порты SATA 6 Гбит/с и USB 3.1. Infinity Fabric — межсоединение, связывающее три кристалла, обеспечивая путь данных 100 ГБ/с между каждым чиплетом ЦП и контроллером ввода-вывода. Частоты памяти теперь практически не связаны с частотами Infinity Fabric, что должно улучшить запас по разгону памяти. AMD также утверждает, что приложила немало усилий для улучшения совместимости модулей памяти между брендами, особенно после того, как Samsung прекратила массовое производство дорогого чипа B-die DRAM, предпочитавшего процессоры AMD.

Меню ↑

Архитектурные инновации, характерные для серии Ryzen 3000XT

Внутренне AMD называет семейство процессоров Ryzen 3000XT «Matisse 2». Они практически идентичны оригинальным процессорам Ryzen 3000 «Matisse» на основе микроархитектуры «Zen 2», но AMD дала этим процессорам некоторые физические улучшения. Начнем с того, что 8-ядерные CCD (комплексные вычислительные кристаллы) или чиплеты «Zen 2» внутри процессоров всё ещё основаны на TSMC N7 (первый 7 нм литейный узел), но с некоторыми уточнениями. AMD утверждает, что они дают электрическое улучшение в однозначном процентном соотношении, которое AMD использует для достижения приращений до 200 МГц в максимальных boost частотах, не влияя на TDP самих процессоров.

Теплопакет Ryzen 5 3600XT остается на уровне 95 Вт, как и 3600X, в то время как 3800XT и 3900XT придерживаются отметки 105 Вт. Решение AMD не включать охлаждающие решения с 3800XT и 3900XT имеет мало общего с мощностью или тепловыми характеристиками этих процессоров и больше связано с маркетинговыми решениями, принятыми AMD. Это, безусловно, уменьшает перечень материалов AMD для этих чипов.

AMD категорически заявила, что этот «усовершенствованный» узел N7 не является ни N7P, ни N7+. Узел N7P является преемником N7, придерживающийся литографии DUV (глубокий ультрафиолет), внедряет инновации, чтобы добиться улучшения мощности. А вот N7+, с другой стороны, использует EUV (экстремальный ультрафиолет), дарующий даёт гораздо более высокую эффективность, но также увеличивает плотность транзисторов более чем на 20%. Узел AMD, используемый для «Matisse 2», по-прежнему N7, но с некоторыми уточнениями AMD, которые к слову компания не уточнила в своём кратком описание продукта.

Меню ↑

Чипсеты AMD B550 и X570

Ясно, что с материнскими платами премиум-класса на чипсете AMD X570, стартующими от $150, маловероятно, что кто-то соединит с ним третье поколение Ryzen 3. Однако выбор более дешёвой материнской платы на наборе микросхем B450 означает отказ от убийственных функций, таких как к примеру PCIe gen 4.0. Таким образом, AMD выпустила новый чипсет среднего класса B550. Итак, B550 позволяет имет возможность подключения PCI-Express gen 4.0 от процессора «Matisse», в то же время ограничивая общее подключение нисходящего потока PCIe до gen 3.0.

На типичной материнской плате с набором микросхем B550 основной слот PCI-Express x16 будет поколения 4.0, если он будет соединен с процессором Ryzen «Matisse» третьего поколения, как и один из слотов M.2 NVMe платы, подключенный к процессору. Все остальные слоты PCIe или M.2, подключённые к чипсету B550, остануться 3-го поколения. Это означает, что перспектива платформы для видеокарт следующего поколения и твердотельных накопителей остается неизменной. Чипсет B550 обеспечивает до шести портов SATA 6 Гбит/с с поддержкой AHCI и RAID, до двух портов 10.1 Гбит/с USB 3.1 gen 2 (в дополнение к четырем таким портам, испускаемых процессором Matisse), два дополнительных порта USB 3.1 gen 1 и шесть портов USB 2.0. Шины платформы HDA и LPCIO расположены на процессоре.

Слово о совместимости. На момент написания этой статьи чипсет B550 поддерживает только процессоры Ryzen «Matisse» третьей генерации, а AMD подтвердила поддержку процессоров следующего поколения на основе архитектуры «Zen 3». Невозможно соединить материнскую плату B550 с более старыми процессорами Ryzen 2000/1000 или даже с APU 3200G или 3400G на основе более старой микроархитектуры Zen+. С этой целью на материнских платах чипсета B550 появится чёткая маркировка.

Что больше всего нравится в B550, так это его низкий TDP, позволяющий производителям материнских плат обходиться пассивными радиаторами; в отличие от X570, требующего активных вентилируемых радиаторов.

AMD обещала, что простым обновлением BIOS процессоры Ryzen «Matisse» 3-го поколения будут обратно совместимы со старыми материнскими платами Socket AM4, вплоть до чипсета AMD 300-серии. Чтобы максимально использовать возможности Ryzen «Matisse», а именно: подключение PCI-Express gen 4.0 и увеличенный запас разгона процессора/памяти, пользователь обязательно должен использовать одну из последних материнских плат, использующих чипсет AMD X570. X570 — совершенно другой чип от X470 и X370. Старые чипсеты были поставлены ASMedia, и они были довольно тонкими в своем нисходящем соединении.

Например, X470 выпускает только 8 нисходящих полос PCIe gen 2.0; X570 модернизирует все операции I/O, выпуская до 16 нисходящих полос PCIe 4.0, позволяет использовать дополнительные слоты M.2 PCIe 4.0 на материнских платах и создает пространство для многих новых встроенных устройств, требующих пропускной способности, таких как адаптеры 10 GbE, контроллеры Thunderbolt следующего поколения, контроллеры 802.11ax и т. д. Наряду с SoC «Matisse», X570 также выпускает несколько портов USB 3.1 gen 2 10 Гбит/с. Материнские платы на базе X570 также реализуют современные опции сетевого подключения, такие как 2.5 GbE и 802.11ax WLAN.

Учитывая наличие высокопроизводительных материнских плат на базе чипсета B550 с серьезными VRM-решениями и высокопроизводительной связью, этого вполне достаточно для любого процессора серии Ryzen 3000XT, включая и флагмана 3900XT. Чипсет B550 также предлагает поддержку нескольких графических процессоров. Таким образом, выбор между B550 и X570 должен сводиться к тому, планируется ли иметь более одного M.2 NVMe SSD, который может использовать преимущества PCI-Express 4.0, или установку NVMe RAID из 2-3 твердотельных накопителей PCIe gen 4.0 с поддержкой M.2. Серьёзным оверклокерам по-прежнему стоит задуматься о X570, поскольку самые зверские настройки VRM всё ещё встречаются на таких платах, как MSI MEG X570 GODLIKE, ASUS ROG Crosshair VII Formula и GIGABYTE X570 AORUS Xtreme.

Меню ↑

Технология AMD StoreMI 2.0

Сегодня AMD также представляет технологию StoreMI 2-го поколения, являющейся дополнением к платформам Socket AM4, TR4 и sTRX4. StoreMI — безплатное программное обеспечение для пользователей AMD, позволяющие создавать тома, охватывающие несколько устройств хранения данных, таких как SSD и HDD. В зависимости от «разогрева» (частоты доступа) данных, софт решает, какие данные хранить на самом быстром носителе. В отличие от оригинальной технологии StoreMI, дебютировавшей с чипсетом AMD 400-серии, StoreMI 2.0 является собственной разработкой AMD и имеет важное преимущество: ПО не перемещает данные физически между различными устройствами хранения. Скорее, в зависимости от доступного пространства и тепла, он копирует данные с медленного носителя на более быстрый и указывает ОС на копию, находящуюся на более быстром носителе. Такой способ исключает возможности для потери данных. AMD также переработала пользовательский интерфейс.