Lectura d'un conjunt de bits 2D Vector ... Torna a comprovar-ho.

M

Mirzaaur

Guest
Hi there,

Estic intentant llegir 2D matriu utilitzant per al bucle com a índex de matriu, però l'índex no canvien mai de la primera val a la següent Fita on estic malament?
, així: --

library IEEE;
ús ieee.std_logic_1164.all;
work.my_pack.all ús;
ss entitat és
(port D: a CXT;
CLK: in std_logic;
reset: in std_logic;
q: out (bit_vector 4 downto 0));
ss final;

comportament arquitectura de FF és
Control de senyal: rang sencer de 0 a 2;
començar

procés (clk)

començar
if (clk'event i = '1 ') then
perquè en 2 downto 0 loop
Q <= D (I);
check <= I;

end loop;
END IF;
procés de finalització;
comportament final;--------------------- CXT és el tipus, he declarat a l'arxiu diferents, com la motxilla
my_pack paquet és
CXT tipus és array (de 0 a 2) d'bit_vector (4 downto 0);
my_pack paquet final;
--------------------

Gràcies i bones regrads,

mirzaaur

 
Comanda el codi de sota .............
Espero que això resol el problema ur<img src="http://www.edaboard.com/images/smiles/icon_smile.gif" alt="Somriure" border="0" />Codi:

library IEEE;

ús ieee.std_logic_1164.all;--------------------- CXT és el tipus, he declarat a l'arxiu diferents, com la motxilla

my_pack paquet és

CXT tipus és array (de 0 a 2) d'bit_vector (4 downto 0);

my_pack paquet final;

--------------------library IEEE;

ús ieee.std_logic_1164.all;

work.my_pack.all ús;

ss entitat és

(port D: a CXT;

CLK: in std_logic;

reset: in std_logic;

q: out (bit_vector 4 downto 0));

ss final;comportament arquitectura de FF és

Control de senyal: rang sencer de 0 a 2;

començarprocess (clk, reset)

variable compte: rang sencer de 0 a 2;

començar

if (reset = '1 ') llavors

count: = 0;

elsif (clk'event i = '1 ') then

count: = count 1;

Q <= D (count);

check <= count;

END IF;

procés de finalització;

comportament final;

 
pot ser el codi
Codi:-----------------------------------

paquet array2D és

Tipus d'array2D0 és array (15 downto 0,9 DOWNTO 0) de std_logic;

final array2D;

-----------------------------------

--

--

funció de conv_2d21d (array2d: array2D0; ch_num: rang sencer de 0 a 15)

std_logic_vector de retorn és

ch_out variable: std_logic_vector (9 downto 0);

començar

for i in 0 a 9 del bucle

ch_out (i): = array2d (ch_num, i);

end loop;ch_out retorn;

final conv_2d21d;----

----

senyal Ch_in: array2D0;

Ch_out senyal: std_logic_vector (9 downto 0);

Ch_num variable: rang sencer de 0 a 15;- Els valors de prova

Ch_num: = 1;

Ch_in <= (X "01", "0000001111");Ch_out (9 downto 0) <= conv_2d21d (Ch_in, Ch_num);

 

Welcome to EDABoard.com

Sponsor

Back
Top