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

Subversion Repositories ion

[/] [ion/] [trunk/] [vhdl/] [mips_cpu.vhdl] - Rev 159

Rev

Go to most recent revision | Details | Compare with Previous | Blame

Filtering Options

Clear current filter

Rev Log message Author Age Path
159 bug detected but not fixed in cpu
(1st instruction after entering user mode is executed in kernel mode)
ja_rd 4872d 13h /ion/trunk/vhdl/mips_cpu.vhdl
157 Bug fix in the missing coprocesor exception.
The CPU was triggering a privilege exception for the mtc0 that went into user mode.
Logging HDL updated
ja_rd 4873d 23h /ion/trunk/vhdl/mips_cpu.vhdl
153 Added R3000 compatible support for kernel/user state:
- Implemented KU/IE plus KUp/IEp and KUo/IEo status bits
- Updated startup and test code to account for changes
- Implemented bit DID NOT TEST rfe instruction (not used in code)
- Access to CP0 in user mode triggers 'CpU' trap
- Updated software simulator

Besides, the logging of HI/LO register changes has been temporarily disabled, there's an unfixed bug in it.
ja_rd 4874d 08h /ion/trunk/vhdl/mips_cpu.vhdl
140 BUG FIX in cpu: MTCx was using Rs as source instead of Rt
BUG FIX in cpu: cached sequences of S* were failing, byte_we logic was wrong
ja_rd 4878d 12h /ion/trunk/vhdl/mips_cpu.vhdl
132 Fixed bug in stall logic
(stall for back-to-back SW instructions was wrong)
ja_rd 4882d 04h /ion/trunk/vhdl/mips_cpu.vhdl
121 CPU code reorganized a bit
No new logic, just a few swapped lines and new comments
ja_rd 4928d 04h /ion/trunk/vhdl/mips_cpu.vhdl
101 FIX: code_rd_vma asserted only after reset is done
ADDED cache control bits to CP0 status register
ADDED cache control outputs
ja_rd 4946d 02h /ion/trunk/vhdl/mips_cpu.vhdl
96 CPU rd and wr data address buses unified ja_rd 4970d 11h /ion/trunk/vhdl/mips_cpu.vhdl
83 BUG FIX: LHU was not doing sign extension properly
BUG FIX: SLTIU decoding was wrong
ja_rd 4981d 08h /ion/trunk/vhdl/mips_cpu.vhdl
62 CPU fixed:
fixed bug in EPC load logic relative to mem_wait stalls
parametrized reset and trap vector addresses
ja_rd 4991d 22h /ion/trunk/vhdl/mips_cpu.vhdl
46 First version of cache: stub, 1-word cache
Stub cache tested on simulation and HW, just a stub
Adapted CPU stall logic to 1st version of cache
Adapted all other modules for compatibility with cache
ja_rd 4994d 04h /ion/trunk/vhdl/mips_cpu.vhdl
35 CPU mem_wait logic updated to work with cache ja_rd 4998d 07h /ion/trunk/vhdl/mips_cpu.vhdl
30 Completed decoding of instructions
(to prevent side effects of invalid opcodes)
ja_rd 5000d 04h /ion/trunk/vhdl/mips_cpu.vhdl
28 Core updated:
supports CP0 cause register and traps in delay slots
traps abort next instruction in all cases (incl. jumps/L*/S*)
ja_rd 5000d 05h /ion/trunk/vhdl/mips_cpu.vhdl
23 Unimplemented instruction are now trapped (barely tested) ja_rd 5000d 10h /ion/trunk/vhdl/mips_cpu.vhdl
22 FIXED killer bug in instruction decoder for beq & mfc0
Decoding was incomplete and beq was using wrong ALU input
ja_rd 5001d 08h /ion/trunk/vhdl/mips_cpu.vhdl
12 Adapted multiplier unit from Plasma ja_rd 5001d 21h /ion/trunk/vhdl/mips_cpu.vhdl
8 Trap handling now works as in the MIPS specs:
EPC points to victim instruction (break/syscall)
ja_rd 5002d 22h /ion/trunk/vhdl/mips_cpu.vhdl
6 Fix: BREAK now aborts load and jump instructions properly ja_rd 5003d 01h /ion/trunk/vhdl/mips_cpu.vhdl
2 First commit (includes 'hello' demo) ja_rd 5003d 11h /ion/trunk/vhdl/mips_cpu.vhdl

powered by: WebSVN 2.1.0

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