基于Quark微处理器X1000的物联网路由器设计
2015-12-18张雪梅
张雪梅
(山西职业技术学院电子系,山西太原 030006)
1 Quark微处理器
Quark是Intel在IDF2013上正式推出的全新低功能耗处理器。Quark是至今为止Intel生产的最小芯片,与现有的Intel Atom相比,Quark的尺寸和发热量更小,芯片尺寸仅为凌动的1/5,而功耗仅为1/10。Quark处理器是一款32位X86架构处理器,产品将使用32 nm工艺制造,主要面向各种嵌入式领域,比如,智能手表,智能眼镜,智能家居、路由器,甚至是一些一次性产品中也可装备Quark。
首项产品名为Intel Quark SoC X1000。Intel Quark SoCX1000这类产品将为新一代智能连接设备提供提高集成程度和降低成本的灵活性,并同时保持Intel架构指令集的兼容性,旨在面向将低功耗和小尺寸置于高性能之前的应用,将为普适计算市场和包括汽车、工业设备和可穿戴设备的物联网开发提供新的解决方案[1]。
2 硬件设计
Intel Quark X1000封装大小为15 mm×15 mm,是一款单线程32位X86架构的微处理器,其处理速度为400 MHz,具有512 kB SRAM,内存可扩展到2 GB,扩展温度范围为-40~85℃。其具有丰富的外围接口:2路×1 PCIe端口、2路10/100 MB以太网端口、2路USB2.0主机端口、1路USB2.0设备端口、2路UART端口、2路 SPI端口、1路 SD/SDIO/eMMC端口、1路I2C端口、16路GPIO端口。
基于Quark SoCX1000的物联网路由器系统硬件架构如图1所示,分别利用PCIe端口扩展了2.4 GHz WiFi无线接入和GSM/GPRS/3G无线接入,利用SPI端口扩展了2.4 GHz ZigBee无线接入及AD/DA端口,利用I2C端口扩展了Infrared接入、利用UART端口扩展了433 MHz无线接入。设计中在2.4 GHz无线单元中内嵌微型IPV6协议处理单元,实现多平台无线网络接入设备[2]与Internet无缝链接。设计的物联网路由器实现了红外设备、1G以下无线设备、2.4G无线设备和GSM/GPRS/3G设备的接入并与Internet无缝链接,满足物联网多平台无线设备[3]接入要求,降低了物联网组网成本。
图1 系统硬件架构图
3 软件设计
3.1 软件系统架构
系统软件架构如图2所示,操作系统选用性能稳定的商业Linux操作系统Windriver Linux,并利用了Windriver公司先进的智能开发平台(Intelligent Device Platform,IDP),最新版本的Windriver IDP提供了启动安全、数据安全和应用安全等网关安全特性,支持Lua、Java和OSGi多应用平台环境,实现在资源受限和全功能设备环境下的可移动、可升级、可重用应用程序开发,支持MQTT物联网协议实现数据传输,并且为物联网设备中广泛使用的WiFi、蓝牙、ZigBee和短程无线协议[4]提供本地支持,支持完善的管理协议如TR-069和OMA DM。
图2 系统软件架构图
基于Windriver IDP开发了嵌入式微型IPV6协议栈,IPV6协议使用一系列固定格式的扩展头部取代了IPV4中可变长度的选项字段,使路由器可简单路过选项而不做任何处理,加快了报文处理速度,提高了数据吞吐量,且支持更多的服务类型。
3.2 嵌入式微型IPV6协议栈设计
嵌入式IPv6协议栈[5]采用分层结构进行设计,将整个协议栈分为4个层次:事件触发接口层、TCP/IP网络协议层、NIC网络接口核心层和网络设备驱动接口层。如图3是对整个协议栈的分层描述,在协议栈的工作过程中使用上层调用相邻层的函数来实现相应功能。
图3 协议栈分层对象时序图
事件触发接口层:对应于TCP/IP模型的应用层协议,主要功能是定义网络数据的格式以及网络的应用。
TCP/IP网络协议层:对应于TCP/IP模型的传输层协议和网络层协议,主要功能是定义数据如何传输到目的地的,使用TCP协议在两台主机之间建立端到端的连接,保证可靠的传输;IP协议进行路由选择和基于IP的寻址。
NIC网络接口核心层:是整个网络接口的关键部位,其上层是具体的网络协议,下层是驱动程序,其为上层提供统一的发送接口,屏蔽各种物理介质;同时负责将来自下层的包向合适的协议发送。
网络设备驱动接口层是分层结构的最底层,其主要功能是控制具体物理介质,从物理介质接收和发送数据,并对物理介质进行诸如最大数据包之类的各种设置。
结合对嵌入式IPv6协议栈设计要求和分层结构的全面分析,将设计实现划分为4个模块,如图4所示。网络接口核心模块为网络协议提供统一的发送接口,屏蔽各种各样的物理介质,同时负责把向合适的协议配送给来自下层的包。事件接口模块采用事件驱动接口,当特定TCP/IP事件发生时,将调用应用程序;而当应用程序产生输出数据时,也通过此接口发送出去。
图4 各功能模块及其关系示意图
SNMP网管模块负责获取IPv6无线传感器网络节点的相关MIB信息。配置最示调试命令模块提供用户配置和调试的界面,包括配置IP地址、子网掩码、默认网关和MAC地址等。在程序正常运行前,由超级终端进入配置模式,由用户进行配置管理。
3.3 自适应频率捷变设计
IEEE802.11b/g/n标准的工作频段为2.4 GHz,而工业上众多设备也恰好工作在这一频段。如果附近有较强的磁场存在,那么无线网络将受到影响[6]。频率捷变[7]是对抗有源干扰的有效手段,接收机在某段时间内连续变化不同的频点,经过分析处理不同频点所受干扰情况,最终输出所受干扰最弱的频点给接收机,使其工作于此点,达到有效抗干扰的目的。
图5 自适应频率捷变设计
4 结束语
文章基于Intel新一代物联网微处理器 Quark X1000硬件平台及Windriver Linux嵌入式操作系统及IDP智能设备平台,设计的物联网路由器具有广泛的无线接入能力及丰富的硬件接口,除实现了物联网设备之间的互联互通、网关的高安全性及可管理性之外,嵌入了微型IPV6协议栈,将几MB甚至上百MB的IPV6协议精简为约200 kB,从而实现IPV6在低功耗无线传感器网络的应用,实现了物联网与互联网的无缝连接。
自适应频率捷变算法的开发,与具有良好选择性的射频信号结合,有效防止驻波干扰、调频干扰,使设计的物联网路由器低功耗传输模块在2.4 GHz频带内稳定传输,与该频带内的其他无线模块良好共存,解决了多无线模块同时传输数据时的相互干扰。
基于Quark微处理器的物联网路由器以宽带或3G为接入载体,与WiFi技术、传感器技术、RF无线传输技术等结合[8],可应用于智能家居、智能大厦、智慧课堂、安防、智能能源管理、工业控制、物流等行业,具有广泛的应用前景。
[1]孙利民,李建中,陈俞.无线传感器网络[M].北京:清华大学出版社,2005.
[2]钱志鸿,王义君.物联网技术与应用研究[J].电子学报,2012,40(5):1023 -1029.
[3]孙其博,刘杰,黎葬,等.物联网:概念、架构与关键技术研究综述[J].北京邮电大学学报,2010:33(3):1-9.
[4]肖芳汉.基于物联网技术的智慧城市建设[J].通讯世界,2013(2):5-6.
[5]于旭东.基于默认路由器优先级的IPv6路由备份机制研究[J].信息安全与技术,2014(5):94-96.
[6]任毅.警戒雷达自适应频率捷变设计及抗干扰分析[J].船舶电子对抗,2008,31(3):21 -23.
[7]李潮,张巨泉.雷达电子战自适应捷变频对抗技术研究[J].电子对抗技术,2004(1):30 -33.
[8]甘志祥.物联网发展中问题的初析[J].中国科技信息,2010(5):94-96.