Non-coherent receiver for DBPSK: Implementation details I am implementing a non-coherent receiver for DBPSK.
I have a computer science background with little knowledge of DSP so my questions here may seem obvious.
The design of the receiver I am trying to implement is the following:
Design of DPSK receiver

And what I am doing right now is:

On the tx side


Differentially encoding my bit sequence
BPSK modulating it
Applying a high-pass filter


On the rx side


Applying a band-pass filter around the carrier frequency
Delaying (by one bit worth of data) and multiplying the data by itself
Applying a low-pass filter
Integrating over one bit worth of data (i.e. sum the sample values)
Making the decision depending on the sign of my integral


By 'data' I mean samples at 44.1kHz.
When I simulate this on Octave, it works (i.e. I can detect the bit sequence even with high AWGN).
The problem is I am trying to move to an infinitely long data sequence (i.e. I do not know the exact moment where the tx began).
So here are my questions:


How can I achieve time and frame synchronization ? (I tried with a barker code but I am not sure I am getting it right)
This is the thing that's most confusing to me. My guess is you'd have to get time synced before the integration block, and frame synced after the decision block.
How can I express the bandwidth in function of carrier frequency f and bit rate ?
Does the relation between bit rate and carrier frequency have any influence on the receiver ?
What are the optimal values for the filters ? (number of taps)
How do I calculate Eb/N0 for in my case ? (I want to compare my BER curve with others to see how good is my receiver)
1) A typical approach would be to have a frame alignment word (and by "word" I mean bit sequence) at the beginning of every frame.  You could time synchronize by looking for that FAW through cross-correlations.  Barker codes are a good choice because they have good autocorrelation properties.

The problem with the approach is that the data, being random, can look like the FAW sometimes.  You can use the periodicity of the FAW to screen out those false positives.  For instance, if your frame is 1000 bits long, you would look for multiple hits spaced 1000 bits apart.  Once you have found them you have both time and frame synchronization.

2) There is not a direct relationship between carrier frequency and bandwidth.  There is a direct relationship between bit rate and bandwidth, but there are other factors involved.  The easiest way to determine your bandwidth is to take an FFT of your signal and measure it.

3) Your question is unclear.

4) You haven't provided enough information, and "optimal" can mean a lot of different things.  If you want a good answer to this you should start a new thread with more details.

5) It sounds like you are adding noise via AWGN, so you know what your SNR is.  With BPSK Eb/No is equal to the SNR.