On Thu, 2011-06-23 at 00:03 +0900, Songsong Gee wrote: > Hi, > > > I'm trying to calculate BER for my communication system (just FSK and > other simple schemes) > > > I use two PCs and two USPRs for a TX and a RX. > Altough I managed to run flow graphs for TX and RX simultaneously, > either TX or RX should start earlier than the other. > > > It results that RX USRP receives undesired signal if RX turns on > earlier, > and RX USRP cannot receive what TX sent if RX turns on later. > > > Thus, I have a difficulty on making synchronization.
Synchronization is a classic problem in communications and has been extensively researched. There are three types of synchronization which will be necessary in any practical system: 1. Frequency synchronization 2. Packet synchronization 3. Clock recovery To solve #1, you can use a PLL or Costas loop, pilot tones, or a frequency estimator of your choice to remove the unavoidable carrier frequency offset caused by using separate oscillators on TX and RX. To solve #2, real communication systems generally use a preamble, a predefined data sequence at the start of each transmission, which the receiver can use to find the start of each transmission and to obtain a channel estimate. If your transmission is continuous in nature, you won't need to do this part. To solve #3, Gnuradio includes two blocks designed to recover clocked data from a demodulated signal: the M&M clock recovery block, and the polyphase filterbank clock recovery block. Both are closed-loop algorithms which attempt to recover clock-aligned data at the original clock rate. So unfortunately, the answer isn't really "it's easy, just do this". Any communications textbook will include a treatment of the synchronization problem on all three levels. Gnuradio does include a DPSK modulator and demodulator which includes these steps; you might check out the source code for that block to see how it's done. You can see an example implementation in GRC in the gnuradio-examples/grc/simple/dpsk_loopback.grc --n > > > I'm looking forward to your helpful advices. > > -- > Seokseong Jeon (aka Songsong Gee) > > > _______________________________________________ > Discuss-gnuradio mailing list > Discuss-gnuradio@gnu.org > https://lists.gnu.org/mailman/listinfo/discuss-gnuradio _______________________________________________ Discuss-gnuradio mailing list Discuss-gnuradio@gnu.org https://lists.gnu.org/mailman/listinfo/discuss-gnuradio