电子信息网-电子电器电气站
电子信息网
电子系统 显示光电 接口电路 存储器 无线通信 电子控制 EDA/PLD 单片机 DSP技术 模拟技术 通信网络 电测仪表 视频音频 芯片应用 电子通信 IC电子 电子设计 自控测量 IC嵌入式 IC系统 EDA系统 通信网络 传感控制 电源技术 单片机技术 显示光电 接口电路 无线通信 消费电子 DSP产品 元件工艺 电测仪表 模拟技术 存储器设备 设计应用 智能网应用 集成电路 电子电源 IC智能设计 PLD系统 电子传感
>>首 页->电子信息网->基于PCI/CPCI总线的嵌入式实时智能通信系统->正 文 
[电子信息]:基于PCI/CPCI总线的嵌入式实时智能通信系统 摘    要:本文描述了一种基于PCI/CPCI总线的嵌入式实时智能通讯设备的设计及实现,充分利用了PCI总线的高效能和嵌入式通讯控制器的强大功能,设计出了一种高速的智能通信设备。
关键词:嵌入式微控制器;CPLD;智能通信模块;PCI目标设备接口芯片;PCI/CPCI总线

引言
在计算机通信领域,串口被广泛运用。在某些特殊的应用领域,将会用到特殊的串口通信进行数据通信和报文交换。本设计就是针对一些特殊用途的应用,即一些高速系统串口传输方式的设计。

嵌入式智能通信系统的实时性特征
在设计一种嵌入式系统的时候,应该考虑到硬件和软件的结合,并考虑要满足嵌入式实时系统的各种特点。该设计具有以下特点:
* 与上位机接口采用PCI/CPCI总线。接口芯片采用AMCC S5920,它是一种PCI目标设备接口芯片,其总线时钟频率达到33MHz,ADD-ON总线的时钟达到40MHz,设计方便、可编程。
* 该设计用到了AMD公司专用的嵌入式微控制器Am186cc,该嵌入式CPU具有低功耗、体积小、集成度高等特点,能够把通用CPU中许多由板卡完成的任务集成在芯片内部,从而使设计趋于小型化。
* 专用性和算法的唯一性,将嵌入式系统和具体的应用有机地结合在一起。
* 该智能通信设备体现了硬件和软件紧密结合的特点,在硬件方案设计的同时,软件要进行同步设计,达到共同完成预定的功能,并满足性能、成本和可靠性目标。
* 嵌入式实时系统的设计对用户是透明的。
* 设计响应时间快,并有确定的硬实时性要求。
* 该智能通讯模块具有快速启动、出错处理和自动复位功能,这些功能由设计者在CPLD器件中的控制逻辑来实现。

主要硬件
PCI/CPCI目标接口S5920
S5920是AMCC公司的PCI目标设备接口芯片,它实际上可看成是一个桥接集成电路。主要特性包括:符合PCI V2.2规范;具有可编程预取和等待功能;局部总线支持8/16/32位可选择宽度的接口;具有4个可定义的操作区域BADR1~BADR4,分别为存储区、I/O区、保留区等。由于S5920的通用性,可用于所有PCI总线到ADD-ON总线的桥接转换电路。
嵌入式微控制器Am186cc
AMD公司的通信控制器Am186cc广泛运用于嵌入式领域。具有四个高速数据链路控制通道(HDLC);USB外围控制器;有8个可支持HDLC和USB的智能DMA通道和4个一般的DMA通道等。
由于Am186cc控制器具有高效、高集成的控制和接口功能,已被广泛运用于通讯、电信、工业控制和网络应用等领域。本文所描述的智能通信模块设计中用到了它的控制功能和串口通信功能。

系统设计
本文设计的智能通信系统是基于Intel x86平台的PCI总线和实时操作系统,由嵌入式智能通信系统硬件和驱动程序两部分组成,如图1所示。智能通信模块完成数据交换和报文处理以及发送和接收功能。驱动程序在系统启动时对硬件进行初始化,在系统启动之后实现硬件和应用软件之间的数据交互。考虑到通信的实时性和可靠性要求,该通信设备通过PCI/CPCI高速总线与计算机主机相连。
硬件设计
该设计为一种嵌入式实时智能通信板,板上用Am186cc 16位嵌入式微处理器进行控制板的操作,两片CPLD器件用作上位机与下位机访问双口RAM的控制译码和接口控制译码,可在线改写逻辑。接口芯片可选用各类满足用户要求的电平转换电路。该硬件的原理框图如图2所示。
用户还可以根据自己的需要在接口处实现串行通信的不同传输模式:全双工和半双工。
板上除板内的SRAM外,还设有双口RAM区,对总线开放,用于本板与系统主机之间的信息交换。串口的数据发送和接收工作由板上微控制器控制完成,一般情况下,当主机有一组数据需要向串口传送时,将数据放入双口RAM,并以中断方式通知板上CPU,板上CPU将负责把数据通过串口发送出去。同样,当CPU从串口收到数据后,将其放入双口RAM,当一组数据接收完成后,板上CPU将以中断方式通知系统主机读取这批数据。
双口RAM的双口竞争原则如图3所示。S0为初始状态;S1为通信板上访问状态;S2为上位机访问状态;S3为过渡状态;T1~T6为状态改变条件。
由于用户的运用差别一般都体现在接口上,例如,有些用户可能会考虑到系统数据传输的稳定性和抗干扰性要求,需要采用带光电隔离的接口模式;有些会考虑到远距离传输,可采用RS-422电平传输等。这样,用户可根据需求来选择电平转换的接口电路,以满足各种用途。
软件设计
在该智能通信模块的设计中,特别强调底层驱动和上层应用的开发。
驱动程序和应用程序的设计
驱动程序作为系统设计的关键技术,它的开发关系到整个系统的运行。该模块的驱动程序主要包括以下几个部分:
(1) 模块初始化
int Board_Initialized(int board_num);/*可用多块智能通讯板,可分别初始化,也可同时                                    初始化*/
(2) 模块禁止
int Board_Close(int channels);/*可通道禁止,也可模块级禁止*/
(3) 子通道初始化
int com_Sub_Initialized(int i,int j,msg_format msg)/*包括子通道初始化和报文格式定义*/
报文格式msg_format用结构定义:
typedef  struct{
 unsigned int msg_head_flag ;/*报文头标识*/
unsigned int msg_head ;   
/*报文头*/
unsigned int msg_length ; 
/*报文长度*/
unsigned int msg_tail_flag ; 
/*报文尾标识*/
unsigned int msg_tail ;    
/*报文尾*/
unsigned int msg_recv_baud ;
/*接收波特率*/
unsigned int msg_send_band ;
/*发送波特率*/
unsigned int msg_parity ;   
/*奇偶校验位*/
unsigned int msg_stop ;    
/*停止位*/
        }msg_format;
(4) 串口发送和接收数据函数
int com_Send_Data(int i,unsigned int length,unsigned char c);/*发送函数*/
int com_recv_Data(int channum,unsigned char buff);/*接收函数 */
该智能通信板的驱动可应用于DOS、UNIX以及VxWorks等,上层嵌入式实时软件的良好开发也可以提高该模块的性能。
首先,应该根据用户的实际需求建立软件模型,给系统建立一个并发模型。在这个并发模型基础上,实现任务划分,即按照一定的任务构造准则,把系统分解成功能合理和数目合适的任务集合。任务分配把任务按照一些规则和约束,放入到相应的计算机中,再由任务调度来决定任务的执行顺序,然后用语言来实现每个模块。各部分实现后,应该进行测试。这样实现的嵌入式软件才能和硬件集成为完整的、先进的、高效能的系统。
结语
本文介绍的嵌入式实时智能通信模块的设计,功能强大、应用广泛,而且有一定的通用性,软件设计的灵活性较强,可以满足各种需要。并且该系统还可根据上位机的总线结构来设计,可用于Multibus-I、ISA、PCI等总线,以适应市场的实际应用。■

参考文献
1孔祥营,柏桂枝.嵌入式实时操作系统VxWorks及其开发环境Tornado. 中国电力出版社,2001
2 潇湘工作室. 串行通信开发指南. 中国水利水电出版社,2001

◆ 相关电子资料:基于PCI/CPCI总线的嵌入式实时智能通信系统...
◆ 更多电子资料:基于PCI/CPCI总线的嵌入式实时智能通信系统...
·Google:"基于PCI/CPCI总线的嵌入式实时智能通信系统电子资料信息"
·Baidu:"基于PCI/CPCI总线的嵌入式实时智能通信系统电子资料信息"
·Sogou:"基于PCI/CPCI总线的嵌入式实时智能通信系统电子资料信息"
·Zhongsou:"基于PCI/CPCI总线的嵌入式实时智能通信系统电子资料信息"

网站简介 |  网站导航 |  广告服务 |  联系我们 |  诚聘英才 |  意见反馈 |  版权声明 |  友情链接
Copyright (C) 2003 ELECTRONIC ENGINEERING & PRODUCT WORLD. All rights reserved.
 电子信息网-电子电器电气站 www.ELEcn.net