]> rtime.felk.cvut.cz Git - fpga/lx-cpu1/tumbl.git/log
fpga/lx-cpu1/tumbl.git
9 years agoConnect internal finish_wrb_mem_s to GPRF - gprf_finish_wrb_mem. master
Pavel Pisa [Wed, 31 Dec 2014 11:12:08 +0000 (12:12 +0100)]
Connect internal finish_wrb_mem_s to GPRF - gprf_finish_wrb_mem.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoAttempt to fix forward from memory read to write over when Tumbl is being to stop.
Pavel Pisa [Wed, 31 Dec 2014 08:12:52 +0000 (09:12 +0100)]
Attempt to fix forward from memory read to write over when Tumbl is being to stop.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoSeparate wait for external bus data and state when external bus is taken by other...
Pavel Pisa [Tue, 30 Dec 2014 14:02:20 +0000 (15:02 +0100)]
Separate wait for external bus data and state when external bus is taken by other master.

Original design reuses external bus clock enable/ready indication
for external master wait. This solution is broken because
external master leaves other data on the bus when clocks
are re-enabled than Tumbl expects. When external master
requests bus at/after end of the Tumbl external memory cycle
there is no need to do anything special in such case.

Signed-off-by: Pavel Pisa <ppisa@pikron.com>
9 years agoCorrect unfinished/broken CMPU and CMP instructions and IT(TE) conditions.
Pavel Pisa [Mon, 15 Dec 2014 09:28:08 +0000 (10:28 +0100)]
Correct unfinished/broken CMPU and CMP instructions and IT(TE) conditions.

The result bit 31 has not been updated when signs of inputs
did not match and signBit_r_v used in IT(TE) has not been assigned
from result when signs matched.

The CMP(U) should compare inputs => it is equivalent to RSUB
but specification of ALU_IN_NOT_REGA and CIN_ONE has been
omitted.

Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
9 years agoFix LD script
Martin Meloun [Fri, 23 May 2014 17:25:12 +0000 (19:25 +0200)]
Fix LD script

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
9 years agoCore updates
Martin Meloun [Sun, 11 May 2014 21:48:04 +0000 (23:48 +0200)]
Core updates

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
10 years agoAdd some info to the headers
Martin Meloun [Wed, 4 Dec 2013 00:19:16 +0000 (01:19 +0100)]
Add some info to the headers

10 years agoAdd back support for delay slot, but with writing PC+4 when linking and using delay...
Martin Meloun [Wed, 2 Oct 2013 09:59:07 +0000 (11:59 +0200)]
Add back support for delay slot, but with writing PC+4 when linking and using delay slot

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
10 years agoReformat code and restructure decoder to save LUTs and fit critical path
Martin Meloun [Mon, 30 Sep 2013 12:25:21 +0000 (14:25 +0200)]
Reformat code and restructure decoder to save LUTs and fit critical path

Instruction set is also modified, ITxxx are separate from CMP,
do not store the result to a register and are in unsigned / immediate value
variants as well. Added also CMPUI (CMPU has slightly changed encoding).

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
10 years agoImplement ITT conditional execution
Martin Meloun [Wed, 25 Sep 2013 13:46:41 +0000 (15:46 +0200)]
Implement ITT conditional execution

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
10 years agoCustomized instruction set (with compatibility mode)
Martin Meloun [Tue, 24 Sep 2013 15:27:27 +0000 (17:27 +0200)]
Customized instruction set (with compatibility mode)

1) Removed done_o signal, replaced with HALT instruction
2) Nuked delay slot (muck) and removed related instructions
3) Added RTI, RTS, BRL, BRLI, BRALI instructions
4) Recoded CMP instruction, added CMPI
5) Added macro for compatibility mode (recognizes original instruction set,
   i.e delay slot, original CMP instruction - and keeps HALT, and some new
   instruction where blocking them would require additional logic (extra
   no delay variants of existing instructions)
6) Simplified flushing
7) Given patched binutils, gcc and newlib, mb-dasm has been removed for redundancy

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
10 years agoWhen branching, do not execute the instruction behind the branch
Martin Meloun [Thu, 19 Sep 2013 19:17:48 +0000 (21:17 +0200)]
When branching, do not execute the instruction behind the branch

Note: To effectively use this feature, gcc requires patching

10 years agoAdd scripts and programs for firmware
Martin Meloun [Wed, 18 Sep 2013 14:17:52 +0000 (16:17 +0200)]
Add scripts and programs for firmware

10 years agoAdd tracing
Martin Meloun [Wed, 18 Sep 2013 14:17:30 +0000 (16:17 +0200)]
Add tracing

10 years agoRemove FSL from Tumbl completely
Martin Meloun [Fri, 6 Sep 2013 13:20:16 +0000 (15:20 +0200)]
Remove FSL from Tumbl completely

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
10 years agoAdd halt and wire out bad op signal
Martin Meloun [Fri, 6 Sep 2013 10:06:23 +0000 (12:06 +0200)]
Add halt and wire out bad op signal

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>
10 years agoInitial commit for MBLite+ Tumbl (used as coprocessor)
Martin Meloun [Thu, 5 Sep 2013 16:04:56 +0000 (18:04 +0200)]
Initial commit for MBLite+ Tumbl (used as coprocessor)

This does not include memory interconnections (registers, instruction
and data memory wiring is required).

Signed-off-by: Martin Meloun <meloumar@cmp.felk.cvut.cz>