soc.git
3 years agodumb syntax error
Luke Kenneth Casson Leighton [Mon, 18 May 2020 03:56:54 +0000 (04:56 +0100)]
dumb syntax error

3 years agomass-rename of modules to soc.fu.*
Luke Kenneth Casson Leighton [Mon, 18 May 2020 03:56:29 +0000 (04:56 +0100)]
mass-rename of modules to soc.fu.*

3 years agorename pipe to fu
Luke Kenneth Casson Leighton [Mon, 18 May 2020 03:52:43 +0000 (04:52 +0100)]
rename pipe to fu

3 years agomove pipelines to pipe dir
Luke Kenneth Casson Leighton [Mon, 18 May 2020 03:52:30 +0000 (04:52 +0100)]
move pipelines to pipe dir

3 years agoRemoved extraneous variable from 'ports=[..]' of main in bperm.py
colepoirier [Sun, 17 May 2020 18:49:16 +0000 (11:49 -0700)]
Removed extraneous variable from 'ports=[..]' of main in bperm.py

3 years agoApplied PEP8 formatting to bperm.py
colepoirier [Sun, 17 May 2020 18:41:52 +0000 (11:41 -0700)]
Applied PEP8 formatting to bperm.py

3 years agotest 32/64 bit mode CTR in branch
Luke Kenneth Casson Leighton [Sun, 17 May 2020 18:18:57 +0000 (19:18 +0100)]
test 32/64 bit mode CTR in branch

3 years agoadd comments from spec on branch
Luke Kenneth Casson Leighton [Sun, 17 May 2020 18:12:04 +0000 (19:12 +0100)]
add comments from spec on branch

3 years agoadd instruction to assert statement so if there is an error the failed
Luke Kenneth Casson Leighton [Sun, 17 May 2020 17:47:21 +0000 (18:47 +0100)]
add instruction to assert statement so if there is an error the failed
insn is displayed

3 years agorename nia_out to nia, clarify with variables in main_stage branch
Luke Kenneth Casson Leighton [Sun, 17 May 2020 17:45:09 +0000 (18:45 +0100)]
rename nia_out to nia, clarify with variables in main_stage branch

3 years agorename nia_out to just nia, we know it is an output
Luke Kenneth Casson Leighton [Sun, 17 May 2020 17:43:55 +0000 (18:43 +0100)]
rename nia_out to just nia, we know it is an output

3 years agoadd convenience name to branch main stage and branch output data
Luke Kenneth Casson Leighton [Sun, 17 May 2020 17:41:55 +0000 (18:41 +0100)]
add convenience name to branch main stage and branch output data

3 years agobit of code-munging in branch main stage
Luke Kenneth Casson Leighton [Sun, 17 May 2020 17:36:09 +0000 (18:36 +0100)]
bit of code-munging in branch main stage

3 years agofield cleanup
Luke Kenneth Casson Leighton [Sun, 17 May 2020 17:26:09 +0000 (18:26 +0100)]
field cleanup

3 years agowhitespace cleanup
Luke Kenneth Casson Leighton [Sun, 17 May 2020 17:17:24 +0000 (18:17 +0100)]
whitespace cleanup

3 years agosimplify field access
Luke Kenneth Casson Leighton [Sun, 17 May 2020 17:10:58 +0000 (18:10 +0100)]
simplify field access

3 years agoAdd incomplete proof_bperm.py with comments on how to finish the proof
Michael Nolan [Sun, 17 May 2020 17:12:32 +0000 (13:12 -0400)]
Add incomplete proof_bperm.py with comments on how to finish the proof

3 years agoMove perm inside Bpermd as it's not an input or output
Michael Nolan [Sun, 17 May 2020 16:50:02 +0000 (12:50 -0400)]
Move perm inside Bpermd as it's not an input or output

3 years agocode-shuffle
Luke Kenneth Casson Leighton [Sun, 17 May 2020 16:33:40 +0000 (17:33 +0100)]
code-shuffle

3 years agorealised that the instruction fields have a namedtuple thing going on
Luke Kenneth Casson Leighton [Sun, 17 May 2020 16:24:44 +0000 (17:24 +0100)]
realised that the instruction fields have a namedtuple thing going on

3 years agouse slightly more elegant way to access CR lookup table
Luke Kenneth Casson Leighton [Sun, 17 May 2020 16:15:58 +0000 (17:15 +0100)]
use slightly more elegant way to access CR lookup table

3 years agouse Cat(*list) on CR mask
Luke Kenneth Casson Leighton [Sun, 17 May 2020 16:08:22 +0000 (17:08 +0100)]
use Cat(*list) on CR mask

3 years agotry lbzu
Luke Kenneth Casson Leighton [Sun, 17 May 2020 14:21:06 +0000 (15:21 +0100)]
try lbzu

3 years agoremove condition stopping wr_reset from firing on LD
Luke Kenneth Casson Leighton [Sun, 17 May 2020 13:00:46 +0000 (14:00 +0100)]
remove condition stopping wr_reset from firing on LD

3 years agoswitch off LD/ST address when load activates
Luke Kenneth Casson Leighton [Sun, 17 May 2020 12:43:03 +0000 (13:43 +0100)]
switch off LD/ST address when load activates

3 years agofix address latching however LD is not working
Luke Kenneth Casson Leighton [Sun, 17 May 2020 11:02:19 +0000 (12:02 +0100)]
fix address latching however LD is not working

3 years agokeep address held sustained whilst valid
Luke Kenneth Casson Leighton [Sun, 17 May 2020 10:50:36 +0000 (11:50 +0100)]
keep address held sustained whilst valid

3 years agolatest not-quite-working LDSTCompUnit experimentation
Luke Kenneth Casson Leighton [Sun, 17 May 2020 10:04:11 +0000 (11:04 +0100)]
latest not-quite-working LDSTCompUnit experimentation

3 years agoupdate comments on condition register
Luke Kenneth Casson Leighton [Sun, 17 May 2020 09:56:28 +0000 (10:56 +0100)]
update comments on condition register

3 years agoRemoved from bperm.py extraneous creation of temporary Signal()
colepoirier [Sat, 16 May 2020 22:15:57 +0000 (15:15 -0700)]
Removed from bperm.py extraneous creation of temporary Signal()

3 years agoMade creation of Array of Signals in bperm.py more concise, changed
colepoirier [Sat, 16 May 2020 22:02:36 +0000 (15:02 -0700)]
Made creation of Array of Signals in bperm.py more concise, changed
string formatting to use python3 f"string{x}"

3 years agoAdd ilang output to test_maskgen.py
Michael Nolan [Sat, 16 May 2020 21:50:46 +0000 (17:50 -0400)]
Add ilang output to test_maskgen.py

3 years agowhitespace cleanup to PEP8-ish standards
Luke Kenneth Casson Leighton [Sat, 16 May 2020 21:44:23 +0000 (22:44 +0100)]
whitespace cleanup to PEP8-ish standards

3 years agoImplemented luke's TODOs by adding 'reset_less' to all Signal()'s,
colepoirier [Sat, 16 May 2020 21:08:48 +0000 (14:08 -0700)]
Implemented luke's TODOs by adding 'reset_less' to all Signal()'s,
assigning index to a Signal() instead of a python AST fragment, fixed
formatting

3 years agocomments / code-morph
Luke Kenneth Casson Leighton [Sat, 16 May 2020 20:04:04 +0000 (21:04 +0100)]
comments / code-morph

3 years agoImplement mfcr and mfocrf
Michael Nolan [Sat, 16 May 2020 18:36:39 +0000 (14:36 -0400)]
Implement mfcr and mfocrf

3 years agoadd debug info of what instruction was executed and Asserted
Luke Kenneth Casson Leighton [Sat, 16 May 2020 18:26:25 +0000 (19:26 +0100)]
add debug info of what instruction was executed and Asserted

3 years agocode-munge on CR pipeline
Luke Kenneth Casson Leighton [Sat, 16 May 2020 18:17:13 +0000 (19:17 +0100)]
code-munge on CR pipeline

3 years agoImplement mtocrf (which isn't different from mtcrf?)
Michael Nolan [Sat, 16 May 2020 18:05:55 +0000 (14:05 -0400)]
Implement mtocrf (which isn't different from mtcrf?)

3 years agoRemove noisy print statements in selectable_int.py
Michael Nolan [Sat, 16 May 2020 18:05:38 +0000 (14:05 -0400)]
Remove noisy print statements in selectable_int.py

3 years agoAdd sprset.patch
Michael Nolan [Sat, 16 May 2020 18:05:03 +0000 (14:05 -0400)]
Add sprset.patch

3 years agoAdd condition.patch
Michael Nolan [Sat, 16 May 2020 18:01:53 +0000 (14:01 -0400)]
Add condition.patch

3 years agoMinor cleanup
Michael Nolan [Sat, 16 May 2020 17:35:22 +0000 (13:35 -0400)]
Minor cleanup

3 years agoImplement mtcrf
Michael Nolan [Sat, 16 May 2020 17:34:16 +0000 (13:34 -0400)]
Implement mtcrf

3 years agoAdd comments on what CROP (crand, cror) do and how they work
Michael Nolan [Sat, 16 May 2020 17:07:35 +0000 (13:07 -0400)]
Add comments on what CROP (crand, cror) do and how they work

3 years agoAdd ports to ilang for test_caller.py
Michael Nolan [Sat, 16 May 2020 15:30:52 +0000 (11:30 -0400)]
Add ports to ilang for test_caller.py

3 years agoFix bug in branch's pipe_data
Michael Nolan [Sat, 16 May 2020 15:20:40 +0000 (11:20 -0400)]
Fix bug in branch's pipe_data

3 years agoConsolidate every pipe_data to use alu's integer data
Michael Nolan [Sat, 16 May 2020 15:19:21 +0000 (11:19 -0400)]
Consolidate every pipe_data to use alu's integer data

3 years agoOP_CROP fully working
Michael Nolan [Sat, 16 May 2020 14:02:48 +0000 (10:02 -0400)]
OP_CROP fully working

3 years agoUpdate to latest wiki version - fix bug with crxor
Michael Nolan [Sat, 16 May 2020 14:02:27 +0000 (10:02 -0400)]
Update to latest wiki version - fix bug with crxor

3 years agoImplement mcrf in CR FU
Michael Nolan [Sat, 16 May 2020 13:38:02 +0000 (09:38 -0400)]
Implement mcrf in CR FU

3 years agoGet working mcrf in caller.py
Michael Nolan [Sat, 16 May 2020 13:37:39 +0000 (09:37 -0400)]
Get working mcrf in caller.py

3 years agoUpdate to latest wiki version - move crand to own opcode
Michael Nolan [Sat, 16 May 2020 13:16:34 +0000 (09:16 -0400)]
Update to latest wiki version - move crand to own opcode

3 years agoupdate with TODO comments
Luke Kenneth Casson Leighton [Sat, 16 May 2020 04:48:20 +0000 (05:48 +0100)]
update with TODO comments

3 years agono need to else continue
Luke Kenneth Casson Leighton [Sat, 16 May 2020 04:23:36 +0000 (05:23 +0100)]
no need to else continue

3 years agomissing m.d.comb +=
Luke Kenneth Casson Leighton [Sat, 16 May 2020 04:20:26 +0000 (05:20 +0100)]
missing m.d.comb +=

3 years agoAdded working bperm.py, but is too gate heavy, as well as dummy unit
colepoirier [Sat, 16 May 2020 01:12:53 +0000 (18:12 -0700)]
Added working bperm.py, but is too gate heavy, as well as dummy unit
test file to be implemented tomorrow

3 years agoadd comment in branch test_pipe_caller.py about decoding needed of op
Luke Kenneth Casson Leighton [Sat, 16 May 2020 01:10:30 +0000 (02:10 +0100)]
add comment in branch test_pipe_caller.py about decoding needed of op
to set spr1/2/3 correctly

3 years agorename branch input data regs to spr1/2/3 according to FU Operand table
Luke Kenneth Casson Leighton [Sat, 16 May 2020 00:13:02 +0000 (01:13 +0100)]
rename branch input data regs to spr1/2/3 according to FU Operand table

3 years agoMake opcode for crand and friends
Michael Nolan [Fri, 15 May 2020 23:15:35 +0000 (19:15 -0400)]
Make opcode for crand and friends

3 years agoBegin adding CR pipeline
Michael Nolan [Fri, 15 May 2020 23:04:06 +0000 (19:04 -0400)]
Begin adding CR pipeline

3 years agoUpdate to latest wiki version - Add CR FU
Michael Nolan [Fri, 15 May 2020 23:02:48 +0000 (19:02 -0400)]
Update to latest wiki version - Add CR FU

3 years agoAdd CR function unit
Michael Nolan [Fri, 15 May 2020 22:59:51 +0000 (18:59 -0400)]
Add CR function unit

3 years agoUpdate wiki to latest version.
Michael Nolan [Fri, 15 May 2020 22:56:38 +0000 (18:56 -0400)]
Update wiki to latest version.

3 years agoFix bug introduced when I made it possible to set the initial state of CR
Michael Nolan [Fri, 15 May 2020 22:55:55 +0000 (18:55 -0400)]
Fix bug introduced when I made it possible to set the initial state of CR

3 years agocorrect branch pipe spr allocation table
Luke Kenneth Casson Leighton [Fri, 15 May 2020 22:36:38 +0000 (23:36 +0100)]
correct branch pipe spr allocation table

3 years agoupdate reg allocation table for branch
Luke Kenneth Casson Leighton [Fri, 15 May 2020 21:08:15 +0000 (22:08 +0100)]
update reg allocation table for branch

3 years agoadd reg allocation table
Luke Kenneth Casson Leighton [Fri, 15 May 2020 21:00:50 +0000 (22:00 +0100)]
add reg allocation table

3 years agoadd system calls
Luke Kenneth Casson Leighton [Fri, 15 May 2020 20:53:57 +0000 (21:53 +0100)]
add system calls

3 years agoadd reg allocation requirements
Luke Kenneth Casson Leighton [Fri, 15 May 2020 20:48:43 +0000 (21:48 +0100)]
add reg allocation requirements

3 years agoImplement op_bcreg
Michael Nolan [Fri, 15 May 2020 20:12:16 +0000 (16:12 -0400)]
Implement op_bcreg

3 years agoRemove TAR input, create fixed input for CTR and input for other
Michael Nolan [Fri, 15 May 2020 20:08:00 +0000 (16:08 -0400)]
Remove TAR input, create fixed input for CTR and input for other

Other SPR input will be used for CTR, LR, or TAR for op_bcreg

3 years agore-enable assert for correct function unit
Michael Nolan [Fri, 15 May 2020 20:03:37 +0000 (16:03 -0400)]
re-enable assert for correct function unit

3 years agoUpdate to latest wiki version - add branch FU to branch instructions
Michael Nolan [Fri, 15 May 2020 20:03:11 +0000 (16:03 -0400)]
Update to latest wiki version - add branch FU to branch instructions

3 years agoFix a couple of bugs with conditional branch with counter
Michael Nolan [Fri, 15 May 2020 20:01:17 +0000 (16:01 -0400)]
Fix a couple of bugs with conditional branch with counter

3 years agoImplement ctr decrementing
Michael Nolan [Fri, 15 May 2020 19:36:35 +0000 (15:36 -0400)]
Implement ctr decrementing

3 years agoadd TAR and comment BranchInputData fields
Luke Kenneth Casson Leighton [Fri, 15 May 2020 19:49:07 +0000 (20:49 +0100)]
add TAR and comment BranchInputData fields

3 years agowhoops spr copied from i.lr not i.spr
Luke Kenneth Casson Leighton [Fri, 15 May 2020 19:46:53 +0000 (20:46 +0100)]
whoops spr copied from i.lr not i.spr

3 years agoadd TODO
Luke Kenneth Casson Leighton [Fri, 15 May 2020 19:40:15 +0000 (20:40 +0100)]
add TODO

3 years agonope - remove cia from CompBROpSubset
Luke Kenneth Casson Leighton [Fri, 15 May 2020 19:36:33 +0000 (20:36 +0100)]
nope - remove cia from CompBROpSubset

3 years agoadd cia to CompBROpSubset, remove data_len
Luke Kenneth Casson Leighton [Fri, 15 May 2020 19:33:15 +0000 (20:33 +0100)]
add cia to CompBROpSubset, remove data_len

3 years agomore minor shuffle
Luke Kenneth Casson Leighton [Fri, 15 May 2020 19:27:35 +0000 (20:27 +0100)]
more minor shuffle

3 years agobit more major shuffle
Luke Kenneth Casson Leighton [Fri, 15 May 2020 19:25:05 +0000 (20:25 +0100)]
bit more major shuffle

3 years agouse small br_ext function to morph branch address
Luke Kenneth Casson Leighton [Fri, 15 May 2020 19:19:03 +0000 (20:19 +0100)]
use small br_ext function to morph branch address

3 years agomissed some variables in the cleanup
Luke Kenneth Casson Leighton [Fri, 15 May 2020 19:15:06 +0000 (20:15 +0100)]
missed some variables in the cleanup

3 years agominor cleanup
Luke Kenneth Casson Leighton [Fri, 15 May 2020 19:13:55 +0000 (20:13 +0100)]
minor cleanup

3 years agoOops, looks like I forgot to push the wiki update
Michael Nolan [Fri, 15 May 2020 19:06:34 +0000 (15:06 -0400)]
Oops, looks like I forgot to push the wiki update

3 years agoBegin implementing conditional branch
Michael Nolan [Fri, 15 May 2020 19:04:22 +0000 (15:04 -0400)]
Begin implementing conditional branch

3 years agoflip over to CompBROpSubset
Luke Kenneth Casson Leighton [Fri, 15 May 2020 19:04:47 +0000 (20:04 +0100)]
flip over to CompBROpSubset

3 years agoadd branch input record
Luke Kenneth Casson Leighton [Fri, 15 May 2020 18:58:47 +0000 (19:58 +0100)]
add branch input record

3 years agoAdd ability to specify initial CR state
Michael Nolan [Fri, 15 May 2020 18:51:00 +0000 (14:51 -0400)]
Add ability to specify initial CR state

3 years agoImplement signed branch immediates
Michael Nolan [Fri, 15 May 2020 18:38:52 +0000 (14:38 -0400)]
Implement signed branch immediates

3 years agoChange nia input to cia, implement linking
Michael Nolan [Fri, 15 May 2020 18:33:42 +0000 (14:33 -0400)]
Change nia input to cia, implement linking

3 years agoSimplify main_stage.py
Michael Nolan [Fri, 15 May 2020 18:25:24 +0000 (14:25 -0400)]
Simplify main_stage.py

3 years agoFix broken test_ba
Michael Nolan [Fri, 15 May 2020 18:25:17 +0000 (14:25 -0400)]
Fix broken test_ba

3 years agoImplement relative branches, add explicit NIA input to pipe_data
Michael Nolan [Fri, 15 May 2020 18:20:14 +0000 (14:20 -0400)]
Implement relative branches, add explicit NIA input to pipe_data

3 years agoadd branch to absolute address
Michael Nolan [Fri, 15 May 2020 18:01:12 +0000 (14:01 -0400)]
add branch to absolute address

3 years agoAdd rudimentary branch unit test bench
Michael Nolan [Fri, 15 May 2020 17:40:08 +0000 (13:40 -0400)]
Add rudimentary branch unit test bench

3 years agoUpdate to latest wiki - add branch unit for branch instructions
Michael Nolan [Fri, 15 May 2020 17:39:41 +0000 (13:39 -0400)]
Update to latest wiki - add branch unit for branch instructions

3 years agoImplement OP_CMPEQB
Michael Nolan [Fri, 15 May 2020 16:59:16 +0000 (12:59 -0400)]
Implement OP_CMPEQB