![]() |
|
||||||||||||||
| | 首页 | 新闻 | 文库 | 方案 | 技术 | 独家 | 座谈 | 下载 | 电路图 | 开发套件 | 仿真器 | 邮购 | 帮助 | VIP会员 | 芯片代购 | | ||
|
||
|
|||||
| Analog Devices Blackfin处理器技术问答精选 | |||||
作者:佚名 文章来源:世界电子元器件 点击数: 更新时间:2006-12-28 ![]() |
|||||
|
答:BF在一个周期内只有两个单元进行两个16位乘法,因而可以在一个周期内进行32位乘法。不过, BF-53x支持多周期的32位 MAC(乘加器)指令,即: Dreg *=Dreg.请参考EE-186。如果你需要32位乘法,你应该考虑用SHARC或TigerSHARC 处理器,因为它们是设计用于单周期内32位乘法和累加的。 问:Blackfin 处理器处理视频数据,特别是视频ALUs的速率是多大? 答:相对于PPI,最大视频输入速率是66.5M 16Bit。所以CCIR656 27M 8 可以直接通过PPI。 Blackfin内核在一个周期内可以处理4个8位 ALU(算术逻辑单元),因此1秒内600Mips可以处理 600M 4 8Bit个8位ALU。Blackfin 还给用户提供详细的视频指令,比如运动估计指令、平均指令、剪贴指令等。 问:如何使用Blackfin和暂存器(scratchpad)SRAM? 答:当速度很重要时,使用暂存数据存储器。例如:堆栈应该映象到暂存数据存储器,以便在中断处理时实现最快的内容切换。同时堆栈可以由暂存器来实现。注意暂存数据存储器仅可由 DSP 内核访问,不能由DMA控制器访问。 问:ADSP-21532的数据表,它的数据表与ADSP-BF532的一样吗?ADSP-BF532 EZ-Kit的原理图? 答:ADSP-BF532的数据与先前的ADSP-21532一样,请参考ADSP-BF532的数据表。如你所知,ADSP-BF533、 ADSP-BF532 和 ADSP-BF531的代码和管脚完全兼容,所以请参考BF533 EZ-KIT手册后面的原理图进行设计。 问:不使用PPI可以捕捉CIF未压缩图像吗? 答:可以,但你的外部总线必须使用FIFO连接,不过建议你最好使用PPI。 问:介绍一下多片处理器级联使用的功能? 答:在同一个系统中,像SHARC和TS这样的ADI DSP可以分享外部SDRAM、SRAM和主端口。DSP的判优机制允许任何一个DSP使用共享总线。DSP之间也可以使用链接端口传输数据。 问:如何在BF-535上实现PPI功能? 答:PPI 可以设置为CCIR656和通用PPI。因而使用CCIR656模式时,不需要使用Hsynsc和Vsync就可以将视频编码器直接连上。你也可以用GP模式,使用3个同步管脚。PPI 数据可以直接传送到SDRAM 和内部SRAM。 问:如何在ADSP-21535中使用8位视频ALU? 答:在包括BF535(以前的21535) 和BF531/2/3 的Blackfin 平台上,有一些特殊的视频指令使用视频ALU。你可以参考Blackfin的指令集来使用视频ALU,比如:SAA、BYTEOP16P等。 问:能否再详细一点介绍MSA结构?它是如何将DSP和CPU融合在一起的? 答:MSA是一个崭新的内核,该体系结构的核心有两个16位乘加器(MAC),两个40位算术逻辑单元(ALU),四个8位专用视频ALU和一个40位单桶形移位器,具有两个数据地址产生器(DAG),这是基于DSP的。MSA体系结构支持多种长度指令。它能将16位控制指令与32位DSP 指令在混合一起并链接进64位的长指令组中,使内存分组最大。采用这种体系结构,可以最大效率地处理8位、16位和32位字长的数据。它可以支持8位、16位、32位整数和16位、32位小数数据类型,支持任意的位和位域操作、插入和抽取;它可以同时读取一条指令和两个单独的数据单元;循环计数器允许嵌套零开销循环;它具有统一的4GB内存空间,混合的 16位和32位指令编码,具有最佳的代码密度,这是基于CPU的。更详细的介绍,你可参考ADI Blackfin的硬件手册。 问:如果只是想把数据线上送一个数(16bit),且不要影响地址线,最好的解决办法是什么?用C语言的哪条指令? 答:Blackfin有两条32位片上数据总线,当你在数据总线上写16位数据时,其中一条总线传输这个值,但另一条总线不受影响,其它总线根本不会使用。如果地址与外部存储器一致,那么外部地址总线要受影响。在C语言中,处理它们的最好办法如下: volatile int *address ; address = (int)0x20000 ; 20000是地址 然后赋一个值, 如 (*address) = val; 上述C代码运行很好。 问:在ADSP-BF535 EZ-KIT中,BF535与 PSD 闪存连接。我们想用普通的闪存代替PSD闪存,如何实现接口? 答:我们用一个例子来回答你的问题,将39vf160与 ADSP-BF533连接。尽管PSD闪存更为复杂,但你也可以用EZ-KIT作参考。以下是我的建议,注意仅是建议而已,它不是实际的设计,仅供参考。 ADSP-BF533 39vf160 flash DATA[15:0] DQ[15:0] ABE0 A0 ADDR[19:1] A[19:1] AMS0;CE AWE;WE AOE or ARE OE 详细内容请参阅ADSP-BF533 EBIU 关于异步存储器操作的章节。 问:用ADSP21535做系统设计时,在PWM模式中如何用通用定时器产生波形? 答:在PWM模式中使用通用定时器,请参考附件的代码范例,我在VDSP++仿真器中测试过,运行良好。另外,请注意; 1.你可以从任何一个TIMERx_STATUS寄存器中读取定时器的状态,但是必须写到合适的寄存器上。 2.定时器工作时,不要改动TIMERx_CONFIG 寄存器状态。 3.对于32位的定时器,高/低字的一致性在读操作时不受保护,请检查软件中的值是否正确。 问:我们从您的网站上知道有eMedia 平台。我们正在作视频压缩卡,想知道它的价格,什么时候能买到?另外,在eMedia 平台上对微软的 WM9有优化吗?如何得到使用WM9的许可证?它与eMedia平台捆绑销售吗? 答:ADI 与微软密切合作使WM9在eM10 平台上运行,100k数量的eM10单价是11.95美元 。这个价格包括了对使用WM9的许可费用。不过,客户/最终用户需要先与微软公司签署WM9 许可协议,ADI才能发货。 问:Blackfin可以直接处理来自VGA CMOS传感器的数据吗?如何得到em10许可证?是免费的吗? 答:CMOS传感器是一个数字接口,它可以直接连到Blackfin PPI接口上。EM10许可证不是免费的,它是微软公司的产品,你需要得到微软的许可,许可费用包括在芯片价格内。 问:与xilinx或 altera 公司的FPGA DSP 性能相比,ADI的产品有什么优势? 答:FPGA 和DSP处理器的主要不同是:FPGA是硬件编程,而DSP全部是软件编程,更灵活,更易于修改和升级。你可以使用C语言这样的高级语言进行DSP处理器编程,这样可以缩短你的开发时间。 问:可以在一块ADSP-BF532上完成MPEG4编码和解码吗? 答:由于内核容量,你可以在一个BF532上同时完成MPEG4编码和解码,但是你应该考虑视频输出和输入通道,因为在BF53x上只有一个PPI。所以,如果你不需要同时运行它们,会更容易。 问:我将BF535的复位信号连接于CPLD,但上电复位后无法从ROM内读出程序,必须手动复位,请问是什么原因? 答:应该是你的系统复位时间有问题,请参照26页的数据表,确认你的复位时间满足CPLD的规定。如果满足不了要求,就会有问题,需要手动复位。如果仍有问题,请联系我们:dsp.support@analog.com 问:如果用BlackFin Dsp 进行MPEG4解码工作, 是否能用? 答:Blackfin 可以完成编码工作,解码工作很容易。对CIF格式,你可以用BF531完成解码,BF531仅售5美元。 Blackfin处理器用于多媒体时有很好的性能。使用Blackfin BF532和 BF535可以完成 MPEG4 CIF (352 288) 格式的编码。在Blackfin 上需要180 MIPS来完成上述算法。这意味着由于BF535有350 MIPS,还剩余 170 MIPS可用于其他任务。至于运行速度为400MHz的 BF532,仍剩下 220 MIPS。当然,对有外部存储器的实时系统,需要考虑附加的等待时间。 问:在Blackfin上做MPEG4的编码需要做哪些具体的工作? 答:首先,你应该具备硬件(自行设计或购买)和 C源代码,然后你才可以在Blackfin 平台上优化程序。你应该首先在Blackfin 上设计编程的架构,比如如何使用存储器,如何使用视频输入和输出接口。你可以向我们的第三方伙伴购买库文件,这样可以缩短你的产品的上市时间。 问:如何在DSP中放操作系统?哪儿可以找到这方面的知识? 答:Blackfin上已经放了许多操作系统,下面是其中一些的详细说明:1. 可视DSP核(Visual DSP Kernel) - 这个操作系统不是很成熟,只是一个小小的内核程序,可以作线程开关、给出共享存储器、事件、队列等工作,这个操作系统随 VDSP++ 3.0 工具免费附送;2. 嵌入式Linux ,可以从 Metro Werks得到;3. CMX操作系统;4. 线程X;5. Fusion;6. Nucleas 等。详情请联系我们:dsp.support@analog.com 问:能详细介绍一下Blackfin在无线连接方面的性能和应用吗? 答:Blackfin处理器也可用于无线领域。它的速度是600MHz并且具有微控制器的特性。这意味着用户可以用一个 Blackfin处理器代替DSP和微控制器的两芯片解决方案。另外,Blackfin专用的指令如VIT_MAX 使之适用于通信领域;Blackfin 还具有进行多媒体应用的特性。 我们还有一些能在ADI公司的Blackfin 上实现的语音编译码器,可以以不同的价格提供给消费者。详情请联系: dsp.support@analog.com 问:我想请教一下关于flush函数的意义及用法。 答:Blackfin 处理器上有一个高速缓存。对数据缓存来说,典型情况下你想清洗掉一些高速缓存中已有的数据,用新值代替它。如果你想从存储映象终端读取数据,你需要进行这些操作。上述操作在Blackfin处理器中由flush指令支持,你可以在希望清洗的高速缓存中指定地址。 问:FB的代码能防复制吗? 答:Blackfin代码是从内存执行的,内存采用的是SRAM。可以通过执行从内存到外存的DMA(直接存储器存取)指令,从内部SRAM读取代码,因此,没有代码的安全性可言。同时,如果你有多个线程在运行,假如一些线程总在覆盖其它一些线程的内容,Blackfin有内置的保护可以处理这个问题。 问:在中断向量表中,怎样写跳转到用C写的主程序中。 答:有几种办法来处理这种情况: 1. 如果你想在C程序中安装中断处理程序,可以使用Visual DSP提供的中断函数,如:interrupt、 interruptf。我们的手册中有关于它们的详细解释。你可以使用上述函数用C语言或汇编语言定义自己的中断服务程序。 2. 如果你已经有自己的汇编中断程序,并且想进行C函数调用,我们定义了一组C调用规范,你可以初始化用于C运行时间库的一些寄存器,然后仅发送一个命令 _CProgr_function,C程序就从那儿执行。 |
|||||
| 文章录入:admin 责任编辑:admin | |||||
| 【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口】 | |||||
| 最新热点 | 最新推荐 | 相关文章 | ||
| uclinux-2008R1-RC8(bf561)到 基于DDS芯片AD9851的精密跳频 基于Blackfin DSP的函数_任意 DSP芯片外围电路典型设计 放大器输入保护的利与弊 隔离式电压/电流传感器1B21的 仪表放大器:怎样构建与何时 AD8369,10,7M 两级AD8369做1 请教一个关于AD8310功耗的问 差错和不足:ADI《仪表放大器 |
| 网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!) |
| | 本站介绍 | 合作联络 | 欢迎投稿 | 广告业务 | 网站地图 | 设为首页 | 加入收藏 | 友情链接 | 网站公告 | 联系我们 | | |||
|