DDS ideas
3 posters
Page 1 of 1
Re: DDS ideas
Hi Ivan,
Yes, as you pointed out, the technique would need a lot of fast processing, which is probably why the present DDS is implemented for single frequencies in a dedicated chip.
I do not want to go into SDR as that has already been done and available quite cheaply these days.
But thank you for your input. Call it a "reality check"
Very best regards from harry - SM0VPO
Yes, as you pointed out, the technique would need a lot of fast processing, which is probably why the present DDS is implemented for single frequencies in a dedicated chip.
I do not want to go into SDR as that has already been done and available quite cheaply these days.
But thank you for your input. Call it a "reality check"
Very best regards from harry - SM0VPO
_________________
Everything in this world is either bacon, or it isn't bacon
They say that money cannot bring you happiness, but if you have it then you can always buy more bacon
Re: DDS ideas
Hi Harry,
machine level programming for current Windows and Linux systems seems to be nearly impossible. The way out is to use a language, that is compiled and linked to an executable file and then run directly under the OS control (e.g. many clones of C++ or Pascal). Interpreted languages (Basic, Java) are way too slow. The speed requirements are still tremendous, whilst the 64 bit bus width cannot make profit. Let me estimate: HF carrier 7 MHz, 8 samples per period (as a minimum), 10 instructions to generate one sample (is that enough?), 4 clock beats per instruction = 2,24 GHz clock, if one processor core is 100% dedicated to this task. Parralel use of more cores would make the thing better, if it is possible, but such programming is quite complicated. It is similar to video rendering in gaming videocards using tens or hundreds of processor cores.
VBR from Ivan
machine level programming for current Windows and Linux systems seems to be nearly impossible. The way out is to use a language, that is compiled and linked to an executable file and then run directly under the OS control (e.g. many clones of C++ or Pascal). Interpreted languages (Basic, Java) are way too slow. The speed requirements are still tremendous, whilst the 64 bit bus width cannot make profit. Let me estimate: HF carrier 7 MHz, 8 samples per period (as a minimum), 10 instructions to generate one sample (is that enough?), 4 clock beats per instruction = 2,24 GHz clock, if one processor core is 100% dedicated to this task. Parralel use of more cores would make the thing better, if it is possible, but such programming is quite complicated. It is similar to video rendering in gaming videocards using tens or hundreds of processor cores.
VBR from Ivan
Ivan- Posts : 793
Join date : 2012-11-25
Age : 64
Location : Praha, Czechia
admin likes this post
Re: DDS ideas
Hi Ruud,
Thank you for the response. I was thinking that frequency could be the limiting factor, but for HF use I am sure it would be practical.
I used to write .EXE files for DOS, through to Win-98SE but most of the stuff I wrote will not work any longer as everything around today are 64-bit machines. I think it would have to be machine-level code since there would be no speed budget for any high-level language that requires and interpreter.
It was just a thought.
BR Harry
Thank you for the response. I was thinking that frequency could be the limiting factor, but for HF use I am sure it would be practical.
I used to write .EXE files for DOS, through to Win-98SE but most of the stuff I wrote will not work any longer as everything around today are 64-bit machines. I think it would have to be machine-level code since there would be no speed budget for any high-level language that requires and interpreter.
It was just a thought.
BR Harry
_________________
Everything in this world is either bacon, or it isn't bacon
They say that money cannot bring you happiness, but if you have it then you can always buy more bacon
Re: DDS ideas
Sorry to read about your health problems Harry!
I hope things are going better now.
About the DDS: I think indeed the main problem will be the maximum frequency.
And of course the resolution of the D-A conversion.
(How 'good' do you want the output signal to be?)
But I suppose you will come up with a brilliant idea, that most people didn't think of. (As usual!)
All the best!
I hope things are going better now.
About the DDS: I think indeed the main problem will be the maximum frequency.
And of course the resolution of the D-A conversion.
(How 'good' do you want the output signal to be?)
But I suppose you will come up with a brilliant idea, that most people didn't think of. (As usual!)
All the best!
admin likes this post
DDS ideas
Hi guys,
I have been sick and I even have a specialist visit next week. But when you have to lie in bed I find that I can occupy hours when thinking. A few weeks ago I was in the emergency ward and kept in for a couple of days. A nurse came to me on more than one occasion since I did not appear to be responsive. I couldn't move much as I had needles in both arms.
One of the things I was thinking about was DDS - Direct Digital Synthesis of frequencies.
In principle this uses a dedicated chip, such as the 9850 or 9851. It is simply a digital to analogue converter and output sinusoidal values as a constant rate, but the value at each point in time is a calculated level for the sinusoidal wave that it should be at the specific moment. The result is a constant number of values at precise intervals, but each value is modified, depending on the frequency programmed.
What if ... ?
What if we built the same D-A converter using hardware and then used a programmable processor to calculate and output the values, but add a few variations?
For example, connect a microphone to a A-D converter and use the audio information to scale the D-A RF output in sympathy? This would mean that amplitude modulation can be implemented in the software. No external hardware needed. The audio waveform would by 1000's of times slower than the RF waveform, so it could be used to give a very clean AM output. Any transmitter could be broken down into a micro-processor, a filter, and a PA stage.
Then switch to a different program that adds or subtracts the instantaneous AF level to and from the output frequency? This could implement Frequency Modulation. It could be scaled for WBFM or NBFM.
Then there is the scenario where the AM routine is modified to calculate the instantaneous RF output according to a Single-Sideband algorithm and output SSB (USB or LSB) directly.
This could open loads of possibilities where hardware is eliminated in a transmitting device, which could be nothing more than a micro-processor and a power-amplifier.
Other modes of transmission could also be implemented, simply by selecting a different algorithm. For example FSK, PSK, QAM, ISB, frequency-hopping, multi-carrier transmissions, you name it.
The only disadvantages I can see is the processor speed, which would prevent the use of "micro-controllers" (Arduino, etc) and require a full-blown micro-processor. The DDS chips are dedicated hardware, which gives a speed advantage, but for HF use it should be perfectly possible.
So what do you guys think? Is this a stupid idea? Was my imagination running wild?
Very best regards from Harry - SM0VPO
I have been sick and I even have a specialist visit next week. But when you have to lie in bed I find that I can occupy hours when thinking. A few weeks ago I was in the emergency ward and kept in for a couple of days. A nurse came to me on more than one occasion since I did not appear to be responsive. I couldn't move much as I had needles in both arms.
One of the things I was thinking about was DDS - Direct Digital Synthesis of frequencies.
In principle this uses a dedicated chip, such as the 9850 or 9851. It is simply a digital to analogue converter and output sinusoidal values as a constant rate, but the value at each point in time is a calculated level for the sinusoidal wave that it should be at the specific moment. The result is a constant number of values at precise intervals, but each value is modified, depending on the frequency programmed.
What if ... ?
What if we built the same D-A converter using hardware and then used a programmable processor to calculate and output the values, but add a few variations?
For example, connect a microphone to a A-D converter and use the audio information to scale the D-A RF output in sympathy? This would mean that amplitude modulation can be implemented in the software. No external hardware needed. The audio waveform would by 1000's of times slower than the RF waveform, so it could be used to give a very clean AM output. Any transmitter could be broken down into a micro-processor, a filter, and a PA stage.
Then switch to a different program that adds or subtracts the instantaneous AF level to and from the output frequency? This could implement Frequency Modulation. It could be scaled for WBFM or NBFM.
Then there is the scenario where the AM routine is modified to calculate the instantaneous RF output according to a Single-Sideband algorithm and output SSB (USB or LSB) directly.
This could open loads of possibilities where hardware is eliminated in a transmitting device, which could be nothing more than a micro-processor and a power-amplifier.
Other modes of transmission could also be implemented, simply by selecting a different algorithm. For example FSK, PSK, QAM, ISB, frequency-hopping, multi-carrier transmissions, you name it.
The only disadvantages I can see is the processor speed, which would prevent the use of "micro-controllers" (Arduino, etc) and require a full-blown micro-processor. The DDS chips are dedicated hardware, which gives a speed advantage, but for HF use it should be perfectly possible.
So what do you guys think? Is this a stupid idea? Was my imagination running wild?
Very best regards from Harry - SM0VPO
_________________
Everything in this world is either bacon, or it isn't bacon
They say that money cannot bring you happiness, but if you have it then you can always buy more bacon
Andrew likes this post
Page 1 of 1
Permissions in this forum:
You can reply to topics in this forum
|
|