Verification Central


Ever Wonder How USB Type-C Works?

In our previous Type-C blog – What’s New with USB TYPE-C, we looked at why Type-C is the next-generation adaptor, which is thinner with multipurpose capabilities, making it quite handy to the end consumer. Along with fulfilling the power/charging abilities, it intends to proxy several cable plugs like VGA, HDMI, beefy USB Type-A connector, etc. Predominant responsibility of Type-C connector is supplying/sourcing current and data transmission and reception. Ever wonder how does this dynamic connector work?

  • Where does the current flow from?
  • How does the connector resolve the data flow direction, i.e. in simple USB terms, how is the decision to configure the connector as Host or Device determined?
  • How does Type-C work consistently in flipped as well as straight orientation?
  • We will delve into the complexity of Type-C in this blog, and explain how it really works.


Power Role Dynamics

Based on power flow, we can have following categories of ports: –

  1. Source or provider – This is the port which can supply varied current ranges depending upon current advertisements over the PD cable.
  2. Sink or consumer – This port exclusively behaves like Sink and consumes power.
  3. Dual Role Ports (DRP) – This port can act as both Sink or Source. DRPs can connect with other DRPs (Power resolution happens via DRP toggle), or they can connect to either Sink or Source on the other side.

The pins CC1 and CC2 are used to establish connection between source and sink. The connection between source and sink is established based on the termination detected on CC pin. There are four kinds of resistance terminations that a source or sink can detect, as mentioned below: –

  1. Rp – Pull Up Termination
  2. Rd – Pull Down Termination
  3. Ra – This termination is required for Vconn power requirements
  4. Open – Nothing connected

The Source’s exposed pull-up (Rp) on its CC pin and Sink’s advertisement of pull-down (Rd) completes the connection. Dual Role Port has the capability to expose both pull-up and pull-down and can settle down as both Source or Sink. Power role can be changed using Power Role Swap messages via Power Delivery.

Data Operation

Type-C supports USB data operations. When the connection is established, the source inherits traditional Host’s role and similarly Sink inherits Device’s role. Additionally, the Type-C plugs can be categorized into following based on data operations: –

  1. DFP Only (Downstream Facing Port)
  2. UFP Only (Upstream Facing Port)
  3. Dual Role Data (DRD) – This plug can act as both Host(DFP) or Device(UFP)

Similar to power role, the data role responsibility can also be swapped using Power Delivery’s Data Role Swap message.

Cable Orientation Detection

If CC1 pin detects valid Rp/Rd termination, then the cable is believed to be connected in straight orientation. If CC2 pin detects Rp/Rd, then it is a flipped orientation. If the Type-C cable is electronically marked, even Ra detection can unmask the cable orientation. For example, if CC1 pin detects Ra, it is oriented in flipped mode. Below table explains the cable orientation detection.

typec-cable-orientation-1Active or Electronically Marked Cables: –

CC pin, other than the one where connection has been established, is used to supply Vconn for electronically marked cables. These cables have pull-down resistance Ra connected. The responsibility to drive Vconn resides with the source and like other roles (power, data), the Vconn supply role can be swapped using Power Delivery.

In summary, we detailed how USB Type-C’s unique features enable it to be flexible with data/power roles and orientation. Stay tuned for the next USB Type-C blog.

Read our previous blog on Type-C – What’s New with USB TYPE-C. Synopsys’ USB Type-C™ Subsystem Verification Solution is being adopted rapidly and in production use at many customers. Read more about Adoption of Synopsys’ USB Type-C Subsystem Verification Solution by ASIX. For more information on Synopsys’ VIP for USB 3.1, 3.0, 2.0, USB PD, and verification subsystem solution for USB Type-C, please visit:

Authored by Prishkrit Abrol.