Professional Documents
Culture Documents
USE ieee.std_logic_1164.ALL;
USE ieee.std_logic_arith.ALL;
END too;
END COMPONENT;
BEGIN
BEGIN
wait on clk;
CASE state IS
WHEN s0 =>
count := 0;
p := 0;
x0 <= x0_in;
x1 <= x1_in;
x2 <= x2_in;
x3 <= x3_in;
WHEN s1 =>
IF count = 4 THEN
y <= p;
else
p := p / 2 + table_out * 8;
count := count + 1;
end if;
END CASE;
END PROCESS;
LC_Table0: tt
END fpga;
COMPONENT CODE
USE ieee.std_logic_arith.ALL;
ENTITY tt IS
END tt;
ARCHITECTURE LEs OF tt IS
BEGIN
PROCESS (table_in)
BEGIN
CASE table_in IS
END CASE;
END PROCESS;
END LEs;
SIMULATION RESULT
H(k)={27,20,1,1} x(k)={3,8,7,9}
LUT-LESS DA
USE ieee.std_logic_1164.ALL;
USE ieee.std_logic_arith.ALL;
END lless;
END COMPONENT;
BEGIN
BEGIN
CASE state IS
WHEN s0 =>
count := 0;
p := 0;
x0 <= x0_in;
x1 <= x1_in;
x2 <= x2_in;
x3 <= x3_in;
WHEN s1 =>
IF count = 5 THEN
y <= p;
else
p := p / 2 + table_out * 8;
count := count + 1;
end if;
END CASE;
end if;
END PROCESS;
LC_Table0:lmux
END fpga;
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE ieee.std_logic_arith.ALL;
use ieee.std_logic_1164.std_logic;
ENTITY lmux IS
END lmux;
BEGIN
-- the 5 coefficients: 1 1 20 27
PROCESS
BEGIN
wait on clk;
END PROCESS;
PROCESS
BEGIN
wait on clk;
CASE msbs0(1) IS
END CASE;
END PROCESS;
PROCESS
BEGIN
-- Automatically generated with dagen.exe
wait on clk;
CASE lsbs IS
END CASE;
END PROCESS;
PROCESS
BEGIN
wait on clk;
CASE lsbs IS
END CASE;
END PROCESS;
end les;
SIMULATION RESULT
H(k)={27,20,1,1} x(k)={5,10,15,5}
H(k)={27,20,1,1} x(k)={3,8,7,9}
SIGNED LUT-DA SERIAL
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE ieee.std_logic_arith.ALL;
END serial;
END COMPONENT;
BEGIN
BEGIN -- shifts
CASE state IS
count := 0;
p := 0;
x0 <= x_in0;
x1 <= x_in1;
x2 <= x_in2;
WHEN s1 =>
ELSE
ELSE
END LOOP;
count := count + 1;
END IF;
END CASE;
END IF;
END PROCESS;
LC_Table0: dase
END fpga;
COMPONENT CODE
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE ieee.std_logic_arith.ALL;
ENTITY dase IS
END dase;
BEGIN
PROCESS (table_in)
BEGIN
CASE table_in IS
END CASE;
END PROCESS;
END LEs;
PARALLEL LUT-DA
USE ieee.std_logic_1164.ALL;
USE ieee.std_logic_arith.ALL;
END parallel;
SIGNAL x : ARRAY4x3;
SIGNAL h : IARRAY;
END COMPONENT;
BEGIN
PROCESS
BEGIN
END LOOP;
END LOOP;
END LOOP;
y <= s0 + 4 * s1;
END PROCESS;
END GENERATE;
END fpga;
COMPONET CODE FOR PARALLEL
LIBRARY ieee;
USE ieee.std_logic_1164.ALL;
USE ieee.std_logic_arith.ALL;
ENTITY dapp IS
END dapp;
BEGIN
PROCESS (table_in)
BEGIN
CASE table_in IS
END CASE;
END PROCESS;
END LEs;