Skip to content
Snippets Groups Projects
Commit 797629fb authored by Grzegorz Daniluk's avatar Grzegorz Daniluk
Browse files

set fake _almost empty_ and _almost full_ thresholds so that ISE 14.5 won't complain

parent 99fe0591
Branches
Tags
No related merge requests found
...@@ -145,11 +145,8 @@ architecture syn of generic_async_fifo is ...@@ -145,11 +145,8 @@ architecture syn of generic_async_fifo is
wr_count_o : out std_logic_vector(f_log2_size(g_size)-1 downto 0)); wr_count_o : out std_logic_vector(f_log2_size(g_size)-1 downto 0));
end component; end component;
constant m : t_v6_fifo_mapping := f_v6_fifo_find_mapping(g_data_width, g_size); constant m : t_v6_fifo_mapping := f_v6_fifo_find_mapping(g_data_width, g_size);
begin -- syn begin -- syn
gen_inferred : if(m.d_width = 0 or g_with_wr_count or g_with_rd_count) generate gen_inferred : if(m.d_width = 0 or g_with_wr_count or g_with_rd_count) generate
...@@ -194,7 +191,6 @@ begin -- syn ...@@ -194,7 +191,6 @@ begin -- syn
end generate gen_inferred; end generate gen_inferred;
gen_native : if(m.d_width > 0 and not g_with_wr_count and not g_with_rd_count) generate gen_native : if(m.d_width > 0 and not g_with_wr_count and not g_with_rd_count) generate
U_Native_FIFO: v6_hwfifo_wraper U_Native_FIFO: v6_hwfifo_wraper
...@@ -202,8 +198,8 @@ begin -- syn ...@@ -202,8 +198,8 @@ begin -- syn
g_data_width => g_data_width, g_data_width => g_data_width,
g_size => g_size, g_size => g_size,
g_dual_clock => true, g_dual_clock => true,
g_almost_empty_threshold => g_almost_empty_threshold, g_almost_empty_threshold => f_empty_thr(g_with_rd_almost_empty, g_almost_empty_threshold, g_size),
g_almost_full_threshold => g_almost_full_threshold) g_almost_full_threshold => f_empty_thr(g_with_wr_almost_full, g_almost_full_threshold, g_size))
port map ( port map (
rst_n_i => rst_n_i, rst_n_i => rst_n_i,
clk_wr_i => clk_wr_i, clk_wr_i => clk_wr_i,
......
...@@ -167,8 +167,8 @@ begin -- syn ...@@ -167,8 +167,8 @@ begin -- syn
g_data_width => g_data_width, g_data_width => g_data_width,
g_size => g_size, g_size => g_size,
g_dual_clock => false, g_dual_clock => false,
g_almost_empty_threshold => g_almost_empty_threshold, g_almost_empty_threshold => f_empty_thr(g_with_almost_empty, g_almost_empty_threshold, g_size),
g_almost_full_threshold => g_almost_full_threshold) g_almost_full_threshold => f_empty_thr(g_with_almost_full, g_almost_full_threshold, g_size))
port map ( port map (
rst_n_i => rst_n_i, rst_n_i => rst_n_i,
clk_wr_i => clk_i, clk_wr_i => clk_i,
......
...@@ -26,6 +26,8 @@ package v6_fifo_pkg is ...@@ -26,6 +26,8 @@ package v6_fifo_pkg is
function f_v6_fifo_mode (m : t_v6_fifo_mapping) return string; function f_v6_fifo_mode (m : t_v6_fifo_mapping) return string;
function f_empty_thr(a: boolean; thr: integer; size:integer) return integer;
end v6_fifo_pkg; end v6_fifo_pkg;
package body v6_fifo_pkg is package body v6_fifo_pkg is
...@@ -58,5 +60,14 @@ package body v6_fifo_pkg is ...@@ -58,5 +60,14 @@ package body v6_fifo_pkg is
return ""; return "";
end f_v6_fifo_mode; end f_v6_fifo_mode;
function f_empty_thr
(a: boolean; thr: integer; size:integer) return integer is
begin
if(a = true) then
return thr;
else
return size/2;
end if;
end f_empty_thr;
end v6_fifo_pkg; end v6_fifo_pkg;
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment