Real-Time IEC 61850 Fast Message Services Implementation in VxWorks
This paper presents the design and realization of IEC 61850 Fast Message Transmission Services (FMTS) â specifically Sampled Value Messages (SV/SMM) and GOOSE messages â on the VxWorks real-time operating system. A Fast Communication Interface (FCI) is implemented to bypass the standard TCP/IP stack, enabling deterministic, low-latency communication directly over Ethernet.
⥠Introduction #
IEC 61850 defines high-performance communication for substation automation systems. SMM/SV and GOOSE messages demand sub-millisecond latency, which the standard VxWorks TCP/IP stack cannot satisfy. The FMTS implementation requires:
- Direct mapping from application/presentation layers to Ethernet data link.
- Efficient real-time task scheduling.
- Minimal processing overhead to meet <3 ms transmission requirements.
This work focuses on designing a Fast Communication Interface (FCI), implementing subscriber/publisher tasks, and optimizing real-time performance.
ð Analysis of Fast Message Transmission Services (FMTS) #
1.1 Abstract Communication Service Interface (ACSI) #
ACSI provides protocol-independent service definitions. FMTS messages use a publisher/subscriber model:
- SMM (SV): Periodic, fixed datasets, high-frequency sampled values.
- GOOSE (SGM): Event-driven with richer control parameters, fast retransmission upon events.
1.2 Specific Communication Service Mapping (SCSM) #
FMTS maps messages directly to Ethernet frames:
- Uses dedicated multicast addresses and VLAN priority tagging.
- APDUs/ASDUs encoded via ASN.1 BER.
- Supports IEC 61850-9-1 simplified or 9-2 full sampled values.
- GOOSE messages include control block references (
GoCBRef), sequence numbers (StNum,SqNum), and Time Allowed to Live (TAL).
ðĨ VxWorks Implementation #
2.1 Network Stack and MUX Layer #
- VxWorks uses MUX/END driver model.
- Standard applications access TCP/IP via sockets.
- FMTS bypasses TCP/IP using a high-priority MUX protocol for deterministic delivery.
2.2 Fast Communication Interface (FCI) #
FCI provides direct Ethernet access for SMM/GOOSE:
fciOpen()/muxBind()â Registers interface in MUX withMUX_PROTO_SNARF.fciMCastAddrSet()â Configures multicast addresses.fciSend()â Builds and sends Ethernet frames (EtherType 0x88B8/0x88BA).fciRcvRtn()â Receive callback for APDU validation and shared memory updates.- High task priorities and minimal FCI processing ensure low-latency delivery.
2.3 Application Tasks #
- SRT (tSavReceiveTask) â SV subscriber decoding APDUs, updating shared memory.
- GRT (tGooseReceiveTask) â GOOSE subscriber managing sequence numbers, TAL timeouts, and retransmissions.
- GST / GSF (tGooseSendTask + fGooseSend) â GOOSE publisher with periodic and fast retransmission strategies.
Example pseudocode (GOOSE receive):
void GRT_Task() {
while(1) {
wait_for_signal();
decode_GoCBRef_TAL_StNum_SqNum(...);
if (isValidNewEvent()) {
decode_AllData();
write_to_shared_memory();
release_semaphore_to_protection_app();
} else if (isRetransmission_or_Test()) {
update_SqNum_and_timing();
} else {
handle_counter_error();
}
}
}
ð Real-Time Optimization Techniques #
- Bind FCI to
MUX_PROTO_SNARFfor top priority. - Assign high task priorities (e.g., GST=38, GRT=39, SRT=40).
- Shared memory + binary semaphores for low-latency data exchange.
- Pre-encode static APDU fields, updating only dynamic content.
- Configure END drivers in DMA mode.
Test Results:
| Scenario | Max (Ξs) | Min (Ξs) | Avg (Ξs) |
|---|---|---|---|
| Baseline GOOSE | 425 | 425 | 425 |
| + Report | 450 | 425 | 425 |
| + Model Browsing | 575 | 425 | 550 |
| + FTP | 450 | 425 | 425 |
| Lower Priority Load | 1600 | 775 | 1050 |
All measured times remain well below 3 ms requirement. No packet loss observed.
â Conclusion #
The FCI + task-based architecture enables real-time SMM/GOOSE messaging on VxWorks:
- Deterministic Ethernet-based communication bypassing TCP/IP.
- High-priority tasks ensure low-latency handling.
- Shared memory provides fast data exchange to protection applications.
- Validated under realistic substation loads.
This design supports protection, interlocking, and merging unit communication within IEC 61850-compliant digital substations.
ðŪ Modern Perspective (2026) #
- VxWorks 7 / Helix with TSN support for sub-microsecond synchronization.
- Containerized RTPs for modular deployment.
- Integrated OPC UA and PTP (IEEE 1588) time synchronization.
- Advanced debugging with Wind River Workbench + System Viewer.
- Support for IEC 61850-9-2 LE profiles in process bus applications.
References
- IEC 61850 Series Standards.
- Research on GOOSE/SV real-time implementations.
- VxWorks Network and Driver Development Documentation.
- Real-Time IEC 61850 Fast Message Services Implementation in VxWorks