soc.git
4 years agofirst cut at "basic" L0 Cache/Buffer (untested), only sends one LD/ST through
Luke Kenneth Casson Leighton [Mon, 4 May 2020 13:48:18 +0000 (14:48 +0100)]
first cut at "basic" L0 Cache/Buffer (untested), only sends one LD/ST through
at a time.  demonstrates the LDST PortInterface

4 years agodocument PortInterface, start on "dummy" L0CacheBuffer
Luke Kenneth Casson Leighton [Mon, 4 May 2020 10:18:12 +0000 (11:18 +0100)]
document PortInterface, start on "dummy" L0CacheBuffer

4 years agowhitespace
Luke Kenneth Casson Leighton [Mon, 4 May 2020 09:48:21 +0000 (10:48 +0100)]
whitespace

4 years agobetter comments on rd/wr pending
Luke Kenneth Casson Leighton [Mon, 4 May 2020 09:31:15 +0000 (10:31 +0100)]
better comments on rd/wr pending

4 years agomove unused out of soc directory
Luke Kenneth Casson Leighton [Sun, 3 May 2020 10:52:23 +0000 (11:52 +0100)]
move unused out of soc directory

4 years agoadd comments to power decoder
Luke Kenneth Casson Leighton [Sun, 3 May 2020 10:32:12 +0000 (11:32 +0100)]
add comments to power decoder

4 years agomove TLB and iommu to unused directory
Luke Kenneth Casson Leighton [Sun, 3 May 2020 09:49:14 +0000 (10:49 +0100)]
move TLB and iommu to unused directory

4 years agoRead decoder tables from wiki submodule instead of web
Michael Nolan [Sat, 2 May 2020 19:27:34 +0000 (15:27 -0400)]
Read decoder tables from wiki submodule instead of web

4 years agoadd LDST PortInterface class
Luke Kenneth Casson Leighton [Mon, 27 Apr 2020 11:49:49 +0000 (12:49 +0100)]
add LDST PortInterface class

4 years agoadd CompLDSTOpSubset, contains subset of decode instruction for LD/ST
Luke Kenneth Casson Leighton [Mon, 27 Apr 2020 11:49:11 +0000 (12:49 +0100)]
add CompLDSTOpSubset, contains subset of decode instruction for LD/ST

4 years agoupdate signal in DecodeToExecute1Type is "LD/ST performs update"
Luke Kenneth Casson Leighton [Mon, 27 Apr 2020 11:45:54 +0000 (12:45 +0100)]
update signal in DecodeToExecute1Type is "LD/ST performs update"

4 years agoexperimenting with ld/st comp unit
Luke Kenneth Casson Leighton [Fri, 24 Apr 2020 12:02:46 +0000 (13:02 +0100)]
experimenting with ld/st comp unit

4 years agoremove out-of-date comments
Luke Kenneth Casson Leighton [Fri, 24 Apr 2020 08:55:56 +0000 (09:55 +0100)]
remove out-of-date comments

4 years agocomment req_done
Luke Kenneth Casson Leighton [Thu, 23 Apr 2020 17:15:17 +0000 (18:15 +0100)]
comment req_done

4 years agohair-raising series of half-way-house changes which gets a mix of add/addi
Luke Kenneth Casson Leighton [Thu, 23 Apr 2020 16:48:50 +0000 (17:48 +0100)]
hair-raising series of half-way-house changes which gets a mix of add/addi
working

4 years agostart using records in score6600
Luke Kenneth Casson Leighton [Thu, 23 Apr 2020 14:17:25 +0000 (15:17 +0100)]
start using records in score6600

4 years agorename MultiCompUnit
Luke Kenneth Casson Leighton [Thu, 23 Apr 2020 13:54:55 +0000 (14:54 +0100)]
rename MultiCompUnit

4 years agouse go/rel Record in ldstcomp
Luke Kenneth Casson Leighton [Thu, 23 Apr 2020 13:53:54 +0000 (14:53 +0100)]
use go/rel Record in ldstcomp

4 years agofix request-done in compalu_multi
Luke Kenneth Casson Leighton [Wed, 22 Apr 2020 15:56:22 +0000 (16:56 +0100)]
fix request-done in compalu_multi

4 years agoLDSTCompUnit converted, no need to special-case
Luke Kenneth Casson Leighton [Wed, 22 Apr 2020 14:55:28 +0000 (15:55 +0100)]
LDSTCompUnit converted, no need to special-case

4 years agoconvert CompALU to Record in/out
Luke Kenneth Casson Leighton [Wed, 22 Apr 2020 14:54:54 +0000 (15:54 +0100)]
convert CompALU to Record in/out

4 years agofix failure to import alu_hier
Jacob Lifshay [Tue, 21 Apr 2020 04:51:27 +0000 (21:51 -0700)]
fix failure to import alu_hier

4 years agofix bug #290
Jacob Lifshay [Tue, 21 Apr 2020 04:44:45 +0000 (21:44 -0700)]
fix bug #290

4 years agoadd libmpfr-dev to .gitlab-ci.yml
Jacob Lifshay [Tue, 21 Apr 2020 00:21:03 +0000 (17:21 -0700)]
add libmpfr-dev to .gitlab-ci.yml

4 years agotestcase fo mulli
Tobias Platen [Mon, 20 Apr 2020 15:23:05 +0000 (17:23 +0200)]
testcase fo mulli

4 years agotestcase for addis
Tobias Platen [Mon, 20 Apr 2020 15:04:33 +0000 (17:04 +0200)]
testcase for addis

4 years agoadd with carry cleanup and test case
Tobias Platen [Mon, 20 Apr 2020 14:50:42 +0000 (16:50 +0200)]
add with carry cleanup and test case

4 years agochanges to LDSTCompUnit, get score6600 working
Luke Kenneth Casson Leighton [Mon, 20 Apr 2020 09:22:06 +0000 (10:22 +0100)]
changes to LDSTCompUnit, get score6600 working

4 years agoget compldst.py unit test up and running after modifications to ALU
Luke Kenneth Casson Leighton [Sun, 19 Apr 2020 20:20:36 +0000 (21:20 +0100)]
get compldst.py unit test up and running after modifications to ALU

4 years agowhoops cut/paste error, n_src used instead of n_dst on loop
Luke Kenneth Casson Leighton [Sun, 19 Apr 2020 18:54:05 +0000 (19:54 +0100)]
whoops cut/paste error, n_src used instead of n_dst on loop

4 years agoimport TestMemory globally not relative
Luke Kenneth Casson Leighton [Sun, 19 Apr 2020 18:40:47 +0000 (19:40 +0100)]
import TestMemory globally not relative

4 years agoconvert BranchALU to temporary conformant API
Luke Kenneth Casson Leighton [Sun, 19 Apr 2020 10:32:41 +0000 (11:32 +0100)]
convert BranchALU to temporary conformant API

4 years agohalf-way-house fix to get request-release signals working
Luke Kenneth Casson Leighton [Sun, 19 Apr 2020 08:29:58 +0000 (09:29 +0100)]
half-way-house fix to get request-release signals working

4 years agoattempting to get CompUnitsBase connected up
Luke Kenneth Casson Leighton [Sat, 18 Apr 2020 16:26:45 +0000 (17:26 +0100)]
attempting to get CompUnitsBase connected up

4 years ago1st operation successful, 2nd still not running correctly
Luke Kenneth Casson Leighton [Sat, 18 Apr 2020 13:31:15 +0000 (14:31 +0100)]
1st operation successful, 2nd still not running correctly

4 years agoyield ports in dep cell
Luke Kenneth Casson Leighton [Sat, 18 Apr 2020 13:03:32 +0000 (14:03 +0100)]
yield ports in dep cell

4 years agogo_rd/go_wr should not be array in FU-REGs
Luke Kenneth Casson Leighton [Sat, 18 Apr 2020 13:01:07 +0000 (14:01 +0100)]
go_rd/go_wr should not be array in FU-REGs

4 years agoupdate libreriscv submodule
Jacob Lifshay [Sat, 18 Apr 2020 00:07:58 +0000 (17:07 -0700)]
update libreriscv submodule

4 years agoMerge branch 'master' of ssh://git.libre-riscv.org:922/soc
Jacob Lifshay [Sat, 18 Apr 2020 00:06:48 +0000 (17:06 -0700)]
Merge branch 'master' of ssh://git.libre-riscv.org:922/soc

4 years agoadding WIP memory_pipe_experiment
Jacob Lifshay [Sat, 18 Apr 2020 00:05:56 +0000 (17:05 -0700)]
adding WIP memory_pipe_experiment

4 years agointpick request-release bug
Luke Kenneth Casson Leighton [Fri, 17 Apr 2020 16:29:46 +0000 (17:29 +0100)]
intpick request-release bug

4 years agoadd with carry instructions
Tobias Platen [Fri, 17 Apr 2020 16:06:25 +0000 (16:06 +0000)]
add with carry instructions

4 years agorename signals
Luke Kenneth Casson Leighton [Fri, 17 Apr 2020 15:26:20 +0000 (16:26 +0100)]
rename signals

4 years agodelay too long
Luke Kenneth Casson Leighton [Fri, 17 Apr 2020 14:01:13 +0000 (15:01 +0100)]
delay too long

4 years agotemporarily not use MultiPriorityPicker
Luke Kenneth Casson Leighton [Fri, 17 Apr 2020 13:40:56 +0000 (14:40 +0100)]
temporarily not use MultiPriorityPicker

4 years agowhoops fu-fu readable / writeable output not an array
Luke Kenneth Casson Leighton [Fri, 17 Apr 2020 13:01:39 +0000 (14:01 +0100)]
whoops fu-fu readable / writeable output not an array

4 years agowhoops src_rsel signal-copy error
Luke Kenneth Casson Leighton [Fri, 17 Apr 2020 12:28:05 +0000 (13:28 +0100)]
whoops src_rsel signal-copy error

4 years agowhew multi rd/wr signals finally connecting
Luke Kenneth Casson Leighton [Fri, 17 Apr 2020 12:18:03 +0000 (13:18 +0100)]
whew multi rd/wr signals finally connecting

4 years agowhoops not using CompUnitMulti
Luke Kenneth Casson Leighton [Fri, 17 Apr 2020 12:05:10 +0000 (13:05 +0100)]
whoops not using CompUnitMulti

4 years agonot using relative imports (pain in the neck)
Luke Kenneth Casson Leighton [Fri, 17 Apr 2020 10:32:37 +0000 (11:32 +0100)]
not using relative imports (pain in the neck)

4 years agocorrect-wiring of FunctionUnit src/dest
Luke Kenneth Casson Leighton [Fri, 17 Apr 2020 10:31:12 +0000 (11:31 +0100)]
correct-wiring of FunctionUnit src/dest

4 years agocreate distinct "done_o" signal
Luke Kenneth Casson Leighton [Fri, 17 Apr 2020 10:30:57 +0000 (11:30 +0100)]
create distinct "done_o" signal

4 years agofix tests
Jacob Lifshay [Fri, 17 Apr 2020 03:29:25 +0000 (20:29 -0700)]
fix tests

4 years agoMerge branch 'master' of ssh://git.libre-riscv.org:922/soc
Jacob Lifshay [Fri, 17 Apr 2020 02:38:11 +0000 (19:38 -0700)]
Merge branch 'master' of ssh://git.libre-riscv.org:922/soc

4 years agoadd memory_pipe_experiment
Jacob Lifshay [Fri, 17 Apr 2020 02:37:15 +0000 (19:37 -0700)]
add memory_pipe_experiment

4 years agothoroughly broken but at least partly connected up scoreboard code
Luke Kenneth Casson Leighton [Thu, 16 Apr 2020 21:10:50 +0000 (22:10 +0100)]
thoroughly broken but at least partly connected up scoreboard code
with multi-read/write signals

4 years agoupdate group picker to be multi-level capable. now uses MultiPriorityPicker
Luke Kenneth Casson Leighton [Thu, 16 Apr 2020 15:24:10 +0000 (16:24 +0100)]
update group picker to be multi-level capable.  now uses MultiPriorityPicker

4 years agocombine read and rd_rel to get faster response for all_read
Luke Kenneth Casson Leighton [Thu, 16 Apr 2020 12:15:59 +0000 (13:15 +0100)]
combine read and rd_rel to get faster response for all_read

4 years agoadd experimental multi-rd/wr comp unit
Luke Kenneth Casson Leighton [Thu, 16 Apr 2020 11:04:44 +0000 (12:04 +0100)]
add experimental multi-rd/wr comp unit

4 years agofix a bug in QemuController.get_register
Tobias Platen [Wed, 15 Apr 2020 16:38:00 +0000 (18:38 +0200)]
fix a bug in QemuController.get_register

4 years agoturn experimental ALU into array-input
Luke Kenneth Casson Leighton [Tue, 14 Apr 2020 20:28:38 +0000 (21:28 +0100)]
turn experimental ALU into array-input

4 years agowhoops missed for-loop on fu-reg-multi
Luke Kenneth Casson Leighton [Tue, 14 Apr 2020 20:05:40 +0000 (21:05 +0100)]
whoops missed for-loop on fu-reg-multi

4 years agorename multi modules
Luke Kenneth Casson Leighton [Tue, 14 Apr 2020 18:34:53 +0000 (19:34 +0100)]
rename multi modules

4 years agomove scoreboard multi rd/wr to new folder
Luke Kenneth Casson Leighton [Tue, 14 Apr 2020 18:31:57 +0000 (19:31 +0100)]
move scoreboard multi rd/wr to new folder

4 years agoadd multi version of memfu matrix
Luke Kenneth Casson Leighton [Tue, 14 Apr 2020 18:29:47 +0000 (19:29 +0100)]
add multi version of memfu matrix

4 years agoadd scoreboard fu-fu matrix with multi gord/wr
Luke Kenneth Casson Leighton [Tue, 14 Apr 2020 17:43:26 +0000 (18:43 +0100)]
add scoreboard fu-fu matrix with multi gord/wr

4 years agoadd fu-fu multi-rd/wr dep cell
Luke Kenneth Casson Leighton [Tue, 14 Apr 2020 17:25:33 +0000 (18:25 +0100)]
add fu-fu multi-rd/wr dep cell

4 years agoscoreboard go_wr/go_wr multi-signal
Luke Kenneth Casson Leighton [Tue, 14 Apr 2020 12:59:12 +0000 (13:59 +0100)]
scoreboard go_wr/go_wr multi-signal

4 years agoadd first cut of variants that have multi-dest and multi-rd/wr flags
Luke Kenneth Casson Leighton [Tue, 14 Apr 2020 12:52:09 +0000 (13:52 +0100)]
add first cut of variants that have multi-dest and multi-rd/wr flags

4 years agodep cell src2_rsel_o replaced by src_rsel_o array
Luke Kenneth Casson Leighton [Mon, 13 Apr 2020 20:31:42 +0000 (21:31 +0100)]
dep cell src2_rsel_o replaced by src_rsel_o array

4 years agospelling mistake
Luke Kenneth Casson Leighton [Sat, 11 Apr 2020 19:57:29 +0000 (20:57 +0100)]
spelling mistake

4 years agoholy cow, decode and run instruction works!
Luke Kenneth Casson Leighton [Sat, 11 Apr 2020 11:15:07 +0000 (12:15 +0100)]
holy cow, decode and run instruction works!

4 years agoadd basic comment / docstring on program.py
Luke Kenneth Casson Leighton [Sat, 11 Apr 2020 10:41:42 +0000 (11:41 +0100)]
add basic comment / docstring on program.py

4 years agotest additional instructions
Luke Kenneth Casson Leighton [Sat, 11 Apr 2020 10:32:44 +0000 (11:32 +0100)]
test additional instructions

4 years agopass and lock immediate in
Luke Kenneth Casson Leighton [Sat, 11 Apr 2020 09:26:13 +0000 (10:26 +0100)]
pass and lock immediate in

4 years agoadding immediates, tracking down a bug
Luke Kenneth Casson Leighton [Sat, 11 Apr 2020 08:53:51 +0000 (09:53 +0100)]
adding immediates, tracking down a bug

4 years agoadding immediates, tracking down a bug
Luke Kenneth Casson Leighton [Sat, 11 Apr 2020 08:53:24 +0000 (09:53 +0100)]
adding immediates, tracking down a bug

4 years agoUpdate libreriscv to fix test_mtcrf
Michael Nolan [Fri, 10 Apr 2020 17:55:01 +0000 (13:55 -0400)]
Update libreriscv to fix test_mtcrf

4 years agoconnect up ALU properly to pass full InternalOp subset over, MUL now works
Luke Kenneth Casson Leighton [Fri, 10 Apr 2020 16:07:07 +0000 (17:07 +0100)]
connect up ALU properly to pass full InternalOp subset over, MUL now works

4 years agoadd 2nd add instruction to see what happens (success)
Luke Kenneth Casson Leighton [Fri, 10 Apr 2020 14:59:44 +0000 (15:59 +0100)]
add 2nd add instruction to see what happens (success)

4 years agoeek, first cut at using POWER decoder2 in 6600 simulator, barely working
Luke Kenneth Casson Leighton [Fri, 10 Apr 2020 14:51:19 +0000 (15:51 +0100)]
eek, first cut at using POWER decoder2 in 6600 simulator, barely working
but at least working!

4 years agowhoops syntax error
Luke Kenneth Casson Leighton [Fri, 10 Apr 2020 14:04:41 +0000 (15:04 +0100)]
whoops syntax error

4 years agoconverting InstructionQ to use Decode2ToExecuteType
Luke Kenneth Casson Leighton [Fri, 10 Apr 2020 12:57:12 +0000 (13:57 +0100)]
converting InstructionQ to use Decode2ToExecuteType
needed to convert Decode2ToExecuteType to use RecordObject

4 years agoadd eq_from_execute1 subset function
Luke Kenneth Casson Leighton [Fri, 10 Apr 2020 12:34:51 +0000 (13:34 +0100)]
add eq_from_execute1 subset function

4 years agoget CompUnitALU test running with InternalOp ALU subset
Luke Kenneth Casson Leighton [Thu, 9 Apr 2020 15:33:13 +0000 (16:33 +0100)]
get CompUnitALU test running with InternalOp ALU subset

4 years agoexperiment morphing ALU to take subset of Decode2ToExecute1
Luke Kenneth Casson Leighton [Thu, 9 Apr 2020 12:57:29 +0000 (13:57 +0100)]
experiment morphing ALU to take subset of Decode2ToExecute1

4 years agofix 'Object is not an nMigen signal' error in test_sim.py
Tobias Platen [Thu, 9 Apr 2020 09:12:34 +0000 (11:12 +0200)]
fix 'Object is not an nMigen signal' error in test_sim.py

4 years agopass InternalOp through to CompUnit ALU
Luke Kenneth Casson Leighton [Wed, 8 Apr 2020 15:25:44 +0000 (16:25 +0100)]
pass InternalOp through to CompUnit ALU

4 years agowhoops realised src1/2 need to receive reg data, not reg #
Luke Kenneth Casson Leighton [Wed, 8 Apr 2020 14:54:09 +0000 (15:54 +0100)]
whoops realised src1/2 need to receive reg data, not reg #

4 years agouse power decoder InternalOp
Luke Kenneth Casson Leighton [Wed, 8 Apr 2020 14:48:48 +0000 (15:48 +0100)]
use power decoder InternalOp

4 years agostart using power decoder in 6600 comp units
Luke Kenneth Casson Leighton [Wed, 8 Apr 2020 13:46:32 +0000 (14:46 +0100)]
start using power decoder in 6600 comp units

4 years agoconvert power_decoder2 Data to Record-based
Luke Kenneth Casson Leighton [Wed, 8 Apr 2020 12:00:34 +0000 (13:00 +0100)]
convert power_decoder2 Data to Record-based

4 years agoabsolute imports
Luke Kenneth Casson Leighton [Wed, 8 Apr 2020 10:48:03 +0000 (11:48 +0100)]
absolute imports

4 years agotry making CR bitrange 32..63 not 0..31
Luke Kenneth Casson Leighton [Tue, 7 Apr 2020 18:46:03 +0000 (19:46 +0100)]
try making CR bitrange 32..63 not 0..31

4 years agonote that CR must be offset by 32
Luke Kenneth Casson Leighton [Tue, 7 Apr 2020 18:27:15 +0000 (19:27 +0100)]
note that CR must be offset by 32

4 years agosubmodule update
Luke Kenneth Casson Leighton [Tue, 7 Apr 2020 18:25:49 +0000 (19:25 +0100)]
submodule update

4 years agoadd "undefined" to namespace
Luke Kenneth Casson Leighton [Tue, 7 Apr 2020 18:13:38 +0000 (19:13 +0100)]
add "undefined" to namespace

4 years agoCR test "working" (for a given value of "success")
Luke Kenneth Casson Leighton [Tue, 7 Apr 2020 18:11:36 +0000 (19:11 +0100)]
CR test "working" (for a given value of "success")

4 years agoadd in special regs to be passed out of function (as return results)
Luke Kenneth Casson Leighton [Tue, 7 Apr 2020 16:49:46 +0000 (17:49 +0100)]
add in special regs to be passed out of function (as return results)

4 years agoattempting to add mtcrf test, requires bringing CR and other regs into ops
Luke Kenneth Casson Leighton [Tue, 7 Apr 2020 16:27:41 +0000 (17:27 +0100)]
attempting to add mtcrf test, requires bringing CR and other regs into ops