IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Hardware Discussion :

La génération matérielle de nombres aléatoires


Sujet :

Hardware

  1. #1
    Responsable 2D/3D/Jeux


    Avatar de LittleWhite
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mai 2008
    Messages
    26 899
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mai 2008
    Messages : 26 899
    Points : 219 808
    Points
    219 808
    Billets dans le blog
    125
    Par défaut La génération matérielle de nombres aléatoires
    Bonjour à tous,

    J'ai le plaisir de vous proposer un tutoriel écrit par Guy Grave, alias mewtow, sur la génération matérielle de nombres aléatoires.

    Bonne lecture.

    Lire le tutoriel
    Voir les autres cours et tutoriels de la rubrique Hardware

  2. #2
    MikeRowSoft
    Invité(e)
    Par défaut
    Sa m'a rappelé beaucoup de souvenir d'étude.

  3. #3
    Nouveau membre du Club
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Août 2005
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : Août 2005
    Messages : 45
    Points : 32
    Points
    32
    Par défaut
    Bonjour,

    Une première remarque après avoir lu uniquement l'intro ; il y a déjà une confusion sur la notion de décalage :
    - Tout d'abord, si on décale vers la *gauche*, c'est le bit de poids *faible* qui prend une nouvelle valeur. Vu la suite de l'exemple, je suppose que le décalage dont on parle est en réalité un décalage vers la *droite*.
    - Ensuite, pour pinailler, lorsque l'on décale, en réalité, on ne met pas toujours un 1 ou toujours un 0. Cela dépends de si l'on fait un décalage logique ou arithmétique. Un décalage logique fera toujours rentrer un 0, quel que soit le sens du décalage, tandis qu'un décalage arithmétique fera rentrer un 0 lors d'un décalage vers la gauche, mais fera rentrer un bit dont la valeur est égale au bit de poids fort lors d'un décalage vers la droite, ceci afin de préserver le signe de l'opérande, et de conserver la signification mathématique (division par 2) y compris pour les nombres négatifs en complément à 2. Après, on peut bien sûr avoir un registre à décalage customisé, dans une situation particulière, qui ferait toujours rentrer un 1 ou un 0 (par exemple dans un buffer). Mais c'était juste pour faire remarquer que le *toujours* un 1 ou *toujours* un 0 est un raccourci un peu rapide...

    Voilà pour mon petit grain de sel ;-). Je continue la lecture de l'article, je suis justement à la recherche d'un générateur matériel aléatoire, merci donc pour cet article qui tombe bien.

    EDIT : J'ai terminé la lecture, très bon article qui explique les choses assez clairement. Je ne pensais pas que le fonctionnement des générateurs aléatoires à registre à décalage était si simple. Merci donc pour cet article.
    Une petite question, par contre, concernant la génération par désynchronisation d'horloge : je suppose qu'il faut deux sources d'horloges indépendantes pour obtenir ce résultat ; si on génère l'horloge lente à partir de l'horloge rapide, on a une synchronisation implicite ? Si oui, cette technique est-elle possible si un seul quartz est présent ? je prends un exemple concret sur une carte que j'utilise : est-ce possible à mettre en œuvre sur une carte de type ZedBoard, où, il me semble, il n'y a qu'une seule source d'horloge ? (Je peux me tromper sur ce point).

  4. #4
    MikeRowSoft
    Invité(e)
    Par défaut
    Si tu veux les défaillances physiques et logiques proposent parfois un meilleur système aléatoire, surtout si elles ne sont pas manipulé de façons volontaire.
    C'est une façon de sortir de l'algorithme connu pour tombé sur l'imprévu.

    Il m'a souvent été dit que l'aléatoire dépendait de l'échelle. Exemple : compliqué à déterminer pour des humains ayant moins de moyens pour le déterminer ou plus facile avec l'usage d'outils informatisé connaissant parfaitement l'environnement de génération du "facteur" aléatoire. Se n'est pas forcément un nombre.

    Je comparerais le vrai aléatoire à une mesure sans temporel et non mathématique, puisque seul l'échantillonnage donne un chiffre ou un nombre.
    Dernière modification par LittleWhite ; 09/08/2016 à 19h44. Motif: Pas besoin de citer l'intégralité du message précédent

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Epok__ Voir le message
    Tout d'abord, si on décale vers la *gauche*, c'est le bit de poids *faible* qui prend une nouvelle valeur. Vu la suite de l'exemple, je suppose que le décalage dont on parle est en réalité un décalage vers la *droite*.
    C'est bien un décalage vers la gauche, mais j'ai inversé bit de poids fort et bit de poids faible.

    Citation Envoyé par Epok__ Voir le message
    Une petite question, par contre, concernant la génération par désynchronisation d'horloge : je suppose qu'il faut deux sources d'horloges indépendantes pour obtenir ce résultat ; si on génère l'horloge lente à partir de l'horloge rapide, on a une synchronisation implicite ? Si oui, cette technique est-elle possible si un seul quartz est présent ? je prends un exemple concret sur une carte que j'utilise : est-ce possible à mettre en œuvre sur une carte de type ZedBoard, où, il me semble, il n'y a qu'une seule source d'horloge ? (Je peux me tromper sur ce point).
    Ça peut marcher, vu que le circuit qui multiplie la fréquence de base n'est pas fabriqué avec des composants parfaits, qu'il est soumis à des variations de température, et ainsi de suite : cela créera des déphasages transitoire, qui seront à l'origine d'une dérive d'horloge.
    Dernière modification par Invité ; 05/08/2016 à 13h14. Motif: Orthographe.

  6. #6
    Nouveau membre du Club
    Homme Profil pro
    Enseignant Chercheur
    Inscrit en
    Août 2005
    Messages
    45
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Enseignant Chercheur

    Informations forums :
    Inscription : Août 2005
    Messages : 45
    Points : 32
    Points
    32
    Par défaut
    @mewtow:

    Ok, merci pour ces précisions.

Discussions similaires

  1. Génération d'une nombre aléatoire unique
    Par jopont dans le forum BIRT
    Réponses: 18
    Dernier message: 30/06/2013, 08h49
  2. Génération d'un nombre aléatoire
    Par wissem_adi dans le forum Général Java
    Réponses: 3
    Dernier message: 21/10/2010, 09h26
  3. Génération automatique de nombre aléatoires
    Par edouardmartin dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 28/03/2010, 11h37
  4. Génération de n nombres aléatoires différents
    Par progfou dans le forum Probabilités
    Réponses: 3
    Dernier message: 13/12/2005, 18h29
  5. recherche algo de génération de nombre aléatoire
    Par Pascale38 dans le forum MFC
    Réponses: 2
    Dernier message: 26/01/2004, 14h20

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo