Shared Memory Architecture Autoupdater

US2017010896A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2017010896-A1
Application numberUS-201514791612-A
CountryUS
Kind codeA1
Filing dateJul 6, 2015
Priority dateJul 6, 2015
Publication dateJan 12, 2017
Grant date

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A method of updating a bootloader includes a slave controller that includes a central processing unit in communication with non-volatile memory having a shared memory architecture. The shared memory architecture including a non-volatile application memory block having application code and a non-volatile launcher memory block having bootloader code for initiating the slave controller. The method including a step of storing updated code to an application memory block of the non-volatile memory. The updated code includes a first code section having application code for application functions, a second code section having updated bootupdater code, and a third code section having image code for an updated bootloader. Slave controller receives indication to update the bootloader code stored in the non-volatile launcher memory block and then executes the bootupdater stored in the application memory block to update the bootloader stored in the launcher memory block from the image code for an updated bootloader.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method of updating a bootloader in a slave controller, the slave controller including a central processing unit in communication with non-volatile memory having a shared memory architecture, the shared memory architecture including a non-volatile application memory block having application code and a non-volatile launcher memory block having bootloader code for initiating the slave controller: storing updated code to an application memory block of the non-volatile memory, the updated code including a first code section including application code for application functions, a second code section including updated bootupdater code, and a third code section having image code for an updated bootloader; receiving an indication to update the bootloader code stored in the non-volatile launcher memory block; and executing the bootupdater stored in the application memory block to update the bootloader stored in launcher memory block from the image code for an updated bootloader. 2 . The method of claim 1 further comprising storing shared code for at least one shared function to a shared memory block of the non-volatile memory. 3 . The method of claim 1 wherein the indication to update the bootloader code occurs at startup when having the image for updated bootloader code stored in the application memory block is newer than the bootloader code stored in the launcher memory block. 4 . The method of claim 1 wherein the indication to update the bootloader code occurs when the slave controller receives a command to update the bootloader stored in launcher memory block. 5 . The method of claim 4 wherein the slave controller is in communication with a master controller. 6 . The method of claim 4 wherein the launcher memory block also includes code operable to call shared functions, to call launcher proprietary functions, and to call application callback functions. 7 . The method of claim 5 wherein the slave controller is a component of a battery management system (BMS) that includes the master controller, the slave controller having applications for measuring current flow and voltages for a vehicle battery, including HV batteries. 8 . The method of claim 5 wherein the slave controller is a body control module is a module that controls a load selected from the group consisting of lights, wipers, motors, receivers, transmitters and combinations thereof. 9 . The method of claim 5 wherein the slave controller and the master controller are each independent microcontrollers that include a microprocessor. 10 . The method of claim 5 wherein at least one additional slave controller is in communication with the master controller. 11 . A control system having a shared memory architecture, the control system comprising: a master controller having a first central processing unit and a first memory; a slave controller having a second central processing unit and a second memory, the slave controller in communication with the master controller, the second memory including non-volatile memory having: a launcher memory block having bootloader code encoded therein; a shared memory block having shared code encoded thereon; and an application memory block having a first code section having application code for application functions, a second code section having updated bootupdater code, and a third code section having image code for an updated bootloader, the second central processing unit configured to receive an indication to update the bootloader code stored in the launcher memory block and execute the bootupdater code stored in the application memory block to update to bootloader stored in the launcher memory block from the image code for an updated bootloader. 12 . The control system of claim 11 wherein the indication to update the bootloader code occurs at startup when having the image for updated bootloader code stored in the application memory block is newer than the bootloader code stored in the launcher memory block. 13 . The control system of claim 11 wherein the indication to update the bootloader code occurs when the slave controller receives a command to update the bootloader stored in launcher memory block. 14 . The control system of claim 11 wherein the launcher memory block also includes code operable to call shared functions, to call launcher proprietary functions, and to call application callback functions. 15 . The control system of claim 11 wherein the slave controller is a component of a battery management system (BMS) that includes the master controller, the slave controller having applications for measuring current flow and voltages for a vehicle battery, including a high voltage battery. 16 . The control system of claim 11 wherein the slave controller is a body control module is a module that controls a load selected from the group consisting of lights, wipers, motors, receivers, transmitters and combinations thereof. 17 . The control system of claim 11 wherein the slave controller and the master controller are each independent microcontrollers that include a microprocessor. 18 . The control system of claim 11 further comprising at least one additional slave controller in communication with the master controller.

Assignees

Inventors

Classifications

  • G06F9/4401Primary

    Bootstrapping (security arrangements therefor G06F21/57) · CPC title

  • G06F12/084Primary

    with a shared cache · CPC title

  • G06F8/654Primary

    using techniques specially adapted for alterable solid state memories, e.g. for EEPROM or flash memories · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US2017010896A1 cover?
A method of updating a bootloader includes a slave controller that includes a central processing unit in communication with non-volatile memory having a shared memory architecture. The shared memory architecture including a non-volatile application memory block having application code and a non-volatile launcher memory block having bootloader code for initiating the slave controller. The method…
Who is the assignee on this patent?
Lear Corp
What technology area does this patent fall under?
Primary CPC classification G06F9/4401. Mapped technology areas include Physics.
When was this patent published?
Publication date Thu Jan 12 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).