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