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

Subversion Repositories ion

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

Rev

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

Filtering Options

Clear current filter

Rev Log message Author Age Path
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 4786d 13h /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 4790d 17h /ion/trunk/vhdl/mips_cpu.vhdl
132 Fixed bug in stall logic
(stall for back-to-back SW instructions was wrong)
ja_rd 4794d 09h /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 4840d 09h /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 4858d 07h /ion/trunk/vhdl/mips_cpu.vhdl
96 CPU rd and wr data address buses unified ja_rd 4882d 16h /ion/trunk/vhdl/mips_cpu.vhdl
83 BUG FIX: LHU was not doing sign extension properly
BUG FIX: SLTIU decoding was wrong
ja_rd 4893d 13h /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 4904d 03h /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 4906d 09h /ion/trunk/vhdl/mips_cpu.vhdl
35 CPU mem_wait logic updated to work with cache ja_rd 4910d 12h /ion/trunk/vhdl/mips_cpu.vhdl
30 Completed decoding of instructions
(to prevent side effects of invalid opcodes)
ja_rd 4912d 09h /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 4912d 10h /ion/trunk/vhdl/mips_cpu.vhdl
23 Unimplemented instruction are now trapped (barely tested) ja_rd 4912d 15h /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 4913d 13h /ion/trunk/vhdl/mips_cpu.vhdl
12 Adapted multiplier unit from Plasma ja_rd 4914d 02h /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 4915d 03h /ion/trunk/vhdl/mips_cpu.vhdl
6 Fix: BREAK now aborts load and jump instructions properly ja_rd 4915d 06h /ion/trunk/vhdl/mips_cpu.vhdl
2 First commit (includes 'hello' demo) ja_rd 4915d 16h /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.