Digital Synchronization

Excerpt from MediaMatrix Help

All digital audio equipment samples the incoming analog audio at a rate called the sampling rate. Most digital audio equipment can generate this rate from an internal clock. If the equipment is not interconnected digitally with other digital audio equipment this works fine. If it is digitally interconnected however, some means must be provided to precisely synchronize the digital equipment's sampling rates so they can transfer audio without distortion.

MediaMatrix Mainframe

The MediaMatrix mainframe may operate in either internal or external synchronization modes.

MediaMatrix uses a common sample clock for all Digital Signal Processing (DSP) cards within a frame and all BoBs attached to the frame. This clock is always sourced from the first DSP board in the system. All DSP boards must be set to the base address set in "Tools | Options" in Release 3.0 or "Tools | Sound Engine Options" in Release 2.3.

This dialog box shows the correct DIP Switch settings for switches 1 through 4 for the base address selected, where 1 in the dialog box equals ON and 0 equals OFF. Further each DSP board must have an individual board address selected on switches 5 through 8. The first DSP board has switches 1 through 4 set to match the base address and 5 through 8 all ON. Other DSP boards receive the sample clock from the first board over the DAB cable.

Internal

In internal synchronization mode, the sample clock is generated by one of three quartz crystal clocks on the first DSP board in the frame. Note that all DSP boards from the factory contain these three clocks. Software only activates this hardware on the first board. The three clocks allow for operation at one of three standard sample rates of 32K, 44.1K and 48K. The internal clock frequency clock is selected in the File | Compile Options dialog box in Release 3.0 or the Tools | Sound Engine Options dialog box in Release 2.3.

External

In external synchronization mode, the sample clock is supplied to the MediaMatrix frame from an external source. Since the first board always generates the sample clock for the frame, any external sample clock must be applied to the first DSP board in a system. The external clock is then distributed from there to the other DSP cards and to their attached audio I/O.

External synchronization mode allows disparate digital equipment in a system to share a common sample clock reference. Synchronizing sample clocks allows easy interconnection of digital audio devices. This synchronization is a prerequisite for clean transfer of digital audio data between devices unless sample rate converters are used.

The AES3 and CobraNet interfaces can supply a sample clock for use in external sync mode. When using an AES3 daughter card on the first DSP card, the external sample clock is derived from the first input pair on the AES3 interface or optionally from a separate reference input. When using a CobraNet interface on the first DSP card, the external sample clock is derived from a crystal on the CobraNet interface, or the network. Again, these interfaces must be installed on the first DSP card in a frame to be useful in this capacity.

Whenever a view is complied in external synchronization mode, MediaMatrix will measure the frequency of the external sample clock. The external sample clock must exist, and be at the operating sample rate before the compile is attempted. The external sample clock must match the selected nominal sampling frequency, or the filter frequencies will be inaccurate. If the external clock is at a different sample rate from the operating sample rate while the view file is compiled problems could ensue. If the sampling rate is lower than the rate during compile, then the system will continue to function. If the sampling rate is more than a very little higher than the rate at compile, the system will run out of DSP cycles and mute. It will indicate a "hardware error" when muting, and must be recompiled to restore operation.

In a mixed system with AES3 connections and BoB's, an external clock must be accurate within ±100 ppm of the nominal sampling rate, or the BoB's may not be able to lock to the system and will mute. The nominal rate of the externally applied clock can be determined from the terminal window after a compile, to an accuracy limited by the accuracy of the CPU's clock. If the sample clock is outside the valid range 32-48K or there is no clock (0Hz clock) the compile will fail. The external clock is expected to maintain the same frequency within a tight tolerance (±100PPM) while the view file is compiled and throughout system operation. External synchronization mode is not suitable for so-called vari-speed operation.

If the external clock is lost, the system will mute. This presents a strong argument for only using external AES3 clock input when absolutely required, and designing the source of such external clock for maximum reliability. For example, you would probably not want to provide patching on the AES3 signal used as an external clock for MediaMatrix.

In a CobraNet system, loss of the network connection will not result in loss of clock, however, since the CobraNet interface contains an internal clock, and will revert to it if external network connection is lost.

Analog BoB's

Although BoBs receive a sample clock over the 6 foot cables connecting them to the MediaMatrix frame, BoB's contain frequency sensitive circuitry such that they will only operate properly at the single sample rate for which they were configured at the factory. If the MediaMatrix frame is operating at a different sample rate, audio will not pass through the BoB and the "locked" indicator available in the Bob control device in the MediaMatrix view file will not light.

When a system is run in external synchronization mode, the supplied external clock must closely match the sample rate for which the BoB was factory configured (±100PPM) or, again, the BoB will not pass audio and the "locked" indicator will not light.

AES3

The MediaMatrix AES3 interface supports 16 AES3 inputs (32 audio channels), 16 AES3 outputs (32 audio channels), and an optional AES3 reference input. The AES3 interface delivers both audio data and associated sample clock. On the AES3 output side, the sample clock is the MediaMatrix sample clock as supplied by a crystal on the first DSP card (internal synchronization mode) or an external clock attached via the first DSP card (external synchronization mode). External sync must be connected to the first AES3 input or the optional AES3 reference input (if so equipped), on the AES3 interface card on the first DSP card in the MediaMatrix system. A spare AES3 output is a good source of a MediaMatrix sample clock reference for use in synchronizing other gear to the MediaMatrix system.

The AES3 interface features sample rate converters on the input side. This means that the usual requirement of synchronizing digital equipment before connecting to a MediaMatrix AES input, does not apply. The sample rate converters translate the audio data from the timebase received via the AES3 interface to the MediaMatrix clock. This translation is a mathematical transform with 20-bit accuracy. The transform is generally considered to be sonically transparent. The sample rate converters effectively convert hugely different sample rates i.e. 44.1K CD source into 48K as well as interconnect free running systems i.e. 44.1K CD and 44.1K MediaMatrix in internal synchronization mode. Since the sample rate converters will correctly pass data between synchronized systems (1:1 sample rate conversion), they remain in the audio path at all times.

X-frame, while equipped with a single AES3 input and output (2 audio channels in and out) is not equipped with sample rate converters. Therefore either the X-Frame must be run in external sync mode, or the external AES3 signal must be locked to the X-Frame's AES3 output if the AES3 input is to be used.

CobraNet

CobraNet only supports the 48Khz sample rate. The 48Khz sample rate must be selected for any system with a CobraNet interface. A compile failure will occur if the sample rate in the view options dialog is selected otherwise.

A CobraNet network is synchronized to the sample clock of a CobraNode on the network designated the conductor. The conductor of a CobraNet network is chosen through an arbitration procedure. A conductor priority is instrumental in determining which unit serves as the conductor of a CobraNet network. The unit with the highest conductor priority will serve as the conductor. If two or more units share the highest conductor priority, the first unit to connect to the network becomes the conductor.

All other nodes on the network receive their sample clock over the network. Each CobraNet device has an electronically adjustable oscillator that allows each node to synchronize to the conductor.

First card

A CobraNet interface attached to the first DSP card in a MediaMatrix frame always supplies a valid 48Khz sample clock to the frame. When a MediaMatrix system has a CobraNet interface on the first DSP card, the system must be run in external sync mode. When the CobraNet interface happens to be the conductor, the clock supplied to MediaMatrix (and to the network) is sourced from the CobraNet interface's local crystal oscillator. When the interface is not the network conductor, the clock supplied to MediaMatrix comes from the network.

The conductor priority of the first card is determined by the CobraNet Conductor Priority slider found in "File | Compile Options". This slider has a range of 0 to 15. The actual conductor priority is determined from the slider setting according to the following formula:

CondPrior=100+(2*(slider setting))

Other cards

CobraNet interfaces attached to DSP cards other than the first in a MediaMatrix frame can only synchronize properly if they are the conductor on their respective network or if the network and the MediaMatrix have been synchronized through some other connection.

The conductor priority of the other cards are determined by the CobraNet Conductor Priority slider found in "File | Compile Options". This slider has a range of 0 to 15. The actual conductor priority is determined from the slider setting according to the following formula:

CondPrior=100+(2*(slider setting))-1

If needed for special applications the conductor priorities of individual CobraNet interfaces can be set by adding the following line to the [COBRANET] section of the pa.ini file. This file is usually found at C:\Program Files\MediaMatrix 3.0\Pa.ini. The line should be added to the [COBRANET] section as follows:

[COBRANET]
priorityCardX=Y

where X is the card number on a scale of 0 to 7, and Y is the priority desired.

Recommended practices

 

Designate a master clock source and identify clock distribution paths.

Due to the requirements outlined in the above discussion it is necessary to synchronize all digital devices to a common sample clock. This first step in system design is to identify this clock source. In larger audio video facilities a master clock is explicitly routed to all equipment in the form of a "black burst" video signal or AES3 feed as per the AES11 recommended practice. In smaller facilities and sound reinforcement systems, clock distribution is not such a crucial component of the infrastructure, nevertheless it is important to understand where your master clock is sourced and the paths through which it is distributed to other equipment. There are numerous means for distributing a clock. AES3, CobraNet and a TTL signal carried via coax are likely to be the most common in audio applications. A "black burst" video signal is commonly used in larger facilities. Devices to convert between the different clock formats are readily available.

Limit number of hops in clock distribution

Your goal in clock distribution should be to get the clock from the master clock source to the devices that require it through the most direct path possible. Avoid daisy-chaining clocks through equipment. The reason for this is that the quality of a clock can be degraded by equipment it passes through. CobraNet uses special circuitry to provide a high quality local clock that is still referenced to the network conductor.

Use sample rate conversion for devices which do not support external synchronization

Consumer CD players among other items may not be provided with an external sync input. In some small systems it may be acceptable to reference the entire system to the one device that can't accept an external reference input. In larger systems or those which contain more than one device that will not accept an external reference, it is necessary to use sample rate converters. These are available built-in to the digital inputs of some equipment, or as stand-alone devices. Some systems may be best designed by allowing each device to run on it's internal reference, if all devices have sample rate converters on their inputs. Even in large systems where most devices are referenced to a master clock, there often will be a few devices which can't be referenced and thus require sample rate conversion.

Examples

 

A System with a number of free running digital sources.

Digital sound sources such as CD players, DAT machines, ADAT machines, digital hard disk recorders and the like often can only run on internal sync. Since there is more than 1 free-running source, sample rate converters are required at the input of any digital signal transport system such as CobraNet, or any digital signal processing/mixing system such as MediaMatrix. Fortunately versions with sample rate converting AES3 inputs are available for both systems. Each device in the system runs on its own internal clock, and there is no master clock. There is no need for any of the systems to run at the same sampling frequency.

A System with a number of digital recorders.

Digital recorders can usually lock to the sample rate of the AES3 signal fed to them. Some recorders can only accept and lock to AES3 signals of certain sampling rate(s). CobraNet systems only run at a 48 kHz rate, while MediaMatrix systems can run at 32 kHz, 44.1 kHz, or 48 kHz unless they are equipped with CobraNet I/O in which case they can only run at 48 kHz. If the acceptable sampling rates of the recorders match the MediaMatrix or CobraNet sampling rate, then all that is required for system synchronization is to connect the recorder's inputs to the AES3 outputs of MediaMatrix or CobraNet which provide the audio and synchronization.

A simple MediaMatrix/CobraNet system.

The CobraNet daughter card should be installed on the first DSP card in the MediaMatrix system. The MediaMatrix system must be set for external sync. If an external (to the CobraNet network) clock reference is used, the CobraNet device it is connected to must have its conductor priority set greater than the conductor priority of the system.

MediaMatrix with multiple CobraNets.

One of the CobraNet daughter cards should be located on the first DSP card, and external sync selected just as with the simple case above. The other CobraNet daughter cards may be located on any available DSP card. With hub based networks, each CobraNet daughter card is usually on its own independent network with its own independent hub. In this case the CobraNet daughter cards not located on the first DSP card must be the conductors for their own networks. This is because they must be locked to the MediaMatrix system in order to function.

If it is desired to use an external (to CobraNet and MediaMatrix) clock reference, the CobraNet device it is connected to must be located on the same network as the CobraNet card on the first DSP card, and must have its conductor priority set greater than the conductor priority of the system.

With a switch based CobraNet network, the CobraNet daughter cards will usually all be connected to a single Ethernet switch and thus all be part of a single network. In this case the CobraNet daughter card on the first DSP card will be the network conductor, since it has the highest conductor priority. If an external (to CobraNet and MediaMatrix) clock reference is used, the CobraNet device it is connected to must be part of the network connected to the CobraNet daughter card on the MediaMatrix system's first DSP card. The CobraNet device must also have its conductor priority set greater than the conductor priority of the system.

Multiple MediaMatrix systems interconnected using CobraNet.

If multiple MediaMatrix systems are to be interconnected using CobraNet, then one of the systems must be the sync source Master for the entire system. All MediaMatrix systems are set for external sync, and locked to this central system via CobraNet.

Two MediaMatrix Systems Interconnected

One of the systems must be selected as the Master clock source. The conductor priority of the Master must be set higher than the conductor priority of the Slave. Conductor priority is set by the CobraNet Conductor Priority slider found in "File | Compile Options".

The CobraNet interface on the first DSP card of the Slave system must be on the same network as any one of the CobraNet interfaces in the Master system. It does not matter which CobraNet interface is used on the Master system. Depending on the system needs, the interconnection between the CobraNet interface on the first DSP card of the Slave system and a CobraNet interface in the Master system may be through a Ethernet hub, switch, or in the simplest case a crossover cable.

If an external (to CobraNet and MediaMatrix) clock reference is used, the CobraNet device it is connected to must be part of the network connected to the CobraNet daughter card on the Master MediaMatrix system's first DSP card. The CobraNet device must also have its conductor priority set greater than the conductor priority of the system.

Three or more MediaMatrix Systems Interconnected

One of the systems must be selected as the Master clock source. The conductor priority of the Master must be set higher than the conductor priority of the Slaves. Conductor priority is set by the CobraNet Conductor Priority slider found in "File | Compile Options".

For maximum system reliability under failure conditions, we suggest that the CobraNet interface on the first DSP card of each system all be part of a common network. In this way if the system selected as Master were to fail (say by having its power shut off), each of the other systems would not only continue to work independently, but would still be able to communicate between each other, since one of the former Slave systems will automatically take over as the new Master system. The priority order selected in the "File | Compile Options" dialog box will determine which system becomes the Master in a failure scenario.

If three or more MediaMatrix CobraNet interfaces are sharing the same hub based network, then each will not be able to transmit all the possible audio channels because of bandwidth limitations. The use of Ethernet switches instead of hubs can overcome this limitation.

If the CobraNet interface on the first DSP card of each system are not all part of a common network, then if the Master system were to fail, the other systems would each continue to run independently, but would not be able to communicate properly with each other over CobraNet.

If an external (to CobraNet and MediaMatrix) clock reference is used, the CobraNet device it is connected to must be part of the network connected to the CobraNet daughter card on the Master MediaMatrix system's first DSP card. The CobraNet device must also have its conductor priority set greater than the conductor priority of the system.

A MediaMatrix system with both AES and CobraNet.

The first thing that must be decided is if the system will use external (to CobraNet and MediaMatrix) sync. If it is not, then the first DSP card must have a CobraNet daughter card attached. If it is, then it must be decided if the sync will be brought into a CobraNode as word clock, or into an AES input as an AES reference signal. If the sync will come into a CobraNode, then the first MediaMatrix DSP card must have a CobraNet daughter card. If the sync will be AES, then an AES daughter card must be located on the first DSP card.

An AES3 reference signal may be applied to input 1 of the AES daughter card, or if the card is so equipped, to the AES reference input. The sampling rate must be 48 kHz with a tolerance of ±50 ppm. The MediaMatrix system must be set for external sync.

A word clock may be applied to a CobraNode and the conductor priority of that node set greater than the conductor priority of the system. The sampling rate must be 48 kHz. The MediaMatrix system must be set for external sync.