Xilinx_v2000_textbanner_111103_120531

Saturday 4 Feb 16:41


Läs, bläddra och kommunicera interaktivt.

EMBworld_vänster knapp
ECS2011
EmbeddedSpecialen
eeTimes europe
Slumptalsgenerator som Open Core Utskrift E-post
Skrivet av Göte Fagerfjäll   
2009-01-12
Göteborgsföretaget Informasic gör nu sin IP-kärna Rule 30 tillgänglig som Open Core. Slumptalsgeneratorn kan användas 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. Rule 30-kärnan är en högpresterande PRNG (pseudo random number generator) och kräver minimala hårdvaruresurser. Tekniken baseras på en Cellautomat, alltså 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 kaotiskt, 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.
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.
Licensen för användning av IP-kärnan Rule 30 är en så kallad Two Clause BSD License och IP-kärnan kan laddas ner från Informasics web.
Informasic var en av förra årets vinnare av Swedish Embedded Award.
Kommentarer (0)Add Comment

Skriv kommentar

security code
Skriv bokstäverna ovan i textrutan nedanför


busy
 
< Föregående   Nästa >