CAN Queue Manager Priority Inversion and Expiration

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Controller Area Networks (CANs) in aircraft face issues such as priority inversion and message expiration due to bus loading and network conditions, leading to delayed transmission and stale data, which existing solutions like FlexCAN's priority-based hardware do not adequately address.

Innovation Solution

Implementing a queue manager module with computer-readable instructions that prioritizes messages based on priority and expiration indicators, manages queue overflow by removing lower-priority messages, and ensures timely transmission and removal of expired messages to prevent priority inversion and stale data.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If messages are arbitrated using standard CAN protocol, then all nodes can communicate on the bus, but low priority messages continuously lose arbitration and hold up higher priority messages (Priority Inversion)

Engineering Contradiction:
Improvemessage transmission reliabilityVSAvoidmessage transmission throughput
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent applies preliminary action by checking message priority and queue status before inserting a message into the transmission queue. The queue manager module evaluates whether to insert, refuse, or remove messages based on priority comparisons and queue fullness, preventing priority inversion before it occurs rather than resolving it after

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements dynamics by making the message insertion behavior adaptive based on current queue conditions. The queue manager dynamically adjusts insertion decisions based on real-time factors including queue fullness, message priorities, and expiration indicators, transitioning between different insertion modes (insert, refuse, remove) as conditions change

Inventive Principle:
Principle #15Dynamics

2Reliability

If the controller continuously attempts to resend buffered messages, then message delivery is ensured, but messages may expire prior to transmission due to loss of arbitration or network conditions

Engineering Contradiction:
Improvemessage delivery assuranceVSAvoidmessage transmission delay
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent applies preliminary action by checking the expiration indicator against current time before allowing message transmission. Messages are pre-screened for expiration status, and expired messages are rejected or removed from the queue before transmission attempts, preventing wasted retransmission cycles on stale data

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements feedback by continuously monitoring message expiration status and using this information to control transmission behavior. The queue manager receives feedback about current time versus expiration indicators and adjusts message handling accordingly, removing expired messages and preventing their transmission

Inventive Principle:
Principle #23Feedback

3Reliability

If a queue manager module implements deterministic arbitration with expiration checks, then high priority messages are transmitted first and expired messages are removed, but the device complexity increases

Engineering Contradiction:
Improvemessage transmission accuracyVSAvoidqueue management complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The patent applies self-service by implementing the queue manager module within the same controller that handles message transmission. The controller autonomously manages its own message queue, performing priority-based arbitration and expiration checking without requiring external management, thereby containing complexity within a single integrated component

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS9888079B2Method for managing messages across a controller area network
Publication Date: 2018.02.06 THE BOEING CO
  • US9888079B2 patent drawing
  • US9888079B2 patent drawing
  • US9888079B2 patent drawing

AI summary

A controller area network has a plurality of nodes in communication through a bus. The nodes have controllers and computer readable instructions that, when executed, perform the steps of: receiving a new message; inserting the new message into the queue in order of priority if the queue is not full; refusing the new message if the queue is full and the priority of the new message is lower than the priorities of current messages in the queue; inserting the new message into the queue in order of priority if the queue is full and the priority of the new message is higher than a priority of at least one of the current messages; removing the new message from the queue if the current time exceeds an expiration indicator; sending the new message to the controller for transmission and holding the new message in the queue during transmission; and removing the new message from the queue after successful transmission.