user manual um 10997 rev b - western av · uumm 1100999977 rreevv bb 7 1.3 system characteristics...
TRANSCRIPT
WESTERN AVIONICS
DUAL STANAG 3838/3910VME INTERFACE BOARD
P/N 1U10997G01 Rev A
User ManualUM 10997 Rev B
© Western Avionics Ltd.13/14 Shannon Free Zone
Co. ClareIreland
9 July 2002
UUUMMM 111000999999777 RRReeevvv BBB 2
1 GENERAL INFORMATION............................................................................................................................. 6
1.1 INTRODUCTION......................................................................................................................................... 61.2 MANUAL DESCRIPTION........................................................................................................................... 61.3 SYSTEM CHARACTERISTICS AND SPECIFICATIONS ........................................................................ 71.4 CAPABILITIES ............................................................................................................................................ 8
1.4.1 General .................................................................................................................................................. 81.4.2 Bus Controller (BC) Features (With MRT Simulation and Data Monitoring) ...................................... 81.4.3 Multiple Remote Terminal (MRT) Features........................................................................................... 91.4.4 Chronological Bus Monitor (CM) Features .......................................................................................... 9
1.5 VME-4220 ARCHITECTURE.................................................................................................................... 101.6 BUS COUPLING MATRIX........................................................................................................................ 111.7 PROTOCOL MANAGEMENT UNIT........................................................................................................ 111.8 3838 INTERFACE ...................................................................................................................................... 111.9 HS 3910 INTERFACE ................................................................................................................................ 111.10 STORAGE DATA....................................................................................................................................... 121.11 TOOLS AND TEST EQUIPMENT ............................................................................................................ 121.12 SAFETY PRECAUTIONS.......................................................................................................................... 12
2 INSTALLATION AND PREPARATION FOR USE..................................................................................... 15
2.1 GENERAL................................................................................................................................................... 152.2 INSTALLATION OF VME-4220 ............................................................................................................... 152.3 TURN ON ................................................................................................................................................... 152.4 SELFTEST .................................................................................................................................................. 152.5 SPECIFIC 3838/3910 INTERFACE FEATURES ...................................................................................... 16
2.5.1 Clock features ...................................................................................................................................... 162.5.2 IRIG-B Counter Features .................................................................................................................... 162.5.3 Trigger-In Features ............................................................................................................................. 162.5.4 Trigger Out Features........................................................................................................................... 16
2.6 VME INTERFACE ..................................................................................................................................... 172.6.1 Introduction ......................................................................................................................................... 172.6.2 Details.................................................................................................................................................. 172.6.3 Electrical Characteristics .................................................................................................................... 172.6.4 Capabilities.......................................................................................................................................... 18
2.7 3838 INTERFACE ...................................................................................................................................... 182.7.1 lntroduction ......................................................................................................................................... 182.7.2 Electrical Characteristics .................................................................................................................... 18
3 VME-4220 OPERATION ................................................................................................................................. 19
3.1 INTRODUCTION....................................................................................................................................... 193.2 CONVENTIONS......................................................................................................................................... 193.3 ORGANISATION DIAGRAM ................................................................................................................... 193.4 BASE REGISTERS..................................................................................................................................... 19
3.4.1 Base Register Names and Location ..................................................................................................... 213.4.2 Base Register Descriptions.................................................................................................................. 22
3.5 REMOTE TERMINAL SIMULATION TABLE........................................................................................ 323.5.1 Simulation Type Word ......................................................................................................................... 323.5.2 Status Word ......................................................................................................................................... 333.5.3 LS Last Command Word...................................................................................................................... 333.5.4 LS Bit Word ......................................................................................................................................... 333.5.5 HS Status Word.................................................................................................................................... 333.5.6 HS Last Action..................................................................................................................................... 333.5.7 HS Bit Word......................................................................................................................................... 33
UUUMMM 111000999999777 RRReeevvv BBB 3
4 BUS CONTROLLER MODE OF OPERATION ........................................................................................... 34
4.1 INTRODUCTION....................................................................................................................................... 344.2 MESSAGE DESCRIPTOR BLOCK (MDB) .............................................................................................. 35
4.2.1 Message Number (00H)....................................................................................................................... 354.2.2 LS Event Mask (02H)........................................................................................................................... 354.2.3 Message Type Word (04H) .................................................................................................................. 364.2.4 LS Message Error Phase Definition (06H).......................................................................................... 374.2.5 LS Message Error Description Word (08H) ........................................................................................ 374.2.6 Address in Look-Up Table (0AH) ........................................................................................................ 384.2.7 Command Word 1 (0CH)..................................................................................................................... 384.2.8 Command Word 2 (0EH) ..................................................................................................................... 384.2.9 Action Word 1 (10H) ........................................................................................................................... 384.2.10 Action Word 2 (12H) ........................................................................................................................... 384.2.11 Retry Subroutine Absolute Address (14H)........................................................................................... 384.2.12 HS Event Mask (16H) .......................................................................................................................... 394.2.13 Inter-message Gap Time (18H) ........................................................................................................... 394.2.14 HS RT-RT Inter-message Gap Time (lAH) .......................................................................................... 394.2.15 Status Word 1 (lCH) ............................................................................................................................ 394.2.16 Status Word 2 (lEH)............................................................................................................................. 39
4.3 DATA BUFFERS SIMULATION AND MONITORING .......................................................................... 404.3.1 Look-Up-Table .................................................................................................................................... 414.3.2 Data Descriptor Block......................................................................................................................... 414.3.3 Data Buffers......................................................................................................................................... 45
4.4 MODE COMMANDS................................................................................................................................. 464.5 INTERRUPT REQUESTS.......................................................................................................................... 47
4.5.1 Interrupt Coding.................................................................................................................................. 474.5.2 Set Message Interrupts ........................................................................................................................ 474.5.3 Message Status Report Queue ............................................................................................................. 48
5 MULTIPLE REMOTE TERMINAL MODE OF OPERATION ................................................................. 49
5.1 INTRODUCTION....................................................................................................................................... 495.2 LOOK-UP-TABLES ................................................................................................................................... 505.3 MODE COMMANDS SPECIFICATIONS................................................................................................. 505.4 DATA WORDS STORAGE ....................................................................................................................... 505.5 LS ERROR INJECTION DEFINITION ..................................................................................................... 50
5.5.1 Global RT Error Description Word (RT Simulation Table) ................................................................ 515.5.2 Message Error Injection Word (Look-up-Table) ................................................................................. 52
5.6 INTERRUPTS CODING ............................................................................................................................ 545.6.1 Low and High Priority Interrupts (two word code)............................................................................. 545.6.2 Message lnterrupts (or set of messages interrupt)............................................................................... 545.6.3 Status Report Queue (two words per report)....................................................................................... 54
5.7 SPECIFIC FUNCTIONS............................................................................................................................. 555.7.1 Data Message Reception ..................................................................................................................... 555.7.2 Reception of Mode Commands Data Words........................................................................................ 555.7.3 Mode Command "Synchronise with Data Word" ................................................................................ 555.7.4 Frequency Toggle................................................................................................................................ 555.7.5 Programmable HS RI / TI Time in DDB.............................................................................................. 55
UUUMMM 111000999999777 RRReeevvv BBB 4
6 CHRONOLOGICAL BUS MONITOR MODE OF OPERATION.............................................................. 56
6.1 INTRODUCTION....................................................................................................................................... 566.2 BASE REGISTERS..................................................................................................................................... 56
6.2.1 Control Register (Write) (00H)............................................................................................................ 576.2.2 Command Register (CR)...................................................................................................................... 576.2.3 Status Register (SR) ............................................................................................................................. 586.2.4 Transformer/Direct Coupling Select Register ..................................................................................... 586.2.5 HS Subaddress Register....................................................................................................................... 586.2.6 IRQ Selection Register (34H) .............................................................................................................. 586.2.7 Load Clock HI/LO Registers (+38H1 / +3AH) ................................................................................... 596.2.8 Current Address Register (CAR) (+42H) ............................................................................................ 596.2.9 Trigger Occurrence Register (TOR) (+44H)....................................................................................... 596.2.10 Trigger Set-up Pointer (TSP) (+46H) ................................................................................................. 59
6.3 DETAILED TRIGGER DESCRIPTION .................................................................................................... 606.4 STACK DATA FORMAT........................................................................................................................... 70
6.4.1 Previous Address Pointer .................................................................................................................... 706.4.2 Time Stamp HI/LO............................................................................................................................... 706.4.3 Data ..................................................................................................................................................... 706.4.4 Next Address Pointer ........................................................................................................................... 716.4.5 RT Response Time 1/2 ......................................................................................................................... 71
6.5 3910 DATA FORMAT ............................................................................................................................... 726.5.1 Flow Diagram ..................................................................................................................................... 72
UUUMMM 111000999999777 RRReeevvv BBB 5
List of Figures
Figure 1-1 VME-4220 Board Functional Block Diagram .................................................................................. 10Figure 1-2 Front Panel connectors & indicators diagram ................................................................................. 13Figure 1-3 Location of Address Switches and Linkers diagram........................................................................ 14Figure 2-1 VME Switches ..................................................................................................................................... 17Figure 3-1 Organisation Diagram........................................................................................................................ 20Figure 4-1 Bus Controller Organisation Diagram.............................................................................................. 34Figure 4-2 Data Buffers Simulation and Monitoring ......................................................................................... 40Figure 5-1 Multiple Remote Terminal Organisation Diagram.......................................................................... 49
List of Tables
Table 1-1 3838 Connector Pinouts (Pri & Sec, A & B)........................................................................................ 13Table 1-2 9 Way I/O Connector Pinouts (J5) ....................................................................................................... 13Table 3-1 Base Register Names and Locations..................................................................................................... 21Table 3-2 Command Register (CR)....................................................................................................................... 24Table 3-3 Status Register ....................................................................................................................................... 25Table 3-4 Remote Terminal Simulation Table ..................................................................................................... 32Table 4-1 Message Descriptor Block..................................................................................................................... 35Table 4-2 Data Descriptor Block........................................................................................................................... 41Table 4-3 Data Buffers ........................................................................................................................................... 46Table 6-1 Base Registers ........................................................................................................................................ 56Table 6-2 Command Registers............................................................................................................................... 57Table 6-3 Status Registers...................................................................................................................................... 58Table 6-4 Stack Data Format................................................................................................................................. 70Table 6-5 Stack Messages....................................................................................................................................... 72
UUUMMM 111000999999777 RRReeevvv BBB 6
1 GENERAL INFORMATION
1.1 INTRODUCTION
The VME-4220 Intelligent Interface Board is a VME card designed to meet the requirements of both STANAG 3838 andSTANAG 3910. The VME-4220 is a standard 6U size VME card allowing up to two independent 3838/3910 modules tobe used, in a variety of combinations, to provide up to two Bus Controller, Multi-Remote Terminal with Monitoringfunctions, or one Bus Controller, Multi-Remote Terminal, and Chronological Bus Monitors on a single VME card.
The VME-4220 provides a powerful and intelligent interface between VME based host equipment and the STANAG3838 / STANAG 3910 data buses, providing comprehensive test and simulation functions.
1.2 MANUAL DESCRIPTION
The following paragraphs provide a general description of the manual layout and content:
• Section 1 General Information - contains a brief description of the manual, and a general descriptionof VME-4220. This section also contains the architecture, protocol management, STANAG3838 interface information, STANAG 3910 interface information, instrumentspecifications, information concerning accessories, furnished items, and also safetyprecautions.
• Section 2 Installation and Preparation for Use - contains instructions on installation, preparation foruse, self-test and reset of VME-4220.
• Section 3 Operation - contains a functional description of VME-4220 and operating proceduresnecessary to run VME-4220.
• Section 4 Bus Controller Mode of Operation - contains information on the mode of operation forthe Bus Controller of VME-4220.
• Section 5 Multiple Remote Terminal Mode of Operation - contains information on the mode ofoperation for the Multiple Remote Terminals of VME-4220.
• Section 6 Chronological Bus Monitor Mode of Operation - contains information on the mode ofoperation for the Chronological Bus Monitor of VME-4220.
UUUMMM 111000999999777 RRReeevvv BBB 7
1.3 SYSTEM CHARACTERISTICS AND SPECIFICATIONSThe characteristics and specifications of VME-4220 are listed as follows:
• VME:
Memory mapped real-time VME interface.
VME Interface; Slave A32, D32, D16, D8, Block Transfers.
• BITE: 95% Confidence Level.
• Weight: 440 grams ( >1 lb.)
• Power + 5Vdc 1.45 A max.+12Vdc 250mA max.-12Vdc 50mA max.
• Temperature: Operating: 0°C to +50°CNon-operating: -20°C to +70°C
• Humidity: 0°C to +29°C: 95% RH 30°C to +40°C: 75% RH
• Front Panel 3838 Connectors Tri-axial type CBBJR79
• Front Panel 3910 Electrical Connectors Co-axial type CBBJR29
• Front Panel 3910 Optical Connectors Deutsch 454596 (N)
• Front Panel I/O Connector 9 way micro-miniature to MIL-C-83513/02-AN
• LED Indicators Power-on indicator (Green) PwrVME activity (Yellow) ActBIT-Bus A Fail (Red) FailBIT-Bus B Fail (Red) FailBUS-A Activity (Yellow) BusyBUS-B Activity (Yellow) BusyIRIG-B Lock, Bus A (Yellow) LockIRIG-B Lock, Bus B (Yellow) Lock
UUUMMM 111000999999777 RRReeevvv BBB 8
1.4 CAPABILITIESVME-4220 is capable of the following functions:
1.4.1 General• Memory mapped real-time VME access.
• Simultaneous control of up to two STANAG 3838 dual redundant buses.• Full STANAG 3910 control on one bus in BC, MRT or BC+MRT mode with
simultaneous STANAG 3910 bus monitoring on second bus.• HS transceivers interface for either fibre optic or electrical transceivers• 8MByte of RAM per 3838/3910 bus.• Two Vectored Interrupts per 3838/3910 bus.• 3838 data protocol managed by a micro-controller providing flexibility and extensibility.• Full Error Injection capability.• External Triggers.• Internal Self-tests.• Standard single slot VME board. (6U)
1.4.2 Bus Controller (BC) Features (With MRT Simulation and Data Monitoring)• Bus Control:
• Autonomous frame control using comprehensive set of instructions and message descriptorblocks.
• Acyclic message insertion.• Error injection.• Frame frequency selection.• Inter-message gap selection.• Response time-out selection.• Bus events detection, mask, storage, and reporting (bus errors, status word bits).• Simultaneous MRT Simulation (up to 31).• Data Words Transfers:
• Data buffer simulation for the BC and the simulated RT's.• Sub-address based data buffer access with data descriptor blocks defining each bus
message;• Multi-buffering (linked buffers or frequency-toggled buffers).• Vectored interrupts section (two different interrupts with vector queues).• Data status report.
• Data buffer time tagging.
• Simultaneous monitoring of all data buffers.
UUUMMM 111000999999777 RRReeevvv BBB 9
1.4.3 Multiple Remote Terminal (MRT) Features• Simulation:
• Up to 31 - RT simulations.• Mode and Broadcast commands handling.• Error Injection.
• Data Words Transfers:
• Data buffer simulation for simulated RTs.• Sub-address based data buffer access offering the same powerful data buffering as in the
bus controller mode. • All non-transmitted data messages are monitored.
1.4.4 Chronological Bus Monitor (CM) Features
• Capture of all bus activity in chronological stack, with time tagging of each message.
• Comprehensive multi-trigger facilities allowing selective capture and interrupts to be performedon complex data sequence.
• Cyclical stack up to 8Mbyte, with interrupt on completion of capture.
• All 3838 and 3910 errors detected.
UUUMMM 111000999999777 RRReeevvv BBB 10
1.5 VME-4220 ARCHITECTURE
The VME-4220 board is a standard VME interface with high performance architecture and complex features.Plugged into a VME card cage it provides enhanced test and simulation functions for all modes of operation of aSTANAG 3838 and STANAG 3910 bus.
Figure 1-1 VME-4220 Board Functional Block Diagram
VMEI/FACE
3838I/FACE 1
3838I/FACE 2
BUSCOUPLING
MATRIX
BUS 1
BUS 2
IRIG-BTIMECODE
16 MbytesDRAM
CONTROL
3910I/FACE 2
3910I/FACE 1
FOFE andELECTRICAL3910INTERFACE* NOTE 1
NOTE 1: Second module can only receive 3910 data
UUUMMM 111000999999777 RRReeevvv BBB 11
1.6 BUS COUPLING MATRIX
This matrix allows the user to define the STANAG 3838 buses as direct or stub coupled. It also allowsinterconnections to be made between the buses. This enables the two STANAG 3838 buses to be connected withoutthe need of external coupling and interconnections. Control of this matrix is achieved via the control register of theBUS 1 interface.
1.7 PROTOCOL MANAGEMENT UNITA micro-controller based structure running at 40Mhz handles the management of the 3838 and 3910 protocol foreach of the operating modes (BC, MRT, BM). The micro-controller works each of the 3838 command, status anddata words functions of its operating mode and the configuration tables in RAM. The micro-controller directly drivesword by word the 3838 interface, and initiates the HS 3910 interface depending on the HS action word messagesrunning on the 3838 lines. The micro-controller management unit allows flexibility and expandability as well as forthe bus control tasks as for the user interface.
1.8 3838 INTERFACEThe 3838 interface is a dual redundant interface, which includes a standard dual redundant transceiver and aManchester encoder/decoder with full error detection and error injection capabilities, which include:
• Manchester bit error• Synch bit error• Parity error• Word length error• Wrong bus error• Both bus error• Response time error
1.9 HS 3910 INTERFACEThe HS 3910 interface includes clock recovery, encoder/decoder, and HS frame control functions with errordetection and error injection capabilities:
• Preamble bit count error• Word count error (+ or -)
• Start/End delimiter pattern error• Bit count error
• Frame check sequence (FCS) error• Manchester bit error
HS transmitter initialisation time TI, and HS receiver initialisation timeout RIout are programmable. This 3910interface drives either an on-board non-redundant HS electrical transceiver or external dual redundant HS fibre optictransceivers. This interface is controlled by the micro-controller but is directly connected by DMA to the RAMtransfer the HS data words.
UUUMMM 111000999999777 RRReeevvv BBB 12
1.10 STORAGE DATAAs the VME-4220 contains electrostatic sensitive devices (ESD's), special storage and handling is required. Do notstore near electrostatic, electromagnetic, magnetic or radiation fields.
1.11 TOOLS AND TEST EQUIPMENTNo special tools or test equipment is required to test the VME-4220.
1.12 SAFETY PRECAUTIONSOperating personnel must observe safety regulations at all times, refer to the Safety Summary at the front of thismanual.
WARNING
Potentially hazardous voltages exist on the host computer power supply. Do not attempt to install or remove the VME-4220 without first removing main power.
Improper handling can cause injury or death.
UUUMMM 111000999999777 RRReeevvv BBB 13
FRONT PANEL CONNECTORS AND INDICATORS
Table 1-1 3838 Connector Pinouts (Pri & Sec, A & B)
PIN DESCRIPTIONINNER 3838 POSATIVEOUTER 3838 NEGATIVECASE GROUND SHEILD
Table 1-2 9 Way I/O Connector Pinouts (J5)
PIN # DESCRIPTION1 TRIGGER-OUT A, Collector2 TRIGGER-OUT A, Emitter3 TRIGGER-OUT B, Collector4 TRIGGER-OUT B, Emitter5 TRIGGER-IN A, Anode6 TRIGGER-IN A, Cathode7 TRIGGER-IN B, Anode8 TRIGGER-IN B, Cathode9 IRIG-B Input
Figure 1-2 Front Panel connectors & indicators diagram
Fail
Sec-HS
STANAG3910
DUAL VME
J5
hsTx
hsRx
Sec B
Pri B
Sec A
Pri A
LockLockBusy Busy
Fail
PwrBus A Bus B
Act
Reset
Pri-HS
UUUMMM 111000999999777 RRReeevvv BBB 14
Locations of linker blocks Z1, Z2, Z3, Z4 & SW1 and SW2Hexadecimal address switches SW1 and SW2 are located at top edge of the board, as shown below
LK1, LK2, LK3, LK4 and LK5 are 3 way headers used to configure the card for Electrical or Optical operation,normally supplied factory configured .
Z1 is a 2-pin header, provided to allow use on on-card 75 Ohm load terminator for the IRIG-B supply, which isapplied when linker fitted. Z2 and Z3 are 2-pin headers that require a linker to be fitted when performing afirmware up-grade, provided by means of self-loading .exe files.
Z4 is a 2-pin header, that when fitted with a linker connects the internal VMEFAIL signal to the SYSFAIL on theVME backplane.
PP1 and PP2 are 3-pin headers used for initial factory loading of on-card device programming, and must not be usedby customers.
Figure 1-3 Location of Address Switches and Linkers diagram
LK5LK4hsTx
hsRx
Pri-HS
Reset SW1 SW2Z1
Z3PP2
Z2 PP1
P1
P2
Pri-A
Sec-A
Pri-B
Sec-B
J5
Sec-HS
Z4
LK1
LK2
LK3
UUUMMM 111000999999777 RRReeevvv BBB 15
2 INSTALLATION AND PREPARATION FOR USE
2.1 GENERALOn delivery, inspect the unit for possible damage. If it is damaged, notify the shipping company, and contact yourdistributor, or Western Avionics, for details of return procedure. When unpacking remove all protective coveringand store covering, as unit may need to be reshipped at a later date.
CAUTION
The 4220 contain Electrostatic Sensitive Devices (ESD's).Observe ESD handling requirements, and do not ship or store near
electro-static, electromagnetic, magnetic or radioactive fields.
2.2 INSTALLATION OF VME-4220Prior to installing VME-4220 into the rack, ensure that all power has been removed from the rack.
2.3 TURN ONSet mains power on rack to ON.
The VME-4220 will perform system self-test on the BC, MRT and CM features of both Bus 1 and Bus 2, lastingapproximately three seconds. In the event of a failure of any part of the BIT on either Bus 1 or Bus 2, LED's will lighton the front panel (BIT-1, BIT-2) indicating the section that has failed.
2.4 SELFTESTAfter applying power to the VME-4220, or performing a software or hardware re-set, system self-test will beperformed.The VME-4220 will perform system self-test on the BC, MRT and CM features of both Bus 1 and Bus 2, lastingapproximately three seconds. In the event of a failure of any part of the BIT on either Bus 1 or Bus 2, LED's willlight on the front panel (BIT-1, BIT-2) indicating the section that has failed
UUUMMM 111000999999777 RRReeevvv BBB 16
2.5 SPECIFIC 3838/3910 INTERFACE FEATURES
2.5.1 Clock featuresThe local clock can be one of to types depending on the module firmware type used.
If the module firmware type is standard 32 bit clock then the format will be a 32 bit binary clockThat will have an LSB of 10uS for BC-MRT and MRT operations and 0.5uS for CHRON-MON operations.
If the module firmware type is IRIG-B then the clock format will be as follows:
2.5.2 IRIG-B Counter FeaturesThis 4 x 16-bit word counter can be setup to decode incoming IRIG-B serial time code or programmed to free-run.This counter reports the date and time of day accurate to +/- 0.5uS. The value of this register can be read via theClock HI and Clock LO base registers. When free-running, this counter can be pre-set/updated by the user. Theformat of this clock is as follows:
The first 3 values will be the current clock time as decoded from the IRIG-B time code. The last 16-bit word will bea value 0-1999 defining the fraction of a millisecond with a resolution of 0.5uS per tick.
1st word: N0 CC DDDDDDD HHHHH C = Days x 100, D = Days, H = Hours2nd word: 0000 MMMMMM SSSSSS M = Minutes, S = Seconds3rd word: 000000 MMMMMMMMMM M = Milliseconds4th word: 00000 UUUUUUUUUUU U = 0.5uS ticks
If the MSB of the 1st word (N) is set, the card is not locked with the incoming IRIG-B signal.
Note:The remainder of this document refers to all clock and time-tag information as standard 32-bit. This clockmode results in 2 x 16bit words being stored in the data buffers. If the firmware module is IRIG-B then alltime-tags will be stored as 4 x 16bit words.
2.5.3 Trigger-In FeaturesTrigger-In enters the board logic through the 15 way front panel connector and then an opto-coupler. So, if the diodeis powered there is a zero logic level, and if the diode is not powered there is a high logic level. So, a rising edge onthis logic level can be used for hardware starts of the frame, hardware starts of the minor cycle, or external trigger forthe bus monitor. One Trigger-in is provided for Bus 1 and for Bus-2.
2.5.4 Trigger Out FeaturesTrigger-Out is in fact a bit in a register accessible by the on-board processor to indicate to the external world that anevent has been detected. This event can be as follows:
• Beginning of the minor cycle• Beginning of a message• Bus Monitor trigger detected
Trigger-Out exits the board through an opto-coupler and the 15-way front panel connector, see Figure 1-2 for detailsOne Trigger-out is provided for Bus 1 and for Bus-2.
UUUMMM 111000999999777 RRReeevvv BBB 17
2.6 VME INTERFACE
2.6.1 Introduction
The 4220 board is used as a 16Mbyte field.
• R/W DRAM (16Mbyte).• Read only 32-bit counter or IRIG-B format clock.• Write only 16-bit register (one 16-bit access).
The Control Register and the counter are mapped into the memory field. Two hex switches on the board define thestarting address of the board as shown below. The VME interface includes a VME slave and two VME interrupters.
Figure 2-1 VME Switches
SW1 SW231 28 27 24
• A32 only access for memory, register, counters.• Address only transfers without loss of data.• D32, D16, D08 (EO) for memory access.• D16 for register access.• Block Transfers into memory (32-bit, 16-bit, 8-bit access).• Read-Modify-Write into memory (32-bit, 16-bit, 8-bit access).• Aligned transfer only.
• VME interrupts (High and Low Interrupts):
• Programmable level (1-7).• Programmable daisy chains (enable and disable).• Programmable 8-bit Status/ID (vector) D08(0)
(Accept 32-bit, 16-bit, 8-bit interrupt handler size).• Programmable interrupt release.
ROAK: Release interrupt during interrupt acknowledge cycle or during register access.RORA: Release interrupt during register access only.
• Interrupters can interrupt in the same level.
2.6.2 Details• Access rate average: 5Mbyte/s• Address Modifiers:
To access the memory, the counter, the register:
• A32 single access and read-modify-write; 09h, 0Ah, 0Dh, 0Eh • A32 block transfers; 0Bh, 0Fh
2.6.3 Electrical Characteristics• +5V and +12V.• All driving and loading rules are respected.
UUUMMM 111000999999777 RRReeevvv BBB 18
2.6.4 CapabilitiesEach VME-4220 3838/3910 interface is addressed as a 8Mbyte field.
• R/W DRAM (8Mbyte).• Read only counter/clock.• Write only 16-bit register (one 16-bit access).
2.7 3838 INTERFACE
2.7.1 lntroductionThe interface matches the MIL-STD 3838 Standard.
2.7.2 Electrical CharacteristicsEach 3838 interface provides one dual redundant bus.
• Primary bus.• Secondary bus.
Each 3838 interface can be:
• Transformer coupled.• Direct coupled.• Amplitude controlled.
UUUMMM 111000999999777 RRReeevvv BBB 19
3 VME-4220 OPERATION
3.1 INTRODUCTIONThe VME-4220 provides Bus Controller (BC), Multi-Remote Terminal (MRT), and Chronological Bus Monitor (CM)functions either independently or simultaneously. In order to run any of these functions, information must be loadedinto specific fixed register locations (Base Registers). Some of these registers contain pointers to other areas ofmemory/registers. The selection of these pointers is left up to the discretion of the user. Therefore, memory blocks canbe positioned in the on-board memory to suit user requirements. This setup means that fixed position registers areminimal.
3.2 CONVENTIONSThe architecture of both 3838 interfaces is identical allowing two independent low speed interfaces.
However, if the card is to be used on 3910 buses, the second module can only receive 3910 data. Thisfeature allows the primary module to be set up as a BC, MRT or BC+MRT and the secondary moduleto be set up as a Chronological Monitor capable of triggering and capturing all 3838 and 3910 datasimultaneous with the operation of the primary module.
BASE = Base address of module. The primary module base address is the base address of the card.The secondary module resides at the base address of the card + 8 Mbytes.
The memory range BASE+l0000H to End of Memory 3838/3910 interface is reserved for the3838/3910 data blocks. All other data must reside in the first 64Kbytes.
After a Power-On:
• On-board processor doing its power-on initialisation,
• Then executing Self-Test (BIT).
• Then waiting for a user command.
• DSI per default (insertion program is disabled)
3.3 ORGANISATION DIAGRAMThe organisation diagram figure 3-1 shows how the functional areas of the VME-4220 3838/3910 interfaces can becontrolled.
3.4 BASE REGISTERSThe only fixed position registers are the Base Registers. The Base Registers are the starting points for a description ofoperation of any of the three modes of operation, (BC, MRT and CM).
They are located starting at the module Base Address.
UU UMM M
11 100 0
99 999 9
77 7 RR R
ee evv v BB B
20
Figu
re 3
-1O
rgan
isat
ion
Dia
gram
Low
Prio
rity
Inte
rrup
t
BA
SE R
EGIS
TER
BR
PIR
P
Que
ues A
ddre
ss
RTS
TAD
Mes
sage
Inte
rrup
tM
essa
geSt
atus
Rep
ort
Hig
hPr
iorit
yIn
terr
upt
Inse
rtio
nPr
ogra
m
RT
Sim
ulat
ion
Tab
le
3838
LU
TA
ddre
ss39
10 L
UT
Add
ress
RT0
RT1
RT3
0
Bac
kgro
und
Prog
ram
Are
a
SMB
Mes
sage
Des
crip
tor
Blo
ckM
essa
ge N
umbe
r
Add
ress
in L
UT
DD
BO
ptio
ns m
ask
Dat
a bu
ffer A
ddre
ss H
ID
ata
buffe
r Add
ress
LO
DD
BO
ptio
ns m
ask
Dat
a bu
ffer A
ddre
ss H
ID
ata
buffe
r Add
ress
LO
DA
TA B
UFF
ERS
Tim
e Ta
g H
ITi
me
Tag
LOD
ata
1553
B L
UT
Res
erve
d M
RT
DD
B A
ddre
ss
3910
LU
TR
eser
ved
MR
TD
DB
Add
ress
DD
BO
ptio
ns m
ask
Dat
a bu
ffer A
ddre
ss H
ID
ata
buffe
r Add
ress
LO
DD
BO
ptio
ns m
ask
Dat
a bu
ffer A
ddre
ss H
ID
ata
buffe
r Add
ress
LO
1553
LU
T
Erro
r Inj
ectio
nW
ord
DD
B A
ddre
ss
RX
RT1
TXR
T30
3910
LU
T
Erro
r Inj
ectio
nW
ord
DD
B A
ddre
ss
RX
RT1
TX
RT3
0
DA
TA B
UFF
ERS
Tim
e Ta
g H
ITi
me
Tag
LOD
ata
DA
TA B
UFF
ERS
Tim
e Ta
g H
ITi
me
Tag
LOD
ata
DA
TA B
UFF
ERS
Tim
e Ta
g H
ITi
me
Tag
LOD
ata
UUUMMM 111000999999777 RRReeevvv BBB 21
3.4.1 Base Register Names and Location
The names and locations of the Base Registers are contained in table 3-1.
Table 3-1. Base Register Names and Locations
BASE Control Register(Write)/Clock HI Word (Read)+02H Clock LO Word (Read only)+04H Command Register (CR)+06H Status Register (SR)+08H Background Running Pointer (BRP) Address of Program+0AH Insertion Running Pointer (IRP) Address of Program+0CH Reserved+0EH Low Priority Interrupt Queue Start Address Pointer+l0H Reserved+12H High Priority Interrupt Queue Start Address Pointer+14H Reserved+16H Message Interrupt Queue Start Address Pointer+18H Reserved+lAH Status Report Queue Start Address Pointer+lCH Reserved+lEH RT Simulation Table Address Register (RTSTAD)+20H Amplitude Register+22H Coupling Register+24H Toggle Buffer Address Offset (MSB=l Global Enable)+26H SET OF MESSAGES Start Address+28H Global RT Response Time Register (µs)+2AH RT No Response Timeout Register (µs)+2CH HS Subaddress Register+2EH Reserved+30H Reserved+32H Reserved+34H IRQ Selection Register+36H Minor Frame Counter Register+38H Load Clock Hl Register+3AH Load Clock LO Register+3CH Test and Set register (TASR)+3EH Service Request Queue Address Pointer (SRQADSP)+40H Cycling Interrupt Update Register+42H Monitor Current Address Register (CAR)+44H Monitor Trigger Occurrence Register (TOR)+46H Monitor Trigger Set-up Pointer (TSP)+48H PRI Bus 3838 RT TX inhibit bits Hl+4AH PRI Bus 3838 RT TX inhibit bits LO+4CH SEC Bus 3838 RT TX inhibit bits Hl+4EH SEC Bus 3838 RT TX inhibit bits LO+50H PRI Bus 3910 RT TX inhibit bits Hl+52H PRI Bus 3910 RT TX inhibit bits LO+54H SEC Bus 3910 RT TX inhibit bits Hl+56H SEC Bus 3910 RT TX inhibit bits LO
UUUMMM 111000999999777 RRReeevvv BBB 22
3.4.2 Base Register Descriptions
The Base Register functions are defined in the following paragraphs.
3.4.2.1 Control Register (Write) (00H)D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D00BE BM CE CM FE FS 0 RS 0 0 0 V2 V1 0 C1 C0
CO Clear => Request Cl Clear => Insertion Request Vl Set => Release VMEl IRQ V2 Set => Release VME2 IRQ RS Clear => 3838 interface is held in RESET
FS => With the FE bit set this bit shall define the firmware selection for the interface.
FE FS0 0 No change0 1 No change1 0 Standard firmware selected1 1 Second enhanced/custom firmware selected
Note: After selecting a new firmware, the user must reset the interface byTaking RS LO the HI. Default is standard firmware.
CM => With the CE bit set this bit shall define the clock type to use
CE CM0 0 No change0 1 No change1 0 32 bit clock1 1 IRIG-B clock
Note: Default is 32 bit clock.
BM => With the BE bit set this bit shall define the bus coupling for the two buses.
CE CM0 0 No change0 1 No change1 0 Separate buses1 1 Buses joined
Note: 1. Default is separate buses.2. The BM/BE bits are only applicable for the primary module.The control register at address 800000 does not control the bus mode.
Example: 0102H generates a command request while keeping RS set.
UUUMMM 111000999999777 RRReeevvv BBB 23
3.4.2.2 Clock HI/LO read register (00H/02H)
For the standard 32 bit clock a read HI followed by a read LO will report the current value of the 32 bitclock.
For IRIG-B type modules the clock read is done as follows:
These two registers are for reading the current value of the on-board clock. A read of the Clock HI willrequest the current value of the clock to be latched into the output buffer. The user must wait a minimumtime of >0.5uS before beginning to read the clock value to ensure latching has completed. Fourconsecutive reads of the Clock LO location will return the clock value as: -
1st word: N0 CC DDDDDDD HHHHH C = Days x 100, D = Days, H = Hours2nd word: 0000 MMMMMM SSSSSS M = Minutes, S = Seconds3rd word: 000000 MMMMMMMMMM M = Milliseconds4th word: 00000 UUUUUUUUUUU U = 0.5uS ticks
If the MSB of the 1st word (N) is set, the card is not locked with the incoming IRIG-B signal.
To Load the clock with a new value:1. Write the new value in the module base registers Load Clock HGH, LOW.
1st word: LL CC DDDDDDDD HHHH2nd word: HH MMMMMMM SSSSSSS
LL Leap year (0-3)CC Days x 100 (0-3)DDDDDDDD Days (0-66 in BCD)HHHHHH Hours (0-23 in BCD)MMMMMMM Minutes (0-59 in BCD)SSSSSSS Seconds (0-59 in BCD)
To allow decoding of IRIG-B the clock always adds 1 second to the programmed value. Therefore,the above time must be set to the desired time minus 1 second. Leap year value should be 00 = Leapyear, 01 = 1st year after leap year etc.
2. Write the Load Clock command code into the command register.3. Now execute generate a command request (write 0x0302 in control register).
If the 1st word is set to LL11111111111111, the free running clock will not be loaded. The LL bits will beused to define the leap year and the clock will be forced into external sync mode.
If the 1st word is not set to LL11111111111111, the free running clock will be loaded and the clock will be forcedintofree running mode.
3.4.2.3 Command Register (CR) (04H)Prior to clearing the command request bit (CO) in the control register, the user must first test that the commandregister is clear. When the command register is clear the user can insert the next command to be executed. After thecommand is loaded, bit CO in the control register can be cleared. When the command register clears, the board isready for a new command. Refer to table 3-2.
UUUMMM 111000999999777 RRReeevvv BBB 24
3.4.2.4 Command Register (CR) (04H)Prior to clearing the command request bit (CO) in the control register, the user must first test that the commandregister is clear. When the command register is clear the user can insert the next command to be executed. After thecommand is loaded, bit CO in the control register can be cleared. When the command register clears, the board isready for a new command. Refer to table 3-2.
Table 3-2 Command Register (CR)
CODE COMMAND0000H Illegal0001H GO TO BC MODE0002H GO TO MRT MODE0003H GO TO MON MODE0004H BC COLD Start0005H BC WARM Start0006H BC STOP0007H MRT COLD Start0008H MRT WARM Start0009H MRT STOP000AH PAUSE000BH UNPAUSE000CH LOAD CLOCK000DH SELFTEST000EH RUN MONITOR000FH STOP MONITOR0010H Synchronise CLOCK
NOTE: PAUSE = Stop the Local clock. UNPAUSE = Restart the Local Clock
UUUMMM 111000999999777 RRReeevvv BBB 25
3.4.2.5 Status Register (SR) (06H)The status register will contain a word reflecting the status of the board as shown in table 3-3.
Table 3-3 Status Register
CODE STATUS0001H BC IDLE0002H MRT IDLE0003H MON IDLE0004H BC RUNNING0005H BC INSERTION RUNNING8004H BC PAUSED (Background)8005H BC PAUSED (Insertion)9004H EXECUTING SOFTWARE PAUSE (SWPSE)A004H EXECUTING HARDWARE PAUSE (HWPSE)0006H MRT RUNNING8006H MRT PAUSED0007H MON RUNNING0008H MON RUNNING
XXX8H EXECUTING SELFTESTFINISHED SELFTEST
The status register will contain the following information after completion of self-test.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D001 0 0 LS HS 0 LC M5 M4 M3 M2 M1 1 0 0 0
LS = 1 3838 Interface Test FailedHS = 1 3910 Interface Test FailedLC = 1 Local Clock Test FailedM5 = 1 Memory Test 5 FailedM4 = 1 Memory Test 4 FailedM3 = 1 Memory Test 3 FailedM2 = 1 Memory Test 2 FailedM1 = 1 Memory Test 1 Failed
Several bits can be set simultaneously. If no self-test errors are detected the code in the status register will be 8008H.
UUUMMM 111000999999777 RRReeevvv BBB 26
3.4.2.6 Background Running Pointer (BRP) (08H)In the BC mode, the Background Running Pointer (BRP) directs the firmware to the location of a backgroundprogram, which can be used to organise the message sequencing. Before sending a BC start the user must initialisethe BRP. BRP is updated by the on-board processor after executing a BC STOP command. Table 3-4 is a list of thepossible instructions with descriptions and examples.
Table 3-4. Instruction Set Background Program
DELAY : 0000H XXXXH XXXX= Delay LSB of 10µsNOPl : 000lH PC = PC+lNOP2 : 0002H PC = PC+2NOP3 : 0003H PC = PC+3BSR : 0004H XXXXH XXXX = 16 bit signed branch to subroutineBRA : 0006H XXXXH XXXX = 16 bit signed branchJMP : 0007H XXXXH XXXX = 16 bit absolute address for jumpRTS : 0008H Return from subroutineRTI : 0009H Return from insertion routineENI : 000AH Enable program insertionDSI : 000BH Disable program insertionLOOP : 000CH XXXXH Load loop counter, with value XXXXDBNE : 000DH XXXXH LOOP = LOOP-l, If<>O branch signed offset XXXXINITF : 000EH XXXXH Initialise frame duration to XXXX (LSB = l0uS)SWPSE : 000FH Wait for new on-board start of frameHALT : 00l0H End of BC programSITL : 00llH XXXXH Set low priority IRQ. Push XXXX on LO queueSITH : 0012H XXXXH Set high priority IRQ. Push XXXX on Hl queueHWPSE : 0013H wait for external Trig LO-HI for new frameSMB : 0014H XXXXH Send message. XXXXH = absolute address of MDBTRGOUT : 00l5H XXXXH Trig out to the XXXXH level
• Instructions:• NOP (1, 2, 3);
• By a NOPx, the user can replace one, two or three instruction words.
• BSR,BRA,DNBE;• The offset is defined in bytes count (always even offset).
• BSR;• 15 levels of subroutines available.
• TRGOUT xxxx• Instructions to put TRIGOUT at 0 if xxxx = 0000H; or 1 if xxxx = 000lH.• On power-on, the output is on 0 level (per default).
• LOOP xxxx;• Load loop counter with value XXXX.• Only one level of loop.
UUUMMM 111000999999777 RRReeevvv BBB 27
• INITF xxxx;• XXXX = Minor frame duration (minor cycle time).• 10 µs for the LSB; the value for 20ms is 7D0H.• It must be initialised at the beginning of the background program.• This instruction resets the minor frame counter register.
• SWPSE (Software Pause);• To be put at the end of each minor cycle instruction list with the minor frame duration utility to
have automatic minor frame restart.
Examples:INITF xxxx
HWSPE : waiting an external trigSWPSEJSR Minor Cycle 1SWPE
…….
…..SWPSEBRA xxxx
with Minor cycle X : SMB xxxx SMB xxxx ….. RTS
LOOP 8JSR Minor cycleSWPSEDBNE xxxxSITH "…."BRA xxxx
• Insertion Commands can be executed during SWPSE state.
• HALT;• On completion of this instruction the board will return to the BC idle state• To re-start the board: BC (Cold - Warm) Start (command register).
• SITH xxxx / SITL xxxx;
• The on-board processor puts the value (code) xxxx in the cycling FIFO's.H => High Priority, L => Low Priority.
• HWPSE (Hardware Pause);
• Restart by the external Trig In (external CK)• All the registers are not initialised:….• Used to synchronise messages of minor frames on external Trig In.
Example: See SWPSE above.
UUUMMM 111000999999777 RRReeevvv BBB 28
3.4.2.7 Insertion Running Pointer (IRP) (OAH)
The Insertion Running Pointer (IRP) has the same set of instructions as Instruction Set Background Program. Toinitiate an insertion the user must first load the IRP with the address of the insertion program. Then bit Cl can becleared in the control register.
• The background program can be interrupted by an insertion command.• The insertion program cannot be interrupted by any other insertion command. In this case the
second insertion request will be delayed until the end of the first one.• Insertion program starting just before a minor cycle start will delay this one.
• IRP is updated by the on-board processor after executing a BC stop command.
3.4.2.8 Reserved (0CH)
3.4.2.9 LPIQAP (0EH) Low priority interrupt queue start address.
3.4.2.10 Reserved (10H)
3.4.2.11 HPIQAP (12H) High priority interrupt queue start address.
3.4.2.12 Reserved (14H)
3.4.2.13 MIQAP (16H) Message interrupt queue start address.
3.4.2.14 Reserved (18H)
3.4.2.15 SRQAP (lAH) Status report queue start address.
3.4.2.16 Reserved (lCH)
3.4.2.17 RTSTAD (lEH) RT simulation table start address.Contains the address of the RT Simulation Tables,which defines the RT status when they are simulated.
3.4.2.18 Reserved (20H)
3.4.2.19 Reserved (22H)
UUUMMM 111000999999777 RRReeevvv BBB 29
3.4.2.20 Toggle Buffer Address Offset (24H)• MSB = 1 : global toggle enable
= 0 : no toggleoffset : 15 bits
MSB offset15 14 0
• For a data buffer, if the toggle feature is selected (bit 15 = 1), the address of the toggle buffer is:(Buffer Address High + Toggle Buffer Offset), Buffer Address Low. [15 bits]
• For further details refer to paragraph 4-3.3.3.
3.4.2.21 Set of Messages Start Address (26H)• This is the pointer of a 256-word table reserved to the on-board processor to compute the registers
Set of Messages.• For further details refer to paragraph 4-5.2.
3.4.2.22 Global RT Response Time Register (28H)• This is the response time for all the simulated RT's. Different RT response time can be defined in
the error description words.• LSB = lµs• For some modes, this global RT response time register is not programmable (fixed at 4us); • 3838Mode without data
• If the value is less than 4, the on-board processor selects 4µS.
3.4.2.23 RT No Response Time-Out Register (2AH)
………………..
RT Response Time
• The programmable RT no response time-out defines the maximum RT response time allowed by theboard to an RT before detecting "NO RESPONSE".
• LSB = 1us.
3.4.2.24 HS Sub Address (2CH)Indication for the on-board processor of the sub-address value used to define HS messages.Set to 0x001A for EFASet to 0x0001 for RAFALE.Set to 0xFFFF for 3838 operation only.
CommandWord
ActionWord
StatusWord
NextWord
UUUMMM 111000999999777 RRReeevvv BBB 30
3.4.2.25 IRQ Selection Register (34H)D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 0 Cycling Message HI Queue LO Queue
0 0 C 0 0 M 0 0 H 0 0 L
C = If set, a physical INTA interrupt will be generated when a ‘Broadcast Synchronise With Data’ mode code occurs.M = If set, a physical INTA interrupt will be generated when a push to the Message Queue occursH = If set, a physical INTA interrupt will be generated when a push to the High Priority Queue occursL = If set, a physical INTA interrupt will be generated when a push to the Low Priority Queue occurs
3.4.2.26 Test and Set Register and SRQADP (3CH)These two words are used to automatically manage FIFO's of vector words for each simulated RT. For simulated RTsthe "Service Request bit" in the status word can be set and reset by the user. The vector word can be initialised by theuser.
After a "Transmit Vector Word" mode command message, the on-board processor automatically resets the servicerequest bit and the vector word.
On the other hand a service request queue is defined to automatically queue words representing (successive) requestsfor the simulated RTs. This service request queue is 3 words long starting at the initial address in the service requestqueue address pointer (SRQADP).
For a request, two words are set in the queue as follows:
1. RT number: 000000000RRRRRlXR = RT address, X = Priority, BIT 1 = 1.
2. Vector word
Two different priorities are available:
X = O High priorityX = 1 Low priority
Reading this FIFO, the on-board processor manages each RT two 32-word vector words FIFO's (one per priority).These vector words are then used by the RT simulation. If an RT FIFO is not empty, the on-board processor reads it,then writes the value in RT vector words (RT Simulation Table) and sets the service request bit in the status word.
If a "Transmit Vector Word" mode command message occurs, the on-board processor reads the RT FIFO's
• If empty the on-board processor resets the service request bit and the vector word.• Otherwise the on-board processor reads the FIFO's and writes this next value in the RT vector word.
High priority vector words are processed before low priority vector words.
UUUMMM 111000999999777 RRReeevvv BBB 31
The following 4Kbyte block after the service request queue is reserved for the individual RT requesting FIFO'smanaged by the on-board processor:
SRQADP
SERVICE REQUEST QUEUE
003EH0040H
RESERVED (RT FIFO's)
103EH
To enter a request in the User Requesting Queue, the user must manage the current writing pointer (SRQADP in BaseRegisters) and control the words pointed at are clear, if these words are non-zero, the queue is full. Reaching the endof the queue the user must restart at the beginning of the queue.
If several user CPUs can enter requests at the same time, it is necessary to share control of SRQADP, using forexample the TASR flag with a test and set instruction. To enter a request a CPU must carry out the followingprocedure:
Test and set the TASR word (MSB bit) and:
a) • If free, the SRQADP is read to define the entry address in the queue.• If the entry location defined by the SRQADP are clear the two words may be entered in
the queue. If these words are non-zero, the queue is full.
• Increments the SRQADP (if the end is reached, reinitialise it to the beginning).
• Resets the TASR.
b) • If not free, waits until free.
3.4.2.27 Reserved (46H)
3.4.2.28 PRI/SEC 3838/3910 RT TX Inhibit HI-LO (48H – 56H)
RT 30 …. … RT17 RT16RT15 RT14 RT1 RT0
• =0: enable the transmitter=1: disable the transmitter
• A bit set defines the specific RT transmitter as inhibited.
• Initialisation by the user (before cold start).
• Disable/enable by corresponding mode command messages.
• The user can modify the inhibit bits in real time.
• The receive function of the simulated RT is never disabled.
HI :LO :
UUUMMM 111000999999777 RRReeevvv BBB 32
3.5 REMOTE TERMINAL SIMULATION TABLEFor each RT 16 words are used to define and store information concerning RTs. The pointer to this table(RTSTAD) must be a multiple of 20H. Refer to table 4-4.
+00H Simulation Type word+02H RT Status Word+04H LS Last Command Word+06H LS Look-up Table Address (MRT Only)+08H HS Look-up Table Address (MRT Only)+0AH LS Mode Commands Look-up table Address (MRT Only)+0CH Vector Word+0EH LS BIT Word+10H HS Status Word+12H HS Last Action Word+14H HS BIT Word+16H Global RT Error Descriptor Word (MRT Only)+18H Not Used+1AH Not Used+1CH Not Used+1EH Not Used+20H
+40H
+3C0H
+3E0H Only 3 words usedSet all others to 0
Broadcast LS Look-up TableBroadcast HS Look-up Table
Broadcast LS Mode Commands Look-up Table Address
Table 3-4 Remote Terminal Simulation Table
3.5.1 Simulation Type WordBIT 15 : 1 = RT simulated
Bits BIT 14 : 1 = Reserved14 to 0 BIT 13 : 1 = Inhibit transmitter LS on primary busare for BIT 12 : 1 = Inhibit transmitter LS on secondary busMRT BIT 7 : 1 = Errors enabled on primary bus (status word and data)only BIT 6 : 1 = Errors enabled on secondary bus (Status word and data)
BIT 0 : 1 = Enable global error injectionother bits: 0Bits 7 and 6 Enable global RT errors (defined in the RT simulation table) as message-per-
message errors (defined in the look-up-tables).
RTSTAD
RT0
RT1
RT30
RT31(Broadcast)
UUUMMM 111000999999777 RRReeevvv BBB 33
3.5.2 Status WordBroadcast and message error bits are dynamically updated. Service request bit automatically set by the request filesand cleared by the TX vector word mode code command. Busy bit can be set by user to disable data transmission.
3.5.3 LS Last Command WordAutomatically updated (including broadcast), so the TX last command mode code is correctly simulated.
3.5.4 LS Bit WordFor user purposes.
3.5.5 HS Status WordAutomatically updated for frame error, RX ready/busy, TX ready/busy bits (including broadcast). So the 3910 TXcommand is correctly simulated. This word in the simulation table is used by the "on-board" processor as a flag torecord FRAME errors. However, the user can force a HS Status word with the FRAME bit set, by writing a non zerovalue into this location.
3.5.6 HS Last ActionAutomatically updated (including broadcast). So the 3910 TX command is correctly simulated.
3.5.7 HS Bit WordFor user purposes.
NOTES: 1. 3838 Mode Commands - TX shutdown and override TX shutdown arefully simulated. The status of the transmitters are available to theuser in the Base Registers.
2. 3910 Mode Commands - TX shutdown and override TX shutdown arefully simulated. The status of the transmitters are available to theuser in the Base Registers.
3. The user can modify the RTs simulation state in real-time.
UUUMMM 111000999999777 RRReeevvv BBB 34
4 BUS CONTROLLER MODE OF OPERATION
4.1 INTRODUCTIONIn the Bus Controller mode the Western Avionics 4220 board runs a list of instruction pointed to by the BackgroundRunning Pointer defining the bus frame. Each bus message is defined by a Message Descriptor Block (MDD) andthe associated data is accessed through a Look-Up Table (LUT) and Data Descriptor Blocks (DDB) the same way asin the Multi-Remote mode. Remote Terminals can simultaneously be simulated. All non-simulated data buffers canbe monitored. An internal minor frame duration counter allows autonomous control of cycling frames. Acrylicmessages can be inserted on the host request. Insertion instruction lists define sequences of messages to beinserted. Refer to figure 4-1 the Bus Controller Organisation Diagram.
Figure 4-1 Bus Controller Organisation Diagram
AddressfromMDB
DATABUFFERS
Time Tag HITime Tag LO
Data
Insertion Program
Background ProgramArea
SMB
Message Descriptor BlockMessage Number
Address in LUT To LUT
DATABUFFERS
Time Tag HITime Tag LO
Data
BC/MRT
BC
MRT
AddressfromMDB
LowPriorityInterrupt
BASE REGISTERControl Register
BRPIRP
Queues Address
RTSTAD
MessageInterrupt
MessagesStatusReport
LS LUT
Reserved MRTBDD Address
HS LUT
Reserved MRTBDD Address
DDBOptions mask
Data buffer Address HIData buffer Address LO
DDBOptions mask
Data buffer Address HIData buffer Address LO
RT SimulationTableRT0RT1
RT30High
PriorityInterrupt
UUUMMM 111000999999777 RRReeevvv BBB 35
4.2 MESSAGE DESCRIPTOR BLOCK (MDB)
Each bus message is defined by a message descriptor block as shown in table 4-1.
Table 4-1 Message Descriptor Block
MBD ADDRESS MESSAGE NUMBER+02H LS Event Mask+04H Message Type Word+06H LS Message Error Phase Definition+08H LS Message Error Description Word+0AH Address in Look-up Table+0CH Command Word 1+0EH Command Word 2+10H Action Word 1+12H Action Word 2+14H Retry Subroutine Absolute Address+16H HS event Mask HS Overlap+18H Inter-message Gap Time+1AH HS RT-RT Inter-message Gap Time+1CH Status Word 1 (received)+1EH Status Word 2 for RT-RT (received)
4.2.1 Message Number (00H)
The number of the message is used in Message Status Report to identify messages.
4.2.2 LS Event Mask (02H)
A logical AND is carried out with the LS event mask and the detected bus events. If the result is <>0 a messagestatus report will occur and a retry if selected.
BIT 15 : Wrong/Both bus errorBIT 14 : No response errorBIT 13 : RT address errorBIT 12 : Transmission errorBIT 11 : Wrong sync errorBit 10 to 00 : Status bits of RX status word (not including address bits)
NOTE: Transmission error includes: Manchester error, Long or Short word error, Parity error, WordCount error and Late-Response error.
UUUMMM 111000999999777 RRReeevvv BBB 36
4.2.3 Message Type Word (04H)
BIT 15 : 1 = 3838 TX on PRI busBIT 14 : 1 = 3838 TX on SEC busBIT 13 : 0BIT 12 : 0BIT 11 to 8:
11 10 09 080 0 0 0 3838 MODE WITHOUT DATA0 0 0 1 3838 MODE WITH DATA0 0 1 0 3838 RT-RT0 0 1 1 3838 BC-RT/RT-BC0 1 0 0 3910 BC-RT0 1 0 1 3910 RT-BC0 1 1 0 3910 RT-RT0 1 1 1 3910 TX MESSAGE/MODE CODE
0 0 0 0 3838 MODE WITHOUT DATA (BROADCAST)1 0 0 1 3838 MODE WITH DATA (BROADCAST)1 0 1 0 3838 RT-RT (BROADCAST)1 0 1 1 3838 BC-RT (BROADCAST)1 1 0 0 3910 BC-RT (BROADCAST)1 1 0 1 RECEIVE CLOCK (BROADCAST)1 1 1 0 3910 RT-RT (BROADCAST)1 1 1 1 3910 MODE COMMAND (BROADCAST)
BIT 07 : 1 = Extended Subaddress BIT 06 : 1 = Retry on EVENT BIT 05 : 1 = Interrupt on EVENT enabled BIT 04 : 1 = Interrupt on EVENT Hl priority queue, 0 = LO priority BIT 03 : 0 = 3910 Bus A, 1 = 3910 Bus B BIT 02 : 0 BIT 01 : 0 BIT 00 : 0
NOTES: 1. If RETRY is enabled and IRQ on EVENT is disabled the RETRY will still take place.
2 Broadcast Receive Clock is a special message used for transmitting the 32-bit clock asdata. This message type only requires an MBD to define the command word and theinter-message gap. No queue, interrupt or buffer control is carried out. The transmittedmessage will be the command word defined by the MDB followed by two data words,Clock Value HI and Clock Value LO (clock value at the end message on the bus).
3. The transmission of a Broadcast Synchronise with Data mode code using the 3838 modewith data broadcast message type will cause cycling interrupt to be generated (ifenabled) and the associated data word defined in the data buffer will be stored in thecycling interrupt base register (40H).
UUUMMM 111000999999777 RRReeevvv BBB 37
4.2.4 LS Message Error Phase Definition (06H)The following word defines the location of errors that can be injected into the LS message.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 0 0 0 0 0 0 0 0 0 0 X X X
XXX = 000 => Error Injection DisabledXXX = 001 => Inject Error in 1st BC TX (Initial BC message)XXX = 011 => Inject Error in 1st RT SIM (lst RT response)XXX = 100 => Inject Error on 2nd RT SIM (2nd RT-RT response)
4.2.5 LS Message Error Description Word (08H)The following word defines the errors that can be injected into the 3838 message.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D00T T T X X X X X X X X X X X X X
TTT = 000 => Modulation Error
XXXXXXXXXXXXX = WWWWWWYYYYYYY
WWWWWW = Word Number For Modulation Error
Y Y Y Y Y Y Y = ERROR TYPE0 0 0 0 0 0 0 = Parity error0 S5 S4 S3 S2 S1 S0 = Synchro Pattern Error1 0 B4 B3 B2 B1 B0 = Manchester Bit Error1 1 L4 L3 L2 L1 L0 = Word Length Error
TTT = 001 => Wrong Bus ErrorXXXXXXXXXXXXX = 0000000000000
TTT = 010 => Both Bus ErrorXXXXXXXXXXXXX = 0000000000000
TTT = 011 => Word Count ErrorXXXXXXXXXXXXX = 000000PCCCCCC
P = Word Count Error Polarity0 = Word Count Error +VE1 = Word Count Error -VECCCCCC = Word Count Error Value (Allows +/- 64 Words)
TTT = 100 => Response Time ErrorXXXXXXXXXXXXX = 00000000RRRRR
RRRR = Unique Response Time for simulated RT in uS.
TTT = 101 => Illegal Command (Not applicable for BC Mode)XXXXXXXXXXXXX = 0000000000000
TTT = 110 => Extended Subaddress (Not applicable for BC Mode)XXXXXXXXXXXXX = 0000000000000
TTT = 111 => Resync. System Clock (Not applicable for BC Mode)XXXXXXXXXXXXX = 0000000000000
UUUMMM 111000999999777 RRReeevvv BBB 38
NOTES: 1. Word Number : For the first word of the message (command or status) WWWWWW = 000000.
2. Synchro Pattern Error : Defines a specific synchro bit, each Si defines the level for 500ns duration (at least 1 bit of S5 - S0 must be set).
S5 S4 S3 S2 S1 S0
right synchro bit example
false synchro bit example(S5-S0 : 011001)
3. Manchester Bit Error : B4-B0 defines the bit position in the wordfor the error
4. Word Length Error : L4-L0 defines the number of bits in the word.
NOTE: This count has an offset of 1 such that a value of 01111 will result on a valid word with a data bitcount of 16.
• Wrong bus error : RT response on the wrong bus• Both busses error : RT response on both busses• Response time error : RRRRR replaces the global RT response time
(LSB = l uS)• Illegal command : Reserved for MRT only
4.2.6 Address in Look-Up Table (0AH)This will contain the address in the look-up table for the DDB pointer. (See figure 4-1).
4.2.7 Command Word 1 (0CH)First Command Word.
4.2.8 Command Word 2 (0EH)Second Command Word (RT-RT 3838).
4.2.9 Action Word 1 (10H)First Action Word to be transmitted (3910 message).
4.2.10 Action Word 2 (12H)Second Action Word to be transmitted (RT -RT 3910)
4.2.11 Retry Subroutine Absolute Address (14H)On completion of a message, if an Event defined by the Mask has occurred and the Retry Event is enabled, theSubroutine defined by this absolute address will be called.
NOTES 1. The retry subroutine must be terminated by the RTS instruction to return execution back to themain background or insertion program.
2. This feature can be used for immediate insertion of Acyclic messages or retry of the samemessage on the alternate bus.
UUUMMM 111000999999777 RRReeevvv BBB 39
3. HS Event Mask (16H)
BIT 15 to 07 : 0BIT 06 : HS Data Overlap ErrorBIT 05 : 3910 Word Count ErrorBIT 04 : FCS ErrorBIT 03 : Invalid/No End DelimiterBIT 02 : Invalid/NO Start DelimiterBIT 01 : 3910 No ResponseBIT 00 : 3910 Frame Word Timeout
NOTE: HS Data Overlap error bit : Indicates that the HS data words of the previous message havebeen overlapped by the HS data words of the new image.
* * # * * 3838
4.2.12 Inter-message Gap Time (18H)• Gap between the end of this message and the LS line and the beginning of the next one (next MDB).• LSB = 0.l uS.• For 3910 message this inter-message gap time must take account of the HS message.
4.2.13 HS RT-RT Inter-message Gap Time (lAH)• Gap between the two 3838 messages initiating a HS RT-RT message.• LSB = lµs.
4.2.14 Status Word 1 (lCH)First RX Status Word in the message. If the BC detects no response error, this value will be updated with FFFFH.
4.2.15 Status Word 2 (lEH)Second RX Status Word in the message (RT-RT). If the BC detects a no response error from the second RT, thisvalue will be updated with FFFFH.
Com. W. Act. W. Sta. W. Com. W. Act. W. Sta. W.
Data Message 1
Data Message 2
Overlap
3910
HS Receive HS Transmit
HS Data Message
Next# #
Intermessage Gap
3838
3910
UUUMMM 111000999999777 RRReeevvv BBB 40
4.3 DATA BUFFERS SIMULATION AND MONITORING
The Western Avionics 4220 board processes all the data buffers running on the LS and HS lines. Data buffers to beissued by the BC or the simulated RTs are transmitted by the 4220 board, all others can be monitored. A multipledata buffering structure is implemented. Identical paths are used to access the data buffers, whether they aretransmitted, received, LS or HS. These paths use a look-up-table and data descriptor block. Refer to figure 4-2Data Buffers Simulation and Monitoring.
Figure 4-2 Data Buffers Simulation and Monitoring
LOOK-UP TABLE
Reserved MRTData descriptor Block Address
Reserved MRTData descriptor Block Address
LS TYPE DATA DESCRIPTORBLOCK
Option maskHeader Address
Data Word CountData Status Report
Toggle Freq./Buffer Addr. HighBuffer Address Low
Link Pointer to another DDBReservedReserved
Message Interrupt CodeSet of Message Number
Reserved HSReserved HSReserved HS
Reserved
HS TYPE DATA DESCRIPTOR BLOCK
Option MaskReserved LS
Data Word CountData Status Report
Toggle Freq./Buffer Addr. HighBuffer Address Low
Link Pointer to another DDBAddress of Modify Word
Value to WriteMessage Interrupt CodeSet of Message Number
Message Indicator in Set of MessageHS Frame Time-out/RI-TI Register
HS Errors HighHS Errors Low
Reserved
LS DATA BUFFERS
Time Tag HighTime Tag Low
DataData
DataDataData
HS DATA BUFFERS
Time Tag HighTime Tag Low
FC. PADAWCDataData
DataData
(FCS)
UUUMMM 111000999999777 RRReeevvv BBB 41
4.3.1 Look-Up-Table
The sixth word of a message descriptor block points to a double word in the look-up-table, that one contains theaddress of a LS or HS data descriptor block. An identical architecture is defined in MRT mode, but using LS sub-addresses or HS message identifiers to point into the look-up-table.
Look-up Table Address : Error Injection Word (MRT only).02H : DDB Address/Ext-Subaddress look-up table address.
4.3.2 Data Descriptor BlockA data descriptor block is associated with each data message, this 16-word set defines the data buffering andassociated queue control information. Interrupt selection is defined in the option mask word. Interrupt on correct orerroneous message, or after a set of different messages and priority of interrupt (three different available, oneinterrupt only per message).The data word count contains the data word count expected by the user. The Western Avionics 4220 processorcompares this word count with real data word count transmitted on the bus and writes the difference if any in the datastatus report word. This last word also contains the status flag of the transmission, message received correct or witherror, message running. The most significant byte of data buffer address can be used to enable toggled buffercontrol; toggle on beginning of each minor frame or on multiple cycles of this minor frame. This allows usersoftware synchronised on the frame cycle to always access the correct buffer. The set of message interrupt featuresprovides the possibility to send an interrupt after the last message of the set of messages. It is to be used when theframe sequence is not purely repetitive. Up to 128 different sets of messages from 2 to 16 messages each can bedefined. Refer to table 4-2.
A HS type data descriptor block also defines HS transmission characteristics:
• HS frame time-out (LSB = l00 nS), RI or TI values (LSB = 1µs).• HS error injection (no response, preamble bit count error, word count error, FCS error, Bit
encoding error, Bit count error, start/end delimiter pattern error.
Error injection on LS data words is defined in the message descriptor blocks.
Table 4-2 Data Descriptor Block
DDB ADDRESS OPTION MASK+02H Header Address+04H Data Word Count+06H Data Status Report+08H Toggle Frequency and Buffer Address HI+0AH Buffer Address LO+0CH Link Pointer to Address of another DDB+0EH Address of Modify Word+10H Value to Write+12H Message Interrupt Code+14H Set of Message Number+16H Message Indicator in the Set of Messages+18H RT-TI Time Register+1AH 3910 Error Injection 1+1CH 3910 Error Injection 2+1EH 3910 Error Injection 3
UUUMMM 111000999999777 RRReeevvv BBB 42
4.3.2.1 Option Mask (00H) BIT 15 1 = Interrupt on Correct Message BIT 14 1 = Interrupt on Error Message BIT 13 1 = HI/LO Priority Queue (0 = LO, 1 = HI) BIT 12 1 = Interrupt on Set of Messages BIT 11 1 = Message Interrupt (If Message Correct) BIT 10 1 = Link only on Correct Message BIT 09 1 = Link to New DDB Enabled BIT 08 1 = Modify Word Enabled BIT 07 0 BIT 06 0 BIT 05 0 BIT 04 to 00 Header Word Count
4.3.2.2 Data Status Report (06H)BIT 15 to 14 00 = Good Message
01 = Message Running 10 = Error Message
BIT 13 to 00 Signed Wordcount Error. 0 = No Wordcount Error
NOTE: The wordcount error is calculated as follows:
3838 TX Wordcount = Command Wordcount - (DDB Count + Header Count)3838 RX Wordcount = Wordcount Received - (DDB Count + Header Count)3910 TX Wordcount = Action Wordcount - DDB Count3910 RX Wordcount = Action Wordcount - DDB Count
4.3.2.3 Toggle Frequency and Buffer Address HI (08H)The word +24H in Base Registers defines if the data buffer toggle feature is enabled and also the toggle offset:
• MSB: 1= global toggle enabled, 0 = no toggle.• offset: 15 bits
MSB OFFSET 15 14 0
The 5th word in a DDB enables the toggle feature for the corresponding data buffer and the toggle frequency:
BIT 15 1 = Enable toggle (local)BIT 14 to 11 0BIT 10 to 08 Frequency indicator => 000 = FHz, 001 = F/2Hz, 011 = F/4Hz, 111 = F/8HzBIT 07 to 00 Buffer Address Hl
When global toggle is enabled, for a data buffer if the toggle feature is selected (bit 15 = 1) the address of the togglebuffer is:
(Buffer Address High + Toggle Buffer Offset (15 bits)), Buffer Address Low.
UUUMMM 111000999999777 RRReeevvv BBB 43
(Bank A)
Offset
((Bank B)
The toggle is synchronised on the minor frame counter register, which is incremented on each minor cycle restart.
The on-board processor stores the data buffer in bank A or B depending on the number of the running minor cycleand the frequency indicator of the message.
Minor Cycle(frequency F)
0 1 2 3 4 5 6 7 8 9 A B C …
F Hz. A B A B A B A B A B A B AF/2 Hz A A B B A A B B B A B B AF/4 Hz A A A A B B B B A A A A BF/8 Hz A A A A A A A A B B B B B
4.3.2.4 Link Pointer to New DDB (0CH)If the message is good or bit 10 of the option mask is clear and bit 9 of the option mask is set the value in thislocation will replace the original DDB address in the look-up table. This feature defines a different DDB for thenext occurrence of the same message.
4.3.2.5 Address of Modify Word/Value to Write (0EH-l0H)After the message is complete and bit 8 of the option mask is set the Value to Write is written in the address definedby the contents of 0EH. (Action is limited to the first 64Kbytes of the memory).
4.3.2.6 3910 Frame Timeout and RI / TI Time Register (18H)BIT 15 to 13: Set to 0.BIT 12: If this bit is set, the HS data stream will have a +ve word count error.BIT 11: If this bit is set, the HS data stream will have a -ve word count error.BIT 10: If this bit is set, the HS data stream will not be transmitted (HS no response).BIT 09 to 08: Set to 0.BIT 07 to 00: TI time for 3910 TX => time for 3910 data to start from end of BC action word.
LSB = 1uS.RI time for 3910 RX => time for RX timeout after end of BC action word.LSB = 1us.
DDB
BufferAddress
Buffer
Buffer
bit 15 = 1
UUUMMM 111000999999777 RRReeevvv BBB 44
4.3.2.7 3910 Errors Injection 1(1AH)This word defines the desired start and end delimiter patterns for transmissions as follows:
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D00ED7 ED6 ED5 ED4 ED3 ED2 ED1 ED0 SD7 SD6 SD5 SD4 SD3 SD2 SD1 SD0
SD7-0 defines the start delimiter pattern. Each bit is a 50nS segment of the start delimiter starting with SD7 andending with SD0.ED7-0 defines the end delimiter pattern. Each bit is a 50nS segment of the end delimiter starting with ED7 andending with ED0.
1 0 0 0 1 1 1 0 0 1 1 1 0 0 0 1 SD ED
As can be seen above, for a good start and end delimiter this register should be set to:1000111001110001 = 0x8E71.
Any other value will inject start/end delimiter pattern errors.
4.3.2.8 3910 Errors Injection 2(1CH)This word defines further error injection features as follows:
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D00 0 0 PR5 PR4 PR3 PR2 PR1 PR0 BT3 BT2 BT1 BT0 FCS ML ME MM
PR5-0: The value of this defines the number of preamble bits to transmit (1-63).BT3-0: The value if this defines the bit count error for the HS data stream.
Values 0001-1111 define the number of bits to remove from the data stream.Hence, 1111 will result in the data stream being short by 15 bits.For no bit error this value should be set to 0000.
FCS: If this bit is set, an FCS error will be injected into the data stream (the FCS word will be incorrect).ML: If a Manchester encoding error is required in the data stream this bit will define the level for the bit.ME: If this bit is set, a Manchester error will be injected into the data stream of level ML.MM: The position of the Manchester error is defined by a 17 bit count. This bit is the MSB of this count.
The remainder of the count is defined in the following register.
4.3.2.9 3910 Errors Injection 3(1EH)This word is the remaining 16 bits of the Manchester error injection bit position in the data stream.
UUUMMM 111000999999777 RRReeevvv BBB 45
4.3.2.10 Extended Sub-AddressTo enable the extended sub-address feature see the MDB type word. When enabled the value of the DDB addressin the look-up-table is in fact a pointer for a further look-up-table called the extended look-up-table. The on-boardprocessor uses the 3838 byte of the first data word received (multiplied by four) to calculate an offset in the extendedlook-up-table to find the true DDB address word. Therefore, the DDB and data buffer used is defined by the valueof the first 3838 RX data word.
+ Offset:Reserved MRT+02H: DDB address
4.3.3 Data Buffers
Data buffers are pointed to by the buffer address word contained in the data descriptor blocks. The address of thetoggled buffer is calculated by adding the global toggle offset to the data buffer address value in the DDB. The firsttwo words of a data buffer are updated with the value of the local clock at the beginning of the message.
HS data buffers contain:
• The Time Tag.• The three protocol words of the HS frame (FC/PA, DA, WC).• The HS data words.• The frame check sequence (FCS) for received data buffers.
For transmitting data buffers, the FC and PA bytes are automatically updated by the micro-controller.
LS data buffers can be stored as follows:
• The standard way - data words behind the time-tag words.• A particular way allowing the user to store header words of the data message in a different buffer
from the following data words.
The header option and the number of header words are defined in the option mask.
Header Address
Header Message K Data Message K
Header Message 2 Data Message 2
Data Buffer Address
Header Message 1Header Word Data Message 1
Time Tag HighTime Tag Low
DataData
DataData
UUUMMM 111000999999777 RRReeevvv BBB 46
DB ADDRESS 3838 BUFFER 3910 BUFFER+00H Time Tag HI Time Tag 3+02H Time Tag LO Time Tag 4+04H Data FC, PA (Automatically Updated)+06H Data DA+08H Data WC+0AH Data Data+0CH '' Data
'' '' '''' with or without ''
Header Word '''' Data'' Data'' FCS (In Receive Message only)
Table 4-3 Data Buffers
4.4 MODE COMMANDS
In Bus Controller mode the Western Avionics 4220 board can transmit all mode command messages (LS or HS).For each mode command message, data descriptor blocks pointed through the look-up table allow the definition ofinterrupt requests or associated data word address storage. If such a command is directed to an on-board simulatedRT, the corresponding actions are made on the RT simulation table:
• Transmit - RT status word, last command word, LS bit word.• Inhibit or override inhibit LS or HS transmitters.
Examples:
a) Synchronise with Data Word:
• The data is obtained from the data buffer pointed by the DDB.
b) Transmit Last Command:
• A DDB is analysed; the data word transmitted is stored in the data buffer. If the RT is simulated, the last command word from the RT simulation table is transmitted.
c) Transmit Bit Word:
• Similar to transmit last command.
d) Transmit Vector Word:
• Similar the transmit last command, and then if the RT is simulated, the service request bitin the RT status word is reset and the vector word is reset or updated with the next vectorword in FIFO's, if any.
UUUMMM 111000999999777 RRReeevvv BBB 47
4.5 INTERRUPT REQUESTS
Three types of interrupt requests (IRQ) can be generated by the Western Avionics 4220 board:
• IRQ-L and IRQ-H (low priority and high priority) are synchronisation interrupts, defined asfollows:
• By instructions in the BC instruction list.• In message descriptor block to report on bus events detection.• In data descriptor block to signal the transmission of a message.
• IRQ-M is a data message interrupt and occurs only when the transmission of a data buffer is correctand the requesting bit is set in the data descriptor block. It can also be programmed to occur withthe last message of a set of 2 to 16 messages (set of messages option).
When setting an IRQ the Western Avionics 4220 board pushes a vector code into queues, each code defines theevent origin of the IRQ.
Each queue must start at an address multiple of 200H. The user must manage the reading pointer, and erase with a0000H value, the codes after reading.
4.5.1 Interrupt Coding1. LO and HI priority interrupts (two words):
Messages without error : 0800H, DDB AddressMessages with error : 0C00H, DDB Address BC Event without RETRY : l000H, Status Queue AddressBC Event with RETRY : 4000H, Status Queue AddressSend Interrupt (SITL/SITH) : 2000H, SITL/SITH Vector
2. Message Interrupts (one word):
Message Interrupt Code from DDB (Only if Message is Good)
4.5.2 Set Message InterruptsWhen in a DDB, bit 12 of the option mask word is set:
• The 10th word gives a set of message numbers (00H to FFH).
• The 12th word gives a message indicator.
• For each set, the on-board processor manages a set word register;
• It makes an "OR" with the message indicator in the set word register.• Then if the set word register is equal to FFFFH, the on-board processor sends a message
interrupt code defined in the 9th word of the DDB, and resets the set word register.• It is possible to define sets from 2 to 16 messages.• The user initialises at 0 the set of messages table.
The 256 word set of messages table is pointed to by the set of Messages Start Address (26H in Base registers).
UUUMMM 111000999999777 RRReeevvv BBB 48
4.5.3 Message Status Report Queue
At the end of a message, if an event is detected and matches with the 3838 or 3910 Event Masks of the MDB, aMessage Status Report is pushed in to the Message Status Report queue (2 words per report).
1. 3838 Messages:
Message Number (MSB = 0), EVENTS with EVENTS:
BIT 15 : Wrong/Both Buses ErrorBIT 14 : NO RESPONSE ErrorBIT 13 : RT ADDRESS ErrorBIT 12 : TX Error- Mn, LG, SH, Py, WC, Late-ResponseBIT 11 : SYNC Type ErrorBit 09 : 0 = 1st Status, 1 = 2nd StatusBIT 10, BITS 08 to 00 : RX Status Bits
2. 3910 Messages:
Message Number (MSB = 1), EVENTS with EVENTS:
BIT 15 to 08 : 0BIT 07 : HS Data Overlap ErrorBIT 06 : HS wordcount error polarity ( 1 = Too many words).BIT 05 : HS Word Count ErrorBIT 04 : HS FCS ErrorBIT 03 : HS preamble count errorBIT 02 : HS Manchester encoding errorBIT 01 : HS RI timeoutBIT 00 : HS Bit count error
UUUMMM 111000999999777 RRReeevvv BBB 49
5 MULTIPLE REMOTE TERMINAL MODE OF OPERATION
5.1 INTRODUCTION
In Multiple Remote Terminal mode the Western Avionics 4220 board can simulate up to 31 RTs. After initialisationby the host, the board is ready to listen to the bus activity and to respond to command words for the simulated RTs.The description of the mode of operation uses tables similar to those defining the bus controller mode, providing thesame associated features (multiple data buffering, signalisation etc.). Refer to figure 5-1, the Multiple RemoteTerminal Organisation Diagram.
The specifics of the MRT mode of operation mainly concern the following
• The logical path to point into the look-up-tables.• The errors injection capabilities.
Figure 5-1 Multiple Remote Terminal Organisation Diagram
LowPriorityInterrupt
BASE REGISTER
BRPIRP
Queues Address
RTSTAD
MessageInterrupt
MessageStatusReport
HighPriorityInterrupt
RT SimulationTableRT0RT1
RT30
(RT31)Broadcast
DDBOptions mask
Data buffer Address HIData buffer Address LO
DDBOptions mask
Data buffer Address
DATABUFFERS
Time Tag HITime Tag LO
Data
DDBOptions mask
Data buffer Address HIData buffer Address LO
RT0 LS LUT
Illegalization WordDDB AddressRX
TX
RT0 HS LUT
Illegalization WordDDB AddressRX
TX
RT0 LS ModeCode LUT
Illegalization WordDDB AddressRX
TX
DATABUFFERS
Time Tag HITime Tag LO
Data
DATABUFFERS
Time Tag HITime Tag LO
Data
BC/MRTMRT
UUUMMM 111000999999777 RRReeevvv BBB - 50 -
5.2 LOOK-UP-TABLES
For each RT the Western Avionics 4220 board manages three different look-up-tables, the address of these tables areobtained from the RT simulation tables. These tables are as follows:
• LS Look-up Table giving a descriptor for each LS sub-address.
• HS Look-up-Table giving a descriptor for each HS message identifier.
• LS Mode Command Look-up-Table giving a descriptor for each 3838 mode code.
NOTE: The T/R bit of the Command word or Action word is used as an offset to point to the RX or TXblock of the look-up tables.
Each descriptor includes:
• A Message Error Description (or Illegalization) word.
• A Data Descriptor Block Address (or Extended sub-address look-up table address) as for BC mode.
5.3 MODE COMMANDS SPECIFICATIONS
All illegal mode codes defined in the 3838 standard are automatically illegalized. The error descriptor word allowsillegalization of complementary mode codes.
Associated data words which are not obtained from the RT Simulation Tables can be obtained from (or stored in)memory using Data Descriptor Blocks. For each mode code DDB can be used to define IRQ's.
HS mode commands are processed in accordance with STANAG 3910. The message identifier points 00 (T/R=O)and 80H (T/R=l) in the HS look-up-table define two illegalization and DDB address word pairs for all HS modecommands. This allows one of the mode types (T/R=0 or T/R=l) to be illegalized if required. The DDB allows thedefinition of common interrupt requests for all the HS mode commands.
5.4 DATA WORDS STORAGETo avoid data buffers overwriting in memory when receiving a data message, the 4220 board does not store moredata words than the number defined by:
• Data Word Count + l (if no header option), or Data Word Count + Header Word Count +l (if header option).• Data Word Count for HS message.
Data Word Count is defined in the DDB. The extra word for LS messages will be the last received word of amessage in excess of the DDB data word count.
5.5 LS ERROR INJECTION DEFINITIONError injection on status word and 3838 data words transmitted can be defined message by message using themessage error descriptor word in the look-up-table, or globally for all messages transmitted by an RT using globalRT error injection word in each RT simulation table.
UUUMMM 111000999999777 RRReeevvv BBB - 51 -
5.5.1 Global RT Error Description Word (RT Simulation Table)The following word defines the errors that can be injected into the message.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D00T T T X X X X X X X X X X X X X
TTT = 000 => Modulation Error
XXXXXXXXXXXXX = WWWWWWYYYYYYY
WWWWWW = Word Number For Modulation Error
Y Y Y Y Y Y Y = ERROR TYPE0 0 0 0 0 0 0 = Parity error0 S5 S4 S3 S2 S1 S0 = Synchro Pattern Error1 0 B4 B3 B2 B1 B0 = Manchester Bit Error1 1 L4 L3 L2 L1 L0 = Word Length Error
TTT = 001 => Wrong Bus ErrorXXXXXXXXXXXXX = 0000000000000
TTT = 010 => Both Bus ErrorXXXXXXXXXXXXX = 0000000000000
TTT = 011 => Word Count ErrorXXXXXXXXXXXXX = 000000PCCCCCC
P = Word Count Error Polarity2 = Word Count Error +VE3 = Word Count Error -VECCCCCC = Word Count Error Value (Allows +/- 64 Words)
TTT = 100 => Response Time ErrorXXXXXXXXXXXXX = 00000000RRRRR
RRRR = Unique Response Time for simulated RT in uS. See NOTE (4) in paragraph 5-5.2
NOTE: Global error injection is enabled/disabled by the LSB bit of the simulation type word.
UUUMMM 111000999999777 RRReeevvv BBB - 52 -
5.5.2 Message Error Injection Word (Look-up-Table)
The following word defines the errors that can be injected into the message.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D00T T T X X X X X X X X X 0 X X X
TTT = 000 => Modulation Error
XXXXXXXXXXXXX = WWWWWWYYYYYYY
WWWWWW = Word Number For Modulation Error0 : status word1 : 1st data word
Y Y Y Y Y Y Y = ERROR TYPE0 0 0 0 0 0 0 = Parity error0 S5 S4 S3 S2 S1 S0 = Synchro Pattern Error1 0 B4 B3 B2 B1 B0 = Manchester Bit Error1 1 L4 L3 L2 L1 L0 = Word Length Error
TTT = 001 => Wrong Bus ErrorXXXXXXXXXXXXX = 0000000000000
TTT = 010 => Both Bus ErrorXXXXXXXXXXXXX = 0000000000000
TTT = 011 => Word Count ErrorXXXXXXXXXXXXX = 000000PCCCCCC
P = Word Count Error Polarity0 = Word Count Error +VE1 = Word Count Error -VECCCCCC = Word Count Error Value (Allows +/- 64 Words)
TTT = 100 => Response Time ErrorXXXXXXXXXXXXX = 00000000RRRRR
RRRR = Unique Response Time for simulated RT in uS. See NOTE (4) in paragraph 5-5.2
TTT = 101 => Illegal CommandXXXXXXXXXXXXX = 0000000000000
TTT = 110 => Extended SubaddressXXXXXXXXXXXXX = 0000000000000
TTT = 111 => Resync. System ClockXXXXXXXXXXXXX = 0000000000000
UUUMMM 111000999999777 RRReeevvv BBB - 53 -
NOTES: 1. No error : TTT = 000, WWWWWW = 111111
2. LS errors injection on HS action words commands:The VXI-2800 module can inject errors on the LS status words in response to an action wordreceive command when simulating the RT. The error injection is defined in the look-up-table inthe word pointed by the HS sub-address, so it is common for the HS message identifiers.
3. In the HS look-up-table:For an HS message identifier, the error description word can take only two values:
Word = 0000H for normalWord ≠0000H to illegalize the corresponding HS message identifier.
Illegalization is managed (corresponding to the STANAG 3910) by the setting of the HS messageframe error bit in the HS status word. If a HS TX message is illegalized the RT will not transmitthe HD data.
Error injections on the HS lines are defined in the DDB.
4. TX mode codes and all HS messages have fixed response times and will not be affected by theglobal or look-up-table response time error option. All other messages have a minimumresponse time of 8 µs. The individual response time facility in the error injection word is avalue that is added to the minimum response time. Therefore, a unique response time value ofthree in the error word will result in of response time of 11 µS.
UUUMMM 111000999999777 RRReeevvv BBB - 54 -
5.6 INTERRUPTS CODING
5.6.1 Low and High Priority Interrupts (two word code)
On data messages without error : 0800H, DDB addressOn data messages with error : 0C00H, DDB addressOn mode commands without error : 0900H, DDB addressOn mode commands with error : 0D00H, DDB addressOn HS mode commands without error : 0AXXH, Action wordOn HS mode commands with error : 0EXXH, Action word (XX = RT number)
5.6.2 Message lnterrupts (or set of messages interrupt)One word code equals message interrupt code in data descriptor block. The code is pushed in queue only if themessage is correct. Sets of Messages: Same feature as for BC mode.
5.6.3 Status Report Queue (two words per report)Code pushed into queue only if error on message and Interrupt on erroneous message not set in the DDB.
1st Word: Pointer to the double word in look-up-table (look-up-table address + index)
2nd Word: Events
BIT 15 : Wrong/Both Buses ErrorIT 14 : No Response ErrorIT 13 : RT Address ErrorIT 12 : TX Error- Mn, Lg, Sh, Py, WC, Late-ResponseBIT 11 : SYNC Type ErrorBIT 10 to 7: Not UsedBIT 06 : HS wordcount error polarity ( 1 = Too many words).BIT 05 : HS Word Count ErrorBIT 04 : HS FCS ErrorBIT 03 : HS preamble bit count error.BIT 02 : HS manchester encoding errorBIT 01 : HS RI timeoutBIT 00 : HS bit count error
The bits 15 to 11 are used for:
• Status Word and data if it's an LS message.
• Status Word if it's a transmitted HS message.
NOTE: If an error is detected on an action word (data following a receive command with HS sub-address) areport is pushed in the queue:
1st Word : Pointer to the LS look-up-table with index = HS sub-address2nd Word : LS error code on bits 15 to 11.
UUUMMM 111000999999777 RRReeevvv BBB - 55 -
5.7 SPECIFIC FUNCTIONS
5.7.1 Data Message ReceptionEach data message not transmitted by the Western Avionics 4220 board may be stored. The path to access the databuffer is given by the RT look-up-table for messages BC <=> RT. Except for RT->RT messages, even if the RTsare simulated or not, the path to point to the data buffer is always given by the transmitting RT look-up-table, but thereceiving RT look-up-table must point to a false DDB. Received status words from RTs not simulated on-board arestored in the associated disabled RT SIM table. If an external RT fails to respond a value of FFFFH will be stored inthe SIM table.
5.7.2 Reception of Mode Commands Data WordsFor each mode command with data word message, if the data word is not transmitted by the board, it must be stored(RT simulated or not). The path for storing the data word is given by the RT mode command look-up-table.
5.7.3 Mode Command "Synchronise with Data Word"When receiving a broadcast mode command "Synchronise with Data word", the on-board processor:
• Stores the data word value in the "Cycling Interrupt Update Register" in base registers and set thecycling IRQ.
• Accesses to a DDB to store the data word in a buffer and time-tag the data buffer.
• Uses the value of the data word (which is for example the minor cycle number: 0 to 7) to manage frequencytoggling of the data buffers.
5.7.4 Frequency ToggleThe frequency toggle option works in the same manner as the BC mode except that the minor cycle number is givenby the data word associated to the mode command synchronise with data word. This mode command is due tocirculate on the bus at the beginning of each minor cycle and toggles (bank A or B) are managed when this messageoccurs.
Minor Cycle(frequency F)
0 1 2 3 4 5 6 7 8 9 A B C …
F Hz. A B A B A B A B A B A B AF/2 Hz A A B B A A B B B A B B AF/4 Hz A A A A B B B B A A A A BF/8 Hz A A A A A A A A B B B B B
5.7.5 Programmable HS RI / TI Time in DDBWhen in MRT mode these values have an offset of 18µs. For example, if the user requires a TI time of 30µs a valueof 12 must be stored in the DDB word.
UUUMMM 111000999999777 RRReeevvv BBB - 56 -
6 CHRONOLOGICAL BUS MONITOR MODE OF OPERATION
6.1 INTRODUCTIONWhen acting in BC or MRT mode, a comprehensive window monitor facility is provided. However, the WesternAvionics 4220 can also act as a chronological monitor for bus event detection and message recording. In this modethe Western Avionics 4220 can be set to trigger on specific events, and sequentially record precise time stampedmessages on a stack. The size and position of this stack can be defined by the user.
NOTE: When the Western Avionics 4220 is in this mode the BC/MRT facility is not available.
All address pointers for the Bus Monitor are 16 bit words defining a PAGE address. Each page is 32 bytes.
Example: If a message pointer contains the value 2301H this indicates an absolute address of BASE+ (2301Hx 20H) = BASE+46020H.
6.2 BASE REGISTERS
Table 6-1 Base Registers
BASE REGISTER+00H Control Register (Write) / Clock HI Word (Read)+02H Clock LO Word (Read) LSB of clock = 0.5 uS.+04H Command Register (CR)+06H Status Register (SR)
+08H to +20H Reserved+22H Transformer/Direct Coupling Select Register
+24H to +2AH Reserved+2CH HS Subaddress Register+2EH Reserved+30H Reserved+32H Reserved+34H IRQ Selection Register+36H Reserved+38H Load Clock HI Register+3AH Load Clock LO Register+3CH Reserved+3EH Reserved+40H Reserved+42H Current Address Register (CAR)+44H Trigger Occurrence Register (TOR)+46H Trigger Set-up Pointer (TSP)
UUUMMM 111000999999777 RRReeevvv BBB - 57 -
6.2.1 Control Register (Write) (00H)D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 0 0 0 0 HR 0 IEN IRQ 0 0 0 C1 C0
C0 Clear => Command Request Cl Clear => Insertion Request HR Clear => Hardware RESET
If IEN is set and IRQ is set then interrupt line will be cleared.If IEN is set and IRQ is clear then the interrupt line will be asserted (for test purposes only).If IEN is clear the value of IRQ is unaffected.
Note: This register must be accessed to clear the interrupt during an interrupt service routine.
Examples: 1. 0102H generates a command request.2. 0163H clears the interrupt line.
6.2.2 Command Register (CR)Prior to clearing the Command Request bit (C0) in the Control Register, the user must first test that the CR is clear.When the CR is clear the user can insert the next command to be executed. Refer to table 6-2.
Table 6-2 Command Registers
CODE COMMAND
0000H Illegal0001H GO TO BCT MODE0002H GO TO MRT MODE0003H GO TO MON MODE0004H Reserved0005H Reserved0006H Reserved0007H Reserved0008H Reserved0009H Reserved000AH Reserved000BH Reserved000CH LOAD CLOCK000DH SELFTEST000EH RUN MONITOR000FH STOP MONITOR0010H SYNCHRONISE CLOCK
After the command is loaded, bit C0 in the Command register can be cleared. When the CR clears the board isready for a new command.
UUUMMM 111000999999777 RRReeevvv BBB - 58 -
6.2.3 Status Register (SR)This register contains a code reflecting the status of the board as shown in table 6-3.
Table 6-3 Status Registers
CODE COMMAND
0001H Reserved0002H Reserved0003H MONITOR IDLE0004H Reserved0005H Reserved0006H Reserved0007H MONITOR RUNNING0008H Reserved
The Status Register will contain the following information after completion of selftest.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D001 0 0 LS 0 0 LC M5 M4 M3 M2 M1 1 0 0 0
LS = 1 3838 Interface Test FailedFR = 1 Frame Counter Test FailedLC = 1 Local Clock Test FailedM5 = 1 Memory Test 5 FailedM4 = 1 Memory Test 4 FailedM3 = 1 Memory Test 3 FailedM2 = 1 Memory Test 2 FailedMl = 1 Memory Test 1 Failed
If no selftest errors are detected the Status Register will be 8008H.
6.2.4 Transformer/Direct Coupling Select RegisterIf the LSB of this register is set to ‘1’ the module will be configured for 3838 transformer coupling.If the LSB of this register is set to ‘0’ the module will be configured for 3838 direct coupling.
6.2.5 HS Subaddress RegisterThe least significant five bits of this register will define the RT Subaddress used by the system for HS transfers.
6.2.6 IRQ Selection Register (34H)
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 0 Trigger Post Trigger Full Stack Half Stack
0 0 T 0 0 P 0 0 F 0 0 H
T = If set, a physical INTA interrupt will be generated when the trigger condition is met.P = If set, a physical INTA interrupt will be generated when all the post trigger data is captured.F = If set, a physical INTA interrupt will be generated when the stack is full.H = If set, a physical INTA interrupt will be generated when the stack is half full.
UUUMMM 111000999999777 RRReeevvv BBB - 59 -
6.2.7 Load Clock HI/LO Registers (+38H1 / +3AH)If a LOAD CLOCK command is executed, these two registers define a 32-bit value to be loaded into the counter. If aSYNCHRONIZE CLOCK command is executed, the two registers define a 32 bit signed number to be added to thecurrent clock value.
6.2.8 Current Address Register (CAR) (+42H)This register contains the PAGE address of the current message being stored.
6.2.9 Trigger Occurrence Register (TOR) (+44H)This register contains the PAGE address of the message that met the pre-programmed trigger condition.
6.2.10 Trigger Set-up Pointer (TSP) (+46H)This register contains the absolute address of the trigger set-up data.
NOTE: This value is only 16 bits. All trigger set-up data must reside in the first 64Kbytes of the board.
6.2.10.1 Trigger Set-up Data
TSPAddress
+00H Post Trigger Count Register (PTCR)This register will contain the number of messages to be stored after the trigger condition is met. This valuewill be in the range 0000H to 8000H.
0000H = Stop immediately after trigger message.8000H = Capture Forever.
+02H Selective Capture Count Register (SCCR)This register will contain the number of messages to be stored when the monitor is in the Selective CaptureMode. This value will be in the range 0000H - 8000H.
20000H = 1 message.8000H = Selective Capture Forever.
+04H Start Page Register (SPR)This register will contain the desired PAGE address for the start of the monitor stack area.
+06H Finish Page Register (FPR)
This register will contain the desired PAGE address for the end of the monitor stack area. This value mustbe greater than the Start Page Register value.
+08H Window Word Count Register
This register will contain the word number in the specified message on which the window trigger test is tobe carried out. If this value is zero, the test will be carried out on any word within the specified message.
UUUMMM 111000999999777 RRReeevvv BBB - 60 -
+0AH 3910 Trigger Error RegisterThis register will define the error(s) in a 3910 message required for a trigger condition to occur. If more thanone error is defined, the condition will be a logical OR of these errors. This register is only relevant whenthe monitor trigger is in 3910 mode.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D00D 0 0 0 0 0 0 0 0 0 W F P E R B
W = Trigger on Word Count ErrorF = Trigger on FCS ErrorP = Preamble bit count errorE = Manchester encoding errorR = RI timeout (no HS response)B = Bit count error
+0CH Hardware Trigger Register
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 0 0 0 0 0 0 0 0 0 C T N P
P = 1 The Monitor will wait for LO-HI transition on the TRIG-IN input before storing messages andsearching for the software trigger condition.
N = 1 The Monitor will wait for a HI-LO transition on the TRIG-IN input before storing messages andsearching for the software trigger condition.
T = 1 The Monitor will generate a >1.5µS pulse on the TRIG-OUT when the software trigger conditionhas been detected.
C = 1 The Monitor will generate a >l.5µS pulse on the TRIG-OUT when the post trigger message counthas been reached.
6.3 DETAILED TRIGGER DESCRIPTIONThe Bus Monitor has four triggers that can be set up to trigger on a wide variety of complex conditions. Each triggercan be allocated one of four different data and error conditions. If a trigger passes this condition it then moves on tothe trigger defined by the Pass register. If a trigger fails this condition it then moves on to the trigger defined by theFail Register. Each trigger is allocated a trigger type value from one to six and these are as follows:
Value 1 Single Trigger Mode - The Single Trigger Mode will search for the trigger data defined by theTrigger Data Pointer Register. If this condition is TRUE for the incoming 3838 word the SingleTrigger will branch to the trigger defined in the Pass Register. If it fails, it will branch to the triggerdefined by the Fail Trigger Register.
Value 2 Window Trigger - The Window Trigger Mode will search for the trigger data defined by the TriggerData Pointer Register within the first 3838 message it encounters. If this condition is TRUE for aword within the incoming message, the Window Trigger will branch to the trigger defined in the PassRegister. If the value of the Window Word Count Register is non zero the Window Trigger will usethis value to specify the word number within the message for the Trigger test to be carried out. If thisvalue is zero all words within the message will be tested. The Window Trigger would normally bepreceded by a Single Trigger. The Single Trigger would define the specific 3838 command word, thenpass to the Window Trigger to define a specific bit pattern of a particular word within this message. Ifthe Window Trigger Fail Register points back to the Single Trigger requirements, then the monitor willstart again with the next 3838 message.
UUUMMM 111000999999777 RRReeevvv BBB - 61 -
Value 3 3910 Message Trigger Mode - The 3910 Message Trigger will act the same as the Window Triggerwith the following exceptions:
a. There is no associated word count register. This trigger should only be used for 3838messages that will initiate a 3910 data transfer.
b. If the specified 3838 word within the message is found, this trigger does not automaticallypass to the next trigger. The resulting 3910 message is interrogated and compared with the3910 Trigger Error Register. Only if this condition is met will it branch to the trigger definedby the Pass Register. If this condition is not met, the next trigger will be defined by the FailPointer Register.
Value 4 Selective 1 Trigger Mode - The Selective 1 Trigger searches for a particular word as with the SingleTrigger type. However, if the last word of a message is encountered before this trigger condition ismet, the message is not saved on the stack. If this trigger condition is met, it will branch to the triggerdefined by the Pass Register.
Value 5 Selective 2 Trigger Mode- This trigger type is the same as the Window Trigger with the followingexceptions:
a. If the specific word within the message is not found, the message will not be stored on thestack and the next trigger is defined by the contents of the Fail Pointer Register.
b. When the trigger condition is found, the message is stored on the stack. If the number ofselective messages defined by the Selective Capture Count Register have not been stored, thenext trigger is defined by the contents of the Fail Pointer Register.
When the programmed number of messages have been stored, the next trigger is defined bythe Pass register. Therefore, the two selective capture triggers allow the storage of a specificmessage or messages.
Value 6 Post Trigger Count Mode - This mode is used as a terminator to the trigger sequence. This modesimply stores the number of messages defined by the Post Trigger Count Register on the stack and thenstops activity. If the PTC is set to H8000, storage will continue until the board is commanded to halt.
NOTES • This trigger mode always resides in the Trigger Stop Register and never in anyother register.
• This is trigger 5 and must always be pointed at as the last part of the trigger sequence.
Trigger 1:
Trigger 1 type Register @ Base Address +0EH
This register will define the trigger type allocated to trigger 1. This value will be in the range 1 to 6.
Trigger 1 Data Pointer @ Base Address +l0H
This register will define the trigger data allocated to trigger 1. This value will be the range 1 to 4.
Trigger 1 Pass Pointer @ Base Address +12H
This register will define the new trigger to be activated if this trigger condition passes.This value will be the range 1 to 5.
Trigger 1 Fail Pointer @ Base Address +14H
This register will define the new trigger to be activated if this trigger condition fails This value will be therange 1 to 5.
UUUMMM 111000999999777 RRReeevvv BBB - 62 -
Trigger 2:
Trigger 2 Type Register @ Base Address +16H
This register will define the trigger type allocated to trigger 2.
This value will be the range 1 to 6.
Trigger 2 Data Pointer @ Base Address +1 8H
This register will define the trigger data allocated to trigger 2.
This value will be the range 1 to 4.
Trigger 2 Pass Pointer @ Base Address +lAH
This register will define the new trigger to be activated if this trigger condition passes.
This value will be the range 1 to 5.
Trigger 2 Fail Pointer @ Base Address +lCH
This register will define the new trigger to be activated if this trigger condition fails.This value will be the range 1 to 5.
Trigger 3:
Trigger 3 Type Register @ Base Address +lEH
This register will define the trigger type allocated to trigger 3.This value will be the range 1 to 6.
Trigger 3 Data Pointer @ Base Address +20H
This register will define the trigger data allocated to trigger 3.This value will be the range 1 to 4.
Trigger 3 Pass Pointer @ Base Address +22H
This register will define the new trigger to be activated if this trigger condition passes.This value will be the range 1 to 5.
Trigger 3 Fail Pointer @ Base Address +24H
This register will define the new trigger to be activated if this trigger condition fails.This value will be the range 1 to 5.
Trigger 4:
Trigger 4 Type Register @ Base Address +26H
This register will define the trigger type allocated to trigger 4.This value will be the range 1 to 6
Trigger 4 Data Pointer @ Base Address +28H
This register will define the trigger data allocated to trigger 4.This value will be the range 1 to 4.
Trigger 4 Pass Pointer @ Base Address +2AH
This register will define the new trigger to be activated if this trigger condition passes.This value will be the range 1 to 5.
Trigger 4 Fail Pointer @ Base Address +2CH
This register will define the new trigger to be activated if this trigger condition fails.This value will be the range 1 to 5.
UUUMMM 111000999999777 RRReeevvv BBB - 63 -
Trigger Stop Register @ Base Address +2EH
This register will always be programmed to the value 6.This register is the STOP trigger sequence register.
Trigger Data 1:
Trigger Data 1 Bit Mask Register @ Base Address +30H
This register will define the bits to be ignored in the trigger bit pattern for trigger data 1.Any bit set in this register will be masked from the trigger test condition.
Trigger Data 1 Bit Pattern Register @ Base Address +32H
This register will define the bit pattern required for trigger data 1.
Trigger Data 1 Bus ID/Word Type Mask @ Base Address +34H
This register will define the Bus ID and Word Type bits to be ignored in the Bus ID/Word Type Register.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 0 0 0 0 W W 0 B B 0 0 0 0
Both W bits = 1 Ignore Word Type in trigger condition.Both B bits = 1 Ignore Bus ID in trigger condition.
Trigger Data 1 Bus ID/Word Type Register @ Base Address +36H
This register will define the Bus ID and Word Type for the trigger condition.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 0 0 0 0 W W 0 B B 0 0 0 0
WMsb WLsb BMsb BLsb0 0 Trigger on Command 0 0 Illegal0 1 Trigger on Status 0 1 Trigger on Primary1 0 Trigger on Data 1 0 Trigger on Secondary1 1 Trigger on RT-RT Transfer 1 1 Trigger on Both Buses
Trigger Data 1 Error Word Mask Register @ Base Address +38H
This register will define if the Error Word Register is to be included in the trigger condition.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 D 0 0 0 0 0 0 0 0 0 0 0 0 0
D = 1 Error condition disabled.
UUUMMM 111000999999777 RRReeevvv BBB - 64 -
Trigger Data 1 Error Word Register @ Base Address +3AH
This register will define the Errors required in the trigger condition.If more than one error is set, the trigger condition will be a logical OR of the errors.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 Py Mn Lg Sh 0 0 WC 0 0 NR TA Sy 0
Sy = 1 Sync Type Error Sh = 1 Short Word ErrorTA = 1 Terminal Address Error Lg = 1 Long Word ErrorNR = 1 No Response Error Mn = 1 Manchester ErrorWC = 1 Wordcount Error Py = 1 Parity Error
Trigger Data 2:
Trigger Data 2 Bit Mask Register @ Base Address +3CH
This register will define the bits to be ignored in the trigger bit pattern for trigger data 2.Any bit set in this register will be masked from the trigger test condition.
Trigger Data 2 Bit Pattern Register @ Base Address +3EH
This register will define the bit pattern required for trigger data 2.
Trigger Data 2 Bus ID/Word Type Mask @ Base Address +40H
This register will define the Bus ID and Word Type bits to be ignored in the Bus ID/Word Type Register.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 0 0 0 0 W W 0 B B 0 0 0 0
Both W bits = 1 Ignore Word Type in trigger condition.Both B bits = 1 Ignore Bus ID in trigger condition.
Trigger Data 2 Bus ID/Word Type Register @ Base Address +42H
This register will define the Bus ID and Word Type for the trigger condition.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 0 0 0 0 W W 0 B B 0 0 0 0
WMsb WLsb BMsb BLsb0 0 Trigger on Command 0 0 Illegal0 1 Trigger on Status 0 1 Trigger on Primary1 0 Trigger on Data 1 0 Trigger on Secondary1 1 Trigger on RT-RT Transfer 1 1 Trigger on Both Buses
Trigger Data 2 Error Word Mask Register @ Base Address +44H
This register will define if the Error Word Register is to be included in the trigger condition.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 D 0 0 0 0 0 0 0 0 0 0 0 0 0
D = 1 Error condition disabled.
UUUMMM 111000999999777 RRReeevvv BBB - 65 -
Trigger Data 2 Error Word Register @ Base Address +46H
This register will define the Errors required in the trigger condition.If more than one error is set, the trigger condition will be a logical OR of the errors.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 Py Mn Lg Sh 0 0 WC 0 0 NR TA Sy 0
Sy = 1 Sync Type Error Sh = 1 Short Word ErrorTA = 1 Terminal Address Error Lg = 1 Long Word ErrorNR = 1 No Response Error Mn = 1 Manchester ErrorWC = 1 Wordcount Error Py = 1 Parity Error
Trigger Data 3:
Trigger Data 3 Bit Mask Register @ Base Address +48H
This register will define the bits to be ignored in the trigger bit pattern for trigger data 3.Any bit set in this register will be masked from the trigger test condition.
Trigger Data 3 Bit Pattern Register @ Base Address +4AH
This register will define the bit pattern required for trigger data 3.
Trigger Data 3 Bus ID/Word Type Mask @ Base Address +4CH
This register will define the Bus ID and Word Type bits to be ignored in the Bus ID/Word Type Register.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 0 0 0 0 W W 0 B B 0 0 0 0
Both W bits = 1 Ignore Word Type in trigger condition.Both B bits = 1 Ignore Bus ID in trigger condition.
Trigger Data 3 Bus ID/Word Type Register @ Base Address +4EH
This register will define the Bus ID and Word Type for the trigger condition.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 0 0 0 0 W W 0 B B 0 0 0 0
WMsb WLsb BMsb BLsb0 0 Trigger on Command 0 0 Illegal0 1 Trigger on Status 0 1 Trigger on Primary1 0 Trigger on Date 1 0 Trigger on Secondary1 1 Trigger on RT-RT Transfer 1 1 Trigger on Both Buses
Trigger Data 3 Error Word Mask Register @ Base Address +50H
This register will define if the Error Word Register is to be included in the trigger condition.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 D 0 0 0 0 0 0 0 0 0 0 0 0 0
D = 1 Error condition disabled.
UUUMMM 111000999999777 RRReeevvv BBB - 66 -
Trigger Data 3 Error Word Register @ Base Address +52H
This register will define the Errors required in the trigger condition.If more than one error is set, the trigger condition will be a logical OR of the errors.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 Py Mn Lg Sh 0 0 WC 0 0 NR TA Sy 0
Sy = 1 Sync Type Error Sh = 1 Short Word ErrorTA = 1 Terminal Address Error Lg = 1 Long Word ErrorNR = 1 No Response Error Mn = 1 Manchester ErrorWC = 1 Wordcount Error Py = 1 Parity Error
Trigger Data 4:
Trigger Data 4 Bit Mask Register @ Base Address +54H
This register will define the bits to be ignored in the trigger bit pattern for trigger data 4.Any bit set in this register will be masked from the trigger test condition.
Trigger Data 4 Bit Pattern Register @ Base Address +56H
This register will define the bit pattern required for trigger data
Trigger Data 4 Bus ID/Word Type Mask @ Base Address +58H
This register will define the Bus ID and Word Type bits to be ignored in the Bus ID/Word Type Register.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 0 0 0 0 W W 0 B B 0 0 0 0
Both W bits = 1 Ignore Word Type in trigger condition.Both B bits = 1 Ignore Bus ID in trigger condition.
Trigger Data 4 Bus/Word Type Register @ Base Address +5AH
This register will define the Bus ID and Word Type for the trigger condition.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 0 0 0 0 W W 0 B B 0 0 0 0
Wmsb WLsb BMsb BLsb0 0 Trigger on Command 0 0 Illegal0 1 Trigger on Status 0 1 Trigger on Primary1 0 Trigger on Data 1 0 Trigger on Secondary1 1 Trigger on RT-RT Transfer 1 1 Trigger on Both Buses
Trigger Data 4 Error Word Mask Register @ Base Address +5CH
This register will define if the Error Word Register is to be included in the trigger condition.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 D 0 0 0 0 0 0 0 0 0 0 0 0 0
D = 1 Error condition disabled.
UUUMMM 111000999999777 RRReeevvv BBB - 67 -
Trigger Data 4 Error Word Register @ Base Address +5EH
This register will define the Errors required in the trigger condition.If more than one error is set, the trigger condition will be a logical OR of the errors.
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D000 0 0 Py Mn Lg Sh 0 0 WC 0 0 NR TA Sy 0
Sy = 1 Sync Type Error Sh = 1 Short Word ErrorTA = 1 Terminal Address Error Lg = 1 Long Word ErrorNR = 1 No Response Error Mn = 1 Manchester ErrorWC = 1 Wordcount Error Py = 1 Parity Error
Trigger Start Register @ Base Address +60H
This register defines the first trigger to be used in the trigger sequence.This will be in the range 1 to 5.
ExamplesThe first trigger used in the sequence is defined by the contents of the Trigger Start Register. For these examples,assume that the Trigger Start Register points to Trigger 1 (value 1).
Key: TTR Trigger Type RegisterTDP Trigger Data PointerTPP Trigger Pass PointerTFP Trigger Fail PointerTSR Trigger Stop Register
Example 1.Find the word defined by Trigger Data 1, then save the number of messages defined by the PTC register.
TTRl 000lH TDPl 000lH TPPl 0005H TFPl 000lH
TSR 0006H
Example 2.
Find the message with word defined by the Trigger Data 2, followed by the Nth word within the messagedefined by the Trigger Data 4. Then, save the number of messages defined by the PTC register.
TTRl 000lHTDPl 0002HTPPl 0002HTFPl 000lH
TTR2 0002HTDP2 0004HTPP2 0005HTFP2 000lHTSR 0006H
UUUMMM 111000999999777 RRReeevvv BBB - 68 -
Example 3.
Find the message with word defined by Trigger Data 4 followed by the Nth word within the message definedby Trigger Data 1 by Trigger Data 3. i.e. Trigger on a specific 32 bit word.
TTRl 000lHTDPl 0004HTPPl 0002HTFPl 000lH
TTR2 0002HTDP2 000lHTPP2 0003HTFP2 000lH
TTR3 000lHTDP3 0003HTPP3 0005HTFP3 000lH
TTR4 0006H
Example 4.
Find the message with word defined by Trigger Data 4 followed by the Nth word within the message definedby Trigger Data 1. Then, selectively capture all messages with word defined by Trigger Data 3, followedby word within the message defined by Trigger Data 2.
TTRl 000lHTDPl 0004HTPPl 0002HTFPl 000lH
TTR2 0002HTDP2 000lHTPP2 0003HTFP2 000lH
TTR3 0004HTDP3 0003HTPP3 0004HTFP3 0003H
TTR4 0005HTDR4 0002HTPP4 0005HTFP4 0003H
TSR 0006H
UUUMMM 111000999999777 RRReeevvv BBB - 69 -
Example 5.
Find the message with word defined by Trigger Data followed by the Nth word within that message whichdoes not meet the conditions of Trigger Data 2.
TTRl 000lHTDP 000lHTPPl 0002HTFP1 000lH
TTR2 0002HTDP2 0002HTPP2 000lHTFP2 0004H
TSR 0006H
UUUMMM 111000999999777 RRReeevvv BBB - 70 -
6.4 STACK DATA FORMAT
When the Bus Monitor is commanded to start, all messages will be stored before the trigger condition is met.Therefore, all pre-trigger data is captured. The first captured message will start at the address defined by the Start PageRegister. All following messages will start on an even PAGE boundary. The STACK data will wraparound after theFinish Page Register value has been exceeded. The format of the messages are shown in table 6-4.
Table 6-4 Stack Data Format
WORD No. NAME
1 Previous Address Pointer2 Time Stamp HI3 Time Stamp LO4 Data5 Errors: :
N-4 DataN-3 ErrorsN-2 RT Response Time 1 (LSB = 0.5 uS)N-1 RT Response Time 2 (LSB = 0.5 uS)N Next Address Pointer
.
6.4.1 Previous Address PointerThe first word of each message will define the page address of the previous message.The first message stored will set this pointer to 0000H.
6.4.2 Time Stamp HI/LOThese two locations are a 32-bit word defining the value of the 32 bit 0.5µS clock when the message started.
6.4.3 DataThese words describe the previous DATA word TYPE, BUS_ID and associated errors as follows:
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D00ED HS OV Py Mn Lg Sh T1 T0 WC B1 B0 NR TA Sy 0
ED = 1 Indicates last 3838 word in message.HS = 1 Indicates message has associated 3910 data. Only set for last word.OV = 1 3910 DATA overlap. Decoder still active for previous 3910 message.Py = 1 3838 data word had a Parity error.Mn = 1 3838 data word had a Manchester error.Lg = 1 3838 data word had too many bits (Long).Sh = 1 3838 data word had too few bits (Short).
UUUMMM 111000999999777 RRReeevvv BBB - 71 -
T1, T0 describe the 3838 word type as follows:
T1 T0 WORD TYPE0 0 Command Word0 1 Status Word1 0 Data Word1 1 RT-RT Command Word
WC = 1 Indicates 3838 message had a word count error. Only set for last word.
Bl, B0 Describe the bus the 3838 word was captured on as follows
B1 B0 BUS ID.
0 0 Illegal0 1 Secondary1 0 Primary1 1 Both Buses
NR = 1 Indicates that a RT failed to respond to a command (No Response).Only set for last word.
TA = 1 Indicates that the RT status word did not match the address of the command word (TerminalAddress Error).
Sy = 1 Indicates that the 3838 word did not have the correct SYNC type.
6.4.4 Next Address Pointer
This word will define the page address of the next message. This value will be set to FFFFH for the last messageafter the post trigger count has expired and capturing has stopped.
6.4.5 RT Response Time 1/2
These two locations will define the RT response times, if any, of the Status words in the message.The second Response time is only applicable for 3838 RT-RT transfers.
UUUMMM 111000999999777 RRReeevvv BBB - 72 -
6.5 3910 DATA FORMATIf a 3838 message results in the transfer of 3910 data, this message will be stored at the first new page after the 3838message. The NEXT ADDRESS value in the 3838 data will account for this and point to the first page after theexpected 3910 data. The first word in the 3910 data will describe the validity of the message as follows:
D15 D14 D13 D12 D11 D10 D09 D08 D07 D06 D05 D04 D03 D02 D01 D00V 0 0 0 0 0 0 0 0 S W F 0 E R B
V :- If set this indicates that the 3910 message is ready to be interrogated.W :- If set this indicates that the 3910 message had wordcount error.S :- If W is set then this shall indicate if the error was +ve or –ve (1 = -ve).F :- If set this indicates that the 3910 message had a FCS error.E :- If set this indicates that the 3910 message had a Manchester encoding error.R :- If set this indicates that the 3910 message had a RI timeout (no HS response).B :- If set this indicates that the 3910 message had a bit count error.
The following word in the stack will be H0000 for a 3910 message with no Word Count error (W bit clear). If the Wbit is set this word will be a signed number defining the polarity (+1 = +ve, -1 = -ve).
The following words in the stack will be the received 3910 message as shown in table 6-5.
Table 6-5 Stack Messages
WORD No. NAME1 Frame Control / Physical Address2 Destination Address3 Word Count4 Data5 Data6 Data: :: :
N-2 DataN-1 DataN FCS
6.5.1 Flow Diagram
TRIGGER SETUP
PTCRSCCRSPRFPR
.etc
STACKBase +46H TriggerSet-up Register