微波EDA网,见证研发工程师的成长!
首页 > 硬件设计 > 嵌入式设计 > 基于MPC8247嵌入式电力交换系统的设计与实现

基于MPC8247嵌入式电力交换系统的设计与实现

时间:01-18 来源:互联网 点击:

摘要:首先介绍了基于MPC8247的嵌入式电力交换系统的硬件平台,着重阐述了如何在MPC8247处理器上开发嵌入式电力交换系统,主要包括开发环境的搭建、系统引导模块U-Boot修改、内核的裁剪和移植,交换软件SDK移植,应用软件ZebOS的编译等。通过电力交换设备(DPN8000)的现场应用,证实该系统具有体积小,功耗低,高带宽等优点,为电力通信网络和系统的开发做出了贡献。
关键词:嵌入式系统;MPC8247;电力交换系统;移植

随着电力通信的发展,电力业务量的增加,对嵌入式电力设备的I/O处理能力有了更高的要求,尤其需要能提供大容量、高速率和高带宽的语音、数据和视频业务支撑的嵌入式接入设备,因此,性能高,功耗低的大容量嵌入式电力设备倍受青睐。
Freescale公司生产的PowerPC处理器MPC8247具有集成度高,功耗低和能支持丰富的外围设备等优点,再搭配IP Infusion的ZebOS(R)软件,实现了快速通信与高吞吐率的数据处理,有效地提高了网络的性能、降低了网络基础设施的成本并增加了运营商和企业的收益,很好地解决了嵌入式电力通信设备遇到的问题。本文以开发大容量电力光交换设备OLT(DPN8000)为背景,介绍了电力交换系统的硬件设计和嵌入式交换系统系统开发的搭建,重点针对如何实现嵌入式电力交换系统给出解决办法。

1 硬件平台的概述
MPC8247板主要包括CPU子系统,其系统框图如图1所示。


MPC8247是Freescale公司MPC82XX系列微处理器的一种,主要由G2_LE内核(PowerPC 603e内核的一种),系统接口单元SIU以及通信处理模块CPM组成。支持60x总线,其数据线宽为64位,地址线为32位;支持PCI/LOCAL总线,其数据线宽为32位,地址线为32位。PowerPC8247内核工作时钟最高为400 MHz,CPM工作时钟最高为200 MHz。外设接口大致如下:
(1)SDRAM:64位256 MB容量,由4片64 MB的MT48LC32M16A2TG组成,使用Local Bus的D[0:63]和A[16:28]。
(2)FLASH:32 MB容量,由2片16 MB的S29GL128N组成,设计中该FLASH工作在WORD模式,使用Local Bus的D[0:31]和A[4:29]。
(3)PCI总线:引出一个32位66 MHz的PCI总线,经过PCI-PCIe桥片PI7C9X10转换成为PCIe总线,经XMC连接器连接到底板的交换芯片BCM56 338,作为Fabric芯片的管理端口。

2 嵌入式系统开发环境的搭建
2.1 准备开发环境
通常嵌入Linux的开发分为主机系统和目标系统,他们之间通过网络接口和串口互连,网口一般用以下载程序和内核映像文件,串口一般作为console控制台来使用,在主机通过超级终端与目标系统进行命令交互,就像PC的键盘和显示器。
嵌入Linux系统模型如图2所示。


2.1.1 安装开发编译环境
通常主机与目标板的CPU都不相同,需要进行交叉编译。在本项目中使用了GNU GCC工具链。GNUGCC的PowerPC版本需要交叉编译,所有源代码可以从FSF的FTP站点。
整个建立过程为:下载源文件、补丁和建立编译的目录;建立内核头文件;建立二进制工具(binutils);建立初始编译器(bootstrap gcc);建立C库(glibc);建立全套编译器(full gcc)。
安装好之后可以用“which ppc_8xx.gcc”来查找一下产生的目标执行文件在哪里。
2.1.2 配置DHCP
主机系统需要设置DHCP服务器,用于目标系统在采用BOOTP启动时获取IP地址。设置之前首先要知道目标系统的MAC地址,同时要保证主机系统安装了DHCPD服务器。修改虚拟机中/etc/dhcpd.conf配置文件,然后用如下命令重新启动dhcpd服务:
#/etc/init.d/dhcpd restart
同时启动dhcpd服务,使主机每次启动时自动启动该服务。
2.1.3 配置TFTP服务器
TFTP(简单文件传输协议)服务器用于目标系统从主机系统上获取可执行的代码或内核映象文件。
以超级用户登录主机系统,编辑下面文件:
#vim/etc/xinetd.conf
去掉下面一行的注释:
#tftp dgram udp wait root/usr/sbin/tcdp in.tftpd
根目录下创建tftpboot目录:
#mkdir tftpboot
将每次编译好的目标代码拷贝到该目录下,在系统服务中启动TFTPD服务(运行#setup,在“System services”中选择。)然后执行:#service xinetd restart即可。
2.1.4 配置NFS
NFS主要是给目标系统提供一个根文件系统(Root Filesystem)。
首先,编辑配置文件/etc/exporlts:
#vi exports
如果原来不存在,添加一行:
/home/com_target_master*(rw,no_root_squash)
“/home/com_target_master”是根文件系统所在的目录,“*”允许主机所在网段所有机器访问。和配置TFTP一样,在系统服务中启动NFS服务,重新启动系统或运行:
#service nfs restart
2.2 目标板FLASH资源分配
对于系统平台来说,建立良好的FLASH分区是系统成功运行的基本保证。具体FLASH资源分配如表1所示。

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top