📄 suminser.vhd
字号:
-- Sumador de direcciones para la escritura de datos de la imagen procesada,
-- que usa el valor del contador de filas y el del contador de pixels.
library IEEE;
use IEEE.std_logic_1164.all;
use IEEE.std_logic_arith.all;
use IEEE.std_logic_unsigned.all;
entity suminser is
port (
inserta: in std_logic_vector(1 downto 0);
filacont: in STD_LOGIC_VECTOR (14 downto 0); -- Cuenta de filas
ContmodN: in STD_LOGIC_VECTOR (7 downto 0); -- Cuenta de columnas.
Sal2: out STD_LOGIC_VECTOR (15 downto 0)
-- Para acceder al bus
-- de direcciones, no
-- necesitaremos el bit 15.
-- Al ser de 16 bits, podemos
-- alcanzar el valor 32Kbytes,
-- lo cual nos servira de
-- condicion de fin en Maqinser.
);
end suminser;
architecture suminser_arch of suminser is
begin
async:process (inserta,filacont,contmodN)
variable dummy1:integer;
variable dummy3 :integer;
begin
case inserta is -- Para situarnos en el pixel
-- correspondiente dentro de la
-- mascara que estamos analizando,
-- ya que el valor de los contadores
-- nos determina solo el primer pixel
-- de la mascara 2x2.
when "01"=>
dummy1:=1; -- Nos situaremos en el pixel
-- superior derecho.
when "10"=>
dummy1:=128; -- Nos situaremos en el pixel
-- inferior izquierdo.
when "11"=>
dummy1:=129; -- Nos situaremos en el pixel
-- inferior derecho.
when others =>
dummy1:=0; -- Nos situaremos en el pixel
-- superior izquierdo, que es el
-- indicado por la suma de los
-- contadores.
end case;
dummy3 := dummy1 + 16384;
sal2<=filacont+contmodN+conv_std_logic_vector(dummy3,16);
end process;
end suminser_arch;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -