]>
Joshua Wise's Git repositories - firearm.git/log
Joshua Wise [Sun, 1 Feb 2009 00:37:41 +0000 (19:37 -0500)]
Memory: Fix up latch logic for LDM/STM.
Joshua Wise [Sat, 31 Jan 2009 10:49:31 +0000 (05:49 -0500)]
Memory: Only make the final latch for prev_reg and regs be gated on rw_wait.
Joshua Wise [Sat, 31 Jan 2009 10:15:23 +0000 (05:15 -0500)]
Memory: Split out bus address and data control logic. Split out LDM/STM register control logic.
Joshua Wise [Sat, 31 Jan 2009 09:16:37 +0000 (04:16 -0500)]
Memory: Move offset, addr, and raddr to address generation block.
Joshua Wise [Sat, 31 Jan 2009 09:12:17 +0000 (04:12 -0500)]
Memory: Move all bus control logic to its own always block.
Joshua Wise [Sat, 31 Jan 2009 08:17:23 +0000 (03:17 -0500)]
Memory: Move coprocessor and register outputs to their own always blocks.
Joshua Wise [Sat, 31 Jan 2009 07:49:29 +0000 (02:49 -0500)]
Memory: Move all state machine code out to its own always block.
Joshua Wise [Sat, 31 Jan 2009 06:41:02 +0000 (01:41 -0500)]
Memory: Remove magic numbers from state machines.
Joshua Wise [Sun, 25 Jan 2009 12:14:15 +0000 (07:14 -0500)]
Issue, system, RegFile: First pass at adding resets.
Joshua Wise [Sun, 25 Jan 2009 12:13:42 +0000 (07:13 -0500)]
tests/Makefile: Add a target to pad binaries for Xilinx tools.
Joshua Wise [Sun, 25 Jan 2009 08:39:09 +0000 (03:39 -0500)]
Memory: Fix up a constant that was typoed and malformed.
Joshua Wise [Sat, 24 Jan 2009 10:37:43 +0000 (05:37 -0500)]
DCache, ICache: Make cache_data a 1-D array to enable better synthesizability on Xilinx.
Joshua Wise [Sat, 24 Jan 2009 10:08:28 +0000 (05:08 -0500)]
System, Terminal: Provide real-world outputs on non-Verilator to avoid optimizing the whole system to nothing.
Joshua Wise [Sat, 24 Jan 2009 09:31:18 +0000 (04:31 -0500)]
Fetch: Fix async reset to actually not do it wrong.
Joshua Wise [Sat, 24 Jan 2009 09:18:58 +0000 (04:18 -0500)]
Issue: Use wires, since again XST can't always @(cpsr_inflight).
Joshua Wise [Sat, 24 Jan 2009 09:18:39 +0000 (04:18 -0500)]
RegFile: Move to assigns, since XST can't always @(regfile).
Joshua Wise [Sat, 24 Jan 2009 08:56:01 +0000 (03:56 -0500)]
DCache, ICache: Move curdata out to its own wire for synthesis. Fix up a blocking assign that should be a nonblocking assign.
Joshua Wise [Sat, 24 Jan 2009 08:46:00 +0000 (03:46 -0500)]
BigBlockRAM: Remove excess F.
Joshua Wise [Sat, 24 Jan 2009 08:44:25 +0000 (03:44 -0500)]
Execute: Split things out into their own always blocks there, too.
Joshua Wise [Sat, 24 Jan 2009 08:13:53 +0000 (03:13 -0500)]
Decode: De-UNOPTFLAT it.
Joshua Wise [Sat, 24 Jan 2009 05:56:31 +0000 (00:56 -0500)]
Add a BigBlockRAM that's 8MB (and obviously not very synthesizable). Make system use it on verilator.
Joshua Wise [Sat, 24 Jan 2009 05:54:01 +0000 (00:54 -0500)]
tests/*.hex: Update hex files.
Joshua Wise [Sat, 24 Jan 2009 05:53:37 +0000 (00:53 -0500)]
Add a .gitattributes file to force hex files to be binary-like.
Joshua Wise [Sat, 24 Jan 2009 05:45:12 +0000 (00:45 -0500)]
tests/miniblarg: Make the ROM easier to read.
Joshua Wise [Sat, 24 Jan 2009 05:40:32 +0000 (00:40 -0500)]
Terminal: Add support for reading characters.
Joshua Wise [Sat, 24 Jan 2009 05:39:59 +0000 (00:39 -0500)]
Memory: Add STRB support, en manera de A.
Joshua Wise [Fri, 23 Jan 2009 12:37:53 +0000 (07:37 -0500)]
tests/u-boot.hex: Add initial hex file.
Joshua Wise [Fri, 23 Jan 2009 12:37:25 +0000 (07:37 -0500)]
Execute: Fix carry flag on subtraction operations.
Joshua Wise [Fri, 23 Jan 2009 09:58:39 +0000 (04:58 -0500)]
Issue: Fix case in which lr is read in the instruction immediately after a bl; now flushes no longer clear inflight registers (which makes this a superset of the correct behavior), and now def_regs, well, defines regs. This fixed the miniblarg -O1 bug.
Joshua Wise [Thu, 22 Jan 2009 07:59:51 +0000 (02:59 -0500)]
tests/testbench: Commit new .hex file built with -O3 (2fast2furious).
Joshua Wise [Thu, 22 Jan 2009 07:59:16 +0000 (02:59 -0500)]
Execute: Branches allow somebody else to take precedence by not branching if outstall is asserted. outstall must be low for at least one clock cycle, so the branch is guaranteed to eventually happen if it is in fact legitimate and not shot down.
Joshua Wise [Thu, 22 Jan 2009 07:58:24 +0000 (02:58 -0500)]
Fetch: Allow new queued jumps to take precedence over old queued jumps (i.e., ldm followed by bl; the bl happens first, but the ldm is what we really want in the end)
Joshua Wise [Thu, 22 Jan 2009 07:09:09 +0000 (02:09 -0500)]
system, Writeback, Memory, Execute: Only update the CPSR when an update is specified (and expected by Issue).
Joshua Wise [Wed, 21 Jan 2009 20:31:18 +0000 (15:31 -0500)]
DCache/ICache: reg i -> integer i
Joshua Wise [Mon, 19 Jan 2009 16:16:57 +0000 (11:16 -0500)]
Issue: Fix use_regs for LDRSTR when not acting on an immediate value.
Joshua Wise [Mon, 19 Jan 2009 09:28:32 +0000 (04:28 -0500)]
Memory: Fix the case where a LDM/LDR/LDRH/STM/STR/STRH would not get rejected if stall was asserted because of a wait.
Joshua Wise [Mon, 19 Jan 2009 09:05:47 +0000 (04:05 -0500)]
Memory: Add one more state to lsr/lsrh/lsm to force the writeback to be committed. This is kind of a gross hack, but it can be fixed later with a 'busy' flag that gets set in the middle of a multi-cycle instruction that would get checked by the delayedflush logic. Also, make sure that we do not progress past the first stage if a flush is requested while we're on the first stage, as would happen if we had an ldr right after a ldr pc, ...
Joshua Wise [Sun, 18 Jan 2009 10:50:10 +0000 (05:50 -0500)]
Memory: Fix bug in which multiplies would cause a HDATA access. Fix bug in which LDRSTR would always do a regfile write, trashing a register on a STR instruction. (!)
Joshua Wise [Sun, 18 Jan 2009 09:19:52 +0000 (04:19 -0500)]
tests/testbench: Add miniblarg. Put ldm_bonehead in a place where it will not get owned by -O3.
Joshua Wise [Sun, 18 Jan 2009 09:19:11 +0000 (04:19 -0500)]
tests/Makefile: Add CFLAGS for LOL2FAST2FURIOUS.
Joshua Wise [Sun, 18 Jan 2009 09:18:45 +0000 (04:18 -0500)]
Memory: Change offset latch in LDM so that there is no flutter if DCache cannot get the bus or tries to write to an address that has latency.
Joshua Wise [Sat, 17 Jan 2009 11:15:01 +0000 (06:15 -0500)]
tests/testbench: Update output formatting for testbench.
Joshua Wise [Sat, 17 Jan 2009 11:09:41 +0000 (06:09 -0500)]
DCache/ICache: Invalidate while filling, so if the fill is aborted, then at least we do not return bad data later. 8 hour debug session; 1 line fix.
Joshua Wise [Thu, 15 Jan 2009 08:35:37 +0000 (03:35 -0500)]
tests/testbench: Allow compilation on x86.
Joshua Wise [Thu, 15 Jan 2009 07:44:48 +0000 (02:44 -0500)]
DCache: Be more verbose about fills.
Joshua Wise [Thu, 15 Jan 2009 07:44:23 +0000 (02:44 -0500)]
BlockRAM: Write before read so that reads the next cycle return the right answer.
Joshua Wise [Thu, 15 Jan 2009 06:37:52 +0000 (01:37 -0500)]
Execute: fix rdiff
Joshua Wise [Wed, 14 Jan 2009 07:22:48 +0000 (02:22 -0500)]
Memory: Add delayed flush. Make outbubble correct by moving it to the end (sadface). Correct behavior in ldmstm if it has to rw_wait. Make ldmstm more verbose.
Joshua Wise [Wed, 14 Jan 2009 07:20:50 +0000 (02:20 -0500)]
Execute: Fix outbubble on multiplier so that it remembers to flush, fixing ldm_bonehead test.
Joshua Wise [Wed, 14 Jan 2009 07:18:35 +0000 (02:18 -0500)]
Execute: Add delayed flush logic.
Joshua Wise [Wed, 14 Jan 2009 07:14:19 +0000 (02:14 -0500)]
ICache and DCache: Do not accept fill data if the bus_ready is actually intended for someone *else*.
Joshua Wise [Wed, 14 Jan 2009 07:13:25 +0000 (02:13 -0500)]
Issue: Add logic to defer a flush if need be (i.e., we're stalled at the time and hence not allowed to change any other state).
Joshua Wise [Wed, 14 Jan 2009 07:12:26 +0000 (02:12 -0500)]
tests/costas: respin .hex
Joshua Wise [Wed, 14 Jan 2009 07:10:56 +0000 (02:10 -0500)]
tests: Add the new testbench.
Joshua Wise [Wed, 14 Jan 2009 07:10:08 +0000 (02:10 -0500)]
anulib: move the stack ALL the way up
Joshua Wise [Wed, 14 Jan 2009 05:57:29 +0000 (00:57 -0500)]
Fetch: Also queue up a jump if we are stalled.
Joshua Wise [Tue, 13 Jan 2009 08:43:36 +0000 (03:43 -0500)]
DCache: Change verbosity.
Joshua Wise [Tue, 13 Jan 2009 08:40:57 +0000 (03:40 -0500)]
system: Swap ICache and DCache in arbiter order.
Joshua Wise [Tue, 13 Jan 2009 08:40:33 +0000 (03:40 -0500)]
anulib: Move the stack up.
Joshua Wise [Sun, 11 Jan 2009 05:27:56 +0000 (00:27 -0500)]
Costas: Remove while(1) and allow proper returns.
Joshua Wise [Sun, 11 Jan 2009 05:27:25 +0000 (00:27 -0500)]
Memory: Instrument LDMSTM. Do not write back if writeback not requested. Comment some magic bits. Fix swapped cur_reg conditional. Add pc save.
Joshua Wise [Sun, 11 Jan 2009 05:21:32 +0000 (00:21 -0500)]
DCache: Add instrumentation.
Joshua Wise [Sun, 11 Jan 2009 04:41:07 +0000 (23:41 -0500)]
Memory: Fix FSM for LDR/STR. Fix pre/post increment to be, uh, pre/post increment, not post/pre increment.
Joshua Wise [Sat, 10 Jan 2009 09:53:40 +0000 (04:53 -0500)]
Decode: Fix conditional for immediate mode.
Joshua Wise [Sat, 10 Jan 2009 09:49:10 +0000 (04:49 -0500)]
system: Fix message printed by DECODE debug line to have a zero base for op numbers.
Joshua Wise [Sat, 10 Jan 2009 09:35:53 +0000 (04:35 -0500)]
Enable part 2 of the Costas test program.
Joshua Wise [Sat, 10 Jan 2009 09:11:45 +0000 (04:11 -0500)]
Add tests directory.
Joshua Wise [Sat, 10 Jan 2009 09:07:51 +0000 (04:07 -0500)]
DCache, ICache: Reset fill circuitry if a request is aborted while filling.
Joshua Wise [Sat, 10 Jan 2009 09:04:58 +0000 (04:04 -0500)]
Fetch: qjmp is for queueing up jumps while rd_waiting, not while stalled.
Joshua Wise [Sat, 10 Jan 2009 09:01:13 +0000 (04:01 -0500)]
system: Print the correct values for jmp for Execute.
Joshua Wise [Sat, 10 Jan 2009 08:48:06 +0000 (03:48 -0500)]
DCache: Fix silly bug involving failing to clear bus_wr.
Joshua Wise [Sat, 10 Jan 2009 08:26:03 +0000 (03:26 -0500)]
Fetch: Rewrite to be cleaner.
Joshua Wise [Sat, 10 Jan 2009 05:54:59 +0000 (00:54 -0500)]
Terminal: Add `ifdef verilator around the $c construct.
Joshua Wise [Sat, 10 Jan 2009 05:53:52 +0000 (00:53 -0500)]
system: Fix bug that would cause stmia not to work.
Joshua Wise [Sat, 10 Jan 2009 05:51:00 +0000 (00:51 -0500)]
Memory: wire -> reg in some cases
Joshua Wise [Sat, 10 Jan 2009 05:50:06 +0000 (00:50 -0500)]
ICache: Add instrumentation.
Joshua Wise [Sat, 10 Jan 2009 04:36:15 +0000 (23:36 -0500)]
Execute: Fix jumps while flush asserted. Set lr correctly in bl.
Christopher Lu [Sat, 10 Jan 2009 03:18:37 +0000 (22:18 -0500)]
Merge branch 'master' of nyus.joshuawise.com:/git/firearm
Christopher Lu [Sat, 10 Jan 2009 03:18:33 +0000 (22:18 -0500)]
unique values for the shits
Joshua Wise [Fri, 9 Jan 2009 09:25:56 +0000 (04:25 -0500)]
ram: Add a string printing test, WHICH WORKS!
Joshua Wise [Fri, 9 Jan 2009 09:25:36 +0000 (04:25 -0500)]
Decode: Fix stupid bug in which stalls did not stall the decoder.
Joshua Wise [Fri, 9 Jan 2009 09:02:54 +0000 (04:02 -0500)]
Merge nyus:/storage/git/firearm
Conflicts:
Memory.v
Joshua Wise [Fri, 9 Jan 2009 09:02:05 +0000 (04:02 -0500)]
Add 'mov r1, #':' to ramfile.
Joshua Wise [Fri, 9 Jan 2009 09:01:50 +0000 (04:01 -0500)]
Hit all with the integrate.
Joshua Wise [Fri, 9 Jan 2009 09:01:19 +0000 (04:01 -0500)]
Writeback: add
Christopher Lu [Fri, 9 Jan 2009 08:52:31 +0000 (03:52 -0500)]
memory: fix
Christopher Lu [Fri, 9 Jan 2009 08:27:27 +0000 (03:27 -0500)]
decode: stuff for halfword
Christopher Lu [Fri, 9 Jan 2009 08:13:49 +0000 (03:13 -0500)]
memory wea
Christopher Lu [Fri, 9 Jan 2009 06:27:12 +0000 (01:27 -0500)]
blockram: more fix
Christopher Lu [Fri, 9 Jan 2009 06:24:18 +0000 (01:24 -0500)]
Merge branch 'master' of nyus.joshuawise.com:/git/firearm
Christopher Lu [Fri, 9 Jan 2009 06:24:10 +0000 (01:24 -0500)]
blockram: fix hack, memory: add ldrh/strh
Joshua Wise [Fri, 9 Jan 2009 06:20:46 +0000 (01:20 -0500)]
ram.hex: Add performance benchmark, P-SPEC 2009.
Joshua Wise [Fri, 9 Jan 2009 06:20:11 +0000 (01:20 -0500)]
Memory: Add some debugging.
Joshua Wise [Fri, 9 Jan 2009 06:19:12 +0000 (01:19 -0500)]
Add terminal
Joshua Wise [Wed, 7 Jan 2009 09:59:41 +0000 (04:59 -0500)]
system: Wire up outcpsr and outspsr from Execute to Memory.
Joshua Wise [Wed, 7 Jan 2009 09:59:24 +0000 (04:59 -0500)]
Decode: Set correct rpc for coprocessor register transfer.
Joshua Wise [Wed, 7 Jan 2009 09:58:34 +0000 (04:58 -0500)]
Add special CPSR behavior for ARM MCR.
Joshua Wise [Wed, 7 Jan 2009 09:58:14 +0000 (04:58 -0500)]
Add LDR test instruction.
Christopher Lu [Wed, 7 Jan 2009 09:54:31 +0000 (04:54 -0500)]
memory: bubble
Christopher Lu [Wed, 7 Jan 2009 09:45:21 +0000 (04:45 -0500)]
memory: merged
This page took 0.059295 seconds and 4 git commands to generate.