ieee754fpu.git
4 years agoreorganise imports
Luke Kenneth Casson Leighton [Thu, 2 May 2019 12:55:36 +0000 (13:55 +0100)]
reorganise imports

4 years agomove fpadd to top level
Luke Kenneth Casson Leighton [Thu, 2 May 2019 12:48:32 +0000 (13:48 +0100)]
move fpadd to top level

4 years agomove fpcommon to separate subdir
Luke Kenneth Casson Leighton [Thu, 2 May 2019 12:47:35 +0000 (13:47 +0100)]
move fpcommon to separate subdir

4 years agoadd __init__.py to add dir
Luke Kenneth Casson Leighton [Thu, 2 May 2019 12:47:07 +0000 (13:47 +0100)]
add __init__.py to add dir

4 years agoadd make install and make test
Luke Kenneth Casson Leighton [Thu, 2 May 2019 12:46:07 +0000 (13:46 +0100)]
add make install and make test

4 years agoadd setup.py
Luke Kenneth Casson Leighton [Thu, 2 May 2019 12:44:19 +0000 (13:44 +0100)]
add setup.py

4 years agomove add to ieee754 directory
Luke Kenneth Casson Leighton [Thu, 2 May 2019 12:42:57 +0000 (13:42 +0100)]
move add to ieee754 directory

4 years agoupdate comments
Luke Kenneth Casson Leighton [Tue, 30 Apr 2019 22:37:23 +0000 (23:37 +0100)]
update comments

4 years agoupdate comments
Luke Kenneth Casson Leighton [Tue, 30 Apr 2019 22:36:21 +0000 (23:36 +0100)]
update comments

4 years agomove normalise function, add lowbits param, call it
Luke Kenneth Casson Leighton [Tue, 30 Apr 2019 20:54:18 +0000 (21:54 +0100)]
move normalise function, add lowbits param, call it

4 years agouse a PrevControl and NextControl to make Queue look exactly like a ControlBase
Luke Kenneth Casson Leighton [Tue, 30 Apr 2019 20:45:59 +0000 (21:45 +0100)]
use a PrevControl and NextControl to make Queue look exactly like a ControlBase

4 years agoCreated the normalise function
Aleksandar Kostovic [Tue, 30 Apr 2019 14:33:34 +0000 (16:33 +0200)]
Created the normalise function

4 years agouse nmoperator instead of direct eq
Luke Kenneth Casson Leighton [Tue, 30 Apr 2019 13:15:27 +0000 (14:15 +0100)]
use nmoperator instead of direct eq

4 years agowhitespace
Luke Kenneth Casson Leighton [Tue, 30 Apr 2019 13:15:15 +0000 (14:15 +0100)]
whitespace

5 years agoadd comment
Luke Kenneth Casson Leighton [Tue, 30 Apr 2019 01:59:02 +0000 (02:59 +0100)]
add comment

5 years agominor code-shuffle on sqrt() fn
Luke Kenneth Casson Leighton [Tue, 30 Apr 2019 01:58:21 +0000 (02:58 +0100)]
minor code-shuffle on sqrt() fn

5 years agoreturn remainder from sqrt() to see what it looks like
Luke Kenneth Casson Leighton [Tue, 30 Apr 2019 01:48:40 +0000 (02:48 +0100)]
return remainder from sqrt() to see what it looks like

5 years agoadd missing data_i and data_o temporarily
Luke Kenneth Casson Leighton [Tue, 30 Apr 2019 01:17:06 +0000 (02:17 +0100)]
add missing data_i and data_o temporarily

5 years agomorphing FPDIV into Stage API compliance
Luke Kenneth Casson Leighton [Tue, 30 Apr 2019 00:33:24 +0000 (01:33 +0100)]
morphing FPDIV into Stage API compliance

5 years agomake _connect_in/_connect_out data eq optional
Luke Kenneth Casson Leighton [Tue, 30 Apr 2019 00:04:46 +0000 (01:04 +0100)]
make _connect_in/_connect_out data eq optional

5 years agowhoops, use _spec on new_specs
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 23:49:57 +0000 (00:49 +0100)]
whoops, use _spec on new_specs

5 years agoupdate comments on FIFOControl
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 23:24:22 +0000 (00:24 +0100)]
update comments on FIFOControl

5 years agoadded links explaining Moore FSM / Mealy FSM
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 23:15:35 +0000 (00:15 +0100)]
added links explaining Moore FSM / Mealy FSM

5 years agoadd comment on _spec
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 22:46:30 +0000 (23:46 +0100)]
add comment on _spec

5 years agospelling correction
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 22:04:58 +0000 (23:04 +0100)]
spelling correction

5 years agoderive StageChain from StageHelper, use set_specs instead of manual ispec/ospec
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 22:03:11 +0000 (23:03 +0100)]
derive StageChain from StageHelper, use set_specs instead of manual ispec/ospec
function, add auto-detect to set_specs to determine if it is
passed an object that has a "stage"

5 years agomove StageHelper class
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 22:02:02 +0000 (23:02 +0100)]
move StageHelper class

5 years agostore ospecfn and ispecfn in stagehelper
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 21:54:11 +0000 (22:54 +0100)]
store ospecfn and ispecfn in stagehelper

5 years agoextra tests to find out rounding conditions
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 19:54:30 +0000 (20:54 +0100)]
extra tests to find out rounding conditions

5 years agototal shock! experimentation worked!
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 14:38:33 +0000 (15:38 +0100)]
total shock! experimentation worked!

5 years agoguessing / experimenting...
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 14:12:19 +0000 (15:12 +0100)]
guessing / experimenting...

5 years agohmmm... experimenting...
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 13:42:57 +0000 (14:42 +0100)]
hmmm... experimenting...

5 years agoadd printout of binary version
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 11:23:19 +0000 (12:23 +0100)]
add printout of binary version

5 years agosorting out...
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 10:22:34 +0000 (11:22 +0100)]
sorting out...

5 years agoTried to make final assignemnt of the sqrt
Aleksandar Kostovic [Mon, 29 Apr 2019 10:16:46 +0000 (12:16 +0200)]
Tried to make final assignemnt of the sqrt

5 years agodecode xbits (an integer) not x (an object)
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 09:28:53 +0000 (10:28 +0100)]
decode xbits (an integer) not x (an object)

5 years agoCreated small test for decode_fp32 function
Aleksandar Kostovic [Mon, 29 Apr 2019 06:50:53 +0000 (08:50 +0200)]
Created small test for decode_fp32 function

5 years agoremove use of SyncFIFOBuffered, Queue is much better
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 05:24:00 +0000 (06:24 +0100)]
remove use of SyncFIFOBuffered, Queue is much better

5 years agoadd extra FIFOTest pipe to test 21, to see if sync-delays occur
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 05:21:18 +0000 (06:21 +0100)]
add extra FIFOTest pipe to test 21, to see if sync-delays occur

5 years agoadd assert on ControlBase.connect, stage should be None
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 05:15:30 +0000 (06:15 +0100)]
add assert on ControlBase.connect, stage should be None

5 years agoshuffle imports
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 04:13:00 +0000 (05:13 +0100)]
shuffle imports

5 years agoredo module imports
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 04:10:46 +0000 (05:10 +0100)]
redo module imports

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 04:08:50 +0000 (05:08 +0100)]
remove unneeded imports

5 years agoassign function setup to one of specallocate/nospecallocate
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 04:06:59 +0000 (05:06 +0100)]
assign function setup to one of specallocate/nospecallocate

5 years agoupdate comments
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 04:00:33 +0000 (05:00 +0100)]
update comments

5 years agoremove unneeded imports, move RecordBasedStage and PassThroughStage
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 03:55:25 +0000 (04:55 +0100)]
remove unneeded imports, move RecordBasedStage and PassThroughStage

5 years agoremove unneeded imports from iocontrol
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 03:52:43 +0000 (04:52 +0100)]
remove unneeded imports from iocontrol

5 years agoremove unneeded imports from stageapi
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 03:51:36 +0000 (04:51 +0100)]
remove unneeded imports from stageapi

5 years agosplit stageapi into separate module, move ControlBase to singlepipe
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 03:49:11 +0000 (04:49 +0100)]
split stageapi into separate module, move ControlBase to singlepipe

5 years agoStage API process fn now optional
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 03:47:49 +0000 (04:47 +0100)]
Stage API process fn now optional

5 years agoadd docstrings
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 03:07:04 +0000 (04:07 +0100)]
add docstrings

5 years agochain cannot be empty
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 02:54:43 +0000 (03:54 +0100)]
chain cannot be empty

5 years agomove StageHelper class
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 02:53:34 +0000 (03:53 +0100)]
move StageHelper class

5 years agoupdate comments
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 02:52:26 +0000 (03:52 +0100)]
update comments

5 years agoupdate comments
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 02:45:42 +0000 (03:45 +0100)]
update comments

5 years agoliked the StageHelper/Wrapper concept enough to keep it.
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 02:43:41 +0000 (03:43 +0100)]
liked the StageHelper/Wrapper concept enough to keep it.

also made ControlBase Stage-API-compliant by deriving from it.  Not
sure if this is a good idea

5 years agomake Stage.process optional
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 02:28:52 +0000 (03:28 +0100)]
make Stage.process optional

5 years agosplit out data creation to new_data function
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 02:21:25 +0000 (03:21 +0100)]
split out data creation to new_data function

5 years agoRevert "rework of ControlBase, split out into StageHandler"
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 02:17:17 +0000 (03:17 +0100)]
Revert "rework of ControlBase, split out into StageHandler"

This reverts commit 05702deb66d0b75772030b9ac558df3222001585.

5 years agoRevert "move wrapping of stage into StageHandler"
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 02:16:36 +0000 (03:16 +0100)]
Revert "move wrapping of stage into StageHandler"

This reverts commit 2b26be5b974d43047bf096a555408a62bab2c4eb.

5 years agomove wrapping of stage into StageHandler
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 00:14:25 +0000 (01:14 +0100)]
move wrapping of stage into StageHandler

5 years agorework of ControlBase, split out into StageHandler
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 22:35:05 +0000 (23:35 +0100)]
rework of ControlBase, split out into StageHandler

StageHandler manages the relationship with data.

ControlBase handles p and n (prev and next IO Control)

5 years agocall property data_r not data
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 21:55:52 +0000 (22:55 +0100)]
call property data_r not data

5 years agoreturn data (property) in fsm experiment
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 21:44:50 +0000 (22:44 +0100)]
return data (property) in fsm experiment

5 years agoanother eq import moved to nmoperator
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 21:42:01 +0000 (22:42 +0100)]
another eq import moved to nmoperator

5 years agouse property decorator to process input data from stage
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 21:38:34 +0000 (22:38 +0100)]
use property decorator to process input data from stage

5 years agoadd fast sqrt paper link
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 17:36:18 +0000 (18:36 +0100)]
add fast sqrt paper link

5 years agoget the sqrt m/e, print out the original m/e side-by-side with sqrt m/e
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 16:56:57 +0000 (17:56 +0100)]
get the sqrt m/e, print out the original m/e side-by-side with sqrt m/e

5 years agofind MSB-pow-2 in different way
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 16:51:46 +0000 (17:51 +0100)]
find MSB-pow-2 in different way

5 years agominor tidyup
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 16:49:20 +0000 (17:49 +0100)]
minor tidyup

5 years agoCreated two nested for loops for testing
Aleksandar Kostovic [Sun, 28 Apr 2019 15:45:26 +0000 (17:45 +0200)]
Created two nested for loops for testing

5 years agoCommented the right function
Aleksandar Kostovic [Sun, 28 Apr 2019 15:25:15 +0000 (17:25 +0200)]
Commented the right function

5 years agoadd convenience routines
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 13:52:11 +0000 (14:52 +0100)]
add convenience routines

5 years agoadd a few comments
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 13:45:03 +0000 (14:45 +0100)]
add a few comments

5 years agoadd some functions copied from unit_test_single for mantissa/exponent handling
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 13:44:49 +0000 (14:44 +0100)]
add some functions copied from unit_test_single for mantissa/exponent handling

5 years agoadd an __main__ test thing
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 13:44:18 +0000 (14:44 +0100)]
add an __main__ test thing

5 years agolittle trick when it comes to if else and a return statement:
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 13:43:51 +0000 (14:43 +0100)]
little trick when it comes to if else and a return statement:
remove the else and reduce the indentation a bit

5 years agoremove Q function thing
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 13:43:14 +0000 (14:43 +0100)]
remove Q function thing

5 years agoCreated the main function
Aleksandar Kostovic [Sun, 28 Apr 2019 13:08:47 +0000 (15:08 +0200)]
Created the main function

5 years agoadd comments to iocontrol.py
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 11:23:58 +0000 (12:23 +0100)]
add comments to iocontrol.py
g

5 years agofixed sqrt bugs
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 10:19:28 +0000 (11:19 +0100)]
fixed sqrt bugs

5 years agoAdapted the C version of sqrt to python
Aleksandar Kostovic [Sun, 28 Apr 2019 09:52:36 +0000 (11:52 +0200)]
Adapted the C version of sqrt to python

5 years agoadd docstrings
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 23:05:48 +0000 (00:05 +0100)]
add docstrings

5 years agopass name into multipipe
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 22:52:55 +0000 (23:52 +0100)]
pass name into multipipe

5 years agoupdate docstrings
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 22:45:06 +0000 (23:45 +0100)]
update docstrings

5 years agoupdate docstrings
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 22:42:54 +0000 (23:42 +0100)]
update docstrings

5 years agoupdate docstrings / comments
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 22:38:37 +0000 (23:38 +0100)]
update docstrings / comments

5 years agoupdate docstrings / comments
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 22:34:19 +0000 (23:34 +0100)]
update docstrings / comments

5 years agoupdate comments
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 22:26:37 +0000 (23:26 +0100)]
update comments

5 years agocall nmoperator.cat/eq/shape instead of as global functions
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 22:17:33 +0000 (23:17 +0100)]
call nmoperator.cat/eq/shape instead of as global functions

5 years agoadd assertion on stage chain (must be non-zero length). add docstrings
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 20:23:28 +0000 (21:23 +0100)]
add assertion on stage chain (must be non-zero length).  add docstrings

5 years agoupdate ControlBase docstrings, throw assert if pipechain is zero length
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 18:59:33 +0000 (19:59 +0100)]
update ControlBase docstrings, throw assert if pipechain is zero length

5 years agoallow StageChain to accept empty list/tuple
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 18:45:04 +0000 (19:45 +0100)]
allow StageChain to accept empty list/tuple

5 years agosplit out IO control classes to separate module
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 15:06:23 +0000 (16:06 +0100)]
split out IO control classes to separate module

5 years agomove eq, shape and cat to nmoperator.py
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 14:56:55 +0000 (15:56 +0100)]
move eq, shape and cat to nmoperator.py

5 years agoLTStageDerived does not have to be derived from Elaboratable
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 14:27:21 +0000 (15:27 +0100)]
LTStageDerived does not have to be derived from Elaboratable

5 years agoreplace i_data with data_i and o_data with data_o
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 14:08:06 +0000 (15:08 +0100)]
replace i_data with data_i and o_data with data_o

5 years agoadd submodules
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 13:57:50 +0000 (14:57 +0100)]
add submodules

5 years agocall ControlBase.elaborate
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 13:56:16 +0000 (14:56 +0100)]
call ControlBase.elaborate

5 years agoreplace i_ready with ready_i and o_valid with valid_o
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 13:55:02 +0000 (14:55 +0100)]
replace i_ready with ready_i and o_valid with valid_o