CN108090010B - Bus device, processing method, setting method and setting system - Google Patents

Bus device, processing method, setting method and setting system Download PDF

Info

Publication number
CN108090010B
CN108090010B CN201711180965.3A CN201711180965A CN108090010B CN 108090010 B CN108090010 B CN 108090010B CN 201711180965 A CN201711180965 A CN 201711180965A CN 108090010 B CN108090010 B CN 108090010B
Authority
CN
China
Prior art keywords
address
bus
message
slave device
response
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.)
Active
Application number
CN201711180965.3A
Other languages
Chinese (zh)
Other versions
CN108090010A (en
Inventor
大卫·格兰特·考克斯
纳塔莉·阿布里
埃尔温·胡贝尔
卡尔·诺林
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Infineon Technologies Austria AG
Original Assignee
Infineon Technologies Austria AG
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Infineon Technologies Austria AG filed Critical Infineon Technologies Austria AG
Publication of CN108090010A publication Critical patent/CN108090010A/en
Application granted granted Critical
Publication of CN108090010B publication Critical patent/CN108090010B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4204Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus
    • G06F13/4221Bus transfer protocol, e.g. handshake; Synchronisation on a parallel bus being an input/output bus, e.g. ISA bus, EISA bus, PCI bus, SCSI bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • G06F13/4068Electrical coupling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/3625Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using a time dependent access
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/42Bus transfer protocol, e.g. handshake; Synchronisation
    • G06F13/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Small-Scale Networks (AREA)
  • Computer Hardware Design (AREA)

Abstract

A bus apparatus, a processing method, a setting method, and a setting system are disclosed. A bus device having a programmable address includes: a bus communication circuit connected to the bus terminal; a first pin terminal; a memory having a first register and a second register, the first register storing a first address; and a status logic circuit. The state logic circuit detects a chip select signal on the first pin terminal, receives a first message through the bus communication circuit when the chip select signal is active, determines that the first message indicates an address set command, and saves an address value in the first message as a second address in the second register in response to a target address in the first message matching the first address. The state logic circuit also processes the second message in response to a target address of the second message received through the bus communication circuit matching the second address.

Description

Bus device, processing method, setting method and setting system
Technical Field
The present invention relates generally to a system and method for setting addresses of bus devices, and in particular embodiments to a system and method for setting addresses of bus devices using bus messages.
Background
In many electronic systems, a bus is provided and a plurality of components are connected to the bus. The bus provides a way in which the components can communicate with each other. Between e.g. integrated circuits (I)2C) In a master-slave bus arrangement on a bus, a Serial Peripheral Interface (SPI) bus, a system management bus (SMBus or SMB), a Direct Memory Access (DMA), a power management bus (PMBus)), or the like, one or more master devices communicate with one or more slave devices. A master device communicating with a slave device initiates communication by addressing the slave device by means of an address in a message on the bus or by means of dedicated messaging pins outside the bus. When in a process such as I2When addressing a slave device on a bus of the C bus, the master device may access the bus lineThe power level on the way to issue control signals to the bus and may then send packets with the address, command and data of the targeted slave. Addresses for communicating with slave devices over a bus may be assigned by a system bus management entity, and addresses are typically assigned to specific types of devices or classes of devices. Thus, multiple devices of the same model, type or manufacturer may be assigned the same address.
Disclosure of Invention
An apparatus according to one embodiment comprises: a bus communication circuit connected to the bus terminal; a first pin terminal; a memory having a first register and a second register, the first register storing a first address; a status logic circuit connected with the memory, the first pin terminal, and the bus communication circuit. The state logic circuit has circuitry to detect a chip select signal on the first pin terminal and to receive a first message through the bus communication circuit when the chip select signal is active (assert). The state logic circuitry also has circuitry to determine that the first message indicates an address set command and to save an address value in the first message as a second address in a second register in response to a target address in the first message matching the first address. The status logic circuit also has circuitry to process the second message received through the bus communication circuit in response to the target address of the second message matching the second address.
A method according to one embodiment includes asserting a chip select signal to a chip select pin of a first slave device connected to a bus, wherein the chip select signal is transmitted to the chip select pin outside of the bus; and setting a first address of the first slave device by sending a first message to the first slave device on the bus when the chip select signal is active. The first message includes a default address of the first slave device, a command to set the first address, and a data value representing the first address. The method according to this embodiment further comprises: sending a second message to the first slave device over the bus after the chip select signal is deactivated, the second message being addressed using the first address.
A method according to one embodiment includes detecting, by an apparatus having a bus terminal and a first pin terminal separate from the bus terminal, whether a chip select signal is active at the first pin terminal; receiving, by the device, a first message including a target address, a command to set the first address on the device, and a data value representing the first address on the bus terminals and while the chip select signal is active; and in response to the target address of the first message matching the default address of the device, saving the data value as the first address in a first register of the device. The method further comprises the following steps: the second message is processed by the device in response to a target address of the second message received by the device on the bus terminals during normal operation matching the first address.
The method according to one embodiment comprises: receiving a first message sent by a device on a bus, the device being connected to the bus and having stored thereon a first programmable address different from a default address of the device; comparing the first target address in the first message to a default address in response to the configuration check value not being set; and processing the first message in response to the first target address matching the default address and the configuration check value not being set. The method also includes comparing the first target address to the first programmable address in response to the configuration check value being set; and processing the first message in response to the first target address matching the first programmable address and the configuration check value being set.
A system according to one embodiment includes: a bus; a plurality of slave devices connected to the bus, each of the plurality of slave devices having a default address and an input pin separate from the bus. Each of the plurality of slave devices is configured to receive a message over the bus. The system according to this embodiment further includes a control circuit connected to the bus and to the input pin of each of the plurality of slave devices through one of a plurality of lines separated from the bus, respectively, and the control circuit is configured to validate a signal on the line leading to a target slave device among the plurality of slave devices and to transmit a first message indicating an address setting command on the bus with a default address of the target slave device when the signal is validated. Each of the plurality of slave devices is further configured to: when the signal is valid for the respective slave device, a value from the first message is saved as the first address in response to the target address of the first message matching a default address of a respective one of the plurality of slave devices.
Drawings
For a more complete understanding of the present disclosure and the advantages thereof, reference is now made to the following descriptions taken in conjunction with the accompanying drawings, in which:
FIG. 1 is a diagram illustrating a system including slave devices with programmable addresses, according to some embodiments;
FIG. 2 is a diagram illustrating a system including slave devices with programmable addresses, according to some embodiments;
FIG. 3A is a diagram illustrating an apparatus having circuitry for programmable addressing according to some embodiments;
FIG. 3B is a diagram illustrating a system with programmable addressable slave gate drivers according to some embodiments;
FIG. 4 is a flow diagram illustrating a method for programming an address on a slave device, in accordance with some embodiments;
FIG. 5 is a flow diagram illustrating a method for setting a programmable address for a slave device according to some embodiments; and
FIG. 6 is a diagram illustrating a method of processing a message using a programmed address, according to some embodiments.
Detailed Description
As electronic devices are built with advanced features and more powerful functions, duplicate components, such as bus slaves, are increasingly used in a single system. However, when multiple instances of a particular type of slave device are provided on the bus, the master device must address each slave device individually. When there is more than one identical slave device on the bus, a different address must be defined for each slave device. Default addresses for addressing slave devices over the bus may be assigned by a standardization organization or system bus management entity, and addresses are typically assigned to specific types of slave devices or classes of slave devices. Thus, multiple slave devices having the same model, type, or manufacturer may be assigned the same address. When multiple slave devices are provided in the system, with the same model or part number, or from a particular manufacturer, the slave devices may have the same default address.
Embodiments described with respect to slave devices having programmable addresses provide a system in which all connected slave devices may have different active addresses to avoid being addressed simultaneously. This avoids the need to provide slave devices with different hard programming addresses to allow multiple slave devices of the same type to be on the bus. Providing programmable addresses avoids the incremental chip area replenishment costs associated with hard programming addresses. In addition, the programmable addresses avoid the need to register registers of the bus interface with a standardization organization or management entity. Thus, a customer or end-user may assign their own address separately from a standardization organization or management entity. The disclosed embodiments of slave devices with programmable addresses also provide the ability to set the address of individual slave devices over a bus. In some embodiments, only the default address is heard if the slave device address is not configured and the chip select is set. Once the current address is configured, the chip select pins no longer serve as chip select pins, but are available for additional functions. This avoids the need for additional external dedicated address pins to configure the chip to a different address, which may not be practical or economical for pin-limited packages.
Embodiments disclosed herein provide programmable addresses in slave devices such that each slave device can be addressed individually without conflict. Thus, slave devices that may have the same default address at the time of manufacture may be provided with the current address such that when the slave device is included in a larger system, the slave device will not attempt to process instructions directed to other slave devices. In some embodiments, all duplicate slaves may be started using the same address by default. However, sideband chip selection may be enabled for a particular slave device that responds to the initial address. In some embodiments, the sideband signal is a pin or pins of normal function. However, at startup, the normal function pins are not functional except for chip select. Sideband refers to the fact that the chip select signal is typically not part of the bus interface specification. Once a slave device having its chip select pin enabled is addressed via the bus pair, the slave device can be programmed to have a different address. After the slave device is programmed with a new unique or valid address, the slave device merely responds to the address and the chip select pin is no longer required. When the current address is set, one or more pins used as chip select may be used for their original or additional functional purposes. This process may be performed for each identical slave device on the bus, such that all slave devices have different addresses. Thus, the same slave device may be provided for subsequent programming of the available address from the default address to a unique current address for each slave device, which avoids the replenishment problems associated with hard programmed addresses. Furthermore, the address of each slave device is programmed via the bus and the commonly functioning pins are used as chip select, avoiding the need for additional external addressing or chip select pins. Thus, a user, a system vendor, or a system integrator may define addresses for slave devices as needed, and these slave devices have a solution with a small area and a reduced pin count without registering addresses.
FIG. 1 is a diagram illustrating a system 100 including a slave device 106 having a programmable address, according to some embodiments. In one embodiment, system 100 has a control circuit 104 connected to bus 102. In some embodiments, bus 102 is an inter-integrated circuit (I)2C) A bus, a Serial Peripheral Interface (SPI) bus, a system management bus (SMBus or SMB), a Direct Memory Access (DMA), a power management bus (PMBus), and the like. For example, in the case of bus I2In the case of a C bus, the bus 102 may have four conductors, including: a ground line or a common ground; a Vcc line as a supply voltage line having a voltage of about 1.2 volts to about 5.5 volts greater than ground; a Serial Data (SDA) line and a Serial Clock (SCL) line. The control circuit 104 may be, for example, a processor, microcontroller, or the like,Logic circuits, state machines, etc. One or more slave devices 106, including, for example, a first slave device 106A, a second slave device 106B, or any number of other slave devices 106N, may be connected to the bus 102. Slave device 106 may be, for example, a gate driver, a Light Emitting Diode (LED) driver, a voltage driver, a processor, a memory device, a communication device, a sensor, a digital-to-analog converter (DAC), an analog-to-digital converter (ADC), a communication driver, and so forth. For example, where the slave device is a gate driver, the gate driver may be connected to the bus and used to control the gate of a transistor or circuit. The bus may be used to issue commands to the gate driver slave device to reset the device, perform emergency shutdown, turn the gate driver off or on, perform configuration or diagnostics on the gate driver, and the like.
Control circuitry 104 may communicate with slave device 106 using a protocol that conforms to the particular protocol requirements of bus 102. For example, for I2C bus, control circuit 104 may use I2C protocol, and may issue one or more address frames carrying the address of the target slave device 106 and one or more command and data frames read from the device at the address in the address frame. In some embodiments, the slave devices 106 may be programmable such that the current address of each slave device 106 may be identified by the bus setting.
The control circuitry 104 initiates programming of the address of each slave device 106 by asserting, or sending a signal on, one or more chip select pins. In some implementations, the chip select pin of the slave device 106 is a pin that has other functions during normal operation of the slave device 106. The control circuitry 104 asserts chip select pins for a single slave device 106 to inform that particular slave device address programming is in progress, and uniquely identifies the single slave device 106 that may share a default address with one or more other slave devices 106. The chip select pin is separate or apart from the bus 102 to allow the chip select pin to be active while a message is sent to the slave device 106. When the chip select pin is asserted for the target slave device 106, the control circuit 104 sends a message to the target slave device to set or program the current address in the slave device 106. In some embodiments, the message may include a default address of the target slave device 106, a command to set the current address, and/or a data value for the current address. After setting the current address of a particular slave device 106, the chip select pin may be deactivated or released and the process repeated for one or more other slave devices 106. In addition, each slave device 106 may also have one or more programmable group addresses. The group address is separate from and included in addition to the current address or the default address. The slave device 106 responds to messages received with the group address. The group address allows setting an address shared by a plurality of slave devices so that the control circuit can control the plurality of slave devices with a single command or message. For example, in a system where multiple voltage drivers are provided on the bus, each individual slave device may have a different current address, but the same group address. Thus, each individual voltage driver slave device may be controlled to have a unique voltage output using the slave device's current address, but may be turned off as a group using a group turn off command with a group address. Each voltage driver receives a group shutdown message from a device, determines that an address in the message matches a group address in the slave device, and then processes the group shutdown message. In this example, the current address of each voltage driver slave is different from each other and from the group address.
The address of each slave device 106 may be set one or more times. Thus, in some embodiments, the address of the slave device 106 may be set during manufacturing, for example, to customize the slave device for manufacturing the electronic circuit. In other embodiments, the slave device's address may be set when the slave device 106 is used to manufacture a larger system, during the first use of the system, or during an initialization or programming phase of system manufacture. In other embodiments, the address of the slave device 106 may be set on-the-fly or during use. For example, the master or control circuit 104 of the system may set the address of each of the slaves 106 when the system is first powered up in response to a programming signal, or the master may set or initialize the address of each of the slaves 106 each time the system is powered up. Each slave device 106 may store the programmed address as a current address in volatile or non-volatile memory that is accessible by logic in the corresponding slave device that handles the communication or logic.
Providing a unique address to each of slave devices 106 allows, for example, a first slave device 106A to be assigned a different address than that assigned to a second slave device 106B or other slave devices 106N. The slave device 106 determines whether a valid or programmed address has been set and processes the message using the programmed address during normal operation, rather than using a default address assigned to the slave device during manufacture.
Fig. 2 is a diagram illustrating a system 200 including a slave device 106 having a programmable address, according to some embodiments. The system 200 has a control circuit 104, the control circuit 104 having, for example, a master device 202 and address logic 204 connected to the master device 202. The master device 202 is connected to the bus 102 and communicates with the slave device 106 over the bus 102 using a bus compatible protocol. In some embodiments, the address logic 204 is a decoder, chain of logic gates, or the like that takes an address or other signal from a master device and converts it into a signal that addresses a single slave device 106a.. 106N. Additionally, in some embodiments, such as system 200 where each slave device 106 has multiple chip select pins, address logic 204 provides signals on multiple discrete lines to simultaneously enable or set all of the chip select pins of a targeted slave device. Thus, a first chip select pin for the slave device 106 may be driven by a signal on the first line 206 and a second chip select pin for the slave device may be driven by a signal on the second line 208 that is separate from the first line 206. It should be understood that any signal may be used to make the chip select pin active and that the signals to make the multiple pins on the target slave device active may be different. For example, the gate driver control pin and the ready indicator pin may operate as chip select pins and may be asserted by the address logic 204 by holding the gate driver control pin high and the ready indicator pin low. In such an example, the gate driver control pin is an input pin of the slave device driven by the control circuit 104 during normal operation to turn on or off the output of the slave device. The ready indicator pin may be an output pin of the slave device 106 and may be driven by logic within the slave device 106 during normal operation to indicate that the slave device 106 is ready to operate or ready to receive commands. In some embodiments, the chip select pin is a combination of an input pin and an output pin such that the combination of pins is not inadvertently driven simultaneously to indicate that the pins are used as chip select pins.
The master device 202 sends a command over the bus to the target slave device 106 to set the current address or group address when the chip select pin of the target slave device 106 is being driven. In some embodiments, the chip select pins for the target slave device may be held valid while a plurality of commands for setting the current address and the group address are issued to the target slave device. In addition, after each address is set, the target slave device may confirm that the current address or group address is set correctly.
Fig. 3A is a diagram illustrating an apparatus 300 having circuitry for programmable addressing, according to some embodiments. In this embodiment, the device 300 may be a slave device configured to receive a command to set an address and respond to a message to a programmed address. In some implementations, the device 300 includes state logic 304 that controls logical operations of the device (e.g., determines whether an incoming message is addressed to the device, processes a received command, etc.). In some embodiments, the state logic 304 may be a logic state machine as follows: formed from discrete logic components formed as an integrated circuit such as a special purpose circuit, a programmable logic array or gate array, implemented in software executing on a processor, microcontroller or other computing device, or the like. In some implementations, the state logic 304 also handles or processes incoming commands and causes the device 300 to respond to or act on the commands.
The status logic 304 is connected to the bus communication circuit 302, which bus communication circuit 302 handles input and output signals on the bus through one or more bus terminals 308. Bus communication circuit 302 may receive data from status logic 304 for transmission on the bus and may handle signaling conversion in a bus compatible protocol. Similarly, bus communication circuit 302 receives messages from the bus and sends the data in the messages to state logic 304 for processing or handling. The state logic 304 may process these commands and respond over the bus using the bus communication circuit 302, or may provide outputs, signals, responses, etc. through, for example, outputs (e.g., output ports, pins, displays, etc.). In some embodiments, for example, where the bus is I2In the case of a C bus, the bus terminal 308 includes a ground line, an SDA line, an SCL line, and a Vcc line, and the bus communication circuit 302 transmits and receives data through the bus using the SDA and SCL lines. In other embodiments using other bus types or protocols, the number and type of bus terminals 308 will reflect the requirements of the relevant bus protocol.
The apparatus 300 further comprises a storage device 306 for storing data related to the apparatus address. In some embodiments, the memory includes a default address register 320, a current address register 322, and a bank address register 324 for the device 300 configured to use bank addresses. In some embodiments, the storage device 306 may also include a configuration check bit memory or register 326. Configuration check register 326 may be used to store a configuration check value or bit that indicates the current address has been properly configured. In some implementations, the registers 320, 322, 324, and 326 may be non-volatile memory or another computer readable medium such that addresses stored in the respective registers 320, 322, 324 are maintained when the storage device 306 is powered down. In some embodiments, the default address is stored in the default address register 320 during the manufacturer's manufacturing, production, initialization, or test phase. In some embodiments, current address register 322 and group address register 324 are writeable memories to which state logic 304 may write the received address to the associated register. In addition, the current address or group address may be written to the associated register during system manufacture, for example, by the system manufacturer or a user. In other embodiments, the current address or group address may be written to the relevant register by the manufacturer, distributor, etc. for customization before being provided to the system manufacturer or user.
The apparatus 300 also includes one or more pin terminals 312 and 314 that provide connectivity to one or more pins 316 and 318 separate from the bus or bus terminal 308. In some embodiments, pins 316 and 318 are chip select pins that also provide additional functionality. During start-up or another programming mode, pins 316 and 318 act as chip select pins, and when pins 316 and 318 are made active, state logic 304 detects the state of pins 316 and 318, and if pins 316 and 318 are active in the mode for address programming, state logic 304 listens for messages on the bus that are addressed to device 300. When the bus communication circuit 302 receives a message over the bus, the message is passed to the state logic 304, and the state logic 304 compares the target address in the message with the default address. If the address in the message matches the default address stored in the default address register 320, then the status logic 304 then checks for a command in the message, and if the command is to set or program the current address, the status logic 304 stores the address in the message in the current address register 322 as the current address. In some embodiments, state logic 304 may also confirm that the current address is properly stored in current address register 322. In some embodiments, the device 300 may respond to the address setting message with an acknowledgement message, a bit, or a response sent over the bus. Additionally, in some embodiments, the state logic 304 may compare the incoming address of the current address to the default address to verify that the current address is not set to the same address as the default address, which may result in a conflict with other devices that still use the default address. If the incoming address is different from the default address, the state logic 304 may store the incoming address in the current address register as the current address and set the configuration check value to indicate that the configuration of the current address has been successfully completed. The configuration check value may be verified by, for example, a master device, control circuitry, a programming device, etc., by sending a read command to device 300 that returns the value of configuration check register 326.
Is configured to use I in the apparatus 3002In the example of a voltage driver for a C bus, registers 320, 322, 324, and 326 may have tags identifying particular registers, which may be used as identifiers in messages or commands sent over the bus to device 300. The default address may be a default I that may be overwritten or overwritten by a user2The C address. In implementations where there are multiple slave devices with the same default address, overriding the default address with the current address may be mandatory. The apparatus 300 has a default address at start-up, which is hard-coded in what may be labeled I2CHWADD is in the default address register 320 and may be hidden from the user. Can be marked as I for initiating a pair2Access to the current address register 322 of the CADD, the user uses the default address of the device 300 to address the message to the device and uses the first pin 316 and the second pin 318 as chip select pins. The first pin 316 may be a gate driver control pin labeled PWM IN and the second pin 318 may be a ready indicator pin labeled RDYC. When PWM IN is not used as a chip select pin, PWM IN may be functionally used to turn the output of the device on and off during normal operation. RDYC is used in normal operation to indicate when the chip is ready. RDYC is typically pulled down internally and may be pulled down externally when used as a chip select.
To make pins 316 and 318 active, PWM IN is pulled up and RDYC is pulled down by an external device such as a control circuit to select the target device. At this time, the address of the slave is I2Default address in CHWADD register. The user configures I by sending an address set command over the bus identifying the selected slave device by the default address2And a CADD register. The address setting command may have the following commands: for example, the write bit set in the message, the identifier of the target memory being written to(e.g., I of current address register 3222A CADD tag) and the value to be stored as the current address. The status logic 304 performs an internal check to ensure it is stored in I2The new current address in CADD is not equal to that stored in I2Original default address in CHWADD.
In I2After the CADD register has been written, the status logic 304 checks the register (which may be labeled I) by passing the configuration2CCFGOK) is set to 1 to set a configuration check value to indicate completion of configuration and lock on I2CADD register access to prevent accidental alteration. When I is2The status logic 304 may also send an acknowledge message or respond with an acknowledge bit on the bus when the ADD register is correctly written. If the current and default addresses are equal, I will not be set2CCFGOK value, and no acknowledgement will be sent.
In some embodiments, the configuration check value may be cleared (unset) by the state logic 304, or by the user at any time sending a message to the device 300 to revert to a default address or reprogram the current address. In other embodiments, for example, where the current address is set by the manufacturer, the user cannot access the configuration check value to prevent accidental resetting of the current address.
Although the preceding examples are according to I2C bus interface, other bus interfaces requiring an address may be used without departing from the principles described herein.
Fig. 3B is a diagram illustrating a system 350 with a programmable addressable slave gate driver 310 according to some embodiments. The system 350 has a control circuit 104 that includes address logic 204 and a master device 202 connected to a bus 102. A gate driver 310, which is a slave device having circuitry for programmable addressing, is connected to the bus 102. In some embodiments, the gate driver 310 is connected through an output connection 334 to a control port of a transistor 336 controlled or driven by the gate driver 310. A load 338 may be connected to the conductive path of transistor 336. The system 350 may have one or more second slave devices 106B connected to the bus, and the control circuit 104 may control the gate driver 310 and the second slave devices 106B through the bus 102. Additionally, the second slave device 106B and the gate driver may initially have the same default address, and the control circuitry may assign or set a current address or group address in one or both of the second slave device 106B and the gate driver 310.
In some embodiments, gate driver 310 may be used to control the electrical signal delivered from transistor 336 to load 338. For example, in some embodiments, the load 338 is a motor, a Light Emitting Diode (LED), a display, a transmitter, or other circuit or device. Transistor 336 controls the power signal to the load and, in some embodiments, is capable of handling higher voltages or currents than gate driver 310. In some embodiments, transistor 336 is an npn Bipolar Junction Transistor (BJT), but may be one or more metal oxide field effect transistors (MOSFETs), fin field effect transistors (finfets), Junction Field Effect Transistors (JFETs), Insulated Gate Bipolar Transistors (IGBTs), or other electrically controlled switching devices.
The gate driver 310 is connected to the bus lines by data lines 328A and 328B and to the control circuitry by one or more chip select lines 330 and 332. Implementing I on a bus2In an embodiment of the C protocol, the data lines 328A and 328B may be connected to SDA and SCL ports or pins of the gate driver and may be used to send data to the gate driver 310 to assign addresses to the gate driver 310 or to control the operation of the gate driver 310.
For example, the gate driver may be a pulse width modulated driver that may be used to control the power transistors of the motor. The gate driver 310 may receive address assignment information through the data lines 328A and 328B at start-up and receive normal communication messages or commands after addresses are assigned. Chip select lines 330 and 332 may be used to indicate to gate driver 310 that the control circuitry is setting the current address or group address of gate driver 310. After the address is set and verified, the pins to which chip select lines 330 and 332 are connected are used for additional functions.
In one embodiment, the gate driver 310 may also receive a signal from the control circuit 104 indicating the frequency or duty cycle of the pulse signal to the transistor 336. The gate driver 310 may then process the incoming message and provide a signal on the output connection 334 to the control port of the transistor 336. In another embodiment, the chip select pin may receive a signal via chip select lines 330 and 332 that indicates to gate driver 310 when to turn transistor 336 on or off. Parameters for controlling or operating the transistor 336 may be set to the gate driver 310 by a device parameter message through the bus. The device parameter message may include the following information or parameters: which describes the manner in which gate driver 310 should operate transistor 336, but does not control when gate driver 310 operates transistor 336. For example, the gate driver 310 may receive the following device parameter messages over the bus 102: which instructs the gate driver to control the transistor 336 to control how the transistor gate is driven, for example by describing the rate of change of voltage across the transistor (dV/DT) or the rate of change of current through the transistor (di/DT). Control circuitry 104 may then provide signals on one or more chip select lines 330 and 332 that cause gate driver 310 to drive, control, or turn on transistor 336 and operate transistor 336 according to the parameters in the device parameter message.
In embodiments where the transistor is a BJT, the signal sent from the gate driver 310 through the output connection 334 controls the base current of the transistor 336, which in turn controls the current flowing to the load 338. Varying the frequency or duty cycle of the signal delivered from the transistor 336 to the load allows for control of, for example, the speed or power of the load 338.
FIG. 4 is a flow diagram illustrating a method 400 for programming an address on a slave device, according to some embodiments. The method may be performed using programming circuitry such as a device programmer, a system provided with a slave device, or any other system for programming a slave device. In block 402, the programming circuitry validates the chip select pin as a targeted slave by sending a signal to the chip select pin on a line separate from the bus. In block 404, the programming circuitry sets the current address or group address by sending a message on the bus to the targeted slave device when the chip select pin is active. In some embodiments, the message includes a default address of the target slave device, a command to set the current address, and a data value representing the current address. The state logic then saves the current address. In some embodiments, the programming circuitry may then set a configuration check bit or register in block 406 by sending a second message to the targeted slave device. The second message includes a default address for the target slave device, which is still used for the second message since the configuration check value has not been set. The second message also includes a command to set the configuration check bit, and in some embodiments the second message also includes the value to which the configuration check bit is set. In other embodiments, the device itself may set the configuration check bit. Additionally, in some embodiments, the programming circuitry verifies in block 408 whether the current address is properly set. The programming circuitry may verify the current address by checking an acknowledge bit or message sent in response to setting the current address or group address or in response to setting the configuration check bit. In other embodiments, the programming circuitry may read the current address value stored in the current address register or use the current address to send a read or write command to the target slave device and check for a valid response. In block 410, the programming circuitry disables the chip select pin by stopping the chip select signal to the chip select pin. The target slave device may then be used for normal operation and in block 412, the user or system may communicate with the target slave device at the current address or group address. Additionally, in some embodiments, the programming circuitry may set or read the chip select pin of the target in block 414 during normal operation. During normal operation, the chip select pins have additional functionality beyond the chip select function, thereby avoiding the need for dedicated address pins on the slave device.
FIG. 5 is a flow diagram illustrating a method for setting a programmable address for a slave device, according to some embodiments. In block 502, the slave device detects that the chip select pin is valid. In block 504, the slave device receives the current address or group address data on the bus. In some embodiments, the current address or group address data is received in a first message identifying a default address, a command to set the current address or group address, and a value indicating the current address or group address to be saved to an associated register. The slave device determines that the received message is intended for the slave device by determining that the chip select pin is set and that the destination address in the message is the same as the default address. Additionally, in some embodiments, the slave device may set the current address by checking the value of a configuration check bit or register. If the configuration check bit is set, the slave device may ignore the address set message and avoid sending any acknowledgement that the command has been executed. In block 506, the slave device compares the current address or group address from the first message with the default address. If the current address or group address is not the same as the default address, then in block 508 the slave device sets the current address or group address to the address in the first message. Otherwise, the slave device stops processing the command in the first message and avoids setting the current address or group address and sending an acknowledgement message. Although in this embodiment setting the current address or group address is described as being performed in response to the current address or group address in the first message being different from the default address, in other embodiments the current address or group address from the first message may be saved to an associated register, then compared to the default address, and overwritten or ignored if the addresses match.
In some embodiments, if the current address or group address is successfully set, a configuration check register or bit is set in block 510. In some embodiments, the slave device sets the configuration check bit in response to the slave device setting a current address or group address or in response to receiving a message on the bus setting a configuration check value. Additionally, in some embodiments, the slave device may confirm that the current address or group address is set in block 512 by, for example: pull down the bus to signal an acknowledgement that the set address command has been executed, send a message on the bus, or another acknowledgement technique. After the current address or group address is set and verified, the slave device resumes normal operation. In block 514, the slave device receives data or commands in a message addressed using the set current address or group address on the bus and during normal operation. In addition, in some embodiments, the slave device may set or read the chip select pin as part of an additional function during normal operation.
FIG. 6 is a diagram illustrating a method 600 for processing messages using programming addresses, according to some embodiments. After setting the current address or group address as described above, the slave device may use this method to process messages or commands using the current address or group address stored on the slave device. In block 602, a slave device receives a message on a bus. The message has at least one target address indicating an intended bus device and also has a data payload that may include command or data values. The slave device reads the configuration check value in block 604 to determine whether the slave device should use the programmed current address or the preset default address. If the configuration check value is not set, the slave device compares the target address from the message to the default address in block 608. If they match, the message is for the slave and the slave executes the command in block 610, otherwise the command is ignored in block 612. If the configuration check value is set, the slave device processes the incoming message using the current address or group address. In block 606, the slave device compares the target address obtained from the message with the value of the current address stored in the current address register. If the addresses match, the slave executes the command in the message in block 610. If the target address does not match the current address, the slave device checks for an attempt to process the message using the group address. In block 616, the slave device compares the target address from the message to the value of the bank address stored in the bank address register. If the target address matches the group address, the slave executes the command from the message in block 610. If the target address does not match the group address, the slave ignores the command in the message in block 612. Thus, the slave device uses the configuration check value to determine whether to use the default address or the programmable address, and then compares the address of the target slave device from the message with the programmable address to determine whether the message is intended for the slave device, and accordingly executes or ignores the command in the message.
An apparatus according to one embodiment comprises: a bus communication circuit connected to the bus terminals; a first pin terminal; the memory is provided with a first register and a second register, and a first address is stored in the first register; and a status logic circuit connected to the memory, the first pin terminal, and the bus communication circuit. The state logic circuit has the following circuits: which detects a chip select signal on the first pin terminal and receives a first message through the bus communication circuit when the chip select signal is active. The state logic circuit also has the following circuitry: it determines that the first message indicates an address set command and, in response to the target address in the first message matching the first address, saves the address value in the first message as a second address in a second register. The state logic circuit also has the following circuitry: which processes a second message received through the bus communication circuit in response to the target address of the second message matching the second address.
In one embodiment, the state logic circuit also has additional functional circuitry that performs at least one of the following operations during normal operation: the method may further include providing a signal to the first pin terminal or detecting a functional signal other than the chip select signal at the first pin terminal and performing a function associated with the functional signal. In one embodiment, the circuitry to save the address value in the first message as the second address in the second register is responsive to the state logic circuitry determining that the address value is different from the first address to save the address value in the first message as the second address in the second register. In one embodiment, the state logic circuit further has the following circuitry: which provides an acknowledgement to the bus terminal through the bus communication circuit in response to the status logic circuit successfully saving the address value as the second address in the second register. In one embodiment, the state logic to process the second message comprises the following circuitry: which processes a second message received through the bus communication circuit regardless of the first address in response to a target address of the second message matching the second address.
A method according to one embodiment includes asserting a chip select signal to a chip select pin of a first slave device connected to a bus, wherein the chip select signal is sent to the chip select pin outside of the bus and setting a first address of the first slave device by sending a first message to the first slave device on the bus when the chip select signal is asserted. The first message includes a default address of the first slave device, a command to set the first address, and a data value representing the first address. The method of this embodiment further includes sending a second message to the first slave device over the bus after the chip select signal is deasserted, the second message addressed using the first address. In one embodiment, the first address is a current address and the current address of the first slave device is different from the current address of one or more second slave devices connected to the bus. In one embodiment, the method further comprises: the second address of the first slave device, a command to set the second address, and a data value representing the second address are set by transmitting a third message including a default address of the first slave device to the first slave device over the bus when the chip select signal is asserted. The second address is a group address, the group address of the first slave device is different from a current address of the first slave device and a current address of each of the one or more second slave devices, and the group address of the first slave device is different from a default address of the first slave device and a default address of each of the one or more second slave devices. The group address of the first slave device matches the group address of at least one of the second slave devices. In one embodiment, the method further comprises: in response to the second address being different from the default address of the first slave device and the current address of the first slave device and further in response to the data value being successfully saved by the first slave device as the second address, receiving an acknowledgement from the first slave device over the bus that the command to set the second address has completed. In one embodiment, the method further comprises: in response to the first address being different from the default address of the first slave device and further in response to the first slave device successfully saving the data value as the first address, receiving an acknowledgement from the first slave device over the bus that the command to set the first address has completed.
The method according to one embodiment comprises: the method includes detecting, by a device having a bus terminal and a first pin terminal separate from the bus terminal, asserting a chip select signal at the first pin terminal, receiving, by the device, a first message including a target address, a command to set the first address on the device, and a data value representing the first address on the bus terminal when the chip select signal is asserted, and saving the data value as the first address in a first register of the device in response to the target address of the first message matching a default address of the device. The method further comprises the following steps: in response to the target address of the second message matching the first address, the second message received by the device on the bus terminals is processed by the device during normal operation.
In one embodiment, the method further comprises performing at least one of the following operations during normal operation: the method further includes providing a signal to the first pin terminal or detecting a functional signal other than the chip select signal at the first pin terminal and performing a function associated with the functional signal. In one embodiment, the data value is saved as the first address in the first register in response to the address value being different from a default address of the device. In one embodiment, the method further comprises providing an acknowledgement to the bus terminal in response to successfully saving the data value as the first address in the first register. In one embodiment, the apparatus is a gate driver having an output port connected to a control port of a transistor, and processing a second message received by the apparatus on the bus terminal during normal operation in response to a target address of the second message matching the first address comprises: a signal is sent to the transistor through the output port and the current through the transistor is controlled in accordance with the second message.
The method according to one embodiment comprises: receiving a first message sent by a device connected to the bus through the bus, the first message having stored thereon a first programmable address different from a default address of the device; comparing the first target address in the first message to a default address in response to the configuration check value not being set; and processing the first message in response to the first target address matching the default address and the configuration check value not being set. The method further comprises the following steps: the first target address is compared to the first programmable address in response to the configuration check value being set, and the first message is processed in response to the first target address matching the programmable first address and the configuration check value being set. In one embodiment, the method further comprises: in response to the first target address not matching the first programmable address and the configuration check value being set, comparing the first target address to a second programmable address stored on the device; processing the first message in response to the first target address matching the second programmable address and the configuration check value being set; and ignoring the first message in response to the first target address not matching the first programmable address, the first target address not matching the second programmable address, and the configuration check value being set. The second programmable address is a bank address that matches a bank address of another device connected to the bus. In one embodiment, the method further comprises: receiving, by the device while the chip select signal is asserted at the pins of the device, a second message sent over the bus including a second target address, a command to set a first programmable address on the device, and a data value representing the programmable first address; and saving the data value as the first programmable address in a first register of the device in response to the second target address matching the default address. In one embodiment, the method further comprises: an acknowledgement is provided over the bus in response to successfully saving the data value as the first programmable address.
A system according to one embodiment includes a bus, a plurality of slave devices connected to the bus, each of the plurality of slave devices having a default address, and an input pin separate from the bus. Each of the plurality of slave devices is configured to receive a message over the bus. The system of this embodiment further includes a control circuit connected to the bus and respectively connected to the input pin of each of the plurality of slave devices through a plurality of lines separate from the bus, the control circuit configured to assert a signal on a line leading to a target slave device of the plurality of slave devices, and when the signal is asserted, send a first message over the bus indicating an address setting command using a default address of the target slave device. Each of the plurality of slave devices is further configured to: when the signal is asserted to the corresponding slave device, a value from the first message is saved as the first address in response to the target address of the first message matching a default address of a corresponding one of the plurality of slave devices.
In one embodiment, each of the plurality of slave devices is further configured to: the second message received from the control circuit over the bus is processed in response to the target address of the second message matching the first address. In one embodiment, the plurality of slave devices includes a gate driver having an output connected to the control port of the transistor, the gate driver configured to control current through the transistor according to the second message. In one embodiment, the first address is a current address, and the current address of each of the plurality of slave devices is different from each other and from a default address of each of the plurality of slave devices. In one embodiment, the control circuit is further configured to: when the signal is active, a third message is sent over the bus indicating an address set command using the default address of the target slave device. Each of the plurality of slave devices is further configured to: when the signal is asserted to the corresponding slave device, a value from the third message is saved as the second address in response to the target address of the third message matching the default address of the corresponding one of the plurality of slave devices. The second address is a group address, the group address of each of the plurality of slave devices is different from a current address of each of the plurality of slave devices and a default address of each of the plurality of slave devices, and the group address of at least one of the plurality of slave devices matches the group address of at least one other slave device.
While the present invention has been described with reference to illustrative embodiments, this description is not intended to be construed in a limiting sense. Various modifications and combinations of the illustrative embodiments, as well as other embodiments of the invention, will be apparent to persons skilled in the art upon reference to the description. It is therefore intended that the appended claims cover any such modifications or embodiments.

Claims (24)

1. A bus apparatus, comprising:
a bus communication circuit connected to a bus terminal;
a first pin terminal;
a memory having a first register and a second register, the first register storing a first address;
a state logic circuit connected with the memory, the first pin terminal, and the bus communication circuit, wherein the state logic circuit has circuitry to detect a chip select signal on the first pin terminal and receive a first message through the bus communication circuit when the chip select signal is active, wherein the state logic circuitry further has circuitry to determine that the first message indicates an address set command and to save an address value in the first message as a second address in the second register in response to a target address in the first message matching the first address, and wherein the state logic circuitry further has circuitry for processing a second message received through the bus communication circuitry in response to a target address of the second message matching the second address.
2. The bus apparatus of claim 1, wherein the state logic circuit further has an additional function circuit that performs at least one of the following operations during normal operation: providing a signal to the first pin terminal, or detecting a functional signal other than the chip select signal at the first pin terminal and performing a function associated with the functional signal.
3. The bus apparatus of claim 1 wherein the circuitry to save the address value in the first message as the second address in the second register is to save the address value in the first message as the second address in the second register in response to the state logic circuitry determining that the address value is different from the first address.
4. The bus arrangement of claim 3, wherein the state logic circuit further has circuitry for providing an acknowledgement to the bus terminal through the bus communication circuit in response to the state logic circuit successfully saving the address value as the second address in the second register.
5. The bus apparatus of claim 1, wherein the circuitry to process the second message processes the second message without regard to the first address in response to a target address of the second message received by the bus communication circuitry matching the second address.
6. A setup method, comprising:
asserting a chip select signal to a chip select pin of a first slave device connected to a bus, wherein the chip select signal is transmitted to a chip select pin external to the bus;
setting a first address of the first slave device by sending a first message to the first slave device over a bus when the chip select signal is active, the first message including a default address of the first slave device, a command to set the first address, and a data value representing the first address; and
sending a second message to the first slave device through the bus after the chip select signal is inactive, the second message addressed using the first address.
7. The setup method of claim 6, wherein the first address is a current address, and wherein the current address of the first slave device is different from the current address of one or more second slave devices connected to the bus.
8. The setup method according to claim 7, further comprising:
setting a second address of the first slave device by sending a third message to the first slave device over the bus when the chip select signal is active, the third message including a default address of the first slave device, a command to set the second address, and a data value representing the second address,
wherein the second address is a group address, and wherein the group address of the first slave device is different from a current address of the first slave device and from a current address of each of the one or more second slave devices, wherein the group address of the first slave device is different from a default address of the first slave device and from a default address of each of the one or more second slave devices; and is
Wherein the group address of the first slave device matches the group address of at least one of the one or more second slave devices.
9. The setup method according to claim 8, further comprising: receiving an acknowledgement from the first slave device over the bus that a command to set the second address has been completed in response to the second address being different from a default address of the first slave device and from a current address of the first slave device and also in response to the data value representing the second address being successfully saved as the second address by the first slave device.
10. The setup method according to claim 6, further comprising: receiving, from the first slave device over the bus, an acknowledgement that a command to set the first address has been completed in response to the first address being different from a default address of the first slave device and further in response to the data value representing the first address being successfully saved by the first slave device as the first address.
11. A method of processing, comprising:
detecting, by a device having a bus terminal and a first pin terminal separate from the bus terminal, whether a chip select signal is active at the first pin terminal;
receiving, by the device, a first message on the bus terminals while the chip select signal is active, the first message including a target address, a command to set a first address on the device, and a data value representing the first address;
in response to a target address of the first message matching a default address of the device, saving the data value as the first address in a first register of the device; and
processing, by the device, a second message received by the device on the bus terminals during normal operation in response to a target address of the second message matching the first address.
12. The process of claim 11, further comprising, during normal operation, performing at least one of: providing a signal to the first pin terminal, or detecting a functional signal other than the chip select signal at the first pin terminal and performing a function associated with the functional signal.
13. The processing method of claim 11, wherein the saving of the data value as the first address in the first register is performed in response to the data value differing from a default address of the apparatus.
14. The processing method of claim 13, further comprising: providing an acknowledgement to the bus terminal in response to successfully saving the data value as the first address in the first register.
15. The processing method of claim 11, wherein the device is a gate driver having an output port connected to a control port of a transistor; and is
Wherein processing a second message received by the device on the bus terminals during normal operation in response to its target address matching the first address comprises: sending a signal to the transistor through the output port and controlling current through the transistor according to the second message.
16. A method of processing, comprising:
receiving a first message sent on a bus by a device connected to the bus and having stored thereon a first programmable address different from a default address of the device;
in response to a configuration check value not being set, comparing a first target address in the first message with the default address;
processing the first message in response to the first target address matching the default address and the configuration check value not being set;
comparing the first target address to the first programmable address in response to the configuration check value being set; and
processing the first message in response to the first target address matching the first programmable address and the configuration check value being set.
17. The processing method of claim 16, further comprising:
in response to the first target address not matching the first programmable address and the configuration check value being set, comparing the first target address to a second programmable address saved on the device;
processing the first message in response to the first target address matching the second programmable address and the configuration check value being set; and
responsive to the first target address not matching the first programmable address, the first target address not matching the second programmable address, and the configuration check value being set, ignoring the first message,
wherein the second programmable address is a bank address that matches a bank address of another device connected to the bus.
18. The processing method of claim 16, further comprising:
receiving, by the device, a second message sent over the bus while a chip select signal is active at a pin of the device, the second message including a second target address, a command to set the first programmable address on the device, and a data value representing the first programmable address; and
in response to the second target address matching the default address, saving the data value as the first programmable address in a first register of the device.
19. The processing method of claim 18, further comprising: providing an acknowledgement over the bus in response to successfully saving the data value as the first programmable address.
20. A setup system comprising:
a bus;
a plurality of slave devices connected to the bus, each of the plurality of slave devices having a default address and an input pin separate from the bus, wherein each of the plurality of slave devices is configured to receive a message over the bus; and
a control circuit connected to the bus and respectively connected to an input pin of each of the plurality of slave devices through a line of a plurality of lines separated from the bus, wherein the control circuit is configured to make a signal on a line leading to a target slave device of the plurality of slave devices valid and to transmit a first message indicating an address setting command on the bus using a default address of the target slave device when the signal is valid,
wherein each of the plurality of slave devices is further configured to: saving a value from the first message as a first address in response to the target address of the first message matching a default address of a respective slave device of the plurality of slave devices when the signal is valid for the respective slave device.
21. The setup system of claim 20, wherein each of the plurality of slave devices is further configured to process a second message received from the control circuit over the bus in response to a target address of the second message matching the first address.
22. The setup system of claim 21, wherein the plurality of slave devices comprises a gate driver having an output connected to a control port of a transistor, the gate driver configured to control current through the transistor according to the second message.
23. The setup system of claim 20, wherein the first address is a current address, and wherein the current address of each of the plurality of slave devices is different from each other and different from a default address of each of the plurality of slave devices.
24. The setup system of claim 23, wherein the control circuitry is further configured to: sending a third message over the bus indicating an address set command using a default address of the target slave device when the signal is active,
wherein each of the plurality of slave devices is further configured to: saving a value from the third message as a second address in response to the target address of the third message matching a default address of a respective slave device of the plurality of slave devices when the signal is valid for the respective slave device; and is
Wherein the second address is a group address, and wherein the group address of each of the plurality of slave devices is different from the current address of each of the plurality of slave devices and from the default address of each of the plurality of slave devices, and wherein the group address of at least one of the plurality of slave devices matches the group address of at least one other slave device.
CN201711180965.3A 2016-11-23 2017-11-23 Bus device, processing method, setting method and setting system Active CN108090010B (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/360,580 2016-11-23
US15/360,580 US10120829B2 (en) 2016-11-23 2016-11-23 Bus device with programmable address

Publications (2)

Publication Number Publication Date
CN108090010A CN108090010A (en) 2018-05-29
CN108090010B true CN108090010B (en) 2021-06-22

Family

ID=62069135

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711180965.3A Active CN108090010B (en) 2016-11-23 2017-11-23 Bus device, processing method, setting method and setting system

Country Status (3)

Country Link
US (1) US10120829B2 (en)
CN (1) CN108090010B (en)
DE (1) DE102017127731A1 (en)

Families Citing this family (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6359955B2 (en) * 2014-11-13 2018-07-18 ルネサスエレクトロニクス株式会社 Serial communication system, communication control device, and electronic device
IT201800002895A1 (en) * 2018-02-21 2019-08-21 Stmicroelectronics Application Gmbh PROCESSING SYSTEM, RELATED INTEGRATED CIRCUIT, DEVICE AND PROCEDURE
JP7046699B2 (en) * 2018-04-25 2022-04-04 矢崎総業株式会社 Communications system
TWI705335B (en) * 2018-10-15 2020-09-21 新唐科技股份有限公司 Integrated circuit, bus system and detecting method thereof
US10894423B2 (en) 2018-12-03 2021-01-19 Hewlett-Packard Development Company, L.P. Logic circuitry
US11338586B2 (en) 2018-12-03 2022-05-24 Hewlett-Packard Development Company, L.P. Logic circuitry
AU2018451612B2 (en) * 2018-12-03 2022-09-08 Hewlett-Packard Development Company, L.P. Logic circuitry
WO2021080606A1 (en) * 2019-10-25 2021-04-29 Hewlett-Packard Development Company, L.P. Logic circuitry package
EP3687820B1 (en) 2018-12-03 2022-03-23 Hewlett-Packard Development Company, L.P. Logic circuitry
MX2021005988A (en) 2018-12-03 2021-07-06 Hewlett Packard Development Co Logic circuitry.
MX2021005666A (en) 2018-12-03 2021-07-15 Hewlett Packard Development Co Logic circuitry.
WO2020117305A1 (en) 2018-12-03 2020-06-11 Hewlett-Packard Development Company, L.P. Logic circuitry
MX2021006484A (en) 2018-12-03 2021-07-02 Hewlett Packard Development Co Logic circuitry.
WO2020117198A1 (en) * 2018-12-03 2020-06-11 Hewlett-Packard Development Company, L.P. Logic circuitry
CA3121459A1 (en) 2018-12-03 2020-06-11 Hewlett-Packard Development Company, L.P. Logic circuitry package
CN111736792B (en) * 2019-03-25 2024-02-06 西安诺瓦星云科技股份有限公司 Programmable logic device, control method and control system thereof and video processor
FR3097987A1 (en) * 2019-06-26 2021-01-01 STMicroelectronics (Alps) SAS METHOD OF ADDRESSING AN INTEGRATED CIRCUIT ON A BUS AND CORRESPONDING DEVICE
US10819364B1 (en) * 2019-07-17 2020-10-27 United States of America as represented by the Adminstrator of NASA Radiation hardened compact multi-channel digital to analog converter
EP3780558A1 (en) * 2019-08-14 2021-02-17 Schneider Electric Industries SAS Addressing of slave devices using iterative power activation
TWI719633B (en) * 2019-09-12 2021-02-21 新唐科技股份有限公司 Integrated circuit, bus system and scheduling method
CN112769966B (en) * 2019-10-21 2023-08-25 阿里巴巴集团控股有限公司 Address information distribution method and device and electronic equipment
US11407229B2 (en) 2019-10-25 2022-08-09 Hewlett-Packard Development Company, L.P. Logic circuitry package
EP3837117A1 (en) * 2019-10-25 2021-06-23 Hewlett-Packard Development Company, L.P. Logic circuitry package
EP3833546A1 (en) * 2019-10-25 2021-06-16 Hewlett-Packard Development Company, L.P. Logic circuitry package
CN110855347A (en) * 2019-11-18 2020-02-28 四川光发科技有限公司 Communication device based on CAN bus
CN112513809A (en) * 2019-12-27 2021-03-16 深圳市大疆创新科技有限公司 Processor, task response method, movable platform and camera
CN111506325A (en) * 2020-03-27 2020-08-07 广州视源电子科技股份有限公司 Firmware upgrading method, system, storage medium and related equipment
WO2022125768A1 (en) 2020-12-11 2022-06-16 Skyworks Solutions, Inc. Enumeration of peripheral devices on a serial communication bus
TWI775436B (en) 2021-05-17 2022-08-21 新唐科技股份有限公司 Bus system
CN114967570B (en) * 2022-07-27 2022-11-11 深圳市汤诚科技有限公司 Programmable control circuit structure and control method for I2C slave machine address

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103425098A (en) * 2012-05-01 2013-12-04 马克西姆综合产品公司 Daisy chain configuration for power converters
CN103646003A (en) * 2013-12-02 2014-03-19 西安航空制动科技有限公司 1553B bus protocol module based on DSP

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1137442C (en) * 1995-06-15 2004-02-04 英特尔公司 Architecture for an I/O processor that integrates a PCI bridge
US5913045A (en) * 1995-12-20 1999-06-15 Intel Corporation Programmable PCI interrupt routing mechanism
US6108741A (en) * 1996-06-05 2000-08-22 Maclaren; John M. Ordering transactions
US6101322A (en) * 1996-06-05 2000-08-08 Compaq Computer Corporation Removal and insertion of expansion cards in a computer system
US6098110A (en) * 1996-12-30 2000-08-01 Compaq Computer Corporation Network switch with a multiple bus structure and a bridge interface for transferring network data between different buses
US20030196076A1 (en) * 2001-07-02 2003-10-16 Globespan Virata Incorporated Communications system using rings architecture
JP4437464B2 (en) * 2005-06-01 2010-03-24 株式会社ルネサステクノロジ Semiconductor device and data processing system
US20080005417A1 (en) * 2006-06-16 2008-01-03 Mtekvision Co., Ltd. Method for speedy delivery of data between processors and digital processing apparatus having shared memory
US8832408B2 (en) * 2007-10-30 2014-09-09 Spansion Llc Non-volatile memory array partitioning architecture and method to utilize single level cells and multi-level cells within the same memory
US9432298B1 (en) * 2011-12-09 2016-08-30 P4tents1, LLC System, method, and computer program product for improving memory systems

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103425098A (en) * 2012-05-01 2013-12-04 马克西姆综合产品公司 Daisy chain configuration for power converters
CN103646003A (en) * 2013-12-02 2014-03-19 西安航空制动科技有限公司 1553B bus protocol module based on DSP

Also Published As

Publication number Publication date
DE102017127731A1 (en) 2018-05-24
CN108090010A (en) 2018-05-29
US20180143935A1 (en) 2018-05-24
US10120829B2 (en) 2018-11-06

Similar Documents

Publication Publication Date Title
CN108090010B (en) Bus device, processing method, setting method and setting system
US10140242B2 (en) General purpose input/output (GPIO) signal bridging with I3C bus interfaces and virtualization in a multi-node network
US8040215B2 (en) Address selection for an I2C bus
US9552315B2 (en) Determining addresses of electrical components arranged in a daisy chain
US10936524B2 (en) Bus system with slave devices
US6493770B1 (en) System for reconfiguring a peripheral device by downloading information from a host and electronically simulating a physical disconnection and reconnection to reconfigure the device
US10169282B2 (en) Bus serialization for devices without multi-device support
US6559783B1 (en) Programmable auto-converting analog to digital conversion module
US20080270654A1 (en) Bus System for Selectively Controlling a Plurality of Identical Slave Circuits Connected to the Bus and Method Therefore
US20090210606A1 (en) Pci-express system
JP2016095629A (en) Serial communication system, communication control device, and electronic device
CN209914114U (en) LED driver circuit and corresponding electronic device
US9471330B2 (en) System and method and for selecting boot configuration using near field communication
US9252777B2 (en) Method and apparatus for multiplexing pins of an integrated circuit
TW201510736A (en) Single wire programming and debugging interface
US5629635A (en) Address programming via LED pin
CN112486899A (en) Integrated circuit, bus system and scheduling method
CN115129510A (en) Processing system, related integrated circuit, apparatus and method
TWI745150B (en) Esl driver circuit, method of multiple esl display, and esl driver device
EP4099566A1 (en) Integrated circuit, and control method and system
US11652483B2 (en) Method providing multiple functions to pins of a chip and system applying the method
TWI792840B (en) Usb chip and operation method thereof
CN108984440B (en) Method for reducing power consumption of integrated circuit and control circuit thereof
CN113300924A (en) Control system and control method for access device
TW202319881A (en) Power supply management device and power supply management method

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
GR01 Patent grant
GR01 Patent grant