Embedded Firmware Definition
This MotoHawk™ block defines an Embedded Firmware instance.
Block ID
Embedded Firmware Defn
Library
motohawk_EmbeddedFirmware_lib
MotoHawk_lib/Device Specific/Embedded Firmware Blocks
Description

This block is used to define Embedded Firmware attributes. These attributes are used for identification and for validity checks that determine whethere the executable is appropriate for use with this resource. Select an Embedded Firmware resource and provide a name that accessor blocks will use to reference this instance.
Selectable Embedded Firmware resources will only exist on a target module that supports Embedded ASIC type devices that have their firmware programmed by the main MCU. A target module may incorporate Embedded Firmware that is not exposed to this blockset. Typically such firmware is incorporated directly into the module and doesn't require attribute definition.
The Embedded Firmware executable will be merged into the main module executable at the MCU Address
Accessor and utility blocks are:
Block Mask Attributes
Max Meta Data Version
The embedded firmware functionality requires Meta Data to be embedded within the firmware's executable. Extensibility requires this be version controlled. This attribute represents the maximum version that this version of MotoHawk™ understands. An Embedded Firmware executable that was built to use a newer version of Meta Data definition (exceeds this value) won't be understood by MotoHawk and will be ignored.
This attribute is a configuration setting selected by the resource.
MCU Address
This is the physical Base MCU Address where the Embedded Firmware executable is to be stored. The merged embedded executable must associate its physical address of 0x0000 with this value. This attribute is a configuration setting selected by the resource.
This attribute is a configuration setting selected by the resource.
Bytes Reserved
Represents how bytes have been reserved to accomodate storing the Embedded Firmware executable within the MCU memory.
This attribute is a configuration setting selected by the resource.
Block Parameters
| Parameter Field | Values | Comments/Description |
|---|---|---|
| Name | Alpha-numeric text, single-quote enclosed | Name of the Embedded Firmware instance. Should be unique and C-legal (no special characters such as spaces, dashes or commas, but underscore allowed). Accessor blocks will reference this name in order to associate an access with this definition instance. |
| Resource | Drop-down list | List of supported resources; options are dependent upon the selected resource. |
| Signature | Integer (0..65535) | The value of the signature that has been embedded within the Embedded Firmware defined here. This value would be declared within the executable and referenced by the meta data pointer array that would also be declared within the executable. It is one mechanism used to identify whether the embedded executable is intended for use with this resource. MotoHawk™ will query the embedded executable for this signature and will prevent programming if they are not equal. A non-matching signature would be reported via the Embedded Firmware Status block provided the executable is otherwise considered legal. |
| HW Major | Integer (0..255) | Represents the major version of the Embedded Hardware that this firmware is destined for. This value would be declared within the executable and referenced by the meta data pointer array that would also be declared within the executable. MotoHawk™ will query the embedded executable for this value. The Compatibility field will define whether this value is considered before allowing the Embedded Hardware to be programmed with the firmware represented by this definition. |
| HW Minor | Integer (0..255) | Represents the accepted minor version of the embedded firmware that this application will accept. Use a value of 255 to have MotoHawk™ ignore this attribute. MotoHawk™ will query the embedded executable for this value provided it is not to ignore it. The Compatibility field will then define whether this value is considered before allowing the Embedded Hardware to be programmed with the firmware represented by this definition. |
| Compatibility | Drop-down list |
Defines how the HW Major and HW Minor are to be treated. None ignores the HW Major and HW Minor attributes. Exact Match requires the HW Major and HW Minor values to match the values embedded within the executable. An embedded minor value of 255 is always considered a match. Match or Newer requires the HW Major value to match the embedded value and the HW Minor value must be smaller or the same as the embedded value. The minor is also said to match if either the embedded value or specified HW Minor value is 255. Match or Older requires the HW Major value to match the embedded value and the HW Minor value must be larger or the same as the embedded value. The minor is also said to match if either the embedded value or specified HW Minor value is 255. |
| Use Referenced Definition | Checkbox | Check if the embedded firmware associated with this resource is to use the same executable specified by another Embedded Firmware Definition instance. |
| Reference Name | Alpha-numeric text, single-quote enclosed | Name of another Embedded Firmware Definition instance that is to be associated with this resource. Only applicable when Use Referenced Definition is checked. |
| Path to the Embedded Firmware Image (srec) | Alpha-numeric text, single-quote enclosed | Filesystem Path to a memory image representing this Embedded Firmware. If a path is provided, the model build will include the image within the final application image. Only applicable when Use Referenced Definition is unchecked. |
