欢迎来到淘文阁 - 分享文档赚钱的网站! | 帮助中心 好文档才是您的得力助手!
淘文阁 - 分享文档赚钱的网站
全部分类
  • 研究报告>
  • 管理文献>
  • 标准材料>
  • 技术资料>
  • 教育专区>
  • 应用文书>
  • 生活休闲>
  • 考试试题>
  • pptx模板>
  • 工商注册>
  • 期刊短文>
  • 图片设计>
  • ImageVerifierCode 换一换

    网络处理器中多核共享ddr控制器设计与优化.doc

    • 资源ID:17268746       资源大小:439KB        全文页数:83页
    • 资源格式: DOC        下载积分:15金币
    快捷下载 游客一键下载
    会员登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录   QQ登录  
    二维码
    微信扫一扫登录
    下载资源需要15金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    网络处理器中多核共享ddr控制器设计与优化.doc

    【精品文档】如有侵权,请联系网站删除,仅供学习与交流网络处理器中多核共享ddr控制器设计与优化.精品文档.代号10701学号1017122055分类号TN4密级公 开题(中、英文)目网络处理器中多核共享 DDR 控制器的设计与优化Design and Optimization on Multi-core Shared DDRController Based on Network Processor作 者 姓 名邹辉辉指导教师姓名、职务 马佩军副教授学 科 门 类工 学 学科、专业微电子学与固体电子学提交论文日期二一三年一月西安电子科技大学硕士学位论文网络处理器中多核共享 DDR 控制器的设计与优化作者:邹辉辉导师:马佩军 副教授学科:微电子学与固体电子学中国·西安2013 年 1 月Design and Optimization on Multi-core Shared DDRController Based on Network ProcessorA Dissertation Submitted to Xidian UniversityIn Candidacy for the Degree of Master in Integrated CircuitSystem DesignByZou HuihuiXian, P. R. ChinaJanuary 2013独创性(或创新性)声明本人声明所呈交的论文是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢中所罗列的内容以外,论文中不包含其它人已经发表或撰写过的研究成果;也不包含为获得西安电子科技大学或其它教育机构的学位或证书而使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中做了明确的说明并表示了谢意。申请学位论文与资料若有不实之处,本人承担一切相关责任。本人签名:日期关于论文使用授权的说明本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。本人保证毕业离校后,发表论文或使用论文(与学位论文相关)工作成果时署名单位仍然为西安电子科技大学。学校有权保留送交论文的复印件,允许查阅和借阅论文;学校可以公布论文的全部或部分内容,可以允许采用影印、缩印或其它复制手段保存论文。(保密的论文在解密后遵守此规定)本学位论文属于保密,在本人签名:导师签名:年解密后适用本授权书。日期日期摘要摘 要随着网络带宽和数据流量的急剧增长,这使得对路由器带宽和处理速度要求越来越高,基于通用处理器和专用集成电路的传统路由器已经不能满足这一要求。为此,人们提出了基于 MPSoC(片上多核系统)体系的网络处理器。它是一种可编程处理器,通过集成多个处理器以及采用硬件多线程技术,具有高效的并行处理功能和灵活的编程能力;同时采用共享存储器的方式,采用片外 DRAM 存储大容量数据。所以,DRAM 的带宽和访问延迟是决定网络处理器能否进行高速存储数据的关键,如何设计并实现高性能的 DRAM 控制器就显得尤为重要。本文以 XDNP 网络处理器为背景,以 DDR 作为片外 DRAM,研究并设计出XDNP 的多核共享 DDR 存储控制器。首先根据 DDR 控制器在 XDNP 中的功能,给出 DDR 控制器的设计要求,基于该要求对 DDR 控制器的整体结构进行设计,对功能模块进行划分及各个功能模块进行详细的论述,并对初始化状态和读写状态机的设计进行说明;然后针对该 DDR 控制器的结构进行分析,结果表明 DDR控制器存在性能瓶颈。为了解决这个瓶颈,必须采取相应的优化策略对 DDR 控制器的性能进行优化。接着结合 XDNP 中 DDR 控制器本身的特点以及现有的 DDR控制器优化技术,采用了基于指令预取、基于 open page 以及基于 bank interleaving这三个优化策略。根据这三个优化策略,对 DDR 控制器的结构进行改进和模块的划分,并对新增模块进行论述。最后就 DDR 控制器的读写状态机的设计进行改进。本文采用 Verilog 语言完成了 DDR 控制器各个功能模块的 RTL 级设计,并完成了控制器的功能验证和性能分析。验证的结果证明了 DDR 控制器功能的正确性,同时对优化前后的 DDR 控制器连续执行多条指令时间和运行 30ms 的数据量进行了统计和对比,对比的结果表明优化后的 DDR 控制器性能有了较为明显的提高。关键词:XDNP DDR 控制器 优化 功能验证AbstractAbstractWith the rapid increase of the network bandwidth and data flow, making that therouter can be able to have the performance of higher bandwidth and processing speed.However, the traditional router based on GPP and ASIC cannot satisfy the requirements.Therefore, the network processor based on the architecture of MPSoC (Multi-ProcessorSystem On a Chip) has been proposed. The network processor has efficient function ofparallel processing by means of adopting the hardware structure of multithread.Simultaneously, it takes the way of shared memory, selecting the DRAM as the devicestoring large capacity data. As a result of it, the DRAM bandwidth and access latency isthe key factor which determines whether the network process can store data with highspeed or not. Its especially important that how to design and implement a DRAMcontroller with high performance.The paper design a DDR controller based on XDNP.Firstly, it gives the architectureand functional module.What is more, it also gives the state machine. Secondly, itanalysis the bottleneck of the performance according to the architecture.The result isthat the executive time of instructions is very long.Therefore, it is necessary to adaptsome optimization policies to improve the performance of the DDR controller.Then,according to the current technology which can improve the performance of DDRcontroller and the characteristic of DDR controller, the optimization of DDR controlleris made by way of utilizing three policies based on command prefetch, open page andbank interleaving. The new architecture of DDR controller is given based on the threepolicies. What is more, its functional module is discussed in detalil.Finally, its statemachine of reading and writing is amended.The paper utilizes hardware language description Verilog to complete the RTLdesign of DDR controller. Moreover, the functional verification and the performanceanalysis of the controller are completed. The result of verification proves that thefunction of DDR controller is correct. At the same time, the statistics and confrontationof the time of executing many consecutive instructions and the data throughput ofrunning for 30ms with optimization and without optimization give the proof that theperformance of DDR controller is improved which means that the executive time ofinstructions and access latency are reducing.Keywords: XDNP DDR controller OptimizationFunctional verification目录目录第一章 绪论 . 11.1 网络处理器概述. 11.1.1 网络处理器的由来 . 11.1.2 网络处理器架构 . 11.1.3 网络处理器对存储的要求. 31.2 课题研究来源及工作内容 . 31.3 论文章节安排. 4第二章 XDNP的层次化存储系统及其DDR存储 . 72.1 XDNP网络处理器的层次化存储系统 . 72.1.1 XDNP网络处理器体系结构概述 . 72.1.2 XDNP网络处理器的层次化存储系统. 92.2 DDR存储器工作原理. 122.2.1 DDR标准接口. 122.2.2 DDR初始化 . 132.2.3 DDR读写操作. 152.3 DDR优化技术研究现状. 162.3.1 基于open page的优化策略. 172.3.2 基于bank interleaving的优化策略 . 182.3.3 基于地址重新映射的优化策略 . 192.3.4 基于指令调度的优化策略. 202.4 XDNP中DDR控制器的设计要求 . 202.5 本章小结 . 22第三章XDNP网络处理器中DDR控制器的设计 . 233.1 XDNP网络处理器中DDR控制器的结构 . 233.2 XDNP中DDR控制器的功能模块 . 243.2.1 指令队列模块 . 243.2.2 指令仲裁模块 . 253.2.3 指令译码和地址产生模块. 263.2.4 数据通路模块 . 283.2.5 推拉引擎模块 . 313.2.6 DDR接口模块. 323.3 XDNP网络处理器中DDR控制器状态机的设计 . 34目录3.3.1 DDR初始化状态机设计 . 343.3.2 DDR读写状态机设计 . 363.4 本章小结 . 38第四章 XDNP网络处理器中DDR控制器的优化 . 394.1 XDNP网络处理器中DDR控制器的性能瓶颈 . 394.2 XDNP网络处理器中DDR控制器的优化 . 404.2.1 XDNP网络处理器中DDR控制器的特点 . 404.2.2 XDNP网络处理器中DDR控制器的优化策略. 404.2.3 XDNP网络处理器中DDR控制器优化结构. 414.3 XDNP网络处理器中DDR控制器的优化功能模块. 424.3.1 地址比较模块 . 424.3.2 控制逻辑模块 . 444.4 XDNP网络处理器中DDR控制器状态机的改进 . 464.5 本章小结 . 49第五章 DDR控制器的验证及性能分析 . 515.1 DDR控制器的验证方法及验证平台. 515.1.1 DDR控制器的验证方法 . 515.1.2 DDR控制器验证平台 . 535.2 DDR控制器的功能验证 . 545.2.1 DDR控制器初始化仿真验证. 545.2.2 DDR控制器读写仿真验证 . 555.2.3 DDR控制器指令仲裁仿真验证. 575.2.4 DDR控制器指令预取仿真验证. 575.2.5 DDR控制器刷新仿真验证 . 585.2.6 DDR控制器优化仿真验证 . 585.3 DDR控制器性能分析. 605.3.1 DDR控制器执行连续多条指令性能分析 . 605.3.2 DDR控制器运行 30ms的数据量统计 . 615.4 本章小结 . 62第六章 结束语 . 636.1 工作总结 . 636.2 工作的不足之处和未来工作展望 . 64致 谢. 65参考文献 . 67研究成果 . 69第一章 绪论1第一章 绪论1.1 网络处理器概述上个世纪六十年代,全球爆发了第三次科技革命,信息技术得到迅猛发展,互联网由最初的在美国和西方国家建设,如今发展到全球范围,网络已经进入到社会的各个行业,很大程度上改变了人们的生活方式,促进了社会经济的发展。随着电子商务、 多媒体业务和VoIP业务、视频业务、高速数据等业务的发展,网络用户和数据流量呈指数级增长,这对网络带宽和性能提出了更高要求,也即是对作为网络核心设备的路由器提出了高速度运行的要求1。1.1.1 网络处理器的由来早期的网络由于传输速率较低,流量较少,对应的早期路由器通常都是基于两种架构:一种基于ASIC(专用集成电路)构建;另一种基于通用处理器GPP构建2。基于GPP构建,它的各种网络功能是通过在GPP上运行相关软件来实现的,我们可以称之为软转发处理。它的好处在于具有很好的灵活性,通过更新软件,可以在原有的功能上增加新的功能,在网络发展的早期可以很好地适应低带宽和低流量的需求。但基于GPP构建的缺点在于:GPP对数据包处理等操作开销很大,GPP处理速度也比较慢,而且GPP工作时需要中断处理,这样会导致数据包多次进入缓冲区,不能以较快速度转发和处理网络上的数据包。因此,随着网络向高带宽和高流量的发展,早期的基于GPP的构建已经越来越不适合作为网络核心设备的构件3。基于ASIC构建,通过把指令和逻辑固化到硬件中,以获得很高的处理速度,较好地满足了网络设备对性能的要求,适应了网络带宽和流量不断发展的趋势。但是它的缺点也比较明显:以ASIC作为核心,灵活性比较差,很难通过修改提高性能或者增加功能,从而导致处理功能也比较单一;而且ASIC开发周期较长,导致成本高,不能满足网络快速向高带宽和高流量发展的要求45。正是基于 AISC 构建和 GPP 构建都不能很好满足当今快速发展的网络对网络核心设备的要求,为提高网络核心设备的运行速度,网络处理器应运而生。1.1.2 网络处理器架构网络处理器 NP 是一种专门针对网络应用的可编程处理器,它是在网络通信系统设计从全定制设计转向可编程应用系统设计转换中出现的。2网络处理器中多核共享 DDR 控制器的设计与优化从功能上说,网络处理器完成数据包的处理以及转发,例如对数据包的分段或重组、数据包的协议分析、路由查找、对数据帧进行识别、实施流量控制、保证服务质量、进行报文过滤等6 7。从结构上说,网络处理器包括:智能协处理单元、网络处理单元、存储接口单元、数据交换接口单元以及高速内部总线。网络处理器具体的结构如下图 1.1 所示,包括五个主要的单元:网络处理单元、智能协处理单元、高速内部总线、存储接口单元以及数据交换单元8 9。网络处理单元智能协处理单元网络处理器高速内部总线片外存储器存储接口单元数据交换接口单元外部设备图 1.1 网络处理器结构图l 网络处理单元:负责网络数据包的高速处理,如数据包的收发、包头处理和路由查询等。网络处理单元通常由多个 RISC 处理器组成,它采用硬件多线程结构,集成多种高速缓存单元。对于每个线程来说,存放程序运行的上下文是通过专门的硬件来完成的,这样可以获得线程切换的零开销,采用这种多线程的结构,可以提高网络处理单元的数据包处理能力,降低了数据处理时访问存储器所需的平均时间。除此之外,它还具有专用的指令集,这些指令集是可以编程的,体现了网络处理单元的灵活性。l 智能协处理单元:作为网络处理器核心部件,在嵌入式操作系统的支持下控制网络处理单元以及其它的硬件单元,通过运行路由协议软件包,完成路由信息的接收、处理和发送等。l 高速内部总线:网络处理单元、智能协处理单元、存储接口单元以及数据交换单元通过高速内部总线连接在一起,组成优化的数据传输结构,提供较强的硬件并行处理能力,如 PCI 总线、AMBA 总线等。l 存储接口单元:网络处理单元和智能协处理单元访问片外存储器的桥梁,它包括多个不同的存储接口,如 DRAM 存储接口、SRAM 存储接口,相应的连接片外存储器分别为 DRAM 存储器和 SRAM 存储器,这些片外存储器负责网络处理器中大容量数据包的存储。l 数据交换单元:主要完成网络层和数据链路层的数据交换,它在网络第一章 绪论3处理单元的调控下完成数据包的发送,缓存与接收等功能,连接的为外部网络设备,如 MAC 和其他网络处理器。1.1.3 网络处理器对存储的要求网络处理器不仅能够处理大容量的数据包,而且能够以很高的速度对数据包进行转发和处理。由上节 1.1.2 可知,数据包的处理由网络处理单元来完成。网络处理单元由于采用多线程以及多个 RISC 处理器的结构,使得网络处理单元能够以非常高的速度执行指令。但作为数据包存储的存储单元,它的性能提升很慢,存储器的访问延迟很大,带宽也比较小,已经不能满足网络处理器对存储的高速度要求。通常,在网络处理器内部会集成一些存储器,用于存放一些程序和数据。但这种存储器容量小,集成度低不能满足大容量存储的需求。为此,需要一个片外的大容量的存储器,以扩展网络处理器的存储空间。DRAM存储器由于集成度较高,价格便宜,通常被用作网络处理器的片外存储器。但是它的访问速度较慢,延迟较大,为了能够对容量很大的数据进行高速存储,需要提高DRAM控制器的性能。本文采用DDR作为片外DRAM存储器,对DDR控制器进行优化设计,通过采用相应的优化策略,最大限度的提高DDR的数据访问效率以匹配高速的处理器10。1.2 课题研究来源及工作内容本课题所参与的项目来源于国家部委科研项目“高性能网络处理器技术研究”,依托西安电子科技大学微电子学院集成电路人才培养基地,研究了一款具有自主知识产权的网络处理器 XDNP。XDNP 网络处理器是一款网络处理专用的可编程处理器,采用硬件多线程和线程切换的技术,可以提供高性能并行处理能力,适用于各种网络系统的数据包转发和处理工作。XDNP 的高性能依赖于其中各个单元的性能,如:处理器处理数据速率,DDR 存储器的访问延迟。本文所要研究的是尽可能地降低存储器的访问延迟,也即是对 DDR 控制器进行优化,提高它的性能。本文主要研究了网络处理器中 DDR 控制器的设计与优化,完成了 RTL 级代码的编写和仿真工作,并进行了验证,验证的结果证明了功能的正确性;而且,对优化后的 DDR 控制器进行了性能的统计工作,和未优化的 DDR 控制器性能进行了对比,得到的结果是优化后的 DDR 控制器能够有效地减少指令的执行时间,缩短存储器的访问延迟。本文研究重点如下:1、针对网络处理器中的 DDR 控制器所要完成的工作,设计整个 DDR 控制器4网络处理器中多核共享 DDR 控制器的设计与优化的架构并进行功能模块的划分,对各个功能模块进行详细的论述,同时对该结构下的状态机进行设计,包括:初始化状态机的设计及读写状态机的设计2、对 DDR 控制器的结构进行分析,分析得出 DDR 控制器存在着性能瓶颈。为了解决该性能瓶颈,必须采取相应的优化策略,对 DDR 控制器的结构进行改进,以实现 DDR 控制器性能的优化。3、针对 DDR 控制器的优化,总结目前 DDR 控制器主流的优化策略。这些优化策略每个都可以减少存储器的访问延迟,都有各自的特点和适用范围。针对于本文中的 DDR 控制器处于 XDNP 网络处理器这个大的环境,分析 DDR 控制器的特点,采用适合 XDNP 中 DDR 控制器的优化策略。4、根据采用的优化策略,对 XDNP 中 DDR 控制器的架构进行改进,对其中功能模块进行划分和新增模块的功能进行比较详细的论述。同时对 DDR 控制器的状态机进行改进,主要是对读写状态机的设计进行改进。5、采用功能验证的方法,结合 Modelsim 验证工具对网络处理器中 DDR 控制器进行了验证,包括:初始化验证、读写验证、指令仲裁验证、指令预取验证、刷新验证以及优化验证,验证的结果满足了既定的要求:功能正确,且实现了 DDR控制器的优化。6、对优化前后的 DDR 控制器的性能进行统计和对比,通过对优化前后 DDR控制器执行连续多条指令的时间和运行 30ms 的数据量进行统计和对比,以说明优化后的 DDR 控制器性能可以得到较好的改善。1.3 论文章节安排本文总共分为六章,每章的内容安排如下:第一章:绪论,对网络处理器做了概述,主要讲述了网络处理器由来、架构、以及对存储的要求。针对 XDNP 架构分析了其存储要求,引出了针对 XDNP 的 DDR控制器设计,包括 DDR 控制器的架构设计、功能模块描述、仿真验证及其性能统计。最后就本文的工作,对各章的内容进行了安排。第二章:XDNP 网络处理器的层次化存储系统及其 DDR 存储,首先讲述整个XDNP 的结构,包括其中主要的模块:ME、Strong ARM、FBI、DDR、SRAM 的简单介绍。针对于 XDNP 的结构和存储要求,讲述 XDNP 的层次化存储系统,总共有五层不同的存储器完成各自的存储工作。

    注意事项

    本文(网络处理器中多核共享ddr控制器设计与优化.doc)为本站会员(豆****)主动上传,淘文阁 - 分享文档赚钱的网站仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知淘文阁 - 分享文档赚钱的网站(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于淘文阁 - 版权申诉 - 用户使用规则 - 积分规则 - 联系我们

    本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

    工信部备案号:黑ICP备15003705号 © 2020-2023 www.taowenge.com 淘文阁 

    收起
    展开