- #1
galaxy_twirl
- 137
- 1
Homework Statement
I am currently embarking on a project which requires me to design a system where I can transmit voice over a distance, by inputting an analog voice signal on one end and then recovering the voice which I input on the transmitting end at the receiving end.
The general design (given by my teacher) is here (and I am allowed to modify the design if I wish to):
However, I am stuck on the problem of achieving frame synchronisation, which is essential in recovering the voice signal at the decoder (receiver).
Homework Equations
(I will state the components I have in here.)[/B]TTL I.C.s components:
74 HC 00 NAND gates
74 HC 04 NOT gate
74 HC 32 OR gates
74HC73 Dual J-K Flip-Flops with CLR
74HC74 D-flip-flop
74 HC 164 Parallel-out serial-in shift register
74 HC 165 Parallel-out serial-in shift register
74 HC 191 4-bit counter
74HC297 DPLL
Analog components:
TP3054/TP3057 PCM codec
LM386 Audio amplifier
The Attempt at a Solution
Currently, I have thought of using bit stuffing to achieve frame synchronisation while keeping the probability of the frame marker detector detecting false frames to a minimum via the attempt to eliminate false frame markers. However, in the project, we have to ensure bit synchronisation and hence, the presence of the bit clock hampers our solution, which is to do bit stuffing, since the insertion of a binary digit will extend the bit clock duration and cause bit synchronisation problems between the receiver and transmitter.
Hence, I have modified our solution to the case where, instead of inserting a binary digit, I will change the LSB (least significant bit) of the n-bit codewords, e.g. 01111110 to 01111111, for instance. However, I have 3 questions in mind:
Q1. Is this implementation of my solution possible with the chips I have above?
Q2. How can I tell my chip to change the least significant bit of my n-bit codewords?
Q3. How do I identify the LSB of my n-bit codewords?
Just wondering, if my modified solution of bit stuffing does not work, are there any solutions or resources which I can point to to get ideas for eliminating to a minimum, false frame marker detection by the frame marker detector?
A big thank you to anyone who can help me in my questions above. :D Thanks again!