24c系列芯片存储容量的识别方法

文档序号:6332419阅读:10383来源:国知局
专利名称:24c系列芯片存储容量的识别方法
技术领域
本发明涉及一种芯片的识别方法,尤其是涉及24C系列芯片存储容量的识别方法。
背景技术
24C系列芯片被广泛应用在小容量存储的领域,如应用墨盒芯片或碳粉盒芯片中。 24C系列芯片包括有24C01、24C02、24C04、24C08...24C1024等型号,其中“24C”表示芯片的 系列型号,后面的数字为2的若干次方,不同型号的芯片存储容量不同。例如,24C01型号 的芯片存储容量地址线为7根,其存储地址所表示的范围是从OOH到7FH,也就是二进制数 的0000000到1111111,存储容量为128字节。24C02型号的芯片存储容量地址线为8根, 其存储地址所表示的范围从OOH到FFH,也就是二进制数的00000000到11111111,存储容 量为256字节。24C04型号的芯片存储容量地址线为9根,其存储地址所表示的范围从OOH 到1FFH,即二进制数的000000000到111111111,存储容量为512字节。以此类推,24C512 型号的芯片存储地址线为16根,其存储容量为512K字节,24C1024型号的芯片存储地址线 为17根,其存储容量为1024K字节。可见,24C系列芯片中,随着型号数字的递增,存储容量的地址线也递增,其存储容 量也随之递增。并且,相邻两型号的芯片中,后一型号的芯片比前一型号的芯片存储容量地 址线增加一根,存储容量也是前一型号芯片存储容量的两倍。由于24C系列芯片内部不存储用于识别芯片型号的ID码,因此现有识别24C系列 芯片型号及存储容量的方法有以下两种一种是通过肉眼直接观察芯片印丝,即芯片存储 容量地址线的数量,这种方法工作效率低下,且准确性不高;另一种方法是通过仪器将芯片 中所存储的数据读出,由技术人员根据所读出的数据分析芯片的存储容量,这种方法需要 仪器不断读取芯片的数据,且要求技术人员对每一芯片的数据进行分析从而判断芯片的型 号及存储容量。上述两种方法均需要对每一芯片进行人工操作及分析,工作效率不高。同时,24C系列芯片每一字节均有自己对应的存储地址,且当24C系列芯片接收到 大于其存储容量的地址时,其并不会因地址超出内部存储地址而发出提示信息,而是将超 出存储地址部分的去掉,直接访问有效地址对应的字节。例如,主机向24C01型号芯片发送访问存储地址为80H,即二进制数10000000的字 节的命令,由于24C01型号芯片的最大存储地址为7ra,其地址线仅为7根,因此24C01型号 芯片将超出7位的地址数据去掉,即将最高位的“1”去掉,将低七位作为有效的访问地址, 此时24C01型号芯片将访问存储地址为OOH的字节。此外,24C系列芯片中型号为24C04及24C08的芯片对A3命令有响应,且只有型号 为24C08的芯片对A4及A8命令有响应,应用上述命令可识别芯片的型号。

发明内容
本发明的主要目的是提供一种方便准确的24C系列芯片存储容量识别方法。
本发明的另一目的是提供一种识别效率高的24C系列芯片存储容量识别方法。为实现上述的主要目的,本发明提供的24C系列芯片存储容量识别方法包括步骤 一选取24C系列芯片内存储地址小于7 的任一字节,将该字节的存储地址记为第一地 址;步骤二向第一地址对应的字节写入第一数据,在第一地址的最高位前增加一位有效 二进制数并记为第二地址,读取第二地址的对应字节所存储的第二数据,判断第二数据与 第一数据是否相等,若相等,则根据第一地址的有效位数确定芯片的存储容量,否则执行步 骤三;步骤三选取芯片内存储地址有效位数与第二地址有效位数相等的任一字节,将该 字节的存储地址记为新的第一地址,返回执行步骤二。由上述方案可见,读写24C系列芯片内的数据后,可通过判断第一数据与第二数 据是否相等来确定24C系列芯片的存储地址数据线有多少根,从而判断24C系列芯片的具 体型号,进而计算出该芯片的存储容量。并且,对24C系列芯片识别过程中,不需要人工参 与,大大提高识别的效率。一个优选的方案是,步骤二中,写入第一数据前,将第一地址对应字节的数据保存 至一寄存器中。这样,能确保第一地址对应字节的原始数据得以保存,以便后续使用。进一步的方案是,步骤一中,选取第一地址前,对芯片的存储器执行清零操作;且 步骤二中,所写入的第一数据为非零数据。这样,可确保写入的第一数据与第一地址对应字 节所存储的原始数据不相同,确保检测的准确性。实现本发明的方法还可以是包括步骤一选取24C系列芯片内存储地址小于7 的任一字节,将该字节的存储地址记为第一地址;步骤二向第一地址对应的字节写入第 一数据,在第一地址的最高位前增加一位有效二进制数并记为第二地址,读取第二地址 的对应字节所存储的第二数据,判断第二数据与第一数据是否相等,若相等,判断芯片为 24C01型芯片,并确定芯片的存储容量,否则执行步骤三;步骤三向芯片发送A3命令,判断 芯片是否有返回信息,若没有,执行步骤四;若有,进一步向芯片发送A4命令,并再次判断 芯片是否有返回信息,若有,判断芯片为24C08型芯片,若没有,判断芯片为24C04型芯片; 步骤四选取芯片内存储地址为400H至4FH1之间的任一字节,将该字节的存储地址记为第 三地址;步骤五向第三地址对应的字节写入第三数据,在第三地址的最高位前增加一位 有效二进制数并记为第四地址,读取第四地址的对应字节所存储的第四数据,判断第四数 据与第三数据是否相等,若相等,则根据第三地址的有效位数确定芯片的存储容量,否则执 行步骤六;步骤六选取芯片内存储地址有效位数与第四地址有效位数相等的任一字节, 将字节的存储地址记为新的第三地址,返回执行步骤五。由此可见,使用A3、A4命令来识别24C04或24C08型芯片,可简化程序的复杂性, 有利于程序开发。进一步的方案是,步骤三中,向芯片发送A4命令并接收到返回信号后,向芯片发 送A8命令,判断是否接收到返回信息,若接收到返回信息,确认芯片为24C08型芯片,否则 判断芯片出错。由此可见,通过发送A8命令,能进一步确认芯片的型号为24C08,可进一步提高识 别的准确性。同时,还可以检测出芯片是否出错。本发明还可以应用另一方法实现,该方法包括步骤一选取24C系列芯片内存储 地址小于7F的任一字节,将该字节的存储地址记为第一地址;步骤二 向第一地址对应的字节写入第一数据,在第一地址的最高位前增加一位有效二进制数并记为第二地址,向第 二地址的对应字节写入与第一数据不同的第二数据,读取第一地址对应字节所存储的数据 并保存至一寄存器中,判断第一数据与寄存器所存储数据是否相等,若不相等,则根据第一 地址的有效位数确定芯片的存储容量,否则执行步骤三;步骤三选取芯片内存储地址有 效位数与第二地址有效位数相等的任一字节,将字节的存储地址记为新的第一地址,返回 执行步骤二。由上述方案可见,通过向第一地址及第二地址的字节分别写入不相同的第一数据 及第二数据,再次读取第一地址的数据与第一数据比较时,可通过两个数据是否相同来判 断芯片是否存在第二地址的字节,从而可判断芯片的型号,进而计算出芯片的存储容量。本发明的方法也可以是包括步骤一选取24C系列芯片内存储地址小于7F的任 一字节,将该字节的存储地址记为第一地址;步骤二向第一地址对应的字节写入第一数 据,在第一地址的最高位前增加一位有效二进制数并记为第二地址,向第二地址的对应字 节写入与第一数据不同的第二数据,读取第一地址对应字节所存储的数据并保存至一寄存 器中,判断第一数据与所述寄存器所存储数据是否相等,若不相等,判断芯片为24C01型芯 片,并确定芯片的存储容量,否则执行步骤三;步骤三向芯片发送A3命令,判断芯片是否 有返回信息,若没有,执行步骤四;若有,进一步向芯片发送A4命令,并再次判断芯片是否 有返回信息,若有,判断芯片为24C08型芯片,若没有,判断芯片为24C04型芯片;步骤四 选取芯片内存储地址为400H至4FH1之间的任一字节,将该字节的存储地址记为第三地址; 步骤五向第三地址对应的字节写入第三数据,在第三地址的最高位前增加一位有效二进 制数并记为第四地址,向第四地址的对应字节写入与第三数据不同的第四数据,读取第三 地址对应字节所存储的数据并保存至寄存器中,判断第三数据与所述寄存器所存储数据是 否相等,若不相等,则根据第三地址的有效位数确定芯片的存储容量,否则,执行步骤六;步 骤六选取芯片内存储地址有效位数与第四地址有效位数相等的任一字节,将该字节的存 储地址记为新的第三地址,返回执行步骤五。由上述方案可见,通过使用A3命令以及A4命令来判断芯片是否为24C04或24C08 型芯片,可降低判断程序的复杂性,并且提供判断的准确性。


图1是本发明第一实施例的流程图。图2a是本发明第二实施例的流程图第一部分。图2b是本发明第二实施例的流程图第二部分。以下结合附图及实施例对本发明作进一步说明。
具体实施例方式第一实施例。本实施例是向检测装置写入一识别程序,通过检测装置对芯片进行读写操作来实 现对芯片的识别。本实施例的检测装置对芯片的识别流程如图1所示。首先,检测装置执行步骤Si, 向被测芯片发出读命令。由于任一型号的24C系列芯片均能识别Al命令,因此该读命令为Al命令。然后,检测装置执行步骤S2,判断是否接收到芯片的返回信息,即判断芯片是否对 Al命令作出响应,若有响应,表示有芯片存在,执行步骤S3,否则识别流程结束。步骤S3中,检测装置选取一个第一地址,初始选取的第一地址应该是任一型号的 24C系列芯片均能识别的地址,因此应在OOH与7 之间选取。例如,本实施例中选取OOH 作为第一地址。选取第一地址后,向第一地址对应的字节写入第一数据,即执行步骤S4。当 然,为了保存第一地址对应字节原始的数据,写入第一数据前,应该将OOH字节的原始数据 保存到寄存器中,待识别流程结束后,将原始数据写回OOH字节。然后,检测装置执行步骤S5,在第一地址的基础上计算第二地址。第二地址是在 第一地址的基础上增加一位最高位,即在第一地址的最高位前增加“ 1”,使第二地址的有效 位数较第一地址的有效位数多一位。本发明所述的有效位数是该地址实际使用的地址线根 数,例如OOH至7Π1的有效位数是7位,80H至FFH的有效位数是8位,100H至IFFH的有效 位数是9位等,以此类推。根据上述原则,步骤S5所计算的第二地址为80H。接着,检测装置执行步骤S6,读取第二地址对应字节,即80H字节所存储的第二数 据,并执行步骤S7,判断所读取的第二数据是否与第一数据相同。若第一数据与第二数据相 同,表示所访问的第二地址实为第一地址,即本实施例中的OOH字节,此时则执行步骤S8, 根据第一地址的有效位数,即7位确定芯片的型号,并以此确定芯片的存储容量。根据上述的分析,可判断地址线为7位的是24C01型芯片,其存储容量为128字 节。若第一数据与第二数据不相等,表示芯片存在80H的字节,可以排除该芯片为 24C01型芯片,因此执行步骤S9,重新确定第一地址并返回执行步骤S4。重新确定的第一地 址应是有效位数与原第二地址有效位数相等的地址,为了方便计算,可将原第二地址作为 新的第一地址使用,即新的第一地址为80H,具有8位有效位数。随后,再次执行步骤S4,直 至确定芯片的型号为止。当然,为了确保识别的准确性,在选取第一地址前,应该对芯片的存储器进行清零 操作,即对芯片的所有字节写入的数据均为“0”。然后,对第一地址的字节写入的第一数据 为非零数据,这样可有效区分读取第二地址对应字节的第二数据是否不同于第一数据。由上述方案可见,检测装置通过上述流程,能方便快捷地识别24C系列芯片的型 号及其存储容量,无需工人通过肉眼观察印丝数量或者读取芯片的数据进行分析,不但可 以提高识别的工作效率,还可以提高检测的准确性。第二实施例。本实施例也是通过写有检测程序的检测装置对芯片进行读写操作来实现对芯片 的识别,检测装置的识别流程如图2a及图2b所示。首先,检测装置执行步骤S11,发送读命令,即Al命令,并执行步骤S12,判断是否 接收到返回信息,若接收到返回信息,表示有芯片存在,执行步骤S13,否则结束识别流程。步骤S13中,检测装置选取第一地址,如00H,并向OOH字节写入第一数据。接着,检测装置执行步骤S14,计算第二地址,第二地址的计算方法与第一实施例 的第二地址计算方法相同,因此计算出80H作为第二地址,并向80H字节写入不同于第一数 据的第二数据,然后执行步骤S15,读取OOH字节的数据,并将所读取的数据保存至一个寄 存器中。
7
随后,执行步骤S16,判断第一数据与寄存器所存储的数据是否相等,若不相等,表 示芯片不存在存储地址为80H的字节。因为若芯片存在存储地址为80H的字节,向80H字 节写入第二数据后,OOH字节所存储的数据仍为第一数据。只有芯片不存在存储地址为80H 的字节情况下,芯片将第二数据写入OOH字节,则寄存器所存储的为第二数据,与第一数据 不相同。此时,可执行步骤S17,确定芯片的型号为24C01,其存储容量为128字节。若第一数据与寄存器所存储数据相等,表示芯片不是24C01型芯片,则执行步骤 S18,向芯片发送A3命令,并执行步骤S19,判断是否接收到返回信号,即判断芯片是否响 应。由前述分析可知,只有24C04型芯片及24C08型芯片对A3命令有响应,若检测装置接 收到返回信号,表示该芯片为24C04型芯片或24C08型芯片,则执行步骤S20,向芯片发送 A4命令,并执行步骤S21,判断是否接收到返回信息,若接收到返回信息,表示该芯片能识 别A4命令,执行步骤S23,否者表示芯片不能识别A4命令,则执行步骤S22,判断该芯片为 24C04型芯片,确定其存储容量为512字节。步骤S23中,检测装置进一步发送A8命令,并执行步骤S24,判断是否接收到返回 信号,若接收到返回信号,可确定该芯片为24C08型芯片,其存储容量为1024字节。若没有 接收到返回信号,判断芯片出错,可发出警告信息,并结束识别流程。在步骤S19中,若检测装置没有接收到返回信号,表示该芯片不是24C04及24C08 型芯片,进一步执行步骤S26,选取第三地址。此时选取的第三地址应该是24C16型芯片能 够识别,且24C08型芯片不能识别的地址,即在400H至4FFH之间选取。例如,选取400H作 为第三地址。然后,执行步骤S27,向第三地址对应字节,即400H字节写入第三数据,并执行步 骤S28,计算第四地址。第四地址的计算原则与方法与第二地址的计算原则及方法相同,因 此第四地址为800H。同时,向第四地址对应的字节写入第四数据,第四数据与第三数据不相 同。接着,执行步骤S29,读取第三地址对应字节,即400H的字节所存储的数据,并将 所读取的数据保存至寄存器中。随后,执行步骤S30,判断第三数据是否与寄存器所存储的 数据相等,若不相等,表示芯片不存在400H地址的字节,则执行步骤S31,根据第三地址的 有效位数判断芯片的型号并识别芯片的存储容量。在首次执行步骤S31时,可确定芯片的 型号不是24C01、24C04、24C08或者24C16以上型号,因此可以确定芯片的型号为24C02,其 存储容量为256字节。若第三数据与寄存器所存储的数据相同,表示芯片不是24C02型芯片,执行步骤 S32,计算新的第三地址。新的第三地址计算方法与第一实施例中计算新的第一地址的方法 相同,所计算新的第三地址应该与第四地址具有相同的有效位数。优选地,使用第四地址, 即800H作为新的第三地址。同时,返回执行步骤S27,直至识别芯片的型号及存储容量为止。当然,在选取第一地址前,可以对芯片进行清零操作,并且写入的第一数据、第二 数据、第三数据及第四数据均为非零数据。由此可见,使用上述方法可让检测装置自动识别24C系列芯片的型号,从而识别 芯片的存储容量,识别过程无需人工操作,提高识别工作效率的同时,也提高识别的准确率。
实际应用时,第一实施例也可以是应用A3、A4及A8命令来识别24C04或2408型 芯片,也就是增加对A3、A4及A8命令识别的步骤。而第二实施例中,也可以是不使用A3、 A4及A8命令来识别24C04或2408型芯片,而是不断循环选取第一地址、计算第二地址来确 定芯片的型号及存储容量。此外,识别24C08型芯片时,也可以不使用A8命令,当芯片能够 识别A4命令时,可以判断该芯片的型号为24C08。当然,上述实施例仅是本发明较佳的实施方案,实际应用时还可以有更多的变化, 例如,第一实施例中,新选取的第一地址不是使用原第二地址,而是在可选范围内选取其他 地址;或者,在第一实施例中使用A3命令或A4命令识别24C04及24C08型芯片;又或者,在 选取第一地址前,不向芯片发送读信息命令,直接对芯片进行读写操作等,这些改变同样可 以实现本发明的目的。最后需要强调的时,诸如选取第一地址的改变、第二实施例中新的第三地址选取 的改变等变化也包含在本发明权利要求的保护范围内。
权利要求
24C系列芯片存储容量的识别方法,包括步骤一选取24C系列芯片内存储地址小于7FH的任一字节,将所述字节的存储地址记为第一地址;步骤二向所述第一地址对应的字节写入第一数据,在所述第一地址的最高位前增加一位有效二进制数并记为第二地址,读取所述第二地址的对应字节所存储的第二数据,判断所述第二数据与所述第一数据是否相等,若相等,则根据所述第一地址的有效位数确定所述芯片的存储容量,否则执行步骤三;步骤三选取所述芯片内存储地址有效位数与所述第二地址有效位数相等的任一字节,将所述字节的存储地址记为新的第一地址,返回执行步骤二。
2.根据权利要求1所述的24C系列芯片存储容量识别方法,其特征在于 所述步骤三中,所述新的第一地址为所述步骤二中使用的第二地址。
3.根据权利要求1或2所述的24C系列芯片存储容量识别方法,其特征在于所述步骤二中,写入所述第一数据前,将所述第一地址对应字节的数据保存至一寄存 器中。
4.根据权利要求1或2所述的24C系列芯片存储容量识别方法,其特征在于 所述步骤一中,选取所述第一地址前,对所述芯片的存储器执行清零操作; 所述步骤二中,所写入的第一数据为非零数据。
5.24C系列芯片存储容量的识别方法,包括步骤一选取24C系列芯片内存储地址小于7FH的任一字节,将所述字节的存储地址记 为第一地址;步骤二 向所述第一地址对应的字节写入第一数据,在所述第一地址的最高位前增加 一位有效二进制数并记为第二地址,读取所述第二地址的对应字节所存储的第二数据,判 断所述第二数据与所述第一数据是否相等,若相等,判断所述芯片为24C01型芯片,并确定 所述芯片的存储容量,否则执行步骤三;步骤三向所述芯片发送A3命令,判断所述芯片是否有返回信息,若没有,执行步骤 四;若有,进一步向所述芯片发送A4命令,并再次判断所述芯片是否有返回信息,若有,判 断所述芯片为24C08型芯片,若没有,判断所述芯片为24C04型芯片;步骤四选取所述芯片内存储地址为400H至4FH1之间的任一字节,将所述字节的存储 地址记为第三地址;步骤五向所述第三地址对应的字节写入第三数据,在所述第三地址的最高位前增加 一位有效二进制数并记为第四地址,读取所述第四地址的对应字节所存储的第四数据,判 断所述第四数据与所述第三数据是否相等,若相等,则根据所述第三地址的有效位数确定 所述芯片的存储容量,否则执行步骤六;步骤六选取所述芯片内存储地址有效位数与所述第四地址有效位数相等的任一字 节,将所述字节的存储地址记为新的第三地址,返回执行步骤五。
6.根据权利要求5所述的24C系列芯片存储容量识别方法,其特征在于所述步骤三中,向所述芯片发送A4命令并接收到返回信号后,向所述芯片发送A8命 令,判断是否接收到返回信息,若接收到返回信息,确认所述芯片为24C08型芯片,否则判 断所述芯片出错。
7.24C系列芯片存储容量的识别方法,包括步骤一选取24C系列芯片内存储地址小于7F的任一字节,将所述字节的存储地址记 为第一地址;步骤二 向所述第一地址对应的字节写入第一数据,在所述第一地址的最高位前增加 一位有效二进制数并记为第二地址,向所述第二地址的对应字节写入与第一数据不同的第 二数据,读取第一地址对应字节所存储的数据并保存至一寄存器中,判断所述第一数据与 所述寄存器所存储数据是否相等,若不相等,则根据所述第一地址的有效位数确定所述芯 片的存储容量,否则执行步骤三;步骤三选取所述芯片内存储地址有效位数与所述第二地址有效位数相等的任一字 节,将所述字节的存储地址记为新的第一地址,返回执行步骤二。
8.根据权利要求7所述的24C系列芯片存储容量识别方法,其特征在于所述步骤一中,选取所述第一地址前,向所述芯片发送读信息命令,判断是否接收到返 回的信息,如有选取所述第一地址,否则判断没有被测芯片存在。
9.24C系列芯片存储容量的识别方法,包括步骤一选取24C系列芯片内存储地址小于7F的任一字节,将所述字节的存储地址记 为第一地址;步骤二 向所述第一地址对应的字节写入第一数据,在所述第一地址的最高位前增加 一位有效二进制数并记为第二地址,向所述第二地址的对应字节写入与第一数据不同的第 二数据,读取第一地址对应字节所存储的数据并保存至一寄存器中,判断所述第一数据与 所述寄存器所存储数据是否相等,若不相等,判断所述芯片为24C01型芯片,并确定所述芯 片的存储容量,否则执行步骤三;步骤三向所述芯片发送A3命令,判断所述芯片是否有返回信息,若没有,执行步骤 四;若有,进一步向所述芯片发送A4命令,并再次判断所述芯片是否有返回信息,若有,判 断所述芯片为24C08型芯片,若没有,判断所述芯片为24C04型芯片;步骤四选取所述芯片内存储地址为400H至4FH1之间的任一字节,将所述字节的存储 地址记为第三地址;步骤五向所述第三地址对应的字节写入第三数据,在所述第三地址的最高位前增加 一位有效二进制数并记为第四地址,向所述第四地址的对应字节写入与第三数据不同的第 四数据,读取第三地址对应字节所存储的数据并保存至所述寄存器中,判断所述第三数据 与所述寄存器所存储数据是否相等,若不相等,则根据所述第三地址的有效位数确定所述 芯片的存储容量,否则,执行步骤六;步骤六选取所述芯片内存储地址有效位数与所述第四地址有效位数相等的任一字 节,将所述字节的存储地址记为新的第三地址,返回执行步骤五。
10.根据权利要求9所述的24C系列芯片存储容量识别方法,其特征在于所述步骤三中,向所述芯片发送A4命令并接收到返回信号后,向所述芯片发送A8命 令,判断是否接收到返回信息,若接收到返回信息,确认所述芯片为24C08型芯片,否则判 断所述芯片出错。
全文摘要
本发明提供一种24C系列芯片存储容量的识别方法,包括步骤一选取24C系列芯片内存储地址小于7FH的任一字节,将该字节的存储地址记为第一地址;步骤二向第一地址对应的字节写入第一数据,在第一地址的最高位前增加一位有效二进制数并记为第二地址,读取第二地址的对应字节所存储的第二数据,判断第二数据与第一数据是否相等,若相等,则根据第一地址的有效位数确定芯片的存储容量,否则执行步骤三;步骤三选取芯片内存储地址有效位数与第二地址有效位数相等的任一字节,将该字节的存储地址记为新的第一地址,返回执行步骤二。本发明提供的方法可方便、快速地识别24C系列芯片的型号及其存储容量,提高识别的工作效率及准确性。
文档编号G06K17/00GK101950368SQ201010287900
公开日2011年1月19日 申请日期2010年9月20日 优先权日2010年9月20日
发明者袁珍平 申请人:珠海天威技术开发有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1