CN105812392A - 一种应用于电池监控芯片的级联spi通信系统及通信方法 - Google Patents

一种应用于电池监控芯片的级联spi通信系统及通信方法 Download PDF

Info

Publication number
CN105812392A
CN105812392A CN201610329670.7A CN201610329670A CN105812392A CN 105812392 A CN105812392 A CN 105812392A CN 201610329670 A CN201610329670 A CN 201610329670A CN 105812392 A CN105812392 A CN 105812392A
Authority
CN
China
Prior art keywords
chip
register
data
sub
level chip
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201610329670.7A
Other languages
English (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.)
XI'AN AEROSEMI TECHNOLOGY Co
Original Assignee
XI'AN AEROSEMI TECHNOLOGY Co
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 XI'AN AEROSEMI TECHNOLOGY Co filed Critical XI'AN AEROSEMI TECHNOLOGY Co
Priority to CN201610329670.7A priority Critical patent/CN105812392A/zh
Publication of CN105812392A publication Critical patent/CN105812392A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/02Protocol performance
    • 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/4247Bus transfer protocol, e.g. handshake; Synchronisation on a daisy chain 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/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Communication Control (AREA)

Abstract

本发明提供一种应用于电池监控芯片的级联通信系统及通信方法,利用传统SPI通信协议的特点,发明一种可以由一个主机与多个子芯片的通信的系统架构,从而实现一点对多点的管理,确保整个系统高效的工作,可以实现单个主机芯片与多个子芯片进行通信,主机可以将指令和数据广播式的发送给子芯片,子芯片将数据串行的传回主机芯片,实现主机芯片对子芯片的管理和控制。

Description

一种应用于电池监控芯片的级联SPI通信系统及通信方法
技术领域
本发明涉及通信领域,特别涉及一种多颗电池监控子级芯片间级联,电池主控芯片与想连接的电池监控子级芯片以SPI通信协议通信的通信系统及通信方法。
背景技术
近年来电动汽车和混合动力汽车迅猛发展,作为电动汽车的动力电池组,锂电池通常是通过几十节甚至上百节的单体电池串联起来使用,最高电池电压可以达到数百伏的高压,以满足电动汽车的动力需求。对于电池电压监控芯片而言,目前的技术可以达到一颗芯片最多可以监控十几节锂电池组成的串联电池组,如果同时监控近百节串联锂电池,则需要多颗芯片同时工作,并且采用级联的方式进行连接,已达到对串联电池组的分布式监控,每颗芯片监控电池组中的一部分电池。由于每颗芯片都需要与低压工作的主控芯片芯片进行通信,才能够实时监控电池的信息,所以子级芯片与主控芯片芯片之间的通信隔离是必不可少的。随着高性能隔离器数目的增加,系统研发的成本也会增加,并且系统的分立器件也会增多,带来不必要的开销。
发明内容
为克服上述现有技术存在的缺陷,本发明提供一种应用于电池监控芯片的级联SPI通信系统,利用传统SPI通信协议的特点,发明一种可以由一颗主控芯片与多颗子级芯片的通信的系统架构,从而实现一点对多点的管理,可以实现单颗主控芯片芯片与多颗子级芯片进行通信,主控芯片将信息传给子级芯片是将指令和数据广播式的发送给子级芯片,底侧子级芯片将信息传给主控芯片是直接将信息传给主控芯片,高侧子级芯片将数据信息传给主控芯片是高侧子级芯片通过与它相连的高侧子级芯片将数据信息一级一级传给底侧子级芯片,最后由底侧子级芯片传回主控芯片。这种级联SPI通信系统实现了主控芯片对子级芯片的管理和控制,不需要隔离器和分立器件,确保整个系统高效的工作,并引入循环冗余(CRC)的校验,保证了主控芯片和子级芯片通信的可靠性。
这种级联SPI通信系统是多颗子级芯片之间采用菊链式级联的结构进行连接,有且仅有工作在底侧的底侧子级芯片与主控芯片连接。通信时,底侧子级芯片和主控芯片直接进行通信,其它芯片采用串行级联的通信方式,通过底侧子级芯片与主控芯片进行通信。另外,级联SPI通信系统采用引入循环冗余(CRC)校验的SPI总线协议,该总线协议由指令、数据和校验组成,提高了通信时抗干扰能力,避免外在的干扰对芯片进行误操作。
本发明具有以下技术效果:
(1)这种级联SPI通信系统,通过多颗子级芯片之间采用菊链式级联的结构进行连接,工作在底侧的子级芯片与主控芯片连接,通信系统采用引入循环冗余(CRC)校验的SPI总线协议实现一主控芯片对多颗子级芯片数据的有效管控;
(2)实现了工作在不同电压域的子级芯片之间的通信,有效的节省了主控芯片对多颗子级芯片的通信系统在隔离部分、分立器件的开销,降低了成本,减小了体积;
(3)这种级联SPI通信系统加入循环冗余(CRC)的校验后,如果通信过程中数据传输有误,主控芯片和子级芯片都可以得知数据传输有误,方便后续处理。
为实现上述目的,本发明提供如下技术方案:
本发明公开了一种应用于电池监控芯片的级联SPI通信系统,其特征在于:包括主控芯片和子级芯片,主控芯片仅和一颗子级芯片相连以SPI通信协议通信,子级芯片之间通过菊花链的级联方式连接。
优选的,所述的仅和主控芯片直接相连的子级芯片是底侧子级芯片,其它子级芯片是高侧子级芯片,子级芯片的数量为1-8。
优选的,所述的一个子级芯片监控1-12节电池。
优选的,所述底侧子级芯片的上传输入的接口信号与主控芯片的MOSI信号线相连,所述底侧子级芯片的下传输出的接口信号与主控芯片的MISO信号线相连,所述的子级芯片之间通过上传输入端口、上传输出端口、下传输入端口、下传输出端口实现子级芯片间的互联和数据包通信,所述的数据包包括指令、数据、循环冗余校验码。
优选的,所述的子级芯片包括通信协议处理模块、寄存器群、多路选择器(M1)、多路选择器(M2),所述的子级芯片上传输入端口与通信协议处理模块串联连接,所述的子级芯片上传输入端口与多路选择器(M1)串联连接,多路选择器(M1)、寄存器群串联连接并且与通信协议处理模块并联连接于多路选择器(M2),多路选择器(M2)和上传输出端口相连接,寄存器群和下传输出端口相连接。
优选的,所述的寄存器群包括读写寄存器、只读寄存器、多路选通器(P1)、多路选通器(P2)、芯片内部写入模块。
优选的,所述的通信协议处理模块控制所述的多路选通器(P1)、多路选通器(P2)导通时将主控芯片的数据包写入所述的读写寄存器以及主控芯片读取所述的只读寄存器数据包,所述的读写寄存器是芯片配置寄存器。
优选的,所述的通信协议处理模块控制所述的多路选通器(P1)、多路选通器(P2)导通时读取所述的只读寄存器数据包,所述的只读寄存器由所述的芯片内部写入模块写入数据,只读寄存器包括芯片电压寄存器、芯片标志寄存器、芯片诊断寄存器和温度寄存器,芯片内部写入模块将采集到的电池电压和温度的数据写入到电池电压寄存器、温度寄存器,将芯片内部逻辑计算数据写入到芯片标志寄存器和芯片诊断寄存器。
优选的,所述的寄存器组由8个存储单元组成,每个存储单元由二选一选择器(S1)、二选一选择器(S2)、数据位寄存器(CLK1)、串行链路位寄存器(CLK2)组成,二选一选择器(S1)和所述的数据位寄存器连接,所述的数据位寄存器(CLK1)通过二选一选择器和所述的串行链路位寄存器(CLK2)连接,所述8个数据位寄存器(CLK1)组成数据寄存器,所述8个串行链路位寄存器(CLK2)组成串行链路寄存器。
本发明还公开了一种通信方法,采用应用于电池监控芯片的级联SPI通信系统,其特征在于:所述的通信方法包括主控芯片向子级芯片写入数据方法和主控芯片对子级芯片的数据包读取方法;
(一)所述主控芯片对子级芯片的数据写入方法包括以下步骤:
(A)主控芯片向子级芯片发送写数据的指令及其循环冗余校验码;
(B)子级芯片通信协议处理模块中移入了主控芯片发送的写指令;
(C)循环冗余校验码正确,子级芯片通信协议处理模块确认写数据指令;
(D)主控芯片向子级芯片发送要写入的数据;
(E)数据写入子级芯片的寄存器群,完成子级芯片数据的写入,所述的数据写入子级芯片的寄存器群是数据写入子级芯片的读写寄存器的寄存器组,包括以下步骤:
<1>通信协议处理模块先控制二选一选择器(S2)将OUT与B相通,在串行链路位寄存器(CLK2)时钟驱动下,将所述的数据按位由存储单元(Din1)的串行链路寄存器依次串行输入到存储单元(Din8)的串行链路寄存器;
<2>通信协议处理模块再控制二选一选择器(S1)将OUT与A相通,此时在数据位寄存器(CLK1)时钟驱动下,将串行链路寄存器并行加载到数据寄存器中;
<3>数据储存在数据寄存器中,寄存器组写入数据完成;
(二)所述的主控芯片对子级芯片的数据读取方法包括以下步骤:
(a)所述的主控芯片向所述的子级芯片发送读数据指令及其循环冗余校验码;
(b)所述的子级芯片里移入了所述的主控芯片发送的读指令;
(c)循环冗余校验码正确,子级芯片通信协议处理模块确认写数据指令;
(d)主控芯片向子级芯片发送要读取的数据包;
(e)高侧子级芯片将高侧子级芯片寄存器群的数据包一级级传输给与自己相连的子级芯片,最后数据均传输到底侧子级芯片,由底侧子级芯片将高侧子级芯片数据经过MISO信号线传输给主控芯片;
(f)底侧子级芯片将底侧子级芯片寄存器群的数据包经过MISO信号线传输给主控芯片;
所述的子级芯片将子级芯片寄存器群的数据包传输是从子级芯片的读写寄存器的寄存器组读取数据包以及从子级芯片只读寄存器的寄存器组读取数据包,所述的从子级芯片的读写寄存器读取数据包包括以下步骤:
①通信协议处理模块控制多路选通器(P1)与芯片配置寄存器相通;
②通信协议处理模块控制芯片配置寄存器的寄存器组的二选一选择器(S2)将OUT与A相通,此时在数据位寄存器(CLK1)时钟驱动下,将数据包从数据寄存器并行加载到串行链路寄存器中;
③然后通信协议处理模块控制二选一选择器(S2)将OUT与B相通,在串行链路位寄存器(CLK2)时钟驱动下,将数据包从寄存器组的串行链路寄存器低位串行输出到高位;
④通信协议处理模块控制芯片配置寄存器和多路选通器(P2)相通,数据包从多路选通器(P2)输出,完成芯片配置寄存器的读取;
所述的向子级芯片的只读寄存器的寄存器组读取数据包,包括以下步骤:
(i)芯片内部写入模块将采集到的电池电压和温度的数据包转化为数字数据包写入到电池电压寄存器、温度寄存器,将内部逻辑运算数据包写入到芯片标志寄存器和芯片诊断寄存器时,通信协议处理模块控制二选一选择器(S1)将OUT与B相通;
(ii)芯片内部写入模块数据并行写入电池电压寄存器和温度寄存器,将内部逻辑运算数据并行写入芯片标志寄存器和芯片诊断寄存器;
(III)通信协议处理模块控制多路选通器(P1)与芯片只读寄存器相通;
(IV)通信协议处理模块控制只读寄存器的寄存器组的二选一选择器(S2)将OUT与A相通,此时在数据位寄存器(CLK1)时钟驱动下,将数据包从数据寄存器并行加载到串行链路寄存器中;
(v)然后通信协议处理模块控制二选一选择器(S2)将OUT与B相通,在串行链路位寄存器(CLK2)时钟驱动下,将数据包从寄存器组的串行链路寄存器低位串行输出到高位;
(vi)通信协议处理模块控制只读寄存器和多路选通器(P2)相通,数据包从多路选通器(P2)输出,完成只读寄存器的读取。
其中,电池监控芯片除了应用于监控锂电池,也可应用于其它需要监控的电池。
附图说明
图1是子级芯片的结构示意图;
图2是子级芯片寄存器群的结构示意图;
图3主控芯片和底侧子级芯片SPI通信的系统结构;
图4是2颗子级芯片级联的系统结构;
图5是主控芯片和8颗子级芯片级联SPI通信的系统结构;
图6是子级芯片寄存器组的结构示意图;
图7是子级芯片读写寄存器的寄存器组数据通信结构示意图;
图8是子级芯片只读寄存器组的寄存器组数据通信结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和技术效果更加清楚,下面将结合本发明的实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述。
实施例一
一种应用于电池监控芯片的SPI通信系统,包括主控芯片和底侧子级芯片,主控芯片和底侧子级芯片连接。
底侧子级芯片监控1-12节电池。
底侧子级芯片结构如图1所示,底侧子级芯片包括上传输入端口、下传输入端口、通信协议处理模块、寄存器群、多路选择器(M1)、多路选择器(M2)、上传输出端口、下传输出端口。
子级芯片上传输入端口、下传输入端口与多路选择器(M1)串联连接,上传输入端口与通信协议处理模块串联连接,多路选择器(M1)与寄存器群串联连接并且与通信协议处理模块并联连接于多路选择器(M2),寄存器群和下传输出端口相连接,多路选择器和上传输出端口相连接。
本发明中的底侧子级芯片的寄存器群结构如图2所示,包括读写寄存器、只读寄存器、多路选通器、芯片内部写入模块。
多路选通器(P1)串联连接读写寄存器、只读寄存器,芯片内部写入模块串联只读寄存器,读写寄存器和只读寄存器并联连接于多路选通器(P2)。
通信协议处理模块控制多路选通器(P1)、多路选通器(P2)导通时将主控芯片的数据包写入读写寄存器以及主控芯片读取只读寄存器数据包,读写寄存器是芯片配置寄存器。
通信协议处理模块控制多路选通器(P1)、多路选通器(P2)导通时读取只读寄存器数据包,只读寄存器由芯片内部写入模块写入数据,只读寄存器包括芯片电压寄存器、芯片标志寄存器、芯片诊断寄存器和温度寄存器,芯片内部写入模块将采集到的电池电压和温度的数据写入到电池电压寄存器、温度寄存器,将芯片内部逻辑计算数据写入到芯片标志寄存器和芯片诊断寄存器。
芯片配置寄存器由6组寄存器组CFGR0、CFGR1、CFGR2、CFGR3、CFGR4、CFGR5组成
芯片标志寄存器由3组寄存器组FLGR0、FLGR1、FLGR2组成。
芯片诊断寄存器由2组寄存器组DGNR0、DGNR1组成。
温度寄存器由5组寄存器组TMPR0、TMPR1、TMPR2、TMPR3、TMPR4。
电池电压寄存器由18组寄存器组CVR00、CVR01、CVR02、CVR03、CVR04、CVR05、CVR06、CVR07、CVR08、CVR09、CVR10、CVR11、CVR12、CVR13、CVR14、CVR15、CVR16、CVR17。
一个主控芯片和一个底侧子级芯片SPI通信的系统结构如图3所示,主控芯片的MOSI信号线与底侧子级芯片的上传输入端口相连,底侧子级芯片的下传输出端口和主控芯片的MISO信号线相连。
图1、图2、图3中的箭头方向是数据流向。
采用这样的系统结构,主控芯片向底侧子级芯片写入数据方法包括以下步骤:
(A1)底侧子级芯片中的二选一选择器(M1)、二选一选择器(M2)默认为写使能,则二选一选择器(M1)、二选一选择器(M2)的OUT连接A端口;
(B1)主控芯片发送写数据的指令及其CRC校验码,写数据的指令传入底侧子级芯片;
(C1)底侧子级芯片的通信协议处理模块中移入了主控芯片发送的写指令;
(D1)循环冗余校验码正确,底侧子级芯片通信协议处理模块确认写数据指令,M1不变,M2的OUT连接B端口;
(E1)主控芯片发送底侧子级芯片要写入的数据及其CRC校验码;
(F1)数据从MOSI进入底侧子级芯片的寄存器群;
(G1)数据写入底侧子级芯片的寄存器群,完成子级芯片数据的写入。
主控芯片向底侧子级芯片发送数据包的格式为:
1.发送写寄存器的指令及其CRC校验码;
2.发送底侧子级芯片要写入的数据及其CRC校验码;
其中(G1)步骤中,数据写入寄存器群实际是数据写入芯片配置寄存器的每个寄存器组,每个寄存器组的结构如图6所示,子级芯片读写寄存器的每个寄存器组(CFGR),由8个存储单元Din1、Din2、Din3、Din4、Din5、Din6、Din7、Din8依次从低位到高位串行连接。
为了方便SPI接口读取数据包,每个存储单元由两个位寄存器CLK1、CLK2和两个二选一选择器S1、S2组成一个闭环回路。
二选一选择器(S1)和数据位寄存器(CLK1)连接,数据位寄存器(CLK1)通过二选一选择器(S2)和串行链路位寄存器(CLK2)连接,串行链路位寄存器(CLK2)和二选一选择器(S1)连接。
芯片配置寄存器的寄存器组如图6所示的存储单元的连接方式一样,寄存器组(CFGR0)依次串行连接到寄存器组(CFGR5),寄存器组CFGR0、CFGR1、CFGR2、CFGR3、CFGR4、CFGR5写入数据包方法,如图7所示:
<1>通信协议处理模块先控制二选一选择器(S2)将OUT与B相通,在串行链路寄存器(CLK2)时钟驱动下,将输入数据由存储单元(Din1)的串行链路寄存器依次串行输入到存储单元(Din8)的串行链路寄存器;
<2>通信协议处理模块再控制二选一选择器(S1)将OUT与A相通,此时在数据位寄存器(CLK1)时钟驱动下,将串行链路寄存器并行加载到数据寄存器中;
<3>数据储存在数据寄存器中,寄存器组写入数据完成。
主控芯片向底侧子级芯片的读取数据包的方法,包括以下步骤:
(a1)主控芯片读取底侧子级芯片读写寄存器中的数据包,芯片中的多路选择器(M1)、多路选择器(M2)默认为写使能,则多路选择器(M1)、多路选择器(M2)的OUT连接A端口;
(b1)主控芯片发送读指令及其CRC校验码读取底侧子级芯片储存的数据包,此时读指令传入底侧子级芯片;
(c1)底侧子级芯片的通信协议处理模块中移入主控芯片发送的读指令,当通信协议处理模块确认读数据包指令时,多路选择器(M1)将OUT端口连接B端口,多路选择器(M2)也将OUT连接B端口;
(d1)底侧子级芯片数据包的读取:
底侧子级芯片的读写寄存器、只读寄存器储存的数据以及通信协议处理模块计算出的校验码从寄存器群输出到下传输出端口;
(e1)底侧子级芯片的数据包从下传输出端口经过MISO被主控芯片读出底侧子级芯片数据包。
主控芯片和底侧子级芯片之间数据包发送格式:
1.发送读取寄存器指令及其CRC校验码;
2.读出底侧子级芯片数据及其CRC校验码;
芯片配置寄存器的寄存器组如图6所示的存储单元的连接方式一样,寄存器组(CFGR0)依次串行连接到寄存器组(CFGR5),寄存器组CFGR0、CFGR1、CFGR2、CFGR3、CFGR4、CFGR5读取数据包方法如图1、7所示:
①通信协议处理模块控制多路选通器(P1)与芯片配置寄存器相通;
②通信协议处理模块控制芯片配置寄存器的寄存器组的二选一选择器(S2)将OUT与A相通,此时在数据位寄存器(CLK1)时钟驱动下,将数据包从数据寄存器并行加载到串行链路寄存器中;
③然后通信协议处理模块控制二选一选择器(S2)将OUT与B相通,在串行链路位寄存器(CLK2)时钟驱动下,将数据包从寄存器组的串行链路寄存器低位串行输出到高位;
④通信协议处理模块控制芯片配置寄存器和多路选通器(P2)相通,数据包从多路选通器(P2)输出,完成芯片配置寄存器的读取。
子级芯片只读寄存器寄存器组的结构如图6所示,由8个存储单元Din1、Din2、Din3、Din4、Din5、Din6、Din7、Din8依次从低位到高位串行连接。
为了方便SPI接口读取数据包,每个存储单元由两个位寄存器CLK1、CLK2和两个二选一选择器S1、S2组成一个闭环回路。
二选一选择器(S1)和数据位寄存器(CLK1)连接,数据位寄存器(CLK1)通过二选一选择器(S2)和串行链路位寄存器(CLK2)连接,串行链路位寄存器(CLK2)和二选一选择器(S1)连接。
只读寄存器的每个寄存器组如图6所示的存储单元的连接方式一样,芯片标志寄存器的寄存器组(FLGR0)依次串行连接到寄存器组(FLGR2),芯片诊断寄存器的寄存器组(DGNR0)串行连接到寄存器组(DGNR1),温度寄存器的寄存器组(TMPR0)依次串行连接到寄存器组(TMPR4),电池电压寄存器的寄存器组(CVR00)依次串行连接到寄存器组(CVR17),向只读寄存器的寄存器组读取数据包方法参照图1、图2、图8所示,其步骤如下:
(i)芯片内部写入模块将采集到的电池电压和温度的数据写入到电池电压寄存器、温度寄存器,将内部逻辑运算数据写入到芯片标志寄存器和芯片诊断寄存器时,通信协议处理模块控制二选一选择器(S1)将OUT与B相通;
(ii)芯片内部写入模块将数据并行写入电池电压寄存器和温度寄存器,将内部逻辑运算数据并行写入芯片标志寄存器和芯片诊断寄存器;
(III)通信协议处理模块控制多路选通器P1与芯片只读寄存器相连;
(IV)通信协议处理模块控制只读寄存器的寄存器组的二选一选择器(S2)将OUT与A相通,此时在数据位寄存器(CLK1)时钟驱动下,将数据包从数据寄存器并行加载到串行链路寄存器中;
(v)然后通信协议处理模块控制二选一选择器(S2)将OUT与B相通,在串行链路位寄存器(CLK2)时钟驱动下,将数据包从寄存器组的串行链路寄存器低位串行输出到高位;
(vi)通信协议处理模块控制只读寄存器和多路选通器(P2)相通,数据包从多路选通器(P2)输出,完成只读寄存器的读取。
图6、图7、图8中的箭头方向是数据流向。
实施例二
一种应用于电池监控芯片的级联SPI通信系统,包括一颗主控芯片和2颗子级芯片,主控芯片仅和一颗子级芯片连接以SPI通信协议通信,2颗子级芯片之间通过菊花链的级联方式连接。
与主控芯片连接的是底侧子级芯片,另一颗子级芯片为高侧子级芯片。
一个子级芯片包括1-12节电池。
子级芯片结构如图1所示,子级芯片包括上传输入端口、下传输入端口、通信协议处理模块、寄存器群、多路选择器(M1)、多路选择器(M2)、上传输出端口、下传输出端口。
子级芯片上传输入端口、下传输入端口与多路选择器(M1)串联连接,上传输入端口与通信协议处理模块串联连接,多路选择器(M1)与寄存器群串联连接并且与通信协议处理模块并联连接于多路选择器(M2),寄存器群和下传输出端口相连接,多路选择器和上传输出端口相连接。
本发明中的子级芯片的寄存器群结构如图2所示,包括读写寄存器、只读寄存器、多路选通器、芯片内部写入模块。
多路选通器(P1)串联连接读写寄存器、只读寄存器,芯片内部写入模块串联只读寄存器,读写寄存器和只读寄存器并联连接于多路选通器(P2)。
通信协议处理模块控制多路选通器(P1)、多路选通器(P2)导通时将主控芯片的数据包写入读写寄存器以及主控芯片读取只读寄存器数据包,读写寄存器是芯片配置寄存器。
通信协议处理模块控制多路选通器(P1)、多路选通器(P2)导通时读取只读寄存器数据包,只读寄存器由芯片内部写入模块写入数据,只读寄存器包括芯片电压寄存器、芯片标志寄存器、芯片诊断寄存器和温度寄存器,芯片内部写入模块将采集到的电池电压和温度的数据写入到电池电压寄存器、温度寄存器,将芯片内部逻辑计算数据写入到芯片标志寄存器和芯片诊断寄存器。
芯片配置寄存器由6组寄存器组CFGR0、CFGR1、CFGR2、CFGR3、CFGR4、CFGR5组成。
芯片标志寄存器由3组寄存器组FLGR0、FLGR1、FLGR2组成。
芯片诊断寄存器由2组寄存器组DGNR0、DGNR1组成。
温度寄存器由5组寄存器组TMPR0、TMPR1、TMPR2、TMPR3、TMPR4。
电池电压寄存器由18组寄存器组CVR00、CVR01、CVR02、CVR03、CVR04、CVR05、CVR06、CVR07、CVR08、CVR09、CVR10、CVR11、CVR12、CVR13、CVR14、CVR15、CVR16、CVR17。
主控芯片和底侧子级芯片SPI通信的系统结构如图3所示,主控芯片的MOSI信号线与底侧子级芯片的上传输入端口相连,底侧子级芯片的下传输出端口和主控芯片的MISO信号线相连。
底侧子级芯片和高侧子级芯片级联的系统结构如图4所示,底侧子级芯片的上传输出端口和高侧子级芯片的上传输入端口相连,高侧子级芯片的下传输出端口和底侧子级芯片的下传输入端口相连。
图1、图2、图3、图4中的箭头方向是数据流向。
采用这样的系统结构,主控芯片向2颗子级芯片写入数据方法包括以下步骤:
(A2)底侧子级芯片中的多路选择器(M1)、多路选择器(M2)默认为写使能,则多路选择器(M1)、多路选择器(M2)的OUT连接A端口;
(B2)主控芯片发送写数据的指令及其CRC校验码,写数据的指令不仅传入底侧子级芯片,同时也传入了高侧子级芯片;
(C2)2颗芯片的通信协议处理模块中移入了主控芯片发送的写指令;
(D2)当2颗子级芯片通信协议处理模块确认写数据指令时,多路选择器(M1)不变,多路选择器(M2)的OUT连接B端口;
(E2)主控芯片发送低侧芯片和高侧子级芯片要写入的数据;
(F2)数据从MOSI通过底侧子级芯片上传输入端口进入底侧子级芯片的寄存器群,同时通过高侧子级芯片上传输入端口进入高侧子级芯片的寄存器群;
(G2)数据写入底侧子级芯片、高侧子级芯片的寄存器群,完成子级芯片数据的写入。
数据包发送的格式为:
1.发送写寄存器的指令及其CRC校验码;
2.发送底侧子级芯片要写入的数据及其CRC校验码;
3.发送高侧子级芯片要写入的数据及其CRC校验码;
其中(G2)步骤中,数据写入底侧子级芯片、高侧子级芯片的寄存器群实际是数据写入底侧子级芯片、高侧子级芯片的芯片配置寄存器的每个寄存器组,芯片配置寄存器的每个寄存器组(CFGR)的结构如图6所示,,由8个存储单元Din1、Din2、Din3、Din4、Din5、Din6、Din7、Din8依次从低位到高位串行连接。
为了方便SPI接口读取数据,每个存储单元由两个位寄存器CLK1、CLK2和两个二选一选择器S1、S2组成一个闭环回路。
二选一选择器(S1)和数据位寄存器(CLK1)连接,数据位寄存器(CLK1)通过二选一选择器(S2)和串行链路位寄存器(CLK2)连接,串行链路位寄存器(CLK2)和二选一选择器(S1)连接。
底侧子级芯片和高侧子级芯片的芯片配置寄存器的寄存器组如图6所示的存储单元的连接方式一样,寄存器组(CFGR0)依次串行连接到寄存器组(CFGR5),寄存器组CFGR0、CFGR1、CFGR2、CFGR3、CFGR4、CFGR5写入数据方法,如图7所示:
<1>通信协议处理模块先控制二选一选择器(S2)将OUT与B相通,在串行链路位寄存器(CLK2)时钟驱动下,将输入数据按位由存储单元(Din1)的串行链路寄存器依次串行输入到存储单元(Din8)的串行链路寄存器;
<2>通信协议处理模块再控制二选一选择器(S1)将OUT与A相通,此时在数据位寄存器(CLK1)时钟驱动下,将串行链路寄存器并行加载到数据寄存器中;
<3>数据储存在数据寄存器中,寄存器组写入数据完成。
主控芯片向底侧子级芯片、高侧子级芯片的读取数据的方法,如图4所示,包括以下步骤:
(a2)主控芯片读取底侧子级芯片、高侧子级芯片的数据,芯片中的多路选择器(M1)、多路选择器(M2默认为写使能,则多路选择器(M1)、多路选择器(M2)的OUT连接A端口;
(b2)主控芯片发送读指令及其CRC校验码读取底侧子级芯片、高侧子级芯片的储存的数据,此时读指令传入底侧子级芯片、高侧子级芯片;
(c2)底侧子级芯片、高侧子级芯片的通信协议处理模块中移入主控芯片发送的读指令,当通信协议处理模块确认读数据指令时,多路选择器(M1)将OUT端口连接B端口,多路选择器(M2)也将OUT连接B端口;
(d2)底侧子级芯片被主控芯片读取:
底侧子级芯片、高侧子级芯片的读写寄存器、只读寄存器储存的数据以及通信协议处理模块计算出的校验码从寄存器群输出到下传输出端口,
底侧子级芯片的数据从下传输出端口经过MISO被主控芯片读出底侧子级芯片数据及其CRC校验码。
(e2)高侧子级芯片的数据被主控芯片读取:
高侧子级芯片的读写寄存器、只读寄存器储存的数据以及通信协议处理模块计算出的校验码从寄存器群输出到高侧子级芯片下传输出端口,
高侧子级芯片的数据从高侧子级芯片下传输出端口传输到底侧子级芯片的下传输入端口,
高侧子级芯片的数据经底侧子级芯片的寄存器群输出到底侧子级芯片下传输出端口,
高侧子级芯片的数据从底侧子级芯片的下传输出端口经过MISO被主控芯片读出高侧子级芯片数据及其CRC校验码。
主控芯片和底侧子级芯片、高侧子级芯片之间数据包发送格式:
1.发送读取寄存器指令及其CRC校验码;
2.读出底侧子级芯片数据及其CRC校验码;
3.读出高侧子级芯片数据及其CRC校验码;
底侧子级芯片、高侧子级芯片的读写寄存器的寄存器组如图6所示的存储单元的连接方式一样,寄存器组(CFGR0)依次串行连接到寄存器组(CFGR5),寄存器组CFGR0、CFGR1、CFGR2、CFGR3、CFGR4、CFGR5读取数据包方法如图1、图2、图7所示:
①通信协议处理模块控制多路选通器(P1)与芯片配置寄存器相通;
②通信协议处理模块控制芯片配置寄存器的寄存器组的二选一选择器(S2)将OUT与A相通,此时在数据位寄存器(CLK1)时钟驱动下,将数据包从数据寄存器并行加载到串行链路寄存器中;
③然后通信协议处理模块控制二选一选择器(S2)将OUT与B相通,在串行链路位寄存器(CLK2)时钟驱动下,将数据包从寄存器组的串行链路寄存器低位串行输出到高位;
④通信协议处理模块控制芯片配置寄存器和多路选通器(P2)相通,数据包从多路选通器(P2)输出,完成芯片配置寄存器的读取。
底侧子级芯片、高侧子级芯片只读寄存器寄存器组的结构如图6所示,由8个存储单元Din1、Din2、Din3、Din4、Din5、Din6、Din7、Din8依次从低位到高位串行连接。
为了方便SPI接口读取数据包,每个存储单元由两个位寄存器CLK1、CLK2和两个二选一选择器S1、S2组成一个闭环回路。
二选一选择器(S1)和数据包位寄存器(CLK1)连接,数据包位寄存器(CLK1)通过二选一选择器(S2)和串行链路位寄存器(CLK2)连接,串行链路位寄存器(CLK2)和二选一选择器(S1)连接。
只读寄存器的寄存器组如图6所示的存储单元的连接方式一样,芯片标志寄存器的寄存器组(FLGR0)依次串行连接到寄存器组(FLGR2),芯片诊断寄存器的寄存器组(DGNR0)串行连接到寄存器组(DGNR1),温度寄存器的寄存器组(TMPR0)依次串行连接到寄存器组(TMPR4),电池电压寄存器的寄存器组(CVR00)依次串行连接到寄存器组(CVR17),向只读寄存器的寄存器组读取数据包方法如图1、图2、图8所示,其步骤如下:
(i)芯片内部写入模块将采集到的电池电压和温度的数据包转化为数字数据包写入到电池电压寄存器、温度寄存器,将内部逻辑运算数据包写入到芯片标志寄存器和芯片诊断寄存器时,通信协议处理模块控制二选一选择器(S1)将OUT与B相通;
(ii)芯片内部写入模块将数字数据包并行写入电池电压寄存器和温度寄存器,将内部逻辑运算数据包并行写入芯片标志寄存器和芯片诊断寄存器;
(III)通信协议处理模块控制多路选通器P1与芯片只读寄存器相通;
(IV)通信协议处理模块控制只读寄存器的寄存器组的二选一选择器(S2)将OUT与A相通,此时在数据位寄存器(CLK1)时钟驱动下,将数据包从数据寄存器并行加载到串行链路寄存器中;
(v)然后通信协议处理模块控制二选一选择器(S2)将OUT与B相通,在串行链路寄存器(CLK2)时钟驱动下,将数据包从寄存器组的串行链路寄存器低位串行输出到高位;
(vi)通信协议处理模块控制只读寄存器和多路选通器(P2)相通,数据包从多路选通器(P2)输出,完成只读寄存器的读取。
图6、图7、图8中的箭头方向是数据流向。
实施例三
一种应用于电池监控芯片的级联SPI通信系统,包括一颗主控芯片和8颗子级芯片,主控芯片仅和一颗子级芯片连接以SPI通信协议通信,8颗子级芯片之间通过菊花链的级联方式连接。
一颗子级芯片包括1-12节电池。
与主控芯片连接的是底侧子级芯片,其余7颗子级芯片为高侧子级芯片。
8颗子级芯片按照如图5所示级联的方式连接。
与主控芯片相连的子级芯片称为底侧子级芯片,其它7颗子级芯片称为高侧子级芯片,底侧子级芯片与主控芯片之间以SPI通信协议连接,底侧子级芯片与7颗高侧子级芯片之间以级联的方式连接。
子级芯片结构如图1所示,子级芯片包括子级芯片包括上传输入端口、下传输入端口、通信协议处理模块、寄存器群、多路选择器(M1)、多路选择器(M2)、上传输出端口、下传输出端口。
子级芯片上传输入端口、下传输入端口与多路选择器(M1)串联连接,上传输入端口与通信协议处理模块串联连接,多路选择器(M1)与寄存器群串联连接并且与通信协议处理模块并联连接于多路选择器(M2),寄存器群和下传输出端口相连接,多路选择器和上传输出端口相连接。
本发明中的底侧子级芯片的寄存器群结构如图2所示,包括读写寄存器、只读寄存器、多路选通器、芯片内部写入模块。
多路选通器(P1)串联连接读写寄存器、只读寄存器,芯片内部写入模块串联只读寄存器,读写寄存器和只读寄存器并联连接于多路选通器(P2)。
通信协议处理模块控制多路选通器(P1)、多路选通器(P2)导通时将主控芯片的数据包写入读写寄存器以及主控芯片读取只读寄存器数据包,读写寄存器是芯片配置寄存器。
通信协议处理模块控制多路选通器(P1)、多路选通器(P2)导通时读取只读寄存器数据包,只读寄存器由芯片内部写入模块写入数据,只读寄存器包括芯片电压寄存器、芯片标志寄存器、芯片诊断寄存器和温度寄存器,芯片内部写入模块将采集到的电池电压和温度的数据写入到电池电压寄存器、温度寄存器,将芯片内部逻辑计算数据写入到芯片标志寄存器和芯片诊断寄存器。
芯片配置寄存器由6组寄存器组CFGR0、CFGR1、CFGR2、CFGR3、CFGR4、CFGR5组成。
芯片标志寄存器由3组寄存器组FLGR0、FLGR1、FLGR2组成。
芯片诊断寄存器由2组寄存器组DGNR0、DGNR1组成。
温度寄存器由5组寄存器组TMPR0、TMPR1、TMPR2、TMPR3、TMPR4。
电池电压寄存器由18组寄存器组CVR00、CVR01、CVR02、CVR03、CVR04、CVR05、CVR06、CVR07、CVR08、CVR09、CVR10、CVR11、CVR12、CVR13、CVR14、CVR15、CVR16、CVR17。
主控芯片和底侧子级芯片SPI通信的系统结构如图3所示,主控芯片的MOSI信号线与底侧子级芯片的上传输入端口相连,底侧子级芯片的下传输出端口和主控芯片的MISO信号线相连接。
主控芯片和8颗子级芯片级联SPI通信的系统结构如图5所示,主控芯片(1)通过MOSI和底侧子级芯片(2)的上传输入端口相连接,底侧子级芯片(2)的下传输入端口通过MISO信号线和主控芯片(1)相连接,底侧子级芯片(1)的上传输出端口和高侧子级芯片(2)的上传输入端口相连接,高侧子级芯片(2)的下传输出端口与底侧子级芯片(1)的下传输入端口相连接,高侧子级芯片(2)的上传输出端口和高侧子级芯片(3)的上传输入端口相连接,高侧子级芯片(3)的上传输出端口和高侧子级芯片(4)的上传输入端口相连接,高侧子级芯片(3)的下传输出端口和高侧子级芯片(2)的下传输入端口相连接,高侧子级芯片(4)的上传输出端口和高侧子级芯片(5)的上传输入端口相连接,高侧子级芯片(4)的下传输出端口和高侧子级芯片(3)的下传输入端口相连接,高侧子级芯片(5)的上传输出端口和高侧子级芯片(6)的上传输入端口相连接,高侧子级芯片(5)的下传输出端口和高侧子级芯片(4)的下传输入端口相连接,高侧子级芯片(6)的上传输出端口和高侧子级芯片(7)的上传输入端口相连接,高侧子级芯片(6)的下传输出端口和高侧子级芯片(5)的下传输入端口相连接,高侧子级芯片(7)的上传输出端口和高侧子级芯片(8)的上传输入端口相连接,高侧子级芯片(7)的下传输出端口和高侧子级芯片(6)的下传输入端口相连接,高侧子级芯片(8)的上传输出端口和高侧子级芯片(9)的上传输入端口相连接,高侧子级芯片(8)的下传输出端口和高侧子级芯片(7)的下传输入端口相连接,高侧子级芯片(9)的下传输出端口和高侧子级芯片(8)的下传输入端口相连接。
图1、图2、图3、图4、图5中的箭头方向是数据流向。
采用这样的系统结构,主控芯片向8颗子级芯片写入数据方法包括以下步骤:
(A3)8颗子级芯片中的多路选择器(M1)、多路选择器(M2)默认为写使能,则多路选择器(M1)、多路选择器(M2)的OUT连接A端口;
(B3)主控芯片(1)发送写数据的指令及其CRC校验码,写数据的指令不仅传入底侧子级芯片,同时也传入了7颗高侧子级芯片;
(C3)8颗芯片的通信协议处理模块中移入了主控芯片(1)发送的写指令;
(D3)当8颗子级芯片通信协议处理模块确认写数据指令时,多路选择器(M1)不变,多路选择器(M2)的OUT连接B端口;
(E3)主控芯片(1)发送低侧芯片(2)和7颗高侧子级芯片3、4、5、6、7、8要写入的数据及其CRC校验码;
(F3)8颗子级芯片要写入的数据从MOSI通过底侧子级芯片(2)上传输入端口进入底侧子级芯片的寄存器群,底侧子级芯片的要写入的数据写入底侧子级芯片的寄存器群;
(G3)7颗高侧子级芯片要写入的数据从底侧子级芯片(2)的寄存器群出来通过高侧子级芯片(3)上传输入端口进入高侧子级芯片(2)的寄存器群,高侧子级芯片(2)的要写入的数据写入高侧子级芯片(2)的寄存器群;
(H3)6颗高侧子级芯片要写入的数据从高侧子级芯片(3)的寄存器群出来通过高侧子级芯片(4)上传输入端口进入高侧子级芯片(4)的寄存器群,高侧子级芯片(4)的要写入的数据写入高侧子级芯片(4)的寄存器群;
(I3)5颗高侧子级芯片要写入的数据从高侧子级芯片(4)的寄存器群出来通过高侧子级芯片(5)上传输入端口进入高侧子级芯片(5)的寄存器群,高侧子级芯片(5)的要写入的数据写入高侧子级芯片(5)的寄存器群;
(J3)4颗高侧子级芯片要写入的数据从高侧子级芯片(5)的寄存器群出来通过高侧子级芯片(6)上传输入端口进入高侧子级芯片(6)的寄存器群,高侧子级芯片(6)的要写入的数据写入高侧子级芯片(6)的寄存器群;
(K3)3颗高侧子级芯片要写入的数据从高侧子级芯片(6)的寄存器群出来通过高侧子级芯片(7)上传输入端口进入高侧子级芯片(7)的寄存器群,高侧子级芯片(7)的要写入的数据写入高侧子级芯片(7)的寄存器群;
(L3)2颗高侧子级芯片要写入的数据从高侧子级芯片(7)的寄存器群出来通过高侧子级芯片(8)上传输入端口进入高侧子级芯片(8)的寄存器群,高侧子级芯片(8)的要写入的数据写入高侧子级芯片(8)的寄存器群;
(M3)1颗高侧子级芯片要写入的数据从高侧子级芯片(8)的寄存器群出来通过高侧子级芯片(9)上传输入端口进入高侧子级芯片(9)的寄存器群,高侧子级芯片(9)的要写入的数据写入高侧子级芯片(9)的寄存器群。
数据包发送的格式为:
1.发送写寄存器的指令及其CRC校验码;
2.发送底侧子级芯片要写入的数据及其CRC校验码;
3.发送高侧子级芯片要写入的数据及其CRC校验码;
其中(F3)至(M3)步骤中,向底侧子级芯片(2)、高侧子级芯片3、4、5、6、7、8、9的寄存器群写入数据实际是向底侧子级芯片、高侧子级芯片的芯片配置寄存器的每个寄存器组写入数据,芯片配置寄存器的每个寄存器组(CFGR)的结构如图6所示,由8个存储单元Din1、Din2、Din3、Din4、Din5、Din6、Din7、Din8依次从低位到高位串行连接。
为了方便SPI接口读取数据,每个存储单元由两个位寄存器CLK1、CLK2和两个二选一选择器S1、S2组成一个闭环回路。
二选一选择器(S1)和数据位寄存器(CLK1)连接,数据位寄存器(CLK1)通过二选一选择器(S2)和串行链路位寄存器(CLK2)连接,串行链路位寄存器(CLK2)和二选一选择器(S1)连接。
底侧子级芯片(2)和高侧子级芯片3、4、5、6、7、8、9的芯片配置寄存器的寄存器组如图6所示的存储单元的连接方式一样,寄存器组(CFGR0)依次串行连接到寄存器组(CFGR5),寄存器组CFGR0、CFGR1、CFGR2、CFGR3、CFGR4、CFGR5写入数据方法,如图7所示:
<1>通信协议处理模块先控制二选一选择器(S2)将OUT与B相通,在串行链路寄存器(CLK2)时钟驱动下,将输入数据按位由存储单元(Din1)的串行链路寄存器依次串行输入到存储单元(Din8)的串行链路寄存器;
<2>通信协议处理模块再控制二选一选择器(S1)将OUT与A相通,此时在数据位寄存器(CLK1)时钟驱动下,将串行链路寄存器并行加载到数据寄存器中;
<3>数据储存在数据寄存器中,寄存器组写入数据完成。
主控芯片(1)向底侧子级芯片(2)、高侧子级芯片3、4、5、6、7、8、9的读取数据包的方法,如图4所示,包括以下步骤:
(a3)主控芯片(1)读取底侧子级芯片(2)、高侧子级芯片3、4、5、6、7、8、9的数据包,芯片中的二选一选择器M1、M2默认为写使能,则多路选择器M1、M2的OUT连接A端口;
(b3)主控芯片(1)发送读指令及其CRC校验码读取底侧子级芯片(2)、高侧子级芯片3、4、5、6、7、8、9的储存的数据包,此时读指令传入底侧子级芯片(2)、高侧子级芯片3、4、5、6、7、8、9;
(c3)底侧子级芯片(2)、高侧子级芯片3、4、5、6、7、8、9的通信协议处理模块中移入主控芯片(1)发送的读指令,当通信协议处理模块确认读数据包指令时,多路选择器(M1)将OUT端口连接B端口,多路选择器(M2)也将OUT连接B端口;
(d3)底侧子级芯片(2)被主控芯片(1)读取:
底侧子级芯片(2)的读写寄存器、只读寄存器储存的数据包以及通信协议处理模块计算出的校验码从寄存器群输出到底侧子级芯片(2)下传输出端口;
底侧子级芯片(2)的数据包从下传输出端口经过MISO被主控芯片(1)读取底侧子级芯片(2)数据包及其CRC校验码;
(e3)高侧子级芯片3、4、5、6、7、8、9的数据包被主控芯片读取:
高侧子级芯片(3)的读写寄存器、只读寄存器储存的数据包以及通信协议处理模块计算出的校验码从寄存器群输出到高侧子级芯片(3)下传输出端口,
高侧子级芯片(3)的数据包从高侧子级芯片下传输出端口传输到底侧子级芯片(2)的下传输入端口,
高侧子级芯片(3)的数据包经底侧子级芯片(2)的寄存器群输出到底侧子级芯片(2)下传输出端口,
高侧子级芯片(3)的数据包从底侧子级芯片(2)的下传输出端口经过MISO被主控芯片读取高侧子级芯片(3)数据包及其CRC校验码;
与高侧子级芯片(3)数据包的传输路径一样,高侧子级芯片(4)的数据包依次传输到高侧子级芯片(3)、底侧子级芯片(2),经过MISO被主控芯片读取高侧子级芯片(4)数据包及其CRC校验码;
与高侧子级芯片3、4数据包的传输路径一样,高侧子级芯片(5)的数据包依次传输到高侧子级芯片4、3、底侧子级芯片(2),经过MISO被主控芯片读取高侧子级芯片(5)数据包及其CRC校验码;
与高侧子级芯片3、4、5数据包的传输路径一样,高侧子级芯片(6)的数据包依次传输到高侧子级芯片5、4、3、底侧子级芯片(2),经过MISO被主控芯片读取高侧子级芯片(6)数据包及其CRC校验码;
与高侧子级芯片3、4、5、6数据包的传输路径一样,高侧子级芯片(7)的数据包依次传输到高侧子级芯片(3)、底侧子级芯片(2),经过MISO被主控芯片读取高侧子级芯片(4)数据包及其CRC校验码;
与高侧子级芯片3、4、5、6、7数据包的传输路径一样,高侧子级芯片(8)的数据包依次传输到高侧子级芯片7、6、5、4、3、底侧子级芯片(2),经过MISO被主控芯片读取高侧子级芯片(8)数据包及其CRC校验码;
与高侧子级芯片3、4、5、6、7、8数据包的传输路径一样,高侧子级芯片(9)的数据包依次传输到高侧子级芯片8、7、6、5、4、3,底侧子级芯片(2),经过MISO被主控芯片读取高侧子级芯片(9)数据包。
主控芯片和底侧子级芯片、高侧子级芯片之间数据包发送格式:
1.发送读取寄存器指令及其CRC校验码;
2.读出底侧子级芯片数据及其CRC校验码;
3.读出高侧子级芯片数据及其CRC校验码。
底侧子级芯片(2)、高侧子级芯片3、4、5、6、7、8、9的读写寄存器的寄存器组如图6所示的存储单元的连接方式一样,寄存器组(CFGR0)依次串行连接到寄存器组(CFGR5),寄存器组CFGR0、CFGR1、CFGR2、CFGR3、CFGR4、CFGR5读取数据包方法如图1、图2、图7所示:
①通信协议处理模块控制多路选通器P1与芯片配置寄存器相通;
②通信协议处理模块控制芯片配置寄存器的寄存器组的二选一选择器(S2)将OUT与A相通,此时在数据位寄存器(CLK1)时钟驱动下,将数据包从数据寄存器并行加载到串行链路寄存器中;
③然后通信协议处理模块控制二选一选择器(S2)将OUT与B相通,在串行链路位寄存器(CLK2)时钟驱动下,将数据包从寄存器组的串行链路寄存器低位串行输出到高位;
④通信协议处理模块控制芯片配置寄存器和多路选通器(P2)相通,数据包从多路选通器(P2)输出,完成芯片配置寄存器的读取。
底侧子级芯片(2)、高侧子级芯片3、4、5、6、7、8、9只读寄存器寄存器组的结构如图6所示,由8个存储单元Din1、Din2、Din3、Din4、Din5、Din6、Din7、Din8依次从低位到高位串行连接。
为了方便SPI接口读取数据包,每个存储单元由两个位寄存器CLK1、CLK2和两个二选一选择器S1、S2组成一个闭环回路。
二选一选择器(S1)和数据包位寄存器(CLK1)连接,数据包位寄存器(CLK1)通过二选一选择器(S2)和串行链路位寄存器(CLK2)连接,串行链路位寄存器(CLK2)和二选一选择器(S1)连接。
只读寄存器的寄存器组如图6所示的存储单元的连接方式一样,芯片标志寄存器的寄存器组FLGR0依次串行连接到寄存器组(FLGR2),芯片诊断寄存器的寄存器组(DGNR0)串行连接到寄存器组(DGNR1),温度寄存器的寄存器组(TMPR0)依次串行连接到寄存器组(TMPR4),电池电压寄存器的寄存器组(CVR00)依次串行连接到寄存器组(CVR17),向只读寄存器的寄存器组读取数据包方法如图1、图2、图8所示,其步骤如下:
(i)芯片内部写入模块将采集到的电池电压和温度的数据包转化为数字数据包写入到电池电压寄存器、温度寄存器,将内部逻辑运算数据包写入到芯片标志寄存器和芯片诊断寄存器时,通信协议处理模块控制二选一选择器(S1)将OUT与B相通;
(ii)芯片内部写入模块将数字数据包并行写入电池电压寄存器和温度寄存器,将内部逻辑运算数据包并行写入芯片标志寄存器和芯片诊断寄存器;
(III)通信协议处理模块控制多路选通器(P1)与芯片只读寄存器相通;
(IV)通信协议处理模块控制只读寄存器的寄存器组的二选一选择器(S2)将OUT与A相通,此时在数据位寄存器(CLK1)时钟驱动下,将数据包从数据寄存器并行加载到串行链路寄存器中;
(v)然后通信协议处理模块控制二选一选择器(S2)将OUT与B相通,在串行链路寄存器(CLK2)时钟驱动下,将数据包从寄存器组的串行链路寄存器低位串行输出到高位;
(vi)通信协议处理模块控制只读寄存器和多路选通器(P2)相通,数据包从多路选通器(P2)输出,完成只读寄存器的读取。
图6、图7、图8中的箭头方向是数据流向。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种应用于电池监控芯片的级联SPI通信系统,其特征在于:包括主控芯片和子级芯片,主控芯片仅和一颗子级芯片相连接以SPI通信协议通信,子级芯片之间通过菊花链的级联方式连接。
2.如权利要求1所述的一种应用于电池监控芯片的级联SPI通信系统,其特征在于:所述的仅和主控芯片直接相连接的子级芯片是底侧子级芯片,其它子级芯片是高侧子级芯片,子级芯片的数量为1-8。
3.如权利要求1所述的一种应用于电池监控芯片的级联SPI通信系统,其特征在于:所述的一个子级芯片监控1-12节电池。
4.如权利要求2所述的一种应用于电池监控芯片的级联SPI通信系统,其特征在于:所述底侧子级芯片的上传输入的接口信号与主控芯片的MOSI信号线相连,所述底侧子级芯片的下传输出的接口信号与主控芯片的MISO信号线相连,所述的子级芯片之间通过上传输入端口、上传输出端口、下传输入端口、下传输出端口实现子级芯片间的互联和数据包通信,所述的数据包包括指令、数据、循环冗余校验码。
5.如权利要求1至4所述的任意一种应用于电池监控芯片的级联SPI通信系统,其特征在于:所述的子级芯片包括传输入端口、下传输入端口、通信协议处理模块、寄存器群、多路选择器(M1)、多路选择器(M2)、上传输出端口、下传输出端口,所述的子级芯片上传输入端口、下传输入端口与多路选择器(M1)串联连接,上传输入端口与通信协议处理模块串联连接,多路选择器(M1)与寄存器群串联连接并且与通信协议处理模块并联连接于多路选择器(M2),寄存器群和下传输出端口相连接,多路选择器(M2)和上传输出端口相连接。
6.如权利要求5所述的一种应用于电池监控芯片的级联SPI通信系统,其特征在于:所述的寄存器群包括读写寄存器、只读寄存器、多路选通器(P1)、多路选通器(P2)、芯片内部写入模块。
7.如权利要求6所述的一种应用于电池监控芯片的级联SPI通信系统,其特征在于:所述的通信协议处理模块控制所述的多路选通器(P1)、多路选通器(P2)导通时将主控芯片的数据包写入所述的读写寄存器以及主控芯片读取所述的只读寄存器数据包,所述的读写寄存器是芯片配置寄存器。
8.如权利要求6所述的一种应用于电池监控芯片的级联SPI通信系统,其特征在于:所述的通信协议处理模块控制所述的多路选通器(P1)、多路选通器(P2)导通时读取所述的只读寄存器数据包,所述的只读寄存器由所述的芯片内部写入模块写入数据,只读寄存器包括芯片电压寄存器、芯片标志寄存器、芯片诊断寄存器和温度寄存器,芯片内部写入模块将采集到的电池电压和温度的数据写入到电池电压寄存器、温度寄存器,将芯片内部逻辑计算数据写入到芯片标志寄存器和芯片诊断寄存器。
9.如权利要求6所述的应用于电池监控芯片的级联SPI通信系统,其特征在于:所述的读写寄存器、只读寄存器由寄存器组构成,所述的寄存器组由8个存储单元组成,每个存储单元由二选一选择器S1、二选一选择器S2、数据位寄存器(CLK1)、串行链路位寄存器(CLK2)组成,二选一选择器(S1)和所述的数据位寄存器(CLK1)连接,所述的数据位寄存器(CLK1)通过二选一选择器(S2)和所述的串行链路位寄存器(CLK2)连接;所述8个数据位寄存器(CLK1)组成数据寄存器,所述8个串行链路位寄存器(CLK2)组成串行链路寄存器。
10.一种通信方法,采用应用于电池监控芯片的级联SPI通信系统,其特征在于:所述的通信方法包括主控芯片向子级芯片写入数据方法和主控芯片对子级芯片的数据包读取方法;
(一)所述主控芯片向子级芯片写入数据方法包括以下步骤:
(A)主控芯片向子级芯片发送写数据的指令及其循环冗余校验码;
(B)子级芯片通信协议处理模块中移入了主控芯片发送的写指令;
(C)循环冗余校验码正确,子级芯片通信协议处理模块确认写数据指令;
(D)主控芯片向子级芯片发送要写入的数据;
(E)数据写入子级芯片的寄存器群,完成子级芯片数据的写入,所述的数据写入子级芯片的寄存器群是所述的数据写入子级芯片的读写寄存器的寄存器组,包括以下步骤:
<1>通信协议处理模块先控制二选一选择器(S2)将OUT与B相通,在串行链路位寄存器(CLK2)时钟驱动下,将所述的数据按位由存储单元(Din1)的串行链路位寄存器(CLK2)依次串行输入到存储单元(Din8)的串行链路位寄存器(CLK2);
<2>通信协议处理模块再控制二选一选择器(S1)将OUT与A相通,此时在数据位寄存器(CLK1)时钟驱动下,将串行链路寄存器并行加载到数据寄存器中;
<3>数据储存在数据寄存器中,寄存器组写入数据完成;
(二)所述的主控芯片对子级芯片的数据包读取方法包括以下步骤:
(a)所述的主控芯片向所述的子级芯片发送读数据指令及其循环冗余校验码;
(b)所述的子级芯片里移入了所述的主控芯片发送的读指令;
(c)循环冗余校验码正确,子级芯片通信协议处理模块确认写数据指令;
(d)主控芯片向子级芯片发送要读取的数据包;
(e)高侧子级芯片将高侧子级芯片寄存器群的数据包一级级传输给与自己相连的子级芯片,最后数据均传输到底侧子级芯片,由底侧子级芯片将高侧子级芯片数据经过MISO信号线传输给主控芯片;
(f)底侧子级芯片将底侧子级芯片寄存器群的数据包经过MISO信号线传输给主控芯片;
所述的子级芯片将子级芯片寄存器群的数据包传输是从子级芯片的读写寄存器的寄存器组读取数据包以及从子级芯片只读寄存器的寄存器组读取数据包,所述的从子级芯片的读写寄存器读取数据包包括以下步骤:
①通信协议处理模块控制多路选通器(P1)与芯片配置寄存器相通;
②通信协议处理模块控制芯片配置寄存器的寄存器组的二选一选择器(S2)将OUT与A相通,此时在数据位寄存器(CLK1)时钟驱动下,将数据包从数据寄存器并行加载到串行链路寄存器中;
③然后通信协议处理模块控制二选一选择器(S2)将OUT与B相通,在串行链路位寄存器(CLK2)时钟驱动下,将数据包从寄存器组的串行链路寄存器低位串行输出到高位;
④通信协议处理模块控制芯片配置寄存器和多路选通器(P2)相通,数据包从多路选通器(P2)输出,完成芯片配置寄存器的读取;
所述的从子级芯片的只读寄存器的寄存器组读取数据包,包括以下步骤:
(i)芯片内部写入模块将采集到的电池电压和温度的数据写入到电池电压寄存器、温度寄存器,将内部逻辑运算数据写入到芯片标志寄存器和芯片诊断寄存器时,通信协议处理模块控制二选一选择器(S1)将OUT与B相通;
(ii)芯片内部写入模块将数据并行写入电池电压寄存器和温度寄存器,将内部逻辑运算数据并行写入芯片标志寄存器和芯片诊断寄存器;
(III)通信协议处理模块控制多路选通器(P1)与芯片只读寄存器相通;
(IV)通信协议处理模块控制只读寄存器的寄存器组的二选一选择器(S2)将OUT与A相通,此时在数据位寄存器(CLK1)时钟驱动下,将数据包从数据寄存器并行加载到串行链路寄存器中;
(v)然后通信协议处理模块控制二选一选择器(S2)将OUT与B相通,在串行链路位寄存器(CLK2)时钟驱动下,将数据包从寄存器组的串行链路寄存器低位串行输出到高位;
(vi)通信协议处理模块控制只读寄存器和多路选通器(P2)相通,数据包从多路选通器(P2)输出,完成只读寄存器的读取。
CN201610329670.7A 2016-05-18 2016-05-18 一种应用于电池监控芯片的级联spi通信系统及通信方法 Pending CN105812392A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610329670.7A CN105812392A (zh) 2016-05-18 2016-05-18 一种应用于电池监控芯片的级联spi通信系统及通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610329670.7A CN105812392A (zh) 2016-05-18 2016-05-18 一种应用于电池监控芯片的级联spi通信系统及通信方法

Publications (1)

Publication Number Publication Date
CN105812392A true CN105812392A (zh) 2016-07-27

Family

ID=56452502

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610329670.7A Pending CN105812392A (zh) 2016-05-18 2016-05-18 一种应用于电池监控芯片的级联spi通信系统及通信方法

Country Status (1)

Country Link
CN (1) CN105812392A (zh)

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107819659A (zh) * 2017-10-24 2018-03-20 七玄驹智能科技(上海)有限公司 一种基于spi的智能级联通信网络
CN111403832A (zh) * 2020-03-31 2020-07-10 点晶微(厦门)集成电路有限公司 一种可扩展电池保护方法
CN111725574A (zh) * 2019-03-20 2020-09-29 立锜科技股份有限公司 电池系统及其中的电池模块及电池控制电路
CN113037516A (zh) * 2021-04-06 2021-06-25 北京集创北方科技股份有限公司 通信方法、装置及系统
CN113032312A (zh) * 2019-12-24 2021-06-25 中国电子科技集团公司第二十四研究所 多片电路级联通信系统
CN114967570A (zh) * 2022-07-27 2022-08-30 深圳市汤诚科技有限公司 一种i2c从机地址可编程控制电路结构及控制方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6252376B1 (en) * 1998-03-17 2001-06-26 Japan Storage Battery Co., Ltd. Battery-state monitoring system for a battery group
CN101029920A (zh) * 2006-09-07 2007-09-05 长安大学 集中/分布式电动汽车蓄电池组工作参数检测系统
CN101551445A (zh) * 2009-05-12 2009-10-07 奇瑞汽车股份有限公司 一种电动汽车用动力锂电池采集系统以及采集控制方法
CN104553852A (zh) * 2015-01-06 2015-04-29 重庆长安汽车股份有限公司 一种电动汽车电池管理系统混合通信系统
CN205657711U (zh) * 2016-05-18 2016-10-19 西安航天民芯科技有限公司 一种应用于电池监控芯片的级联spi通信系统

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6252376B1 (en) * 1998-03-17 2001-06-26 Japan Storage Battery Co., Ltd. Battery-state monitoring system for a battery group
CN101029920A (zh) * 2006-09-07 2007-09-05 长安大学 集中/分布式电动汽车蓄电池组工作参数检测系统
CN101551445A (zh) * 2009-05-12 2009-10-07 奇瑞汽车股份有限公司 一种电动汽车用动力锂电池采集系统以及采集控制方法
CN104553852A (zh) * 2015-01-06 2015-04-29 重庆长安汽车股份有限公司 一种电动汽车电池管理系统混合通信系统
CN205657711U (zh) * 2016-05-18 2016-10-19 西安航天民芯科技有限公司 一种应用于电池监控芯片的级联spi通信系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
杨文荣,李楠: "基于菊花链结构电池管理芯片的级联通讯", 《电子测量技术》 *

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107819659A (zh) * 2017-10-24 2018-03-20 七玄驹智能科技(上海)有限公司 一种基于spi的智能级联通信网络
CN107819659B (zh) * 2017-10-24 2020-09-29 七玄驹智能科技(上海)有限公司 一种基于spi的智能级联通信网络
CN111725574A (zh) * 2019-03-20 2020-09-29 立锜科技股份有限公司 电池系统及其中的电池模块及电池控制电路
CN113032312A (zh) * 2019-12-24 2021-06-25 中国电子科技集团公司第二十四研究所 多片电路级联通信系统
CN113032312B (zh) * 2019-12-24 2022-07-05 中国电子科技集团公司第二十四研究所 多片电路级联通信系统
CN111403832A (zh) * 2020-03-31 2020-07-10 点晶微(厦门)集成电路有限公司 一种可扩展电池保护方法
CN113037516A (zh) * 2021-04-06 2021-06-25 北京集创北方科技股份有限公司 通信方法、装置及系统
CN113037516B (zh) * 2021-04-06 2022-07-22 北京集创北方科技股份有限公司 通信方法、装置及系统
CN114967570A (zh) * 2022-07-27 2022-08-30 深圳市汤诚科技有限公司 一种i2c从机地址可编程控制电路结构及控制方法

Similar Documents

Publication Publication Date Title
CN105812392A (zh) 一种应用于电池监控芯片的级联spi通信系统及通信方法
CN205657711U (zh) 一种应用于电池监控芯片的级联spi通信系统
CN104239090B (zh) 一种基于fpga的卫星星务计算机在轨重构系统及方法
CN104577227B (zh) 一种电池均衡电路及控制系统
CN203218911U (zh) 电池模块管理系统
CN103500154B (zh) 一种串行总线接口芯片、串行总线传输系统及方法
CN201418086Y (zh) 星载设备用的数据通信协议控制器
CN105117236B (zh) 一种自动校验的编程烧写方法
CN102609376B (zh) 一种串行总线存储器、串行总线传输系统及方法
CN105224493B (zh) 一种可通过用户输入输出端口完成fpga重配的配置电路
CN104553852A (zh) 一种电动汽车电池管理系统混合通信系统
CN105931670A (zh) 基于Nand Flash存储器阵列的存储控制装置
CN106772093A (zh) 电池组采样系统及电池管理系统
JP7207792B2 (ja) バッテリー制御システム、バッテリーパック、電気車両、及びバッテリー制御システムのためのid設定方法
CN100593163C (zh) 用于连接串口或通用串行总线架构接口装置
CN110154827A (zh) 电池电子部件及具有其的新能源汽车
CN204243155U (zh) 一种集中式电池管理系统架构
CN106329600B (zh) 电池管理模拟前端、电池管理系统及方法
CN107317059B (zh) 电池保护芯片级联的均衡控制电路
CN107437640A (zh) 电池管理系统及电池管理系统的通讯方法
CN204760040U (zh) 一种串口烧录器
CN206977467U (zh) Can串口服务器和电动汽车无线数据通信系统
CN114443550A (zh) 用于电池监测的双线菊花链信号传输系统及传输方法
CN101375339B (zh) 用于级联存储器的方法及设备
CN106126459B (zh) 一种基于cpld的io数据采集卡及其数据采集方法

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20160727