Engee documentation

Bus Assignment

Assigns new values to the specified bus elements.

blockType: BusAssignment

Path in the library:

/Basic/Signal Routing/Bus Assignment

Description

The Bus Assignment block assigns the values of the input signals to the selected bus elements. Use the Bus Assignment block to change the values without removing the bus elements and reassemble the bus with the desired elements. The Bus Assignment block makes it easy to update the bus to reflect processing that occurs in a separate component, such as a subsystem or reference model.

The Bus Assignment block assigns the elements connected to its input assignment ports (:=) to the specified bus elements connected to its Bus input port. In doing so, the block replaces the elements previously assigned to those elements. The change does not affect the bus composition and only affects the element values. Non-exchangeable signals are not affected by the replacement of other elements.

The elements to which values are assigned may be scalars, vectors, arrays, or buses, including bus arrays, provided they are elements of the input bus. The new values must match the attributes of the input bus elements.

For more information on tyre types, see Custom tyre types.

Ports

Input

# Bus — input bus with elements for reassignment
bus

Details

The input bus may contain elements with real or complex values of any supported data type, including bus objects. A bus may also contain bus arrays.

Data types

Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool.

Complex numbers support

Yes

# := — new value to assign to the bus element
scalar | vector | matrix | array | bus

Details

Each element in the list of assignable elements receives an assignment port (:=). The port label indicates the bus element that corresponds to that port. For an element named signal1, the port label is := signal1.

Connect the signal to be assigned to the bus element to the corresponding assignment port (:=). The signal connected to the assignment port (:=) must have the same structure, data type and calculation step as the corresponding bus element.

Data types

Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool.

Complex numbers support

Yes

Output

# Bus — output bus
bus

Details

The output bus includes the assigned bus element values for the selected elements and the unchanged bus element values for the remaining elements.

Data types

Float16, Float32, Float64, Int8, Int16, Int32, Int64, UInt8, UInt16, UInt32, UInt64, Bool.

Complex numbers support

Yes

Parameters

Main

# AssignedSignals — bus elements to which the new values will be assigned
String

Details

For each element in this list, the block has an assignment port (:=). The port label contains the name of the corresponding element.

To add assignment ports (:=) for items, select one or more signals from the list. If multiple items are selected from the Elements on Bus list, the order in which they are selected determines the order in the Selected Signals list.

To change the order of the assignment ports (:=), select an element or multiple adjacent elements in the list, and then press the Up or Down button. When you change the order of the items, the port cohesion is preserved.

To delete assignment ports (:=), select the corresponding items in the list and then press the Delete button.

If an item in the list is not present on the input bus, its name begins with three question marks (????). Change the input bus so that an item with the specified name appears on the input bus, or delete the item from the list.

Default value

[signal1]

Program usage name

AssignedSignals

Tunable

No

Evaluatable

Yes