ieee754fpu.git
5 years agoadd c version from original paper
Luke Kenneth Casson Leighton [Sat, 13 Apr 2019 03:55:13 +0000 (04:55 +0100)]
add c version from original paper

5 years agoadd buffered and fwft modes to FIFOControl
Luke Kenneth Casson Leighton [Sat, 13 Apr 2019 03:37:18 +0000 (04:37 +0100)]
add buffered and fwft modes to FIFOControl

5 years agoCreate fsqrt.py file and put the verilog code in comments to indicate the basic struc...
Aleksandar Kostovic [Fri, 12 Apr 2019 20:23:25 +0000 (22:23 +0200)]
Create fsqrt.py file and put the verilog code in comments to indicate the basic structure of algorithm

5 years agoupdate comments
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 12:42:00 +0000 (13:42 +0100)]
update comments

5 years agoextend truth tables
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 12:35:04 +0000 (13:35 +0100)]
extend truth tables

5 years agoadd truth table for PassThroughHandshake
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 10:40:30 +0000 (11:40 +0100)]
add truth table for PassThroughHandshake

5 years agoadd 2-stage FIFO (add1) example
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 07:25:04 +0000 (08:25 +0100)]
add 2-stage FIFO (add1) example

5 years agoadd temporary buf_full to UnbufferedPipeline
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 04:52:27 +0000 (05:52 +0100)]
add temporary buf_full to UnbufferedPipeline

5 years agoadd comments to FIFOControl
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 04:12:46 +0000 (05:12 +0100)]
add comments to FIFOControl

5 years agorename some test functions, make better suitable for nosetests
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 04:05:12 +0000 (05:05 +0100)]
rename some test functions, make better suitable for nosetests

5 years agoadd Test 24, add built-in process function into FIFOControl
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 03:21:24 +0000 (04:21 +0100)]
add Test 24, add built-in process function into FIFOControl

5 years agomove PassThroughStage out of FIFOControl
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 02:54:00 +0000 (03:54 +0100)]
move PassThroughStage out of FIFOControl

5 years agoswap iospecfn and depth arguments in FIFOControl
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 02:50:02 +0000 (03:50 +0100)]
swap iospecfn and depth arguments in FIFOControl

5 years agoadd test23, connect FIFO-with-RecordObj to adder
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 01:48:06 +0000 (02:48 +0100)]
add test23, connect FIFO-with-RecordObj to adder

5 years agoprocess nxt.o_data in connect_out, not prev data
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 01:47:37 +0000 (02:47 +0100)]
process nxt.o_data in connect_out, not prev data

5 years agouse SimpleHandshake in RecordObject test
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 01:24:29 +0000 (02:24 +0100)]
use SimpleHandshake in RecordObject test

5 years agoremove eq function from RecordObject test
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 01:21:04 +0000 (02:21 +0100)]
remove eq function from RecordObject test

5 years agoadd RecordObject-based 2-op add test
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 01:20:42 +0000 (02:20 +0100)]
add RecordObject-based 2-op add test

5 years agoreorganise FIFOtest, call it FIFOControl
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 01:03:48 +0000 (02:03 +0100)]
reorganise FIFOtest, call it FIFOControl

5 years agopass in flatten/processing function into _connect_in/out
Luke Kenneth Casson Leighton [Fri, 12 Apr 2019 00:47:20 +0000 (01:47 +0100)]
pass in flatten/processing function into _connect_in/out

5 years agoadd commented-out code back in
Luke Kenneth Casson Leighton [Thu, 11 Apr 2019 16:14:27 +0000 (17:14 +0100)]
add commented-out code back in

5 years agodo flatten on output data
Luke Kenneth Casson Leighton [Thu, 11 Apr 2019 16:08:19 +0000 (17:08 +0100)]
do flatten on output data

5 years agotry bi-directional flatten
Luke Kenneth Casson Leighton [Thu, 11 Apr 2019 16:04:51 +0000 (17:04 +0100)]
try bi-directional flatten

5 years agono need to use self.__dict__
Luke Kenneth Casson Leighton [Thu, 11 Apr 2019 15:57:42 +0000 (16:57 +0100)]
no need to use self.__dict__

5 years agoreorg of FIFOtest to allow for flattening of incoming data
Luke Kenneth Casson Leighton [Thu, 11 Apr 2019 15:47:36 +0000 (16:47 +0100)]
reorg of FIFOtest to allow for flattening of incoming data

5 years agomove RecordObject to singlepipe.py for now
Luke Kenneth Casson Leighton [Thu, 11 Apr 2019 15:31:51 +0000 (16:31 +0100)]
move RecordObject to singlepipe.py for now

5 years agoadd experimental RecordObject with __setattr__ override
Luke Kenneth Casson Leighton [Thu, 11 Apr 2019 15:29:51 +0000 (16:29 +0100)]
add experimental RecordObject with __setattr__ override

5 years agoadd flatten function
Luke Kenneth Casson Leighton [Thu, 11 Apr 2019 15:28:59 +0000 (16:28 +0100)]
add flatten function

5 years agowhitespace
Luke Kenneth Casson Leighton [Thu, 11 Apr 2019 06:18:09 +0000 (07:18 +0100)]
whitespace

5 years agocode-shuffle to allow accumulation of results from eq in visit-generic way
Luke Kenneth Casson Leighton [Thu, 11 Apr 2019 05:19:09 +0000 (06:19 +0100)]
code-shuffle to allow accumulation of results from eq in visit-generic way

5 years agoturn visitor into a class
Luke Kenneth Casson Leighton [Thu, 11 Apr 2019 03:37:53 +0000 (04:37 +0100)]
turn visitor into a class

5 years agobegin morphing eq function into a visitor
Luke Kenneth Casson Leighton [Thu, 11 Apr 2019 02:56:58 +0000 (03:56 +0100)]
begin morphing eq function into a visitor

5 years agoadd FIFO chain-test
Luke Kenneth Casson Leighton [Wed, 10 Apr 2019 07:51:34 +0000 (08:51 +0100)]
add FIFO chain-test

5 years agoquick FIFOtest works!
Luke Kenneth Casson Leighton [Wed, 10 Apr 2019 07:29:26 +0000 (08:29 +0100)]
quick FIFOtest works!

5 years agospelling correction
Luke Kenneth Casson Leighton [Wed, 10 Apr 2019 06:34:01 +0000 (07:34 +0100)]
spelling correction

5 years agoadd experiment to see if using a SyncFIFO as a buffered pipeline stage works
Luke Kenneth Casson Leighton [Wed, 10 Apr 2019 06:32:31 +0000 (07:32 +0100)]
add experiment to see if using a SyncFIFO as a buffered pipeline stage works

5 years agoadd the truth tables for SimpleHandshake and UnbufferedPipeline
Luke Kenneth Casson Leighton [Wed, 10 Apr 2019 04:19:49 +0000 (05:19 +0100)]
add the truth tables for SimpleHandshake and UnbufferedPipeline

part of investigation into http://bugs.libre-riscv.org/show_bug.cgi?id=57#c6

5 years agoupdate comment
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 13:30:47 +0000 (14:30 +0100)]
update comment

5 years agorewrite BufferedHandshake logic conditions based on karnaugh map analysis
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 13:24:03 +0000 (14:24 +0100)]
rewrite BufferedHandshake logic conditions based on karnaugh map analysis

5 years agologic shuffle on BufferedHandshake
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 12:29:06 +0000 (13:29 +0100)]
logic shuffle on BufferedHandshake

5 years agouse SimpleHandshake instead of UnbufferedPipeline
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 11:02:58 +0000 (12:02 +0100)]
use SimpleHandshake instead of UnbufferedPipeline

5 years agooutput simulation to correctly-named file
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 10:59:16 +0000 (11:59 +0100)]
output simulation to correctly-named file

5 years agomove stage test of setup function to ControlBase
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 10:56:15 +0000 (11:56 +0100)]
move stage test of setup function to ControlBase

5 years agoadd more unit tests of PassThroughHandshake
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 10:55:41 +0000 (11:55 +0100)]
add more unit tests of PassThroughHandshake

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 10:54:26 +0000 (11:54 +0100)]
remove unneeded imports

5 years agoremove unneeded imports
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 10:51:51 +0000 (11:51 +0100)]
remove unneeded imports

5 years agomake r_data of ospec type in UnbufferedPipe, and
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 09:12:19 +0000 (10:12 +0100)]
make r_data of ospec type in UnbufferedPipe, and
process before putting into r_data

5 years agoclarify ascii-art
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 09:05:40 +0000 (10:05 +0100)]
clarify ascii-art

5 years agowhitespace cleanup
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 08:57:11 +0000 (09:57 +0100)]
whitespace cleanup

5 years agowhitespace cleanup
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 08:44:30 +0000 (09:44 +0100)]
whitespace cleanup

5 years agobig cleanup on self.m = m = xxxx
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 08:42:47 +0000 (09:42 +0100)]
big cleanup on self.m = m = xxxx

5 years agoremove __init__ from all of the types of ControlBase-derived classes
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 08:32:48 +0000 (09:32 +0100)]
remove __init__ from all of the types of ControlBase-derived classes

all of the constructors were identical: therefore merge to ControlBase.__init__

5 years agoadd PassThroughHandshake class and unit test
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 08:27:08 +0000 (09:27 +0100)]
add PassThroughHandshake class and unit test

5 years agosmall code-shuffle on eq()
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 07:15:04 +0000 (08:15 +0100)]
small code-shuffle on eq()

5 years agosimplify StageChain.specallocate_setup
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 04:09:07 +0000 (05:09 +0100)]
simplify StageChain.specallocate_setup

5 years agosplit out allocate and specallocate from StageChain setup, simpler to read
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 04:07:02 +0000 (05:07 +0100)]
split out allocate and specallocate from StageChain setup, simpler to read

5 years agorename BufferedPipeline to BufferedHandshake
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 02:58:14 +0000 (03:58 +0100)]
rename BufferedPipeline to BufferedHandshake

5 years agoforgot to rename i_valid_logic() to i_valid_test in multipipe
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 02:57:28 +0000 (03:57 +0100)]
forgot to rename i_valid_logic() to i_valid_test in multipipe

5 years agoremove outdated comments
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 02:45:10 +0000 (03:45 +0100)]
remove outdated comments

5 years agorename BufferedPipeline2 to SimpleHandshake
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 02:42:48 +0000 (03:42 +0100)]
rename BufferedPipeline2 to SimpleHandshake

5 years agosimplify UnbufferedPipeline2
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 02:42:14 +0000 (03:42 +0100)]
simplify UnbufferedPipeline2

5 years agouse Mux in UnbufferedPipeline2
Luke Kenneth Casson Leighton [Mon, 8 Apr 2019 00:52:31 +0000 (01:52 +0100)]
use Mux in UnbufferedPipeline2

5 years agostore indicator in r_busy when data is valid
Luke Kenneth Casson Leighton [Sun, 7 Apr 2019 13:45:46 +0000 (14:45 +0100)]
store indicator in r_busy when data is valid

5 years agotest trigger=1 in test 13
Luke Kenneth Casson Leighton [Sun, 7 Apr 2019 13:33:31 +0000 (14:33 +0100)]
test trigger=1 in test 13

5 years agopass i_ready in to d_valid dynamic stage function
Luke Kenneth Casson Leighton [Sun, 7 Apr 2019 12:15:58 +0000 (13:15 +0100)]
pass i_ready in to d_valid dynamic stage function

5 years agostill transmit data if ready
Luke Kenneth Casson Leighton [Sun, 7 Apr 2019 11:59:22 +0000 (12:59 +0100)]
still transmit data if ready

5 years agoremove buffermode
Luke Kenneth Casson Leighton [Sun, 7 Apr 2019 11:26:48 +0000 (12:26 +0100)]
remove buffermode

5 years agoadd comment
Luke Kenneth Casson Leighton [Sun, 7 Apr 2019 11:25:16 +0000 (12:25 +0100)]
add comment

5 years agonew non-buffer sync pipe class
Luke Kenneth Casson Leighton [Sun, 7 Apr 2019 10:26:18 +0000 (11:26 +0100)]
new non-buffer sync pipe class

5 years agoadd sync handshake logic
Luke Kenneth Casson Leighton [Sun, 7 Apr 2019 09:30:20 +0000 (10:30 +0100)]
add sync handshake logic

5 years agouse correct results analysis function for test 16
Luke Kenneth Casson Leighton [Sun, 7 Apr 2019 06:52:45 +0000 (07:52 +0100)]
use correct results analysis function for test 16

5 years agoadd separate buffermode=false single pipe test
Luke Kenneth Casson Leighton [Sun, 7 Apr 2019 06:51:18 +0000 (07:51 +0100)]
add separate buffermode=false single pipe test

5 years agodisable buffermode in test 12
Luke Kenneth Casson Leighton [Sun, 7 Apr 2019 05:54:19 +0000 (06:54 +0100)]
disable buffermode in test 12

5 years agomake data regular for test in bug #59
Luke Kenneth Casson Leighton [Sun, 7 Apr 2019 01:09:25 +0000 (02:09 +0100)]
make data regular for test in bug #59

5 years agotry different buffermode in test 14
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 11:22:47 +0000 (12:22 +0100)]
try different buffermode in test 14

5 years agosave to correct files, unit test 15
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 11:14:07 +0000 (12:14 +0100)]
save to correct files, unit test 15

5 years agore-enabled send delays
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 11:13:35 +0000 (12:13 +0100)]
re-enabled send delays

5 years agoadd new buffermode=False unit test, reorg a bit
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 11:09:46 +0000 (12:09 +0100)]
add new buffermode=False unit test, reorg a bit

5 years agomoo? added an option to stop buffer register from being used in BufferedPipeline
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 11:09:25 +0000 (12:09 +0100)]
moo? added an option to stop buffer register from being used in BufferedPipeline

5 years agopass in argument into delay class
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 09:51:10 +0000 (10:51 +0100)]
pass in argument into delay class

5 years agoput n_i_ready into temporary
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 09:50:55 +0000 (10:50 +0100)]
put n_i_ready into temporary

5 years agotrying to track down annoying data ready / chain bug
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 06:49:57 +0000 (07:49 +0100)]
trying to track down annoying data ready / chain bug

5 years agoadd link to bug #57
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 04:38:59 +0000 (05:38 +0100)]
add link to bug #57

5 years agoadd comments to help experimentation
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 04:33:46 +0000 (05:33 +0100)]
add comments to help experimentation

5 years agorename stall test to ready
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 04:12:14 +0000 (05:12 +0100)]
rename stall test to ready

5 years agorecord that test 999 is a bug
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 04:01:00 +0000 (05:01 +0100)]
record that test 999 is a bug

5 years agoadd 2nd unbuffered pipeline class
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 03:56:00 +0000 (04:56 +0100)]
add 2nd unbuffered pipeline class

5 years agoadd twin buf-unbuf pipe chain
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 03:09:00 +0000 (04:09 +0100)]
add twin buf-unbuf pipe chain

5 years agoadd unbuffered delay-pipe unit test
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 02:52:49 +0000 (03:52 +0100)]
add unbuffered delay-pipe unit test

5 years agorename p_o_ready to d_ready
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 02:46:03 +0000 (03:46 +0100)]
rename p_o_ready to d_ready

5 years agod_valid need not be created if stage_ctl is set
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 02:43:11 +0000 (03:43 +0100)]
d_valid need not be created if stage_ctl is set

5 years agouse simpler logic for s_o_ready and d_valid
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 02:36:43 +0000 (03:36 +0100)]
use simpler logic for s_o_ready and d_valid

5 years agoi_valid simply needs override to include "data valid"
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 02:02:49 +0000 (03:02 +0100)]
i_valid simply needs override to include "data valid"

5 years agoremove n stage_ctl
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 01:09:27 +0000 (02:09 +0100)]
remove n stage_ctl

5 years agoreplace n_o_valid with d_valid
Luke Kenneth Casson Leighton [Sat, 6 Apr 2019 00:52:42 +0000 (01:52 +0100)]
replace n_o_valid with d_valid

5 years agoadd experiment override of i_ready test
Luke Kenneth Casson Leighton [Fri, 5 Apr 2019 22:57:14 +0000 (23:57 +0100)]
add experiment override of i_ready test

5 years agotidy up i_valid_logic
Luke Kenneth Casson Leighton [Fri, 5 Apr 2019 22:43:37 +0000 (23:43 +0100)]
tidy up i_valid_logic

5 years agohooray, p_o_ready works
Luke Kenneth Casson Leighton [Fri, 5 Apr 2019 22:37:12 +0000 (23:37 +0100)]
hooray, p_o_ready works

5 years agotracking down sync failure when stage not dynamically ready
Luke Kenneth Casson Leighton [Fri, 5 Apr 2019 18:56:48 +0000 (19:56 +0100)]
tracking down sync failure when stage not dynamically ready

5 years agotry single pipe for now, not chain
Luke Kenneth Casson Leighton [Fri, 5 Apr 2019 18:41:33 +0000 (19:41 +0100)]
try single pipe for now, not chain