Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 09:28:53 +0000 (10:28 +0100)]
decode xbits (an integer) not x (an object)
Aleksandar Kostovic [Mon, 29 Apr 2019 06:50:53 +0000 (08:50 +0200)]
Created small test for decode_fp32 function
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 05:24:00 +0000 (06:24 +0100)]
remove use of SyncFIFOBuffered, Queue is much better
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
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 05:15:30 +0000 (06:15 +0100)]
add assert on ControlBase.connect, stage should be None
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 04:13:00 +0000 (05:13 +0100)]
shuffle imports
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 04:10:46 +0000 (05:10 +0100)]
redo module imports
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 04:08:50 +0000 (05:08 +0100)]
remove unneeded imports
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 04:06:59 +0000 (05:06 +0100)]
assign function setup to one of specallocate/nospecallocate
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 04:00:33 +0000 (05:00 +0100)]
update comments
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 03:55:25 +0000 (04:55 +0100)]
remove unneeded imports, move RecordBasedStage and PassThroughStage
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 03:52:43 +0000 (04:52 +0100)]
remove unneeded imports from iocontrol
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 03:51:36 +0000 (04:51 +0100)]
remove unneeded imports from stageapi
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 03:49:11 +0000 (04:49 +0100)]
split stageapi into separate module, move ControlBase to singlepipe
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 03:47:49 +0000 (04:47 +0100)]
Stage API process fn now optional
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 03:07:04 +0000 (04:07 +0100)]
add docstrings
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 02:54:43 +0000 (03:54 +0100)]
chain cannot be empty
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 02:53:34 +0000 (03:53 +0100)]
move StageHelper class
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 02:52:26 +0000 (03:52 +0100)]
update comments
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 02:45:42 +0000 (03:45 +0100)]
update comments
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
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 02:28:52 +0000 (03:28 +0100)]
make Stage.process optional
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 02:21:25 +0000 (03:21 +0100)]
split out data creation to new_data function
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.
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.
Luke Kenneth Casson Leighton [Mon, 29 Apr 2019 00:14:25 +0000 (01:14 +0100)]
move wrapping of stage 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)
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 21:55:52 +0000 (22:55 +0100)]
call property data_r not data
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 21:44:50 +0000 (22:44 +0100)]
return data (property) in fsm experiment
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 21:42:01 +0000 (22:42 +0100)]
another eq import moved to nmoperator
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 21:38:34 +0000 (22:38 +0100)]
use property decorator to process input data from stage
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 17:36:18 +0000 (18:36 +0100)]
add fast sqrt paper link
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
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 16:51:46 +0000 (17:51 +0100)]
find MSB-pow-2 in different way
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 16:49:20 +0000 (17:49 +0100)]
minor tidyup
Aleksandar Kostovic [Sun, 28 Apr 2019 15:45:26 +0000 (17:45 +0200)]
Created two nested for loops for testing
Aleksandar Kostovic [Sun, 28 Apr 2019 15:25:15 +0000 (17:25 +0200)]
Commented the right function
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 13:52:11 +0000 (14:52 +0100)]
add convenience routines
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 13:45:03 +0000 (14:45 +0100)]
add a few comments
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
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 13:44:18 +0000 (14:44 +0100)]
add an __main__ test thing
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
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 13:43:14 +0000 (14:43 +0100)]
remove Q function thing
Aleksandar Kostovic [Sun, 28 Apr 2019 13:08:47 +0000 (15:08 +0200)]
Created the main function
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 11:23:58 +0000 (12:23 +0100)]
add comments to iocontrol.py
g
Luke Kenneth Casson Leighton [Sun, 28 Apr 2019 10:19:28 +0000 (11:19 +0100)]
fixed sqrt bugs
Aleksandar Kostovic [Sun, 28 Apr 2019 09:52:36 +0000 (11:52 +0200)]
Adapted the C version of sqrt to python
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 23:05:48 +0000 (00:05 +0100)]
add docstrings
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 22:52:55 +0000 (23:52 +0100)]
pass name into multipipe
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 22:45:06 +0000 (23:45 +0100)]
update docstrings
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 22:42:54 +0000 (23:42 +0100)]
update docstrings
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 22:38:37 +0000 (23:38 +0100)]
update docstrings / comments
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 22:34:19 +0000 (23:34 +0100)]
update docstrings / comments
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 22:26:37 +0000 (23:26 +0100)]
update comments
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
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
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
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 18:45:04 +0000 (19:45 +0100)]
allow StageChain to accept empty list/tuple
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 15:06:23 +0000 (16:06 +0100)]
split out IO control classes to separate module
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 14:56:55 +0000 (15:56 +0100)]
move eq, shape and cat to nmoperator.py
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 14:27:21 +0000 (15:27 +0100)]
LTStageDerived does not have to be derived from Elaboratable
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
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 13:57:50 +0000 (14:57 +0100)]
add submodules
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 13:56:16 +0000 (14:56 +0100)]
call ControlBase.elaborate
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
Aleksandar Kostovic [Sat, 27 Apr 2019 13:37:02 +0000 (15:37 +0200)]
Removed left semicolons
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 13:23:37 +0000 (14:23 +0100)]
FPADDBasePipe derives from ControlBase, must return ControlBase.elaborate
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 13:22:56 +0000 (14:22 +0100)]
disable Elaboratable for now
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 13:22:43 +0000 (14:22 +0100)]
replace i_valid with valid_i
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 13:14:18 +0000 (14:14 +0100)]
fix name bug in specallocate
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 13:14:06 +0000 (14:14 +0100)]
replace o_ready with ready_o
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 13:01:55 +0000 (14:01 +0100)]
whitespace cleanup
Luke Kenneth Casson Leighton [Sat, 27 Apr 2019 13:00:03 +0000 (14:00 +0100)]
add name-detector to ispec / ospec, call with extra name arg if available
(there are too many to change, and it requires "name=None" to be
added to all code, where devs may not *want* the burden of having
to add name prefixes to all code)
Aleksandar Kostovic [Sat, 27 Apr 2019 10:58:57 +0000 (12:58 +0200)]
Nemoved the example number
Aleksandar Kostovic [Sat, 27 Apr 2019 10:50:36 +0000 (12:50 +0200)]
Created the sqrt function found on wikipedia page
Aleksandar Kostovic [Sat, 27 Apr 2019 07:32:50 +0000 (09:32 +0200)]
Very simple function for sqrt
Luke Kenneth Casson Leighton [Fri, 26 Apr 2019 10:09:54 +0000 (11:09 +0100)]
more cases of Elaboratable
Luke Kenneth Casson Leighton [Tue, 23 Apr 2019 09:36:21 +0000 (10:36 +0100)]
add more use of Elaboratables
Luke Kenneth Casson Leighton [Tue, 23 Apr 2019 09:35:16 +0000 (10:35 +0100)]
add more use of Elaboratables
Luke Kenneth Casson Leighton [Tue, 23 Apr 2019 09:23:24 +0000 (10:23 +0100)]
add new Elaboratable
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 23:24:50 +0000 (00:24 +0100)]
experiment with Object class
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 22:52:33 +0000 (23:52 +0100)]
create example Object class (annoyingly)
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 22:25:58 +0000 (23:25 +0100)]
debugging RecordObject __setattr__
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 22:25:23 +0000 (23:25 +0100)]
remove unused unit test
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 22:23:09 +0000 (23:23 +0100)]
use RecordObject in output mux pipe
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 22:18:03 +0000 (23:18 +0100)]
use __iter__ for ports in multipipe
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 21:53:34 +0000 (22:53 +0100)]
add ports function to RecordObject
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 21:36:49 +0000 (22:36 +0100)]
add __iter__ to several classes, add global shape() function use in FIFOControl
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 21:11:24 +0000 (22:11 +0100)]
convert FPOpData to __iter__
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 21:08:11 +0000 (22:08 +0100)]
hmmm, Array not working as submodule
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 21:08:00 +0000 (22:08 +0100)]
convert ControlBase to iter
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 21:04:58 +0000 (22:04 +0100)]
make PrevControl and NextControl iterable
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 18:23:25 +0000 (19:23 +0100)]
convert FPGet2OpMod to use PrevControl (replace ack/stb with i_valid/o_ready
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 15:21:48 +0000 (16:21 +0100)]
convert to use PrevControl and NextControl instead of Trigger class
Trigger contained stb/ack where it is ok to call them ready/valid prev/next
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 14:59:00 +0000 (15:59 +0100)]
add prev/next ports and elaborate
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 11:50:02 +0000 (12:50 +0100)]
add test_fsm_experiment.py - works great!
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 11:49:50 +0000 (12:49 +0100)]
comment out print debug statements
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 11:49:33 +0000 (12:49 +0100)]
improve ControlBase.ports enumeration of its o_data and i_data
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 09:24:46 +0000 (10:24 +0100)]
investigating Record flattening
Luke Kenneth Casson Leighton [Sat, 20 Apr 2019 09:20:02 +0000 (10:20 +0100)]
generate il file before running simulation, test 7