Pseudoslumpmässig binär sekvens

En pseudoslumpmässig binär sekvens (PRBS), pseudoslumpmässig binär kod eller pseudoslumpmässig bitström är en binär sekvens som, även om den genereras med en deterministisk algoritm , är svår att förutsäga och uppvisar statistiskt beteende som liknar en verkligt slumpmässig sekvens. PRBS-generatorer används i telekommunikation , till exempel vid analog-till-information konvertering, men också i kryptering , simulering , korrelationsteknik och time-of-flight spektroskopi . Det vanligaste exemplet är den maximala längdsekvensen som genereras av ett (maximalt) linjärt återkopplingsskiftregister (LFSR). Andra exempel är guldsekvenser (används i CDMA och GPS ), Kasami-sekvenser och JPL-sekvenser , alla baserade på LFSR.

Inom telekommunikation är pseudoslumpmässiga binära sekvenser kända som pseudoslumpmässiga bruskoder ( PN- eller PRN-koder ) på grund av deras tillämpning som pseudoslumpmässigt brus .

Detaljer

En binär sekvens (BS) är en sekvens av bitar, dvs.

för .

En BS består av ettor och nollor.

En BS är en pseudoslumpmässig binär sekvens (PRBS) om dess autokorrelationsfunktion ges av

har bara två värden:

var

kallas arbetscykeln för PRBS, liknande arbetscykeln för en kontinuerlig tidssignal. För en sekvens med maximal längd , där är arbetscykeln 1/2.

En PRBS är 'pseudoslumpmässig', eftersom den, även om den i själva verket är deterministisk, verkar vara slumpmässig på så sätt att värdet på ett a element är oberoende av värdena för någon av de andra element, liknande verkliga slumpmässiga sekvenser.

En PRBS kan sträckas ut till oändligheten genom att upprepa den efter element, men den blir då cyklisk och därmed icke-slumpmässig. Däremot är verkligt slumpmässiga sekvenskällor, såsom sekvenser som genereras av radioaktivt sönderfall eller av vitt brus , oändliga (ingen förutbestämd slut- eller cykelperiod). Men som ett resultat av denna förutsägbarhet kan PRBS-signaler användas som reproducerbara mönster (till exempel signaler som används vid testning av telekommunikationssignalvägar).

Praktiskt genomförande

Pseudoslumpmässiga binära sekvenser kan genereras med hjälp av skiftregister med linjär återkoppling .

Några vanliga sekvensgenererande monopolynom är

PRBS7 =
PRBS9 =
PRBS11 =
PRBS13 =
PRBS15 =
PRBS20 =
PRBS23 =
PRBS31 =

Ett exempel på generering av en "PRBS-7"-sekvens kan uttryckas i C som

 
 
 
    
     
       
       
         
         
                   
                
         
            
             
            
        
    
 #include  <stdio.h>  #include  <stdint.h>  #include  <stdlib.h>  int  main  (  int  argc  ,  char  *  argv  [])  {  uint8_t  start  =  0x02  ;  uint8_t  a  =  start  ;  int  i  ;  för  (  i  =  1  ;;  i  ++  )  {  int  newbit  =  (((  a  >>  6  )  ^  (  a  >>  5  ))  &  1  );  a  =  ((  a  <<  1  )  |  nybit  )  &  0x7f  ;  printf  (  "%x  \n  "  ,  a  );  if  (  a  ==  start  )  {  printf  (  "upprepningsperioden är %d  \  n  " ,   i  );  bryta  ;  }  }  } 

I detta speciella fall har "PRBS-7" en upprepningsperiod på 127 värden.

En mer generaliserad kod för alla PRBS-k-sekvenser upp till k=32 med C++-mallar kan hittas på GitHub .

Notation

PRBS k- eller PRBS- k- notationen (såsom "PRBS7" eller "PRBS-7") ger en indikation på sekvensens storlek. är det maximala antalet bitar som finns i sekvensen. K anger storleken på ett unikt dataord i sekvensen . Om du segmenterar de N databitarna i alla möjliga ord med längden k , kommer du att kunna lista alla möjliga kombinationer av 0:or och 1:or för ett k-bitars binärt ord, med undantag för ordet helt 0:or. Till exempel kan PRBS3 = "1011100" genereras från . Om du tar varje sekventiell grupp med tre bitars ord i PRBS3-sekvensen (som lindas runt till början för de sista tre-bitarsorden), hittar du följande 7 ordarrangemang:

0 "  101  1100" → 101 "1  011  100" → 011 "10  111  00" → 111 "101  110  0" → 110 "1011  100  " → 100 "  1  0111  00  " →  1  011 001 00   " → w 010 (kräver inpackning) 

Dessa 7 ord är alla de möjliga 3-bitars binära ord som inte är noll, inte i numerisk ordning. Detsamma gäller för alla PRBS k , inte bara PRBS3.

Se även

externa länkar