ieee754fpu.git
5 years agobeginnings of dynamic ready/valid stage ctl
Luke Kenneth Casson Leighton [Fri, 5 Apr 2019 09:18:02 +0000 (10:18 +0100)]
beginnings of dynamic ready/valid stage ctl

5 years agomove o_valid and o_ready (underscore them) and replace with properties
Luke Kenneth Casson Leighton [Fri, 5 Apr 2019 08:06:20 +0000 (09:06 +0100)]
move o_valid and o_ready (underscore them) and replace with properties

o_ready now redirects to self._o_ready if stage_ctl is False
likewise o_valid in NextControl redirects to self._o_valid

5 years agoadd example stage data signalling properties
Luke Kenneth Casson Leighton [Fri, 5 Apr 2019 08:05:21 +0000 (09:05 +0100)]
add example stage data signalling properties

5 years agoMerge branch 'master' of ssh://libre-riscv.org:922/ieee754fpu
Aleksandar Kostovic [Fri, 5 Apr 2019 05:16:06 +0000 (07:16 +0200)]
Merge branch 'master' of ssh://libre-riscv.org:922/ieee754fpu

5 years agoFixed the error when runing unit test
Aleksandar Kostovic [Fri, 5 Apr 2019 05:15:43 +0000 (07:15 +0200)]
Fixed the error when runing unit test

5 years agoadd stage_ctl argument to PrevControl / NextControl on pipeline
Luke Kenneth Casson Leighton [Fri, 5 Apr 2019 05:02:48 +0000 (06:02 +0100)]
add stage_ctl argument to PrevControl / NextControl on pipeline

5 years agoFixed indentation issiues with fmul.py
Aleksandar Kostovic [Fri, 5 Apr 2019 04:57:06 +0000 (06:57 +0200)]
Fixed indentation issiues with fmul.py

5 years agoadd example ready for adding delay (data_ready) to pipeline API
Luke Kenneth Casson Leighton [Fri, 5 Apr 2019 03:41:37 +0000 (04:41 +0100)]
add example ready for adding delay (data_ready) to pipeline API

5 years agoadd debug output
Luke Kenneth Casson Leighton [Thu, 4 Apr 2019 21:35:20 +0000 (22:35 +0100)]
add debug output

5 years agoadd create2 functions, for use later
Luke Kenneth Casson Leighton [Thu, 4 Apr 2019 21:35:03 +0000 (22:35 +0100)]
add create2 functions, for use later

5 years agoAdd m.d.sync return to get_a and get_b cases
Aleksandar Kostovic [Thu, 4 Apr 2019 17:56:58 +0000 (19:56 +0200)]
Add m.d.sync return to get_a and get_b cases

5 years agoconvert fdiv to set op based on get_op return results
Luke Kenneth Casson Leighton [Thu, 4 Apr 2019 16:55:30 +0000 (17:55 +0100)]
convert fdiv to set op based on get_op return results

5 years agouse ObjectProxy in get_op
Luke Kenneth Casson Leighton [Thu, 4 Apr 2019 07:29:53 +0000 (08:29 +0100)]
use ObjectProxy in get_op

5 years agoadd syncmode, selects sync/comb on ObjectProxy assignment
Luke Kenneth Casson Leighton [Thu, 4 Apr 2019 07:28:59 +0000 (08:28 +0100)]
add syncmode, selects sync/comb on ObjectProxy assignment

5 years agoFINALLY, got ObjectProxy in pipeline auto-stage working
Luke Kenneth Casson Leighton [Thu, 4 Apr 2019 03:28:33 +0000 (04:28 +0100)]
FINALLY, got ObjectProxy in pipeline auto-stage working

5 years agoadd dictionary-support to pipeline eq function
Luke Kenneth Casson Leighton [Thu, 4 Apr 2019 03:22:01 +0000 (04:22 +0100)]
add dictionary-support to pipeline eq function

5 years agouse local temporary for variables
Luke Kenneth Casson Leighton [Wed, 3 Apr 2019 06:07:46 +0000 (07:07 +0100)]
use local temporary for variables

5 years agouse local variable in second stage pipeline test
Luke Kenneth Casson Leighton [Wed, 3 Apr 2019 05:31:00 +0000 (06:31 +0100)]
use local variable in second stage pipeline test

5 years agosemi-working, top-level signals okay, ObjectProxy not yet connected
Luke Kenneth Casson Leighton [Wed, 3 Apr 2019 04:01:45 +0000 (05:01 +0100)]
semi-working, top-level signals okay, ObjectProxy not yet connected

5 years agocontinuing to experiment with pipeline, outputs still not connected
Luke Kenneth Casson Leighton [Tue, 2 Apr 2019 17:52:01 +0000 (18:52 +0100)]
continuing to experiment with pipeline, outputs still not connected

5 years agopipeline ObjectProxy objects now stored in module, not linked to output yet
Luke Kenneth Casson Leighton [Tue, 2 Apr 2019 01:44:24 +0000 (02:44 +0100)]
pipeline ObjectProxy objects now stored in module, not linked to output yet

5 years agomore experimentation on pipeline ObjectProxy
Luke Kenneth Casson Leighton [Mon, 1 Apr 2019 21:32:37 +0000 (22:32 +0100)]
more experimentation on pipeline ObjectProxy

5 years agostart on ObjectProxy example
Luke Kenneth Casson Leighton [Mon, 1 Apr 2019 00:23:39 +0000 (01:23 +0100)]
start on ObjectProxy example

5 years agofound bug in auto-stage, must return "like" from auto-ispec / auto-ospec
Luke Kenneth Casson Leighton [Sun, 31 Mar 2019 18:33:43 +0000 (19:33 +0100)]
found bug in auto-stage, must return "like" from auto-ispec / auto-ospec

5 years agobug where combinatorial assignments from stage are bleeding through
Luke Kenneth Casson Leighton [Sun, 31 Mar 2019 14:27:42 +0000 (15:27 +0100)]
bug where combinatorial assignments from stage are bleeding through

5 years agouse stage names instead of numbers in the pipeline
Luke Kenneth Casson Leighton [Sat, 30 Mar 2019 23:52:10 +0000 (23:52 +0000)]
use stage names instead of numbers in the pipeline

5 years agouse and return module instead of m.d in pipeline introspection
Luke Kenneth Casson Leighton [Sat, 30 Mar 2019 23:11:28 +0000 (23:11 +0000)]
use and return module instead of m.d in pipeline introspection

5 years agoadd pipeline context / stage management
Luke Kenneth Casson Leighton [Sat, 30 Mar 2019 23:04:23 +0000 (23:04 +0000)]
add pipeline context / stage management

5 years agosplit out concurrentunit ReservationStations to separate module
Luke Kenneth Casson Leighton [Sat, 30 Mar 2019 22:00:37 +0000 (22:00 +0000)]
split out concurrentunit ReservationStations to separate module

5 years agowhoops wrong temporary created
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 21:43:24 +0000 (21:43 +0000)]
whoops wrong temporary created

5 years agocreate FPDecode module
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 21:40:22 +0000 (21:40 +0000)]
create FPDecode module

5 years agoalways pass decoded a/b through
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 21:30:50 +0000 (21:30 +0000)]
always pass decoded a/b through

5 years agocombine specialcases if/elif tests into single temporaries
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 19:53:03 +0000 (19:53 +0000)]
combine specialcases if/elif tests into single temporaries

5 years agoadd generate to nmigen_add_experiment.py again
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 19:37:51 +0000 (19:37 +0000)]
add generate to nmigen_add_experiment.py again

5 years agocreate e_match temporary
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 19:37:37 +0000 (19:37 +0000)]
create e_match temporary

5 years agouse correct function in unit test
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 14:42:08 +0000 (14:42 +0000)]
use correct function in unit test

5 years agoget old fpadd back
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 14:31:21 +0000 (14:31 +0000)]
get old fpadd back

5 years agoimports: get div and mul working
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 14:18:07 +0000 (14:18 +0000)]
imports: get div and mul working

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:48:45 +0000 (12:48 +0000)]
remove unneeded imports

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:47:30 +0000 (12:47 +0000)]
remove unneeded imports

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:45:59 +0000 (12:45 +0000)]
remove unneeded imports

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:44:27 +0000 (12:44 +0000)]
remove unneeded imports

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:43:26 +0000 (12:43 +0000)]
remove unneeded imports

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:42:19 +0000 (12:42 +0000)]
remove unneeded imports

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:41:00 +0000 (12:41 +0000)]
remove unneeded imports

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:39:43 +0000 (12:39 +0000)]
remove unneeded imports

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:38:10 +0000 (12:38 +0000)]
remove unneeded imports

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:36:14 +0000 (12:36 +0000)]
remove unneeded imports

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:33:37 +0000 (12:33 +0000)]
remove unneeded imports

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:31:48 +0000 (12:31 +0000)]
remove unneeded imports

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:29:32 +0000 (12:29 +0000)]
remove unneeded imports

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:27:45 +0000 (12:27 +0000)]
remove unneeded imports

5 years agostart removing unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:23:21 +0000 (12:23 +0000)]
start removing unneeded imports

5 years agostart removing unneeded imports
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:22:43 +0000 (12:22 +0000)]
start removing unneeded imports

5 years agosplit out pipeline and statemachine to separate modules
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:19:04 +0000 (12:19 +0000)]
split out pipeline and statemachine to separate modules

5 years agosplit out addstages to separate module
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:14:19 +0000 (12:14 +0000)]
split out addstages to separate module

5 years agosplit out add1 to separate module
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:11:56 +0000 (12:11 +0000)]
split out add1 to separate module

5 years agosplit out add stage 0 to separate module
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:10:00 +0000 (12:10 +0000)]
split out add stage 0 to separate module

5 years agosplit out add align into separate module
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:07:19 +0000 (12:07 +0000)]
split out add align into separate module

5 years agosplit out add specialcases to separate module
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 12:02:53 +0000 (12:02 +0000)]
split out add specialcases to separate module

5 years agosplit out putz to separate module
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 11:56:48 +0000 (11:56 +0000)]
split out putz to separate module

5 years agosplit out normtopack to separate module
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 11:54:45 +0000 (11:54 +0000)]
split out normtopack to separate module

5 years agosplit out pack to separate module
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 11:51:36 +0000 (11:51 +0000)]
split out pack to separate module

5 years agosplit out corrections to separate module
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 11:49:37 +0000 (11:49 +0000)]
split out corrections to separate module

5 years agosplit out rounding to separate module
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 11:47:10 +0000 (11:47 +0000)]
split out rounding to separate module

5 years agoremove accidentally-included code
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 11:44:20 +0000 (11:44 +0000)]
remove accidentally-included code

5 years agomove FPID to fpbase
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 11:43:19 +0000 (11:43 +0000)]
move FPID to fpbase

5 years agosplit out normalisation to separate module
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 11:42:30 +0000 (11:42 +0000)]
split out normalisation to separate module

5 years agosplit out prenormalisation to separate module
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 11:35:44 +0000 (11:35 +0000)]
split out prenormalisation to separate module

5 years agosplit out denorm to separate module
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 11:33:28 +0000 (11:33 +0000)]
split out denorm to separate module

5 years agostart splitting out common code from nmigen_add_experiment.py
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 11:29:53 +0000 (11:29 +0000)]
start splitting out common code from nmigen_add_experiment.py

5 years agocreate separate pipeline examples
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 11:29:32 +0000 (11:29 +0000)]
create separate pipeline examples

5 years agonew ObjectProxy class for use in pipelines
Luke Kenneth Casson Leighton [Fri, 29 Mar 2019 01:24:17 +0000 (01:24 +0000)]
new ObjectProxy class for use in pipelines

5 years agouse Signal.like instead of value_bits_sign
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 23:22:33 +0000 (23:22 +0000)]
use Signal.like instead of value_bits_sign

5 years agouse singlepipe.eq function
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 23:07:55 +0000 (23:07 +0000)]
use singlepipe.eq function

5 years agoadd test, temporary comb variable to stage2
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 20:15:16 +0000 (20:15 +0000)]
add test, temporary comb variable to stage2

5 years agomake FPGet2Ops conform to Stage API, use in compact StageChain
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 16:46:17 +0000 (16:46 +0000)]
make FPGet2Ops conform to Stage API, use in compact StageChain

5 years agouse StageChain in FPADDBaseMod compact mode
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 16:40:02 +0000 (16:40 +0000)]
use StageChain in FPADDBaseMod compact mode

5 years agomissed out assignment in new specallocate=True StageChain mode
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 16:38:22 +0000 (16:38 +0000)]
missed out assignment in new specallocate=True StageChain mode

5 years agoadd new mode to StageChain which uses python output variables
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 16:31:05 +0000 (16:31 +0000)]
add new mode to StageChain which uses python output variables
instead of allocating ispec/ospec

5 years agouse StageChain for SCDeNorm
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 16:06:54 +0000 (16:06 +0000)]
use StageChain for SCDeNorm

5 years agosolve sync/comb issue with using state-machine or pipeline in DeNorm block
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 15:55:14 +0000 (15:55 +0000)]
solve sync/comb issue with using state-machine or pipeline in DeNorm block

5 years agosolve sync/comb issue with using state-machine or pipeline in FPNormToPack
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 15:51:47 +0000 (15:51 +0000)]
solve sync/comb issue with using state-machine or pipeline in FPNormToPack

5 years agosolve sync/comb for stage/state
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 15:49:49 +0000 (15:49 +0000)]
solve sync/comb for stage/state

5 years agoadd comments as a reminder to make code use sync for state-based
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 15:03:07 +0000 (15:03 +0000)]
add comments as a reminder to make code use sync for state-based

5 years agomulti-out temporary, simplify graphs
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 14:54:09 +0000 (14:54 +0000)]
multi-out temporary, simplify graphs

5 years agotry tidyup on multi-in ready/valid logic
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 14:50:35 +0000 (14:50 +0000)]
try tidyup on multi-in ready/valid logic

5 years agocreate temporary, simplifies graph
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 14:45:55 +0000 (14:45 +0000)]
create temporary, simplifies graph

5 years agocleanup
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 14:38:55 +0000 (14:38 +0000)]
cleanup

5 years agomove inputgroup to separate module
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 14:36:42 +0000 (14:36 +0000)]
move inputgroup to separate module

5 years agoremove redundant code
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 14:32:23 +0000 (14:32 +0000)]
remove redundant code

5 years agoadd comments
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 14:18:24 +0000 (14:18 +0000)]
add comments

5 years agoremove unneeded ports functions
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 14:16:11 +0000 (14:16 +0000)]
remove unneeded ports functions

5 years agouse PassThroughStage
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 14:14:56 +0000 (14:14 +0000)]
use PassThroughStage

5 years agocreate base multi-in ports function
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 14:14:21 +0000 (14:14 +0000)]
create base multi-in ports function

5 years agomove flexible ports fn to MultiOutControlBase
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 14:07:44 +0000 (14:07 +0000)]
move flexible ports fn to MultiOutControlBase

5 years agouse PassThroughStage instead of making one
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 14:02:35 +0000 (14:02 +0000)]
use PassThroughStage instead of making one

5 years agowhitespace
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 13:59:41 +0000 (13:59 +0000)]
whitespace

5 years agocleanup: remove redundant classes/code
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 13:54:30 +0000 (13:54 +0000)]
cleanup: remove redundant classes/code

5 years agoreorg, move similar classes to multipipe
Luke Kenneth Casson Leighton [Thu, 28 Mar 2019 13:51:01 +0000 (13:51 +0000)]
reorg, move similar classes to multipipe