ieee754fpu.git
5 years agotidyup a bit
Luke Kenneth Casson Leighton [Tue, 23 Jul 2019 10:00:15 +0000 (11:00 +0100)]
tidyup a bit

5 years agoreduce n_comb_stages for fpdiv first setup
Luke Kenneth Casson Leighton [Tue, 23 Jul 2019 09:29:37 +0000 (10:29 +0100)]
reduce n_comb_stages for fpdiv first setup

5 years agoadd magic constants comment
Luke Kenneth Casson Leighton [Tue, 23 Jul 2019 09:17:08 +0000 (10:17 +0100)]
add magic constants comment

5 years agoadd some voodoo magic extra bits on the input numbers in fpdiv
Luke Kenneth Casson Leighton [Tue, 23 Jul 2019 09:15:51 +0000 (10:15 +0100)]
add some voodoo magic extra bits on the input numbers in fpdiv

5 years agoreorganise loop
Luke Kenneth Casson Leighton [Tue, 23 Jul 2019 09:05:50 +0000 (10:05 +0100)]
reorganise loop

5 years agoupdate explanatory comments
Luke Kenneth Casson Leighton [Tue, 23 Jul 2019 07:52:14 +0000 (08:52 +0100)]
update explanatory comments

5 years agoadd fpdiv 16/32 regression/coverage tests
Luke Kenneth Casson Leighton [Tue, 23 Jul 2019 07:10:55 +0000 (08:10 +0100)]
add fpdiv 16/32 regression/coverage tests

5 years agocorrections to mantissa length, FP16/32/64 DIV work (preliminary)
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 20:24:42 +0000 (21:24 +0100)]
corrections to mantissa length, FP16/32/64 DIV work (preliminary)

5 years agoFP16 DIV seems to be working
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 19:39:49 +0000 (20:39 +0100)]
FP16 DIV seems to be working

5 years agomore random experimenting
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 17:49:50 +0000 (18:49 +0100)]
more random experimenting

5 years agorandom modifications
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 16:19:37 +0000 (17:19 +0100)]
random modifications

5 years agorandom modifications got semi-correct output
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 15:55:04 +0000 (16:55 +0100)]
random modifications got semi-correct output

5 years agocontinuing experimentation
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 13:28:21 +0000 (14:28 +0100)]
continuing experimentation

5 years agoadd twin MSB alignment / denormalisation (from FPMUL)
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 12:06:42 +0000 (13:06 +0100)]
add twin MSB alignment / denormalisation (from FPMUL)

5 years agoexperimenting
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 11:19:58 +0000 (12:19 +0100)]
experimenting

5 years agoset fraction width to zero
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 10:46:40 +0000 (11:46 +0100)]
set fraction width to zero

5 years agoremove FIXMEs
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 10:35:55 +0000 (11:35 +0100)]
remove FIXMEs

5 years agoput am0 into top bits of dividend
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 10:32:54 +0000 (11:32 +0100)]
put am0 into top bits of dividend

5 years agoadd roundup to nearest radix
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 10:24:48 +0000 (11:24 +0100)]
add roundup to nearest radix

5 years agorename long parameter name to shorter n_stages
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 10:21:07 +0000 (11:21 +0100)]
rename long parameter name to shorter n_stages

5 years agoremove stage-work-reduction for now
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 10:19:13 +0000 (11:19 +0100)]
remove stage-work-reduction for now

5 years agodivide number of stages by radix and by required comb_stages?
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 10:16:58 +0000 (11:16 +0100)]
divide number of stages by radix and by required comb_stages?

5 years agofix div specialcases
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 08:50:09 +0000 (09:50 +0100)]
fix div specialcases

5 years agoconfig/setup/imports
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 08:47:36 +0000 (09:47 +0100)]
config/setup/imports

5 years agoadd missing ispec/ospecs
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 08:29:51 +0000 (09:29 +0100)]
add missing ispec/ospecs

5 years agoremove unneeded code
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 08:22:28 +0000 (09:22 +0100)]
remove unneeded code

5 years agoremove div1.py
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 08:20:42 +0000 (09:20 +0100)]
remove div1.py

5 years agowhitespace
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 08:17:39 +0000 (09:17 +0100)]
whitespace

5 years agomore imports / syntax errors
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 08:11:42 +0000 (09:11 +0100)]
more imports / syntax errors

5 years agoset up DivPipeCoreConfig back in FPDIVMuxInOut, syntax errors
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 08:06:01 +0000 (09:06 +0100)]
set up DivPipeCoreConfig back in FPDIVMuxInOut, syntax errors

5 years agosort out weirdness in FPDIVBasePipe initialisation
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 03:51:34 +0000 (04:51 +0100)]
sort out weirdness in FPDIVBasePipe initialisation

5 years agofix imports
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 03:39:03 +0000 (04:39 +0100)]
fix imports

5 years agocompare_rhs is a multi-bit value (cant use bool())
Luke Kenneth Casson Leighton [Mon, 22 Jul 2019 01:20:25 +0000 (02:20 +0100)]
compare_rhs is a multi-bit value (cant use bool())

5 years agomatch mantissa width up in div config
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 20:24:47 +0000 (21:24 +0100)]
match mantissa width up in div config

5 years agorename exponent_width to e_width, mantissa_width to m_width (shorter)
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 20:15:32 +0000 (21:15 +0100)]
rename exponent_width to e_width, mantissa_width to m_width (shorter)

5 years agocreate get_core_config function
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 20:12:12 +0000 (21:12 +0100)]
create get_core_config function

5 years agorestore important modifications that seemed to be lost
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 20:09:34 +0000 (21:09 +0100)]
restore important modifications that seemed to be lost

5 years agocompensate for div answer being in range 0.49999 to 1.99998
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 17:55:37 +0000 (18:55 +0100)]
compensate for div answer being in range 0.49999 to 1.99998

5 years agoadd comment on what mantissas represent
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 17:44:11 +0000 (18:44 +0100)]
add comment on what mantissas represent

5 years agoupdate comments
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 15:37:46 +0000 (16:37 +0100)]
update comments

5 years agoadd an absolute count on the stages
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 15:26:19 +0000 (16:26 +0100)]
add an absolute count on the stages

5 years agoadd an absolute count on the stages
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 15:25:16 +0000 (16:25 +0100)]
add an absolute count on the stages

5 years agoget DivPipeOutputData converted to mantissa + overflow format
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 15:18:04 +0000 (16:18 +0100)]
get DivPipeOutputData converted to mantissa + overflow format

5 years agostart also putting in additional DivPipe*Stage usage
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 15:09:22 +0000 (16:09 +0100)]
start also putting in additional DivPipe*Stage usage

5 years agoadd preliminary DivPipeCalculateStage and DivPipeFinalStage
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 15:03:46 +0000 (16:03 +0100)]
add preliminary DivPipeCalculateStage and DivPipeFinalStage

5 years agoadd "z" to DivPipeBaseData class so that sign and exponent can be carried
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 14:53:49 +0000 (15:53 +0100)]
add "z" to DivPipeBaseData class so that sign and exponent can be carried
(unmodified) through the pipeline

5 years agostart adding use of DivPipeInputData and DivPipeInterstageData
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 14:48:09 +0000 (15:48 +0100)]
start adding use of DivPipeInputData and DivPipeInterstageData

5 years agostore a and b in dividend and divisor_radicand
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 14:40:50 +0000 (15:40 +0100)]
store a and b in dividend and divisor_radicand

5 years agoadd bug cross-reference to #113 for FCVT unit tests
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 09:33:37 +0000 (10:33 +0100)]
add bug cross-reference to #113 for FCVT unit tests

5 years agosplit out EXP-High shifter to separate module
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 09:28:32 +0000 (10:28 +0100)]
split out EXP-High shifter to separate module

5 years agobeginnings of FP to INT convert
Luke Kenneth Casson Leighton [Sun, 21 Jul 2019 09:28:03 +0000 (10:28 +0100)]
beginnings of FP to INT convert

5 years agohighlight weirdness
Luke Kenneth Casson Leighton [Sat, 20 Jul 2019 05:45:12 +0000 (06:45 +0100)]
highlight weirdness

5 years agoweirdness on INT32->FP32 detected. ui32/i32->f32 test added
Luke Kenneth Casson Leighton [Fri, 19 Jul 2019 11:45:56 +0000 (12:45 +0100)]
weirdness on INT32->FP32 detected.  ui32/i32->f32 test added

5 years agoadd i32 to f64 conversion test
Luke Kenneth Casson Leighton [Fri, 19 Jul 2019 11:15:09 +0000 (12:15 +0100)]
add i32 to f64 conversion test

5 years agoadd an operator class for signed/unsigned
Luke Kenneth Casson Leighton [Fri, 19 Jul 2019 10:29:25 +0000 (11:29 +0100)]
add an operator class for signed/unsigned

5 years agoadd in preliminary signed int conversion
Luke Kenneth Casson Leighton [Fri, 19 Jul 2019 09:58:10 +0000 (10:58 +0100)]
add in preliminary signed int conversion

first example usage of FPPipeContext "operator"

5 years agoupdate comments
Luke Kenneth Casson Leighton [Thu, 18 Jul 2019 16:39:07 +0000 (17:39 +0100)]
update comments

5 years agoadd ui64 to f32 conversion test
Luke Kenneth Casson Leighton [Thu, 18 Jul 2019 13:45:01 +0000 (14:45 +0100)]
add ui64 to f32 conversion test

5 years agoadd larger uint32 and uint64 to fp16 conversion
Luke Kenneth Casson Leighton [Thu, 18 Jul 2019 13:30:01 +0000 (14:30 +0100)]
add larger uint32 and uint64 to fp16 conversion

5 years agochange function names
Luke Kenneth Casson Leighton [Thu, 18 Jul 2019 05:40:15 +0000 (06:40 +0100)]
change function names

5 years agoadd not-a-lot-of-sense test
Luke Kenneth Casson Leighton [Wed, 17 Jul 2019 15:38:42 +0000 (16:38 +0100)]
add not-a-lot-of-sense test

5 years agoadd first version fcvt int to fp16/32/64
Luke Kenneth Casson Leighton [Wed, 17 Jul 2019 11:09:30 +0000 (12:09 +0100)]
add first version fcvt int to fp16/32/64

5 years agoincrease test range, add loop
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 16:44:48 +0000 (17:44 +0100)]
increase test range, add loop

5 years agowhoops fpnorm out by one bit in new FPMSBHigh class
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 16:41:07 +0000 (17:41 +0100)]
whoops fpnorm out by one bit in new FPMSBHigh class

5 years agowhoops rename module
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 16:31:15 +0000 (17:31 +0100)]
whoops rename module

5 years agoadjust FPMSBHigh for use in FPNorm: make it possible to shift in the LSB
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 16:30:35 +0000 (17:30 +0100)]
adjust FPMSBHigh for use in FPNorm: make it possible to shift in the LSB

5 years agosplit out MSB-highing module
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 15:41:23 +0000 (16:41 +0100)]
split out MSB-highing module

5 years agoadd msbhigh module
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 15:32:55 +0000 (16:32 +0100)]
add msbhigh module

5 years agorelative imports are a pain
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 15:09:51 +0000 (16:09 +0100)]
relative imports are a pain

5 years agoadd comments
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 12:03:46 +0000 (13:03 +0100)]
add comments

5 years agoadd FPADD stack documentation
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 09:54:05 +0000 (10:54 +0100)]
add FPADD stack documentation

5 years agodocument the FPMUL stack
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 09:49:51 +0000 (10:49 +0100)]
document the FPMUL stack

5 years agoillustrate use of pspec using DivPipeCoreOperation (or something)
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 08:25:42 +0000 (09:25 +0100)]
illustrate use of pspec using DivPipeCoreOperation (or something)

5 years agocode cleanup
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 06:39:20 +0000 (07:39 +0100)]
code cleanup

5 years agocode cleanup
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 06:30:23 +0000 (07:30 +0100)]
code cleanup

5 years agoadd full coverage fcvt up 32 to 64 test
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 06:22:00 +0000 (07:22 +0100)]
add full coverage fcvt up 32 to 64 test

5 years agoadd full coverage fcvt up 16 to 64 test
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 06:18:42 +0000 (07:18 +0100)]
add full coverage fcvt up 16 to 64 test

5 years agoadd full coverage fcvt up 16 to 32 test
Luke Kenneth Casson Leighton [Tue, 16 Jul 2019 06:15:57 +0000 (07:15 +0100)]
add full coverage fcvt up 16 to 32 test

5 years agohilarious: fp upconvert of zero was wrong
Luke Kenneth Casson Leighton [Mon, 15 Jul 2019 16:45:56 +0000 (17:45 +0100)]
hilarious: fp upconvert of zero was wrong

5 years agorun just a tad more fp upconverts
Luke Kenneth Casson Leighton [Mon, 15 Jul 2019 16:42:46 +0000 (17:42 +0100)]
run just a tad more fp upconverts

5 years agogot 1st version up-convert working
Luke Kenneth Casson Leighton [Mon, 15 Jul 2019 16:40:05 +0000 (17:40 +0100)]
got 1st version up-convert working

5 years agoadd first version of FCVT upconvert
Luke Kenneth Casson Leighton [Mon, 15 Jul 2019 16:06:07 +0000 (17:06 +0100)]
add first version of FCVT upconvert

5 years agominor tidyup on fcvt
Luke Kenneth Casson Leighton [Mon, 15 Jul 2019 14:04:58 +0000 (15:04 +0100)]
minor tidyup on fcvt

5 years agorun loop of 1000 round test_fpmul_pipe.py
Luke Kenneth Casson Leighton [Sun, 14 Jul 2019 11:50:55 +0000 (12:50 +0100)]
run loop of 1000 round test_fpmul_pipe.py

5 years agocopy context/roundz, a and b manually in fpmul align
Luke Kenneth Casson Leighton [Sun, 14 Jul 2019 11:37:06 +0000 (12:37 +0100)]
copy context/roundz, a and b manually in fpmul align

5 years agowhoops forgot to take output from aligner
Luke Kenneth Casson Leighton [Sun, 14 Jul 2019 11:36:06 +0000 (12:36 +0100)]
whoops forgot to take output from aligner

5 years agofinish implementing DivPipeConfig.__init__
Jacob Lifshay [Sun, 14 Jul 2019 10:03:52 +0000 (03:03 -0700)]
finish implementing DivPipeConfig.__init__

5 years agoreduce code duplication
Jacob Lifshay [Sun, 14 Jul 2019 09:42:43 +0000 (02:42 -0700)]
reduce code duplication

5 years agoadd FPFormat class to describe floating-point formats without all the nmigen signals
Jacob Lifshay [Sun, 14 Jul 2019 09:14:58 +0000 (02:14 -0700)]
add FPFormat class to describe floating-point formats without all the nmigen signals

5 years agodocument PipelineSpec
Luke Kenneth Casson Leighton [Sun, 14 Jul 2019 09:02:56 +0000 (10:02 +0100)]
document PipelineSpec

5 years agofix test_fpmul_pipe_32.py after new PipelineSpec class added
Luke Kenneth Casson Leighton [Sun, 14 Jul 2019 08:55:04 +0000 (09:55 +0100)]
fix test_fpmul_pipe_32.py after new PipelineSpec class added

5 years agoadd sticky-propagation to normalisation, as an experiment
Luke Kenneth Casson Leighton [Sun, 14 Jul 2019 08:48:40 +0000 (09:48 +0100)]
add sticky-propagation to normalisation, as an experiment

5 years agoswitch pspec from dict to PipelineSpec
Jacob Lifshay [Sun, 14 Jul 2019 07:13:39 +0000 (00:13 -0700)]
switch pspec from dict to PipelineSpec

5 years agoadd proposed frsqrt instruction encoding table
Jacob Lifshay [Sun, 14 Jul 2019 06:41:46 +0000 (23:41 -0700)]
add proposed frsqrt instruction encoding table

5 years agoadd dual alignment on e/m in fpmul
Luke Kenneth Casson Leighton [Sun, 14 Jul 2019 06:25:48 +0000 (07:25 +0100)]
add dual alignment on e/m in fpmul

5 years agoadd extra fpmul16 regression tests
Luke Kenneth Casson Leighton [Sat, 13 Jul 2019 13:23:17 +0000 (14:23 +0100)]
add extra fpmul16 regression tests

5 years ago1 bit extra accuracy in mul if the top bit of mantissa is zero
Luke Kenneth Casson Leighton [Sat, 13 Jul 2019 13:21:27 +0000 (14:21 +0100)]
1 bit extra accuracy in mul if the top bit of mantissa is zero

5 years agoadd name to Overflow class, also recreate OverflowMod
Luke Kenneth Casson Leighton [Sat, 13 Jul 2019 08:45:25 +0000 (09:45 +0100)]
add name to Overflow class, also recreate OverflowMod

5 years agodelete dead code in fpbase.MultiShift.[lr]shift
Jacob Lifshay [Thu, 11 Jul 2019 10:16:05 +0000 (03:16 -0700)]
delete dead code in fpbase.MultiShift.[lr]shift

5 years agoformat fpbase.py
Jacob Lifshay [Thu, 11 Jul 2019 09:46:58 +0000 (02:46 -0700)]
format fpbase.py