Patent Publication Number: US-2004059446-A1

Title: Mechanism and method for audio system synchronization

Description:
BACKGROUND OF THE INVENTION  
       [0001] 1. Technical Field  
       [0002] This invention generally relates to electronic systems, and more specifically relates to distributed audio systems.  
       [0003] 2. Background Art  
       [0004] Modern life is becoming more dependent upon electronic systems. Electronics devices have evolved into extremely sophisticated devices, and may be found in many different applications. As electronics become more integrated into daily life, their ability to communicate and work together becomes a greater and greater necessity.  
       [0005] The ability for electronic devices to work together is particularly problematic where the devices are remote from one another. In many applications, remote devices must be well integrated together to function properly. For example, in some audio systems, remote devices must be synchronized to properly function together. Without an effective means for synchronization of these audio devices, the separate audio devices cannot effectively function together.  
       [0006] Specifically, it is often desirable that remote audio devices by synchronized such that outputs and inputs at the remote audio devices occur together. This improves the sound quality by limiting interference between sounds generated by remote devices.  
       [0007] Unfortunately, in the past it has been difficult to provide the needed synchronization between remote audio devices. For example, in some cases the devices are remote enough that sharing a high speed clock signal between devices is impractical or otherwise undesirable.  
       [0008] Thus, what is needed is an improved method for synchronizing remote audio devices.  
       BRIEF SUMMARY OF THE INVENTION  
       [0009] The present invention provides a synchronization mechanism and method for synchronizing remote audio devices that are coupled together with a bus. The synchronization mechanism compares a signal on the bus with a clock signal on the audio device and adjusts the clock in response to the comparison. This allows the synchronization mechanism to accurately synchronize remote audio devices without requiring high precision clocks or other complicated solutions. The synchronization mechanism and method are particularly applicable to synchronizing remote audio devices in a distributed audio system that digitally sample and broadcast for communication purposes. In this application, the synchronization mechanism improves audio quality by synchronizing the sampling and outputting of each audio device on the bus. This improves audio quality by reducing the distortion that occurs as a result of varying sample times.  
       [0010] The foregoing and other objects, features and advantages of the invention will be apparent from the following more particular description of a preferred embodiment of the invention, as illustrated in the accompanying drawings. 
     
    
    
     BRIEF DESCRIPTION OF DRAWINGS  
     [0011] The preferred exemplary embodiment of the present invention will hereinafter be described in conjunction with the appended drawings, where like designations denote like elements, and:  
     [0012]FIG. 1 is a schematic view of a distributed audio system;  
     [0013]FIG. 2 is a schematic view of audio device with a synchronization mechanism;  
     [0014]FIG. 3 is a flow diagram of a method for synchronization;  
     [0015]FIG. 4 is a table illustrating a clock adjustment scheme; and  
     [0016]FIG. 5 is a table illustrating a scheme to determine when to make clock adjustments.  
    
    
     DETAILED DESCRIPTION OF THE DRAWINGS  
     [0017] The present invention provides a synchronization mechanism and method for synchronizing remote audio devices that are coupled together with a bus. The synchronization mechanism compares a signal on the bus with a clock signal on the audio device and adjusts the clock in response to the comparison. This allows the synchronization mechanism to accurately synchronize remote audio devices without requiring high precision clocks or other complicated solutions.  
     [0018] The synchronization mechanism and method are particularly applicable to synchronizing remote audio devices in a distributed audio system that digitally sample and broadcast for communication purposes. In this application, the synchronization mechanism improves audio quality by synchronizing the sampling and outputting of each audio device on the bus. This improves audio quality by reducing the distortion that occurs as a result of varying sample times.  
     [0019] For example, the synchronization mechanism can be used in a distributed audio system for aircraft. In aircraft audio systems, several audio panels are located throughout the aircraft to facilitate communication between crew members and/or ground stations. In these applications, each audio panel typically includes a microphone input and a speaker output. Each audio panel is connected to a bus. Thus, audio information can be received at each microphone unit and put on the bus for distribution to other audio panels, where it is outputted by the speakers on the audio panels. This distributed audio system thus allows crew members at different locations throughout the plane to effectively communicate to each other.  
     [0020] In aircraft, the audio quality provided by the distributed audio system is of paramount importance. Without synchronization of the sampling and outputting times, the audio quality of the distributed audio system can be severely limited. The present invention provides a synchronization mechanism and method that can synchronize the operations of remote audio panels in an aircraft distributed audio system. The synchronization mechanism is used to synchronize the sampling and outputting that occurs at each audio panel. Additionally, the synchronization mechanism can be used to achieve proper time multiplexing of data transfer on the bus. The synchronization of sampling and data transfer leads to improved audio quality in the system, allowing the crew of the bus to easily and effectively communicate.  
     [0021] Turning now to FIG. 1, an exemplary distributed audio system  100  is illustrated schematically. The distributed audio system  100  includes audio devices  1 - 6  coupled together with bus  104 . The distributed audio system  100  facilitates communication between people at remote locations, such as between different crew members of an aircraft. Audio communication is received at each audio device, and is transmitted across the bus  104  to the other audio devices where it is outputted. As will be explained in greater detail, the bus  104  is preferably a digital bus that uses multiplexing to allow communication from each audio device to every other audio device in the system  100  on a single bus.  
     [0022] Turning now to FIG. 2, a more detailed schematic view of an exemplary audio device  200  is illustrated. The audio device  200  includes a bus I/O, a microphone input, a speaker output, an analog-to-digital converter (ADC), a digital-to-analog converter (DAC) and a synchronization mechanism. The microphone input receives audio communication from a user and sends it to the ADC, where it is converted to digital and put on the bus I/O. The DAC receives audio signals from bus I/O and passes the converted signals to the speaker where they are outputted back the user. The microphone input can be any suitable type of audio input that converts sound waves into a suitable electrical signals, including headset microphones commonly used in aircraft, telephonic devices, and other audio inputs. The speaker output can be any suitable audio output that converts electrical signals to audible sound, including loudspeakers, headphones, intercom systems, telephonic devices and other such devices.  
     [0023] The ADC and DAC can be any suitable type of converter. For example, they can comprise linear converters that convert 16 bit audio to a 16 bits per sample signal. These samples can then be converted to 8 bits per sample so two samples can be transmitted at a time at the slower rate.  
     [0024] Likewise, the bus I/O can be any suitable type of bus interface. In one example, the bus is a digital time multiplexed bus. In this type of bus, each audio device transmits in its own specified time slot. In such the bus the bus I/O could comprise a CODEC that encodes data to be put on the bus and decodes data from the bus, using any suitable encoding scheme. The bus I/O thus receives audio samples taken by the microphone input and converted by the ADC and encodes those samples into a format suitable for digital bus transmission. The bus I/O then puts those samples on the bus at a time slot specified for the audio device. Likewise, the bus I/O receives signals from the time slots associated with other audio devices. These signals can be decoded, filtered and summed, and the resulting output passed to the DAC. The DAC converts the resulting output and sends it to the speaker for outputting to the user.  
     [0025] The synchronization mechanism synchronizes the sample time of the microphone input with the sampling of microphones on other audio devices. Additionally, the synchronization mechanism can synchronize the output of the speaker with the outputs of other audio devices. Finally, the synchronization mechanism can be used to time the placement of data on the bus I/O by each audio device to achieve proper time multiplexing of data transfer on the bus.  
     [0026] The synchronization mechanism synchronizes the audio devices by comparing the time of arrival of some specified portion of the bus signal to a clock in the audio device. If the relationship between the time of arrival and the clock is off, the synchronization mechanism adjusts the clock rate to correct the timing. Small adjustments in the clock rate are used to move the clock in the proper phase relationship with the bus signal. These comparisons are preferably made at regular intervals, such as at each arrival of a packet on the bus. By continuously comparing the clock to the time of arrival of the specified portion of the bus signal, and then adjusting the clock in response to the comparison, the clock can be put in and kept at the proper phase relationship with the bus signal. With such a synchronization mechanism residing and operating on each audio device, the clocks on each audio device can be synchronized with the bus and thus to each other. This allows the all the audio devices on the distributed audio system to be synchronized such that each audio device samples from the microphone input and outputs to the speaker output at the same time.  
     [0027] The synchronization mechanism can selectively adjust the clock rate in any suitable manner or with any suitable procedure. One method for selectively adjusting the clock rate is to selectively add or subtract clock cycles to the source clock used to generate the timing clock. In this the discussion the term “timing clock” will be used to distinguish the clock that is to be adjusted for synchronization. The timing clock will generally be a clock that directly or indirectly controls the timing of sampling of audio signals from the microphone input and the outputting of audio signals at the speaker output.  
     [0028] In systems that use a variety of clocks, it is common for a high speed clock to serve as the basis for other clocks in the system. For example, the internal audio device can include an 80 MHz source clock that serves as the source clock for other clocks in the system. These other clocks would be generated by dividing down the 80 MHz clock to a lower clock speed. For example, the 80 MHz clock can be divided down by ten to generate an 8 MHz timing clock. The 8 MHz timing clock can be further divided down to provide other clocks, such as dividing by two to provide a 4 MHz bit clock that directly controls sampling. Of course, this is just one example of the type of clock arrangement that the synchronization mechanism applies to.  
     [0029] In such a system, one way to adjust the clock rate of the timing clock is to selectively add or subtract clock cycles to the source clock used to generate the clock. For example, depending of the difference between the timing clock and the arrival of the bus signal, the timing clock can be adjusted by adding (or subtracting) 0, 1, 2, 3, or 4 source clock signals to the master clock. In the example using the 80 MHz source clock and an 8 MHz timing clock, the timing clock can be adjusted by adding ±1, ±2, ±3, or ±4 source clock signals in between timing clock cycles. This creates a small adjustment in the rate of the 8 MHz timing clock, which in turn adjusts the 4 MHz bit clock. Thus, by selectively choosing the amount of adjustment made to the timing clock, the timing clock and the bit clock can be moved into a proper phase relationship with the bus signal. As an example, the 80 MHz to 8 MHz divider normally counts  10  transitions between switches of the output state. This causes the 80 MHz input clock to result in an 8 MHz output. The frequency of the output can be adjusted by instead counting 9 or 11 transitions between switches between 1 and 4 times during each 128 microsecond bus cycle.  
     [0030] Turning now to FIG. 3, a method  300  for synchronizing audio devices is illustrated. The first step  302  is to compare the bus signal arrival to the clock signal. Typically, this can be done by comparing a known point on the bus signal, such as a selected time slot, with a selected clock edge. The difference amount from a desired clock phase and the current clock phase can be determined my measuring when a selected point on the bus signal arrives and comparing it the phase of the clock, and comparing the difference to the desired time difference. Thus, it can be determined if the timing clock signal has the proper phase relationship with the bus signal, and the amount it is off, if any. It should be noted that the timing clock does not need to be compared directly, and that instead a derivative clock, such as the exemplary 4 MHz bit clock can be compared, indirectly giving information on the timing of the timing clock.  
     [0031] The next step  304  is to determine the number of source clock cycles to needed to make the adjustment. Generally, the greater the phase error, the greater the clock adjustment that is needed. Turning now to FIG. 4, a table  400  illustrating an adjustment scheme where the source clock is an 80 MHz clock and the timing clock is an 8 MHz clock. Table  400  illustrates a set of clock adjustments that can be used in the synchronization method. For example, when the absolute time difference between a clock event and a selected portion of the bus signal is 0.0 to 1.6 microseconds, the clock is not adjusted. When the difference is between 1.6 and 4.8 microseconds, the 8 MHz timing clock is adjusted by 180 MHz clock cycle. Thus, one additional 80 Mhz clock cycle is added to or subtracting from the 8 MHz timing clock cycle, thus slightly adjust the rate of the 8 MHz clock signal. If the audio device is early compared to the bus signal, clock cycles are added to make it later the next time. If the audio device is late, clock cycles are subtracted to make it earlier the next time. FIG. 4 thus gives one example of how the amount of clock adjustment needed can be determined based upon the absolute time difference determined.  
     [0032] Retuning to method  300 , the next step  306  is to add or subtract source clock cycles to the timing clock. The number of cycles added or subtracted would be that determined in step  304 . These cycles are added or subtracted by the clock divider.  
     [0033] Preferably, when multiple clock cycle adjustments are made they are spread out over the whole clock cycle. This allows the system to only have to deal with small changes, made relatively often, rather than large changes that could be more disruptive to the system. Turning now to FIG. 5, a table  500  illustrates an example of how multiple clock cycle adjustments can be spread out over the clock cycle. If only one 80 MHz clock cycle is to be added or subtracted from the 8 MHz clock, the change is done at the specified bus signal slot. If two 80 MHz clock cycles are to be added or subtracted, then one is done at the slot, and the other 64 microseconds from the slot. This spreads the resulting change throughout the 8 MHz timing clock cycle.  
     [0034] It should be again noted that the values given in FIGS. 4 and 5 are just an example of the type of determinations that can be made in adjusting the cycle of the clock. For systems with different clock speeds, the time difference and amount of cycles used would generally change.  
     [0035] The present invention thus provides a synchronization mechanism and method for synchronizing remote audio devices that are coupled together with a bus. The synchronization mechanism compares a signal on the bus with a clock signal on the audio device and adjusts the clock in response to the comparison. This allows the synchronization mechanism to accurately synchronize remote audio devices without requiring high precision clocks or other complicated solutions.  
     [0036] The synchronization mechanism and method are particularly applicable to synchronizing remote audio devices in a distributed audio system that digitally sample and broadcast for communication purposes. In this application, the synchronization mechanism improves audio quality by synchronizing the sampling and outputting of each audio device on the bus. This improves audio quality by reducing the distortion that occurs as a result of varying sample times.  
     [0037] The embodiments and examples set forth herein were presented in order to best explain the present invention and its particular application and to thereby enable those skilled in the art to make and use the invention. However, those skilled in the art will recognize that the foregoing description and examples have been presented for the purposes of illustration and example only. The description as set forth is not intended to be exhaustive or to limit the invention to the precise form disclosed. Many modifications and variations are possible in light of the above teaching without departing from the spirit of the forthcoming-claims.