Continue to Site

Welcome to EDAboard.com

Welcome to our site! EDAboard.com is an international Electronics Discussion Forum focused on EDA software, circuits, schematics, books, theory, papers, asic, pld, 8051, DSP, Network, RF, Analog Design, PCB, Service Manuals... and a whole lot more! To participate you need to register. Registration is free. Click here to register now.

EPROM as a single frequency DDS?

Status
Not open for further replies.
DDS uses a partly mathematical and partly look-up principle. An EPROM can only be used as a look up table. In that schematic the data outputs of the EPROM are used to drive a crude digital to analog converter (the resistor chain at the output) and each step of the waveform is produced by selecting the value in the next address of the EPROM. The only way to change the output frequency is to select the addresses faster or to use fewer points to recreate the waveform (more distortion!). The only way to get optimum resolution is to use 256 levels (= all 8 bits) and the smallest number of addresses in which each has at least +/- 1 change in data.

In the article there are 8 bits with 128 steps, therefore the addresses change at a rate of 128*output frequency. The reason it isn't used at higher frequencies is the EPROM access time isn't generally fast enough to produce the data at the needed rate. A typical EPROM with an access time of 100nS, ignoring progation delays would only be able to work up to ~80KHz. You can get 16-bit EPROMS or parallel as many 8 or 16 bit ones as you want, that will allow you better voltage resolution (lower distortion) but also further limit the top frequency.

There are other ways to do it, for example, only storing one or two quadrants of data in the EPROM then altering the clocking and inversion of the output but by the time it is implemented you may as well go for full DDS.

Brian.
 
  • Like
Reactions: neazoi

    neazoi

    Points: 2
    Helpful Answer Positive Rating
hi,
You could use the Q7 output pin #7 of the 4040 as a EPROM select bit.
Use two 8 bit EPROM's, duplicate the resistor ladder network to give a 16Bit 'ADC' signal.

It would mean rewriting the Sine wave code and the 4046 frequency.

E
 
  • Like
Reactions: neazoi

    neazoi

    Points: 2
    Helpful Answer Positive Rating
DDS uses a partly mathematical and partly look-up principle. An EPROM can only be used as a look up table. In that schematic the data outputs of the EPROM are used to drive a crude digital to analog converter (the resistor chain at the output) and each step of the waveform is produced by selecting the value in the next address of the EPROM. The only way to change the output frequency is to select the addresses faster or to use fewer points to recreate the waveform (more distortion!). The only way to get optimum resolution is to use 256 levels (= all 8 bits) and the smallest number of addresses in which each has at least +/- 1 change in data.

In the article there are 8 bits with 128 steps, therefore the addresses change at a rate of 128*output frequency. The reason it isn't used at higher frequencies is the EPROM access time isn't generally fast enough to produce the data at the needed rate. A typical EPROM with an access time of 100nS, ignoring progation delays would only be able to work up to ~80KHz. You can get 16-bit EPROMS or parallel as many 8 or 16 bit ones as you want, that will allow you better voltage resolution (lower distortion) but also further limit the top frequency.

There are other ways to do it, for example, only storing one or two quadrants of data in the EPROM then altering the clocking and inversion of the output but by the time it is implemented you may as well go for full DDS.

Brian.

Thank you both for the replies!
The access time is the basic limit I have thought too, and even a "modern" 45ns eprom from WSI could not give this high frequency (eg 30MHZ max).
BUT, what about a square wave output? You know, to drive these HF class-E transmitters, or provide quadradure oscillation without having to run x4 of the frequency to achieve this.

What sort of maximum frequency should I expect if the EPROM is used as a square wave generator (i.e 2 states for max frequency, on and off)
 

That does not work in general, because such a square wave lacks the all important reconstruction filter before the squarer so you get jitter in the edge positions causing major spurs.

Consider that a DDS samples the phase and this is what allows small step sizes, because the reconstruction filter turns the sampled system back into a continuous time one, you MUST have that filter between the DAC and any squarer.

If you can cope with the spurs then you would do better to simply use a high speed accumulator and take the top bit as your square wave, no eprom needed, but for DDS to be well behaved you need that reconstruction filter.

Regards, Dan.
 
  • Like
Reactions: neazoi

    neazoi

    Points: 2
    Helpful Answer Positive Rating
Thank you all for your replies, this has been very helpful!
 

Status
Not open for further replies.

Part and Inventory Search

Welcome to EDABoard.com

Sponsor

Back
Top