Technical discussions related to Analog Devices DSPs (including Blackfin, TigerSHARC, SHARC and ADSP-21xx DSPs).
|
Hi all, I have been working with the 2189 EZ-KIT for 10+ months now. All of my projects require 2 CODEC channels, and the DSP code has to process the 2 channels differently. I have been trying to get an answer from ADI for I don't know how long now, but they never seem to answer the question directly. The EZ-KIT has a dual CODEC (AD73322) built in. They tell me the DSP has no way of knowing which channel is which. AD support also at one point told me to make a "channel sorter" to alternate every other channel to the different routines. OK, this works, but 1 in 10 runs the channels are swapped. I don't care if the DSP "knows" which channel is which, only that the channels are always the same. Apparently there is no guaranty that the first channel is always the first channel. I say apparently, because they won't directly answer this question. Or maybe we just aren't understanding each other. Why tell me to use a solution (the channel sorter) that doesn't really work!?!?!? This leads me to where I am now: 1) What is the point of a 2 channel codec when you can't know which channel is which? I can't think of a real application where this wouldn't matter. 2) Is there any CODEC that will be consistent? 3) Do I have to actually use 2 single channel CODECs (one on each SPORT)? 4) I am probably missing something else, so if there is another option, please let me know. Thank you, Dave David Tiefenbrunn N1WWY Essential Telecommunications Corp. - http://www.essentialtel.com David Tiefenbrunn - http://users.abac.com/dandatief |
|
|
|
I have recently completed a project which used three AD73322 Codecs in a "daisy-chained" fashion. I have spent quite a lot of time on these Codecs and am very familiar with them. To answer your points below, 1) yes this does matter. Getting the channels mixed up would be a serious product error 2) Looking at answer 1, these Codec's can be consistent, 3) You can use just 1 channel if necessary, but AD also produce a single channel version of this codec. 4) hopefully the point of my email. I found that the use of an 8 channel logic analyser attached to the Codecs was essential in debugging the correct operation of the serial port and Codec combination. Cheers, Brett Dave Tiefenbrunn wrote: Hi all, I have been working with the 2189 EZ-KIT for 10+ months now. All of my projects require 2 CODEC channels, and the DSP code has to process the 2 channels differently. I have been trying to get an answer from ADI for I don't know how long now, but they never seem to answer the question directly. The EZ-KIT has a dual CODEC (AD73322) built in. They tell me the DSP has no way of knowing which channel is which. AD support also at one point told me to make a "channel sorter" to alternate every other channel to the different routines. OK, this works, but 1 in 10 runs the channels are swapped. I don't care if the DSP "knows" which channel is which, only that the channels are always the same. Apparently there is no guaranty that the first channel is always the first channel. I say apparently, because they won't directly answer this question. Or maybe we just aren't understanding each other. Why tell me to use a solution (the channel sorter) that doesn't really work!?!?!? This leads me to where I am now: 1) What is the point of a 2 channel codec when you can't know which channel is which? I can't think of a real application where this wouldn't matter. 2) Is there any CODEC that will be consistent? 3) Do I have to actually use 2 single channel CODECs (one on each SPORT)? 4) I am probably missing something else, so if there is another option, please let me know. Thank you, Dave David Tiefenbrunn N1WWY Essential Telecommunications Corp. - http://www.essentialtel.com David Tiefenbrunn - http://users.abac.com/dandatief _____________________________________ /groups.php3 --
Brett Olsen
Senior DSP Design Engineer
Tait Electronics Ltd 175 Roydvale Avenue Christchurch New Zealand Phone: (64) (3) 357 0766
Fax: (64) (3) 359 4632 Email: b...@tait.co.nz Post: PO Box 1645, Christchurch, NZ |
|
Brett wrote: >In my experience with this is that the hard part in dealing with this Codec >is that both the operation of the SPORT and the Codec need to be perfect to >get the right results. If I were to use a different CODEC, I would have less trouble? I am not completely happy with the AD73322 - I have to run it at 16KHz just to get acceptable frequency response at 3KHz. (this "feature" is documented in the data sheet) I have TI TLV320AIC24s on my R&D board (soon to be built). It sounds like I may be better off working on them? Or am I just as likely to have the same problem? > this is where the logic analyzer comes in, because >this allows you to separate out the sport behavior from the Codec. Any make / models you would recommend I look at or avoid? >My only suggestion with the talk-through example is to >run the example as-is, in stereo, use a sine wave as the A/D codec input, >and make sure that no corruption of the sine wave occurs by viewing the >sine wave output from the Codec D/A on an oscilloscope. A lot of my testing all along has involved sine waves. I have not seen any corruption, except for "learning curve" oops type stuff like overflowing / rolling over the integer math operations. Thank you, Dave David Tiefenbrunn N1WWY Essential Telecommunications Corp. - http://www.essentialtel.com David Tiefenbrunn - http://users.abac.com/dandatief |
|
Ali Irfan Ahmed wrote: >Wire any of dsp2189's pf pins or flag pins to the reset of the >codec's reset. I remember seeing this idea here a long time ago. >now when u have done initializing all the sport setting u lower this signal >for a while preferably before enabling the sport interrupts and then raise >the reset of the codec. Now when the first interrupt comes either the rx >or TX interrupt u will know for sure that it is from codec number two or >the last codec the daisy chain. I preferred writing separate isr for TX >and rx interrupts and use a variable to know from which codec the next >interrupt will come. My existing code uses the TX interrupt to send the CODEC initialization data to the CODEC. The EZ-kit RESET is not modified. (yet) I also use a variable to "sort" the channels, only 2 for now. Let me see if I understand your sequence: 1) Set up the SPORT registers. 2) use the PF bit to reset the CODEC. 3) Send the CODEC initialization data using the TX interrupt routine (like the one in the talkthrough example?) 4) Once the CODEC is initialized, the RX interrupts begin, and the last CODEC is the first to send an interrupt. I wonder why / what this does that the "standard" EZ-KIT doesn't, except that I can reset the CODEC and immediately initialize it. Does something happen to the CODEC while configuring the SPORT? Thank you Dave David Tiefenbrunn N1WWY Essential Telecommunications Corp. - http://www.essentialtel.com David Tiefenbrunn - http://users.abac.com/dandatief |