首页 | 期刊简介 | 编辑部 | 广告部 | 发行部 | 在线投稿 | 联系我们 | 产品信息索取
2024年3月29日星期五
2011年第01期
 
2010年第12期
 
2010年第11期
2010年第11期
 
2010年第10期
2010年第10期
 
2010年第09期
2010年第09期
 
2010年第09期
2010年第08期
 
2010年第07期
2010年第07期
 
2010年第06期
2010年第06期
 
2010年第05期
2010年第05期
 
2010年第04期
2010年第04期
 
2010年第03期
2010年第03期
 
2010年第02期
2010年第02期
 
2010年第01期
2010年第01期
 
2009年第12期
2009年第12期
 
2009年第11期
2009年第11期
 
2009年第10期
2009年第10期
 
2009年第9期
2009年第9期
 
2009年第8期
2009年第8期
 
2009年第7期
2009年第7期
 
2009年第6期
2009年第6期
 
2009年第5期
2009年第5期
 
2009年第4期
2009年第4期
 
2009年第3期
2009年第3期
 
2009年第2期
2009年第2期
 
2009年第1期
2009年第1期
 
2008年第12期
2008年第12期
 
2008年第11期
2008年第11期
 
2008年第10期
2008年第10期
 
2008年第9期
2008年第9期
 
2008年第8期
2008年第8期
 
2008年第7期
2008年第7期
 
2008年第6期
2008年第6期
 
2008年第5期
2008年第5期
 
2008年第4期
2008年第4期
 
2008年第3期
2008年第3期
 
2008年第2期
2008年第2期
 
2008年第1期
2008年第1期
Analog Devices Blackfin处理器技术问答精选

问:BF-53x系列处理器可以进行32位乘法吗?

答: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程序就从那儿执行。

         
版权所有《世界电子元器件》杂志社
地址:北京市海淀区上地东路35号颐泉汇 邮编:100085
电话:010-62985649
E-mail:dongmei@eccn.com