摘要:介绍ADI Blackfin系列ADSP处理器,双MAC处理器架构使其同时具有DSP的性能和MCU的功能,能够运行嵌入式操作系统;同时介绍在各种网络多媒体应用领域,如IP机顶盒,网络视频监控,可视VoIP电话等方面的设计,说明如何利用ADSP处理器BF533和BF561的架构优势,同时运行操作系统和进行数字信号处理,支持多种多媒体格式,灵活高效地实现软硬件设计。
关键词:双MAC处理器架构,嵌入式Linux,多种多媒体格式, ADSP-BF561 双DSP架构,一核运行操作系统,一核进行数字信号处理
Blackfin是ADI公司推出的一类新型的嵌入式处理器,专为满足目前音频、视频、通信应用等方面的计算需求和降低功耗而设计。而ADSP-BF533和ADSP-BF561是Blackfin系列中具有代表性的DSP处理器。本文将就BF533/BF561在网络多媒体中的应用作一定的介绍。
一. Blackfin系列DSP的典型应用:
汽车图像系统 宽带无线系统 多媒体消费电子产品 数字视频录像机 多声道VoIP 安防和监控 机顶盒 视频会议
二.Blackfin系列DSP的应用趋势
DSP在多媒体应用中的需求正在转变。目前,逐渐显露出对以下产品的市场需求:无线、多媒体产品应用、无线局域网、家庭网关和其他消费类产品;以及对于汽车和工业应用中要求高速信号处理的产品的需求也在不断增长。多媒体的应用,正逐渐走向网络化、多样化。目前的DSP需要满足快速增长的支持多种多媒体格式的产品的市场需求:
视频: WMV ver.9, H.264, MPEG-4, MPEG-2, MJPEG 音频: WMA Pro ver.9, MP3, MP3 PRO, AAC, Dolby Digital, DTS 语音: G.711, G.728, G.729AB, G.723.1A, AMR 无线通信: WLAN 802.11b, GSM/GPRS, EDGE & 3G
传统的可编程体系结构已经无法满足目前有特殊要求的信号处理的需求。固化的ASIC芯片也无法满足目前多制式的产品应用所面临的成本、适应性以及快速推向市场的要求。而采用RISC/DSP相结合的架构现在已经拥有足够的处理能力,能够满足更广的音视频产品市场的需求。
三. Blackfin系列DSP主要特性
Blackfin系列dsp内核最高可达756MHz/1,512MMACs,可以支持多声道音频和VGA/D1视频的多媒体应用处理。加强了动态电源管理,采用0.8V的内核供电,以充分延长在手持设备应用中电池的使用时间。其中ADSP-BF533具有600MHz时钟频率和1.2GMACS(每秒十亿次乘法累加运算)运算速度;低价位的ADSP-BF531则具有300MHz/600MMACS(每秒百万次乘法运算)的性能。这两款Blackfin处理器兼具业界一流的数字信号处理(DSP)性能和微处理器(MCU)功能性并且支持嵌入式操作系统以满足当今嵌入式音频、视频和通信应用对高速运算和低功耗的要求。ADSP-BF533在达到600MHz性能水平时的功耗仅为280mW。为了充分发挥Blackfin体系结构的动态电源管理能力,该处理器集成了一个片内开关稳压器,它利用2.25 V ~ 3.6 V外接电源电压可产生0.7 V~1.2 V可设置的内核工作电压,从而降低了总体成本,并节省了外部电源元器件。
这些新型Blackfin处理器还支持嵌入式操作系统,例如嵌入式Linux、ThreadX 和Nucleus操作系统。另外,Blackfin处理器内的视频优化功能能够实现完全可编程的D1/VGA实时视频和多通道音频处理而没有专门硬件或异构双内核解决方案的复杂性或不灵活性。使用这种可编程的Blackfin处理器,能使用户开发的产品快速投放市场,并且很容易支持新兴的多媒体格式,例如,MPEG-4,H.264和Windows Media。
四. Blackfin系列DSP的内部结构
BF533有较高的集成度,集成了较为丰富的外围接口,如图4-1所示:
图4-1 BF533外围模块图
•强劲的外围接口可支持ITU-R 656视频数据格式 •2个双通道全双工同步串行端口可支持8个立体I2S通道 •12 DMA通道支持一和二维的数据传输 •存储控制器可紧密连接多种外部存储器,如FLASH、SDRAM、SRAM和ROM •3个可以支持PWM核脉冲宽度/时间计算模式的计时器 •可支持IrDA的UART •SPI兼容端口 •实时钟 •看门狗计时器 •调试/JTAG接口 •支持1x到63x频率倍数的PLL
Blackfin处理器DSP内核结构,如图4-2所示:
Blackfin DSP内核包括2个40位的算术逻辑单元(ALU)、2个乘法器/累加器(MAC)、4个视频ALU以及1个移位器。各个计算单元执行不同类型的操作:ALU执行算术和逻辑操作;乘法器执行乘法、乘法/加和乘法/减操作;移位器执行逻辑移位、算术移位、位的压缩和解压缩操作;视频ALU执行单指令处理多数据(SIMD)的逻辑运算,这种操作是基于8位数据的。
计算单元通过数据寄存器组来输入/输出数据。数据寄存器组包含8个32位寄存器。每个32位的寄存器可以看成是2个独立的16位寄存器。例如寄存器R0可以看成由2个16位的寄存器R0.H和R0.L组成。另外寄存器组中还有2个40位的累加器Acc0和Acc1,他们是ALU操作的专用寄存器,主要用于乘法和加法操作。
程序控制器控制指令执行的流向,它包括指令的对齐和解码。程序控制器支持条件转移、条件子程序调用和零开销循环。循环缓冲器存储将要执行的指令。
在目前的嵌入式多媒体应用中有一些采用了多处理技术的解决方案,一般的结构如图4-1所示,双内核引擎通过双口RAM无缝连接,形成了一个硬件/软件综合的平台,可以运行操作系统和使用标准API的应用:
同样的多处理技术,也可以用在Blackfin系列DSP上。在这样的架构中DSP主要负责媒体处理、信号处理;而RISC则主要完成控制、包处理等等。
但实际上Blackfin系列的处理器并不仅仅是一个单纯的DSP,它是一高性能的双MAC处理器,额外拥有其他类似微处理器所常见的一些特性,可以与普通RISC的MCU相媲美。如图4-2所示为OMAP架构的处理器和Blackfin系列处理器的对比:
OMAP系列的处理器内部为ARM和DSP的双核结构,ARM内核负责运行嵌入式操作系统、应用软件等;C5X负责视频、图像处理。而Blackfin系列的处理器,可以同时运行嵌入式操作系统、上层应用和进行一般的信号处理。
而Blackfin系列DSP处理器中BF561更是采用了对称多处理的架构,在一颗BF561芯片内部集成了2个BF533 DSP内核,如图4-3所示:
BF561主频高达600M,并且支持并行处理,保证了其强大的数字信号处理能力,并且支持低电压低电流供电。能够满足多功能的数字消费类产品对于性能、功耗方面的要求。
BF561灵活的多处理架构能够支持多种工作模式,如图4-6所示:
第一种模式(DSP + RISC),BF561内部的2个核可以分为,一个可以用来进行信号处理;而另外一个则可以用来运行操作系统,进行以太网传输,以及其他控制相关的任务。
第二种模式(PURE DSP),在信号处理过程中,可以将1个任务交给2个不同的核去处理,奇数帧由Core A完成,偶数帧由Core B完成;或者2个不同的任务也可以由Core A和Core B分别完成。处理器的性能得到了成倍的提高。
基于Blackfin系列DSP的应用实例
(1)IP机顶盒
基于Blackfin+MCU/uClinux架构的嵌入式IP机顶盒的解决方案:
[1] [2] [3] 下一页
|