首页 ADI_blackfin_DSP培训资料

ADI_blackfin_DSP培训资料

举报
开通vip

ADI_blackfin_DSP培训资料nullDSP工程DSP工程◆ DSP基本特点 ◆ ADI blackfin DSP介绍 ◆ 可视电话DSP系统介绍null◆ DSP基本特点 ◆ ADI blackfin DSP介绍 ◆ 可视电话DSP系统介绍 DSP特点(1)DSP特点(1)DSP一般属于Modified Harvard架构,即它具有两条内部总线:数据总线、程序总线。程序与数据存储空间分开,各有独立的地址总线和数据总线,取指和读数可以同时进行 。 传统的冯·诺曼(Von Neuman)结构取指令和取数据都访问同一存储空间,需要分时进行,数据吞吐...

ADI_blackfin_DSP培训资料
nullDSP 工程 路基工程安全技术交底工程项目施工成本控制工程量增项单年度零星工程技术标正投影法基本原理 DSP工程◆ DSP基本特点 ◆ ADI blackfin DSP介绍 ◆ 可视电话DSP系统介绍null◆ DSP基本特点 ◆ ADI blackfin DSP介绍 ◆ 可视电话DSP系统介绍 DSP特点(1)DSP特点(1)DSP一般属于Modified Harvard架构,即它具有两条内部总线:数据总线、程序总线。程序与数据存储空间分开,各有独立的地址总线和数据总线,取指和读数可以同时进行 。 传统的冯·诺曼(Von Neuman)结构取指令和取数据都访问同一存储空间,需要分时进行,数据吞吐率低。 DSP特点(2)DSP特点(2)采用流水作业。每条指令的执行划分为取指令、译码、取数、执行等若干步骤,由片内多个功能单元分别完成。相当于多条指令并行执行,从而大大提高了运算速度。 BLACKFIN采用了8级流水线结构 DSP特点(3)DSP特点(3)独立的硬件乘法器。乘法指令在单周期内完成,优化卷积、数字滤波、FFT、相关、矩阵运算等算法中的大量重复乘法。 DSP除法仍然采用移位减的方法,一般需要16条指令完成,因此除法要尽量避免。如比较A/C和B/D可以转换成比较A*D和B*C。 Blackfin包含两个乘法运算单元(MAC),可以在单周期内完成两次16位×16位运算。 DSP特点(4)DSP特点(4)零开销循环:处理器在执行循环时,不用花时间去检查循环计数器的值,直接跳回到循环的顶部、并将循环计数器减1。在存在大规模循环的情况下,显著降低算法复杂度。 P5=0X20; LSETUP(START,END) LC0=P5 START: R5=[P0]; END: P0++; Blackfin支持两级零开销循环。DSP特点(5)DSP特点(5)独立的DMA总线和控制器。有一组或多组独立的DMA总线,与CPU的程序、数据总线并行工作,提高数据吞吐能力。 Blackfin561处理器片内集成了多条DMA总线,总线宽度高达32位,总线频率高达133Mhz。DSP特点(6)DSP特点(6)大多数DSP使用定点计算。虽然浮点运算精度高,但是对DSP来说,廉价和运算速度更加重要。 为了不使用浮点机器而又保证数字的准确,DSP处理器在指令集和硬件方面都支持饱和计算、舍入和移位 。 定点计算增加了DSP算法 设计 领导形象设计圆作业设计ao工艺污水处理厂设计附属工程施工组织设计清扫机器人结构设计 的难度,降低了代码的可读性。null定点小数 在定点DSP中,小数用Qn来表示,0<=n<=15,n值代表小数点的位置。 例如:B0001,0000,0000,0000,如果是Q15小数,则值为1/8;如果是Q14小数,则值为1/4;如果是Q13小数,则值为1/2; 程序员必须时刻了解当前小数点的位置。null定点小数乘法和整数乘法 ◆ 在DSP中,存在两种乘法,一种是16位整数×16位整数,一种是16位小数×16位整数 ◆ 如果是16位小数×16位整数,乘法结果必须左移一位(如果是Q15小数) ◆ blackfin提供小数乘法指令,乘法结果已经硬件左移一位。 ◆ 简单小数乘法尽量用移位来实现。如a=a*1.25等效于a+=a>>2。 DSP特点(7)DSP特点(7)DSP的运算能力远远高于普通CPU,DSP的运算能力通常用MIPS或MMAC来标识。 MIPS:每秒百万条指令。 MMAC:每秒百万次乘加运算。 ADI BF533最高主频756Mhz,则最高运算能力756MIPS或1512MMACs(BF533内部集成两个乘加运算单元)null◆ DSP基本特点 ◆ ADI blackfin DSP介绍 ◆ 可视电话DSP系统介绍null Blackfin是ADI公司推出的一类新型的嵌入式处理器,专为满足目前音频、视频、通信应用等方面的计算需求和降低功耗而设计。 ADSP-BF533和ADSP-BF561是Blackfin系列中具有代表性的DSP处理器。具有高处理能力、低功耗、丰富的片内资源、丰富的外设接口等特点。BF561的强大功能BF561的强大功能内部集成两个600MHz主频的Blackfin处理器核,运算能力高达2400MMACs。 328K片内存储器,丰富的片内寄存器资源。 16K程序cache和32K数据cache 专用视频处理指令SAA和SIMD(single instruction multiple data) 两个16通道DMA控制器和1个片内存储器DMA 丰富的外设接口:2*PPI,2*SPORT,SPI,UART,64*GPIO,JTAG...存储器存储器片内L1存储器 每个核包含: 32K程序SRAM(其中16K可配置为cache) 64K数据SRAM(其中32K可配置为cache) 4K scratchpad SRAM 共2×100=200K,速度最快,工作在主频 片内L2存储器 共享128K,工作在主频/2 片外SDRAM 最高512M字节,工作在外频 CACHECACHE16K程序cache和32K数据cache 可缓存的内存空间可以灵活配置 异步内存空间(与外部I/O设备交换数据的内存空间)最好不要设置为可缓存 异步内存空间使用存储器DMA在片外存储器和片内存储器之间传送数据(和CPU同步工作)DMADMADMA:直接存储器存取,不需要CPU干预 中断中断专用视频指令(以BYTEOP16M(四个8位字节相减)为例)专用视频指令(以BYTEOP16M(四个8位字节相减)为例)(dest_reg_1, dest_reg_0) = BYTEOP16M (src_reg_0, src_reg_1) 如:(r1,r2)= byteop16m (r3:2,r1:0) ; DSP编程(1)DSP编程(1)经常调用的程序和经常使用的数据要放在片内SRAM中,保证最快的存取速度。这通过section分配内存空间语句来实现。 运算量大的关键程序模块必须用汇编语言编写,要尽量使用blackfin的SIMD指令。 程序主体架构和运算量一般的程序模块建议用C语言编写,便于维护。 在有操作系统的情况下,不建议使用MDMA,因为os一般放在片外,导致cache要经常访问片外,造成片外总线拥塞。 中断处理程序执行时间要尽量短,以免影响高实时性任务的执行,一般只设标志位。DSP编程(2)DSP编程(2)堆(heap)和栈(stack) ◆ heap:动态内存分配空间,用户通过调用calloc()函数来申请。相比全局变量定义,heap动态内存分配具有内存使用效率高、代码结构性好的特点。 heap内存空间要使能cache。 ◆ stack:所有函数的局部变量使用的内存空间。由用户在C编译前指定。局部变量频繁被CPU访问,必须放在存取速度最快的内存空间。在blackfin DSP中,一般指定4K scratchpad SRAM内存做为stack区。DSP编程(3)DSP编程(3)不论simulator或emulator模式,VDSP++开发环境都支持文件输入输出操作,调试非常方便。 LDF文件为工程中的所有代码、全局变量指定内存起始地址。LDF文件对程序运行效率有很大影响。null◆ DSP基本特点 ◆ ADI blackfin DSP介绍 ◆ 可视电话DSP系统介绍null目前采用的是BF532+BF533的系统架构 BF532只完成H.263的编码,支持CIF(352×288)和QCIF(176×144)两种图像格式 BF533内嵌uclinux实时操作系统,完成H.263的解码,音频的编解码,协议栈拆、组包,用户界面等功能。 马上升级到BF561架构。BF532框图BF532框图BF532的SPI口通信BF532的SPI口通信编码后的码流通过SPI口(DMA)传给BF533的组包程序。 每一帧编码完毕后,将本地小画面(128×216)抽值传给BF533的一处固定缓存,由BF533的显示模块送显。 编码码流和本地小画面通过增加一个32bit的包头来区分。 532和533之间还需要PF引脚的中断通讯来同步。 561方案中不再使用SPI口通信,因为两个核共享存储器。BF532的SPORT口通信BF532的SPORT口通信BF533通过SPORT口传送编码控制命令,如强制I帧、宏块刷新、编码结束等。 BF532在SPORT DMA的中断处理程序中置标志位,在每一帧编码完成后检查该标志位,判断是否有新命令,有则执行新命令。 BF532在中断处理函数里就启动SPORT DMA接收,保证下一组命令的正常接收。BF532的PPI视频采集BF532的PPI视频采集ITU-R 656输入模式 Active field only模式,只接收第一场的有效行,第二场以及第一场的blank行被硬件自动丢弃。 PPI DMA工作在stop模式,即采集完一场有效数据后DMA暂停,等待程序控制下一次DMA启动。BF532程序 流程 快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计 BF532程序流程系统和外围设备初始化; While(1){ 等待上一帧图像采集完成; 采集下一帧图像; 编码; 传送编码码流及本地小画面到BF533; 判断sport中断标志位,如有新命令则执行; } BF533编解码及显示框图BF533编解码及显示框图框图中没有包含操作系统及应用程序部分。BF533视频解码BF533视频解码BF533的视频解码模块是533系统中优先级最高的任务,当协议栈收到一帧后,通知操作系统,操作系统唤醒视频解码任务,当视频解码任务完成后,进入阻塞状态,等待操作系统的下一次唤醒。 音频编解码是次优先级的任务,必须在视频解码任务完成后才能获得CPU的执行权。 实时操作系统和非实时操作系统的一个主要区别就是任务是否可以抢占(preempt)。视频解码任务调度视频解码任务调度while(1) { temp = BufRead; BufRead++; if (BufRead >= BUFNUM ) { BufRead = 0; } if ( BufRead == BufWrite) { BufRead = temp; call_os_server(0,0); continue; } *ppbuf = bufpoll[ BufRead]._buf; break; }模块调用方式模块调用方式视频解码和音频编解码以及显示模块在VDSP++环境下编译,而操作系统和应用程序在linux交叉编译环境下编译,原因: (1)VDSP++的编译效率高于linux交叉编译环境; (2)音视频和显示模块在VDSP++上单独编译有利于该模块的单独调试。 因为分开编译,音视频和显示模块的调用接口都以绝对地址的形式提供给uclinux 。 BF533显示模块BF533显示模块为保证显示的最高优先级,显示通过中断的方式实现,在显示中断服务程序里完成待显示行象素的填充。 显示DMA的源数据缓冲区放在了片内SRAM,保证显示DMA通道的无阻塞。因为片外SDRAM可能存在总线竞争。 显示模块占用系统资源约为50MIPS。Trimedia DSP的特殊硬件结构(1)Trimedia DSP的特殊硬件结构(1)5 slot结构 如上图所示,在一个时钟周期内,Trimedia可同时完成5个操作,其中有三个操作可以是运算操作。相比blackfin的一个时钟周期只能有一个运算操作相比,从理论上速度提高了3倍 编解码组的实际研发经验也证明:300M的Trimedia大概相当于900M的blackfin运算处理能力。Trimedia DSP的特殊硬件结构(2)Trimedia DSP的特殊硬件结构(2)Trimedia运算指令和slot对应表:null THE END
本文档为【ADI_blackfin_DSP培训资料】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
该文档来自用户分享,如有侵权行为请发邮件ishare@vip.sina.com联系网站客服,我们会及时删除。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。
本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。
网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
下载需要: 免费 已有0 人下载
最新资料
资料动态
专题动态
is_023754
暂无简介~
格式:ppt
大小:398KB
软件:PowerPoint
页数:0
分类:互联网
上传时间:2012-09-17
浏览量:19