Микропрограмма

Материал из Википедии — свободной энциклопедии

(Перенаправлено с Прошивка)
Перейти к: навигация, поиск
Запрос «Прошивка» перенаправляется сюда; см. также другие значения.

Микропрограмма (англ. firmware, «прошивка») — программное обеспечение, встроенное («зашитое») в аппаратное устройство. Часто представляется в виде микросхем флеш-ПЗУ или в виде файлов образов микропрограммы, которые могут быть загружены в аппаратное обеспечение.

Содержание

[править] Определения

Под микропрограммой понимается следующее:

  • Компьютерная программа, записанная на интегральной микросхеме ПЗУ и управляющая работой аппаратного обеспечения.
  • Программа, записанная на той же микросхеме, что и процессор и превращающая его в специализированный для управления аппаратным обеспечением (микроконтроллер).
  • Программа по тактам, управляющая ресурсами вычислительного устройства (ALU, сдвигатели, мультиплексоры и др.). Обычно, в командном слове, выделяются отдельные биты для управления необходимым устройством.
  • Программа конфигурирования различных ПЛИС (FPGA, CPLD, PAL и т. п.).

Зачастую различные по возможностям и цене приборы отличаются лишь версиями микропрограммы. Для обозначения версии микропрограммы используется номер партии аппаратного обеспечения или другие специализированные идентификаторы, часто смена «прошивки» производится изготовителем без уведомления потребителя.

[править] Применение

Микропрограммы («прошивки») применяются везде, где применяются микропроцессоры: в мобильных телефонах, фотоаппаратах, измерительных приборах, телевизорах, платёжных картах и т. д. и т. п.

[править] Примеры реализации

Широко известным примером является BIOS, поставляемая вместе с материнской платой компьютера и обеспечивающая начальную подготовку компьютера к запуску операционной системы.

«Прошивки» могут создаваться «с нуля» для данного конкретного типа устройства, либо иметь в основе готовую операционную систему, как правило, с открытым исходным кодом.

Так, для небольших устройств иногда используется FreeRTOS. В последнее время, в связи с удешевлением памяти, достаточно часто применяется GNU/Linux.

Для написания исходных текстов программ используются ассемблеры, язык Си, языки типа Verilog'а для микросхем с программируемой логикой (ПЛИС).

[править] Юридические и финансовые вопросы

Несмотря на то, что применение микропрограмм в целом удешевляет конструирование и изготовление устройства, разработка «прошивки» обычно занимает бо́льшее время и стоит дороже, чем разработка аппаратного обеспечения прибора.

В связи с этим фирмы-производители, как правило, очень ревностно следят за сохранностью «прошивок»: лицензионное соглашение с потребителем запрещает извлекать и изучать «прошивки» тем или иным способом:

  • самовольная замена «прошивки» на другую («перепрошивка») обычно прекращает действие гарантийных обязательств фирмы;
  • процедуры обслуживания и изменения режимов работы микропрограмм обычно не разглашаются и в лучшем случае известны только работникам фирменных сервисных центров.

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

[править] См. также

[править] Ссылки