What is the use of signal strengths in coding?

What is the use of following signal strengths?
supply
strong
pull
large
weak
medium
small
highz

In reply to saikanthan7798:

For one, value conflict resolution. If all signals were the same strength and you had two wires connected together (via assigns or port connections) that were each driving a different value, the resolution would be unknown (X).

If one of those wires is specified to be at a higher signal strength, it will win and the resulting output will take on that stronger value.

This is commonly done to model pull-ups or pull-downs. I haven’t seen much usage beyond that except for the occasional use of “supply” strength signals for power/ground pins.

In reply to saikanthan7798:

An example would be the i2c bus. It drivers drive strong0 or highz1 and the wire has a pullup1 drive.

The other strengths are more useful in custom IC designs where you are using digital simulation for transistor level design. That is a rarity now.