![Analog Devices ADIS1700 Series User Manual Download Page 51](http://html1.mh-extra.com/html/analog-devices/adis1700-series/adis1700-series_user-manual_2939752051.webp)
Architecture Description
The SNAP protocol uses a master/slave architecture. Messages from the master to the slave are called
commands
;
messages from the slave to the master are called
responses
.
The communication sequence is always initiated by the master. The master sends a command; the slave acknowledg-
es the command and then sends the response. The sequence is terminated by the master which acknowledges the
response. Each sequence must be completed before the next sequence can start. Commands and responses have a
header and payload structure as shown in the
Payload Structure
table .
Table 7-1:
Payload Structure
Header_L1
Payload_L1
Header_L2
Payload_L2
The payload can encapsulate another payload structure. In this case, there are two levels (layers). The first
layer is always present and is known as the
transport layer
. A second layer, known as the
message layer
, is foreseen only
for commands and responses whose content type is message. The second layer is defined as the message layer.
The following two requirements apply:
1. Fields shall be word aligned. Bytes can be packed. 16-bit fields shall be 16-bit word aligned and 32-bit fields
shall be 32-bit word aligned.
2. Endianness is little endian (as for BF70x family and intel PCs)
These two requirements permit easier message handling when the client (generally, the embedded processor) and the
host (generally, the PC) have the same endianness. In this case, the entire data structure can be copied to or from the
message payload buffer when respectively writing or reading messages.
Transport Layer
The transport layer is the header of the first level. It is identical for commands and responses.
Commands and responses consist of four types:
•
Ping
•
ACK (acknowledge)
•
NACK (not acknowledged)
•
Message
Ping, ACK and NACK do not have a payload. The entire protocol is based on content type 5 (Type Message) which
has a payload. The payload of a command or response of type message encapsulates a new message with its own
header and payload.
Architecture Description
7–2
ADIS1700x Vision-Sensing Camera Module User Guide