Blackfin处理器系统服务中文(2006年1月)ch_blackfin_system_services_transcript
Blackfin平台上视频服务器
Vi o Se v ro a kfn de r e n Bl c i
YUAN n Su , S Ya . , UN in W e LIDa YAN G iBo , I J n Yi g , Ja . i, n , Ha. JA u . n
摘
要 :随着 网络通信技术和 多媒体技术的迅猛 发展 ,嵌入式 的视频监控 设备需求量也在增加 。提 出了一种嵌
入式 的视频服务器解决方案 ,方案 中采用高压缩 比、高鲁棒性 的 H. 4视频编码算法 :对开源代码 Lv 55进行 2 6 ie5 功 能扩展并作为流媒体服务模块 ,负责处理客户端 R S T P 后 ,使用流媒体客户端 VL C对视频服务器进行功 能测试 ,可获 得实时性较好 、流畅度较高 的图像和声音 。
1 引 言
视频监控是 安全 防范系统 的重要组成部 分,它 以
时采集与编码 、 流媒体服务和媒体流发送等功能模块 。 文 中首先给 出了视 频服务器 的硬件结构 ,接着详 细介 绍了软件 部分的设计与实现 ,最后对视频服务器 进行 了功 能测试 。
直观 、准确 、信 息 内容丰富和实时等特性而 得到广 泛
r b sn s d h g o rs i n ag r h H.6 , o e c d ie o re a dta s l t e o e -o r e L v 5 5 a o u t e sa i h c mp e so lo i m- 2 4 t n o ev d o s u c n n p a st p n s u c ie 5 s n t r n h
( rd a i ri , hn s ae f cec sB in 0 0 9 C ia G a ut Unv s yC iee dmyo i e, e ig10 4 , hn ) e e t Ac S n j
指纹识别的应用领域和前景
指纹识别的应用领域和前景摘要:在智能手机中,指纹识别技术呈现出爆发性增长态势,可以说指纹识别已然成为当前的一大卖点。
普及指纹识别及其各项应用属于较为漫长的一个过程,需要各个领域之间得相互配合才可以完美实现。
对此,文章将重点分析指纹识别的相关应用领域及未来发展前景。
关键词:应用;指纹识别;前景引言:关于指纹识别学,是基于人体指纹特征和统计学相结合发展形成的。
在具体应用中,依据不同需求将指纹特征划分为:生命、永久性以及非永久性特征。
1.指纹识别主要应用领域及发展前景分析基于人们逐渐提高的安全意识,加之生物识别技术的出现不仅不需担心忘记复杂的密码,而且也不必随身携带智能卡、钥匙等各种“身外之物”,只需通过个人独有的生物特征便能实现身份认定。
从某种角度来讲,个人生物特征均具备和其他人不一样的唯一性以及在某段时期内不会发生改变的稳定性,其也让生物识别技术变为现阶段,得到公认的最安全和方便的识别技术,推动其逐步向军队、政府、汽车、金融、信心、电信等诸多应用领域渗透。
指纹识别可以称得上是在众多生物识别技术中相对成熟的,而且具有广泛地使用空间。
据IBG发布的一份报告表明,全球生物识别产业在2012年实现了74亿美元的增长,而当中指纹识别大约占据6%的份额。
同时我国有关机构提出,中国在2011年的指纹识别市场规模便已经达到46.51亿元,未来会以更快的速度扩张。
2.简述BF51x处理器BF51x处理器是针对应用指纹识别而进行开发的,属于性价比较高的一个的汇聚式处理器平台,其依据与ADI公司联合研发的(MSA)微信号体系结构,将一个双MAC16位DSP有结合一个正交、巧妙的RISC微处理器的优势,进而允许有关开发人员采取单一编程环境,主要包含四款新型16/32bitBF51x处理器:均具备可以到达400MHz的时钟速率,并且因为MSA架构充分融合了DSP功能与MCU功能,而且准许灵活划分控制以及信号处理的需求方,所以可以充分保障复杂的数学模型与指纹识别算法性能。
基于单PPI口Blackfin DSP的图像采集与实时显示系统
口的数 字信 号 处 理 芯 片 , 通 过将 这 组 P P I 接 口进 行 分 时复用 , 实 现 了实时 的图像 采集 、 处理 和显 示 。
W an g Ge,Chan gM i n ,] t an g Yu an yua n ,Yao Che n ,Zh an g X ue di an
( Sc h o ol of 0 pt i c a l - e l e c t “c a l a n d Com put e r En gi n e e r i n g,U n i v e r s i t y o f Sha ng ha i
图像 采 集 、 处理 与 实 时 显 示 的设 计 方 法 , 并对 系统 性 能进 行 了 分 析 。 分析 结 果 表 明 , 使 用 时分 复 用 单 组 并 行 数 据
口, 可在 保 证 图像 处理 实时 性 的 前提 下 , 有 效 降低 系统硬 件 成 本 , 简化 了系 统硬 件 结 构 。
f o r S c i e n c e a n d Te c h n o l o g y,S h a n g h a i ,2 0 0 0 9 3 ,Ch i n a )
Ab s t r a c t :The r e a l i z a t i o n of a d i g i t a l i ma g e a c q u i s i t i o n pr o c e s s i ng a nd i t s r e a l — t i me d i s pl a y s y s — t e n r i s d e s c r i be s,whi c h h a s o nl y o ne PPI i n t he DSP pr o c e s s or .Th e p e r f o r ma nc e o f t he s y s t e m i s a n a l y z e d. The r e s ul t i n di c a t e s t h a t s h a r i ng t he o nl y PPI i n t i me di v i s i o n mu l t i pl e xi n g wa y c a n r e d uc e t h e c os t o f s y s t e m h a r d wa r e,a nd s i mpl i f y t he s t r uc t ur e of s y s t e m ha r dwa r e wi t h ou t s l owi ng d own t h e s y s t e m a t t h e s a me t i me .I t ma y b e us e d a 8 t he b a s i s a nd r e f e r e nc e f or t h e ha r d wa r e de s i gn o f e mb e d de d s ys t e m.
用于工业控制和高级电源的Blackfin处理器
其 他 特 点 :2 0 的快 速 稳 定 时 4 ns
间,0 0 %,8 —P 出步进 ;高 阻抗 .1 VP 输
输入 ;无须外 部 增益 电阻 器 ;采 用2 7 .
~
可通过一 个简单 的 串行接 口或PW M信
号提 供数字 角度数据 。此外 ,还 可以启
1V电源工作 ,4 8 2 .mA电源 电流 ;低
支持 。
Faich I Se ion u t r r i d m c d c o
ADC 到 l .位有效位( ) ) 达 15 EN(B ,使其
成为包括 电源逆变器 、UPS 、伺服控制
奥 地 利 微 电 子 全 面 的 编 码 器 产 品
电话 :0 5-8 4 — 0 8 7 5 2 6 3 8
处理器
Ba k n B 5 x lc f F 0 处理器以通常时钟 i
为 1 0 0 M Hz 5 ~2 0 的处 理 器价格 提 供 了 40 0 MHz 的性能 ,其内置的双S ADI AR
率。
相辅相成 ,是飞兆半 导体 的视 频滤波 器 系列 的又一个新 增成 员,并 为标清和高 清视频应 用和便携 多媒体设备 提供强大
功率停机 。
今日 电子 .21年3 6 0o 月 3
闪存存储 器 ,这些 特性能使 片外的 器件 护设备 避免 因静 电放 电而导 致损坏 ,并 最少 ,以降低整体 系统成本 。
ADl
S NR 。
可省去 分立式保 护器件 。该 器件还 可提 供3 V电源 选项 ,让设计人 员可将 其用于 5 V或3 V系统 。FM S 1 4 ‘够 将输 入 6 4 AH m 进行A C或DC耦合 ,节 省1 %的线路 板 0 空 间 ,并通过 减 少8 附加 元件 而 降低 个
Blackfin处理器的视频应用
T● 天
■ ADI 司 公
c= ! L ■
N T ●予
本 文 主 要 介 绍 Ba ki 理 器 l f c n处 及 其 视 频 应 用 产 品范 例 ,典 型 嵌 入 式 数 字 视 频 系 统 的构 成 , lc f 处 Ba ki n 理 器 的 内部 视 频 特 性 ,以及 应 用 架 构 构 建 考 虑 等 内容 。 5 2处 理 器 完 成 视 频 的编 码 。这 款 3 芯 片 的 高性 能 低价 格 为该 产 品提 供 5 1 理 器 完 成 视 频 语 3处 音的解码, 同时 完 成 了 操作 系统 、 网络协议 栈 、
缩 好 的数 据 又被 存 回到 片 上 存 储 空 间, 有某个专用 的D 并 MA通 道 通 过 串 口送 出 , 后 端 处 理 部 分 。 给 右 边 显 示 了 一种 P I 送 解 码 P 发 后 视 频 数 据 的过 程 。解 码 后 的数 据
同样是通过彼此独立 的 D MA 通 道
高 性 能 的 处 理 、 完 备 的 引起 了 业 界 的 广 泛 关 注 。I 像 头 P摄
处 理 器 的 功 能 性 ,同 时拥 有 了数 字 信 号处理器的高性能 。
功 能 为 该 产 品 提 供 了 良
Ba ki处理 器 的 出场 得 到 了广 产 品预 计 将 成 为视 频 监 控 领域 的下 好 的 性 价 比和 市 场 竞 争 力 。 lc f n
视 频 处 理 的 核 心 是 Ba ki 处 存 储 空 间支 持 处 理 器 内核 的高 速 访 lc f n 视频解码 、 频处理 、 频编 码、 视 视 视 理 器 , 它拥 有 一个 多 功 能 、 高速 的并 问 ,有 利 于 满 足 处 理 器 内核 压 缩 视 频 显示 等 五个 部分 组 成 。 频 数 据 时 对 待 处 理 数 据 的要 求 。压
blackfin_ldf
--------------------------------------------------------------------------------------------------*/
#ifdef M3_RESERVED
#ifndef USE_PROFILER
#define USE_PROFILER
#endif
#endif
#ifdef USE_PROFILER1
#ifdef __WORKAROUNDS_ENABLED
#define PROFFLAG prfflg1_532y.doj
#define PROFFLAG prfflg0_532y.doj
#else
#define PRO// The profiler needs File I/O to write its results.
#define USE_FILEIO 1
置为VisualDSP++安装目录。如果选择__NO_STD_LIB选项,不包括SEARCH_DIR指令,这意味着链接器没有搜索run-time
库的默认路径。这个选项由-no-std-lib编译器开关选择,确保应用仅被用户提供的库链接。
----------------------------------------------------------------------------------------------------*/
只要链接时需要工作区,__WORKAROUNDS_ENABLED选项就被编译器驱动器定义;尽管编译时可以单独选择每个可用
的工作区,不能对所有的工作区组合提供预构建库。因此,每个库和目标都有单个激活工作区版本,选择了所有的
Blackfin ADSP—BF533在音频处理系统中的应用
理技术 ,以数 字计 算 的方 法对 信号进 行处 理 ,具 有 处理速 度快 、灵 活 、精 确 、抗 干扰 能力 强 、体 积 小及 可 靠 性 高等 优点 ,可 以满 足对 信 号快 速 、
精确 、实 时处 理及控 制的要求 。
第l卷 2
第3 期
电 子元 器 件 主 用
Elc rni e to cComp n nt De ieAp lc to s oe & vc p ia in
V Il o 3 o |2 N . Ma .2 1 r OO
2 1年 3 0 0 月
d i O3 6 /i n1 6 - 7 52 1 .30 7 o: .9 9 . s.5 3 4 9 .0 00 .0 l js
已越来越 多地 被广大 的工程 师所 接受 。并 被越 来 越 广泛地应 用 于语音 处理 、图像处 理 、模式 识别
力结合起来 .从而形成 了一 套独特 的指令集结构 。
该处理 器包 含丰 富 的外 设 .可通过 不 同的 高 速宽 带总线 与 内核相连 .从 而使 系统不 但 配置灵
接 到外 部存 储器 接 口的外 部设 备 之 间完成 ( 括 包
SR D AM控 制器 、异步 存储 器 控 制器 ) 。具有 D MA
1 A S — F 3 芯 片简 介 D P B 53
A S — F 3 处理 器是 Bak n 列 中的 高性 D P B 53 l f系 ci 能产 品 ,专 门针对 多 媒体 ( 别 是视 频 处 理)和 特
活 而且 具有 极好 的性 能 。通 用 外 设 如U R 、带 AT 有P WM 脉 冲宽 度调 制)和脉 冲测量 能力 的定 时 f
VDK介绍(中文)
B lackfin 在线学习 & 开发讲座题目: VDK简介演讲人: Ken Atwell第1章:导言第1a分章:概述第1b分章:Blackfin 操作系统的选择第1c分章: VDK简介第2章:VDK的功能第2a分章:线程和优先级第2b分章:关键域/禁止调度域第2c分章:信号量第2d分章:消息第3章:在线演示第3a分章:建立VDK项目第3b分章:调试第4章:时序和规模第4a分章:内存空间第4b分章:周期计数第5章:总结第5a分章:附加信息第1章:导言第1a分章:概述大家好,我是Ken Atwell,模拟器件公司的产品线经理。
今天我要向大家介绍VisualDSP内核,更多时候也被称为VDK。
在这个单元中,我们将讨论VisualDSP内核,包括它的一些基本概念和功能。
如果您打算听这个单元的讲座,我们建议最好先了解一下软件开发的基本概念。
如果以前接触过操作系统的概念,无论是通过使用其它商业RTOS,还是你所在的公司曾自己开发的操作系统(现在已经开始变得不那么好用),都会对理解本单元的内容十分有帮助。
你现在可以将VDK当作一个可能的替代品。
本单元的提纲如下:在直接介绍VDK之前,将先介绍一下可供Blackfin选择的操作系统。
接下来将花一些时间来讨论VDK的功能,并看一下它的一些API。
随后我将转向VisualDSP,现场向大家展示一些VisualDSP所提供的窗口,可以用来创建、编辑和调试以VDK为核心的应用程序。
最后,我将通过一些测试结果来把所有的内容结合起来,其中包括对VDK应用程序的周期计数和所占空间的测试。
第1b分章:Blackfin 操作系统的选择首先,值得注意的是Blackfin处理器可以使用很多第三方的操作系统,这一页只列出了其中的一部分。
这些操作系统的价格、功能和所能支持的型号都存在着差异。
如果有人碰巧正在其它平台上使用这些操作系统中的一种,那么由于你的操作系统已经能支持Blackfin,从其它平台移植到Blackfin的过程将变得十分简单。
基于Blackfin处理器构建交通标志识别系统:驾驶辅助系统增添行车乐趣
- 。 囊 汽睾好
鼾. 讹 于 a 驾 驶 _ 一你正在高速公路上以 1 2 m h k / 的车速驾驶 , 4 而导航 系统指示距离 目的地还有 8 k 然后公路右 0 m,
边 出现 了交通标志—— 限速 8 k /, 0m h 取消了全速率限制 。 司机 没注意到 8 k h 0m/的速度限制 , 而且也 没有存储在导航系统中。 在这种情况下 , 你就会由此受到 2 5 7 欧元的罚款 , 4 扣 分并且吊销 驾驶执照 两个月。而驾驶辅助系统可以识别交通标志 ,驾驶者便 能享受更轻松的驾车乐趣 。
统 但 没 有 存 储 临 时 的 变 化 ,例 如 建
筑 物 或 者 由交 通 密度 控 制 的 限速 标 志 ,也 没 有 存 储 最 新 版 地 图 升
级 以后 竖 立 的 限速 标 志 。而 可 视
核 用 于 交通 标 志 识 别 , 另一 獭 内核
产 牛 覆 盖 图 , 便 在 … 个监 视 器 上 以
化 系 统 并 能 确 保 一 直 明确 无误
地 将 标 志 对 应 车 道 ,它 还 需 蓦 精
密 定位 相 对 于 车道 的标 志 。因 而 ,
最 佳 方 案就 是 将 导 航 系统 和 幕 于 视 频 的 系统 相 结合 。 被动 驾驶辅 助系统 的优点是 能 实时 显示 驾驶途 中的速 度 限制最新 信息 ;主动 驾驶辅 助 系统 则能在车 速超 过 允许速 度 时 自动地 刹车 ,并 能 通 过识 别 丰 富的 交通 指示 标 志 , 在停 车 、 让道 、 禁止超 车和 红灯等标
志 出现 时 自动 采取 相 应 的 控 制措 施 。
车 乐 趣
显 示 , 监视 器 仪 仪 在开 发环 境 r 该 I l 使 用 。 年中安 装 的 ・ 列控 制 单 汽 系 元 兀 需 监视 器 , 罔此 一 个 内核 就 足 够 厂。它通 过 C AN 总 线 实现 与 汽 车 网络 的通 信 。
ADSP基础入门 第1讲 ADI Blackfin处理器简介
14
成信院-ADI联合实验室
Blackfin---Embedded DSP Processor
Good MCU
Watchdog Timer: RTOS: MMU: 8-bit accesses:
WDOG_CNT、WDOG_STAT 、WDOG_CTL VDK、UCOSⅡ、uCLinux IMEM_CONTROL、DMEM_CONTROL、etc R0 = B[P0++](z);
MSA Core Architecture
Modified Harvard Architecture
18
成信院-ADI联合实验室
MSA Core Architecture Blackfin – 10 Pipeline Stages Memory & Control
课程要求
选修课 32学时(理论12+实验20) 安排5个实验 考核: 考试70%+平时30%
平时成绩包括:考勤、回答提问情况、实验、扩 展实验(思考题)做的情况 考试:课程设计+实验情况 课程设计题目:音频信号采集与处理、数据采集与 谱分析、信号发生器、视频采集、CRC校验、数字 调制器… (题目可以自拟,也可以是实验的改进或扩展。
Good DSP Blackfin
Instruction: R3=(A1+=R7.H*R6.H),R2=(A0+=R7.L*R6.L)||R6=[P0++]||R7=[I0]; Memory Addressing: 2 DAG、Circular Buffering、Bit Reverse Addressing Program Sequencer: 64-bit-wide Instruction-Fetch、10-stage、Zero-Overhead Loop 8-Bit Video ALUs(one cycle)
基于Blackfin双核处理器的音频系统设计与实现
2. 六安 广 播 电视 大学 2 70 5 00
s s e a d u i d ie y t m n a do rv r’ S r c s 糠 u i x p o e s Cl u n
2音频系统开发环境
ADI 司的 B a k i 理器 在一 个 公 lc_n处 f
音频 系统在 嵌 入式领 域 中有着 广泛 的应 用 , 在 网络视 频 公话终 端产 品 中,音 频 系统 需要 实 现 语音 采集 、鳊 码 、 解 码 、 输 出和 网络
I 电话 采 用 的 是 分 组 交 换 技 术 , P 可以 实现 信道 的统 计 复用 ,并 且采 用 了
提供 的 Viu l s a DS P++。
3 音频 系统 软件 实现
3 1 音 频 系统软 件设 计 .
结合 ADS P—BF5 设 计特 点 ,采 61
Au i s se s wi l ue n h id o rb c 酣 d ytm i o d y sd i e t e fe f efe 妯 l l
高效 的语 音 压缩技 术 ,使 网络 资源 的利 用效 率 更高 。音 频技 术 中最 重要 的就 是 模数 转换 A DC与数 模转 换 D AC,其 中 紧密依靠 于数 字信 号处理 ( S )技术 。 DP
在 网络 发 展 的同时 ,支持 Vo P系统 的 I
sse y tm. 1 h pou t f ew r i o e D n e rd cso nt ok vd tl №舱 t e e Ir nl a 『 y cm’s e la;n s ea 耐 ; m ̄ , 蜩 0 e a s se r&i t i z i o sp呲
Blackfin处理器及嵌入式μClinux在数据采集系统中的应用
系统 结 构 及 硬 件 平 台
本 数 据 采 集 系统 主要 由 2个 数
或通 讯 。
对 功 能 、可靠 性 、成本 、体 积 、功
BF5 31为 系 统 的 核 心 部 分 之
一
个 ADC转 耗 的严 格要 求 。 ADI 司的 B a k n 据 采集 通 道 、1 触 发 通道 、 公 lc f i
,
供 电 电压 33 .V,内 核 电 压 12 .V,
P及 F GA控 制 为 了使 系统 能够 开 机 自动从 F AS P L H 系 列 处 理 器 将 嵌 入 式 微 控 制 器 和 换 及存 储 电路 、DS 中启 动 ,设 置 BMODE为 o ,即从 0 外 部 存 储 器 启 动 。 FPGA、 片 外 S AM 、F AS DR L H,以及 US B和 液
爹李 1 善 ¨ 00 I
|
f
≮ 瓣曩
嚣 葶 譬
维普资讯
《
譬 荔
■ 电子 科技 大 学 自动 化工 程学 院 孟 文 东 王厚 军 叶 朋
Blc f a ki n处 理 器 及 嵌 入 式
1 iu . n x在 数 据 采 集 系 统 中 的 应 用 t Cl
设 通 讯和 驱 动 编 写成 为 一项 复 杂 和 Blc f 处 理 器和 B iu ak n i Cl x的结合 很 数 字 信号 即进入 F GA、 P 行 数 n P DS 进
繁 琐 的 工作 。以应 用 为 中心 的嵌 入 有 吸引 力 。 式 系 统 为此 类 需 求提 供 了一 个 良好 的解 决方 案 ,能 够适 应 实 际 应用 中 字 控 制 处理 。经 过 DS P处 理过 的信 号 , 送 至 其它 外 设 以显 示 、 储 , 可 存
Blackfin 专用管脚复用插件
Engineer-to-Engineer Note EE-341更多关于ADI公司的DSP、处理器以及开发工具的技术资料,请访问网站:/ee-note 和/processor如需技术支持,请发邮件至processor.support@或processor.tools.support@Blackfin®专用管脚复用插件作者:Jagadeesh Rayala Rev 1-May 15,2008 简介本文介绍了如何使用VisualDSP++®开发工具(5.0或更高版本的专用管脚复用插件来配置ADSP-BF54x和ADSP-BF52x的端口寄存器。
使用管脚复用插件可以自动生成C或汇编代码来配置端口寄存器,这样可以大大降低工作量。
管脚复用ADSP-BF52x和ADSP-BF54x系列Blackfin处理器具有一系列丰富的外设,通过强大的管脚复用机制,为外部应用空间提供很高的灵活性。
因为具有一系列丰富的外设端口,ADSP-BF52x处理器将这些外设信号分成四个端口组,分别为PORT F,PORT G,PORT H,PORT J。
对于ADSP-BF54x 来说,外设信号被分成了十个端口组,从PORT A到PORT J。
大多数相关管脚可以被多路信号来共享。
通过多路复用器控制端口的功能。
PORT A到PORT J的每个管脚(ADSP-BF52x处理器的PORT F,PORT G,PORT H)还能作为通用的输入输出管脚。
任何没有被外设功能占用的管脚都可以单独地被配置成GPIO模式。
在默认的情况下,重启以后的所有管脚都是GPIO模式。
但是GPIO的输入输出驱动在默认设置中都是未激活的。
每个端口都有一套自己的映射到内存的寄存器,用于控制端口复用和GPIO功能。
使用外设功能需要明确的使能寄存器(PORTx_FER,对于ADSP-BF52x此处x表示F,G,H)。
端口里面外设间的复用由另一个多路控制寄存器来控制(PORTx_MUX)。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
A B lackfin O nline L earning & D evelopmentB lackfin在线培训课程课程单元:Blackfin®系统服务程序主讲人:David Lannigan第1章:简介第1a节:课程安排第2章:系统服务程序第2a节:概述第2b节:系统服务程序的优越性第2c节:系统架构第3章:动态电源管理与EBIU第3a节:电源管理概述第3b节:EBIU概述第3c节:动态电源管理API第3d节:EBIU API第3e节:举例第4章:中断管理器第4a节:概述第4b节:API第4c节:举例第5章:延迟回调第5a节:概述第5b节:API第6章:DMA管理器第6a节:概述第6b节:API第6c节:举例第7章:标志控制第7a节:概述第7b节:API第7c节:举例第8章:定时器控制第8a节:概述第8b节:API第9章:端口控制第9a节:概述第9b节:API第10章:结束语第10a节:服务程序文档第10b节:总结第10c节:更多信息第1章:简介第1a节:课程安排大家好,我是模拟器件公司(ADI)的平台工具工程师,我的名字叫David Lannigan。
今天我们将讨论面向Blackfin处理器家族的系统服务程序。
今天,我们首先要讨论什么是系统服务程序,以及系统服务程序的优越性。
然后,我将逐一介绍每个系统服务程序提供的高级功能,并概述各个系统服务程序的API。
其间,我将穿插一些例子,演示如何利用系统服务程序执行电源管理、DMA 管理、标志控制和回调管理等。
第2章:系统服务程序第2a节:概述那么,什么是系统服务程序?其实,系统服务程序就是一个为嵌入式系统提供各种常见功能的软件库。
利用系统服务程序,用户可以便捷、高效地接入Blackfin处理器的硬件子系统,具体而言包括锁相环路(PLL)、直接内存存取(DMA)、中断控制器、标志控制器和定时器等等。
我们还提供了一个名为“延迟回调”的服务程序,以帮助用户提高嵌入式系统的中断性能。
C语言程序和汇编程序均可调用这个软件库。
虽然用户可以自由选择C语言或汇编语言,但如果要使用汇编语言,则必须遵循C运行时间调用规则。
所有Blackfin处理器均采用一套通用的API,包括ADSP-BF531、BF532、BF533、BF534、BF536和BF537等单核处理器以及BF561双核处理器。
各种应用和设备驱动程序均可使用这些系统服务程序。
这些服务程序实际上是可用于任何系统的公用程序,既可在未安装RTOS的独立式环境下运行,又可用于VDK环境。
也就是说,如果用户的系统安装了VDK实时操作系统,那么,我们的系统服务程序和API,也能够支持该系统。
第2b节:系统服务程序的优越性常有用户问我,“使用系统服务程序究竟有什么好处?”我认为,系统服务程序最大的优越性就是能够帮助用户快速将产品推向市场。
能够利用现成的代码,干嘛不坐享其成?系统服务程序中包含的软件都是业经测试、稳定可靠的,用户可以轻松上手,直接使用这些程序。
利用服务程序,用户可以轻松整合这些模块化软件。
服务程序将负责管理硬件资源,因此,将不同开发人员编写的两个程序块整合起来变得轻而易举。
此外,我前面提到过,所有的Blackfin处理器都采用完全相同的API,因此,不论是单核处理器还是双核处理器,其API都一样。
我们的Blackfin处理器系列范围广泛,而且还将推出更多型号。
由于所有这些Blackfin处理器都采用完全相同的API,因此,用户可以将应用从某个处理器轻松导入另一个处理器。
我们的设备驱动程序库也基于这个系统服务程序。
因此,用户可以利用系统服务程序,便捷地调用设备驱动程序库。
我们还提供了所有的源代码,以便用户通过研究这些代码,深刻理解其功能,并在这个过程中进一步学习。
通过研究源代码,用户可以深入理解DMA控制器的工作原理,以及如何调用和管理DMA控制器,有哪些寄存器等等。
第2c节:系统架构这个框图演示的是一个典型的应用系统架构。
在最上面,是用户代码;用户可以选择为系统配置RTOS。
然后,是设备驱动程序,负责管理输入和输出系统的数据流。
最下面是系统服务程序。
服务程序之所以会在这个框图的最底部是因为我们不需要RTOS,RTOS是一个可选项。
设备驱动程序、应用、甚至VDK或者任何其他类型的RTOS均可利用这些系统服务程序。
目前,我们提供了8种系统服务程序,包括负责控制Blackfin处理器上的SDRAM控制器的EBIU、动态电源管理、中断控制、DMA管理器、面向Blackfin处理器上的通用IO的标志控制、延迟回调、面向内核定时器、看门狗定时器和通用定时器的定时器控制,以及面向BF534、BF536和BF537等处理器的端口控制。
稍后,我将详细解释什么是回调,以及什么是延迟回调。
我将高度概括地逐一介绍这些系统服务程序,介绍其API,并举例演示如何轻松使用这些服务程序。
第3章:动态电源管理与EBIU第3a节:电源管理概述Blackfin处理器具备一个功能强大的电源管理系统。
通过控制内部电压调节器中的锁相环路(PLL),可以设置多种不同的功耗和性能选项。
对于Blackfin处理器或任何处理器,其功耗均为工作频率和电压平方的函数。
通过控制工作频率和电压,可以控制处理器的功耗。
然而,对PLL和电压调节器进行编程没有想象的那么简单。
需要对寄存器进行编程、生成中断、等待PLL稳定下来,这其实是一个相当复杂的过程,也非常容易出错。
动态电源管理服务程序提供了一个函数,只要调用这个函数就可以改变系统和内核的时钟频率(SCLK和CLCK)、改变运行模式、甚至改变电压电平。
通过一次函数调用,就能改变处理器的运行模式,例如工作、待机、睡眠、深度睡眠和冬眠等运行模式。
用户还可以改变内核时钟频率和系统时钟频率。
当内核和系统时钟频率改变后,电源管理服务程序将自动调节电压电平,以便尽可能最大限度地节省功耗。
例如,如果用户选择了一个较低的内核CCLK和系统SCLK频率设置,那么,电源管理服务程序自动将电压电平降至该频率设置下的最低值。
相反地,如果要最大限度地提高处理器的性能,则可以调高其CCLK和SCLK设置,从而使服务程序自动调高电压电平。
同样地,也可以通过控制电压来调节时钟频率设置。
例如,将电压设定为0.9伏,那么,通过一个函数调用,即可将CCLK和SCLK设置为0.9伏电压下在最高值。
此外,不论用户在什么时候改变了任何时钟频率设置,电源管理服务程序都会自动调用EBIU服务程序,对SDRAM进行相应的设置。
第3b节:EBIU概述下面,我们介绍EBIU服务程序。
EBIU服务程序其实就是Blackfin处理器的SDRAM 控制器的控制器。
它包含一个运算逻辑,可以在SCLK频率发生改变后,自动计算出新的SDRAM设置值。
EBIU服务程序将与电源管理服务程序配合作用,因此,对用户而言,只需要更改CCLK和SCLK设置,EBIU服务程序就会自动调节SDRAM 设置。
要利用EBIU和电源管理服务程序,应用必须首先初始化EBIU服务程序和电源管理服务程序,然后,就可以根据需要调用适当的函数和电源管理服务程序。
例如,设置处理器的工作频率、设置特定电压下的最高工作频率,或者改变处理器的运行模式。
第3c节:动态电源管理API这张幻灯片列出了动态电源管理服务程序的API。
这里我们不会详细讨论API,不过,需要注意的是,在最上面列出的这些初始化函数和终止函数。
每个服务程序都具备一个初始化函数和终止函数。
要调用服务程序,必须首先调用其初始化函数。
在服务程序调用完毕后,还需要调用其终止函数。
一般而言,在嵌入式系统中,系统将以无限循环方式运行,不需要调用终止函数。
下面这些是用于控制工作电压和频率的函数,以及设置运行模式的函数。
第3d节:EBIU API在EBIU API中,最重要的函数依然是初始化函数和终止函数。
在与电源管理服务程序配合作用时,应用只需要对该服务程序进行初始化,然后,它将自动运行。
第3e节:举例这个例子演示的是一个在Blackfin BF537 EZ-KIT Lite评估板上运行的应用。
这个主程序的基本任务是初始化电源管理服务程序,然后,更改处理器的SCLK和CCLK 频率设置,并切换不同的运行模式,包括工作、待机等等模式。
这个应用将调用电源管理服务程序,然后,电源管理服务程序将控制PLL和电压调节器,并调用EBIU服务程序,自动调节SDRAM设置。
好了,打开VisualDSP®。
我们将通过这个例子,逐行演示如何使用电源管理服务程序。
首先,我们要初始化电源管理服务程序。
然后,就可以调用其中的任何API函数。
现在,执行这个初始化函数。
右侧窗口中显示的是CCLK频率、SCLK频率和电压控制振荡器频率的局部变量。
这里,最重要的是CCLK频率和SCLK频率。
接下来,我们要调用一个被称为“GetFrequency(设置频率)”的动态电源管理服务程序。
这些是用于保存CCLK 频率和SCLK频率设置的位置,这些设置将显示在右侧栏的最上方。
好了,执行这个函数,这里显示我们的CCLK频率为250 Mhz,SCLKK频率为50 Mhz,电压控制振荡器的运行频率也为250 Mhz。
通过执行下面这个函数,我们将命令电源管理服务程序将CCLK频率提高至600 Mhz或者将SCLK频率提高至120 Mhz。
现在,单步执行这个函数,命令电源管理服务程序按要求更改这些频率设置;然后,我要进行询问,以确认它是否遵从了这个命令。
果不其然,CCLK频率为600 Mhz,SCLK频率为120 Mhz。
接下来,我们要将CCLK频率设置为500 Mhz,并命令电源管理服务程序最大限度地提高SCLK频率。
也就是说,希望在内核频率为500 Mhz的条件下,尽可能将SCLK设置为最高。
请记住,我们不能分别设置这两个频率,它们之间存在一定的关系。
如果将CCLK频率设置为特定值,那么,SCLK值只能在特定范围内。
因此,这个代码行的意思是告诉电源管理服务程序,将SCLK调至最高,但是CCLK必须为500 Mhz。
好了,我们执行这个函数,要求服务程序计算出符合要求的频率值。
它将CCLK设置为500 Mhz,并将SCLK设置为125 Mhz。
CCLK频率和SCLK频率的组合取决于时钟输入值和处理器采用的振荡器。
如需了解关于这方面的更多信息,请参阅硬件参考手册。
下面我将演示如何改变处理器的工作电压。
我们要命令电源管理服务程序,将电压调节器将至0.85伏,并让处理器以0.85伏电压下的最高频率运行。
所以,我们要调用“SetMaxFrequency(设置最高频率)”函数,设置电压。
然后,我要再次询问CCLK和SCLK频率的值。
询问结果是,当电压为0.85伏时,处理器的最高CCLK频率为250 Mhz,也就是当前的运行频率,而SCLK频率则为83 Mhz。