Commit 9174e0e7 authored by Tristan Gingold's avatar Tristan Gingold

Address issues in vme64x_pkg.

parent 593dbebd
...@@ -20,7 +20,7 @@ ...@@ -20,7 +20,7 @@
'Detail'. 'Detail'.
- how about using t_vme64x_in and t_vme64x_out types inside the design to make - how about using t_vme64x_in and t_vme64x_out types inside the design to make
the core more compact and having only an std_logic wrapper for simulations? the core more compact and having only an std_logic wrapper for simulations?
Good convention to be adopted. Done. Good convention to be adopted.
- vme64x_pack.vhd and xvme64x_core_pkg.vhd should be merged into one package - vme64x_pack.vhd and xvme64x_core_pkg.vhd should be merged into one package
Done. Done.
...@@ -34,9 +34,9 @@ ...@@ -34,9 +34,9 @@
Done. Default removed. Done. Default removed.
- line 55: - line 55:
c_ADEM_M is a type not a constant, rename it to t_ADEM_M c_ADEM_M is a type not a constant, rename it to t_ADEM_M
Add a comment. Done.
- cleanup, remove types that are not used e.g. c_ADER_C_XAM or c_ADER_C_AM - cleanup, remove types that are not used e.g. c_ADER_C_XAM or c_ADER_C_AM
Add a comment as unused. Done. Commented as unused.
------------------------ ------------------------
-- VME64xCore_Top.vhd -- -- VME64xCore_Top.vhd --
......
This diff is collapsed.
...@@ -78,14 +78,14 @@ begin ...@@ -78,14 +78,14 @@ begin
gen_match_loop : for i in 0 to 7 generate gen_match_loop : for i in 0 to 7 generate
-- True in case of match -- True in case of match
s_function(i) <= s_function(i) <=
'1' when (((addr_i(c_ADEM_M) and g_ADEM(i)(c_ADEM_M)) '1' when (((addr_i(t_ADEM_M) and g_ADEM(i)(t_ADEM_M))
= ader_i(i)(c_ADEM_M)) = ader_i(i)(t_ADEM_M))
and ((am_i = ader_i(i)(c_ADER_AM)) and ((am_i = ader_i(i)(t_ADER_AM))
or not g_DECODE_AM)) or not g_DECODE_AM))
else '0'; else '0';
-- True if the AM part of ADER is enabled by AMCAP -- True if the AM part of ADER is enabled by AMCAP
s_ader_am_valid(i) <= s_ader_am_valid(i) <=
g_AMCAP(i)(to_integer(unsigned(ader_i(i)(c_ADER_AM)))); g_AMCAP(i)(to_integer(unsigned(ader_i(i)(t_ADER_AM))));
end generate; end generate;
------------------------------------------------------------------------------ ------------------------------------------------------------------------------
...@@ -130,7 +130,7 @@ begin ...@@ -130,7 +130,7 @@ begin
if s_function_sel_valid = '1' then if s_function_sel_valid = '1' then
mask := (others => '0'); mask := (others => '0');
mask(c_ADEM_M) := g_ADEM(s_function_sel)(c_ADEM_M); mask(t_ADEM_M) := g_ADEM(s_function_sel)(t_ADEM_M);
addr_o <= addr_i and not mask; addr_o <= addr_i and not mask;
decode_sel_o <= '1'; decode_sel_o <= '1';
else else
......
...@@ -109,7 +109,8 @@ use work.vme64x_pkg.all; ...@@ -109,7 +109,8 @@ use work.vme64x_pkg.all;
entity xvme64x_core is entity xvme64x_core is
generic ( generic (
-- Clock period (ns). Used for DS synchronization. -- Clock period (ns). Used for DS synchronization. The default value
-- will genrate an assertion failure.
g_CLOCK_PERIOD : integer := -1; g_CLOCK_PERIOD : integer := -1;
-- Consider AM field of ADER to decode addresses. This is what the VME64x -- Consider AM field of ADER to decode addresses. This is what the VME64x
......
...@@ -268,7 +268,7 @@ begin ...@@ -268,7 +268,7 @@ begin
g_MANUFACTURER_ID => c_CERN_ID, g_MANUFACTURER_ID => c_CERN_ID,
g_BOARD_ID => c_SVEC_ID, g_BOARD_ID => c_SVEC_ID,
g_REVISION_ID => c_SVEC_REVISION_ID, g_REVISION_ID => c_SVEC_REVISION_ID,
g_PROGRAM_ID => c_PROGRAM_ID, g_PROGRAM_ID => c_SVEC_PROGRAM_ID,
g_ASCII_PTR => x"000000", g_ASCII_PTR => x"000000",
g_BEG_USER_CR => x"000000", g_BEG_USER_CR => x"000000",
......
Markdown is supported
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