一种基于PicoBlaze的MVB控制器的制造方法

文档序号:6293491阅读:223来源:国知局
一种基于PicoBlaze的MVB控制器的制造方法
【专利摘要】本发明公开了一种基于PicoBlaze的MVB控制器,属于轨道列车通信领域。本发明包括pMVB控制器,通信存储器,ARM适配器,总线仲裁器;其中,pMVB控制器、通信存储器、ARM适配器、总线仲裁器分别与外部总线BUS1连接;pMVB控制器与通信存储器通过数据线连接,ARM适配器分别与外部ARM处理器、总线仲裁器连接;通信存储器用于存储网络通信数据和输入的控制信息,并将其发送给pMVB控制器;pMVB控制器用于响应控制信息,并对通信数据进行数据编码后经外部总线BUS1发送至MVB总线上;同时对收到的pMVB总线数据进行解码并触发中断;总线仲裁器负责根据pMVB控制器发送的指令进行总线仲裁工作。
【专利说明】—种基于PicoBIaze的MVB控制器
【技术领域】
[0001 ] 本发明涉及一种基于PicoBlaze的MVB控制器,属于轨道列车通信领域,是一种研发符合TCN网络通信标准的通信设备核心部件。
【背景技术】
[0002]MVBC (多功能车辆总线控制器)是MVB总线上的新一代核心处理器,它独立于物理层和功能设备,为在总线上的各个设备提供通讯接口和通讯服务。
[0003]现有基于TCN网络的车辆通信设备主要是MVB网卡等设备,其内部都采用西门子的MVBCSl芯片(MVB控制器)或者通过Verilog编写MVBC控制逻辑实现,西门子MVBCSl芯片由于受国外行业垄断,国内没有相关的专用芯片,而通过Verilog编写MVBC控制逻辑又过于复杂,且实时性和可靠性因人而异,无法得到保障。
[0004]目前同类产品主要存在以下不足之处:(I)受制于国外技术的垄断,没有核心技术,无法真正实现相关产品国产化;(2)开发难度大,对于采用软件实现方式,控制逻辑较为复杂,且开发难度较大;(3)处理效率低,采用Verilog实现MVBC控制逻辑的运行效率远远低于采用芯片的处理效率。

【发明内容】

[0005]针对现有技术中存在的上述技术问题,本发明的目的在于提供一种基于PicoBlaze 的 MVB 控制器,其主要由 pMVBControler、AMRAdapter、Traffic Memory>BusArbiter四大模块组成,如图1所示。
[0006]本发明的技术方案为:
[0007]一种基于PicoBlaze的MVB控制器,其特征在于包括pMVB控制器,通信存储器,ARM适配器,总线仲裁器;其中,所述pMVB控制器、通信存储器、ARM适配器、总线仲裁器分别与外部总线BUSl连接;所述pMVB控制器与通信存储器通过数据线连接,所述ARM适配器分别与外部ARM处理器、所述总线仲裁器连接;
[0008]所述通信存储器用于存储网络通信数据和输入的控制信息,并将其发送给所述PMVB控制器;
[0009]所述pMVB控制器用于响应所述控制信息,并对所述通信数据进行数据编码后经外部总线BUSl发送至MVB总线上;同时所述pMVB控制器对收到的MVB总线数据进行解码并触发中断,进行相应的中断处理;
[0010]所述总线仲裁器负责根据所述pMVB控制器发送的指令进行总线仲裁工作,以及保证同一时间只有一个处理器能访问所述通信存储器;
[0011]所述ARM适配器作为所述外部ARM处理器访问所述通信存储器的代理,并且响应所述总线仲裁器的仲裁分配。
[0012]所述pMVB控制器包括片内处理器PicoBlaze,总线控制器,远程调用中断生成器,数据交换区DRAM,编码器,解码器,中断控制器,定时器;所述定时器与内部总线BUSO及所述中断控制器相连,所述数据交换区DRAM分别与内部总线BUSO和外部总线BUSl相连,所述远程调用中断生成器与内部总线BUSO连接;其中,
[0013]所述片内处理器PicoBlaze与所述总线控制器数据连接,用于根据输入的控制信息对总线控制器内部的状态或控制指令数据进行处理,并响应来自内部中断控制器产生的中断信号,执行中断处理;
[0014]所述总线控制器与内部总线BUSO和外部总线BUSl连接,用于对片内处理器PicoBlaze及内部总线BUSO和外部总线BUSl进行管理,即切换片内处理器PicoBlaze和外部ARM处理器对内部总线BUSO和外部总线BUSl的控制权;
[0015]所述远程调用中断生成器用于控制通信存储器和外部ARM处理器的通信;
[0016]所述编码器与内部总线BUSO相连,用于对MVB数据进行曼彻斯特编码;
[0017]所述解码器与内部总线BUSO及中断控制器相连,用于对MVB数据进行解码并触发生成中断控制信号;
[0018]所述中断控制器与所述片内处理器PicoBlaze相连,用于向所述片内处理器PicoBlaze上报中断控制信号。
[0019]所述pMVB控制器还包括一用于片内处理器PicoBlaze运行的缓存器RAM,其中缓存器RAM与内部总线BUSO连接。
[0020]所述片内处理器PicoBlaze为Xilinx的8位PicoBlaze处理器。
[0021]所述通信存储器针对Source使用Page机制,针对Sink使用Disable机制。
[0022]如图1所示,pMVBControler(pMVB控制器,即微型车辆总线控制器核,是MVB控制器的核心)与Traffic Memory相连,负责对MVB数据进行编解码的处理,以及外部ARM处理器与Traffic Memory (通信存储器)之间的通信等相关控制,控制信息一般由用户输入;Traffic Memory (通信存储器)用于存储网络通信的数据和外部输入的控制信息,分别与pMVBControler (pMVB控制器)连接、以及与外部总线BUSl连接,通信存储器通过与BUSl总线连接的AMRAdapter (ARM适配器)与外部ARM处理器进行数据交互;AMRAdapter (ARM适配器)与外部ARM处理器相连,作为外部ARM处理器访问Traffic Memory (通信存储器)的代理,并且响应BUSArbiter (总线仲裁器)的仲裁分配;BusArbiter (总线仲裁器)与BUSl总线(即外部总线)及AMRAdapter (ARM适配器)相连,负责总线仲裁工作,BusArbiter保证同一时间只有一个处理器能访问TrafficMemory。
[0023]本发明的pMVB控制器结构图如图2所示,所述pMVBControler (pMVB控制器)模块包含Xilinx的8位片内处理器PicoBlaze,总线控制器PicoBusC,用于和外部ARM处理器通信的远程调用中断生成器InterruptGen和数据交换区DRAM,还包含MVB总线相关的编码器Encoder、解码器Decoder、中断控制器InterruptC, PicoBlaze的程序运行区RAM。其中所述PicoBlaze处理器与PicoBusC控制器相连,PicoBlaze处理器根据用户输入的控制信息对总线控制器PicoBusC内部的状态或控制指令数据进行处理,并响应来自中断控制器InterruptC产生的中断信号,执行中断处理;所述PicoBusC控制器与片内处理器PicoBlaze及内部总线(BUSO)、外部总线(BUSl)相连,对片内处理器及内部总线(BUSO)、外部总线(BUSl)进行管理,即总线控制权的切换;所述数据交换区DRAM和远程调用中断生成器InterruptGen分别与内部总线(BUSO)相连,远程调用中断生成器InterruptGen用于控制通信存储器和外部ARM处理器进行通信;所述编码器Encoder与内部总线相连,用于对MVB数据进行曼彻斯特编码;所述解码器与内部总线及中断控制器相连,用于对MVB数据进行解码并触发中断。所述定时器Timer与内部总线及中断控制器InterruptC相连;所述中断控制器InterruptC与片内处理器PicoBlaze相连,用于中断响应;所述RAM用于片内处理器PicoBlaze程序的运行。
[0024]总线控制器PicoBusC根据片内处理器PicoBlaze发送的指令控制片外和片内总线(即BUS0&BUS1总线),用户将控制信息和通信数据通过TM (Traffic Memory通信存储器)传输给pMVBControler (pMVB控制器),pMVB控制器(pMVBControler)根据控制信息进行相应的处理,以及将通信数据写入编码器Encoder进行数据编码,编码完成后将数据经BUSl总线发送至MVB总线上;同时,pMVB控制器监控MVB总线,将收到的MVB总线数据通过解码器Decoder进行解码,并触发中断,通过内部中断控制器InterruptC向片内处理器PicoBlaze上报中断控制信号,然后片内处理器PicoBlaze进入相应的中断处理程序进行相关数据处理。
[0025]PicoBlaze处理器连接PicoBusC控制器。内部的模块挂在内部的8位总线上,通过PicoBusC控制器统一管理。外部的总线连接PicoBusC,使得在调试的时候外部的ARM处理器可以获取内部总线的信息,由于外部ARM处理器不是本设计的创新点,所以这里不再详述。
[0026]传统的MVB控制器使用Verilog开发,这个会导致项目的规模过大,状态机跳转复杂,不利于理解和维护。MVB控制器也有单独用处理器开发,但是由于没有硬件加速模块(编解码器),导致实时响应的性能不行。本发明将传统的Verilog逻辑开发分割为Verilog逻辑开发和PicoBlaze软件开发两部分,将对实时性要求高的编解码器用Verilog实现,将复杂的状态机用软件 实现,这样减小了 MVB控制器开发的难度;针对传统的单一处理器,由于有pMVBControler模块,提升了处理性能和实时性。
[0027]与现有技术相比,本发明具有以下优点:
[0028]本发明大大减小用户对于TCN网络通信设备的开发难度和周期,节省成本;运行效率高,具有较高实时性和可靠性;打破国外技术垄断,实现核心技术国产化。本发明适用于列车通信网络控制、管理,也适用于轨道列车或工业自动化领域。
【专利附图】

【附图说明】
[0029]图1为MVB控制器模块框架图;
[0030]图2为pMVB控制器结构图。
【具体实施方式】
[0031]各个模块的介绍:
[0032]?片内 PicoBlaze3 处理器
[0033]采用Xilinx的PicoBlaze3处理器,用于MVB总线数据的控制和处理。
[0034]# ARMAdapter
[0035]ARMAdapter是ARM的适配器,内部包含了一个InterruptC,可以复用中断I (即给外部处理器的中断)支持向量和掩码。同时访问TM需要请求BUSArbiter,请求的时机为ARM的RE/WE的下降沿。[0036].InterruptC内部中断控制器
[0037]内部中断控制器支持16个输入信号与片内处理器PicoBlaze、解码器及定时器相连。
[0038].InterruptGen远程调用中断生成器
[0039]用于触发片外ARM7TDMI处理器中断。
[0040].PicoBusC总线控制器
[0041]PicoBusC用于8bit地址总线(8位直接访问模式)、20bit地址总线(DMA模式)的切换,而通过DBGIO可以切换总线的控制权为片内处理器PicoBlaze和外部ARM处理器。
[0042].BUS0&BUS1 总线
[0043]BUSO是连接pMVBControler (pMVB控制器)内部模块的总线,BUSl是连接TrafficeMemory的总线、用于内部和外部总线数据的交互。
[0044]# BUSArbiter 仲裁器
[0045]总线仲裁器仲裁对TM的访问权限,因为内部的时序比较稳定,所以BUSArbiter直接使用组合逻辑产生判断信号。比如根据优先级(组合逻辑)进行判断,产生判断信号。
[0046]ARM不能直接访问TM,而是要使用ARMAdapter,这样就可以由仲裁器控制。同时DMA的实现必须允许“暂停”的功能。
[0047]# Timer 定时器
[0048]用于巾贞和周期的定时器,与InterruptC中断控制器相连
[0049]# Encoder 编码器
[0050]曼彻斯特编码器,与内部总线相连。
[0051]# Decoder 解码器
[0052]曼彻斯特解码器,与InterruptC中断控制器相连。
[0053]# Traffic Memory 通信存储器(TM)
[0054]TM总共可以寻址并使用的范围是2Mb,目前尽可能只用低地址的IMb空间。并且针对过程数据源端口(Source)使用Page机制(即内存分页机制),针对过程数据宿端口(Sink)使用禁用机制,即Disable机制(同样是Page机制,只不过ARM将Page置位就相当于禁用了)。与pMVBControler (pMVB控制器)及内部总线BUSO相连。
[0055].DRAM&RAM:
[0056]DRAM地址0x00_0x5F可以被TM访问,用于片内处理器PicoBlaze与外部ARM处理器之间的交互,与外部总线(BUSl)及内部总线相连(BUSO)。
[0057]RAM地址0x60_x7F只能被PicoBlaze访问,用于缓存数据,与内部总线(BUSO)相连。
【权利要求】
1.一种基于PicoBlaze的MVB控制器,其特征在于包括pMVB控制器,通信存储器,ARM适配器,总线仲裁器;其中,所述PMVB控制器、通信存储器、ARM适配器、总线仲裁器分别与外部总线BUSl连接;所述pMVB控制器与通信存储器通过数据线连接,所述ARM适配器分别与外部ARM处理器、所述总线仲裁器连接; 所述通信存储器用于存储网络通信数据和输入的控制信息,并将其发送给所述PMVB控制器; 所述pMVB控制器用于响应所述控制信息,并对所述通信数据进行数据编码后经外部总线BUSl发送至MVB总线上;同时所述pMVB控制器对收到的MVB总线数据进行解码并触发中断,进行相应的中断处理; 所述总线仲裁器负责根据所述PMVB控制器发送的指令进行总线仲裁工作,以及保证同一时间只有一个处理器能访问所述通信存储器; 所述ARM适配器作为所述外部ARM处理器访问所述通信存储器的代理,并且响应所述总线仲裁器的仲裁分配。
2.如权利要求1所述的MVB控制器,其特征在于所述pMVB控制器包括片内处理器PicoBlaze,总线控制器,远程调用中断生成器,数据交换区DRAM,编码器,解码器,中断控制器,定时器;所述定时器与内部总线BUSO及所述中断控制器相连,所述数据交换区DRAM分别与内部总线BUSO和外部总线BUSl相连,所述远程调用中断生成器与内部总线BUSO连接;其中, 所述片内处理器PicoBlaze与所述总线控制器数据连接,用于根据输入的控制信息对总线控制器内部的状态或控制指令数据进行处理,并响应来自内部中断控制器产生的中断信号,执行中断处理; 所述总线控制器与内部总线BUSO和外部总线BUSl连接,用于对片内处理器PicoBlaze及内部总线BUSO和外部总线BUSl进行管理,即切换片内处理器PicoBlaze和外部ARM处理器对内部总线BUSO和外部总线BUSl的控制权; 所述远程调用中断生成器用于控制通信存储器和外部ARM处理器的通信; 所述编码器与内部总线BUSO相连,用于对MVB数据进行曼彻斯特编码; 所述解码器与内部总线BUSO及中断控制器相连,用于对MVB数据进行解码并触发生成中断控制信号; 所述中断控制器与所述片内处理器PicoBlaze相连,用于向所述片内处理器PicoBlaze上报中断控制信号。
3.如权利要求2所述的MVB控制器,其特征在于所述pMVB控制器还包括一用于片内处理器PicoBlaze运行的缓存器RAM,其中缓存器RAM与内部总线BUSO连接。
4.如权利要求2所述的MVB控制器,其特征在于所述片内处理器PicoBlaze为Xilinx的8位PicoBlaze处理器。
5.如权利要求1或2所述的MVB控制器,其特征在于所述通信存储器针对过程数据源端口使用Page机制,针对过程数据宿端口使用Disable机制。
【文档编号】G05B19/418GK103728928SQ201210385096
【公开日】2014年4月16日 申请日期:2012年10月11日 优先权日:2012年10月11日
【发明者】李明树, 赵琛, 武斌, 包瑜亮, 郭亮, 刘立宇, 侯玮玮, 于佳晨 申请人:中国科学院软件研究所
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1