Victor_VG
Tracker Mod | Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору WildGoblin Не смеюсь т.к. знаю как ЦП устроен в схеме ибо сам их разрабатываю. Внешний микрокод (это набор управляющих битов для части, обычно периферийных узлов ЦП привязанный к синхротактам) для большинства ЦП управляет только режимами работы, а процессорные инструкции - команды реализуются зашитым в ПЗУ микрокодом. Вот он как раз и содержит реальные управляющие сигналы для АЛУ, сдвигателей, регисторов, мультиплексоров и счётчиков. Этот микрокод, его длина может достигать сотен бит и он читается "вся строка целиком" создаётся на стадии разработки процессора и при его изготовлении записывается во внутреннее масочное ПЗУ декодера команд откуда считывается после расшифровки КОП, затем декодер уточняет поля аргументов и передаёт уточнённую микропрограмму в исполнительный блок, загружает её длину в счётчик тактов, а уже там она выбирает нужные регистры или слова памяти, выставляет на управляющем входе АЛУ нужные биты и последовательно выполняется под управлением счётчика тактов пока он не обнулится - это сигнал схеме что текущая микропрограмма выполнена. В общих словах управляющий микрокод внутри ЦП работает примерно так. Никакого внешнего программного доступа к внутреннему микрокоду ни у кого нет, а изменить его в принципе невозможно т.к. содержимое масочного ПЗУ (ROM) задаётся межсоединениями на стадии литографии кристалла и любая ошибка в них означает ошибку содержимого ПЗУ исправимую только изготовлением новых шаблонов и кристаллов по ним. Поэтому единственным возможным без переделки схемы всех выпущенных кристаллов затронутых ошибкой в команде Gather процессоров Skylake, Cascade Lake, Cooper Lake, Amber Lake, Kaby Lake, Coffee Lake, Whiskey Lake, Comet Lake, Tiger Lake, Ice Lake и Rocket Lake что физически не возможно, вариантом её исправления у Intel остаётся только отключение режима предвыполнения (спекулятивного выполнения) для команд AVX2 / AVX-512, что и вызывает снижение производительности в этих режимах. А то, что ошибка затронула столько моделей, так это просто - при разработке новых ЦП часть узлов и микрокода копируется из более ранних схем для сокращения времени проектирования. Схемотехника новых ЦП 13-й серии отличается от более ранних серий и их создали считай заново, естественно, что часть старых ошибок при этом исправили не зная о их существовании, но и новые в схеме наверняка есть т.к. выловить абсолютно все ошибки на стадии разработки ещё некому не удалось....
---------- Жив курилка! (Р. Ролан, "Кола Брюньон") Xeon E5 2697v2/C602/128 GB PC3-14900L/GTX 1660 Ti, Xeon E5-2697v2/C602J/128 Gb PC3-14900L/GTX 1660 Ti |
|