English
Language : 

XA-C3 Datasheet, PDF (46/68 Pages) NXP Semiconductors – XA 16-bit microcontroller family 32K/1024 OTP CAN transport layer controller 1 UART, 1 SPI Port, CAN 2.0B, 32 CAN ID Filters, transport layer co-proce
Philips Semiconductors
XA 16-bit microcontroller family
32K/1024 OTP CAN transport layer controller
1 UART, 1 SPI Port, CAN 2.0B, 32 CAN ID filters, transport layer co-processor
Preliminary specification
XA-C3
CAN/CTL MESSAGE HANDLER
1. MnMIDH – Message n Match ID High
Message Objects
The XA-C3 supports 32 independent Message Objects, each of
which can be either a transmit or a receive object. A receive object
can be associated either with a unique CAN ID, or with a set of CAN
IDs which share certain ID bit fields.
2. MnMIDL – Message n Match ID Low
3. MnMSKH – Message n Mask High
4. MnMSKL – Message n Mask Low
5. MnCTL – Message n Control
Each Message Object has access to its own block of data memory
6. MnBLR – Message n Buffer Location Register
space, which is known as the object’s message buffer. Both the size
and base address of an object’s message buffer is programmable.
7. MnBSZ – Message n Buffer Size
However, all message buffers must reside in the same 64Kbyte
8. MnFCR – Message n Fragment Count Register
segment of data memory, as the contents of a single register
(MBXSR…Message Buffer and XRAM Segment Register) are used
where n ranges from 0 to 31. In general, setting up a Message
to form the most significant byte of all 24–bit message buffer
Object involves configuring some or all of its eight MMRs.
addresses.
Additionally, there are several MMRs whose bits control global
Each Message Object is associated with a set of eight MMRs
dedicated to that object. Some of these registers function differently
for Tx than they do for Rx objects. The names of the eight MMRs
parameters that apply to all objects. Table 22 summarizes the eight
Message Object MMRs and their functions for receive and transmit
objects. Details can be found in the sections that follow.
are
Table 22. Message Object Register Functions for Tx and Rx
Message Object Register
(n = 0 – 31)
Rx Function
Tx Function
Address
Offset
MnMIDH
Match ID* [28:13]
CAN ID [28:13]
n0h
MnMIDL
Match ID* [12:0][IDE][–][–]
CAN ID [12:0][IDE][–][–]
n2h
MnMSKH
Mask [28:13]
DLC
n4h
MnMSKL
Mask [12:0][–][–][–]
Not used
n6h
MnCTL
Control
Control
n8h
MnBLR
Buffer base address [a15:a0]
Buffer base address [a15:a0]
nAh
MnBSZ
Buffer size
Buffer size
nCh
MnFCR
Fragmentation count**
Not used
nEh
* After reception, the actual incoming Screener ID (without regard to Mask bits) will be stored by hardware in MnMIDH and MnMIDL for the
benefit of the User application.
** Typically written to only by hardware. Exceptions are the CANopen and OSEK protocols in which the User application must also initialize
this register.
Receive Message Objects and the Receive
Process
During reception, the XA-C3 will store the incoming message in a
temporary (13–byte) buffer. Once it is determined that a complete,
error–free CAN frame has been successfully received, the XA-C3
will initiate the acceptance filtering (“Mask and Match”) process. If
acceptance filtering produces a Match with an enabled receive
object’s Match ID, the message is stored by the DMA engine in that
object’s message buffer.
Acceptance Filtering
The XA-C3 will sequentially compare the 30–bit Screener ID
extracted from the incoming frame to the corresponding Match ID
values specified in the MnMIDH and MnMIDL registers for all
currently enabled receive objects. Any of the bits which are Masked
will be excluded from this comparison. Masking is accomplished on
an object–by–object basis by writing a logic ‘1’ in the desired bit
position(s) in the appropriate MnMSKH or MnMSKL register.
Any screener ID bits which are not intended to participate in
acceptance filtering for a particular object must be Masked by the
User (e.g., ID bits 0 & 1 for a Standard CAN frame, and possibly one
or both data bytes).
If the acceptance filter determines that there is a Match between the
incoming frame and any enabled receive object, the contents of the
frame will be stored, via DMA, into the designated message buffer
space associated with that object. If there is a Match to more than
one Message Object, the frame will be considered to have matched
the one with the lowest object number.
To summarize, Acceptance Filtering proceeds as follows:
D The “Screener ID” field is extracted from the incoming CAN
Frame. The Screener ID field is assembled differently for
Standard and Extended CAN Frames.
D The assembled Screener ID field is compared to the Match ID
fields of all enabled receive Message Objects.
D Any bits which an object has Masked (by having ‘1’ bits in its
Mask field) are not included in the comparison. That is, if there is
a ‘1’ in some bit position of an object’s Mask field, the
corresponding bit in the object’s Match ID field becomes a don’t
care (i.e., always yields a Match with the Screener ID).
D If filtering in this manner produces a Match, the frame will be
stored via the DMA engine in that object’s message buffer. If there
is a Match with more than one object, the frame will be considered
to have matched the one with the lowest object number.
Screener ID Field for Standard CAN Frame
The following table shows how the Screener ID field is assembled
from the incoming bits of a Standard CAN Frame, and how it is
compared to the Match ID and Mask fields of Object n.
2000 Jan 25
39