`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`I
`
`94
`
`Chapter 6 , THE LO\'VER PROTOCOLS OF THE TRANSPORT GROUP
`
`Inquiry Operation
`During inquiry operation, each inquiry transmis sion 011 a given fre-
`quency of the inquiry-hopping sequence a11d each 1·espon se to it are
`preceded by an inquiry access code (IAC). There are 64 IACs, including
`the G IAC, associated with 64 rese1-ved LAPs. Excluding the G IAC, the
`remaining 63 IACs are refe1·red to as dedicated IA Cs (DIAC s). The IAC
`LAPs belong to the set {'Ox9E8BOO', ... , 'Ox9E8B3F'}. No device can
`have an address whose LAP matches any of these reserved LAPs. Note
`that no matter which IAC is used, the inquiry-hopping sequence over
`\.Yhich this IAC is transmitted is generated using the G IAC. Thi s is done
`to allow devices with multiple receiver correlato1·s, as highlighted in Fig-
`ure 6.8, to follow a single inqui1-y-hopping sequence but still be able to
`listen to multiple classes of inquiri es simultaneously.
`While the specification does not define how IAC s are to be used,
`they are intended
`to be used primaril y as a filtering mechani sm for
`identifying well-defined subsets of the devices that may 1·eceive inquir -
`ies. While all devices that execute inquiry scans use the G IAC to gener -
`ate the inquiry-hopping
`frequency , only those devices vvhose receiver
`correlators are tuned to a particular IAC will receiv e and respond to
`inquiries that contain that particular IAC.
`Table 6.3 summarizes the va1ious paramet ers related to the funda-
`mental processes for each of the three operational states of a Bluetooth
`device.
`Table 6.3
`The FSM inputs and the access codes used during the various active states of a device.
`
`Device state
`Connected
`
`Inquiry
`
`Page
`
`Frequency-hop module
`cloclc. master's;
`address. master's
`cloclc. own;
`address. G IAC
`cloclc. ( estimate of) paged
`device's · '
`address. paged device's
`
`Access code
`channel access code (CAC ); it coinc ides
`with the master's device access code (DA C)
`general or dedi cated inqui ry access code
`(GIAC or DIAC )
`paged device's device access code (DA C)
`
`As discussed earlier, the Bluetooth clock and the BD_ADDR of the
`master of a piconet fully identify the frequency-hopping sequence and
`phase of the channel used
`in the piconet. Since communication
`
`IPR2020-00202
`Apple Inc. EX1057 Page 116
`
`
`
`The Link Controller and Baseband
`
`95
`
`between a slave and a 1naster can occu1· only within a piconet, it follows
`that each slave
`in a piconet must know
`the master's clock and
`for a potential master to efficiently invite a
`BD_ADDR Alternatively,
`potential slave, it needs to know the slave's clock and address. The
`exc·hange of add1·ess and clock infor1nation betw een devices occurs dur-
`ing inquiries, when the maste1· collects ope1·ational information about
`tl1e prospective slaves, and du1·ing page s, when the master communi-
`cates to a slave its own ope1·ational information. The operational info1·-
`mation of a device, which includes its BD_ADDR and clock value, is
`sent in a frequency-hopping sequence (FHS ) BB_PDU described in detail
`late1· in this chapter.
`Assuming
`that the fundamental elements (addre ss and clock) of
`the devices involved are known , the connected state is highlighted first
`in the next section . The inqui1·y and page states are presented afterward.
`The Connected State
`While in the connected state, devices can exchange data under the con-
`trol of the master that defin es which device transmits when. To maintain
`piconet syncl1ronization , each slave adds an offset to its 11ative clock that
`account s for the difference of its own clock f1·om that of the master.
`TI1us, the clock of the master becomes the regulato1· of timed events in
`the piconet. In addition, the LAP of the maste1· is used for the access
`code generation.
`With a common clock 1·efe1·ence among all devices in a piconet ,
`the transmission
`time on the piconet is divided into master and slave
`t1·ansmission slots. A master starts its transmissions on even-number·ed
`slots ( c1 = 0) exclusively. Likewise, a slave starts its tra.nsmissions on
`slots ( c1 = 1) exclusively. A particular slave transmits if
`odd-numbered
`and only if tI1e last master transmission was destined exclusively to this
`slave. Thus, the medium access p1·otocol fo1· Bluetooth communications
`is a packe t-based , time-division duplex (TDD ) 7 polling scheme. Typically,
`master and slave transmit slots alternate every 625 µsec, the 1·esidence
`time at a f1·equency, although as mentioned earlier, multi-slot transmis-
`sions are possible. However·, multi-slot transmissions a1·e limited to an
`odd number of slots (one, three or five), which gua1·antees that master
`
`7. TDD refers to a time-division n1ultiplexing technique wl1ere tl1e tra11sn1ission lime on a single
`comn1u nicati on cl1annel is divided inlo successive, non-overlapping
`intervals, every other of
`,vhich is used for transn1issions in one of t,vo opposing directio11s. The transmission direction
`alte 1·nates behveen the l:\'10 directions ,vith each successive interval.
`
`IPR2020-00202
`Apple Inc. EX1057 Page 117
`
`
`
`96
`
`Chapter 6 ) THE LO\Y/ER PROTOCOLS OF THE TRANSPORT GROUP
`
`transmissions always start on even slots and slave t1·ansmissions on odd
`slots .
`.. .+41•-- 54 bits ----
`-0 -2745 bits ---
`~•j
`.._l•--(68
`172) bits ----
`access code I
`-
`payload
`header
`MSB
`-
`..
`
`.. ~l•-
`
`--
`
`LSB
`
`Figure 6.9
`The BB_PDU format.
`Baseband BB_PDU Types
`Figure 6.9 depicts tl1e general format of a BB_PDU transmit ted on a
`piconet. No frequency hops occur du1ing a BB_PDU tran smission and
`at most one BB_PDU is transmitted during the residence time at a fre-
`transmission s start with the LSB and pr ocee d to
`quency. Over-the-air
`the MSB (little-endian transmission orderin g). Every BB_PDU transmit -
`ted starts with the access code that, fo1· the discussion here serves as the
`piconet identifier , thus filtering out transmissions that might be received
`from other piconets (see Figure 6.8). The a.ccess code typically is 72 bits
`long, which includes a 4-bit traile1· field. If the BB_PDU does not con-
`tain a header (and hence a payload ), the traile1· is not used and lhe
`BB_PDU consists of the 68-bit access code only. Th e 68-bit BB_PDUs
`are used exclusi, ,ely for transmitting inquiries or pages as described in
`the correspo11ding sections later in this chapt er.
`The header of the BB PDU contains
`link control data to aid
`-
`medium access control. The header contains a mer e 18 bits of informa -
`tion for low overhead, but it is encoded with a forward error-cor1·ecting
`(FEC) code with rate 1/3 for high transmission reliability. In parti cular ,
`every bit of the header is transmitted three times in sequence . Table 6.4
`summarizes the fields of BB_PDU header.
`Table 6.4
`The baseband BB_PDU header.
`
`I
`I
`I
`I
`I
`I
`I
`
`Field name
`AM ADDR
`-
`
`TYPE
`FLOW
`
`Size
`3 bits
`
`4 bits
`I bit
`
`Comments
`active member address assigned to an active slave when devices
`exchange paging inf or n1ation, such as during the paging of a device
`defines 16 BB_PDU/payload types
`stop/go flow control switch set by a receiving device in its response
`to the sender
`
`IPR2020-00202
`Apple Inc. EX1057 Page 118
`
`
`
`ARQ!I
`
`SEQ!!
`
`flEC
`
`The Link Controller and Baseband
`
`97
`
`1 bit
`
`1 bit
`
`8 bits
`
`used for acknowledging successfully transmitted BB_PDUs;
`BB_PDUs for whicl1 a11 acknowledgeme11t is not received are
`retransmitted
`simpl e (odd / even) seque nce n11mber fo1· filtering dupljcate
`h·ansmissions
`header error check (HEC ) ?enerated by the generator polynomial
`Gt!Ec(x) = x8 + x7 + x5 + .r + x + 1
`During the paging p1·ocess, the master assigns a 3-bit active mem-
`ber address (AM_ADDR) to the new slave. AM_ADDR takes on the val-
`ues 1 through 7 and it is unique for each active slave in a piconet. The
`rese1·ved valu e of AM_ADDR = 'bOOO' is used to signifx b1·oadcast trans-
`missions f1·om the master to all tl1e slaves in a piconet. 8 The AM_ADDR
`is included
`in the same FHS BB_PDU sent by the master to the slave
`that also contains the master 's add1·ess and clock infor111ation.
`Th e va1ious BB_PDU
`types are distinguished by
`their roles:
`pur ely signaling or payload -ca1,·ying packets;
`their link designation:
`asynclironous connectionless (ACL ) data or synchronous connection-oriented
`(SCO) data; their size: 1, 3 or 5 slots; and their FEC encoding: no FEC,
`2/ 3 rate FEC encoding, and 1/3 1·ate FEC encoding . The 2/3 rate FEC
`is a (15,10) shortened Hamming code gene1·ated by the generator· poly-
`nomial 0-Ec(x) = x5 + x4 + 2-+ 1.
`The HEC
`is i1nplemented
`through an 8-bit linear feedback shift
`register (LFSR ) circuit whose initial value is UAP[0:7] of the master of
`the piconet. Hence, even in tl1e case whe1·e b:ansmissions from multiple
`maste1·s with ove1·lapping LAPs ( thus generating
`the identical access
`code as shown
`in Figure 6.8) were accepted,
`the co1Tesponding
`BB_PDU would be 1·ejected because the BB_PDU header would fail its
`header e1·ror check . In othe1· wor·ds, both the LAP and the UAP of the
`master of a piconet are needed
`to fully identify and accept a BB_PDU
`t1·ansmission on the piconet.
`The link control packets .include:
`• the ID packet, used in inquiries and pages, that consists of only
`the access code;
`• the NULL packet that is used p1·ima1ily for· slave acknowledg-
`ment and flow control info1·matio11 transmission when the slave
`8. Du e to tl1e TDD polling scl1eme used for n1edium access co11trol in a pico11et, only the master
`can dire ctly broadcast data to the other piconet members (its slaves). Slaves in a piconet can
`01,Iy unicast (a point -to-poi11t lrans n1issio11) to tl1e master of the piconet.
`
`IPR2020-00202
`Apple Inc. EX1057 Page 119
`
`
`
`98
`
`Chapter 6
`
`THE LO\YJER PROTOCOLS OF THE TRANSPORT GROUP
`
`does not have anythlng else to t1·ansmit (NU LL packets them -
`seI,,es are not acknowledged );
`• the POLL packet that is se11t from a master to a slave to poll it
`for a transmission wl1en the master· does not have any payload
`info1·mation to send to the slave (the POLL packet requir es a
`response ); and
`• the FHS packet used in inquiri es and pages.
`The ACL packets are designated as D(MIH)(l 1315), where ''DM''
`stands for medium speed data tl1at use a 2/3 FEC encodi ng for the pay-
`load; ''DH'' stands for high speed data whe1·e no FEC is used for the
`payload. The size qualifier· 1, 3 or 5 refers to the numb er· of slots occu-
`pied by the packet . For 1nulti-slot packets, the f1·equency doe s not
`change until the packet finisl1es its transmission. The next frequ ency to
`be used is the one that vvould ha\,e been used if single-slot transmission s
`were used in the meantim e instead. Nole that the size of an ACL packet
`is odd because a maste1~'s transn1ission must always start at e en-num -
`bered slots while slave transmissions must start at odd -numb e1·ed slots.
`Using five-slot packets in one direction and one -slol pack ets in the
`opposing direction,
`the maximum achievable rate for ACL traffic is
`723.2 Kbps in the first direction and 57.6 Kbps in the opp osite dire ction .
`Knowledge of the type of a BB_PDU and hence its size facilitat e
`power conservation
`in a slave. In particular , as a slave in a piconet
`inspects an incoming transmission and fi.-nds that the tran smission is not
`intended
`for that slave (that is, its AM_ADDR does not match the
`address in the BB_PDU header ), the slave could go to ''sleep'' for a
`duration of time dictated by the packet type field.
`The SCO packets are one slot long and are designate d as
`HV ( 112\3). All three variants can support 64 Kbps in each direction
`over periodically reserved slots using diffe1·ent encoding for the pa yload
`data. In particular, HV stands for high-quality voice , and the enco din g
`qualifier 1, 2 or 3 refers to the encoding used for the payload data:
`• 1 is for 1/3 rate FEC; a device transmits a single -slot pa cket
`every 2 slots
`• 2 is for 2/3 rate FEC; a device transmits a single -slot pa cket
`every 4 slots
`• 3 is for no FEC; a device transmits a single-slot packet every 6
`slots
`to the above packet types there is a DV packet that
`In addition
`combines both ACL, with 2/3 FEC, and SCO, with no FEC, data in a
`single-slot packet. A device could transmit a DV packet every 2 slots.
`
`IPR2020-00202
`Apple Inc. EX1057 Page 120
`
`
`
`The Link Controller and Baseband
`
`99
`
`Figure 6.10 depicts the low-level baseband operations that occur
`during the transmi ssion and reception of baseband packets. Note that
`differe11t ope1·ations take place for the packet header versus the payload;
`tl1e ope1·ations for the heade1· and the payload occur serially rather than
`in parallel as tl1e figure might imply. In the figure, whitening refers to the
`process of scrambling the transmitted data to randomize them and to
`1·educe the DC bias in the tran smitted data. The data are whitened
`through
`the use of the whitening word generated by the polynomial
`GwttrrE(x) = x7 +x4·+ l. Security features in Bluetooth piconets, includ-
`ing device authentication and link encryption, are discussed in the fol-
`lowing LMP section. The CRC operation pe1·tains only to ACL packets,
`detailed immediately below.
`
`device A
`(tran _smitter)
`TX header (apply/add)
`HEC JJ.., whitening
`
`~~
`
`::: ...:..: ·_;_ .~i
`
`.1..,
`-c:::==:::=:;:::::~
`
`insert
`access code
`
`-r ··
`
`FEC
`j over-the-air
`FEC
`--·-·->·-~ ..... . .! t ra nsm i ss I on ~===~=.!'.J
`001
`)
`
`FEC
`
`~:::-,;
`
`n
`
`•• -
`
`.. -
`
`interface
`
`-
`HEC(a)
`<:2 e, '¥ #-!k1$..iisk i
`
`,
`
`•
`
`-
`\vhitening
`-
`
`-
`\Yhiten1ng
`
`}-.
`
`J •
`
`I
`
`encryption
`
`RX payload {apply/add)
`(a) when fails, slop further packet processing
`(b) only for ACL packets
`( c) transmission o I the • pay! o ad· bi ts Io 11 o v, s i mm e di ate I y
`after the transmission of the corresponding header bits
`
`• .., encryption !
`'
`CRC(b)
`...._.........,.. _,.._J
`'Gd2!!-8 : ::i;za~J
`TX payload (apply/add)(c)
`-
`m andatory
`operation
`•
`optional
`operation
`
`Figure 6.10
`Low-level baseband operations during transmission and reception of baseband packets.
`Asynchronous Connectionless
`(ACL) Packets
`The payload portion of the DM packets and the ACL po1·tion of a DV
`packet is furthe1· structured with its own ACL packet header and pay-
`load along with a two-byte cyclic redundancy check ( CRC) field. Table 6.5
`summarizes the fields of the ACL packets, from the LSB to MSB.
`
`IPR2020-00202
`Apple Inc. EX1057 Page 121
`
`
`
`100
`
`Chapter 6
`
`THE LO\YJER PROTOCOLS OF THE TRANSPORT GROUP
`
`Table 6.5
`The ACL packet format.
`
`Field name
`L_ CH (logical
`channel)
`
`Size
`2 bits
`
`FLOW
`UNGTH
`
`1 bit
`(519) bits
`
`Comments
`
`'bOO': not defined
`'bOl ': continu ation segme nt of an L2CAP PD U
`'b 10': start of an L2CAP PD U
`'bl l': LMP PD U
`for flo\v contr ol on the AC L link
`length of ACL payload in octe ts (exc lude s header an d CRC)
`for eith er single- or mul ti-slot packets
`in the case of a 9-bit length field, a 4-bit unde fined pa ddin g is
`used to make the head er an integer mul tiple of bytes (2 bytes
`total )
`ACL pa cket payload spannin g 1 to 5 slots
`
`I• ' I
`
`Payload
`
`CRC
`
`0-3 39
`b)rtes
`2 bytes
`
`•
`
`the cyclic redundancy check prot ects the payload and is
`generated by the CRC -CCITI gener ator polyno mial
`GcRc(x) = x16 + x12 + x5+ 1
`is one extra one-slot ACL packet, AUXl , which does .not
`There
`contain a CRC. The use of this packet is not defined in the specification.
`Possibly, it could be used for testing and developm ent purp oses; ho\ -
`ever, it is outside the scope of the version 1.0 specification and this dis-
`cuss1on.
`The Baseband Link Types
`As mentioned earlier, the Bluetooth baseband support s two types of
`links over a piconet. ACL links are used for carrying asynchronou s
`data. The master schedules asynchronou s transmis sion s in slots not
`already reserved for synchronous (SCO ) transmi ssions . In other words,
`SCO traffic is of high priority and cannot be preempted
`for asynchro -
`nous transmissions. For each and every slave in its piconet, a master
`exactly one ACL link that represents a physical pipe
`establishes
`the master-slave pair over which ACL data are exchanged.
`between
`Point-to-point ACL BB_PDU exchanges are all acknowledged
`and
`
`IPR2020-00202
`Apple Inc. EX1057 Page 122
`
`
`
`The Link Controller and Baseband
`
`101
`
`(AM_ADDR = 'bOOO') ACL
`1·et1·a11smitted as appropriate. B1·oadcast
`t1·ansmissions from a ma ster to its slave s are not acknowledged but may
`be repeated seve1·al, NBC, times for i11crea sed reliability. Note that, si11ce
`it is impossible for multipl e slaves to acknowledge a transmission simul-
`taneou sly, it is also in1possible to acknowledge a broadcast transmis-
`sion. 111 particular , there exists no simple and reliable method
`to
`dynamically designate a single slave to acki1owledge on behalf of all
`slaves in the piconet
`that tl1e broadcast
`transmission has been success-
`fully rec eived by all slaves.
`SCO links car1-y telephony -g1·ade voice audio through a priori pe1i-
`oclically 1·eserve d pai1·s of slots . In a pico net, followi11g a request from a
`slave 01· the master·, a master may establish up to three SCO links in total
`between it and all of its slave s. Each SCO link represents a physical pipe
`betw een the ma ster and one of its slaves over whicl1 SCO data are
`the high quality of service expected for SCO
`exchanged. To maintain
`traffic, the length of the baseband slot, 625 µsec, is selected to minimize
`the packetizatio11 dela y for· audio t1·affic and the effects of noise interfer-
`ence. For exampl e, an HVl BB_PDU ca rries the equivalent of 10 bytes
`of audio information, which at 8,000 samples per second and 8 bits per
`sample takes 1.25 msec (=2*625 µsec) to accumulate. This is the same as
`the period of t1·ansmissions of HV 1 BJ3_PDUs ft·on1 a device. Unlike
`ACL t1·ansmissions, SCO BB_PDUs are not acknowledged. Note that
`p1·ior to establishing an SCO link, an ACL link must al1·eady exist to
`the SCO connection cont1·ol infor1nation.
`carry , at a minimum,
`Bluetooth
`link s between devices can be authenticated, encrypted,
`in low-power mode, and
`in general, qualified based t1pon
`op erated
`application 01· user requirements. The ope1·ation of the baseband
`in
`these cases is highlighted in the following link manager protocol section
`since it is link manager
`involvement
`that initiates tl1ese sorts of changes
`in link behavio1 ·.
`in a piconet to occur , a slave needs to know its
`For communication
`master's clock and addJ·ess. The following sections discuss the inquiry
`and page mechanisms by which this information is acquired. As Figure
`6.4 shows, this two-step process can be trimmed to one step when con-
`necting to known devices.
`
`Inquiry State
`The purpose of device inquiries is to collect i~formation a~o~t oth~~
`Bluetooth devices in proximity. This primarily involves obta1~ing the'.1
`fundamental elements: BD_ADDR and clock value. The inquiry state is
`
`IPR2020-00202
`Apple Inc. EX1057 Page 123
`
`
`
`\ l
`'
`
`102
`
`Chapter 6 P THE LOWER PROTOCOLS OF THE TRANSPORT GROUP
`
`composed of several substates executed by ''pote ntial'' masters and
`slaves. These a1·e the i1iquiry substate executed by a potential master and
`tl1e i11,qui1y scan and i12qzti1y 1·esponse substates exec uted by a potential
`slave. In the inqui1-y substate, a maste1·9 transmits i11quiry pack ets, which
`a1·e 1·eceived by slaves in the inquir·y scan st1bstate. Tl1e latter devices
`then enter tl1e inquir y respon se substate and schedul e tl1e transmission
`of their fundamental element s to the master.
`While in the va1ious inq11i1-y substates, devices utilize the inquiry-
`hopping sequen ce to transmit and receive packets. Th e inqui ry packet
`sent by an inquiring maste1· is a BB_PD U that co11tains only an appr opri-
`ate IAC , typically the G IAC , as described in the preceding section 0 11
`access codes. This packet is referred to as the inquiry ID packet. Th e
`inquiry ID packet simply notifies slaves that a maste1· is looking for slaves.
`In responding to an inquir y, a slave transmits an FHS packet con-
`taining , among other inform ation, the slave's BD_ADDR and clock
`value at the time of tran smission of the FHS packet. Tabl e 6.6 depicts
`the contents of the FHS packet. Since either a master or a slave can
`send an FHS packet, IO the fields in the FH S packet ar·e inter pr eted with
`respect to the device that sent the packet. The fields and the bits within
`them are provided in the tran smission orde1· fron1 the LSB to the MSB .
`Table 6.6
`The FHS packet.
`
`Field name
`parity bits
`
`LAP
`
`Reserved
`Paging
`interval
`parameters
`UAP
`
`Size
`34 bits
`
`24 bits
`
`2 bits
`4 bits
`
`8 bits
`
`Comments
`used for buildin g the device access code (DAC ) for paging the
`device sending this pack et
`the lo,ver addre ss part of the BD_ADDR of the device sendin g
`this packet
`set to 'bOO'
`two 2-bit subfields defining the period of the success ive page
`scans and the duration of the mandatory page scan period for
`the device sending this packet
`the upper address part of the BD_ADDR of the devi ce sending
`this packet
`
`9. For brev ity, the qualifier "potential" for masters and slaves will be omitted unless it is requ ired
`for clarifying the context.
`10. A master send s an FHS packet during a page operat ion as described in the following section .
`
`IPR2020-00202
`Apple Inc. EX1057 Page 124
`
`
`
`NAP
`
`CoD
`
`AM ADDR
`
`CLOCK
`[2 :27]
`Page sca n
`mode
`
`16 bits
`
`24 bits
`
`3 bits
`
`26 bit s
`
`3 bi ts
`
`The Link Controller and Baseband
`
`103
`
`information regarding the
`
`the no11-signifi can t addre ss par t of the BD_ADDR of the device
`sending trus pack et
`class of device field co ntaining
`devi ce se11.din g this packet
`for inquir y respon ses, it is set to 'bOOO'; for a master respon se
`following a page respo nse by a (potential) slave, it is set to the
`active memb er address a.ssigne d to tl1e ne\v active slave
`the curr ent ti1ne (updated with each retransmission of the
`pa cket) of the Bluetoot h clock of the device sending this packet
`tl1e defat1It page scan mod e of the device; one mandatory page
`scan n1ode and up to thr ee optional ones are supported in
`version 1.0
`The heade1-of the BB_PDU carrying the FHS packet as payload
`has the AM_ADDR field set to 'bOOO' without meaning that this is a
`bro adca.st pack et. Th e FHS packet is p1-otected by a 2-byte CRC and
`encoded with a11 FEC with rate 2/3. The size of the FHS packet is 240
`bits of payload and 126 bits of packet header and access code.
`Th e operations of a master, the inquiring device, and a slave, the
`listening device, are highlighted in Figure 6.11. The numbers shown in
`the figure a1-e typical number s, which can be changed th1·ough interven-
`tion from applications as needed.
`In summary , a master transmits its inquiry ID packets on different
`frequencies of the inqui1-y-hopping sequence , changing the transmission
`frequenc y rapidl y in the hope of transmitting as soon as possible on one
`of the frequencies
`that slaves are listening to. This would ultimately
`happen, given enough time, as slaves perfo1ming inquiry scans change
`their listening frequen cy from the inquiry -hopping sequence at a much
`slower rate. Since a master does not know when a slave listens for
`inquiries , the master repeats
`its inquiry transmissions a number of
`times . When ''contact '' finally occur s, the slave responds with its FHS
`packet that includes vital paging information. SCO transmissions sched-
`uled in any of the inquiring or listening devices take p1·ecedence ove1·
`the inquiry p1·ocedure s. A device will forego an inquiry action to trans-
`mit and receive scheduled SCO packets.
`The inquiry -hopping rate is 3,200 hops per seco~d, do~ble the
`nominal frequency-hopping rate. The master will transmit ~nd listen for
`responses over 16 different frequencies of the inquiry -hopping sequence
`
`IPR2020-00202
`Apple Inc. EX1057 Page 125
`
`
`
`104
`
`Chapter 6 1 THE LOWER PROTOCOLS OF THE TRANSPORT GROUP
`
`(train A in Figu1·e 6.11) ove1· a pe1iod of 10 n1sec (8 transmit and 8
`receive slots alternating with each other). If an inst1fficient number of
`responses is gathered, the maste1· will repeat tl1e same p1·ocess over the
`same set of 16 frequencies at least 256 times, 01· 2.56 seconds . Following
`this inte1-val and assuming operation in a 79 channel count1y, the master
`may also sea1·ch througl1 the remaining 16 frequencie s of the inquiry -
`hopping sequence (ti:ain B in Figure 6.11) an add itional 256 times . The
`whole inquiry process may then be repeated f1·om the beginning.
`Inquiring device transmits in all
`Inquiring dev,ce transmits in all
`:,4-- --
`frequencies !1[16]1 ••. 11131]1 (train B)
`frequencies f1[0l 1 ••• • 11l15l 1 (train A)
`every 10 msec
`_.,..: f- every 1 O msec
`____
`repeatedly for Ninqulry times
`repeatedly for N,nquiry limes
`:
`
`,
`:
`
`I
`
`I
`I
`I
`I
`I
`I
`l
`I
`I
`I
`
`•
`J
`
`• • • • • • • •
`
`--=--·
`
`TinquiryScan ------
`
`,
`:
`' •
`
`(8 Tx/Rx slots)
`,. 10 msec ~-
`1
`
`___ n_1 ___ =
`
`•
`
`potential
`master
`activity
`--=~~~·
`
`<
`
`I
`I
`I
`I
`I
`I
`I
`I
`
`I
`
`•
`
`I
`
`___ l....-_ ____
`
`;:~
`
`potential
`slave
`activity
`
`a
`
`I
`I
`I
`I
`•
`
`I
`
`--.:...._ _ _____ ,. ___ ----
`
`I
`I
`
`• I
`
`• I
`I ..._'. ------
`' I
`I : f1[24 l1
`•
`
`listening devices change listening
`frequency every 1.28 sec
`
`' I ~·· I
`
`I
`
`I ·~
`
`I
`•
`•
`T,., _,nqu11yScan
`
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I I
`I
`I
`I
`I
`I
`I
`I I
`I
`I
`I
`I
`I
`I
`I
`I
`
`typical values.
`TinquiryScan = 1.28 sec (max 2.56 sec)
`T.,.,_inqulryScan = 11.25 msec
`Ninquiry = 256
`Figure 6.11
`Fast frequency scanning for inquiries in a 79 channel country; ft[.]1 denotes the master transmit
`frequencies from the inquiry-hopping sequence.
`to the same
`To avoid collisions from multiple slaves responding
`inquiry ID packet, a rare event in its own right, a back -off mechani sm is
`used and it works as follows. Upon receipt of an inquiry ID packet, the
`slave enters the inquiry response substate. It then randomly selects a
`number RN (~ 1,023) and suspends its inquiry response operation s for
`at least that many slots; the slave may move into the standby, connected
`or page states as necessary. When
`the slave resumes
`the
`inquiry
`response substate, it will respond with an FHS packet following the first
`inquiry ID packet it receives again. The detailed description of the
`inquiry procedures can be found in section 10. 7 of the Baseband part of
`the specification.
`Responding
`immediately after receiving an inquiry ID packet is
`not prudent, as the master may not have switched to the mode in which
`
`IPR2020-00202
`Apple Inc. EX1057 Page 126
`
`
`
`The Link Controller and Baseband
`
`105
`
`it listens for 1·esponses. To gua1·antee that this does not occur, the slave
`responds with its FHS packet 625 µsec after the receipt of the inquiry
`ID packet, as shown in Figure 6.12. The figu1·e shows two slaves, noted
`as i and j, 1·esponding to inquiry ID packets. Slave i heard the inquiry
`ID packet in the first half o·f a master transmit slot. Slave j heard the
`inquiry ID packet in the second hal·f o·f a transmit slot from the master.
`In eithe1· case, even thougl1 the slave is unawa1·e exactly when the mas-
`ter will switcl1 to tl1e p1·oper listeni11g frequency, it is guaranteed that the
`corresponding FHS packet f1·on1 a slave is sent at the 1ight t1·ansmit f1·e-
`quency at the time that the master is listening at that san1e frequency.
`•: I
`:o111 master inquires
`master listens -•:
`...... -master
`inquires
`master listens
`•: ...... -
`•: ..... -
`j..._ __ 6_25__..!....
`~1 s_e_c _ _ ,_.j
`'
`62 5 µ sec
`: , 68 µsec
`312.5 µsec :
`'''-..il-
`I :
`
`I
`
`l
`
`-··
`
`•
`
`I
`
`I
`
`I .
`
`I
`I
`
`I ' I
`
`I
`I
`I
`I
`I
`I •
`
`j
`
`-•
`
`]
`I
`
`-:.l ___ -i _
`
`__
`
`• I
`I
`I
`i
`I
`
`I
`I
`
`:•
`
`I
`
`I
`
`I
`
`: 366 µsec
`1
`I
`
`1~==~~-~l
`__;:
`I ....
`
`I
`
`slaves may
`respond
`
`I
`
`I ••
`
`l1[k+3],
`
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`:
`
`I
`I
`I
`I
`I
`I
`I
`1
`I
`I
`I
`
`I ' I
`
`I
`I
`I
`I
`I
`I
`• I
`I
`I
`I
`
`l1[k+3l1 :
`
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`1
`I
`I
`I
`I
`I
`I
`
`I ....
`
`slaves may
`respond
`
`I
`
`I ••
`
`Figure 6.12
`Inqu iry transm ission sequences; fr[-]1 denotes the master receive frequencies from the inqu iry-hopping
`sequence corresponding to ft[.]1•
`Note that the inquiry ID packet is 68 µsec long and it is transmit -
`ted twice over two diffe1·ent frequencies within a 625 µsec time interval.
`Therefore, closely obse1-ving the figure, one may deduce that the trans-
`mit frequency synthesizer has 244.5 µsec in which to switcl1 to a new
`frequency. Actt1ally, accounting for a ±10 µsec tolerance for clock drift,
`the synthesizer must settle to a new transmit f1·equency within 224.5
`µsec. Admittedly
`this number is large compared to state-of-the-a1·t syn-
`thesize1· design. However, it allows the use of less co1nplex and less pre-
`cise circuitry that results in the desi1·ed low cost system design point. For
`more information on this subject, see [Haa1·tsenOO].
`
`IPR2020-00202
`Apple Inc. EX1057 Page 127
`
`
`
`106
`
`Chapter 6 " TH E LO\YJER PROTOCOLS OF THE TRANSPORT GROUP
`
`•
`
`Page State
`The pu1-pose of a device page is to invite a specific paged devi ce to join
`a piconet whose master is the paging device. The paging device uses the
`paged devic e's BD_ADDR and clock estimate to sen d its pages as dis-
`cussed earlie1·. The page state is composed of several substate s execu ted
`by potential master s and slaves. These a1·e the page and master response
`substates executed by a master and the page scan and slave resporzse sub -
`states executed by a slave.
`In the page substate , a maste1· tran smits pag e BB_PD Us, which are
`received by the slave when it is in the page scan sub state. Th e pagin g
`transmission contains only the slave's DAC. Thi s BB_PD U is referred
`to as the slave ID packet. In its page respon se, the slave also ends the
`slave ID packet
`that simpl y notifies the master that the
`lave has
`received the page . Finally , the master enters the master respo11 e sub -
`state during which the master tran smits to the slave its fundam ental ele-
`ments and the slave's AM_ADDR, which allows the slave to join and
`participate
`in communication s in the masters piconel . The e ft1nda-
`mental elements and Al\11 ADD R are transmitted
`, i thin an FH
`packet (see Table 6.6). The slave respond s with one mor e slave ID pack-
`ets, and then enters the connected state and readie
`itself to tart piconeL
`communications.
`The operation of the master and the slave in the page and page
`scan substates, respe ctively, is quite similar to that of the inquiry and
`inquiry scan operations discussed earlier. In particular,
`the illustration
`of Figure 6.11 for inquiri es can also be used for page s as well by repla c-
`ing the te1·ms related to inquiri es with corresponding
`ter1ns related to
`pages. The typical value for T ageScan is 1.28 second s· sub sequent}
`the
`typical value for Npage is 128. fhese
`typical values correspond to the so-
`called Rl paging mode. Th e paging mode , and hence the correspond -
`during the slave F~S transmis sion in an inquiry, or dur·ing link man -
`ing parameters T a eScan and N page, are commun icated to the master
`ager information exchange during regular communi cations.
`For a 79-channel country, trains A and B contain 16 frequ encies
`each from the page-hopping sequence, while for 23-chann el countri es
`there is only one train containing all 16 frequenci es. In the for1ner case,
`train A contains the 16 frequencies closest to the frequency on which the
`slave listens for pages as estimated by the master using its knowledge of
`(the estimate of) the slave's native clock. Train B contain s the remaining
`frequencies from the page-hopping sequence. Yet, since train B is used
`1.28 seconds after transmitting pages on frequen cies from train A, the
`
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`I
`
`IPR2020-00202
`Apple Inc. EX1057 Page 128
`
`
`
`The Link Controller and Baseband
`
`107
`
`master knows that the frequency on which the slave listens will also
`move by one. Hence, train s A and B have one common frequency. For
`example , if train A contains frequencies ft[O]p through ft[l5]p, then when
`h·ain B is used , it will contain frequencie s ft[ 17]p through ft[O]p, in that
`01·de1·. A device that per-forms page scans in the R 1 paging mode can be
`located within no 1nore than 1.28 second s most of the time. When the
`estimat e of tl1e slave's native clock deviates more tl1an - 8* 1.28 seconds
`o·r + 7* 1.28 second s f1·om tl1e actual value