Documentation Home Page ◇ RT-XSG Toolbox Home Page
Pour la documentation en FRANÇAIS, utilisez l'outil de traduction de votre navigateur Chrome, Edge ou Safari. Voir un exemple.
ORION Low Speed Serial Communication Block Interface
Note that ORION is an acronym for OPAL Remote IO Network.
Block
Mask
Description
The Opal Remote IO Network (ORION) Block is a link-layer protocol for low-speed serial communication medium using Manchester (IEEE802.3) encoding scheme. The block provides a user interface from which designer can develop serial link.
Parameters
General Settings
Sample Period | Non-modifiable parameter. |
---|---|
Enable Flash Update Capabilities | When enabled, a Sideband channel ports will be provided to implement the Flash Update capabilities (Remote Flash Update of FPGA bitstream)
|
Enable Sideband Channel for initialization parameters | When enabled, Sideband channel ports are provided to implement the capabilities to download initialization configuration parameters. |
Provide Status ports | Provides communication block status ports. |
Remove Command Header Field from Output | When enabled, it removes the command header field from the output data stream. |
Inputs
serial_datain | Manchester encoded serail data input. |
---|---|
PrimaryChValidIn | When high indicates that the data present on port PrimaryChDataIn is valid when PrimaryChReady is also high. |
PrimaryChDataIn | Holds 16 bits of outgoing data. |
PrimaryChLastIn | Indicates the last data in the protocol frame. Signals the end of a frame (Active High). |
Optional Port
These ports are available only when Enable Sideband Channel for initialization parameters option is checked.
SidebandChValidIn | When high indicates that the data present on port SidebancChDataIn is valid when SidebandChReady is also high. |
---|---|
SidebandChDataIn | Holds 16 bits outgoing configuration data. |
SidebandChLastIn | Indicates the last data in the protocol frame. Signals the end of a frame (Active High) |
Outputs
serial_dataout | Manchester encoded serial data output |
---|---|
PrimaryChReady | Indicates the communication block is ready to accept incoming data. The block accepts data when both PrimaryChValidIn and PrimaryChReady are asserted high. |
PrimaryChValidOut | Indicates that the data present on port PrimaryChDataOut is valid. |
PrimaryChDataOut | Holds the incoming data from the channel partner. |
PrimaryChLastOut | Indicates the last data of the frame |
Optional Ports
These ports are available only when Enable Sideband Channel for initialization parameters option is checked.
SidebancChReady | Indicates the communication block is ready to accept incoming data. The block accept data when both SidebandChValidIn and SidebandChReady are asserted high. |
---|---|
SidebandChValidOut | Indicates that the data present on port SidebandChDataOut is valid. |
SidebandChDataOut | Holds the incoming data from the channel partner. |
SidebandChLastOut | Indicates the last data of the frame. |
These ports are available only when Provide Status Ports option is checked.
CRC_ERROR | Status port indicating that the communication block has detected a CRC error. |
---|---|
COMM_LOST | Status port indicating a loss of communication between link partner. A communication is considered lost if the block did not detect the transition of the serial input data over a certain period of time. |
WATCHDOG_ERROR | Status port indicating an error caused by a non-periodic reception of a message. |
Block Handshaking
Transmitting Data
The ORION Communication Block is a synchronous interface. The Block samples the data on the interface only on the positive edge of USER_CLK, and only on the cycles when both PrimaryChValidIn and PrimaryChReady are asserted (High).
Typical Transaction on the transmit interface.
When the signals are sampled, they are only considered valid if PrimaryChValidIn and PrimaryChReady are asserted high. The user application can de-assert PrimaryChValidIn on any clock cycle; this causes the ORION block to ignore the input data for that cycle.
Typical Transaction on the transmit interface with throttling.
To end the data transfer, the user asserts PrimaryChLastIn. The transaction ends when PrimaryChLastIn, PrimaryChValidIn and PrimaryChReady are all asserted high.
Note: The same principle applies to the Sideband Channel (SidebandChValidIn, SidebandChLastIn, SidebandChDataIn)
Receiving Data
The ORION block asserts the signal PrimaryChValidOut when the incoming data presents on PrimaryChDataOut bus is valid on the user interface. Applications should ignore any values on the receiving ports sampled while the valid flags (PrimaryChValidOut) are deasserted (Low).
The ORION Communication block has a CRC checker mechanism to verify the validity of the data stream. Consequently, there is a latency of 1 frame since the block needs to receive the complete frame and verify the CRC before putting all the data on its output ports.
Typical Transaction of the receiving interface.
Note: The same principle applies to the Sideband Channel (SidebandChValidOut, SidebandChLastOut, SidebandChDataOut).
Characteristics and Limitations
This Block has no specific characteristics or limitations
Direct Feedthrough | N/A |
---|---|
Discrete sample time | N/A |
XHP support | N/A |
Work offline | YES |
OPAL-RT TECHNOLOGIES, Inc. | 1751, rue Richardson, bureau 1060 | Montréal, Québec Canada H3K 1G6 | opal-rt.com | +1 514-935-2323
Follow OPAL-RT: LinkedIn | Facebook | YouTube | X/Twitter