1. Purpose 1.1 I 2 C Trigger I 2 C Trigger Quick start of the I 2 C trigger and only for TravelLogic series logic analyzer. 2. Hardware setup 2.1 Testing Connections Connect CH0, CH1 to SW2.8(I 2 C SCK), SW2.7(I 2 C SDA) of the demo board as Diagram 1 below. Diagram1
3. Software July.2011 3.1 Start the I 2 C Trigger Run the LA Viewer and click in the toolbar or click Device-> Hardware settings. Refer to the Diagram 2 with the following steps: Step 1. Select I 2 C Trigger-4 (I 2 C Trigger-4CH mode). Step 2. Select sample rate (2 MHz), normally 5-10 times of the frequency of the target system. Step 3. Adjust the memory depth Diagram2 3.2 Threshold settings Click in the toolbar or click Device-> threshold settings. It is recommended to measure the I 2 C voltage first, and then set the proper threshold level. Please refer to Diagram3 & 4.
Diagram3 I 2 C voltage from a DSO: Max. 4.87V Min. 49.20mV Set LA threshold level TTL at 1.6V. Diagram4 3.3 Add I 2 C Bus decode Click in the toolbar and select I 2 C, refer to Diagram5.
Diagram5 3.4 I 2 C Trigger Settings 3.4.1 Select I 2 C Trigger Click in the toolbar and select I 2 C or click Device-> Trigger settings. Refer to Diagram6. Diagram 6
I 2 C Trigger Settings Dialog, refer to Diagram7. Diagram7 3.4.2 Channel SCL: 0, SDA: 1, refer to Diagram8. 0:CH 0 1:CH 1 Diagram8 3.4.3 Trigger Method There are 9 trigger methods, refer to Diagram9.
Diagram9 Method1: select Start frame of the data as the trigger condition. When the instrument Triggers, Cursor T will be on the start frame as Diagram10. S:Start W:12:Wr address 12h A:Ack Diagram10 Method2: select Re-Start to be the trigger condition. Method3: select Start or Re-Start to be the trigger condition. Method4: select Stop to be the trigger condition. Method5: select Missing Ack (same as NACK ) to be the trigger condition. Cursor T will be on the Start frame if the trigger succeeds under method1~5 as Diagram 10. Method6: select Match Sequently to be the trigger condition. 16 (most) levels of triggers can be set as Diagram 11. Each trigger level has three trigger options: Next, ThenIf or Then Trigger. Next means next trigger level; ThenIf means discontinuous trigger condition. Diagram11
Take Diagram11 for example, it s a 12 levels trigger. trigger condition. We take diagram11 for example, it s a 12 levels trigger condition. Each level must be set independently. Click the first level P1, an I 2 C Value Setting dialog will be shown as Diagram 12. Diagram12 i. Address There are Write, Read, and Don t care in Address section. Don t care means either Write or Read. a. Check Address in Diagram 13 to set Write address 12h as the trigger condition. Diagram13 b. If Address not checked and input 12h in Data/Address as Diagram 14, then Data is 12h will be triggered no mater the address is write or read.
Diagram14 ii. Check Acknowledge Choose ACK or NACK to check Acknowledge or check not Acknowledge; If Check Acknowledge is not checked, and then it means Don t care. iii. Data/Address There are two types of he value for the trigger conditions: binary code or hexadecimal code, ex: 0000010b or 12h. Also, the instrument can trigger 10h, 20h, 30h if the trigger condition is X0h or 00XX0000b (X or x: Don t care) as Diagram 15. = :equal to > :more than >= :more than or equal to.!= :is not equal to < :less than <= :less than or equal to. Diagram15 Cursor T will be on the NACK frame when the trigger succeeds as Diagram 16.
A:ACK 34:Data : 34h N:NACK Diagram16 Method7: select All Match to be the trigger condition that means all of each level condition must be matched like P1 Data > 30h and P2 Data < 40h as Diagram 17. Diagram17 Cursor T will be on the frame Data = 36h since P1: Data > 30h and P2: Data < 40h are matched as Diagram18. Diagram18
Method8: select Any Match to be the trigger condition, then the instrument will trigger if any trigger condition is matched. Method 9: select Timing Violation to be the trigger condition and there are 8 timing violation conditions as Diagram 19. The instrument will trigger when the time is less than the value set that will help users to find out the timing problems. Refer to the Diagram20; we will explain them one by one as following. Diagram19 i. tsu;sta (Red 1) It means Re-Start setup time. Diagram20 ii. thd;sta (Blue 2) It means Re-Start hold time. iii. tsu;dat (Blue 3) It means Data setup time. iv. thd;dat (Red 4) It means Data hold time.
v. tsu;sto (Red 5) It means Stop setup time. vi. tbuf (Blue 6) It means Bus free time between Start frame and Stop frame. vii. tlow (Red 7) SCL signal stays low state. viii. thigh (Blue 8) SCL signal stays high state. For example, if tsu;sta 14605ns is set and the instrument triggers as Diagram 21 where the time between cursor T and A is -14.6us (14600 ns < 14605ns). Diagram21
3.4.4 Pass Count Pass Count will pass N times that triggers occurred in the non-sequential trigger condition. For example, the trigger will pass three times in P3 (non-sequential trigger condition) and trigger at the fourth time as Diagram 22. Diagram22 3.4.5 Pass Count Type If Pass Count Type is checked, the loop will run from the first trigger condition (P1) as Diagram 23. Diagram23 3.4.6 Data match with P1 address This function is only available in Match Sequentially and P1 must be set as address and followed by data. For example, if we want to trigger Rd Address 12h, Data 35h in the following signal: Write 22h, Data 52h, 33h, 39h, 21h, 35h Read 12h, Data 33h, 35h, 24h, 15h, 26h Read 24h, Data 37h, 35h, 85h, 46h, 31h
Set the trigger conditions like P1: Read Address 12h, P2: Data 35h and select ThenIf between P1 and P2, then check Data match with P1 address as Diagram 24. Diagram24 The instrument will trigger and cursor T will be on the frame Data 35h as Diagram 25 Diagram25 3.5 Capture Click in the toolbar or click Device-> Run setting to capture the waveform.
4 FAQ Q1:How to set I 2 C trigger conditions to trigger the NACK of the frame Data 25h? A1: 1. Select Match Sequently in Trigger Method. 2. Click P1 and select Then Trigger. 3. Check Check Acknowledge and select NACK. 4. Input value 25h in Data/Address and select = as Diagram 26. Diagram26 Q2:How to set I 2 C trigger conditions to trigger he frame Rd address 26h in the following I 2 C signal: Read 26h, Data 36h, 28h, 35h, 45h? A2: 1. Select Match Sequently in Trigger Method. 2. Click P1 and select Then Trigger. 3. Check Address and select Read. 4. Input value 26h or 00100110b in Data/Address and select = as Diagram 27.
Diagram27 Q3:How to set I 2 C trigger conditions to trigger the frame Data 20h, 21h, 22h, 23h in the following I 2 C signal: Write 26h, Data 22h, 21h, 23h, 20h, 29h? A3: 1. Select Match Sequently in Trigger Method. 2. Click P1 and select Then Trigger. 00100001 (21h) 00100010 (22h) 00100011 (23h) 00101001 (29h) 00100000 (20h) Change the last two bits to XX (Don t care). 3. Input value 001000XXb in Data/Address and select = as Diagram 28.
Diagram28 Q4:How to set I 2 C trigger conditions to trigger other frame except Data 20h, 56h, 25h in the following I 2 C signal: Write 12h, Data 20h, 56h, 25h, 34h, 22h? A4:Select All Match trigger method as Diagram 29. Diagram29
Click P1 ( Used ) and input the value 20h in Data/Address and select!= as Diagram 30 with P2 and P3 the same settings. Diagram30 The instrument triggers and cursor T will be on the frame Data 34h where all three trigger conditions P1, P2 and P3 are matched as Diagram 31. Diagram31 Q5:Why cursor T not be on the second Start frame if Start is the trigger condition and Pass Count = 1 as Diagram 32? Diagram32 A5:The instrument can not recognize the first start frame as Start or Re-Start frame if there is no Stop frame. Q6:How can we set the trigger conditions to measure the address error when there are two I 2 C devices connected to the host system and work at the same time?
A6:Assume one I 2 C address is 10h and another is 20h. Set the trigger conditions as the following steps. 1. Select All Match in Trigger Method. 2. Select P1/P2 as Used and click P1/P2. 3. Check Address and select Don t care. 4. Input the value 10h/20h in Data/Address and select!= as Diagram 33 Diagram33 The instrument triggers and cursor T will be on Rd Address 17h where P1 and P2 trigger conditions are matched at the same time as Diagram 34 Diagram34 Q7:How to trigger the idle time less than 40us between Start and Stop in the I 2 C signal? A7: 1. Select Timing Violation in Trigger Method. 2. Check tbuf and input 40000 ns as Diagram 35
Diagram35 The instrument will trigger as Diagram 36 Diagram36
5 I 2 C Glitch/Noise In I 2 C measurement, when the target signal transits slowly and bounces, then the instrument might see many glitches/noises as Diagram 37 Diagram37 These glitches/noises may cause errors in I 2 C analysis; three solutions might fix such errors. 1. Lower the instrument s sampling rate. Lower the sampling rate to avoid high frequency glitches/noises. Advantage: easy to use. Disadvantage: may miss the valid I 2 C signal. 2. Click Glitch Filter Settings in Diagram 38 to show Diagram 39 to set pulse width as filter conditions to filter the high frequency glitches/noises. Advantage: easy to use. Disadvantage: may miss the glitches/noises caused by other reasons.
Diagram38 In Diagram 37, the clock glitch (CH 0) is about 5ns. So, check CH0 and set Filter less than 10ns pulse as Diagram 39, then the instrument will filter all glitches that are less than 10ns. Then capture once, LA will filter the glitch is less than 10ns. Diagram39 3. Use Schmitt circuit, that is the best solution, as Diagram 40 and Diagram 41. Use two threshold voltages (voltage-high, voltage-low) to filter the glitches/noises occurred when the target signal transits slowly and bounces between the two threshold voltages.
Diagram40 Diagram41 Schmitt circuit is only available for the TravelLogic series logic analyzers. The two threshold voltages (Threshold-High, Threshold-Low) are group 1 channels (Channel 0-17) and group 2 channels (Channel 18-35). Set I 2 C Clock (CH0) and I 2 C Data (CH1) threshold- high: 2.75V, threshold-low: 1V as Diagram 42, then run captures, I 2 C signal shall be measured correctly.
Contact us Website: http://www.acute.com.tw/ E-mail: service@acute.com.tw Acute Technology Inc. 2F-8, #12, Ln. 609, Sec. 5, Chongxin Rd., Sanchong Dist., New Taipei City 24159, Taiwan TEL:+886-2-2999-3275 FAX:+886-2-2999-3276 Acute Technology Inc. Copyright 2011