Diplomdarbs
Tehnoloģijas
Datori, elektronika, programmēšana
Pseido gadījumskaitļu ģeneratora rīka izstrāde FPGA plate...-
Pseido gadījumskaitļu ģeneratora rīka izstrāde FPGA platei, izmantojot programmu Labview
Nr. | Sadaļas nosaukums | Lpp. |
IEVADS | 7 | |
1. | GADĪJUMSKAITĻU UN PSEIDO GADĪJUMSKAITĻU ĢENERATORI | 9 |
1.1. | Vēsture | 9 |
1.2. | Gadījumskaitļu ģeneratori | 9 |
1.3. | Gadījumskaitļu pielietojums mūsdienu elektronikā | 10 |
2. | METODES PSEIDO GADĪJUMSKAITĻU IEGŪŠANAI | 12 |
2.1. | Fon Neimaņa metode | 12 |
2.2. | Lineārās sakritības metode | 12 |
2.3. | Fibonači metode | 13 |
2.4. | Lineāri atgriezeniskās saites pārbīdes reģistra metode | 14 |
2.5. | Mersennas virpuļa metode | 15 |
3. | PSEIDO GADĪJUMSKAITĻU ĢENERATORA TESTĒŠANA UN ANALĪZE | 17 |
3.1. | Grafiskais testi | 17 |
3.1.1. | Sadalījuma attēlošana ar histogrammu | 17 |
3.1.2. | Izklaides diagramma, jeb korelāciju lauks | 18 |
3.1.3. | Autokorelācijas tests | 19 |
3.1.4. | Grafiskā spektrālā analīze | 19 |
3.2. | Statistiskie testi | 20 |
3.2.1. | Donalda Knuta testi | 20 |
3.2.2. | NIST izstrādātie testi | 20 |
3.2.2.1. | Mono bitu tests | 21 |
3.2.2.2. | Bloku frekvences tests | 21 |
3.2.2.3. | Trasēšanas tests | 22 |
3.2.2.4. | Trasēšanas tests garākā apgabalā | 23 |
3.2.2.5. | Binārās matricas ranga tests | 25 |
3.2.2.6. | Diskrētās Furjē transformācijas tests | 26 |
3.2.2.7. | Nepārklāšanās šablonu salīdzināšanas tests | 27 |
3.2.2.8. | Pārklāšanās šablonu salīdzināšanas tests | 28 |
3.2.2.9. | Mauera universālais statistikas tests | 29 |
3.2.2.10. | Lempela Ziva salīdzināšanas tests | 30 |
3.2.2.11. | Lineārās sarežģītības tests | 30 |
3.2.2.12. | Seriālais tests | 31 |
3.2.2.13. | Tuvināts entropijas tests | 32 |
3.2.2.14. | Kumulatīvo summu tests | 32 |
3.2.3. | Diehard testi | 33 |
4. | LABVIEW PROGRAMMAS UN FPGA PLATES APRAKSTS | 35 |
4.1. | Labview programma | 35 |
4.2. | FPGA apraksts | 36 |
5. | PSEIDO GADĪJUMSKAITĻU ĢENERATORA IZVEIDE UZ FPGA PLATES | 38 |
5.1. | Lineārās sakritības algoritma izveide | 38 |
5.2. | Fibonači metode | 42 |
5.3. | Lineāri atgriezeniskās saites pārbīdes reģistra metode (LFSR) | 45 |
5.4. | Mersennas virpuļa pseidogadījumskaitļu ģenerators | 49 |
5.5. | Izveidoto Pseidogadījumskaitļu ģeneratoru salīdzinājums | 52 |
SECINĀJUMI UN PRIEKŠLIKUMI | 54 | |
IZMANTOTĀS LITERATŪRAS UN AVOTU SARAKSTS | 55 |
5.5. Izveidoto Pseidogadījumskaitļu ģeneratoru salīdzinājums
Salīdzinot izveidoto pseidogadījumskaitļu ģeneratoru Sadalījuma histogrammas, (skatīt attēlus 5.2., 5.7., 5.13., 5.17., 5.21.) tiek secināts, ka visatbilstošākā īstai gadījumskaitļu rindas histogrammai ir straumes šifratora histogramma (sk. att. 5.17.), kurai ir vienmērīga sadalījuma raksturs. Mersennas virpuļa un LFSR ģenerēto rindu histogrammu augšējais līmenis līdzinās periodiskai funkcijai, bet kopumā tās ir labākas par lineārās sakritības ģeneratora gadījumskaitļu histogrammu. Fibonači algoritma pseidogadījumskaitļu rindas sadalījuma histogramma pēc sava rakstura līdzinās, Gausa sadalījuma histogrammai, bet no visiem izveidotajiem algoritmiem šīs metodes histogramma ir vissliktākā statistisko īpašību ziņā.
Analizējot izveidotos pseidogadījumskaitļu ģeneratorus pēc izkliedes diagrammasgrafikiem, izceļas lineārās sakritības (skat. attēlu 5.3.) un Fibonači (skat. att. 5.8.) ģeneratori. Lineārās sakritības grafikā redzamas, ka dati izvietojas lineāri, bet Fibonači gadījumskaitļi veido rimstošu sinusoidālu funkcijas grafiku. LFSR (sk. att. 2.12.), straumes šifrators (sk. att. 5.18.), un Mersennas virpulis (sk. att. 5.20.), visi veido labi izkliedētus grafikus, kuri vizuāli atgādina īstu gadījumskaitļu rindas grafiku.
Autokorelācijas testu grafikos izceļas Fibonači (skat. att. 5.9.) pseidogadījumskaitļu ģenerators, jo tas neatgādina gadījumskaitļu rakstura grafiku. Pārējie ģeneratori veido vienmērīga sadalījuma grafikus. Vislabākais grafiks statistisko īpašību ziņā ir straumēšanas šifratora vērtību grafiks attēlā 5.18..
SECINĀJUMI UN PRIEKŠLIKUMI
1. Darbā izvirzītie uzdevumi ir izpildīti, darba mērķis ir sasniegts:
ir aprakstītas populārākās pseidogadījumskaitļu iegūšanas metodes,
ir apskatīti tādi gadījumskaitļu testēšanas un analīzes paņēmieni kā grafiskā testēšana, NIST un Die hard testu pakas,
izveidoti četru dažādu algoritmu pseidogadījumskaitļu ģeneratori, kuri darbojas uz FPGA plates.
2. Dažādiem pseidogadījumskaitļu ģeneratoriem statistiskās īpašības atšķiras, bet izvēloties ģeneratora metodi, ir jāzina kādi statistiskie rādītāji no ģeneratora būs nepieciešami.
3. Pseidogadījumskaitļuģeneratorā vērtības ietekmē ievadītā ģeneratora sēklas (seed) vērtība.
4. No izveidotajiem pseidogadījumskaitļu ģeneratoriem vislabākās īpašības piemīt Mersennas virpuļa pseidogadījumskaitļu ģeneratoram. Tikai viens no izveidotajiem pseidogadījumskaitļu ģeneratoriem, Fibonači ģenerators, ir ar Gausa sadalījuma raksturu.
5. Lai izveidotu labākus pseidogadījumskaitļu ģeneratorus iespējams izmantot Labview bez FPGA plates.
6. Autors, kā priekšlikumu, sev izvirza sīkāk izpētīt izveidotos gadījumskaitļu algoritmus, un realizēt tos pēc iespējas optimālāk.
7. Autors kā priekšlikumu sev izvirza, izveidot Labview programmu gadījumskaitļu testēšanai, lai būtu iespējams iztikt bez papildus programmatūrām.
8. Autors kā priekšlikumu sev izvirza, izpētīt pseidogadījumskaitļu sadalījuma korekcijas iespējas, lai būtu iespējams izveidot, gadījumskaitļus ar sev nepieciešamo datu sadalījumu.…
Bakalaura darbā ir apskatītas piecas pseidogadījumskaitļu ģenerēšanas metodes. Ir aprakstīta pseidogadījumskaitļu testēšana, izmantojot grafiskos un statistiskos testus. Darbā ir dots ieskats trīs dažādās statistisko testu pakās. Ir virspusēji aprakstīta Labview programmas nozīme un dažādās iespējas, kā arī sīkāk aprakstīta FPGA plates nozīme un tās ieprogrammēšana izmantojot Labview. Praktiskajā daļā ir aprakstīta pseidogadījumskaitļu ģeneratoru izveide un apskatītas to statistiskās īpašības. Noslēgumā ir salīdzinātas izveidoto pseidogadījumskaitļu ģeneratoru statistiskās īpašības.
- Internetā ievietojamo JAVA appletu izstrāde mācību līdzekļiem
- Lēmumu analīze informācijas tehnoloģijas projekta izstrādē
- Pseido gadījumskaitļu ģeneratora rīka izstrāde FPGA platei, izmantojot programmu Labview
-
Tu vari jebkuru darbu ātri pievienot savu vēlmju sarakstam. Forši!Lēmumu analīze informācijas tehnoloģijas projekta izstrādē
Diplomdarbs augstskolai71
-
Internetā ievietojamo JAVA appletu izstrāde mācību līdzekļiem
Diplomdarbs augstskolai86
-
Informācijas sistēmas izstrāde mazumtirdzniecības veikalam
Diplomdarbs augstskolai59
Novērtēts! -
Bezpapīru birojs un uzņēmuma automatizācija
Diplomdarbs augstskolai89
Novērtēts! -
Klientu attiecību pārvaldības sistēma uzņēmumam SIA "Siltumsūknis"
Diplomdarbs augstskolai86