diff --git a/lib/SDRAM/ddr_sdr_v1_5/src/sdram_types.vhd b/lib/SDRAM/ddr_sdr_v1_5/src/sdram_types.vhd index fdc09be..5520b28 100644 --- a/lib/SDRAM/ddr_sdr_v1_5/src/sdram_types.vhd +++ b/lib/SDRAM/ddr_sdr_v1_5/src/sdram_types.vhd @@ -24,6 +24,7 @@ library IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.NUMERIC_STD.ALL; +USE IEEE.MATH_REAL.ALL; use work.sdram_config.all; @@ -122,7 +123,7 @@ package body sdram_types is function to_cycles(T_ns : real; f_Mhz : real) return natural is begin - return natural(0.5 + 1.0E-3*T_ns*f_Mhz); + return natural(ceil(1.0E-3*T_ns*f_Mhz)); end to_cycles; diff --git a/lib/misc/async_types.vhd b/lib/misc/async_types.vhd index 2be444c..1509dc1 100644 --- a/lib/misc/async_types.vhd +++ b/lib/misc/async_types.vhd @@ -24,6 +24,7 @@ library IEEE; USE IEEE.STD_LOGIC_1164.ALL; USE IEEE.NUMERIC_STD.ALL; +USE IEEE.MATH_REAL.ALL; package async_types is @@ -53,7 +54,7 @@ package body async_types is function to_cycles(T_ns : real; f_Mhz : real) return natural is begin - return natural(0.5 + 1.0E-3*T_ns*f_Mhz); + return natural(ceil(1.0E-3*T_ns*f_Mhz)); end to_cycles; end async_types;