OpenCores
URL https://opencores.org/ocsvn/potato/potato/trunk

Subversion Repositories potato

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /potato
    from Rev 16 to Rev 17
    Reverse comparison

Rev 16 → Rev 17

/trunk/src/pp_execute.vhd
140,6 → 140,7
 
signal branch : branch_type;
signal branch_condition : std_logic;
signal do_jump : std_logic;
signal jump_target : std_logic_vector(31 downto 0);
 
signal sr : csr_status_register;
189,9 → 190,10
badvaddr => exception_vaddr
) when exception_taken = '1' else exception_context_forwarded;
 
jump_out <= to_std_logic(branch = BRANCH_JUMP or branch = BRANCH_JUMP_INDIRECT)
do_jump <= to_std_logic(branch = BRANCH_JUMP or branch = BRANCH_JUMP_INDIRECT)
or (to_std_logic(branch = BRANCH_CONDITIONAL) and branch_condition)
or to_std_logic(branch = BRANCH_SRET);
jump_out <= do_jump;
jump_target_out <= jump_target;
 
evec_out <= evec_forwarded;
311,7 → 313,14
end case;
end process data_misalign_check;
 
instr_misalign_check: instr_misaligned <= '1' when jump_target(1 downto 0) /= b"00" else '0';
instr_misalign_check: process(jump_target, branch, branch_condition)
begin
if jump_target(1 downto 0) /= b"00" and do_jump = '1' then
instr_misaligned <= '1';
else
instr_misaligned <= '0';
end if;
end process instr_misalign_check;
 
find_exception_cause: process(decode_exception, decode_exception_cause, mem_op,
data_misaligned, instr_misaligned, irq_asserted, irq_asserted_num)

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.