利用汇聚式处理器Blackfin和uClinux系统实现嵌入式数码相框的设计

描述

本文介绍了汇聚式处理器Blackfin的基本功能,给出了以Blackfin为嵌入式系统硬件平台,并采用uClinux操作系统和其中集成的大量硬件驱动程序来设计具有互联网WiFi无线连接、电子邮件发送、RSS新闻阅读、即时照片分享、全触摸操作等功能的嵌入式数码相框的设计方案。

当今的嵌入式应用已经无处不在,无论是消费电子、通信终端,还是系统设备、工业控制、汽车电子系统或航空航天,都无处不见嵌入式应用的身影。现在,全球每年生产数十亿颗微处理器,其中大部分都被广泛应用于各类嵌入式系统。

目前,在嵌入式系统硬件平台方面,各种微控制器以及数字信号处理器(DSP)产品,无论从品牌、功能特性方面,还是针对目标应用的成本、处理能力、功耗要求、集成度、开发周期、技术难度等具体要求,都可以精心选择出最具综合优势的硬件核心平台。而在嵌入式操作系统方面,无论是开放源代码的Linux阵营的各种商业版本或免费版本,还是WinCE、vxWorks等“重量级”平台,抑或针对特定应用优化的Windows Mobile、Symbian、Android等,也同样可以方便地选择一款最佳的操作系统软件平台。

嵌入式系统的设计过程实际上就是一个软硬件联合协同开发的过程。在进行软硬件平台选择评估时,单纯地离开硬件去评估操作系统或离开操作系统评估硬件平台都有失偏颇,特别是对于很多非通用处理器来说尤其如此。当前很多嵌入式硬件平台都提供有针对目标应用优化的操作系统及软件模块资源,一些商业化的操作系统也针对主流的硬件平台进行了优化设计,而且提供了众多的第三方优化操作系统版本。这些资源对于嵌入式系统设计来说具有重要的意义。为此,本文介绍了一种独特的嵌入式平台核心处理器,即汇聚式处理器Blackfin及其主流配套操作系统和相关资源的应用与设计方法,给出了用其设计嵌入式数码相框的设计方案。

1 硬件处理器Blackfin的选择

本设计选用汇聚式处理器Blackfin来构建独特的嵌入式硬件平台。汇聚式处理器Blackfin是由ADI和Intel公司联合开发的微信号架构(MSA),它集32位RISC型指令集、双16位乘法累加(MAC)信号处理功能和通用型微控制器所具有的易用性于一体,这种汇聚式处理能力的组合使得Blackfin处理器能够在旗号处理和控制应用中均发挥极佳的作用,并可在许多应用中免除增设单独的异构处理器的必要,因而极大地简化了硬件和软件设计。Blackfin处理器非常适合于以会聚为关键技术的嵌入式音频、视频、通信应用,包括多格式音频、视频、语言和图像处理,多模式基带和分组处理,控制处理和实时安全性处理等。正是这种独特的系统架构所具有的设计灵活性和可扩展性为Blackfin处理器赢得了广泛的适应性,也使其广泛应用于数字家庭娱乐、网络和流媒体、汽车远程信息处理和信息娱乐、数字无线电,以及移动电视终端。

Blackfin处理器在单内核产品中可提供高达756MHz的性能,以及低至0.8V的低功耗电压。所有的Blackfin处理器均具有多个独立的DMA控制器,这些控制器可支持自动数据传输,而且其所需的处理器内核开销极少。此外,Blackfin处理器还具有丰富的存储器配置,可以极大地方便嵌入式系统的应用开发。其中ADSP-BF51x系列处理器就同时具有NOR闪存、NAND闪存、铁电存储(FRAM)、SDRAM,同时还提供有支持Lockbox安全技术的一次性可编程存储器。

Blackfin处理器架构完全符合SIMD标准,并带有用于加速视频和图像处理的指令。该架构很适合于全信号处理/分析应用。由于Blackfin处理器具有最佳的代码密度且只需进行极少(或者完全不需要进行)代码优化处理,因而不会遇到其他传统处理器所常见的性能空间障碍。

2 uCLinux操作系统的选择

嵌入式操作系统的选择对于正在从事新的嵌入式开发项目来说,它与选择嵌入式硬件微处理器同样重要。对于Blackfin处理器来说,除了处理器本身的独特性能特性优势外,强大的嵌入式操作系统资源也是嵌入式系统设计的一个关健因素。Blackfin处理器支持包括VisualDSP自带的操作系统内核(VDK)、ThreadX、uCLinux和Nucleas等操作系统,这一特性可避免将操作系统从其它处理器平台移植到Blackfin平台时,因更改操作系统而延长的终端产品开发周期。各种操作系统各自都具有不同的特性功能以及不同的价格、版权费用等条款。从特性上看,嵌入式操作系统有代码紧凑、复杂度低的操作系统VDK,也有复杂而具有丰富特性的操作系统uClinux,同时具有可靠性极高的INteGRI TY,以及专注于汽车市场需求的RTA-OSEK等。通过对各种操作系统的功能分析,本设计最终选择了uCLinux操作系统来进行数码相框的设计。图1所示是其操作系统在Blackfin上的组织结构。

处理器

图3 简单的数码像框的硬件结构图

由于Blackfin处理器BF52x,自身就带有NOR闪存、NAND闪存、铁电存储(FRAM)、SDRAM等存储器,因此,在需要进一步外扩存储器时,完全可以利用其自身固有的应用程序,另外,如果希望使该数码像框同时带有音频功能,也可以很容易的将NI公司LabVIEW图形化数据流开发环境扩展到高性能、低功耗的Blackfin处理器,再通过音频和视频DAC、ADC以及编解码器等集成I/O,将存储单元中的图像文件中的音频数据转换为模拟信号,然后通过音频系统还原成声音输出。至于USB接口和图片数据文件的输出显示,无论是硬件还是软件驱动程序,目前都十分成熟而且简单。

5 结束语

本文利用ADI公司的汇聚式处理器Blackfin作为嵌入式系统的硬件平台,并采用uClinux为操作系统,同时采用ADI针对目标应用在uClinux操作系统中集成的大量硬件驱动(包括WiFi驱动、音/视频编解码器的驱动等)程序,给出了一种具有互联网WiFi无线连接、电子部件发送、RSS新闻阅读、即时照片分享、全触摸操作等功能的嵌入式电子数码相框的设计方案。事实上,由于本系统缺少存储器管理单元(MMU),内存管理仍是嵌入式处理器需要进一步解决的问题之一,这样,在BF52x平台上移植Linux应用就仍然必须修改由于内存管理模式不同而带来的问题,而且工作量较大。这一点仍然是今后需要解决的一个技术问题。


打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分