Микрокод: различия между версиями

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