Микрокод: различия между версиями
[непроверенная версия] | [непроверенная версия] |
Содержимое удалено Содержимое добавлено
Addbot (обсуждение | вклад) м Перемещение 21 интервики на Викиданные, d:q175869 |
|||
Строка 23:
== Причины появления и использования ==
Первоначально микрокод был использован в качестве самотыка более лёгкого метода разработки контролирующего устройства компьютера. Прежде набор инструкций задавался жёстко, каждая машинная инструкция (сложение, сдвиг, копирование) реализовывалась непосредственно в [[Архитектура набора команд|схеме]]. Это давало высокую скорость, но по мере того как набор инструкций рос, всё сложнее становилось реализовать в виде схемы и отладить инструкции всё возрастающей сложности. Микрокод смягчил эту проблему тем, что позволил инженерам-проектировщикам при реализации сложной инструкции заменить создание сложной схемы на написание микропрограммы. Более того, микрокод можно было с лёгкостью изменить на поздних этапах проектирования, схему же изменить намного сложнее. Таким образом, микрокод облегчил проектирование процессоров, что привело к усложнению [[Система команд|набора команд]].
Использование микропрограмм также смягчило проблему пропускной способности памяти. В [[1970-е годы|1970-х]] рост скорости процессора намного обгонял рост скорости памяти. Некоторые способы ускорения, такие как многоуровневые [[кэш]]и, несколько смягчали проблему, но не решали её. Использование микрокода здесь очень помогло, поскольку меньшее количество более сложных инструкций требовали меньшего обмена с памятью. Например, если вся операция над строкой символов выполняется одной машинной инструкцией, то во время её выполнения не требуется выбирать из памяти другие инструкции.
|