Микропрограмма
Материал из Википедии — свободной энциклопедии
Микропрограмма (англ. firmware, «прошивка») — программное обеспечение, встроенное («зашитое») в аппаратное устройство. Часто представляется в виде микросхем флеш-ПЗУ или в виде файлов образов микропрограммы, которые могут быть загружены в аппаратное обеспечение.
Содержание |
[править] Определения
Под микропрограммой понимается следующее:
- Компьютерная программа, записанная на интегральной микросхеме ПЗУ и управляющая работой аппаратного обеспечения.
- Программа, записанная на той же микросхеме, что и процессор и превращающая его в специализированный для управления аппаратным обеспечением (микроконтроллер).
- Программа по тактам, управляющая ресурсами вычислительного устройства (ALU, сдвигатели, мультиплексоры и др.). Обычно, в командном слове, выделяются отдельные биты для управления необходимым устройством.
- Программа конфигурирования различных ПЛИС (FPGA, CPLD, PAL и т. п.).
Зачастую различные по возможностям и цене приборы отличаются лишь версиями микропрограммы. Для обозначения версии микропрограммы используется номер партии аппаратного обеспечения или другие специализированные идентификаторы, часто смена «прошивки» производится изготовителем без уведомления потребителя.
[править] Применение
Микропрограммы («прошивки») применяются везде, где применяются микропроцессоры: в мобильных телефонах, фотоаппаратах, измерительных приборах, телевизорах, платёжных картах и т. д. и т. п.
[править] Примеры реализации
Широко известным примером является BIOS, поставляемая вместе с материнской платой компьютера и обеспечивающая начальную подготовку компьютера к запуску операционной системы.
«Прошивки» могут создаваться «с нуля» для данного конкретного типа устройства, либо иметь в основе готовую операционную систему, как правило, с открытым исходным кодом.
Так, для небольших устройств иногда используется FreeRTOS. В последнее время, в связи с удешевлением памяти, достаточно часто применяется GNU/Linux.
Для написания исходных текстов программ используются ассемблеры, язык Си, языки типа Verilog'а для микросхем с программируемой логикой (ПЛИС).
[править] Юридические и финансовые вопросы
Несмотря на то, что применение микропрограмм в целом удешевляет конструирование и изготовление устройства, разработка «прошивки» обычно занимает бо́льшее время и стоит дороже, чем разработка аппаратного обеспечения прибора.
В связи с этим фирмы-производители, как правило, очень ревностно следят за сохранностью «прошивок»: лицензионное соглашение с потребителем запрещает извлекать и изучать «прошивки» тем или иным способом:
- самовольная замена «прошивки» на другую («перепрошивка») обычно прекращает действие гарантийных обязательств фирмы;
- процедуры обслуживания и изменения режимов работы микропрограмм обычно не разглашаются и в лучшем случае известны только работникам фирменных сервисных центров.
Некоторые фирмы (Microchip, Atmel и др.) производят микропроцессоры со встроенной программируемой памятью такой, что записанная на них программа уже не может быть считана штатными средствами. С другой стороны, фирмы-конкуренты иногда используют для считывания, например, электронные микроскопы.

