Введение

Микроархитектура

K5 – первый процессор AMD x86, разработанный полностью собственными силами. Представленный в марте 1996 года, его основным конкурентом был микропроцессор Intel Pentium. K5 представлял собой амбициозную разработку, по техническим решениям и внутренней архитектуре он был ближе к Pentium Pro, чем к Pentium. Однако, по производительности финальный продукт оказался ближе к Pentium, хотя и демонстрировал более высокую скорость работы на такт по сравнению с Pentium.

Технические детали

K5 был основан на внутренней архитектуре высокопараллельного RISC-процессора с фронтендом декодирования x86. K5 обеспечивал хорошую совместимость с x86, а разработанный внутри компании тестовый набор оказался бесценным при реализации последующих проектов. Все модели содержали 4,3 миллиона транзисторов, включая пять целочисленных блоков, способных выполнять инструкции вне порядка, и один блок операций с плавающей точкой. Буфер предсказания переходов был в четыре раза больше, чем у Pentium, а переименование регистров помогало разрешать зависимости между регистрами. Спекулятивное выполнение инструкций чипом уменьшало остановки конвейера. Он имел 16 КБ четырехканальный ассоциативный кэш инструкций и 8 КБ кэш данных. Микрокод деления и извлечения квадратного корня для операций с плавающей точкой был тщательно проверен. Трансцендентные инструкции для операций с плавающей точкой были реализованы аппаратно и обеспечивали математически точные результаты для всех операндов.

Выступление

Проект K5 стал для AMD ранней возможностью вырваться в технические лидеры к Intel. Несмотря на то, что чип был основан на верных конструктивных принципах, его практическая реализация оказалась проблемной. Низкая тактовая частота была обусловлена, с одной стороны, ограниченными производственными возможностями AMD как компании, работающей на переднем крае технологий в то время, а с другой – самой конструкцией, содержавшей слишком много уровней логики для технологического процесса того времени, что затрудняло масштабирование тактовой частоты. Кроме того, хотя производительность K5 в операциях с плавающей точкой считалась выше, чем у Cyrix 6x86, она уступала Pentium, хотя и обеспечивала более точные результаты при вычислении трансцендентных функций. Из-за позднего выхода на рынок и несоответствия ожиданиям по производительности, K5 так и не завоевал признания крупных производителей компьютеров, которое имели более ранние Am486 и последующий AMD K6.

Модели

Было две ревизии архитектуры K5, внутренне называемые SSA/5 и 5k86, обе выпущенные под маркой K5. В исходном наборе процессоров "SSA/5" модуль предсказания переходов был отключен и добавлены дополнительные внутренние задержки; эти проблемы были устранены в "5k86", что обеспечило прирост производительности до 30% при одинаковой тактовой частоте. Линейка "SSA/5" работала на частотах от 75 до 100 МГц, а линейка "5k86" – от 90 до 133 МГц. Однако AMD использовала так называемый PR-рейтинг, или рейтинг производительности, для обозначения чипов в соответствии с их предполагаемой эквивалентностью по целочисленной производительности процессору Pentium с той же тактовой частотой. Таким образом, чип 116 МГц из второй линейки продавался как "K5 PR166". Задержки в производстве привели к тому, что выход PR200 почти совпал с выпуском K6. Поскольку AMD не хотела конкуренции между этими двумя чипами, K5 PR200 был выпущен в ограниченном количестве.