- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
环形缓冲区的实现技巧及其在信号处理中的应用,环形缓冲区的实现原理,环形缓冲区,c环形缓冲区,串口环形缓冲区,java环形缓冲区,环形缓冲区读写控制,stm32串口环形缓冲区,环形缓冲区开源代码,环形缓冲区c语言
维普资讯
第 26卷第 6期 泰 山 学 院 学 报 Vo1.26 NO .6
2004年 11月 JOURNALOFTAISHAN UNIVERSITY NOV. 2004
环 形 缓 冲 区 的 实 现 技 巧 及 其
在 信 号 处 理 中 的 应 用
许 盈
(泰山学院 计算机科学与技 术系,山东泰安 271021)
[摘 要] 环形缓冲 区技术在数字信号处理 中有着广泛的应用,本文在详细分析常见的环绕变换算法的
基础上。提 出了一种极其简单的变换算法,并在实际应用中得到 了较好的效果.
[关键词] 环形缓冲 区;信号处理 ;数字滤波
[中图分类号] TP391 [文献标识码 ] B [文章编号] 1672—2590(2004)06—0065—02
我们知道队列是一种最基本的数据组织结构,它具有先进先出的访 问特点,在数据 的传输、处理中
有广泛的应用 ,特别是采用环形缓冲区技术构造的队列结构,在数字信号处理中更加有用,如信号的缓
冲存储、延迟、数字滤波等 .环形缓冲区实际上就是一段首尾相接 的线性存储单元,编程 中常用来构造具
有队列性质的数据结构,是队列结构最简单有效的实现方式.
环形缓冲区也可理解成一个具有特殊访 问方式的数组 ,例如一个有 n个元素的数组:。,。,:,
… , 一:, . ,其元素除 。、 一外都有一个前导和一个后继元素 ,如 的前导元素为 ,后继元素为
(0in一1);而 。只有后继 。, 一。只有前导 一:.但如果将其看成环形缓冲区,则 。的前导为
, … 的后继为 。,于是每个元素都具有前导和后继元素,形成了一个 “环”.
对环形缓冲区的操作一般采用下标的相对移动 (加或减)实现对不 同元素的访问,在其首尾相接处
还应作下标变换 ,以实现环绕 .变换算法的优劣将直接影响程序的效率,特别是对于实时数字滤波等对
处理速度要求极高的场合 ,这一点变得尤为重要 .下面我们简单分析一下下标变换算法 .
当我们用下标 P依次访 问环形缓冲区的各个元素时,若 P沿正方 向超过 n一1时,应作变换P=P—
n;若 P沿负方向超过0时,应作变换 P=P+n.例如 P=n一1,当前元素为 P]= n一1],其后继元
素应为 P+n],由于 P加 1后等于 n,大于 n一1,故作变换P=P—n=0,从而得到正确的后继元素
[P]= 0].该算法在编程实现时,要进行 1或2次的比较判断(包括转移)及 1次加减运算 .
我们再考虑另一种变换算法 :当下标 P改变后 (无论正向或负向),取 P=Pmodn,若结果小于 0,则
再P:P+n.该变换算法要进行 1次余数运算 1次 比较判断以及 1次转移或加法操作 ,与前述方法相
比,其空间和时间效率都较高 .
当环形缓冲区的大小 n取 2,4,8,16… 等2 (m为整数)这样的特殊值时,我们可以得到更加简单
的变换算法 .对于具有 2 个元素的数组,其下标范围为 :O~2 一l,恰好对应于 m位二进制数的取值范
围,在进行下标加减计算时 ,在首尾相接处该二进制数表现为 向第 m+1位的进位(或借位),如果忽略
该进位 (或借位),则得到 的正好是下标变换后 的结果 .例如 n:16,则 m:4,当前下标 P=(14)。。=
(11lO),如果从当前位置 向后移 3个元素,即 P=P+3=(17).。:(10001),此时若忽略第 5位的进位
(将其清 0),得 P:(0001):=(1)。。,而 [1]正是按环形访 问时从 [14]后移 3个元素所对应的元素.
[收稿 日期 ]2Oo4一l0一 l5
[作者简介]i午 盈(1956一).女,山东济南人,泰 山学院计算机科学与技术系高级实验师
维普资讯
泰 山 学 院 学 报
文档评论(0)