Texas Instruments CC2650DK 사용자 설명서

다운로드
페이지 1570
IEEE 802.15.4
23.5.4.1.1.2 Source Matching
Source matching is performed on frames accepted by the frame filtering with a source address present. If
the source address was an extended address, the received address is compared against the entries in the
list pExtEntryList. If the source address was a short address, the received address and source pan ID are
compared against the entries in the list pShortEntryList.
The number of entries that the lists can hold is given by numExtEntries and numShortEntries. If either of
these values are 0, no source matching is performed on addresses of the corresponding type, and the
corresponding pointer is NULL. The lists start with source mapping enable bits, srcMatchEn, and continue
with pending enable bits, srcPendEn, followed by the list entries, see
and
The
enable bits consist of the number of 32-bit words needed to hold an enable bit for each entry in the list.
For each entry where the corresponding srcMatchEn bit is 1, the entry is compared against the received
source address for extended addresses, or against the received source address and PAN ID for short
addresses. If a match is found, the index is stored, and reported back in the message footer if configured
(see
Receive Buffers). If no match is found, the index reported back is 0xFF.
The source matching procedure may also be used for finding the pending data bit to be transmitted in an
auto-acknowledgment frame (see
ACK Transmission). If frameFiltOpt.autoPendEn is 1
and a source match was found, the pending data bit is set to the value of the bit in srcPendEn
corresponding to the index of the match. If no match was found or if frameFiltOpt.autoPendEn is 0, the
pending data bit is set equal to frameFiltOpt.defaultPend. If frameFiltOpt.bPendDataReqOnly is 1, the
radio CPU investigates the frame to determine if it is a MAC command frame with the command frame
identifier set to a Data Request. If not, the pending data bit of an auto ACK is set equal to 0, regardless of
the source matching result and the value of frameFiltOpt.defaultPend.
23.5.4.1.2 Frame Reception
After the frame filtering is done, the rest of the packet is received and stored in the receive queue. The
last two bytes of the PHY packet is the MAC footer, or FCS, which is a checked CRC. The CRC is only
stored in the queue if RXConfig.bIncludeCrc is 1.
The status of the received frame depends on the frame filtering result and the CRC check result. Two
status bits bCrcErr and bIgnore must be maintained. If configured, these bits are present in the Status
byte of the RX queue entry. The bCrcErr bit is 1 if the frame had a CRC error, and 0 otherwise. The
bIgnore bit is 1 if frame filtering is enabled and the frame was rejected by frame filtering, and 0 otherwise.
NOTE:
If frameFiltOpt.frameFiltStop is 1, frames with bIgnore equal to 1 will never be observed, as
the reception is stopped and the received bytes are not stored in the queue. If
RXConfig.bAutoFlushCrc is 1, packets with bCrcErr equal to 1 are removed from the queue
after reception, and if RXConfig.bAutoFlushIgn is 1, packets with bIgnore equal to 1 are
removed from the queue after reception.
After a packet has been received, an interrupt is raised and one of the counters in pOutput is incremented.
The conditions are as given in
Table 23-78. Conditions for Incrementing Counters and Raising Interrupts for RX Operation
Condition
Counter Incremented
Interrupt Generated
Frame received with CRC OK and frame filtering disabled
nRXData
RX_OK
Frame received with CRC error
nRXNok
RX_NOK
Frame received that did not fit in the RX queue
nRXBufFull
RX_BUF_FULL
Beacon frame received with CRC OK and bIgnore = 0
nRXBeacon
RX_OK
ACK frame received with CRC OK and bIgnore = 0
nRXAck
RX_OK
Data frame received with CRC OK and bIgnore = 0
nRXData
RX_OK
MAC command frame received with CRC OK and bIgnore = 0
nRXMacCmd
RX_OK
Frame with reserved frame type received with CRC OK and
nRXReserved
RX_OK
bIgnore = 0
Frame received with CRC OK and bIgnore = 1
nRXIgnored
RX_IGNORED
The first RX data entry in the RX queue changed state to finished
RX_ENTRY_DONE
1505
SWCU117A – February 2015 – Revised March 2015
Radio
Copyright © 2015, Texas Instruments Incorporated