ieee754 package¶
Subpackages¶
- ieee754.add package
- Submodules
- ieee754.add.add_shift_experiment module
- ieee754.add.dual_add_experiment module
- ieee754.add.example_comb_pipe module
- ieee754.add.f module
- ieee754.add.fifo module
- ieee754.add.fsqr module
- ieee754.add.function_unit module
- ieee754.add.hmc_backed_fifo_tb module
- ieee754.add.inputgroup module
- ieee754.add.original_single_pipe module
- ieee754.add.pipeline_example module
- ieee754.add.pipeline_example2 module
- ieee754.add.record_experiment module
- ieee754.add.rstation_row module
- ieee754.add.run_test module
- ieee754.add.slice_repro module
- ieee754.add.test_add_pipe module
- ieee754.add.test_dual module
- ieee754.add.test_fpdiv_pipe module
- ieee754.add.test_fpnum module
- ieee754.add.test_inputgroup module
- ieee754.add.test_multishift module
- ieee754.add.test_orgate module
- ieee754.add.test_state_add module
- ieee754.add.test_syncops module
- Module contents
- ieee754.div_rem_sqrt_rsqrt package
- ieee754.fclass package
- ieee754.fcvt package
- Subpackages
- ieee754.fcvt.test package
- Submodules
- ieee754.fcvt.test.fcvt_data_32_16 module
- ieee754.fcvt.test.fcvt_data_64_16 module
- ieee754.fcvt.test.fcvt_data_64_32 module
- ieee754.fcvt.test.rangelimited module
- ieee754.fcvt.test.test_fcvt_f2int_pipe module
- ieee754.fcvt.test.test_fcvt_int_pipe module
- ieee754.fcvt.test.test_fcvt_int_pipe_16_32 module
- ieee754.fcvt.test.test_fcvt_pipe module
- ieee754.fcvt.test.test_fcvt_pipe_32_16 module
- ieee754.fcvt.test.test_fcvt_pipe_64_16 module
- ieee754.fcvt.test.test_fcvt_pipe_64_32 module
- ieee754.fcvt.test.test_fcvt_pipe_close module
- ieee754.fcvt.test.test_fcvt_up_pipe module
- ieee754.fcvt.test.test_fcvt_up_pipe_16_32 module
- ieee754.fcvt.test.test_fcvt_up_pipe_16_64 module
- ieee754.fcvt.test.test_fcvt_up_pipe_32_64 module
- ieee754.fcvt.test.up_fcvt_data_16_32 module
- ieee754.fcvt.test.up_fcvt_data_32_64 module
- Module contents
- ieee754.fcvt.test package
- Submodules
- ieee754.fcvt.downsize module
- ieee754.fcvt.float2int module
- ieee754.fcvt.int2float module
- ieee754.fcvt.pipeline module
- ieee754.fcvt.upsize module
- Module contents
- Subpackages
- ieee754.fpadd package
- Subpackages
- ieee754.fpadd.test package
- Submodules
- ieee754.fpadd.test.add_data16 module
- ieee754.fpadd.test.add_data32 module
- ieee754.fpadd.test.add_data64 module
- ieee754.fpadd.test.test_add module
- ieee754.fpadd.test.test_add16 module
- ieee754.fpadd.test.test_add64 module
- ieee754.fpadd.test.test_add_base module
- ieee754.fpadd.test.test_fpadd_pipe module
- ieee754.fpadd.test.test_fpadd_pipe_16 module
- ieee754.fpadd.test.test_fpadd_pipe_32 module
- ieee754.fpadd.test.test_fpadd_pipe_64 module
- Module contents
- ieee754.fpadd.test package
- Submodules
- ieee754.fpadd.add0 module
- ieee754.fpadd.add1 module
- ieee754.fpadd.addstages module
- ieee754.fpadd.align module
- ieee754.fpadd.datastruct module
- ieee754.fpadd.fadd_state module
- ieee754.fpadd.nmigen_add_experiment module
- ieee754.fpadd.pipeline module
- ieee754.fpadd.specialcases module
- ieee754.fpadd.statemachine module
- Module contents
- Subpackages
- ieee754.fpcommon package
- Subpackages
- ieee754.fpcommon.test package
- Submodules
- ieee754.fpcommon.test.case_gen module
- ieee754.fpcommon.test.feedbackmux module
- ieee754.fpcommon.test.fpmux module
- ieee754.fpcommon.test.test_fsm_experiment module
- ieee754.fpcommon.test.unit_test_double module
- ieee754.fpcommon.test.unit_test_half module
- ieee754.fpcommon.test.unit_test_single module
- Module contents
- ieee754.fpcommon.test package
- Submodules
- ieee754.fpcommon.basedata module
- ieee754.fpcommon.corrections module
- ieee754.fpcommon.denorm module
- ieee754.fpcommon.exphigh module
- ieee754.fpcommon.fpbase module
- ieee754.fpcommon.getop module
- ieee754.fpcommon.msbhigh module
- ieee754.fpcommon.normtopack module
- ieee754.fpcommon.pack module
- ieee754.fpcommon.packdata module
- ieee754.fpcommon.postcalc module
- ieee754.fpcommon.postnormalise module
- ieee754.fpcommon.pscdata module
- ieee754.fpcommon.putz module
- ieee754.fpcommon.roundz module
- Module contents
- Subpackages
- ieee754.fpdiv package
- Subpackages
- ieee754.fpdiv.test package
- Submodules
- ieee754.fpdiv.test.div_data16 module
- ieee754.fpdiv.test.div_data32 module
- ieee754.fpdiv.test.sqrt_data16 module
- ieee754.fpdiv.test.sqrt_data32 module
- ieee754.fpdiv.test.test_fpdiv_pipe module
- ieee754.fpdiv.test.test_fpdiv_pipe_16 module
- ieee754.fpdiv.test.test_fpdiv_pipe_32 module
- ieee754.fpdiv.test.test_fprsqrt_pipe module
- ieee754.fpdiv.test.test_fprsqrt_pipe_16 module
- ieee754.fpdiv.test.test_fprsqrt_pipe_32 module
- ieee754.fpdiv.test.test_fpsqrt_pipe module
- ieee754.fpdiv.test.test_fpsqrt_pipe_16 module
- ieee754.fpdiv.test.test_fpsqrt_pipe_32 module
- ieee754.fpdiv.test.test_fpsqrt_pipe_64 module
- Module contents
- ieee754.fpdiv.test package
- Submodules
- ieee754.fpdiv.div0 module
- ieee754.fpdiv.div2 module
- ieee754.fpdiv.divstages module
- ieee754.fpdiv.op module
- ieee754.fpdiv.pipeline module
- ieee754.fpdiv.specialcases module
- Module contents
- Subpackages
- ieee754.fpmul package
- Subpackages
- ieee754.fpmul.test package
- Submodules
- ieee754.fpmul.test.mul_data16 module
- ieee754.fpmul.test.mul_data32 module
- ieee754.fpmul.test.mul_data64 module
- ieee754.fpmul.test.test_fpmul_pipe module
- ieee754.fpmul.test.test_fpmul_pipe_16 module
- ieee754.fpmul.test.test_fpmul_pipe_32 module
- ieee754.fpmul.test.test_fpmul_pipe_64 module
- ieee754.fpmul.test.test_mul module
- ieee754.fpmul.test.test_mul64 module
- Module contents
- ieee754.fpmul.test package
- Submodules
- ieee754.fpmul.align module
- ieee754.fpmul.datastructs module
- ieee754.fpmul.fmul module
- ieee754.fpmul.mul0 module
- ieee754.fpmul.mul1 module
- ieee754.fpmul.mulstages module
- ieee754.fpmul.pipeline module
- ieee754.fpmul.specialcases module
- Module contents
- Subpackages
- ieee754.fpsqrt package
- ieee754.part_bits package
- ieee754.part_cmp package
- ieee754.part_mul_add package
- ieee754.part_mux package
- ieee754.part_shift package
- ieee754.part_shift_scalar package
- ieee754.test package
- ieee754.unused package
Submodules¶
ieee754.pipeline module¶
-
class
ieee754.pipeline.
PipelineSpec
(width, id_width, op_wid=0, opkls=None, pipekls=None, n_ops=2)¶ Bases:
object
Pipeline Specification base class.
Attribute width: the IEEE754 FP bitwidth Attribute id_wid: the Reservation Station muxid bitwidth Attribute op_wid: an “operand bitwidth” passed down all stages Attribute opkls: an optional class that is instantiated as the “operand” See ieee754/fpcommon/getop FPPipeContext for how (where) PipelineSpec is used. FPPipeContext is passed down every stage of a pipeline and contains the Reservation Station multiplexer ID as well as an optional “operand”. This “operand” may be used to change the behaviour of the pipeline. In RISC-V terminology it would typically be set to e.g. funct7 or parts thereof.