>
首页 » 业界动态 » Intel PXA255处理器与CAN控制器的接口电路设计与实现

Intel PXA255处理器与CAN控制器的接口电路设计与实现

作者:邓超 于涛  时间:2006-12-01 11:18  来源:电子设计信息网-www.edires.net
摘 要: 本文介绍了基于ARM内核的Intel PXA255处理器和CAN总线控制器SJA1000接口电路的实现方案, 该方案克服了传统的工业总线的缺陷, 具有实时性强、可靠性高、结构简单、互操作性好、价格低廉等优点, 是解决工业测控系统通信的一种有效的方案。文中提供了硬件设计方案图, 并介绍了方案的原理及软件设计方案。

关键词: ARM; Intel PXA255; CAN - bus; 现场总线; 接口

本文介绍的硬件电路, 是一个ARM嵌入式系统的CAN总线接口电路, 此嵌入式系统由嵌入式处理器、外围硬件、Linux操作系统、组态软件组成嵌入式系统应用平台- 液晶显示触摸屏控制板,它可以应用在许多领域, 比如工业现场控制领域。希望通过CAN总线接口使本系统集结成网, 发挥其灵活、稳定的优势。

1 PXA255、CAN 总线简介及其相结合的优点

1.1 PXA255简介
PXA255应用处理器是Intel公司生产的第一代基于XScale微架构(属于ARMV5 版架构)的集成系统芯片( ISOC) 的处理器, 采用7/8级超级流水线, 频率最高为400MHz, 加强了微处理器速度的管理, 加快了多媒体处理的速度, 并支持802.11b及蓝牙技术、USB接口, 采用PBGA封装方式。其主要针对下一代高性能的PDA市场, 支持视频流、MP3、无线互联网存取以及其他边缘领先技术。在存储方面, PXA255将支持Secure Digital和Compact Flash扩展技术, 它还有电源管理功能, 这个功能可以根据处理器所执行的任务来调节它的耗电量; PXA255 缓存达到了64KB, 并整合了内存控制器、LCD(液晶显示器)控制器和扩展控制器等。综上所述, PXA255作为当今多媒体技术应用的焦点也在意料之中。

1.2 CAN总线简介
控制器局域网( Controller Area Network,CAN) , 属现场总线的范畴, 是一种有效支持分布式控制或实时控制的串行通信网络, 是国际上应用最广泛的现场总线之一。CAN协议目前已纳入ISO国际标准( ISO11898) , 分为物理层、数据链路层和应用层, 其物理层和数据链路层协议已集成在芯片中, 通过硬件可自动完成数据的成帧发送和接收, 大大减少了软件工作量, 因此, 适用于工业自动化领域, 特别是那些强调低层监测与控制、可靠性高、实时性好等条件十分恶劣的工业现场。CAN总线突出的优点是: 低成本; 极高的总线利用率;很远的数据传输距离(长达10Km) ; 高速的数据传输速率高达1Mbit/s; 可根据报文的ID决定接收或屏蔽该报文; 可靠的错误处理和检错机制; 发送的信息遭到破坏后可自动重发; 节点在错误严重的情况下具有自动退出总线的功能; 报文不包含源地址或目标地址仅用标志符来指示功能信息优先级信息。CAN总线系统一般采用总线式网络拓扑结构,结构简单, 成本低, 系统可靠性高。

1.3 二者相结合的优点
PXA255本身并不具有CAN总线接口,通过本接口可以使其应用领域更加广泛,也提供了一种较为低成本的工业控制组网方案,另外,由于PXA255是一款功能很强的处理器(可以运行多种嵌入式系统,如ARM - L INUX、W INCE、VXWORKS等等) ,这样通过在其上运行的应用程序界面使得对CAN控制器的控制较以往使用的单片机更加方便和准确,可以说使得CAN总线的应用上了一个新的台阶。两者的结合也为今后的工业控制在组网及控制等方面提供了一条新的解决方案。

2 接口方案分析

由于CAN总线最初是用于解决汽车中控制与测试仪器之间的数据交换, 故其控制器芯片设计时主要是与单片机的接口相匹配, 比如PHILIPS公司的SJA1000就是一款高性能的CAN控制器, 其地址总线和数据总线是共用的, 而且提供Intel和Motorola两种寻址方式, 可以非常方便的与单片机接口, Intel方式下, 地址和数据分时传送, 先传送地址, 再送数据; 当ALE为高电平时, 是地址总线周期; 当ALE为低电平, NCS也为低电平时,为数据总线周期, 当NRD为低电平时, 进行读数据, NWR为低电平时, 进行写数据。其读/写时序图如图1、图2所示。
图1 SJA100读周期时序图( INTEL 模式)

图2 SJA100写周期时序图( INTEL 模式)

由于PXA255的地址总线和数据总线是分开的, 因此处理器进行操作时, 地址和数据是同时工作的, 而且控制管脚也不匹配。为了解决这个问题,设计中 决定采用一片CPLD来模拟SJA1000的控制时序, 即PXA255 的数据线D0 - D7直接与SJA1000的D0 - D7相连接进行数据传输, A0 - A3(地址线) 、NVX _ OE (输出使能) 、VX_ RD _NWR (读写控制) 作为输入端输入到CPLD 中,通过逻辑转换模拟SJA1000的ALE (地址锁存) 、NCE (片选) 、NRD (数据读控制端) 、NWR (数据写控制端) 四个控制管脚, 如图3 所示。经过比较, CPLD选用了EPM7128, 它是Altera公司生产的多阵列矩阵现场可编程逻辑器件( FPGA) ,与Altera公司的MAX+PLUSII开发系统软件配合,可以100%地模仿TTL, 从而可以节省芯片, 提高转换效率。

图3 PXA255与SJA1000的连接图

3 接口逻辑的设计、仿真与读写

3.1 接口逻辑
根据方案分析, 用A0 - A3、NVX_ OE、VX_ RD _ NWR 来模拟SJA1000 的四个控制管脚ALE、NCE、NRD、NWR。根据其相应的时序, 画出卡诺图, 化简得出其组合逻辑关系式, 再使用Altera公司的MAX+PLUSII开发系统, 其提供了原理图输入法、HDL语言实现(包括AHDL语言、Verilog HDL语言和VHDL 语言) 和波形图输入等多种方法来进行逻辑功能开发, 还可以进行仿真来验证逻辑功能。本文采用了VHDL语言来实现:
BEGIN
NWR < = NOT (CS_ A0 AND NOT CS_ A1
AND NOT CF_ A2 AND CF_ A3 AND NOT NVX_
OE AND NOT VX_ RD_ NWR) ;
NRD < = NOT (CS_ A0 AND NOT CS_ A1
AND NOT CF_ A2 AND CF_ A3 AND NOT NVX_
OE AND VX_ RD_ NWR) ;
NCS < = NOT (CS_ A0 AND NOT CS_ A1
AND NOT CF_ A2 AND CF_ A3 AND NOT NVX_
OE) ;
ALE < = CS_ A0 AND NOT CS_ A1 AND NOT
CF_ A2 AND NOT CF _ A3 AND NOT NVX _ OE
AND NOT VX_ RD_ NWR;

3.2 功能仿真
图4是我们用MAX+PLUSII软件对上述接口逻辑仿真的结果。其中, 我们定义当A0 - A3 为8、NVX_ OE (输出使能, 低电平有效) 为0、VX_RD_ NWR (读写控制, 高电平为读, 低电平为写) 为0时进行地址传送, 即A0 - A3, NVX_OE, VX_ RD _ NWR 为" 8" 00 时, ALE为高电平; 同样, 当其为" 9 " 00 时, 为写使能, 即NWR为低电平; 为" 9 " 01 时, 为读使能, 即NRD为低电平; 为" 9" 0 *时, 为选通信号, 即NCS为低电平。中断信号NINT直接通过CPLD接到PXA255的中断信号端。

图4 MAX+PLUS II仿真结果

3.3 接口读写方法
根据3.2中所定义, 只需定义相应的地址端口(0008H) 、数据端口( 0009H) 、和控制端口即可正确读写CAN控制器了, 当然, 是用两条读写I/O指令来进行一次CAN控制器的读写。另外, 由于本文所用的PXA255的内核频率为50M, 故需要加入一条等待周期, 才能与SJA1000相匹配。

4 结束语

本文提供了一种INTEL PXA255 与CAN 控制器SJA1000的接口方法, 给出了设计方案、逻辑编程和仿真, 并成功地加入到一个嵌入式系统当中,实验证明其运行稳定、可靠, 不失为一种低成本、高效率的CAN组网方案。

相关推荐

ARM收购Geomerics 强化行动装置游戏视觉

ARM  游戏视觉  2013-12-18

ARM:2013年Mail芯片出货量将超三亿片

ARM  芯片  2013-12-06

ARM控制智能机及平板芯片市场趋势将持续

ARM  控制智能机  2013-11-28

推动连网与行动创新 ARM聚焦物联网商机

ARM  物联网  2013-11-26

全球75%企业高管关注物联网新机遇

ARM  物联网  2013-11-08

英特尔将代工ARM芯片 或引发芯片价格下跌

英特尔  ARM  2013-10-31
在线研讨会
焦点