Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

VHDL sous quartus

1 réponse
Avatar
news.free.fr
Bonjour,
je commence avec le VHDL. Donc la meilleur maniere d'apprendre, c'est de
commencer à coder. Apres pas mal de recherche sur le net, je me rabats sur
le forum parce j'ai trouvé aucune soluce.

J'essaye de realiser un " Scrambler ".

Ce registre se compose de 15 cases de 1bit. On realise un XOR sur les cases
15 et 14, puis ce resultat passe encore dans un XOR avec un bit d'entrée
puis nous donne la sortie. La sortie du premier xor sur 14 et 15 est mise
dans la premiere case du registre.
Pour mieux comprendre, c'est le schéma sur wikipedia.
http://en.wikipedia.org/wiki/Scrambler_%28randomizer%29


LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE ieee.std_logic_unsigned.ALL;
USE ieee.numeric_std.all;


entity randomizer_test is
port (
clk : in std_logic;
bit_in : in std_logic;
bit_enab : in std_logic;
bit_reset: in std_logic;
bit_out: out std_logic
);
end randomizer_test;

architecture arc of randomizer_test is

signal reg : std_logic_vector(14 downto 0):="111111111111111";
signal porte_1 : std_logic;
signal porte_2 : std_logic;

begin

process(clk,bit_reset)
begin

if (bit_reset = '1') then
reg<="110110101010101";

elsif (rising_edge(clk) and clk='1' and bit_reset='0') then
if (bit_enab='1') then
porte_1 <= reg(14) xor reg(13);
porte_2 <= porte_1 xor bit_in;

reg(14 downto 1)<=reg(13 downto 0);

reg(0)<=porte_1;
end if;
end if;
end process;

bit_out<=porte_2;

end arc;



Donc le code ce compile bien. Mais quand je fais une simulation, et dans le
registre reg, je n'ai aps du tout les bits que j'ai initialisé au depart.
En gros mon probleme c'est que je n'arrive pas à initialiser le registre
avec ces bits 110110101010101. Quelqu'un aurait une soluce? Pourrait
m'eclaircir sur comment rentrer des valeurs prédéfinir dans les bits
b0...B15 des le depart.

Merci d'avance.

1 réponse

Avatar
alfred
news.free.fr wrote:
Bonjour,
je commence avec le VHDL. Donc la meilleur maniere d'apprendre, c'est de
commencer à coder. Apres pas mal de recherche sur le net, je me rabats sur
le forum parce j'ai trouvé aucune soluce.



Pas le bon forum : ici, c'est la prog windows, donc les apis (win32)