Répondre à la discussion
Affichage des résultats 1 à 5 sur 5

Loop,fpga



  1. #1
    elec_cup
    Invité

    Loop,fpga


    ------

    Bonjour,

    j'ai b="1011";

    Comme faire une boucle allant de 0 à b ?

    for i in 0 to b ==>Ceci indique une erreur.
    Doit-on convertir b en integrer ?
    On m'a dit c(par exemple)<=to_integer(b);
    Mais ça ne fonctionne pas !!
    HELPPPPP !!

    Merci

    DELALIN Ambroise

    -----

  2. Publicité
  3. #2
    jiherve

    Re : Loop,fpga

    Bonsoir
    si b est un std_logic_vector alors il faut écrire:
    to_integer(unsigned(b))
    avec les bonnes librairies:
    library IEEE,work;
    use IEEE.std_logic_1164.all;
    use IEEE.numeric_std.all;
    JR
    l'électronique c'est pas du vaudou!

  4. #3
    elec_cup
    Invité

    Re : Loop,fpga

    Bonjour,

    library ieee, work;
    use ieee.std_logic_1164.all;
    use ieee.numeric_std.all;
    use ieee.std_logic_arith.all;
    use ieee.std_logic_unsigned.all;
    -------------------------------------
    entity sinus is
    port(
    a : std_logic_vector :="0110"
    );
    end entity;

    architecture archsinus of sinus is
    signal b : integer :=0;

    begin
    b<=to_integer(unsigned(a));
    end archsinus;

    Certes, mais le logiciel me renvoi une erreur du type :

    ** Error: C:/Documents and Settings/ambroise.delalin/Bureau/Nouveau dossier/sinus.vhd(17): (vcom-1078) Identifier "unsigned" is not directly visible.
    Potentially visible declarations are:
    ieee.std_logic_arith.unsigned (type declaration)
    ieee.numeric_std.unsigned (type declaration)
    ** Error: C:/Documents and Settings/ambroise.delalin/Bureau/Nouveau dossier/sinus.vhd(18): VHDL Compiler exiting

    ==>Je ne comprend pas !!

    Ensuite, je voudrais comprendre un peu plus l'utilisation du port map. Lorsque nous faisons port map (c<=b), 'b' est un signal dans l'architecture d'une entité ( exemple: signal b : std_logic), et donc 'c' sera l'image de 'b' (b=c) dans une autre entité. 'c' doit-il être necessairement dans les déclarations du port() de l'entité ?
    Pourquoi ne peut-on pas faire de port map entre deux signaux interne de deux architectures d'entités différentes ?
    J'appelle signal lorsque ceci sont déclarer comme celà dans une architecture:
    signal b : std_logic :='0';

    Ensuite, lorque nous déclarons les port() d'une entité, comment comprend le logiciel lorsque nous écrivons :
    port(
    a : std_logic
    );
    Il n'y a pas de in ou out.

    Cordialement

    DELALIN Ambroise

  5. #4
    stefjm

    Re : Loop,fpga

    Citation Envoyé par elec_cup Voir le message
    Ensuite, je voudrais comprendre un peu plus l'utilisation du port map. Lorsque nous faisons port map (c<=b), 'b' est un signal dans l'architecture d'une entité ( exemple: signal b : std_logic), et donc 'c' sera l'image de 'b' (b=c) dans une autre entité. 'c' doit-il être necessairement dans les déclarations du port() de l'entité ?
    port map (pin_name => signal_name,...)

    pin_name : Signal de niveau hiérarchique inférieur. C'est un signal d'entrée-sortie du composant qu'on instancie. (donc déclaré dans l'entity et le component de ce composant)

    signal_name : Signal de niveau hiérarchique supérieur. Ce peut être un signal interne ou bien un signal d'entrée sortie de l'entity de niveau supérieur.
    Citation Envoyé par elec_cup Voir le message
    Pourquoi ne peut-on pas faire de port map entre deux signaux interne de deux architectures d'entités différentes ?
    Parce qu'il faudrait qu'ils sortent de l'architecture et par définition, un signal interne est interne!
    Seuls les signaux de l'entity sont connectables lors d'une instanciation.
    Citation Envoyé par elec_cup Voir le message
    J'appelle signal lorsque ceci sont déclarer comme celà dans une architecture:
    signal b : std_logic :='0';
    Pourquoi :=0 ?
    Un signal interne est connecté des deux cotés dans l'architecture.
    b= ...;
    ...=b;

    Citation Envoyé par elec_cup Voir le message
    Ensuite, lorque nous déclarons les port() d'une entité, comment comprend le logiciel lorsque nous écrivons :
    port(
    a : std_logic
    );
    Il n'y a pas de in ou out.
    Je ne comprends pas pourquoi vous ne mettez pas l'un des sens suivants : in, out, inout, buffer.

    Cordialement.
    Moi ignare et moi pas comprendre langage avec «hasard», «réalité» et «existe».

  6. A voir en vidéo sur Futura
  7. #5
    jiherve

    Re : Loop,fpga

    Bonsoir,
    très joli overloading!
    Code:
    use ieee.std_logic_1164.all;
    use ieee.numeric_std.all;
    use ieee.std_logic_arith.all;-- ne sert à rien compte tenu des 2 autres librairies
    use ieee.std_logic_unsigned.all;-- idem
    En fait tu as créé une ambiguité donc tu retires ces librairies, et comme le signale stefjm il faut préciser le sens des ports d'une entité si port il y a.
    JR
    l'électronique c'est pas du vaudou!

Discussions similaires

  1. [Génétique] méthode R loop mapping
    Par djamatik29 dans le forum Biologie
    Réponses: 3
    Dernier message: 12/10/2010, 19h37
  2. Falsification de la Loop Quantum Gravity ?
    Par mtheory dans le forum Physique
    Réponses: 27
    Dernier message: 25/08/2009, 14h18
  3. Lectures on Loop Quantum Gravity
    Par bashad dans le forum Lectures scientifiques
    Réponses: 0
    Dernier message: 30/10/2007, 12h11
  4. Le temps en Loop Quantum Gravity
    Par BioBen dans le forum Les énigmes du temps
    Réponses: 2
    Dernier message: 05/10/2006, 23h34
  5. Quelques questions de Loop Quantum Gravitity
    Par BioBen dans le forum Physique
    Réponses: 10
    Dernier message: 04/01/2005, 21h30
Découvrez nos comparatifs produits sur l'informatique et les technologies.