CN113312217A - 内部集成电路总线的从属装置的测试方法 - Google Patents
内部集成电路总线的从属装置的测试方法 Download PDFInfo
- Publication number
- CN113312217A CN113312217A CN202010118494.9A CN202010118494A CN113312217A CN 113312217 A CN113312217 A CN 113312217A CN 202010118494 A CN202010118494 A CN 202010118494A CN 113312217 A CN113312217 A CN 113312217A
- Authority
- CN
- China
- Prior art keywords
- slave device
- sub
- read operation
- read
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2273—Test methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/14—Handling requests for interconnection or transfer
- G06F13/16—Handling requests for interconnection or transfer for access to memory bus
- G06F13/1668—Details of memory controller
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/38—Response verification devices
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1008—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices
- G06F11/1048—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's in individual solid state devices using arrangements adapted for a specific error detection or correction feature
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/22—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
- G06F11/2205—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
- G06F11/221—Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test buses, lines or interfaces, e.g. stuck-at or open line faults
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/42—Bus transfer protocol, e.g. handshake; Synchronisation
- G06F13/4282—Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/022—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in I/O circuitry
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/02—Detection or location of defective auxiliary circuits, e.g. defective refresh counters
- G11C29/025—Detection or location of defective auxiliary circuits, e.g. defective refresh counters in signal lines
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/12015—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details comprising clock generation or timing circuitry
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/14—Implementation of control logic, e.g. test mode decoders
- G11C29/16—Implementation of control logic, e.g. test mode decoders using microprogrammed units, e.g. state machines
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C29/08—Functional testing, e.g. testing during refresh, power-on self testing [POST] or distributed testing
- G11C29/12—Built-in arrangements for testing, e.g. built-in self testing [BIST] or interconnection details
- G11C29/44—Indication or identification of errors, e.g. for repair
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0016—Inter-integrated circuit (I2C)
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11C—STATIC STORES
- G11C29/00—Checking stores for correct operation ; Subsequent repair; Testing stores during standby or offline operation
- G11C29/04—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals
- G11C2029/0401—Detection or location of defective memory elements, e.g. cell constructio details, timing of test signals in embedded memories
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Quality & Reliability (AREA)
- Computer Hardware Design (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Debugging And Monitoring (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Tests Of Electronic Circuits (AREA)
- Information Transfer Systems (AREA)
Abstract
本发明公开一种内部集成电路总线的从属装置的测试方法,包含:(A)开始该从属装置的第一读取操作或第一写入操作,其中该第一读取操作或该第一写入操作包含传送命令、应答信号、数据、地址或控制字节到该从属装置的子操作;(B)在该子操作结束后,或是在该子操作的中间,传送开始命令或结束命令到该从属装置;(C)在步骤(B)之后,对该从属装置进行第二读取操作或第二写入操作;以及(D)在步骤(C)之后,判断该第二读取操作或该第二写入操作是否正确。
Description
技术领域
本发明涉及内部集成电路(Inter Integrated Circuit,I2C)总线,尤其涉及I2C总线的从属装置(slave device)的测试方法。
背景技术
I2C总线接口是一种连接方便、架构简单易用的通信接口,目前在集成电路设计中被广泛应用。I2C总线通过串行数据线(serial data line,SDA)和串行时钟线(serialclock line,SCL)两根线,在主控装置(master device)和从属装置之间传送数据,并根据地址识别每个装置。I2C总线因其结构简单性和传输信号的有效性,得到广泛的应用。
对I2C总线的电气性能进行验证及测试能够提早发现错误,但是实际操作上存在一些与电气性能无关的错误,例如使用者的非预期操作。因此,有必要对I2C总线进行更全面的测试。
发明内容
鉴于先前技术之不足,本发明之目的在于提供一种I2C总线的从属装置的测试方法。
本发明公开一种I2C总线的从属装置的测试方法,包含:(A)开始该从属装置的第一读取操作或第一写入操作,其中该第一读取操作或该第一写入操作包含传送命令、应答信号、数据、地址或控制字节到该从属装置的子操作;(B)在该子操作结束后,或是在该子操作的中间,传送开始命令或结束命令到该从属装置;(C)在步骤(B)之后,对该从属装置进行第二读取操作或第二写入操作;以及(D)在步骤(C)之后,判断该第二读取操作或该第二写入操作是否正确。
本发明还公开一种I2C总线的从属装置的测试方法,包含:(A)开始该从属装置的第一读取操作,其中该第一读取操作包含读取存储于该从属装置的数据的子操作;(B)在该子操作结束后,或是在该子操作的中间,传送开始命令或结束命令到该从属装置;(C)在步骤(B)之后,对该从属装置进行第二读取操作或写入操作;以及(D)在步骤(C)之后,判断该第二读取操作或该写入操作是否正确。
本发明还公开一种I2C总线的从属装置的测试方法,包含:(A)传送时钟到该从属装置;(B)开始该从属装置的第一读取操作或第一写入操作,其中该第一读取操作或该第一写入操作包含子操作;(C)在该子操作的中间,暂停传送该时钟到该从属装置,或是改变该时钟的频率;(D)在步骤(C)之后,传送该时钟到该从属装置,或是恢复该时钟的频率;(E)在步骤(D)之后,对该从属装置进行第二读取操作或第二写入操作;以及(F)在步骤(E)之后,判断该第二读取操作或该第二写入操作是否正确。
本发明还公开一种I2C总线的从属装置的测试方法,包含:(A)开始该从属装置的第一读取操作,其中该第一读取操作包含读取存储于该从属装置的数据;(B)在读取该数据的至少一字节后,结束该第一读取操作,而不传送应答信号到该从属装置;(C)在步骤(B)之后,对该从属装置进行第二读取操作或写入操作;以及(D)在步骤(C)之后,判断该第二读取操作或该写入操作是否正确。
本发明之I2C总线的从属装置的测试方法仿真多种异常状况。相较于传统技术,本发明的测试方法可以测试从属装置能否处理由用户操作或工作环境所引起之各种异常状况。
有关本发明的特征、实施与功效,配合附图作实施例详细说明如下。
附图说明
图1显示通过I2C总线连接主控装置及从属装置;
图2显示主控装置之实施例的状态机;
图3为主控装置对从属装置进行写入操作的流程图;
图4为主控装置对从属装置进行读取操作的流程图;
图5为本发明I2C总线的从属装置的测试方法的实施例的流程图;
图6为本发明I2C总线的从属装置的测试方法的另一实施例的流程图;
图7为本发明I2C总线的从属装置的测试方法的另一实施例的流程图;以及
图8为本发明I2C总线的从属装置的测试方法的另一实施例的流程图。
具体实施方式
以下说明内容之技术用语是参照本技术领域之习惯用语,如本说明书对部分用语加以说明或定义,该部分用语之解释以本说明书之说明或定义为准。
图1显示通过I2C总线连接主控装置及从属装置。主控装置110包含I2C接口112、控制电路114以及存储电路116。从属装置120包含I2C接口122、控制电路124以及存储电路126。主控装置110及从属装置120通过I2C总线130连接。主控装置110通过串行时钟线SCL传送时钟给从属装置120。主控装置110通过串行数据线SDA传送数据、命令或其他信号给从属装置120,以及接收从属装置120所传送的数据或信号。存储电路116及存储电路126包含易失性内存及/或非易失性内存,并存储程序代码或程序指令。控制电路114经由执行存储电路116中的这些程序代码或程序指令来实现主控装置110的功能,以及实现本发明的测试方法。控制电路124通过执行存储电路126中的这些程序代码或程序指令来实现从属装置120的功能。
本发明是利用状态机(state machine)来实现I2C总线的从属装置的测试或验证。图2显示主控装置110之实施例的状态机,图3为主控装置110对从属装置120进行写入操作的流程图,图4为主控装置110对从属装置120进行读取操作的流程图。请同时参阅图2至图4。写入操作及读取操作具有共同步骤S205、S210、S212、S214、S216及S218。主控装置110离开空闲状态(即离开步骤S205)后先传送开始命令(步骤S210),再紧接着传送对应写数据的控制字节(control byte)(步骤S212)以通知从属装置120即将写入数据。从属装置120在收到控制字节后传送应答(acknowledgement)信号ACK给主控装置110。主控装置110在确认收到应答信号ACK后(步骤S214)对从属装置120写入地址(步骤S216),然后再等待从属装置120传送应答信号ACK。此地址指示存储电路126的存储空间,主控装置110将数据写入到该存储空间,或是读取该存储空间中的数据。在收到应答信号ACK(步骤S218)后,主控装置110根据接下来即将写入数据到从属装置120,或是从从属装置120读取数据来执行图3的流程或图4的流程。
请参阅图3,在写入操作中,主控装置110在步骤S218之后开始对从属装置120写入数据(步骤S220)。更明确地说,在步骤S220中,主控装置110将待写入的数据传送给从属装置120,从属装置120的控制电路124将该待写入的数据写入步骤S216之地址所对应的存储空间,然后传送应答信号ACK给主控装置110。主控装置110在收到应答信号ACK(步骤S225)后检查是否还有待写入的数据(步骤S227)。如果仍有待写入的数据,则表示写数据的操作尚未完成(步骤S227为否),主控装置110继续对从属装置120写入数据(步骤S220)。如果完成写入数据(步骤S227为是),则主控装置110传送结束命令给从属装置120(步骤S240),然后回到空闲状态(步骤S205)。
请参阅图4,在读取操作中,主控装置110在步骤S218之后传送开始命令给从属装置120(步骤S230),紧接着传送对应读数据的控制字节(步骤S232)以通知从属装置120即将读取数据。从属装置120在收到控制字节之后传送应答信号ACK给主控装置110。主控装置110在确认收到应答信号ACK(步骤S234)后开始从从属装置120读取数据(步骤S236至S239)。更明确地说,在步骤S236中,从属装置120的控制电路124从步骤S216之地址所对应的存储空间中读取数据,并将该数据传送给主控装置110。主控装置110在收到该数据后传送应答信号ACK给从属装置120(步骤S238),然后根据I2C总线的规定判断是否已完成数据读取(步骤S239)。如果数据读取尚未结束(步骤S239为否),则主控装置110继续从从属装置120接收数据(步骤S236至S238)。如果数据读取已完成(步骤S239为是),则主控装置110传送结束命令给从属装置120(步骤S240),然后回到空闲状态(步骤S205)。
请注意,在图3的步骤S220及S225中,主控装置110每写入1字节的数据,就会从从属装置120接收到应答信号ACK。在图4的步骤S236及S238中,主控装置110每接收到1字节的数据,就传送应答信号ACK给从属装置120。
前述的开始命令是当串行时钟线SCL为高电平时串行数据线SDA为下降沿,而结束命令是当串行时钟线SCL为高电平时串行数据线SDA为上升沿。
对应于写数据的控制字节(即步骤S212的控制字节,亦可称为写入命令)以及对应读数据的控制字节(即步骤S232的控制字节,亦可称为读取命令)皆为8位的命令或数据。在一些实施例中,此两个控制字节的前7个位相同,而以第8个位为0代表写数据,以第8个位为1代表读数据。
图5为本发明I2C总线的从属装置的测试方法的实施例的流程图。主控装置110开始对从属装置120进行写入操作或读取操作(步骤S510),写入操作及读取操作的流程分别如图3及图4所示。接着,在传送数据/命令/信号给从属装置120的子操作结束后,或者在该子操作的中间,主控装置110传送开始命令或结束命令给从属装置120(步骤S520)。该子操作是写入操作或读取操作的一部分。请参阅图3及图4,这里所指的数据/命令/信号可以是开始命令(亦即子操作可以是步骤S210)、应答信号ACK(亦即子操作可以是步骤S238)、数据(亦即子操作可以是步骤S220)、地址(亦即子操作可以是步骤S216)或控制字节(亦即子操作可以是步骤S212或S232)。更明确地说,在步骤S520中,主控装置110在传送完毕开始命令、应答信号ACK、数据、地址或控制字节给从属装置120之后,或是主控装置110在传送数据、地址或控制字节的期间,主控装置110传送开始命令或结束命令给从属装置120,以仿真从属装置120在非预期的情况下收到开始命令或结束命令之异常状况。请注意,当子操作是步骤S210时,主控装置110在步骤S210结束后传送结束命令而非开始命令到从属装置120。
如果主控装置110是在数据、地址、或控制字节的除了最后一个位之外的任一位之后传送开始命令或结束命令,则主控装置110是在该子操作的中间制造该异常状况。如果主控装置110是在数据、地址、或控制字节的最后一个位之后,或是在结束传送开始命令或应答信号ACK之后传送开始命令或结束命令,则主控装置110是在该子操作结束后制造该异常状况。
步骤S520完成后,主控装置110回到空闲状态(步骤S205),然后再次对从属装置120进行读取操作或写入操作(步骤S530)。更明确地说,步骤S510的读取操作或写入操作因为步骤S520所产生的异常状况而被提前中断,然而步骤S530的读取操作或写入操作是一个完整的操作。接着主控装置110判断步骤S530的读取操作或写入操作是否正确(步骤S535至S570)。
如果主控装置110在步骤S530执行读取操作,则主控装置110比较读取的数据是否与预设的数据相同(步骤S540)。预设的数据例如是预先存储在存储电路126中的数据,而且主控装置110知道该数据的内容。如果步骤S540为是,则主控装置110记录从属装置120可以处理步骤S520所产生的异常状况(步骤S560)。如果步骤S540为否,则主控装置110记录从属装置120无法处理步骤S520所产生的异常状况(步骤S570)。步骤S560或S570结束后,主控装置110回到空闲状态(步骤S205)。
如果主控装置110在步骤S530执行写入操作,则主控装置110根据数据是否成功写入从属装置120(步骤S550)来执行步骤S560或S570。
图6为本发明I2C总线的从属装置的测试方法的另一实施例的流程图。主控装置110开始对从属装置120进行读取操作(步骤S610),读取操作的流程如图4所示。接着,在子操作结束后,或者在该子操作的中间,主控装置110传送开始命令或结束命令给从属装置120(步骤S620)。该子操作是读取操作的一部分,且该子操作是主控装置110读取存储于从属装置120的存储电路126的数据的操作。请参阅图4,这里所指的子操作可以是步骤S236。更明确地说,在步骤S620所指的子操作中,主控装置110接收从属装置120所传送的一个字节;子操作结束代表主控装置110已收到8个位,而子操作的中间代表主控装置110尚未收到全部的8位。图6的测试流程仿真从属装置120在传送数据的过程中(即尚未收到主控装置110所传送的应答信号ACK(步骤S238)之前)收到开始命令或结束命令之异常状况。
步骤S620完成后,主控装置110回到空闲状态(步骤S205),然后再次对从属装置120进行读取操作或写入操作(步骤S530)。图6的步骤S530、S535、S540、S550、S560、S570与图5的相同,故不再赘述。
图7为本发明I2C总线的从属装置的测试方法的另一实施例的流程图。主控装置110通过串行时钟线SCL传送时钟到从属装置120(步骤S705),然后开始对从属装置120进行读取操作或写入操作(步骤S710),写入操作及读取操作的流程分别如图3及图4所示。接着,主控装置110在子操作的中间暂停传送时钟到从属装置120(例如暂停1ms-10ms),或是改变时钟的频率(步骤S720)。该子操作是写入操作或读取操作的一部分,可以是图2至图4中除了步骤S205之外的任一步骤。
步骤S720结束后,主控装置110恢复传送时钟给从属装置120,或是使时钟的频率恢复正常(即恢复到未改变前的频率)(步骤S730)。
图7的测试流程仿真时钟中断与抖动(jitter)(即时钟频率改变)之异常状况。在时钟中断或是时钟频率改变的情况下,从属装置120可能无法完成该次的读取操作或写入操作(亦即步骤S710所开始的操作)。然而,无论从属装置120是否完成该次的读取操作或写入操作,步骤S730结束后,主控装置110回到空闲状态(步骤S205),然后再次对从属装置120进行读取操作或写入操作(步骤S530)。图7的步骤S530、S535、S540、S550、S560、S570与图5的相同,故不再赘述。
图8为本发明I2C总线的从属装置的测试方法的另一实施例的流程图。主控装置110开始对从属装置120进行读取操作(步骤S810),读取操作的流程如图4所示。接着,主控装置110在步骤S236中读取至少一字节的数据后,不传送应答信号ACK给从属装置120(亦即不执行步骤S238),而是等待1ms-3ms后,回到空闲状态(步骤S205)以结束读取操作(步骤S820)。然后,主控装置110再次对从属装置120进行读取操作或写入操作(步骤S530)。图8的步骤S530、S535、S540、S550、S560、S570与图5的相同,故不再赘述。图8的测试流程仿真在读取操作中从属装置120无法收到应答信号ACK之异常状况。
在一些实施例中,可以在同一个读取操作或写入操作中模拟图5至图8的2个以上的异常状况。举例来说,主控装置110可以在步骤S212及步骤S216都传送开始命令或结束命令(亦即图5的步骤S520包含2个子操作)。另举例来说,主控装置110可以在步骤S230改变串行时钟线SCL的时钟的频率,并且在读取操作中不传送应答信号ACK(即不执行步骤S238)(亦即组合图7及图8的异常状况)。
在一些实施例中,图5至图8的异常状况可以是随机产生的。举例来说,主控装置110的控制电路114随机产生一个目标值,并且在图3或图4的步骤S210开时计数,当计数到该目标值时制造异常状况。主控装置110可以根据串行时钟线SCL的时钟或系统时钟计数。系统时钟例如是控制电路114的工作时钟,其频率可能等于或不等于串行时钟线SCL的时钟的频率。
在其他的实施例中,主控装置110在特定的位置产生异常状况。举例来说,在图6的实施例中,主控装置110在步骤S234接收到应答信号ACK后开始计数,并且目标值为1-32(即4个字节的数据之内)。当计数到目标值时,即传送开始命令或结束命令给从属装置120(步骤S620)。此目标值可以是多个,例如1、10、32;在此情况下,主控装置110在收到第1位(亦即步骤S236的中间)、第10位(亦即步骤S236的中间)以及第32位(亦即步骤S236结束)后各传送开始命令或结束命令给从属装置120。
由于本技术领域具有通常知识者可通过本案之装置发明的公开内容来了解本案之方法发明的实施细节与变化,因此,为避免赘文,在不影响该方法发明之公开要求及可实施性的前提下,重复之说明在此予以省略。请注意,以上公开的图标中,组件之形状、尺寸、比例以及步骤之顺序等仅为示意,供本技术领域具有通常知识者了解本发明之用,非用以限制本发明。
虽然本发明之实施例如上所述,然而这些实施例并非用来限定本发明,本技术领域具有通常知识者可依据本发明之明示或隐含之内容对本发明之技术特征施以变化,凡此种种变化均可以属于本发明所寻求之专利保护范围,换言之,本发明之专利保护范围须以本说明书之申请专利范围所定义的为准。
【符号说明】
110 主控装置
120 从属装置
112、122 I2C接口
114、124 控制电路
116、126 存储电路
130 I2C总线
SCL 串行时钟线
SDA 串行数据线
ACK 应答信号
S205、S210、S212、S214、S216、S218、S220、S225、S227、S240、S230、S232、S234、S236、S238、S239、S510、S520、S530、S535、S540、S550、S560、S570、S610、S620、S705、S710、S720、S730、S810、S820 步骤
Claims (10)
1.一种内部集成电路总线的从属装置的测试方法,包含:
(A)开始该从属装置的第一读取操作或第一写入操作,其中该第一读取操作或该第一写入操作包含传送命令、应答信号、数据、地址或控制字节到该从属装置的子操作;
(B)在该子操作结束后,或是在该子操作的中间,传送开始命令或结束命令到该从属装置;
(C)在步骤(B)之后,对该从属装置进行第二读取操作或第二写入操作;以及
(D)在步骤(C)之后,判断该第二读取操作或该第二写入操作是否正确。
2.如权利要求1所述的测试方法,其中该控制字节对应写入命令。
3.如权利要求1所述的测试方法,其中该控制字节对应读取命令。
4.一种内部集成电路总线的从属装置的测试方法,包含:
(A)开始该从属装置的第一读取操作,其中该第一读取操作包含读取存储于该从属装置的数据的子操作;
(B)在该子操作结束后,或是在该子操作的中间,传送开始命令或结束命令到该从属装置;
(C)在步骤(B)之后,对该从属装置进行第二读取操作或写入操作;以及
(D)在步骤(C)之后,判断该第二读取操作或该写入操作是否正确。
5.一种内部集成电路总线的从属装置的测试方法,包含:
(A)传送时钟到该从属装置;
(B)开始该从属装置的第一读取操作或第一写入操作,其中该第一读取操作或该第一写入操作包含子操作;
(C)在该子操作的中间,暂停传送该时钟到该从属装置,或是改变该时钟的频率;
(D)在步骤(C)之后,传送该时钟到该从属装置,或是恢复该时钟的频率;
(E)在步骤(D)之后,对该从属装置进行第二读取操作或第二写入操作;以及
(F)在步骤(E)之后,判断该第二读取操作或该第二写入操作是否正确。
6.如权利要求5所述的测试方法,其中该子操作是传送应答信号到该从属装置的操作。
7.如权利要求5所述的测试方法,其中该子操作是接收该从属装置所传送的应答信号的操作。
8.如权利要求5所述的测试方法,其中该子操作是传送地址到该从属装置的操作。
9.如权利要求5所述的测试方法,其中该子操作是传送数据到该从属装置的操作。
10.一种内部集成电路总线的从属装置的测试方法,包含:
(A)开始该从属装置的第一读取操作,其中该第一读取操作包含读取存储于该从属装置的数据;
(B)在读取该数据的至少一字节后,结束该第一读取操作,而不传送应答信号到该从属装置;
(C)在步骤(B)之后,对该从属装置进行第二读取操作或写入操作;以及
(D)在步骤(C)之后,判断该第二读取操作或该写入操作是否正确。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010118494.9A CN113312217A (zh) | 2020-02-26 | 2020-02-26 | 内部集成电路总线的从属装置的测试方法 |
TW109106920A TWI773969B (zh) | 2020-02-26 | 2020-03-03 | 內部積體電路匯流排之從屬裝置的測試方法 |
US17/156,679 US11450398B2 (en) | 2020-02-26 | 2021-01-25 | Method of testing slave device of inter-integrated circuit bus |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010118494.9A CN113312217A (zh) | 2020-02-26 | 2020-02-26 | 内部集成电路总线的从属装置的测试方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN113312217A true CN113312217A (zh) | 2021-08-27 |
Family
ID=77366982
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010118494.9A Pending CN113312217A (zh) | 2020-02-26 | 2020-02-26 | 内部集成电路总线的从属装置的测试方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11450398B2 (zh) |
CN (1) | CN113312217A (zh) |
TW (1) | TWI773969B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117271246A (zh) * | 2023-11-22 | 2023-12-22 | 深圳市蓝鲸智联科技股份有限公司 | 一种i2c设备调试方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6205504B1 (en) * | 1998-09-30 | 2001-03-20 | International Business Machines Corporation | Externally provided control of an I2C bus |
CN1996275A (zh) * | 2006-11-09 | 2007-07-11 | 中兴通讯股份有限公司 | 10位寻址模式i2c控制器访问大容量存储器的方法 |
CN101051434A (zh) * | 2006-04-05 | 2007-10-10 | 深圳Tcl新技术有限公司 | 一种用于平板显示产品edid抄写及测试的方法 |
CN103139010A (zh) * | 2012-11-13 | 2013-06-05 | 深圳中兴网信科技有限公司 | 终端、测试服务器和测试方法 |
CN105740114A (zh) * | 2016-01-26 | 2016-07-06 | 惠州Tcl移动通信有限公司 | 移动终端的容错测试方法及装置 |
CN110389925A (zh) * | 2018-04-16 | 2019-10-29 | 利盟国际有限公司 | 使用时钟频率变化来检测非可信从组件的系统和方法 |
Family Cites Families (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6145036A (en) * | 1998-09-30 | 2000-11-07 | International Business Machines Corp. | Polling of failed devices on an I2 C bus |
US7234081B2 (en) * | 2004-02-04 | 2007-06-19 | Hewlett-Packard Development Company, L.P. | Memory module with testing logic |
US20070088874A1 (en) * | 2005-10-14 | 2007-04-19 | Hewlett-Packard Development Company, L.P. | Offload engine as processor peripheral |
US20070240011A1 (en) * | 2006-04-05 | 2007-10-11 | Texas Instruments Incorporated | FIFO memory data pipelining system and method for increasing I²C bus speed |
US7589652B2 (en) * | 2007-04-12 | 2009-09-15 | Microchip Technology Incorporated | Read and write interface communications protocol for digital-to-analog signal converter with non-volatile memory |
CN101604277B (zh) * | 2008-06-11 | 2012-03-28 | 比亚迪股份有限公司 | I2c总线验证系统及方法 |
US7930127B2 (en) * | 2008-11-11 | 2011-04-19 | Nxp B.V. | Oscillator prescale calibration for harmonizing multiple devices with independent oscillators over an I2C bus interface |
US8224602B2 (en) * | 2008-11-11 | 2012-07-17 | Nxp B.V. | Automatic on-demand prescale calibration across multiple devices with independent oscillators over an I2C Bus interface |
US8489786B2 (en) * | 2009-11-09 | 2013-07-16 | Stmicroelectronics International N.V. | Acknowledgement management technique for supported command set of SMBUS/PMBUS slave applications |
US9336167B2 (en) * | 2012-12-13 | 2016-05-10 | Texas Instruments Incorporated | I2C controller register, control, command and R/W buffer queue logic |
US9921835B2 (en) * | 2014-03-24 | 2018-03-20 | Inesc Tec—Instituto De Engenharia De Sistemas E Computadores, Tecnologia E Ciã?Ncia | Control module for multiple mixed-signal resources management |
US10108511B2 (en) * | 2015-06-15 | 2018-10-23 | Qualcomm Incorporated | Test for 50 nanosecond spike filter |
US10915079B2 (en) * | 2019-04-17 | 2021-02-09 | Dyna Image Corporation | Light sensor device controlled with dual-mode master-and-slave MCU application |
-
2020
- 2020-02-26 CN CN202010118494.9A patent/CN113312217A/zh active Pending
- 2020-03-03 TW TW109106920A patent/TWI773969B/zh active
-
2021
- 2021-01-25 US US17/156,679 patent/US11450398B2/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6205504B1 (en) * | 1998-09-30 | 2001-03-20 | International Business Machines Corporation | Externally provided control of an I2C bus |
CN101051434A (zh) * | 2006-04-05 | 2007-10-10 | 深圳Tcl新技术有限公司 | 一种用于平板显示产品edid抄写及测试的方法 |
CN1996275A (zh) * | 2006-11-09 | 2007-07-11 | 中兴通讯股份有限公司 | 10位寻址模式i2c控制器访问大容量存储器的方法 |
CN103139010A (zh) * | 2012-11-13 | 2013-06-05 | 深圳中兴网信科技有限公司 | 终端、测试服务器和测试方法 |
CN105740114A (zh) * | 2016-01-26 | 2016-07-06 | 惠州Tcl移动通信有限公司 | 移动终端的容错测试方法及装置 |
CN110389925A (zh) * | 2018-04-16 | 2019-10-29 | 利盟国际有限公司 | 使用时钟频率变化来检测非可信从组件的系统和方法 |
Also Published As
Publication number | Publication date |
---|---|
US20210265001A1 (en) | 2021-08-26 |
TW202133001A (zh) | 2021-09-01 |
US11450398B2 (en) | 2022-09-20 |
TWI773969B (zh) | 2022-08-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111737173B (zh) | I2c总线通信控制方法、装置、系统及可读存储介质 | |
EP3542276B1 (en) | Flow control in remote direct memory access data communications with mirroring of ring buffers | |
CN110765058A (zh) | Gpio实现spi从机功能方法、系统、设备及介质 | |
US20110153884A1 (en) | Storage system provided with function for detecting write completion | |
CN113312217A (zh) | 内部集成电路总线的从属装置的测试方法 | |
JP2006503510A (ja) | バス上でデータを伝送する方法 | |
CN113434442A (zh) | 一种交换机及数据访问方法 | |
US7822040B2 (en) | Method for increasing network transmission efficiency by increasing a data updating rate of a memory | |
US8943255B2 (en) | Methods and structure for accounting for connection resets between peripheral component interconnect express bridges and host devices | |
US7168029B2 (en) | Method for testing a universal serial bus host controller | |
EP2075943B1 (en) | Methods and systems for error detection of data transmission | |
TWI783707B (zh) | 供電端裝置、供電系統以及非暫態電腦可讀取媒體 | |
CN112346665B (zh) | 基于pcie的通信方法、装置、设备、系统及存储介质 | |
US20110116331A1 (en) | Method for initializing memory device | |
CN104125096A (zh) | 一种基于i2c总线的服务器网络配置方法 | |
CN110618961A (zh) | 一种实现ubm背板命令校验方法及装置 | |
US20050144331A1 (en) | On-chip serialized peripheral bus system and operating method thereof | |
CN113934671B (zh) | 一种接口控制芯片及网络设备 | |
TWI757606B (zh) | 伺服器裝置及其基板管理控制器與可程式邏輯單元之間的通訊協定方法 | |
CN111625486B (zh) | 通用串行总线装置及其数据传输方法 | |
US11442882B2 (en) | Bridge circuit for providing conversion between PCIe-NVMe protocol and NVMe-TCP protocol and computer system using the same | |
US8027826B2 (en) | Evaluation device consisting of a logic simulator and a simulation result table | |
US20240168842A1 (en) | METHOD TO RETRIEVE TRANSACTION ADDRESS RESULTING IN AN UNCORRECTABLE PCIe ERROR | |
CN106227682B (zh) | 电子装置、存储器装置及其数据交换方法 | |
CN103106162B (zh) | 逻辑器件及其mdio接口通信方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |