ieee754fpu.git
4 years agoadd fpdiv specialcases
Luke Kenneth Casson Leighton [Fri, 28 Jun 2019 05:17:07 +0000 (06:17 +0100)]
add fpdiv specialcases

4 years agomove comment
Luke Kenneth Casson Leighton [Sun, 16 Jun 2019 13:41:00 +0000 (14:41 +0100)]
move comment

4 years agogot fpdiv FSM operational
Luke Kenneth Casson Leighton [Sun, 16 Jun 2019 12:52:05 +0000 (13:52 +0100)]
got fpdiv FSM operational

4 years agobug, 0xe225 0x8181 0x249f returns 0x249e
Luke Kenneth Casson Leighton [Sun, 16 Jun 2019 12:41:43 +0000 (13:41 +0100)]
bug, 0xe225 0x8181 0x249f returns 0x249e

4 years agofpmul specialcase, nan x nan returns 0 nan
Luke Kenneth Casson Leighton [Sun, 16 Jun 2019 12:18:28 +0000 (13:18 +0100)]
fpmul specialcase, nan x nan returns 0 nan

4 years agoget fp mul pipe working using new FPNumBaseRecord
Luke Kenneth Casson Leighton [Sun, 16 Jun 2019 12:01:24 +0000 (13:01 +0100)]
get fp mul pipe working using new FPNumBaseRecord

4 years agomake overflow roundz a property (Overflow no longer a module)
Luke Kenneth Casson Leighton [Sun, 16 Jun 2019 11:51:48 +0000 (12:51 +0100)]
make overflow roundz a property (Overflow no longer a module)

4 years agofix up FPNumBase by creating a Record class (not derived from Elaboratable)
Luke Kenneth Casson Leighton [Sun, 16 Jun 2019 11:46:58 +0000 (12:46 +0100)]
fix up FPNumBase by creating a Record class (not derived from Elaboratable)
that is passed in where it is needed

4 years agoreduce max count from 1000 to 10
Luke Kenneth Casson Leighton [Sun, 16 Jun 2019 07:27:26 +0000 (08:27 +0100)]
reduce max count from 1000 to 10

4 years agoadd in missing modules
Luke Kenneth Casson Leighton [Sun, 16 Jun 2019 06:43:04 +0000 (07:43 +0100)]
add in missing modules

4 years agoswitch off specallocate in fpadd statemachine
Luke Kenneth Casson Leighton [Sun, 16 Jun 2019 06:34:52 +0000 (07:34 +0100)]
switch off specallocate in fpadd statemachine

4 years agoadd elaboratables
Luke Kenneth Casson Leighton [Sun, 16 Jun 2019 06:10:31 +0000 (07:10 +0100)]
add elaboratables

4 years agocreate FPNumBaseRecord
Luke Kenneth Casson Leighton [Sun, 16 Jun 2019 06:07:32 +0000 (07:07 +0100)]
create FPNumBaseRecord

4 years agowhitespace
Luke Kenneth Casson Leighton [Sun, 16 Jun 2019 05:55:03 +0000 (06:55 +0100)]
whitespace

4 years agoelaboratable cases
Luke Kenneth Casson Leighton [Sun, 16 Jun 2019 05:53:03 +0000 (06:53 +0100)]
elaboratable cases

4 years agotemporarily disabled sfpy dependency for now
Luke Kenneth Casson Leighton [Sat, 8 Jun 2019 05:53:24 +0000 (06:53 +0100)]
temporarily disabled sfpy dependency for now

4 years agouse PYTHON3 ?= "python3" instead of hard-coded python3 cmd
Luke Kenneth Casson Leighton [Sat, 8 Jun 2019 05:52:29 +0000 (06:52 +0100)]
use PYTHON3 ?= "python3" instead of hard-coded python3 cmd

4 years agoallow SRLatch to be multibit
Luke Kenneth Casson Leighton [Wed, 29 May 2019 20:35:37 +0000 (21:35 +0100)]
allow SRLatch to be multibit

4 years agouse boolean version of SRLatch, suitable for multi-bit now
Luke Kenneth Casson Leighton [Wed, 29 May 2019 20:33:17 +0000 (21:33 +0100)]
use boolean version of SRLatch, suitable for multi-bit now

4 years agomake qlq output q | q_int
Luke Kenneth Casson Leighton [Fri, 24 May 2019 16:51:26 +0000 (17:51 +0100)]
make qlq output q | q_int

4 years agoput internal state out as part of latch api
Luke Kenneth Casson Leighton [Fri, 24 May 2019 16:50:18 +0000 (17:50 +0100)]
put internal state out as part of latch api

4 years agoadd comments on convenience names
Luke Kenneth Casson Leighton [Sun, 12 May 2019 04:29:40 +0000 (05:29 +0100)]
add comments on convenience names

4 years agoadd helper routine for creating latched registers
Luke Kenneth Casson Leighton [Sat, 11 May 2019 04:16:06 +0000 (05:16 +0100)]
add helper routine for creating latched registers

4 years agoadd a jk latch (as a comment), TODO
Luke Kenneth Casson Leighton [Sat, 11 May 2019 04:12:38 +0000 (05:12 +0100)]
add a jk latch (as a comment), TODO

4 years agoFix exponent offsets
Aleksandar Kostovic [Wed, 8 May 2019 15:11:48 +0000 (17:11 +0200)]
Fix exponent offsets

4 years agoRemoved the errors made in previous commit
Aleksandar Kostovic [Wed, 8 May 2019 14:38:32 +0000 (16:38 +0200)]
Removed the errors made in previous commit

4 years agocorrect name on RecordObject
Luke Kenneth Casson Leighton [Wed, 8 May 2019 01:13:50 +0000 (02:13 +0100)]
correct name on RecordObject

4 years agoUpdated Inf and NaN parts of normalise function
Aleksandar Kostovic [Tue, 7 May 2019 13:15:03 +0000 (15:15 +0200)]
Updated Inf and NaN parts  of normalise function

4 years agomoving scoreboard code to soc repo
Luke Kenneth Casson Leighton [Tue, 7 May 2019 04:44:16 +0000 (05:44 +0100)]
moving scoreboard code to soc repo

4 years agoadd combined int/fp issue unit
Luke Kenneth Casson Leighton [Tue, 7 May 2019 02:53:47 +0000 (03:53 +0100)]
add combined int/fp issue unit

4 years agocorrections to ld-st cell and sparse-matrix
Luke Kenneth Casson Leighton [Tue, 7 May 2019 02:42:24 +0000 (03:42 +0100)]
corrections to ld-st cell and sparse-matrix

4 years agoadd some comments to fsqrt
Luke Kenneth Casson Leighton [Tue, 7 May 2019 00:24:45 +0000 (01:24 +0100)]
add some comments to fsqrt

4 years agoadd issue unit
Luke Kenneth Casson Leighton [Mon, 6 May 2019 14:06:39 +0000 (15:06 +0100)]
add issue unit

4 years agoAdded secial cases for normalization function
Aleksandar Kostovic [Mon, 6 May 2019 13:47:01 +0000 (15:47 +0200)]
Added secial cases for normalization function

4 years agogeneralise the function unit module, create some derivative classes
Luke Kenneth Casson Leighton [Mon, 6 May 2019 12:44:46 +0000 (13:44 +0100)]
generalise the function unit module, create some derivative classes
* IntFnUnit
* FPFnUnit
* LDFnUnit
* STFnUnit

4 years agoprovide array-selector on inputs
Luke Kenneth Casson Leighton [Mon, 6 May 2019 10:02:21 +0000 (11:02 +0100)]
provide array-selector on inputs

4 years agoupdate notes, dest/src1/src2 are BINARY encoded
Luke Kenneth Casson Leighton [Mon, 6 May 2019 08:14:21 +0000 (09:14 +0100)]
update notes, dest/src1/src2 are BINARY encoded

4 years agoadd global pending collator
Luke Kenneth Casson Leighton [Mon, 6 May 2019 07:52:01 +0000 (08:52 +0100)]
add global pending collator

4 years agouse shadow submodule instead of in fn unit
Luke Kenneth Casson Leighton [Mon, 6 May 2019 06:38:11 +0000 (07:38 +0100)]
use shadow submodule instead of in fn unit

4 years agowhoops duplicate signal
Luke Kenneth Casson Leighton [Mon, 6 May 2019 06:26:53 +0000 (07:26 +0100)]
whoops duplicate signal

4 years agoadd shadow_fn.py, split out from function unit
Luke Kenneth Casson Leighton [Mon, 6 May 2019 06:23:32 +0000 (07:23 +0100)]
add shadow_fn.py, split out from function unit

4 years agoadd comments
Luke Kenneth Casson Leighton [Mon, 6 May 2019 06:23:18 +0000 (07:23 +0100)]
add comments

4 years agoLD/ST latches are async (clockless)
Luke Kenneth Casson Leighton [Mon, 6 May 2019 04:12:09 +0000 (05:12 +0100)]
LD/ST latches are async (clockless)

4 years agoupdate docstrings
Luke Kenneth Casson Leighton [Mon, 6 May 2019 04:10:18 +0000 (05:10 +0100)]
update docstrings

4 years agoput OR-accumulator in LD/ST dep cell for ld-hold-st/st-hold-load
Luke Kenneth Casson Leighton [Mon, 6 May 2019 04:08:12 +0000 (05:08 +0100)]
put OR-accumulator in LD/ST dep cell for ld-hold-st/st-hold-load

4 years agoadd LD/ST Matrix (actually sparse matrix, aka straight 1D array)
Luke Kenneth Casson Leighton [Mon, 6 May 2019 03:49:53 +0000 (04:49 +0100)]
add LD/ST Matrix (actually sparse matrix, aka straight 1D array)

4 years agoadd LD/ST dependency cell
Luke Kenneth Casson Leighton [Mon, 6 May 2019 03:13:06 +0000 (04:13 +0100)]
add LD/ST dependency cell

4 years agoadd comment back in about load/store shadow-hold
Luke Kenneth Casson Leighton [Mon, 6 May 2019 02:42:16 +0000 (03:42 +0100)]
add comment back in about load/store shadow-hold

4 years agoslightly simplify SRlatch
Luke Kenneth Casson Leighton [Sun, 5 May 2019 20:14:26 +0000 (21:14 +0100)]
slightly simplify SRlatch

4 years agoadd shadow capability to function unit
Luke Kenneth Casson Leighton [Sun, 5 May 2019 14:43:03 +0000 (15:43 +0100)]
add shadow capability to function unit

4 years agoadd SRlatch async mode
Luke Kenneth Casson Leighton [Sun, 5 May 2019 13:40:47 +0000 (14:40 +0100)]
add SRlatch async mode

4 years agoadd group picker
Luke Kenneth Casson Leighton [Sun, 5 May 2019 04:35:49 +0000 (05:35 +0100)]
add group picker

4 years agoadd notes
Luke Kenneth Casson Leighton [Sun, 5 May 2019 04:14:20 +0000 (05:14 +0100)]
add notes

4 years agocorrect page num and section num
Luke Kenneth Casson Leighton [Sun, 5 May 2019 03:09:03 +0000 (04:09 +0100)]
correct page num and section num

4 years agoadd integer function unit
Luke Kenneth Casson Leighton [Sun, 5 May 2019 02:28:20 +0000 (03:28 +0100)]
add integer function unit

4 years agominor reorg of latch
Luke Kenneth Casson Leighton [Sat, 4 May 2019 16:48:07 +0000 (17:48 +0100)]
minor reorg of latch

4 years agoadd FU-FU Dependency Matrix
Luke Kenneth Casson Leighton [Sat, 4 May 2019 07:28:58 +0000 (08:28 +0100)]
add FU-FU Dependency Matrix

4 years agoadd function unit dependency cell
Luke Kenneth Casson Leighton [Sat, 4 May 2019 06:35:15 +0000 (07:35 +0100)]
add function unit dependency cell

4 years agoadd function unit picker vector
Luke Kenneth Casson Leighton [Sat, 4 May 2019 06:28:29 +0000 (07:28 +0100)]
add function unit picker vector

4 years agodependency matrix (Reg to FU)
Luke Kenneth Casson Leighton [Sat, 4 May 2019 04:43:20 +0000 (05:43 +0100)]
dependency matrix (Reg to FU)

4 years agoadd function unit read/write pending
Luke Kenneth Casson Leighton [Sat, 4 May 2019 01:18:11 +0000 (02:18 +0100)]
add function unit read/write pending

4 years agoadd regfile selection
Luke Kenneth Casson Leighton [Sat, 4 May 2019 00:28:29 +0000 (01:28 +0100)]
add regfile selection

4 years agoadd dependence cell scoreboard from 11.4.7
Luke Kenneth Casson Leighton [Fri, 3 May 2019 23:34:35 +0000 (00:34 +0100)]
add dependence cell scoreboard from 11.4.7

4 years agoadd (synchronous) latch
Luke Kenneth Casson Leighton [Fri, 3 May 2019 22:57:08 +0000 (23:57 +0100)]
add (synchronous) latch

4 years agofix up fadd state machine
Luke Kenneth Casson Leighton [Fri, 3 May 2019 14:07:13 +0000 (15:07 +0100)]
fix up fadd state machine

4 years agoadd test on fp16/32/64 for mul and div
Luke Kenneth Casson Leighton [Fri, 3 May 2019 06:41:37 +0000 (07:41 +0100)]
add test on fp16/32/64 for mul and div

4 years agosplit out InputTest code into separate fpmux.py
Luke Kenneth Casson Leighton [Fri, 3 May 2019 06:36:28 +0000 (07:36 +0100)]
split out InputTest code into separate fpmux.py

4 years agogot fpmul working (potential bug in softfloat NaN handling)
Luke Kenneth Casson Leighton [Fri, 3 May 2019 05:02:39 +0000 (06:02 +0100)]
got fpmul working (potential bug in softfloat NaN handling)

4 years agofix multiply bit-width
Luke Kenneth Casson Leighton [Fri, 3 May 2019 03:47:45 +0000 (04:47 +0100)]
fix multiply bit-width

4 years agodebug fpmul pipeline
Luke Kenneth Casson Leighton [Fri, 3 May 2019 02:31:06 +0000 (03:31 +0100)]
debug fpmul pipeline

4 years agoadd mul pipeline based on add
Luke Kenneth Casson Leighton [Fri, 3 May 2019 02:26:58 +0000 (03:26 +0100)]
add mul pipeline based on add

4 years agoadd mul1 stage based on add1
Luke Kenneth Casson Leighton [Fri, 3 May 2019 02:19:53 +0000 (03:19 +0100)]
add mul1 stage based on add1

4 years agoadd mul0 based on add0
Luke Kenneth Casson Leighton [Fri, 3 May 2019 02:13:33 +0000 (03:13 +0100)]
add mul0 based on add0

4 years agoadd mul pipeline version of specialcases
Luke Kenneth Casson Leighton [Fri, 3 May 2019 02:06:01 +0000 (03:06 +0100)]
add mul pipeline version of specialcases

4 years agoget test_fpadd_pipe.py working
Luke Kenneth Casson Leighton [Thu, 2 May 2019 23:43:30 +0000 (00:43 +0100)]
get test_fpadd_pipe.py working

4 years agodocument concurrentunit
Luke Kenneth Casson Leighton [Thu, 2 May 2019 23:35:17 +0000 (00:35 +0100)]
document concurrentunit

4 years agoget outmux test working with nose3
Luke Kenneth Casson Leighton [Thu, 2 May 2019 23:29:21 +0000 (00:29 +0100)]
get outmux test working with nose3

4 years agoget prioritymux test working with nose3
Luke Kenneth Casson Leighton [Thu, 2 May 2019 23:28:23 +0000 (00:28 +0100)]
get prioritymux test working with nose3

4 years agoget inout mux test running on nose3
Luke Kenneth Casson Leighton [Thu, 2 May 2019 23:26:31 +0000 (00:26 +0100)]
get inout mux test running on nose3

4 years agoadd missing submodules
Luke Kenneth Casson Leighton [Thu, 2 May 2019 22:44:19 +0000 (23:44 +0100)]
add missing submodules

4 years agoreduce number of loops in nosetest for test_add
Luke Kenneth Casson Leighton [Thu, 2 May 2019 22:37:59 +0000 (23:37 +0100)]
reduce number of loops in nosetest for test_add

4 years agowhitespace
Luke Kenneth Casson Leighton [Thu, 2 May 2019 22:35:24 +0000 (23:35 +0100)]
whitespace

4 years agoreplace run_test with run_fpunit to avoid nosetest auto-name-detect
Luke Kenneth Casson Leighton [Thu, 2 May 2019 22:32:46 +0000 (23:32 +0100)]
replace run_test with run_fpunit to avoid nosetest auto-name-detect

4 years agopass in count and num loops to unit test to make it shorter
Luke Kenneth Casson Leighton [Thu, 2 May 2019 22:31:32 +0000 (23:31 +0100)]
pass in count and num loops to unit test to make it shorter

4 years agofix imports in fpdiv
Luke Kenneth Casson Leighton [Thu, 2 May 2019 17:44:01 +0000 (18:44 +0100)]
fix imports in fpdiv

4 years agoget test_mul.py running
Luke Kenneth Casson Leighton [Thu, 2 May 2019 17:43:00 +0000 (18:43 +0100)]
get test_mul.py running

4 years agoget test_mul.py operational
Luke Kenneth Casson Leighton [Thu, 2 May 2019 17:22:55 +0000 (18:22 +0100)]
get test_mul.py operational

4 years agobreak test_buf_pipe.py down into individual tests
Luke Kenneth Casson Leighton [Thu, 2 May 2019 17:13:35 +0000 (18:13 +0100)]
break test_buf_pipe.py down into individual tests

4 years agomove test_fsm_experiment.py
Luke Kenneth Casson Leighton [Thu, 2 May 2019 14:48:28 +0000 (15:48 +0100)]
move test_fsm_experiment.py

4 years agorelative imports
Luke Kenneth Casson Leighton [Thu, 2 May 2019 14:44:24 +0000 (15:44 +0100)]
relative imports

4 years agoadd __init__.py to nmutil/test
Luke Kenneth Casson Leighton [Thu, 2 May 2019 14:43:09 +0000 (15:43 +0100)]
add __init__.py to nmutil/test

4 years agotidy imports
Luke Kenneth Casson Leighton [Thu, 2 May 2019 14:41:44 +0000 (15:41 +0100)]
tidy imports

4 years agoget test_fpadd_pipe.py working
Luke Kenneth Casson Leighton [Thu, 2 May 2019 14:37:42 +0000 (15:37 +0100)]
get test_fpadd_pipe.py working

4 years agoget test_add working after reorg
Luke Kenneth Casson Leighton [Thu, 2 May 2019 14:36:48 +0000 (15:36 +0100)]
get test_add working after reorg

4 years agomore code-shuffle
Luke Kenneth Casson Leighton [Thu, 2 May 2019 14:34:30 +0000 (15:34 +0100)]
more code-shuffle

4 years agomove fpbase.py
Luke Kenneth Casson Leighton [Thu, 2 May 2019 14:15:43 +0000 (15:15 +0100)]
move fpbase.py

4 years agomove common unit test code
Luke Kenneth Casson Leighton [Thu, 2 May 2019 14:13:00 +0000 (15:13 +0100)]
move common unit test code

4 years agoadd tools.py from nmigen (imports fixed)
Luke Kenneth Casson Leighton [Thu, 2 May 2019 14:07:26 +0000 (15:07 +0100)]
add tools.py from nmigen (imports fixed)

4 years agomove fsqrt.py to own subdir
Luke Kenneth Casson Leighton [Thu, 2 May 2019 13:26:42 +0000 (14:26 +0100)]
move fsqrt.py to own subdir

4 years agorename testbench to tbench, avoid nose3 issue
Luke Kenneth Casson Leighton [Thu, 2 May 2019 13:17:56 +0000 (14:17 +0100)]
rename testbench to tbench, avoid nose3 issue