1.4.2 嵌入式通信系统的技术特点
随着因特网的迅速普及和电信业务的持续增长,通信设备应用于网络的各个部分,从手持的PDA、寻呼机,到复杂的中心局交换机。绝大多数的通信设备都有健全的通信软件功能,用于和其他设备及网络管理器等控制实体通信。当今各厂商基本上都采用专用的嵌入式系统开发通信设备。这类专用系统具有以下特征:操作系统具有实时响应能力,计算资源有限,磁盘空间有限或无磁盘,通过终端或以太网口控制,有硬件加速能力。
1.实时操作系统
随着通信系统日趋复杂,各通信层间需要以队列、邮箱或共享内存等方式实现任务间通信。如果两个任务都需要访问同一段数据,则还需引入信号量来保护数据。这些功能需要在实时操作系统中实现。成熟的实时操作系统还支持一套完整的开发环境,包括专用处理机、编译器、汇编器、调试器等一系列开发工具。同时,这类操作系统还对某些功能进行了优化。
2.控制设备
嵌入式通信设备没有显示器和键盘,外界只能通过串口或以太网与其通信。采用串口通信时,需要与终端设备或带有终端仿真程序(例如Windows的超级终端)的PC相连,通过命令行界面接收用户命令、配置设备、显示状态和统计信息等。以太网口一般用于管理嵌入式通信设备,例如启动系统或下载新版本软件。以太网口上运行的TCP/IP协议栈可供网管远程登录,接入命令行界面来管理通信设备。
3.软硬件划分
在外界条件制约下,为了优化嵌入式通信系统的功能,设计时往往需要划分软硬件功能。一个设计准则是优先考虑软件执行,但将软件功能植入硬件芯片的成本也在降低。因此应明确定义软硬件接口,供后续开发使用。在嵌入式通信领域,缓存技术和内存分配算法用于解决容量与性能之间的相互制衡。高速内存用于执行数据交换的共享内存,双端口内存用于控制器收发缓冲描述符。
4.快速路径与慢速路径
通信系统结构设计应考虑对快速路径的优化。快速路径是系统中大部分正常数据包通过的路径。从软件角度来看,快速路径是为最常用功能优化的代码分支。由于系统主要功能是数据帧交换,因此代码路径的优化应着眼于使系统以尽可能高的速率交换。而对于发往交换机自身的数据帧(例如实现交换理的SNMP数据包)则不会送至快速路径,这类数据的处理相对较慢,因而其通过的路径又称为慢速路径。快速路径会优先处理不带选项的数据包。如果快速路径发现数据包有选项,则将包转至慢速路径并返回去处理下一个数据包。慢速路径通常作为一个独立任务运行,当其被快速路径调度时,才去处理数据包。
快速路径和慢速路径的区分是下述硬件加速的基础。
5.硬件加速
前述特性均假设软件运行于单块通用处理器,例如MIPS和PowerPC产品线的处理器等,这类处理器偏向于RISC(精简指令集计算机)。这类处理器功能虽然强大,但仅靠软件方法很难提升性能。对于少量低速接口(如10/100Mbit/s以太网)的而言,这些处理器已经够用了。但如果数据率继续升高、端口继续增加(如电信设备),仅靠软件就很难解决性能问题。通信系统的软件部分(包括慢速路径)运行于通用处理器,并设置交换芯片组的各个寄存器和参数。硬件设计师可以据此设计出所需的板卡,可提高系统性能。有些通信设备商会自主开发ASIC(特定用途集成电路)用于实现需求各异的硬件加速。
6.功能平面
一种经典的网络结构功能平面划分模型将通信系统的功能划分为3个平面:控制平面、数据平面和管理平面。数据平面用于基本操作,控制平面和管理平面保证数据平面操作的正确性。控制平面负责与对端通信,数据平面负责系统核心功能。管理平面负责整个系统的控制和配置。除了执行系统的内部管理外,管理平面还包括更改配置,获取状态和统计信息等功能。例如SNMP,命令行界面(CLI)以及基于HTTP的管理操作都属于控制平面的范畴。