Packages

package decode

Content Hierarchy
Ordering
  1. Alphabetic
Visibility
  1. Public
  2. Protected

Type Members

  1. case class DecodeTableAnnotation(target: ReferenceTarget, truthTable: String, minimizedTable: String) extends SingleTargetAnnotation[ReferenceTarget] with Product with Serializable

    DecodeTableAnnotation used to store a decode result for a specific TruthTable.

    DecodeTableAnnotation used to store a decode result for a specific TruthTable. This is useful for saving large TruthTable during a elaboration time.

    target

    output wire of a decoder.

    truthTable

    input TruthTable encoded in a serialized TruthTable.

    minimizedTable

    minimized truthTable encoded in a serialized TruthTable.

    Note

    user should manage the correctness of minimizedTable.

  2. abstract class Minimizer extends AnyRef
  3. sealed class TruthTable extends AnyRef

Value Members

  1. object EspressoMinimizer extends Minimizer with LazyLogging

    A Minimizer implementation to use espresso to minimize the TruthTable.

    A Minimizer implementation to use espresso to minimize the TruthTable.

    espresso uses heuristic algorithm providing a sub-optimized) result. For implementation details, please refer to: https://www.springerprofessional.de/en/logic-minimization-algorithms-for-vlsi-synthesis/13780088

    a espresso executable should be downloaded from https://github.com/chipsalliance/espresso

    If user want to user the this Minimizer, a espresso executable should be added to system PATH environment.

  2. case object EspressoNotFoundException extends Exception with Product with Serializable
  3. object QMCMinimizer extends Minimizer

    A Minimizer implementation to use Quine-Mccluskey algorithm to minimize the TruthTable.

    A Minimizer implementation to use Quine-Mccluskey algorithm to minimize the TruthTable.

    This algorithm can always find the best solution, but is a NP-Complete algorithm, which means, for large-scale TruthTable minimization task, it will be really slow, and might run out of memory of JVM stack.

    In this situation, users should consider switch to EspressoMinimizer, which uses heuristic algorithm providing a sub-optimized result.

  4. object TruthTable
  5. object decoder extends LazyLogging

Ungrouped