-------------------------------------------------------------------------------- -------------------------------------------------------------------------------- LIBRARY ieee; use IEEE.STD_LOGIC_1164.ALL; use IEEE.MATH_REAL.ALL; USE ieee.numeric_std.ALL; use std.textio.all; -- Imports the standard textio package. library ieee; use ieee.fixed_float_types.all; use ieee.fixed_pkg.all; library work; use work.fixed_util_pkg.all; ENTITY test IS Generic ( nbits : integer := 32; nbits_frac : integer := 30; nbits_out : integer := 32; nbits_frac_out : integer := 31 ); END test; ARCHITECTURE behavior OF test IS --Constants constant num_cycles : integer := 5; constant num_steps_per_cycle : integer := 100; constant PERIOD : time := 10 ns; constant one_sfix : sfixed := to_sfixed(1.0, sproto(nbits, nbits_frac)); constant zero_sfix : sfixed := to_sfixed(0.0, sproto(nbits, nbits_frac)); constant pi1_sfix : sfixed := to_sfixed(3.141592653589793, sproto(nbits, nbits_frac)); constant pi2_sfix : sfixed := to_sfixed(3.141592653589793/2.0, sproto(nbits, nbits_frac)); --Inputs SIGNAL clk : std_logic := '0'; SIGNAL rst : std_logic := '1'; SIGNAL ce : std_logic := '0'; SIGNAL xin, yin, zin : sfixed(sproto(nbits, nbits_frac)'range) := zero_sfix; BEGIN tb_clk : PROCESS BEGIN clk <= not clk; wait for PERIOD/2; END PROCESS; END;