Рубрика «Процессоры» - 41

Упражнения в эмуляции: инструкция FMA консоли Xbox 360 - 1

Много лет назад я работал в отделе Xbox 360 компании Microsoft. Мы думали над выпуском новой консоли, и решили, что было бы здорово, если эта консоль сможет запускать игры с консоли предыдущего поколения.

Эмуляция — это всегда сложно, но она оказывается ещё труднее, если твоё корпоративное начальство постоянно меняет типы центральных процессоров. В первом Xbox (не путать с Xbox One) использовался ЦП x86. Во втором Xbox, то есть, простите, в Xbox 360 использовался процессор PowerPC. В третьем Xbox, то есть в Xbox One, использовался ЦП x86/x64. Подобные скачки между разными ISA не упрощали нам жизнь.

Я участвовал в работе команды, которая учила Xbox 360 эмулировать многие игры первого Xbox, то есть эмулировать x86 на PowerPC, и за эту работу получил титул «ниндзя эмуляции». Затем меня попросили изучить вопрос эмуляции ЦП PowerPC консоли Xbox 360 на ЦП x64. Заранее скажу, что удовлетворительного решения я не нашёл.
Читать полностью »

Нельзя отрицать, что компания AMD покоряет рынок процессоров семимильными шагами. Началось всё с появления новинок на базе архитектуры Zen, которые получили имя Ryzen. Да, старт был не таким гладким, как хотелось бы, но шороху производитель навёл немало. В чём секрет успеха второго поколения? Почему энтузиасты обратили особое внимание не на «топовый» чипсет? Правда ли, что в сети есть программы-калькуляторы для настроек памяти? И даже в играх производительность заметно вырастет после тонкой настройки? А что, бывает разная память и какая-то может даже не заработать?

Скупой не платит дважды – настраиваем память на платформе AMD B450 и получаем бесплатную производительность - 1
Читать полностью »

На днях японская автоматическая станция Хаябуса-2 сбросила бомбу на астероид Рюгу. Космическим кораблем управляет радиационно-устойчивая система на кристалле HR5000 (JAXA2010/101) с 64-битным процессорным ядром MIPS 5Kf. На бортовом компьютере работает операционная система реального времени uITRON, одна из семейства RTOS-ов стандарта TRON, который появился в Японии еще в 1980-е годы и заслуживает отдельного поста.

В этой заметке я кратко опишу, что входит в СнК HR5000 и его процессорное ядро, покажу фотографии двух из ключевых разработчиков линеек MIPS 4K и 5K, а также расскажу, как вы можете поиграться дома на плате ПЛИС с «потомком младшего брата» этого компьютера — 32-битным ядром MIPS microAptiv UP, код которого на языке описания аппаратуры Verilog был основан на MIPS 4KEc.

Как устроен компьютер внутри Хаябусы-2, которая сбросила бомбу на Рюгу. И фотографии его разработчиков - 1
Читать полностью »

Систему Shenango планируют использовать в дата-центрах.

Новый балансировщик нагрузки на CPU от MIT - 1
/ фото Marco Verch CC BY

По данным одного из провайдеров, дата-центры используют всего 20–40% доступных вычислительных мощностей. При высоких нагрузках этот показатель может достигать 60%. Подобное распределение ресурсов ведет к появлению так называемых «зомби-серверов». Это машины, которые большую часть времени простаивают, впустую расходуя электроэнергию. Сегодня 30% серверов в мире стоят без работы, потребляя электричество на $30 млрд в год.

Бороться с неэффективным расходованием вычислительных ресурсов решили в MIT.Читать полностью »

Первая часть
Вторая часть

Тема сегодняшнего разговора — работа с памятью. Я расскажу про инициализацию директории страниц, маппинг физической памяти, управление виртуальной и мою организацию кучи для аллокатора.

Как я уже говорил в первой статье, я решил использовать страницы размером 4 МиБ, чтобы упростить себе жизнь и не иметь дела с иерархическими таблицами. В дальнейшем я надеюсь перейти на страницы размером 4 КиБ, как большинство современных систем. Я мог бы использовать готовый (например, такой блочный аллокатор), но написать свой было чуть интереснее и хотелось чуть больше понять, как живет память, так что мне есть, что вам рассказать.

Читать полностью »

Союз Arduino и классического процессора - 1

Ретрокомпьютерщики бывают различной степени привередливости. Одни довольствуются эмуляцией. Другие предпочитают ПЛИС, потому что тогда получается не эмуляция, а воссоздание. Наконец, третьим подавай настоящий процессор.

Но процессору для работы нужно столько всего! Снова дилемма: взять настоящие микросхемы тех же лет, или поместить всё в ПЛИС, оставив снаружи процессор? Впрочем, почему обязательно ПЛИС? Да здравствует союз Arduino и настоящего процессора!Читать полностью »

Архитектура отечественных процессоров «Байкал» стала бесплатной — ее открыли разработчики - 1

На днях компания Wave Computing заявила о старте программы MIPS Open, которая дает возможность бесплатного лицензирования процессорной архитектуры MIPS. Первый этап этой программы заключается в предоставлении участникам бесплатного доступа к 32-х и 64-битным разработкам архитектуры MIPS R6 (шестая версия — последняя).

При этом компания заявила, что лицензирование такого типа не подразумевает никаких лицензионных отчислений. Партнеры, которые подключились к программе, получают еще и возможность модифицировать вычислительные ядра MIPS по своему усмотрению. Правда, должно соблюдаться требование по сохранению обратной совместимости со спецификациями MIPS.
Читать полностью »

Первая часть

Первая статья еще не успела остыть, а я решил не держать вас в интриге и написать продолжение.
Итак, в предыдущей статье мы поговорили о линковке, загрузке файла ядра и первичной инициализации. Я дал несколько полезных ссылок, рассказал, как размещается загруженное ядро в памяти, как соотносятся виртуальные и физические адреса при загрузке, а так же как включить поддержку механизма страниц. В последнюю очередь управление перешло в функцию kmain моего ядра, написанного на Rust. Пришло время двигаться дальше и узнать, насколько глубока кроличья нора!

В этой части заметок я кратко опишу свою конфигурацию Rust, в общих чертах расскажу про вывод информации в VGA, и детально о настройке сегментов и прерываний. Всех заинтересованных прошу под кат, и мы начинаем.

Читать полностью »

Я решил написать статью, а если получится — то и серию статей, чтобы поделиться своим опытом самостоятельного исследования как устройства Bare Bone x86, так и организации операционных систем. На данный момент мою поделку нельзя назвать даже операционной системой — это небольшое ядро, которое умеет загружаться из Multiboot (GRUB), управлять памятью реальной и виртуальной, а также выполнять несколько бесполезных функций в режиме многозадачности на одном процессоре.

При разработке я не ставил себе целей написать новый Linux (хотя, признаюсь, лет 5 назад мечтал об этом) или впечатлить кого-либо, поэтому особо впечатлительных прошу дальше не смотреть. Что мне на самом деле захотелось сделать — разобраться, как устроена архитектура i386 на самом базовом уровне, и как именно операционные системы делают свою магию, ну и покопать хайповый Rust.

В своих заметках я постараюсь поделиться не только исходными текстами (их можно найти на GitLab) и голой теорией (ее можно найти на многих ресурсах), но и тем путем, который я прошел, чтобы найти неочевидные ответы. Конкретно в этой статье я расскажу о компоновке файла ядра, его загрузке и инициализации.

Мои цели — структурировать информацию у себя в голове, а так же помочь тем, кто идет похожим путем. Я понимаю, что аналогичные материалы и блоги уже есть в сети, но чтобы прийти к моему текущему положению, мне пришлось долго собирать их воедино. Всеми источниками (во всяком случае, которые вспомню), я поделюсь прямо сейчас.

Читать полностью »

Архитектура Intel Gen11 GPU и дискретная видеокарта от Intel - 1
Дискретная видеокарта начального уровня Intel Graphics Xe, официальный анонс состоялся 20 марта на игровой конференции GDC 2019

Компания Intel опубликовала документацию на графические процессоры Gen11 с описанием, чем они будут отличаться от предыдущего поколения. Ожидается, что архитектура Intel Gen11 станет основой для будущей архитектуры дискретной видеокарты Xe, поэтому описанные здесь технологии можно рассматривать как предварительный просмотр по крайней мере некоторых функций, которые реализуют в этих видеокартах. Пока что о будущих видеокартах Intel ничего не рассказывала, только показала несколько фотографий (или рендеров).
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js