WO2023204578A1 - 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 - Google Patents
오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 Download PDFInfo
- Publication number
- WO2023204578A1 WO2023204578A1 PCT/KR2023/005246 KR2023005246W WO2023204578A1 WO 2023204578 A1 WO2023204578 A1 WO 2023204578A1 KR 2023005246 W KR2023005246 W KR 2023005246W WO 2023204578 A1 WO2023204578 A1 WO 2023204578A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- electronic device
- event
- sub
- cis
- resource
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 88
- 238000004891 communication Methods 0.000 claims abstract description 420
- 230000005540 biological transmission Effects 0.000 claims description 120
- 238000012423 maintenance Methods 0.000 claims description 10
- 238000010586 diagram Methods 0.000 description 79
- 101150073480 CIS1 gene Proteins 0.000 description 41
- 101100110279 Saccharomyces cerevisiae (strain ATCC 204508 / S288c) ATG31 gene Proteins 0.000 description 41
- 101000687808 Homo sapiens Suppressor of cytokine signaling 2 Proteins 0.000 description 30
- 102100024784 Suppressor of cytokine signaling 2 Human genes 0.000 description 30
- BFAKENXZKHGIGE-UHFFFAOYSA-N bis(2,3,5,6-tetrafluoro-4-iodophenyl)diazene Chemical compound FC1=C(C(=C(C(=C1F)I)F)F)N=NC1=C(C(=C(C(=C1F)F)I)F)F BFAKENXZKHGIGE-UHFFFAOYSA-N 0.000 description 30
- 230000004044 response Effects 0.000 description 20
- 230000008859 change Effects 0.000 description 18
- 238000012545 processing Methods 0.000 description 18
- 238000000701 chemical imaging Methods 0.000 description 17
- 230000002093 peripheral effect Effects 0.000 description 17
- 238000005516 engineering process Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 14
- 238000007726 management method Methods 0.000 description 11
- 206010004966 Bite Diseases 0.000 description 9
- 238000000379 bremsstrahlung isochromat spectroscopy Methods 0.000 description 9
- 230000000737 periodic effect Effects 0.000 description 9
- 238000013528 artificial neural network Methods 0.000 description 8
- 238000013468 resource allocation Methods 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000012546 transfer Methods 0.000 description 7
- 230000005236 sound signal Effects 0.000 description 6
- 238000013473 artificial intelligence Methods 0.000 description 5
- 238000004590 computer program Methods 0.000 description 4
- 230000001360 synchronised effect Effects 0.000 description 4
- 230000010267 cellular communication Effects 0.000 description 3
- 230000006866 deterioration Effects 0.000 description 3
- 230000002452 interceptive effect Effects 0.000 description 3
- 230000000638 stimulation Effects 0.000 description 3
- 101150049032 ACL1 gene Proteins 0.000 description 2
- 101100058736 Arabidopsis thaliana BZR1 gene Proteins 0.000 description 2
- 101100448894 Arabidopsis thaliana GLR3.1 gene Proteins 0.000 description 2
- 101000741965 Homo sapiens Inactive tyrosine-protein kinase PRAG1 Proteins 0.000 description 2
- 101000813777 Homo sapiens Splicing factor ESS-2 homolog Proteins 0.000 description 2
- 101100054598 Hordeum vulgare ACL1.2 gene Proteins 0.000 description 2
- 102100038659 Inactive tyrosine-protein kinase PRAG1 Human genes 0.000 description 2
- 101100218870 Sorbus aucuparia BIS2 gene Proteins 0.000 description 2
- 102100039575 Splicing factor ESS-2 homolog Human genes 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 2
- 101150023061 acpP gene Proteins 0.000 description 2
- 230000002457 bidirectional effect Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013527 convolutional neural network Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000010801 machine learning Methods 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000000306 recurrent effect Effects 0.000 description 2
- 238000000926 separation method Methods 0.000 description 2
- 230000002123 temporal effect Effects 0.000 description 2
- 101100439279 Schizosaccharomyces pombe (strain 972 / ATCC 24843) cig1 gene Proteins 0.000 description 1
- 230000002730 additional effect Effects 0.000 description 1
- 210000000988 bone and bone Anatomy 0.000 description 1
- 230000015556 catabolic process Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000000052 comparative effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 125000004122 cyclic group Chemical group 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 238000011010 flushing procedure Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000009432 framing Methods 0.000 description 1
- 239000000446 fuel Substances 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 230000003155 kinesthetic effect Effects 0.000 description 1
- 230000001537 neural effect Effects 0.000 description 1
- 238000011017 operating method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000012856 packing Methods 0.000 description 1
- 230000002787 reinforcement Effects 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 239000000758 substrate Substances 0.000 description 1
- 230000008685 targeting Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/50—Allocation or scheduling criteria for wireless resources
- H04W72/56—Allocation or scheduling criteria for wireless resources based on priority criteria
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/60—Substation equipment, e.g. for use by subscribers including speech amplifiers
- H04M1/6033—Substation equipment, e.g. for use by subscribers including speech amplifiers for providing handsfree use or a loudspeaker mode in telephone sets
- H04M1/6041—Portable telephones adapted for handsfree use
- H04M1/6058—Portable telephones adapted for handsfree use involving the use of a headset accessory device connected to the portable telephone
- H04M1/6066—Portable telephones adapted for handsfree use involving the use of a headset accessory device connected to the portable telephone including a wireless connection
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W12/00—Security arrangements; Authentication; Protecting privacy or anonymity
- H04W12/12—Detection or prevention of fraud
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/80—Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04M—TELEPHONIC COMMUNICATION
- H04M1/00—Substation equipment, e.g. for use by subscribers
- H04M1/72—Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
- H04M1/724—User interfaces specially adapted for cordless or mobile telephones
- H04M1/72403—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality
- H04M1/72442—User interfaces specially adapted for cordless or mobile telephones with means for local support of applications that increase the functionality for playing music files
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/12—Wireless traffic scheduling
- H04W72/1215—Wireless traffic scheduling for collaboration of different radio technologies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/20—Control channels or signalling for resource management
- H04W72/25—Control channels or signalling for resource management between terminals via a wireless link, e.g. sidelink
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/40—Resource management for direct mode communication, e.g. D2D or sidelink
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W76/00—Connection management
- H04W76/10—Connection setup
- H04W76/14—Direct-mode setup
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W84/00—Network topologies
- H04W84/18—Self-organising networks, e.g. ad-hoc networks or sensor networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W88/00—Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
- H04W88/02—Terminal devices
- H04W88/06—Terminal devices adapted for operation in multiple networks or having at least two operational modes, e.g. multi-mode terminals
Definitions
- Embodiments of the present disclosure relate to an electronic device that provides an audio service and a method of operating the same.
- Bluetooth communication technology can present a short-range wireless communication technology that allows electronic devices to connect with each other for the exchange of data or information.
- Bluetooth communication technology may include Bluetooth legacy (or classic) communication technology or Bluetooth low energy (BLE) communication technology, and various connections such as piconet or scatternet. It can have a topology of the form.
- a wearable ear device may include a microphone, identify the user's voice, and transmit data about the user's voice to an electronic device (eg, a smart phone).
- the ear wearable device includes a speaker and can output audio data received from an electronic device (eg, a smart phone) through the speaker.
- the ear wearable device may include a primary earbud (eg, right earbud) and a secondary earbud (eg, left earbud) that can be connected to an electronic device (eg, smart phone).
- the primary earbud can transmit voice data to the electronic device through connection with the electronic device, and the electronic device can transmit audio data (or audio content) to the primary earbud.
- the primary earbud can transmit audio data (or audio content) received through wireless communication from an electronic device to the secondary earbud, and output the audio data through a speaker.
- the secondary earbud can be synchronized with the primary earbud and output audio data received from the primary earbud or electronic device through the speaker.
- 'earbuds' Primary earbuds and secondary earbuds
- the earbuds may perform pairing including inquiry and/or inquiry scan, or BLE advertising and/or BLE scan.
- Inquiry may refer to the initial operation of a connection in which an inquiry packet is repeatedly transmitted until a response is received from a peer electronic device or a time-out occurs.
- Inquiry scan may refer to the operation of monitoring the reception of an inquiry packet on a designated physical channel. The earbud that receives the inquiry packet through the inquiry scan can transmit an inquiry response packet containing its own information.
- BLE advertising may refer to the operation of periodically broadcasting advertising packets on an advertising physical channel
- BLE scanning may refer to the operation of monitoring the reception of advertising packets. It can mean.
- Embodiments of the present disclosure may provide an electronic device that provides an audio service and a method of operating the same.
- Embodiments of the present disclosure can provide an electronic device and a method of operating the same that efficiently allocate resources of communication links for audio services and resources for other operations.
- Embodiments of the present disclosure can provide a technology that can flexibly use the resources of the source electronic device by allocating the resources of communication links for the audio service as much as possible and considering the priorities of other operations that can be performed simultaneously with the audio service. there is.
- An electronic device may include a communication circuit and at least one processor.
- the at least one processor may be configured to determine a first resource available for an audio service in the at least one audio communication link.
- the at least one processor may be configured to determine a second resource for a first priority within the first resource and a third resource for a second priority lower than the first priority.
- the at least one processor is configured to provide the audio service to at least one external electronic device through the at least one audio communication link using at least one of the second resource and the third resource through the communication circuit. It can be.
- the at least one processor may be configured to detect that a first communication task using a frequency band corresponding to a frequency band of the at least one audio communication link is scheduled while providing the audio service.
- the at least one processor through the communication circuitry, based on confirming that the third priority specified for the first communication task is higher than the second priority, uses the third resource to perform the first communication task. It can be configured to perform.
- a method of operating the electronic device 101 may include determining a first resource available for an audio service in at least one audio communication link.
- the method may include determining a second resource for a first priority within the first resource and a third resource for a second priority lower than the first priority.
- the method may include providing the audio service to at least one external electronic device through the at least one audio communication link using at least one of the second resource or the third resource.
- the method may include detecting that a first communication task using the same frequency band as the at least one audio communication link is scheduled while providing the audio service.
- the method may include performing the first communication task using the third resource based on confirming that the third priority specified for the first communication task is higher than the second priority. .
- a non-transitory computer-readable storage medium storing one or more programs, wherein the one or more programs, when executed by at least one processor of the electronic device, cause the electronic device to: 1 resource is determined, a second resource for a first priority within the first resource and a third resource for a second priority lower than the first priority are determined, and the second resource or the third It may include instructions for providing the audio service to at least one external electronic device through the at least one audio communication link using at least one of the resources.
- FIG. 1 is a block diagram of an electronic device in a network environment, according to various embodiments.
- FIG. 2 is a diagram illustrating an example of a connection between electronic devices based on the Bluetooth method, according to an embodiment.
- FIG. 3 is a diagram illustrating the configuration of an electronic device supporting Bluetooth communication according to an embodiment.
- Figure 4 is a diagram for explaining a Bluetooth LE (BLE) scan operation according to an embodiment.
- BLE Bluetooth LE
- Figure 5 is a diagram for explaining an example of connection between Bluetooth devices according to an embodiment.
- FIG. 6 is a diagram for explaining an example of a BLE communication connection according to an embodiment.
- Figure 7 is a signal flow diagram illustrating an example of an operation procedure for establishing a CIS link according to an embodiment.
- FIG. 8 is a diagram for explaining an example of CIS parameters set for CIS communication according to an embodiment.
- Figure 9 is a timing diagram explaining an example of CIS communication according to an embodiment.
- Figure 10 is a diagram for explaining an example of a CIS event according to an embodiment.
- Figure 11 is a diagram for explaining an example of CIS transmission according to an embodiment.
- Figure 12 is a diagram for explaining another example of CIS transmission according to an embodiment.
- FIG. 13 is a diagram for explaining sequential arrangement of CISs according to an embodiment.
- FIG. 14 is a diagram for explaining CISs in an interleaved arrangement according to an embodiment.
- Figure 15 is a diagram for explaining a CIG event layout including three CISs according to an embodiment.
- 16A and 16B are flowcharts illustrating examples of procedures for providing audio services through an audio communication link according to an embodiment.
- Figures 17 and 18 are timing diagrams illustrating examples of an electronic device allocating time sections according to an embodiment.
- Figure 19 is a flowchart for explaining a procedure for a two-channel audio service according to an embodiment.
- FIGS. 20A, 20B, and 20C show various examples of user interfaces displayed on an electronic device according to an embodiment.
- FIG. 21 is a diagram illustrating a procedure for an electronic device to create an LE communication link, according to an embodiment.
- FIG. 22 is a diagram for explaining a procedure in which an electronic device communicates through a plurality of LE communication links, according to an embodiment.
- FIG. 23 is a diagram for explaining an operation of determining resources for a media service according to an embodiment.
- FIG. 24 is a diagram illustrating an operation of determining resources for an interactive service according to an embodiment.
- Figure 25 is a diagram illustrating an example of resource allocation according to an embodiment.
- Figure 26 is a diagram illustrating an example of resource division for CIS communication according to an embodiment.
- Figure 27 is a diagram illustrating another example of resource division for CIS communication according to an embodiment.
- Figure 28 is a diagram illustrating an example of resource division according to time ratio according to an embodiment.
- Figure 29 is a diagram illustrating an example of resource division applied to a hybrid deployment according to an embodiment.
- FIG. 30 is a diagram illustrating another example of resource division applied to a hybrid deployment according to an embodiment.
- FIG. 31 is a diagram for explaining an operation of providing an audio service through CIS links according to an embodiment.
- Figure 32 is a diagram for explaining an operation of opening a CIS link according to an embodiment.
- FIG. 33 is a diagram illustrating an operation of operating CIS communication in consideration of a wireless environment or scheduling situation according to an embodiment.
- Figure 34 is a diagram for explaining an operation of performing a CIS task with high priority according to an embodiment.
- FIG. 35 is a diagram illustrating an operation of performing a high-priority BLE task according to an embodiment.
- Figure 37 shows a signal flow diagram for explaining a procedure for synchronizing to a broadcast isochronous group (BIG) according to an embodiment.
- BIG broadcast isochronous group
- Figure 38 is a diagram for explaining the format of BIG information according to an embodiment.
- Figure 39 is a diagram for explaining a BIG event for a periodic advertising event according to an embodiment.
- Figure 40 is a diagram for explaining a BIG event and a BIS event according to an embodiment.
- Figure 41 is a diagram for explaining resource allocation for BIS communication according to an embodiment.
- Figure 42 is a diagram for explaining resource division for BIS communication according to an embodiment.
- Figure 43 is a diagram for explaining an operation of performing a higher priority communication task according to an embodiment.
- FIG. 1 is a block diagram of an electronic device 101 in a network environment 100, according to various embodiments.
- the electronic device 101 communicates with the electronic device 102 through a first network 198 (e.g., a short-range wireless communication network) or a second network 199. It is possible to communicate with at least one of the electronic device 104 or the server 108 through (e.g., a long-distance wireless communication network). According to one embodiment, the electronic device 101 may communicate with the electronic device 104 through the server 108.
- a first network 198 e.g., a short-range wireless communication network
- a second network 199 e.g., a second network 199.
- the electronic device 101 may communicate with the electronic device 104 through the server 108.
- the electronic device 101 includes a processor 120, a memory 130, an input module 150, an audio output module 155, a display module 160, an audio module 170, and a sensor module ( 176), interface 177, connection terminal 178, haptic module 179, camera module 180, power management module 188, battery 189, communication module 190, subscriber identification module 196 , or may include an antenna module 197.
- at least one of these components eg, the connection terminal 178) may be omitted or one or more other components may be added to the electronic device 101.
- some of these components e.g., sensor module 176, camera module 180, or antenna module 197) are integrated into one component (e.g., display module 160). It can be.
- the processor 120 for example, executes software (e.g., program 140) to operate at least one other component (e.g., hardware or software component) of the electronic device 101 connected to the processor 120. It can be controlled and various data processing or calculations can be performed. According to one embodiment, as at least part of data processing or computation, the processor 120 stores commands or data received from another component (e.g., sensor module 176 or communication module 190) in volatile memory 132. The commands or data stored in the volatile memory 132 can be processed, and the resulting data can be stored in the non-volatile memory 134.
- software e.g., program 140
- the processor 120 stores commands or data received from another component (e.g., sensor module 176 or communication module 190) in volatile memory 132.
- the commands or data stored in the volatile memory 132 can be processed, and the resulting data can be stored in the non-volatile memory 134.
- the processor 120 includes a main processor 121 (e.g., a central processing unit or an application processor) or an auxiliary processor 123 that can operate independently or together (e.g., a graphics processing unit, a neural network processing unit ( It may include a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor).
- a main processor 121 e.g., a central processing unit or an application processor
- auxiliary processor 123 e.g., a graphics processing unit, a neural network processing unit ( It may include a neural processing unit (NPU), an image signal processor, a sensor hub processor, or a communication processor.
- the electronic device 101 includes a main processor 121 and a secondary processor 123
- the secondary processor 123 may be set to use lower power than the main processor 121 or be specialized for a designated function. You can.
- the auxiliary processor 123 may be implemented separately from the main processor 121 or as part of it.
- the auxiliary processor 123 may, for example, act on behalf of the main processor 121 while the main processor 121 is in an inactive (e.g., sleep) state, or while the main processor 121 is in an active (e.g., application execution) state. ), together with the main processor 121, at least one of the components of the electronic device 101 (e.g., the display module 160, the sensor module 176, or the communication module 190) At least some of the functions or states related to can be controlled.
- co-processor 123 e.g., image signal processor or communication processor
- may be implemented as part of another functionally related component e.g., camera module 180 or communication module 190. there is.
- the auxiliary processor 123 may include a hardware structure specialized for processing artificial intelligence models.
- Artificial intelligence models can be created through machine learning. For example, such learning may be performed in the electronic device 101 itself on which the artificial intelligence model is performed, or may be performed through a separate server (e.g., server 108).
- Learning algorithms may include, for example, supervised learning, unsupervised learning, semi-supervised learning, or reinforcement learning, but It is not limited.
- An artificial intelligence model may include multiple artificial neural network layers.
- Artificial neural networks include deep neural network (DNN), convolutional neural network (CNN), recurrent neural network (RNN), restricted boltzmann machine (RBM), belief deep network (DBN), bidirectional recurrent deep neural network (BRDNN), It may be one of deep Q-networks or a combination of two or more of the above, but is not limited to the examples described above.
- artificial intelligence models may additionally or alternatively include software structures.
- the memory 130 may store various data used by at least one component (eg, the processor 120 or the sensor module 176) of the electronic device 101. Data may include, for example, input data or output data for software (e.g., program 140) and instructions related thereto.
- Memory 130 may include volatile memory 132 or non-volatile memory 134.
- the program 140 may be stored as software in the memory 130 and may include, for example, an operating system 142, middleware 144, or application 146.
- the input module 150 may receive commands or data to be used in a component of the electronic device 101 (e.g., the processor 120) from outside the electronic device 101 (e.g., a user).
- the input module 150 may include, for example, a microphone, mouse, keyboard, keys (eg, buttons), or digital pen (eg, stylus pen).
- the sound output module 155 may output sound signals to the outside of the electronic device 101.
- the sound output module 155 may include, for example, a speaker or a receiver. Speakers can be used for general purposes such as multimedia playback or recording playback.
- the receiver can be used to receive incoming calls. According to one embodiment, the receiver may be implemented separately from the speaker or as part of it.
- the display module 160 can visually provide information to the outside of the electronic device 101 (eg, a user).
- the display module 160 may include, for example, a display, a hologram device, or a projector, and a control circuit for controlling the device.
- the display module 160 may include a touch sensor configured to detect a touch, or a pressure sensor configured to measure the intensity of force generated by the touch.
- the audio module 170 can convert sound into an electrical signal or, conversely, convert an electrical signal into sound. According to one embodiment, the audio module 170 acquires sound through the input module 150, the sound output module 155, or an external electronic device (e.g., directly or wirelessly connected to the electronic device 101). Sound may be output through the electronic device 102 (e.g., speaker or headphone).
- the electronic device 102 e.g., speaker or headphone
- the sensor module 176 detects the operating state (e.g., power or temperature) of the electronic device 101 or the external environmental state (e.g., user state) and generates an electrical signal or data value corresponding to the detected state. can do.
- the sensor module 176 includes, for example, a gesture sensor, a gyro sensor, an air pressure sensor, a magnetic sensor, an acceleration sensor, a grip sensor, a proximity sensor, a color sensor, an IR (infrared) sensor, a biometric sensor, It may include a temperature sensor, humidity sensor, or light sensor.
- the interface 177 may support one or more designated protocols that can be used to connect the electronic device 101 directly or wirelessly with an external electronic device (eg, the electronic device 102).
- the interface 177 may include, for example, a high definition multimedia interface (HDMI), a universal serial bus (USB) interface, an SD card interface, or an audio interface.
- HDMI high definition multimedia interface
- USB universal serial bus
- SD card interface Secure Digital Card interface
- audio interface audio interface
- connection terminal 178 may include a connector through which the electronic device 101 can be physically connected to an external electronic device (eg, the electronic device 102).
- the connection terminal 178 may include, for example, an HDMI connector, a USB connector, an SD card connector, or an audio connector (eg, a headphone connector).
- the haptic module 179 can convert electrical signals into mechanical stimulation (e.g., vibration or movement) or electrical stimulation that the user can perceive through tactile or kinesthetic senses.
- the haptic module 179 may include, for example, a motor, a piezoelectric element, or an electrical stimulation device.
- the camera module 180 can capture still images and moving images.
- the camera module 180 may include one or more lenses, image sensors, image signal processors, or flashes.
- the battery 189 may supply power to at least one component of the electronic device 101.
- the battery 189 may include, for example, a non-rechargeable primary battery, a rechargeable secondary battery, or a fuel cell.
- Communication module 190 is configured to provide a direct (e.g., wired) communication channel or wireless communication channel between electronic device 101 and an external electronic device (e.g., electronic device 102, electronic device 104, or server 108). It can support establishment and communication through established communication channels. Communication module 190 operates independently of processor 120 (e.g., an application processor) and may include one or more communication processors that support direct (e.g., wired) communication or wireless communication.
- processor 120 e.g., an application processor
- the communication module 190 is a wireless communication module 192 (e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module) or a wired communication module 194 (e.g., : LAN (local area network) communication module, or power line communication module) may be included.
- a wireless communication module 192 e.g., a cellular communication module, a short-range wireless communication module, or a global navigation satellite system (GNSS) communication module
- GNSS global navigation satellite system
- wired communication module 194 e.g., : LAN (local area network) communication module, or power line communication module
- the corresponding communication module is a first network 198 (e.g., a short-range communication network such as Bluetooth, wireless fidelity (WiFi) direct, or infrared data association (IrDA)) or a second network 199 (e.g., legacy It may communicate with an external electronic device 104 through a telecommunication network such as a cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., LAN or WAN).
- a telecommunication network such as a cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., LAN or WAN).
- a telecommunication network such as a cellular network, a 5G network, a next-generation communication network, the Internet, or a computer network (e.g., LAN or WAN).
- a telecommunication network such as a cellular network, a 5G network, a next-generation communication network
- the wireless communication module 192 uses subscriber information (e.g., International Mobile Subscriber Identifier (IMSI)) stored in the subscriber identification module 196 within a communication network such as the first network 198 or the second network 199.
- subscriber information e.g., International Mobile Subscriber Identifier (IMSI)
- IMSI International Mobile Subscriber Identifier
- the wireless communication module 192 may support 5G networks after 4G networks and next-generation communication technologies, for example, NR access technology (new radio access technology).
- NR access technology provides high-speed transmission of high-capacity data (eMBB (enhanced mobile broadband)), minimization of terminal power and access to multiple terminals (mMTC (massive machine type communications)), or high reliability and low latency (URLLC (ultra-reliable and low latency). -latency communications)) can be supported.
- the wireless communication module 192 may support high frequency bands (eg, mmWave bands), for example, to achieve high data rates.
- the wireless communication module 192 uses various technologies to secure performance in high frequency bands, for example, beamforming, massive array multiple-input and multiple-output (MIMO), and full-dimensional multiplexing. It can support technologies such as input/output (FD-MIMO: full dimensional MIMO), array antenna, analog beam-forming, or large scale antenna.
- the wireless communication module 192 may support various requirements specified in the electronic device 101, an external electronic device (e.g., electronic device 104), or a network system (e.g., second network 199).
- the wireless communication module 192 supports Peak data rate (e.g., 20 Gbps or more) for realizing eMBB, loss coverage (e.g., 164 dB or less) for realizing mmTC, or U-plane latency (e.g., 164 dB or less) for realizing URLLC.
- Peak data rate e.g., 20 Gbps or more
- loss coverage e.g., 164 dB or less
- U-plane latency e.g., 164 dB or less
- the antenna module 197 may transmit or receive signals or power to or from the outside (eg, an external electronic device).
- the antenna module 197 may include an antenna including a radiator made of a conductor or a conductive pattern formed on a substrate (eg, PCB).
- the antenna module 197 may include a plurality of antennas (eg, an array antenna). In this case, at least one antenna suitable for a communication method used in a communication network such as the first network 198 or the second network 199 is connected to the plurality of antennas by, for example, the communication module 190. can be selected Signals or power may be transmitted or received between the communication module 190 and an external electronic device through the at least one selected antenna.
- other components eg, radio frequency integrated circuit (RFIC) may be additionally formed as part of the antenna module 197.
- RFIC radio frequency integrated circuit
- a mmWave antenna module includes: a printed circuit board, an RFIC disposed on or adjacent to a first side (e.g., bottom side) of the printed circuit board and capable of supporting a designated high frequency band (e.g., mmWave band); And a plurality of antennas (e.g., array antennas) disposed on or adjacent to the second side (e.g., top or side) of the printed circuit board and capable of transmitting or receiving signals in the designated high frequency band. can do.
- a first side e.g., bottom side
- a designated high frequency band e.g., mmWave band
- a plurality of antennas e.g., array antennas
- peripheral devices e.g., bus, general purpose input and output (GPIO), serial peripheral interface (SPI), or mobile industry processor interface (MIPI)
- signal e.g. commands or data
- commands or data may be transmitted or received between the electronic device 101 and the external electronic device 104 through the server 108 connected to the second network 199.
- Each of the external electronic devices 102 or 104 may be of the same or different type as the electronic device 101.
- all or part of the operations performed in the electronic device 101 may be executed in one or more of the external electronic devices 102, 104, or 108.
- the electronic device 101 may perform the function or service instead of executing the function or service on its own.
- one or more external electronic devices may be requested to perform at least part of the function or service.
- One or more external electronic devices that have received the request may execute at least part of the requested function or service, or an additional function or service related to the request, and transmit the result of the execution to the electronic device 101.
- the electronic device 101 may process the result as is or additionally and provide it as at least part of a response to the request.
- cloud computing distributed computing, mobile edge computing (MEC), or client-server computing technology can be used.
- the electronic device 101 may provide an ultra-low latency service using, for example, distributed computing or mobile edge computing.
- the external electronic device 104 may include an Internet of Things (IoT) device.
- Server 108 may be an intelligent server using machine learning and/or neural networks.
- the external electronic device 104 or server 108 may be included in the second network 199.
- the electronic device 101 may be applied to intelligent services (e.g., smart home, smart city, smart car, or healthcare) based on 5G communication technology and IoT-related technology.
- FIG. 2 is a diagram illustrating an example of a connection between electronic devices based on the Bluetooth method, according to an embodiment.
- the electronic device 101 may be wirelessly connected to an external electronic device 102 (eg, an ear-wearable device).
- electronic device 101 may be a smart phone.
- the external electronic device 102 is a binaural ear wearable device, and includes a first external electronic device 202 (e.g., a left ear bud) and a second external electronic device 204 (e.g., a light earbud). (right ear bud)).
- first external electronic device 202 and second external electronic device 204 are shown as a pair of earbuds; however, first external electronic device 202 and second external electronic device 204 It can include not only earbuds but also devices that can operate as a pair. According to one embodiment, the first external electronic device 202 and the second external electronic device 204 may be implemented to include the same or similar configurations.
- the electronic device 101 establishes a connection (e.g., a communication link) with at least one of the first external electronic device 202 and the second external electronic device 204, and transmits data to each other and/ Or you can receive it.
- the electronic device 101 may establish a communication link with at least one of the first external electronic device 202 and the second external electronic device 204 based on Wi-Fi or Bluetooth.
- the method by which the electronic device 101 establishes a communication link with the first external electronic device 202 and the second external electronic device 204 is not limited to at least one of the Wi-Fi method and/or the Bluetooth method.
- the electronic device 101 establishes a communication link with only one of the first external electronic device 202 and the second external electronic device 204, or the first external electronic device 202 and the second external electronic device 204. 2 Individual communication links can be established with each of the external electronic devices 204.
- the first external electronic device 202 and the second external electronic device 204 may establish a communication link between each other based on at least one of the Wi-Fi method and/or the Bluetooth method, but the method in which the first external electronic device 202 and the second external electronic device 204 establish the communication link This is not limited to at least one of the Wi-Fi method and/or the Bluetooth method.
- one of the first external electronic device 202 and the second external electronic device 204 is a central (or master, primary, or main) device. ), and the other one can operate as a peripheral (or slave or secondary).
- An electronic device operating centrally can transmit data to an electronic device operating peripherally.
- an electronic device operating centrally can be a source electronic device, and an electronic device operating peripherally can be a sink electronic device.
- sink refers to an electronic device that operates as a peripheral device, and may be used interchangeably with terms such as “destination,” “receiver,” “sub,” and/or “slave.”
- the first external electronic device 202 and the second external electronic device 204 may communicate directly or indirectly with the third external electronic device 250.
- the third external electronic device 250 is an ear buds case device or a cradle device that stores and charges the first external electronic device 202 and the second external electronic device 204. It may be a cradle device).
- FIG. 3 is a diagram illustrating the configuration of an electronic device supporting Bluetooth communication according to an embodiment.
- the electronic device 101 may be wirelessly connected to external electronic devices 202 and 204.
- the electronic device 101 may be implemented as, for example, a smart phone, but is not limited to what is described and/or shown, and may be implemented in various types of devices (e.g., laptop computers, including standard laptops, ultrabooks, netbooks, and tabbooks). It may be implemented as a notebook computer, laptop computer, tablet computer, or desktop computer.
- the electronic device 101 may be implemented as shown in FIG. 1, and may therefore include at least some of the components (eg, various modules) shown in FIG. 1, so redundant description will be omitted.
- the external electronic devices 202 and 204 may be implemented as wireless earbuds, but are not limited to those described and/or shown, and may include various types of devices (e.g., smart watches, head-mounted displays) that support audio services described later. It may also be implemented as a device or devices for measuring biological signals (e.g., electrocardiogram patch). According to one embodiment, when the external electronic devices 202 and 204 are wireless earbuds, the external electronic devices 202 and 204 may be a pair of devices (e.g., a left earbud and a right earbud). there is. According to one embodiment, the first external electronic device 202 and the second external electronic device 204 may be implemented to include the same or similar configurations.
- the electronic device 101 may establish a communication connection with at least one of the external electronic devices 202 and 204 and transmit and/or receive data to each other.
- the electronic device 101 and the external electronic devices 202 and 204 each use device to device (D2D) communication such as Wi-Fi direct or Bluetooth (e.g., the corresponding communication Communication connections can be established with each other using communication circuits that support the method, but are not limited to this and various types of communication (e.g., communication methods such as Wi-Fi using an AP (access point), using a base station) They can communicate with each other using a cellular communication method or a wired communication method.
- D2D device to device
- the electronic device 101 connects a communication link with only one of the first external electronic device 202 and the second external electronic device 204 (e.g., a primary earbud), or Communication links may be connected to both the first external electronic device 202 and the second external electronic device 204, respectively.
- first external electronic device 202 and the second external electronic device 204 e.g., a primary earbud
- Communication links may be connected to both the first external electronic device 202 and the second external electronic device 204, respectively.
- the first external electronic device 202 and the second external electronic device 204 establish a communication connection with each other and transmit and/or receive data (e.g., audio data and/or control data) to each other. can do.
- the communication connection can be established using D2D communication such as Wi-Fi direct or Bluetooth (e.g., using a communication circuit that supports the communication), but Not limited.
- one of the first external electronic device 202 and the second external electronic device 204 is the primary device (or master device or main device), and the other device is the secondary device (or slave device). or sub-device), and the primary device (or main device) can transmit data to the secondary device.
- the primary device or main device
- the primary device or main device
- any one of the first external electronic device 202 and the second external electronic device 204 A device may be randomly selected as the primary device, and another device may be selected as the secondary device.
- first, body wearing e.g., a sensor for detecting wearing (e.g., proximity sensor, touch sensor) , a 6-axis tilt sensor, or a 9-axis sensor
- the device for which a value indicating wearing is detected may be selected as the primary device, and the remaining devices may be selected as secondary devices.
- the primary device may transmit data received from the electronic device 101 to the secondary device.
- the first external electronic device 202 which is a primary device, not only outputs audio to the speaker 354 based on the audio data received from the electronic device 101, but also outputs the audio data to the first external electronic device 202, which is a secondary device. 2 Can be transmitted to an external electronic device 204.
- the secondary device connects the primary device (e.g., the first external electronic device 202) from the electronic device 101 based on connection information provided from the primary device (e.g., the first external electronic device 202). ) can be received through sniffing.
- the first external electronic device 202 which is a primary device, transmits data (e.g., audio data or control data) received from the second external electronic device 204, which is a secondary device, to the electronic device 101.
- data e.g., audio data or control data
- the second external electronic device 204 which is a secondary device
- control data including information about the generated touch event is transmitted by the first external electronic device 202, which is a primary device. It may be transmitted to the electronic device 101.
- the secondary device and the electronic device 101 establish a communication connection with each other, and accordingly, transmission and/or reception of data may be performed directly between the secondary device and the electronic device 101. there is.
- the first external electronic device 202 may include a component that is the same as or similar to at least one of the components (eg, modules) of the electronic device 101 shown in FIG. 1 .
- the first external electronic device 202 includes a processor 310 (e.g., processor 120 in FIG. 1), a communication circuit 320 (e.g., communication module 190 in FIG. 1), and an input device 330 (e.g. : input module 150 in FIG. 1), sensor 340 (e.g., sensor module 176 in FIG. 1), audio processing module 350 (e.g., audio module 170 in FIG. 1), power management module 360 (e.g., power management module 188 in FIG. 1), battery 370 (e.g., battery 189 in FIG. 1), interface 380 (e.g., interface 177 in FIG. 1), and It may include a memory 390 (eg, memory 130 of FIG. 1).
- a processor 310 e.g., processor 120 in FIG. 1
- a communication circuit 320 e
- the communication circuit 320 is a wireless communication module (e.g., a Bluetooth communication module, a cellular communication module, a wireless-fidelity (Wi-Fi) communication module, a near field communication (NFC) communication module, or a global communication module (GNSS). It may include at least one of a navigation satellite system communication module) or a wired communication module (e.g., a LAN (local area network) communication module, or a power line communication (PLC) communication module).
- the Bluetooth communication module may support at least one communication connection (eg, communication link) by, for example, Bluetooth legacy communication and/or Bluetooth Low Energy (BLE) communication.
- the communication circuit 320 uses at least one communication module it includes to communicate with the electronic device 101 (e.g., a smart phone) through a first network (e.g., the first network 198 in FIG. 1). It may communicate directly or indirectly with at least one of the third external electronic device 250 (e.g., a charging device such as a cradle) or the second external electronic device 204 (e.g., a secondary earbud). .
- the second external electronic device 204 may be configured as a pair with the first external electronic device 202.
- Communications circuitry 320 may operate independently of processor 310 and may include one or more communications processors supporting wired or wireless communications.
- the communication circuit 320 transmits signals or information to another electronic device (e.g., the electronic device 101, the second external electronic device 204, or the cradle device (e.g., the third external electronic device) At least one of (250)) may be connected to one or more antennas capable of transmitting or receiving from another electronic device.
- a communication method suitable for use in a communication network such as a first network (e.g., first network 198 in FIG. 1) or a second network (e.g., second network 199 in FIG. 2)
- At least one antenna may be selected from the plurality of antennas, for example by communication circuitry 320. Signals or information may be transmitted or received between the communication circuit 320 and another electronic device through the selected at least one antenna.
- the input device 330 may be configured to generate various input signals that can be used to operate the first external electronic device 202.
- the input device 330 may include at least one of a touch pad, a touch panel, or a button.
- the input device 330 may generate a user input regarding turning on or off the first external electronic device 202. According to one embodiment, the input device 330 may receive a user input for communication connection between the first external electronic device 202 and the second external electronic device 204. According to one embodiment, the input device 330 may receive a user input related to audio data (or audio content). For example, user input may be associated with the ability to start playback, pause playback, stop playback, adjust playback speed, adjust playback volume, or mute audio data.
- the sensor 340 can measure or confirm the location or operating state of the first external electronic device 202.
- the sensor 340 may convert measured or confirmed information into an electrical signal.
- the sensor 340 may include, for example, at least one of a magnetic sensor, an acceleration sensor, a gyro sensor, a geomagnetic sensor, a proximity sensor, a gesture sensor, a grip sensor, a biometric sensor, or an optical sensor.
- the processor 310 detects data (e.g., audio data) from a data packet received from the electronic device 101, processes the detected data through the audio processing module 350, and processes the speaker 354. ) can be output.
- the audio processing module 350 may support an audio data collection function and play the collected audio data.
- the audio processing module 350 may include an audio decoder (not shown) and a D/A converter (not shown).
- the audio decoder may convert audio data stored in the memory 390 or received from the electronic device 101 through the communication circuit 320 into a digital audio signal.
- the D/A converter can convert the digital audio signal converted by the audio decoder into an analog audio signal.
- the audio decoder may convert audio data received from the electronic device 101 through the communication circuit 320 and stored in the memory 390 into a digital audio signal.
- the speaker 354 can output an analog audio signal converted by a D/A converter.
- the audio processing module 350 may include an A/D converter (not shown).
- the A/D converter can convert an analog voice signal transmitted through the microphone 352 (hereinafter referred to as a microphone) into a digital voice signal.
- Microphone 352 may include at least one air conduction microphone and/or at least one bone conduction microphone for detecting speech and/or sound.
- the audio processing module 350 may reproduce various audio data set during the operation of the first external electronic device 202.
- the processor 310 detects through the sensor 340 that the first external electronic device 202 is coupled to or separated from the user's ear, and sends a sound effect or a guidance sound through the audio processing module 350. It can be designed to play audio data about. The output of sound effects or guidance sounds may be omitted depending on user settings or designer intent.
- the memory 390 may store various data used by at least one component (eg, the processor 310 or the sensor 340) of the first external electronic device 202.
- Data may include, for example, input data or output data for software and instructions related thereto.
- Memory 390 may include volatile memory or non-volatile memory.
- the power management module 360 may manage power supplied to the first external electronic device 202.
- the power management module 360 may be implemented as at least a part of, for example, a power management integrated circuit (PMIC).
- the power management module 360 may include a battery charging module.
- another electronic device e.g., one of the electronic device 101, the second external electronic device 204, or another electronic device
- the power management module 360 can charge the battery 370 by receiving power from the other electronic device.
- the battery 370 may supply power to at least one component of the first external electronic device 202.
- Battery 370 may include, for example, a rechargeable cell.
- the first external electronic device 202 when the first external electronic device 202 is mounted in a cradle device (e.g., the third external electronic device 250), the first external electronic device 202 is charged to the battery 370 up to a specified charge level. ), the first external electronic device 202 can be turned on or at least part of the communication circuit 320 can be turned on.
- the interface 380 connects the first external electronic device 202 to the electronic device 101, the second external electronic device 204, and the cradle device (for example, the third external electronic device 250). Alternatively, it may support one or more designated protocols that can be used to connect directly (e.g., wired) with another electronic device.
- the interface 380 may include, for example, at least one of a high definition multimedia interface (HDMI), a USB interface, an SD card interface, a power line communication (PLC) interface, or an audio interface.
- the interface 380 may include at least one connection port for establishing a physical connection with a cradle device (eg, the third external electronic device 250).
- the processor 310 may execute software to control at least one other component (e.g., hardware or software component) of the first external electronic device 202 connected to the processor 310, various data processing or calculations can be performed.
- processor 310 stores commands or data received from other components (e.g., sensor 340 or communication circuit 320) in volatile memory 390. It is possible to load, process commands or data stored in volatile memory 390, and store the resulting data in non-volatile memory.
- the processor 310 may establish a communication connection with the electronic device 101 through the communication circuit 320, and data (e.g., audio) may be transmitted from the electronic device 101 through the established communication connection. data) can be received. According to one embodiment, the processor 310 may transmit data received from the electronic device 101 to the second external electronic device 204 through the communication circuit 320. According to one embodiment, the processor 310 may perform operations of the first external electronic device 202, which will be described below. According to one embodiment, the processor 310 may include a physical layer, a link layer, a host, and an application layer for performing Bluetooth communication.
- the first external electronic device 202 may further include various modules depending on its provision type. Depending on the convergence trend of digital devices, there are so many variations that it is impossible to list them all, but components equivalent to the above-mentioned components may be additionally included in the first external electronic device 202. .
- the first external electronic device 202 may exclude certain components from the above components or replace them with other components depending on the form in which the first external electronic device 202 is provided. This can be easily understood by those skilled in the art.
- the second external electronic device 204 paired with the first external electronic device 202 may include the same or similar components as those included in the first external electronic device 202. , may perform all or part of the operation of the first external electronic device 202 described in the drawings described later.
- the electronic device 101 may discover at least one of the external electronic devices 202 and 204 through a BLE scan and establish a BLE connection with the discovered external electronic device. At least one of the external electronic devices 202 and 204 may perform BLE advertising so that it can be discovered by the electronic device 101.
- Figure 4 is a diagram for explaining a Bluetooth LE (BLE) scan operation according to an embodiment.
- BLE Bluetooth LE
- the electronic device 101 may begin performing a scan operation to search for nearby Bluetooth devices based on BLE.
- the external electronic device e.g., the second external electronic device 202 periodically transmits an advertising packet (“Adv”) to be discovered by a nearby Bluetooth device based on BLE (e.g. For example, multicast or broadcast).
- the advertising packet may include advertising data, and the advertising data is transmitted to an unspecified nearby electronic device (for example, the electronic device 101) to an external electronic device ( 202) may provide information related to connection or account (e.g. pairing).
- the advertising packet includes identification information of the external electronic device 202, user account information, information about whether the external electronic device 202 is paired with another electronic device, and information about whether the external electronic device 202 is paired with another electronic device. It may include at least one of a list of previously paired devices, information about devices that can be paired at the same time, transmission power, detection area, or information about remaining battery capacity.
- the external electronic device 202 may start transmitting an advertising packet in response to a user input for, for example, a pairing request.
- the external electronic device 202 may be stored in a cradle device (e.g., the third external electronic device 250), and when the cradle device is opened or separated from the cradle device while stored in the cradle device, the external electronic device 202 may be stored in the cradle device. Transmission of advertising packets can begin.
- the external electronic device 202 may transmit an advertising packet according to specified conditions.
- the second electronic device 202 may transmit an advertising packet based on at least one of the following: when power is supplied, or based on a specified time period. Thus, transmission of advertising packets can be started.
- the electronic device 101 receives at least one of the advertising packets broadcast from the external electronic device 202 and outputs a user interface for connection to the external electronic device 202 on the display. You can.
- the electronic device 101 may provide a user interface according to various conditions based on information included in the received advertising packet.
- the user interface may include at least one of an image corresponding to the first external electronic device 202, a user account, transmission power, or remaining battery capacity.
- the electronic device 101 may transmit a scan request packet (eg, Scan_req) corresponding to the advertising packet received from the external electronic device 202 to the external electronic device 202.
- the external electronic device 202 may transmit a scan response packet (eg, Scan_rsp) corresponding to the scan request packet to the electronic device 101.
- the external electronic device 202 may continue to periodically transmit the advertising packet in operation 420.
- the electronic device 101 may generate a scan result (eg, including a received signal strength indicator (RSSI)) according to reception of the scan response packet.
- the electronic device 101 may end the scan operation upon receipt of the scan response packet in operation 424. Alternatively, the electronic device 101 may continue to perform the scan operation.
- the electronic device 101 may establish a BLE communication link (eg, an asynchronous connection-less (ACL) link) with the external electronic device 202.
- operation 426 may include transmission of CONNECT_IND 604 and first packet 610 of Figure 6.
- the BLE communication link includes multiple LE physical channels, each of which can be optimized and utilized for different purposes, such as LE piconet physical channel, LE advertising physical channel, advertising periodic physical channel, and LE isochronous physical channel. It may include a channel (LE isochronous physical channel). LE piconet physical channels are used for communication between connected devices and can be associated with a specific piconet.
- the LE Advertising physical channel can be used to broadcast advertisements to Bluetooth devices. The advertising may be used to discover, connect, or send user data to the other electronic device.
- the advertising periodic physical channel can be used to transmit user data to the other electronic device at specific intervals through periodic advertising.
- the LE isochronous physical channel can be used to transfer isochronous data between Bluetooth devices within an LE piconet, or to transfer isochronous data between unconnected Bluetooth devices.
- electronic devices may support an audio service through BLE, and may support an audio service through BLE.
- Audio provided by the audio service may be referred to as BLE audio.
- Methods of supporting audio services through BLE audio can be divided into, for example, BIS (broadcast isochronous stream) and CIS (connected isochronous stream).
- Figure 5 is a diagram for explaining an example of connection between Bluetooth devices according to an embodiment.
- the electronic device 101 detects the presence of the first external electronic device 202 and establishes a first BLE-based asynchronous connection-less (ACL) link 502 (hereinafter referred to as ACL1 or LE ACL1). name) can be established. Additionally, the electronic device 101 may detect the presence of the second external electronic device 204 and establish a second ACL link 504 (hereinafter referred to as ACL2 or LE ACL2) based on BLE. In one embodiment, the electronic device 101 may establish the second ACL link 504 with the help of the first external electronic device 202.
- ACL1 BLE-based asynchronous connection-less link 502
- the electronic device 101 uses the first ACL link 502 to create an audio communication link for audio communication (e.g., a first connected isochronous stream using an isochronous physical channel).
- stream: CIS) link 506 (hereinafter referred to as CIS1)
- isochronous data (e.g., audio data) can be exchanged with the first external electronic device 202 through the first CIS link 506. there is.
- the electronic device 101 establishes an audio communication link (e.g., a second CIS link 508) (hereinafter referred to as CIS2) for audio communication using the second ACL link 504 and the second ACL link 504.
- Isochronous data (eg, audio data) may be exchanged with the second external electronic device 204 through the CIS link 508.
- the first CIS link 506 and the second CIS link 508 may be included in a CIS group (CIS group: CIG) 510.
- the first ACL link 502 may be a logical transmission used to exchange information necessary to establish or control the first CIS link 506 between the electronic device 101 and the first external electronic device 202. there is.
- the first CIS link 506 may be used to communicate audio data between the electronic device 101 and the first external electronic device 202.
- the electronic device 101 and the first external electronic device 202 establish a first CIS link 506 based on information (e.g., communication parameters) obtained through the first ACL link 502. can be established.
- the electronic device 101 and the first external electronic device 202 provide information to apply to control of the first CIS link 506 (e.g., supported feature information and/or PHY change policy). ) can be exchanged through the first ACL link 502.
- the second external electronic device 204 establishes a second ACL link 504 and a second CIS link 508 with the electronic device 101, and operates the same as the first external electronic device 202. Or you can perform a similar operation. In one embodiment, the second external electronic device 204 may communicate with the electronic device 101 through control of the first external electronic device 202.
- the primary advertising channel 600 may be used to transmit an advertising packet 602 and a connection indication (CONNECT_IND) message 604. There may be inter-frame time (time for inter frame space: T_IFS) between the advertising packet 602 and the connection indication message 604. The advertising event may be terminated by a connection indication (CONNECT_IND) message 604. After the connection indication (CONNECT_IND) message 604, a link layer (LL) connection can be established.
- CONNECT_IND time for inter frame space
- LL link layer
- connection interval which means the communication cycle, (connection interval: connInterval) 612 can be set, and communication can be performed at each connection interval 612.
- connection interval which means the communication cycle
- the electronic device 101 receives the advertising packet 602 broadcast from the first external electronic device 202 on the primary advertising channel 600, the electronic device 101 transmits the advertising packet 602 to the first external electronic device 202.
- a BLE connection can be requested by sending the CONNECT_IND message (604) to (202).
- Figure 7 is a signal flow diagram illustrating an example of an operation procedure for establishing a CIS link according to an embodiment.
- an electronic device for example, a CIS source electronic device or electronic device 101 connects a counterpart electronic device (for example, a CIS sink electronic device or a first external electronic device 202). ) may have a BLE connection (e.g., first ACL link 502).
- the electronic device 101 sends a link layer CIS request message including CIS parameters (e.g., control data 800 of FIG. 8) defining a CIS link (e.g., first CIS link 506).
- a link layer CIS request message including CIS parameters (e.g., control data 800 of FIG. 8) defining a CIS link (e.g., first CIS link 506).
- LL_CIS_REQ packet may be transmitted to the first external electronic device 202.
- the electronic device 101 and the first external electronic device 202 exchange one or more CIS null packets (e.g., protocol data units (PDUs)) of the CIS link. Establishment can be confirmed.
- PDUs protocol data units
- the electronic device 101 and the first external electronic device 202 may communicate CIS data PDUs through a CIS link.
- CIS can refer to logical transmission that can transmit isochronous data in any direction between electronic devices that create a communication link.
- CIS is capable of transmitting data of variable size as well as fixed data size, and can be used for both framed data and unframed data.
- a schedule of time slots known as events and sub-events may be established for each CIS.
- CIS may be able to adjust the data rate by transmitting variable size packets and one or more packets in each isochronous event.
- data traffic can be transmitted unidirectionally or bidirectionally between devices, and may include an acknowledgment (ACK) protocol to improve packet transmission reliability.
- ACK acknowledgment
- FIG. 8 is a diagram for explaining an example of CIS parameters set for CIS communication according to an embodiment.
- parameters used in CIS communication are transmitted to a counterpart electronic device (e.g., a first external electronic device (e.g., a first external electronic device) through control data 800 included in LL_CIS_REQ in operation 710. 202)).
- a counterpart electronic device e.g., a first external electronic device (e.g., a first external electronic device) through control data 800 included in LL_CIS_REQ in operation 710. 202)
- the electronic device 101 operating as a master role may assign a CIS_ID for CIS communication, and the CIS_ID may be assigned to a slave role (or peripheral device) through a link layer message (e.g. LL_CIS_REQ). It can be shared with the first external electronic device 202 that operates as a device.
- control data 800 includes a CIG_ID 802 that identifies a CIS group (CIG) (e.g., CIG 510), and a CIS_ID that identifies a CIS link (e.g., first CIS link 506).
- CIG_ID 802 that identifies a CIS group (CIG) (e.g., CIG 510), and a CIS_ID that identifies a CIS link (e.g., first CIS link 506).
- a parameter including PHY_M_To_S and PHY_S_To_M indicating the master-slave physical layer transmission method (hereinafter referred to as PHY), a Max_SDU parameter (including Max_SDU_M_To_S and Max_SDU_S_To_M) indicating the maximum size of a service data unit (SDU) ), at least one reserved for future use (RFU) field, a Framed field, SDU_Interval parameters (SDU_Interval_M_to_S and SDU_Interval_S_to_M), a Max_PDU parameter indicating the maximum PDU size (including Max_PDU_M_To_S and Max_PDU_S_To_M), number of subevent (NSE) 806 , Sub_Interval parameters (808) (including Sub_Interval_M_To_S and Sub_Interval_S_To_M), burst number (BN) parameters (including BN_M_To_S and BN_S_To_
- PHY
- the parameters set by the control data 800 may apply to audio data transmission on a CIS link (e.g., the first CIS link 506) and may not be changed from the time the CIS link is created until it is terminated.
- the CIS_ID 804 may be shared with the host of the first external electronic device 202 through link layers of the electronic device 101 and the first external electronic device 202, and may not be used in the link layer.
- PHY_M_To_S and PHY_S_To_M may indicate the PHY used for data transmission in the master-slave direction and the PHY used for data transmission in the slave-master direction, respectively.
- ISO_Interval 810 may indicate a regular time interval between two consecutive CIS anchor points, and one CIS event starting from each anchor point may occur within one ISO (isochronous) interval.
- One CIS event may include one or more sub-events indicating master-slave transmission opportunities.
- Sub_Interval 808 may indicate the time interval between two consecutive sub-events within one CIS event, and the maximum length of each sub-event may be specified by SE_Length.
- Max_PDU may indicate the maximum size of a CIS data PDU.
- Max_SDU may indicate the maximum size of SDU in CIS.
- NSE may indicate the maximum number of sub-events within each CIS event.
- BN specified by the BN parameter may indicate the number of packets that can be transmitted without ACK/NACK.
- the NSE parameter can be the larger of BN_M_To_S and BN_S_To_M, and can be set to a maximum of 31.
- the FT parameter represents the maximum number of CIS events for which a CIS data PDU can be transmitted (or retransmitted), and can have a value from 1 to 255.
- Encryption of the CIS link (for example, the first CIS link 506) can be applied as is to the encryption of the ACL link (for example, the first ACL link 502).
- Both the central device (e.g. electronic device 101) and the peripheral device (e.g. first external electronic device 202) may have a CIS event counter (cisEventCounter) of 39 bits, and the CIS link (e.g. For example, after setting the CIS event counter to 0 for the first CIS event of the first CIS link 506), the CIS event counter can be increased by 1 each time an isochronous PDU is transmitted in each CIS event.
- CIS event counter e.g. For example, after setting the CIS event counter to 0 for the first CIS event of the first CIS link 506), the CIS event counter can be increased by 1 each time an isochronous PDU is transmitted in each CIS event.
- the CIS link (e.g., the first CIS link 506) may have a CIS payload number (cisPayloadNumber) of 39 bits, and when the CIS payload number is 2 39 -1, the CIS link (e.g., the first CIS link 506) may have a CIS payload number (cisPayloadNumber) of 39 bits. 1 CIS link 506) may be terminated. CIS null PDUs may not have cisPayloadNumber.
- Figure 9 is a timing diagram explaining an example of CIS communication according to an embodiment.
- CIS communication may include CIS events that occur at set intervals (e.g., ISO intervals that may be indicated by ISO_Interval 810), and each CIS event may include one or more subevents. ) (e.g., the first sub-event 902 corresponding to Sub_Interval).
- SE_Length 904 which indicates the length of each sub-event, may be specified by, for example, the Sub_Interval parameter 808 among CIS parameters (eg, control data 800).
- electronic device 101 transmits one transmission (e.g. a first external electronic device from electronic device 101 (central device)).
- C->P packet 906 transmitted to 202 (peripheral device) and received once (e.g. from the first external electronic device 202 (peripheral device) to the electronic device 101 (central device) ) can be performed.
- the first external electronic device 202 may receive the C->P packet 906 and transmit a response corresponding thereto (for example, a P->C packet 910) after an interval 908 of T_IFS.
- the first external electronic device 202 may not perform any transmission during the first sub-event 902.
- the electronic device 101 and the first external electronic device 202 may use the next sub-event for retransmission (RT) of the packet 906 or transmission of the next packet.
- RT retransmission
- T_MSS 912 After transmission (e.g., P->C packet 910) of the first external electronic device 202, at least T_MSS (time for minimum subevent space) 912 until the first sub-event 902 ends. Gaps may exist. T_MSS 912 is the last bit of the last packet (e.g., P->C packet 910) within one sub-event (e.g., first sub-event 902) and the first bit of the first packet of the next sub-event. It refers to the minimum time interval between bits and, for example, may be specified as 150 ⁇ s (micro second) by the standard.
- Figure 10 is a diagram for explaining an example of a CIS event according to an embodiment.
- At least one CIS event may be included in ISO_interval (1002) for the CIS link.
- Each CIS event e.g. CIS event Separation may exist.
- Each CIS event (e.g., CIS event x (1004)) may be divided into one or more sub-events (e.g., including sub-event 1 (1008)).
- Data transfer (“C->P”) from a central device (e.g. electronic device 101) to a peripheral device (e.g. first external electronic device 202) within one sub-event 1 (1008)
- P->C data transfer
- a CIG is a bundle of CISs that provide the same service, and a CIG may include one or more CISs. Multiple CISs within the CIG may have a common timing reference based on the timing of a central device (e.g., electronic device 101) and may be synchronized on a time basis. CIG can have temporal relationships at the application level. CISs within one CIG can have the same ISO_Interval (for example, ISO_Interval(1002)), and up to 31 CISs can be included in one CIG.
- the central device may allocate a CIG_ID and share the CIG_ID with a peripheral device (eg, the first external electronic device 202) through an LL message.
- Figure 11 is a diagram for explaining an example of CIS transmission according to an embodiment.
- the external electronic device 202 may fail to properly receive packet P0 in four sub-events 1104 and transmit NACK using the fourth and last sub-event.
- the electronic device 101 may transmit the next packet P1 in the third CIS event. there is.
- the electronic device 101 may transmit the next packet P2 using the third sub-event of the third CIS event.
- Figure 12 is a diagram for explaining another example of CIS transmission according to an embodiment.
- the electronic device 101 may transmit packet P0 and receive an ACK from the external electronic device 202.
- the electronic device 101 may repeatedly transmit packet P1, and in the fourth sub-event, the external electronic device 202 may transmit an ACK for packet P1 to the electronic device 101. .
- the electronic device 101 may repeatedly transmit packet P2 using the first and second sub-events, and may repeatedly transmit packet P3 using the third and fourth sub-events.
- the electronic device 101 may transmit packet P4 using the first sub-event, and may repeatedly transmit packet P5 using the second, third, and fourth sub-events.
- the electronic device 101 transmits CIS parameters (e.g., control data 800) to the first external electronic device 202 and the second external electronic device to transmit audio data using CIS communication.
- the CIS parameters can be set to the first external electronic device 202 and the second external electronic device 204.
- two CISs e.g. the first CIS link ( 506) and the second CIS link 508 are opened between the electronic device 101 and the first external electronic device 202 and the second external electronic device 204, and audio services can be performed through the CISs. there is.
- the CIS-specific resources available to the electronic device 101 for one CIS may be calculated as “SE length ⁇ CIS count”.
- the CIS count may mean the number of CISs included in one CIG (for example, 2).
- the electronic device 101 includes a designated SE length and ISO among CIS parameters (e.g., control data 800) transmitted to the first external electronic device 202 and the second external electronic device 204.
- the resource can be determined using the interval 810 and NSE 806.
- the CIG is expected to have a temporal relationship in the application layer and may include Num_CIS CISs with the same ISO interval, where Num_CIS may be less than or equal to 31.
- the host of the central device e.g., electronic device 101
- CISs in each CIG can be arranged in a sequential or interleaved manner depending on the interval between Sub_Interval and CIS anchor points.
- Figure 13 is a diagram for explaining sequential arrangement of CISs according to an embodiment.
- ISO_Interval 1302 may start at the CIS1 anchor point 1300 that overlaps the CIG anchor point, and may include CIG events (e.g., CIG event x 1304). Within CIG event x (1304), CIS2 event x (1308) may occur immediately after CIS1 event x (1306).
- FIG. 14 is a diagram for explaining CISs in an interleaved arrangement according to an embodiment.
- ISO_Interval 1402 may start at the CIS1 anchor point 1400 that overlaps the CIG anchor point, and may include CIG events (e.g., CIG event x 1404). Within CIG event x (1404), CIS2 event x (1408) may occur overlapping with CIS1 event x (1406).
- CIG events e.g., CIG event x 1404
- CIS2 event x 1408
- CIS1 event x 1406
- Figure 15 is a diagram for explaining a CIG event layout including three CISs according to an embodiment.
- a CIG event 1502 (e.g., CIG event x 1304 or CIG event x 1404) is a plurality of CIS events (e.g., CIS event 1504) corresponding to a plurality of CISs. ), CIS event 1506, and CIS event 1508).
- CIG event 1502 starts at the anchor point of CIS event 1504 of the earliest CIS (e.g., CIS1 anchor point 1300 or CIS1 anchor point 1400) and ends at CIS event 1508 of the latest CIS. It may end at.
- the CIG event 1502 may include a CIG reference point and a CIG synchronization point, and the two points may have a separation of CIG_Sync_Delay.
- Each starting point of CIS events 1504, 1506, and 1508 may have an interval of CIG synchronization point and CIS_Sync_Delay.
- the link layer of the central device (e.g. electronic device 101) sends timing parameters (e.g. CIG_Sync_Delay and CIS_Sync_Delay) to enable synchronization of isochronous data in the application layer to the peripheral device (e.g. first external device). It can be provided as a link layer of the electronic device 202).
- timing parameters e.g. CIG_Sync_Delay and CIS_Sync_Delay
- One CIS event may include up to NSE sub-events, and a central device (e.g., electronic device 101) sends audio data to a peripheral device (e.g., NSE) using a plurality of sub-events within the CIS event. For example, it can be transmitted to the first external electronic device 202).
- a central device e.g., electronic device 101
- a peripheral device e.g., NSE
- the central device may be the source electronic device and the peripheral device may be the sink electronic device.
- An audio service using BLE communication can be used, for example, for binaural ear wearable devices (e.g., the first external electronic device 202 and the second external electronic device 204).
- Binaural separable ear wearable devices e.g., the first external electronic device 202 and the second external electronic device 204
- Binaural separable ear wearable devices may, for example, support a scenario of simultaneously outputting music through two or more speakers or 5.1 channels.
- a plurality of sink electronic devices e.g., a first external electronic device
- the second external electronic device 202) and the second external electronic device 204 are connected and output audio simultaneously.
- one sink electronic device e.g., either the first external electronic device 202 or the second external electronic device 204
- one source electronic device e.g., the electronic device 101
- the source electronic device can use maximum radio frequency (RF) resources and maximum internal processing resources for the sink electronic device, it has relatively little influence on communication degradation due to changes in the surrounding wireless environment or changes in physical distance. You can receive less.
- RF radio frequency
- the source electronic device communicates with the sink electronic device (e.g., either the first external electronic device 202 or the second external electronic device 204) to transfer audio data.
- the sink electronic device e.g., either the first external electronic device 202 or the second external electronic device 204
- resources of the source electronic device can be managed, if necessary, by considering Bluetooth concurrency operation and Wi-Fi coexistence (COEX) operation.
- Bluetooth concurrency operation may include maintaining BLE connections with other electronic devices (e.g., Bluetooth devices other than the first external electronic device 202 and the second external electronic device 204), BLE scanning, and BLE advert.
- the Wi-Fi coexistence operation may include at least one of titrating, Bluetooth inquiry, Bluetooth inquiry scan, Bluetooth paging, Bluetooth page scan, Bluetooth connection maintenance, or channel scan, and the Wi-Fi coexistence operation includes data transfer over Wi-Fi. can do.
- the source electronic device may fixedly allocate approximately 50 to 60% of its resources to communication links for the sink electronic devices, taking into account other operations using the same frequency band, such as Bluetooth concurrency operation and/or Wi-Fi coexistence. You can.
- a source electronic device e.g., electronic device 101
- allocates fixed resources for a plurality of communication links and provides audio services through the allocated fixed resources various factors such as changes in the surrounding environment or physical obstacles
- various factors such as changes in the surrounding environment or physical obstacles
- Embodiments of the present disclosure allocate resources to perform other tasks as efficiently as possible while operating audio communication links (e.g., CIS link and/or BIS link) while performing audio services between electronic devices.
- the other task is a frequency band (e.g. the same frequency band) corresponding to the frequency band (e.g. 2.4 GHz) of the audio service over audio communication links (e.g. CIS link and/or BIS link).
- the other tasks include Bluetooth concurrency operations (e.g., maintenance of BLE connection, BLE scan, BLE advertising, Bluetooth inquiry, Bluetooth authentication) rather than audio communication (e.g., CIS communication and/or BIS communication).
- an electronic device when creating an audio communication link (e.g., a CIS link and/or a BIS link), determines the resources available for audio communication (e.g., one Among CIS events, the number of available sub-events or the number of BIS sub-event groups) is determined, and at least one other task is performed in consideration of priorities for each task within the determined resources through audio communication (e.g., audio communication) through the audio communication link. (for example, at least one CIS task or at least one BIS task).
- an audio communication link e.g., electronic device 101
- determines the resources available for audio communication e.g., one Among CIS events, the number of available sub-events or the number of BIS sub-event groups
- at least one other task is performed in consideration of priorities for each task within the determined resources through audio communication (e.g., audio communication) through the audio communication link. (for example, at least one CIS task or at least one BIS task).
- the priorities for each task are the priority of communication tasks through an audio communication link, or the priority of other tasks that may occur in the same frequency band as audio communication (for example, Bluetooth concurrency operation or Wi-Fi coexistence operation). May contain at least one of the rankings.
- the electronic device 101 determines the resources available for each audio communication link (e.g., the maximum length of a time interval or the maximum number of sub-events available for audio communication). can be determined and assigned close to the maximum value (e.g. 100%).
- the electronic device 101 may variably change priorities for each task depending on the scheduling situation within the electronic device 101, or may variably change the priority of a communication task over time.
- the electronic device 101 performs audio communication tasks and other tasks in consideration of priorities for each task, thereby improving the execution of other tasks, such as Bluetooth concurrency operation or Wi-Fi coexistence, while at the same time performing audio communication tasks through audio communication links. Audio services can be provided reliably.
- FIG. 16A is a flowchart illustrating a procedure for allocating resources for audio communication according to an embodiment. At least one of the illustrated operations may be performed by a processor (eg, processor 120) of the source electronic device (eg, electronic device 101). At least one of the operations described below may be omitted, changed, or changed in order according to various embodiments.
- the electronic device 101 establishes an audio communication link (e.g., first CIS link 506 or second CIS link 508).
- the first resource for example, the length of a time interval, or the number of sub-events included in one CIS event) available for audio communication within one time interval (for example, ISO_Interval) can be determined.
- the first resource is the maximum resource that the electronic device 101 has determined to use for audio communication (e.g., 60 to 100 of the ISO interval) among the total resources available for audio communication (e.g., ISO interval). %) may be included.
- the first resource uses the remaining time excluding a time interval (e.g., 20 to 40%) designated for tasks other than audio communication (e.g., Bluetooth concurrency operation or Wi-Fi coexistence operation) during the ISO interval. It can be determined by section.
- the first resource may be calculated based on the NSE and SE length set for the CIS link.
- the first resource may be determined to be close to 100% of the ISO interval by considering the NSE and SE lengths set for the CIS link.
- the first resource may be calculated based on the number of sub-event groups established for the BIS link.
- the electronic device 101 may divide the determined first resource into at least two resources corresponding to different priorities.
- the at least two resources may include at least a second resource and a third resource, and the electronic device 101 (e.g., the processor 120) assigns a first priority within the first resource.
- a second resource for and a third resource for the second priority can be determined.
- the first priority is a high priority set for a first communication task (e.g. a CIS task) that may be performed in at least one first sub-event of an audio communication link (e.g. a CIS link). It may mean ranking.
- the second priority may mean a lower priority set for a second communication task (e.g. CIS task) that may be performed in at least one second sub-event of the audio communication link (e.g. CIS link). You can.
- the at least one first sub-event may include at least one sub-event (eg, at least one preceding sub-event) within one CIS event.
- the at least one second sub-event may include at least one sub-event (eg, at least one latter sub-event) other than the first sub-event within one CIS event.
- at least one first sub-event and at least one second sub-event may be determined according to a specified ratio among all sub-events.
- one CIS event may be divided into first sub-events corresponding to the first priority and second sub-events corresponding to the second priority according to a predetermined ratio.
- one CIS event may be divided into first sub-events corresponding to the first priority and the remaining second sub-events corresponding to the second priority according to a predetermined minimum number of sub-events. .
- the first priority may be performed in at least one first sub-event group (e.g., at least one front sub-event group) among sub-event groups included in one BIS event of the BIS link. This may mean a high priority set for the first communication task (for example, a BIS task).
- the second priority is at least one second sub-event group (for example, at least one latter sub-event group) excluding the first sub-event group among the sub-event groups included in one BIS event. It may mean a low priority set for a second communication task (for example, a BIS task) that can be performed in .
- the first priority may be higher than the priority given to Bluetooth concurrency operation or the priority given to Wi-Fi coexistence operation.
- the first priority is the priority of at least one other task (hereinafter referred to as the third task) that can be performed on the same frequency channel as the audio communication (e.g., Bluetooth concurrency operation or Wi-Fi coexistence operation) (e.g., third priority), and the second priority may be set lower than the third priority of the third task.
- the third task the priority of at least one other task that can be performed on the same frequency channel as the audio communication (e.g., Bluetooth concurrency operation or Wi-Fi coexistence operation) (e.g., third priority)
- the second priority may be set lower than the third priority of the third task.
- the electronic device 101 transmits a second resource (e.g., transmission of an audio data packet scheduled to the second resource) to a first communication task (e.g., transmission of an audio data packet scheduled on the second resource) having a first priority. Allocate a third resource (e.g. at least one sub-event) to a second communication task with a second priority (e.g. transmission of an audio data packet scheduled on a third resource) One second sub-event) can be assigned.
- the first communication task may include transmission of a CIS data packet (e.g., CIS data PDU 722) using at least one first sub-event.
- the second communication task may include transmission of a CIS data packet (e.g., CIS data PDU 722) using at least one second subevent.
- the first communication task may include transmission of a BIS data packet using at least one first sub-event group.
- the second communication task may include transmission of a BIS data packet using at least one second sub-event group.
- the electronic device 101 establishes the audio communication link including a second resource and a third resource and configures the audio communication link to include the second resource and/or the third resource. You can use to provide audio services (for example, transmit audio data packets).
- the electronic device 101 eg., processor 120
- the audio communication link is already established, and in operation 1615, electronic device 101 (e.g., processor 120) configures the second resource and/or third resource for the audio communication link.
- resource allocation of the audio communication link may be changed to include the second resource and/or the third resource. Information about the changed resource allocation is sent to sink electronic devices (e.g., the first external electronic device 202 and the /or may be provided as a second external electronic device 204).
- the electronic device 101 while providing the audio service, performs a third task (e.g., audio communication via the audio communication link) stored in a task queue. If it is identified that the priority of another communication task) is not higher than the second priority, audio data packets can be transmitted using a third resource.
- a third task e.g., audio communication via the audio communication link
- the electronic device 101 while providing the audio service, performs a third task stored in the task queue (e.g., a communication other than audio communication through the audio communication link). If it is identified that the priority of the communication task is higher than the second priority, the second communication task may be omitted or postponed, and the third task may be performed using a third resource.
- a third task stored in the task queue e.g., a communication other than audio communication through the audio communication link. If it is identified that the priority of the communication task is higher than the second priority, the second communication task may be omitted or postponed, and the third task may be performed using a third resource.
- FIG. 16B is a flowchart illustrating a procedure for providing an audio service through short-range wireless communication according to an embodiment. At least one of the illustrated operations may be performed by a processor (eg, processor 120) of the source electronic device (eg, electronic device 101). At least one of the operations described below may be omitted, changed, or changed in order according to various embodiments. In one embodiment, operations 1620, 1625, and 1630 may be the same as or similar to operations 1605, 1610, and 1615.
- the electronic device 101 e.g., processor 120 establishes an audio communication link (e.g., first CIS link 506 or second CIS link 508).
- the first resource for example, the length of a time interval, or the number of sub-events included in one CIS event
- one time interval for example, ISO_Interval
- the first priority may mean a high priority set for a first communication task that can be performed in at least one first sub-event group of the BIS link
- the second priority may be set to a BIS link. This may mean a low priority set for a second communication task that can be performed in at least one second sub-event group of the link.
- the electronic device 101 transmits a second resource (e.g., transmission of an audio data packet scheduled to the second resource) to a first communication task (e.g., transmission of an audio data packet scheduled on the second resource) having a first priority. Allocate a third resource (e.g. at least one sub-event) to a second communication task with a second priority (e.g. transmission of an audio data packet scheduled on a third resource) One second sub-event) can be assigned.
- a second resource e.g., transmission of an audio data packet scheduled to the second resource
- a first communication task e.g., transmission of an audio data packet scheduled on the second resource
- a third resource e.g. at least one sub-event
- a second priority e.g. transmission of an audio data packet scheduled on a third resource
- One second sub-event can be assigned.
- the electronic device 101 performs a communication task (e.g., a third communication task other than audio communication through the audio communication link) in the same frequency band as audio communication through the audio communication link. You can determine whether a task needs to be performed.
- the electronic device 101 e.g., processor 120
- the electronic device 101 determines whether a third task is stored in the task queue at each transmission opportunity (e.g., each sub-event within the third time interval) using the third resource. And, if a third task is stored, it may be determined that the third task needs to be performed.
- the third task is a Bluetooth concurrency operation, and the electronic device 101 (e.g., processor 120) can determine whether the third task is scheduled. In one embodiment, the third task is a Wi-Fi coexistence operation, and the electronic device 101 (eg, processor 120) can determine whether the third task is scheduled. If the third task is scheduled, the process may proceed to operation 1640. If the third task is not scheduled, the electronic device 101 (e.g., processor 120) returns to operation 1630 and transmits the audio data over the audio communication link until there is no more audio data to transmit or termination of the audio service is requested. Audio services can continue to be provided.
- the electronic device 101 e.g., processor 120 identifies the priority of the third task and determines that the priority of the third task (e.g., third priority) is higher than the second priority. You can judge whether it is high or not. For example, the third priority may be lower than the first priority. If the third priority is higher than the second priority, proceed to operation 1645, otherwise proceed to operation 1650.
- the priority of the third task e.g., third priority
- the electronic device 101 may omit or postpone the second communication task and perform the third task using a third resource.
- the electronic device 101 e.g., processor 120
- a Bluetooth concurrency operation or a Wi-Fi coexistence operation can be performed.
- transmission of CIS data packet(s) corresponding to at least one second sub-event may be omitted or performed at the next CIS event.
- the electronic device 101 may perform a second communication task using a third resource and, if possible, perform a third task using a fourth resource.
- the electronic device 101 e.g., the processor 120
- displays the remaining time sections e.g., the time section of FIG. 18 (e.g., the time section of FIG. 18) excluding the time sections corresponding to the second and third resources in the current ISO interval. 1820) or the time section 2418 of FIG. 24
- a Bluetooth concurrency operation or a Wi-Fi coexistence operation according to the third task can be performed using the fourth resource including the remaining time section.
- the third task may be omitted or may be performed in a time interval corresponding to a later CIS event.
- the electronic device 101 e.g., processor 120
- the electronic device 101 needs to perform a third task at each transmission opportunity (e.g., each sub-event within the second time interval) corresponding to the second resource. You can determine whether there is a If the third task has a third priority higher than the first priority, the electronic device 101 (e.g., the processor 120) omits or postpones the first communication task in the second time interval and 3 tasks can be performed.
- FIG. 17 is a timing diagram illustrating an example of allocating time sections by an electronic device according to an embodiment.
- ISO_Interval x (1702) and ISO_Interval x+1 (1706) may have a length of, for example, 20ms (millisecond) and may include at least one CIS event.
- ISO_Interval x (1702) may include CIS1 event x for CIS1 (e.g., first CIS link 506), and ISO_Interval (506)) may include CIS1 event x+1.
- the time interval 1704 corresponding to CIS1 event x within ISO_Interval x 1702 is divided into sub-events (e.g. NSE sub-events).
- the electronic device 101 may perform CIS communication (eg, at least one CIS task) using the entire time interval 1704.
- CIS communication e.g, at least one CIS task
- the electronic device 101 omits or postpones the CIS task and performs the other task. It can be done.
- the electronic device 101 divides the first time interval 1708 available for CIS1 event x+1 in ISO_Interval x+1 1706 into at least two time intervals (e.g., a second time interval ( It may be decided to divide into a third time section (1710) and a third time section (1712).
- the first time interval 1708 may include NSE sub-events designated for CIS1 event x+1.
- the second time interval 1710 includes first sub-events that are at least some of NSE sub-events and may be assigned a first priority.
- the third time interval 1712 includes second sub-events that are the remaining part of the NSE sub-events, and may be assigned a second priority lower than the first priority.
- time sections 1710 and 1712 are shown, but of course, embodiments of the present disclosure can be applied even when the first time section 1708 is divided into more than two time sections. .
- FIG. 18 is a timing diagram illustrating another example of an electronic device allocating time sections according to an embodiment.
- ISO_Interval 1802 may have a length of, for example, 20ms (millisecond) and may include at least one CIG event (e.g., CIG event x).
- the electronic device 101 may use one CIG event (eg, CIG event x) including one or more CIS links for a multi-channel audio service.
- CIG event x is a CIS event (e.g. CIS1 event x) for CIS1 (e.g. first CIS link 506) and CIS2 (e.g. second CIS link 508 )) may include a CIS event (for example, CIS2 event x).
- CIS1 event x and CIS2 event x may be adjacent without overlapping with each other.
- CIS1 event x and CIS2 event x may at least partially overlap each other.
- the electronic device 101 is configured to operate the first external electronic device 202 and the second external electronic device 202, except for the minimum required operation (e.g., BLE scanning or BLE advertising) in the frequency band used for CIS communication.
- the amount of resources that can be allocated to the external electronic device 204 can be determined.
- the electronic device 101 divides the first time interval 1804 corresponding to the CIS1 event x into one or more first sub-events corresponding to a first priority (e.g., having a priority value of '15').
- a second time interval 1806 comprising (e.g. 6) and one or more second sub-events (e.g. It can be divided into a third time section 1808 including 4).
- the second time interval 1806 may be 5.304 ms and the third time interval 1808 may be 3.536 ms.
- the electronic device 101 selects a time interval (e.g., a time interval 1806 and a time interval 1808) corresponding to CIG1 event x, which is the maximum resource available for CIS communication within ISO_Interval 1802. (including) can be calculated as follows. (For example, the data transfer rate is 96 kbps)
- the calculated maximum resource of 17.680ms may be 88.4% of ISO_Interval (1802).
- the second resource of first priority (including time interval 1806 and time interval 1814) corresponding to CIS1 event x and CIS2 event x may occupy a time interval of 53.04% of ISO_Interval 1802. .
- Third resources of second priority (including time interval 1808 and time interval 1816) may occupy 35.36% of the time interval of ISO_Interval 1802.
- the second time interval 1806 corresponding to the second resource of the first priority may be preferentially used for CIS communication.
- the electronic device 101 may perform a first CIS task (eg, initial transmission of a CIS data packet) in the second time interval 1806.
- the third time interval 1808 corresponding to the third resource of the second priority may be used for another task (eg, a third task).
- the electronic device 101 may perform the third task in the third time interval 1808 when the third task occurs (or is scheduled) in the third time interval 1808.
- the electronic device 101 performs the third task in the third time interval 1808 when the third task has a higher priority (e.g., priority value '9') than the second priority.
- the third task may not be performed. If it is determined that the third task will not be performed, and there is a second CIS task (e.g., transmission or retransmission of a CIS data packet) that needs to be performed in the third time interval 1808, the electronic device 101 May perform the second CIS task in the third time interval 1808.
- a second CIS task e.g., transmission or retransmission of a CIS data packet
- the ISO interval 1802 may include a time interval 1820 other than the time interval 1804 corresponding to the CIS1 event x and the time interval 1812 corresponding to the CIS2 event x, and the remaining time interval 1820 Section 1820 may be used for Bluetooth concurrency operation or Wi-Fi operation, for example.
- Figure 19 is a flowchart for explaining a procedure for a two-channel audio service according to an embodiment. At least one of the illustrated operations may be performed by a processor (eg, processor 120) of the source electronic device (eg, electronic device 101). At least one of the operations described below may be omitted, changed, or changed in order according to various embodiments.
- the electronic device 101 may perform a BLE scan (e.g., operation 414 of FIG. 4) to find an arbitrary external electronic device.
- the electronic device 101 receives an advertising packet (e.g., an advertising packet) from a first external electronic device (e.g., the first external electronic device 202) through the BLE scan.
- receive an advertising packet 412) and create (or establish) a first LE communication link (e.g., a first ACL link 502) with a first external electronic device 202. You can.
- the electronic device 101 receives an advertising packet (e.g., an advertising packet) from a second external electronic device (e.g., the second external electronic device 204) through the BLE scan.
- an advertising packet 412 may be received, and a second LE communication link (e.g., a second ACL link 504) may be created (or established) with the second external electronic device 204.
- a second LE communication link e.g., a second ACL link 504
- the electronic device 101 connects the first external electronic device 202 and/or the second external electronic device 202 based on the information included in the received advertising packet(s).
- a user interface related to the external electronic device 204 may be output through a display (eg, display module 160).
- FIGS. 20A, 20B, and 20C show various examples of user interfaces displayed on the electronic device 101 according to an embodiment.
- the electronic device 101 receives an advertising packet from an external electronic device (e.g., the first external electronic device 202 and/or the second external electronic device 204).
- the user interface 2000 or 2005 may be displayed through the display module 160 based on the information included in and set conditions.
- the user interface 2000 or 2005 includes device recognition information, and the device recognition information may be information generated corresponding to the result of the electronic device 101 recognizing an external electronic device.
- the electronic device 101 may generate the model name of an external electronic device (eg, Galaxy Buds) as device recognition information.
- the device recognition information may indicate whether an external electronic device has previously been paired with the electronic device 101, or may include a user account of the electronic device.
- the user interface 2005 may further include an input menu (eg, “Dismiss” and “Connect”) for receiving input on whether to accept a connection with an external electronic device.
- the electronic device 101 is based on an advertising packet received from an external electronic device (e.g., the first external electronic device 202 and/or the second external electronic device 204).
- a user interface 2010 for informing the user of an external electronic device may be output through the display module 160.
- the user interface 2010 may include at least one of an image representing the shape of the external electronic device or text representing the name of the external electronic device.
- the user interface 2010 may further include an image indicating the remaining battery capacity (eg, 51%) of the external electronic device.
- the electronic device 101 controls the first external electronic device 202 according to the user's intention (e.g., playback of a music player) or a specified policy. and decide to start an audio service through CIS communication to the second external electronic device 204, and connect the first CIS link (for example, the first CIS link 506) with the first external electronic device 202 and the second external electronic device 204.
- the first resource available for the second CIS link (for example, the second CIS link 508) with the external electronic device 204 may be calculated.
- the electronic device 101 e.g., the processor 120
- the electronic device 101 is connected to the first CIS while providing an audio service through CIS communication to the first external electronic device 202 and the second external electronic device 204.
- Operation 1915 may be performed to assign different priorities (eg, first priority and second priority) to at least one of the link 506 or the second CIS link 508.
- the electronic device 101 e.g., processor 120 performs the minimum required operation (e.g., Bluetooth concurrency operation such as BLE scanning or BLE advertising) in the frequency band used for CIS communications. Excluding the maximum amount of resources that can be allocated to each of the first external electronic device 202 and the second external electronic device 204, it refers to the time section corresponding to one CIS event within one CIG event.
- the first time interval (for example, the first time interval 1804 and/or the first time interval 1812) may be determined as the first resource.
- the first resource is the maximum resource that the electronic device 101 determines to use for CIS communication among the total resources available for CIS communication (e.g., ISO interval) (e.g., 60 to 100 of ISO interval). %) may be included.
- the first resource is determined by the remaining time interval excluding the time interval (e.g., 20 to 40%) designated for other tasks (e.g., Bluetooth concurrency operation or Wi-Fi coexistence operation) during the ISO interval. You can.
- the first resource may be calculated based on the NSE and SE length set for the CIS link.
- the first resource may be determined to be close to 100% of the ISO interval by considering the NSE and SE lengths set for the CIS link.
- the electronic device 101 uses a first resource (e.g., the first time interval 1804 or 1812) at least two resources (e.g., the second time interval). (1806 and/or 1814) and a third time interval (1808 and/or 1816)), and assign a first priority to the second resource (e.g., the second time interval (1806 and/or 1814)).
- a second priority with a lower priority value may be set for the third resource (e.g., the third time interval 1808 and/or 1816).
- the second priority may have a lower priority value than the first priority.
- the electronic device 101 may divide the first resource into a second resource and a third resource according to a specified time ratio. In one embodiment, the electronic device 101 (eg, the processor 120) may determine a second resource corresponding to a designated minimum time interval among the first resources, and determine the remaining time intervals as the third resource.
- the electronic device 101 connects the first external electronic device 202 and the first CIS link with parameters included in CIS parameters (e.g., control data 800). 506, and a second external electronic device 204 and a second CIS link 508 can be created.
- the first CIS link 506 and the second CIS link 508 may already be established, and the electronic device 101 (e.g., processor 120) ) may apply the second and third resources to the first CIS link 506 and the second CIS link 508 that are already established in operation 1925.
- the electronic device 101 communicates with the first external electronic device 202 and the second external electronic device ( Audio services can be provided to 204).
- the electronic device 101 e.g., the processor 120
- audio data can be transmitted to the first external electronic device 202 additionally using the third time section 1712.
- the electronic device 101 e.g., the processor 120
- the third time interval 1726 when the third time interval 1726 is available, there is data to be transmitted for the CIS task scheduled in the third time interval 1726, and the priority is higher than the second priority corresponding to the third time interval 1726. This may mean that there are no other tasks with a rank.
- the electronic device 101 detects that another task (e.g., a third task) that must be performed in the same frequency band as the CIS communication has occurred while providing the audio service (e.g., For example, you can check that the data of the third task is stored in the task queue.
- the electronic device 101 e.g., processor 120
- performs at least one of a Bluetooth concurrency operation e.g., at least one of BLE keep-alive, BLE scanning, or BLE advertising
- a Wi-Fi coexistence operation It may be identified that the third task including one is scheduled. If no other work exists, the electronic device 101 (e.g., the processor 120) returns to operation 1930 and continues to provide the audio service until there is no more audio data to transmit or termination of the audio service is requested. You can.
- the electronic device 101 changes the priority of the third task to the priorities of CIS tasks to be performed through CIS links (e.g., first priority and second priority). priority).
- the electronic device 101 may preferentially perform a task with a higher priority.
- the electronic device 101 may perform the third task through a third resource when the priority of the third task is higher than the second priority.
- the electronic device 101 sends a CIS data packet (e.g., the first sub-event) to be transmitted in one sub-event (e.g., the first sub-event) of the second time interval 1710.
- CIS data packet is determined (e.g., stored in the work queue), and if there is a first CIS data packet to be transmitted, a higher priority is assigned to the first priority specified for the second time interval 1710.
- the branch can determine whether another task (eg, a third task) exists (eg, whether data to be transmitted for the third task is stored in the task queue). If the third task does not have a priority higher than the first priority, the electronic device 101 (e.g., processor 120) performs the first CIS in the first sub-event of the second time interval 1710. Data packets can be transmitted.
- the electronic device 101 when the third task has a higher priority than the first priority, the electronic device 101 (e.g., processor 120) performs the first CIS in the first sub-event of the second time interval 1710. Transmission of data packets may be omitted, and data of the third task may be transmitted in the time interval corresponding to the first sub-event.
- the first priority corresponding to the second time interval 1710 is a relatively high priority value (for example, '15' in Table 2) among communication tasks that can be performed in the electronic device 101. ), and therefore the electronic device 101 (eg, processor 120) can ensure CIS communication in the second time interval 1710 as much as possible.
- the electronic device 101 e.g., the processor 120
- the electronic device 101 may perform the ACL backoff task without performing CIS transmission in the second time interval 1710.
- the electronic device 101 sends a CIS data packet (e.g., a second sub-event) to be transmitted in a sub-event (e.g., a second sub-event) of the third time interval 1712.
- CIS data packet is determined (e.g., stored in the work queue), and if there is a second CIS data packet to be transmitted, a higher priority is assigned to the second priority specified for the third time interval 1712.
- the branch can determine whether another task (eg, a third task) exists (eg, whether data to be transmitted for the third task is stored in the task queue). If the third task does not have a higher priority than the second priority, the electronic device 101 (e.g., processor 120) performs the second CIS in the second sub-event of the third time interval 1712. Data packets can be transmitted.
- the electronic device 101 when the third task has a higher priority than the second priority, the electronic device 101 (e.g., processor 120) performs the second CIS in the second sub-event of the third time interval 1712. Transmission of the data packet may be omitted, and data of the third task may be transmitted in the time interval corresponding to the second sub-event.
- the second priority corresponding to the third time interval 1712 may have a lower priority value (for example, '7' in ⁇ Table 2>) than the Bluetooth concurrency operation or the Wi-Fi operation, Accordingly, the electronic device 101 (eg, the processor 120) may perform other tasks, such as a Bluetooth concurrency operation or a Wi-Fi operation, using the third time interval 1712.
- the electronic device 101 e.g., processor 120
- the electronic device 101 is transmitting the third task and the second CIS data packet.
- it may be determined to perform the first scheduled task (for example, the task stored first in the task queue) in the third time interval 1712.
- the electronic device 101 performs the audio service through the first CIS link 506 and the second CIS link 508 according to a specified rule or a specified policy while providing the audio service. It can be determined whether the priority of the CIS work (for example, first priority and/or second priority) needs to be changed. In one embodiment, the electronic device 101 (e.g., processor 120) determines the priority of the CIS task (e.g., first priority) by considering at least one of CIS policy, passage of time, communication state, or scheduling situation. It is possible to determine whether to change the priority and/or second priority.
- the priority of the CIS work for example, first priority and/or second priority
- the electronic device 101 determines the priority of the CIS task (e.g., first priority) by considering at least one of CIS policy, passage of time, communication state, or scheduling situation. It is possible to determine whether to change the priority and/or second priority.
- the communication state may be related to at least one of the wireless environment of the first CIS link 506 and the second CIS link 508, the storage amount of the transmission queue, or the number of retransmissions.
- the scheduling situation may include at least one of the occurrence rate of CIS data packets, the occurrence frequency of packets for Bluetooth concurrency operation, or the rate of data traffic for Wi-Fi coexistence operation.
- the electronic device 101 eg, the processor 120
- operation 1950 may include changing the second priority and/or a time section to which the second priority is to be applied (eg, a first time section and/or a second time section).
- the electronic device 101 e.g., processor 120 changes the values of the first priority and/or the second priority. You can change it to a higher or lower value. Thereafter, the electronic device 101 (eg, processor 120) may return to operation 1930 and continue to provide audio service according to the changed first priority and/or second priority. In one embodiment, the electronic device 101 (e.g., the processor 120) sends information about the changed values of the first priority and/or the second priority to the first external electronic device 202 and/or the second priority. It can be provided to an external electronic device 204.
- the electronic device 101 e.g., processor 120
- the electronic device 101 e.g., processor 120
- the electronic device 101 returns to operation 1930 and determines that there is no longer audio data to transmit or termination of the audio service is requested. Audio services can continue to be provided until this happens.
- the first external electronic device 202 may transmit an advertising packet so that the electronic device 101 can discover the first external electronic device 202.
- the first external electronic device 202 responds to the request of the electronic device 101 (for example, the scan request message 416 )), a first LE communication link (for example, a first ACL link 502) with the electronic device 101 can be created.
- the first external electronic device 202 establishes a first CIS link (e.g., first CIS link 506) defined by CIS parameters (e.g., control data 800) assigned by the electronic device 101. It is possible to connect to the electronic device 101 and receive an audio service from the electronic device 101 through the first CIS link 506.
- the second external electronic device 204 connects the electronic device 101 and the second CIS link 508 in a similar manner to the first external electronic device 202 and receives an audio service from the electronic device 101. can be provided.
- FIG. 21 is a diagram illustrating a procedure for an electronic device to create an LE communication link, according to an embodiment.
- an external electronic device e.g., the first external electronic device 202 transmits an advertising packet 2102 (e.g., ADV_EXT_IND) including advertising data through a primary advertising channel.
- an auxiliary advertisement packet 2104 (for example, AUX_ADV_IND) containing extended advertisement data may be transmitted through a secondary advertising channel.
- the first external electronic device 202 receives a connection request packet 2106 (e.g., AUX_CONNECT_REQ) from the electronic device 101 through a secondary advertising channel, and sends a connection response packet 2108 to the electronic device 101. ) (for example, AUX_CONNECT_RSP) can be transmitted.
- the first external electronic device 202 After transmitting the connection response packet 2108, the first external electronic device 202 receives version information from the electronic device 101 via the first LE communication link (e.g., first ACL link 502).
- a version indication packet 2110 (for example, LL_VERSION_IND) may be received, and a version indication packet 2112 containing its version information may be transmitted to the electronic device 101.
- the electronic device 101 and the first external electronic device 202 can create a first LE communication link by exchanging packets in FIG. 21 and transmit and receive data through the first LE communication link.
- FIG. 22 is a diagram for explaining a procedure in which an electronic device communicates through a plurality of LE communication links, according to an embodiment.
- the electronic device 101 creates and maintains a first LE communication link (e.g., the first ACL link 502) with the first external electronic device 202 as shown in FIG. 20.
- a second LE communication link eg, a second ACL link 504 with the second external electronic device 204 may be created.
- the electronic device 101 may transmit a data packet over the first ACL link to the first external electronic device 202 during every connection interval (e.g., connection interval 2202 or connection interval 2204). there is.
- the electronic device 101 may transmit a data packet over the second ACL link to the second external electronic device 204 during every connection interval (e.g., connection interval 2206 or connection interval 2208). there is.
- connection interval 2202 or connection interval 2204 may include at least one transmission opportunity for the first external electronic device 202
- connection interval 2206 or connection interval 2208 may include a first transmission opportunity for the first external electronic device 202
- 2 May include at least one transmission opportunity for the external electronic device 204.
- FIG. 23 is a diagram for explaining an operation of determining resources for a media service according to an embodiment.
- a 1-channel media type audio service is shown as an example.
- the electronic device 101 may maintain a CIS link (for example, the first CIS link 506) for performing an audio service, and the first CIS link 506 within the ISO interval 2302. ), the first time interval 2304 corresponding to the first available resource can be calculated.
- the first time interval 2304 may include the maximum available resources for the first CIS link 506.
- the electronic device 101 performs at least one of a service type (e.g., music playback), communication status, or scheduling for the electronic device 101 and an external electronic device (e.g., the first external electronic device 202).
- the first time section 2304 can be determined according to one.
- the electronic device 101 may calculate the first time interval 2304 by considering at least one CIS parameter (e.g., at least one of CIS count, ISO interval, FT, BN, SE length, or NSE). there is.
- the electronic device 101 may determine the number of sub-events to be included in the first time period 2304 (for example, 6).
- CIS parameters for a media type audio service that provides a maximum latency of 100ms can be set.
- the maximum available resources for CIS communication can be calculated as NSE ⁇ SE length / ISO interval.
- the first time interval 2304 may include six sub-events each having a length of 884 ⁇ s.
- the electronic device 101 may determine the second time interval 2306 including the first two sub-events within the first time interval 2304 as the second resource corresponding to the first priority.
- the third time interval 2308 corresponding to the remaining four sub-events may be determined as a third resource corresponding to a second priority lower than the first priority.
- the electronic device 101 may configure the second time interval 2306 and/or the third time interval 2306 in consideration of at least one of a specified rule (e.g., time ratio for CIS event), communication state of the CIS link, or scheduling situation.
- a time interval 2308 may be determined.
- the communication status may be related to the number of retransmissions of the first CIS link 506 and the second CIS link 508.
- the scheduling situation may include at least one of the occurrence rate of CIS data packets, the occurrence frequency of packets for Bluetooth concurrency operation, or the rate of data traffic for Wi-Fi coexistence operation.
- the electronic device 101 may transmit CIS data packets using the first sub-event and the second sub-event within the second time interval 2306.
- the electronic device 101 performs another operation (e.g., at least one of a Bluetooth concurrency operation or a Wi-Fi coexistence operation) in the same frequency band as the CIS communication. You can decide whether it needs to be done. If the other task is necessary, the electronic device 101 may perform the other task in the third time period 2308. At this time, the third and subsequent sub-events included in the third time interval 2308 may not be used for CIS communication.
- FIG. 24 is a diagram illustrating an operation of determining resources for a conversational service according to an embodiment.
- a two-channel interactive service is illustrated as an example.
- the electronic device 101 connects two external electronic devices (e.g., a first external electronic device 202 and a second external electronic device 204) with two-channel CIS links, respectively.
- the CIS links include a first CIS link 506 for the first channel (CH1) (e.g., left channel) and a second CIS link (506) for the second channel (CH2) (e.g., right channel). 508) may be included.
- the electronic device 101 may determine CIS parameters for an interactive type audio service that provides two-way 32 kbps and a maximum latency of 10 ms.
- time interval 2404 may include six sub-events each having a length of 740 ⁇ s.
- the time interval 2404 is a time interval 2406 including sub-events (e.g., 3) for the first channel and the time interval 2406 includes sub-events (e.g., 3) for the second channel. It may be composed of (2408).
- Time interval 2406 is the first time interval corresponding to the first CIS link 506 for the first channel
- time interval 2408 is the first time interval corresponding to the second CIS link 508 for the second channel. It can be a 1 hour section.
- the electronic device 101 determines the second time interval 2410 corresponding to the first sub-event in the time interval 2406 as the second resource corresponding to the first priority, and the remaining two sub-events
- the third time section 2412 corresponding to can be determined as the third resource corresponding to the second priority.
- the third time interval 2412 may include the second and third sub-events for the first CIS link 506.
- the electronic device 101 sends a CIS data packet of the first channel to the first external electronic device 202 using the first sub-event of the first CIS link 506 corresponding to the second time interval 2410. can be transmitted.
- the electronic device 101 performs other operations in the same frequency band as the CIS communication (e.g., Bluetooth concurrency). It may be determined whether at least one of the operation or the Wi-Fi coexistence operation needs to be performed. If the other task is necessary, the electronic device 101 may perform the other task in the third time interval 2412. At this time, sub-events included in the third time interval 2412 may not be used for CIS communication.
- the electronic device 101 determines the second time interval 2414 corresponding to the first sub-event in the write time interval 2408 as the second resource corresponding to the first priority, and the remaining two sub-events.
- the third time section 2416 corresponding to 2416 may be determined as the third resource corresponding to the second priority.
- the third time interval 2416 may include the second and third sub-events for the second CIS link 508.
- the description of the operation of the electronic device 101 in the time interval 2408 may be similar to that in the time interval 2406.
- the electronic device uses a second resource (e.g., a second time period) that may be set to a certain ratio or a certain length among the first resources (e.g., the first time section 2406) available for CIS communication. Except for (2410)), a Bluetooth concurrency operation or a Wi-Fi coexistence operation can be performed using a third resource for the second priority (e.g., the third time interval 2412).
- Bluetooth concurrency operations may include at least one of Bluetooth inquiry, Bluetooth inquiry scan, Bluetooth paging, Bluetooth page scan, BLE scan, BLE advertising, Bluetooth keep-alive, BLE keep-alive, or channel scan.
- Wi-Fi coexistence operation may include Wi-Fi data transmission in the same frequency band as CIS communication.
- ISO interval 2402 may include time interval 2418 excluding time interval 2404. If the remaining time interval 2418 is not 0, it may be used for at least one of Bluetooth concurrency operation or Wi-Fi coexistence operation. In one embodiment, because the Bluetooth concurrency operation or the Wi-Fi coexistence operation may be performed in the third time interval (e.g., the time interval 2412 and the time interval 2416) rather than the remaining time interval 2418, the electronic Device 101 (e.g., processor 120) may allocate maximum time intervals 2404 within ISO interval 2402, thereby minimizing remaining time intervals 2418.
- the electronic Device 101 e.g., processor 120
- the electronic device 101 may determine the time section (for example, time sections 2410 and 2414) corresponding to the first resource to be as large as possible in order to process other tasks scheduled during CIS communication.
- ⁇ Table 1> shows an example of the maximum resources required for CIS communication in bidirectional mode (eg, including one or more CIS links).
- the mode may refer to CIS communication using a transmission rate of 116kbps, 96kbps, 64kbps, or 32kbps and a reception rate of 96kbps, 64kbps, or 32kbps.
- the SE length is based on the packet transmission period (Tx packet duration) corresponding to the transmission speed, the packet reception period (Rx packet duration) corresponding to the reception speed, and the reserved duration (e.g., 300 ⁇ s). can be calculated.
- the packet transmission interval may be 640 ⁇ s, for a transmission rate of 96 kbps, the packet transmission interval may be 540 ⁇ s, and for a transmission rate of 64 kbps, the packet transmission interval may be 380 ⁇ s, , for a transmission speed of 32kbps, the packet transmission interval may be 220 ⁇ s.
- the packet reception interval may be 540 ⁇ s, for a reception speed of 64 kbps, the packet reception interval may be 380 ⁇ s, and for a reception speed of 32 kbps, the packet reception interval may be 220 ⁇ s. .
- Figure 25 is a diagram illustrating an example of maximum resource allocation according to an embodiment.
- Each sub-event may include one transmission and one reception, and may have a length of, for example, 740 ⁇ s.
- the electronic device 101 determines the second time interval 2510 corresponding to the first sub-event in the time interval 2506 as the second resource corresponding to the first priority, and the third time interval corresponding to the remaining sub-events.
- the section 2512 may be determined as a third resource corresponding to the second priority.
- the electronic device 101 determines that sub-events in the third time interval 2512 can be used for retransmission (RT) of data. can do.
- the electronic device 101 before starting the audio service or while providing the audio service, the electronic device 101 provides CIS communication according to priorities for each task among the time interval 2504 determined as the maximum resource for CIS communication.
- a time section that can be essentially used (for example, the second time section 2510) can be determined.
- the second time interval 2510 may be determined according to a specified length or time ratio for the time interval 2506.
- a description of the operation of the electronic device 101 for the time interval 2508 may be similar to that for the time interval 2506.
- priorities for each task may include a first priority and a second priority for CIS communication, and the first priority may have a higher priority value than the second priority.
- the priorities eg, first priority and second priority
- the priorities may change depending on the wireless environment or the scheduling situation of the electronic device 101.
- Figure 26 is a diagram illustrating an example of resource division for CIS communication according to an embodiment.
- the electronic device 101 may allocate a time interval 2604 corresponding to the maximum resource for CIS communication as 88.8% of the ISO interval 2602.
- time interval 2606 and time interval 2608 may each include six sub-events.
- the second time interval 2612 and the third time interval 2616 guaranteed for CIS communication may each include three sub-events.
- the second time interval 2612 may include the first three sub-events of the time interval 2606
- the third time interval 2616 may include the first three sub-events of the time interval 2608.
- the electronic device 101 may fail to transmit data using the first sub-event of the second time interval 2612, and transmit the data in the second and third sub-events of the second time interval 2612.
- Retransmission (RT) can be performed. If transmission of the data fails during the second time interval 2612 and there are no other tasks with higher priority, at least one sub-event in the third time interval 2614 may be used to retransmit the data. On the other hand, if there is another task with a higher priority than the second priority corresponding to the third time interval 2614, the electronic device 101 does not perform retransmission of the data in the third time interval 2614. And you can perform the other tasks mentioned above.
- Figure 27 is a diagram illustrating another example of resource division for CIS communication according to an embodiment.
- the electronic device 101 may allocate a time interval 2704 corresponding to the maximum resource for CIS communication as 88.8% of the ISO interval 2702.
- each of time intervals 2706 and 2708 may include six sub-events with a length of 740 ⁇ s.
- the time interval 2712 used to ensure CIS communication of the first channel includes the last three sub-events (e.g., sub-events #3, 4, and 5) within the time interval 2706.
- the time interval 2714 used to ensure CIS communication of the second channel may include the first three sub-events (eg, sub-events #0, 1, and 2) within the time interval 2708.
- the electronic device 101 uses the consecutive time intervals 2712 and 2714 to display audio data of the first channel (e.g., left audio data) and audio data of the second channel (e.g., right audio). data) can be transmitted.
- a time interval 2710 corresponding to the remaining sub-events at the front of the time interval 2706 e.g., sub-events #0, 1, 2) and the remaining sub-events at the back of the time interval 2708 (e.g., the time interval 2718 corresponding to sub-events #3, 4, and 5) can be used for CIS communication or other tasks (for example, Bluetooth concurrency operation or Wi-Fi coexistence operation) depending on priorities for each task. there is.
- the electronic device 101 may fail to transmit data using the first sub-event (for example, sub-event #3) of the time interval 2712, and the second and third sub-events of the time interval 2712 (e.g., sub-event #3). For example, retransmission (RT) of the data can be performed in subevents #4 and 5). If transmission of the data fails during time interval 2712, the first three subevents of the next ISO interval (not shown) (e.g. subevents #0, 1, 2) can be used for retransmission of the data. On the other hand, if there is another task with higher priority in the first three sub-events of the next ISO interval, the electronic device 101 does not retransmit the data and can perform the other task.
- the first sub-event for example, sub-event #3
- the second and third sub-events of the time interval 2712 e.g., sub-event #3
- RT retransmission
- the electronic device 101 fails to transmit the data during the time interval 2714, if there is no other task with a higher priority, the electronic device 101 uses at least one sub-event of the time interval 2718 to retransmit the data. You can use it. On the other hand, if there is another task with a higher priority than the second priority corresponding to the time interval 2718, the electronic device 101 does not perform retransmission of the data in the time interval 2718, and the other task work can be performed.
- Figure 28 is a diagram illustrating an example of resource division according to time ratio according to an embodiment.
- the electronic device 101 may allocate a time interval 2804 corresponding to the maximum resource for CIS communication as 88.8% of the ISO interval 2802.
- each of time interval 2806 and light time interval 2808 may include six sub-events with a length of 740 ⁇ s.
- the time interval 2810 used to ensure CIS communication of the first channel includes the first two sub-events (e.g., sub-events #0, 1) within the time interval 2806, and the last one It may include a sub-event (e.g. sub-event #5), and the time interval 2818 used to ensure CIS communication of the second channel is the first sub-event (e.g. sub-event #5) within the time interval 2808. #0), and the fourth and fifth sub-events (for example, sub-events #3, 4).
- the electronic device 101 transmits audio data (e.g., left audio data) of the first channel using sub-events (e.g., sub-events #0, 1, and 5) of the time interval 2806, and Audio data (eg, light audio data) of the second channel may be transmitted using sub-events (eg, sub-events #0, 3, and 4) of the section 2088.
- sub-events e.g., sub-events #0, 1, and 5
- Audio data eg, light audio data
- the time interval 2812 corresponding to the remaining sub-events e.g., sub-events #2, 3, and 4 of the time interval 2806 and the remaining sub-events of the light time interval 2808 (e.g., the time interval 2816 corresponding to sub-events #1, 2, and 5) can be used for CIS communication or other tasks (e.g., Bluetooth concurrency operation or Wi-Fi coexistence operation) depending on priorities for each task. .
- the electronic device 101 may generate a priority table defining the priority for each task of communication, including CIS communication, and store the priority table in a memory (e.g., memory 130). there is.
- the priority table may include task-specific priorities for a plurality of tasks, and each priority can be expressed as a decimal value or a hex value so that it can be compared with the priorities of other tasks.
- the electronic device 101 may assign a higher priority to a task that is more important to the user, and may change at least one of the priorities for each task depending on at least one of the passage of time, communication status, or scheduling situation.
- CIS tasks for CIS communication are executed periodically and have a higher priority compared to other Bluetooth tasks (e.g. Bluetooth concurrency operations) because they are for audio services targeting real-time data transmission considering maximum latency.
- Bluetooth tasks e.g. Bluetooth concurrency operations
- the electronic device 101 may assign different priorities to the CIS task, for example, a first priority and a second priority.
- the CIS task of the first priority (high priority) performs CIS transmission using at least one of the sub-events included in the time interval (e.g., the second time interval 1710 in FIG. 17) that guarantees CIS communication. It can be included.
- the CIS task of the second priority (low priority) may include CIS transmission using at least one of the sub-events included in the remaining time interval (e.g., the third time interval 1712 in FIG. 17). .
- ⁇ Table 2> shows an example of a priority table defining priorities for BT concurrent tasks.
- CIS communication can be divided into a first CIS task with a high priority (for example, 15) and a second CIS task with a low priority (for example, 7).
- the first CIS task may include CIS transmission using at least one of the first N1 subevents (e.g., subevents #0, 1) within one CIS event containing N subevents. there is.
- the second CIS task may include a CIS transmission using at least one of the last N2 sub-events within one CIS event.
- the electronic device 101 performs another task (e.g., page scan) that has a higher priority than the priority value (e.g., 7) of the second CIS task in the third time interval. or inquiry scan), the CIS data packets are not transmitted in the sub-events of the third time interval, and the other tasks can be performed during the third time interval.
- the electronic device 101 detects that another task (e.g., inquiry) with a lower priority than the priority value (e.g., 7) of the second CIS task is scheduled in the third time interval.
- CIS data packets may be transmitted in sub-events of the third time interval, and the inquiry operation may be postponed or omitted.
- the electronic device 101 also needs to perform another task (eg, ACL backoff) with a higher priority than the priority value (eg, 15) of the first CIS task in the second time interval.
- ACL backoff another task
- CIS data packets are not transmitted in sub-events of the second time interval, and the other tasks can be performed during the second time interval.
- the electronic device 101 detects that another task (e.g., a page or page scan) with a lower priority than the priority value (e.g., 15) of the first CIS task is scheduled in the second time interval.
- CIS data packets may be transmitted in sub-events of the second time interval, and the page or page scan may be postponed or omitted.
- CIS events for CIS communication may at least partially overlap with each other.
- overlapping at least a portion of the first CIS event and at least a portion of the second CIS event may be due to the characteristics of a sequential arrangement (e.g., the sequential arrangement of FIG. 13) and an interleaved arrangement (e.g., the interleaved arrangement of FIG. 14).
- a hybrid arrangement or hybrid packing In terms of having all of the characteristics, it can be called a hybrid arrangement or hybrid packing.
- the electronic device 101 may set (eg, schedule) CIS events according to a hybrid arrangement based on satisfying specified conditions.
- Figure 29 is a diagram illustrating an example of resource division applied to a hybrid deployment according to an embodiment.
- CIG event x may include CIS1 event x and CIS2 event x, and CIS1 event x and CIS2 event x may each include, for example, 10 sub-events.
- CIS2 event x may partially overlap with part of CIS1 event x.
- the length (eg, number of sub-events) of the overlapping section 2902 of CIS1 event x and CIS2 event x may be determined according to various conditions.
- the overlapping section 2902 of CIS1 event x and CIS2 event x may include eight sub-events as an example, and may be set as a second time section corresponding to the first priority that can ensure CIS communication. there is.
- time intervals 2904 that are not included in CIS1 event x or CIS2 event x are not reserved for CIS communication and may be used for other tasks (e.g., Bluetooth concurrency operation or Wi-Fi coexistence operation). .
- FIG. 30 is a diagram illustrating another example of resource division applied to a hybrid deployment according to an embodiment.
- CIG event x may include CIS1 event x and CIS2 event x, and CIS1 event x and CIS2 event x may each include, for example, 18 sub-events.
- CIS2 event x may overlap at least partially with CIS1 event x.
- the time interval 3002 comprising at least some of the first sub-events (e.g., the first 10) of the overlapping sub-events (e.g., 16) of CIS1 event x and CIS2 event x is It may be set as a second time interval corresponding to the first priority that can guarantee CIS communication.
- the time section 3004 including the last two parts) may be set as a third time section corresponding to a second priority lower than the first priority.
- the time interval 3004 is used for a second CIS task having a second priority, or for another task having a higher priority value than the second priority (e.g., Bluetooth concurrency operation or Wi-Fi coexistence operation).
- time interval 3002 and time interval 3004 may partially overlap (e.g., in two sub-events).
- the two overlapping sub-events may be used for the first CIS task, the second CIS task, or other tasks depending on the scheduling of the electronic device 101 (eg, the processor 120).
- sub-events of CIS1 event x that do not overlap with CIS2 event x can be set as the second priority.
- sub-events of CIS1 event x that do not overlap with CIS2 event x e.g., the first two
- sub-events of CIS2 event x that do not overlap with CIS1 event x e.g., the last two
- all overlapping sub-events of CIS1 event x and CIS2 event x are set to the second time interval corresponding to the first priority, and non-overlapping sub-events (e.g., the first 2 of CIS1 event x) sub-events and the latter two sub-events of CIS2 event x) may be set to the third time interval corresponding to the second priority.
- the second time interval includes at least some of the overlapping sub-events and at least some of the non-overlapping sub-events of the CIS1 event x and CIS2 event x, and the third time interval is not set as the second interval. You can respond to the remaining sub-events that are not included.
- various embodiments may be possible.
- FIG. 31 is a diagram for explaining an operation of providing an audio service through CIS links according to an embodiment.
- the electronic device 101 connects an external electronic device (e.g., the first external electronic device 202) and an ACL link (e.g., the first ACL link 502), and connects the ACL link to CIS by exchanging CIS_REQ packets 3102 (e.g., CIS_REQ in operation 710), CIS_RSP packets 3104 (e.g., CIS_RSP in operation 712), and CIS_IND packets 3106 (e.g., CIS_IND in operation 714).
- a link (e.g., first CIS link 506) may be established.
- the processor 120 of the electronic device 101 may include a CIS module 3112 and a host 3114.
- Electronic device 101 e.g., CIS module 3112
- CIS null packets 3110 e.g., CIS null PDUs of operations 716, 718, 720
- HCI human computer interface
- the electronic device 101 may allocate 47.2% of resources to the first CIS link 506 and open the first CIS link 506 using CIS parameters.
- Table 3 below shows an example of CIS parameters set by the electronic device 101 and transmitted to the second external electronic device 202 through the CIS_REQ packet 3102.
- Figure 32 is a diagram for explaining an operation of opening a CIS link according to an embodiment.
- the processor 120 of the electronic device 101 may include a CIS module 3204 (e.g., CIS module 3112) and a host 3202 (e.g., host 3114). there is.
- the electronic device 101 e.g., host 3202
- the electronic device 101 confirms that the first CIS link 506 is established by receiving the event message 3108 of FIG. 31 from the CIS module 3204, and 2 service data units (SDUs) 3212 (e.g. SDU25) and SDU26 (3216) containing audio data for transmission over CIS link 508, for example, per ISO interval CIS module ( 3204).
- SDUs 2 service data units
- the electronic device 101 (e.g., CIS module 3204) transmits CIS data packets 3214 corresponding to the previous SDU (e.g., SDU24) (not shown) in the current ISO interval, and An ACK response corresponding to 3214 may be received.
- the electronic device 101 (e.g., the CIS module 3204) transmits CIS data packets 3218 corresponding to SDU25 3212 in the subsequent ISO interval and ACK responses corresponding to the CIS data packets 3218.
- the electronic device 101 (e.g., CIS module 3204) may transmit CIS data packets corresponding to SDU26 3216 in the next ISO interval. Subsequent SDUs may be transmitted in the same manner. You can.
- FIG. 33 is a diagram illustrating an operation of operating CIS communication in consideration of a wireless environment or scheduling situation according to an embodiment.
- the electronic device 101 may retransmit CIS data packets containing the same audio data until the audio data reaches the flush point indicated by the FT parameter. If there are no other scheduled tasks and an ACK response to the audio data is not received from an external electronic device (e.g., the first external electronic device 202 or the second external electronic device 204) due to a wireless environment, the electronic Device 101 may continuously retransmit CIS data packets containing the same audio data using a plurality of sub-events.
- an external electronic device e.g., the first external electronic device 202 or the second external electronic device 204
- the electronic device 101 may allocate a time interval 3304 containing six sub-events for the first CIS link 506 with the first external electronic device 202 within the ISO interval 3302. You can. Time interval 3304 may correspond to a first priority having a high priority value.
- the first external electronic device 202 may not be able to properly receive CIS data packets from the electronic device 101 due to a poor wireless environment of the first CIS link 506. If no other task with a higher priority (e.g., ACL backoff task in Table 2) occurs during the time interval 3304 of the first CIS link 506, the first CIS link All six transmission opportunities (i.e., six sub-events) of 506 may be used for transmission of a CIS data packet (e.g., initial transmission and retransmission (RT)).
- a CIS data packet e.g., initial transmission and retransmission (RT)
- the electronic device 101 may receive an ACK response from the second external electronic device 204 immediately after transmitting the CIS data packet in the first sub-event 3306 of the second CIS link 508.
- the electronic device 101 configures the time interval 3308 corresponding to the remaining sub-events (and remaining intervals) of the second CIS link 508 using the same frequency band (e.g., 2.4 GHz). It can be used for other tasks (e.g. Bluetooth concurrency operation or Wi-Fi coexistence operation).
- Figure 34 is a diagram for explaining an operation of performing a CIS task with high priority according to an embodiment.
- the first time interval 3406 corresponding to one CIS event for CIS communication (e.g., the first CIS link 506) within the ISO interval 3402 may be divided into, for example, six sub
- a second time interval 3404 may include events, and within the first time interval 3406, a second time interval 3404 is set to correspond to a priority value of 7 and includes three sub-events, and a third time interval is set to correspond to a priority value of 7.
- Interval 3408 may include three sub-events.
- the electronic device 101 may transmit and retransmit CIS data packets using the first and second sub-events among the sub-events of the second time interval 3404.
- the electronic device 101 confirms that a BLE connection interval (CI) task with a priority value of 13 is scheduled in the second sub-event of the second time interval 3404, but the priority value 13 is scheduled in the second sub-event of the second time interval 3404. Since the priority value is less than 15, the BLE CI task can be ignored during the second time interval 3404. If an ACK response is received from the first external electronic device 202 after retransmission (RT) using the second sub-event, the third sub-event of the second time interval 3404 may not be used for CIS transmission. .
- CI BLE connection interval
- the electronic device 101 may reschedule the BLE CI task to the next time period, for example, the third time period 3408. Because the priority value 13 is greater than the priority value 7 of the third time interval 3408, the electronic device 101 may determine not to perform the CIS task during the second time interval 3404. The second time interval 3404 may be used by the electronic device 101 to perform the BLE CI task.
- the electronic device 101 may perform CIS tasks using sub-events for another CIS event after the first time interval 3406 corresponding to one CIS event.
- a description of the operation of the electronic device 101 for another CIS event may be similar to that in the first time interval 3406.
- FIG. 35 is a diagram illustrating an operation of performing a high-priority BLE task according to an embodiment.
- the first time interval 3506 corresponding to one CIS event for CIS communication includes, for example, six sub
- a second time interval 3504 may include events, and within the first time interval 3506, a second time interval 3504 is set to correspond to a priority value of 7 and includes three sub-events, and a third time interval is set to correspond to a priority value of 7.
- Interval 3508 may include three sub-events.
- the electronic device 101 may transmit and retransmit a CIS data packet using three sub-events in the second time interval 3504.
- An ACK response corresponding to the CIS data packet was not received from the first external electronic device 202 during the second time interval 3504, and there is no other task scheduled for the first sub-event of the third time interval 3508. If not, the electronic device 101 may retransmit the CIS data packet in the first sub-event of the third time interval 3508.
- the electronic device 101 may confirm that a BLE CI task with a priority value of 13 is scheduled in the second sub-event of the third time interval 3508. Since the BLE CI task has a priority value of 13 that is greater than the priority value of 7 in the third time interval 3508, the electronic device 101 performs the third time interval (3508) even if it does not receive an ACK response to the CIS data packet. In the second sub-event of 3508), it may be decided to stop retransmission of the CIS data packet. The remaining time interval of the third time interval 3508 can be used to perform the BLE CI task.
- the electronic device 101 may perform CIS tasks using sub-events for another CIS event after the first time interval 3506 corresponding to one CIS event.
- a description of the operation of the electronic device 101 for another CIS event may be similar to that in the first time interval 3506.
- Figure 36 is a diagram for explaining an operation of changing priority for CIS communication according to an embodiment.
- a first time interval 3606 corresponding to one CIS event for CIS communication (e.g., first CIS link 506) within ISO interval 3602 may be divided into, e.g., six sub-intervals 3606. Can include events.
- the electronic device 101 may decide to change the priority in an arbitrary sub-event. In one embodiment, when a short and repetitive task (for example, a BLE CI backoff operation) is newly required, the electronic device 101 performs the task quickly while ensuring the CIS task as much as possible by performing a sub-event or a designated number of tasks at each sub-event. You can set priorities for each sub-event.
- the electronic device 101 within the first time interval 3606, the electronic device 101 first You can change the rank value to 16.
- the electronic device 101 may change the priority value to '7' for the time interval 3608a corresponding to the third and fourth sub-events and the time interval 3608b corresponding to the sixth sub-event.
- the BLE CI backoff operation may have a priority value of '16', and the electronic device 101 may quickly perform the BLE CI backoff operation in the time interval 3608a or the time interval 3608b. .
- the electronic device 101 may perform CIS tasks using sub-events for another CIS event after the first time interval 3606 corresponding to one CIS event.
- a description of the operation of the electronic device 101 for another CIS event may be similar to that in the first time interval 3606.
- the electronic device 101 when the electronic device 101 and an external electronic device (for example, the first external electronic device 202 or the second external electronic device 204) can support a function having the same purpose, the electronic device 101 ) is a second time interval corresponding to the first priority (e.g., the second time interval 1706) and a third time interval (e.g., the third time interval 1708) corresponding to the second priority.
- the indicated CIS operation information may be provided to an external electronic device (for example, the first external electronic device 202 or the second external electronic device 204).
- an external electronic device may perform CIS communication according to CIS operation information received from the electronic device 101. .
- the external electronic device e.g., the first external electronic device 202 or the second external electronic device 204
- the external electronic device e.g., the first external electronic device 204
- the device 202 or the second external electronic device 204) is set to a second priority according to the CIS operation information transmitted by the electronic device 101. )) may be intentionally ignored and not listened to.
- BIS may refer to logical transmission used to transmit one or more isochronous data streams to all devices for BIS within a specified range.
- BIS may include one or more subevents for transmitting isochronous data packets (eg, BIS data packets).
- BIS can support the transmission of multiple new isochronous data packets in every BIS event.
- BIS does not include an acknowledgment protocol and may be transmitted unidirectionally from a device broadcasting traffic (eg, a source electronic device).
- a device broadcasting traffic eg, a source electronic device.
- transmission reliability can be improved by transmitting the isochronous data packets at an interval preceding the interval associated with the isochronous data packets. This is called pre-transmission.
- BIS can be identified by unique access address and timing information. The access address and timing information may be transmitted via packets transmitted using a corresponding periodic advertising broadcast logical transmission.
- a scanning device e.g. a sink electronic device
- a synchronized receiver role e.g. a sink role
- isochronous data e.g, isochronous data packets
- Each BIS may be part of a broadcast isochronous group (BIG).
- a BIG may contain two or more BISs with the same isochronous interval (e.g. ISO_Interval). BISs within the BIG have a common timing reference based on the source electronics and can be temporally synchronized with each other. The maximum number of BISs in the BIG may have a specified value (e.g. 31). BIG may also contain control subevents.
- Figure 37 shows a signal flow diagram for explaining a procedure for synchronizing to a broadcast isochronous group (BIG) according to an embodiment.
- BIG broadcast isochronous group
- the source electronic device 400 may generate a BIG including one or more BISs and start periodic advertising related to the BIG.
- the sync electronic device 3705 eg, the first external electronic device 202 or the second external electronic device 204 may start a BLE scan for reception synchronization.
- the sink electronic device 3705 may not perform a BLE scan, and receives BIS parameters of the source electronic device 3700 from an external electronic device (not shown) that acts as a BIS assistant that performs a BLE scan.
- Required scan results e.g. synchronization information
- the source electronic device 3700 may periodically transmit an advertising packet (eg, AUX_SYNC_IND) related to the BIG at specified intervals.
- the AUX_SYNC_IND may include BIS parameters (e.g., BIG information 3800) within, for example, an additional controller advertising data (ACAD) field.
- the BIG information may include parameters used to synchronize to the BIG (eg, at least one BIS link) provided by the source electronic device 3700.
- the sink electronic device 3705 receives the BIG information directly from the source electronic device 3700, or receives the BIG information from the source electronic device 3700 based on the assistance of an external electronic device (not shown).
- the BIG information may be received from 3700 or from an external electronic device (not shown).
- the sync electronic device 3705 may not perform a BLE scan, but instead may receive a scan result (e.g., synchronization information) from an external electronic device (not shown), and may receive the scan result (e.g., synchronization information) from an external electronic device (not shown).
- BIS parameters e.g, BIG information 3800
- the sync electronic device 3705 receives the advertisement from the source electronic device 3700 based on a scan result (e.g., synchronization information) received from an external electronic device (not shown) that performs a BLE scan.
- a Zing packet can be received and BIG information (for example, BIG information 3800) can be obtained from the advertising packet.
- the sync electronic device 3705 may determine to start receiving BIS based on the BIG information.
- the sync electronic device 3705 may synchronize to the BIG of the source electronic device 3700 using parameters included in the BIG information.
- the BIG synchronization operation performed by the sync electronic device 3705 may include calculating the access address and timing information at which audio data is transmitted based on the BIG information.
- the timing information may include channel information (eg, channel map) and transmission times of audio data.
- the sync electronic device 3705 may receive audio data (eg, at least one BIS data packet) broadcast by the source electronic device 3700 through at least one BIS in the BIG.
- audio data eg, at least one BIS data packet
- Figure 38 is a diagram for explaining the format of BIG information according to an embodiment.
- BIG information 3800 includes BIG_Offset, BIG_Offset_units, ISO_Interval, Num_BIS, number of subevent (NSE), burst number (BN), Sub_Interval, pre-transmission offset (PTO), BIS_Spacing, and immediate repetition count (IRC).
- the length of the BIG information 500 may be 33 octets when unencrypted and 57 octets when encrypted.
- Num_BIS represents the number of BISs in BIG. Each BIS in the BIG can be assigned a different BIS_Number from 1 to Num_BIS.
- ISO_Interval can represent the time in units of 1.25ms between two adjacent BIG anchor points. (e.g. 5ms to 4s)
- BIS_Spacing may indicate the time between the start time of sub-events in adjacent BISs in the BIG and the start time of the first sub-event of the last BIS.
- Sub_Interval may represent the time between the start points of two consecutive sub-events of each BIS.
- Max_PDU is the maximum number of data octets that can be transmitted for each BIS data packet within BIG and may indicate the maximum duration of the packet. (e.g. 1 to 251 octets)
- Max_SDU may indicate the maximum size (e.g., maximum duration) of a service data unit (SDU) in the BIG. (e.g. 1 to 4095 octets)
- BN, PTO, and IRC may contain values to control what data is transmitted in each BIG event.
- Sub-events of each BIS event may be divided into groups (eg, sub-event groups) containing BN sub-events. Therefore, the number of groups (e.g. GC (group count)) is NSE / BN.
- the IRC may specify the number of groups carrying data related to the current BIS event. The remaining groups may carry data related to future BIS events specified by the PTO.
- a future BIS event e.g., PTO ⁇ (g - IRC + 1)th BIS event
- NSE represents the maximum number of sub-events within each BIG event.
- the Framing field may indicate whether the BIG delivers framed data or unframed data.
- BIG_Offset may indicate the time from the start of a packet containing BIG information 3800 (for example, AUX_SYNC_IND 3716) to the next BIG anchor point.
- the value of BIG_Offset can be indicated in the units indicated by the bits of BIG_Offset_Units.
- the time offset is determined by multiplying the value of BIG_Offset by the unit indicated by BIG_Offset_Units.
- the time offset may be greater than 600 micro seconds ( ⁇ s). If the bit in BIG_Offset_Units is set, the unit is 300 ⁇ s, otherwise it is 30 ⁇ s.
- the bit of BIG_Offset_Units may not be set if the time offset is less than 491,460 ⁇ s.
- the BIG anchor point may be between the time offset and the time offset plus 1 unit after the start point of the packet (e.g., AUX_SYNC_IND), as shown below.
- Figure 39 is a diagram for explaining a BIG event for a periodic advertising event according to an embodiment.
- each BIS in the BIG provided by the source electronic device 3700 may be configured with a schedule of time slots known as events and sub-events.
- the source electronic device 3700 may transmit BIS data packets in sub-events (e.g., BIS1 sub-event and BIS2 sub-event) within a BIG event (e.g., BIG event x 3905).
- the source electronic device 3700 may transmit an advertising packet 3910 (e.g., AUX_SYNC_IND with BIGInfo) containing BIG information (e.g., BIG information 3800) at a designated point in time.
- the source electronic device 3705 may determine the start time of the BIG anchor point 3915 after the start time of AUX_SYNC_IND based on BIG_Offset and BIG_Offset_Units included in the BIG information 3800.
- the next BIG event (e.g. BIG event x+1 (3920)) can start from the BIG anchor point 3915, and each BIS sub-event (e.g. BIS1 sub-event or BIS2 sub-event) is defined by BIS_Spacing It can have a duration that is
- SeedAccessAddress may indicate a seed access address for BIG.
- SDU_Interval may indicate the time interval of the SDU.
- BaseCRCInit may contain CRC (cyclic redundancy check) initial values for BIS data packets.
- ChM may include a channel map indicating used data channels and unused data channels.
- PHY may indicate the physical channel transmission method (e.g., symbol per second and/or coding method) used in BIG.
- bisPayloadCount may include a count value to detect missing payload.
- bisPayloadCount may contain a value for the first subevent of the BIG event based on BIG_Offset.
- GIV and GSKD may contain values that describe the encryption, if BIG is encrypted.
- the parameters included in the BIG information 500 may not change during the lifetime of the BIG.
- Figure 40 is a diagram for explaining a BIG event and a BIS event according to an embodiment.
- a BIG event (eg, BIG event x (4005)) may be composed of one or more BIS data packets (eg, PDUs).
- the source electronic device 3700 e.g., electronic device 101
- Each BIG event (e.g. BIG event x (4005)) can be divided into Num_BIS BIS events and, if present, one control sub-event.
- Each BIS event can be divided into NSE sub-events.
- Each BIS event may start from a BIS anchor point and end after the last sub-event.
- Each BIG event (e.g. BIG event .
- BIG anchor points may be spaced regularly at intervals of ISO_Interval (4010).
- BIS anchor points for BIS n of the BIG may be (n - 1) ⁇ BIS_Spacing after the BIG anchor points, and may be regularly spaced apart by ISO_Interval (4010).
- Sub-events of each BIS can be spaced apart by Sub_Interval.
- the source electronic device 3700 may end the current BIG event (e.g., BIG event x 4005) at least T_IFS (e.g., 150 ⁇ s) before the BIG anchor point of the next BIG event.
- T_MSS The interval between consecutive sub-events within BIS.
- BISs in BIG can be arranged sequentially or interleaved depending on Sub_Interval and BIS_Spacing.
- BIS_Spacing is greater than or equal to NSE ⁇ Sub_Interval, and all sub-events of a BIS event can occur together.
- Sub_Interval is Num_BIS ⁇ BIS_Spacing, the first sub-events of all BISs are adjacent, and the second sub-events of all subsequent BISs may be adjacent.
- the maximum possible length for the data portion of a BIG event may be denoted as BIG_Sync_Delay.
- the value of BIG_Sync_Delay may be equal to the time from the BIS anchor point to the BIG synchronization point, which is the end of the packet containing the payload of the Max_PDU octet transmitted in the last sub-event.
- BIG_Sync_Delay (Num_BIS - 1) ⁇ BIS_Spacing + (NSE - 1) ⁇ Sub_Interval + MPT)
- a BIS sub-event occurs when the source electronic device 3700 transmits BIS data packets and an electronic device 3705 operating as a sink (e.g., the first external electronic device 202 and/or the second external electronic device 204 )) is the opportunity to receive the BIS data packets.
- the source electronic device 3700 may transmit one BIS data packet at the start of each BIS sub-event of a BIS event and, for example, may transmit at least one BIS packet within six consecutive BIS events. .
- the source electronic device 3700 may provide a data burst consisting of BN payloads.
- Each payload may contain a single fragment or one or more SDU segments.
- One data burst is associated with a designated BIS event, but may be transmitted in earlier events.
- the sync electronic device 3705 may not perform a reception operation for receiving BIS audio in sections other than the time section in which the source electronic device 3700 decides to transmit BIS audio (e.g., time section 4104). .
- BIS audio communication may not be possible in sections other than the time section (for example, time section 4104) in which the source electronic device 3700 promised to transmit BIS audio.
- the source electronic device 3700 transmits BIS audio using only limited resources (for example, the time interval 4104), the BIS audio data reception rate of the sink electronic device 3705 may be reduced.
- the source electronic device 3700 may repeatedly transmit BIS audio data so that the sink electronic device 3705 can successfully receive BIS audio.
- Figure 41 is a diagram for explaining resource allocation for BIS communication according to an embodiment.
- Each sub-event group may include two sub-events, one sub-event being a BIS data packet in the right channel (e.g., R0 4108) and one sub-event in the left channel. Can be used to carry BIS data packets (e.g. L0 (4110)).
- one sub-event in a BIS link may consist of unidirectional transmission data (e.g., R0 and/or L0) and at least T_MSS (e.g., 150 ⁇ s).
- the same BIS audio data (e.g., R0 4108 and L0 4110) may be transmitted repeatedly a specified number of times (e.g., 10 times) within the ISO interval 4102.
- the electronic device 101 determines parameters of the BIS service, such as the timing and transmission order of BIS audio transmission, and converts the parameters into BIS parameters included in periodic advertising (e.g., BIG information 3800). ) can be transmitted to one or more sync electronic devices located nearby (for example, the first external electronic device 202 and/or the second external electronic device 204).
- the electronic device 101 may determine (for example, schedule) to perform another communication task while performing BIS audio transmission.
- the communication task may include at least one of Bluetooth concurrency operations such as page scan, channel scan, or BLE scan, or Wi-Fi CoEX.
- the communication task may be scheduled to operate in the same time period as BIS audio transmission.
- the electronic device 101 uses resources available for BIS audio transmission to ensure communication tasks other than BIS audio transmission (e.g., Wi-Fi CoEX and/or Bluetooth concurrency operation) during BIS audio transmission. It can be limited.
- the electronic device 101 when the electronic device 101 is configured to support both Bluetooth communication and Wi-Fi communication, such as a mobile phone, the electronic device 101 selects a first resource available for BIS audio transmission. Can be set to a time interval (e.g., time interval 4104) corresponding to approximately 50% (e.g., 58.65%) of the ISO interval (e.g., ISO interval 4102).
- the electronic device 101 configures BIG information (e.g., BIG information) to transmit BIS audio using a designated resource (e.g., time interval 4104) in a limited time interval (e.g., ISO interval 4102).
- a designated resource e.g., time interval 4104
- a limited time interval e.g., ISO interval 4102
- the parameters can be set so that BIS audio transmission occupies maximum RF resources (e.g., time interval 4104).
- the electronic device 101 may transmit BIS audio based on the BIG parameters.
- the electronic device 101 transmits BIS audio to ensure the quality of BIS audio while enabling performance of tasks other than BIS audio transmission (e.g., Wi-Fi CoEX and/or Bluetooth concurrency operation).
- the time section (e.g., time section 4104) for can be divided into at least two time sections (e.g., time section 4204 and time section 4206) for different priorities.
- the device 101 may compare the priority of each time interval with the priorities of scheduled tasks and process tasks with higher priority first.
- Figure 42 is a diagram for explaining resource division for BIS communication according to an embodiment.
- the first time interval 4202 for BIS audio transmission may include a total of 8 sub-event groups and may be configured to occupy 92.29% of the ISO interval.
- the electronic device 101 divides the first time interval 4202, which includes a total of 8 sub-event groups, into a second time interval 4204, which includes 5 sub-event groups (for example, the sub-event group 4204a). And, it can be divided into a third time section 4206 including three sub-event groups (eg, sub-event group 4206a).
- the second time interval 4204 may correspond to a first priority having a relatively high value
- the third time interval 4206 may correspond to a second priority having a relatively low value
- the third time interval 4206 may include at least one sub-event group carrying data related to future BIS events specified by the PTO.
- the first priority given to the second time interval 4204 may be, for example, higher than the priority of Wi-Fi CoEX and/or Bluetooth concurrency operation.
- the second priority given to the third time interval 4206 may be, for example, lower than the priority of Wi-Fi CoEX and/or Bluetooth concurrency operation.
- Figure 43 is a diagram for explaining an operation of performing a higher priority communication task according to an embodiment.
- the first time interval 4302 for BIS audio transmission may include a total of 8 sub-event groups and may occupy 92.29% of the ISO interval. there is.
- the electronic device 101 divides the first time interval 4302, which includes a total of eight sub-event groups, into a second time interval 4304 corresponding to five sub-event groups (for example, the sub-event group 4304a). And, it can be divided into a third time section 4306 corresponding to three sub-event groups.
- a task other than a BIS audio transmission e.g., a BIS task
- a BIS task e.g., Wi-Fi CoEX or Bluetooth concurrency operation
- a task having a can be performed preferentially.
- a Wi-Fi CoEX e.g., a Wi-Fi CoEX
- the electronic device 101 compares the priority of the Wi-Fi data transmission 4308 with the second priority, and Wi-Fi data transmission 4308 has a higher priority.
- -Fi data transmission 4308 can be performed in the third time interval 4306.
- BIS operations scheduled to be performed in the third time interval 4306 e.g., retransmission of R0 and L1, or transmission of future BIS audio (e.g., R2 and L2, R3 and L3)
- BIS event k+1 e.g., it can be postponed to BIS event k+1.
- the electronic device 101 determines that Wi-Fi CoEX is scheduled by identifying that Wi-Fi data for Wi-Fi CoEX is stored in the task queue before the third time interval 4306. You can.
- the electronic device and its operating method according to embodiments of the present disclosure optimize resource use of the source electronic device in providing an audio service using Bluetooth low energy (BLE) and operate other than Bluetooth concurrency operation or Wi-Fi coexistence. By ensuring reception opportunities for sync electronic devices in consideration of these, other communication tasks can be performed while maintaining the reception success rate of audio data.
- BLE Bluetooth low energy
- the electronic device 101 may include a communication circuit 192 and at least one processor 120.
- the at least one processor may be configured to determine a first resource (1708, 1804, 1812, 4202, 4302) available for an audio service in the at least one audio communication link (506, 508).
- the at least one processor includes a second resource (1710, 1806, 1814, 4204, 4304) for a first priority within the first resource and a third resource (1710, 1806, 1814, 4204, 4304) for a second priority lower than the first priority. 1712, 1808, 1816, 4206, 4306).
- the at least one processor transmits the audio to the at least one external electronic device 202, 204 via the communication circuit through the at least one audio communication link using at least one of the second resource or the third resource. It may be configured to provide services.
- the at least one processor may be configured to allocate the second resource to a first communication task with the first priority and to allocate the third resource to a second communication task with the second priority. You can.
- the at least one processor detects, while providing the audio service, that a first communication task 4308 is scheduled using a frequency band corresponding to a frequency band of the at least one audio communication link, Based on confirming that the third priority assigned to the first communication task is higher than the second priority, and confirming that the third priority assigned to the first communication task is higher than the second priority , through the communication circuit, may be configured to perform the first communication task using the third resource.
- the first communication task may include at least one of a Bluetooth concurrency operation or a Wi-Fi coexistence operation.
- the Bluetooth concurrency operation includes at least one of Bluetooth inquiry, Bluetooth inquiry scan, Bluetooth paging, Bluetooth page scan, BLE scan, BLE advertising, Bluetooth connection maintenance, BLE connection maintenance, or channel scan. It can be included.
- the first resource may include a first time interval corresponding to a plurality of sub-events allocated for the audio service among the time intervals corresponding to one event on the at least one audio communication link. You can.
- the second resource may include a second time interval corresponding to at least one first sub-event guaranteed to be used for the audio service among the first time interval.
- the third resource may include a third time interval corresponding to at least one second sub-event excluding the at least one first sub-event among the first time intervals.
- the at least one first sub-event may include at least one sub-event for initial transmission of an audio data packet.
- the at least one second sub-event may include at least one sub-event for use in retransmission of the audio data packet.
- the at least one first sub-event may include at least one sub-event (4108, 4110) for use in initial transmission of an audio data packet.
- the at least one second sub-event may include at least one of at least one sub-event for use in retransmission of the audio data packet or at least one sub-event for use in transmission of a future audio data packet.
- the at least one processor determines the number of sub-events corresponding to the first resource among one event used for the at least one audio communication link, and selects a first sub-event corresponding to the second resource. It may be configured to determine the number of sub-events and the number of second sub-events corresponding to the third resource.
- the at least one processor may be configured to determine first sub-events corresponding to the second resource according to a specified time ratio or a specified number of sub-events.
- the at least one processor is configured to omit or postpone an audio communication task having the second priority scheduled on the third resource, based on the third priority being higher than the second priority. It can be configured.
- the at least one processor may be configured to perform an audio communication task with the first priority scheduled on the second resource through the second resource.
- the at least one processor performs the first communication task using the second resource and a fourth resource excluding the third resource, based on the third priority being lower than the second priority. It can be configured to perform.
- the at least one audio communication link includes a first CIS link using a first CIS event and a second CIS link using a second CIS event, and at least some sub-events of the first CIS event include It may overlap with at least some sub-events of the second CIS event.
- the second resource may include a time interval corresponding to at least some sub-events of the second CIS event that overlap with at least some sub-events of the first CIS event.
- the third resource is at least one of the remaining sub-events of the second CIS event that overlap with at least some sub-events of the first CIS event or at least some sub-events of the second CIS event that do not overlap with the first CIS event It may include a time section corresponding to .
- the electronic device 101 may include a communication circuit 190 and at least one processor 120.
- the at least one processor may be configured to perform a scan operation to search for nearby Bluetooth devices based on BLE.
- the at least one processor may be configured to receive an advertisement packet from a first external electronic device through a BLE scan and create (or establish) a first LE communication link with the first external electronic device.
- the at least one processor may be configured to receive an advertisement packet from a second external electronic device through BLE scan and create (or establish) a second LE communication link with the second external electronic device.
- the at least one processor may be configured to output a user interface related to the first external electronic device and/or the second external electronic device through a display based on information included in the received advertisement packet.
- the at least one processor determines the start of an audio service through CIS communication with a first external electronic device and a second external electronic device according to user intention or a specified policy, and establishes a first CIS link with the first external electronic device. and may be configured to calculate a first resource available for a second CIS link with a second external electronic device.
- the at least one processor divides the first resource into at least a second resource and a third resource, sets a first priority to the second resource, and sets a second resource having a lower priority value to the third resource. Can be configured to set priorities.
- the at least one processor may be configured to create (or establish) a first CIS link with a first external electronic device and to create (or establish) a second CIS link with a second external electronic device.
- the at least one processor may be configured to provide an audio service to a first external electronic device and a second external electronic device through a first CIS link and a second CIS link, respectively.
- the at least one processor may be configured to identify that other tasks that must be performed in the same frequency band as the CIS communication have occurred while providing the audio service.
- the at least one processor may be configured to compare the priority of the third task with the priorities of CIS tasks to be performed through CIS links.
- the at least one processor may be configured to perform tasks with higher priority.
- the at least one processor may be configured to determine whether it is necessary to change the priority of CIS tasks performed through the first CIS link and the second CIS link according to a specified rule or a specified policy while providing an audio service. If it is determined that a priority change is necessary, the at least one processor may be configured to change the first priority and/or second priority values to a higher or lower value.
- a method of operating the electronic device 101 includes operations 1605 and 1620 of determining first resources 1708, 1804, 1812, 4202, and 4302 available for an audio service in at least one audio communication link. ) may include.
- the method includes a second resource (1710, 1806, 1814, 4204, 4304) for a first priority within the first resource and a third resource (1712, 1808) for a second priority lower than the first priority. , 1816, 4206, 4306).
- the method includes operations 1615 and 1630 of providing the audio service to at least one external electronic device 202 and 204 through the at least one audio communication link using at least one of the second resource and the third resource. ) may include.
- the method may further include allocating the second resource to a first communication task with the first priority and allocating the third resource to a second communication task with the second priority. You can.
- the method includes detecting (1635) that a first communication task using the same frequency band as the at least one audio communication link is scheduled while providing the audio service, and Based on the operation 1640 of confirming that the third priority specified for the first communication task is higher than the second priority (1640), and confirming that the third priority specified for the first communication task is higher than the second priority ( 1640), and may include an operation 1645 of performing the first communication task using the third resource.
- the first communication task may include at least one of a Bluetooth concurrency operation or a Wi-Fi coexistence operation.
- the Bluetooth concurrency operation includes at least one of Bluetooth inquiry, Bluetooth inquiry scan, Bluetooth paging, Bluetooth page scan, BLE scan, BLE advertising, Bluetooth connection maintenance, BLE connection maintenance, or channel scan. It can be included.
- the first resource may include a first time interval corresponding to a plurality of sub-events allocated for the audio service among the time intervals corresponding to one event on the at least one audio communication link. You can.
- the second resource may include a second time interval corresponding to at least one first sub-event guaranteed to be used for the audio service among the first time interval.
- the third resource may include a third time interval corresponding to at least one second sub-event excluding the at least one first sub-event among the first time intervals.
- the at least one first sub-event may include at least one sub-event for initial transmission of an audio data packet.
- the at least one second sub-event may include at least one sub-event for use in retransmission of the audio data packet.
- the at least one first sub-event may include at least one sub-event (4108, 4110) for use in initial transmission of an audio data packet.
- the at least one second sub-event may include at least one of at least one sub-event for use in retransmission of the audio data packet or at least one sub-event for use in transmission of a future audio data packet.
- determining the first resource may include determining the number of sub-events corresponding to the first resource among one event used for the at least one audio communication link.
- the operation of determining the second resource and the third resource may include determining the number of first sub-events corresponding to the second resource and the number of second sub-events corresponding to the third resource. there is.
- determining the second resource may include determining first sub-events corresponding to the second resource according to a specified time ratio or a specified number of sub-events.
- the method further includes omitting or postponing an audio communication task having the second priority scheduled on the third resource, based on the third priority being higher than the second priority. It can be included.
- providing the audio service may include performing an audio communication task with the first priority scheduled to the second resource through the second resource.
- the method performs the first communication task using the second resource and a fourth resource excluding the third resource, based on the third priority being lower than the second priority. Additional actions may be included.
- the at least one audio communication link includes a first CIS link using a first CIS event and a second CIS link using a second CIS event, and at least some sub-events of the first CIS event include It may overlap with at least some sub-events of the second CIS event.
- the second resource may include a time interval corresponding to at least some sub-events of the second CIS event that overlap with at least some sub-events of the first CIS event.
- the third resource is at least one of the remaining sub-events of the second CIS event that overlap with at least some sub-events of the first CIS event and at least some sub-events of the second CIS event that do not overlap with the first CIS event It may include a time section corresponding to one.
- a method of operating the electronic device 101 may include performing a scan operation to search for nearby Bluetooth devices based on BLE.
- the method may include receiving an advertisement packet from a first external electronic device through a BLE scan and creating (or establishing) a first LE communication link with the first external electronic device.
- the method may include receiving an advertisement packet from a second external electronic device through a BLE scan and creating (or establishing) a second LE communication link with the second external electronic device.
- the method may include outputting a user interface related to the first external electronic device and/or the second external electronic device through a display based on information included in the received advertisement packet.
- the method determines the start of an audio service through CIS communication with a first external electronic device and a second external electronic device according to the user's intention or a specified policy, and establishes a first CIS link with the first external electronic device and a second It may include calculating a first resource available for a second CIS link with an external electronic device.
- the method divides the first resource into at least a second resource and a third resource, sets a first priority to the second resource, and assigns a second priority with a lower priority value to the third resource.
- the method may be configured to create (or establish) a first CIS link with a first external electronic device and to create (or establish) a second CIS link with a second external electronic device.
- the method may include providing an audio service to a first external electronic device and a second external electronic device through a first CIS link and a second CIS link, respectively.
- the method may include identifying that other work that must be performed in the same frequency band as the CIS communication occurred while providing the audio service.
- the method may include comparing the priority of the third task with the priorities of CIS tasks to be performed through CIS links.
- the method may include performing a task of higher priority.
- the method may include determining whether it is necessary to change the priority of CIS work performed through the first CIS link and the second CIS link according to a specified rule or a specified policy while providing an audio service. If it is determined that a priority change is necessary, the method may include changing the values of the first priority and/or the second priority to higher or lower values.
- Electronic devices may be of various types.
- Electronic devices may include, for example, portable communication devices (e.g., smartphones), computer devices, portable multimedia devices, portable medical devices, cameras, wearable devices, or home appliances.
- Electronic devices according to embodiments of this document are not limited to the above-described devices.
- first, second, or first or second may be used simply to distinguish one component from another, and to refer to that component in other respects (e.g., importance or order) is not limited.
- One (e.g., first) component is said to be “coupled” or “connected” to another (e.g., second) component, with or without the terms “functionally” or “communicatively.”
- any of the components can be connected to the other components directly (e.g. wired), wirelessly, or through a third component.
- module used in various embodiments of this document may include a unit implemented in hardware, software, or firmware, and is interchangeable with terms such as logic, logic block, component, or circuit, for example. It can be used as A module may be an integrated part or a minimum unit of the parts or a part thereof that performs one or more functions. For example, according to one embodiment, the module may be implemented in the form of an application-specific integrated circuit (ASIC).
- ASIC application-specific integrated circuit
- Various embodiments of the present document are one or more instructions stored in a storage medium (e.g., built-in memory 136 or external memory 138) that can be read by a machine (e.g., electronic device 101). It may be implemented as software (e.g., program 140) including these.
- a processor e.g., processor 120
- the one or more instructions may include code generated by a compiler or code that can be executed by an interpreter.
- a storage medium that can be read by a device may be provided in the form of a non-transitory storage medium.
- 'non-transitory' only means that the storage medium is a tangible device and does not contain signals (e.g. electromagnetic waves), and this term refers to cases where data is semi-permanently stored in the storage medium. There is no distinction between temporary storage cases.
- Computer program products are commodities and can be traded between sellers and buyers.
- the computer program product may be distributed in the form of a machine-readable storage medium (e.g. compact disc read only memory (CD-ROM)), or through an application store (e.g. Play Store TM ) or on two user devices (e.g. It can be distributed (e.g. downloaded or uploaded) directly between smart phones) or online.
- a machine-readable storage medium e.g. compact disc read only memory (CD-ROM)
- an application store e.g. Play Store TM
- two user devices e.g. It can be distributed (e.g. downloaded or uploaded) directly between smart phones) or online.
- at least a portion of the computer program product may be at least temporarily stored or temporarily created in a machine-readable storage medium, such as the memory of a manufacturer's server, an application store's server, or a relay server.
- each component (e.g., module or program) of the above-described components may include a single or plural entity, and some of the plurality of entities may be separately placed in other components. there is.
- one or more of the components or operations described above may be omitted, or one or more other components or operations may be added.
- multiple components eg, modules or programs
- the integrated component may perform one or more functions of each component of the plurality of components in the same or similar manner as those performed by the corresponding component of the plurality of components prior to the integration. .
- operations performed by a module, program, or other component may be executed sequentially, in parallel, iteratively, or heuristically, or one or more of the operations may be executed in a different order, or omitted. Alternatively, one or more other operations may be added.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Mobile Radio Communication Systems (AREA)
- Telephone Function (AREA)
Abstract
오디오 서비스를 제공하는 전자 장치는, 통신 회로, 및 적어도 하나의 프로세서를 포함할 수 있다. 적어도 하나의 프로세서는, 적어도 하나의 오디오 통신 링크에서 오디오 서비스를 위해 사용 가능한 제1 자원을 결정하고, 상기 결정된 제1 자원 내에서 제1 우선순위를 위한 제2 자원과 상기 제1 우선순위보다 낮은 제2 우선순위를 위한 제3 자원을 결정하고, 상기 제2 자원 또는 상기 제3 자원 중 적어도 하나를 사용하여 상기 오디오 통신 링크를 통해 적어도 하나의 외부 전자 장치에게 상기 오디오 서비스를 제공할 수 있다. 상기 오디오 서비스를 제공하는 동안, 상기 오디오 통신 링크의 주파수 대역에 대응하는 주파수 대역을 사용하고 상기 제2 우선순위보다 높은 제3 우선순위를 가지는 제1 통신 작업이 발생하면, 상기 적어도 하나의 프로세서는 상기 제2 자원을 사용하여 상기 제1 통신 작업을 수행할 수 있다.
Description
본 개시의 실시예들은 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법에 관한 것이다.
블루투스 통신 기술은 전자 장치들이 데이터나 정보의 교환을 위해 서로 연결될 수 있도록 하는 근거리 무선 통신 기술을 제시할 수 있다. 블루투스 통신 기술은 블루투스 레거시(legacy)(또는 클래식(classic)) 통신 기술 또는 저전력 블루투스(Bluetooth low energy: BLE) 통신 기술을 포함할 수 있으며, 피코넷(piconet) 또는 스캐터넷(scatternet)과 같은 다양한 연결 형태의 토폴로지(topology)를 가질 수 있다.
최근 블루투스 통신 기술을 이용하는 전자 장치들이 널리 이용되고 있다. 특히, 사용자의 양측 귀에 각각 착용될 수 있는 한 쌍의 이어 버즈(ear buds)가 이어 웨어러블 장치(ear-wearable device)로서 널리 이용되고 있다. 이어 웨어러블 장치는 다양한 기능을 제공할 수 있다. 예를 들어, 이어 웨어러블 장치는 마이크를 포함하여, 사용자의 음성을 식별할 수 있고, 이를 통해, 사용자의 음성에 대한 데이터를 전자 장치(예: 스마트 폰)로 전송할 수 있다. 또한 이어 웨어러블 장치는 스피커를 포함하여, 전자 장치(예: 스마트 폰)로부터 수신한 오디오 데이터를 스피커를 통해 출력할 수 있다.
이어 웨어러블 장치는 전자 장치(예: 스마트 폰)에 연결될 수 있는 프라이머리 이어버드(예를 들어 우측 이어버드)와 세컨더리 이어버드(예를 들어 좌측 이어버드)를 포함할 수 있다. 프라이머리 이어버드는 전자 장치와의 연결을 통해 음성 데이터를 전자 장치로 전송할 수 있고, 전자 장치는 오디오 데이터(또는, 오디오 컨텐트)를 프라이머리 이어버드로 전송할 수 있다. 프라이머리 이어버드는 전자 장치로부터 무선 통신을 통해 수신한 오디오 데이터(또는, 오디오 컨텐트)를 세컨더리 이어버드에 전달할 수 있고, 오디오 데이터를 스피커를 통해 출력할 수 있다. 세컨더리 이어버드는 프라이머리 이어버드와 동기화되어, 프라이머리 이어버드 또는 전자 장치로부터 전달받은 오디오 데이터를 스피커를 통해 출력할 수 있다.
프라이머리 이어버드와 세컨더리 이어버드(이하, '이어버즈'라 칭함)는 상기와 같은 동작들을 수행하기 위해 블루투스 통신을 기반으로 전자 장치와 연결될 수 있다. 이를 위해, 이어버즈는 인쿼리(inquiry) 및/또는 인쿼리 스캔(inquiry scan), 또는 BLE 애드버타이징(advertising) 및/또는 BLE 스캔을 포함하는 페어링을 수행할 수 있다.
인쿼리는 상대(peer) 전자 장치로부터 응답을 수신하거나 타임 아웃(time-out)이 발생할 때까지 인쿼리 패킷을 반복 전송하는 연결의 초기 동작을 의미할 수 있다. 인쿼리 스캔은 지정된 물리 채널에서 인쿼리 패킷의 수신을 모니터링하는 동작을 의미할 수 있다. 인쿼리 스캔을 통해 인쿼리 패킷을 수신한 이어버드는 자신의 정보를 포함하는 인쿼리 응답 패킷을 전송할 수 있다.
BLE 애드버타이징은 애드버타이징 물리 채널(advertising physical channel)에서 애드버타이징 패킷을 주기적으로 브로드캐스팅하는 동작을 의미할 수 있고, BLE 스캔은 애드버타이징 패킷의 수신을 모니터링하는 동작을 의미할 수 있다.
본 발명은 첨부된 청구항 세트에 의해 정의된다. 다음 설명에 하기의 한정사항이 적용된다. 청구항의 범위를 벗어나는 모든 개시내용은 설명 및 비교 목적 만을 위한 것이다.
본 개시의 실시예들은 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법을 제공할 수 있다.
본 개시의 실시예들은 오디오 서비스를 위한 통신 링크들의 자원과 다른 동작들을 위한 자원을 효율적으로 할당하는 전자 장치 및 그 동작 방법을 제공할 수 있다.
본 개시의 실시예들은 오디오 서비스를 위한 통신 링크들의 자원을 최대한 할당하고 오디오 서비스와 동시에 수행될 수 있는 다른 동작들의 우선순위들을 고려하여 소스 전자 장치의 자원을 융통성있게 사용할 수 있는 기술을 제공할 수 있다.
일 실시예에 따른 전자 장치는, 통신 회로 및 적어도 하나의 프로세서를 포함할 수 있다. 상기 적어도 하나의 프로세서는, 적어도 하나의 오디오 통신 링크에서 오디오 서비스를 위해 사용 가능한 제1 자원을 결정하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 제1 자원 내에서 제1 우선순위를 위한 제2 자원과 상기 제1 우선순위보다 낮은 제2 우선순위를 위한 제3 자원을 결정하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 통신 회로를 통해, 상기 제2 자원 또는 상기 제3 자원 중 적어도 하나를 사용하여 상기 적어도 하나의 오디오 통신 링크를 통해 적어도 하나의 외부 전자 장치에게 상기 오디오 서비스를 제공하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 오디오 서비스를 제공하는 동안, 상기 적어도 하나의 오디오 통신 링크의 주파수 대역에 대응하는 주파수 대역을 사용하는 제1 통신 작업이 스케줄됨을 감지하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 제1 통신 작업에 대해 지정된 제3 우선순위가 상기 제2 우선순위보다 높음을 확인함에 기반하여, 상기 통신 회로를 통해, 상기 제3 자원을 사용하여 상기 제1 통신 작업을 수행하도록 구성될 수 있다.
일 실시예에 따른 전자 장치(101)의 동작 방법은, 적어도 하나의 오디오 통신 링크에서 오디오 서비스를 위해 사용 가능한 제1 자원을 결정하는 동작을 포함할 수 있다. 상기 방법은 상기 제1 자원 내에서 제1 우선순위를 위한 제2 자원과 상기 제1 우선순위보다 낮은 제2 우선순위를 위한 제3 자원을 결정하는 동작을 포함할 수 있다. 상기 방법은 상기 제2 자원 또는 상기 제3 자원 중 적어도 하나를 사용하여 상기 적어도 하나의 오디오 통신 링크를 통해 적어도 하나의 외부 전자 장치에게 상기 오디오 서비스를 제공하는 동작을 포함할 수 있다. 상기 방법은 상기 오디오 서비스를 제공하는 동안 상기 적어도 하나의 오디오 통신 링크와 동일한 주파수 대역을 사용하는 제1 통신 작업이 스케줄됨을 감지하는 동작을 포함할 수 있다. 상기 방법은 상기 제1 통신 작업에 대해 지정된 제3 우선순위가 상기 제2 우선순위보다 높음을 확인함에 기반하여, 상기 제3 자원을 사용하여 상기 제1 통신 작업을 수행하는 동작을 포함할 수 있다.
하나 이상의 프로그램을 저장하는 비일시적 컴퓨터 판독 가능 저장 매체에 있어서, 하나 이상의 프로그램은 전자 장치의 적어도 하나의 프로세서에 의해 실행될 때 전자 장치로 하여금: 적어도 하나의 오디오 통신 링크에서 오디오 서비스를 위해 사용 가능한 제1 자원을 결정하고, 상기 제1 자원 내에서 제1 우선순위를 위한 제2 자원과 상기 제1 우선순위보다 낮은 제2 우선순위를 위한 제3 자원을 결정하고, 상기 제2 자원 또는 상기 제3 자원 중 적어도 하나를 사용하여 상기 적어도 하나의 오디오 통신 링크를 통해 적어도 하나의 외부 전자 장치에게 상기 오디오 서비스를 제공하도록 구성하는 명령어들을 포함할 수 있다.
도 1은 다양한 실시예들에 따른, 네트워크 환경 내의 전자 장치의 블록도이다.
도 2는 일 실시예에 따라 블루투스 방식에 기반한 전자 장치들 간 연결의 일 예를 설명하는 도면이다.
도 3은 일 실시예에 따른 블루투스 통신을 지원하는 전자 장치의 구성을 설명하기 위한 도면이다.
도 4는 일 실시예에 따른 블루투스 LE(BLE) 스캔 동작을 설명하기 위한 도면이다.
도 5는 일 실시예에 따른 블루투스 장치들 간의 연결 예를 설명하기 위한 도면이다.
도 6은 일 실시예에 따른 BLE 통신 연결의 일 예를 설명하기 위한 도면이다.
도 7은 일 실시예에 따른 CIS 링크 수립을 위한 동작 절차의 일 예를 나타낸 신호 흐름도이다.
도 8은 일 실시예에 따라 CIS 통신을 위해 설정되는 CIS 파라미터들의 일 예를 설명하기 위한 도면이다.
도 9는 일 실시예에 따른 CIS 통신의 일 예를 설명하는 타이밍 도이다.
도 10은 일 실시예에 따른 CIS 이벤트의 일 예를 설명하기 위한 도면이다.
도 11은 일 실시예에 따른 CIS 전송의 일 예를 설명하기 위한 도면이다.
도 12는 일 실시예에 따른 CIS 전송의 다른 예를 설명하기 위한 도면이다.
도 13은 일 실시예에 따른 순차적 배치의 CIS들을 설명하기 위한 도면이다.
도 14는 일 실시예에 따른 인터리브 배치의 CIS들을 설명하기 위한 도면이다.
도 15는 일 실시예에 따라 3개의 CIS들을 포함하는 CIG 이벤트 레이아웃을 설명하기 위한 도면이다.
도 16a 및 도 16b는 일 실시예에 따라 오디오 통신 링크를 통해 오디오 서비스를 제공하는 절차의 예들을 설명하기 위한 흐름도이다.
도 17 및 도 18은 일 실시예에 따라 전자 장치가 시간 구간들을 할당하는 예들을 나타낸 타이밍도이다.
도 19는 일 실시예에 따라 2채널 오디오 서비스를 위한 절차를 설명하기 위한 흐름도이다.
도 20a, 도 20b, 및 도 20c는 일 실시예에 따라 전자 장치에서 표시되는 사용자 인터페이스의 다양한 예들을 나타낸 것이다.
도 21은 일 실시예에 따라 전자 장치가 LE 통신 링크를 생성하는 절차를 설명하기 위한 도면이다.
도 22는 일 실시예에 따라 전자 장치가 복수의 LE 통신 링크들을 통해 통신하는 절차를 설명하기 위한 도면이다.
도 23은 일 실시예에 따라 미디어 서비스를 위한 자원을 결정하는 동작을 설명하기 위한 도면이다.
도 24는 일 실시예에 따라 대화형 서비스를 위한 자원을 결정하는 동작을 설명하기 위한 도면이다.
도 25는 일 실시예에 따른 자원 할당의 일 예를 나타내는 도면이다.
도 26은 일 실시예에 따른 CIS 통신을 위한 자원 분할의 일 예를 나타내는 도면이다.
도 27은 일 실시예에 따른 CIS 통신을 위한 자원 분할의 다른 예를 나타내는 도면이다.
도 28은 일 실시예에 따라 시간 비율에 따른 자원 분할의 일 예를 나타내는 도면이다.
도 29는 일 실시예에 따른 하이브리드 배치에 적용되는 자원 분할의 일 예를 나타내는 도면이다.
도 30은 일 실시예에 따른 하이브리드 배치에 적용되는 자원 분할의 다른 예를 나타내는 도면이다.
도 31은 일 실시예에 따라 CIS 링크들을 통해 오디오 서비스를 제공하는 동작을 설명하기 위한 도면이다.
도 32는 일 실시예에 따라 CIS 링크를 오픈하는 동작을 설명하기 위한 도면이다.
도 33은 일 실시예에 따라 무선 환경 또는 스케줄링 상황을 고려하여 CIS 통신을 운용하는 동작을 설명하기 위한 도면이다.
도 34는 일 실시예에 따라 높은 우선순위를 가지는 CIS 작업을 수행하는 동작을 설명하기 위한 도면이다.
도 35는 일 실시예에 따라 높은 우선순위를 가지는 BLE 작업을 수행하는 동작을 설명하기 위한 도면이다.
도 36은 일 실시예에 따라 CIS 통신을 위한 우선순위를 변경하는 동작을 설명하기 위한 도면이다.
도 37은 일 실시예에 따라 브로드캐스트 등시성 그룹(BIG)에 동기화되는 절차를 설명하기 위한 신호 흐름도를 도시한 것이다.
도 38은 일 실시예에 따른 BIG 정보의 포맷을 설명하기 위한 도면이다.
도 39는 일 실시예에 따른 주기적 애드버타이징 이벤트에 대한 BIG 이벤트를 설명하기 위한 도면이다.
도 40은 일 실시예에 따른 BIG 이벤트 및 BIS 이벤트를 설명하기 위한 도면이다.
도 41은 일 실시예에 따른 BIS 통신을 위한 자원 할당을 설명하기 위한 도면이다.
도 42는 일 실시예에 따른 BIS 통신을 위한 자원 분할을 설명하기 위한 도면이다.
도 43은 일 실시예에 따른 더 높은 우선순위의 통신 작업을 수행하는 동작을 설명하기 위한 도면이다.
도 1은, 다양한 실시예들에 따른, 네트워크 환경(100) 내의 전자 장치(101)의 블록도이다. 도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제 1 네트워크(198)(예: 근거리 무선 통신 네트워크)를 통하여 전자 장치(102)와 통신하거나, 또는 제 2 네트워크(199)(예: 원거리 무선 통신 네트워크)를 통하여 전자 장치(104) 또는 서버(108) 중 적어도 하나와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일실시예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 모듈(150), 음향 출력 모듈(155), 디스플레이 모듈(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 연결 단자(178), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 또는 안테나 모듈(197)을 포함할 수 있다. 어떤 실시예에서는, 전자 장치(101)에는, 이 구성요소들 중 적어도 하나(예: 연결 단자(178))가 생략되거나, 하나 이상의 다른 구성요소가 추가될 수 있다. 어떤 실시예에서는, 이 구성요소들 중 일부들(예: 센서 모듈(176), 카메라 모듈(180), 또는 안테나 모듈(197))은 하나의 구성요소(예: 디스플레이 모듈(160))로 통합될 수 있다.
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 실행하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성요소(예: 하드웨어 또는 소프트웨어 구성요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(120)는 다른 구성요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(132)에 저장하고, 휘발성 메모리(132)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리(134)에 저장할 수 있다. 일실시예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치 또는 어플리케이션 프로세서) 또는 이와는 독립적으로 또는 함께 운영 가능한 보조 프로세서(123)(예: 그래픽 처리 장치, 신경망 처리 장치(NPU: neural processing unit), 이미지 시그널 프로세서, 센서 허브 프로세서, 또는 커뮤니케이션 프로세서)를 포함할 수 있다. 예를 들어, 전자 장치(101)가 메인 프로세서(121) 및 보조 프로세서(123)를 포함하는 경우, 보조 프로세서(123)는 메인 프로세서(121)보다 저전력을 사용하거나, 지정된 기능에 특화되도록 설정될 수 있다. 보조 프로세서(123)는 메인 프로세서(121)와 별개로, 또는 그 일부로서 구현될 수 있다.
보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(예: 슬립) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(예: 어플리케이션 실행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성요소들 중 적어도 하나의 구성요소(예: 디스플레이 모듈(160), 센서 모듈(176), 또는 통신 모듈(190))와 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일실시예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부로서 구현될 수 있다. 일실시예에 따르면, 보조 프로세서(123)(예: 신경망 처리 장치)는 인공지능 모델의 처리에 특화된 하드웨어 구조를 포함할 수 있다. 인공지능 모델은 기계 학습을 통해 생성될 수 있다. 이러한 학습은, 예를 들어, 인공지능 모델이 수행되는 전자 장치(101) 자체에서 수행될 수 있고, 별도의 서버(예: 서버(108))를 통해 수행될 수도 있다. 학습 알고리즘은, 예를 들어, 지도형 학습(supervised learning), 비지도형 학습(unsupervised learning), 준지도형 학습(semi-supervised learning) 또는 강화 학습(reinforcement learning)을 포함할 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은, 복수의 인공 신경망 레이어들을 포함할 수 있다. 인공 신경망은 심층 신경망(DNN: deep neural network), CNN(convolutional neural network), RNN(recurrent neural network), RBM(restricted boltzmann machine), DBN(deep belief network), BRDNN(bidirectional recurrent deep neural network), 심층 Q-네트워크(deep Q-networks) 또는 상기 중 둘 이상의 조합 중 하나일 수 있으나, 전술한 예에 한정되지 않는다. 인공지능 모델은 하드웨어 구조 이외에, 추가적으로 또는 대체적으로, 소프트웨어 구조를 포함할 수 있다.
메모리(130)는, 전자 장치(101)의 적어도 하나의 구성요소(예: 프로세서(120) 또는 센서 모듈(176))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다.
프로그램(140)은 메모리(130)에 소프트웨어로서 저장될 수 있으며, 예를 들면, 운영 체제(142), 미들 웨어(144) 또는 어플리케이션(146)을 포함할 수 있다.
입력 모듈(150)은, 전자 장치(101)의 구성요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신할 수 있다. 입력 모듈(150)은, 예를 들면, 마이크, 마우스, 키보드, 키(예: 버튼), 또는 디지털 펜(예: 스타일러스 펜)을 포함할 수 있다.
음향 출력 모듈(155)은 음향 신호를 전자 장치(101)의 외부로 출력할 수 있다. 음향 출력 모듈(155)은, 예를 들면, 스피커 또는 리시버를 포함할 수 있다. 스피커는 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용될 수 있다. 리시버는 착신 전화를 수신하기 위해 사용될 수 있다. 일실시예에 따르면, 리시버는 스피커와 별개로, 또는 그 일부로서 구현될 수 있다.
디스플레이 모듈(160)은 전자 장치(101)의 외부(예: 사용자)로 정보를 시각적으로 제공할 수 있다. 디스플레이 모듈(160)은, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일실시예에 따르면, 디스플레이 모듈(160)은 터치를 감지하도록 설정된 터치 센서, 또는 상기 터치에 의해 발생되는 힘의 세기를 측정하도록 설정된 압력 센서를 포함할 수 있다.
오디오 모듈(170)은 소리를 전기 신호로 변환시키거나, 반대로 전기 신호를 소리로 변환시킬 수 있다. 일실시예에 따르면, 오디오 모듈(170)은, 입력 모듈(150)을 통해 소리를 획득하거나, 음향 출력 모듈(155), 또는 전자 장치(101)와 직접 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102))(예: 스피커 또는 헤드폰)를 통해 소리를 출력할 수 있다.
센서 모듈(176)은 전자 장치(101)의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태(예: 사용자 상태)를 감지하고, 감지된 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 일실시예에 따르면, 센서 모듈(176)은, 예를 들면, 제스처 센서, 자이로 센서, 기압 센서, 마그네틱 센서, 가속도 센서, 그립 센서, 근접 센서, 컬러 센서, IR(infrared) 센서, 생체 센서, 온도 센서, 습도 센서, 또는 조도 센서를 포함할 수 있다.
인터페이스(177)는 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 직접 또는 무선으로 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 일실시예에 따르면, 인터페이스(177)는, 예를 들면, HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD카드 인터페이스, 또는 오디오 인터페이스를 포함할 수 있다.
연결 단자(178)는, 그를 통해서 전자 장치(101)가 외부 전자 장치(예: 전자 장치(102))와 물리적으로 연결될 수 있는 커넥터를 포함할 수 있다. 일실시예에 따르면, 연결 단자(178)는, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터)를 포함할 수 있다.
햅틱 모듈(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 일실시예에 따르면, 햅틱 모듈(179)은, 예를 들면, 모터, 압전 소자, 또는 전기 자극 장치를 포함할 수 있다.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일실시예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈들, 이미지 센서들, 이미지 시그널 프로세서들, 또는 플래시들을 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리할 수 있다. 일실시예에 따르면, 전력 관리 모듈(188)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다.
배터리(189)는 전자 장치(101)의 적어도 하나의 구성요소에 전력을 공급할 수 있다. 일실시예에 따르면, 배터리(189)는, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지를 포함할 수 있다.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108)) 간의 직접(예: 유선) 통신 채널 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되고, 직접(예: 유선) 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일실시예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함할 수 있다. 이들 통신 모듈 중 해당하는 통신 모듈은 제 1 네트워크(198)(예: 블루투스, WiFi(wireless fidelity) direct 또는 IrDA(infrared data association)와 같은 근거리 통신 네트워크) 또는 제 2 네트워크(199)(예: 레거시 셀룰러 네트워크, 5G 네트워크, 차세대 통신 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN)와 같은 원거리 통신 네트워크)를 통하여 외부의 전자 장치(104)와 통신할 수 있다. 이런 여러 종류의 통신 모듈들은 하나의 구성요소(예: 단일 칩)로 통합되거나, 또는 서로 별도의 복수의 구성요소들(예: 복수 칩들)로 구현될 수 있다. 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 가입자 정보(예: 국제 모바일 가입자 식별자(IMSI))를 이용하여 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크 내에서 전자 장치(101)를 확인 또는 인증할 수 있다.
무선 통신 모듈(192)은 4G 네트워크 이후의 5G 네트워크 및 차세대 통신 기술, 예를 들어, NR 접속 기술(new radio access technology)을 지원할 수 있다. NR 접속 기술은 고용량 데이터의 고속 전송(eMBB(enhanced mobile broadband)), 단말 전력 최소화와 다수 단말의 접속(mMTC(massive machine type communications)), 또는 고신뢰도와 저지연(URLLC(ultra-reliable and low-latency communications))을 지원할 수 있다. 무선 통신 모듈(192)은, 예를 들어, 높은 데이터 전송률 달성을 위해, 고주파 대역(예: mmWave 대역)을 지원할 수 있다. 무선 통신 모듈(192)은 고주파 대역에서의 성능 확보를 위한 다양한 기술들, 예를 들어, 빔포밍(beamforming), 거대 배열 다중 입출력(massive MIMO(multiple-input and multiple-output)), 전차원 다중입출력(FD-MIMO: full dimensional MIMO), 어레이 안테나(array antenna), 아날로그 빔형성(analog beam-forming), 또는 대규모 안테나(large scale antenna)와 같은 기술들을 지원할 수 있다. 무선 통신 모듈(192)은 전자 장치(101), 외부 전자 장치(예: 전자 장치(104)) 또는 네트워크 시스템(예: 제 2 네트워크(199))에 규정되는 다양한 요구사항을 지원할 수 있다. 일실시예에 따르면, 무선 통신 모듈(192)은 eMBB 실현을 위한 Peak data rate(예: 20Gbps 이상), mMTC 실현을 위한 손실 Coverage(예: 164dB 이하), 또는 URLLC 실현을 위한 U-plane latency(예: 다운링크(DL) 및 업링크(UL) 각각 0.5ms 이하, 또는 라운드 트립 1ms 이하)를 지원할 수 있다.
안테나 모듈(197)은 신호 또는 전력을 외부(예: 외부의 전자 장치)로 송신하거나 외부로부터 수신할 수 있다. 일실시예에 따르면, 안테나 모듈(197)은 서브스트레이트(예: PCB) 위에 형성된 도전체 또는 도전성 패턴으로 이루어진 방사체를 포함하는 안테나를 포함할 수 있다. 일실시예에 따르면, 안테나 모듈(197)은 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다. 이런 경우, 제 1 네트워크(198) 또는 제 2 네트워크(199)와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면, 통신 모듈(190)에 의하여 상기 복수의 안테나들로부터 선택될 수 있다. 신호 또는 전력은 상기 선택된 적어도 하나의 안테나를 통하여 통신 모듈(190)과 외부의 전자 장치 간에 송신되거나 수신될 수 있다. 어떤 실시예에 따르면, 방사체 이외에 다른 부품(예: RFIC(radio frequency integrated circuit))이 추가로 안테나 모듈(197)의 일부로 형성될 수 있다.
다양한 실시예에 따르면, 안테나 모듈(197)은 mmWave 안테나 모듈을 형성할 수 있다. 일실시예에 따르면, mmWave 안테나 모듈은 인쇄 회로 기판, 상기 인쇄 회로 기판의 제 1 면(예: 아래 면)에 또는 그에 인접하여 배치되고 지정된 고주파 대역(예: mmWave 대역)을 지원할 수 있는 RFIC, 및 상기 인쇄 회로 기판의 제 2 면(예: 윗 면 또는 측 면)에 또는 그에 인접하여 배치되고 상기 지정된 고주파 대역의 신호를 송신 또는 수신할 수 있는 복수의 안테나들(예: 어레이 안테나)을 포함할 수 있다.
상기 구성요소들 중 적어도 일부는 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input and output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))을 통해 서로 연결되고 신호(예: 명령 또는 데이터)를 상호간에 교환할 수 있다.
일실시예에 따르면, 명령 또는 데이터는 제 2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104)간에 송신 또는 수신될 수 있다. 외부의 전자 장치(102, 또는 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다. 일실시예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 외부의 전자 장치들(102, 104, 또는 108) 중 하나 이상의 외부의 전자 장치들에서 실행될 수 있다. 예를 들면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로, 또는 사용자 또는 다른 장치로부터의 요청에 반응하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 하나 이상의 외부의 전자 장치들에게 그 기능 또는 그 서비스의 적어도 일부를 수행하라고 요청할 수 있다. 상기 요청을 수신한 하나 이상의 외부의 전자 장치들은 요청된 기능 또는 서비스의 적어도 일부, 또는 상기 요청과 관련된 추가 기능 또는 서비스를 실행하고, 그 실행의 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 상기 결과를, 그대로 또는 추가적으로 처리하여, 상기 요청에 대한 응답의 적어도 일부로서 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅, 분산 컴퓨팅, 모바일 에지 컴퓨팅(MEC: mobile edge computing), 또는 클라이언트-서버 컴퓨팅 기술이 이용될 수 있다. 전자 장치(101)는, 예를 들어, 분산 컴퓨팅 또는 모바일 에지 컴퓨팅을 이용하여 초저지연 서비스를 제공할 수 있다. 다른 실시예에 있어서, 외부의 전자 장치(104)는 IoT(internet of things) 기기를 포함할 수 있다. 서버(108)는 기계 학습 및/또는 신경망을 이용한 지능형 서버일 수 있다. 일실시예에 따르면, 외부의 전자 장치(104) 또는 서버(108)는 제 2 네트워크(199) 내에 포함될 수 있다. 전자 장치(101)는 5G 통신 기술 및 IoT 관련 기술을 기반으로 지능형 서비스(예: 스마트 홈, 스마트 시티, 스마트 카, 또는 헬스 케어)에 적용될 수 있다.
이하에서는 다양한 실시예들에 따른 전자 장치들의 예에 대해서 설명한다.
도 2는 일 실시예에 따라 블루투스 방식에 기반한 전자 장치들 간 연결의 일 예를 설명하는 도면이다.
도 2를 참조하면, 전자 장치(101)는 외부 전자 장치(102)(예를 들어 이어 웨어러블 장치(ear-wearable device))에 무선으로 연결될 수 있다. 일 실시예에서, 전자 장치(101)는 스마트 폰 일 수 있다. 외부 전자 장치(102)는 양이 분리형 이어 웨어러블 장치이고, 제1 외부 전자 장치(202)(예: 레프트 이어버드(left ear bud)) 및 제2 외부 전자 장치(204)(예: 라이트 이어버드(right ear bud)) 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)는 한 쌍의 이어버드로서 도시되었지만, 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)는 이어버드들 뿐만 아니라 하나의 페어(pair)로 동작할 수 있는 장치를 모두 포함할 수 있다. 일 실시예에 따르면, 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)는 서로 동일하거나 또는 유사한 구성들을 포함하도록 구현될 수 있다.
일 실시예에 따르면, 전자 장치(101)는 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204) 중 적어도 하나와 연결(예: 통신 링크)을 설정하고, 서로 데이터를 송신 및/또는 수신할 수 있다. 예를 들어, 전자 장치(101)는 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204) 중 적어도 하나와 와이파이(Wi-Fi) 방식 또는 블루투스 방식에 기반하여 통신 링크를 설정할 수 있지만, 전자 장치(101)가 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)와 통신 링크를 설정하는 방식이 Wi-Fi 방식 및/또는 블루투스 방식 중 적어도 하나로 제한되는 것은 아니다.
일 실시예에서, 전자 장치(101)는 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204) 중 어느 하나와만 통신 링크를 설정하거나, 또는 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204) 각각과 개별적인 통신 링크들을 설정할 수 있다.
일 실시예에서, 외부 전자 장치(102)가 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)를 포함하는 경우에 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)는 Wi-Fi 방식 및/또는 블루투스 방식 중 적어도 하나에 기반하여 서로 간에 통신 링크를 설정할 수 있지만, 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)가 통신 링크를 설정하는 방식이 Wi-Fi 방식 및/또는 블루투스 방식 중 적어도 하나로 제한되는 것은 아니다.
일 실시예에서, 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204) 중 어느 하나는 센트럴(central)(또는, 마스터(master), 프라이머리(primary) 장치, 또는 메인(main))로 동작할 수 있고, 나머지 하나는 페리페럴(peripheral)(또는, 슬레이브(slave) 또는 세컨더리(secondary)) 로 동작할 수 있다. 센트럴로 동작하는 전자 장치는 페리페럴로 동작하는 전자 장치로 데이터를 송신할 수 있다. 예를 들어, 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)가 서로 통신 링크를 설정할 때, 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204) 중 어느 하나가 랜덤하게 센트럴로 선택되고, 다른 하나가 페리페럴로 선택될 수 있다. 오디오 서비스의 경우 센트럴로 동작하는 전자 장치는 소스(source) 전자 장치가 되고, 페리페럴로 동작하는 전자 장치는 싱크(sink) 전자 장치가 될 수 있다. 이하에서 "싱크"라는 용어는 주변 기기로서 동작하는 전자 장치를 의미하며, "목적지", "수신자", "서브" 및/또는 "슬레이브"와 같은 용어로 혼용될 수 있다.
제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)는 제3 외부 전자 장치(250)와 직접 또는 간접적으로 통신할 수 있다. 일 실시예에서, 제3 외부 전자 장치(250)는 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)를 보관하고 충전하는 이어 버즈 케이스 장치(ear buds case device) 또는 크래들 장치(cradle device)일 수 있다.
도 3은 일 실시예에 따른 블루투스 통신을 지원하는 전자 장치의 구성을 설명하기 위한 도면이다.
도 3을 참조하면, 전자 장치(101)는 외부 전자 장치들(202, 204)과 무선으로 연결될 수 있다. 전자 장치(101)는 예를 들어 스마트 폰으로 구현될 수 있으며, 기재 및/또는 도시된 바에 제한되지 않고 다양한 종류의 장치(예: 표준 노트북, 울트라북, 넷북, 및 탭북을 포함하는 노트북 컴퓨터(notebook computer), 랩톱 컴퓨터(laptop computer), 태블릿 컴퓨터(tablet computer), 또는 데스크 톱 컴퓨터(desktop computer))로 구현될 수도 있다. 전자 장치(101)는 도 1에 도시한 바와 같이 구현될 수 있으며, 이에 따라 도 1에 도시된 구성들(예: 각종 모듈들) 중 적어도 일부를 포함할 수 있으므로 중복되는 설명은 생략한다.
외부 전자 장치들(202, 204)은 무선 이어버즈로 구현될 수 있으나, 기재 및/또는 도시된 바에 제한되지 않고 후술하는 오디오 서비스를 지원하는 다양한 종류의 장치(예: 스마트 워치, 헤드-마운티드 디스플레이 장치, 생체 신호를 측정하기 위한 장치들(예: 심전도 패치))로 구현될 수도 있다. 일 실시예에 따르면, 외부 전자 장치들(202, 204)이 무선 이어버즈인 경우, 외부 전자 장치들(202, 204)은 한 쌍의 장치들(예: 레프트 이어버드 및 라이트 이어버드)일 수 있다. 일 실시예에 따르면, 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)는 동일하거나 유사한 구성들을 포함하도록 구현될 수 있다.
일 실시예에 따르면, 전자 장치(101)는 외부 전자 장치들(202, 204) 중 적어도 하나와 통신 연결을 설정하고, 서로 데이터를 송신 및/또는 수신할 수 있다. 예를 들어, 전자 장치(101)와 외부 전자 장치들(202, 204) 각각은 와이파이 다이렉트(Wi-Fi direct) 또는 블루투스(Bluetooth)와 같은 D2D(device to device) 통신을 이용(예: 해당 통신 방식을 지원(support)하는 통신 회로를 이용)하여 서로 통신 연결을 설정할 수 있으나, 이에 제한되지 않고 다양한 종류의 통신(예: AP(access point)를 이용한 Wi-Fi와 같은 통신 방식, 기지국을 이용한 셀룰러 통신 방식, 또는 유선 통신 방식)을 이용하여 서로 통신할 수 있다.
일 실시예에서, 전자 장치(101)는 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)) 중 어느 하나의 장치(예: 프라이머리 이어버드)와만 통신 링크를 연결하거나, 또는 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)의 둘 다와 통신 링크들을 각각 연결할 수 있다.
일 실시예에서 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)는 서로 간에 통신 연결을 설정하고, 서로 데이터(예를 들어 오디오 데이터 및/또는 제어 데이터)를 송신 및/또는 수신할 수 있다. 상기 통신 연결은 전술한 바와 같이 와이파이 다이렉트(Wi-Fi direct) 또는 블루투스(Bluetooth)와 같은 D2D 통신을 이용(예: 해당 통신을 지원하는 통신 회로를 이용)하여 서로 통신 연결을 설정할 수 있으나, 이에 제한되지 않는다.
일 실시예에서, 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204) 중 하나의 장치가 프라이머리 장치(또는 마스터 장치 또는 메인 장치)가 되고, 다른 장치가 세컨더리 장치(또는 슬레이브 장치 또는 서브 장치)가 될 수 있으며, 프라이머리 장치(또는, 메인 장치)가 세컨더리 장치로 데이터를 전송할 수 있다. 예를 들어, 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)가 서로 통신 연결을 설정할 때, 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204) 중에서 어느 하나의 장치가 랜덤하게 프라이머리 장치로 선택되고, 다른 장치가 세컨더리 장치로 선택될 수 있다. 일 실시예에서 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)가 서로 통신 연결을 설정할 때, 먼저 인체 착용이 감지(예: 착용 감지를 위한 센서(예: 근접 센서, 터치 센서, 기울기 6축 센서, 또는 9축 센서)를 이용하여 착용을 나타내는 값이 검출됨)된 장치가 프라이머리 장치로 선택되고, 나머지 장치가 세컨더리 장치로 선택될 수 있다.
일 실시예에서, 프라이머리 장치는 전자 장치(101)로부터 수신된 데이터를 세컨더리 장치로 전송할 수 있다. 예를 들어, 프라이머리 장치인 제1 외부 전자 장치(202)는 전자 장치(101)로부터 수신한 오디오 데이터에 기반하여 오디오를 스피커(354)로 출력할 뿐 아니라, 상기 오디오 데이터를 세컨더리 장치인 제2 외부 전자 장치(204)로 전송할 수 있다. 일 실시예에서 세컨더리 장치는 프라이머리 장치(예: 제1 외부 전자 장치(202))로부터 제공된 연결 정보에 기반하여, 전자 장치(101)로부터 프라이머리 장치(예: 제1 외부 전자 장치(202))로 전송되는 오디오 데이터를 스니핑을 통해 수신할 수 있다.
일 실시예에서, 프라이머리 장치인 제1 외부 전자 장치(202)는 세컨더리 장치인 제2 외부 전자 장치(204)로부터 수신된 데이터(예: 오디오 데이터 또는 제어 데이터)를 전자 장치(101)로 전송할 수 있다. 예를 들어, 세컨더리 장치인 제2 외부 전자 장치(204)에서 터치 이벤트가 발생된 경우, 발생된 터치 이벤트에 대한 정보를 포함하는 제어 데이터가 프라이머리 장치인 제1 외부 전자 장치(202)에 의해 전자 장치(101)로 전송될 수 있다. 다만, 기재된 바에 제한되지 않고 전술한 바와 같이 세컨더리 장치와 전자 장치(101)가 서로 통신 연결을 설정하며, 이에 따라 세컨더리 장치와 전자 장치(101) 간에 데이터의 송신 및/또는 수신이 직접 수행될 수도 있다.
일 실시예에서 제1 외부 전자 장치(202)는 도 1에 도시된 전자 장치(101)의 구성 요소들(예: 모듈들)의 적어도 하나와 동일 또는 유사한 구성 요소를 포함할 수 있다. 제1 외부 전자 장치(202)는 프로세서(310)(예: 도 1의 프로세서(120)), 통신 회로(320)(예: 도 1의 통신 모듈(190)), 입력 장치(330)(예: 도 1의 입력 모듈(150)), 센서(340)(예: 도 1의 센서 모듈(176)), 오디오 처리 모듈(350)(예: 도 1의 오디오 모듈(170)), 전력 관리 모듈(360)(예: 도 1의 전력 관리 모듈(188)), 배터리(370)(예: 도 1의 배터리(189)), 인터페이스(380)(예: 도 1의 인터페이스(177)), 및 메모리(390)(예: 도 1의 메모리(130))를 포함할 수 있다.
일 실시예에 따르면, 통신 회로(320)는 무선 통신 모듈(예: 블루투스 통신 모듈, 셀룰러 통신 모듈, Wi-Fi(wireless-fidelity) 통신 모듈, NFC(near field communication) 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(예: LAN(local area network) 통신 모듈, 또는 전력선(power line communication: PLC) 통신 모듈) 중 적어도 하나를 포함할 수 있다. 블루투스 통신 모듈은 일 예로서 블루투스 래거시 통신 및/또는 저전력 블루투스(BLE) 통신에 의한 적어도 하나의 통신 연결(예를 들어 통신 링크)을 지원할 수 있다.
통신 회로(320)는 포함하고 있는 적어도 하나의 통신 모듈을 이용하여, 제1 네트워크(예: 도 1의 제1 네트워크(198))를 통하여 전자 장치(101)(예를 들어, 스마트 폰), 제3 외부 전자 장치(250)(예를 들어, 크래들과 같은 충전 장치), 또는 제2 외부 전자 장치(204)(예를 들어, 세컨더리 이어버드) 중 적어도 하나와 직접 혹은 간접적으로 통신할 수 있다. 제2 외부 전자 장치(204)는 제1 외부 전자 장치(202)와 페어(pair)로 구성될 수 있다. 통신 회로(320)는 프로세서(310)와 독립적으로 운영될 수 있고, 유선 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다.
일 실시예에 따르면, 통신 회로(320)는 신호 또는 정보를 다른 전자 장치(예를 들어, 전자 장치(101), 제2 외부 전자 장치(204) 또는 크래들 장치(예를 들어 제3 외부 전자 장치(250)) 중 적어도 하나)로 송신하거나 다른 전자 장치로부터 수신할 수 있는 하나 또는 복수의 안테나와 연결될 수 있다. 일 실시예에 따르면, 제1 네트워크(예: 도 1의 제1 네트워크(198)) 또는 제2 네트워크(예: 도 2의 제2 네트워크(199))와 같은 통신 네트워크에서 사용되는 통신 방식에 적합한 적어도 하나의 안테나가, 예를 들면 통신 회로(320)에 의하여 상기 복수의 안테나들로부터, 선택될 수 있다. 신호 또는 정보는 상기 선택된 적어도 하나의 안테나를 통하여 통신 회로(320)와 다른 전자 장치 간에 송신되거나 수신될 수 있다.
일 실시예에 따르면, 입력 장치(330)는 제1 외부 전자 장치(202)의 동작에 사용될 수 있는 다양한 입력 신호를 생성하도록 구성될 수 있다. 입력 장치(330)는 터치 패드, 터치 패널 또는 버튼 중 적어도 하나를 포함할 수 있다.
일 실시예에 따르면, 입력 장치(330)는 제1 외부 전자 장치(202)의 온 또는 오프에 관한 사용자 입력을 생성할 수 있다. 일 실시예에 따르면, 입력 장치(330)는 제1 외부 전자 장치(202)와 제2 외부 전자 장치(204) 사이의 통신 연결을 위한 사용자 입력을 수신할 수 있다. 일 실시예에 따르면, 입력 장치(330)는 오디오 데이터(또는, 오디오 컨텐트)에 연관하는 사용자 입력을 수신할 수 있다. 예를 들면, 사용자 입력은 오디오 데이터의 재생 시작, 재생 일시 중지, 재생 중지, 재생 속도 조절, 재생 볼륨 조절 또는 음소거의 기능에 연관할 수 있다.
일 실시예에 따르면, 센서(340)는 제1 외부 전자 장치(202)의 위치 또는 작동 상태를 계측 또는 확인할 수 있다. 센서(340)는 계측 또는 확인된 정보를 전기 신호로 변환할 수 있다. 센서(340)는, 예를 들면, 마그네틱 센서, 가속도 센서, 자이로 센서, 지자계 센서, 근접 센서, 제스처 센서, 그립 센서, 생체 센서, 또는 광 센서 중 적어도 하나를 포함할 수 있다.
일 실시예에 따르면, 프로세서(310)는 전자 장치(101)로부터 수신한 데이터 패킷으로부터 데이터(예: 오디오 데이터)를 검출하고, 검출된 데이터를 오디오 처리 모듈(350)을 통해 처리하여 스피커(354)로 출력할 수 있다. 오디오 처리 모듈(350)은 오디오 데이터 수집 기능을 지원할 수 있고, 수집한 오디오 데이터를 재생할 수 있다.
일 실시예에 따르면, 오디오 처리 모듈(350)은 오디오 디코더(미도시) 및 D/A 컨버터(미도시)를 포함할 수 있다. 오디오 디코더는 메모리(390)에 저장되어 있거나 전자 장치(101)로부터 통신 회로(320)를 통해 수신되는 오디오 데이터를 디지털 오디오 신호로 변환할 수 있다. D/A 컨버터는 상기 오디오 디코더에 의해 변환된 디지털 오디오 신호를 아날로그 오디오 신호로 변환시킬 수 있다. 일 실시예에 따르면, 오디오 디코더는 통신 회로(320)를 통하여 전자 장치(101)로부터 수신되어 메모리(390)에 저장되는 오디오 데이터를 디지털 오디오 신호로 변환할 수 있다. 스피커(354)는 D/A 컨버터에 의해 변환된 아날로그 오디오 신호를 출력할 수 있다.
일 실시예에 따르면, 오디오 처리 모듈(350)은 A/D 컨버터(미도시)를 포함할 수 있다. A/D 컨버터는 마이크로폰(352)(이하 마이크라 칭함)을 통해 전달된 아날로그 음성 신호를 디지털 음성 신호로 변환할 수 있다. 마이크(352)는, 음성 및/또는 소리를 감지하기 위한, 적어도 하나의 공기 전도 마이크(air conduction microphone) 및/또는 적어도 하나의 골 전도 마이크(bone conduction microphone)를 포함할 수 있다.
일 실시예에 따르면, 오디오 처리 모듈(350)은 제1 외부 전자 장치(202)의 운용 동작에서 설정된 다양한 오디오 데이터를 재생할 수 있다. 예를 들어, 프로세서(310)는 제1 외부 전자 장치(202)가 사용자의 귀에 결합되거나 귀로부터 분리되는 것을 센서(340)를 통해 감지하고, 오디오 처리 모듈(350)을 통해 효과음 또는 안내음에 관한 오디오 데이터를 재생하도록 설계될 수 있다. 효과음이나 안내음의 출력은 사용자 설정이나 설계자 의도에 따라 생략될 수 있다.
일 실시예에 따르면, 메모리(390)는 제1 외부 전자 장치(202)의 적어도 하나의 구성요소(예: 프로세서(310) 또는 센서(340))에 의해 사용되는 다양한 데이터를 저장할 수 있다. 데이터는, 예를 들어, 소프트웨어 및 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 포함할 수 있다. 메모리(390)는 휘발성 메모리 또는 비휘발성 메모리를 포함할 수 있다.
일 실시예에 따르면, 전력 관리 모듈(360)은 제1 외부 전자 장치(202)에 공급되는 전력을 관리할 수 있다. 일 실시예에 따르면, 전력 관리 모듈(360)은, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구현될 수 있다. 일 실시예에 따르면, 전력 관리 모듈(360)은 배터리 충전 모듈을 포함할 수 있다. 일 실시예에 따르면, 다른 전자 장치(예를 들어 전자 장치(101), 제2 외부 전자 장치(204), 또는 다른 전자 장치 중 하나)가 제1 외부 전자 장치(202)와 전기적으로 연결(무선 또는 유선)되는 경우, 전력 관리 모듈(360)은 상기 다른 전자 장치로부터 전력을 제공받아 배터리(370)를 충전시킬 수 있다.
일 실시예에 따르면, 배터리(370)는 제1 외부 전자 장치(202)의 적어도 하나의 구성 요소에 전력을 공급할 수 있다. 배터리(370)는 예를 들면, 재충전 가능한 전지를 포함할 수 있다. 일 실시예에 따르면, 제1 외부 전자 장치(202)가 크래들 장치(예를 들어 제3 외부 전자 장치(250)) 내에 장착되면, 제1 외부 전자 장치(202)는 지정된 충전 레벨까지 배터리(370)를 충전시킨 후, 제1 외부 전자 장치(202)의 전원을 온 시키거나 통신 회로(320)의 적어도 일부를 턴 온 시킬 수 있다.
일 실시예에 따르면, 인터페이스(380)는 제1 외부 전자 장치(202)가 전자 장치(101), 제2 외부 전자 장치(204), 크래들 장치(예를 들어 제3 외부 전자 장치(250)) 또는 다른 전자 장치와 직접(예를 들어, 유선) 연결되기 위해 사용될 수 있는 하나 이상의 지정된 프로토콜들을 지원할 수 있다. 인터페이스(380)는, 예를 들면, HDMI(high definition multimedia interface), USB 인터페이스, SD 카드 인터페이스, PLC(power line communication: PLC) 인터페이스, 또는 오디오 인터페이스 중 적어도 하나를 포함할 수 있다. 일 실시예에 따르면, 인터페이스(380)는 크래들 장치(예를 들어 제3 외부 전자 장치(250))와 물리적 연결을 수립(establish)하기 위한 적어도 하나의 연결 포트를 포함할 수 있다.
일 실시예에 따르면, 프로세서(310)는 소프트웨어를 실행하여 프로세서(310)에 연결된 제1 외부 전자 장치(202)의 적어도 하나의 다른 구성 요소(예: 하드웨어 또는 소프트웨어 구성 요소)를 제어할 수 있고, 다양한 데이터 처리 또는 연산을 수행할 수 있다. 일 실시예에 따르면, 데이터 처리 또는 연산의 적어도 일부로서, 프로세서(310)는 다른 구성요소(예: 센서(340) 또는 통신 회로(320))로부터 수신된 명령 또는 데이터를 휘발성 메모리(390)에 로드하고, 휘발성 메모리(390)에 저장된 명령 또는 데이터를 처리하고, 결과 데이터를 비휘발성 메모리에 저장할 수 있다.
일 실시예에 따르면, 프로세서(310)는 통신 회로(320)를 통해 전자 장치(101)와 통신 연결을 수립할 수 있으며, 상기 수립된 통신 연결을 통해 전자 장치(101)로부터 데이터(예: 오디오 데이터)를 수신할 수 있다. 일 실시예에 따라, 프로세서(310)는 통신 회로(320)를 통해 전자 장치(101)로부터 수신한 데이터를 제2 외부 전자 장치(204)로 송신할 수 있다. 일 실시예에 따르면, 프로세서(310)는 하기에 설명될 제1 외부 전자 장치(202)의 동작들을 수행할 수 있다. 일 실시예에 따르면, 프로세서(310)는 블루투스 통신을 수행하기 위한 물리 계층, 링크 계층, 호스트, 및 어플리케이션 계층을 포함할 수 있다.
다양한 실시예들에 따르면, 제1 외부 전자 장치(202)는 그 제공 형태에 따라 다양한 모듈을 더 포함할 수 있다. 디지털 기기의 컨버전스(convergence) 추세에 따라 변형이 매우 다양하여 모두 열거할 수는 없으나, 상기 언급된 구성 요소들과 동등한 수준의 구성 요소가 제1 외부 전자 장치(202)에 추가로 더 포함될 수 있다. 또한, 다양한 실시예들에 따른 제1 외부 전자 장치(202)는 그 제공 형태에 따라 상기 구성 요소들에서 특정 구성 요소가 제외되거나 다른 구성 요소로 대체될 수 있음은 물론이다. 이는 본 기술 분야의 통상의 지식을 가진 자에겐 쉽게 이해될 수 있을 것이다.
다양한 실시예들에 따르면, 제1 외부 전자 장치(202)와 페어로 구성된 제2 외부 전자 장치(204)는 제1 외부 전자 장치(202)에 포함된 구성요소들을 동일하거나 유사하게 포함할 수 있고, 후술하는 도면들에서 설명되는 제1 외부 전자 장치(202)의 동작의 전부 또는 일부를 수행할 수 있다.
일 실시예에서 전자 장치(101)는 BLE 스캔을 통해 외부 전자 장치들(202, 204) 중 적어도 하나를 발견하고 발견된 외부 전자 장치와 BLE 연결을 수립할 수 있다. 외부 전자 장치들(202, 204) 중 적어도 하나는 전자 장치(101)에 의해 발견될 수 있도록 BLE 애드버타이징을 수행할 수 있다.
도 4는 일 실시예에 따른 블루투스 LE(BLE) 스캔 동작을 설명하기 위한 도면이다.
도 4를 참조하면, 동작 414에 따라 전자 장치(101)는 BLE에 기반하여 주변 블루투스 장치를 탐색하기 위한 스캔 동작을 수행하기 시작할 수 있다. 동작 412에서 외부 전자 장치(예를 들어 제2 외부 전자 장치(202))는 BLE에 기반하여 주변 블루투스 장치에 의해 발견될 수 있도록 애드버타이징 패킷("Adv")을 주기적으로 전송(예를 들어 멀티캐스트 또는 브로드캐스트)할 수 있다. 일 실시예에서 애드버타이징 패킷은 애드버타이징 데이터를 포함할 수 있고, 상기 애드버타이징 데이터는 특정되지 않은 주변의 전자 장치(예를 들어 전자 장치(101))에게 외부 전자 장치(202)와의 연결 또는 계정(예를 들어 페어링)과 관련된 정보를 제공할 수 있다. 일 실시예에서 애드버타이징 패킷은 외부 전자 장치(202)의 식별 정보, 사용자의 계정 정보, 외부 전자 장치(202)가 다른 전자 장치와 페어링되어 있는지에 대한 정보, 외부 전자 장치(202)가 이전에 페어링된 장치에 대한 리스트, 동시에 페어링 가능한 장치들에 관한 정보, 전송 전력, 감지 영역 또는 배터리 잔량에 대한 정보 중 적어도 하나를 포함할 수 있다.
일 실시예에서 외부 전자 장치(202)는 예를 들어 페어링 요청을 위한 사용자 입력에 응답하여 애드버타이징 패킷을 전송하는 동작을 시작할 수 있다. 일 실시예에서 외부 전자 장치(202)는 크래들 장치(예를 들어 제3 외부 전자 장치(250))에 보관될 수 있으며, 크래들 장치에 보관된 상태에서 크래들 장치가 오픈되거나 또는 크래들 장치로부터 분리되면 애드버타이징 패킷의 전송을 시작할 수 있다. 일 실시예서 외부 전자 장치(202)는 지정된 조건에 따라 애드버타이징 패킷을 전송할 수 있다 일 실시예에서 제2 전자 장치(202)는 전원이 공급될 때, 또는 지정된 시간 주기 중 적어도 하나에 기반하여 애드버타이징 패킷의 전송을 시작할 수 있다.
일 실시예에서 전자 장치(101)는 외부 전자 장치(202)로부터 브로드캐스트되는 애드버타이징 패킷들 중 적어도 하나를 수신하고, 디스플레이에 외부 전자 장치(202)와의 연결을 위한 사용자 인터페이스를 출력할 수 있다. 전자 장치(101)는 수신된 애드버타이징 패킷에 포함된 정보를 기반으로 다양한 조건에 따라 사용자 인터페이스를 제공할 수 있다. 일 예로서 사용자 인터페이스는 제1 외부 전자 장치(202)에 대응되는 이미지, 사용자 계정, 전송 전력, 또는 배터리 잔량 중 적어도 하나를 포함할 수 있다.
동작 416에서 전자 장치(101)는 외부 전자 장치(202)로부터 수신된 애드버타이징 패킷에 대응하는 스캔 요청 패킷(예를 들어 Scan_req)을 외부 전자 장치(202)로 전송할 수 있다. 동작 418에서 외부 전자 장치(202)는 상기 스캔 요청 패킷에 대응하는 스캔 응답 패킷(예를 들어 Scan_rsp)을 전자 장치(101)로 전송할 수 있다. 일 실시예에서 동작 416의 스캔 요청 패킷과 동작 418의 스캔 응답 패킷이 교환되는 도중 및 이후에도, 동작 420에서 외부 전자 장치(202)는 애드버타이징 패킷을 계속하여 주기적으로 전송할 수 있다.
동작 422에서 전자 장치(101)는 상기 스캔 응답 패킷의 수신에 따라 스캔 결과(예를 들어 수신 신호 세기(received signal strength indicator: RSSI))를 포함함)를 생성할 수 있다. 일 실시예에서 전자 장치(101)는 동작 424에서 상기 스캔 응답 패킷의 수신에 따라 스캔 동작을 종료할 수 있다. 또는, 전자 장치(101)는 스캔 동작을 계속하여 수행할 수도 있다. 동작 426에서 전자 장치(101)는 외부 전자 장치(202)와 BLE 통신 링크(예를 들어 ACL(asynchronous connection-less) 링크)를 수립(establish)할 수 있다. 일 실시예에서 동작 426은 도 6의 CONNECT_IND (604) 및 첫번째 패킷(610)의 전송을 포함할 수 있다.
BLE 통신 링크는 각각 서로 다른 목적에 최적화되어 활용될 수 있는 복수의 LE 물리 채널들, 예를 들어 LE 피코넷 물리 채널, LE 애드버타이징 물리 채널, 애드버타이징 주기적 물리 채널, 및 LE 등시성 물리 채널(LE isochronous physical channel)을 포함할 수 있다. LE 피코넷 물리 채널은 연결된 장치 간의 통신에 사용되며 특정 피코넷과 연결될 수 있다. LE 애드버타이징 물리 채널은 블루투스 장치에 애드버타이징 (advertisements)을 브로드캐스트하는 데 사용될 수 있다. 상기 애드버타이징은 사용자 데이터를 디스커버리, 연결 또는 사용자 데이터를 상대 전자 장치로 보내는 데 사용될 수 있다. 애드버타이징 주기적 물리 채널은 사용자 데이터를 주기적 애드버타이징을 통해 특정 간격(interval)으로 상대 전자 장치에게 전송하기 위해 사용될 수 있다. LE 등시성 물리 채널은 LE 피코넷 내의 블루투스 장치들 간에 등시성 데이터를 전달하거나, 연결되지 않은 블루투스 장치들 간에 등시성 데이터를 전달하는 데 사용될 수 있다.
다양한 실시예들에서 전자 장치들(예를 들어 전자 장치(101), 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204))은 BLE를 통해 오디오 서비스를 지원할 수 있으며, BLE를 통한 오디오 서비스에 의해 제공되는 오디오를 BLE 오디오라 칭할 수 있다. BLE 오디오를 통해 오디오 서비스를 지원하는 방식은, 예를 들어 BIS(broadcast isochronous stream)와 CIS(connected isochronous stream)로 나뉠 수 있다.
도 5는 일 실시예에 따른 블루투스 장치들 간의 연결 예를 설명하기 위한 도면이다.
도 5를 참조하면, 전자 장치(101)는 제1 외부 전자 장치(202)의 존재를 감지하고 상호 간에 BLE에 기반한 제1 ACL(asynchronous connection-less) 링크(502)(이하 ACL1 또는 LE ACL1이라 칭함)를 수립할 수 있다. 또한 전자 장치(101)는 제2 외부 전자 장치(204)의 존재를 감지하고 상호간에 BLE에 기반한 제2 ACL 링크(504)(이하 ACL2 또는 LE ACL2라 칭함)를 수립할 수 있다. 일 실시예에서 전자 장치(101)는 제1 외부 전자 장치(202)의 도움을 받아 제2 ACL 링크(504)를 수립할 수 있다.
일 실시예에서 전자 장치(101)는 제1 ACL 링크(502)를 사용하여 오디오 통신을 위한 오디오 통신 링크(예를 들어 등시성 물리 채널(isochronous physical channel)을 사용하는 제1 연결 등시성 스트림(connected isochronous stream: CIS) 링크(506))(이하 CIS1이라 칭함)를 수립하고, 제1 CIS 링크(506)를 통해 제1 외부 전자 장치(202)와 등시성 데이터(예를 들어 오디오 데이터)를 교환할 수 있다. 유사하게, 전자 장치(101)는 제2 ACL 링크(504)를 사용하여 오디오 통신을 위한 오디오 통신 링크(예를 들어 제2 CIS 링크(508))(이하 CIS2라 칭함)를 수립하고, 제2 CIS 링크(508)를 통해 제2 외부 전자 장치(204)와 등시성 데이터(예를 들어 오디오 데이터)를 교환할 수 있다. 제1 CIS 링크(506)와 제2 CIS 링크(508)는 CIS 그룹(CIS group: CIG)(510)에 포함될 수 있다.
일 실시예에서 제1 ACL 링크(502)는 전자 장치(101)와 제1 외부 전자 장치(202) 간에 제1 CIS 링크(506)를 수립하거나 제어하는데 필요한 정보를 교환하는데 사용되는 논리 전송일 수 있다. 제1 CIS 링크(506)는 전자 장치(101)와 제1 외부 전자 장치(202) 간에 오디오 데이터를 통신하기 위해 사용될 수 있다. 일 실시예에서 전자 장치(101)와 제1 외부 전자 장치(202)는 제1 ACL 링크(502)를 통해 획득한 정보(예를 들어 통신 파라미터들)를 기반으로 제1 CIS 링크(506)를 수립할 수 있다. 일 실시예에서 전자 장치(101)와 제1 외부 전자 장치(202)는 제1 CIS 링크(506)의 제어에 적용되기 위한 정보(예를 들어 지원 특징(supported feature) 정보 및/또는 PHY 변경 정책)를 제1 ACL 링크(502)를 통해 교환할 수 있다.
일 실시예에서 제2 외부 전자 장치(204)는 전자 장치(101)와 제2 ACL 링크(504) 및 제2 CIS 링크(508)를 수립하고, 제1 외부 전자 장치(202)의 동작과 동일하거나 유사한 동작을 수행할 수 있다. 일 실시예에서 제2 외부 전자 장치(204)는 제1 외부 전자 장치(202)의 제어를 통해 전자 장치(101)와 통신할 수 있다.
도 6은 일 실시예에 따른 BLE 통신 연결의 일 예를 설명하기 위한 도면이다.
도 6을 참조하면, 프라이머리 애드버타이징 채널(600)은 애드버타이징 패킷(602)을 전송하고 연결 지시(CONNECT_IND) 메시지(604)를 전송하는데 사용될 수 있다. 애드버타이징 패킷(602)과 연결 지시 메시지(604) 간에는 프레임간 시간(time for inter frame space: T_IFS)이 존재할 수 있다. 연결 지시(CONNECT_IND) 메시지(604)에 의해 애드버타이징 이벤트가 종료될 수 있다. 연결 지시(CONNECT_IND) 메시지(604) 이후에는 링크 계층(link layer: LL)의 연결이 셋업될 수 있다.
블루투스 장치(예를 들어 전자 장치(101), 제1 외부 전자 장치(202), 또는 제2 외부 전자 장치(204))는 상대 전자 장치와 통신 링크를 생성할 때, 통신 주기를 의미하는 연결 간격(connection interval: connInterval)(612)을 설정하고, 각 연결 간격(612)에서 통신을 수행할 수 있다. 일 실시예에서 전자 장치(101)는 프라이머리 애드버타이징 채널(600) 상에서 제1 외부 전자 장치(202)로부터 브로드캐스트되는 애드버타이징 패킷(602)을 수신하면, 제1 외부 전자 장치(202)로 CONNECT_IND 메시지(604)를 전달하여 BLE 연결을 요청할 수 있다.
CONNECT_IND 메시지(604)를 수신한 제1 외부 전자 장치(202)는 페리페럴 장치(예를 들어 슬레이브 역할(slave role))로 동작하게 되며, 센트럴 장치(예를 들어 마스터 역할(master role))로 동작하는 전자 장치(101)가 CONNECT_IND 메시지(604)를 통해 전달한 파라미터들, 예를 들어 transmitWindowOffset(606)과 transmitWindowSize(608)를 기반으로 연결 간격(612)의 시작점을 계산할 수 있고, 연결 간격(612) 내의 C-P(central to peripheral)(또는 M-S(mater to slave)) 시간 구간(예를 들어 적어도 하나의 슬롯을 포함함)에서 제1 전자 장치(302)로부터 전달될 첫번째 패킷(610)을 수신할 준비를 할 수 있다. 첫번째 패킷(610)이 수신되면, 첫번째 패킷(610)이 수신된 시점을 기준으로 다음 연결 간격의 시작점을 나타내는 앵커 포인트(anchor point: AP)가 계산될 수 있다.
도 7은 일 실시예에 따른 CIS 링크 수립을 위한 동작 절차의 일 예를 나타낸 신호 흐름도이다.
도 7을 참조하면, 동작 700에서 전자 장치(예를 들어 CIS 소스 전자 장치 또는 전자 장치(101))는 상대 전자 장치(예를 들어 CIS 싱크(sink) 전자 장치, 또는 제1 외부 전자 장치(202))와의 BLE 연결(예를 들어 제1 ACL 링크(502))을 가지고 있을 수 있다. 동작 710에서 전자 장치(101)는 CIS 링크(예를 들어 제1 CIS 링크(506))를 정의하는 CIS 파라미터들(예를 들어 도 8의 제어 데이터(800))를 포함하는 링크 계층 CIS 요청 메시지(예를 들어 LL_CIS_REQ 패킷)를 제1 외부 전자 장치(202)에게 전송할 수 있다. 동작 712에서 제1 외부 전자 장치(202)로부터 링크 계층 CIS 응답 메시지(예를 들어 LL_CIS_RSP 패킷)가 수신되면, 동작 714에서 전자 장치(101)는 링크 계층 CIS 지시 메시지(예를 들어 LL_CIS_IND 패킷)를 제1 외부 전자 장치(202)에게 전송할 수 있다.
동작 716, 동작 718 및 동작 720에서 전자 장치(101)와 제1 외부 전자 장치(202)는 하나 혹은 그 이상의 CIS 널(null) 패킷(예를 들어 PDU(protocol data unit)들을 교환함으로써 CIS 링크의 수립을 확인할 수 있다. 동작 722에서 전자 장치(101)와 제1 외부 전자 장치(202)는 CIS 링크를 통해 CIS 데이터 PDU들을 통신할 수 있다.
BLE에서 CIS는 통신 링크를 생성한 전자 장치간 어느 방향으로든 등시성 데이터를 전송할 수 있는 논리 전송을 의미할 수 있다. CIS는 고정된 데이터 사이즈뿐만 아니라 가변 사이즈의 데이터 전송이 가능하며, 프레임된(Framed) 데이터 및 프레임되지 않은(unframed) 데이터의 모두에 사용될 수 있다. 각 CIS에 대해 이벤트 및 서브이벤트들로 알려진 시간 슬롯들의 스케줄이 설정될 수 있다. CIS는 각각의 등시성 이벤트에서 가변 사이즈 패킷과 하나 이상의 패킷을 전송함으로써 데이터 전송률(data rate)의 조절이 가능할 수 있다. CIS 링크 상에서 데이터 트래픽은 장치 간 단방향(unidirectional) 또는 양방향(bidirectional)으로 전송될 수 있으며, 패킷 전송의 신뢰성을 향상시키기 위한 애크(acknowledgment: ACK) 프로토콜을 포함할 수 있다.
도 8은 일 실시예에 따라 CIS 통신을 위해 설정되는 CIS 파라미터들의 일 예를 설명하기 위한 도면이다.
도 8을 참조하면, CIS 통신에서 사용되는 파라미터들(예를 들어 CIS 파라미터들이라 칭함)은 동작 710의 LL_CIS_REQ에 포함되는 제어 데이터(800)를 통해 상대 전자 장치(예를 들어 제1 외부 전자 장치(202))에게로 제공될 수 있다. 일 실시예에서 마스터 역할(또는 센트럴 장치)로 동작하는 전자 장치(101)는 CIS 통신을 위해 CIS_ID를 할당할 수 있으며, CIS_ID는 링크 계층 메시지(예를 들어 LL_CIS_REQ)를 통해 슬레이브 역할(또는 페리페럴 장치)로 동작하는 제1 외부 전자 장치(202)와 공유될 수 있다.
일 실시예에서 제어 데이터(800)는 CIG(CIS group)(예를 들어 CIG(510))를 식별하는 CIG_ID(802), CIS 링크(예를 들어 제1 CIS 링크(506))를 식별하는 CIS_ID(804), 마스터-슬레이브간 물리 계층 전송 방식(이하 PHY라 칭함)을 나타내는 파라미터(PHY_M_To_S 및 PHY_S_To_M을 포함함), SDU(service data unit)의 최대 크기를 나타내는 Max_SDU 파라미터(Max_SDU_M_To_S 및 Max_SDU_S_To_M을 포함함), 적어도 하나의 RFU(reserved for future use) 필드, Framed 필드, SDU_Interval 파라미터(SDU_Interval_M_to_S 및 SDU_Interval_S_to_M), 최대 PDU 크기를 나타내는 Max_PDU 파라미터 (Max_PDU_M_To_S 및 Max_PDU_S_To_M을 포함함), NSE(number of subevent)(806), Sub_Interval 파라미터(808)(Sub_Interval_M_To_S 및 Sub_Interval_S_To_M을 포함함), BN(burst number) 파라미터(BN_M_To_S 및 BN_S_To_M을 포함함), FT(flushing time) 파라미터(FT_M_To_S 및 FT_S_To_M을 포함함), ISO_Interval(810), CIS 옵셋 파라미터(CIS_Offset_Min 및 CIS_Offset_Max), 또는 connEventCount 중 적어도 하나의 파라미터를 포함할 수 있다.
제어 데이터(800)에 의해 설정되는 파라미터들은 CIS 링크(예를 들어 제1 CIS 링크(506)) 상의 오디오 데이터 전송에 대해 적용될 수 있으며, CIS 링크가 생성된 이후 종료되기까지 변경되지 않을 수 있다. CIS_ID(804)는 전자 장치(101) 및 제1 외부 전자 장치(202)의 링크 계층들을 거쳐 제1 외부 전자 장치(202)의 호스트와 공유될 수 있고, 링크 계층에서는 사용되지 않을 수 있다.
PHY_M_To_S 및 PHY_S_To_M은 마스터-슬레이브 방향의 데이터 전송을 위해 사용되는 PHY와 슬레이브-마스터 방향의 데이터 전송을 위해 사용되는 PHY를 각각 지시할 수 있다. CIS 링크 상에서 PHY_M_To_S 및 PHY_S_To_M에 의해 지시되는 PHY들(예를 들어 LE 1M(1 mega-symbol per second), LE 2M(2 mega-symbol per second), Coded PHY with S=2, 또는 Coded PHY with S=8 중 적어도 하나)이 사용될 수 있다.
ISO_Interval(810)은 두 개의 연속된 CIS 앵커 포인트들 간의 균일한(Regular) 시간 간격을 나타낼 수 있으며, 하나의 ISO(isochronous) 간격 내에서 각 앵커 포인트에서 시작하는 하나의 CIS 이벤트가 발생할 수 있다. 하나의 CIS 이벤트는 마스터-슬레이브간 전송 기회를 의미하는 하나 이상의 서브이벤트들을 포함할 수 있다. Sub_Interval(808)은 하나의 CIS 이벤트 내에서 연속된 두 개의 서브이벤트 간 시간 간격을 나타낼 수 있으며, 각 서브이벤트의 최대 길이는 SE_Length에 의해 지정될 수 있다. Max_PDU는 CIS 데이터 PDU의 최대 크기를 나타낼 수 있다. Max_SDU는 CIS상 SDU의 최대 크기를 나타낼 수 있다. NSE는 각 CIS 이벤트 내 서브이벤트들의 최대 개수를 나타낼 수 있다. BN 파라미터에 의해 지정되는 BN은 ACK/NACK 없이 전송될 수 있는 패킷들의 개수를 나타낼 수 있다. NSE 파라미터는 BN_M_To_S와 BN_S_To_M 중 큰 값일 수 있으며, 최대 31까지 설정될 수 있다. FT 파라미터는 CIS 데이터 PDU가 전송(또는 재전송)될 수 있는 CIS 이벤트들의 최대 개수를 나타내며, 1부터 255까지의 값을 가질 수 있다.
CIS 링크(예를 들어 제1 CIS 링크(506))의 암호화는 ACL 링크(예를 들어 제1 ACL 링크(502))의 암호화를 그대로 적용할 수 있다. 센트럴 장치(예를 들어 전자 장치(101))와 페리페럴 장치(예를 들어 제1 외부 전자 장치(202))는 둘 다 39 비트의 CIS 이벤트 카운터(cisEventCounter)를 가질 수 있으며, CIS 링크(예를 들어 제1 CIS 링크(506))의 첫번째 CIS 이벤트에 대해 상기 CIS 이벤트 카운터를 0으로 설정한 후 각 CIS 이벤트에서 등시성 PDU를 전송할 때마다 상기 CIS 이벤트 카운터를 1씩 증가시킬 수 있다. CIS 링크(예를 들어 제1 CIS 링크(506))는 39 비트의 CIS 페이로드 번호(cisPayloadNumber)를 가질 수 있으며, 상기 CIS 페이로드 번호가 239-1이 될 때 CIS 링크(예를 들어 제1 CIS 링크(506))는 종료될 수 있다. CIS 널 PDU는 cisPayloadNumber를 가지지 않을 수 있다.
도 9는 일 실시예에 따른 CIS 통신의 일 예를 설명하는 타이밍 도이다.
도 9를 참조하면, CIS 통신은 설정된 간격(예: ISO_Interval(810)에 의해 지시될 수 있는 ISO 간격)으로 발생하는 CIS 이벤트들을 포함할 수 있고, 각 CIS 이벤트는 하나 또는 그 이상의 서브이벤트(subevent)(예를 들어 Sub_Interval에 대응하는 제1 서브이벤트(902))를 포함할 수 있다. 각 서브이벤트의 길이를 나타내는 SE_Length(904)는 예를 들어 CIS 파라미터들(예를 들어 제어 데이터(800)) 중 Sub_Interval 파라미터(808)에 의해 지정될 수 있다.
일 실시예에서 하나의 서브이벤트(예를 들어 제1 서브이벤트(902)) 동안, 전자 장치(101)는 한 번의 송신(예를 들어 전자 장치(101)(센트럴 장치)로부터 제1 외부 전자 장치(202)(페리페럴 장치)로 전송되는 C->P 패킷(906))과 한번의 수신(예를 들어 제1 외부 전자 장치(202)(페리페럴 장치)로부터 전자 장치(101)(센트럴 장치)로 전송되는 P->C 패킷(910))을 수행할 수 있다. 제1 외부 전자 장치(202)는 C->P 패킷(906)을 수신하고 T_IFS의 간격(908) 이후에 그에 대응하는 응답(예를 들어 P->C 패킷(910))을 전송할 수 있다. 일 실시예에서 제1 외부 전자 장치(202)는 전자 장치(101)로부터의 패킷(906)을 수신하는데 실패한 경우 제1 서브이벤트(902) 동안 어떠한 전송도 수행하지 않을 수 있다. 전자 장치(101)와 제1 외부 전자 장치(202)는 패킷(906)의 재전송(retransmission: RT) 또는 다음 패킷의 전송을 위해 다음 서브이벤트를 사용할 수 있다.
제1 외부 전자 장치(202)의 전송(예를 들어 P->C 패킷(910)) 이후 제1 서브이벤트(902)가 종료하기 이전까지 적어도 T_MSS (time for minimum subevent space)(912) 만큼의 간격이 존재할 수 있다. T_MSS(912)는 하나의 서브이벤트(예를 들어 제1 서브이벤트(902)) 내에서 마지막 패킷(예를 들어 P->C 패킷(910))의 마지막 비트와 다음 서브이벤트의 첫번째 패킷의 첫번째 비트 간 최소 시간 간격을 의미하며, 예를 들어 표준에 의해 150㎲(micro second)로 지정될 수 있다.
전자 장치(101)와 제1 외부 전자 장치(202)가 CIS 이벤트에서 스케줄되어 있는 등시성 데이터의 전달을 완료할 경우 CIS 이벤트의 나머지 모든 서브이벤트들은 더 이상의 송신들을 가지지 않을 것이고, CIS 이벤트는 종료될 수 있다.
도 10은 일 실시예에 따른 CIS 이벤트의 일 예를 설명하기 위한 도면이다.
도 10을 참조하면, CIS 링크를 위한 ISO_interval(1002) 내에 적어도 하나의 CIS 이벤트(예를 들어 CIS 이벤트 x(1004))가 포함될 수 있다. CIS 이벤트 x(1004)는 센트럴 장치(예를 들어 전자 장치(101))와 페리페럴 장치(예를 들어 제1 외부 전자 장치(202))가 CIS 패킷들(예를 들어 CIS PDU들)을 교환할 수 있는 기회를 의미하고, 일정한 간격으로 발생하며, 최대 NSE개 만큼의 서브이벤트들(예를 들어 서브이벤트 1(1008)을 포함함)을 포함할 수 있다. 예를 들어 NSE=4이면 CIS 이벤트 x(1004) 내에 최대 4개의 서브이벤트들이 존재할 수 있으며 여기에서는 3개의 서브이벤트들(예를 들어 서브이벤트 1(1008), 서브이벤트 2, 및 서브이벤트 3)이 발생한 경우를 도시하였다. 각 CIS 이벤트(예를 들어 CIS 이벤트 x(1004))는 CIS 통신이 종료될 때까지, 매 CIS 앵커 포인트(1000)에서 시작되며, 연속된 2개의 CIS 앵커 포인트들 간에 ISO_Interval(1002)의 균일한 이격이 존재할 수 있다.
각 CIS 이벤트(예를 들어 CIS 이벤트 x(1004))는 하나 이상의 서브이벤트들(예를 들어 서브이벤트 1(1008)을 포함함)로 분할될 수 있다. 하나의 서브이벤트 1(1008) 내에서 센트럴 장치(예를 들어 전자 장치(101))로부터 페리페럴 장치(예를 들어 제1 외부 전자 장치(202))로의 데이터 전송("C->P")과 페리페럴 장치로부터 센트럴 장치로의 데이터 전송("P->C")이 존재할 수 있다. CIS 이벤트 x(1004) 내에서 연속된 두 개의 서브이벤트들의 시작점들 간에는 Sub_Interval(1006)의 이격이 존재할 수 있다.
CIG는 동일 서비스를 제공하는 CIS들의 묶음으로, CIG는 하나 이상의 CIS들을 포함할 수 있다. CIG내 여러 개의 CIS들은 센트럴 장치(예를 들어 전자 장치(101))의 타이밍을 기준으로 공통된 타이밍 기준(timing reference)을 가질 수 있으며, 시간 단위로 동기화될 수 있다. CIG는 애플리케이션 레벨에서 시간 관계성을 가질 수 있다. 하나의 CIG 내에서 CIS들은 동일한 ISO_Interval(예를 들어 ISO_Interval(1002))을 가질 수 있으며, 최대 31개까지의 CIS들이 하나의 CIG에 포함될 수 있다. 센트럴 장치는 CIG_ID를 할당하고, 상기 CIG_ID를 LL 메시지를 통해 페리페럴 장치(예를 들어 제1 외부 전자 장치(202))와 공유할 수 있다.
도 11은 일 실시예에 따른 CIS 전송의 일 예를 설명하기 위한 도면이다.
도 11을 참조하면, CIS 전송에 대해 BN=2, FT=1, 및 NSE=4가 설정되어 있다. ISO 간격 내 첫번째 CIS 이벤트(1102) 동안 전자 장치(101)는 패킷 P0를 NSE=4에 따른 최대 4번의 서브이벤트들(1104)을 사용하여 반복하여 전송할 수 있다. 예를 들어 외부 전자 장치(202)는 네번의 서브이벤트들(1104)에서 패킷 P0를 정상적으로 수신하는데 실패하고, 마지막 네번째 서브이벤트를 사용하여 NACK를 전송할 수 있다.
두번째 CIS 이벤트에서 패킷 P0의 플러시 포인트에 도달하기까지 패킷 P0를 성공적으로 전송하지 못하면, 다시 말해서 패킷 P0에 대한 ACK를 수신하지 못하면, 전자 장치(101)는 세번째 CIS 이벤트에서 다음 패킷 P1을 전송할 수 있다. 세번째 CIS 이벤트의 두번째 서브이벤트를 사용하여 외부 전자 장치(202)로부터 ACK가 수신되면, 전자 장치(101)는 세번째 CIS 이벤트의 세번째 서브이벤트를 사용하여 다음 패킷 P2를 전송할 수 있다.
도 12는 일 실시예에 따른 CIS 전송의 다른 예를 설명하기 위한 도면이다.
도 12를 참조하면, CIS 전송에 대해 BN=1, FT=2, 및 NSE=4가 설정되어 있다. ISO 간격을 가지는 첫번째 CIS 이벤트(1202) 동안 전자 장치(101)는 NSE=4에 따른 최대 4번의 서브이벤트들(1204)을 사용할 수 있다. 예를 들어 첫번째 서브이벤트에서 전자 장치(101)는 패킷 P0을 전송하고 외부 전자 장치(202)로부터 ACK를 수신할 수 있다. 두번째, 세번째 및 네번째 서브이벤트들에서 전자 장치(101)는 패킷 P1을 반복하여 전송할 수 있고, 네번째 서브이벤트에서 외부 전자 장치(202)는 패킷 P1에 대한 ACK를 전자 장치(101)로 전송할 수 있다.
두번째 CIS 이벤트에 대해 전자 장치(101)는 첫번째 및 두번째 서브이벤트들을 사용하여 패킷 P2를 반복 전송할 수 있고, 세번째 및 네번째 서브이벤트들을 사용하여 패킷 P3을 반복 전송할 수 있다. 세번째 CIS 이벤트에 대해 전자 장치(101)는 첫번째 서브이벤트를 사용하여 패킷 P4를 전송할 수 있고, 두번째, 세번째, 및 네번째 서브이벤트들을 사용하여 패킷 P5를 반복 전송할 수 있다.
다양한 실시예들에서 전자 장치(101)는 CIS 통신을 사용하여 오디오 데이터를 전송하기 위해 CIS 파라미터들(예를 들어 제어 데이터(800))를 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)로 전송함으로써 상기 CIS 파라미터들을 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)에게 설정할 수 있다. 예를 들어, 미디어 타입을 위해, ISO 간격=20ms, BN=2, FT=5, NSE=6, 및 SE 길이=884㎲의 CIS 파라미터들을 가지는 2개의 CIS들(예를 들어 제1 CIS 링크(506) 및 제2 CIS 링크(508))이 전자 장치(101)와 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204) 사이에 오픈되고, 상기 CIS들을 통해 오디오 서비스가 수행될 수 있다.
일 실시예에서 전자 장치(101)가 하나의 CIS를 위해 사용 가능한 CIS별 자원은 "SE 길이 × NSE / ISO 간격"으로 계산될 수 있고, 따라서 복수의 CIS들을 위한 자원은 "CIS별 사용 가능한 자원 × CIS 카운트"가 될 수 있다. 여기서 CIS 카운트는 하나의 CIG에 포함되는 CIS들의 개수(예를 들어 2개)를 의미할 수 있다. 일 실시예에서 전자 장치(101)는 지정된 SE 길이와, 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)로 전송하는 CIS 파라미터들(예를 들어 제어 데이터(800)) 중 ISO 간격(810) 및 NSE(806)를 이용하여 상기 자원을 결정할 수 있다.
CIG는 어플리케이션 계층에서 시간 관계성이 있을 것으로 예상되고, ISO 간격이 동일한 Num_CIS개의 CIS들을 포함할 수 있고, 여기서 Num_CIS는 31보다 작거나 같을 수 있다. 센트럴 장치(예를 들어 전자 장치(101))의 호스트는 CIG에 대해 CIG_ID를 할당할 수 있다. 각 CIG 내의 CIS들은 Sub_Interval과 CIS 앵커 포인트들 사이의 간격에 따라 순차적(Sequential) 방식 또는 인터리브(Interleaved) 방식으로 배치될 수 있다.
도 13은 일 실시예에 따른 순차적 배치의 CIS들을 설명하기 위한 도면이다.
도 13을 참조하면, ISO_Interval (1302)은 CIG 앵커 포인트와 겹치는 CIS1 앵커 포인트(1300)에서 시작할 수 있으며, CIG 이벤트들(예를 들어 CIG 이벤트 x(1304))를 포함할 수 있다. CIG 이벤트 x(1304) 내에서 CIS2 이벤트 x(1308)는 CIS1 이벤트 x(1306)의 직후에 발생할 수 있다.
도 14는 일 실시예에 따른 인터리브 배치의 CIS들을 설명하기 위한 도면이다.
도 14를 참조하면, ISO_Interval (1402)은 CIG 앵커 포인트와 겹치는 CIS1 앵커 포인트(1400)에서 시작할 수 있으며, CIG 이벤트들(예를 들어 CIG 이벤트 x(1404))를 포함할 수 있다. CIG 이벤트 x(1404) 내에서 CIS2 이벤트 x(1408)는 CIS1 이벤트 x(1406)와 겹쳐서 발생할 수 있다.
도 15는 일 실시예에 따라 3개의 CIS들을 포함하는 CIG 이벤트 레이아웃을 설명하기 위한 도면이다.
도 15를 참조하면, CIG 이벤트(1502)(예를 들어 CIG 이벤트 x(1304) 또는 CIG 이벤트 x(1404))는 복수의 CIS들에 대응하는 복수의 CIS 이벤트들(예를 들어 CIS 이벤트(1504), CIS 이벤트(1506), 및 CIS 이벤트(1508))을 포함할 수 있다. CIG 이벤트(1502)는 가장 이른 CIS의 CIS 이벤트(1504)의 앵커 포인트(예를 들어 CIS1 앵커 포인트(1300) 또는 CIS1 앵커 포인트(1400))에서 시작해 가장 마지막 CIS의 CIS 이벤트(1508)의 종료 시점에 종료될 수 있다. CIG 이벤트(1502)는 CIG 참조 포인트(reference point)와 CIG 동기 포인트(synchronization point)를 포함할 수 있으며, 상기 두 포인트들은 CIG_Sync_Delay의 이격을 가질 수 있다. CIS 이벤트들(1504, 1506, 1508)의 각 시작점은 CIG 동기 포인트와 CIS_Sync_Delay의 이격을 가질 수 있다.
센트럴 장치(예를 들어 전자 장치(101))의 링크 계층은 어플리케이션 계층에서 등시성 데이터의 동기화를 가능하게 하기 위한 타이밍 파라미터들(예를 들어 CIG_Sync_Delay 및 CIS_Sync_Delay)를 페리페럴 장치(예를 들어 제1 외부 전자 장치(202))의 링크 계층으로 제공할 수 있다.
하나의 CIS 이벤트는 최대 NSE개만큼의 서브이벤트들을 포함할 수 있고, 센트럴 장치(예를 들어 전자 장치(101))는 CIS 이벤트 내의 복수의 서브이벤트들을 사용하여 오디오 데이터를 페리페럴 장치(예를 들어 제1 외부 전자 장치(202))에게 전송할 수 있다. 일 실시예에서 오디오 서비스에서 센트럴 장치는 소스 전자 장치가 되고 페리페럴 장치는 싱크 전자 장치가 될 수 있다.
BLE 통신을 이용하는 오디오 서비스(예를 들어 BLE 오디오)는 예를 들어 양이 분리형 이어 웨어러블 장치들(예를 들어 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204))을 위해 사용될 수 있다. 양이 분리형 이어 웨어러블 장치들(예를 들어 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204))은, 예를 들어 두 개 이상의 스피커들을 통해 동시에 음악을 출력하는 시나리오 또는 5.1채널을 구성하는 다수의 스피커들을 이용해 음악을 출력하는 시나리오와 같이, 하나의 소스 전자 장치(예를 들어 전자 장치(101))에 다수의 싱크(SINK) 전자 장치들(예를 들어 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204))가 연결 되어 동시성을 가지고 오디오를 출력해야 하는 시나리오들에 사용될 수 있다.
하나의 소스 전자 장치(예를 들어 전자 장치(101))에 하나의 싱크 전자 장치(예를 들어 제1 외부 전자 장치(202) 또는 제2 외부 전자 장치(204) 중 어느 하나)가 연결된 경우, 소스 전자 장치는 싱크 전자 장치를 위해 최대의 무선 주파수(radio frequency: RF) 자원 및 최대의 내부 프로세싱 자원을 사용할 수 있기 때문에, 주변 무선 환경의 변화 또는 물리적 거리 변화로 인한 통신 열화에 대해 상대적으로 영향을 덜 받을 수 있다.
소스 전자 장치(예를 들어 전자 장치(101))는 싱크 전자 장치(예를 들어 제1 외부 전자 장치(202) 또는 제2 외부 전자 장치(204) 중 어느 하나)와의 오디오 데이터의 전달을 위한 통신 링크를 유지하면서, 필요한 경우 블루투스 동시성(concurrency) 동작과 Wi-Fi 공존(coexistence: COEX) 동작을 고려하여 소스 전자 장치의 자원을 관리할 수 있다. 예를 들어 블루투스 동시성 동작은 다른 전자 장치들(예를 들어 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)가 아닌 다른 블루투스 장치)과의 BLE 연결 유지, BLE 스캔, BLE 애드버타이징, 블루투스 인쿼리, 블루투스 인쿼리 스캔, 블루투스 페이징, 블루투스 페이지 스캔, 블루투스 연결 유지, 또는 채널 스캔 중 적어도 하나를 포함할 수 있고, Wi-Fi 공존 동작은 Wi-Fi를 통한 데이터 전송을 포함할 수 있다. 소스 전자 장치는 블루투스 동시성 동작 및/또는 Wi-Fi 공존과 같이 동일한 주파수 대역을 사용하는 다른 동작을 고려해서 대략 50 ~ 60% 수준의 자원을 싱크 전자 장치들을 위한 통신 링크들에 대해 고정적으로 할당할 수 있다.
소스 전자 장치(예를 들어 전자 장치(101))가 복수의 통신 링크들에 대해 고정 자원을 할당하고 상기 할당된 고정 자원을 통해 오디오 서비스를 제공하는 경우, 주변 환경 변화 또는 물리적 장애물과 같은 다양한 요인들에 의해 특정 통신 링크에 통신 열화가 발생하더라도 소스 전자 장치는 상기 통신 링크의 통신 열화를 복구하기 어려울 수 있다. 실시간으로 통신 열화가 발생하는 통신 링크를 복구하지 못함에 따라 통화 또는 음악 재생과 같은 오디오 서비스의 품질이 악화되어 사용자의 불편함을 야기하게 될 수 있다.
본 개시의 실시예들은 전자 장치들간 오디오 서비스를 수행하는 동안, 오디오 통신 링크들(예를 들어 CIS 링크 및/또는 BIS 링크)을 운용하면서 동시에 다른 작업(task)을 최대한 효율적으로 수행하기 위한 자원 할당을 제공할 수 있다. 일 실시예에서 상기 다른 작업은 오디오 통신 링크들(예를 들어 CIS 링크 및/또는 BIS 링크)을 통한 오디오 서비스의 주파수 대역(예를 들어 2.4GHz)에 상응하는 주파수 대역(예를 들어 동일한 주파수 대역)에서 이루어지는 통신 동작일 수 있다. 일 실시예에서 상기 다른 작업은 오디오 통신(예를 들어 CIS 통신 및/또는 BIS 통신)이 아닌 블루투스 동시성 동작(예: BLE 연결의 유지, BLE 스캔, BLE 애드버타이징, 블루투스 인쿼리, 블루투스 인쿼리 스캔, 블루투스 페이징, 블루투스 페이지 스캔, 또는 채널 스캔 중 적어도 하나) 또는 Wi-Fi 공존 동작 중 적어도 하나를 포함할 수 있다. 일 실시예에서 전자 장치(예를 들어 전자 장치(101))는 오디오 통신 링크(예를 들어 CIS 링크 및/또는 BIS 링크)를 생성할 때, 오디오 통신을 위해 사용 가능한 자원(예를 들어 하나의 CIS 이벤트 중 사용 가능한 서브이벤트들의 개수 또는 BIS 서브이벤트 그룹들의 개수))을 결정하고, 상기 결정된 자원 내에서 작업 별 우선순위들을 고려하여 적어도 하나의 다른 작업을 상기 오디오 통신 링크를 통한 오디오 통신(예를 들어 적어도 하나의 CIS 작업 또는 적어도 하나의 BIS 작업)과 함께 수행할 수 있도록 한다. 일 예로서 상기 작업 별 우선순위들은 오디오 통신 링크를 통한 통신 작업들의 우선순위, 또는 오디오 통신과 동일한 주파수 대역에서 발생할 수 있는 다른 작업들(예를 들어 블루투스 동시성 동작 또는 Wi-Fi 공존 동작)의 우선순위 중 적어도 하나를 포함할 수 있다.
일 실시예에서 전자 장치(101)는 오디오 통신 링크들에 자원을 할당함에 있어서 각 오디오 통신 링크에서 사용 가능한 자원(예를 들어 오디오 통신을 위해 사용 가능한 시간 구간의 최대 길이 또는 서브이벤트들의 최대 개수)을 최대값(예를 들어 100%)에 가깝게 결정 및 할당할 수 있다. 전자 장치(101)는 전자 장치(101) 내부의 스케줄링 상황에 따라 작업 별 우선순위들을 가변적으로 변경하거나, 또는 시간의 흐름에 따라 통신 작업의 우선순위를 가변적으로 변경할 수 있다. 전자 장치(101)는 작업 별 우선순위들을 고려하여 오디오 통신 작업 및 다른 작업을 수행함으로써, 예를 들어 블루투스 동시성 동작이나 Wi-Fi 공존과 같은 다른 작업의 실행을 개선함과 동시에 오디오 통신 링크들을 통한 오디오 서비스를 안정적으로 제공할 수 있다.
도 16a는 일 실시예에 따라 오디오 통신을 위한 자원을 할당하는 절차를 설명하기 위한 흐름도이다. 도시된 동작들 중 적어도 하나는 소스 전자 장치(예를 들어 전자 장치(101))의 프로세서(예를 들어 프로세서(120))에 의해 수행될 수 있다. 후술되는 동작들 중 적어도 하나는 다양한 실시예들에 따라 생략되거나 변경되거나 순서 변경될 수 있다.
도 16a를 참조하면, 동작 1605에서 전자 장치(101)(예를 들어 프로세서(120))는 오디오 통신 링크(예를 들어 제1 CIS 링크(506) 또는 제2 CIS 링크(508))에 대해 설정되는 하나의 시간 간격(예를 들어 ISO_Interval) 내에서 오디오 통신을 위해 사용 가능한 제1 자원(예를 들어 시간 구간의 길이, 또는 하나의 CIS 이벤트에 포함되는 서브이벤트들의 개수)을 결정할 수 있다. 일 실시예에서 상기 제1 자원은 오디오 통신을 위해 사용 가능한 전체 자원(예를 들어 ISO 간격) 중 전자 장치(101)가 오디오 통신을 위해 사용할 것으로 결정한 최대 자원(예를 들어 ISO 간격의 60~100%)을 포함할 수 있다. 일 실시예에서 상기 제1 자원은 ISO 간격 중 오디오 통신이 아닌 다른 작업(예를 들어 블루투스 동시성 동작 또는 Wi-Fi 공존 동작)을 위해 지정된 시간 간격(예를 들어 20~40%)을 제외한 나머지 시간 구간으로 정해질 수 있다. 일 실시예에서 상기 제1 자원은 CIS 링크에 대해 설정되는 NSE와 SE 길이를 기반으로 계산될 수 있다. 일 실시예에서 상기 제1 자원은 CIS 링크에 대해 설정되는 NSE와 SE 길이를 고려하여 ISO 간격의 100%에 가깝게 결정될 수 있다. 일 실시예에서 상기 제1 자원은 BIS 링크에 대해 설정되는 서브이벤트 그룹들의 개수를 기반으로 계산될 수 있다.
동작 1610에서 전자 장치(101)(예를 들어 프로세서(120))는 상기 결정된 제1 자원을 서로 다른 우선순위들에 대응하는 적어도 2개의 자원들로 분할(divide)할 수 있다. 일 실시예에서 상기 적어도 2개의 자원들은 제2 자원 및 제3 자원을 적어도 포함할 수 있고, 전자 장치(101)(예를 들어 프로세서(120))는 상기 제1 자원 내에서 제1 우선순위를 위한 제2 자원 및 제2 우선순위를 위한 제3 자원을 결정할 수 있다.
일 실시예에서 상기 제1 우선순위는 오디오 통신 링크(예를 들어 CIS 링크)의 적어도 하나의 제1 서브이벤트에서 수행될 수 있는 제1 통신 작업(예를 들어 CIS 작업)에 대해 설정되는 높은 우선순위를 의미할 수 있다. 상기 제2 우선순위는 오디오 통신 링크(예를 들어 CIS 링크)의 적어도 하나의 제2 서브이벤트에서 수행될 수 있는 제2 통신 작업(예를 들어 CIS 작업)에 대해 설정되는 낮은 우선순위를 의미할 수 있다.
일 실시예에서 적어도 하나의 제1 서브이벤트는 하나의 CIS 이벤트 내에서 적어도 하나의 서브이벤트(예를 들어 적어도 하나의 앞부분 서브이벤트)를 포함할 수 있다. 일 실시예에서 적어도 하나의 제2 서브이벤트는 하나의 CIS 이벤트 내에서 제1 서브이벤트를 제외한 나머지 적어도 하나의 서브이벤트(예를 들어 적어도 하나의 뒷부분 서브이벤트)를 포함할 수 있다. 일 실시예에서 적어도 하나의 제1 서브이벤트와 적어도 하나의 제2 서브이벤트는 전체 서브이벤트들 중 지정된 비율에 따라 정해질 수 있다. 일 실시예에서 하나의 CIS 이벤트는 미리 정해지는 비율에 따라 제1 우선순위에 대응하는 제1 서브이벤트들과 제2 우선순위에 대응하는 제2 서브이벤트들로 분할될 수 있다. 일 실시예에서 하나의 CIS 이벤트는 미리 정해지는 최소 서브이벤트 개수에 따라 제1 우선순위에 대응하는 제1 서브이벤트들과, 제2 우선순위에 대응하는 나머지 제2 서브이벤트들로 분할될 수 있다.
일 실시예에서 상기 제1 우선순위는 BIS 링크의 하나의 BIS 이벤트에 포함되는 서브이벤트 그룹들 중 적어도 하나의 제1 서브이벤트 그룹(예를 들어 적어도 하나의 앞부분 서브이벤트 그룹)에서 수행될 수 있는 제1 통신 작업(예를 들어 BIS 작업)에 대해 설정되는 높은 우선순위를 의미할 수 있다. 일 실시예에서 상기 제2 우선순위는 하나의 BIS 이벤트에 포함되는 서브이벤트 그룹들 중 제1 서브이벤트 그룹을 제외한 나머지 적어도 하나의 제2 서브이벤트 그룹(예를 들어 적어도 하나의 뒷부분 서브이벤트 그룹)에서 수행될 수 있는 제2 통신 작업(예를 들어 BIS 작업)에 대해 설정되는 낮은 우선순위를 의미할 수 있다. 일 실시예에서 상기 제1 우선순위는 블루투스 동시성 동작에 대해 부여되는 우선순위 또는 Wi-Fi 공존 동작에 대해 부여되는 우선순위보다 높을 수 있다.
일 실시예에서 제1 우선순위는 오디오 통신과 동일한 주파수 채널에서 수행될 수 있는 적어도 하나의 다른 작업(이하 제3 작업이라 칭함)(예를 들어 블루투스 동시성 동작 또는 Wi-Fi 공존 동작)의 우선순위(예를 들어 제3 우선순위)보다 높도록 정해질 수 있고, 제2 우선순위는 상기 제3 작업의 제3 우선순위보다도 낮도록 정해질 수 있다.
일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 제1 우선순위를 가지는 제1 통신 작업(예를 들어 제2 자원에 스케줄되는 오디오 데이터 패킷의 전송)에 제2 자원(예를 들어 적어도 하나의 제1 서브이벤트)을 할당하고, 제2 우선순위를 가지는 제2 통신 작업(예를 들어 제3 자원에 스케줄되는 오디오 데이터 패킷의 전송)에 제3 자원(예를 들어 적어도 하나의 제2 서브이벤트)을 할당할 수 있다. 일 실시예에서 제1 통신 작업은 적어도 하나의 제1 서브이벤트를 사용하는 CIS 데이터 패킷(예를 들어 CIS 데이터 PDU(722))의 전송을 포함할 수 있다. 일 실시예에서 제2 통신 작업은 적어도 하나의 제2 서브이벤트를 사용하는 CIS 데이터 패킷(예를 들어 CIS 데이터 PDU(722))의 전송을 포함할 수 있다. 일 실시예에서 제1 통신 작업은 적어도 하나의 제1 서브이벤트 그룹을 사용하는 BIS 데이터 패킷의 전송을 포함할 수 있다. 일 실시예에서 제2 통신 작업은 적어도 하나의 제2 서브이벤트 그룹을 사용하는 BIS 데이터 패킷의 전송을 포함할 수 있다.
동작 1615에서 전자 장치(101)(예를 들어 프로세서(120))는 제2 자원 및 제3 자원을 포함하는 상기 오디오 통신 링크를 수립하고 상기 오디오 통신 링크의 상기 제2 자원 및/또는 제3 자원을 사용하여 오디오 서비스를 제공(예를 들어 오디오 데이터 패킷들을 전송)할 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 상기 제2 자원 및 가능한 경우 제3 자원을 사용하여 오디오 데이터 패킷들(예를 들어 CIS 데이터 패킷들)을 전송할 수 있다. 일 실시예에서 상기 오디오 통신 링크는 이미 수립되어 있고, 동작 1615에서 전자 장치(101)(예를 들어 프로세서(120))는 상기 오디오 통신 링크에 대해 상기 제2 자원 및/또는 제3 자원을 설정하거나 상기 제2 자원 및/또는 제3 자원을 포함하도록 상기 오디오 통신 링크의 자원 할당을 변경할 수 있다. 변경된 자원 할당에 대한 정보는 상기 오디오 통신 링크와 관련된 파라미터들(예를 들어 제어 데이터(800) 또는 BIG 정보(3800))를 통해 싱크 전자 장치들(예를 들어 제1 외부 전자 장치(202) 및/또는 제2 외부 전자 장치(204))로 제공될 수 있다.
일 실시예에서 상기 오디오 서비스를 제공하는 도중, 전자 장치(101)(예를 들어 프로세서(120))는 작업 큐(task queue)에 저장된 제3 작업(예를 들어 상기 오디오 통신 링크를 통한 오디오 통신이 아닌 다른 통신 작업)의 우선순위가 제2 우선순위보다 높지 않음을 식별한 경우, 제3 자원을 사용하여 오디오 데이터 패킷들을 전송할 수 있다.
일 실시예에서 상기 오디오 서비스를 제공하는 도중, 전자 장치(101)(예를 들어 프로세서(120))는 작업 큐에 저장된 제3 작업(예를 들어 상기 오디오 통신 링크를 통한 오디오 통신이 아닌 다른 통신 작업)의 우선순위가 제2 우선순위보다 높음을 식별한 경우, 제2 통신 작업을 생략하거나 연기하고, 제3 자원을 이용하여 제3 작업을 수행할 수 있다.
도 16b는 일 실시예에 따라 근거리 무선 통신을 통해 오디오 서비스를 제공하는 절차를 설명하기 위한 흐름도이다. 도시된 동작들 중 적어도 하나는 소스 전자 장치(예를 들어 전자 장치(101))의 프로세서(예를 들어 프로세서(120))에 의해 수행될 수 있다. 후술되는 동작들 중 적어도 하나는 다양한 실시예들에 따라 생략되거나 변경되거나 순서 변경될 수 있다. 일 실시예에서 동작 1620, 1625, 및 1630은 동작 1605, 1610, 및 1615와 동일하거나 유사할 수 있다.
도 16b를 참조하면, 동작 1620에서 전자 장치(101)(예를 들어 프로세서(120))는 오디오 통신 링크(예를 들어 제1 CIS 링크(506) 또는 제2 CIS 링크(508))에 대해 설정되는 하나의 시간 간격(예를 들어 ISO_Interval) 내에서 오디오 통신을 위해 사용 가능한 제1 자원(예를 들어 시간 구간의 길이, 또는 하나의 CIS 이벤트에 포함되는 서브이벤트들의 개수)을 결정할 수 있다.
동작 1625에서 전자 장치(101)(예를 들어 프로세서(120))는 상기 제1 자원을 서로 다른 우선순위들에 대응하는 적어도 2개의 자원들로 분할할 수 있다. 일 실시예에서 상기 적어도 2개의 자원들은 제2 자원 및 제3 자원을 적어도 포함할 수 있고, 전자 장치(101)(예를 들어 프로세서(120))는 상기 제1 자원 내에서 제1 우선순위를 위한 제2 자원 및 제2 우선순위를 위한 제3 자원을 결정할 수 있다. 일 실시예에서 상기 제1 우선순위는 CIS 링크의 적어도 하나의 제1 서브이벤트에서 수행될 수 있는 제1 통신 작업에 대해 설정되는 높은 우선순위를 의미할 수 있고, 상기 제2 우선순위는 CIS 링크의 적어도 하나의 제2 서브이벤트에서 수행될 수 있는 제2 통신 작업에 대해 설정되는 낮은 우선순위를 의미할 수 있다. 일 실시예에서 상기 제1 우선순위는 BIS 링크의 적어도 하나의 제1 서브이벤트 그룹에서 수행될 수 있는 제1 통신 작업에 대해 설정되는 높은 우선순위를 의미할 수 있고, 상기 제2 우선순위는 BIS 링크의 적어도 하나의 제2 서브이벤트 그룹에서 수행될 수 있는 제2 통신 작업에 대해 설정되는 낮은 우선순위를 의미할 수 있다.
일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 제1 우선순위를 가지는 제1 통신 작업(예를 들어 제2 자원에 스케줄되는 오디오 데이터 패킷의 전송)에 제2 자원(예를 들어 적어도 하나의 제1 서브이벤트)을 할당하고, 제2 우선순위를 가지는 제2 통신 작업(예를 들어 제3 자원에 스케줄되는 오디오 데이터 패킷의 전송)에 제3 자원(예를 들어 적어도 하나의 제2 서브이벤트)을 할당할 수 있다.
동작 1630에서 전자 장치(101)(예를 들어 프로세서(120))는 제2 자원 및/또는 제3 자원을 포함하는 상기 오디오 통신 링크를 수립하고 상기 오디오 통신 링크의 상기 제2 자원 및/또는 제3 자원을 사용하여 오디오 서비스를 제공(예를 들어 오디오 데이터 패킷들을 전송)할 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 상기 제2 자원 및 가능한 경우 제3 자원을 사용하여 오디오 데이터 패킷들을 전송할 수 있다. 일 실시예에서 상기 오디오 링크는 이미 수립되어 있고, 동작 1630에서 전자 장치(101)(예를 들어 프로세서(120))는 상기 오디오 통신 링크에 대해 상기 제2 자원 및/또는 제3 자원을 설정하거나, 상기 제2 자원 및/또는 제3 자원을 포함하도록 상기 오디오 통신 링크의 자원 할당을 변경할 수 있다. 변경된 자원 할당에 대한 정보는 상기 오디오 통신 링크와 관련된 파라미터들(예를 들어 제어 데이터(800) 또는 BIG 정보(3800))를 통해 싱크 전자 장치들(예를 들어 제1 외부 전자 장치(202) 및/또는 제2 외부 전자 장치(204))로 제공될 수 있다.
동작 1635에서 전자 장치(101)(예를 들어 프로세서(120))는 상기 오디오 통신 링크를 통한 오디오 통신과 동일한 주파수 대역에서 상기 오디오 통신 링크를 통한 오디오 통신이 아닌 다른 통신 작업(예를 들어 제3 작업)이 수행될 필요가 있는지 판단할 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 제3 작업이 스케줄되면 제3 작업을 통해 전송할 데이터를 작업 큐에 저장할 수 있다. 전자 장치(101)(예를 들어 프로세서(120))는 제3 자원을 사용하는 각 전송 기회(예를 들어 제3 시간 구간 내의 각 서브이벤트)에서 제3 작업이 작업 큐에 저장되어 있는지를 판단하고, 만일 제3 작업이 저장되어 있는 경우 제3 작업이 수행될 필요가 있는 것으로 판단할 수 있다.
일 실시예에서 제3 작업은 블루투스 동시성 동작이고 전자 장치(101)(예를 들어 프로세서(120))는 제3 작업이 스케줄되는지 여부를 판단할 수 있다. 일 실시예에서 제3 작업은 Wi-Fi 공존 동작이고 전자 장치(101)(예를 들어 프로세서(120))는 제3 작업이 스케줄되는지 여부를 판단할 수 있다. 제3 작업이 스케줄된 경우, 동작 1640으로 진행할 수 있다. 제3 작업이 스케줄되지 않은 경우 전자 장치(101)(예를 들어 프로세서(120))는 동작 1630으로 복귀하여 더 이상 전송할 오디오 데이터가 존재하지 않거나 오디오 서비스의 종료가 요청되기까지 오디오 통신 링크를 통한 오디오 서비스를 계속하여 제공할 수 있다.
동작 1640에서 전자 장치(101)(예를 들어 프로세서(120))는 상기 제3 작업의 우선순위를 식별하고 상기 제3 작업의 우선순위(예를 들어 제3 우선순위)가 제2 우선순위보다 높은 지를 판단할 수 있다. 예를 들어 제3 우선순위는 제1 우선순위보다 낮을 수 있다. 만일 제3 우선순위가 제2 우선순위보다 높으면 동작 1645로 진행하고, 그렇지 않으면 동작 1650으로 진행할 수 있다.
동작 1645에서 전자 장치(101)(예를 들어 프로세서(120))는 제2 통신 작업을 생략 또는 연기하고, 제3 자원을 사용하여 제3 작업을 수행할 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 적어도 하나의 제2 서브이벤트에서 오디오 데이터 패킷(들)을 전송하지 않고, 적어도 하나의 제2 서브이벤트에 대응하는 시간 구간 동안 제3 작업에 따른 블루투스 동시성 동작 또는 Wi-Fi 공존 동작을 수행할 수 있다. 일 실시예에서 적어도 하나의 제2 서브이벤트에 대응하는 CIS 데이터 패킷(들)의 전송은 생략되거나 또는 다음 CIS 이벤트에서 수행될 수 있다.
동작 1650에서 전자 장치(101)(예를 들어 프로세서(120))는 제3 자원을 이용하여 제2 통신 작업을 수행하고, 가능한 경우 제4 자원을 통해 제3 작업을 수행할 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 현재 ISO 간격에서 제2 자원 및 제3 자원에 대응하는 시간 구간을 제외한 나머지 시간 구간(예를 들어 도 18의 시간 구간(1820) 또는 도 24의 시간 구간(2418))이 존재하는 경우, 상기 나머지 시간 구간을 포함하는 제4 자원을 사용하여 제3 작업에 따른 블루투스 동시성 동작 또는 Wi-Fi 공존 동작을 수행할 수 있다. 만일 나머지 시간 구간이 존재하지 않는 경우 제3 작업은 생략되거나 또는 이후의 CIS 이벤트에 대응하는 시간 구간에서 수행될 수 있다.
도시하지 않을 것이나, 전자 장치(101)(예를 들어 프로세서(120))는 제2 자원에 대응하는 각 전송 기회(예를 들어 제2 시간 구간 내의 각 서브이벤트)에서도 제3 작업이 수행될 필요가 있는지를 판단할 수 있다. 만일 제3 작업이 제1 우선순위보다 높은 제3 우선순위를 가진다면, 전자 장치(101)(예를 들어 프로세서(120))는 제2 시간 구간에서 제1 통신 작업을 생략 또는 연기하고, 제3 작업을 수행할 수 있다.
도 17은 일 실시예에 따라 전자 장치에 의한 시간 구간들을 할당하는 예를 나타낸 타이밍도이다.
도 17을 참조하면, ISO_Interval x(1702)와 ISO_Interval x+1(1706)은 예를 들어 20ms (millisecond)의 길이를 가질 수 있고 적어도 하나의 CIS 이벤트를 포함할 수 있다. 예를 들어 ISO_Interval x(1702)는 CIS1(예를 들어 제1 CIS 링크(506))를 위한 CIS1 이벤트 x를 포함할 수 있고, ISO_Interval x+1(1706)은 CIS1(예를 들어 제1 CIS 링크(506))를 위한 CIS1 이벤트 x+1을 포함할 수 있다.
일 실시예에서 ISO_Interval x(1702) 내의 CIS1 이벤트 x에 대응하는 시간 구간(1704)은 동일 우선순위(예를 들어 CIS 작업에 대해 지정되는 제1 우선순위)를 가지는 서브이벤트들(예를 들어 NSE개의 서브이벤트들)을 포함할 수 있다. 전자 장치(101)는 시간 구간(1704)의 전체를 사용하여 CIS 통신(예를 들어 적어도 하나의 CIS 작업)을 수행할 수 있다. 일 실시예에서 시간 구간(1704) 내에 상기 제1 우선순위보다 더 높은 우선순위를 가지는 다른 작업이 발생(또는 스케줄)된 경우, 전자 장치(101)는 CIS 작업을 생략 또는 연기하고 상기 다른 작업을 수행할 수 있다.
일 실시예에서 전자 장치(101)는 ISO_Interval x+1(1706)에서 CIS1 이벤트 x+1을 위해 사용 가능한 제1 시간 구간(1708)을 적어도 2개의 시간 구간들(예를 들어 제2 시간 구간(1710)과 제3 시간 구간(1712))으로 분할하기로 결정할 수 있다. 제1 시간 구간(1708)은 CIS1 이벤트 x+1에 대해 지정된 NSE개의 서브이벤트들을 포함할 수 있다. 제2 시간 구간(1710)은 NSE개의 서브이벤트들 중 적어도 일부인 제1 서브이벤트들을 포함하고, 제1 우선순위를 할당받을 수 있다. 제3 시간 구간(1712)은 NSE개의 서브이벤트들 중 나머지 일부인 제2 서브이벤트들을 포함하고, 제1 우선순위보다 낮은 제2 우선순위를 할당받을 수 있다. 전자 장치(101)는 제3 시간 구간(1712)에서 제2 우선순위보다 더 높은 우선순위를 가지는 다른 작업이 스케줄됨을 감지하면, 제3 시간 구간(1712)에서 CIS 작업을 수행하지 않고 상기 다른 작업을 수행할 수 있다. 이러한 동작을 통해 전자 장치(101)는 CIS 통신이 수행되는 도중 제1 우선순위보다 낮지만 제2 우선순위보다 높은 우선순위를 가지는 다른 작업을 수행할 수 있다.
도시된 예에서는 2개의 시간 구간들(1710, 1712)을 도시하였으나, 제1 시간 구간(1708)이 2개보다 많은 시간 구간들로 분할되는 경우에도 본 개시의 실시예들이 적용될 수 있음은 물론이다.
도 18은 일 실시예에 따라 전자 장치가 시간 구간들을 할당하는 다른 예를 나타낸 타이밍도이다.
도 18을 참조하면, ISO_Interval(1802)은 예를 들어 20ms (millisecond)의 길이를 가질 수 있고, 적어도 하나의 CIG 이벤트(예를 들어 CIG 이벤트 x)를 포함할 수 있다. 예를 들어 전자 장치(101)는 다중 채널 오디오 서비스를 위해 하나 이상의 CIS 링크들을 포함하는 하나의 CIG 이벤트(예를 들어 CIG 이벤트 x)를 사용할 수 있다.
예를 들어 2채널 오디오 서비스를 위해 CIG 이벤트 x는 CIS1 (예를 들어 제1 CIS 링크(506))을 위한 CIS 이벤트(예를 들어 CIS1 이벤트 x)와 CIS2 (예를 들어 제2 CIS 링크(508))를 위한 CIS 이벤트(예를 들어 CIS2 이벤트 x)를 포함할 수 있다. 일 실시예에서 CIS1 이벤트 x와 CIS2 이벤트 x는 서로 간에 중첩되지 않고 인접할 수 있다. 도시하지 않을 것이나 다른 실시예에서 CIS1 이벤트 x와 CIS2 이벤트 x는 서로 간에 적어도 부분적으로 중첩될 수 있다.
일 실시예에서 전자 장치(101)는 CIS 통신을 위해 사용되는 주파수 대역의 최소 필수 동작(예를 들어 BLE 스캔이나 BLE 애드버타이징)을 제외하고, 제1 외부 전자 장치(202)와 제2 외부 전자 장치(204)에게 할당될 수 있는 자원의 양을 결정할 수 있다. 일 예로서 제1 시간 구간(1806)은 CIS1 이벤트 x를 위해 사용 가능한 자원의 양을 의미할 수 있다. NSE=10인 경우 ISO_Interval (1802) 내에서 CIS1 이벤트 x는 10개의 서브이벤트들을 포함할 수 있으며, 각 서브이벤트는 Sub_Interval 파라미터에 의해 정해지는 균일한 시간 간격(1810)을 가질 수 있다.
일 실시예에서 전자 장치(101)는 CIS1 이벤트 x에 대응하는 제1 시간 구간(1804)을 제1 우선순위(예를 들어 우선순위 값 '15'를 가짐)에 대응하는 하나 이상의 제1 서브이벤트들(예를 들어 6개)을 포함하는 제2 시간 구간(1806)과 제2 우선순위(예를 들어 우선순위 값 '7'을 가짐)에 대응하는 하나 이상의 제2 서브이벤트들(예를 들어 4개)을 포함하는 제3 시간 구간(1808)으로 분할(divide)할 수 있다. 일 실시예에서 제2 시간 구간(1806)은 5.304ms이고, 제3 시간 구간(1808)은 3.536ms일 수 있다.
일 실시예에서 CIS2 이벤트 x 또한 CIS1 이벤트 x와 유사하게 구성될 수 있다. 전자 장치(101)는 CIS2 이벤트 x에 대응하는 시간 구간(1812)을 제1 우선순위(예를 들어 우선순위 값 '15'를 가짐)에 대응하는 하나 이상의 제1 서브이벤트들(예를 들어 6개)을 포함하는 시간 구간(1814)과 제2 우선순위(예를 들어 우선순위 값 '7'을 가짐)에 대응하는 하나 이상의 제2 서브이벤트들(예를 들어 4개)을 포함하는 시간 구간(1816)으로 분할(divide)할 수 있다. 일 실시예에서 시간 구간(1814)의 길이는 5.304ms이고, 시간 구간(1816)의 길이는 3.536ms일 수 있다.
일 실시예에서 전자 장치(101)는 ISO_Interval(1802) 내에서 CIS 통신을 위해 사용 가능한 최대 자원인, CIG1 event x에 대응하는 시간 구간(예를 들어 시간 구간(1806) 및 시간 구간(1808)을 포함함)을 아래와 같이 계산할 수 있다. (예를 들어 데이터 전송 속도는 96 kbps임)
884㎲ × 10 × 2 = 17.680ms
상기 계산된 최대 자원 17.680ms는 ISO_Interval (1802)의 88.4%일 수 있다.
CIS1 이벤트 x와 CIS2 이벤트 x에 대응하는 제1 우선순위의 제2 자원(시간 구간(1806) 및 시간 구간(1814)을 포함함)은 ISO_Interval(1802) 중 53.04%의 시간 구간을 점유할 수 있다. 제2 우선순위의 제3 자원(시간 구간(1808) 및 시간 구간(1816)을 포함함)은 ISO_Interval(1802) 중 35.36%의 시간 구간을 점유할 수 있다.
일 실시예에서 제1 우선순위의 제2 자원에 해당하는 제2 시간 구간(1806)은 CIS 통신을 위해 우선적으로 사용될 수 있다. 일 실시예에서 전자 장치(101)는 제2 시간 구간(1806)에서 제1 CIS 작업(예를 들어 CIS 데이터 패킷의 초기 전송)을 수행할 수 있다. 일 실시예에서 제2 우선순위의 제3 자원에 해당하는 제3 시간 구간(1808)은 다른 작업(예를 들어 제3 작업)을 위해 사용될 수 있다. 일 실시예에서 전자 장치(101)는 제3 시간 구간(1808)에서 제3 작업이 발생된 경우(또는 스케줄된 경우), 제3 시간 구간(1808)에서 제3 작업을 수행할 수 있다. 일 실시예에서 전자 장치(101)는 제3 작업이 제2 우선순위보다 더 높은 우선순위(예를 들어 우선순위 값 '9')를 가지는 경우 제3 시간 구간(1808)에서 제3 작업을 수행하고, 그렇지 않은 경우 제3 작업을 수행하지 않을 수 있다. 제3 작업이 수행되지 않을 것으로 결정되고, 제3 시간 구간(1808)에서 수행할 필요가 있는 제2 CIS 작업(예를 들어 CIS 데이터 패킷의 전송 또는 재전송)이 존재하는 경우, 전자 장치(101)는 제3 시간 구간(1808)에서 제2 CIS 작업을 수행할 수 있다.
일 실시예에서 ISO 간격(1802)은 CIS1 이벤트 x에 대응하는 시간 구간(1804) 및 CIS2 이벤트 x에 대응하는 시간 구간(1812)을 제외한 나머지 시간 구간(1820)을 포함할 수 있고, 상기 나머지 시간 구간(1820)은 예를 들어 블루투스 동시성 동작 또는 Wi-Fi 동작을 위해 사용될 수 있다.
도 19는 일 실시예에 따라 2채널 오디오 서비스를 위한 절차를 설명하기 위한 흐름도이다. 도시된 동작들 중 적어도 하나는 소스 전자 장치(예를 들어 전자 장치(101))의 프로세서(예를 들어 프로세서(120))에 의해 수행될 수 있다. 후술되는 동작들 중 적어도 하나는 다양한 실시예들에 따라 생략되거나 변경되거나 순서 변경될 수 있다.
도 19를 참조하면, 전자 장치(101)(예를 들어 프로세서(120))는 임의의 외부 전자 장치를 찾기 위해 BLE 스캔(예를 들어 도 4의 동작 414)을 수행할 수 있다. 동작 1905에서 전자 장치(101)(예를 들어 프로세서(120))는 상기 BLE 스캔을 통해 제1 외부 전자 장치(예를 들어 제1 외부 전자 장치(202))로부터 애드버타이징 패킷(예를 들어 애드버타이징 패킷(412))을 수신하고, 제1 외부 전자 장치(202)와 제1 LE 통신 링크(예를 들어 제1 ACL 링크(502))를 생성(create)(또는 수립)할 수 있다. 동작 1910에서 전자 장치(101)(예를 들어 프로세서(120))는 상기 BLE 스캔을 통해 제2 외부 전자 장치(예를 들어 제2 외부 전자 장치(204))로부터 애드버타이징 패킷(예를 들어 애드버타이징 패킷(412))을 수신하고, 제2 외부 전자 장치(204)와 제2 LE 통신 링크(예를 들어 제2 ACL 링크(504))를 생성(또는 수립)할 수 있다.
일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 상기 수신된 애드버타이징 패킷(들)에 포함된 정보를 기반으로 제1 외부 전자 장치(202) 및/또는 제2 외부 전자 장치(204)와 관련된 사용자 인터페이스를 디스플레이(예를 들어 디스플레이 모듈(160))를 통해 출력할 수 있다.
도 20a, 도 20b, 및 도 20c는 일 실시예에 따라 전자 장치(101)에서 표시되는 사용자 인터페이스의 다양한 예들을 나타낸 것이다.
도 20a 및 도 20b를 참조하면, 전자 장치(101)는 외부 전자 장치(예를 들어 제1 외부 전자 장치(202) 및/또는 제2 외부 전자 장치(204))로부터 수신한 애드버타이징 패킷에 포함되어 있는 정보 및 설정된 조건에 기반하여 디스플레이 모듈(160)을 통해 사용자 인터페이스(2000 또는 2005)를 디스플레이할 수 있다. 일 실시예에서, 사용자 인터페이스(2000 또는 2005)는 장치 인식 정보를 포함하고, 장치 인식 정보는 전자 장치(101)가 외부 전자 장치를 인식한 결과에 상응하게 생성되는 정보일 수 있다. 예를 들어, 전자 장치(101)는 외부 전자 장치의 모델명(예를 들어 Galaxy Buds)을 장치 인식 정보로 생성할 수 있다. 일 실시예에서, 장치 인식 정보는 외부 전자 장치가 전자 장치(101)와 이전에 페어링된 적이 있는지 여부를 나타내거나, 전자 장치의 사용자 계정을 포함할 수 있다. 일 실시예에서 사용자 인터페이스(2005)는 외부 전자 장치와의 연결을 수락할지 여부를 입력받기 위한 입력 메뉴(예를 들어 "Dismiss" 및 "Connect")를 더 포함할 수 있다.
도 20c를 포함하면, 전자 장치(101)는 외부 전자 장치(예를 들어 제1 외부 전자 장치(202) 및/또는 제2 외부 전자 장치(204))로부터 수신된 애드버타이징 패킷에 기반하여 외부 전자 장치를 사용자에게 알리기 위한 사용자 인터페이스(2010)를 디스플레이 모듈(160)을 통해 출력할 수 있다. 사용자 인터페이스(2010)는 외부 전자 장치의 형태를 나타내는 이미지, 또는 외부 전자 장치의 이름을 나타내는 텍스트 중 적어도 하나를 포함할 수 있다. 일 실시예에서, 사용자 인터페이스(2010)는 외부 전자 장치의 배터리 잔량(예를 들어 51%)을 나타내는 이미지를 더 포함할 수 있다.
다시 도 19를 참조하면, 동작 1915에서 전자 장치(101)(예를 들어 프로세서(120))는 사용자의 의도(예를 들어 음악 플레이어의 재생) 또는 지정된 정책에 따라 제1 외부 전자 장치(202)와 제2 외부 전자 장치(204)에게 CIS 통신을 통한 오디오 서비스를 시작하기로 결정하고, 제1 외부 전자 장치(202)와의 제1 CIS 링크(예를 들어 제1 CIS 링크(506))와 제2 외부 전자 장치(204)와의 제2 CIS 링크(예를 들어 제2 CIS 링크(508))에 사용 가능한 제1 자원을 계산할 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 제1 외부 전자 장치(202)와 제2 외부 전자 장치(204)에게 CIS 통신을 통한 오디오 서비스를 제공하는 도중에 제1 CIS 링크(506) 또는 제2 CIS 링크(508) 중 적어도 하나에 대해 서로 다른 우선순위들(예를 들어 제1 우선순위 및 제2 우선순위)을 부여하기 위해 동작 1915를 수행할 수 있다.
일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 CIS 통신을 위해 사용되는 주파수 대역의 최소 필수 동작(예를 들어 BLE 스캔이나 BLE 애드버타이징과 같은 블루투스 동시성 동작)을 제외하고, 제1 외부 전자 장치(202)와 제2 외부 전자 장치(204)의 각각에게 할당할 수 있는 최대 자원의 양으로, 하나의 CIG 이벤트 내에서 하나의 CIS 이벤트에 대응하는 시간 구간을 의미하는 제1 시간 구간(예를 들어 제1 시간 구간(1804) 및/또는 제1 시간 구간(1812))을 상기 제1 자원으로 결정할 수 있다.
일 실시예에서 상기 제1 자원은 CIS 통신을 위해 사용 가능한 전체 자원(예를 들어 ISO 간격) 중 전자 장치(101)가 CIS 통신을 위해 사용할 것으로 결정한 최대 자원(예를 들어 ISO 간격의 60~100%)을 포함할 수 있다. 일 실시예에서 상기 제1 자원은 ISO 간격 중 다른 작업(예를 들어 블루투스 동시성 동작 또는 Wi-Fi 공존 동작)을 위해 지정된 시간 간격(예를 들어 20~40%)을 제외한 나머지 시간 구간으로 정해질 수 있다. 일 실시예에서 상기 제1 자원은 CIS 링크에 대해 설정되는 NSE와 SE 길이를 기반으로 계산될 수 있다. 일 실시예에서 상기 제1 자원은 CIS 링크에 대해 설정되는 NSE와 SE 길이를 고려하여 ISO 간격의 100%에 가깝게 결정될 수 있다.
동작 1920에서 전자 장치(101)(예를 들어 프로세서(120))는 제1 자원(예를 들어 제1 시간 구간(1804 또는 1812))을 적어도 두 개 이상의 자원들(예를 들어 제2 시간 구간(1806 및/또는 1814) 및 제3 시간 구간(1808 및/또는 1816))로 분할하고, 제2 자원(예를 들어 제2 시간 구간(1806 및/또는 1814))에 대해 제1 우선순위를 설정하고, 제3 자원(예를 들어 제3 시간 구간(1808 및/또는 1816))에 대해 보다 낮은 우선순위 값을 가지는 제2 우선순위를 설정할 수 있다. 예를 들어 제2 우선순위는 제1 우선순위보다 낮은 우선순위 값을 가질 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 제1 자원을 지정된 시간 비율에 따라 제2 자원과 제3 자원으로 분할할 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 제1 자원 중 지정된 최소 시간 구간에 대응하는 제2 자원을 결정하고, 나머지 시간 구간을 제3 자원으로 결정할 수 있다.
동작 1925에서 전자 장치(101)(예를 들어 프로세서(120))는 CIS 파라미터들(예를 들어 제어 데이터(800))에 포함되는 파라미터들을 가지고 제1 외부 전자 장치(202)와 제1 CIS 링크(506)를 생성하며, 제2 외부 전자 장치(204)와 제2 CIS 링크(508)를 생성할 수 있다. 일 실시예에서 동작 1915 및 동작 1920을 수행하기 이전에 제1 CIS 링크(506)와 제2 CIS 링크(508)가 이미 수립되어 있을 수 있으며, 전자 장치(101)(예를 들어 프로세서(120))는 동작 1925에서 이미 수립되어 있는 제1 CIS 링크(506)와 제2 CIS 링크(508)에 대해 제2 자원과 제3 자원을 적용할 수 있다.
동작 1930에서 전자 장치(101)(예를 들어 프로세서(120))는 제1 CIS 링크(506) 및 제2 CIS 링크(508)를 통해 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204)에게 오디오 서비스를 제공할 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 제1 CIS 링크(506)의 제2 시간 구간(1710)을 사용하여 제1 외부 전자 장치(202)에게 오디오 데이터를 전송할 수 있으며, 가능한 경우 추가적으로 제3 시간 구간(1712)을 사용하여 제1 외부 전자 장치(202)에게 오디오 데이터를 전송할 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 제2 CIS 링크(508)의 제2 시간 구간(1724)과 가능한 경우 추가적으로 제3 시간 구간(1726)을 사용하여 제2 외부 전자 장치(204)에게 오디오 데이터를 전송할 수 있다. 여기서 제3 시간 구간(1726)을 사용 가능한 경우는, 제3 시간 구간(1726)에서 스케줄된 CIS 작업의 전송할 데이터가 존재하고, 제3 시간 구간(1726)에 대응하는 제2 우선순위보다 높은 우선순위를 가지는 다른 작업이 존재하지 않는 경우를 의미할 수 있다.
동작 1935에서 전자 장치(101)(예를 들어 프로세서(120))는 상기 오디오 서비스를 제공하는 도중 CIS 통신과 동일한 주파수 대역에서 수행되어야 하는 다른 작업(예를 들어 제3 작업)이 발생하였음(예를 들어 제3 작업의 데이터가 작업 큐에 저장되어 있음)을 확인할 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 블루투스 동시성 동작(예를 들어 BLE 연결 유지, BLE 스캔 또는 BLE 애드버타이징 중 적어도 하나) 또는 Wi-Fi 공존 동작 중 적어도 하나를 포함하는 상기 제3 작업이 스케줄되었음을 식별할 수 있다. 다른 작업이 존재하지 않는 경우 전자 장치(101)(예를 들어 프로세서(120)는 동작 1930으로 복귀하여 더 이상 전송할 오디오 데이터가 존재하지 않거나 오디오 서비스의 종료가 요청되기까지 오디오 서비스를 계속하여 제공할 수 있다.
동작 1940에서 전자 장치(101)(예를 들어 프로세서(120))는 상기 제3 작업의 우선순위를 CIS 링크들을 통해 수행되기 위한 CIS 작업들의 우선순위들(예를 들어 제1 우선순위 및 제2 우선순위)과 비교할 수 있다. 동작 1945에서 전자 장치(101)(예를 들어 프로세서(120))는 보다 높은 우선순위를 가지는 작업을 우선적으로 수행할 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 상기 제3 작업의 우선순위가 제2 우선순위보다 높은 경우, 제3 자원을 통해 상기 제3 작업을 수행할 수 있다.
일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 제2 시간 구간(1710)의 한 서브이벤트(예를 들어 제1 서브이벤트)에서 전송할 CIS 데이터 패킷(예를 들어 제1 CIS 데이터 패킷)이 존재하는지(예를 들어 작업 큐에 저장되어 있는지) 판단하고, 만일 전송할 제1 CIS 데이터 패킷이 존재하면 제2 시간 구간(1710)에 대해 지정된 제1 우선순위보다 높은 우선순위를 가지는 다른 작업(예를 들어 제3 작업)이 존재하는지(예를 들어 제3 작업의 전송할 데이터가 작업 큐에 저장되어 있는지) 판단할 수 있다. 상기 제3 작업이 제1 우선순위보다 높은 우선순위를 가지지 않는 경우 전자 장치(101)(예를 들어 프로세서(120))는 제2 시간 구간(1710)의 상기 제1 서브이벤트에서 상기 제1 CIS 데이터 패킷을 전송할 수 있다.
반면 상기 제3 작업이 제1 우선순위보다 높은 우선순위를 가지는 경우 전자 장치(101)(예를 들어 프로세서(120))는 제2 시간 구간(1710)의 상기 제1 서브이벤트에서 상기 제1 CIS 데이터 패킷의 전송을 생략하고, 상기 제1 서브이벤트에 대응하는 시간 구간에서 상기 제3 작업의 데이터를 전송할 수 있다. 일 실시예에서 제2 시간 구간(1710)에 대응하는 제1 우선순위는 전자 장치(101)에서 수행될 수 있는 통신 작업들 중 비교적 높은 우선순위 값(예를 들어 <표 2>의 '15')을 가질 수 있으며, 따라서 전자 장치(101)(예를 들어 프로세서(120))는 제2 시간 구간(1710)에서의 CIS 통신을 가급적 보장할 수 있다. 예를 들어 제3 작업이 ACL 백오프 작업이고 제1 우선순위보다 높은 우선순위 값(예를 들어 <표 2>의 '16')을 가지는 경우, 전자 장치(101)(예를 들어 프로세서(120))는 제2 시간 구간(1710)에서 CIS 전송을 수행하지 않고 ACL 백오프 작업을 수행할 수 있다.
일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 제3 시간 구간(1712)의 한 서브이벤트(예를 들어 제2 서브이벤트)에서 전송할 CIS 데이터 패킷(예를 들어 제2 CIS 데이터 패킷)이 존재하는지(예를 들어 작업 큐에 저장되어 있는지) 판단하고, 만일 전송할 제2 CIS 데이터 패킷이 존재하면 제3 시간 구간(1712)에 대해 지정된 제2 우선순위보다 높은 우선순위를 가지는 다른 작업(예를 들어 제3 작업)이 존재하는지(예를 들어 제3 작업의 전송할 데이터가 작업 큐에 저장되어 있는지) 판단할 수 있다. 상기 제3 작업이 제2 우선순위보다 높은 우선순위를 가지지 않는 경우 전자 장치(101)(예를 들어 프로세서(120))는 제3 시간 구간(1712)의 상기 제2 서브이벤트에서 상기 제2 CIS 데이터 패킷을 전송할 수 있다.
반면 상기 제3 작업이 제2 우선순위보다 높은 우선순위를 가지는 경우 전자 장치(101)(예를 들어 프로세서(120))는 제3 시간 구간(1712)의 상기 제2 서브이벤트에서 상기 제2 CIS 데이터 패킷의 전송을 생략하고, 상기 제2 서브이벤트에 대응하는 시간 구간에서 상기 제3 작업의 데이터를 전송할 수 있다. 일 실시예에서 제3 시간 구간(1712)에 대응하는 제2 우선순위는 블루투스 동시성 동작 또는 Wi-Fi 동작보다 낮은 우선순위 값(예를 들어 <표 2>의 '7')을 가질 수 있으며, 따라서 전자 장치(101)(예를 들어 프로세서(120))는 제3 시간 구간(1712)을 이용하여 블루투스 동시성 동작 또는 Wi-Fi 동작과 같은 다른 작업을 수행할 수 있다. 일 실시예에서 상기 제3 작업이 제2 우선순위와 동일한 우선순위를 가지는 경우, 전자 장치(101)(예를 들어 프로세서(120))는 상기 제3 작업과 상기 제2 CIS 데이터 패킷의 전송 중, 먼저 스케줄된 작업(예를 들어 태스크 큐에 먼저 저장된 작업)을 제3 시간 구간(1712)에서 수행할 것으로 결정할 수 있다.
동작 1950에서 전자 장치(101)(예를 들어 프로세서(120))는 상기 오디오 서비스를 제공하는 도중 지정된 규칙 또는 지정된 정책에 따라 제1 CIS 링크(506) 및 제2 CIS 링크(508)를 통해 수행되는 CIS 작업의 우선순위(예를 들어 제1 우선순위 및/또는 제2 우선순위)의 변경이 필요한지를 판단할 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 CIS 정책, 시간의 흐름, 통신 상태, 또는 스케줄링 상황 중 적어도 하나를 고려하여 CIS 작업의 우선순위(예를 들어 제1 우선순위 및/또는 제2 우선순위)를 변경할 것인지의 여부를 판단할 수 있다. 예를 들어 통신 상태는 제1 CIS 링크(506) 및 제2 CIS 링크(508)의 무선 환경, 전송 큐의 저장량 또는 재전송 횟수 중 적어도 하나와 관련될 수 있다. 예를 들어 스케줄링 상황은 CIS 데이터 패킷들의 발생 비율, 블루투스 동시성 동작을 위한 패킷의 발생 빈도, 또는 Wi-Fi 공존 동작을 위한 데이터 트래픽의 비율 중 적어도 하나를 포함할 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 매 서브이벤트의 시작시마다 또는 지정된 개수의 서브이벤트들이 시작되는 시점마다 동작 1950을 실행할 수 있다. 일 실시예에서 동작 1950은 제2 우선순위 및/또는 제2 우선순위를 적용할 시간 구간(예를 들어 제1 시간 구간 및/또는 제2 시간 구간)을 변경하는 동작을 포함할 수 있다.
일 실시예에서 동작 1950의 결과 우선순위 변경이 필요한 것으로 판단되는 경우, 동작 1955에서 전자 장치(101)(예를 들어 프로세서(120))는 제1 우선순위 및/또는 제2 우선순위의 값을 더 높은 값 혹은 더 낮은 값으로 변경할 수 있다. 이후 전자 장치(101)(예를 들어 프로세서(120))는 동작 1930으로 복귀하여 상기 변경된 제1 우선순위 및/또는 제2 우선순위에 따라 오디오 서비스를 계속하여 제공할 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 프로세서(120))는 제1 우선순위 및/또는 제2 우선순위의 변경된 값에 대한 정보를 제1 외부 전자 장치(202) 및/또는 제2 외부 전자 장치(204)에게 제공할 수 있다.
일 실시예에서 동작 1950의 결과 우선순위 변경이 필요하지 않은 경우 전자 장치(101)(예를 들어 프로세서(120)는 동작 1930으로 복귀하여 더 이상 전송할 오디오 데이터가 존재하지 않거나 오디오 서비스의 종료가 요청되기까지 오디오 서비스를 계속하여 제공할 수 있다.
일 실시예에서 제1 외부 전자 장치(202)는 전자 장치(101)가 제1 외부 전자 장치(202)를 발견할 수 있도록 애드버타이징 패킷을 전송할 수 있다. 전자 장치(101)가 제1 외부 전자 장치(202)의 애드버타이징 패킷을 수신한 경우, 제1 외부 전자 장치(202)는 전자 장치(101)의 요청(예를 들어 스캔 요청 메시지(416))에 따라 전자 장치(101)와 제1 LE 통신 링크(예를 들어 제1 ACL 링크(502))를 생성할 수 있다. 제1 외부 전자 장치(202)는 전자 장치(101)가 할당하는 CIS 파라미터들(예를 들어 제어 데이터(800))로 정의되는 제1 CIS 링크(예를 들어 제1 CIS 링크(506))를 전자 장치(101)와 연결하고, 제1 CIS 링크(506)를 통해 전자 장치(101)로부터 오디오 서비스를 제공받을 수 있다. 일 실시예에서 제2 외부 전자 장치(204)는 제1 외부 전자 장치(202)와 유사한 방식으로 전자 장치(101)와 제2 CIS 링크(508)를 연결하고, 전자 장치(101)로부터 오디오 서비스를 제공받을 수 있다.
도 21은 일 실시예에 따라 전자 장치가 LE 통신 링크를 생성하는 절차를 설명하기 위한 도면이다.
도 21을 참조하면, 외부 전자 장치(예를 들어 제1 외부 전자 장치(202))는 프라이머리 애드버타이징 채널을 통해 광고 데이터를 포함하는 광고 패킷(2102)(예를 들어 ADV_EXT_IND)을 전송하고, 세컨더리 애드버타이징 채널을 통해 확장된 광고 데이터를 포함하는 보조 광고 패킷(2104)(예를 들어 AUX_ADV_IND)을 전송할 수 있다. 제1 외부 전자 장치(202)는 세컨더리 애드버타이징 채널을 통해 전자 장치(101)로부터 연결 요청 패킷(2106)(예를 들어 AUX_CONNECT_REQ)을 수신하고, 전자 장치(101)에게 연결 응답 패킷(2108)(예를 들어 AUX_CONNECT_RSP)을 전송할 수 있다.
연결 응답 패킷(2108)을 전송한 이후, 제1 외부 전자 장치(202)는 제1 LE 통신 링크(예를 들어 제1 ACL 링크(502))를 통해 전자 장치(101)로부터 버전 정보를 포함하는 버전 지시 패킷(2110)(예를 들어 LL_VERSION_IND)을 수신하고, 전자 장치(101)에게 자신의 버전 정보를 포함하는 버전 지시 패킷(2112)을 전송할 수 있다. 전자 장치(101)와 제1 외부 전자 장치(202)는 도 21의 패킷들을 교환함으로써 제1 LE 통신 링크를 생성하고, 제1 LE 통신 링크를 통해 데이터를 송수신할 수 있다.
도 22는 일 실시예에 따라 전자 장치가 복수의 LE 통신 링크들을 통해 통신하는 절차를 설명하기 위한 도면이다.
도 22를 참조하면, 전자 장치(101)는 예를 들어 도 20과 같이 제1 외부 전자 장치(202)와의 제1 LE 통신 링크(예를 들어 제1 ACL 링크(502))를 생성하여 유지하면서, 제2 외부 전자 장치(204)와의 제2 LE 통신 링크(예를 들어 제2 ACL 링크(504))를 생성할 수 있다. 일 실시예에서 전자 장치(101)는 매 연결 간격(예를 들어 연결 간격(2202) 또는 연결 간격(2204)) 동안 제1 외부 전자 장치(202)로 제1 ACL 링크를 통해 데이터 패킷을 전송할 수 있다. 일 실시예에서 전자 장치(101)는 매 연결 간격(예를 들어 연결 간격(2206) 또는 연결 간격(2208)) 동안 제2 외부 전자 장치(204)로 제2 ACL 링크를 통해 데이터 패킷을 전송할 수 있다. 예를 들어 연결 간격(2202) 또는 연결 간격(2204)은 제1 외부 전자 장치(202)를 위한 적어도 하나의 전송 기회를 포함할 수 있고, 및 연결 간격(2206) 또는 연결 간격(2208)은 제2 외부 전자 장치(204)를 위한 적어도 하나의 전송 기회를 포함할 수 있다.
도 23은 일 실시예에 따라 미디어 서비스를 위한 자원을 결정하는 동작을 설명하기 위한 도면이다. 여기에서는 일 예로서 1채널 미디어 타입의 오디오 서비스를 예시하였다.
도 23을 참조하면, 전자 장치(101)는 오디오 서비스의 수행을 위한 CIS 링크(예를 들어 제1 CIS 링크(506))를 유지할 수 있고, ISO 간격(2302) 내에서 제1 CIS 링크(506)를 위해 사용 가능한 제1 자원에 대응하는 제1 시간 구간(2304)을 계산할 수 있다. 일 실시예에서 제1 시간 구간(2304)은 제1 CIS 링크(506)를 위해 사용 가능한 최대 자원을 포함할 수 있다.
일 실시예에서 전자 장치(101)는 전자 장치(101)와 외부 전자 장치(예를 들어 제1 외부 전자 장치(202))를 위한 서비스 종류(예: 음악 재생), 통신 상태, 또는 스케줄링 중 적어도 하나에 따라 제1 시간 구간(2304)을 결정할 수 있다. 일 예로서 전자 장치(101)는 적어도 하나의 CIS 파라미터(예를 들어 CIS 카운트, ISO 간격, FT, BN, SE 길이, 또는 NSE 중 적어도 하나)를 고려하여 제1 시간 구간(2304)을 계산할 수 있다. 일 예로서 전자 장치(101)는 제1 시간 구간(2304)에 포함될 서브이벤트들의 개수(예를 들어 6개)를 결정할 수 있다.
일 예로서 전자 장치(101)에 하나의 외부 전자 장치(예를 들어 제1 외부 전자 장치(202))가 연결된 상태에서 사용자가 음악 재생을 요구하는 경우, 전자 장치(101)는 96kbps의 전송 속도 및 최대 레이턴시 100ms를 제공하는 미디어 타입의 오디오 서비스를 위한 CIS 파라미터들을 설정할 수 있다. 예를 들어, CIS 파라미터들은 ISO 간격 = 20ms, BN = 2, FT = 5, SE 길이 = 884㎲, 및 NSE = 6을 포함할 수 있다. 상기 CIS 파라미터들에 근거하여 CIS 통신을 위해 사용 가능한 최대 자원은 NSE × SE 길이 / ISO 간격으로 계산될 수 있다. 일 예로서 제1 외부 전자 장치(202)와의 CIS 통신을 위해 필요한 최대 자원에 해당하는 제1 시간 구간(2304)은 884㎲ × 6 / 20ms = 5.304ms이고, 이는 ISO 간격(2302)의 26.52%이다. 제1 시간 구간(2304)은 각각 884㎲의 길이를 가지는 6개의 서브이벤트들을 포함할 수 있다.
일 실시예에서 전자 장치(101)는 제1 시간 구간(2304) 내에서 처음 2개의 서브이벤트들을 포함하는 제2 시간 구간(2306)을 제1 우선순위에 해당하는 제2 자원으로 결정할 수 있다. 나머지 4개의 서브이벤트들에 해당하는 제3 시간 구간(2308)은 제1 우선순위보다 낮은 제2 우선순위에 해당하는 제3 자원으로 결정될 수 있다. 일 예로서 전자 장치(101)는 지정된 규칙(예를 들어 CIS 이벤트에 대한 시간 비율), CIS 링크의 통신 상태, 또는 스케줄링 상황 중 적어도 하나를 고려하여 제2 시간 구간(2306) 및/또는 제3 시간 구간(2308)을 결정할 수 있다. 예를 들어 통신 상태는 제1 CIS 링크(506) 및 제2 CIS 링크(508)의 재전송 횟수와 관련될 수 있다. 예를 들어 스케줄링 상황은 CIS 데이터 패킷들의 발생 비율, 블루투스 동시성 동작을 위한 패킷의 발생 빈도, 또는 Wi-Fi 공존 동작을 위한 데이터 트래픽의 비율 중 적어도 하나를 포함할 수 있다.
일 실시예에서 전자 장치(101)는 제2 시간 구간(2306) 내에서 첫번째 서브이벤트 및 두번째 서브이벤트를 사용하여 CIS 데이터 패킷들을 전송할 수 있다. 제3 시간 구간(2308)(예를 들어 세번째 서브이벤트)에서 전자 장치(101)는 CIS 통신과 동일한 주파수 대역에서 이루어지는 다른 작업(예를 들어 블루투스 동시성 동작 또는 Wi-Fi 공존 동작 중 적어도 하나)가 수행될 필요가 있는지를 판단할 수 있다. 상기 다른 작업이 필요한 경우 전자 장치(101)는 제3 시간 구간(2308)에서 상기 다른 작업을 수행할 수 있다. 이때 제3 시간 구간(2308)에 포함되는 세번째 이후의 서브이벤트들은 CIS 통신을 위하여 사용되지 않을 수 있다.
도 24는 일 실시예에 따라 대화형(conversational) 서비스를 위한 자원을 결정하는 동작을 설명하기 위한 도면이다. 여기에서는 일 예로서 2채널 대화형 서비스를 예시하였다.
도 24를 참조하면, 전자 장치(101)는 두 개의 외부 전자 장치들(예를 들어 제1 외부 전자 장치(202) 및 제2 외부 전자 장치(204))와 2채널용 CIS 링크들을 각각 연결하고 음성 통화를 수행할 수 있다. 예를 들어 상기 CIS 링크들은 제1 채널(CH1)(예를 들어 레프트 채널)을 위한 제1 CIS 링크(506) 및 제2 채널(CH2)(예를 들어 라이트 채널)을 위한 제2 CIS 링크(508)를 포함할 수 있다.
일 실시예에서 전자 장치(101)는 양방향 32kbps 및 최대 레이턴시 10ms를 제공하는 대화형 타입의 오디오 서비스를 위한 CIS 파라미터들을 결정할 수 있다. 예를 들어 CIS 파라미터들은 ISO 간격 = 10ms, BN = 1, FT = 1, SE 길이 = 740㎲, 및 NSE = 3을 포함할 수 있다. 상기 CIS 파라미터들에 근거하면 2개의 CIS 링크들(506, 508)을 위해 사용 가능한 제1 자원에 해당하는 시간 구간(2404)은 740㎲ × 3 × 2 / 10ms = 4.44ms이고, 이는 ISO 간격(2402)의 44.4%이다. 일 예로서 시간 구간(2404)은 각각 740㎲의 길이를 가지는 6개의 서브이벤트들을 포함할 수 있다.
시간 구간(2404)은 제1 채널을 위한 서브이벤트들(예를 들어 3개)을 포함하는 시간 구간(2406)과 제2 채널을 위한 서브이벤트들(예를 들어 3개)을 포함하는 시간 구간(2408)으로 구성될 수 있다. 시간 구간(2406)은 제1 채널을 위한 제1 CIS 링크(506)에 해당하는 제1 시간 구간이 되고, 시간 구간(2408)은 제2 채널을 위한 제2 CIS 링크(508)에 해당하는 제1 시간 구간이 될 수 있다.
일 실시예에서 전자 장치(101)는 시간 구간(2406) 내의 첫번째 서브이벤트에 대응하는 제2 시간 구간(2410)을 제1 우선순위에 해당하는 제2 자원으로 결정하고, 나머지 2개의 서브이벤트들에 해당하는 제3 시간 구간(2412)을 제2 우선순위에 해당하는 제3 자원으로 결정할 수 있다. 제3 시간 구간(2412)은 제1 CIS 링크(506)를 위한 두번째 및 세번째 서브이벤트들을 포함할 수 있다.
일 실시예에서 전자 장치(101)는 제2 시간 구간(2410)에 해당하는 제1 CIS 링크(506)의 첫번째 서브이벤트를 사용하여 제1 외부 전자 장치(202)로 제1 채널의 CIS 데이터 패킷을 전송할 수 있다. 제3 시간 구간(2412)(예를 들어 제1 CIS 링크(506)의 두번째 서브이벤트 및 세번째 서브이벤트)에서 전자 장치(101)는 CIS 통신과 동일한 주파수 대역에서 이루어지는 다른 작업(예를 들어 블루투스 동시성 동작 또는 Wi-Fi 공존 동작 중 적어도 하나)가 수행될 필요가 있는지를 판단할 수 있다. 상기 다른 작업이 필요한 경우 전자 장치(101)는 제3 시간 구간(2412)에서 상기 다른 작업을 수행할 수 있다. 이때 제3 시간 구간(2412)에 포함되는 서브이벤트들은 CIS 통신을 위하여 사용되지 않을 수 있다.
일 실시예에서 전자 장치(101)는 라이트 시간 구간(2408) 내의 첫번째 서브이벤트에 대응하는 제2 시간 구간(2414)을 제1 우선순위에 해당하는 제2 자원으로 결정하고, 나머지 2개의 서브이벤트들에 해당하는 제3 시간 구간(2416)을 제2 우선순위에 해당하는 제3 자원으로 결정할 수 있다. 제3 시간 구간(2416)은 제2 CIS 링크(508)를 위한 두번째 및 세번째 서브이벤트들을 포함할 수 있다. 시간 구간(2408)에서 전자 장치(101)의 동작에 대한 설명은 시간 구간(2406)에서와 유사할 수 있다.
일 실시예에서 전자 장치는 CIS 통신을 위해 사용 가능한 제1 자원(예를 들어 제1 시간 구간(2406)) 중 일정 비율 또는 일정 길이로 정해질 수 있는 제2 자원(예를 들어 제2 시간 구간(2410))을 제외하고, 제2 우선순위를 위한 제3 자원(예를 들어 제3 시간 구간(2412))을 사용하여 블루투스 동시성 동작 또는 Wi-Fi 공존 동작을 수행할 수 있다. 일 예로서 블루투스 동시성 동작은 블루투스 인쿼리, 블루투스 인쿼리 스캔, 블루투스 페이징, 블루투스 페이지 스캔, BLE 스캔, BLE 애드버타이징, 블루투스 연결 유지, BLE 연결 유지, 또는 채널 스캔 중 적어도 하나를 포함할 수 있다. Wi-Fi 공존 동작은 CIS 통신과 동일한 주파수 대역에서 이루어지는 Wi-Fi 데이터 전송을 포함할 수 있다.
일 실시예에서 ISO 간격(2402)은 시간 구간(2404)을 제외한 나머지 시간 구간(2418)을 포함할 수 있다. 나머지 시간 구간(2418)이 0이 아닌 경우 블루투스 동시성 동작 또는 Wi-Fi 공존 동작 중 적어도 하나를 위하여 사용될 수 있다. 일 실시예에서 나머지 시간 구간(2418)이 아닌 제3 시간 구간(예를 들어 시간 구간(2412) 및 시간 구간(2416))에서 블루투스 동시성 동작 또는 Wi-Fi 공존 동작이 수행될 수 있기 때문에, 전자 장치(101)(예를 들어 프로세서(120))는 ISO 간격(2402) 내에서 시간 구간(2404)을 최대로 할당할 수 있으며, 이에 따라 나머지 시간 구간(2418)은 최소화될 수 있다.
일 실시예에서 전자 장치(101)는 CIS 통신 도중 스케줄링되는 다른 작업을 처리하기 위하여 제1 자원에 해당하는 시간 구간(예를 들어 시간 구간(2410 및 2414))을 최대한 큰 값으로 결정할 수 있다. <표 1>은 양방향 모드의 CIS 통신(예를 들어 하나 이상의 CIS 링크들을 포함함)을 위해 필요한 최대 자원의 일 예를 나타낸 것이다.
Mode | SE length | NSE | Reserved resource | NSE | Reserved resource |
116↔96 | 1480 | 3 | 8730 (87.3%) | 2 | 5770 (57.5%) |
116↔64 | 1320 | 3 | 7770 (77.7%) | 2 | 5130 (51.3%) |
116↔32 | 1160 | 3 | 6810 (68.1%) | 2 | 4490 (44.9%) |
96↔96 | 1380 | 3 | 8130 (81.3%) | 2 | 5370 (53.7%) |
96↔64 | 1220 | 3 | 7170 (71.7%) | 2 | 4730 (47.3%) |
96↔32 | 1060 | 3 | 6210 (62.1%) | 2 | 4090 (40.9%) |
64↔96 | 1220 | 3 | 7170 (71.7%) | 2 | 4730 (47.3%) |
64↔64 | 1060 | 3 | 6210 (62.1%) | 2 | 4090 (40.9%) |
64↔32 | 900 | 3 | 5250 (52.5%) | 2 | 3450 (34.5%) |
32↔96 | 1060 | 3 | 6210 (62.1%) | 2 | 4090 (40.9%) |
32↔64 | 900 | 3 | 5250 (52.5%) | 2 | 3450 (34.5%) |
32↔32 | 740 | 3 | 4290 (42.9%) | 2 | 2810 (28.1%) |
<표 1>에서 모드는 116kbps, 96kbps, 64kbps, 또는 32kbps 중 어느 하나의 송신 속도와 96kbps, 64kbps, 또는 32kbps 중 어느 하나의 수신 속도를 사용하는 CIS 통신을 의미할 수 있다. 각 모드에서 SE 길이는 송신 속도에 대응하는 패킷 송신 구간(Tx packet duration)과 수신 속도에 대응하는 패킷 수신 구간(Rx packet duration) 및 예비 구간(reserved duration)(예를 들어 300㎲)에 근거하여 계산될 수 있다.
일 예로서 116kbps의 송신 속도에 대해 패킷 송신 구간은 640㎲일 수 있고, 96kbps의 송신 속도에 대해 패킷 송신 구간은 540㎲일 수 있고, 64kbps의 송신 속도에 대해 패킷 송신 구간은 380㎲일 수 있고, 32kbps의 송신 속도에 대해 패킷 송신 구간은 220㎲일 수 있다. 일 예로서 96kbps의 수신 속도에 대해 패킷 수신 구간은 540㎲일 수 있고, 64kbps의 수신 속도에 대해 패킷 수신 구간은 380㎲일 수 있고, 32kbps의 수신 속도에 대해 패킷 수신 구간은 220㎲일 수 있다.
일 예로 220㎲의 패킷 송신 구간과 220㎲의 패킷 수신 구간에 대응하는 SE 길이는 740㎲일 수 있고, NSE=3에 대해 CIS 통신을 위해 필요한 최대 자원은 4290㎲ (42.9%)에 해당할 수 있다.
도 25는 일 실시예에 따른 최대 자원 할당의 일 예를 나타내는 도면이다.
도 25를 참조하면, CIS 통신을 위한 ISO 간격(2502)의 길이는 10ms이고, ISO 간격(2502) 내에서 CIS 통신을 위해 사용할 수 있는 최대 자원에 해당하는 시간 구간(2504)은 예를 들어 NSE, SE 길이 및 CIS 카운트에 근거하여 8.88ms (즉 88.8%)로 정해질 수 있다. 시간 구간(2504)은 제1 채널(CH1)(예를 들어 레프트 채널)의 제1 CIS 링크(506)를 위한 서브이벤트들(예를 들어 6개)을 포함하는 시간 구간(2506)(=4.44ms)과, 제2 채널(CH2)(예를 들어 라이트 채널)의 제2 CIS 링크(508)를 위한 서브이벤트들(예를 들어 6개)을 포함하는 시간 구간(2508)(=4.44ms)을 포함할 수 있다. 각 서브이벤트는 한번의 전송 및 한번의 수신을 포함할 수 있으며, 예를 들어 740㎲의 길이를 가질 수 있다.
전자 장치(101)는 시간 구간(2506) 내의 첫번째 서브이벤트에 대응하는 제2 시간 구간(2510)을 제1 우선순위에 해당하는 제2 자원으로 결정하고, 나머지 서브이벤트들에 대응하는 제3 시간 구간(2512)을 제2 우선순위에 해당하는 제3 자원으로 결정할 수 있다. 일 실시예에서 제2 시간 구간(2510)에서 데이터 전송에 성공하지 못한 경우 전자 장치(101)는 제3 시간 구간(2512)의 서브이벤트들을 데이터의 재전송(retransmission: RT)을 위해 사용할 수 있다고 판단할 수 있다.
일 실시예에서 전자 장치(101)는 오디오 서비스를 시작하기 이전 또는 오디오 서비스를 제공하는 도중에, CIS 통신을 위한 최대 자원으로 정해지는 시간 구간(2504) 중에서 작업 별 우선순위들에 따라 CIS 통신을 위해 필수적으로 사용할 수 있는 시간 구간(예를 들어 제2 시간 구간(2510))을 결정할 수 있다. 일 실시예에서 제2 시간 구간(2510)은 시간 구간(2506)에 대해 지정된 길이 또는 시간 비율에 따라 정해질 수 있다.
시간 구간(2508)에 대한 전자 장치(101)의 동작에 대한 설명은 시간 구간(2506)과 유사할 수 있다.
일 실시예에서 작업 별 우선순위들은 CIS 통신을 위한 제1 우선순위 및 제2 우선순위를 포함할 수 있고, 제1 우선순위는 제2 우선순위에 비해 높은 우선순위 값을 가질 수 있다. 일 실시예에서 상기 우선순위들(예를 들어 제1 우선순위 및 제2 우선순위)은 무선 환경 또는 전자 장치(101)의 스케줄링 상황에 따라 변경될 수 있다.
도 26은 일 실시예에 따른 CIS 통신을 위한 자원 분할의 일 예를 나타내는 도면이다.
도 26을 참조하면, 전자 장치(101)는 CIS 통신을 위한 최대 자원에 해당하는 시간 구간(2604)을 ISO 간격(2602)의 88.8%로 할당할 수 있다. 시간 구간(2604)은 제1 채널(CH1)(예를 들어 레프트 채널)을 위한 시간 구간(2606)(=44.4%)과 제2 채널(CH2)(예를 들어 라이트 채널)을 위한 시간 구간(2608)(=44.4%)으로 분할될 수 있다. 일 예로서 시간 구간(2606)과 시간 구간(2608)은 각각 6개의 서브이벤트들을 포함할 수 있다.
일 실시예에서 전자 장치(101)는 지정된 시간 비율(예를 들어 50%)에 따라, 시간 구간(2604) 중 제1 우선순위에 대응하는 시간 구간(예를 들어 시간 구간(2612) 및/또는 시간 구간(2616))을 결정할 수 있다. 예를 들어 제1 CIS 링크(506)에 대해 전자 장치(101)는 시간 구간(2606)의 절반(=22.2%)인 제2 시간 구간(2612)을 제1 우선순위로 할당하며, 나머지 절반(=22.2%)인 제3 시간 구간(2614)을 제1 우선순위보다 낮은 제2 우선순위로 할당할 수 있다. 예를 들어 제2 CIS 링크(506)에 대해 전자 장치(101)는 시간 구간(2608)의 절반(=22.2%)인 제2 시간 구간(2616)을 제1 우선순위로 할당하며, 나머지 절반(=22.2%)인 제3 시간 구간(2618)을 제1 우선순위보다 낮은 제2 우선순위로 할당할 수 있다.
도시된 예에서 CIS 통신을 위해 보장되는 제2 시간 구간(2612) 및 제3 시간 구간(2616)은 각각 3개의 서브이벤트들을 포함할 수 있다. 예를 들어 제2 시간 구간(2612)은 시간 구간(2606)의 앞부분 3개의 서브이벤트들을 포함하고, 제3 시간 구간(2616)은 시간 구간(2608)의 앞부분 3개의 서브이벤트들을 포함할 수 있다. 예를 들어 전자 장치(101)는 제2 시간 구간(2612)의 첫번째 서브이벤트를 사용한 데이터의 전송에 실패할 수 있고, 제2 시간 구간(2612)의 두번째 서브이벤트 및 세번째 서브이벤트에서 상기 데이터의 재전송(RT)을 수행할 수 있다. 제2 시간 구간(2612) 동안 상기 데이터의 전송에 실패하였고, 더 높은 우선순위를 가지는 다른 작업이 없으면, 제3 시간 구간(2614)의 적어도 하나의 서브이벤트가 상기 데이터의 재전송에 사용될 수 있다. 반면 제3 시간 구간(2614)에 대응하는 제2 우선순위보다 더 높은 우선순위를 가지는 다른 작업이 존재하는 경우, 전자 장치(101)는 제3 시간 구간(2614)에서 상기 데이터의 재전송을 수행하지 않으며, 상기 다른 작업을 수행할 수 있다.
도 27은 일 실시예에 따른 CIS 통신을 위한 자원 분할의 다른 예를 나타내는 도면이다.
도 27을 참조하면, 전자 장치(101)는 CIS 통신을 위한 최대 자원에 해당하는 시간 구간(2704)을 ISO 간격(2702)의 88.8%로 할당할 수 있다. 시간 구간(2704)은 제1 채널(CH1)(예를 들어 레프트 채널)을 위한 시간 구간(2706)(=44.4%)과 제2 채널(CH2)(예를 들어 라이트 채널)을 위한 시간 구간(2708)(=44.4%)으로 분할될 수 있다. 일 예로서 시간 구간(2706)과 시간 구간(2708)의 각각은 740㎲의 길이를 가지는 6개의 서브이벤트들을 포함할 수 있다.
일 실시예에서 제1 채널의 CIS 통신을 보장되기 위해 사용되는 시간 구간(2712)은 시간 구간(2706) 내의 뒷부분 3개의 서브이벤트들(예를 들어 서브이벤트 #3,4,5)을 포함하고, 제2 채널의 CIS 통신을 보장하기 위해 사용되는 시간 구간(2714)은 시간 구간(2708) 내의 앞부분 3개의 서브이벤트들(예를 들어 서브이벤트 #0,1,2)을 포함할 수 있다. 전자 장치(101)는 연속적으로 이어지는 시간 구간(2712) 및 시간 구간(2714)을 사용하여 제1 채널의 오디오 데이터(예를 들어 레프트 오디오 데이터)와 제2 채널의 오디오 데이터(예를 들어 라이트 오디오 데이터)를 전송할 수 있다.
일 실시예에서 시간 구간(2706)의 앞부분 나머지 서브이벤트들(예를 들어 서브이벤트 #0,1,2)에 해당하는 시간 구간(2710)과 시간 구간(2708)의 뒷부분 나머지 서브이벤트들(예를 들어 서브이벤트 #3,4,5)에 해당하는 시간 구간(2718)은 작업 별 우선순위들에 따라 CIS 통신 또는 다른 작업(예를 들어 블루투스 동시성 동작 또는 Wi-Fi 공존 동작)을 위해 사용될 수 있다.
예를 들어 전자 장치(101)는 시간 구간(2712)의 첫번째 서브이벤트(예를 들어 서브이벤트#3)를 사용한 데이터의 전송에 실패할 수 있고, 시간 구간(2712)의 두번째 및 세번째 서브이벤트(예를 들어 서브이벤트#4,5)에서 상기 데이터의 재전송(RT)을 수행할 수 있다. 시간 구간(2712) 동안 상기 데이터의 전송에 실패한 경우, 더 높은 우선순위를 가지는 다른 작업이 없으면 다음 ISO 간격(도시하지 않음)의 처음 3개의 서브이벤트들(예를 들어 서브이벤트#0,1,2)이 상기 데이터의 재전송에 사용될 수 있다. 반면 다음 ISO 간격의 처음 3개의 서브이벤트들에서 더 높은 우선순위를 가지는 다른 작업이 존재하는 경우, 전자 장치(101)는 상기 데이터의 재전송을 수행하지 않으며, 상기 다른 작업을 수행할 수 있다.
예를 들어 전자 장치(101)는 시간 구간(2714) 동안 상기 데이터의 전송에 실패한 경우, 더 높은 우선순위를 가지는 다른 작업이 없으면 시간 구간(2718)의 적어도 하나의 서브이벤트를 상기 데이터의 재전송에 사용할 수 있다. 반면 시간 구간(2718)에 대응하는 제2 우선순위보다 더 높은 우선순위를 가지는 다른 작업이 존재하는 경우, 전자 장치(101)는 시간 구간(2718)에서 상기 데이터의 재전송을 수행하지 않으며, 상기 다른 작업을 수행할 수 있다.
도 28은 일 실시예에 따라 시간 비율에 따른 자원 분할의 일 예를 나타내는 도면이다.
도 28을 참조하면, 전자 장치(101)는 CIS 통신을 위한 최대 자원에 해당하는 시간 구간(2804)을 ISO 간격(2802)의 88.8%로 할당할 수 있다. 시간 구간(2804)은 제1 채널(CH1)(예를 들어 레프트 채널)을 위한 시간 구간(2806)(=44.4%)과 제2 채널(CH2)(예를 들어 라이트 채널)을 위한 시간 구간(2808)(=44.4%)으로 분할될 수 있다. 일 예에서 시간 구간(2806)과 라이트 시간 구간(2808)의 각각은 740㎲의 길이를 가지는 6개의 서브이벤트들을 포함할 수 있다.
일 실시예에서 제1 채널의 CIS 통신을 보장되기 위해 사용되는 시간 구간(2810)은 시간 구간(2806) 내의 앞부분 2개의 서브이벤트들(예를 들어 서브이벤트 #0,1)과, 마지막 하나의 서브이벤트(예를 들어 서브이벤트 #5)를 포함할 수 있고, 제2 채널의 CIS 통신을 보장하기 위해 사용되는 시간 구간(2818)은 시간 구간(2808) 내의 첫번째 서브이벤트(예를 들어 서브이벤트 #0)와, 네번째 및 다섯번째 서브이벤트들(예를 들어 서브이벤트 #3,4)을 포함할 수 있다. 전자 장치(101)는 시간 구간(2806)의 서브이벤트들(예를 들어 서브이벤트 #0,1,5)을 사용하여 제1 채널의 오디오 데이터(예를 들어 레프트 오디오 데이터)를 전송하고, 시간 구간(2088)의 서브이벤트들(예를 들어 서브이벤트 #0,3,4)을 사용하여 제2 채널의 오디오 데이터(예를 들어 라이트 오디오 데이터)를 전송할 수 있다.
일 실시예에서 시간 구간(2806)의 나머지 서브이벤트들(예를 들어 서브이벤트#2,3,4)에 해당하는 시간 구간(2812)과 라이트 시간 구간(2808)의 나머지 서브이벤트들(예를 들어 서브이벤트#1,2,5)에 해당하는 시간 구간(2816)은 작업 별 우선순위들에 따라 CIS 통신 또는 다른 작업(예를 들어 블루투스 동시성 동작 또는 Wi-Fi 공존 동작)을 위해 사용될 수 있다.
일 실시예에서 전자 장치(101)는 CIS 통신을 포함하는 통신의 각 작업에 대한 우선순위를 정의하는 우선순위 테이블을 생성하고 상기 우선순위 테이블을 메모리(예를 들어 메모리(130))에 저장할 수 있다. 우선순위 테이블은 복수의 작업들에 대한 작업 별 우선순위들을 포함할 수 있고, 각 우선순위는 다른 작업의 우선순위와 비교될 수 있도록 데시멀 값 또는 헥사 값으로 표현될 수 있다.
일 실시예에서 전자 장치(101)는 사용자에게 중요한 작업일수록 높은 값의 우선순위를 부여할 수 있으며, 시간의 흐름, 통신 상태 또는 스케줄링 상황 중 적어도 하나에 따라 작업 별 우선순위들 중 적어도 하나를 변경할 수 있다. 예를 들어, CIS 통신을 위한 CIS 작업은 주기적으로 실행되며 최대 레이턴시를 고려한 실시간 데이터 전송을 목표로 하는 오디오 서비스를 위한 것이기 때문에, 다른 블루투스 작업들(예를 들어 블루투스 동시성 동작)에 비해 높은 우선순위를 가질 수 있다.
일 실시예에서 전자 장치(101)는 CIS 작업에 대해 서로 다른 우선순위들, 예를 들어 제1 우선순위 및 제2 우선순위를 부여할 수 있다. 제1 우선순위(높은 우선순위)의 CIS 작업은 CIS 통신을 보장하는 시간 구간(예를 들어 도 17의 제2 시간 구간(1710))에 포함되는 서브이벤트들 중 적어도 하나를 사용하는 CIS 전송을 포함할 수 있다. 제2 우선순위(낮은 우선순위)의 CIS 작업은 나머지 시간 구간(예를 들어 도 17의 제3 시간 구간(1712))에 포함되는 서브이벤트들 중 적어도 하나를 사용하는 CIS 전송을 포함할 수 있다.
<표 2>는 BT 동시성 작업들에 대한 우선순위들을 정의하는 우선순위 테이블의 일 예를 나타낸 것이다.
작업 | 우선순위 |
Page Scan | 9 |
Page | 13 |
Inquiry Scan | 9 |
Inquiry | 5 |
BLE Scan duty full | 3 |
BLE Scan duty 50% over | 5 |
BLE Scan duty 50% under | 9 |
BLE Advertising | 7 |
BLE Advertising Extension | 5 |
BT Connection Active mode - Idle | 5 |
BT Connection Active mode - eSCO/SCO | 15 |
BT Connection Active mode - ACL Back off | 16 |
BT sniff mode | 13 |
BT sniff mode - ACL Back off | 15 |
BT Connection - CI | 13 |
BT Connection - MD | 9 |
BT Connection - ACL Back off | 16 |
BLE CIS - High Priority | 15 |
BLE CIS - Low Priority | 7 |
<표 2>를 참조하면 CIS 통신은 높은 우선순위(예를 들어 15)를 가지는 제1 CIS 작업과, 낮은 우선순위(예를 들어 7)를 가지는 제2 CIS 작업으로 나뉘어질 수 있다. 일 예로서 제1 CIS 작업은 N개의 서브이벤트들을 포함하는 하나의 CIS 이벤트 내에서 앞부분 N1개의 서브이벤트들(예를 들어 서브이벤트 #0,1) 중 적어도 하나를 사용하는 CIS 전송을 포함할 수 있다. 일 예로서 제2 CIS 작업은 하나의 CIS 이벤트 내에서 마지막 N2개의 서브이벤트들 중 적어도 하나를 사용하는 CIS 전송을 포함할 수 있다. (N = N1 + N2)일 실시예에서 전자 장치(101)는 제3 시간 구간에서 제2 CIS 작업의 우선순위 값(예를 들어 7)보다 높은 우선순위를 가지는 다른 작업(예를 들어 페이지 스캔 또는 인쿼리 스캔)을 수행할 필요가 있음을 감지한 경우, 제3 시간 구간의 서브이벤트들에서 CIS 데이터 패킷들을 전송하지 않으며, 제3 시간 구간 동안 상기 다른 작업을 수행할 수 있다. 일 실시예에서 전자 장치(101)는 제3 시간 구간에서 제2 CIS 작업의 우선순위 값(예를 들어 7)보다 낮은 우선순위를 가지는 다른 작업(예를 들어 인쿼리)이 스케줄링됨을 감지한 경우, 제3 시간 구간의 서브이벤트들에서 CIS 데이터 패킷들을 전송할 수 있으며, 인쿼리 동작은 연기되거나 생략될 수 있다.
일 실시예에서 마찬가지로 전자 장치(101)는 제2 시간 구간에서 제1 CIS 작업의 우선순위 값(예를 들어 15)보다 높은 우선순위를 가지는 다른 작업(예를 들어 ACL 백오프)을 수행할 필요가 있음을 감지한 경우, 제2 시간 구간의 서브이벤트들에서 CIS 데이터 패킷들을 전송하지 않으며, 제2 시간 구간 동안 상기 다른 작업을 수행할 수 있다. 일 실시예에서 전자 장치(101)는 제2 시간 구간에서 제1 CIS 작업의 우선순위 값(예를 들어 15)보다 낮은 우선순위를 가지는 다른 작업(예를 들어 페이지 또는 페이지 스캔)이 스케줄링됨을 감지한 경우, 제2 시간 구간의 서브이벤트들에서 CIS 데이터 패킷들을 전송할 수 있으며, 페이지 또는 페이지 스캔은 연기되거나 생략될 수 있다.
일 실시예에서 CIS 통신을 위한 CIS 이벤트들은 서로 간에 적어도 부분적으로 중첩될 수 있다. 일 예로서 제1 CIS 이벤트의 적어도 일부와 제2 CIS 이벤트의 적어도 일부를 중첩하는 것은, 순차적 배치(예를 들어 도 13의 순차적 배치)의 특성 및 인터리브 배치(예를 들어 도 14의 인터리브 배치)의 특성을 모두 가진다는 측면에서, 하이브리드 배치(hybrid arrangement) 또는 하이브리드 패킹(hybrid packing)이라 칭할 수 있다. 일 실시예에서 전자 장치(101)는 지정된 조건을 만족하는 것에 기반하여 CIS 이벤트들을 하이브리드 배치에 따라 설정(예를 들어 스케줄)할 수 있다.
도 29는 일 실시예에 따른 하이브리드 배치에 적용되는 자원 분할의 일 예를 나타내는 도면이다.
도 29를 참조하면, CIG 이벤트 x는 CIS1 이벤트 x 와 CIS2 이벤트 x를 포함할 수 있고, CIS1 이벤트 x와 CIS2 이벤트 x는 예를 들어 각각 10개의 서브이벤트들을 포함할 수 있다. CIS2 이벤트 x는 CIS1 이벤트 x의 일부(part of)와 부분적으로(partially) 중첩될 수 있다. 일 실시예에서 CIS1 이벤트 x와 CIS2 이벤트 x의 중첩된 구간(2902)은 다양한 조건들에 따라 그 길이(예를 들어 서브이벤트 개수)가 결정될 수 있다.
CIS1 이벤트 x 와 CIS2 이벤트 x의 중첩된 구간(2902)은 일 예로서 8개의 서브이벤트들을 포함할 수 있고, CIS 통신을 보장할 수 있는 제1 우선순위에 대응하는 제2 시간 구간으로 설정될 수 있다. 일 실시예에서 CIS1 이벤트 x 또는 CIS2 이벤트 x에 포함되지 않는 시간 구간(2904)은 CIS 통신을 위해 예약되지 않고, 다른 작업(예를 들어 블루투스 동시성 동작 또는 Wi-Fi 공존 동작)을 위해 사용될 수 있다.
도 30은 일 실시예에 따른 하이브리드 배치에 적용되는 자원 분할의 다른 예를 나타내는 도면이다.
도 30을 참조하면, CIG 이벤트 x는 CIS1 이벤트 x 와 CIS2 이벤트 x를 포함할 수 있고, CIS1 이벤트 x와 CIS2 이벤트 x는 예를 들어 각각 18개의 서브이벤트들을 포함할 수 있다. CIS2 이벤트 x는 CIS1 이벤트 x와 적어도 부분적으로(at least partially) 중첩될 수 있다. 일 실시예에서 CIS1 이벤트 x 와 CIS2 이벤트 x의 중첩된 서브이벤트들(예를 들어 16개) 중 적어도 일부의 제1 서브이벤트들(예를 들어 앞부분 10개)을 포함하는 시간 구간(3002)은 CIS 통신을 보장할 수 있는 제1 우선순위에 대응하는 제2 시간 구간으로 설정될 수 있다.
일 실시예에서 CIS1 이벤트 x 와 CIS2 이벤트 x의 중첩된 서브이벤트들(예를 들어 16개) 중 일부 서브이벤트들(예를 들어 뒷부분 8개) 및 CIS2 이벤트 x의 마지막 서브이벤트들(예를 들어 뒷부분 2개)을 포함하는 시간 구간(3004)은 제1 우선순위보다 낮은 제2 우선순위에 대응하는 제3 시간 구간으로 설정될 수 있다. 시간 구간(3004)은 제2 우선순위를 가지는 제2 CIS 작업을 위해 사용되거나, 또는 제2 우선순위보다 높은 우선순위 값을 가지는 다른 작업(예를 들어 블루투스 동시성 동작 또는 Wi-Fi 공존 동작)을 위해 사용될 수 있다. 일 실시예에서 시간 구간(3002)과 시간 구간(3004)은 부분적으로(예를 들어 2개의 서브이벤트들에서) 중첩될 수 있다. 중첩되는 2개의 서브이벤트들은 전자 장치(101)(예를 들어 프로세서(120))의 스케줄링에 따라 제1 CIS 작업, 제2 CIS 작업 또는 다른 작업을 위해 사용될 수 있다.
일 실시예에서 CIS2 이벤트 x와 중첩되지 않는 CIS1 이벤트 x의 서브이벤트들(예를 들어 처음 2개) 및/또는 CIS1 이벤트 x와 중첩되지 않는 CIS2 이벤트 x의 서브이벤트들(예를 들어 마지막 2개)은 제2 우선순위로 설정될 수 있다. 일 실시예에서 CIS2 이벤트 x와 중첩되지 않는 CIS1 이벤트 x의 서브이벤트들(예를 들어 처음 2개) 및/또는 CIS1 이벤트 x와 중첩되지 않는 CIS2 이벤트 x의 서브이벤트들(예를 들어 마지막 2개)은 제1 우선순위로 설정될 수 있다.
일 실시예에서 CIS1 이벤트 x와 CIS2 이벤트 x의 중첩된 서브이벤트들 전체는 제1 우선순위에 대응하는 제2 시간 구간으로 설정되고, 중첩되지 않는 서브이벤트들(예를 들어 CIS1 이벤트 x의 앞부분 2개의 서브이벤트들 및 CIS2 이벤트 x의 뒷부분 2개의 서브이벤트들)은 제2 우선순위에 대응하는 제3 시간 구간으로 설정될 수 있다. 일 실시예에서 제2 시간 구간은 CIS1 이벤트 x와 CIS2 이벤트 x의 중첩된 서브이벤트들 중 적어도 일부 및 중첩되지 않은 서브이벤트들 중 적어도 일부를 포함하고, 제3 시간 구간은 제2 구간으로 설정되지 않은 나머지 서브이벤트들에 대응할 수 있다. 이외에 다양한 실시예들이 가능할 수 있다.
도 31은 일 실시예에 따라 CIS 링크들을 통해 오디오 서비스를 제공하는 동작을 설명하기 위한 도면이다.
도 31을 참조하면, 전자 장치(101)는 외부 전자 장치(예를 들어 제1 외부 전자 장치(202))와 ACL 링크(예를 들어 제1 ACL 링크(502))를 연결하고, ACL 링크를 통해 CIS_REQ 패킷(3102)(예를 들어 동작 710의 CIS_REQ), CIS_RSP 패킷(3104)(예를 들어 동작 712의 CIS_RSP), 및 CIS_IND 패킷(3106)(예를 들어 동작 714의 CIS_IND)을 교환함으로써 CIS 링크(예를 들어 제1 CIS 링크(506))를 수립할 수 있다.
일 실시예에서 전자 장치(101)의 프로세서(120)는 CIS 모듈(3112) 및 호스트(3114)를 포함할 수 있다. 전자 장치(101)(예를 들어 CIS 모듈(3112))는 제1 CIS 링크(506)를 통해 CIS 널 패킷들(3110)(예를 들어 동작 716, 718, 720의 CIS 널 PDU들)을 교환함으로써 제1 CIS 링크(506)가 사용 가능함을 확인하고, 제1 CIS 링크(506)의 수립을 알리는 HCI(human computer interface) 이벤트 메시지(3108)(예를 들어 HCI_LE_CIS_Established)를 호스트(3114)에게 전송할 수 있다.
일 실시예에서 상기 이벤트 메시지는 제1 CIS 링크(506)에 적용되는 CIS 파라미터들, 예를 들어 ISO 간격 = 20ms, BN = 2, FT = 5, 및 NSE = 6을 포함할 수 있다. 일 예로서 전자 장치(101)는 CIS 파라미터들을 사용하여 제1 CIS 링크(506)에 대해 47.2%의 자원을 할당하고 제1 CIS 링크(506)를 오픈할 수 있다.
하기 <표 3>은 전자 장치(101)가 설정하고 CIS_REQ 패킷(3102)을 통해 제2 외부 전자 장치(202)로 전달하는 CIS 파라미터들의 일 예를 나타낸 것이다.
Control Pkt | LL_CIS_REQ |
CIG ID | 0x01 |
CIS ID | 0x00 |
M_to_S PHY | LE 2M PHY |
S_to_M PHY | LE 2M PHY |
Framed | All CIS Data PDUs shall be unframed |
Max_SDU_Size_M_TO_S | 120 octets |
Max_SDU_Size_S_TO_M | 0 octets |
SDU_Interval_M_TO_S | 10000㎲ |
SDU_Interval_S_TO_M | 10000㎲ |
Max PDU Size M_to_S | 120 |
Max PDU Size S_to_M | 0 |
Number of Subevents | 10 |
Subevent Interval | 944㎲ |
Burst Number M_to_S | 0 (No CIS payload) |
Burst Number S_to_M | 2 |
Flush Timeout M_to_S | 5 |
Flush Timeout S_to_M | 1 |
ISO Interval | 20.00ms |
Calculated Flush Timeout M_to_S | 100.00ms |
Calculated Flush Timeout S_to_M | 20.00ms |
CIS Offset Minimum | 11250㎲ |
CIS Offset Maximum | 11250㎲ |
Conn Event Counter | 0x0a0a |
도 32는 일 실시예에 따라 CIS 링크를 오픈하는 동작을 설명하기 위한 도면이다.
도 32를 참조하면, 전자 장치(101)의 프로세서(120)는 CIS 모듈(3204)(예를 들어 CIS 모듈(3112))과 호스트(3202)(예를 들어 호스트(3114))를 포함할 수 있다. 일 실시예에서 전자 장치(101)(예를 들어 호스트(3202))는 도 31의 이벤트 메시지(3108)를 CIS 모듈(3204)로부터 수신함으로써 제1 CIS 링크(506)가 수립됨을 확인하고, 제2 CIS 링크(508)를 통해 전송하기 위한 오디오 데이터를 포함하는 서비스 데이터 유닛(service data unit: SDU)(3212)(예를 들어 SDU25) 및 SDU26(3216)을 예를 들어 ISO 간격마다 CIS 모듈(3204)에게 전송할 수 있다.
전자 장치(101)(예를 들어 CIS 모듈(3204))는 현재 ISO 간격에서 이전 SDU(예를 들어 SDU24)(도시하지 않음)에 대응하는 CIS 데이터 패킷들(3214)을 전송하고, CIS 데이터 패킷들(3214)에 대응하는 ACK 응답을 수신할 수 있다. 전자 장치(101)(예를 들어 CIS 모듈(3204)은 후속하는 ISO 간격에서 SDU25(3212)에 대응하는 CIS 데이터 패킷들(3218)을 전송하고, CIS 데이터 패킷들(3218)에 대응하는 ACK 응답을 수신할 수 있다. 전자 장치(101)(예를 들어 CIS 모듈(3204))는 다음 ISO 간격에서 SDU26(3216)에 대응하는 CIS 데이터 패킷들을 전송할 수 있다. 이후의 SDU들이 마찬가지 방식으로 전송될 수 있다.
도 33은 일 실시예에 따라 무선 환경 또는 스케줄링 상황을 고려하여 CIS 통신을 운용하는 동작을 설명하기 위한 도면이다.
도 33을 참조하면, 전자 장치(101)는 오디오 데이터가 FT 파라미터에 의해 지시되는 플러시 포인트에 도달하기 전까지, 동일한 오디오 데이터를 포함하는 CIS 데이터 패킷들을 재전송할 수 있다. 스케줄된 다른 작업이 없고 무선 환경에 의해 외부 전자 장치(예를 들어 제1 외부 전자 장치(202) 또는 제2 외부 전자 장치(204))로부터 상기 오디오 데이터에 대한 ACK 응답을 수신하지 못한 경우, 전자 장치(101)는 상기 동일한 오디오 데이터를 포함하는 CIS 데이터 패킷들을 복수의 서브이벤트들을 사용하여 지속적으로 재전송할 수 있다.
일 실시예에서 전자 장치(101)는 ISO 간격(3302) 내에서 제1 외부 전자 장치(202)와의 제1 CIS 링크(506)에 대해 6개의 서브이벤트들을 포함하는 시간 구간(3304)을 할당할 수 있다. 시간 구간(3304)은 높은 우선순위 값을 가지는 제1 우선순위에 대응할 수 있다.
일 실시예에서 제1 CIS 링크(506)의 열악한 무선 환경으로 인해 제1 외부 전자 장치(202)는 전자 장치(101)로부터의 CIS 데이터 패킷을 정상적으로 수신하지 못하게 될 수 있다. 제1 CIS 링크(506)의 시간 구간(3304) 동안 제1 우선순위보다 높은 우선순위를 가지는 다른 작업(예를 들어 <표 2>의 ACL 백오프 작업)이 발생하지 않은 경우, 제1 CIS 링크(506)의 6번의 전송 기회들(즉 6개의 서브이벤트들) 모두가 CIS 데이터 패킷의 전송(예를 들어 초기 전송 및 재전송(RT))을 위해 사용될 수 있다.
일 실시예에서 전자 장치(101)는 제2 CIS 링크(508)의 첫번째 서브이벤트(3306)에서 CIS 데이터 패킷을 전송한 이후 바로 제2 외부 전자 장치(204)로부터 ACK 응답을 수신할 수 있다. 일 실시예에서 전자 장치(101)는 제2 CIS 링크(508)의 나머지 서브이벤트들(및 잔여 구간)에 대응하는 시간 구간(3308)을, 동일한 주파수 대역(예를 들어 2.4GHz)을 사용하는 다른 작업(예를 들어 블루투스 동시성 동작 또는 Wi-Fi 공존 동작)을 위해 사용할 수 있다.
도 34는 일 실시예에 따라 높은 우선순위를 가지는 CIS 작업을 수행하는 동작을 설명하기 위한 도면이다.
도 34를 참조하면, ISO 간격(3402) 내에서 CIS 통신(예를 들어 제1 CIS 링크(506))을 위한 하나의 CIS 이벤트에 대응하는 제1 시간 구간(3406)은 예를 들어 6개의 서브이벤트들을 포함할 수 있고, 제1 시간 구간(3406) 내에서 우선순위 값 15에 대응하도록 설정된 제2 시간 구간(3404)은 3개의 서브이벤트들을 포함하고 우선순위 값 7에 대응하도록 설정된 제3 시간 구간(3408)은 3개의 서브이벤트들을 포함할 수 있다.
일 실시예에서 전자 장치(101)는 제2 시간 구간(3404)의 서브이벤트들 중 첫번째 서브이벤트 및 두번째 서브이벤트를 사용하여 CIS 데이터 패킷들을 전송 및 재전송할 수 있다. 전자 장치(101)는 제2 시간 구간(3404)의 두번째 서브이벤트에서 우선순위 값 13을 가지는 BLE CI(connection interval) 작업이 스케줄됨을 확인하지만, 우선순위 값 13이 제2 시간 구간(3404)의 우선순위 값 15보다 작기 때문에 제2 시간 구간(3404) 동안 상기 BLE CI 작업을 무시할 수 있다. 두번째 서브이벤트를 사용하는 재전송(retransmission: RT) 이후에 제1 외부 전자 장치(202)로부터 ACK 응답이 수신된 경우 제2 시간 구간(3404)의 세번째 서브이벤트는 CIS 전송을 위해 사용되지 않을 수 있다.
일 실시예에서 전자 장치(101)는 상기 BLE CI 작업을 다음 시간 구간, 예를 들어 제3 시간 구간(3408)으로 다시 스케줄할 수 있다. 우선순위 값 13이 제3 시간 구간(3408)의 우선순위 값 7보다 크기 때문에 전자 장치(101)는 제2 시간 구간(3404) 동안 CIS 작업을 수행하지 않도록 결정할 수 있다. 제2 시간 구간(3404)은 전자 장치(101)에서 상기 BLE CI 작업을 수행하기 위해 사용될 수 있다.
일 실시예에서 전자 장치(101)는 하나의 CIS 이벤트에 대응하는 제1 시간 구간(3406) 이후 다른 CIS 이벤트를 위한 서브이벤트들을 사용하는 CIS 작업들을 수행할 수 있다. 다른 CIS 이벤트를 위한 전자 장치(101)의 동작에 대한 설명은 제1 시간 구간(3406)에서와 유사할 수 있다.
도 35는 일 실시예에 따라 높은 우선순위를 가지는 BLE 작업을 수행하는 동작을 설명하기 위한 도면이다.
도 35를 참조하면, ISO 간격(3502) 내에서 CIS 통신(예를 들어 제1 CIS 링크(506))을 위한 하나의 CIS 이벤트에 대응하는 제1 시간 구간(3506)은 예를 들어 6개의 서브이벤트들을 포함할 수 있고, 제1 시간 구간(3506) 내에서 우선순위 값 15에 대응하도록 설정된 제2 시간 구간(3504)은 3개의 서브이벤트들을 포함하고 우선순위 값 7에 대응하도록 설정된 제3 시간 구간(3508)은 3개의 서브이벤트들을 포함할 수 있다.
일 실시예에서 전자 장치(101)는 제2 시간 구간(3504)에서 3개의 서브이벤트들을 사용하여 CIS 데이터 패킷을 전송 및 재전송할 수 있다. 제2 시간 구간(3504) 동안 CIS 데이터 패킷에 대응하는 ACK 응답을 제1 외부 전자 장치(202)로부터 수신하지 못하였고, 제3 시간 구간(3508)의 첫번째 서브이벤트에 스케줄된 다른 작업이 존재하지 않는 경우, 전자 장치(101)는 제3 시간 구간(3508)의 첫번째 서브이벤트에서 상기 CIS 데이터 패킷을 재전송할 수 있다.
일 실시예에서 전자 장치(101)는 제3 시간 구간(3508)의 두번째 서브이벤트에서 우선순위 값 13을 가지는 BLE CI 작업이 스케줄됨을 확인할 수 있다. 상기 BLE CI 작업이 제3 시간 구간(3508)의 우선순위 값 7보다 큰 우선순위 값 13을 가지기 때문에 전자 장치(101)는 상기 CIS 데이터 패킷에 대한 ACK 응답을 수신하지 못하였더라도 제3 시간 구간(3508)의 두번째 서브이벤트에서 상기 CIS 데이터 패킷의 재전송을 중단하도록 결정할 수 있다. 제3 시간 구간(3508)의 나머지 시간 구간은 상기 BLE CI 작업을 수행하기 위해 사용될 수 있다.
일 실시예에서 전자 장치(101)는 하나의 CIS 이벤트에 대응하는 제1 시간 구간(3506) 이후 다른 CIS 이벤트를 위한 서브이벤트들을 사용하는 CIS 작업들을 수행할 수 있다. 다른 CIS 이벤트를 위한 전자 장치(101)의 동작에 대한 설명은 제1 시간 구간(3506)에서와 유사할 수 있다.
도 36은 일 실시예에 따라 CIS 통신을 위한 우선순위를 변경하는 동작을 설명하기 위한 도면이다.
도 36을 참조하면, ISO 간격(3602) 내에서 CIS 통신(예를 들어 제1 CIS 링크(506))을 위한 하나의 CIS 이벤트에 대응하는 제1 시간 구간(3606)은 예를 들어 6개의 서브이벤트들을 포함할 수 있다. 제1 CIS 링크(506)를 통해 제1 외부 전자 장치(202)에게 오디오 서비스를 제공하는 도중 전자 장치(101)는 임의의 서브이벤트에서 우선순위를 변경하도록 결정할 수 있다. 일 실시예에서 전자 장치(101)는 짧고 반복적인 작업(예를 들어 BLE CI 백오프 동작)이 새롭게 요구되는 경우 CIS 작업을 최대한 보장하면서 상기 작업을 신속하게 수행할 수 있도록 매 서브이벤트 또는 지정된 개수의 서브이벤트들마다 우선순위를 설정할 수 있다.
일 실시예에서 제1 시간 구간(3606) 내에서 첫번째 서브이벤트와 두번째 서브이벤트에 대응하는 시간 구간(3604a)과 다섯번째 서브이벤트에 대응하는 시간 구간(3604b)에 대해 전자 장치(101)는 우선순위 값을 16으로 변경할 수 있다. 일 실시예에서 전자 장치(101)는 세번째 서브이벤트와 네번째 서브이벤트에 대응하는 시간 구간(3608a)과 여섯번째 서브이벤트에 대응하는 시간 구간(3608b)에 대해 우선순위 값을 '7'로 변경할 수 있다. 예를 들어 BLE CI 백오프 동작은 우선순위 값 '16'을 가질 수 있고, 전자 장치(101)는 시간 구간(3608a) 또는 시간 구간(3608b)에서 BLE CI 백오프 동작을 신속하게 수행할 수 있다.
일 실시예에서 전자 장치(101)는 하나의 CIS 이벤트에 대응하는 제1 시간 구간(3606) 이후 다른 CIS 이벤트를 위한 서브이벤트들을 사용하는 CIS 작업들을 수행할 수 있다. 다른 CIS 이벤트를 위한 전자 장치(101)의 동작에 대한 설명은 제1 시간 구간(3606)에서와 유사할 수 있다.
일 실시예에서 전자 장치(101)와 외부 전자 장치(예를 들어 제1 외부 전자 장치(202) 또는 제2 외부 전자 장치(204)가 동일한 목적을 가지는 기능을 지원할 수 있는 경우, 전자 장치(101)는 제1 우선순위에 대응하는 제2 시간 구간(예를 들어 제2 시간 구간(1706)) 및 제2 우선순위에 대응하는 제3 시간 구간(예를 들어 제3 시간 구간(1708))을 나타내는 CIS 운용 정보를 외부 전자 장치(예를 들어 제1 외부 전자 장치(202) 또는 제2 외부 전자 장치(204))에게 제공할 수 있다.
일 실시예에서 외부 전자 장치(예를 들어 제1 외부 전자 장치(202) 또는 제2 외부 전자 장치(204))는 전자 장치(101)로부터 수신한 CIS 운용 정보에 따라 CIS 통신을 수행할 수 있다.
예를 들어, 외부 전자 장치(예를 들어 제1 외부 전자 장치(202) 또는 제2 외부 전자 장치(204))의 배터리 레벨이 지정된 임계값 미만인 경우, 외부 전자 장치(예를 들어 제1 외부 전자 장치(202) 또는 제2 외부 전자 장치(204))는 전자 장치(101)가 전달한 CIS 운용 정보에 따라 제2 우선순위로 설정된 제3 시간 구간(예를 들어 도 17의 제3 시간 구간(1712))을 의도적으로 무시하고 리슨(listen)하지 않을 수 있다.
BIS는 하나 이상의 등시성 데이터 스트림(isochronous data stream)을 지정된 범위(range) 내의 BIS를 위한 모든 장치들에게 전송하는데 사용되는 논리적 전송을 의미할 수 있다. BIS는 등시성 데이터 패킷들(예를 들어 BIS 데이터 패킷들)을 전송하기 위한 하나 이상의 서브이벤트들(subevents)을 포함할 수 있다. BIS는 모든 BIS 이벤트들에서 여러 개의 새로운 등시성 데이터 패킷들의 전송을 지원할 수 있다. BIS는 애크 프로토콜(acknowledgment protocol)을 포함하지 않으며, 트래픽을 브로드캐스트하는 장치(broadcasting device)(예를 들어 소스 전자 장치)로부터 단방향으로 전달될 수 있다. BIS 논리 전송의 신뢰성을 향상시키기 위해, 등시성 데이터 패킷들은 모든 이벤트 내 서브이벤트들의 수를 증가시킴으로써 무조건적으로 재전송될 수 있다. 또한, 상기 등시성 데이터 패킷들과 관련된 간격(interval)보다 앞선 간격에서 상기 등시성 데이터 패킷들을 전송함으로써 전송 신뢰성을 향상시킬 수 있다. 이를 사전 전송(pre-transmission)이라 한다. BIS는 고유한 액세스 주소(access address) 및 타이밍 정보에 의해 식별될 수 있다. 상기 액세스 주소 및 타이밍 정보는 해당하는 주기적 애드버타이징 브로드캐스트(periodic advertising broadcast) 논리 전송을 사용하여 전송되는 패킷을 통해 전송될 수 있다.
동기화된 수신기 역할(synchronized receiver role)(예를 들어 싱크 역할)을 지원하는 스캐닝하는 장치(예를 들어 싱크 전자 장치)는 주기적 애드버타이징 패킷들로부터 획득한 상기 타이밍 정보를 이용하여 BIS에 동기화한 후, 상기 BIS로부터 등시성 데이터(예를 들어 등시성 데이터 패킷들)를 수신할 수 있다.
각 BIS는 브로드캐스트 등시성 그룹(broadcast isochronous group: BIG)의 일부일 수 있다. BIG는 동일한 등시성 간격(예를 들어 ISO_Interval)을 가지는 두 개 또는 그 이상의 BIS들을 포함할 수 있다. BIG 내의 BIS들은 소스 전자 장치를 기반으로 하는 공통의 타이밍 기준(timing reference)을 가지며, 상호 간에 시간적으로 동기화될 수 있다. BIG 내의 BIS들의 최대 개수는 지정된 값(예를 들어 31)을 가질 수 있다. BIG는 또한 제어 서브이벤트들을 포함할 수 있다.
도 37은 일 실시예에 따라 브로드캐스트 등시성 그룹(BIG)에 동기화되는 절차를 설명하기 위한 신호 흐름도를 도시한 것이다.
도 37을 참조하면, 동작 3712에서 소스 전자 장치(400)(예를 들어 전자 장치(101))는 하나 또는 그 이상의 BIS들을 포함하는 BIG를 생성하고 상기 BIG와 관련된 주기적 애드버타이징을 시작할 수 있다. 동작 3714에서 수신 동기화를 위해 싱크 전자 장치(3705)(예를 들어 제1 외부 전자 장치(202) 또는 제2 외부 전자 장치(204))는 BLE 스캔을 시작할 수 있다. 일 실시예에서 싱크 전자 장치(3705)는 BLE 스캔을 수행하지 않을 수 있고, BLE 스캔을 수행하는 BIS 어시스턴트 역할의 외부 전자 장치(도시하지 않음)로부터 소스 전자 장치(3700)의 BIS 파라미터들을 수신하는데 필요한 스캔 결과(예를 들어 동기화 정보)를 획득할 수 있다.
동작 3716에서 소스 전자 장치(3700)는 상기 BIG와 관련된 애드버타이징 패킷(예를 들어 AUX_SYNC_IND)을 지정된 간격을 두고 주기적으로 전송할 수 있다. 상기 AUX_SYNC_IND는 예를 들어 ACAD(additional controller advertising data) 필드 내에 BIS 파라미터들(예를 들어 BIG 정보(3800))을 포함할 수 있다. 상기 BIG 정보는 소스 전자 장치(3700)가 제공하는 BIG(예를 들어 적어도 하나의 BIS 링크)에 동기화하는데 사용되는 파라미터들을 포함할 수 있다. 일 실시예에서 싱크 전자 장치(3705)는 상기 BIG 정보를 소스 전자 장치(3700)로부터 직접 수신하거나, 또는 외부 전자 장치(도시하지 않음)의 도움(assistant)을 기반으로 상기 BIG 정보를 소스 전자 장치(3700)로부터 수신하거나, 또는 외부 전자 장치(도시하지 않음)로부터 상기 BIG 정보를 수신할 수 있다.
일 실시예에서 싱크 전자 장치(3705)는 BLE 스캔을 수행하지 않는 대신, 외부 전자 장치(도시하지 않음)로부터 스캔 결과(예를 들어 동기화 정보)를 수신할 수 있고, 상기 동기화 정보를 통해 수신한 상기 애드버타이징 패킷으로부터 BIS 링크를 위한 BIS 파라미터들(예를 들어 BIG 정보(3800))을 획득할 수 있다. 일 실시예에서 싱크 전자 장치(3705)는 BLE 스캔을 수행하는 외부 전자 장치(도시하지 않음)로부터 수신된 스캔 결과(예를 들어 동기화 정보)를 기반으로 소스 전자 장치(3700)로부터 상기 애드버타이징 패킷을 수신하고 상기 애드버타이징 패킷으로부터 BIG 정보(예를 들어 BIG 정보(3800))를 획득할 수 있다.
동작 3718에서 싱크 전자 장치(3705)는 상기 BIG 정보에 근거한 BIS를 수신하기 시작할 것을 결정할 수 있다. 동작 3720에서 싱크 전자 장치(3705)는 상기 BIG 정보에 포함되는 파라미터들을 이용하여 소스 전자 장치(3700)의 BIG에 동기화할 수 있다. 일 실시예에서 싱크 전자 장치(3705)가 수행하는 BIG 동기화 동작은 상기 BIG 정보에 근거하여 오디오 데이터가 전송되는 액세스 주소 및 타이밍 정보를 계산하는 동작을 포함할 수 있다. 일 실시예에서 상기 타이밍 정보는 채널 정보(예를 들어 채널 맵) 및 오디오 데이터의 전송 시점들을 포함할 수 있다.
동작 3722에서 싱크 전자 장치(3705)는 상기 BIG 내의 적어도 하나의 BIS를 통해, 소스 전자 장치(3700)가 브로드캐스트하는 오디오 데이터(예를 들어 적어도 하나의 BIS 데이터 패킷)를 수신할 수 있다.
도 38은 일 실시예에 따른 BIG 정보의 포맷을 설명하기 위한 도면이다.
도 38을 참조하면, BIG 정보(3800)는 BIG_Offset, BIG_Offset_units, ISO_Interval, Num_BIS, NSE(number of subevent), BN(burst number), Sub_Interval, PTO(pre-transmission offset), BIS_Spacing, IRC(immediate repetition count), Max_PDU, RFU(reserved for future use), SeedAccessAddress, SDU_Interval, Max_SDU, BaseCRCInit, ChM(channel map), PHY(physical), bisPayloadCount, Framing, GIV(group initialization vector), 또는 GSKD(group session key derivation) 중 적어도 하나를 포함할 수 있다. 일 실시예에서 BIG 정보(500)의 길이는 암호화되지 않은 경우 33 옥텟, 암호화된 경우 57 옥텟일 수 있다.
BIG 정보(3800)에 포함될 수 있는 파라미터들을 설명하면 하기와 같다.
Num_BIS는 BIG 내의 BIS들의 개수를 나타낸다. BIG 내 BIS들은 각각 1부터 Num_BIS까지 서로 다른 BIS_Number를 할당받을 수 있다.
ISO_Interval은 인접한 두 BIG 앵커 포인트(anchor point) 사이의 1.25ms 단위의 시간을 나타낼 수 있다. (예를 들어 5ms ~ 4s)
BIS_Spacing은 BIG 내 인접한 BIS들에서 서브이벤트들의 시작 시점과, 마지막 BIS의 첫 번째 서브이벤트의 시작 시점 사이의 시간을 나타낼 수 있다.
Sub_Interval은 각 BIS의 2개의 연속된 서브이벤트들의 시작 시점들 사이의 시간을 나타낼 수 있다.
Max_PDU는 BIG 내에서 각 BIS 데이터 패킷을 전송할 수 있는 최대 데이터 옥텟들의 개수로서 패킷의 최대 듀레이션을 나타낼 수 있다. (예를 들어 1 ~ 251 옥텟)
Max_SDU는 BIG 내 SDU(service data unit)의 최대 크기(예를 들어 최대 듀레이션)를 나타낼 수 있다. (예를 들어 1 ~ 4095 옥텟)
BN, PTO 및 IRC는 각 BIG 이벤트에서 어떤 데이터를 전송하는지 제어하기 위한 값들을 포함할 수 있다. 각 BIS 이벤트의 서브이벤트들은 BN개의 서브이벤트들을 포함하는 그룹들(예를 들어 서브이벤트 그룹들)로 분할될 수 있다. 따라서 그룹들의 개수(예를 들어 GC(group count))는 NSE / BN이다. IRC는 현재 BIS 이벤트와 관련된 데이터를 운반하는 그룹들의 수를 지정할 수 있다. 나머지 그룹들은 PTO에 의해 지정된 미래의(future) BIS 이벤트들과 관련된 데이터를 운반할 수 있다.
IRC는 0보다 크고 GC보다 크지 않을 수 있다. IRC = GC 이면 PTO는 무시될 수 있고, 그렇지 않은 경우 PTO는 0보다 클 수 있다. 서브이벤트들의 그룹들은 순서대로 0부터 GC - 1까지 번호(예를 들어 그룹 인덱스 g)가 매겨질 수 있다. g < IRC인 경우, 그룹 g는 현재 BIS 이벤트와 관련된 데이터를 포함할 수 있다. g >= IRC인 경우, 그룹 g는 현재 BIS 이벤트 이후 미래 BIS 이벤트(예를 들어 PTO × (g - IRC + 1)번째 BIS 이벤트)와 관련된 데이터를 포함할 수 있다.
NSE는 각 BIG 이벤트 내에서 서브이벤트들의 최대 개수를 나타낸다.
Framing 필드는 BIG가 프레임된 데이터(framed data)를 전달하는지 또는 프레임되지 않은 데이터(unframed data)를 전달하는지 나타낼 수 있다.
BIG_Offset은 BIG 정보(3800)가 포함된 패킷(예를 들어 AUX_SYNC_IND(3716))의 시작 시점부터 다음 BIG 앵커 포인트까지의 시간을 나타낼 수 있다. BIG_Offset의 값은 BIG_Offset_Units의 비트가 나타내는 단위로 지시될 수 있다. 시간 옵셋은 BIG_Offset의 값에 BIG_Offset_Units이 지시하는 단위를 곱하여 결정된다. 상기 시간 옵셋은 600 ㎲(micro second)보다 클 수 있다. BIG_Offset_Units의 비트가 설정되면 상기 단위는 300 ㎲이고, 그렇지 않으면 30 ㎲이다. BIG_Offset_Units의 비트는 상기 시간 옵셋이 491,460 ㎲ 미만이면 설정되지 않을 수 있다. BIG 앵커 포인트는 아래와 같이 상기 패킷(예를 들어 AUX_SYNC_IND)의 시작 시점 이후 상기 시간 옵셋과, 상기 시간 옵셋 플러스 1 단위 사이일 수 있다.
도 39는 일 실시예에 따른 주기적 애드버타이징 이벤트에 대한 BIG 이벤트를 설명하기 위한 도면이다.
도 39를 참조하면, 소스 전자 장치(3700)(예를 들어 전자 장치(101))가 제공하는 BIG 내 각 BIS는 이벤트 및 서브이벤트로 알려진 시간 슬롯의 스케줄로 구성될 수 있다. 소스 전자 장치(3700)는 BIG 이벤트(예를 들어 BIG 이벤트 x(3905)) 내의 서브이벤트들(예를 들어 BIS1 서브이벤트 및 BIS2 서브이벤트)에서 BIS 데이터 패킷들을 전송할 수 있다.
소스 전자 장치(3700)는 지정된 시점에서 BIG 정보(예를 들어 BIG 정보(3800))를 포함하는 애드버타이징 패킷(3910)(예를 들어 AUX_SYNC_IND with BIGInfo)을 전송할 수 있다. 소스 전자 장치(3705)는 상기 BIG 정보(3800)에 포함되는 BIG_Offset 및 BIG_Offset_Units을 기반으로 상기 AUX_SYNC_IND의 시작 시점 이후 BIG 앵커 포인트(3915)의 시작 시점을 결정할 수 있다. 상기 BIG 앵커 포인트(3915)로부터 다음 BIG 이벤트(예를 들어 BIG 이벤트 x+1(3920))가 시작할 수 있고, 각 BIS 서브이벤트(예를 들어 BIS1 서브이벤트 또는 BIS2 서브이벤트)는 BIS_Spacing에 의해 정의되는 듀레이션을 가질 수 있다.
SeedAccessAddress는 BIG에 대한 시드 액세스 주소(seed access address)를 나타낼 수 있다.
SDU_Interval은 SDU의 시간 간격(interval)을 나타낼 수 있다.
BaseCRCInit는 BIS 데이터 패킷을 위한 CRC(cyclic redundancy check) 초기값을 포함할 수 있다.
ChM는 사용(used) 데이터 채널 및 미사용(unused) 데이터 채널을 지시하는 채널 맵을 포함할 수 있다.
PHY는 BIG에서 사용하는 물리 채널 전송 방식(예를 들어 초당 심볼 속도(symbol per second) 및/또는 코딩 방식)을 나타낼 수 있다.
bisPayloadCount는 누락 페이로드를 검출하기 위한 카운트 값을 포함할 수 있다. bisPayloadCount는 BIG_Offset에 근거한 BIG 이벤트의 첫 번째 서브이벤트에 대한 값을 포함할 수 있다.
GIV 및 GSKD는 BIG가 암호화되는 경우, 암호화를 설명하는 값들을 포함할 수 있다.
BIG 정보(500)에 포함되는 상기 파라미터들은 BIG의 유효시간(lifetime) 동안 변경되지 않을 수 있다.
도 40은 일 실시예에 따른 BIG 이벤트 및 BIS 이벤트를 설명하기 위한 도면이다.
도 40을 참조하면, BIG 이벤트(예를 들어 BIG 이벤트 x(4005))는 하나 이상의 BIS 데이터 패킷들(예를 들어 PDUs)로 구성될 수 있다. 소스 전자 장치(3700)(예를 들어 전자 장치(101))는 BIG 이벤트들(예를 들어 BIG 이벤트 x(4005))에서 BIS 데이터 패킷들을 전송할 수 있다. 각 BIG 이벤트(예를 들어 BIG 이벤트 x(4005))는 Num_BIS개의 BIS 이벤트들과, 만일 존재하는 경우 하나의 제어 서브이벤트로 분할될 수 있다. 각 BIS 이벤트는 NSE 개의 서브이벤트들로 분할될 수 있다.
각 BIS 이벤트는 BIS 앵커 포인트에서 시작하여, 마지막 서브이벤트 이후에 종료될 수 있다. 각 BIG 이벤트(예를 들어 BIG 이벤트 x(4005))는 BIG 앵커 포인트에 시작하여, 제어 서브이벤트가 있다면 그 후에 종료되고, 그렇지 않은 경우, 마지막 구성 BIS 이벤트(constituent BIS event)에서 종료될 수 있다. BIG 앵커 포인트들은 ISO_Interval(4010)의 간격으로 규칙적으로 이격될 수 있다. BIG의 BIS n을 위한 BIS 앵커 포인트들은 BIG 앵커 포인트들로부터 (n - 1) × BIS_Spacing 이후일 수 있으며, ISO_Interval(4010) 만큼씩 규칙적으로 이격될 수 있다. 각 BIS의 서브이벤트들은 Sub_Interval만큼 이격될 수 있다. 소스 전자 장치(3700)는 적어도 다음 BIG 이벤트의 BIG 앵커 포인트보다 적어도 T_IFS(예를 들어 150μs) 만큼 이전에 현재 BIG 이벤트(예를 들어 BIG 이벤트 x(4005))를 종료할 수 있다. BIS 내에서 연속된 서브이벤트들 간 간격은 T_MSS로 정의될 수 있다.
BIG내의 BIS들은 Sub_Interval 및 BIS_Spacing에 따라 순차적(sequential) 또는 인터리브(interleaved)로 배치될 수 있다. 순차적 배치의 경우, BIS_Spacing은 NSE × Sub_Interval보다 크거나 같고, BIS 이벤트의 모든 서브이벤트들이 함께 발생할 수 있다. 인터리브 배치인 경우, Sub_Interval은 Num_BIS × BIS_Spacing이고, 모든 BIS들의 첫 번째 서브이벤트들이 인접하며, 다음 모든 BIS들의 두 번째 서브이벤트들이 인접할 수 있다.
BIG 이벤트의 데이터 부분(제어 서브이벤트를 제외하고)에 대한 가능한 최대 길이는 BIG_Sync_Delay로 표시될 수 있다. BIG_Sync_Delay의 값은 BIS 앵커 포인트부터 마지막 서브이벤트에서 전송된 Max_PDU 옥텟의 페이로드를 포함하는 패킷의 끝 시점인 BIG 동기화 시점(synchronization point)까지의 시간과 같을 수 있다. (BIG_Sync_Delay = (Num_BIS - 1) × BIS_Spacing + (NSE - 1) × Sub_Interval + MPT)
BIS 서브이벤트는 소스 전자 장치(3700)가 BIS 데이터 패킷들을 전송하고, 싱크 역할로 동작하는 전자 장치(3705)(예를 들어 제1 외부 전자 장치(202) 및/또는 제2 외부 전자 장치(204))가 상기 BIS 데이터 패킷들을 수신할 수 있는 기회(opportunity)이다. 소스 전자 장치(3700)는 BIS 이벤트의 각 BIS 서브이벤트가 시작되는 시점에서 하나의 BIS 데이터 패킷을 전송할 수 있고, 예를 들어 6개의 연속적인 BIS 이벤트들 내에서 적어도 하나의 BIS 패킷을 전송할 수 있다.
각 BIS 이벤트에 대해 소스 전자 장치(3700)는 BN개의 페이로드들로 구성된 데이터 버스트를 제공할 수 있다. 각 페이로드는 단일 프래그먼트 또는 하나 이상의 SDU 세그먼트들을 포함할 수 있다. 하나의 데이터 버스트는 지정된 BIS 이벤트와 관련되지만, 앞선(earlier) 이벤트들에서 전송될 수 있다.
싱크 전자 장치(3705)는 소스 전자 장치(3700)가 BIS 오디오를 송신하기로 결정한 시간 구간(예를 들어 시간 구간(4104)) 이외의 구간에는 BIS 오디오 수신을 위한 수신 동작을 수행하지 않을 수 있다. 이로 인해 소스 전자 장치(3700)가 BIS 오디오를 송신하기로 약속한 시간 구간(예를 들어 시간 구간(4104)) 이외의 구간에서는 BIS 오디오 통신이 불가할 수 있다. 소스 전자 장치(3700)가 한정된 자원에서 제한된 자원(예를 들어 시간 구간(4104))만 사용하여 BIS 오디오를 전송하는 경우, 싱크 전자 장치(3705)의 BIS 오디오 데이터 수신률이 감소될 수 있다. 소스 전자 장치(3700)는 싱크 전자 장치(3705)가 BIS 오디오를 성공적으로 수신할 수 있도록 BIS 오디오 데이터를 반복적으로 전송할 수 있다.
도 41은 일 실시예에 따른 BIS 통신을 위한 자원 할당을 설명하기 위한 도면이다.
도 41을 참조하면, BIS 전송에 대해 Num_BIS = 2, ISO Interval = 20ms, BN = 2, NSE = 10, Sub_Interval = 1.188ms, BIS_Spacing = 0.594ms, PTO = 0, IRC = 5, 및 Max PDU Size = 100byte가 설정되어 있다. ISO 간격(4102) 내 하나의 BIS 이벤트에 대응하는 시간 구간(4104)은 예를 들어 5개(= NSE/BN = 10/2)의 서브이벤트 그룹들(예를 들어 서브이벤트 그룹(4106))을 포함할 수 있다. 각 서브이벤트 그룹(예를 들어 서브이벤트 그룹(4106))은 2개의 서브이벤트들을 포함할 수 있고, 하나의 서브이벤트는 라이트 채널의 BIS 데이터 패킷(예를 들어 R0(4108)) 및 레프트 채널의 BIS 데이터 패킷(예를 들어 L0(4110))을 운반하는데 사용될 수 있다. 도시한 바와 같이 BIS 링크에서 하나의 서브이벤트는 단방향의 전송 데이터(예를 들어 R0 및/또는 L0)와 적어도 T_MSS(예를 들어 150 μs)로 구성될 수 있다. 동일한 BIS 오디오 데이터(예를 들어 R0(4108) 및 L0(4110))는 ISO 간격(4102) 내에서 지정된 횟수(예를 들어 10번)만큼 반복 전송될 수 있다.
일 실시예에서 전자 장치(101)는 BIS 오디오 전송의 타이밍 및 전송 순서와 같은 BIS 서비스의 파라미터들을 결정하고 상기 파라미터들을 주기적 애드버타이징에 포함되는 BIS 파라미터들(예를 들어 BIG 정보(3800))을 통해 주변에 위치하는 하나 또는 그 이상의 싱크 전자 장치들(예를 들어 제1 외부 전자 장치(202) 및/또는 제2 외부 전자 장치(204))에게 전송할 수 있다. 전자 장치(101)는 BIS 오디오 전송을 수행하는 도중 다른 통신 작업을 수행할 것을 결정(예를 들어 스케줄)할 수 있다. 일 실시예에서 상기 통신 작업은 페이지 스캔(page scan), 채널 스캔(channel scan), 또는 BLE 스캔과 같은 블루투스 동시성 동작 또는 Wi-Fi CoEX 중 적어도 하나를 포함할 수 있다. 상기 통신 작업은 BIS 오디오 전송과 동일 시간 구간 대에 함께 동작하도록 스케줄될 수 있다.
일 실시예에서 전자 장치(101)는 BIS 오디오 전송 도중 BIS 오디오 전송이 아닌 다른 통신 작업(예를 들어 Wi-Fi CoEX 및/또는 블루투스 동시성 동작)을 보장하기 위해서, BIS 오디오 전송에 사용 가능한 자원을 제한할 수 있다. 일 실시예에서 전자 장치(101)가 이동 전화기(mobile phone)와 같이 블루투스 통신과 Wi-Fi 통신을 둘 다 지원하도록 구성되는 경우, 전자 장치(101)는 BIS 오디오 전송을 위해 사용 가능한 제1 자원을 ISO 간격(예를 들어 ISO 간격(4102))의 대략 50%(예를 들어 58.65%)에 해당하는 시간 구간(예를 들어 시간 구간(4104))으로 설정할 수 있다.
일 실시예에서 전자 장치(101)는 한정된 시간 구간(예를 들어 ISO 간격(4102))의 지정된 자원(예를 들어 시간 구간(4104))을 사용하여 BIS 오디오를 전송하도록 BIG 정보(예를 들어 BIG 정보(3800))의 BIG 파라미터들을 설정할 수 있다. 예를 들어, 상기 파라미터들은 BIS 오디오 전송이 최대한의 RF 자원(예를 들어 시간 구간(4104))을 점유하도록 설정될 수 있다. 전자 장치(101)는 상기 BIG 파라미터들을 기반으로 BIS 오디오를 전송할 수 있다. 일 실시예에서 전자 장치(101)는 BIS 오디오 전송이 아닌 다른 작업(예를 들어 Wi-Fi CoEX 및/또는 블루투스 동시성 동작)의 수행을 가능하게 하면서 BIS 오디오의 품질을 보장하기 위해, BIS 오디오 전송을 위한 시간 구간(예를 들어 시간 구간(4104))을 서로 다른 우선순위들을 위한 적어도 두 개 이상의 시간 구간들(예를 들어 시간 구간(4204) 및 시간 구간(4206)으로 분할할 수 있다. 전자 장치(101)는 각 시간 구간의 우선순위를 스케줄된 작업들의 우선순위들과 비교하여, 우선순위가 높은 작업을 먼저 처리할 수 있다.
도 42는 일 실시예에 따른 BIS 통신을 위한 자원 분할을 설명하기 위한 도면이다.
도 42를 참조하면, BIS 전송에 대해 Num_BIS = 2, ISO Interval = 20ms, BN = 2, NSE = 16, BIS_Spacing = 0.594ms, Sub_Interval = 1.188ms, = PTO 0, 및 IRC = 8과 같은 BIG 파라미터들이 설정될 수 있다. 상기 BIG 파라미터들에 의해 BIS 오디오 전송을 위한 제1 시간 구간(4202)은 총 8개의 서브이벤트 그룹들을 포함할 수 있고, ISO 간격의 92.29%를 점유하도록 구성될 수 있다. 전자 장치(101)는 총 8개의 서브이벤트 그룹들을 포함하는 제1 시간 구간(4202)을 5개의 서브이벤트 그룹들(예를 들어 서브이벤트 그룹(4204a))을 포함하는 제2 시간 구간(4204)과, 3개의 서브이벤트 그룹들(예를 들어 서브이벤트 그룹(4206a))을 포함하는 제3 시간 구간(4206)으로 분할할 수 있다.
일 실시예에서 제2 시간 구간(4204)은 상대적으로 높은 값을 가지는 제1 우선순위에 대응할 수 있고, 제3 시간 구간(4206)은 상대적으로 낮은 값을 가지는 제2 우선순위에 대응할 수 있다. 도시하지 않을 것이지만, 일 실시예에서 제3 시간 구간(4206)은 PTO에 의해 지정되는 미래 BIS 이벤트들과 관련된 데이터를 운반하는 적어도 하나의 서브이벤트 그룹을 포함할 수 있다. 제2 시간 구간(4204)에 부여되는 제1 우선순위는 예를 들어 Wi-Fi CoEX 및/또는 블루투스 동시성 동작의 우선순위보다 높을 수 있다. 제3 시간 구간(4206)에 부여되는 제2 우선순위는 예를 들어 Wi-Fi CoEX 및/또는 블루투스 동시성 동작의 우선순위보다 낮을 수 있다.
도 43은 일 실시예에 따른 더 높은 우선순위의 통신 작업을 수행하는 동작을 설명하기 위한 도면이다.
도 43을 참조하면, BIS 전송에 대해 지정된 BIG 파라미터들에 따라 BIS 오디오 전송을 위한 제1 시간 구간(4302)은 총 8개의 서브이벤트 그룹들을 포함할 수 있고, ISO 간격의 92.29%를 점유할 수 있다. 전자 장치(101)는 총 8개의 서브이벤트 그룹들을 포함하는 제1 시간 구간(4302)을 5개의 서브이벤트 그룹들(예를 들어 서브이벤트 그룹(4304a))에 대응하는 제2 시간 구간(4304)과, 3개의 서브이벤트 그룹들에 대응하는 제3 시간 구간(4306)으로 분할할 수 있다.
전자 장치(101)는 BIS 오디오 전송(예를 들어 BIS 작업)이 아닌 다른 작업(예를 들어 Wi-Fi CoEX 또는 블루투스 동시성 동작)이 BIS 오디오 전송과 동일 시점에 스케줄됨을 확인하면, 더 높은 우선순위를 가지는 작업(예를 들어 BIS 작업 또는 상기 다른 작업)을 우선적으로 수행할 수 있다. 예를 들어, 낮은 우선순위(예를 들어 제2 우선순위)로 BIS 오디오를 전송하도록 지정된 제3 시간 구간(4306)에, 제2 우선순위보다 더 높은 우선순위를 가지는 Wi-Fi CoEX(예를 들어 Wi-Fi 데이터 전송(4308))이 스케줄된 경우, 전자 장치(101)는 상기 Wi-Fi 데이터 전송(4308)의 우선순위와 상기 제2 우선순위를 비교하고, 더 높은 우선순위를 가지는 Wi-Fi 데이터 전송(4308)을 제3 시간 구간(4306)에서 수행할 수 있다. 제3 시간 구간(4306)에서 수행할 예정이었던 BIS 작업(예를 들어 R0 및 L1의 재전송, 또는 미래 BIS 오디오(예를 들어 R2 및 L2, R3 및 L3)의 전송)은 생략되거나 다음 BIS 이벤트(예를 들어 BIS 이벤트 k+1)로 연기될 수 있다. 일 실시예에서 전자 장치(101)는 제3 시간 구간(4306) 이전에 Wi-Fi CoEX를 위한 Wi-Fi 데이터가 작업 큐에 저장되어 있음을 식별함에 의해 Wi-Fi CoEX가 스케줄된 것으로 판단할 수 있다.
본 개시의 실시예들에 따른 전자 장치 및 그 동작 방법은, 저전력 블루투스(BLE)를 사용하여 오디오 서비스를 제공함에 있어서 소스 전자 장치의 자원 사용을 최적화하고 블루투스 동시성 동작 또는 Wi-Fi 공존과 다른 동작들을 고려하여 싱크 전자 장치들의 수신 기회들을 보장하여, 오디오 데이터의 수신 성공률을 유지하면서 다른 통신 작업을 수행할 수 있다.
일 실시예에 따른 전자 장치(101)는, 통신 회로(192) 및 적어도 하나의 프로세서(120)를 포함할 수 있다. 상기 적어도 하나의 프로세서는, 적어도 하나의 오디오 통신 링크(506, 508)에서 오디오 서비스를 위해 사용 가능한 제1 자원(1708, 1804, 1812, 4202, 4302)을 결정하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 제1 자원 내에서 제1 우선순위를 위한 제2 자원(1710, 1806, 1814, 4204, 4304)과 상기 제1 우선순위보다 낮은 제2 우선순위를 위한 제3 자원(1712, 1808, 1816, 4206, 4306)을 결정하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 통신 회로를 통해, 상기 제2 자원 또는 상기 제3 자원 중 적어도 하나를 사용하여 상기 적어도 하나의 오디오 통신 링크를 통해 적어도 하나의 외부 전자 장치(202, 204)에게 상기 오디오 서비스를 제공하도록 구성될 수 있다.
일 실시예에서 상기 적어도 하나의 프로세서는 상기 제1 우선순위를 갖는 제1 통신 작업에 상기 제2 자원을 할당하고 상기 제2 우선순위를 갖는 제2 통신 작업에 상기 제3 자원을 할당하도록 구성될 수 있다.
일 실시예에서 상기 적어도 하나의 프로세서는, 상기 오디오 서비스를 제공하는 동안, 상기 적어도 하나의 오디오 통신 링크의 주파수 대역에 대응하는 주파수 대역을 사용하는 제1 통신 작업(4308)이 스케줄됨을 감지하고, 상기 제1 통신 작업에 대해 지정된 제3 우선순위가 상기 제2 우선순위보다 높음을 확인하고, 상기 제1 통신 작업에 대해 지정된 상기 제3 우선순위가 상기 제2 우선순위보다 높음을 확인함에 기반하여, 상기 통신 회로를 통해, 상기 제3 자원을 사용하여 상기 제1 통신 작업을 수행하도록 구성될 수 있다.
일 실시예에서 상기 제1 통신 작업은, 블루투스 동시성(concurrency) 동작 또는 Wi-Fi 공존 동작 중 적어도 하나를 포함할 수 있다.
일 실시예에서 상기 블루투스 동시성 동작은, 블루투스 인쿼리, 블루투스 인쿼리 스캔, 블루투스 페이징, 블루투스 페이지 스캔, BLE 스캔, BLE 애드버타이징, 블루투스 연결 유지, BLE 연결 유지, 또는 채널 스캔 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 상기 제1 자원은, 상기 적어도 하나의 오디오 통신 링크 상의 하나의 이벤트에 대응하는 시간 구간 중 상기 오디오 서비스를 위해 할당되는 복수의 서브이벤트들에 대응하는 제1 시간 구간을 포함할 수 있다. 상기 제2 자원은 상기 제1 시간 구간 중 상기 오디오 서비스를 위해 사용되도록 보장되는 적어도 하나의 제1 서브이벤트에 대응하는 제2 시간 구간을 포함할 수 있다. 상기 제3 자원은 상기 제1 시간 구간 중 상기 적어도 하나의 제1 서브이벤트를 제외한 나머지 적어도 하나의 제2 서브이벤트에 대응하는 제3 시간 구간을 포함할 수 있다.
일 실시예에서 상기 적어도 하나의 제1 서브이벤트는, 오디오 데이터 패킷의 초기 전송에 사용되기 위한 적어도 하나의 서브이벤트를 포함할 수 있다. 상기 적어도 하나의 제2 서브이벤트는, 상기 오디오 데이터 패킷의 재전송에 사용되기 위한 적어도 하나의 서브이벤트를 포함할 수 있다.
일 실시예에서 상기 적어도 하나의 제1 서브이벤트는, 오디오 데이터 패킷의 초기 전송에 사용되기 위한 적어도 하나의 서브이벤트(4108, 4110)를 포함할 수 있다. 상기 적어도 하나의 제2 서브이벤트는, 상기 오디오 데이터 패킷의 재전송에 사용되기 위한 적어도 하나의 서브이벤트 또는 미래 오디오 데이터 패킷의 전송에 사용되기 위한 적어도 하나의 서브이벤트 중 적어도 하나를 포함할 수 있다.
일 실시예에서 상기 적어도 하나의 프로세서는, 상기 적어도 하나의 오디오 통신 링크를 위해 사용되는 하나의 이벤트 중 상기 제1 자원에 대응하는 서브이벤트들의 개수를 결정하고, 상기 제2 자원에 대응하는 제1 서브이벤트들의 개수와 상기 제3 자원에 대응하는 제2 서브이벤트들의 개수를 결정하도록 구성될 수 있다.
일 실시예에서 상기 적어도 하나의 프로세서는, 지정된 시간 비율 또는 지정된 서브이벤트 개수에 따라 상기 제2 자원에 대응하는 제1 서브이벤트들을 결정하도록 구성될 수 있다.
일 실시예에서 상기 적어도 하나의 프로세서는, 상기 제3 우선순위가 상기 제2 우선순위보다 높음에 근거하여, 상기 제3 자원에 스케줄된 상기 제2 우선순위를 가지는 오디오 통신 작업을 생략하거나 연기하도록 구성될 수 있다.
일 실시예에서 상기 적어도 하나의 프로세서는, 상기 제2 자원을 통해 상기 제2 자원에 스케줄된 상기 제1 우선순위를 가지는 오디오 통신 작업을 수행하도록 구성될 수 있다.
일 실시예에서 상기 적어도 하나의 프로세서는, 상기 제3 우선순위가 상기 제2 우선순위보다 낮음에 근거하여, 상기 제2 자원 및 상기 제3 자원을 제외한 제4 자원을 사용하여 상기 제1 통신 작업을 수행하도록 구성될 수 있다.
일 실시예에서 상기 적어도 하나의 오디오 통신 링크는 제1 CIS 이벤트를 사용하는 제1 CIS 링크 및 제2 CIS 이벤트를 사용하는 제2 CIS 링크를 포함하고, 상기 제1 CIS 이벤트의 적어도 일부 서브이벤트는 상기 제2 CIS 이벤트의 적어도 일부 서브이벤트와 중첩될 수 있다. 상기 제2 자원은 상기 제1 CIS 이벤트의 적어도 일부 서브이벤트와 중첩되는 상기 제2 CIS 이벤트의 적어도 일부 서브이벤트에 대응하는 시간 구간을 포함할 수 있다. 상기 제3 자원은 상기 제1 CIS 이벤트의 적어도 일부 서브이벤트와 중첩되는 상기 제2 CIS 이벤트의 나머지 서브이벤트 또는 상기 제1 CIS 이벤트와 중첩되지 않는 상기 제2 CIS 이벤트의 적어도 일부 서브이벤트 중 적어도 하나에 대응하는 시간 구간을 포함할 수 있다.
일 실시예에 따르면, 전자 장치(101)는 통신 회로(190) 및 적어도 하나의 프로세서(120)를 포함할 수 있다. 상기 적어도 하나의 프로세서는 BLE 기반으로 주변의 블루투스 장치를 검색하기 위한 스캔 동작을 수행하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 BLE 스캔을 통해 제1 외부 전자 장치로부터 광고 패킷을 수신하고 제1 외부 전자 장치와 제1 LE 통신 링크를 생성(또는 설정)하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 BLE 스캔을 통해 제2 외부 전자 장치로부터 광고 패킷을 수신하고 제2 외부 전자 장치와 제2 LE 통신 링크를 생성(또는 설정)하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 수신한 광고 패킷에 포함된 정보에 기반하여 제1 외부 전자 장치 및/또는 제2 외부 전자 장치와 관련된 사용자 인터페이스를 디스플레이를 통해 출력하도록 구성될 수 있다.
상기 적어도 하나의 프로세서는 사용자의 의도 또는 지정된 정책에 따라 제1 외부 전자 장치 및 제2 외부 전자 장치와의 CIS 통신을 통해 오디오 서비스의 시작을 결정하고, 제1 외부 전자 장치와의 제1 CIS 링크 및 제2 외부 전자 장치와의 제2 CIS 링크에 사용 가능한 제1 자원을 산출하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 상기 제1 자원을 적어도 제2 자원 및 제3 자원으로 분할하고, 상기 제2 자원에 제1 우선순위를 설정하고, 상기 제3 자원에 더 낮은 우선순위 값을 갖는 제2 우선순위를 설정하도록 구성될 수 있다.
상기 적어도 하나의 프로세서는 제1 외부 전자 장치와 제1 CIS 링크를 생성(또는 설정)하고 제2 외부 전자 장치와 제2 CIS 링크를 생성(또는 설정)하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 제1 CIS 링크 및 제2 CIS 링크를 통해 제1 외부 전자 장치 및 제2 외부 전자 장치에 각각 오디오 서비스를 제공하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 오디오 서비스를 제공하는 동안 CIS 통신과 동일한 주파수 대역에서 수행되어야 하는 다른 작업이 발생했음을 식별하도록 구성될 수 있다.
상기 적어도 하나의 프로세서는 제3 작업의 우선순위와 CIS 링크들을 통해 수행될 CIS 작업들의 우선순위를 비교하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 더 높은 우선순위를 갖는 작업을 수행하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 오디오 서비스를 제공하면서 지정된 규칙 또는 지정된 정책에 따라 제1 CIS 링크 및 제2 CIS 링크를 통해 수행되는 CIS 작업의 우선순위를 변경할 필요가 있는지 여부를 결정하도록 구성될 수 있다. 상기 적어도 하나의 프로세서는 우선순위 변경이 필요하다고 판단되는 경우, 제1 우선순위 및/또는 제2 우선순위의 값을 더 높거나 더 낮은 값으로 변경하도록 구성될 수 있다.
일 실시예에 따른 전자 장치(101)의 동작 방법은, 적어도 하나의 오디오 통신 링크에서 오디오 서비스를 위해 사용 가능한 제1 자원(1708, 1804, 1812, 4202, 4302)을 결정하는 동작(1605, 1620)을 포함할 수 있다. 상기 방법은 상기 제1 자원 내에서 제1 우선순위를 위한 제2 자원(1710, 1806, 1814, 4204, 4304)과 상기 제1 우선순위보다 낮은 제2 우선순위를 위한 제3 자원(1712, 1808, 1816, 4206, 4306)을 결정하는 동작(1610, 1625)을 포함할 수 있다. 상기 방법은 상기 제2 자원 또는 상기 제3 자원 중 적어도 하나를 사용하여 상기 적어도 하나의 오디오 통신 링크를 통해 적어도 하나의 외부 전자 장치(202, 204)에게 상기 오디오 서비스를 제공하는 동작(1615, 1630)을 포함할 수 있다.
일 실시예에서 상기 방법은 상기 제1 우선순위를 갖는 제1 통신 작업에 상기 제2 자원을 할당하고 상기 제2 우선순위를 갖는 제2 통신 작업에 상기 제3 자원을 할당하는 동작을 더 포함할 수 있다.
일 실시예에서 상기 방법은, 상기 오디오 서비스를 제공하는 동안 상기 적어도 하나의 오디오 통신 링크와 동일한 주파수 대역을 사용하는 제1 통신 작업이 스케줄됨을 감지하는 동작(1635)과, 상기 제1 통신 작업에 대해 지정된 제3 우선순위가 상기 제2 우선순위보다 높음을 확인하는 동작(1640)과, 상기 제1 통신 작업에 대해 지정된 상기 제3 우선순위가 상기 제2 우선순위보다 높음을 확인함에 기반하여(1640), 상기 제3 자원을 사용하여 상기 제1 통신 작업을 수행하는 동작(1645)을 포함할 수 있다.
일 실시예에서 상기 제1 통신 작업은, 블루투스 동시성 동작 또는 Wi-Fi 공존 동작 중 적어도 하나를 포함할 수 있다.
일 실시예에서 상기 블루투스 동시성 동작은, 블루투스 인쿼리, 블루투스 인쿼리 스캔, 블루투스 페이징, 블루투스 페이지 스캔, BLE 스캔, BLE 애드버타이징, 블루투스 연결 유지, BLE 연결 유지, 또는 채널 스캔 중 적어도 하나를 포함할 수 있다.
일 실시예에서, 상기 제1 자원은, 상기 적어도 하나의 오디오 통신 링크 상의 하나의 이벤트에 대응하는 시간 구간 중 상기 오디오 서비스를 위해 할당되는 복수의 서브이벤트들에 대응하는 제1 시간 구간을 포함할 수 있다. 상기 제2 자원은 상기 제1 시간 구간 중 상기 오디오 서비스를 위해 사용되도록 보장되는 적어도 하나의 제1 서브이벤트에 대응하는 제2 시간 구간을 포함할 수 있다. 상기 제3 자원은 상기 제1 시간 구간 중 상기 적어도 하나의 제1 서브이벤트를 제외한 나머지 적어도 하나의 제2 서브이벤트에 대응하는 제3 시간 구간을 포함할 수 있다.
일 실시예에서 상기 적어도 하나의 제1 서브이벤트는, 오디오 데이터 패킷의 초기 전송에 사용되기 위한 적어도 하나의 서브이벤트를 포함할 수 있다. 상기 적어도 하나의 제2 서브이벤트는, 상기 오디오 데이터 패킷의 재전송에 사용되기 위한 적어도 하나의 서브이벤트를 포함할 수 있다.
일 실시예에서 상기 적어도 하나의 제1 서브이벤트는, 오디오 데이터 패킷의 초기 전송에 사용되기 위한 적어도 하나의 서브이벤트(4108, 4110)를 포함할 수 있다. 상기 적어도 하나의 제2 서브이벤트는, 상기 오디오 데이터 패킷의 재전송에 사용되기 위한 적어도 하나의 서브이벤트 또는 미래 오디오 데이터 패킷의 전송에 사용되기 위한 적어도 하나의 서브이벤트 중 적어도 하나를 포함할 수 있다.
일 실시예에서 상기 제1 자원을 결정하는 동작은, 상기 적어도 하나의 오디오 통신 링크를 위해 사용되는 하나의 이벤트 중 상기 제1 자원에 대응하는 서브이벤트들의 개수를 결정하는 동작을 포함할 수 있다. 상기 제2 자원과 상기 제3 자원을 결정하는 동작은, 상기 제2 자원에 대응하는 제1 서브이벤트들의 개수와 상기 제3 자원에 대응하는 제2 서브이벤트들의 개수를 결정하는 동작을 포함할 수 있다.
일 실시예에서 상기 제2 자원을 결정하는 동작은, 지정된 시간 비율 또는 지정된 서브이벤트 개수에 따라 상기 제2 자원에 대응하는 제1 서브이벤트들을 결정하는 동작을 포함할 수 있다.
일 실시예에서 상기 방법은, 상기 제3 우선순위가 상기 제2 우선순위보다 높음에 근거하여, 상기 제3 자원에 스케줄된 상기 제2 우선순위를 가지는 오디오 통신 작업을 생략하거나 연기하는 동작을 더 포함할 수 있다.
일 실시예에서 상기 오디오 서비스를 제공하는 동작은, 상기 제2 자원을 통해 상기 제2 자원에 스케줄된 상기 제1 우선순위를 가지는 오디오 통신 작업을 수행하는 동작을 포함할 수 있다.
일 실시예에서 상기 방법은, 상기 제3 우선순위가 상기 제2 우선순위보다 낮음에 근거하여, 상기 제2 자원 및 상기 제3 자원을 제외한 제4 자원을 사용하여 상기 제1 통신 작업을 수행하는 동작을 더 포함할 수 있다.
일 실시예에서 상기 적어도 하나의 오디오 통신 링크는 제1 CIS 이벤트를 사용하는 제1 CIS 링크 및 제2 CIS 이벤트를 사용하는 제2 CIS 링크를 포함하고, 상기 제1 CIS 이벤트의 적어도 일부 서브이벤트는 상기 제2 CIS 이벤트의 적어도 일부 서브이벤트와 중첩될 수 있다. 상기 제2 자원은 상기 제1 CIS 이벤트의 적어도 일부 서브이벤트와 중첩되는 상기 제2 CIS 이벤트의 적어도 일부 서브이벤트에 대응하는 시간 구간을 포함할 수 있다. 상기 제3 자원은 상기 제1 CIS 이벤트의 적어도 일부 서브이벤트와 중첩되는 상기 제2 CIS 이벤트의 나머지 서브이벤트와, 상기 제1 CIS 이벤트와 중첩되지 않는 상기 제2 CIS 이벤트의 적어도 일부 서브이벤트 중 적어도 하나에 대응하는 시간 구간을 포함할 수 있다.
일 실시예에 따르면 전자 장치(101)의 동작 방법은 BLE 기반으로 주변의 블루투스 장치를 검색하기 위한 스캔 동작을 수행하는 동작을 포함할 수 있다. 상기 방법은 BLE 스캔을 통해 제1 외부 전자 장치로부터 광고 패킷을 수신하고 제1 외부 전자 장치와 제1 LE 통신 링크를 생성(또는 설정)하는 동작을 포함할 수 있다. 상기 방법은 BLE 스캔을 통해 제2 외부 전자 장치로부터 광고 패킷을 수신하고 제2 외부 전자 장치와 제2 LE 통신 링크를 생성(또는 설정)하는 동작을 포함할 수 있다. 상기 방법은 상기 수신한 광고 패킷에 포함된 정보에 기반하여 제1 외부 전자 장치 및/또는 제2 외부 전자 장치와 관련된 사용자 인터페이스를 디스플레이를 통해 출력하는 동작을 포함할 수 있다.
상기 방법은 사용자의 의도 또는 지정된 정책에 따라 제1 외부 전자 장치 및 제2 외부 전자 장치와의 CIS 통신을 통해 오디오 서비스의 시작을 결정하고, 제1 외부 전자 장치와의 제1 CIS 링크 및 제2 외부 전자 장치와의 제2 CIS 링크에 사용 가능한 제1 자원을 산출하는 동작을 포함할 수 있다. 상기 방법은 상기 제1 자원을 적어도 제2 자원 및 제3 자원으로 분할하고, 상기 제2 자원에 제1 우선순위를 설정하고, 상기 제3 자원에 더 낮은 우선순위 값을 갖는 제2 우선순위를 설정하는 동작을 포함할 수 있다.
상기 방법은 제1 외부 전자 장치와 제1 CIS 링크를 생성(또는 설정)하고 제2 외부 전자 장치와 제2 CIS 링크를 생성(또는 설정)하도록 구성될 수 있다. 상기 방법은 제1 CIS 링크 및 제2 CIS 링크를 통해 제1 외부 전자 장치 및 제2 외부 전자 장치에 각각 오디오 서비스를 제공하는 동작을 포함할 수 있다. 상기 방법은 오디오 서비스를 제공하는 동안 CIS 통신과 동일한 주파수 대역에서 수행되어야 하는 다른 작업이 발생했음을 식별하는 동작을 포함할 수 있다.
상기 방법은 제3 작업의 우선순위와 CIS 링크들을 통해 수행될 CIS 작업들의 우선순위를 비교하는 동작을 포함할 수 있다. 상기 방법은 더 높은 우선순위를 갖는 작업을 수행하는 동작을 포함할 수 있다. 상기 방법은 오디오 서비스를 제공하면서 지정된 규칙 또는 지정된 정책에 따라 제1 CIS 링크 및 제2 CIS 링크를 통해 수행되는 CIS 작업의 우선순위를 변경할 필요가 있는지 여부를 결정하는 동작을 포함할 수 있다. 상기 방법은 우선순위 변경이 필요하다고 판단되는 경우, 제1 우선순위 및/또는 제2 우선순위의 값을 더 높거나 더 낮은 값으로 변경하는 동작을 포함할 수 있다.
본 문서에 개시된 다양한 실시예들에 따른 전자 장치는 다양한 형태의 장치가 될 수 있다. 전자 장치는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 컴퓨터 장치, 휴대용 멀티미디어 장치, 휴대용 의료 기기, 카메라, 웨어러블 장치, 또는 가전 장치를 포함할 수 있다. 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않는다.
본 문서의 다양한 실시예들 및 이에 사용된 용어들은 본 문서에 기재된 기술적 특징들을 특정한 실시예들로 한정하려는 것이 아니며, 해당 실시예의 다양한 변경, 균등물, 또는 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 또는 관련된 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 아이템에 대응하는 명사의 단수 형은 관련된 문맥상 명백하게 다르게 지시하지 않는 한, 상기 아이템 한 개 또는 복수 개를 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및 B 중 적어도 하나", "A 또는 B 중 적어도 하나", "A, B 또는 C", "A, B 및 C 중 적어도 하나", 및 "A, B, 또는 C 중 적어도 하나"와 같은 문구들 각각은 그 문구들 중 해당하는 문구에 함께 나열된 항목들 중 어느 하나, 또는 그들의 모든 가능한 조합을 포함할 수 있다. "제 1", "제 2", 또는 "첫째" 또는 "둘째"와 같은 용어들은 단순히 해당 구성요소를 다른 해당 구성요소와 구분하기 위해 사용될 수 있으며, 해당 구성요소들을 다른 측면(예: 중요성 또는 순서)에서 한정하지 않는다. 어떤(예: 제 1) 구성요소가 다른(예: 제 2) 구성요소에, "기능적으로" 또는 "통신적으로"라는 용어와 함께 또는 이런 용어 없이, "커플드" 또는 "커넥티드"라고 언급된 경우, 그것은 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로(예: 유선으로), 무선으로, 또는 제 3 구성요소를 통하여 연결될 수 있다는 것을 의미한다.
본 문서의 다양한 실시예들에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어로 구현된 유닛을 포함할 수 있으며, 예를 들면, 로직, 논리 블록, 부품, 또는 회로와 같은 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는, 상기 부품의 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 일실시예에 따르면, 모듈은 ASIC(application-specific integrated circuit)의 형태로 구현될 수 있다.
본 문서의 다양한 실시예들은 기기(machine)(예: 전자 장치(101)) 의해 읽을 수 있는 저장 매체(storage medium)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 하나 이상의 명령어들을 포함하는 소프트웨어(예: 프로그램(140))로서 구현될 수 있다. 예를 들면, 기기(예: 전자 장치(101))의 프로세서(예: 프로세서(120))는, 저장 매체로부터 저장된 하나 이상의 명령어들 중 적어도 하나의 명령을 호출하고, 그것을 실행할 수 있다. 이것은 기기가 상기 호출된 적어도 하나의 명령어에 따라 적어도 하나의 기능을 수행하도록 운영되는 것을 가능하게 한다. 상기 하나 이상의 명령어들은 컴파일러에 의해 생성된 코드 또는 인터프리터에 의해 실행될 수 있는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장 매체가 실재(tangible)하는 장치이고, 신호(signal)(예: 전자기파)를 포함하지 않는다는 것을 의미할 뿐이며, 이 용어는 데이터가 저장 매체에 반영구적으로 저장되는 경우와 임시적으로 저장되는 경우를 구분하지 않는다.
일실시예에 따르면, 본 문서에 개시된 다양한 실시예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory(CD-ROM))의 형태로 배포되거나, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 또는 두 개의 사용자 장치들(예: 스마트 폰들) 간에 직접, 온라인으로 배포(예: 다운로드 또는 업로드)될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 기기로 읽을 수 있는 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시예들에 따르면, 상기 기술한 구성요소들의 각각의 구성요소(예: 모듈 또는 프로그램)는 단수 또는 복수의 개체를 포함할 수 있으며, 복수의 개체 중 일부는 다른 구성요소에 분리 배치될 수도 있다. 다양한 실시예들에 따르면, 전술한 해당 구성요소들 중 하나 이상의 구성요소들 또는 동작들이 생략되거나, 또는 하나 이상의 다른 구성요소들 또는 동작들이 추가될 수 있다. 대체적으로 또는 추가적으로, 복수의 구성요소들(예: 모듈 또는 프로그램)은 하나의 구성요소로 통합될 수 있다. 이런 경우, 통합된 구성요소는 상기 복수의 구성요소들 각각의 구성요소의 하나 이상의 기능들을 상기 통합 이전에 상기 복수의 구성요소들 중 해당 구성요소에 의해 수행되는 것과 동일 또는 유사하게 수행할 수 있다. 다양한 실시예들에 따르면, 모듈, 프로그램 또는 다른 구성요소에 의해 수행되는 동작들은 순차적으로, 병렬적으로, 반복적으로, 또는 휴리스틱하게 실행되거나, 상기 동작들 중 하나 이상이 다른 순서로 실행되거나, 생략되거나, 또는 하나 이상의 다른 동작들이 추가될 수 있다.
많은 특징들(독립항의 특징을 제외한)은 단지 선택적이기 때문에, 바람직한 실시예들의 특징들은 "할 수 있다"로 설명되었다. 그럼에도 불구하고, 상기 바람직한 실시예들은 도면에 도시된 바와 같은 특정한 바람직한 조합으로 개시되는 것으로 이해되어야 하며, 따라서 도면에 도시된 특징들은 본 발명의 범위를 제한하지 않는 본 발명에 대한 실제 바람직한 조합으로 이해되어야 한다.
Claims (15)
- 전자 장치(101)에 있어서,통신 회로(192); 및상기 통신 회로와 작동적으로 연결되는 적어도 하나의 프로세서(120)를 포함하고,상기 적어도 하나의 프로세서는,적어도 하나의 오디오 통신 링크(506, 508)에서 오디오 서비스를 위해 사용 가능한 제1 자원(1708, 1804, 1812, 4202, 4302)을 결정하고(1605, 1620),상기 제1 자원 내에서 제1 우선순위를 위한 제2 자원(1710, 1806, 1814, 4204, 4304)과 상기 제1 우선순위보다 낮은 제2 우선순위를 위한 제3 자원(1712, 1808, 1816, 4206, 4306)을 결정하고(1610, 1625),상기 통신 회로를 통해, 상기 제2 자원 또는 상기 제3 자원 중 적어도 하나를 사용하여 상기 적어도 하나의 오디오 통신 링크를 통해 적어도 하나의 외부 전자 장치(202, 204)에게 상기 오디오 서비스를 제공(1615, 1630)하도록 구성되는 것을 특징으로 하는 전자 장치.
- 제 1 항에 있어서, 상기 적어도 하나의 프로세서는,상기 오디오 서비스를 제공하는 동안, 상기 적어도 하나의 오디오 통신 링크의 주파수 대역에 대응하는 주파수 대역을 사용하는 제1 통신 작업이 스케줄됨을 감지하고(1635),상기 제1 통신 작업에 대해 지정된 제3 우선순위가 상기 제2 우선순위보다 높음을 확인하고(1640),상기 제1 통신 작업에 대해 지정된 상기 제3 우선순위가 상기 제2 우선순위보다 높음을 확인함에 기반하여(1640), 상기 통신 회로를 통해, 상기 제3 자원을 사용하여 상기 제1 통신 작업을 수행(1645)하도록 구성되는 것을 특징으로 하는 전자 장치.
- 제 2 항에 있어서, 상기 제1 통신 작업은,블루투스 동시성(concurrency) 동작 또는 Wi-Fi 공존(coexistence) 동작 중 적어도 하나를 포함하고,상기 블루투스 동시성 동작은,블루투스 인쿼리, 블루투스 인쿼리 스캔, 블루투스 페이징, 블루투스 페이지 스캔, BLE 스캔, BLE 애드버타이징, 블루투스 연결 유지, BLE 연결 유지, 또는 채널 스캔 중 적어도 하나를 포함하는 것을 특징으로 하는 전자 장치.
- 제 1 항 내지 제 3 항 중 어느 한 항에 있어서, 상기 제1 자원은, 상기 적어도 하나의 오디오 통신 링크 상의 하나의 이벤트에 대응하는 시간 구간 중 상기 오디오 서비스를 위해 할당되는 복수의 서브이벤트들에 대응하는 제1 시간 구간을 포함하고,상기 제2 자원은 상기 제1 시간 구간 중 상기 오디오 서비스를 위해 사용되도록 보장되는 적어도 하나의 제1 서브이벤트에 대응하는 제2 시간 구간을 포함하고,상기 제3 자원은 상기 제1 시간 구간 중 상기 적어도 하나의 제1 서브이벤트를 제외한 나머지 적어도 하나의 제2 서브이벤트에 대응하는 제3 시간 구간을 포함하는 것을 특징으로 하는 전자 장치.
- 제 4 항에 있어서, 상기 적어도 하나의 제1 서브이벤트는, 오디오 데이터 패킷의 초기 전송에 사용되기 위한 적어도 하나의 서브이벤트를 포함하고,상기 적어도 하나의 제2 서브이벤트는, 상기 오디오 데이터 패킷의 재전송에 사용되기 위한 적어도 하나의 서브이벤트를 포함하는 것을 특징으로 하는 전자 장치.
- 제 4 항에 있어서, 상기 적어도 하나의 제1 서브이벤트는, 오디오 데이터 패킷의 초기 전송에 사용되기 위한 적어도 하나의 서브이벤트(4108, 4110)를 포함하고,상기 적어도 하나의 제2 서브이벤트는, 상기 오디오 데이터 패킷의 재전송에 사용되기 위한 적어도 하나의 서브이벤트 또는 미래 오디오 데이터 패킷의 전송에 사용되기 위한 적어도 하나의 서브이벤트 중 적어도 하나를 포함하는 것을 특징으로 하는 전자 장치.
- 제 1 항 내지 제 6 항 중 어느 한 항에 있어서, 상기 적어도 하나의 프로세서는,상기 적어도 하나의 오디오 통신 링크를 위해 사용되는 하나의 이벤트 중 상기 제1 자원에 대응하는 서브이벤트들의 개수를 결정하고,지정된 시간 비율 또는 지정된 서브이벤트 개수에 따라 상기 제2 자원에 대응하는 제1 서브이벤트들의 개수와 상기 제3 자원에 대응하는 제2 서브이벤트들의 개수를 결정하도록 구성되는 것을 특징으로 하는 전자 장치.
- 제 2 항에 있어서, 상기 적어도 하나의 프로세서는,상기 제3 우선순위가 상기 제2 우선순위보다 높음에 근거하여, 상기 제3 자원에 스케줄된 상기 제2 우선순위를 가지는 오디오 통신 작업을 생략하거나 연기하도록 구성되는 것을 특징으로 하는 전자 장치.
- 제 2 항에 있어서, 상기 적어도 하나의 프로세서는,상기 제3 우선순위가 상기 제2 우선순위보다 낮음에 근거하여, 상기 제2 자원 및 상기 제3 자원을 제외한 제4 자원을 사용하여 상기 제1 통신 작업을 수행하도록 구성되는 것을 특징으로 하는 전자 장치.
- 제 1 항 내지 제 4 항 중 어느 한 항에 있어서,상기 적어도 하나의 오디오 통신 링크는 제1 CIS 이벤트를 사용하는 제1 CIS 링크 및 제2 CIS 이벤트를 사용하는 제2 CIS 링크를 포함하고, 상기 제1 CIS 이벤트의 적어도 일부 서브이벤트는 상기 제2 CIS 이벤트의 적어도 일부 서브이벤트와 중첩되고,상기 제2 자원은 상기 제1 CIS 이벤트의 적어도 일부 서브이벤트와 중첩되는 상기 제2 CIS 이벤트의 적어도 일부 서브이벤트에 대응하는 시간 구간을 포함하고,상기 제3 자원은 상기 제1 CIS 이벤트의 적어도 일부 서브이벤트와 중첩되는 상기 제2 CIS 이벤트의 나머지 서브이벤트 또는 상기 제1 CIS 이벤트와 중첩되지 않는 상기 제2 CIS 이벤트의 적어도 일부 서브이벤트 중 적어도 하나에 대응하는 시간 구간을 포함하는 것을 특징으로 하는 전자 장치.
- 전자 장치(101)의 동작 방법에 있어서,적어도 하나의 오디오 통신 링크에서 오디오 서비스를 위해 사용 가능한 제1 자원(1708, 1804, 1812, 4202, 4302)을 결정하는 동작(1605, 1620)과,상기 제1 자원 내에서 제1 우선순위를 위한 제2 자원(1710, 1806, 1814, 4204, 4304)과 상기 제1 우선순위보다 낮은 제2 우선순위를 위한 제3 자원(1712, 1808, 1816, 4206, 4306)을 결정하는 동작(1610, 1625)과,상기 제2 자원 또는 상기 제3 자원 중 적어도 하나를 사용하여 상기 적어도 하나의 오디오 통신 링크를 통해 적어도 하나의 외부 전자 장치(202, 204)에게 상기 오디오 서비스를 제공하는 동작(1615, 1630)을 포함하는 것을 특징으로 하는 방법.
- 제 11 항에 있어서,상기 오디오 서비스를 제공하는 동안 상기 적어도 하나의 오디오 통신 링크와 동일한 주파수 대역을 사용하는 제1 통신 작업이 스케줄됨을 감지하는 동작(1635)과,상기 제1 통신 작업에 대해 지정된 제3 우선순위가 상기 제2 우선순위보다 높음을 확인하는 동작(1640)과,상기 제1 통신 작업에 대해 지정된 상기 제3 우선순위가 상기 제2 우선순위보다 높음을 확인함에 기반하여(1640), 상기 제3 자원을 사용하여 상기 제1 통신 작업을 수행하는 동작(1645)을 포함하는 것을 특징으로 하는 방법.
- 제 12 항에 있어서, 상기 제1 통신 작업은,블루투스 동시성(concurrency) 동작 또는 Wi-Fi 공존 동작 중 적어도 하나를 포함하고,상기 블루투스 동시성 동작은,블루투스 인쿼리, 블루투스 인쿼리 스캔, 블루투스 페이징, 블루투스 페이지 스캔, BLE 스캔, BLE 애드버타이징, 블루투스 연결 유지, BLE 연결 유지, 또는 채널 스캔 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
- 제 11 항 내지 제 13 항 중 어느 한 항에 있어서, 상기 제1 자원은,상기 적어도 하나의 오디오 통신 링크 상의 하나의 이벤트에 대응하는 시간 구간 중 상기 오디오 서비스를 위해 할당되는 복수의 서브이벤트들에 대응하는 제1 시간 구간을 포함하고,상기 제2 자원은 상기 제1 시간 구간 중 상기 오디오 서비스를 위해 사용되도록 보장되는 적어도 하나의 제1 서브이벤트에 대응하는 제2 시간 구간을 포함하고,상기 제3 자원은 상기 제1 시간 구간 중 상기 적어도 하나의 제1 서브이벤트를 제외한 나머지 적어도 하나의 제2 서브이벤트에 대응하는 제3 시간 구간을 포함하고,상기 적어도 하나의 제1 서브이벤트는, 오디오 데이터 패킷의 초기 전송에 사용되기 위한 적어도 하나의 서브이벤트를 포함하고, 상기 적어도 하나의 제2 서브이벤트는, 상기 오디오 데이터 패킷의 재전송에 사용되기 위한 적어도 하나의 서브이벤트를 포함하거나, 또는상기 적어도 하나의 제1 서브이벤트는, 오디오 데이터 패킷의 초기 전송에 사용되기 위한 적어도 하나의 서브이벤트(4108, 4110)를 포함하고, 상기 적어도 하나의 제2 서브이벤트는, 상기 오디오 데이터 패킷의 재전송에 사용되기 위한 적어도 하나의 서브이벤트 또는 미래 오디오 데이터 패킷의 전송에 사용되기 위한 적어도 하나의 서브이벤트 중 적어도 하나를 포함하는 것을 특징으로 하는 방법.
- 제 11 항 내지 제 14 항 중 어느 한 항에 있어서, 상기 제1 자원을 결정하는 동작은, 상기 적어도 하나의 오디오 통신 링크를 위해 사용되는 하나의 이벤트 중 상기 제1 자원에 대응하는 서브이벤트들의 개수를 결정하는 동작을 포함하고,상기 제2 자원과 상기 제3 자원을 결정하는 동작은,지정된 시간 비율 또는 지정된 서브이벤트 개수에 따라 상기 제2 자원에 대응하는 제1 서브이벤트들의 개수와 상기 제3 자원에 대응하는 제2 서브이벤트들의 개수를 결정하는 동작을 포함하는 것을 특징으로 하는 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP23733196.2A EP4287649A4 (en) | 2022-04-18 | 2023-04-18 | ELECTRONIC DEVICE DESIGNED FOR PROVIDING AUDIO SERVICE AND METHOD OF OPERATION THEREOF |
Applications Claiming Priority (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR10-2022-0047727 | 2022-04-18 | ||
KR20220047727 | 2022-04-18 | ||
KR20220053796 | 2022-04-29 | ||
KR10-2022-0053796 | 2022-04-29 | ||
KRPCT/KR2023/002151 | 2023-02-14 | ||
KR2023002151 | 2023-02-14 | ||
KR10-2023-0049677 | 2023-04-14 | ||
KR1020230049677A KR20230148770A (ko) | 2022-04-18 | 2023-04-14 | 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2023204578A1 true WO2023204578A1 (ko) | 2023-10-26 |
Family
ID=87863529
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/KR2023/005246 WO2023204578A1 (ko) | 2022-04-18 | 2023-04-18 | 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 |
Country Status (2)
Country | Link |
---|---|
EP (1) | EP4287649A4 (ko) |
WO (1) | WO2023204578A1 (ko) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130259237A1 (en) * | 2010-11-24 | 2013-10-03 | Phonak Ag | Hearing assistance system and method |
US20140285313A1 (en) * | 2013-03-15 | 2014-09-25 | Aliphcom | Proximity sensing device control architecture and data communication protocol |
KR20160030710A (ko) * | 2014-09-11 | 2016-03-21 | 삼성전자주식회사 | 무선통신 시스템에서 전자 장치의 트래픽 제어 방법 및 장치 |
KR20190118906A (ko) * | 2018-04-11 | 2019-10-21 | 삼성전자주식회사 | 전자 장치 및 그 제어 방법 |
KR102273109B1 (ko) * | 2013-07-19 | 2021-07-06 | 삼성전자주식회사 | 캐싱 방법 및 그 전자 장치 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9648518B2 (en) * | 2015-03-06 | 2017-05-09 | Apple Inc. | Dynamic selection of coexistence profiles for improved Wi-Fi/bluetooth coexistence |
US10237193B2 (en) * | 2015-09-30 | 2019-03-19 | Apple Inc. | Prioritizing short-range wireless packets for time-sensitive applications |
US10555328B2 (en) * | 2017-02-17 | 2020-02-04 | Avago Technologies International Sales Pte. Limited | Scalable coexistence scheme for WLAN operation with multiple periodic BT connections |
US20220078623A1 (en) * | 2020-09-04 | 2022-03-10 | Cypress Semiconductor Corporation | Coexistence of isochronous communication device with co-located asynchronous communication device |
-
2023
- 2023-04-18 EP EP23733196.2A patent/EP4287649A4/en active Pending
- 2023-04-18 WO PCT/KR2023/005246 patent/WO2023204578A1/ko unknown
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20130259237A1 (en) * | 2010-11-24 | 2013-10-03 | Phonak Ag | Hearing assistance system and method |
US20140285313A1 (en) * | 2013-03-15 | 2014-09-25 | Aliphcom | Proximity sensing device control architecture and data communication protocol |
KR102273109B1 (ko) * | 2013-07-19 | 2021-07-06 | 삼성전자주식회사 | 캐싱 방법 및 그 전자 장치 |
KR20160030710A (ko) * | 2014-09-11 | 2016-03-21 | 삼성전자주식회사 | 무선통신 시스템에서 전자 장치의 트래픽 제어 방법 및 장치 |
KR20190118906A (ko) * | 2018-04-11 | 2019-10-21 | 삼성전자주식회사 | 전자 장치 및 그 제어 방법 |
Non-Patent Citations (1)
Title |
---|
See also references of EP4287649A4 * |
Also Published As
Publication number | Publication date |
---|---|
EP4287649A4 (en) | 2024-08-14 |
EP4287649A1 (en) | 2023-12-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2018169380A1 (ko) | 블루투스 기술을 이용하여 오디오 신호를 처리하기 위한 방법 및 장치 | |
WO2015163680A1 (ko) | 무선 통신 시스템에서 블루투스 저전력 에너지 기술을 이용하여 데이터를 송수신하기 위한 방법 및 장치 | |
WO2016159725A1 (en) | Apparatus and method for measuring distance and location | |
WO2021010588A1 (en) | Electronic device for transmitting data through split bearer and method of operating electronic device | |
WO2020149708A1 (ko) | 블루투스 기술을 이용하여 오디오 서비스를 제공하기 위한 방법 및 장치 | |
WO2021010587A1 (en) | Electronic device for transmitting data through split bearer and method of operating electronic device | |
EP3278135A1 (en) | Apparatus and method for measuring distance and location | |
WO2018169379A1 (ko) | 블루투스 le 기술을 이용하여 디바이스를 탐색하기 위한 방법 및 장치 | |
WO2022124870A1 (ko) | 근거리 무선 통신 시스템에서 데이터를 송수신하기 위한 방법 및 이에 대한 장치 | |
WO2024005606A1 (ko) | Nan 통신의 클러스터 병합을 수행하는 전자 장치 및 전자 장치의 동작 방법 | |
WO2022154279A1 (ko) | 프로토콜/서비스 정보를 송신 및/또는 수신하는 전자 장치 및 그 동작 방법 | |
WO2023204578A1 (ko) | 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 | |
WO2021215776A1 (ko) | 무선 통신 시스템에서 채널 선택 방법, 장치, 컴퓨터 프로그램 및 그 기록 매체 | |
WO2024219660A1 (ko) | 블루투스 통신 시간을 결정하는 전자 장치 및 그 동작 방법 | |
WO2024071871A1 (ko) | 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 | |
WO2023058980A1 (ko) | 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 | |
WO2024214964A1 (ko) | 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 | |
WO2023075169A1 (ko) | 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 | |
WO2024085424A1 (ko) | 블루투스 연결을 통해 통신하는 전자 장치 및 그 동작 방법 | |
WO2024063613A1 (ko) | 전자 장치 및 전자 장치에서 데이터를 전송하는 방법 | |
WO2023243866A1 (ko) | 오디오 서비스를 제공하는 전자 장치 및 그 동작 방법 | |
WO2024181690A1 (ko) | 오디오를 수신하는 전자 장치 및 그 동작 방법 | |
WO2022231155A1 (ko) | 복수의 장치에서 획득한 오디오 데이터 녹음 방법 및 전자 장치 | |
WO2024058375A1 (ko) | 멀티 심을 지원하는 전자 장치 및 전자 장치의 동작 방법 | |
WO2022240160A1 (ko) | 근거리 무선 통신 시스템에서 데이터를 송수신하기 위한 방법 및 이에 대한 장치 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
ENP | Entry into the national phase |
Ref document number: 2023733196 Country of ref document: EP Effective date: 20230630 |