ieee754.part_cmp.experiments package¶
Submodules¶
ieee754.part_cmp.experiments.eq_combiner module¶
-
class
ieee754.part_cmp.experiments.eq_combiner.Combiner(op, width)¶ Bases:
nmigen.hdl.ir.Elaboratable-
elaborate(platform)¶
-
ports()¶
-
-
class
ieee754.part_cmp.experiments.eq_combiner.EQCombiner(width)¶
-
class
ieee754.part_cmp.experiments.eq_combiner.Twomux¶ Bases:
nmigen.hdl.ir.Elaboratable-
elaborate(platform)¶
-
-
class
ieee754.part_cmp.experiments.eq_combiner.XORCombiner(width)¶
ieee754.part_cmp.experiments.equal module¶
Copyright (C) 2020 Luke Kenneth Casson Leighton <lkcl@lkcl.net>
dynamically-partitionable “comparison” class, directly equivalent to Signal.__eq__ except SIMD-partitionable
See:
ieee754.part_cmp.experiments.equal_ortree module¶
Copyright (C) 2020 Luke Kenneth Casson Leighton <lkcl@lkcl.net>
dynamically-partitionable “comparison” class, directly equivalent to Signal.__eq__ except SIMD-partitionable
See:
ieee754.part_cmp.experiments.ge module¶
Copyright (C) 2020 Luke Kenneth Casson Leighton <lkcl@lkcl.net>
dynamically-partitionable “comparison” class, directly equivalent to Signal.__ge__ except SIMD-partitionable
See:
- http://libre-riscv.org/3d_gpu/architecture/dynamic_simd/ge
- http://bugs.libre-riscv.org/show_bug.cgi?id=132
-
class
ieee754.part_cmp.experiments.ge.PartitionedGe(width, partition_points)¶ Bases:
nmigen.hdl.ir.Elaboratable-
elaborate(platform)¶
-
-
ieee754.part_cmp.experiments.ge.create_ge(nes, les, start, count)¶ create a greater-than-or-equal from partitioned eqs and greaterthans
- this works by doing: lt3 |
- (lt2 & eq3) | (lt1 & eq3 & eq2) | (lt0 & eq3 & eq2 & eq1)