Processor Communication Tokens for Interconnect Control

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Existing interconnect systems face challenges in efficiently transmitting control information alongside data, particularly in avoiding misinterpretation of control signals within messages, and require a more flexible control mechanism suitable for various application-specific needs.

Innovation Solution

The method involves generating data tokens and control tokens using specific instructions on a processor, where each token includes a single byte of data/control information and an additional bit to identify its type, allowing software to differentiate and manage control tokens, thereby avoiding complex escape sequences and providing flexibility in control mechanisms.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If control information is transmitted using discrete bytes within data messages, then the control mechanism can co-inhabit with data transmission, but control signals may be misinterpreted as data values requiring complex escape sequences

Engineering Contradiction:
Improvecontrol mechanism flexibilityVSAvoidescape sequence complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

The message is segmented into distinct token types (data tokens and control tokens) with a type identifier bit that segments the control function from the data function, eliminating the need for escape sequences while maintaining co-inhabitation of control and data transmission

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A type identifier bit acts as an intermediary that mediates between control information and data information, allowing the receiver to distinguish control tokens from data tokens without requiring complex escape sequences or special handling mechanisms

Inventive Principle:
Principle #24Intermediary (Mediator)

2Ease of operation

If control tokens are made accessible to software, then software developers gain greater control over interconnect mechanisms, but the control mechanism becomes more complex to manage

Engineering Contradiction:
Improvesoftware control accessibilityVSAvoidcontrol mechanism complexity
Core Design Contradiction:
Ease of operationVSDevice complexity

Solution Approach 1:

The token transmission mechanism serves multiple functions: data transmission, control signal transmission, and type identification, all within a unified framework that is accessible to software through standard instructions, reducing the need for separate complex control mechanisms

Inventive Principle:
Principle #6Universality (Multi-functionality)

Solution Approach 2:

The type identifier bit within each token enables self-service differentiation at the receiver end, where tokens automatically identify themselves as control or data tokens without requiring external management complexity or special software intervention

Inventive Principle:
Principle #25Self-service

3Productivity

If architecturally-defined control tokens are used to trigger interconnect logic, then control functions are efficiently executed, but software accessibility to these tokens is restricted

Engineering Contradiction:
Improveinterconnect control efficiencyVSAvoidsoftware control flexibility
Core Design Contradiction:
ProductivityVSAdaptability or versatility

Solution Approach 1:

The control token system is made dynamic by allowing software to generate and transmit control tokens using standard instructions, enabling the system to adapt between hardware-efficient control execution and software-flexible control generation based on operational needs

Inventive Principle:
Principle #15Dynamics

Data Source

PatentEP2165265B1Processor communication tokens
Publication Date: 2014.01.22 XMOS
  • EP2165265B1 patent drawingFigure 1
  • EP2165265B1 patent drawingFigure 2
  • EP2165265B1 patent drawingFigure 3

AI summary

The invention provides a method of transmitting messages over an interconnect between processors, each message comprising a header token specifying a destination processor and at least one of a data token and a control token. The method comprises: executing a first instruction on a first one of the processors to generate a data token comprising a byte of data and at least one additional bit to identify that token as a data token, and outputting the data token from the first processor onto the interconnect as part of one of the messages. The method also comprises executing a second instruction on said first processor to generate a control token comprising a byte of control information and at least one additional bit to identify that token as a control token, and outputting the control token from the first processor onto the interconnect as part of one of the messages.