- 易迪拓培训,专注于微波、射频、天线设计工程师的培养
基于多DSP+FPGA的卫星遥感 像压缩系统设计
2 并行多DSP+FPGA的硬件设计方案
2.1 系统硬件整体框图
数据压缩系统硬件总体框图如图3所示。2x-1路串行CCD数据通过LVDS接口多路并行进入FPGA进行时序转换,每个DSP通过两个串口以EDMA方式从FPGA读取两路相机数据并缓存、压缩编码,整个数据压缩系统需要x个DSP并行处理。压缩后码流数据通过串口输出到FPGA,FPGA重新缓存、组帧、时序转换后输出到固存设备。码流数据输出、遥控指令输入、遥测信号输出和电源的接口均通过底板总线和数传综合处理器连接。
2.2 器件选择
DSP选择TMS320C6416,它是TI公司于2000年推出的一款具有C64XX系列新内核的高性能DSPs芯片。TMS320C6416采用一种高性能的先进的VLIW(非常长指令字)结构,其内部具有8个并行处理单元。因单指令字长为32位,8个指令可组成长达256位的指令包,由内部专门的指令分配模块同时分配到8个处理单元同时运行。因此在600MHz主频时,TMS320C6416的最大处理能力高达4800MIPS(百万条指令/秒)。TMS320C6416核心电压为1.2V,外围电压为3.3V,主频为400MHz"1GHz,并且在600MHz主频下,能够提供833B级器件。
FPGA选用X2V3000-5FG676C,该型号属于Xlinix公司的Virtex-II系列,300万门,676个管脚中包括484个I/O管脚。Xlinix FPGA的基本特点是由可配置逻辑块(CLB)、输入/输出块(IOB)以及可编程互连资源组成,另外还包括三态缓冲器、全局时钟缓冲器和边界扫描逻辑。CLB中包含有查找表(LUT)、寄存器和进位逻辑,IOB中包含DDR寄存器。存储器资源主要包括分布式SelectRAM/ROM以及18KB的块状SelectRAM。
2.3 接口设计
线阵CCD相机图像灰度数据以串行方式及LVDS信号电平输出。为了便于DSP串口接收,由FPGA进行电平转换,并依据相关串行协议进行时序转换。而压缩图像编码则经DSP串口输出,由FPGA进行电平转换,并依据压缩机输出接口时序进行相应的转换。
遥控机输出线有指令线、地线,在使用端上拉。指令整形输出后如需要负脉冲可再外加一级反相器或在FPGA内部实现。遥测接口分为模拟遥测、数字遥测和数据遥测三部分,模拟遥测主要针对电源(5V、1.5V、1.4V等)进行遥测,遥测输出电平为0~5V;数字遥测主要对分机中关键器件工作状态进行遥测,遥测输出电平为TTL电平;数据遥测主要对内部运行状态进行遥测。
3 压缩算法在DSP实现中的关键技术及并行处理
3.1 C6000系列CPU结构与流水线
C6000系列CPU采用哈佛结构,指令取指与执行可以并行运行。程序总线宽度为256bit,每一次取指操作都是取8条指令,成为一个取指包。取指、指令分配和指令译码都具备每周期读取并传递8条32位指令的能力。C64xx系列CPU有两个数据通路A和B,每个通路有4个功能单元(.L、.S、.M和.D),不同的8个功能单元中的指令均可并行执行。
现代微处理器把指令分成几个子操作,每个子操作在微处理器内部可由不同的部件来完成。在同一时间内,可有多条指令交迭地在不同部件内处理,这种工作方式就是"流水线"(pipeline)工作方式。TMS320C6000的特殊结构可使多个指令包(每包最多8条指令)交迭地在不同部件内处理,大大提高了微处理器的吞吐量。
3.2 数据类型转换与数据溢出问题
TMS320C6000系列DSP的数据打包处理技术,可以使用宽长度的存储器对短字长的数据访问,这样可使编译出的代码性能显著提高。压缩算法在DSP实现中,采用short代替int来存储图像像素值和变换后的系数,并确保不会产生数据溢出。
对|T|的每一行求和,最大为2.8284。进行行列两次变换,最终变换系数最大为图像像素值的8倍。当图像像素占8位或10位时,包括符号位1位,16位存储变换系数不会溢出。
来源:21IC电子网
上一篇:桑菲通信:率先推出全球首批Qi标准无线充电手机
下一篇:基于MC13213的单芯片ZigBee平台的物理层协议研究与实现