首页
|
新闻
|
新品
|
文库
|
方案
|
视频
|
下载
|
商城
|
开发板
|
数据中心
|
座谈新版
|
培训
|
工具
|
博客
|
论坛
|
百科
|
GEC
|
活动
|
主题月
|
电子展
注册
登录
论坛
博客
搜索
帮助
导航
默认风格
uchome
discuz6
GreenM
»
DSP技术
» 多核DSP Boot load代码加载方法
返回列表
回复
发帖
发新话题
发布投票
发布悬赏
发布辩论
发布活动
发布视频
发布商品
多核DSP Boot load代码加载方法
发短消息
加为好友
苹果也疯狂
当前离线
UID
852722
帖子
10369
精华
0
积分
5185
阅读权限
90
在线时间
277 小时
注册时间
2011-8-30
最后登录
2016-7-18
论坛元老
UID
852722
1
#
打印
字体大小:
t
T
苹果也疯狂
发表于 2015-8-31 16:28
|
只看该作者
多核DSP Boot load代码加载方法
解决方案
,
运营商
,
WCDMA
,
成本
,
创新
引言
无线通信产业不断推进创新,像WCDMA、WiMAX、MIMO和4G都需要增强的性能.性能增强,提供更大通信带宽的同时意味着越来越大的数据流量.多内核DSP强大的处理能力,兼具FPGA的扩展特性和阵列优点以及DSP的相似性和效率。提供了一种高效、易于开发的解决方案,倍受设备商的青睐.而无线协议标准从2G的GSM到3G的WCDMA,冉到4G的LTE,其协议标准的不断更新,以及运营商、设备商对低硬件成本的要求,需要实现一种平滑的协议标准软升级方案,即不改变硬件平台就可实现协议标准的升级.TI公司推出的3内核DSP芯片TCl6488以其强大的数据处理能力,同时支持多种代码加载方式,在满足数据处理要求的同时,支持网络式代码加载,正迎合了这种软升级需求。
1 协议介绍
TI公司推出的DSP芯片TCl648718 (Faraday)具有3个内核,每个内核工作频率均为1GHz.其支持的boot load模式有12C EEPROM、EMAC(以太网口)、SRIO(Serial Rapid IO.即串行快速10)i种模式[3].其中EMAC支持IOM/IOOM/I 000M bit/s传输速率,SRIO支持1.25G/2.5G/3.125G bit/s传输速率.以太网口EMAC支持IPV4,因此可以实现远程、快速的加载代码.SRIO支持内存代码的直接读写,外部主机可以将DSP内存视为本地内存进行直接的读写.SRIO boot load模式时,外部主机直接写DSP本地内存.其3.125G biffs的线上速率,可以达到2.5G bit/s的传输带宽,效率高达80%,加载代码速度极快.采用EMAC和SRIO相结合的方式可以实现一点到多点的快速代码加载。
1.1 EMAC boot load传输协议
以太网口EMAC支持的拓扑结构有星型、总线型、树型、混合型.其boot load帧格式分为以下几个部分分别讨论:DIX Ethernet、IPV4、Boot Table Frame Header、Boot Table Frame Payload。如表1所示。
(1)DIX Ethenet:14 bytes
该部分占用14 bytes,分别为6 byte8的DMAC。目的MAC地址、6 bytes的SMAC.源MAC地址和2 bytes的类型参数Type.该部分固定为Ox0080.目的MAC地址(DMAC)为DSP芯片自身的MAC地址.源MAC地址(SMAC)为主机MAC地址。
(2)IPV4
支持的IP协议类型为IPV4,可选长度为20 bytes或84bytes.本文中采用20 bytes。
1.2 SRIO协议
TCl6488支持的SRIO协议1.2版本link rate速率为1x, 2x,4x。即1.25G,2.5G,3.125G bit/s.支持的拓扑结构有星型、环型等。
SRIO协议规定有两种传输方式:Direct IO与Message方式.当DSP处于SRIO boot load模式时,利用外部引脚进行配置其NODE ID,根据配置的不同,采用Direct IO方式对不同NODE ID的DSP内存直接进行读写,将代码直接写入到DSP内存.类似于外部主设备将DSP内存视为自身内存进行写操作,以此完成boot load.当代码加载完毕时发送Doorbell中断到不同NODE ID的DSP主核(即核0).DSP立即从boot模式跳转到正常模式。执行加载的代码。
2 现有方案分析
代码加载主要依靠DSP芯片的各个接口实现.TI公司C64x系列主要接口有12C、HPI、EMIF等接口,C64x+系列主要接口有12C、EMAC、SRIO等。
I2C传输速率为lOkbps到400kbps,外接EEPROM,常用于固化代码的boot load,不利于升级.
HPI接口有效带宽往往最多只能达到20~30Mbps.操作较复杂,且不易组网.在多核DSP系列里已经去掉HPI接口.
EMAC接口支持10M/100M/1000Mbps三种速率,支持总线形、星形拓扑组网结构.
SRIO接口支持1.25G12.5G/3.125G bps三种速率,支持星形、环形、U形菊花链等拓扑结构.
利用EMAC与SRIO结合的方式可以实现基于IP、可远程控制的局部传输网络,组网灵活可控.
3 原理框图
利用DSP EMAC接口支持IPV4的网络特性,以及SRIO接口使DSP间可以形成的U形菊花链或星形拓扑结构,可以灵活组网。原理框图如图I所示。其中基带处理板与主控板之间由背板连接,主控板通过网线与交换机或路由器连接。主控板与基带板之间组建局域网,由主控板分配IP。远程PC可以通过主控板IP访问到任何一块基带板的CPU。对CPU进行操作,可以对任意一块基带板上的DSP进行代码加载。
图1系统原理框图
4 加载流程
流程图如图2所示。CPU加载DSPl的详细过程说明如下:基带板上电后主控板为背板上各槽位上的基带板的CPU分配IP地址.CPU通过EPLD加载自身程序,与主控板通过SGMII接口获取自身IP地址。远程PC机telnet登录到CPU,下发命令加载CPU底层驱动程序;CPU底层驱动加载成功后,远程Pc下发加载DSP程序命令.以加载DSP1为例,详细说明加载DSP1的过程.CPU加载DSP1时首先给该DSP1复位获取DSP1的MAC地址,成功获取到DSP1的MAC地址后,利用ftp协议从远程PC上获取DSP1的代码,将DSP1的代码存到CPU的内存.此时DSP1一直处于boot load的EMAC加载模式.CPU将DSP1的代码根据EMAC加载协议往DSP1发送代码.当发送完毕代码后,向DSP1发送一包长度为0的加载代码,作为结束包.DSP1根据EMAC加载协议,当收到该包后则从加载模式跳转为正常模式,PC指针从OxOOS00000开始运行.因此对于DSP而言,Ox00800000地址开始的一段空间,必须存放中断向量表.
否则程序将不会正确运行.此时DSP的3个内核同时从Ox00800000开始运行。
加载DSP2至加载DSPn时,首先由CPU根据ftp协议从PC端获取DSPk(k=2?3.n)的代码.根据EMAC发送协议,将DSPk代码发送到DSP1.DSP1收到DSPk的代码后,根据SRIO加载协议加载DSPk的代码.DSPk代码加载完毕后,DSP1向DSPk发送一个SRIO中断。标志加载结束.DSPk响应该SRIO中断。从SRIO加载模式跳转到正常模式,开始从Ox00800000地址开始运行.整个加载过程结束。
图2代码加载流程
5 结束语
通过方案的比较,选择了易于组网,且可控、方便,利于软升级的方案.很方便的设计了TI TCI6488 3内核DSP的bootload程序.完成了DSP系统自举加载.按照该设计思路编制的boot load程序已在WCDMA基站的基带处理板中得到应用,DSP系统能很好的复位及快速、方便的自举加载,更换版本容易,系统运行稳定可靠。
本文作者创新点:作者利用DSP的以太网接口及SRIO串行快速输入输出接口组网进行DSP的自举加载。并设计了加载软件。流程清晰。该方法快速,方便,易于扩展及升级.可作为其他DSP及嵌入式应用的自举加载参考。
收藏
分享
评分
回复
引用
订阅
TOP
返回列表
电商论坛
Pine A64
资料下载
方案分享
FAQ
行业应用
消费电子
便携式设备
医疗电子
汽车电子
工业控制
热门技术
智能可穿戴
3D打印
智能家居
综合设计
示波器技术
存储器
电子制造
计算机和外设
软件开发
分立器件
传感器技术
无源元件
资料共享
PCB综合技术
综合技术交流
EDA
MCU 单片机技术
ST MCU
Freescale MCU
NXP MCU
新唐 MCU
MIPS
X86
ARM
PowerPC
DSP技术
嵌入式技术
FPGA/CPLD可编程逻辑
模拟电路
数字电路
富士通半导体FRAM 铁电存储器“免费样片”使用心得
电源与功率管理
LED技术
测试测量
通信技术
3G
无线技术
微波在线
综合交流区
职场驿站
活动专区
在线座谈交流区
紧缺人才培训课程交流区
意见和建议