5MHz Input to Cog?
ckbw33
Posts: 5
I would like to interpret a 5 MHz carried data stream. Logic signal (square wave), 4 clock cycles per bit @ 5 Mhz, phase inversions denoting bit value (1/0). BPSK. Data is comes in 98 bit bursts, no clock signal available (except the inherent clock characteristic of the carrier). My question is, is this feasible with a COG, or is a traditional logic circuit required at this frequency?. My thinking is to sample (shiftin in PASM), buffer, and possibly use a second COG to find the phase inversions. My thinking is this is on the hairy edge. Most PASM commands require 4 clock cycles, so 80 Mhz quickly becomes 5 MHz sample rate with two lines of code? I hope the experts here can guide (save) me before attempting something impossible. Thanks!
Comments
You'd need a table of 32 bit masks plus the above two instructions for each bit sample and two samples per bit-time (200ns) for a table of 2x98 bit samples ... about 7 32-bit words. I can see the Propeller and the incoming signal getting out of phase such that the samples are too near the bit transitions of the data so they're missed, but a little analog processing ahead of time can help this.
This takes about 200 long words for the instructions, 32 longs for the bit masks, and 7 for the data itself. That's only about half of the available cog space which can be used to copy the data to hub memory after each burst and to synchronize with the start of the next burst.
BPSK refers to a modulation method wherein a sine wave is phase shifted in the analog domain. What you're referring to sounds more like Manchester coding in the digital domain. Can you elaborate further, please?
-Phil