Target Definition Block

From NewEagleWiki
Jump to navigation Jump to search

Target Definition

A mandatory requirement in building a MotoHawk® code-generation model is to place a Target Definition block somewhere in the model. This is required in order to specify the type of ECU to be programmed, and predetermines the availability of appropriate parameters in certain blocks.


The Target Definition block is placed initially by default; it is good practice to select the required target ECU, as a first step, if different than the one initially displayed (double-click on a block to edit the parameters).

Target

This is a drop down list that shows all targets you are licensed to build for.

Memory Layout

This is either a "DEV", "PROD", or "DEV+PROD" build. This specifies whether the modules is a Calibration (DEV) or Production (PROD) module. Dev builds will take advantage of extra memory and live calibrations on the module, but can not be loading into a production module. The "DEV+PROD" will build both dev and prod .srz files, referencing the same dll, in a single build.

Stack and Heap Settings

The Stack and Heap settings define where the os allocates memory. The sum of stacks, heap, and application memory use must fit inside the module's ram size. If the stack or heap is too small the module may crash. The application monitor block can help track stack usage.

5xx Processors

The heap size must be a multiple of 2K, and must be at least 2K.

Typical settings are 3k Foreground stack, 2k background stack, 1k Idle stack, 1.5k Interrupt stack, and 4k Heap.

55xx Processors

The heap size does not have any restrictions but 4k works well.

Typical settings are 3k Foreground stack, 2k background stack, 1k Idle stack, 1.5k Interrupt stack, 1k Shutdown Stack, and 4k Heap.

S12(x) Processors

The heap size does not have any restrictions but should be at least 256 bytes.


Typical settings are 512 in each of the stacks and heap.

DLL and SRZ Name

The DLL Name and SRZ Name are optional. If unspecified, the model name is used for both fields. These fields must not contain the file extension (i.e. .dll or .srz). maximum SRZ name length is 50 characters, and maximum DLL name length is 13 characters.

Build Directory

The Build Directory is optional. If empty, the current directory will be used. If specified, it may be an absolute path, or be relative to the current model location by starting with "."

Floating Point Type

This selection means to define the maximum precision/range (either single or double) of any floating point data generated by the Real-time Wordkshop. This selection defines the maximum amount of precision a floating point atomic variable may have. For instance, if an atomic floating point variable has the type of 'double', and the Floating Point Type selection within the target block is set to 'single', the resultant type of the generated data will be 'single'.

The use of floating point should be done with care. Depending on the level of hardware support, floating point operation and calculation may be extremely costly in terms of execution bandwidth.