Metavalue cleanup for mmu.vhdl

Signed-off-by: Michael Neuling <mikey@neuling.org>
pull/378/head
Michael Neuling 2 years ago
parent 738702f2e2
commit 5a03de4c90

@ -163,11 +163,15 @@ begin
begin begin
-- mask_count has to be >= 5 -- mask_count has to be >= 5
m := x"001f"; m := x"001f";
if is_X(r.mask_size) then
m := (others => 'X');
else
for i in 5 to 15 loop for i in 5 to 15 loop
if i < to_integer(r.mask_size) then if i < to_integer(r.mask_size) then
m(i) := '1'; m(i) := '1';
end if; end if;
end loop; end loop;
end if;
mask <= m; mask <= m;
end process; end process;


@ -178,7 +182,9 @@ begin
begin begin
m := (others => '0'); m := (others => '0');
for i in 0 to 43 loop for i in 0 to 43 loop
if i < to_integer(r.shift) then if is_X(r.shift) then
m(i) := 'X';
elsif i < to_integer(r.shift) then
m(i) := '1'; m(i) := '1';
end if; end if;
end loop; end loop;

Loading…
Cancel
Save