Digital reciever cicruit

Status
Not open for further replies.

mit_mohit

New Member
I want to know about the circuit of a digital coomunication reciever. I want to know how clock can be extarcted from the recieved data if the coded signal is of the form NRZ-level ( that means 0 represented by 0 volts and 1 is represented by 5volts ).
Also I want to know how the extacted clock can be used to sample the recieved data to extract the message signal?
 

You're still giving no information about the data!. Your idea of NRZ is also completely wrong, NRZ means 'Non Return to Zero', and effectively means there's no overall DC offset in the signal - which means you can send it via a radio or IR link.

The most common type is Manchester coding - and assuming that's what you're looking for?, I suggest you google for it!.
 
mit_mohit said:
I want to know how clock can be extarcted from the recieved data...if the coded signal is of the form NRZ-level ( that means 0 represented by 0 volts and 1 is represented by 5volts ).

For the moment, ignore NRZ, because that confuses you.

Any signal that is picked up from a transmitter will no doubt output (or at least produce) a voltage of some sorts. If it didn't, then radios would not exist.

Because the data is not known, there is no way to determine clock information. You may want to implement data that can start a clock and send it through a transmitter and have the receiver decode it through a PLL.

To begin, check out information about serial port data. It sends data in the basic format of: start bit, 8 data bits, stop bit.

Do you know anything about the data, or is this random data you are talking about?
 
If the data has reasonable transition density, you can extract clock from it, generally with a phaselocked loop. NRZ has no guarantee of transitions. As Nigel said, Manchester code is one which has clock encoded in the data. Miller code is another, but you have to send a preamble, otherwise the phase of clock is ambiguous.
 
mit_mohit said:
thanks for your suggestion.
Actually data is of the follwing type

1001001001001
Are you saying you already know what is going to be transmitted, or are you simply saying that it has 1's and 0's? Could it be like this?

10110100001011111101100110011100100010101001011... ?

or like this?

000000000000000000000000001000000000000000000000... ?

or this?

11111111111111111111111111110000000000000000000000000... ?
 
Actually at the transmitter side a person is switching on and off a light source ( here i am talking about very short distance communication , say within a room) .
a photodector on the reciever side will detect the light signal. when light is recieved the output of the detector is 1 and when no light is there it is 0
you can understand it this way. say someone is sending information through morse code and it is to be determined what is the clock frequency at which the information is beign sent (you can assume that the person who is switching on and off is doing it at fairly constant rate , e.g. on for 1 sec and then off for 2 seconds.small variations are allowed in the switching frequency becoz it is operated by a person )
so i have extarct clock from the recieved signal.
 
So now you've introduced a completely different question?.

Morse code DOESN'T include any clock information, so you can't recover it!. However, the dots and dashes are related to each other - with dashes being twice as long as dots. So you need to measure the lengths of the ones and compare them, you can then choose a point half way between them, and anything under that is a dot, and anything over is a dash. The routine should be continually self adjusting to compensate for any variations in sending speed.

If you searcht he Internet there are various micro-controller based morse reading programs!, and PC based ones!.
 
I need not mean that I have to send morse code.
I just compared my system with morse code.
I have to determine approximately at what clock fequency the person is switching the switch on and off
 
mit_mohit said:
I need not mean that I have to send morse code.
I just compared my system with morse code.
I have to determine approximately at what clock fequency the person is switching the switch on and off

You've been posting vague questions for quite a while now, which is why you've never got a satisfactory answer (as we don't know what you want!).

Please tell us EXACTLY! (and I mean EXACTLY) what you are wanting to do - NOT how you think it should be done, but what you WANT to do!.
 
Sorry if I am not able to make the question clear.
As I already told on the transmitter side a person is switching a light source on and off . I have to determine at the reciever side what is the rate at which this switching is beign done. ( assume a photodetector is present at the reciever side)
That's all is the question.
 

Right, this bears no resemblance whatsoever to your previous questions!.

It's just a question of timing the gaps between flashes at the receiving end, and perhaps the length of time of each flash? - it's then just simple maths to calculate the rate.

Probably the easiest way is to use a PIC or other micro-controller?.
 
First of all thanks for taking pain to answer my doubts.
Now you got my question!!!
Sorry I forgot to tell you that I am not allowed to use any microcontroller or PLL.
I have to use some digital logic.
Now how to do it?
 
Basically a counter, gate a clock signal into a chain of counters, then stop it when the next flash appears. The resolution is dependent on the number of counters and the speed of the clock signal.

Most frequency counters can also be used in this way!.
 
Thanks for your reply.
As I have been telling that there is no clock on the reciever side.
Now please tell how to proceed?
 
OK let me see if I understand the problem.
I THINK that you are trying to measure how long someone holds a switch in the closed position.
By some means, a radio system may be, the switch contact is transfered to another location, but it is still just a switch contact and you are trying to measure the length of time the switch is closed.

Solution:

Make a clock oscillator, running at 1kHz.
Use the contact to connect the output of the oscillator to a series of counter circuits. If you use four 7490 decade counters, you can count up to 9999.
The 1khz oscillator will take 9.999 seconds to make the decade counters count up to 9999.

If the guy holds the switch closed for more than 9.999 seconds, you can either:
use a slower clock oscillator 100hz will give 99.99 seconds.
or
use more counter stages.

Does this answer you question?

JimB
 
It's just a question of timing the gaps between flashes at the receiving end, and perhaps the length of time of each flash? - it's then just simple maths to calculate the rate.

I got an idea that COULD possibly answer your question:

You could use two CD4040 (or equivalent) counters, two 2-input NAND gates where the outputs are connected to the clocks of the counters, and one input from each gate is connected to a clock whose delay is the lowest counting unit you want. So if you want to round off to seconds, set the clock to one second intervals. The other input of each nand gate are inverses of each other and is connected to the output of the flashes.

When the light is on, one counter will keep counting until the light is off. This will make the counter go on and start. The process repeats when the light goes back on.

Then take the 12-bit output from the counters, and then convert that to decimal, and multiply that by whatever the delay is for the clock, and you will have your answer.
 
Thanks a lot for your solution!!!!!!
but can this be done without an already existing clock on the reciever side?
 
Status
Not open for further replies.
Cookies are required to use this site. You must accept them to continue using the site. Learn more…