基于ARM处理器的MVB 2类设备研究

发布者:甜美瞬间最新更新时间:2011-07-09 关键字:软件无线电  虚拟仪器  DSP  MODEM 手机看文章 扫描二维码
随时随地手机看文章

  1引 言

  列车需要传输大量的设备控制和旅客服务信息,随着这些信息的数量和种类不断地增长,迫切需要一种大容量,高速度的信息传输系统。为此,国际电工委员会(IEC)制定了一项用于规范车载设备数据通信的标准——IEC61375(列车通信网标准),即TCN标准,该标准于1999年6月成为国际标准。目前国际上主要的TCN产品供应商是德国西门子和瑞士Duagon公司,国内的株洲电力机车研究所和大连北车集团电力牵引研究所等单位进行了大量的TCN相关研究工作并取得了丰硕的科研成果。

  TCN标准推荐在机车上层使用绞线式列车总线WTB,在下层使用多功能车辆总线MVB。MVB总线和机车中的各种电气设备相连,这些设备按性能可以分为5类,其中二类设备的主要特征是具有消息数据通信的功能。为了实现消息数据通信,需要在实时操作系统的支持下采用软件编程,利用应用程序接口API等接口来调用网络协议的各种功能,从而实现消息数据的通信。MVB 2类设备硬件核心采用ARM7内核微处理器NET+50作为主CPU实现系统的总体控制,采用MVBC01芯片作为MVB通信控制器实现链路层的数据处理,软件核心采用嵌入式实时操作系统Nucleus Plus来实现任务管理、中断管理等上层管理。

  2 MVB 2类设备系统硬件设计

  硬件系统设计主要包括应用处理器模块、通信存储器模块、通信控制器模块、存储器模块、PC104接口模块、物理层接口模块等几部分的设计,其中核心模块是ARM处理器和MVB通信控制器MVBC01。系统硬件设计框图如图1所示。

基于ARM处理器的MVB 2类设备研究

  系统硬件各部分电路的功能和设计方法如下:

  2.1 应用处理器模块

  应用处理器采用ARM核微处理器NET+50作为核心处理器。NET十50由Netsilicon公司生产,属于ARM7系列。NET+50处理器包括一个ARM7TDMI核,32位内部总线,支持所有SRAM,SDRAM,FLASH,E2PROM,有40个可编程I/O接口引脚,16个输入接口引脚,36个可编程中断,2个完全独立的HDLC/UART/SPI串行口以及完整的以太网控制器。

  2.2 存储器模块

  存储器模块为ARM处理器NET+50正常工作时提供所需的程序存贮空间,内存空间和数据存储空间。NET+50集成了内存控制器模块(Memory Controller Mod-ule),为存储设备提供无缝连接,系统通过配置内存控制器模块的控制寄存器和片选CS控制寄存器来实现访问相应存储器的信号和逻辑。

  本设计中选用大小为16 MB的高速SDRAM为系统提供内存服务,选用大小为512 kB的NVRAM为系统提供数据存储空间,选用大小为4 MB的FLASH为系统提供程序存储空间。使用ARM处理器的地址线、数据线以及相应的片选、读/写、时钟线完成对存储器的寻址。

  2.3 通信控制器模块

  通信控制器MVBC是MVB总线上的新一代核心处理器,他独立于物理层和功能设备,为在总线上的各个设备提供通讯接口和通讯服务,可通过配置应用在符合TCN标准的1,2,3,4类设备中。MVBC把来自于MVB总线的串行化信号转换为并行的数据字节,也把需发送的字节交由串行化电路发送到传输介质上。MVBC可实现数据链路层以及一部分传输层的数据处理,并通过通讯存储器来与上层软件交互。

  本系统中MVB通信控制器采用MVBC01 ASIC专用芯片,符合IEC61375-1国际标准。MVBC01专用芯片采用16位数据总线,提供了丰富的接口控制信号,简化了与各种宿主CPU以及通信存储器的接口设计,支持MVB协议中链路层及以下的功能。[page]

  2.4 通信存储器模块

  通信存储器地址空间保存MVBC01的所有数据和信息,既可以被MVBC01访问又可以被ARM处理器访问。本系统中采用两片512 kB大小的SRAM cy62148扩展成1 MB的寻址空间。通信存储器的寻址空间划分为4部分,分别为Logical AddreSS Space(LA),Device AddressSpace(DA),Service Area(1 kB)和Miscellany。

  通信存储器分别通过数据线,地址线和ARM处理器以及MVBC01相连,从而实现数据交换和地址寻址,ARM处理器、MVBC01和通信存储器的连接示意图如图2所示。

基于ARM处理器的MVB 2类设备研究

  MVBC01内部集成Traffic Memory Controller(TMC)模块,负责控制通信存储器的访问模式,TMC与仲裁控制器和逻辑地址密切相关。TMC模块负责控制3种存储器访问模式,分别是:ARM CPU访问通信存储器;ARM CPU访问MVBC内部寄存器;MVBC01访问通信存储器。TMC模块还对ARM处理器和MVBC同时访问通信存储器所产生的访问冲突做出仲裁。

  2.5 MVB物理层接口电路模块

  物理层接口电路模块的设计如图3所示。物理层接口采用电气短距离介质ESD+接口,系统信号通道使用光耦实现主系统与外界得电隔离以提高系统可靠性,使用RS 485芯片作为收发器,并使用过压保护模块来防止瞬问过压对器件的损坏。

基于ARM处理器的MVB 2类设备研究

  图3所示的MVBC端口ICA(MVB Input Data Chan-nel A)和ICB(MVB Input Data Channel B)分别为MVB输入数据通道A和输入数据通道B,来自物理层收发器的MVB信号由此端口送入MVB通信控制器MVBC01中;MVBC端口OC(MVB Output Data Channel)是MVB数据输出端口,数据经由此端口将发送至物理层收发器;MVBC端口SF(Send Frame)为输出端口,输出信号可作为物理层的使能信号,该信号有效时表示一个报文正在通过MVBC端口OC(MVB Output Data Channel)输出。

  2.6 其他

  在MVB设备正常运行时,可以通过RS 485/RS 232通信接口进行程序的监控和调试。系统可以通过跳线选择RS 485/RS 232接口是工作在RS 485还是RS 232下。

  其他还有诸如看门狗、JTAG接口、时钟、电源、PC104接口等模块,本文不再详述。

  3 系统软件设计

  3.1 系统软件体系结构

  MVB 2类设备软件体系采用典型的嵌入式软件体系结构,包括驱动层、操作系统层、应用软件层,其中操作系统层是软件体系的核心。系统的软件结构如图4所示。

基于ARM处理器的MVB 2类设备研究

  系统软件结构各部分功能如下:

  3.1.1 驱动层

  驱动层是直接和硬件相联系的一层,他对操作系统和应用提供所需的驱动支持。该层主要包括3种类型的程序:板级支持BSP、系统级驱动和应用级驱动。

  板级支持BSP 在用户的应用程序启动之前,完成对系统的初始化必须有专门的一段启动代码,即板级支持BSP。板级支持BSP介于物理硬件和实时操作系统之间,在系统上电后,初始化系统的硬件环境,包括初始化ARM处理器、初始化中断控制器、初始化存储器、初始化堆栈等。NucleusPlus操作系统的BSP初始化程序流程如图5所示。

基于ARM处理器的MVB 2类设备研究

  系统级驱动 与系统软件相关的驱动,这类驱动是操作系统和中间件等系统软件所需的驱动程序,他们的开发要按照系统软件的要求进行。

  应用级驱动 与应用程序相关的驱动,和操作系统无关,由应用决定。

  3.1.2 操作系统层

  操作系统层足嵌入式软件的核心,是系统的软件支持平台。主要包括实时操作系统内核、文件系统、电源管理、嵌入式GUI系统、嵌入式网络系统。其中嵌入式内核是基础和必备的部分,主要完成任务调度、内存管理、任务间通信、任务的同步与互斥、中断管理、定时器等功能。本系统采用Nucleus Plus嵌入式操作系统,能完全满足MVB对于实时性、可靠性、完整性和有效性的要求。NucleusPlus采用了软件组件的方法,每个组件具有单一而明确的目的,包括任务控制管理、内存控制管理、定时器管理、中断、系统诊断、I/O驱动管理等16个组件。

  3.1.3 应用软件层

  应用软件层主要由多个相对独立的应用任务组成,每个应用完成一个特定的工作,这里主要包括MVB协议栈软件。MVB协议栈软件在实时操作系统内核的支持下,通过MVB驱动模块完成MVB网络数据通信任务。用户应用可以利用MVB协议栈的接口函数访问需要的数据集,并利用收到或者发送的数据进行相应的控制或其他数据处理工作。

  3.2 实时协议

  每个网络都要有与之相应的网络软件在其上运行,这些软件被称为协议。在互联网上运行的协议我们称之为TCP/IP协议,在列车通信网上运行的类似TCP/IP的协议我们称之为实时协议(Real Time Protocol,RTP),实时协议为一个应用与另一个应用在列车通信网上的通信提供协议和服务。

  实时协议分层结构如图6所示。由图中的分层结构可知MVB实时协议包括过程变量通讯和消息数据通讯两部分。由图可知变量的协议和服务包括过程数据链路层接口(LPI)和变量的应用层接口(AVI)。消息协议和服务包括消息数据链路层接口(LMI)、网络层、传送层、会话层、应用层接口(AMI)。其中链路层接口又称为低层接口,他规定来自总线的服务,应用层接口又称为高层接口,他规定提供给应用的应用层接口。

基于ARM处理器的MVB 2类设备研究

  3.3 消息通信机制及其实现

  MVB 2类设备的主要特征是实现消息数据的发送和接收。消息通信中实时协议是由信使执行的,他是作为独立的进程与应用并行运行。实时协议的网络层、传输层、会话层、表示层是由信使来执行并实现的,信使与应用层有一个消息应用层接口(AMI),通过这个接口应用可以调用信使的服务。同时信使与链路层也有一个接口:消息链路层接口(LMI),链路层通过这个接口向信使提供服务。在编程实现消息通信时,只需要使用消息应用层接口。

  用户开发程序来实现消息通信,就是使用消息应用层接口中的接口函数来调用信使的各项功能,实现消息通信的应用程序就是按照这个顺序编写和执行的。消息数据的实现程序的流程如图7所示。

基于ARM处理器的MVB 2类设备研究

  4 结 语

  使用符合TCN标准的产品是开发下一代新式列车的重要发展趋势,本文通过对IEC61375-1列车通讯网络标准的研究,提出了MVB 2类设备软硬件的设计方案并完成了系统硬件各功能模块设计和上层软件的部分设计,对MVB实时协议RTP和消息通信的机制也做了深入的研究,并给出了消息通信的编程实现方法。通过对基于ARM处理器的MVB 2类设备的深入研究和功能设计实现,不但为以后开发更高类别的MVB设备积累了经验,而且为进一步自主开发其他符合TCN标准的MVB产品提供了借鉴。

关键字:软件无线电  虚拟仪器  DSP  MODEM 引用地址:基于ARM处理器的MVB 2类设备研究

上一篇:ARM体系下浮点数Middle-Endian问题的处理
下一篇:基于ARM的智能电子提花机控制系统设计

推荐阅读最新更新时间:2024-03-16 12:38

基于USB协议的DSP高速上位机接口设计
摘要:弹载信号处理机的DSP系统需要高速、简便的上位机接口实现大数据量的变量实时监控和在线程序加载功能。USB接口以其简单、高速与通用的优势成为优选。介绍一种基于USB接口芯片(CY7C68013A)和FPGA实现的ADSP-TS101扩展USB接口的设计方法,该方法利用DSP的Link-port接口,以DMA方式进行高速数据交换,目前该设计已成熟、可靠地应用于某弹载信号处理系统。 关键词:USB;DSP Linkport;PC机接口;高速数据交换 0 引言 ADI公司的DSP器件(ADSP-TS101)具有浮点实时处理能力强、并行性好等优点,从而广泛被弹载信号处理系统选用。其作为弹载主处理器,在导弹的系统试验中,需要利用
[嵌入式]
基于USB协议的<font color='red'>DSP</font>高速上位机接口设计
基于虚拟仪器的停车场车位检测引导系统
1 引言: 随着经济的发展,家用轿车的数量急剧增加,而车量数总体上都远超出现有的车位数; 但另一方面,却经常出现市内部分停车场昼夜车满为患、处于相同区位的某些停车场却长期门前冷落的 奇怪 现象。究其原因,除了停车设施类型、布局不足的客观条件和驾车者自身选择偏爱等主观因素外,不可否认一定程度上是相当数量的停车设施缺乏明显的诱导标志.没有可靠的信息渠道向驾车者提供停车资源状况所造成的。为了合理引导优化停车选择行为,调节停车供需趋于平衡,本文设计了一种快捷,安全的停车系统。系统包括停车场车位总数,空车位数量,目前最近车位等信息。随着科学技术的发展,虚拟仪器的出现使得对停车场的管理也变的简单,通过软件面板上的选择按钮,实现任意停车区的信
[测试测量]
基于<font color='red'>虚拟仪器</font>的停车场车位检测引导系统
基于DSP软件无线电基频发射机的设计与仿真
引言 软件无线电突破了传统的无线电台以功能单一、可扩展性差的硬件为核心的设计局限,强调以开放性最简硬件为通用平台,尽可能地使用可升级、可重配置的应用软件来实现各种无线电功能。用户在同一硬件平台上可以通过配置不同的应用软件来满足不同时间、不同环境下的不同功能需求,具有很强的灵活性和开放性。 DSP(数字信号处理器)凭着灵活性、精确性、稳定性、可重复性、体积小、功耗小、易于大规模集成,特别是可编程性和易于实现自适应处理等特点,给数字信号处理带来了巨大的发展机遇。 基于上述优点,用DSP实现基于软件无线电技术的基频发射机,不仅降低了产品的成本,减小了设备体积,满足系统的需要,而且随着DSP处理速度的不断提高,可将内插等复杂运算集成
[嵌入式]
DSP控制器整合马达控制和功率因数校正
随着数字信号处理器(DSP)价格从几百美元降到3美元,DSP在价格敏感的家电(如洗衣机、冰箱、加热器、通风和空调机)中正越来越多地被采用。带特殊外设的高MIPs DSP,除显著地改进这些产品性能外,还大大地简化产品设计过程并提供各种重要的特异性能。DSP非凡的处理能力,使得制造商能满足用户不断增加的要求,如较高的效率和可变速度工作及精确的速度控制特性。 低成本DSP控制器能使很多先进的马达控制算法内置在对成本非常敏感的应用中。DSP控制器的带宽也使设计人员能用一个控制器整合多种功能,如把马达控制、功率因数校正和通信协议整合在一起(见图2)。本文描述采用低成本DSP控制器的单板AC感应马达驱动(带功率因数校正和串行通信)结
[嵌入式]
基于DSP的最小图像采集处理系统设计
  引言   在以DSP为核心的视频处理系统中,视频采集的方法通常可以分为两大类:自动的视频采集和基于DSP的视频采集。前者通常采用CPLD/FPGA控制视频解码芯片,通过FIFO或者双口RAM向DSP传送数据,特点是数据采集模块独立运行,占用DSP资源少,但实现相对复杂,成本偏高;后者通常由DSP控制视频解码芯片并同步各种时序,将视频数据读入。其特点是实现相对简单,成本有所降低,但对视频解码芯片的控制较为复杂,占用DSP处理时间。   如果通过适当的逻辑电路让数字图像传感器芯片直接接入DSP,则可省去视频控制解码芯片、CPLD/FPGA、FIFO或双口RAM,在不增加DSP软件开销的情况下,大大降低系统的复杂程度和成本,缩短
[嵌入式]
一种基于功耗管理的DSP处理器设计
摘 要:一种具有功耗管理特性的DSP处理器的结构设计。该处理器采用4级流水线和增强型的哈佛并行系统结构及完善的时钟管理模块,提供了一种DSP处理器的集成设   关键词:DSP处理器 流水线 哈佛结构 低功耗   在信息日益成为一种重要资源的今天,强大的市场需求和微电子技术的发展促成了便携式电子系统的飞速发展。这些便携式电子设备,不但对速度和面积要求非常高,而且对系统的平均功耗要求也很严格,使功耗问题日渐成为制约便携式电子设备发展的瓶颈。要获得高性能低功耗的方案,其实质也就是在处理速度、芯片面积和功耗上来权衡如何满足数字信号处理系统的要求。   本文介绍了一种基于并行流水线的低功耗数字信号处理器(DSP)的系统设计,以改善
[应用]
基于DSP/FPGA的超高速跳频系统基带设计与实现
跳频通信系统作为扩频通信体制中的一种重要类型,以其出色的抗远近效应、抗干扰能力,在军用、民用通信领域得到了广泛应用。跳频通信方式是指载波受一伪随机码的控制, 不断地、随机地跳变,可看成载波按照一定规律变化的多频频移键控(MFSK)。跳频通信的频率受伪随机码控制不断跳变,跳频图案可以设置几千乃至上万个,收发两端只要跳频图案一致,跳频时间同步,就可在信息传输过程中不断跳变空间频率信道,实现跳频通信。 近年来随着半导体工艺和计算机技术的发展,dsp(Digital Signal Processor)、FPGA(Field Programmable Gates Array)等现代信号处理芯片越来越成熟和普遍使用,以前只能理论研究的跳频技术
[嵌入式]
基于<font color='red'>DSP</font>/FPGA的超高速跳频系统基带设计与实现
DSP芯片生成电压空间矢量脉宽调制波
1 引 言      在电气传动中,广泛应用脉宽调制(PWM-Pulse Width Modulation)控制技术。随着电气传动系统对其控制性能的要求不断提高,人们对PWM控制技术展开了深入研究:从最初追求电压波形正弦,到电流波形正弦,再到磁通的正弦,PWM控制技术不断创新和完善。本文所采用的电压空间矢量(SVPWM-Space Vector PWM)就是一种优化的PWM方法,能明显减小逆变器输出电流的谐波成分和电机的谐波损耗,降低脉动转矩,由于其控制简单,数字化实现方便,目前已有替代传统SPWM(SinusoidalPWM)的趋势。微机技术的不断发展使得数字化PWM有了实现的可能和广阔的应用前景。本文采用美国德州仪器(TI
[嵌入式]
小广播
添点儿料...
无论热点新闻、行业分析、技术干货……
设计资源 培训 开发板 精华推荐

最新单片机文章
  • ARM裸机篇--按键中断
    先看看GPOI的输入实验:按键电路图:GPF1管教的功能:EINT1要使用GPF1作为EINT1的功能时,只要将GPFCON的3:2位配置成10就可以了!GPF1先配 ...
  • 网上下的--ARM入门笔记
    简单的介绍打今天起菜鸟的ARM笔记算是开张了,也算给我的这些笔记找个存的地方。为什么要发布出来?也许是大家感兴趣的,其实这些笔记之所 ...
  • 学习ARM开发(23)
    三个任务准备与运行结果下来看看创建任务和任运的栈空间怎么样的,以及运行输出。Made in china by UCSDN(caijunsheng)Lichee 1 0 0 ...
  • 学习ARM开发(22)
    关闭中断与打开中断中断是一种高效的对话机制,但有时并不想程序运行的过程中中断运行,比如正在打印东西,但程序突然中断了,又让另外一个 ...
  • 学习ARM开发(21)
    先要声明任务指针,因为后面需要使用。 任务指针 volatile TASK_TCB* volatile g_pCurrentTask = NULL;volatile TASK_TCB* vol ...
  • 学习ARM开发(20)
  • 学习ARM开发(19)
  • 学习ARM开发(14)
  • 学习ARM开发(15)
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

换一换 更多 相关热搜器件
电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved