Sign in

username:

password:



Not a member?

Search Sci.Electronics.Design



Search tips

design by Keywords

8051 | Amplifier | AVR | CMOS | Converter | DAC | Diode | FPGA | GPS | I2C | IDE | Laser | LCD | MOSFET | Op-amp | Oscillator | Oscilloscope | PID | PLL | PSU | PWM | RFID | RS232 | RS485 | SMPS | Spice | Transformer | Transistor | TTL | USB | VCO

Ads

See Also

DSPEmbedded SystemsFPGA

design | ADC Converters (General Clocking Question)


There are 17 messages in this thread.

You are currently looking at messages 0 to 10.

ADC Converters (General Clocking Question) - mpm - 2009-07-01 08:29:00

I'm looking at this part:
http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=PCM1801U-ND

Texas Instrument / Burr-Brown PCM1801
A 16-bit stereo Analog-to-Digital Converter (single ended).

It requires a 256x sample clock, in addition to some other clocks for
clocking out the serial data, and of course, the actual sampling rate
clock.  They have special names for all these clocks, but my question
relates to the fastest of these clocks.

Can you use an 8051 derivative (any derivative) to run this part?
I did the math and it does not look promising, based on my prior
experience with Atmel 8051 flavors...
But maybe I'm missing something  here...?

If I wanted CD-quality audio at 44.1 kHz (samples per second), then if
I read this datasheet correctly, I'd need a minimum of 256 x 44100 Hz
clock = 11,289,600 MHz just to run it.   How can you get that from
your garden variety microcontroller?    Note: Part requires
synchronization, so I can't just run a separate oscillator.

This part looks like it will simply a lot of the other parts of the
circuit, particularly all the filtering and anti-aliasing, etc...   Is
there a better ADC solution out there?  Maybe one that can be clocked
slower?

Or am I missing something here?
BTW:  My preference is 8051 as most of my development tools are 8051.
But would consider other architectures if the learning curve is not
too steep.

Thanks!!



Re: ADC Converters (General Clocking Question) - JW - 2009-07-01 08:41:00

On Wed, 1 Jul 2009 05:29:24 -0700 (PDT) mpm <m...@aol.com> wrote in
Message id:
<e...@c36g2000yqn.googlegroups.com>:

>I'm looking at this part:
>http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=PCM1801U-ND
>
>Texas Instrument / Burr-Brown PCM1801
>A 16-bit stereo Analog-to-Digital Converter (single ended).
>
>It requires a 256x sample clock, in addition to some other clocks for
>clocking out the serial data, and of course, the actual sampling rate
>clock.  They have special names for all these clocks, but my question
>relates to the fastest of these clocks.
>
>Can you use an 8051 derivative (any derivative) to run this part?
>I did the math and it does not look promising, based on my prior
>experience with Atmel 8051 flavors...
>But maybe I'm missing something  here...?
>
>If I wanted CD-quality audio at 44.1 kHz (samples per second), then if
>I read this datasheet correctly, I'd need a minimum of 256 x 44100 Hz
>clock = 11,289,600 MHz just to run it.   How can you get that from
>your garden variety microcontroller?    Note: Part requires
>synchronization, so I can't just run a separate oscillator.
>
>This part looks like it will simply a lot of the other parts of the
>circuit, particularly all the filtering and anti-aliasing, etc...   Is
>there a better ADC solution out there?  Maybe one that can be clocked
>slower?
>
>Or am I missing something here?
>BTW:  My preference is 8051 as most of my development tools are 8051.
>But would consider other architectures if the learning curve is not
>too steep.

NXP makes 8051 derivatives to 33MHz.

Re: ADC Converters (General Clocking Question) - linnix - 2009-07-01 09:07:00

On Jul 1, 8:29=A0pm, mpm <mpmill...@aol.com> wrote:
> I'm looking at this part:http://search.digikey.com/scripts/DkSearch/dksus=
.dll?Detail&name=3DPCM1...
>
> Texas Instrument / Burr-Brown PCM1801
> A 16-bit stereo Analog-to-Digital Converter (single ended).
>
> It requires a 256x sample clock, in addition to some other clocks for
> clocking out the serial data, and of course, the actual sampling rate
> clock. =A0They have special names for all these clocks, but my question
> relates to the fastest of these clocks.
>
> Can you use an 8051 derivative (any derivative) to run this part?
> I did the math and it does not look promising, based on my prior
> experience with Atmel 8051 flavors...
> But maybe I'm missing something =A0here...?
>
> If I wanted CD-quality audio at 44.1 kHz (samples per second), then if
> I read this datasheet correctly, I'd need a minimum of 256 x 44100 Hz
> clock =3D 11,289,600 MHz just to run it. =A0 How can you get that from
> your garden variety microcontroller? =A0

Why not, many microcontrollers run at 16Mhz or above.  For example.
AVRs.

> =A0Note: Part requires
> synchronization, so I can't just run a separate oscillator.

Why can't you drive both with the same crystal/oscillator?


Re: ADC Converters (General Clocking Question) - Mike - 2009-07-01 09:19:00

On Jul 1, 8:41=A0am, JW <n...@dev.null> wrote:
> On Wed, 1 Jul 2009 05:29:24 -0700 (PDT) mpm <mpmill...@aol.com> wrote in
> Message id:
> <e24d2bf3-ef3b-4543-815e-7d3418b98...@c36g2000yqn.googlegroups.com>:
>
>
>
>
>
> >I'm looking at this part:
> >http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=3DPCM1.=
..
>
> >Texas Instrument / Burr-Brown PCM1801
> >A 16-bit stereo Analog-to-Digital Converter (single ended).
>
> >It requires a 256x sample clock, in addition to some other clocks for
> >clocking out the serial data, and of course, the actual sampling rate
> >clock. =A0They have special names for all these clocks, but my question
> >relates to the fastest of these clocks.
>
> >Can you use an 8051 derivative (any derivative) to run this part?
> >I did the math and it does not look promising, based on my prior
> >experience with Atmel 8051 flavors...
> >But maybe I'm missing something =A0here...?
>
> >If I wanted CD-quality audio at 44.1 kHz (samples per second), then if
> >I read this datasheet correctly, I'd need a minimum of 256 x 44100 Hz
> >clock =3D 11,289,600 MHz just to run it. =A0 How can you get that from
> >your garden variety microcontroller? =A0 =A0Note: Part requires
> >synchronization, so I can't just run a separate oscillator.
>
> >This part looks like it will simply a lot of the other parts of the
> >circuit, particularly all the filtering and anti-aliasing, etc... =A0 Is
> >there a better ADC solution out there? =A0Maybe one that can be clocked
> >slower?
>
> >Or am I missing something here?
> >BTW: =A0My preference is 8051 as most of my development tools are 8051.
> >But would consider other architectures if the learning curve is not
> >too steep.
>
> NXP makes 8051 derivatives to 33MHz.- Hide quoted text -
>
> - Show quoted text -

1 / 33 MHz =3D 0.03 uS

If it takes 12 osc. clocks to make a single instruction cycle, then
each machine cycle would be:
(12) (0.03uS) =3D 0.36 uS   (12-clock cycles were/are used in the
earlier 8051 devices)

On clock-doubled parts, if it takes 6 osc. clocks to make a single
instruction cycle, then each machine cycle would be:
(6) (0.03uS) =3D 0.18 uS

And keep in mind that some opcodes require more than one machine cycle
to execute.
But, taking the best case (6-cycle), 1 / 0.18 uS is still only 5.5
MHz, and that's not nearly fast enough to clock 256 x 44.1 kHz (i.e.,
11.289 MHz)

A single-, or two- clock 8051 derivative might do it.  I've not played
with these before (if they exist)?
Still wouldn't give much time to do much of anything else.  Maybe a
couple dozen op-codes in between required ADC strobes. (??)
Couldn't screw around in coding, that's for sure.   Would probably
have to be assembler -- which is fine for this project.

-mpm

Re: ADC Converters (General Clocking Question) - Mike - 2009-07-01 10:00:00

On Jul 1, 9:07=A0am, linnix <m...@linnix.info-for.us> wrote:
> On Jul 1, 8:29=A0pm, mpm <mpmill...@aol.com> wrote:
>
>
>
>
>
> > I'm looking at this part:http://search.digikey.com/scripts/DkSearch/dks=
us.dll?Detail&name=3DPCM1...
>
> > Texas Instrument / Burr-Brown PCM1801
> > A 16-bit stereo Analog-to-Digital Converter (single ended).
>
> > It requires a 256x sample clock, in addition to some other clocks for
> > clocking out the serial data, and of course, the actual sampling rate
> > clock. =A0They have special names for all these clocks, but my question
> > relates to the fastest of these clocks.
>
> > Can you use an 8051 derivative (any derivative) to run this part?
> > I did the math and it does not look promising, based on my prior
> > experience with Atmel 8051 flavors...
> > But maybe I'm missing something =A0here...?
>
> > If I wanted CD-quality audio at 44.1 kHz (samples per second), then if
> > I read this datasheet correctly, I'd need a minimum of 256 x 44100 Hz
> > clock =3D 11,289,600 MHz just to run it. =A0 How can you get that from
> > your garden variety microcontroller? =A0
>
> Why not, many microcontrollers run at 16Mhz or above. =A0For example.
> AVRs.
>
> > =A0Note: Part requires
> > synchronization, so I can't just run a separate oscillator.
>
> Why can't you drive both with the same crystal/oscillator?- Hide quoted t=
ext -
>
> - Show quoted text -

Lightbulb on!!  Maybe.
I never thought about using an external oscillator to drive both the
microcontroller and the ADC.
That seems like it should work.   Just need to look at how to
synchronize the two, which I can probably do by timing the ADC
reset...?

For some reason, I was thinking (lazy?) that I had to use the internal
8051 osc.
You get so used to trying to save parts costs, I'd forgotten you could
use external clocks with many 8051's...   Duh!!

Thanks for the insight!!
-mpm

Re: ADC Converters (General Clocking Question) - Vladimir Vassilevsky - 2009-07-01 10:47:00


mpm wrote:

> I'm looking at this part:
> http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=PCM1801U-ND
> 
> Texas Instrument / Burr-Brown PCM1801
> A 16-bit stereo Analog-to-Digital Converter (single ended).
> 
> It requires a 256x sample clock, in addition to some other clocks for
> clocking out the serial data, and of course, the actual sampling rate
> clock.  They have special names for all these clocks, but my question
> relates to the fastest of these clocks.
> 
> Can you use an 8051 derivative (any derivative) to run this part?

Your main problem is not the clock generation per se, but how to connect 
the I2S slave bus of the ADC to the microcontroller SPI port. The clocks 
can be generated either by timer output compares or by an external 
hardware counter. Master clock could be the CPU crystal.

But what are you going to do with the ~200KB/s traffic of the ADC using 
the miserable 8051? You need better CPU, something like BlackFin would 
be appropriate.

Vladimir Vassilevsky
DSP and Mixed Signal Design Consultant
http://www.abvolt.com



Re: ADC Converters (General Clocking Question) - Joerg - 2009-07-01 13:57:00

Mike wrote:
> On Jul 1, 9:07 am, linnix <m...@linnix.info-for.us> wrote:
>> On Jul 1, 8:29 pm, mpm <mpmill...@aol.com> wrote:
>>
>>
>>
>>
>>
>>> I'm looking at this part:http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=PCM1...
>>> Texas Instrument / Burr-Brown PCM1801
>>> A 16-bit stereo Analog-to-Digital Converter (single ended).
>>> It requires a 256x sample clock, in addition to some other clocks for
>>> clocking out the serial data, and of course, the actual sampling rate
>>> clock.  They have special names for all these clocks, but my question
>>> relates to the fastest of these clocks.
>>> Can you use an 8051 derivative (any derivative) to run this part?
>>> I did the math and it does not look promising, based on my prior
>>> experience with Atmel 8051 flavors...
>>> But maybe I'm missing something  here...?
>>> If I wanted CD-quality audio at 44.1 kHz (samples per second), then if
>>> I read this datasheet correctly, I'd need a minimum of 256 x 44100 Hz
>>> clock = 11,289,600 MHz just to run it.   How can you get that from
>>> your garden variety microcontroller?  
>> Why not, many microcontrollers run at 16Mhz or above.  For example.
>> AVRs.
>>
>>>  Note: Part requires
>>> synchronization, so I can't just run a separate oscillator.
>> Why can't you drive both with the same crystal/oscillator?- Hide quoted text -
>>
>> - Show quoted text -
> 
> Lightbulb on!!  Maybe.
> I never thought about using an external oscillator to drive both the
> microcontroller and the ADC.
> That seems like it should work.   Just need to look at how to
> synchronize the two, which I can probably do by timing the ADC
> reset...?
> 
> For some reason, I was thinking (lazy?) that I had to use the internal
> 8051 osc.
> You get so used to trying to save parts costs, I'd forgotten you could
> use external clocks with many 8051's...   Duh!!
> 

Nowadays any old 8051 should be able to run at around 11.3MHz. Just make 
sure that your desired clock frequency does not mess up other functions 
such as serial port timing.

Even if you use the crystal on the internal oscillator you can often 
(gently) tap off the OSCOUT side of it and, if need be, buffer with a 
74HC chip. Or look if a port pin can pipe out the master clock directly.

[...]

-- 
Regards, Joerg

http://www.analogconsultants.com/

"gmail" domain blocked because of excessive spam.
Use another domain or send PM.

Re: ADC Converters (General Clocking Question) - 2009-07-01 15:20:00

"mpm" <m...@aol.com> wrote in message 
news:e...@c36g2000yqn.googlegroups.com...
> I'm looking at this part:
> http://search.digikey.com/scripts/DkSearch/dksus.dll?Detail&name=PCM1801U-ND
>
> Texas Instrument / Burr-Brown PCM1801
> A 16-bit stereo Analog-to-Digital Converter (single ended).
>
> It requires a 256x sample clock, in addition to some other clocks for
> clocking out the serial data, and of course, the actual sampling rate
> clock.  They have special names for all these clocks, but my question
> relates to the fastest of these clocks.
>
> Can you use an 8051 derivative (any derivative) to run this part?
> I did the math and it does not look promising, based on my prior
> experience with Atmel 8051 flavors...
> But maybe I'm missing something  here...?
>
> If I wanted CD-quality audio at 44.1 kHz (samples per second), then if
> I read this datasheet correctly, I'd need a minimum of 256 x 44100 Hz
> clock = 11,289,600 MHz just to run it.   How can you get that from
> your garden variety microcontroller?    Note: Part requires
> synchronization, so I can't just run a separate oscillator.

Why not? You can use a separate oscillator to generate all of the clocks. 
and dump the data to an external shift register and data latch. your data 
then appears at a 44.1 khz rate, 4 bytes. you have 22.6 us to read it.





Re: ADC Converters (General Clocking Question) - Bob.Jones5400@gmail.com - 2009-07-01 15:31:00

On Jul 1, 7:29=A0am, mpm <mpmill...@aol.com> wrote:
> I'm looking at this part:http://search.digikey.com/scripts/DkSearch/dksus=
.dll?Detail&name=3DPCM1...
>
> Texas Instrument / Burr-Brown PCM1801
> A 16-bit stereo Analog-to-Digital Converter (single ended).
>
> It requires a 256x sample clock, in addition to some other clocks for
> clocking out the serial data, and of course, the actual sampling rate
> clock. =A0They have special names for all these clocks, but my question
> relates to the fastest of these clocks.
>
> Can you use an 8051 derivative (any derivative) to run this part?
> I did the math and it does not look promising, based on my prior
> experience with Atmel 8051 flavors...
> But maybe I'm missing something =A0here...?
>
> If I wanted CD-quality audio at 44.1 kHz (samples per second), then if
> I read this datasheet correctly, I'd need a minimum of 256 x 44100 Hz
> clock =3D 11,289,600 MHz just to run it. =A0 How can you get that from
> your garden variety microcontroller? =A0 =A0Note: Part requires
> synchronization, so I can't just run a separate oscillator.
>
> This part looks like it will simply a lot of the other parts of the
> circuit, particularly all the filtering and anti-aliasing, etc... =A0 Is
> there a better ADC solution out there? =A0Maybe one that can be clocked
> slower?
>
> Or am I missing something here?
> BTW: =A0My preference is 8051 as most of my development tools are 8051.
> But would consider other architectures if the learning curve is not
> too steep.
>
> Thanks!!

If you do not need the oversampling then why not sample at a much
lower rate? i.e., you could get down with 1/256 and still have cd
quality. It looks to be a pure serial output so you could simply add
256 samples and average or ignore all but one. In any case you would
still have to supply a clock to the ADC but your computation could use
a much lower sampling than what the adc does. The oversampling is
there to provide better filtering and processing but if you don't need
it then no reason to make it more complex. I would think you could
find a better adc that could have a programmable oversampling other
than 256, 384 or 512.

Re: ADC Converters (General Clocking Question) - don - 2009-07-01 15:42:00

c...@att.net wrote:
> your data
> then appears at a 44.1 khz rate, 4 bytes. you have 22.6 us to read it.

Thats 22.6 uSec for all 4 bytes.

Whats the fastest transfer loop that a 8051 ( even a 100Mhz Silabs ) 
chip can transfer to memory ??

Where will the 8051 ( even with 64K of External Memory ) going to put 
all those bytes ??

After "recording" the source, where will the 8051 put it for safe storage ?

Play back in one thing, recording is another.

don

| 1 | 2 | next