Prev Problem
Next Problem

25. Single-Driver Data Line using uwire

module single_driver_line(
  input  wire d1, d2,
  output uwire y            // uwire: unresolved wire
);
  // LEGAL: single driver
  assign y = d1;

  // ILLEGAL (uncomment to see compile-time error due to multiple drivers on uwire):
  // assign y = d2;
endmodule

⚠️ Notice: uwire is not supported by current version of synthesizer.

💡 Remember

  • uwire = unresolved wire : multiple drivers are illegal at compile time.
  • Use it to enforce architectural intent (exactly one driver).
  • If you need resolution, use wire/tri (with care) or wand/wor by design.