InformAsic AB Utveckling av hårdvara och säkerhet för inbyggda system
  • Swedish
  • English
Hem          Konsulting          Produkter          Support          Länkar          Press          Om oss          Kontakt
 
> Informasic lanserar Rule 30 som Open Core Skriv ut
IP-kärnan Rule 30 från Informasic är en högpresterande PRNG (pseudo random number generator) för att generera exempelvis testdata vid FPGA-accelererad verifiering, för att generera teststrukturer på chip, eller för att generera kontrollerad slumpmässig trafik. Kärnan kräver minimala resurser av hårdvaran.

 

Cellautomat

En cellautomat är en diskret beräkningsmodell där ett antal celler utgör modellens tillstånd. För varje cell beror nästa tillstånd på dess nuvarande tillstånd, dess närmaste grannars tillstånd samt en uppsättning uppdateringsregler.

En sådan uppsättning regler är Rule 30, publicerad av Stephen Wolfram. Dessa uppdateringsregler genererar en skenbar slumpmässighet trots avsaknad av något som rimligen skulle kunna betraktas som slumpmässigt indata. Mer matematiskt korrekt uttryckt ger reglerna upphov till ett kaotist, aperiodiskt beteende hos cellautomaten. En cellautomat med Rule 30 kan därmed fungera som en slumptalsgenerator.

Notera dock att även om Rule 30 genererar en bra rektangelfördelad slumptalssekvens, är den inte en kryptografiskt säker PRNG. Rule 30 skall därför inte användas för strömkrypto eller vid nyckelgenerering.


Implementation

Informasics IP-kärna Rule 30 implementerar en endimensionell cellautomat där ändarna är sammankopplade till en ring. Cellautomaten består av 32 enbitars celler, vilket gör att automaten genererar ett 32-bit ord varje cykel.

Konstruktionen har implementerats i en Altera Cyclone II FPGA. Konstruktionen kräver 32 registers och 64 LE:s. Den maximala interna klockfrekvensen är drygt 400MHz, vilket ger en PRNG-bandbredd på 1.6 GByte/s.

IP-kärnan Rule 30 inkluderar RTL-kod i Verilog 2001, dokumentation, testbänk, samt scriptfil för att simulera konstruktionen med den öppna Verilogsimulatorn Icarus Verilog. 

Licens för användning av IP-kärnan Rule 30 är en så kallad Two Clause BSD License.

IP-kärnan kan laddas ner på sidan Produkter/IP-kärnor/Rule 30 Slumptalsgenerator.

 
© InformAsic AB    ·    Hugo Grauers Gata 3B    ·    SE-411 33 Göteborg    ·    Sweden    ·    +46 31 685490    ·    info@informasic.se