DDC 1553-67

A two- or four-channel card which provides Bus Controller (BC), Remote Terminal (RT), and Bus Monitor (BM) operating modes. The 106K board only supports BC ,RT or BM functionality on any single channel. On the 206K board, BC and Multi RT can be run on the same channel. Nevertheless, Bus Monitor must always run on a channel by itself. SimWB supports the exchange of messages on the 1553 bus via the Box Car approach. That is, the message’s transmission and reception requests occur at regular intervals that is specified when creating the message.

For two-channel cards, see Configuring 2-Channel Cards.

Reference Information

I/O Card Model Number

CS-DD-67106K-x.

I/O Driver Model Number

WCS-DD-67106K or WCS-DD-67206K .

I/O Module License:

ICS-SWB-1225.

ddc1553.png 

ddc155300025.png 

Buttons

Expand All

Expands the hierarchy tree showing board configuration.

Collapse All

Collapses the hierarchy tree showing the board configuration to show only the channel nodes.

New BC

Designates the selected channel as a bus controller.

New RT

Adds a remote terminal definition to the selected channel

new_rt.png

New BM

Designates the selected channel as a bus monitor.

new_bm.png

New Msg

Adds a message definition to the selected bus controller or bus monitor.

new_msg.png

New MB

Adds a mailbox definition to the selected remote terminal.

new_mb.png

New Field

Adds a field to the selected message or mailbox.

new_field.png

Delete

Deletes the selected node and everything, including mappings, below it. Channels cannot be deleted.

delete00030.png

Bus Controller

To define a channel as a bus controller, select the channel and click on the New BC button. Once a bus controller has been defined on a channel, you cannot add a remote terminal to that channel. Instead, you add message definitions to the bus controller.

Messages

new_msg.pngTo define a message for a bus controller, select the bus controller and click on the New Msg button. When a message is selected the following dialog appears below the mapping table:

ddc1553_msg.png 

Message Type

Selects the type of message. The message type appears in

BC to RT

Message sent from the bus controller to a mailbox of a remote terminal. The values sent to the remote terminal are defined by mapping output points to fields of this message.

BC to RT Async

Message sent from the bus controller to a mailbox of a remote terminal. The values sent to the remote terminal are defined by mapping output points to fields of this message.
The message is not scheduled as part of the 1553 synchronous frame. The message is sent to the remote terminal according to the following logic:

RT to BC

Message read from a mailbox of a remote terminal by the bus controller. The values read from the remote terminal can be accessed by mapping input points to fields of this message.

RT to BC Async

Message read from a mailbox of a remote terminal by the bus controller. The values read from the remote terminal can be accessed by mapping input points to fields of this message.
The message is only sent when the TXNow leaf is mapped and its value is not zero. The message cannot be sent when its content changes since this the message payload comes from the RT and its content is not known beforehand.

RT to RT

Message read from one mailbox of a remote terminal to another mailbox of the some or another terminal. Fields cannot be mapped to I/O points for this message type.

BC Mode Code

The message will be request for a specific mode code.


Src. Remote Terminal and Mailbox

Remote terminal and mailbox that RT to BC , RT to BC Async and RT to RT messages are read from.

Dest. Remote Terminal and Mailbox

Remote terminal and mailbox that BC to RT , BC to RT Async and RT to RT messages are written to.

Sched Rate (ms)

Rate at which messages are scheduled, expressed in milliseconds between transactions.

Message Length

Length of the message as a count of 16-bit words. The count must be between 1 and 32 16-bit words.

BC Mode Codes

1553 Mode codes can also be transmitted to the remote terminals. A mode code request targets a specific RT only and not an associated mailbox.
Mode code requests are added to the BC by adding a mode code message selected from the drop down message list.
The set of mode codes available in the 1553 protocol is limited. Additionally, some mode code commands either transfer or receive a data word. The list of mode codes is as follows:

Mode Code Mapping

When you add a Mode Code Message to the BC, the Control Center adds two mapping leaves under the mode code. Mode codes from 0x00 to 0x08 do not have associated data word and thus the second leave is not present for those mode code. Mode codes are asynchronous and thus can only be transmitted upon user request via the TXNow mapped leaf.

  • TXNow: This must be mapped to a RTDB variable for the mode code to be transmitted. The mode code will be sent when the value of the mapped variable is non zero. The variable will be reset to 0.
  • Mode Code Word: This variable contains the value of the data word to be sent/received when transmitting the mode code.

Remote Terminals

To define a remote terminal for a channel, select the channel and click on the New RT button. Once a remote terminal is defined, mailboxes can be defined for it. When a remote terminal is selected, the following dialog appears below the mapping table:

ddc1553_rt.png 

Remote Terminal Number

Defines the remote terminal number of this remote terminal. Two remote terminals on the same channel cannot have the same number.

Mailboxes

To define a mailbox for a remote terminal, select the remote terminal and click on the New MB button. Once a mailbox is defined, fields can be created for mapping points to the messages that are sent to or read from the mailbox. When a mailbox is selected, the following dialog appears below the mapping table:

ddc1553_mb.png 

Mailbox Number

Number of the mailbox. Each mailbox in a remote terminal must have a unique number between 0 and 31. Note that mailbox numbers 0 and 31 are reserved for mode codes.

Mailbox Length

Length of the mailbox as a count of 16-bit words. Each mailbox must be between 1 and 32 16-bit words in length.

Mailbox Mapping Fields

Note:  Each RT mailbox is divided into a receive (RX) and transmit (TX) areas. Both are independent of each other.
Data mapping fields defined under the RX area can be mapped to RTDB input items only. Conversely, TX data fields can only be mapped to RTDB output items. Depending on the type of the bus controller message, the RX and TX areas are used as follows:
  • BC2RT and BC2RT Async: The data sent by the BC will be available in destination RT/mailbox RX area.
  • RT2BCT and RT2BC Async: The data sent by the RT will come from the specified RT/mailbox TX area.
  • RT2RT: The data will be sent from the source RT TX area and be received in the target RT TX area.

RT Mode Codes

Mode code requests coming from the BC are targeted to a specific remote terminal. As mentioned in the BC section, depending on the mode code the request can be associated with the reception or transmission of a data word. The mode code received and the associated data word can be mapped to items in the RTDB.
To add a mode code to the RT, click on the new RT Mode Code button This button is enabled only when the RT Mode Code node under the Remote Terminal is selected. Select the specific mode code in the combo box in the Mapping Settings panel below. For mode code with associated data word, an additional node is created allowing the mapping of the word to an item in the RTDB.

RT Mode Code Mapping

Depending on the direction of the mode code, the data word will be either an input or an output variable. Mode codes (0x10, 0x13) that transmit the data word to the BC are created as output mapping. Mode codes (0x11, 0x14, 0x15) that receive a data word are created as input mapping.
The RT Mode Code mapping will contain the last mode code received from the BC.
Note that mode code 0x12 (Transmit Last Command) cannot be created since it cannot be overwritten by the SimWB I/O task as the RT always sends the last command received in the associated data word.

RT Status

Bit 0 to 10 , where 0 is the least significant bit of the RT status word can be specified by the user by mapping the RT Status Overwrite branch under the Remote Terminal. When not mapped, the RT status bits are defined by the default behavior of the RT.
Be aware that bits 11 to 15 cannot be overwritten as they represent the Terminal address bits. Refer to the table to the right for the description of the RT status bits.


 
 
 

RT Status read

The RT status bits can be accessed from the Bus Controller by referencing the internal variables
~SimWBStats.1553.bX.chY.BC.RTStatus.RTZ.statusWord where :

The RT status bit word reflects the latest message between the specified RT and the Bus Controller. The status is also available under specified BC messages and in this case reflects the RT status word corresponding to the specific message.


 

Mapping Data Fields

new_field.pngTo define a field in a message or mailbox, select the message or mailbox and click on the New Field button. When a field is selected, the following dialog appears below the mapping table:

ddc1553_field.png 

Raw Type

Specifies how to interpret the raw bits of the message field.

Packed

Integer bit field, specified with a byte offset to a 32-bit integer and a bit offset and size within that 32-bit field. Single bit fields are mapped to digital points, all others to analog points.

char

One-byte integer field, specified with a byte offset. Integer fields are mapped to analog points.

short

Two-byte integer field, specified with a byte offset. Integer fields are mapped to analog points.

int

Four-byte integer field, specified with a byte offset. Integer fields are mapped to analog points.

float

Four-byte floating point field, specified with a byte offset. Floating-point fields are mapped to analog points.

double

Eight-byte floating point field, specified with a byte offset. Floating-point fields are mapped to analog points.

Byte (offset)

Field’s offset in the message in bytes. For Packed, this is the offset of the 4-byte integer containing a bit field.

Bit (offset:size)

Bit offset and size of a Packed field within a 4-byte integer block. Bits are numbered from the high order bit of the 4-byte block. Which byte this bit is in is determined by the Big Endian setting. The offset is measured from the high order bit of the block to the high order bit of the field.

Big Endian

Interprets values as most significant byte first. This is the reverse of the default way data is handled on Intel x86 platforms.

Bus Monitor

To define a channel as a bus monitor, select the channel and click on the New BM button. Once a bus monitor has been defined on a channel, you cannot add a remote terminal or a BC to that channel. Instead, you add message definitions to the bus controller.

Messages

new_msg.pngTo define a message for a bus monitor, select the bus monitor and click on the New Msg button. When a message is selected the following dialog appears below the mapping table:

ddc1553_msg.png 

This dialog is similar to the one mentioned above in the BC configuration except that you cannot define the scheduling period or the message length. You can map any offset within the mailbox RT mailbox message. The maximum length of any DDC 1553 message is 32 16 bit words.

Mapping Table

Configuration Column

Configuration tree.

Mapped Point(s) Column

I/O point(s) a field is mapped to.

To map a field to a channel, select a field on the left side of the I/O Mappings form, then click on a check box for an I/O point on the right side of the form. See I/O Mappings... for details.

Configuring 2-Channel Cards

If you have two 2-channel cards, use the ddccm utility to configure the channel numbers as follows:

----------------------------------------------------------------------------
 Item  Dev   Device Name      Model   Ch   Location          Curr.   Rec.
        Num                                                   FW Rev. FW Rev.
----------------------------------------------------------------------------
 1     1  BU-67206BK2        2      1   138:00:00          10.4    10.4
 2     2  BU-67206BK2        2      2   138:00:00          10.4    10.4
 3
 4
 5     3  BU-67206BK2        2      1   139:00:00          10.4    10.4
 6     4  BU-67206BK2        2      2   139:00:00          10.4    10.4
 

Note:  Items 3 & 4 are blank. If you do not skip these two channels, you will most likely run into an error regarding an "Invalid parameter" and the I/O task will fail to run.

Synchronous I/O Task: ddc1553out

This process assembles all the 1553 output messages and places them into the DDC 1553 output FIFO queue. A request will be added to the queue if the output message buffer is unchanged since the last test cycle.

The FIFO queue is read by the ddc1553asyncio asynchronous task that writes them to the hardware board.

Asynchronous I/O Task: ddc1553asyncio

This process runs asynchronous to the simulation loop and handles both inputs from and outputs to the DDC 1553 boards. It acts as both a bus controller and a remote terminal when bus controllers and remote terminals have been configured for the device. This process is multithreaded.

There is a separate thread for each bus controller and remote terminal.

There is a single thread that processes all outputs to all DDC 1553 boards. The output thread polls the DDC 1553 output FIFO queue at a regular interval. The default interval is every 5 milliseconds and can be specified with the –t msec option in the options column of the I/O Tasks form.