СПОСОБ И УСТРОЙСТВО ДЛЯ ОБНОВЛЕНИЯ МИКРОПРОГРАММНОГО ОБЕСПЕЧЕНИЯ
METHOD AND DEVICE FOR UPDATING FIRMWARE

[0001] Настоящая заявка ссылается на приоритет заявки на патент Китайской Народной Республики №201410751727.3, которая была зарегистрирована 9 декабря 2014 года. При этом содержание упомянутой заявки полностью включено в настоящий документ путем ссылки.
Область техники
[0002] Настоящее изобретение относится в общем к области электронной технологии и в частности к способу и устройству для обновления микропрограммного обеспечения.
Предпосылки создания изобретения
[0003] Обновление микропрограммного обеспечения представляет собой замену микропрограммного обеспечения, которое уже загружено во встроенный микроконтроллер (embedded Micro Control Unit, MCU), на новое, благодаря чему может быть усовершенствована функциональность и повышена стабильность работы интеллектуального устройства. В некоторых сложных интеллектуальных устройствах может потребоваться обновление микропрограммного обеспечения у нескольких микросхем MCU, микросхем, аналогичных MCU, или микросхем, не являющихся MCU, например, таких как микросхемы беспроводного доступа (Wireless Fidelity, WIFI), микросхемы Bluetooth и т.п. Однако обновление микропрограммного обеспечения нескольких микросхем по отдельности может приводить к нерациональному расходу ресурсов.
Сущность изобретения
[0004] Для решения проблем, имеющихся на существующем уровне техники, варианты осуществления настоящего изобретения предлагают способ и устройство для обновления микропрограммного обеспечения, которые применяют для повышения безопасности при обновлении микропрограммного обеспечения.
[0005] В соответствии с первым аспектом вариантов осуществления настоящего изобретения предлагается способ обновления микропрограммного обеспечения, который применяют в интеллектуальном устройстве и который включает:
[0006] когда определено, что микропрограммному обеспечению первой микросхемы требуется обновление, идентификацию первого раздела флэш-памяти во второй микросхеме для загрузки микропрограммного обеспечения второй микросхемы;
[0007] загрузку нового микропрограммного обеспечения первой микросхемы в первый раздел; и
[0008] копирование нового микропрограммного обеспечения первой микросхемы из первого раздела в рабочую область в первой микросхеме.
[0009] В варианте осуществления настоящего изобретения способ также включает:
[0010] когда определено, что микропрограммному обеспечению второй микросхемы требуется обновления загрузку нового микропрограммного обеспечения второй микросхемы в первый раздел;
[0011] активацию первого раздела, который становится новым вторым разделом для хранения надлежащего микропрограммного обеспечения второй микросхемы; и
[0012] назначение исходного второго раздела новым первым разделом для загрузки микропрограммного обеспечения второй микросхемы.
[0013] В варианте осуществления настоящего изобретения идентификация первого раздела флэш-памяти во второй микросхеме для загрузки микропрограммного обеспечения второй микросхемы включает:
[0014] получение информации о разделах второй микросхемы; и
[0015] идентификацию первого раздела флэш-памяти во второй микросхеме для загрузки микропрограммного обеспечения второй микросхемы в соответствии с информацией о разделах.
[0016] В варианте осуществления настоящего изобретения способ также включает:
[0017] после загрузки нового микропрограммного обеспечения первой микросхемы в первый раздел, проверку нового микропрограммного обеспечения первой микросхемы.
[0018] В соответствии со вторым аспектом вариантов осуществления настоящего изобретения предлагается устройство для обновления микропрограммного обеспечения, которое применяют в интеллектуальном устройстве и которое включает:
[0019] модуль идентификации, сконфигурированный, когда определено, что микропрограммному обеспечению первой микросхемы требуется обновление, для идентификации первого раздела флэш-памяти во второй микросхеме для загрузки микропрограммного обеспечения второй микросхемы;
[0020] первый модуль загрузки, сконфигурированный для загрузки нового микропрограммного обеспечения первой микросхемы в первый раздел, идентифицированный модулем идентификации; и
[0021] модуль копирования, сконфигурированный для копирования нового микропрограммного обеспечения первой микросхемы, загруженного первым модулем загрузки, из первого раздела в рабочую область в первой микросхеме.
[0022] В варианте осуществления настоящего изобретения устройство также включает:
[0023] второй модуль загрузки, сконфигурированный, когда определено, что микропрограммному обеспечению второй микросхемы требуется обновление, для загрузки нового микропрограммного обеспечения второй микросхемы в первый раздел, идентифицированный модулем идентификации;
[0024] модуль активации, сконфигурированный, после загрузки нового микропрограммного обеспечения второй микросхемы вторым модулем загрузки в первый раздел, для активации первого раздела, который становится новым вторым разделом для хранения надлежащего микропрограммного обеспечения второй микросхемы; и
[0025] модуль назначения, сконфигурированный, после активации, модулем активации первого раздела, который становится вторым разделом, для назначения исходного второго раздела новым первым разделом для загрузки микропрограммного обеспечения второй микросхемы.
[0026] В варианте осуществления настоящего изобретения модуль идентификации также включает:
[0027] подмодуль получения, сконфигурированный для получения информации о разделах второй микросхемы; и
[0028] подмодуль идентификации, сконфигурированный для идентификации первого раздела флэш-памяти во второй микросхеме для загрузки микропрограммного обеспечения второй микросхемы в соответствии с информацией о разделах, полученной подмодулем получения.
[0029] В варианте осуществления настоящего изобретения устройство также включает:
[0030] модуль проверки, сконфигурированный после загрузки нового микропрограммного обеспечения первой микросхемы первым модулем загрузки в первый раздел, для проверки нового микропрограммного обеспечения первой микросхемы.
[0031] В соответствии с третьим аспектом вариантов осуществления настоящего изобретения предлагается устройство для обновления микропрограммного обеспечения, которое применяют в интеллектуальном устройстве и которое включает:
[0032] процессор; и
[0033] память для хранения инструкций, выполняемых процессором;
[0034] при этом процессор сконфигурирован:
[0035] когда определено, что микропрограммному обеспечению первой микросхемы требуется обновление, для идентификации первого раздела флэш-памяти во второй микросхеме для загрузки микропрограммного обеспечения второй микросхемы;
[0036] для загрузки нового микропрограммного обеспечения первой микросхемы в первый раздел; и
[0037] для копирования нового микропрограммного обеспечения первой микросхемы из первого раздела в рабочую область в первой микросхеме.
[0038] Технические решения, предложенные вариантами осуществления настоящего изобретения, содержат следующие положительные эффекты: сначала определяют, что необходимо обновить микропрограммное обеспечение первой микросхемы, что позволяет избежать конфликтов вследствие одновременного обновления микропрограммного обеспечения у нескольких микросхем, благодаря чему повышается безопасность обновления микропрограммного обеспечения. Путем загрузки нового микропрограммного обеспечения первой микросхемы в первый раздел флэш-памяти во второй микросхеме и копирования нового микропрограммного обеспечения первой микросхемы из первого раздела в рабочую область в первой микросхеме, микропрограммное обеспечение первой микросхемы может быть заменено на новое микропрограммное обеспечение посредством использования флэш-памяти во второй микросхеме, что позволяет исключить необходимость применения дополнительной логики управления в ходе обновления и обеспечивает экономию ресурсов интеллектуального устройства.
[0039] Нужно пояснить, что и предшествующее общее описание, и подробное описание, приведенное ниже, являются исключительно иллюстративными и пояснительными и не ограничивают объем настоящего изобретения.
Краткое описание чертежей
[0040] На сопроводительных чертежах, которые включены в состав настоящего описания и являются его неотъемлемой частью, проиллюстрированы варианты осуществления, соответствующие настоящему изобретению. Сопроводительные чертежи, вместе с описанием, служат для разъяснения замысла настоящего изобретения.
[0041] Фиг. 1 представляет собой блок-схему алгоритма, иллюстрирующую способ обновления микропрограммного обеспечения в соответствии с примером осуществления настоящего изобретения.
[0042] Фиг. 2 представляет собой блок-схему алгоритма, иллюстрирующую способ обновления микропрограммного обеспечения в соответствии с первым примером осуществления настоящего изобретения.
[0043] Фиг. 3 представляет собой блок-схему алгоритма, иллюстрирующую способ обновления микропрограммного обеспечения в соответствии со вторым примером осуществления настоящего изобретения.
[0044] Фиг. 4А представляет собой блок-схему, иллюстрирующую разделы памяти микросхемы MCU в соответствии с примером осуществления настоящего изобретения.
[0045] Фиг. 4В представляет собой первую блок-схему, иллюстрирующую разделы памяти для обновления микропрограммного обеспечения микросхемы MCU в соответствии с примером осуществления настоящего изобретения.
[0046] Фиг. 4С представляет собой вторую блок-схему, иллюстрирующую разделы памяти для обновления микропрограммного обеспечения микросхемы WIFI в соответствии с примером осуществления настоящего изобретения.
[0047] Фиг. 4D представляет собой третью блок-схему, иллюстрирующую разделы памяти для обновления микропрограммного обеспечения микросхемы WIFI в соответствии с примером осуществления настоящего изобретения.
[0048] Фиг. 4Е представляет собой четвертую блок-схему, иллюстрирующую разделы памяти для обновления микропрограммного обеспечения микросхемы WIFI в соответствии с примером осуществления настоящего изобретения.
[0049] Фиг. 5 представляет собой блок-схему, иллюстрирующую устройство для обновления микропрограммного обеспечения в соответствии с примером осуществления настоящего изобретения.
[0050] Фиг. 6 представляет собой блок-схему, иллюстрирующую другое устройство для обновления микропрограммного обеспечения в соответствии с примером осуществления настоящего изобретения.
[0051] Фиг. 7 представляет собой блок-схему, иллюстрирующую устройство, которое может применяться для обновления микропрограммного обеспечения в соответствии с примером осуществления настоящего изобретения.
Подробное описание изобретения
[0052] Далее подробно описываются примеры осуществления настоящего изобретения, проиллюстрированные на сопроводительных чертежах. В приведенном ниже описании, если не указано обратное, аналогичные числовые обозначения на различных чертежах относятся к одним и тем же или аналогичным элементам. Методы реализации, описанные в рассмотренных ниже вариантах осуществления настоящего изобретения, не являются всеми возможными методами реализации, соответствующими настоящему изобретению. Напротив, они являются лишь примерами устройств и способов, соответствующих некоторым аспектам настоящего изобретения, перечисленным в пунктах приложенной формулы изобретения.
[0053] Фиг. 1 представляет собой блок-схему алгоритма, иллюстрирующую способ обновления микропрограммного обеспечения в соответствии с примером осуществления настоящего изобретения. Способ обновления микропрограммного обеспечения может применяться в интеллектуальных устройствах (например, интеллектуальных электрических вилках, интеллектуальных телевизорах, интеллектуальных кондиционерах и т.п.). В соответствии с иллюстрацией на фиг. 1 способ обновления микропрограммного обеспечения включает описанные ниже шаги S101-S103.
[0054] На шаге S101, когда определено, что микропрограммному обеспечению первой микросхемы требуется обновление, идентифицируют первый раздел флэш-памяти во второй микросхеме для загрузки микропрограммного обеспечения второй микросхемы.
[0055] В варианте осуществления настоящего изобретения определение того, что микропрограммному обеспечению первой микросхемы требуется обновления, может выполняться путем дистанционного управления или путем нажатия кнопки на интеллектуальном устройстве. В варианте осуществления настоящего изобретения, например, первая микросхема представляет собой микросхему, не являющуюся MCU, например микросхему Bluetooth, микросхему WIFI и т.п., а вторая микросхема может быть микросхемой MCU или микросхемой, аналогичной MCU, при этом первый раздел может представлять собой резервный раздел флэш-памяти в микросхеме MCU. Альтернативно, первая микросхема может быть микросхемой MCU, а вторая микросхема может быть микросхемой, не являющейся MCU, например микросхемой Bluetooth, микросхемой WIFI и т.п. Варианты осуществления настоящего изобретения не ограничивают наименования первой микросхемы и второй микросхемы, при условии, что первая микросхема и вторая микросхема имеют флэш-память.
[0056] На шаге S102 новое микропрограммное обеспечение первой микросхемы загружают в первый раздел.
[0057] В варианте осуществления настоящего изобретения новое микропрограммное обеспечение первой микросхемы может быть загружено в первый раздел посредством сети Интернет.
[0058] На шаге S103 новое микропрограммное обеспечение первой микросхемы копируют из первого раздела в рабочую область в первой микросхеме.
[0059] В варианте осуществления настоящего изобретения рабочая область в первой микросхеме может быть определена в соответствии с типом микропрограммного обеспечения.
[0060] В данном варианте осуществления настоящего изобретения сначала определяют, что необходимо обновить микропрограммное обеспечение первой микросхемы, что позволяет избежать конфликтов вследствие одновременного обновления микропрограммного обеспечения у нескольких микросхем и благодаря чему повышается безопасность обновления микропрограммного обеспечения. Путем загрузки нового микропрограммного обеспечения первой микросхемы в первый раздел флэш-памяти во второй микросхеме и копирования нового микропрограммного обеспечения первой микросхемы из первого раздела в рабочую область в первой микросхеме, микропрограммное обеспечение первой микросхемы может быть заменено на новое микропрограммное обеспечение посредством использования флэш-памяти во второй микросхеме, что позволяет исключить необходимость применения дополнительной логики управления в процессе обновления и обеспечить экономию ресурсов интеллектуального устройства.
[0061] В варианте осуществления настоящего изобретения способ обновления микропрограммного обеспечения может также включать следующее.
[0062] Когда определено, что микропрограммному обеспечению второй микросхемы требуется обновление, новое микропрограммное обеспечение второй микросхемы загружают в первый раздел.
[0063] Затем активируют первый раздел, который становится новым вторым разделом для хранения надлежащего микропрограммного обеспечения второй микросхемы.
[0064] А после исходный второй раздел назначают новым первым разделом для загрузки микропрограммного обеспечения второй микросхемы.
[0065] В варианте осуществления настоящего изобретения шаг S101 также может включать следующее.
[0066] Получение информации о разделах второй микросхемы.
[0067] Идентификацию первого раздела флэш-памяти во второй микросхеме для загрузки микропрограммного обеспечения второй микросхемы, в соответствии с информацией о разделах.
[0068] В варианте осуществления настоящего изобретения способ обновления микропрограммного обеспечения также может включать следующее.
[0069] Проверку нового микропрограммного обеспечения первой микросхемы после его загрузки в первый раздел.
[0070] За подробной информацией об обновлении микропрограммного обеспечения в интеллектуальном устройстве можно обратиться также к вариантам осуществления настоящего изобретения, описанным в настоящем описании ниже.
[0071] Таким образом, рассмотренный выше способ, предложенный в вариантах осуществления настоящего изобретения, позволяет исключить конфликты, вызванные одновременным обновлением микропрограммного обеспечения у нескольких микросхем, что позволяет повысить безопасность обновления микропрограммного обеспечения, исключить необходимость применения дополнительной логики управления в процессе обновления и обеспечить сбережение ресурсов интеллектуального устройства.
[0072] Ниже будут более подробно описаны технические решения, предложенные в вариантах осуществления настоящего изобретения.
[0073] Фиг. 2 представляет собой блок-схему алгоритма, иллюстрирующую способ обновления микропрограммного обеспечения в соответствии с первым примером осуществления настоящего изобретения. В данном варианте осуществления настоящего изобретения применяют описанные выше способы, предложенные в вариантах осуществления настоящего изобретения, при этом второй микросхемой является микросхема MCU, и данный вариант осуществления настоящего изобретения проиллюстрирован на примере обновления микропрограммного обеспечения в микросхеме MCU. В соответствии с иллюстрацией на фиг. 2 способ включает следующее.
[0074] На шаге S201, когда определено, что микропрограммному обеспечению второй микросхемы требуется обновление, получают информацию о разделах второй микросхемы.
[0075] В варианте осуществления настоящего изобретения, аналогично описанию рассмотренного выше шага S101, определение того, что микропрограммному обеспечению микросхемы MCU требуется обновление, может выполняться путем дистанционного управления или путем нажатия кнопки на интеллектуальном устройстве. Информация о разделах второй микросхемы указывает адреса, по которым расположены первый раздел и второй раздел флэш-памяти.
[0076] На шаге S202 идентифицируют первый раздел флэш-памяти во второй микросхеме для загрузки микропрограммного обеспечения второй микросхемы, в соответствии с информацией о разделах.
[0077] В варианте осуществления настоящего изобретения, например, первым разделом может быть резервный раздел флэш-памяти.
[0078] На шаге S203 проверяют новое микропрограммное обеспечение первой микросхемы после его загрузки в первый раздел.
[0079] В варианте осуществления настоящего изобретения проверка нового микропрограммного обеспечения первой микросхемы может выполняться посредством циклического избыточного кода (Cyclic Redundancy Check, CRC) или посредством информации о формате нового микропрограммного обеспечения. Посредством проверки нового микропрограммного обеспечения первой микросхемы можно гарантировать, что новое микропрограммное обеспечение будет корректным, что в свою очередь обеспечивает надежность обновления микропрограммного обеспечения.
[0080] На шаге S204 новое микропрограммное обеспечение второй микросхемы загружают в первый раздел.
[0081] На шаге S205 активируют первый раздел, который становится новым вторым разделом для хранения надлежащего микропрограммного обеспечения второй микросхемы.
[0082] В варианте осуществления настоящего изобретения, например, вторым разделом может быть активный раздел флэш-памяти, предназначенный для хранения надлежащего микропрограммного обеспечения микросхемы MCU.
[0083] На шаге S206 исходный второй раздел назначают новым первым разделом для загрузки микропрограммного обеспечения второй микросхемы.
[0084] Данный вариант осуществления изобретения проиллюстрирован на примере, в котором второй микросхемой является микросхема MCU и в котором, путем загрузки микропрограммного обеспечения, необходимого для обновления микросхемы MCU, в резервный раздел, путем назначения этого резервного раздела активным разделом и путем назначения исходного второго раздела, в котором находится исходное надлежащее микропрограммное обеспечение, новым резервным разделом может быть реализовано обновление микропрограммного обеспечения микросхемы MCU без задействования дополнительных ресурсов интеллектуального устройства, что исключает необходимость применения дополнительной логики управления и обеспечивает сбережение ресурсов интеллектуального устройства.
[0085] Фиг. 3 представляет собой блок-схему алгоритма, иллюстрирующую способ обновления микропрограммного обеспечения в соответствии со вторым примером осуществления настоящего изобретения. В данном варианте осуществления настоящего изобретения применяют рассмотренные выше способы, предложенные в описанных ранее вариантах осуществления настоящего изобретения, и при этом данный вариант осуществления настоящего изобретения проиллюстрирован на примере, в котором сначала выполняют обновление микропрограммного обеспечения микросхемы MCU интеллектуального устройства, перед обновлением микропрограммного обеспечения микросхемы, не являющейся MCU (например, микросхемы WIFI, микросхемы Bluetooth и т.п.). В соответствии с иллюстрацией на фиг. 3 способ включает следующее.
[0086] На шаге S301, когда определено, что микропрограммному обеспечению второй микросхемы требуется обновление, получают информацию о разделах второй микросхемы.
[0087] В варианте осуществления настоящего изобретения, аналогично описанию рассмотренного выше шага S101, определение того, что микропрограммному обеспечению микросхемы MCU требуется обновление, может выполняться путем дистанционного управления или путем нажатия кнопки на интеллектуальном устройстве. Информация о разделах второй микросхемы указывает адреса, по которым располагаются первый раздел и второй раздел флэш-памяти.
[0088] На шаге S302 идентифицируют первый раздел флэш-памяти во второй микросхеме для загрузки микропрограммного обеспечения второй микросхемы, в соответствии с информацией о разделах.
[0089] На шаге S303 новое микропрограммное обеспечение второй микросхемы загружают в первый раздел.
[0090] На шаге S304 проверяют новое микропрограммное обеспечение второй микросхемы после его загрузки в первый раздел.
[0091] На шаге S305 активируют первый раздел, который становится новым вторым разделом для хранения надлежащего микропрограммного обеспечения второй микросхемы.
[0092] На шаге S306 исходный второй раздел назначают новым первым разделом для загрузки микропрограммного обеспечения второй микросхемы.
[0093] За описанием шагов S301-S306 можно обратиться, соответственно, к описанию шагов S201-S206, при этом их подробное описание не приводится в настоящем документе.
[0094] На шаге S307, когда определено, что микропрограммному обеспечению первой микросхемы требуется обновление, новое микропрограммное обеспечение первой микросхемы загружают в первый раздел.
[0095] В варианте осуществления настоящего изобретения, например, первой микросхемой является микросхема WIFI, при этом первым разделом флэш-памяти в микросхеме MCU является исходный раздел флэш-памяти, который назначается резервным разделом после шага S305.
[0096] На шаге S308 новое микропрограммное обеспечение первой микросхемы копируют из первого раздела в рабочую область в первой микросхеме.
[0097] Данный вариант осуществления изобретения проиллюстрирован на примере, в котором обновляют микропрограммное обеспечение первой микросхемы и микропрограммное обеспечение второй микросхемы и в котором, путем загрузки микропрограммного обеспечения, необходимого для обновления микросхемы MCU, в резервный раздел, путем назначения этого резервного раздела активным разделом и путем назначения исходного второго раздела, в котором находится исходное надлежащее микропрограммное обеспечение, новым резервным разделом, путем загрузки микропрограммного обеспечения, необходимого для обновления микросхемы WIFI, в резервный раздел, и путем копирования микропрограммного обеспечения, необходимого для обновления микросхемы WIFI, в рабочую область в микросхеме WIFI, может быть исключен конфликт, вызванный одновременным обновлением микропрограммного обеспечения микросхемы MCU и микросхемы WIFI, благодаря чему повышается безопасность обновления микропрограммного обеспечения микросхемы MCU и микросхемы WIFI. Также, путем загрузки нового микропрограммного обеспечения микросхемы WIFI в первый раздел флэш-памяти в микросхеме MCU и копирования нового микропрограммного обеспечения микросхемы WIFI из резервного раздела в рабочую область в микросхеме WIFI, микропрограммное обеспечение микросхемы WIFI может быть заменено на новое микропрограммное обеспечение посредством использования флэш-памяти в микросхеме MCU, что позволяет исключить необходимость применения дополнительной логики управления в процессе обновления и обеспечить экономию ресурсов интеллектуального устройства. Альтернативно, микросхема WIFI может быть микросхемой Bluetooth. Процесс обновления микропрограммного обеспечения микросхемы Bluetooth может соответствовать приведенному выше описанию, при этом подробная информация о нем в настоящем документе не приводится.
[0098] На примере фиг. 4А-4Е проиллюстрирован пример процесса обновления микропрограммного обеспечения в соответствии с настоящим изобретением. Данный вариант осуществления настоящего изобретения проиллюстрирован на примере, в котором первой микросхемой является микросхема WIFI, а второй микросхемой может быть микросхема MCU. Специалисты в данной области техники должны понимать, что для микросхемы, имеющей флэш-память и установленной в интеллектуальном устройстве, любое техническое решение для обновления иного микропрограммного обеспечения, которому требуется обновление, с использованием других разделов флэш-памяти, может пониматься как техническое решение, соответствующее настоящему изобретению.
[0099] Если требуется обновить микропрограммное обеспечение двух или более микросхем, микропрограммное обеспечение микросхем в интеллектуальном устройстве может быть обновлено рассмотренным выше способом обновления микропрограммного обеспечения согласно последовательности инструкций, принятых интеллектуальным устройством, например, следующим образом.
[00100] В соответствии с иллюстрацией на фиг. 4А интеллектуальное устройство 40 включает микросхему 41 MCU и микросхему 42 WIFI. Флэш-память в микросхеме 41 MCU включает первый раздел 411 и второй раздел 412, при этом первый раздел 411 сконфигурирован для загрузки нового микропрограммного обеспечения микросхемы 41 MCU, а второй раздел 412 сконфигурирован для хранения надлежащего микропрограммного обеспечения микросхемы 41 MCU. Образно выражаясь, первый раздел 411 может быть назван резервным разделом флэш-памяти в микросхеме MCU, а второй раздел 412 может быть назван активным разделом флэш-памяти в микросхеме MCU.
[00101] В варианте осуществления настоящего изобретения обновления требуют, одновременно, микропрограммное обеспечение микросхемы 41 MCU и микросхемы 42 WIFI. В соответствии с иллюстрацией на фиг. 4 В интеллектуальное устройство может удаленно выполнять загрузку нового микропрограммного обеспечения микросхемы 41 MCU в первый раздел 411. В соответствии с иллюстрацией на фиг. 4С может выполняться проверка нового микропрограммного обеспечения микросхемы 41 MCU, и затем, когда проверено, что новое микропрограммное обеспечение микросхемы 41 MCU является корректным, первый раздел 411, в котором находится новое микропрограммное обеспечение микросхемы 41 MCU, активируют, и он становится активным разделом, а исходный второй раздел 412, в котором находится исходное надлежащее микропрограммное обеспечение микросхемы 41 MCU, назначают новым первым разделом (т.е. резервным разделом).
[00102] В соответствии с иллюстрацией на фиг. 4D интеллектуальное устройство может удаленно выполнять загрузку нового микропрограммного обеспечения микросхемы 42 WIFI в новый первый раздел микросхемы 41 MCU. В соответствии с иллюстрацией на фиг. 4Е, после проверки нового микропрограммного обеспечения микросхемы 42 WIFI новое микропрограммное обеспечение микросхемы 42 WIFI копируют в микросхему 42 WIFI и перезаписывают исходное надлежащее микропрограммное обеспечение микросхемы 42 WIFI, а затем, после перезапуска интеллектуального устройства, обновление микропрограммного обеспечения интеллектуального устройства завершается.
[00103] Приведенное выше описание позволяет получить ясное понимание процесса обновления микропрограммного обеспечения в соответствии с вариантами осуществления настоящего изобретения. Нужно понимать, что рассмотренный выше процесс является исключительно иллюстративным и пояснительным и не ограничивает объем настоящего изобретения.
[00104] Фиг. 5 представляет собой блок-схему, иллюстрирующую устройство для обновления микропрограммного обеспечения в соответствии с примером осуществления настоящего изобретения. В соответствии с иллюстрацией на фиг. 5 устройство для обновления микропрограммного обеспечения включает:
[00105] модуль 51 идентификации, сконфигурированный, когда определено, что микропрограммному обеспечению первой микросхемы требуется обновление, для идентификации первого раздела флэш-памяти во второй микросхеме для загрузки микропрограммного обеспечения второй микросхемы;
[00106] первый модуль 52 загрузки, сконфигурированный для загрузки нового микропрограммного обеспечения первой микросхемы в первый раздел, идентифицированный модулем 51 идентификации; и
[00107] модуль 53 копирования, сконфигурированный для копирования нового микропрограммного обеспечения первой микросхемы, загруженного первым модулем 52 загрузки, из первого раздела в рабочую область в первой микросхеме.
[00108] В соответствии с иллюстрацией на фиг. 6 устройство может также включать:
[00109] второй модуль 54 загрузки, сконфигурированный, когда определено, что микропрограммному обеспечению второй микросхемы требуется обновление, для загрузки нового микропрограммного обеспечения второй микросхемы в первый раздел, идентифицированный модулем 51 идентификации;
[00110] модуль 55 активации, сконфигурированный, после загрузки нового микропрограммного обеспечения второй микросхемы вторым модулем 54 загрузки в первый раздел, для активации первого раздела, который становится новым вторым разделом для хранения надлежащего микропрограммного обеспечения второй микросхемы; и
[00111] модуль 56 назначения, сконфигурированный после активации, модулем 55 активации первого раздела, который становится вторым разделом, для назначения исходного второго раздела новым первым разделом для загрузки микропрограммного обеспечения второй микросхемы, так что, когда необходимо обновить микропрограммное обеспечение первой микросхемы, первый раздел флэш-памяти во второй микросхеме может быть идентифицирован, модулем 51 идентификации, для загрузки микропрограммного обеспечения второй микросхемы.
[00112] В варианте осуществления настоящего изобретения модуль 51 идентификации включает:
[00113] подмодуль 511 получения, сконфигурированный для получения информации о разделах второй микросхемы; и
[00114] подмодуль 512 идентификации, сконфигурированный для идентификации первого раздела флэш-памяти во второй микросхеме для загрузки микропрограммного обеспечения второй микросхемы, в соответствии с информацией о разделах, полученной подмодулем 511 получения.
[00115] В варианте осуществления настоящего изобретения устройство также может включать:
[00116] модуль 57 проверки, сконфигурированный, после загрузки нового микропрограммного обеспечения первой микросхемы, первым модулем 52 загрузки в первый раздел, для проверки нового микропрограммного обеспечения первой микросхемы.
[00117] В отношении устройств, предложенных в рассмотренных выше вариантах осуществления настоящего изобретения, конкретные методы выполнения операций для индивидуальных модулей из состава устройств были подробно описаны в вариантах осуществления настоящего изобретения, относящихся к способам, и не будут приводиться повторно.
[00118] Фиг. 7 представляет собой блок-схему, иллюстрирующую устройство, которое может быть приспособлено для обновления микропрограммного обеспечения в соответствии с примером осуществления настоящего изобретения. Например, устройство 700 может представлять собой мобильный телефон, компьютер, терминал цифрового вещания, устройство обмена сообщениями, игровую приставку, планшетный компьютер, медицинское устройство, тренажерное оборудование, карманный персональный компьютер и т.п.
[00119] В соответствии с иллюстрацией на фиг. 7, устройство 700 может включать один или более следующих компонентов: процессорный блок 702, память 704, блок 706 электропитания, мультимедийный блок 708, аудиоблок 710, интерфейс 712 ввода-вывода (input/output, I/O), измерительный блок 714 и блок 716 связи.
[00120] Процессорный блок 702, как правило, осуществляет общее управление функционированием устройства 700, например операциями, связанными с отображением информации, телефонными вызовами, обменом данными, работой с камерой и операциями записи. Процессорный блок 702 может включать один или более процессоров 720, выполняющих инструкции с целью реализации всех шагов описанных выше способов или части этих шагов. Также процессорный блок 702 может включать один или более модулей, обеспечивающих взаимодействие между процессорным блоком 702 и другими блоками. Например, процессорный блок 702 может включать мультимедийный модуль, обеспечивающий взаимодействие между мультимедийным блоком 708 и процессорным блоком 702.
[00121] Память 704 сконфигурирована для хранения различных типов данных с целью поддержки функционирования устройства 700. Примерами подобных данных могут служить инструкции любых приложений или способов, выполняемых на устройстве 700, контактные данные, данные телефонной книги, сообщения, изображения, видеоданные и т.п. Память 704 может быть реализована с использованием энергозависимых или энергонезависимых запоминающих устройств любого типа, а также их комбинаций, например статической памяти с произвольным доступом (static random access memory, SRAM), электрически перепрограммируемого постоянного запоминающего устройства (erasable programmable read-only memory, EPROM), однократно программируемого постоянного запоминающего устройства (programmable read-only memory, PROM), постоянной памяти, магнитной памяти, флэш-памяти, магнитного или оптического диска.
[00122] Блок 706 электропитания обеспечивает электропитанием различные блоки устройства 700. Блок 706 электропитания может включать систему управления электропитанием, один или более источников питания, а также любые другие компоненты, связанные с генерацией, управлением и распределением электрической энергии в устройстве 700.
[00123] Мультимедийный блок 708 включает экран, который обеспечивает интерфейс вывода между устройством 700 и пользователем. В некоторых вариантах осуществления настоящего изобретения экран может включать дисплей на жидких кристаллах (liquid crystal display, LCD) и сенсорную панель (touch panel, TP). Если экран включает сенсорную панель, то в этом случае экран может быть реализован как сенсорный экран, принимающий сигналы ввода от пользователя. Сенсорная панель включает один или более датчиков касания, предназначенных для обнаружения касаний, скольжений и других прикосновений к сенсорной панели. Датчики касания могут не только обнаруживать границы операций касания или скольжения, но также измерять период времени и величину давления, связанные с этими операциями. В некоторых вариантах осуществления настоящего изобретения мультимедийный блок 708 включает фронтальную камеру и/или тыловую камеру. Фронтальная камера и/или тыловая камера могут принимать внешние мультимедийные данные, когда устройство 700 находится в определенном режиме работы, например в режиме фотографирования или в режиме видеосъемки. Как фронтальная камера, так и тыловая камера могут представлять собой фиксированные системы оптических линз или иметь функцию фокусировки и оптического увеличения.
[00124] Аудиоблок 710 сконфигурирован для вывода и/или ввода аудиосигналов. Например, аудиоблок 710 включает микрофон (MIC), сконфигурированный для приема внешнего аудиосигнала, когда устройство 700 находится в определенном режиме работы, например в режиме вызова, в режиме записи или в режиме распознавания голоса. Принятые аудиосигналы могут затем быть сохранены в памяти 704 или переданы посредством блока 716 связи. В некоторых вариантах осуществления настоящего изобретения аудиоблок 710 включает также громкоговоритель для вывода аудиосигналов.
[00125] Интерфейс 712 ввода/вывода обеспечивает интерфейс между процессорным блоком 702 и модулями периферийных интерфейсов, например клавиатурой, поворотным-нажимным переключателем («колесо»), кнопкой и т.п. Кнопки могут включать, без ограничения перечисленным, кнопку домашней страницы, кнопку громкости, кнопку «пуск» или кнопку блокировки.
[00126] Измерительный блок 714 включает один или более датчиков, обеспечивающих оценку состояния различных элементов устройства 700. Например, измерительный блок 714 может обнаруживать состояние «открыто» или «закрыто» устройства 700, относительное расположение компонентов, например, дисплея и клавиатуры устройства 700, изменение положения устройства 700 или одного из компонентов устройства 700, присутствие или отсутствие контакта пользователя с устройством 700, ориентацию или ускорение/замедление устройства 700 и изменение температуры устройства 700. Измерительный блок 714 может включать датчик близости, сконфигурированный для обнаружения присутствия приближенных объектов без физического контакта с ними. Измерительный блок 714 может также включать светочувствительный датчик, например датчик изображений CMOS или CCD, для использования в приложениях формирования изображения. В некоторых вариантах осуществления настоящего изобретения измерительный блок 714 может также включать акселерометр, гироскоп, магнетометр, датчик давления или датчик температуры.
[00127] Блок 716 связи сконфигурирован для обеспечения связи, проводной или беспроводной, между устройством 700 и другими устройствами. Устройство 700 может осуществлять доступ к беспроводной сети по таким стандартам связи, как WiFi, 2G или 3G, или их комбинации. В примере осуществления настоящего изобретения блок 716 связи принимает широковещательный сигнал или соответствующую широковещательную информацию от внешней широковещательной системы управления по широковещательному каналу. В примере осуществления настоящего изобретения блок 716 связи включает также модуль ближней бесконтактной связи (near field communication, NFC) для обеспечения связи в ближней зоне. Например, NFC-модуль может быть реализован по технологии радиочастотной идентификации (radio frequency identification, RFID), технологии ассоциации передачи данных в инфракрасном диапазоне (infrared data association, IrDA), технологии сверхширокой полосы пропускания (ultra-wideband, UWB), технологии Bluetooth (ВТ) или других технологий.
[00128] В примерах осуществления настоящего изобретения устройство 700 может быть реализовано с использованием одной или более заказных интегральных схем (ASIC), цифровых сигнальных процессоров (DSP), цифровых устройств обработки сигналов (digital signal processing devices, DSPD), программируемых логических устройств (programmable logic devices, PLD), программируемых логических интегральных схем (field programmable gate arrays, FPGA), процессоров, контроллеров, микроконтроллеров, микропроцессоров или других электронных блоков, предназначенных для реализации описанных выше способов.
[00129] В примерах осуществления настоящего изобретения предложен также машиночитаемый носитель для хранения данных, включающий инструкции, например, содержащиеся в памяти 704 и выполняемые процессором 720 в устройстве 700 с целью реализации описанных выше способов. К примеру, машиночитаемый носитель для хранения данных может представлять собой постоянную память, память с произвольным доступом (random access memory, RAM), CD-ROM, магнитную ленту, гибкий диск, оптическое запоминающее устройство для хранения данных и т.п.
[00130] После изучения настоящего описания или после реализации вариантов осуществления изобретения, изложенных в данном документе, специалистами в данной области техники могут быть без труда найдены другие аспекты реализации настоящего изобретения. Настоящее изобретение охватывает все варианты, применения и адаптивные изменения настоящего изобретения, если такие варианты, применения и адаптивные изменения следуют общему замыслу настоящего изобретения и включают общеизвестные принципы или элементы существующего уровня техники, которые относятся к области техники, не описанной в настоящем изобретении. Описание и варианты осуществления настоящего изобретения являются исключительно иллюстративными, при этом реальный объем и сущность настоящего изобретения заданы приведенной ниже формулой изобретения.
[00131] Необходимо понимать, что настоящее изобретение не ограничено конкретными конструкциями, описанными выше и проиллюстрированными на приложенных чертежах, и допускает модификацию и изменения в пределах своей сущности и объема. Объем настоящего изобретения задан исключительно приложенной формулой изобретения.