CN106104508B - 用于利用时钟设置模块的地址的方法及装置 - Google Patents

用于利用时钟设置模块的地址的方法及装置 Download PDF

Info

Publication number
CN106104508B
CN106104508B CN201580011838.3A CN201580011838A CN106104508B CN 106104508 B CN106104508 B CN 106104508B CN 201580011838 A CN201580011838 A CN 201580011838A CN 106104508 B CN106104508 B CN 106104508B
Authority
CN
China
Prior art keywords
module
address
clock
voltage
interconnecting piece
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
CN201580011838.3A
Other languages
English (en)
Other versions
CN106104508A (zh
Inventor
詹姆斯·罗纳德·布斯
亚当·J·阿赫内
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.)
Lexmark International Inc
Original Assignee
Lexmark International Inc
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
Priority claimed from US14/517,394 external-priority patent/US9223741B1/en
Application filed by Lexmark International Inc filed Critical Lexmark International Inc
Publication of CN106104508A publication Critical patent/CN106104508A/zh
Application granted granted Critical
Publication of CN106104508B publication Critical patent/CN106104508B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/4282Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus
    • G06F13/4291Bus transfer protocol, e.g. handshake; Synchronisation on a serial bus, e.g. I2C bus, SPI bus using a clocked protocol
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0016Inter-integrated circuit (I2C)
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/0052Assignment of addresses or identifiers to the modules of a bus system

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Accessory Devices And Overall Control Thereof (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Power Sources (AREA)

Abstract

操作模块的方法被公开。该方法包括确定I2C时钟连接部和接地连接部之间的电压,基于所确定的电压设置模块通信地址,经由I2C时钟连接部和I2C数据连接部接收寻址到模块通信地址的第一命令,并且对第一命令进行响应。其他方法和设备被公开。

Description

用于利用时钟设置模块的地址的方法及装置
相关申请的交叉引用
本申请是于2014年10月17日提交的题为“SYSTEMS FOR SETTING THE ADDRESS OFA MODULE”的美国专利申请第14/517394号的部分继续申请。
技术领域
本公开通常涉及通信总线上的从设备,并且更具体地涉及I2C总线上的从模块。
背景
I2C(也称为I2C)是设备间的通信标准。I2C总线具有一个主设备和一个或多个从设备。每个从设备具有唯一的通信地址以便主设备能够直接与特定的从设备通信。
打印机具有如墨粉瓶的用户可替换的供应项。由于不同操作程序可应用,这些供应项可具有认证电路以区别原始设备制造的墨粉瓶和第三方的墨粉瓶。认证电路可实施密码算法来增加对认证的信任。单一色彩打印机(如单色打印机)可具有关于墨粉瓶的认证电路和关于成像单元的另一个认证电路。包含认证电路的这些模块可以是几乎完全相同的,唯一的区别是包含模块地址的非易失性存储器变量。在制造期间,必须花费额外的费用来跟踪这两个相似但非完全相同的模块,并且如果模块混淆,则系统将不能正确操作。所需的是使用关于多个供应项的完全相同的模块的方法。
概述
根据本公开的实施方式包括以下内容:
1)本发明在其一种形式中针对操作具有电源连接部、接地连接部、I2C时钟连接部和I2C数据连接部的模块的方法。该方法包括确定I2C时钟连接部和接地连接部之间的电压,基于所确定的电压设置模块通信地址,经由I2C时钟连接部和I2C数据连接部接收寻址到模块通信地址的第一命令,并且对第一命令进行响应。
2)根据项目1)所述的方法,还包括经由所述I2C时钟连接部和所述I2C数据连接部接收寻址到不同于所述模块通信地址的地址的第二命令,以及不对所述第二命令进行响应。
3)根据项目1)所述的方法,还包括检测所述第一命令的I2C启动条件,其中,当所述I2C启动条件被检测到时,所述确定被触发。
4)根据项目1)所述的方法,其中,所述设置基于相对于所述电源连接部和所述接地连接部之间的电压的、所述I2C时钟连接部和所述接地连接部之间所测的电压。
5)一种认证模块,其配置为执行根据项目1)所述的方法。
6)一种认证模块,其配置为执行根据项目2)所述的方法。
7)一种认证模块,其配置为执行根据项目3)所述的方法。
8)一种认证模块,其配置为执行根据项目4)所述的方法。
9)本发明在其另一种形式中针对具有电源输入端引脚、I2C时钟引脚和I2C数据引脚的认证电路。认证电路具有从设备I2C地址,并且配置为基于当I2C时钟引脚大于1V而I2C数据引脚从大于1V转换到小于1V时的I2C时钟引脚上的电压将从设备I2C地址设置为第一地址和第二地址中的一个。
10)根据项目9)所述的认证电路,其中,所述认证电路配置为测量相对于所述电源输入端引脚上的电压的、所述I2C时钟引脚上的电压。
11)根据项目9)所述的认证电路,其中,所述认证电路配置为基于所述从设备I2C地址对第一命令和第二命令中的一个进行响应。
12)本发明在其又另一种形式中针对专用集成电路,该专用集成电路具有电源引脚、接地引脚、I2C时钟引脚、I2C数据引脚、串行通信模块和模数转换器,串行通信模块具有地址寄存器,其具有包括最低有效位的多个位,串行通信模块耦合到电源引脚、接地引脚、I2C时钟引脚和I2C数据引脚,以及模数转换器具有输入端和第一输出端,输入端耦合到I2C时钟引脚,第一输出端耦合到地址寄存器的最低有效位。
13)根据项目12)所述的ASIC,其中,所述模数转换器具有第二输出端,所述第二输出端耦合到所述地址寄存器的不是所述最低有效位的位。
14)根据项目12)所述的ASIC,其中,所述模数转换器具有触发器输入端,并且所述ASIC具有I2C启动条件检测器,所述I2C启动条件检测器具有耦合到所述触发器输入端的输出端。
15)根据项目12)所述的ASIC,其中,所述地址寄存器具有锁存器输入端,并且所述ASIC具有I2C启动条件检测器,所述I2C启动条件检测器具有耦合到所述锁存器输入端的输出端。
16)根据项目12)所述的ASIC,其中,所述模数转换器具有耦合到所述电源引脚的参考输入端。
附图说明
并入说明书中并形成说明书的一部分的附图说明了本公开的若干方面,并与描述一起用于解释本公开的原理。
图1是对根据本公开的一个实施例的打印机模块网络的示意图的描绘。
图2是根据本公开的一个实施例的认证模块的示意图。
图3是对根据本公开的一个实施例的打印机模块网络的示意图的描绘。
图4是I2C启动条件图。
图5是对根据本公开的一个实施例的认证模块的示意图的描绘。
图6、图7和图8描绘本公开的实施例的方法的流程图。
图9和图10是对根据本公开的实施例的专用集成电路的示意图的描绘。
具体实施方式
在以下描述中,对附图进行了参考,其中相似数字表示相似元件。足够详细地描述了实施例,以使本领域的技术人员能够实践本公开。应该理解的是,可利用其它实施例,且可以做出过程的、电气的和机械的变化等,而不脱离本公开的范围。示例仅仅代表可能的变形。一些实施例的部分和特性可被包含到其他实施例,或被取代用于其他实施例。因此,以下描述并非旨在限制性的意义,以及本公开的范围仅由所附权利要求及其等同物定义。
现在参考附图,更具体地参考图1,其中示出了对根据本公开的一个实施例的电路的示意图的描绘。打印机模块网络100具有系统专用集成电路(ASIC)102,其经由I2C总线耦合到第一模块104和第二模块106。I2C总线具有由系统ASIC102驱动的时钟线108和由系统ASIC102、第一模块104和第二模块106双向驱动的数据线110。时钟线和数据线是串行通信连接。
系统ASIC102位于系统印刷电路板(PCB)103上。第一模块104位于用户可替换的组件(例如,如所示的墨粉瓶105)上。第一模块104包括PCB。电源连接部112、接地连接部114、时钟连接部116和数据连接部118例如是位于第一模块PCB上的导电焊盘。配合使用的金属手指触摸导电焊盘,形成系统PCB和第一模块104之间的电气连接。可选地,电源连接部112、接地连接部114、时钟连接部116和数据连接部118可利用其他可重复使用的连接(如插座中的插针连接器(pin-in-socket connector))做成。第二模块106具有类似的连接且例如位于如所示的成像单元119上。
系统ASIC102是I2C主设备,第一模块104和第二模块106是I2C从设备。如在本领域中已知的,按照I2C数据格式的串行通信包含具有从I2C地址的报头。每个从设备只会响应于寻址到其通信地址(例如I2C地址)的通信。因此,为防止冲突,I2C总线上的每个从设备具有唯一的通信地址。在I2C数据格式中,数据包在数据头之后。数据包在长度上可以是一个或多个字节。数据包可包含首字节(其是命令)以及零个或多个跟随的字节,其是与命令相关的数据(如,例如,存储器地址和写入该存储器地址的值)。一些命令可具有零个跟随的字节,如,例如重启命令。从设备可通过将一个或多个字节串行地写到I2C数据线上来响应于命令。I2C数据线是漏极开路线,即主设备可将其下拉到逻辑低电平且从设备可将其下拉到逻辑低电平,否则,上拉电阻113会将其上拉到逻辑高电平。上拉电阻113连接到系统ASIC电源电压111,在本示例实施例中电源电压是3.0V。系统ASIC102通过由系统ASIC电源电压111供电的推挽输出驱动电路驱动时钟线108。优选地,第一模块104和第二模块106从比系统ASIC电源电压111大的电压给其I2C输入缓冲器供电以避免接通位于I2C输入缓冲器中的ESD保护二极管。
第一模块104和第二模块106是完全相同的。第一模块104的通信地址是不固定的。反而,其由耦合到电源连接部112的第一电源电压120控制。第一电源电压120例如是4V,且第一模块104的通信地址例如是二进制0000010。如随后将描述的,第一模块104的通信地址由位于第一模块104内的电路设置。类似地,第二电源电压124耦合到第二模块106的电源连接部126。第二电源电压124例如是5V,且第二模块106的通信地址例如是二进制0000011。
注意,例如,如果第二模块106由第一电源电压120而不是由第二电源电压124供电,那么由于两个模块都从相同的电压供电,所以第二模块106就具有和第一模块104相同的通信地址。
注意,所公开的系统具有在相同的I2C总线上但是在不同的地址处的两个完全相同的模块,并且该功能被提供而无需添加额外的连接。这允许完全相同的模块被填充到多个系统组件中,这简化制造且降低成本。注意,其他通信系统可代替I2C被使用。例如,通用串行总线(USB)系统也有具有唯一的通信地址的从设备。模块通信地址不限于两个可能的地址中的一个地址。例如,四个可能的地址对四色打印机的墨粉瓶会是有利的。
图2示出第一模块104的细节。第一模块104是认证模块,其包含实施认证过程的认证电路202。示例认证过程涉及“挑战”协议,其中数据集被提供给两个“认证引擎”,第一个在认证电路202中,以及第二个在系统ASIC102中。在认证期间,认证电路202和系统ASIC102两者都利用认证电路202或系统ASIC102没有揭示的“秘密值”“播种”数据集。典型地,认证电路202和系统ASIC102计算“播种的数据”的单向散列值。然后,认证电路202使单向散列值对系统ASIC102可用,其将(由认证电路202计算的)散列值与由系统ASIC102计算的散列值进行比较。如果散列值匹配,则墨粉瓶105被授权使用。其他认证过程可由认证电路202实施。认证电路202和第一模块104可被配置为执行以下详细说明的方法中的一个或多个方法。这样的配置可以是在认证电路202中嵌入的由在认证电路202中嵌入的微控制器、在认证电路202中嵌入的硬件状态机等执行的固件。
电源连接部112耦合到电压调节器204,其产生工作电压206以给认证电路202供电。电压调节器204将工作电压206调节到预定值,例如3.3V。
当然,如果认证电路202被设计成在大范围的工作电压上工作,那么如果例如认证电路202包含集成的电压调节器,则电压调节器204可被忽略。在该示例中,电压调节器是线性调节器,因此工作电压206至少比电源连接部112上的DC电压低两百毫伏。可选地,电压调节器204可以是串联电阻器和接地的齐纳二极管。
电源连接部112耦合到由电阻器208和电阻器210组成的电阻分压器。电阻器208和电阻器210例如可以是1K欧姆,每一个电阻器提供1/2的电压衰减。电阻分压器的输出端耦合到认证电路202的地址_ADC输入端212。在认证电路202内,该输入端连接到模数转换器(ADC),如,例如比较器、逐次逼近ADC,等等。ADC的输出是用于设置认证电路202的串行通信地址的一个或多个二进制位。例如,如果Vin小于4.5V,那么通信地址可以设置为二进制0000010,否则,通信地址可设置为二进制0000011。当然,可使用其他预定的电压。例如,认证电路可被配置为如果Vin是3.3V,将其I2C地址设置为0000010,以及如果Vin是5V,将其I2C地址设置为0000011。
ADC可使用工作电压源206作为参考电压。可选地,认证电路202可为ADC产生专用的参考电压。地址_ADC输入端212是容纳认证电路的IC封装的外部引脚,即地址输入节点是认证电路的外部引脚。可选地,电阻分压器可以被集成到IC封装中并且地址_ADC输入端可以是内部节点。在该示例中,最低有效位(LSB)取决于耦合到模块电源连接部的电压。其他位独立于耦合到模块电源连接部的电压。这些独立位中的一个或多个可被存储在位于模块内的非易失性存储器中。以这种方式,模块的基址可被改变以避免与相同I2C总线上的其他设备(如,例如非认证模块)的冲突。在该示例中,地址输入节点通过电阻分压器耦合到电源连接部。可选地,可使用不同的电压衰减器,如,例如配置为衰减的运算放大器。
电源连接部112上的电压还可控制由第一模块104识别的命令集。例如,认证电路202可配置为当地址_ADC输入端212上的电压(Vain)是2V时答复寻址到其I2C地址的第一命令,以及当Vain是3V时,不答复第一命令。类似地,认证电路可配置为当Vain是3V时,答复第二命令,以及当Vain是2V时,不答复第二命令。该行为可对多个Vain持续,例如,认证电路可配置为当Vain是2.5V时,答复寻址到其I2C地址的第三命令,以及当Vain是2V或3V时,不答复第三命令。这可通过将Vain和预定的阈值进行比较来实施以对Vain的电压范围进行分段。例如,认证电路202可配置为只在Vain大于2.75V时响应第二命令。第一命令、第二命令和第三命令是彼此不同的。以这种方式,例如附属于墨粉瓶的认证模块的操作行为可不同于附属于上色辊的认证模块的操作行为,即使认证模块是完全相同的。如前所讨论的,这还提高生产效率。另外,在该示例中,地址_ADC输入端212执行两个功能:设置I2C地址以及控制由认证电路202识别的命令集。这是有利的,因为其减少认证电路202的引脚数,因此可减少其成本。
图3示出对根据本公开的另一个实施例的电路的示意图的描绘。打印机模块网络300具有系统ASIC302,其经由I2C总线耦合到第三模块304和第四模块306。I2C总线具有由系统ASIC302驱动的时钟线308和由系统ASIC302、第三模块304和第四模块306双向驱动的数据线310。时钟线和数据线是串行通信连接。系统ASIC302利用由系统PCB303电源336供电的推挽输出驱动电路驱动时钟线308。数据线具有连接到电源336的上拉电阻313。
系统ASIC302位于系统PCB303上。第三模块304位于用户可替换的组件(例如,如所示的墨粉瓶305)上。第三模块304包括PCB。电源连接部312、接地连接部314、时钟连接部316和数据连接部318例如是位于第一模块PCB上的导电焊盘。配合使用的金属手指触摸导电焊盘,形成系统PCB303和第一模块104之间的电气连接。可选地,电源连接部312、接地连接部314、时钟连接部316和数据连接部318可利用其他可重复使用的连接(如插座中的插针连接器(pin-in-socket connector))做成。第四模块306具有类似的连接且位于例如如所示的成像单元319上。系统ASIC302与前面所述的系统ASIC102完全相同。
第三模块304和第四模块306是完全相同的。第三模块304的通信地址是不固定的。反而,其由时钟线308的逻辑高电压(LHV)控制。时钟线308的LHV由系统ASIC303驱动且例如是3.3V。时钟线308直接耦合到第三模块304的时钟连接部316。因此,在该示例中,时钟连接部316的LHV是3.3V,且第三模块304的通信地址例如是二进制0000101。如随后将描述的,第三模块304的通信地址由位于第三模块304内的电路设置。对于第四模块306,时钟线308经过由电阻器330和电阻器332组成的电阻分压器。电阻分压器的输出端耦合到第四模块306的时钟连接部334。因此,时钟连接部334的LHV小于时钟连接部316的LHV。在该示例中,电阻器330是1k欧姆,电阻器332是5k欧姆,因此,时钟连接部334的LHV是2.75V。第四模块306的通信地址由时钟连接部334的LHV控制且例如是二进制0000100。
如图3所示,因为模块的逻辑高电压可通过增加两个便宜的电阻器来个性化,所以优选调整I2C时钟逻辑高电压而不是逻辑低电压。个性化模块的逻辑低电压更复杂且可能是更昂贵的实现。
当I2C总线闲置(即传输之间)时,第三模块304可设置其通信地址。可选地,如图4所示,第三模块304可以在I2C启动条件采样时钟连接部116。如在本领域中已知的,当I2C数据线404从逻辑高电压(例如3.3V)过渡到逻辑低电平(例如0V)而I2C时钟线406在逻辑高电压处时,I2C启动条件402出现。因此,当I2C启动条件被检测到时,由于根据I2C启动条件的定义,时钟连接部116会在LHV,所以第三模块304可触发设置其通信地址。由于确定何时I2C总线是闲置的逻辑可能实现起来复杂,所以在启动条件处的触发优于当I2C总线闲置时的触发。
图5示出第三模块304的细节。第三模块304是认证模块,其包含实施认证过程的认证电路502。认证电路502和第三模块304可被配置为执行以下详细说明的方法中的一个或多个方法。认证电路502具有Vcc引脚501,其直接耦合到电源连接部312。
时钟连接部316直接耦合到认证电路502的时钟输入端504。时钟输入端504例如可以是具有Vcc引脚501的60%的输入高电压(VIH)和Vcc引脚501的40%的输入低电压(VIL)的数字输入端。因此,在该示例中,只要时钟连接部316的LHV大于Vcc引脚501的60%,时钟输入端504就在逻辑高电平状态。因此,时钟输入端504的VIH设置时钟连接部316的最小LHV,其对通信地址个性化可用。当然,可使用在本领域中已知的其他数字输入配置。例如,时钟输入端504可具有1.1V的VIH和0.9V的VIL。数据输入端可具有和时钟输入端相同的VIH和VIL。
时钟连接部316还直接耦合到认证电路502的地址_ADC输入端506。在认证电路502内,该输入端连接到模数转换器(ADC),如,例如比较器、逐次逼近ADC,等等。ADC的输出是用于设置认证电路202的串行通信地址的一个或多个二进制位。例如,如果时钟连接部316的LHV小于Vcc引脚501的90%,那么通信地址可以设置为二进制0000100,否则,通信地址可设置为二进制0000101。在该示例中,ADC使用Vcc引脚501作为参考电压,且时钟输入端316的LHV的测量是相对于电源连接部312的,即,第三模块304进行“相对测量”。可选地,第三模块304可产生用于ADC的专用的参考电压,且时钟输入端316的LHV的测量不相对于电源连接部312,即,第三模块304进行“绝对测量”。这里,因为相对测量避免由于第三模块304的参考电压和给驱动时钟线308为高电平和低电平的系统ASIC302供电的系统PCB303电源336之间的不同引起的误差,所以优选使用相对测量。可选地,地址_ADC输入端可在内部连接到时钟输入端504。
图6示出根据一个实施例操作认证模块的方法的示例实施例。方法600基于模块电源连接部和接地连接部之间的电压设置模块通信地址。这使完全相同的模块能够以不同的地址耦合相同的通信总线。模块具有电源连接部、接地连接部和串行通信连接(例如I2C、USB,等等)。如果串行通信连接是I2C,那么串行通信会按照本领域中已知的I2C数据格式进行格式化。
在块602处,模块通信地址被初始化为默认值。这可以例如在上电序列期间被执行。
在块604处,方法确定电源连接部和接地连接部之间的电压是否超过预定的阈值。如果确定是这样,在块606处,模块通信地址被设置为第一地址。预定的阈值可以例如是4.5V的电压。
在块608处,串行通信经由串行通信连接被接收。在块610处,方法确定串行通信是否被寻址到模块通信地址。如果确定是这样,在块612处,串行通信经由串行通信连接被响应,否则,在块614处,串行通信不被响应。方法循环到604且重复。
图7示出根据一个实施例操作认证模块的方法的示例实施例。模块具有电源连接部、接地连接部、I2C时钟连接部和I2C数据连接部。
在块702处,从电源连接部产生工作电压源。工作电压可例如由线性调节器产生,因此工作电压206低于电源连接部上的DC电压至少两百毫伏。工作电压可被调节到预定值例如3.3V、到预定容差比如5%、在工作电流范围上比如0mA到10mA。在块704处,认证电路由工作电压源供电。
在块706处,模块通信地址基于电源连接部上的DC电压的大小进行设置。在块708处,第一命令经由I2C时钟连接部和I2C数据连接部被接收。第一命令被寻址到模块通信地址。在块710处,第一命令被响应。
图8示出根据一个实施例操作模块的方法的示例实施例。模块具有接地连接部、I2C时钟连接部和I2C数据连接部。
在块802处,检测到第一命令的I2C启动条件。这触发块804以确定I2C时钟连接部和接地连接部之间的电压,并且触发块805以基于所确定的电压设置模块通信地址。该设置可基于相对于电源连接部和接地连接部之间所测的电压的、I2C时钟连接部和接地连接部之间所测的电压。优选地,块802、块804和块805在每个I2C启动条件处发生,所以模块通信地址可动态地改变。
在块806处,寻址到模块通信地址的第一命令经由I2C时钟连接部和I2C数据连接部被接收。在块808处,方法对第一命令进行响应。在块810处,寻址到不同于模块通信地址的地址的第二命令经由I2C时钟连接部和I2C数据连接部被接收。在块812处,方法不对第二命令进行响应。
方法的动作可以不同于给定的示例的顺序被执行。
图9示出对根据本公开的另一个实施例的电路的示意图的描绘。ASIC900具有电源引脚902、I2C时钟引脚904、I2C数据引脚906和接地引脚908。在ASIC内部的电路耦合到电源引脚904和接地引脚908。ASIC具有串行通信模块910,其作为I2C从设备实现I2C通信协议。串行通信模块910具有地址寄存器912,其保持I2C从设备地址。地址寄存器912包括七位,其包括最高有效位914(MSB)和最低有效位916(LSB)。第6位-第2位由非易失性存储器918设置。
第1位和第0位(LSB916)由模数转换器920(ADC)的输出设置。当然,更少或更多的地址寄存器位可由ADC920设置。ADC920是逐次逼近ADC。可选地,ADC920可以是具有不同比较阈值或如本领域中已知的另一种类型的ADC的一组比较器。ADC920具有参考输入端,其连接到电源引脚902。因此,ADC的测量将相对于电源引脚902上的电压。ADC的输入端连接到I2C时钟引脚904。ADC的触发器输入端连接到I2C启动条件检测器922的输出端。如本领域中已知的那样构造I2C启动条件检测器922。例如,其可包含高到低转换检测器,其具有输入端和输出端,输入端连接到I2C数据引脚906,输出端连接到与门,与门的另一个输入端连接到I2C时钟引脚904,并且与门的输出端连接到I2C启动条件检测器922的输出端。I2C启动条件检测器922可配置为检测当I2C数据引脚906从大于1V转变到小于1V时I2C时钟引脚904何时大于1V。在该电路配置中,ADC会基于在I2C启动条件处的I2C时钟引脚904上的电压设置地址寄存器的LSB。ADC转换速度比I2C报头的传输时间快,以便地址寄存器912在I2C主设备完成发送传输地址前是稳定的。ADC可包含偏移,使得当输入电压例如等于或小于参考电压的70%时,具有所有位等于零的输出发生。ASIC900例如可在图3所示的模块304和模块306中被使用。ASIC900可包含认证模块,其配置为执行认证过程。
优选基于I2C时钟电压设置地址寄存器912的最低有效位,以便ASIC的可能地址(至少由I2C时钟电压设置的可能地址)在I2C地址空间是连续的。比起如果I2C时钟电压被用于设置地址寄存器的最高有效位,这使用户更容易检查在相同的I2C总线上设备间的冲突。
图10示出对根据本公开的另一个实施例的电路的原理图的描述。ASIC1000具有类似于ASIC900的设计,并且类似的参考标识表示类似的组件。地址寄存器1012具有由ADC设置的LSB1016,在该示例中ADC是比较器1030。比较器1030的正输入端连接到时钟引脚1004。比较器1030的负输入端连接到由电源引脚1002驱动的由电阻器1032和电阻器1034组成的电阻分压器。电阻器1032例如可以是1k欧姆,并且电阻器1034可以是10k欧姆。地址寄存器1012具有锁存器输入端1036,其连接到I2C启动条件检测器1022的输出端。在I2C传输期间,当时钟引脚1004转变时,锁存器使地址寄存器1012保持稳定。ASIC1000例如可在图3所示的模块304和模块306中被使用。ASIC1000可包含认证模块,其配置为执行认证过程。
前述说明示出本公开的各方面和示例。其不旨在穷举。而是,其被选择以示出本公开及其实际应用的原理,以使得本领域的技术人员能够利用本公开,包含由此而自然得到对本公开的各种修改。所有的修改和变化被认为落入在如由所附权利要求确定的本公开的范围之内。相对明显的修改包含将各种实施例的一个或多个特性与其他实施例的特性结合。

Claims (16)

1.一种操作模块的方法,所述模块具有电源连接部、接地连接部、非易失性存储器、I2C时钟连接部和I2C数据连接部,所述方法包括:
确定所述I2C时钟连接部和所述接地连接部之间的电压;
基于所确定的电压的大小设置模块通信地址;
经由所述I2C时钟连接部和所述I2C数据连接部接收寻址到所述模块通信地址的第一命令;以及
对所述第一命令进行响应,
其中,所述设置模块通信地址基于所述非易失性存储器设置所述模块通信地址的最高有效位。
2.根据权利要求1所述的方法,还包括经由所述I2C时钟连接部和所述I2C数据连接部接收寻址到不同于所述模块通信地址的地址的第二命令,以及不对所述第二命令进行响应。
3.根据权利要求1所述的方法,还包括检测所述第一命令的I2C启动条件,其中,当所述I2C启动条件被检测到时,所述确定被触发。
4.根据权利要求1所述的方法,其中,所述设置基于相对于所述电源连接部和所述接地连接部之间的电压的、所述I2C时钟连接部和所述接地连接部之间所测的电压。
5.一种认证模块,其配置为执行根据权利要求1所述的方法。
6.一种认证模块,其配置为执行根据权利要求2所述的方法。
7.一种认证模块,其配置为执行根据权利要求3所述的方法。
8.一种认证模块,其配置为执行根据权利要求4所述的方法。
9.一种认证电路,包括:
电源输入端引脚;
I2C时钟引脚;以及
I2C数据引脚,
其中,所述认证电路具有从设备I2C地址,并且配置为基于当所述I2C时钟引脚上的电压大于1V而所述I2C数据引脚上的电压从大于1V转换到小于1V时所述I2C时钟引脚上的电压将所述从设备I2C地址设置为第一地址和第二地址中的一个。
10.根据权利要求9所述的认证电路,其中,所述认证电路配置为测量相对于所述电源输入端引脚上的电压的、所述I2C时钟引脚上的电压。
11.根据权利要求9所述的认证电路,其中,所述认证电路配置为基于所述从设备I2C地址对第一命令和第二命令中的一个进行响应。
12.一种专用集成电路ASIC,包括:
电源引脚;
接地引脚;
I2C时钟引脚;
I2C数据引脚;
串行通信模块,其具有地址寄存器,所述地址寄存器具有包括最低有效位的多个位,所述串行通信模块耦合到所述电源引脚、所述接地引脚、所述I2C时钟引脚和所述I2C数据引脚;以及
模数转换器,其具有输入端和第一输出端,所述输入端耦合到所述I2C时钟引脚,所述第一输出端耦合到所述地址寄存器的所述最低有效位;
其中,所述ASIC具有非易失性存储器,并且所述地址寄存器具有耦合到所述非易失性存储器的最高有效位。
13.根据权利要求12所述的ASIC,其中,所述模数转换器具有第二输出端,所述第二输出端耦合到所述地址寄存器的不是所述最低有效位的位。
14.根据权利要求12所述的ASIC,其中,所述模数转换器具有触发器输入端,并且所述ASIC具有I2C启动条件检测器,所述I2C启动条件检测器具有耦合到所述触发器输入端的输出端。
15.根据权利要求12所述的ASIC,其中,所述地址寄存器具有锁存器输入端,并且所述ASIC具有I2C启动条件检测器,所述I2C启动条件检测器具有耦合到所述锁存器输入端的输出端。
16.根据权利要求12所述的ASIC,其中,所述模数转换器具有耦合到所述电源引脚的参考输入端。
CN201580011838.3A 2014-10-17 2015-10-16 用于利用时钟设置模块的地址的方法及装置 Active CN106104508B (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US14/517,394 US9223741B1 (en) 2014-10-17 2014-10-17 Systems for setting the address of a module
US14/517,394 2014-10-17
US14/703,376 2015-05-04
US14/703,376 US9213396B1 (en) 2014-10-17 2015-05-04 Methods and apparatus for setting the address of a module using a clock
PCT/US2015/055979 WO2016061480A2 (en) 2014-10-17 2015-10-16 Methods and apparatus for setting the address of a module using a clock

Publications (2)

Publication Number Publication Date
CN106104508A CN106104508A (zh) 2016-11-09
CN106104508B true CN106104508B (zh) 2019-07-09

Family

ID=55747559

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580011838.3A Active CN106104508B (zh) 2014-10-17 2015-10-16 用于利用时钟设置模块的地址的方法及装置

Country Status (7)

Country Link
US (1) US9213396B1 (zh)
EP (1) EP3092575B1 (zh)
CN (1) CN106104508B (zh)
AU (1) AU2015331864A1 (zh)
CA (1) CA2938892A1 (zh)
PL (1) PL3092575T3 (zh)
WO (1) WO2016061480A2 (zh)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9970986B2 (en) * 2014-03-11 2018-05-15 Cryptography Research, Inc. Integrated circuit authentication
US10067895B2 (en) * 2015-06-03 2018-09-04 Lexmark International, Inc. Systems and methods for asynchronous toggling of I2C data line
US9805257B1 (en) * 2016-09-07 2017-10-31 Datamax-O'neil Corporation Printer method and apparatus
ES2716739T3 (es) * 2016-10-27 2019-06-14 Hewlett Packard Development Co Autenticación de elemento reemplazable
CN106657908B (zh) * 2016-12-16 2019-07-16 浙江大华技术股份有限公司 一种数字总线异常的视频信号处理方法及装置
WO2020117196A1 (en) 2018-12-03 2020-06-11 Hewlett-Packard Development Company, L.P. Logic circuitry
US20210046760A1 (en) 2018-12-03 2021-02-18 Hewlett-Packard Development Company, L.P. Logic circuitry
BR112021010760A2 (pt) 2018-12-03 2021-08-31 Hewlett-Packard Development Company, L.P. Circuitos lógicos
BR112021010672A2 (pt) * 2018-12-03 2021-08-24 Hewlett-Packard Development Company, L.P. Circuitos lógicos
AU2018451721B2 (en) 2018-12-03 2023-05-18 Hewlett-Packard Development Company, L.P. Logic circuitry
US10958100B2 (en) * 2018-12-03 2021-03-23 Astec International Limited Switched mode power supplies with configurable communication addresses
CA3121183A1 (en) 2018-12-03 2020-06-11 Hewlett-Packard Development Company, L.P. Logic circuitry
WO2021080607A1 (en) * 2019-10-25 2021-04-29 Hewlett-Packard Development Company, L.P. Logic circuitry package
CN113168442B (zh) 2018-12-03 2023-12-22 惠普发展公司,有限责任合伙企业 逻辑电路系统
US11338586B2 (en) 2018-12-03 2022-05-24 Hewlett-Packard Development Company, L.P. Logic circuitry
US20210216491A1 (en) * 2018-12-03 2021-07-15 Hewlett-Packard Development Company, L.P. Logic Circuitry
US20210221122A1 (en) 2018-12-03 2021-07-22 Hewlett-Packard Development Company, L.P. Logic circuitry package
US10894423B2 (en) * 2018-12-03 2021-01-19 Hewlett-Packard Development Company, L.P. Logic circuitry
WO2020117393A1 (en) * 2018-12-03 2020-06-11 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
EP3829883B1 (en) * 2019-10-25 2023-03-08 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
WO2022125768A1 (en) 2020-12-11 2022-06-16 Skyworks Solutions, Inc. Enumeration of peripheral devices on a serial communication bus

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7827330B2 (en) * 2007-07-27 2010-11-02 Microchip Technology Incorporated Configuring multi-bit slave addressing on a serial bus using a single external connection
CN101227264B (zh) * 2007-01-21 2011-05-18 珠海天威技术开发有限公司 通讯装置、同步串行通讯系统及方法
CN102339267A (zh) * 2010-06-04 2012-02-01 英特赛尔美国股份有限公司 I2c地址转换

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE58908747D1 (de) 1988-07-27 1995-01-19 Peter Vockenhuber Adressieranordnung.
US5210846B1 (en) 1989-05-15 1999-06-29 Dallas Semiconductor One-wire bus architecture
US5270972A (en) 1992-04-14 1993-12-14 Xicor, Inc. Three terminal serial-communicating peripheral device
US5831546A (en) 1996-05-10 1998-11-03 General Signal Corporation Automatic addressing in life safety system
US6255973B1 (en) 1999-08-26 2001-07-03 Analog Devices, Inc. Address selection circuitry and method using single analog input line
TWI268423B (en) * 2004-12-03 2006-12-11 Hon Hai Prec Ind Co Ltd System and method for configuring I2C address dynamically
TWI255404B (en) * 2004-12-03 2006-05-21 Hon Hai Prec Ind Co Ltd System and method for dynamically allocating addresses to devices connected to an integrated circuit bus
FR2885710B1 (fr) 2005-05-11 2007-08-03 Stmicroelectronics Maroc Selection d'adresse pour bus i2c
US8521970B2 (en) * 2006-04-19 2013-08-27 Lexmark International, Inc. Addressing, command protocol, and electrical interface for non-volatile memories utilized in recording usage counts
US20060291406A1 (en) * 2005-06-23 2006-12-28 Lexmark International, Inc. Device authentication method and system
US20070079125A1 (en) * 2005-09-27 2007-04-05 Lexmark International, Inc. Interface protocol method and system
JP3128349U (ja) * 2006-10-23 2007-01-11 船井電機株式会社 テレビジョン受信機
US7536492B2 (en) * 2007-01-23 2009-05-19 International Business Machines Corporation Apparatus, system, and method for automatically resetting an inter-integrated circuit bus
PL2927815T3 (pl) 2008-05-21 2017-11-30 Hewlett-Packard Development Company, L.P. Wielopunktowa szyna szeregowa z wykrywaniem położenia i sposób wykrywania położenia
JP2010212989A (ja) * 2009-03-10 2010-09-24 Freescale Semiconductor Inc アドレスデコーダ及びアドレス設定方法
CN102200953A (zh) * 2010-03-24 2011-09-28 鸿富锦精密工业(深圳)有限公司 电子系统
US8667204B2 (en) * 2011-01-24 2014-03-04 Rpx Corporation Method to differentiate identical devices on a two-wire interface
JP5928107B2 (ja) * 2012-04-06 2016-06-01 セイコーエプソン株式会社 センサーシステム、センサーモジュール

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101227264B (zh) * 2007-01-21 2011-05-18 珠海天威技术开发有限公司 通讯装置、同步串行通讯系统及方法
US7827330B2 (en) * 2007-07-27 2010-11-02 Microchip Technology Incorporated Configuring multi-bit slave addressing on a serial bus using a single external connection
CN102339267A (zh) * 2010-06-04 2012-02-01 英特赛尔美国股份有限公司 I2c地址转换

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
SOC多通道超声信号采集与处理集成系统的研究;郁丽;《中国优秀硕士学位论文全文数据库信息科技辑(月刊)》;20110415(第4期);全文

Also Published As

Publication number Publication date
CA2938892A1 (en) 2016-04-21
AU2015331864A1 (en) 2016-08-25
PL3092575T3 (pl) 2020-12-28
US9213396B1 (en) 2015-12-15
CN106104508A (zh) 2016-11-09
EP3092575B1 (en) 2020-06-17
WO2016061480A3 (en) 2016-06-09
EP3092575A2 (en) 2016-11-16
WO2016061480A2 (en) 2016-04-21

Similar Documents

Publication Publication Date Title
CN106104508B (zh) 用于利用时钟设置模块的地址的方法及装置
US9298908B1 (en) Methods and apparatus for setting the address of a module using a voltage
US8296565B2 (en) Communication protocol for device authentication
US7239251B2 (en) Multi-bit digital input using a single pin
US8301888B2 (en) System and method for generating secured authentication image files for use in device authentication
CN102339267A (zh) I2c地址转换
CN106205662A (zh) 半导体存储装置、阻抗校准电路及其方法
US20090177819A1 (en) Integrated circuit cards including multiple communication interfaces and related methods of operation
US20070136497A1 (en) System and method of communicating with portable devices
US9817448B2 (en) Hot swap system and electronic device utilizing the same
CN114064545B (zh) 串口功能识别方法、装置、主控芯片、家电设备及介质
TW202247630A (zh) 多協定usb適應性充電
US11163347B2 (en) Digital communication system and a method of transferring power and data between circuits of the system
ES2811328T3 (es) Aparato para establecer la dirección de un módulo utilizando un reloj
CN106506714B (zh) Usb转以太网网卡的配置方法、网络设备
CN107957969B (zh) 判定设备连接状态及设备类型的方法
US11093421B2 (en) Operation device
CN216466987U (zh) 打印耗材芯片和打印耗材
KR102662356B1 (ko) 프로토콜 변환 장치
CN109004943B (zh) 一种用于在发射机设备中重建共模的方法及系统
US20150254023A1 (en) Method for storing and retrieving hardware system data
CN117118427A (zh) 一种韦根接口双向复用电路及其控制方法
Islam et al. Design and Developing of a Microcontroller Based Home Appliance Control System Using Wi-Fi

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant