Смотрим внутренности отечественного 28нм MIPS процессора — Baikal-T1
Терзал этот процессор я с перерывами больше года —, но наконец под катом могу поделиться результатами.
Внимание, картинки кликабельны —, но местами довольно тяжелы (до 100Мб).
Сами процессоры (всего их пришлось вскрыть 4 штуки):
BGA-подложка и теплораспределяющая/защитная крышка — как и у других современных процессоров (Intel и ко), чип перевернут контактами вниз (flip-chip BGA):
Сам кристалл — по всей площади имеет контакты, большая часть из которых — для подачи питания по всей площади чипа. Это необходимо не столько из-за высокого потребления энергии (оно как раз невысокое, ≤5Вт), сколько для снижения индуктивности цепей питания. Опять же, большинство современных процессоров имеют аналогичную систему питания:
В левой части — Ethernet контроллер (вероятно 10GbE KR/KX4), на кадре видна половина:
После снятия металлизации — видим автосинтезированную из стандартных ячеек логику (Мультиклет например аналогичными «волнами» синтезировался на 180нм), кучу сгенерированных инстансов памяти/регистровых файлов (их обычно поставляет фабрика), и по всей площади раскиданные идентичные блоки мониторинга (предположительно, мелкие бело-синие вертикальные прямоугольнички). Заметная часть чипа (около 25%) транзисторами не занята, и там просто заполнение пустыми ячейками.
Посмотрим чуть ближе:
Предположительно, блок мониторинга (температура/скорость генерации инверторной цепочки например). Вокруг — поле пустых ячеек:
Ряды стандартных ячеек в максимальном оптическом разрешении. Тут 1 пиксель = 28.5нм, 28 микрометров (0.03 мм) на ширину кадра, но оптическое разрешение ограничено дифракцией на уровне порядка 200нм (потому кадр кажется и является нечетким). Видно, что в первом приближении тут подход тот же, что и в 180нм — те же ряды транзисторов «спина-к-спине» — P P N N транзисторы (т.е. соседние ряды стандартных ячеек зеркально отражаются). Линия с P транзисторами чуть шире:
Один из мелких сгенерированных блоков памяти — собственно массив SRAM ячеек занимает небольшую часть блока (остальное — драйверы строк/колонок и усилители сигнала, логика внешнего интерфейса). Вокруг детальнее видно поле «пустых» ячеек (совсем ничего там рисовать нельзя — чип получится неравномерным по высоте, что недопустимо):
Напоследок — фотография Байкала в иммерсионном масле, сразу после последних кадров:
На мой взгляд Baikal-T1 — большой шаг вперед для отечественной гражданской микроэлектроники. Это современное ядро, разработанное и произведенное по современным массовым гражданским технологиям, которое решает поставленные задачи стандартными средствами — общепринятый в мировой индустрии маршрут разработки, всем понятный и открытый компилятор, всем понятная и открытая ОС. Изобретение своих велосипедов там, где без них можно обойтись — это настоящий бич отечественных разработок, и тут этого удалось избежать.
На этом пока все — надеюсь в обозримом будущем чаще выходить с публикациями. Если работы такого рода вам нравятся — теперь вы можете поддержать их на Patreon или другими способами (а там глядишь и до электронного микроскопа/FIB доберемся).
Комментарии (1)
28 февраля 2017 в 18:52
+1↑
↓
Барс, как обычно, снимаю шляпу…