位置:51电子网 » 技术资料 » 嵌入式系统

Blackfin嵌入式媒体处理器的体系结构

发布时间:2008/5/27 0:00:00 访问次数:354

引言
针对高级媒体处理要求高速信号处理和控制功能并举的应用需求,美国模拟器件公司(简称adi)开发出了兼备上述功能的单芯片blackfin系列媒体处理器,主要用于对多媒体应用中很普遍的实时数据流和通常由mcu操纵的控制任务进行处理。blackfin处理器通过把信号处理模块[例如双mac和视频运算器(alu)]和典型的mcu功能(例如操作模式和内存管理单元)结合起来,提供了一种设计嵌入式多媒体系统的集成方法。本文主要介绍blackfin处理器能在一个复杂的多媒体系统中完成dsp和mcu两种任务的体系结构和功能特点。


全面的外围设备

因为mcu本来就是系统控制器,所以它们通常会提供多种多样的用于连接其他子系统的外围设备。这些外围设备包括低速的串行端口[例如串行外围接口(spi)和通用异步收发器(uart)]、可编程通信接口(pci)、通用串行总线(usb)以及一些外围设备。此外,为了进行事件控制,它们通常还包含可以作为事件捕获设备或者脉宽调制(pwm)输出节点的可编程定时器、实时时钟、监视定时器以及大量有用的可编程输入输出(i/o)标志。

blackfin媒体处理器系列不仅包含这些mcu类型的外围设备,还包含用于发送和接收多媒体信息的高速接口(见图1)。例如,其中异步串行端口可连接到高分辨率的音频编解码器和高性能电信接口,而并行外围接口(ppi)可连接到视频编解码器和数据转换器。

与大多数mcu一样,blackfin处理器有片内硬件支持用于软件异常、硬件断点、性能计数器和执行跟踪,而且它还支持通过一个jtag口对目标硬件的完整控制。

用于媒体处理的统一指令集

dsp应用强调尽可能用最少的时钟周期执行尽可能多的算术计算(如mac操作)。为了达到这个目的,它们经常采用vliw(超长指令字)指令,因而为了提高计算效率而牺牲代码密度。另一方面,mcu主要执行的控制功能包含许多条件操作,在程序流程中频繁跳转。这些程序一般都采用c或c++语言编写,并且常常使用实时操作系统(rtos)。因为可能需要大量的控制功能,所以代码密度至关重要,从而使可变长度指令集成为一个突出的特点。

blackfin的vliw指令集包含了64 bit操作码以支持dsp内部环路的每时钟周期多次运算功能,但是因为它经过了优化,以便使16 bit操作码成为使用最频繁的指令。因此,编译后的blackfin代码密度可与那些最优的mcu的代码密度相媲美。

blackfin处理器的软件开发模式使得同一架构内的高性能dsp功能可与典型的risc设备相匹配。系统层和产品层应用代码可用c/c++语言编写,并且位于用户选择的标准实时操作系统的顶层。底层代码,例如原始数据搬移和处理,可以用混合汇编代码和c/c++代码来编写,需要时还可采用手工调整的汇编库。

应该认识到blackfin处理器既不是带有增强指令集的dsp,也不是扩展了dsp功能的mcu,这一点很重要。该处理器既是一种高性能的媒体处理器,也是支持编译器的处理器,两类开发工程师都能认可这种处理器。因为blackfin处理器在一个统一平台上利用一个工具链开发代码,所以开发工程师只要学会一个指令集就能维护在同一个操作系统上运行的一个代码集。这种协同作用实际上创造了一个新的“媒体指令集计算”领域,可大大缩短开发时间。


数据搬移

dsp是数据量很大的应用,所以让它们自己参与多的数据总线和dma引擎以便降低数据搬移对核心处理器的负担。另一方面,mcu通常不支持足够快的存储器数据传输速率以适应流媒体数据。 嵌入式媒体处理器必须有全面的dma能力以便将数据块移进或移出芯片。因为在芯片上集成足够的存储器用于存储多个解压缩视频帧很不切实际,所以必须以一种高度集成的方法采用dma来管理流动数据,以便有效地完成视频处理。考虑到媒体处理应用需要大量的数据搬移,所以数据搬移不允许引起处理器中断,因为中断会影响实时性能。另外,因为进行数据搬移时经过核心处理器会降低效率,所以该dma引擎必须有自主权并且有足够的能力以便降低处理器内核的负担。实质上,该dma控制器允许处理器内核把数据搬移与系统控制过程分离开。 在典型的应用中,原始数据首先从视频端口或串行端口等外围设备直接经过dma进入媒体处理器;然后,在媒体数据处理期间,中间数据直接经过dma送到外部存储器或者从外部存储器获取;最后,处理过的数据直接经过dma送回到外围设备或系统存储器。blackfin处理器除了提供具有不同优先级的高速dma通道外,还具有“二维”dma功能(见图2),使其能以很低的软件开销就可搬移任意矩形区域内的数据(例如,一幅图像中的一个像素块)。


存储器的组

引言
针对高级媒体处理要求高速信号处理和控制功能并举的应用需求,美国模拟器件公司(简称adi)开发出了兼备上述功能的单芯片blackfin系列媒体处理器,主要用于对多媒体应用中很普遍的实时数据流和通常由mcu操纵的控制任务进行处理。blackfin处理器通过把信号处理模块[例如双mac和视频运算器(alu)]和典型的mcu功能(例如操作模式和内存管理单元)结合起来,提供了一种设计嵌入式多媒体系统的集成方法。本文主要介绍blackfin处理器能在一个复杂的多媒体系统中完成dsp和mcu两种任务的体系结构和功能特点。


全面的外围设备

因为mcu本来就是系统控制器,所以它们通常会提供多种多样的用于连接其他子系统的外围设备。这些外围设备包括低速的串行端口[例如串行外围接口(spi)和通用异步收发器(uart)]、可编程通信接口(pci)、通用串行总线(usb)以及一些外围设备。此外,为了进行事件控制,它们通常还包含可以作为事件捕获设备或者脉宽调制(pwm)输出节点的可编程定时器、实时时钟、监视定时器以及大量有用的可编程输入输出(i/o)标志。

blackfin媒体处理器系列不仅包含这些mcu类型的外围设备,还包含用于发送和接收多媒体信息的高速接口(见图1)。例如,其中异步串行端口可连接到高分辨率的音频编解码器和高性能电信接口,而并行外围接口(ppi)可连接到视频编解码器和数据转换器。

与大多数mcu一样,blackfin处理器有片内硬件支持用于软件异常、硬件断点、性能计数器和执行跟踪,而且它还支持通过一个jtag口对目标硬件的完整控制。

用于媒体处理的统一指令集

dsp应用强调尽可能用最少的时钟周期执行尽可能多的算术计算(如mac操作)。为了达到这个目的,它们经常采用vliw(超长指令字)指令,因而为了提高计算效率而牺牲代码密度。另一方面,mcu主要执行的控制功能包含许多条件操作,在程序流程中频繁跳转。这些程序一般都采用c或c++语言编写,并且常常使用实时操作系统(rtos)。因为可能需要大量的控制功能,所以代码密度至关重要,从而使可变长度指令集成为一个突出的特点。

blackfin的vliw指令集包含了64 bit操作码以支持dsp内部环路的每时钟周期多次运算功能,但是因为它经过了优化,以便使16 bit操作码成为使用最频繁的指令。因此,编译后的blackfin代码密度可与那些最优的mcu的代码密度相媲美。

blackfin处理器的软件开发模式使得同一架构内的高性能dsp功能可与典型的risc设备相匹配。系统层和产品层应用代码可用c/c++语言编写,并且位于用户选择的标准实时操作系统的顶层。底层代码,例如原始数据搬移和处理,可以用混合汇编代码和c/c++代码来编写,需要时还可采用手工调整的汇编库。

应该认识到blackfin处理器既不是带有增强指令集的dsp,也不是扩展了dsp功能的mcu,这一点很重要。该处理器既是一种高性能的媒体处理器,也是支持编译器的处理器,两类开发工程师都能认可这种处理器。因为blackfin处理器在一个统一平台上利用一个工具链开发代码,所以开发工程师只要学会一个指令集就能维护在同一个操作系统上运行的一个代码集。这种协同作用实际上创造了一个新的“媒体指令集计算”领域,可大大缩短开发时间。


数据搬移

dsp是数据量很大的应用,所以让它们自己参与多的数据总线和dma引擎以便降低数据搬移对核心处理器的负担。另一方面,mcu通常不支持足够快的存储器数据传输速率以适应流媒体数据。 嵌入式媒体处理器必须有全面的dma能力以便将数据块移进或移出芯片。因为在芯片上集成足够的存储器用于存储多个解压缩视频帧很不切实际,所以必须以一种高度集成的方法采用dma来管理流动数据,以便有效地完成视频处理。考虑到媒体处理应用需要大量的数据搬移,所以数据搬移不允许引起处理器中断,因为中断会影响实时性能。另外,因为进行数据搬移时经过核心处理器会降低效率,所以该dma引擎必须有自主权并且有足够的能力以便降低处理器内核的负担。实质上,该dma控制器允许处理器内核把数据搬移与系统控制过程分离开。 在典型的应用中,原始数据首先从视频端口或串行端口等外围设备直接经过dma进入媒体处理器;然后,在媒体数据处理期间,中间数据直接经过dma送到外部存储器或者从外部存储器获取;最后,处理过的数据直接经过dma送回到外围设备或系统存储器。blackfin处理器除了提供具有不同优先级的高速dma通道外,还具有“二维”dma功能(见图2),使其能以很低的软件开销就可搬移任意矩形区域内的数据(例如,一幅图像中的一个像素块)。


存储器的组

相关IC型号

热门点击

 

推荐技术资料

DFRobot—玩的就是
    如果说新车间的特点是“灵动”,FQPF12N60C那么... [详细]
版权所有:51dzw.COM
深圳服务热线:13692101218  13751165337
粤ICP备09112631号-6(miitbeian.gov.cn)
公网安备44030402000607
深圳市碧威特网络技术有限公司
付款方式


 复制成功!