OpenCores
Issue List
PROBLEM WHEN INT AND JMP #14
Closed prandini opened this issue over 18 years ago
prandini commented over 18 years ago

With the latest version I have the following problem: if an interrupt is executed (int_pending_s in decoder1.vhd) when a JMP instruction is being fetched I get the following situation: 1) fetch 1st byte of jump ; I see opc_inj_int_s going true 2) refetch 1st byte of jump --> why???? 3) fetch at address 4 BUT IT HAD TO BE THREE!!!! Help me please

Bug report is confirmed: When code is executed from Memory Bank 1, the injected CALL triggered by the interrupt does not always vector to address 3. This happens because of a bus collision between the decoder unit and the db_bus unit. The resulting address can be either:

  • 000h, 001h, 002h, 003h for external and timer interrupt
  • 004h, 005h, 006h, 007h for timer interrupt

The problem was introduced in release 0.6 BETA when the glitch on PCH was fixed.

Fixed in: decoder.vhd 1.21 New regression test: int_on_mb1 Fix will be included in next release.

arniml was assigned over 18 years ago
arniml closed this over 18 years ago

Assignee
arniml
Labels
Bug