Announcements

Live Webinar: USB-C adoption. Simple & Cost-efficient solutions | April 18th @9am or 5pm CEST. Register now !

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
lock attach
Attachments are accessible only for community members.
NoAr_1540581
Level 5
Level 5
Distributor - Macnica (Japan)
5 solutions authored 250 sign-ins 100 replies posted

Hello

Q1) I understand that BCR supports clock stretch, but is the attached measurement result = 228.86us a reasonable value?
(Reading the register "BUS_VOLTAGE 0x100D")

Q2) How is the clock stretch time defined? Please explain including the relationship with Q1

Best Regards

0 Likes
1 Solution
Pranava_YN
Moderator
Moderator
Moderator
100 likes received 500 replies posted 250 solutions authored

Hi,

Q1) The attached time period of clock stretching is reasonable and expected.

Q2) The main reason for clock stretching in BCR before sending NAK/ACK for the preamble byte (Both read and write) is that this ACK/NACK is not directly sent by the Hardware I2C block. The BCR firmware has to service this from the firmware side. If BCR is in some other part of firmware like servicing Type-C or PD related interrupt it will stretch the clock. Therefore the time of clock stretching depends on the part of firmware that is currently being executed.

Please let me know if you need any further clarifications on this.

Best regards,
Pranava

View solution in original post

0 Likes
1 Reply
Pranava_YN
Moderator
Moderator
Moderator
100 likes received 500 replies posted 250 solutions authored

Hi,

Q1) The attached time period of clock stretching is reasonable and expected.

Q2) The main reason for clock stretching in BCR before sending NAK/ACK for the preamble byte (Both read and write) is that this ACK/NACK is not directly sent by the Hardware I2C block. The BCR firmware has to service this from the firmware side. If BCR is in some other part of firmware like servicing Type-C or PD related interrupt it will stretch the clock. Therefore the time of clock stretching depends on the part of firmware that is currently being executed.

Please let me know if you need any further clarifications on this.

Best regards,
Pranava
0 Likes