Изменения

Перейти к: навигация, поиск

Участник:Kamensky/FAQ по Скакову

3972 байта добавлено, 12:17, 19 января 2014
м
TODO-лист
В этой статье собраны вопросы, которые Павел Сергеевич задает на экзамене. Некоторые считают, что здесь это зря выложено, что читатели сего должны сами заботать архитектуру, ходить на все лекции и писать конспекты. Поэтому крайне не рекомендуется прогуливать лекции, иначе пропадет понимание, и преподаватель докопается до ваших (не)знаний. По возможности, уменьшайте количество вопросов в TODO, отвечая на них как можно более развернуто.
== TODO-лист ==
* Почему номера строк и столбцов лучше передавать последовательно, а не параллельно?
* Что идейно среднее между однопортовой и двухпортовой ячейками статической памяти?
* В чем разница между оптическими носителями и магнитными с точки зрения пользователя/программиста (а не с точки зрения внутреннего устройства)
* Примеры разных ISA (хватит двух) и разных микроархитектур с одной ISA
* Различия CISC и RISC
* Что быстрее: стек, аккумулятор, reg-reg, reg-mem, mem-mem?
* Как лучше поцарапать оптический диск: по дуге или вдоль радиуса
* Может ли динамическая память быть двухпортовой (да)
* Чем GDDR отличается от DDR?
* Почему прокачивать DDR лучше, чем увеличивать частоту шины данных?
* Почему не делают двухпортовый DDR?
* Чем отличается двухтранзисторный инвертор от однотранзисторного?
* Почему команды памяти не стоит передавать параллельно? Или стоит?
* Как хранится информация в оперативной памяти?
* Чем хорош write-through?
* Почему наблюдается просадка скорости при чтении диска (или при записи)?
* Как размежевывается код Соломон Рида?
* Плюсы и минусы flash-памяти в сравнении с магнитными накопителями?
* В чем разница между фон Неймановской архитектурой и Гарвардской с точки зрения программистов?
* Что определяет ISA?
* Какая ISA лучше?
* Что такое структурные хазарды (нет, не предсказание переходов)?
== Вопросы с ответами ==
;VLIW
* '''+''' проще простое железо (много простых модулей - наклепал кучу и радуйся),* '''+''' у Vliw планировка происходит на стадии компиляции, есть больше времени, чтобы все хорошо продумать* - '''−''' длинный код (блоки идут от 2 до 6 команд, в некоторых блоках много NOP'ов)* - если добавили новый модуль'''−''' необходимость перекомпилировать программу при добавлении модулей (или разные машины (модули отличаются)переносе на отличающееся железо) нужно перекомпилировать программу* - '''−''' некоторые модули могут только складывать (т.е. если программа мало складывает - такие модули бесполезны)* - '''−''' кэш забит большим числом NOP-ов, чтобы добиться той же эффективности кэша , необходимо делать его больше
;Суперскаляр
* '''+''' есть Sheduler(планировщик) команд который наперед знает код и распределяет команды по ядрам(умным способом) - т.е. время выполнения программы меньше (код выполняется быстрее)* '''+''' есть run-time runtime информация про кэш, может планировать выполнение более умно* '''+''' код более компактный(плотный) (нет тех нопов которые есть у vliwVLIW)
* '''+''' возможно улучшение архитектуры (т.е наверное можно не парится с перекомпиляцией программы)
* - '''−''' тяжелое железо (трудно создать такую штуку - Sheduler) === Какой недостаток look-aside? === Необходимо много проводов. Экономически невыгодно. === Можно ли бесконечно перезаписывать НЖМД? Сколько там циклов перемагничивания? === Бесконечно много. Железке все равно. === Почему флешка работает медленнее HDD? === Одна дешевая микросхема, дешевый контроллер. Если скорость ~30 МБ/с, то все упирается в USB 2.0. Если меньше, то производитель экономил на производстве. === Что быстрее SSD или HDD? Почему? === У SSD выше скорость поиска, потому что время доступа ко всем ячейкам почти одинаковое. А в HDD все зависит от того, где находится считывающая головка и скорости ее перемещения. === Что делает сложение на этапе MEM MIPS-конвейера? === Ничего. MIPS — reg-reg архитектура, обращение к памяти происходит только при инструкциях LD и ST.
47
правок

Навигация