




已阅读5页,还剩49页未读, 继续免费阅读
(生物医学工程专业论文)基于dsp的驾驶疲劳检测系统.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
a b s t r a c t d r i v i n gi nf a t i g u ei so n eo ft h em a i nr e a s o n so ft r a f f i ca c c i d e n c e s ,h o wt od e t e c ta n da v o i df a t i g u ed r i v i n gi s v e r yi m p o r t a n tf o rr e d u c i n gt h i sk i n do fa c c i d e n c e p e r c l o si sw i d e l ya c c e p t e da st h ee f f i c i e n tm e t h o dt od e t e c t f a t i g u e u n l i k ep c ,d s pi sm o r ef a s t e r , s m a l l e r , l o w e re n e r g yc o n s u m p t i 0 1 1a n dc a nb ee a s i l ya d o p ti ne m b e d d e d s y s t e ma sar e s u l t t h et m s 3 2 0 d m 6 4 2i st h em o s tp o p u l a ra n dw e l lp e r f o r m e dc h i p u s i n gi nv i d e op r o c e s s i n g 8 0 i ti sv e r ys u i t a b l ef o ru s i n gi nt h i sf a t i g u ed e t e c ts y s t e m o u rl a bh a sa l r e a d yf i n i s h e das y s t e mw h i c hi sb a s e do np cp l a t f o r m u s i n gp e r c l o sp a r a m e t e r sm e t h o dt o d e t e c tf a t i g u e o u rl a ba l s oc o n s t r u c t e da b e c e d a r i a na r i t h m e t i ca n di m a g ed a t a b a s et ot e s tt h i sm e t h o d t h i s s y s t e ma d o p t sa d a b o o s ta r i t h m e t i ct ol o c a t eh u m a nf a c e , u s eh ai c o nc o m p u t e rv i s i o nt o o l st ol o c a t ee y e s t h r o u g hp r o j e c t i o nm e t h o d ,f i n a l l ya p p l yc i r c u l a r i t ym e t h o dt oe s t i m a t et h ee y es t a t u s b a s eo nt h ep cs y s t e m ,0 1 1 1 p u r p o s ei st od e s i g naf a t i g u ed e t e c t i n gs y s t e mw h i c hc a l lb ef i x e do r lv e h i c l e s , n o n - c o n t a c ta n dr e a l t i m e f i r s to fa l l ,w ed e s i g nt h eh a r d w a r ea n ds o t t w a r ef i a m e w o r kb a s eo nt h et a s k t h e nw e p r o p o s et h ep e r c l o sp a r a m e t e r sc a l c u l a t i o na n da r i t h m e t i cf l o w , i m p r o v et h ep r i m a r ye y e sl o c a t i n ga n de y e s s t a t u sd e t e c t i n ga r i t h m e t i c w eu s ea d a b o o s ta r i t h m e t i cb a s e do nr e c t a n g u l a rf e a m r e st or e a l i z ee y e sl o c a t i n g , w o r k i n go u tt h ef i x e d - p o i n tc o d eo fa d a b o o s ta r i t h m e t i c ;t od e t e c tt h ee y e ss t a t u sw ea p p l yc i r c u l a r i t ym e t h o d , w ea l s or e a l i z et h e 血e d p o 血c o d e so fi ta n dt h ep e r c l o sp a r a m e t e r sc a l c u l a t i n gm e t h o d i ns u c c e s s i o n , w e e v a l u a t ea l lt h ea r i t h m e t i co nm a n yk i n d so fi m a g el i b ,i nn o r m a li l l u m i n a t i o nc o n d i t i o n ,t h ee y e sl o c a t i n ga n de y e s t a t u sd e t e c t i n ge f f e c ti sa l lr i g h t a tl a s t ,w ei m p l a n ta l lt h ea r i t h m e t i ct od s pp l a t f o r ma n do p t i m i z et h e mb a s i n g o nd s ph a r d w a r ef r a m e w o r k ,a c h i e v i n gt h ed e m a n d i n go fr e a l t i m e ,t h ea v e r a g ep r o c e s s i n gt i m eo faf r a l l l ei s a b o u t5 0 m s k e yw o r d s :d r i v i n gf a t i g u ed e t e c t i n g ,p e r c l o s , d m 6 4 2 ,e y e sl o c a t i n g ,a d a b o o s t ,e y e s s t a t u sd e t e c t i o n i i 东南大学学位论文独创性声明 本人声明所呈交的学位论文是我个人在导师指导下进行的研究工作及取得的研究成果。 尽我所知,除了文中特别加以标注和致谢的地方外,论文中不包含其他人已经发表或撰写过 的研究成果,也不包含为获得东南大学或其它教育机构的学位或证书而使用过的材料。与我 一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。 研究生签名: 三止骂日 东南大学学位论文使用授权声明 东南大学、中国科学技术信息研究所、国家图书馆有权保留本人所送交学位论文的复印 件和电子文档,可以采用影印、缩印或其他复制手段保存论文。本人电子文档的内容和纸质 论文的内容相一致。除在保密期内的保密论文外,允许论文被查阅和借阅,可以公布( 包括 刊登) 论文的全部或部分内容。论文的公布( 包括刊登) 授权东南大学研究生院办理。 研究生签名:刍j :珞师签a 日期: 第一章:绪论 1 1 选题背景 第一章绪论 据公安部交通管理局的统计结果表明:由于疏忽人意,错误判断,措施不当三项造成的死亡率为2 0 左右,而这三项事故原因中都有着疲劳驾驶的因素。同样,据美国国家公路交通安全管理局估计:每年因 驾驶员疲劳而导致的车祸大约有1 0 万起,其中由于疲劳驾驶直接导致死亡的约占交通致死事故3 1 ;法国 国家警察总署事故报告表明,因为疲劳驾驶导致的意外占人生伤害事故的1 4 9 ,占死亡事故的2 0 6 ;日 本的事故统计揭示,因疲劳产生的事故约占1 一1 5 :根据英国汽车协会统计,英国车祸的死亡事故中, 有1 0 是因司机疲劳驾驶引起的。同时有资料表明,高速公路发生的交通事故中,有5 0 以上是由于长时 间疲劳驾驶或所见目标单调使司机注意力不集中、甚至打磕睡等原因造成的【1 1 。 通过对以上数据和报道的分析可知:驾驶疲劳造成的交通事故无论是绝对数字还是所占比例都是很高 的,从国内外多年来交通事故的大量案例分析中可以得出结论:驾驶员因疲劳驾驶所造成的道路交通事故 约占总数的1 0 至2 0 ,由此可知,驾驶疲劳是造成交通事故的主要原因之一,同时也是引发驾驶员职业 病的主要原因。 因此,开展驾驶疲劳检测的研究工作意义重大。 1 2 研究现状 1 2 1 疲劳检测方法 驾驶员每天驾车超过8 小时、连续驾驶机动车超过4 , b 时未休息或停车休息少于2 0 分钟的,或冈睡眠不 足、体力消耗过大等导致行车中困倦瞌睡、四肢无力,造成驾驶中会出现暂时性的大脑空白,这种现象称 为驾驶疲劳。驾驶疲劳的反应可分为生理和心理两个方面,生理反应有:神经系统的功能、血液和眼睛的 变化,如头重、心跳加快、脉搏加速、手脚酸痛、气喘、胸闷、口渴、食欲不振、叹气、打哈欠、频繁眨 眼、表情变化少、眼睛发红发干、视觉模糊、耳内轰鸣、感觉烦躁恍惚、分辨不清方位等等。心理反应有: 视力下降、注意力分散、视野逐渐变窄、漏看错看信息的情况增多、反应迟钝、判断迟缓、动作僵硬、节 律失调、思维能力下降、头脑糊涂、忘记操作规范、精神不振、郁闷嗜睡、自我控制能力减退、容易激动、 心情急噪或开快车掣2 1 。 驾驶疲劳检测是对驾驶员行驶时的这些生理和心理上的特异性指标的检测。目前国内外已经开展的疲 劳监测研究方法主要有: l 、检测脑电图( e l c c 仃d 即c e p h a l o g r a m ,e e g ) 。脑电图一直被誉为检测疲劳的“金标准,【3 1 。 2 、检测,& , 图( e l e c t r o - c a r d i o g r a m ) 。心电图指标包括心率指标和心率变异性指标,它也是判断驾驶疲劳的 项重要生理指标【4 】o l 东南火学硕i j 学位论文 3 、检测肌电 刘( e l e c u o m y o g r a p h y ) 。从生理角度看,疲劳可氛围体力疲劳和脑力疲劳。脑力疲劳的测量可 用诱发电位的方法,在肌肉表面同定好表面电极,肌电信号经表面电极传至肌电图记录仪。可以看出, 肌电图的频率随着疲劳的产生和疲劳程度的加深呈现下降趋势,而肌电图的幅值增大则表明疲劳程度增 大5 1 。 4 、检测头部位移。主要是通过检测驾驶员在行驶过程中头部的位移情况来判断其是否在打瞌睡。一般做 法是在驾驶员座位上方设计安装一个位移传感器阵列,每个传感器都能输出驾驶员头部距离传感器的 位置,利用三角函数就可以计算出头部在x ,y ,z 三维空间中的位置,并实时跟踪头部的位移,同时 利用各个时间段头部位移特点,可以判断出司机是否在打瞌睡【6 l 。 5 、检测眼睑眨动。目前大部分研究驾驶疲劳的机构都采用眼睛闭合时间占特定时间百分率( p e f c 饥te y e l i d c l o s u r e ,p e r c l o s ) 作为生理疲劳程度的测量指标。通常,人在疲劳嗑睡时眼睑眨动较频繁,眼睛闭合 时间也较长。一般情况下人们眨眼时眼睛闭合的时间在0 1 瑚1 3 s 之间,驾驶时若眼睛闭合时间达到 o 1 5 s 就很容易发生交通事故。这项研究是由美国联邦公路局机动运输车办公室资助国家公路交通安全 管理部门主持开展的项目。此项目是为了在实验室评估一个可靠的、有效的疲劳检测方法和技术,并 且分析了报警对驾驶员警觉度的影响程度。在这些被评估的疲劳检测方法和技术中,基于p e r c l o s 的 方法被证明是最可靠和有效的决定驾驶员疲劳等级的方法1 7 】。 但是,由于受到监测仪器的限制,方法( 1 、2 、3 、4 ) 都难以对疲劳进行实时监测。主要原因是因为 大部分监测所使用的传感器为身体接触性的,在行车过程中会让驾驶员感剑不适而直接影响驾驶员的驾驶 操作。如:脑电、心电、肌电的测量一般需要在人体在粘贴电极,监测驾驶员头部运动装置也需要在驾驶 员头部做标记。因此,目前大部分研究工作都无法进行实乍实验,而只能对比分析驾驶前后测量相关指标 或者在驾驶模拟器中进行实时检测实验。只有方法5 ( p e r c l o s 参数方法) 被公认为是最有效的、车载的、 实时的驾驶疲劳测评方法。f w h a 和联邦公路管理局都推荐p e r c l o s 方法是所有驾驶员疲劳度实时报警检 测技术方法中最有前景的一种方法【8 l 。目前大部分研究驾驶疲劳的机构都采用眼睛闭合时间占特定时间百 分率p e r c l o s 作为生理疲劳程度的测量指标。 1 2 2 已有的疲劳检测车载系统 2 0 世纪9 0 年代后,疲劳程度检测方法的研究有了很大的进展,许多国家己开始了驾驶疲劳车载电子测 量装置的开发研究工作。现有的国内外研究成果中具代表性的产品有: l 、美国研制的打瞌睡驾驶员检测系统d d s ( d r o w s yd r i v e rd e t e c t i o ns y s t e m ) 采用多普勒雷达和复杂的信号 处理方法,可获取驾驶员烦躁不安的情绪活动、眨眼频率和持续时间等疲劳数据,用以判断驾驶员是否打 瞌睡或睡着。该系统可制成体积较小的仪器,安装在驾驶室内驾驶员头顶上方,完全不影响驾驶员正常的 驾驶活动i 训。 2 、2 0 0 6 年,澳大利距科研人员发明了一种特殊的眼镜,可以大大减少发生事故的可能性。这种名为“选 择警告”的眼镜是由墨尔本一家名为“睡眠诊断”的公司研制的。它可以协助驾驶员提高行车安全,减少疲劳 驾驶带来的隐患。“选择警告”眼镜上有一个可以监控眼睛和眼睑活动的传感器,它能将信号输送到汽车的 仪表盘上,一旦监控到司机有瞌睡现象,就能触发警报。“选择警告”眼镜对疲惫程度的监控是以“约翰斯睡 2 第一章绪论 意标准”为基础的,如果监控指标在0 至4 之问就显示正常,如果指标超过5 ,愠示司机不宜继续驾驶同 时,随着疲惫程度的增加,警报声音的级别也有所区别。但是,目前避择警告”眼镜还比较贵,所以根难 普及。 3 、s e e i n g m a c h i n e s 公司开发了一套f a c , e l a b 眼动仪系统1 ,f a c c l a b 是一套能够提供头部姿势、凝视方 向、眼睑闭合追踪以及车辆安全区域肄信息的主动视觉系统,目前已普遍的使用在汽_ 乍工业中,例如b o s c h 、 d e l p h i 、v o l v o 、n i s s a a 等等。而且新的f a e e l a b v 4 采用主动的照明技术、两个摄像头分别单独的追踪每 个眼睛假如对象太靠近系统便舍追踪瞳孔的大小和变化趋势蛆准确地眨艉分析和疲劳评估,包括限 睑行为细节信息来即时地分析和模仿疲劳和困倦。该系统基于通用的p c 机,是目前较先进的以及拥有很 好市场前景的产品,如图1 - 1 。 图1 - 1f a e e l a b 眼动仪产品手册上的实物图 4 、在2 0 0 7 年秋季举办的第7 0 届中国电子展会( c e f ) 上,清华大学电子工程系展示了该校驾驶人就志检测项 目:由k l 变换的人脸检测以) 及o d a b o o s t 分类嚣对人脸定能之后,再遥过提取垂直投影特征以及基 t h o u 曲 变换的眼睛开台度检测,该技术能够检测驾驶员是否处于疲劳驾驶状态,并通过报警系统向驾驶员发出警 告信号,该系统处于研究阶段。 1 3 课题的主要任务 本实验室前期研究j = 作已完成一套以p c 机为平台,基于p e r c l o s 参数方法的驾驶疲劳检测实验以及 评价系统,包括了忉步的算法以及一系列的实验和图像库评价。在实验室现有研究基础上,本课题旨在设 计一种具有午载的、1 f 接触式的、实时的嵌入式司机驾驶疲劳检测系统。本人课匿的研究内容主要完成以 f 几个部分: 1 ,提出合适的硬件方案; 2 、软什系统设计: 3 、实现 捷八式系统上p e r c l o s 参数实时计算; 东南大学硕一i 二学位论文 1 4 论文组织结构 第一章:绪论。主要介绍了课题选题的背景和本文中课题的主要目标。 第二章:d s p 系统框架。参考通用的d s p 硬件开发方案,加上本课题中p e r c l o s 参数的驾驶疲劳检测的额 外的硬件要求,完成硬件系统框架的设计。此外,在熟悉d s p 开发 :具、操作系统、视频驱动的 基础上完成应用程序框架的设计。 第三章:p e r c l o s 参数的计算。首先给出基于p e r c l o s 参数的驾驶疲劳检测方法和算法流程;改进实验 室原有的人眼定位和眼睛状态检测算法,运用基于矩形特征的a d a b o o s t 算法进行人眼的定位,实 现a d a b o o s t 算法的定点c 代码;运用似圆比方法判断眼睛的状态、实现了眼睛状态判断以及 p e r c l o s 参数计算的c 代码,并给出相应的各种不同的图像库评价结果,分析评价结果。 第四章:算法在d s p 上的实现以及优化。根据d s p 的硬件构架和优化方法实现代码的优化,达到了实时性 要求。 第五章:总结与展望。总结了本文的研究成果,并对下一步工作进行展望。 4 # = 章:d s p 系统框架 2 1 系统选型 第二章d s p 系统框架 疲劳检测车载系统需要满足体积小,便于安装和实时性等要求,因此需嵌 式系统来完成实验表明 p e r c o l s 参数的准确计算要求系统的处理速度选每秒2 0 帧以上,印要求实时图像处理系统必须在5 0 m s 内完成帧图像的运算处理,才能保证的实时性。此外,由于p e r c o l s 参数计算中采用的图像处理和识 别方法运算量较大,因此嵌入式系统必须具备强大的图像处理能力,才能满足系统实时性的要求。 对比目前流行的嵌入式系统a r m 具有比较强的事务管理功能,主要用来跑界面以及一般的应用程 序等,其优势主要体现在控制方面;f p g a 的优点是井行高速,在带宽要求很高和严格时序控制场台非它 莫属,且多协同工作同步更易实现,缺点是开发周期较妊,调试不方便,修改灵活性较著;而d s p 主要是 用米计算的,优势是强大的数据处理能力、较高的运行速度、程序代码的灵活性,而且可以利用现成的算法 库,开发周期和维护周期都较短。所以我们采用d s p 来实现嵌入式疲劳检测车载系统。 本谋题中处理的是视频信号,一般的d s p 芯片投有专片 的视频接口,开茇难度比较夫,所以我们需要采 片j 专片j 的视频数字信号处理芯片。而t 1 公司猷y f m s 3 2 0 d m 6 4 2 是目前最流行、性能较高的专用于视频处理 的d s p 芯片较高的处理能力和专门的视额口使p e r c o l s 参数计算的实时性成为可能。为了加快项目的进 科,我们参考了t 1 标准评估扳,通过精倚标准评估扳,加上疲劳驾驶检测的| j l - m 接口辅助功能,设计了以 d m 6 4 2 为核心处理器的实时的图像采集、处理和显示的硬件开发平台。课题组的其他同学负责硬件的连接 设计以及电路布扳,本人工作主要是完成算法以及软什的实现。在新的硬件电路扳没有制作完成之前,本 人负责的算法以及软件先在瑞泰公司的t i 标准评1 卉板上实现的,评估板如图2 1 。 2 2d s p 硬件系统设计 i 絷 鬻劳滁一 n 图2 - 1 瑞泰公司的t i 标准评估扳 我们的基丁d s p 的症劳检测系统的硬件设计主要是在精简t i 标准评恬扳以及加上疲劳碍驶特定的功 东南大学硕十学位论文 能基础上完成的,硬件结构主要由四个功能单元组成:d s p 视频核心处理模块、外部存储器模块、视频输 入输出模块和外围辅助功能单元。硬件系统功能框图如图2 - 2 所示: 功苒邑单元 ; e m i f 1 l 一 i 塑篁愕: g p i o v p o、r 一卜一 视频a d ,l 一模拟 - d m 6 4 2 1 2 c ir ( s a a 7 l1 5 ) q c c d r 1 ii 光源k v p 2= 七 ” 视频d a 剖黑羹控制r r r _ g p i o 1 2 c一( s a a 7 1 0 5 ) 一一i 2 2 1d m 6 4 2 一 图2 - 2 硬件系统设计结构图 t m s 3 2 0 d m 6 4 2 1 1 2 1 【1 3 】b 4 1 ( 以下简称为d m 6 4 2 ) 是美国德州仪器公司针对多媒体视频和音频处理领域应 用专门设计的数字信号处理器( d i g i t a ls i g n a lp r o c e s s o r ) 。d m 6 4 2 建立在c 6 4 xd s p 核基础上,采用t i 公司 开发的第二代高性能的先进的超长指令字结构v e l o c i t l 2 “”,其每个乘法器在每个时钟周期内可执行2 个3 2 位x 1 6 位的乘法或四个1 6 位x 1 6 位的定点乘法。另外6 个算术逻辑单元,在每个时钟周期内都可执行4 个1 6 位 或8 个8 位的定点加减、比较、移位等运算。在6 0 0 m h z 的时钟频率下,d m 6 4 2 每秒可以进行2 4 亿次1 6 位的 乘累加或4 8 亿次8 位的乘累加。这样强大的运算能力,使得d m 6 4 2 可以进行实时的多视频处理和图像处理, d m 6 4 2 强大的运算能力使得它可以很好的满足车载疲劳检测系统的要求。此外,它丰富的片内外设不仅能 很好的支持视频的采集和显示,也能很好的扩展新的功能。主要的片内外设包括: 三个可配置的视频接口( v p o 、v p l 、v p 2 ) 可以和视频输入输出或传输流输入无缝连接: 6 4 - b i t 的外部存储接口单元( d t i f ) 支持和同步或异步存储单元的连接: 用户可配置的1 6 - b i t 或3 2 - b i t 的主端口接口( h p i l 6 h p l 3 2 ) ; 6 6 m h z 3 2 - b i t 的p c i 接口; 通用i o 端口( g p i o ) ; 2 2 2 外部存储器扩展模块 d m 6 4 2 的e m i f t l 5 1 总线可以实现与同步和异步外部存储器的无缝连接,接1 2 1 设计简单,其主要特点如 下:支持8 位、1 6 位、3 2 位及“位宽度的方式访问外部连接设备;每个c e 空间( 共四个) 最大可寻址2 5 6 m b ;时钟 频率可独立于d s p 内部时钟信号,最高可运行在1 3 3 m h z 上;可通过编程相应的片内寄存器组对其进行灵活 的设置。 外部存储器用于存储系统的程序代码、分类器特征值、从摄像头采集米的图像以及图像处理过程中所 6 第二章:d s p 系统框架 产生的中间数据等。s d r a m 采用2 片m i c r o n 公司的s d r a mm t 4 8 l c l 6 m 1 6 a ,映射到c e o 空间上,对应地 址为( 8 0 0 0 0 0 0 0 h 8 2 0 0 0 0 0 0 h ) 。3 2 m b 存储容量的3 2 位宽s d r a m 并联在一组6 4 位宽e m i f 总线上,并能运 行于1 3 3 m h z 上,至少可以存储3 2 幅p a l 格式的图像。f l a s h 采用四片a m d 公司的a m 2 9 l v 2 0 b ,存储容 量4 m b ,对应地址( 9 0 0 0 0 0 0 0 h 9 0 4 0 0 0 0 0 0 h ) ,主要用于存储b o o t l o a d e r 程序以及程序代码,训练好的分类 器特征值。 2 2 3 外围辅助功能单元 主要完成一些外围的辅助功能接口。比如通过g p i o t l q 连接到二极管实现光源控制,通过g p i o 连接到 喇叭实现报警功能。另外,把所有的芯片引脚都扩展出来,后面还可以通过u a r t 连接g s m 模块实现网络 通讯功能等等。 2 2 4 视频采集和显示模块 我们把视频端d o t l 2 】( v p 0 ) 配置为捕获输入端口,此端口连接到s a a 7 1 1 5 h 解码器;视频端1 3 2 ( v p 2 ) 配置为视频输出端口,连接到s a a 7 1 0 5 视频编码器。摄像头采集的视频为p a l 制,经s a a 7 1 1 5 h 解码以及 数字化后,得到的图像为4 :2 :2 格式8 位宽的y c i ) c r 格式的信号。d m 6 4 2 芯片的视频接口分为a 、b 两个通道, 每个通道对应一个2 5 6 0 b y t e s 的f i f o ,视频信号进入d m 6 4 2 片内分成y 、c b 、c r 三部分,相应2 5 6 0 b y t e s 的 h f o 分为三部分,y 采样值r 与1 2 8 0 b y t e s ,c b 、c 睬样值各士6 4 0 b y t e s 。当f i f o 中的数据超过设定的门限, 会触发e d m a t 事件,e d m a 将f i f o 中的数据通过e m i f 接口的c e o 搬移到片外的s d r a m ,设置两路外 部缓存以实现乒乓式的交替读写操作,一路写操作的同时,另一路进行读操作,以便d s p 能够快速准确地 读取每一帧图象数据。 系统上电后,复位电路将复位系统中的主处理器d m 6 4 2 、数据缓冲器f i f o 和视频解码器s a a 7 1 1 5 h , 然后主处理器d m 6 4 2 将对视频口的工作模式和相应的寄存器进行配置,初始化完毕后,由d m 6 4 2 发送初始 化视频解码器s a a 7 1 1 5 h 的命令。接着,d m 6 4 2 通过1 2 c 1 8 1 总线配置s a a 7 11 5 h 的工作模式是输入格式、模 拟视频标准是p a l 。配置完毕后,s a a 7 11 5 h 将开始工作,模拟视频信号经过信号调理后输入到视频解码 器s a a 7 1 1 5 h 中,在解码器内部实现同步信号的分离和色度亮度信号的输出,输出为r g b 或y u v 的数字视 频信号。f i f o 的半满信号作为e d m a 传输开始的触发中断信号,当f i f o 中的数据达到半满时,e d m a 自动 将f i f o 中的数据传送至f j d s p 的外部s r a m 中的缓冲区中,传送结束后,再触发另一个e d m a 事件,将数据 传送到外部s d r a m 中。系统中视频输入使用乒乓缓冲的方式,在内存中初始化两帧大小的缓冲区空间, 先将采集到的图像数据往第一帧的空间中填充,完成后在图像处理程序取数据和处理的同时,继续填充第 二帧,到第二帧空间填满后,。通知图像处理程序取数据,同时回头继续填充第一帧,循环工作。 2 3d s p 软件系统 2 3 1c c s 软件开发工具 t i 公司推出了c c s 【2 1 1 2 2 1 ( c o d e c o m p o s e r s t l l d i o ) 集成软件开发工具以后,使其d s p 产品软件开发的工 作变得相对简单和容易,也更加高效。c c s 内部集成了以下软件工具:代码产生工具( 包括c 编译器、汇编优 7 兰塑查兰堡! 兰壁笙苎 化器、汇编器和连接器1 ,软件模拟器( s 岫u l a t o r ) 】,实时操作系统软件d s p b i o s ,实时数据变换软件r t d x , 实时分析和数据可视化软件。代码产生工具构成t c c s 集成开发环境的基础部件。其中的c 编译器对c 代码 进行编译,生成亍 编代码。汇编优化器的功能是对用户编写的拒编代码进行优化。汇编器产生可变动地址 的机器语言目标文件作为输出,它所输入的汇编语言文件可毗是c 编译器产生的汇编文什,也可以是汇编 优化器输出的汇编文什。连接器的作崩是接受浮动地址目标文件( o 崎) 作为输入然后把所有目标文件中的 同名段合并,井按照用户的连接器命令文件给弃段分配地址最后生成可执行的目标文件( o u t ) 程序的调试 和仿真有两种模式:软件仿真( s i m u l a t o r ) 和硬件仿真( 唧u l a t o r ) 。软件仿真( s l m u l a t o r ) 指程序的执行 完全靠主机上的仿真软件模拟程序运行通过p c 模拟d s p 的亍 编语言,结果都是仿真软件“计算”出来的 不和任何硬件平台打交道。硬什仿真( e m u l a t o r ) 则需要用户具备目标扳,仿真程序会利用开发系统将代 码下载到d s p 芯片中,程序是在芯片上直接运行的,仿真软件只是把运行结果读出来显示。软件仿真的优 点是无需目标板,但仿真速度慢,且无法仿真某些外设的功能。硬件仿真速度快,仿真结果与系统一致。 现在这两种仿真模式都集成在j c c s 环境下, 2 3 2d s p b i o s 操作系统 d s p b i o s 2 4 2 目1 是一个用户可裁剪的实时操作系统,主要由三部分组成:多线程实时内核、实时分析 具、芯片支持库。利用d s p b i o s 实时操作系统开发程序,可以方便快速的开发复杂的d s p 程序,方便快 捷,程序思路清晰,便于代码调试和重用。操作系统维护调度多线程的运行只需将定制的数字信号算法 作为一个线程嵌入系统即可;苍片支持库帮助管理外设资源,复杂的外设寄存器初始化可以利用直接图形 t 且配置;实时分析工具可以帮助分析算j 去实时运行情况。使用d s p b 1 0 s 开发d s p 软件有两个重要特点: 第,所有与硬件有关的操作都必须借助d s p m i o s 率身提供的函数完成开发人员可以也戍避免直接控制 硬件资源,如中断、e d m a 、g p i o 等。第二,带有d s p b i o s 功能的程序在运行时,不像传统的程序,根 据用户编写的次序来依次执行,而是在d s p b i o s 的调度下按任务、中断的优先级捧队等待执行。 + :国曩l 曩墨 一1 嵯i n s t r e n t a t + 1 吐3l o g e v e n tl o gm 曲9 9 e r | 囝s t s s t a t is t l e so b jectm 一 iu 謦s c h e d “ i 9c l k c 1 0 c km a n a g e r 6 dp r d p id l cf 恤c t m a n a g e r “ly p # i h d wi n t “p ts “i 毒s w i s f t wi n t u m 啦8 e e r + _ j b t s k t km n r + ,i b l i d l ef t inm a n a g e r _ h b ,5 m c h 。o n i a t n 1 ps e ms e m 卸h o rem a n 9 9 6 r + 哏m b x m a i l b o xm 姐a ;e r ! 与日u e a t o m lcq em a n a g e r i l c k r l o c km 删e 。 + i n p u t o u t p u t + 讲c s l c h l p5 坤州tl 1 b r a y 图2 3d s p ,b i o s 的c d b 文什静态配置崮 8 第- 二章:d s p 系统框架 d s p b i o s 以模块化方式提供给用户对线程、中断、定时器、内存资源、所有外设资源的管理能力都可 以根据需要剪裁。实际应用中需要的定制算法作为一个线程插入d s p b i o s 的调度队列,由d s p b i o s 进行 调度,将d s p b i o s 操作系统根据自己的需要剪裁完毕,形成c d b 配置文件,如图2 3 。 d s p b i o s 实时操作系统c d b 配置文件的图形配置包括: l 、全局设置( s y s t e m ) - - - 包括内存端设置、锁相环设置、中断向量入口设置等: 2 、调试工具( i n s t r u m e n t a t i o n ) - - - 记录器r ( l o o ) 功能可以提供调试信息,s t s 功能可以统计e m u l a t o r 环境下某 个进程或函数的运行时问;对实时操作优化有很大的帮助。一般调试程序的时候通常通过设置断点或单步 运行来观察变量及寄存器的设置是否正确,但是对于实时程序来说,一旦停止就意味着破坏了实时性。常 规的调试方法已不能满足新的调试要求,故d s p b i o s 提供了l o g 和s t s 这两个模块供调试使用。l o g 模块 的功能相当于c 语言中p r i n f f ( ) 函数;s t s 的功能相当于c l o c k ( ) 。 3 、操作系统调度工具( s c h e d u l i n g ) - - 包括定时器、周期器、硬件中断管理、软件中断管理、任务调度、系 统空载任务函数;我们在这里静态配置了三个进程:输a ( i n p u t ) 、处理( p r o c e s s ) 、输出( d i s p l a y ) 。 4 、同步机$ 0 ( s y n c h r o n i z a t i o n ) 提供一般操作系统都具有的信号灯、邮箱、队列、锁四个工具。因为我们 用的是动态调用a p i 的方式实现进程间的同步,这里没有配置任何的信息。 5 、主机交互接e l ( i n p u t o u t p u t ) 提供d s p 实时运行时与主机通过仿真口和c c s 交互数据的机制,实时数据 交换r t d x ( r e a lt i m ed a t ae x c h a n g e ) 是d s p b i o s 提供的比较新功能模块,主要在调试工程中,当数据量比 较人时,实时地通过玎a g 口向主机传送数据而基本不影响程序地正常运行。 6 、芯片支持库( c h i ps u p p o r tl i b r a r y 崩对不同的d s p 芯片帮助配置d s p 的外设资源。c s l 可以帮助开发者 快速开发管理外设的程序。举例来说,原本对于v p 视频口引脚定义、中断源定义、发送数据格式、发送数 据长度、接收数据格式、接收数据长度、收发频率发生器控制等多个寄存器,繁琐而且容易发生错误。但 是如果采用c s l 控制v p 视频口的开发将会大大加快程序开发与调试。 配置完成后,就能自动的生成一个基本的实时操作系统程序框架,我们就可以在此框架下编写应用程 序。 2 3 3 视频驱动设计 采用驱动程序结构,驱动程序将应用程序与硬件分开,使硬件与应用程序之间的接口程序标准化。t i 公司为c 6 4 x 系歹u d s p 的开发者提供了一种类微型驱动模型f 2 6 l 】。该模型在功能上将设备驱动分为依赖硬件层 和不依赖硬件层,两层之间使用通用接口通信。在类微型驱动模型中,类驱动通常用于完成多线程i 0 请 求的功能和同步功能,同时对设备实例进行管理。类驱动通过每个外部设备独有的微型驱动对设备进行操 作。微型驱动通过外设的寄存器、内存和中断资源配置来对外部设备进行控制操作,微型驱动程序必须将 特定的外部设备有效地表示给类驱动。类微型驱动模型结构如图2 - 4 9 东南人学硕t :学位论文 回回 国回 图2 4 类微型驱动模型结构图 上层的应用程序不直接控制微型驱动,而是使用一个或一个以上的类驱动对其进行控制。每一个类驱 动在应用程序代码中表现为一个a p i 函数并且通过微型驱动的接e l i o m 与微型驱动进行通信。类驱动使用 d s p b i o s 中的a p i 函数实现系统服务,类驱动通过标准的微型驱动接口调用微型驱动控制硬件设备。到目 前为- i k d s p b i o s 共定义了三种类驱动:流输入输出模块( s l o ) 、管道管理模块( p i o ) 和通刖输入输出模块 ( g i o ) 。在p 口和s i o 模块中,调用的a p i 函数己经存在于d s p b i o s 的p 口和s i o 模块中。这些a p i 函数需将参 数传给相应的适配模块( a d a p t e r ) ,才能与微型驱动交换数据。而在g i o 类驱动中,调用的a p i 函数则直接与 微型驱动通信。每一个微型驱动都为类驱动和d s p b i o s 设备驱动管理提供了标准接口,微型驱动采用芯片 支持库( c s l ) 管理外围设备的寄存器、内存和中断资源。 1 、类驱动 s i o 2 6 】1 和p i p 2 6 ”两个接口模块用于支持d s p 和外设之间的数据交换。这两种模块可以通过类驱动中的 适配模块和微型驱动的i o m 连接进行数据传输;s i o 的适配模块称为d i o ,p i p 的适配模块称为p i o 。g i o 模 块的数据传输模式基于流输入输出模式的同步i o 模式,更适合文件系统i o 。在编写类驱动时,可以直接 调用g i o 的读写a p i 函数,这些函数的接口已经内置于微型驱动的i o m 中。d s p b i o s 中的s i o 模块为每个 d s p b i o s 线程提供一个独立的i o 机制,它支持动态创建。s i o 模块有自己的驱动模型,称为d e v 。d e v 程序和微型驱动的编写方法相似,都要实现函数中的打开、关闭和缓存管理等功能,然而结构比较复杂。 相比之下,d i o 模块可以简化s i o 模块和i o m 之间的连接,使得通信和同步变得要简单。 d i o 模块必须实现下列基本功能函数: ( 1 ) 回调函数:在外设的通道实例创建结束时,如果微型驱动已经完成内存分配,那么适配模块将通过回调 函数通知微型驱动待调用函数的地址;同时,回调函数也将通知适配模块缓存已经建立,并最终通知上层 应用程序。 ( 2 ) 传输函数:传输函数将调用微型驱动中的m d s u b m i t c h a n 函数。微型驱动中的m d s u b m i t c h a n 函数将从适 配模块获得一块缓存,并将缓存中的新信息通过通道实例通知给中断服务程序( i s r ) 。d i o 模块通过传输函 l o 类黝 微黝 备动设驱 第二章:d s p 系统框架 数实现应用程序与微型驱动之间的通信。 d s p b i o s 中p 模块提供管理异步i o 的数据管道。每个管道对象都拥有一块同样大小的缓存,这些缓 存分为同样数量的等长小块,小块的数量和长度在d s p b i o s 中设置。虽然小块的长度是同定的,但应用程 序可以把小于整个长度的数据放入缓存小块中。一个管道有两个结束状态:写完缓存和读完缓存。通常,无 论哪个结束状态都会激活i o 设备,写数据时,p i pa l l o c i 琢i 数用来获得缓存,p i pg e t 函数j ! i 来接收缓存中的 数据,p 疋f l e e 函数在数据不再被使用时将缓存清空。清空完后,写数据通知函数n o t i f y w r i t e r :将被调用。p i o 模块通过p i p 模块从应用程序中获得缓存,并将获得的缓存提供给微型驱动使用。当微型驱动使用完缓存 时,p i o 模块还可以将缓存交还给应用程序。 p i o 模块必须实现下列基本功能函数: ( 1 ) 主函数:当应用程序给设备分配缓存时,p i p 的缓存管理调用p r i m e 和t x p r i m e i f i 数。这两个函数调用 d s p b i o s 的a p i 函数获得缓存并提供给微型驱动使用。主函数负责给适配模块和应用程序缓存分配函数发 送起始信号 ( 2 ) 同调函数:当微型驱动完成内存分配后,适配模块通过回调函数c a l b a c k 或仅c a l b a c k 通知微型驱动待调 用函数的地址,同时,回调函数也通知适配模块缓存已经建立,并最终通知上层应用程序。 ( 3 ) 传输函数:传输函数将调用微型驱动中的m d s u b m i t c h a n 函数。m d s u b m i t c h a n 函数将从适配模块中获得一 块缓存,并将缓存的新信息通过通道实例通知给中断服务程序( i s r ) 。p i o 模块通过传输函数实现应用程序 与微型驱动程序之间的通信。 g i o 模块在提供必要的同步读写a p i 函数及其扩展函数的同时,将代码和使用数据缓存的大小尽量简 化。如图2 5 所示,应用程序可以调用g i o 的a p i 函数直接与微型驱动的i o m 交换数据,这些a p i 函数使得 g i o 成为了第三种类驱动。 g i oa p i ( 应用: 之 g i oa b o f t g i oc o n t r o l g i oe r e a t e 、 g 1 0d e l e t e g i of l u s h g 1 0r e a d
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2024-2025学年高中地理上学期第4周 晨昏线、地方时教学设计 湘教版必修1
- 23 祖先的摇篮 教学设计-2024-2025学年统编版语文二年级下册
- Module 9 Unit 2 Happy birthday (教学设计) -2024-2025学年外研版(一起)英语一年级上册
- 2023七年级数学上册 第五章 一元一次方程2 求解一元一次方程第3课时 解含分母的一元一次方程教学设计 (新版)北师大版
- Unit 4 My Favourite Subject Section A 1a~Pronunciation教学设计 2024-2025学年人教版英语七年级上册
- 《9的乘法口诀》(教学设计)-2024-2025学年二年级上册数学苏教版
- 2024秋八年级数学上册 第十五章 分式15.3 分式方程 2解分式方程教学设计(新版)新人教版
- 《乒乓变奏曲》(教案)-2023-2024学年人教版(2012)音乐二年级下册
- Unit2 English and Chinese Get started (教学设计)-2024-2025学年教科版(2024)英语三年级上册
- 茶道养生企业创业
- 研发项目审计报告样本
- 滴灌技术知识讲座
- 海外大型工程项目成本管理措施
- ArchiCAD入门中文教程清晰版pdf
- 屋顶光伏知识培训课件
- 《新能源汽车电机及控制系统检修》 课件 项目三 驱动电机控制系统检修
- 国家电网应急能力评估报告
- 安全生产监督管理概述
- 系统思维创新原则-结构性原则
- 人工智能的利与弊ppt
- 相见欢·无言独上西楼-长春版课件
评论
0/150
提交评论