5.1.5 tri0 and tri1 nets
-
These nets are used to model nets with resistive pullup and pulldown devices applied on them.
​​
-
A tri0 net is equivalent to a wire net with a continuous 0 value of pull strength driving it. When no driver drives a tri0 net, its value is 0 with strength pull.
​​
-
A tri1 net is equivalent to a wire net with a continuous 1 value of pull strength driving it. When no driver drives a tri1 net, its value is 1 with strength pull.


Example with Verilog HDL code:
Assignment on normal wire:
Verilog
module sdv(in1, ctrl, y);
input in1, ctrl;
output y; //Default data type of output port is wire.
bufif1 b1(y, in1, ctrl);
endmodule
Output
When ctrl = 1, y = in1
When ctrl = 0, y = 1'bz
Assignment on tri0 wire:
Verilog
module sdv(in1, ctrl, y);
input in1, ctrl;
output tri0 y; //Default data type of output port is wire.
bufif1 b1(y, in1, ctrl);
endmodule
Output
When ctrl = 1, y = in1
When ctrl = 0, y = 0
Assignment on tri1 wire:
Verilog
module sdv(in1, ctrl, y);
input in1, ctrl;
output tri1 y; //Default data type of output port is wire.
bufif1 b1(y, in1, ctrl);
endmodule
Output
When ctrl = 1, y = in1
When ctrl = 0, y = 1