宽带移动通信系统中的 MAC 层 SOPC 架构设计.doc

上传人:sccc 文档编号:5197018 上传时间:2023-06-13 格式:DOC 页数:6 大小:155.50KB
返回 下载 相关 举报
宽带移动通信系统中的 MAC 层 SOPC 架构设计.doc_第1页
第1页 / 共6页
宽带移动通信系统中的 MAC 层 SOPC 架构设计.doc_第2页
第2页 / 共6页
宽带移动通信系统中的 MAC 层 SOPC 架构设计.doc_第3页
第3页 / 共6页
宽带移动通信系统中的 MAC 层 SOPC 架构设计.doc_第4页
第4页 / 共6页
宽带移动通信系统中的 MAC 层 SOPC 架构设计.doc_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《宽带移动通信系统中的 MAC 层 SOPC 架构设计.doc》由会员分享,可在线阅读,更多相关《宽带移动通信系统中的 MAC 层 SOPC 架构设计.doc(6页珍藏版)》请在三一办公上搜索。

1、精品论文宽带移动通信系统中的 MAC 层 SOPC 架构设计任为北京邮电大学信息与通信学院北京(100876)E-mail:rw.bupt摘 要:本文给出了一种基于 FPGA 的 SOPC 平台下的移动通信系统媒体接入控制(MAC)层硬件架构设计,该设计通过实现处理器软件和 FPGA 硬件协同工作完成 MAC 处理(包括 MAC 层协议以及与物理层接口)的过程。与传统的嵌入式处理器芯片系统相比, 该设计减轻了 CPU 的工作负担,提高了系统的工作效率,可以满足未来宽带移动通信对吞 吐量的需求。关键词:宽带、无线、MAC、FPGA、SOPC中图分类号:TN929.51.引言在移动通信系统中,媒体

2、接入控制(MAC)层主要完成的功能是将网络层的数据(IP 包)进行拆分和重组,然后按照一定的格式发送给物理层,同时也要完成无线资源的分配和 管理以及 QoS 的保证。由于涉及到大量数据的处理以及和硬件的实时通信,通常的 MAC 是采用嵌入式实时系统来实现的。常用的嵌入式系统的核心处理器有 PowerPC、ARM 等。 而工作在其上的嵌入式实时操作系统一般都具有内核精小,效率高,实时性好可扩展可移植 等优点,比较适合应用于无线通信系统中。虽然用单片处理器芯片来完成 MAC 层功能是一种比通用的方案,对于百兆无线通信系 统,也可以达预期的目标。但是这种设计方法也存在着它固有的弊端。由于高速无线通信

3、系 统的物理层都是由 FPGA 或 DSP 等数字信号处理器来实现的,与这些芯片的数据适配工作 就完全需要 CPU 来完成。众所周知,CPU 对数据的处理是按照指令逐条进行的,这样,在 数据吞吐量很大时(如 4G 移动通信系统将需要 Gbps 的数据吞吐量),CPU 不但需要进行 复杂的无线资源管理算法和 QoS 算法,同时又要完成 MAC 层数据块的封装并且把封装好 的数据拷贝给物理层的数字信号处理器进行物理层算法处理。就目前 CPU 的处理速度来说 是远远跟不上需求的。对于这种速率的瓶颈,我们的解决办法有两个,一是采用多核处理。 然而这种做法显然是不经济的,同时多核芯片会增加系统的面积,而

4、多核之间的协同操作也 增加了系统设计的复杂度。另一种方案,就是采用基于 FPGA 的嵌入式系统,也就是 SOPC(System On a Programmable Chip)。这种系统一般将处理器、SRAM、DRAM、Flash、网 口、串口、USB 口、VGA 口等一系列专用硬核直接嵌入到 FPGA 内部,形成一个完整的单 芯片系统。加之配套的片上系统开发工具以及丰富的 IP 核资源,使得 FPGA 灵活的硬件设 计与处理器的强大软件功能有机地结合实现了高速度与编程能力的完美结合,大大提高系统 的工作效率。同时由于资源的可重用性,使设计者可以将精力放在系统架构的设计上,缩短 了系统的开发周期

5、。本文就是采取第二种方法,探索在宽带无线通信系统中 MAC 层的 SOPC 架构设计。2.基于 Xilinx FPGA 的 SOPC 架构Xilinx 公司是全球最大的 FPGA 供应商,也是全球首选的 FPGA 嵌入式软处理器解决方国家 863 计划“Gbps 无线传输关键技术与试验系统研究开发”6案商。从 VirtexII Pro 型号开始,Xilinx 开始在它的 FPGA 中植入了硬连线的业界标准PowerPC405 32 位处理器硬核,从此 Xilinx 的 FPGA 进入了 SOPC 时代。下图为 XC2VP30FPGA 嵌入式系统的架构。图 1:基于 FPGA 的嵌入式系统架构1

6、PowerPC405 是一个 32 位、采用 IBM powerPC 体系结构的嵌入式处理器。主要由处理器模块、片上内存逻辑(OCM)、协处理器单元(APU)控制器和一些接口组成。它具有 五阶段流水线、虚拟存储管理单元、分离的指令 Cache 和数据 Cache 单元,支持 JTAG 调试 等功能。PLB 总线是处理器本地总线(Processor Local Bus)是 PowerPC405 设计中最常用的总 线,也是 PowerPC405 核独有的总线,它的特点有:32 位地址总线,寻址空间 4G;64 位数 据总线,支持 32/64 位主从操作;可同时支持 16 个主设备,16 个从设备;

7、支持 4 及动态请 求级别,仲裁时间小于 3 个周期;自带看门狗定时器。PLB 总线用于挂接一些高速设备, 如 DDR,片上 BlockRam 以及用户自定义 IP 核。OPB 总线是处理器外部总线(On-chip Peripheral Bus)。OPB 总线用于挂接一些慢速外 设,如串口、SystemACE、PCI 总线桥等。所有外设共享 32 位数据总线和 32 位地址总线, 同步与一个时钟。OPB 总线协议支持主设备和从设备之间的单一周期数据传送,支持 16 个 主设备和原则上无限制的从设备,由设备仲裁器决定哪一个主设备占有总线。PLB 和 OPB 之间通过桥接器相连。3.开发工具和 M

8、AC 层 SOPC 架构设计流程本设计用到的开发工具主要包括以下几部分:Xilinx 公司提供的 EDK(Embedded Development Kit)工具,包括 XPS 和 SDK 工具,XPS 工具完成主要软硬件设计和调试工作,SDK 工具用于设计和调试应用软件。Xilinx 公司提供的 ISE 工具,用于混合编程和用户定制 IP 核Xilinx 公司提供的 ChipScope Pro 工具,用于在线调试硬件系统Mentor 公司提供的 ModelSim 仿真工具主要用于对用户自定义 IP 进行仿真调试Wind River 公司提供的 Tornado 嵌入式系统开发工具用于对 VxWo

9、rks 内核进行裁剪以 及上层应用程序的开发。一个完整的 SOPC 系统设计流程包括硬件设计与调试,软件设计与调试,仿真,生成可下载文件等步骤。本设计的设计流程如下所述:1.创建硬件平台,定制 IP 核。这个过程是在 EDK+ISE 开发环境下完成的,Xilinx 的 EDK 开发工具的最大的优点就是提供了大量的可配置可定制的 IP 核资源,这大大提高了设计的效率,可以使设计者将精力 集中与系统架构设计上。本设计的系统架构如下图所示:FPGAPPC405DMAcontrollerGMAC千兆以 太网口PLB总线DDRcontrollerIP包缓 存DDR1USR_IPDDRcontroller

10、重传帧 缓存 DDR2图 2:基于 SOPC 的 MAC 层硬件架构图中仅给出了和本文的设计密切相关的 PLB 总线周边的设备,而对于 OPB 总线相连的 外设等没有画出。DMA 控制器用来完成将网口 IP 包的接收,并存储在接收缓存 DDR1 里。 PPC405 用来完成 MAC 处理过程,包括 QoS,对端控制,本地控制和业务数据处理等工作。 DDR2 用于存放重传的 MAC 帧。USR_IP 是用户自定义的 IP 核,需要在 ISE 下丰富并完成 它的功能实现,然后在 EDK 中按照 PLB 总线的协议挂接在总线上。这个 IP 是 MAC 层与 PHY 层连接的核心模块,也是我们设计的主

11、要内容,对此将在下一节进行详细阐述。2.创建软件平台,编译应用程序。PPC405 支持 standalone,VxWorks,Xilkernal 等不同的软件系统,其中的 standalone 模式直接调用驱动函数进行应用程序编写,常用于底层硬件的调试。VxWorks 和 Xilkernal 都 是嵌入式操作系统,可根据实时性需要进行选取。本设计前期的硬件调试采用 standalone 模 式的应用程序,最终的 MAC 处理采用的是基于 VxWorks 的嵌入式操作系统。创建完软件 平台后需要生成软件系统的 BSP 和库文件。3.生成仿真文件进行软硬件联合仿真EDK 工具会根据用户定制的硬件平

12、台和添加的应用程序自动生成系统的仿真文件,对于本设计,还需要手动添加用户自己设计的 DDR 模型文件,修改生成的 ModelSim 编译脚 本文件将用户在自定义 IP 中新添加的设计文件进行编译,然后修改用于 ModelSim 仿真的 测试激励文件后就可以进行软硬件系统的联合仿真。当然在这之前,必须保证 ModelSim 需 要的仿真库编译正确。4.生成可下载文件进行板级调试将 2 中生成的 BSP 和库文件移植到 Tornado 工程目录下进行 VxWorks 操作系统内核的剪裁,之后将编译好的操作系统的内核添加进 XPS 工程中,连同硬件平台一起生成比特流, 下载到目标板上。之后,就可以进

13、行上层应用程序的调试了。4.自定义 IP 实现 MAC 层与 PHY 层接口设计在传统的设计中,业务处理的工作就是 CPU 将网口缓存里的 IP 包进行分片和重组并加 入一定的头信息封装成固定大小的 MAC 块,然后将数据拷贝到连接在处理器外围总线上的 PHY 层的存储设备(一般是 FPGA 内置的 BLOCK RAM 或者是外挂的 DDR 存储器)以备 物理层的进一步处理。然而,随着未来通信系统对带宽需求的增加,数据吞吐量不断的增大, CPU 的处理速度会带来速率的瓶颈。因此我们设计了一种新的架构来进行 MAC 层的业务处理。这就是用 FPGA 来进行数据的拷贝和搬移,实现和物理层的速率匹配

14、。而 CPU 则将主要精力集中于复杂的 QoS 保证和无线资源管理等算法。两者同时工作,可以大大提高 MAC层的工作效率。新的架构的设计如图 3 所示:PPC405PLB busSRAMSRAMregmaster_infcFSMUSR_IPfifo_tx控制信号数据信号图 3:MAC 与 PHY 层接口的自定义 IP 核设计USR_IP 是用户自定义的 IP 核,主要功能是用 FPGA 逻辑资源和内嵌的 BlockRam 实现 数据的搬移并按照固定的时序和格式发送到物理层。这个 IP 核是按照 PLB 总线的协议挂接 到总线上的。其工作过程如下:当有新业务数据的时候,CPU 会不断提取网口缓存

15、中 IP 包的信息,然后将 IP 包进行重 组或分片后封装成一个 MAC 块。数据帧的格式如图 4 所示:IP包IP包控制数据部分MAC块头IP分片1MAC块 头IP分片2冗余比特 填充MAC块 头IP包冗余比特 填充MAC块 头IP包冗余比 特填充重传业务块部分新业务数据部分IP分片1IP分 片2图 4:MAC 帧的数据封装示意图这样的封装只是概念性的,CPU 并不需要将整个 MAC 帧拷贝到本地存储器,而只是将 所有新业务 MAC 块的头部、本地和对端控制数据块拷贝给 USR_IP,而对于每一个新业务 块内容部分和重传业务块以消息的方式发送给 USR_IP。消息的内容如图 5 所示:定长8

16、字节源地址目的地址搬移长度消息类型1消息类型2 源地址 padding图 5:CPU 发送给 FPGA 的两种消息类型对于新的业务块,消息主要包括 MAC 块数据部分的源地址,目的地址,以及搬移的长度。其中的源地址表示网口缓存中 IP 包的地址;目的地址是搬移到重传帧缓存的地址。而对于重传块,消息的内容只有源地址有效,搬移长度根据 MAC 块的大小取固定值。 之后,USR_IP 则根据相应的信息,进行新业务数据和重传业务数据的搬移并与之前 CPU发来的 MAC 头信息一起在 fifo_tx 中封装成 MAC 块后通过 FPGA 的高速串行接口发送到外 部。而对于新业务块,USR_IP 还需要拷

17、贝一份到重传帧缓存,以备重传。至此,MAC 层 处理完成,数据进入了 PHY 层处理阶段为了保证时序,整个 MAC 的工作过程在 FSM 状态机的控制下完成,状态机如下图所 示:N帧定时是 否到来YN握手寄存器 是否写完CPU写SRAM2FPGA处理SRAM1Y YCPU写SRAM1FPGA处理SRAM2握手寄存器N是否写完YN帧定时是否到来图 6:整个 MAC 层的工作时序帧定时信号由 USR_IP 提供,并向 CPU 发送中断信号。当帧定时信号置位的时候,上 一帧 CPU 发来的 MAC 块头以及大量的数据搬移消息已经被存在由 FPGA 内部 BlockRam 组 成的 SRAM 中。CP

18、U 收到中断信号后,将上一帧新业务块的个数、重传业务块的个数通过 握手寄存器发送给 USR_IP。为了保证吞吐量,需要两个同样大小的 SRAM 进行两帧数据的 乒乓操作。这样在 USR_IP 处理上一帧 CPU 发来的数据的时候,CPU 可以进行下一帧数据 的发送,两者互不影响。需要注意的是在定制 USR_IP 核的时候,需要选择其支持主/从传 输的模式,即当 CPU 向 USR_IP 写数据的时候,USR_IP 是作为总线的从设备来用的,与总 线的交互服从 PLB_SLAVE 协议;而当 USR_IP 从 DDR 缓存搬移数据到本地或再将本地数 据搬移到 DDR 缓存的时候是作为总线的主设备

19、来使用,与总线的交互服从 PLB_MASTER 协议。5.结论本文介绍了基于 Xilinx FPGA 的 SOPC 嵌入式系统架构和设计方法,同时基于这种平台 提出了一种新的宽带无线通信系统中的 MAC 层的硬件架构实现方案,该系统设计在 Xilinx 提供的 EDK 集成开发环境下完成,并且在 Xilinx ML410 开发板上进行了软硬件联合调试, 结果证明该设计在 CPU 时钟为 300MHz、总线时钟为 100MHz 的情况下可以达到 1Gbps 的 数据吞吐量。参考文献1 ML410 Embedded Development Platform User Guide Xilinx Se

20、ptember,2007 2 PowerPC 405 Processor Block Reference Guide XilinxJuly, 2005 3 Embedded System Tools Reference ManualXilinxJanuary, 2007 4 Product Specification for PLB IPIF Xilinx October,2004 5 Processor IP Reference Guide Xilinx February,20056 董代洁 郭怀理 曹春雨基于 FPGA 的可编程 SoC 设计北京航空航天大学出版社 2006.67 杨强浩等

21、编著基于 EDK 的 FPGA 嵌入式系统开发机械工业出版社 2008.1SOPC architecture design for wide-band mobile telecommunication system MAC layerRen WeiSchool of information and telecommunication, Beijing University of Posts andTelecommunications, Beijing 100876, ChinaAbstractThis paper presented a new SOPC architecture design

22、 for MAC layer of a wide-band mobile telecommunication system based on FPGA embedded system. The new architecture implements the MAC layer protocol and PHY layer interface through the cooperation of processor software system and FPGA hardware system. The experiment result shows that this architecture can highly reduce the CPU load and improve the throughput compared to traditional embedded processor chip system and can fulfill the bandwidth requirement of future wireless telecommunication.Keywords: wide-band, wireless, MAC, SOPC

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 建筑/施工/环境 > 农业报告


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号