技术领域
[0001] 本发明涉及车辆控制技术,尤其涉及一种WTB控制器。
相关背景技术
[0002] 绞线式列车总线(Wire Train Bus,简称WTB)是一种广泛应用于需要动态编组的列车车辆的通信总线,能够在列车车辆的配置发生变化后,自动对车辆进行编组,构成新的车辆拓扑结构。按照国际标准IEC61375的规定,列车通信网络包括WTB控制器在内的五类设备,其中,WTB控制器作为核心控制设备,控制WTB总线上的数据收发。随着通信技术的进步,国际标准IEC61375不断更新,为了满足WTB总线的应用需求,必须对WTB控制器进行升级。
[0003] 目前,现有的列车通信网络主要采用现场可编程门阵列(Field Programmable Gate Array,简称FPGA)作为WTB控制器。由于FPGA的设计过程较复杂,验证流程较繁琐,因此,对WTB控制器的设计修改过程较复杂,导致产品开发周期和验证周期较长,严重影响了列车通信网络的更新速度。
具体实施方式
[0010] 图1为本发明实施例提供的WTB控制器的结构示意图一,本实施例提供的WTB控制器可以应用在列车车辆中,与车辆控制系统通过WTB总线进行通信。如图1所示,该WTB控制器可以包括:用于执行WTB总线数据收发的数据收发器1和用于执行WTB总线数据处理的数据处理器2。数据处理器2与数据收发器1连接,数据处理器2用于配置数据收发器1的工作参数,以控制数据收发器1执行WTB总线数据收发。
[0011] 其中,数据收发器1的功能是执行WTB总线数据收发,可通过A1、A2、B1和B2四条通道与车辆控制系统进行WTB数据传输。数据收发器1通过WTB总线接收到WTB数据,进行解码后发送给数据处理器2。并且,数据收发器1接收到数据处理器2发来的待发送数据,进行编码生成WTB数据,通过WTB总线发送出去。
[0012] 而数据处理器2接收到数据收发器1发来的解码后的数据,对该数据进行存储和处理,然后生成待发送数据发送给数据收发器1。
[0013] 本实施例提供的技术方案将现有技术中FPGA的工作内容拆分成两部分,分别由数据收发器1和数据处理器2来完成,能够降低现有的WTB控制器的设计难度,解决WTB控制器设计修改过程较复杂的问题,缩短WTB控制器的开发周期。
[0014] 下面,对上述技术方案进行详细的举例说明:数据处理器2可以包括可编程逻辑器件和编解码器,其中,编解码器的一端与WTB总线数据线连接,另一端与可编程逻辑器件连接,编解码器用于将WTB总线发来的数据进行解码,并提供给可编程逻辑器件,以及将可编程逻辑器件发送的数据进行编码,并发送至所述WTB总线。
[0015] 可编程逻辑器件可以为FPGA或复杂可编程逻辑器件(Complex Programmable Logic Device,简称CPLD),由于FPGA的数据处理速度较快,其实时性较高,因此,本实施例采用FPGA来执行WTB总线数据收发。另外,采用编解码器用于对WTB总线数据进行解码和对待发送数据进行编码。编解码器和可编程逻辑器件的连接关系可参照图2所示,图2为本发明实施例提供的WTB控制器的结构示意图二。
[0016] 具体的,可选用型号为XILINX XC6SLX9-2FT256T的FPGA器件,选用两个相同的双通道编解码器,可对四个通道的WTB数据进行编码和解码,可以称之为第一编解码器(A通道编解码器)和第二编解码器(B通道编解码器)。其中,第一编解码器的WTB数据传送引脚A1X和A1Y分别与A1通道数据线连接,A2X和A2Y引脚分别与A2通道数据线连接。另外,第一编解码器的引脚A_OUT_1-、A_OUT_1+、A_OUT_2-和A_OUT_2+分别与FPGA的对应引脚连接,用于接收两个通道的待发送数据,然后,第一编解码器对待发送数据进行编码,生成WTB数据发送出去。第一编解码器的引脚A_IN_1和A_IN_2与FPGA的对应引脚连接,用于将解码后的WTB数据发送给FPGA。
[0017] 与第一编解码器类似,第二编解码器的WTB数据传送引脚B1X和B1Y分别与B1通道数据线连接,B2X和B2Y引脚分别与B2通道数据线连接。另外,第二编解码器的引脚B_OUT_1-、B_OUT_1+、B_OUT_2-和B_OUT_2+分别与FPGA的对应引脚连接,用于接收两个通道的待发送数据,然后,第二编解码器对待发送数据进行编码,生成WTB数据发送出去。第二编解码器的引脚B_IN_1和B_IN_2与FPGA的对应引脚连接,用于将解码后的WTB数据发送给FPGA。
[0018] 上述数据收发器1的主要功能为对解码后的WTB总线数据进行处理,以及对数据收发器1的工作参数进行配置。因此,数据收发器1可采用设计方式较简单、验证周期较短的电路结构来实现,在国际标准IEC61375更新后,能够迅速简便地修改数据收发器1的结构和功能,即可实现升级WTB控制器。基于数据收发器1的上述功能,本领域技术人员可设计多种电路结构来实现,本实施例提供一种可实现的方式:采用现有技术中常用的微处理器作为数据处理器2,例如Cortex M3处理器,可采用串行通信方式与FPGA进行数据交互。
[0019] 具体的,以Atmel SAM3U4E Cortex M3处理器为例,其MOSI引脚与FPGA的对应引脚连接,用于通过串行外设接口(Serial Peripheral Interface,简称SPI)总线进行数据传输。在对WTB控制器进行设计升级的过程中,可以修改FPGA的工作参数,并存储于Cortex M3处理器内部的存储器中。之后,在Cortex M3处理器上电后,通过SPI总线将工作参数发送给FPGA,以实现对FPGA的配置,具体可根据SPI总线的通信协议将工作参数以报文的方式发送至FPGA。
[0020] 另外,上述Cortex M3处理器中的INT0#引脚与FPGA的对应引脚连接,用于通过该引脚实现FPGA向Cortex M3处理器发送中断申请,若Cortex M3处理器响应该中断,则可以通过SPI总线读取解码后的WTB总线数据。
[0021] Cortex M3处理器中的PIO引脚与FPGA中对应的IO引脚连接,用于通过该引脚实现FPGA向Cortex M3处理器发送工作参数配置完成响应信号。
[0022] 上述WTB控制器的升级和运行过程为:
[0023] 在升级阶段,技术人员设定FPGA的工作参数和Cortex M3处理器的数据处理算法,并由Cortex M3处理器写入到存储器中。
[0024] 在上电初始阶段,Cortex M3处理器完成上电自检和初始化,从存储器中读取FPGA的工作参数,通过SPI总线将该工作参数发送给FPGA。FPGA通过IO引脚向Cortex M3处理器反馈工作参数配置过程。当Cortex M3处理器得知FPGA配置完成后,则进入运行阶段。
[0025] 在运行阶段中,WTB总线数据的接收过程为:编解码器接收四个通道的串行曼彻斯特编码的WTB总线数据,进行解码转换为并行数据,并将解码后的WTB总线数据发送给FPGA。FPGA接收到解码后的WTB总线数据,存储在接收缓冲存储单元中,并向Cortex M3处理器发送中断请求信号。Cortex M3处理器响应该中断请求,通过SPI总线读取解码后的WTB总线数据,并进行数据解析和处理。具体的解析和处理过程可参照现有技术中对WTB总线数据进行解析和处理的具体方式。
[0026] 在运行阶段中,WTB总线数据的发送过程为:Cortex M3处理器将待发送的数据通过SPI总线发送至FPGA的发送缓冲存储单元中,以指示FPGA发送数据。FPGA将发送缓冲存储单元中的并行数据进行编码,生成串行的曼彻斯特编码的WTB数据,通过四个通道发送至WTB总线上。
[0027] 类似的,本领域技术人员也可以采用其它微处理器作为上述数据处理器2,例如ARM系列单片机或PowerPC系列微处理器等,并根据具体选用的器件型号进行实际的线路连接,用于配置数据收发器1的工作参数以及对WTB总线数据进行解析和处理。
[0028] 上述技术方案采用数据处理器和数据收发器相结合的方式,其中,数据处理器主要用于配置数据收发器的工作参数以及对WTB总线数据进行解析和处理,数据收发器主要用于接收WTB总线数据并进行解码,以及将待发送数据进行编码并发送至WTB总线,在WTB控制器需要升级时,仅修改数据处理器的各项运行参数进行修改即可,其设计过程较简单,解决了现有的WTB控制器设计修改过程较复杂的问题,能够实现缩短WTB控制器的开发周期。
[0029] 由于Cortex M3处理器具有处理速度快、功耗低、开发简单以及维护方便等优点,若采用上述实施例中的Cortex M3处理器和FPGA相结合的方式,则该WTB控制器为模块化结构,具有实时性高,设计及维护较便捷的优点。
[0030] 本领域技术人员可以理解的是,为了提高WTB控制器的稳定性和可靠性,可以参照现有技术中的技术方案,对上述FPGA也设置有具备控制WTB总线数据传输和解析处理的全部功能,以在数据处理器发生故障时作为冗余控制。
[0031] 在上述技术方案的基础上,若数据处理器2内部的存储器空间较小,则可以外接存储器,该存储器与数据处理器2连接,用于存储数据处理器2的运行数据及WTB总线数据。
[0032] 具体的,该存储器可以包括:用于存储数据处理器2运行程序的程序存储器31、用于存储数据收发器1工作参数的配置存储器32、用于存储WTB总线数据的数据存储器33、以及用于存储数据处理器2接收到的WTB数据的通信存储器34。
[0033] 数据处理器2通过地址总线和数据总线与各存储器连接,实现读写数据,四个存储器分别从地址总线和数据总线上读取数据以及发送数据。以Cortex M3处理器为例,Cortex M3处理器的地址线为20位,数据线为16位,可以并行传送16位数据。Cortex M3处理器中的四个片选引脚CS0、CS1、CS2和CS3分别与四个存储器中的对应片选引脚连接,用于选定与哪个存储器进行数据读写。Cortex M3处理器中的读控制信号引脚RD#分别与四个存储器的引脚OE#连接,用于向对应的存储器发送读数据指令。Cortex M3处理器中的写控制信号引脚WR#分别与四个存储器的引脚WE#连接,用于向对应的存储器发送写数据指令。
[0034] 上述技术方案采用数据处理器和数据收发器相结合的方式,其中,数据处理器主要用于配置数据收发器的工作参数以及对WTB总线数据进行解析和处理,数据收发器主要用于接收WTB总线数据并进行解码,以及将待发送数据进行编码并发送至WTB总线,在WTB控制器需要升级时,仅修改数据处理器的各项运行参数进行修改即可,其设计过程较简单,解决了现有的WTB控制器设计修改过程较复杂的问题,能够实现缩短WTB控制器的开发周期。并采用四个存储器分别存储WTB控制器运行过程中的各参数,除了具备增加存储空间的功能之外,还能够提升WTB控制器的处理速度,降低了WTB控制器升级的复杂程度。
[0035] 最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。