タグ付けされた質問 「random-number」

10
乱数ジェネレーターの最小かつ最も単純なシードは何ですか?
小型のマイクロコントローラー(8ビットAtmel)は、多くの派手なランダム化されたライトシーケンスでライトショーを提示するために、多数のライトを制御します。 適切な擬似RNGがうまく機能しますが、私はそれのための良い種を探しています。誰かが複数のそのようなデバイスを同時にオンにした場合、個々のクロックソースのわずかな違いのためにゆっくりと離れるまで同じ効果のシーケンスをすべて生成した場合、見た目が悪くなるため、シードが必要になります。 よく使用する擬似RNGをシードする非常に良い方法は、ボタンを押すかスイッチを押すことで起動する必要があるデバイスの場合に可能です。µcの電源がオンになるとすぐに、非常に高速のタイマーを開始できます。このタイマーの値は、ボタンが初めて押されるとすぐにRNGをシードします。 問題は、このシナリオではボタンがないことです。デバイスの電源を入れたらすぐにプログラムを開始する必要があります。 PCB上の場所は非常に限られているため(非常に小さなSMDパーツがいくつか収まることはありません)、可能な限り最小で最もシンプルなソリューションを探しています。そのため、真のRNGハードウェア、ラジオ受信機などの派手なソリューションは除外します。 私が持っているのは、CPUの16ビットタイマーカウンターと、ADCにアクセスする未使用のポートピンだけです。 私の現在の解決策は、抵抗を使用して(できるだけ不正確)、ADCピンに約半分の電源電圧を供給し、RNGに最初のAD変換値をシードすることです。ただし、最近ではほとんどの10%抵抗器の精度が1%を大幅に下回っているため(見つけることができる最悪の品質のSMD抵抗器が必要だと伝えると、サプライヤーの顔を想像するのは楽しいでしょう)、非常に高い確率で同じシードで始まる複数のユニット。 より良い代替策は、複数の変換を行い、これらの測定値の最下位ビットから値を構築することです。ただし、以前はこのµcタイプのADCを使用しましたが、非常に正確であることはわかっています。ここでは、ADCを可能な限り速い速度で実行すると役立つ場合があります。 誰かより良い提案がありますか?シードは完全に均一に分布する必要はありませんが、分布が均一であればあるほど良いです。完全に均一な分布を持つ16ビットシードは、あまりにも良い夢ですが、5ビットまたは6ビットの中間のまともな分布で十分だと思います。

7
GPIOピンを使用した乱数ジェネレーター?
質問AVR Random Number Generatorを読んで、AVRでランダムシードを生成するいくつかの方法に遭遇しました。 専用の「Secure AVR」を使用する 内部温度センサーを使用する 書き込まれていないEEPROMを読み取る ユーザー入力間の時間間隔を測定する フローティングADCピンを使用します。 プルアップとフローティングなしで入力として構成された単一のデジタルピンだけではどうですか?理論的には、ランダムビットのストリームを生成する必要があります。なぜこれを使用しないのですか?状態の変化が遅すぎますか?1または0でスタックする傾向がありますか?他の問題はありますか?

9
ArduinoはHRNG(ハードウェア乱数ジェネレーター)の作成に最適ですか?
エントロピーの複数のソース(結合)を利用するハードウェア乱数ジェネレーターの設計をまとめています。 周囲光 アンビエントサウンド(およびサウンドレベル) 周りの派遣社員 周囲湿度 デバイス自体の位置(上下逆さま、左傾斜、右タイトルなど) 将来の他のソース、場合によってはGPSデータ(2人のユーザーが隣り合っている可能性があるため、可能であれば、それらを知っている場合はおそらく決定論的です) 私のアイデアは、USBドライブへの書き込みを続けながら、人々が日中持ち歩くことができるエントロピープール「充電器」を作成することです。 数時間後に、ユーザーはPCにプラグインして使用できる〜4GBのエントロピープールを手に入れることができます。私は、光または放射性崩壊に基づいた本当に高価なQRNGを買う余裕はないので、もっと安価なものを考えています。 あなたの意見では、Arduinoはこれをプロトタイプ化するための最良の選択ですか?そうでない場合、何をお勧めしますか?

7
AVR乱数ジェネレーター
TIのappnote(slaa338)を読んで、「擬似」ではなく「実数」の乱数を生成する手法について説明しています。この目標を達成するために、MSP430のややエキゾチックなクロックサブシステムを活用します。「実際の」乱数を生成するために、AVR(特にXMegaに興味があります)に実装できる手法を知っている人はいますか?

4
rand()関数とRNG(乱数ジェネレータ)ペリフェラルの違いは何ですか?
STM32F4XXXX MCUのRNG(Random Number Generator)ペリフェラルに不思議です。見て、このリファレンスマニュアル(ページ748)。一方、stdlibライブラリには、同じタスクを実行するrand()関数があります。今私は2つの質問があります: rand()関数とRNG(乱数ジェネレータ)ペリフェラルの違い(利点と欠点)は何ですか? この部分を見てください: これら両方のオプション(特に2番目のオプション)について説明してください。
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.