本文主要介绍Blackfin处理器及其视频应用产品范例,典型嵌入式数字视频系统的构成,
Blackfin处理器的内部视频特性,以及应用架构构建考虑等内容。
Blackfin处理器简介
一直以来,实时系统的任务处理一直被划分为DSP、 C单独处理,在不断满足应用要求的过程中,单独处理的优化已尽量做到了高效,但多处理器的方案却总是增加了复杂性和成本。为解决这一技术难题,1999年ADI公司和英特尔公司合作,提出了一种微信号体系结构---Micro-Signal
Architecture,在微处理器 C和数字信号处理器DSP二者合一的体系结构之上诞生了Blackfin处理器。Blackfin处理器既具备了微处理器的功能性,同时拥有了数字信号处理器的高性能。
Blackfin处理器的出场得到了广泛的认同和市场应用,以下给出当前视频应用的几个例子。
(1)数字硬盘录像机--大立科技公司
该数字硬盘录像机采用Blackfin 532处理器完成视频的编码。这款芯片的高性能低价格为该产品提供了良好的性价比和市场竞争力。目前这款产品不仅国内热销同时远销海外。
(2)IP摄像头--天朗电子公司
该IP摄像头采用Blackfin 561处理器完成视频语音的编码,同时完成了操作系统和网络协议栈的功能。单芯片的方案、高质量的视频,引起了业界的广泛关注。IP摄像头产品预计将成为视频监控领域的下一个增长点。
(3)PMP----iPed(爱浦多)公司
爱浦多公司的该款PMP产品采用Blackfin 531处理器完成视频语音的解码,同时完成了操作系统、网络协议栈、图形界面等功能。其吸引人的价格、单芯片的方案、超低的功耗、高性能的处理,为该产品提供了良好的性价比,获得了市场的广泛好评。
(4)IP视频电话--优创科技公司
该IP视频电话采用Blackfin 561处理器完成视频语音的编解码,同时完成了操作系统和网络协议栈的功能。单芯片的方案、高性能的处理、完备的功能为该产品提供了良好的性价比和市场竞争力。
典型的嵌入式数字视频系统构成
图1给出了典型的嵌入式数字视频系统的构成,功能上由视频源、视频解码、视频处理、视频编码、视频显示等五个部分组成。
图1 视频系统构成(略)
视频源分为模拟视频源和数字视频源两种。对于模拟视频源,由于采集的是模拟视频信号,在送入处理器处理之前,需要通过视频解码器将模拟信号转化为数字视频信号,同时处理器需要通过SPI或者I2C对视频解码器进行初始化。对于数字视频源,它送出的信号可直接送入处理器中进行处理。比较常用的两种数字视频源为CCD传感器和CMOS传感器。
视频显示方面,与视频源类似,也分为模拟显示和数字显示两种。对于模拟视频信号的显示,数字视频信号由处理器送出之后,需要通过视频编码器将数字视频信号转化成模拟视频信号。对于数字视频显示,它可以直接显示处理器送出的数字视频信号。
视频处理的核心是Blackfin处理器,它拥有一个多功能、高速的并行接口 PPI接口。通过这个PPI接口,可实现与平行的AD/DA转换器、ITU的R601、656视频编解器以及其他通用外设的无缝连接。PPI包括一个专用时钟引脚、3个帧同步引脚和16个数据引脚,最高工作频率可达75MHz。它有两个典型的工作模式:通用模式和BT.656模式。
Blackfin处理器内部的视频数据传输
在图2中,左边显示了一种PPI接收视频数据的情形。PPI通过DMA将数据搬移至片外的存储空间SDRAM。因为原始数据流的带宽很宽,数据量很大,因此需要较大的存储空间来存放多帧的数据。另有一个专用的DMA通道同时可以将数据搬移至片上的存储空间。片上的存储空间支持处理器内核的高速访问,有利于满足处理器内核压缩视频数据时对待处理数据的要求。压缩好的数据又被存回到片上存储空间,并有某个专用的DMA通道通过串口送出,给后端处理部分。
图2 Blackfin处理器内部视频数据传输(略)
右边显示了一种PPI发送解码后视频数据的过程。解码后的数据同样是通过彼此独立的DMA通道从PPI送出显示。
Blackfin处理器内部具备多个独立的DMA控制器,数据的传输可以是内部处理器和有DMA能力的外设之间,也可以是存储区之间。另外,Blackfin处理器还支持链状DMA和二维DMA,其中二维的DMA尤其适合视频数据块的搬移。Blackfin处理器内核有专门针对视频应用设计的四个video
ALU模块,可以极大地提高视频处理的速度。
应用架构的构建与处理的时序要求
在开始实现一种应用或算法之前,一个非常重要的工作是要确定应用中的处理时序要求,所以通常情况下要对Framework做三个方面的评估:1)目标应用需要多高的处理速度;2)目标系统中需要传输多少video数据,怎样有效使用DMA的传输能力;3)目标系统中存储带宽的需求。
当对于所要开发的应用有了清楚的Framework定义以后,在Blackfin处理器上构建一个有效的Framework,将是一件十分容易的工作。
Blackfin处理器是一种灵活的双核处理架构,用它可以很方便地构建对称多处理(AMP)或者非对称多处理(SMP)的系统。在实现非对称多处理架构时,可以用一个内核来实现DSP的应用,而另一个内核用于实现MCU的功能。在实现对称多处理架构时,两个内核可以通过高速总线共享外设和数据的方式来同时承担类似的任务。
综上所述,Blackfin处理器具备高性能的视频和语音处理能力,且具有低功耗、低价格的特点,它拥有广泛的技术开发资源支持,是一个低风险且能满足快速产品投放市场要求的视频应用解决方案。
更多详细内容,敬请登录bwin客户端
在线座谈网址:
http://seminar.chinaecnet.com/060328/jchf_adi.asp
问答选编
问:Blackfin处理器与其他视频应用相比,最大的特点 是什么?
答:1. 高速与高性能视频接口PPI;
2. 专用的多通道DMA;
3. 多级内存架构;
4. 专用的片上视频ALU和专用的视频指令;
5. 多个通用外围接口,如高速串口等。
问:BF561的双核中,Core A和Core B 能互相访问对方 的片内资源吗?如可以,有什么特别的事项要注意?
答:BF561具有独立的 Core A 和Core B.它们可以通过 L2 共享内存,并能用interrupt/semaphore进行通信。
您还可以使用IMDMA在Core A 与Core B的内存之间 进行数据传输。
问:和TI的TMS320C5501相比,ADI的BF533有何特别 之处?
答:BF533的功耗相对来说较低,处理速度最高可达到 750MHz,尤其是视频处理方面功能较为强大。
问:BF系列处理器前期开发需要做哪些投入,费用如何?
答:前期您需要购买一套开发工具,价格$1200。包括 评估板、HPPCI接口的ICE以及带有3个license的 开发软件。我们会有初级和中级的免费培训,具体
事宜您可以和ADI的代理商世健联系。
问:如何修改和读懂LDF配置文件?
答:使用ADI的visualdsp++的Expert linker可以很方 便地对LDF以图形交互的方式进行修改和管理。
问:SCLK的测试结果是通过外部接口还是通过软件得 出的?
答:既可以通过外部接口测出来,也可以通过软件计算 出来。
问:Blakfin 处理器内部有LCD驱动控制器吗?
答:Blakfin 处理器的PPI可直接与相关的TFT LCD无缝 互连。详细情况可以参考ADI 网站上的EEnote。
问:PPI的时钟由外部提供,怎么做到与内部同步?
答:Blackfin PPI内部有相应的同步机制确保同步。
问:用一片BF533能否完成实时的视频采集、处理(图 像识别、OSD等)及回放?
答:没问题。Blackfin有针对视频应用的高级专用指令 来加速视频及图像处理速度。并且Blackfin的PPI 接口和高效的DMA
引擎来支持视频应用。
问:播放MP4时能达到30帧/秒以上的速率吗?
答:MP4的播放可以做到30帧/秒。
问:在数字电视接收的应用中,想接收加密电视的话, 需要支持CA和DVB的解扰算法。Blackfin有没有 硬件支持其算法?没有的话,软件处理能否满足
速度要求?
答:BF是CPU + DSP架构,没有硬件对算法的支持,对 CA和DVB的解扰算法需要软件来实现,BF具有足 够的能力对其进行处理。
问:动态Cache与静态Cache相比,效率到底有多大的 提高?
答:两者没有绝对的效率比较,这需要根据您具体的系 统情况而定。由于Blackfin片内L1 SRAM可以部分 由用户配置成Cache,因此用户可以根据自己的系
统资源需求灵活地配置Cache,以提高系统的效率。 从结果来看,效果的提高是非常显著的。 问:如何处理BF561在PPI以DMA方式传送数据时,数
据不稳定的问题?有没有什么源码可以借鉴?
答:通常情况下BF561 PPI的数据传输非常有效。但在 外部数据总线不够优化时会限制PPI数据传输。所 以在应用设计时应对总线传输进行相应的优化。如
有其他疑问可以email 到processor.china@analog.com 寻求技术支持。
问:Blackfin处理器可以在网络流媒体的开发中应用 吗?
答:可以,Blackfin适合网络流媒体中的应用,尤其是嵌 入式网络流媒体应用。
问:针对于533-ezkit-lite这样的bootmode,从外部启动 和从Flash启动有何区别?
答:BF533由于内部没有Flash,所以需要将外部程序 boot到内部RAM来运行,这种情况由于内部RAM 速度快,可提高效率。如果选择从外部启动,则运
行效率较低。
问:指令存储器只有32KB,如果我的程序大于32KB时 如何解决?
答:大于32KB的程序可以放到L2 或L3 memory,然后 通过enable instruction Cache来确保程序运行的效
率。
问:如何使用Cache?如何正确使用段映射?
答:Blackfin的Cache 以及相应的映射机制和通用的嵌 入式处理器是一样的,您需要配置相应的Cache寄 存器,还有可能需要修改ldf文件。具体操作请参
考Visual DSP++提供的例程。
问:请介绍Blackfin处理器的寻址模式?
答:Blackfin采用的是4GByte统一寻址,即实模式寻址, 所有的存储空间地址都是唯一的。
问:我想使用BF处理器做信号分析:对8路16位A/D 信号(采样率为50kHz)做16384点的FFT(32位精 度),并将采样波形数据通过10M以太网远传,请问
使用哪一款处理器比较合适?
答:Blackfin主频高达750MHz,在Blackfin的datasheet 中有FFT的相关benchmark,所以需要您根据需求评
估后才能决定选择哪款处理器。
问:我想设计移动的模拟卡片式小LCD电视,这需要用 I2C调谐功能,带有MP3与MP4功能,还需要别的 MCU吗?仅BF531或533够用吗?
答:根据您提的这些要求,BF531已经足够用了(您的电 视视频图像大小可能最大是CIF),不再需要额外 的MCU。BF531在PMP上已经有很多应用,如果您
需要详细情况,请联系tao.cheng@analog.com。
|