论文部分内容阅读
因特网是由路由器构成的网络,近年来因特网的迅猛发展和快速的推广应用,人们也向它提出了更高的带宽和各种更复杂的服务需求。为适应这种不断发展的网络需求,传统网络解决方案中路由器的硬件核心技术——通用处理器或专用集成电路,由于自身因素无法同时满足高速和灵活性两方面的要求,逐渐让位于高性能多核网络处理器。这种专用于处理高速网络数据分组的多核并行可编程嵌入式微处理器,结合了ASIC处理器的高速性能和RISC处理器的可编程所展现出的灵活性。如何利用相关软件有效地对硬件进行控制,使硬件性能得到充分发挥,与高性能硬件相匹配的软件系统研发就显得尤为重要。本文以网络处理器软硬件体系结构的相关研究为背景,阐述了基于多核网络处理器的并行软件设计研发的特点和重要性。重点对多核网络处理器内核软件开发的基本原理和设计要求进行了深入研究。分析并明确了多核网络处理器软件开发与一般单核嵌入式系统开发的共性与个性。针对实际中的基于XDNP网络处理器应用系统开发板,提出XDNP内核软件驱动技术设计研发中较能充分体现多核并行软件开发思想的关键技术环节:嵌入式操作系统的引导和启动、多核片上系统硬件的初始化配置、多核片上高速包处理引擎应用程序代码的加载以及多核共享路由表技术。结合XDNP内核软件开发原理,得出这几项关键技术的设计实现方案,通过深入的研究和详细的设计后在XDNP网络处理器应用系统中得到具体的实现。最后,利用实际的XDNP网络处理器应用系统开发板对上述关键技术环节的实现进行了整体硬件验证,结果表明符合多核网络处理器内核软件设计要求,并能在该网络系统硬件电路板上稳定使用,为XDNP网络处理器上加载实现不同网络处理功能的高速包处理引擎应用程序铺垫了底层软件基础。