01-12-2012 02:27 PM
Error in the poly (Wrong tap)
x^9+x^5+1 not x^4
so the pattern is not maximal length
01-13-2012 10:57 AM - edited 01-13-2012 11:02 AM
Jeff
I think it's correct, please take a look at message #5 for file: Pseudo Random Test Patterns.pdf 8 KB
Ben
You originally had it correct when you referenced to O.153 paper, and the Fireberd 6000A manual said it too:
"63 2^6-1 pseudorandom pattern with a maximum of 5 sequential zeros and 6 sequential ones."
"511 2^9-1 pseudorandom pattern with a maximum of 8 sequential zeros and 9 sequential ones."
"2047 2^11-1 pseudorandom pattern with a maximum of 10 sequential zeros and 11 sequential ones."
I also think your program did it correctly too because it did output 8 squential 0s. The data pattern I recorded works like this:
I have two modems hooked back to back. Unit A was connected to the fireberd using synchronous connection while unit B was connected to workstation using asynchronous connection. The data pattern I posted was recorded from unit B. When I sent this pattern back from into unit B modem, unit A received then output the data to Fireberd and it was synced with no bit error. If I modify the pattern for X number of bit error then the Fireberd will show exactly the number of bit error.
Now, what gets me is that data pattern isn't always consistent. I always get different pattern everytime I key on unit A for 511 or any pseudorandom patterns for that matter. If I take the sent data from the fireberd then send it back into a modem to next modem then the fireberd will always sync up. When I contacted Acterna, this is what they say:
"From a receiver point of view it does not really matter. Pseudorandom
patterns sync up from anywhere within the pattern. The shift registers are
seeded with incoming bits and then the next bit expected can be calculated.
It is why they sync very quickly because they can sync from any spot within
the pattern."
And here is how they explained 511:
"All pseudorandom pattern are mathematically calculated from a primitive
polynomial so they are not stored patterns that can be "displayed". I can describe the sequence. A 511 pattern is a 2^9-1 pattern. So it has nine
binary bits that count up excluding a binary all zeroes. So the pattern would be :
000000001 (decimal 1)
000000010 (decimal 2)
000000011 (decimal 3)
000000100 (decimal 4)
000000101 (decimal 5)
000000110 (decimal 6)
000000111 (decimal 7)
000001000 (decimal 😎
000001001 (decimal 9)
000001010 (decimal 10)
and so and so forth until it reachs the
111111111 all ones position. It counts in binary starting at 1 up to the
all ones position and then repeats."
I honestly don't think they explained the 511 pattern correctly, I'm with you on this one too Ben. I had the same thought as you posted the second Vi attachment minus the initial seed. The thing is regardless of the seed, 511 pattern will always have a maximum of 511 bit so it will always have to repeat so the Fireberd pattern should always be consistent. Is this right? Any suggestions to try out?
01-13-2012 11:33 AM - edited 01-13-2012 11:37 AM
@lavalava wrote:
Jeff
I think it's correct, please take a look at message #5 for file: Pseudo Random Test Patterns.pdf 8 KB
sorry bout that this wikipedia article suggested otherwize and the taps in yous ref and the original post are Q9 XOR Q5 your code taps Q4
01-17-2012 07:42 PM - edited 01-17-2012 07:43 PM
Thanks, Ben. I got it to work. I clicked on the wrong solution too, your second attachment was the actual solution. All it needed was 5 xor 9 not 4 xor 9. What I did was hooking the Fireberd (DTE) to a modem (DCE), key it on and have the modem sends out the signal right to my software defined radio. My demodulator did received it as 511 bits of repeating correct pattern. I think there were issues in the asynchronous line in my original setup. Unfortunately, I don't have a synchronous card since we're using x64 system in the lab. They're prety hard to find with x64 driver so I have to rely on the Fireberd products.
Anyway, any tip on how to build a BER tester? Let's say of the 511 bits repeating pattern being sent, my receiver expects 111111111 as the initial bits but somehow received 101011111, obviously this seed is going to messes up the expected output. Is there a way to make the receiver guesses that it supposed to received 111111111? Then use 111111111 as the starting seed. In order word, guessing where the current seed should be then sync up from there?
01-17-2012 07:49 PM
@lavalava wrote:
Thanks, Ben. I got it to work. I clicked on the wrong solution too, your second attachment was the actual solution. All it needed was 5 xor 9 not 4 xor 9.
Isn't that what I said?????? for two posts???????
01-18-2012 10:31 AM
Thanks, Jeff. You too.
Any tips on building a BER tool for synching up to 511 pattern that is corrupted?
03-28-2013 01:03 PM
Respected sir,
What could be the possible solution to truncate 511 pn sequence to 500?
With regards.
03-28-2013 01:18 PM
Why do you keep posting the same question to different threads, it isn't as though different people look at the three threads. Keep your question in the same thread, follow the answers you get there!
08-31-2016 02:09 PM
Did this pattern work with the fireberd? I'm using the correct one the second one and I simply cannot get it to work.
09-01-2016 01:51 PM
Hi James,
I would recommend you post your question in a new forum so your post can get more visibility. See guideline number 3 for the discussion forums for more information (http://forums.ni.com/t5/Getting-Started-on-the-NI/NI-Discussion-Forums-User-Guidelines/td-p/3164638).