WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 GENERAL DESCRIPTION The WT60P1 is a MTP (Multiple-Time-Programmable) version of WT60xx microcontroller which is specially designed for digital controlled multi-sync monitor. It contains 8-bit CPU, 16K bytes flash memory, 288 bytes RAM, 14 PWMs, parallel I/O, SYNC processor, timer, one DDC interface (slave mode I2C interface with DDC1), one master/slave I2C interface, two 4-bit A/D converters and watchdog timer. FEATURES * 8-bit 6502 compatible CPU, 4MHz operating frequency * 16384 bytes flash memory, 288 bytes SRAM * 8MHz crystal oscillator * 14 channels 8-bit/62.5kHz PWM outputs (8 open drain outputs & 6 CMOS outputs) * Sync signal processor with H+V separation, frequency calculation, H/V polarity detection/control * Three free-running sync signal outputs for burn-in test (64kHz/62.5Hz, 48kHz/75Hz, 31kHz/60Hz) * Self-test pattern generator generates cross hatch picture * DDC interface supports VESA DDC1/DDC2B standard * Master/slave I2C interface * Watch-dog timer (0.524 second) * Maximum 25 programmable I/O pins * One 8-bit programmable timer * Two 4-bit A/D converter * One external interrupt request * Built-in low VDD voltage reset * +5V power supply PIN CONFIGURATION 40-Pin PDIP 42-Pin SDIP DA2 1 40 VSYNC DA2 1 42 VSYNC DA1 2 39 HSYNC DA1 2 41 HSYNC DA0 3 38 DA3 DA0 3 40 DA3 RESET/VPP 4 37 DA4 RESET/VPP 4 39 DA4 VDD 5 36 DA5 VDD 5 38 DA5 GND 6 35 DA6 6 37 OSCO 7 34 DA7 GND 7 36 OSCI 8 33 PA7/HSO OSCO 8 35 DA7 PB5/SDA2 9 32 PA6/VSO OSCI 9 34 PA7/HSO PB4/SCL2 10 31 PA5/DA13 PB5/SDA2 10 33 PA6/VSO PB3/PAT 11 30 PA4/DA12 PB4/SCL2 11 32 PA5/DA13 PB2 12 29 PA3/DA11 PB3/PAT 12 31 PA4/DA12 PB1/HLFI 13 28 PA2/DA10 PB2 13 30 PA3/DA11 PB0/HLFO 14 27 PA1/DA9 PB1/HLFI 14 29 PA2/DA10 PB6/IRQ 15 26 PA0/DA8 PB0/HLFO 15 28 PA1/DA9 PC7 16 25 SCL1/PD0 PB6/IRQ 16 27 PA0/DA8 PC6 17 24 SDA1/PD1 PC7 17 26 SCL1/PD0 PC5 18 23 PC0/AD0 PC6 18 25 SDA1/PD1 PC4 19 22 PC1/AD1 PC5 19 24 PC0/AD0 PC3 20 21 PC2 PC4 20 23 PC1/AD1 PC3 21 22 PC2 DA6 * I2C is a trademark of Philips Corporation. * DDC is a trademark of Video Electronics Standard Association (VESA). Weltrend Semiconductor, Inc. 1 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 PIN DESCRIPTION Pin No. 40 42 Pin Name I/O Descriptions O O O I D/A converter 2. Open-drain output. External applied voltage can up to 10V. D/A converter 1. Open-drain output. External applied voltage can up to 10V. D/A converter 0. Open-drain output. External applied voltage can up to 10V. Reset or Vpp. Active low reset input or Vpp for erase/write flash memory. Power supply (+5V). Ground (0V). Oscillator Output. Connects a 8MHz crystal. Oscillator Input. Connects a 8MHz crystal. I/O Port B5 or I2C data pin. This pin can be an I/O port or I2C serial data pin. I/O Port B4 or I2C clock pin. This pin can be I/O port or I2C clock pin. I/O Port B3 or self-test pattern output. When as an I/O port, it is same as PB5. When it is configured to test pattern output, a vedio signal is output. I/O Port B2. When it is an input pin, it has an internal pull-up resistor. When it is an output pin, the source/sink current is 5mA. I/O Port B1 or half frequency input. I/O Port B0 or half frequency output. I/O Port B6 or Interrupt Request . When as interrupt request input, it has an internal pull high resistor. When as an I/O port, it is same as PB3. I/O Port C7. When it is an input pin, it has an internal pull-up resistor. When it is an output pin, the sink current is 10mA and the source current is 5mA. I/O Port C6. Same as PC7. I/O Port C5. Same as PC7. I/O Port C4. Same as PC7. I/O Port C3. Same as PC7. I/O Port C2. Same as PC7. I/O Port C1 or A/D converter input 0. I/O Port C0 or A/D converter input 1. DDC serial data or I/O Port D1. When it is a DDC interface pin, It is an open- drain output. When as an I/O port, it is same as Port B. DDC serial clock or I/O Port D0. When it is a DDC interface pin, It is an open- drain output. When as an I/O port, it is same as Port B. I/O Port A0 or D/A converter 8. This pin can be the output of D/A converter 8 (source/sink = 5mA) or an I/O pin (source = -100uA, sink = 5mA). I/O Port A1 or D/A converter 9. Same as PA0/DA8. I/O Port A2 or D/A converter 10. Same as PA0/DA8. I/O Port A3 or D/A converter 11. Same as PA0/DA8. I/O Port A4 or D/A converter 12. Same as PA0/DA8. I/O Port A5 or D/A converter 13. Same as PA0/DA8. I/O Port A6 / VSYNC OUT. This pin can be the output of VSYNC or an I/O pin. When as an I/O pin, it is same as PA0. I/O Port A7 / HSYNC OUT. This pin can be the output of HSYNC or an I/O pin. When as an I/O pin, it is same as PA0. D/A converter 7. Open-drain output. External applied voltage can up to 10V. D/A converter 6. Open-drain output. External applied voltage can up to 10V. D/A converter 5. Open-drain output. External applied voltage can up to 10V. D/A converter 4. Open-drain output. External applied voltage can up to 10V. D/A converter 3. Open-drain output. External applied voltage can up to 10V. HSYNC input. Schmitt trigger input. VSYNC input. Schmitt trigger input. 1 2 3 4 5 6 7 8 9 10 11 1 DA2 2 DA1 3 DA0 4 /RESET/VPP 5 VDD 7 GND 8 OSCO 9 OSCI 10 PB5/SDA2 11 PB4/SCL2 12 PB3/PAT O I I/O I/O I/O 12 13 PB2 I/O 13 14 15 14 15 16 PB1/HLFI PB0/HLFO PB6/IRQ I/O I/O I/O 16 17 PC7 I/O 17 18 19 20 21 22 23 24 18 19 20 21 22 23 24 25 PC6 PC5 PC4 PC3 PC2 PC1/AD1 PC0/AD0 SDA1/PD1 I/O I/O I/O I/O I/O I/O I/O I/O 25 26 SCL1/PD0 I/O 26 27 PA0/DA8 I/O 27 28 29 30 31 32 28 29 30 31 32 33 PA1/DA9 PA2/DA10 PA3/DA11 PA4/DA12 PA5/DA13 PA6/VSO I/O I/O I/O I/O I/O I/O 33 34 PA7/HSO I/O 34 35 36 37 38 39 40 35 36 38 39 40 41 42 DA7 DA6 DA5 DA4 DA3 HSYNC VSYNC O O O O O I I Weltrend Semiconductor, Inc. 2 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 FUNCTIONAL DESCRIPTION CPU The CPU core is 6502 compatible, operating frequency is 4MHz. Address bus is 16-bit and data bus is 8-bit. the non-maskable interrupt (/NMI) of 6502 is changed to maskable interrupt and is defined as the INT0. The interrupt request (/IRQ) of 6502 is defined as the INT1. Default stack pointer is 01FFH. Please refer the 6502 reference menu for more detail. ROM 16384 bytes flash memory are provided for program codes. Address is located from C000H to FFFFH. The following addresses are reserved for special purpose : FFFAH (low byte) and FFFBH (high byte) : INT0 interrupt vector. FFFCH (low byte) and FFFDH (high byte) : program reset vector. FFFEH (low byte) and FFFFH (high byte) : INT1 interrupt vector. RAM Built-in 288 bytes SRAM, address is located from 0080H to 019FH. Because the initial stack pointer is 01FFH, so program must set proper stack pointer when program starts. A recommended value is 019FH. Note : If user wants to emulate WT6014, please set bit 7 in REG#7FH. This will set stack pointer to 00FFH. 0000H : 0020H 0021H : 007FH 0080H : 019FH 01A0H : BFFFH C000H : : : FFFFH REGISTERS Reserved RAM Reserved ROM Low VDD Voltage Reset A VDD voltage detector is built inside the chip. When VDD is below 4.0 volts, the whole chip will be reset just like power-on-reset. Note that the 4.0 volts varies with temperature and process. Please refer the electrical characteristics. Weltrend Semiconductor, Inc. 3 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 PWM D/A Converter The WT6018 provides 14 PWM D/A converters. DA0 to DA7 are open-drain outputs and external applied voltage on these pins can be up to 10 volts. DA8 to DA13 are 5 volts push-pull CMOS outputs and are shared with I/O Port PA0 to PA5. All D/A converters are 62.5kHz frequency with 8-bit resolution. Each D/A converter is controlled by the corresponding register (REG#00H to REG#0DH), the duty cycle can be programmed from 1/256 (data = 01H) to 255/256 (data = FFH). Duty cycle = 1/256 62.5ns Duty cycle = 2/256 125ns 62.5ns Duty cycle = 255/256 1/62.5kHz=16us To program the PWM D/A converters, write the corresponding registers ( REG#00H to REG#0DH). Address 0000H 0001H 0002H 0003H 0004H 0005H 0006H 0007H 0008H 0009H 000AH 000BH 000CH 000DH R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W R/W Bit Name DAx7-DAx0 Initial 80H 80H 80H 80H 80H 80H 80H 80H 80H 80H 80H 80H 80H 80H Bit7 DA07 DA17 DA27 DA37 DA47 DA57 DA67 DA77 DA87 DA97 DA107 DA117 DA127 DA137 Bit6 DA06 DA16 DA26 DA36 DA46 DA56 DA66 DA76 DA86 DA96 DA106 DA116 DA126 DA136 Bit5 DA05 DA15 DA25 DA35 DA45 DA55 DA65 DA75 DA85 DA95 DA105 DA115 DA125 DA135 Bit4 DA04 DA14 DA24 DA34 DA44 DA54 DA64 DA74 DA84 DA94 DA104 DA114 DA124 DA134 Bit3 DA03 DA13 DA23 DA33 DA43 DA53 DA63 DA73 DA83 DA93 DA103 DA113 DA123 DA133 Bit2 DA02 DA12 DA22 DA32 DA42 DA52 DA62 DA72 DA82 DA92 DA102 DA112 DA122 DA132 Bit1 DA01 DA11 DA21 DA31 DA41 DA51 DA61 DA71 DA81 DA91 DA101 DA111 DA121 DA131 Bit0 DA00 DA10 DA20 DA30 DA40 DA50 DA60 DA70 DA80 DA90 DA100 DA110 DA120 DA130 Bit value 01H : 1/256 duty cycle 02H : 2/256 duty cycle 03H : 3/256 duty cycle : FFH : 255/256 duty cycle **Do not write 00H to the PWM registers. This will cause unstable output. Weltrend Semiconductor, Inc. 4 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 I/O Ports Port_A : Pin PA0/DA8 Pin PA1/DA9 Pin PA2/DA10 Pin PA3/DA11 Pin PA4/DA12 Pin PA5/DA13 Pin PA6/VSO Pin PA7/HSO - general purpose I/O shared with DA8 output. - general purpose I/O shared with DA9 output. - general purpose I/O shared with DA10 output. - general purpose I/O shared with DA11 output. - general purpose I/O shared with DA12 output. - general purpose I/O shared with DA13 output. - general purpose I/O shared with VSYNC output. - general purpose I/O shared with HSYNC output. Port_A is controlled by REG#10H & REG#11H. In REG#10H, each corresponding bit enables HSYNC output, VSYNC output or D/A converter output when it is "1". If the corresponding bit is "0", the output level is decided by REG#11H. In REG#11H, if the I/O corresponding bit (PAn) is "0", the output is low level (IOL=5mA). If PAn bit is "1", the output is high level (IOH= -100uA) and can be used as an input. Address 0010H 0011H 0011H R/W W W R Initial 00H FFH -- Bit7 EHO PA7W PA7R Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 EVO EDA13 EDA12 EDA11 EDA10 EDA9 PA6W PA5W PA4W PA3W PA2W PA1W PA6R PA5R PA4R PA3R PA2R PA1R Bit0 EDA8 PA0W PA0R Bit Name Bit value = “1” Bit value = “0” EHO Enable PA7 as HSYNC output. PA7 as general purpose I/O. EVO Enable PA6 as VSYNC output. PA6 as general purpose I/O. EDA13 Enable PA5 as DA13 output. PA5 as general purpose I/O. EDA12 Enable PA4 as DA12 output. PA4 as general purpose I/O. EDA11 Enable PA3 as DA11 output. PA3 as general purpose I/O. EDA10 Enable PA2 as DA10 output. PA2 as general purpose I/O. EDA9 Enable PA1 as DA9 output. PA1 as general purpose I/O. EDA8 Enable PA0 as DA8 output. PA0 as general purpose I/O. PA7W - PA0W Outputs high level (IOH= -100uA). Outputs low level (IOL= 5mA). PA7R- PA0R Pin is high level. Pin is low level. * If the program wants to force VSYNC output (VSO pin) in low state, write "0" to PA6 bit first, then write "0" to EVO bit. This is used to prevent high frequency output on VSO pin when the VSYNC frequency is increased to read EDID data in DDC1 mode. EDAx 5mA 100uA DAx Pin PAn 5mA PAnW PAnR Weltrend Semiconductor, Inc. 5 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 Port_B : Pin PB0/HLFO - general purpose I/O pin shared with half frequency output. Pin PB1/HLFI - general purpose I/O pin shared with half frequency output. Pin PB2 - general purpose I/O pin. Pin PB3/PAT - general purpose I/O pin shared with self-test pattern output. Pin PB4/SCL2 - general purpose I/O pin shared with I2C interface clock pin. Pin PB5/SDA2 - general purpose I/O pin shared with I2C interface data pin. Pin PB6/IRQB - general purpose I/O pin shared with interrupt request input. The source/sink current of port_B is 5mA when as an output. When it is input, an internal pull high resistor is connected. Address 0012H 0013H 0013H R/W W W R Bit Name PB6OE - PB0OE PB6W - PB0W PB6R- PB0R Initial 00H FFH -- Bit7 0 1 -- Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 PB6OE PB5OE PB4OE PB3OE PB2OE PB1OE PB0OE PB6W PB5W PB4W PB3W PB2W PB1W PB0W PB6R PB5R PB4R PB3R PB2R PB1R PB0R Bit value = “1” Output enable. Outputs high level (IOH= -5mA). Pin is high level. Bit value = “0” Output disable (internal pull-up). Outputs low level (IOL= 5mA). Pin is low level. * If IEN_D bit in REG#1AH is “1” and PB6OE bit is "0", the PB6 pin becomes interrupt request input. * If ENI2C bit in REG#1EH is “1”, the PB5 and PB4 pins becomes I2C interface pins. * If ENPAT bit in REG#16H is “1”, the PB3 pin becomes self-test pattern output. * If ENHALF bit in REG#17H is “1”, the PB1 pin becomes half frequency input and PB0 pin becomes half frequency output pin. PBnOE 5mA Pin PB0 to PB6 5mA PBnW 100uA PBnR Structure of Port B Weltrend Semiconductor, Inc. 6 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 Port_C : Pin PC0 - general purpose I/O pin shared with 4-bit A/D converter 0 input. Pin PC1 - general purpose I/O pin shared with 4-bit A/D converter 1 input Pin PC2 to PC7 - general purpose I/O pins. The REG#14H defines the I/O direction and the REG#15H controls the output level. The structure of Port_C is same as the Port_B except the sink current is 10mA. When PC0 and PC1 are programmed as the A/D converter inputs, the pull high transistor is disconnected. Address 0014H 0015H 0015H R/W W W R Bit Name PC7OE - PC0OE PC7W - PC0W PC7R - PC0R Initial 00H FFH -- Bit7 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 PC7OE PC6OE PC5OE PC4OE PC3OE PC2OE PC1OE PC0OE PC7W PC6W PC5W PC4W PC3W PC2W PC1W PC0W PC7R PC6R PC5R PC4R PC3R PC2R PC1R PC0R Bit value = “1” Output enable. Outputs high level (IOH= -5mA). Pin is high level. Bit value = “0” Output disable (internal pull-up). Outputs low level (IOL= 10mA). Pin is low level. Port_D : Pin SCL1/PD0 - general purpose I/O pin shared with DDC interface serial clock. Pin SDA1/PD1 - general purpose I/O pin shared with DDC interface serial data. The structure of these two pins are same as the PB4 and PB5. Default is DDC interface and can be changed to I/O port D by setting ENPD bit. Address 000FH 000FH R/W W R Bit Name ENPD PD1OE - PD0OE PD1W - PD0W PD1R- PD0R Initial 00H -- Bit7 --- Bit6 --- Bit5 --- Bit value = “1” Enable I/O Port_D. Output enable. Outputs high level (IOH= -5mA). Pin is high level. Bit4 Bit3 Bit2 Bit1 ENPD PD1OE PD0OE PD1W ---PD1R Bit0 PD0W PD0R Bit value = “0” DDC interface.(open drain) Output disable (internal pull-up). Outputs low level (IOL= 5mA). Pin is low level. * If program wants to read current status on the I/O pins (any I/O port), do not set output enable bit to “0”. Because the registers for reading I/O are always indicating the current state on the I/O pins, set output enable bit to “0” will change the level on the I/O pin. Please reference the I/O pin structure. Weltrend Semiconductor, Inc. 7 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 SYNC Processor The SYNC processor can : (1) separate the composite sync signal; (2) calculate HSYNC and VSYNC frequencies; (3) detect polarities of HSYNC and VSYNC inputs; (4) control the output polarities of HSO and VSO pins. (5) generate free-running horizontal and vertical sync signals for burn-in test; (6) generate self-test pattern signal. HSYNC Mux H Polarity Sync detect Separator H/V Freq. Counter Mux H+V H/V SYNC Generator H V H Polarity SELF Mux Mux HSO V Polarity control VSO V Polarity detect VSYNC H+V control Test Pattern Generator Mux PB3 PB3/PAT Composite Sync Signal Separation The composite sync signal comes from HSYNC pin and is separated by the sync separator. The operations of sync separator are: - detect the polarity and convert composite sync signal to positive polarity. - extract Vsync Pulse width less than 8us will be filtered, but the Vsync will be widened about 8us. - count the pulses during the separated Vsync is low and save the counter value (NH). - bypass the composite sync pulses before the counter equals to NH. - start inserting Hsync pulses after the counter equals to NH until the separated Vsync is low. - the period of inserted Hsync is decided by the last two bypassed Hsync. - the pulse width of the inserted Hsync is 2us. Positive H+V separated Hsync bypass insert HSYNC separated Vsync To decide whether the HSYNC input is a composite sync signal or not, program should check the frequency of VSYNC first (reset H+V bit to “0”). If the VSYNC frequency is lower than 15.25Hz (OVF2=1), set H+V bit to “1” and check VSYNC frequency again. If VSYNC still has no frequency, that is power saving condition, program should reset H+V bit. If it has a valid frequency, the HSYNC input is composite signal. Weltrend Semiconductor, Inc. 8 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 Frequency Calculation Horizontal frequency and vertical frequencies calculation are done by using one 10-bit up counter. After power is on, the SYNC processor calculates the vertical frequency first (H/V bit ="0"). A 31.25KHz clock counts the time interval between two VSYNC pulses, then sets the FRDY bit and generates an INT1 interrupt (if IEN_S bit is "1"). The software can either use interrupt or polling the FRDY bit to read the correct vertical frequency. After reading the REG#16H, the FRDY bit is cleared to "0", counter is reset and H/V bit is set. The SYNC processor starts to count horizontal frequency. The horizontal frequency calculation is done by counting the HSYNC pulses in 8.192 ms. Like the vertical frequency, the horizontal frequency can be read when the FRDY bit is set or INT1 occurs. After reading the REG#16H, the FRDY, INT_S and H/V bits are cleared. The SYNC processor starts to calculate the vertical frequency again, and so on. The relationships between counter value and frequency are : Hfreq = (counter value x 122.07) Hz Vfreq = ( 31250 / counter value ) Hz The frequency range : Hfreq range : 122.07 Hz to 124.8 kHz ; Resolution : 122.07Hz Vfreq range : 30.5 Hz to 31.25 kHz If counter overflowed, the OVF1 bit will be set to "1". The counter keeps on counting until it overflowed again. The OVF2 bit and FRDY bit will be set when counter overflowed twice. This is designed for finding the vertical frequency bellows 15.25Hz. The program should check REG#17H before reading REG#16H. Polarity Detect/Control The polarities of HSYNC and VSYNC are automatically detected and are shown in the H_POL and V_POL bits. The polarities of HSO and VSO are controlled by the HOP and VOP bits. For example, set HOP bit to “1”, the HSO pin always outputs positive horizontal sync signal, whatever the HSYNC input’s polarity is. Free-running Sync Signal The self-generated sync signals are output from HSO and VSO pins if SELF bit is “1”. Three kinds of frequencies are provided : (1) Hfreq = 8MHz/125 = 64.0kHz, Vfreq = Hfreq/1024 = 62.5Hz. (2) Hfreq = 8MHz/167 = 47.9kHz, Vfreq = Hfreq/640 = 74.9Hz. (3) Hfreq = 8MHz/257 = 31.1kHz, Vfreq = Hfreq/512 = 60.8Hz . The output polarities are controlled by the HOP and VOP bits. The pulse width of HSO is 2us and VSO is four HSO cycles. The timing relationship is shown in the following : 2us HSO VSO Weltrend Semiconductor, Inc. 9 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 Test Pattern Generation A self-test pattern signal comes out from pin PB3/PAT. It can generate a cross hatch picture, a inverted cross hatch picture, a white picture or a black picture. 8 X 8 cross hatch Inverted 8 X 8 cross hatch White Picture Black Picture The test pattern signal is generated when SELF and ENPAT are both set to “1”. This vedio signal will synchronize to the free-running Hsync and Vsync, no matter which frequency is chosen. The following diagram shows the timing relationship of cross hatch picture. HSO PAT T2 T1 T3 T1 HSO 31.1kHz 47.9kHz 64kHz T2 VSO T1 T2 T3 60.8Hz 74.9Hz 62.5Hz 6us 5.125us 3.625us 1us 0.625us 0.875us 62.5ns 62.5ns 62.5ns Weltrend Semiconductor, Inc. 10 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 Half Frequency HLFO pin outputs same or half frequency from HLFI pin. The divide-by-2 operation is done on the falling edge of HLFI pin when HALF bit is set. Polarity of HLFO is specified by HLFPO bit. HLFI HLFO (HALF=0) (HLFPO=0) HLFO (HALF=0) (HLFPO=1) HLFO (HALF=1) 0016H 0016H 0017H 0017H R/W W R W R Bit Name ENPAT PAT1,PAT0 SELF H64K, H48K ENHLF HALF HLFPO H+V HOP VOP H/V H_POL V_POL OVF2, OVF1 F9-F0 Initial ---00H Bit7 0 F9 -H/V Bit6 0 F8 --- Bit5 Bit4 Bit3 Bit2 ENPAT PAT1 PAT0 SELF F7 F6 F5 F4 ENHLF HALF HLFPO H+V H_POL V_POL OVF2 OVF1 Bit1 H64K F3 HOP F1 Bit0 H48K F2 VOP F0 Bit value = “1” Bit value = “0” Pin PB3/PAT outputs test pattern. Pin PB3/PAT is I/O port. If PAT1=0, PAT0=0, cross hatch picture. If PAT1=0, PAT0=1, white picture. If PAT1=1, PAT0=0, inverted cross hatch picture. If PAT1=1, PAT0=1, black picture. HSO and VSO output free-running HSO and VSO output sync signals. frequency. H64K=“1”,H48K=“1” : Burn-in frequency=47.9kHz/74.9Hz H64K=“0”,H48K=“1” : Burn-in frequency=47.9kHz/74.9Hz H64K=“1”,H48K=“0” : Burn-in frequency=64kHz/62.5Hz H64K=“0”,H48K=“0” : Burn-in frequency=31.1kHz/60.8Hz Pin PB1/HLFI is frequency input. Pin PB1/HLFI and PB0/HLFO is I/O Pin PB0/HLFO is half frequency port. output. HLFO outputs half frequency of HLFI. HLFO outputs same frequency of HLFI HLFO is positive polarity. HLFO is negative polarity. Enable H+V separation function. Disable H+V separation. This will select the sync signals come from the sync separator. HSO pin is always positive polarity. HSO pin is always negative polarity. VSO pin is always positive polarity. VSO pin is always negative polarity. Counter stores horizontal frequency. Counter stores vertical frequency. HSYNC input is positive polarity. HSYNC input is negative polarity. VSYNC input is positive polarity. VSYNC input is negative polarity. OVF2=“1”,OVF1=“0” : Counter overflowed twice. OVF2=“0”,OVF1=“1” : Counter overflowed once. OVF2=“0”,OVF1=“0” : No overflow. OVF2=“1”,OVF1=“1” : No such condition. Frequency counter value. (F9 is MSB) Weltrend Semiconductor, Inc. 11 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 DDC Interface The DDC interface is a slave mode I2C interface with DDC1 function. It is fully compatible with VEAS DDC1/2B standard. The functional block diagram is shown in the below. Internal Data Bus ENACK Data Buffer SDA I/O VSYNC Shift Register MUX R/W Address Compare ADDR MSB START START/STOP Detect 1 0 1 0 0 0 0 STOP Handshake Control DDC2B Address Register SCL After power on or reset the DDC interface, it is in DDC1 state. The shift register shifts out data to SDA pin on the rising edge of VSYNC clock. Data format is an 8-bit byte followed by a null bit. Most significant bit (MSB) is transmitted first. Every time when the ninth bit has been transmitted, the shift register will load a data byte from data buffer (REG#18H). After loading data to the shift register, the data buffer becomes empty and generates an INT0 interrupt. So the program must write one data byte into REG#18 every nine VSYNC clocks. Since the default values of data buffer(REG#22) and shift register are FFH, the SDA pin outputs high level if no data had been written into data buffer after power on reset. When program finished initialization and set the IEN_D bit to "1", the INT0 will occur because the data buffer is empty. The INT0 service routine should check the DDC2B bit is "0" and then writes the first EDID data byte into data buffer. When the second INT0 occurs, the INT0 service routine writes the second EDID data byte into data buffer and so on. SDA VSYNC Bit7 1 2 3 9 10 Bit6 Bit5 Bit4 Bit3 Bit2 Bit1 Bit0 Bit7 18 19 Load data to shift register INT0 IEN_D Weltrend Semiconductor, Inc. 12 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 If a low level occurs on the SCL pin in DDC1 state, the DDC interface will switch to DDC2B state immediately and set the DDC2B bit to "1". No interrupt will be generated. But, if there is no valid device address and it receives 128 VSYNC pulses while the SCL is high level, it will go back to DDC1 state automatically. If it receives a valid device address, it will lock into DDC2B state and disregard VSYNC. In some case, program wants to go back DDC1 state, set RDDC bit in REG#1AH and reset it again. This operation resets the DDC interface to the initial condition. When it is in DDC2B state, the VSYNC clock is disregarded and the communication protocol follows the DDC standard. The data format on SDA pin is: S Address R/W A D7,D6,...., D0 A D7,D6,...., D0 A P S : Start condition. A falling edge occurs when SCL is high level. P : Stop condition. A rising edge occurs when SCL is high level. A : Acknowledge bit. “0” means acknowledge and “1” means non-acknowledge. Address : 7-bit device address. R/W : Read/Write control bit, "1" is read and "0" is write. D7,D6,...., D0 : data byte. The hardware operations in DDC2B state are : (1) START/STOP detection When the START condition is detected, the DDC interface is enabled and set START bit to "1". When the STOP condition is detected, the DDC interface is disabled, set STOP bit to "1" and generate INT0 interrupt. The START bit is cleared when the following data byte received. The STOP bit is cleared after writing REG#19H. (2) Address Recognition It contains two device addresses in WT6018. One fixed address (‘1010000’) is for EDID reading and one programmable address (REG#19H) is for external control, such as auto alignment. If the address is equal to "1010000", set ADDR bit to "0". If the address is equal to the bit A6 to bit A0 (REG#19H), set ADDR bit to "1". If the address is not equal to anyone above, the DDC interface will not response acknowledge. The ADDR bit is updated when a new device address is received. (3) Store R/W bit and decide the direction of SDA pin The R/W bit on the SDA pin will be stored in the RW bit. (4) Acknowledge bit control/detection Acknowledge bit control in receive direction : If ENACK=1 and address compare is true, response acknowledge (Acknowledge bit ="0"). If ENACK=0 or address compare is false, response non-acknowledge (Acknowledge bit ="1"). Acknowledge bit detect in transmit direction : If the acknowledge bit is "1" , the DDC interface will be disabled and release the SDA pin. If the acknowledge bit is "0" , the DDC interface keeps on communicating. Weltrend Semiconductor, Inc. 13 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 (5) Data bytes transmit/receive If the RW bit is "1", the shift register will load data from the data buffer (REG#18H) before the data byte is transmitted and shift out data to the SDA pin before the rising edge of the SCL clock. If the RW bit is "0", the shift register will shift in data on the rising edge of the SCL clock and the whole data byte is latched to the data buffer(REG#18H). (6) Handshaking procedure The handshaking is done on the byte level. The DDC interface will hold the SCL pin low after the acknowledge bit automatically. The bus master will be forced to wait until the WT6018 is ready for the next byte transfer. To release the SCL pin, write REG#19H will release clear the wait state. (7) Interrupt INT0 The DDC interface interrupt is enabled by setting the IEN_D bit in the REG#1AH. Interrupt INT0 occurs when: - Transmit buffer empty in DDC1 state. The INT0 occurs when the shift register load data from data buffer. Write REG#18H will clear the transmit buffer empty condition. - Acknowledge is detected in DDC2B state. The INT0 occurs on the falling edge of the SCL clock after the acknowledge had been detected. The SCL pin will be pulled low to force the bus master to wait until the service routine write REG#19H. - STOP condition occurs in DDC2B mode Address 0018H 0019H 0019H R/W R/W R W Bit Name DDC2B ADDR RW START STOP ENACK A6,A5, … ., A0 D7,D6, … ., D0 Initial Bit7 Bit6 FFH D7 D6 40H DDC2B ADDR A0H A6 A5 Bit5 D5 RW A4 Bit4 Bit3 D4 D3 START STOP A3 A2 Bit2 D2 -A1 Bit1 D1 -A0 Bit0 D0 -ENACK Bit value = “1” Bit value = “0” DDC2B state. DDC1 state. received address equals to the address received address equals to ‘1010000’. in REG#19H(W). received R/W bit is ‘1’. received R/W bit is ‘0’. START condition is detected. No START condition is detected. STOP condition is detected. No STOP condition is detected. Enable acknowledge. Disable acknowledge. 7-bit slave address Data to be transmitted or received data. Weltrend Semiconductor, Inc. 14 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 Pull low SCL Pull low SCL Pull low SCL SCL SDA In 1 0 1 0 Data Byte 0 0 0 0 SDA Out A Data Byte A A Write REG#19H to release SCL Shift register to data buffer INT0 DDC2B=1 DDC2B=1 DDC2B=1 DDC2B=1 ADDR=0 R/W=0 START=1 STOP=0 ADDR=0 R/W=0 START=0 STOP=0 ADDR=0 R/W=0 START=0 STOP=0 ADDR=0 R/W=0 START=0 STOP=1 DDC2B state write timing Pull low SCL Pull low SCL SCL SDA In 1 0 1 0 A 0 0 0 1 SDA Out A Data Byte N Data Byte Write REG#19H to release SCL Data buffer to shift reg INT0 DDC2B=1 DDC2B=1 DDC2B=1 ADDR=0 R/W=1 START=1 STOP=0 ADDR=0 R/W=1 START=0 STOP=0 ADDR=0 R/W=1 START=0 STOP=1 DDC2B state read timing Weltrend Semiconductor, Inc. 15 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 2 I C Interface This is a master/slave mode I2C interface. In slave mode, the structure is same as the DDC2B mode of DDC interface. Address 001DH 001EH 001FH 001FH R/W R/W W R W Bit Name MS ACK BB AL RW START ENADR MSS MACK CLK ENI2C IA6,IA5, … .,IA0 ID7,ID6, … .,ID0 Initial FFH 00H -00H Bit7 ID7 IA6 MS MSS Bit6 ID6 IA5 ACK MACK Bit5 ID5 IA4 BB CLK Bit4 ID4 IA3 AL ENI2C Bit value = “1” I C interface is in master mode. Received Acknowledge bit is “1”. Bus busy. Arbitration loss. Received R/W bit is “1”. START condition is detected. Enable address compare. Set master mode. If this bit is from 0à1, it will send START. Master send acknowledge. SCL2 pin clock frequency is 996Hz. Enable I2C interface. 2 Bit3 ID3 IA2 RW 0 Bit2 ID2 IA1 START 0 Bit1 ID1 IA0 -0 Bit0 D0 ENADR -0 Bit value = “0” I C interface is in slave mode. Received Acknowledge bit is “0”. Bus idle. Arbitration success. Received R/W bit is “0”. No START condition is detected. No address compare. Set slave mode. If this bit is from 1à0, it will send a STOP. Master send non-acknowledge. SCL2 pin clock frequency is 62.5kHz. Disable I2C interface. These two pins become I/O pins and reset I2C interface. 2 7-bit device address of I2C interface. Data to be transmitted(W) or received data(R). Write data to register $001EH will send out clock for receive or transmit one data byte. Weltrend Semiconductor, Inc. 16 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 Interrupt Control There are two interrupt sources : INT0 and INT1. INT0 has the higher priority. Interrupt vector : INT0 : FFFAH (low byte) and FFFBH (high byte). INT1 : FFFEH (low byte) and FFFFH (high byte). INT0 occurs when : (1) data buffer empty in the DDC1 mode (DDC="1" and DDC2B="0"). (2) acknowledge or STOP condition is detected in the DDC2B mode (DDC="1" and DDC2B="0"). INT1 occurs when : (1) a falling edge or a low level occurs on the /IRQ pin (EXT="1"). (2) the timer is time out (TIM="1"). (3) SYNC processor has a valid frequency (SYNC="1"). If H/V ="0" , it is vertical frequency ready. If H/V ="1" , it is horizontal frequency ready. (4) I2C interface interrupt. INT0 is cleared when : (1) writing the REG#18H in DDC1 state. (2) writing the REG#19H in DDC2B state. INT1 is cleared when : (1) reading the REG#1AH if EXT="1". (2) reading the REG#1BH if TIM="1". (3) reading the REG#16H if SYNC="1". (4) writing the REG#1EH if I2C=”1”. IEN_D DDC 4MHz D Q CK Q INT0 IEN_X IRQ IEN_T TOUT INT1 IEN_S FRDY IEN_I2C I2C Weltrend Semiconductor, Inc. 17 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 Address 001AH 001AH R/W W R Bit Name IEN_X IEN_T IEN_S IEN_D EDGE RDDC IEN_I2C EXT TIM SYNC DDC IRQ TOUT FRDY I2C Initial 00H 00H Bit7 Bit6 IEN_X IEN_T EXT TIM Bit5 Bit4 Bit3 IEN_S IEN_D EDGE SYNC DDC IRQ Bit2 Bit1 Bit0 RDDC 0 IEN_I2C TOUT FRDY I2C Bit value = “1” Bit value = “0” Enable /IRQ pin interrupt. Disable /IRQ pin interrupt. Enable timer interrupt. Disable timer interrupt. Enable SYNC processor interrupt. Disable SYNC processor interrupt. Enable DDC interface interrupt. Disable DDC interface interrupt. /IRQ pin interrupt is edge trigger. /IRQ pin interrupt is level trigger. Reset DDC interface. Clear the reset of DDC interface. It will always reset DDC interface if this bit keeps “1”. Enable I2C interface interrupt. Disable I2C interface interrupt. /IRQ pin interrupt occurs. No /IRQ pin interrupt. Timer interrupt occurs. No timer interrupt. SYNC processor interrupt occurs. No SYNC processor interrupt. DDC interface interrupt occurs. No DDC interface interrupt. /IRQ pin is low level /IRQ pin is high level Timer is time-out. Timer is not time-out. H/V frequency counter is ready. H/V frequency counter is not ready. The counter value is valid. The counter value is invalid. I2C interface interrupt occurs. No I2C interface interrupt. Weltrend Semiconductor, Inc. 18 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 Timer It is a 8-bit down counter and clock frequency is 976.5625Hz (period=1.024ms). The timer is started by writing a value into REG#1BH. When the timer counts down to zero, the timer stops, sets the TOUT bit and generates an INT1 interrupt (if the IEN_T bit is "1"). The TOUT bit will be cleared after REG#1BH is read. Watch-Dog Timer The watch-dog timer is enabled after the power is on. Software must clear the watch-dog timer within every 524ms. If the watch-dog timer expired, It will cause the whole chip reset just like external reset. If user want to disable the watch-dog timer when debugging program, set bit 6 of REG#7FH. But user must remember that the watch-dog timer is always enabled in mask-rom type IC. To clear the watch-dog timer, write any data to REG#1CH. Address 001BH 001CH 007FH R/W R/W W W Bit Name TM7 to TM0 WDT SET14 DWDT Initial --00H Bit7 Bit6 TM7 TM6 WDT WDT SET14 DWDT Bit5 TM5 WDT -- Bit4 TM4 WDT -- Bit3 TM3 WDT -- Bit2 TM2 WDT -- Bit1 TM1 WDT -- Bit0 TM0 WDT -- Bit value = “1” Bit value = “0” Timer value (0 - 255) Write any value to this register will reset the watchdog timer. Ser to WT6014. Page 1 mapping to No memory mapping. page 0. So the stack pointer is 00FFH. Disable watch-dog timer. Enable watch-dog timer. Weltrend Semiconductor, Inc. 19 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 A/D Converter Two 4-bit A/D converter inputs are shared with I/O port_C PC0 and PC1. Use ENAD1 bit and ENAD0 bit to enable the corresponding A/D converter. The sampling rate is 488.3Hz and converted value is store in REG#20H. 4-bit data 1111 1110 1101 1100 1011 1010 1001 1000 0111 0110 0101 0100 0011 0010 0001 0000 Volt 0 Address 0020H 0020H R/W R W Bit Name ENAD1 ENAD0 AD13,… ,AD10 AD03,… ,AD00 0.75 Initial -00H 4.02 Bit7 AD13 0 Bit6 AD12 0 Bit5 AD11 0 Bit4 AD10 0 Bit value = “1” Enable A/D converter 1. Pin PC1 is the input of A/D converter 1. Enable A/D converter 0. Pin PC0 is the input of A/D converter 0. 4-bit data of A/D converter 1. 4-bit data of A/D converter 0. Weltrend Semiconductor, Inc. Bit3 AD03 0 Bit2 Bit1 Bit0 AD02 AD01 AD00 0 ENAD1 ENAD0 Bit value = “0” Disable A/D converter 1. Pin PC1 is I/O. Disable A/D converter 0. Pin PC0 is I/O. 20 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 REGISTER MAP Address 0000H 0001H 0002H 0003H 0004H 0005H 0006H 0007H 0008H 0009H 000AH 000BH 000CH 000DH 000EH 000FH 0010H 0011H 0012H 0013H 0014H 0015H 0016H 0017H 0018H 0019H 001AH 001BH 001CH 001DH 001EH 001FH 001FH 0020H 007FH Initial R/W value R/W 80H R/W 80H R/W 80H R/W 80H R/W 80H R/W 80H R/W 80H R/W 80H R/W 80H R/W 80H R/W 80H R/W 80H R/W 80H R/W 80H R W W R W W R W W R W R W R W R/W R W R W R/W W R/W W R W R W W X 00H 00H X FFH 00H X FFH 00H FFH X X 00H 00H X FFH 40H A0H 00H 00H X X FFH 00H -00H X 00H 00H Bit7 DA07 DA17 DA27 DA37 DA47 DA57 DA67 DA77 DA87 DA97 DA107 DA117 DA127 DA137 Bit6 DA06 DA16 DA26 DA36 DA46 DA56 DA66 DA76 DA86 DA96 DA106 DA116 DA126 DA136 Bit5 Bit4 DA05 DA04 DA15 DA14 DA25 DA24 DA35 DA34 DA45 DA44 DA55 DA54 DA65 DA64 DA75 DA74 DA85 DA84 DA95 DA94 DA105 DA104 DA115 DA114 DA125 DA124 DA135 DA134 Reserved ----0 0 0 ENPD EHO EVO EDA13 EDA12 PA7R PA6R PA5R PA4R PA7W PA6W PA5W PA4W 0 PB6OE PB5OE PB4OE -PB6R PB5R PB4R 1 PB6W PB5W PB4W PC7OE PC6OE PC5OE PC4OE PC7R PC6R PC5R PC4R PC7W PC6W PC5W PC4W F9 F8 F7 F6 0 0 ENPAT PAT1 H/V -H_POL V_POL 0 0 ENHLF HALF D7 D6 D5 D4 DDC2B ADDR RW START A6 A5 A4 A3 EXT TIM SYNC DDC IEN_X IEN_T IEN_S IEN_D TM7 TM6 TM5 TM4 CWDT CWDT CWDT CWDT ID7 ID6 ID5 ID4 IA6 IA5 IA4 IA3 MS ACK BB AL MSS MACK CLK ENI2C AD13 AD12 AD11 AD10 0 0 0 0 SET14 DWDT -- -- Bit3 DA03 DA13 DA23 DA33 DA43 DA53 DA63 DA73 DA83 DA93 DA103 DA113 DA123 DA133 Bit2 DA02 DA12 DA22 DA32 DA42 DA52 DA62 DA72 DA82 DA92 DA102 DA112 DA122 DA132 -PD1OE EDA11 PA3R PA3W PB3OE PB3R PB3W PC3OE PC3R PC3W F5 PAT0 OVF2 HLFPO D3 STOP A2 IRQ EDGE TM3 CWDT ID3 IA2 RW 0 AD03 0 -PD1R PD0OE PD1W EDA10 EDA9 PA2R PA1R PA2W PA1W PB2OE PB1OE PB2R PB1R PB2W PB1W PC2OE PC1OE PC2R PC1R PC2W PC1W F4 F3 SELF H62K OVF1 F1 H+V HOP D2 D1 --A1 A0 TOUT FRDY RDDC 0 TM2 TM1 CWDT CWDT ID2 ID1 IA1 IA0 START -0 0 AD02 AD01 0 ENAD1 -- -- Bit1 DA01 DA11 DA21 DA31 DA41 DA51 DA61 DA71 DA81 DA91 DA101 DA111 DA121 DA131 -- Bit0 DA00 DA10 DA20 DA30 DA40 DA50 DA60 DA70 DA80 DA90 DA100 DA110 DA120 DA130 PD0R PD0W EDA8 PA0R PA0W PB0OE PB0R PB0W PC0OE PC0R PC0W F2 H48K F0 VOP D0 -ENACK I2C IEN_I2C TM0 CWDT D0 ENI2C -0 AD00 ENAD0 -- X : No default value. -- : No function. 0 : Must write 0. Weltrend Semiconductor, Inc. 21 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 ELECTRICAL CHARACTERISTICS Absolute Maximum Ratings Parameter DC Supply Voltage (VDD) Input and output voltage with respect to Ground All pins except DA0 to DA7 DA0 to DA7 Storage temperature Ambient temperature with power applied Min. -0.3 Max 7.0 Units V -0.3 -0.3 -20 -10 VDD+0.3 11.5V 125 70 V V oC oC * Note : Stresses above those listed may cause permanent damage to the device. o D.C. Characteristics ( VDD=5.0V + 5% , Ta=0 - 70 C) Symbol Parameter VDD VIH Supply Voltage Input High Voltage VIL VSIH Input Low Voltage Sync Input High Voltage Sync Input Low Voltage Output High Voltage VSIL VOH Condition Min. Typ. Max. Units All input pins (except HSYNC and VSYNC) 4.0 3.0 5 - All input pins (except HSYNC and VSYNC) HSYNC and VSYNC pin -0.3 2.0 - HSYNC and VSYNC pin -0.3 IOH= -100uA PA0-PA7 pins IOH= -6mA PB0-PB6, PC0-PC7, PD0, PD1, DA8-DA13, HSO, VSO and HSO pins DA0-DA7 pins (external voltage) SCL and SDA pins (open drain) VOL Output Low Voltage IOL= 5mA PA0-PA7, PB0-PB6, PD0-1, DA0-DA13, SCL, SDA, VSO and HSO pins IOL= 10mA PC0-PC7 pins IIL Input Leakage Current SDA, SCL, HSYNC and VSYNC pins ( VIN = 0 to 5V) RPH Pull High Resistance VIN=0.8V PA0-PA7, PB0-PB6, PC0-PC7, /RESET and /IRQ pins IDD Operating Current No load. Oscillator frequency=8MHz VRESET Reset Voltage /RESET pin Weltrend Semiconductor, Inc. V V - 5.5 VDD+ 0.3 1.5 VDD+ 0.3 0.8 3.5 - - V 3.5 - - V - - 10.5 5.5 0.4 V V V - - 0.4 V -10 - 10 uA 16 22 28 Kohm 3.8 13 4.0 25 4.2 mA V V V V 22 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 O A.C. Characteristics ( VDD=5.0V + 5%, fosc=8MHz, Ta=0 - 70 C) RESET and IRQ Timing Symbol Parameter tLOW,RES /RESET pin low pulse tLOW,IRQ /IRQ low pulse (level trigger) Min. 250 250 Typ. - Max. - Units ns ns RESET IRQ tLOW,RES tHIGH,IRQ SYNC Processor Timing Symbol Parameter tHIGH,SYNC HSYNC and VSYNC high time tLOW,SYNC HSYNC and VSYNC low time tFPW,HSO Self generated free-running HSO pulse width tFPW,VSO Self generated free-running VSO pulse width tIPW,HSO Inserted Hsync pulse width (composite sync input) Min. 250 250 - Typ. Max. Units ns ns 2 us 4 x HSO period 2 us HSYNC VSYNC tHIGH,SYNC tLOW,SYNC DDC1 Timing Symbol tVAA,DDC1 tMT Parameter SDA output valid from VSYNC rising edge Mode transition time (DDC1 to DDC2B) Min. 125 - Typ. - Max. 500 500 Units ns ns tMT SCL tVAA,DDC1 SDA Bit 0 (LSB) Null Bit Bit 7 (MSB) VSYNC tHIGH,SYNC Weltrend Semiconductor, Inc. tLOW,SYNC 23 WT60P1 Digital Monitor Controller Ver. 1.51 Jul-31-1998 DDC2B Timing Symbol fSCL tBF tHD,START tSU,START tHIGH,SCL tLOW,SCL tHD,DATA tSU,DATA tRISE tFALL tSU,STOP Parameter SCL input clock frequency Bus free time Hold time for START condition Min. 0 2 1 Typ. - Max. 100 - Units kHz us us Set-up time for START condition SCL clock high time SCL clock low time Hold time for DATA input Hold time for DATA output Set-up time for DATA input Set-up time for DATA output SCL and SDA rise time SCL and SDA fall time 1 1 1 0 250 250 500 - - 1 300 us us us ns ns ns ns us ns 4 - - us Set-up time for STOP condition tBF SDA tHD,START tRISE tFALL SCL tSU,STOP tLOW,SCL Weltrend Semiconductor, Inc. tHD,DATA tHIGH,SCL tSU,DATA tSU,START 24