Skip to content

Latest commit

 

History

History
14 lines (11 loc) · 424 Bytes

05_synthesize.md

File metadata and controls

14 lines (11 loc) · 424 Bytes

Synthesizable Code

  • Modulus, exponent, arithmetic shift, case equality are non-synthesizable
  • Incomplete branches are non-synthesizable
  • Mixed edge/level signal are non-synthesizable ⇒ do not use

Latch Inference

  • incomplete if-else statement (mux)
    • also implies the statement with redundant branch (i.e., y = y)
    • add extra level (latch)
  • Two ways to avoid latch
    • initialize reg
    • complete branch