基于网芯一号处理器的应用系统设计与实现
2020-09-16高飞
高飞
摘要:网芯一号处理器是我国自主研制的一款高性能通信处理器芯片,主要面向网络安全和移动智能终端领域,集成2个GS264处理器核,最高工作主频800 MHz,包含PCIE,SATA,DDR3等多种接口。基于处理器设计了一套完整的应用系统,对硬件和软件设计的关键技术进行了阐述,结合实例对网芯一号处理器进行了功能和性能验证。实验结果表明,网芯一号处理器可以满足通信设备对处理器的需求,具有广泛的应用前景。
关键词:网芯一号处理器;自主可控;开发系统
中图分类号:TN915.142文献标志码:A文章编号:1008-1739(2020)14-54-4
0引言
近年来,随着信息技术的迅猛发展,各种网络安全风险问题接踵而至。由于我国信息技术研發生产能力较为薄弱,大量采用国外软硬件产品[1],这些产品通常都被境外别有用心的国家和组织留下后门及系统漏洞,或注入了恶意程序,随时可以侵入我国信息系统实施信息盗取和破坏[2]。美国的斯诺登事件更让我们意识到,国家的信息化及其安全体系必须搭建在我国自主知识产权的产品基础之上。
处理器是通信设备的核心部件之一[3],如果采用自主研制的芯片,将大大提高设备的自主可控性。网芯一号处理器是我国自主研制的一款高性能通信处理器芯片,具有性能指标高、环境适应性强和功耗低等特点,可以作为通信设备的处理器使用。
本文基于网芯一号处理器设计了一套完整的应用系统,并结合实例对网芯一号处理器的功能和性能进行了验证,为该处理器的推广应用奠定技术基础。
1网芯一号处理器
网芯一号处理器是我国自主研制的一款高性能双核通信处理器芯片,主要面向网络安全和移动智能终端领域。网芯一号处理器集成了2个GS264处理器核,芯片外围接口包含PCIE2.0、SATA2.0、USB2.0、64位DDR2/3、IIC及SPI等多种I/O接口。
网芯一号处理器的结构如图1所示。一级交叉开关连接2个处理器核、2个二级Cache以及IO子网络(Cache访问路径)。二级交叉开关连接2个二级Cache、内存控制器、启动模块(SPI或者LIO)及IO子网络(Uncache访问路径)。IO子网络连接一级交叉开关,以减少处理器访问延迟。IO子网络中包括需要DMA的模块(PCIE、GMAC、SATA、USB、HDA/I2S、NAND、SDIO、DC、GPU、VPU、CAMERA和加解密模块)和不需要DMA的模块,需要DMA的模块可以通过Cache/Uncache方式访问内存。
网芯一号处理器集成2个GS264处理器核,兼容MIPS64 R2体系结构,一级指令缓存为32 KB,一级数据缓存为32 KB,二级缓存共享1 MB,包含了1个全流水的64位双精度浮点乘加部件,通过目录协议维护I/O DMA访问的Cache一致性,峰值运算速度可达8 GFlops。
网芯一号处理器的最高工作主频为800 MHz,典型功耗为5 W,支持动态降频降压,操作系统可以利用这个特性根据负载情况改变处理器工作频率,从而实现降低功耗的目的。该处理器的工作温度范围是-40~85℃,可以满足通信设备在恶劣环境下工作的需求。
2系统设计
2.1硬件设计
网芯一号处理器对外提供多种系统IO接口,为便于开发人员评估该处理器的功能和性能,应用系统对网芯一号处理器的多种接口进行了设计实现,系统组成框图如图2所示。
应用系统以网芯一号处理器为核心,主要由存储器、高速接口及低速接口等组成。
①存储器:应用系统的存储器包含DDR3 SDRAM模块、大容量存储器及BIOS存储器。其中,DDR3 SDRAM模块主要用于数据存储及暂存CPU指令执行过程中所产生或调用的各种数据结构,选用4片单芯片容量为1 GB的DDR3颗粒设计,与处理器的DDR3 SDRAM接口直接连接,组成数据宽度64位、容量4 GB的数据运行空间;大容量存储器采用具有SATA接口的rSSD芯片设计,与处理器的SATA接口直接连接,可提供8 GB的数据存储空间;BIOS存储器主要用于存储处理器的启动代码,包含处理器核配置和BIOS运行环境,采用1 MB容量的SPI接口NOR Flash设计。
②高速接口:应用系统的高速接口部分包含PCIE接口和RGMII接口。其中,PCIE接口连接2个PCIE接口的以太网控制器,RGMII接口连接2个RGMII接口的以太网PHY芯片。高速接口部分总共对外提供4路100/1 000 Mbit/s以太网接口,可以充分验证处理器的数据处理能力。
③低速接口:网芯一号处理器集成了多种低速IO接口,包括IIC及SPI等。为验证这些IO接口的功能,应用系统设计了多个IO接口芯片应用电路。其中,SPI接口设计采用多种SPI接口的存储器电路,IIC接口设计采用IIC接口的测温芯片电路和实时时钟芯片电路,便于开发人员进行开发验证。
2.2软件设计
应用系统的软件设计包含BIOS软件设计和操作系统设计2个部分。其中,BIOS软件采用MIPS架构的通用启动固件PMON,操作系统软件采用中标麒麟操作系统。
(1)BIOS软件设计
PMON是MIPS架构处理器最常用的启动固件,兼有启动加载(Bootloader)和基本输入输出系统的功能[4]。PMON功能强大而丰富,包括硬件初始化、操作系统引导、硬件测试及程序调试等功能,提供多种加载操作系统的方式,可从硬盘、网络和U盘等多种媒介加载系统,具有对内存、串口、网络及硬盘等外设的基本测试功能。此外,PMON还内置了一个调试器,可以对加载的程序进行单步跟踪、设置断点等调试,并且支持软件在线升级。PMON占用资源少,仅需要串口、512 KB ROM和128 KB RAM即可实现全部特性[5]。PMON初始化流程如图3所示。针对网芯一号处理器的特点和应用系统的硬件电路配置,对PMON进行了系统的适配开发。经过适配,PMON可以在网芯一号处理上正常运行,并可以引导操作系统,PMON启动图如图4所示。
(2)操作系统设计
中标麒麟操作系统基于LINUX内核,包含进程管理、存储管理、设备管理、文件系统管理、网络协议及系统应用等几个部分[6],具备多核和多进程支持能力,在应用层配套有较成熟的多款软件产品。针对网芯一号处理器的特点和应用系统的硬件电路配置,在网芯一号处理器的基础上适配了中标麒麟操作系统,开发了包含PCIE、RGMII、IIC、SPI和UART在内的多款驱动程序,对网芯一号处理器的各种接口进行了功能验证。
3系统实现
为便于网芯一号处理器的应用推广,应用系统采用核心模块+底板的组合形式。核心模块包含网芯一号处理器及存储器等最小系统电路,处理器的接口信号对外引出。核心模块通用性强,对外的接口信号基本满足通信装备对处理器的接口信号需求。当开发人员完成对网芯一号处理器的功能和性能评估后,可直接将核心模块安装到实际设备中。底板对核心模块提供的接口信号进行了电路设计实现,考虑到实际工程应用,底板对核心模块的对外接口信号进行了电路实现,包括千兆以太网、串口、USB、温度传感器、ITC及SPI存储器等多种接口电路。应用系统的外观图如图5所示,所有接口电路均可直接应用到实际工程中,大大减少了开发人员的重复劳动,具有较强的指导意义。
为验证网芯一号处理器的接口能力,对开发系统的各个接口进行了功能测试,测试结果如图6~图9所示。
為测试网芯一号处理器的数据处理能力,利用SFTP服务器对开发系统的千兆以太网接口进行了性能测试,传输文件大小为957.8 MB,传输速率可达11 796.77 KB/s,测试结果如图10所示。
测试结果表明,网芯一号处理器数据处理能力强、接口种类丰富,可以满足通信设备对处理器的需求,具有广泛的应用前景。
4结束语
本文对网芯一号处理器的技术特点进行了介绍,基于该处理器设计了一套完整的应用系统,对硬件和软件设计的关键技术进行了阐述,并结合实例对网芯一号处理器进行了功能和性能验证。验证结果表明,网芯一号处理器处理能力强、接口种类丰富,可以作为通信设备的处理器使用,大大提高设备的自主可控度,具有广泛的市场应用前景。
参考文献
[1]朱旭斌,张伟,张皓东.航天关键元器件自主可控需求工作思考[J].航天标准化,2013(3):26-28.
[2]杨晨,商熵.自主可控是实现安全的必由之路[J].信息安全与通信保密,2014(2):20-21.
[3]芮雪,王亮亮,杨琴.国产处理器研究与发展现状综述[J].现代计算机(专业版),2014(8):15-19.
[4]李雷,郑为民,刘金刚.基于PMON的龙芯BIOS初始化及VGA BIOS模拟器[J].计算机工程,2009,35(1):204-206.
[5]张菊莉,张君毅,孟小锁.基于龙芯2F架构的PMON分析与优化[J].现代电子技术,2011,34(2):19-21.
[6]徐海亚,赵增基,朱波,等.基于中标麒麟的POWERLINK节点实时性解决方法[J].火力与指挥控制,2014,39(5):164-167.