(微电子学与固体电子学专业论文)蓝牙基带芯片的soc集成及固件开发.pdf_第1页
(微电子学与固体电子学专业论文)蓝牙基带芯片的soc集成及固件开发.pdf_第2页
(微电子学与固体电子学专业论文)蓝牙基带芯片的soc集成及固件开发.pdf_第3页
(微电子学与固体电子学专业论文)蓝牙基带芯片的soc集成及固件开发.pdf_第4页
(微电子学与固体电子学专业论文)蓝牙基带芯片的soc集成及固件开发.pdf_第5页
已阅读5页,还剩75页未读 继续免费阅读

(微电子学与固体电子学专业论文)蓝牙基带芯片的soc集成及固件开发.pdf.pdf 免费下载

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

摘要 摘要 近年来,s o c 芯片已经成为提高移动通信、网络、信息家电、高速计算、多媒 体应用及军用电子系统性能的核心器件,s o c 技术成为嵌入式系统市场不可缺少的 解决方案。s o c ( s y s t e mo nc h i p ) 可以译为“片上系统 或者“系统集成芯片 ,意 指它是一个产品或一个有专甩目标的集成电路,其中包含完整系统并有嵌入软件 的全部内容。不仅如此,s o c 也是一种技术,是用以实现从确定系统功能开始,到 软硬件划分,并完成设计的整个过程,正是由于s o c 芯片技术的这些特点,使之 成为一种具有国家战略意义的实用技术。 本文以蓝牙基带芯片s o c 集成及固件开发为题进行研究,为使蓝牙基带芯片的 p 核集成到a h b 总线上,本文在深入分析a r m 7 t d m i 这款具有代表性的a r m 核、 a m b a 2 0 总线协议以及a r m 公司的a d k ( a m b ad e s i g nk i t ) 的基础上,以一个 单独的蓝牙基带芯片的改进为研究重点,完成了配置寄存器的划分、异步f i f o 的 设计和a p b 总线接口的设计;s o c 芯片如果只有硬件而没有软件那么这仅仅是一具 躯壳,软件才是s o c 芯片的灵魂。为此,论文在深入分析应用于该蓝牙基带s o c 芯 片的软件所遵循的蓝牙链路管理层协议( u 胛) 和蓝牙主机控制器接口( h c i ) 协 议部分内容的基础上,重点研究了固件的实现方案,包括查询、查询扫描、a c l 链路的建立和断开、s c o 链路的建立和断开;在上述研究内容的基础上,还对s o c 集成和仿真的方法以及s o c 集成当中的关键技术,女l l r e m a p 机制、地址空间的分配 和中断源的设计等问题进行了研究;最后给出了固件和针对本s o c 芯片系统级的仿 真验证方案和仿真结果,从而验证了该芯片功能的正确性。 本文突出了一般专用芯片和s o c 的不同之处,以及它们的继承关系。并在深入 研究了s o c 芯片硬件结构和关键技术之后研究了其固件的开发思想,从而充分体现 了固件依赖硬件运行,硬件通过固件的指挥进行运作的辩证关系。这种在开发s o c 芯片时重视软硬件相互关系,以及在了解硬件结构的基础上开发固件的思路对于 s o c 芯片的开发甚至仿真验证都有着重要意义。由于工作量较大和篇幅的关系, s o c 芯片的仿真验证方法有待进一步深入研究。 关键字:s o ca m b a 总线蓝牙基带固件a r m a b s t r a c t a b s t r a c t s o cc h i ph a sb e e nt h ek e ye l e c t r o n i cu n i tu s e dt oi m p r o v et h ep e r f o r m a n c eo f e l e c t r o n i cs y s t e ms u c ha sm o b i l ec o m m u n i c a t i o n ,n e t ,i n f o r m a t i o na p p l i a n c e ,h i g h s p e e dc o m p u t e r , m u l t i m e d i aa n dm i l i t a r ye l e c t r o n i cs y s t e m t h es o c t e c h n i cw h i c hi sa w h o l ep r o c e s si n c l u d i n gd e f i n i n gs y s t e mf u n c t i o n ,s o f t w a r ea n dh a r d w a r ed i v i s i o na n d i m p l e m e n t i n gt h ed e s i g nh a sb e c o m et h ei n d i s p e n s a b l es o l u t i o ni nt h ee m b e d e ds y s t e m m a r k e t b a s e do nt h ed e e pa n a l y s i so f 删7 t d m i ss t r u c t u r e ,a m b a 2 0 p r o t o c o la n d a d k ( a m b a d s i g n 陆) ,t h ep a p e re x p l o r e dh o w t ot r a n s l a t eaa s i cc h i pi n t oas o c c h i pb yu s i n gb l u e t o o t hb a s e b a n da s i cc h i pa sa l le x a m p l e t h ep a p e rm a i n l y i n t r o d u c e sd e s i g no fi n t e r f a c ew h i c hi st h ek e yp o i n tt oi n t e g r a t eb l u e t o o t hb a s e b a n di p c o r ei n t ot h ea h bb u ss y s t e m t h et a s ko fi n t e r f a c ed e s i g ni n c l u d e sd i s t r i b u t i o no f c o n f i g u r a t i o nr e g i s t e r s ,a s y n c h r o n o u sf i f od e s i g na n da p b b u si n t e r f a c ed e s i g n t h e f i r m w a r eo fb l u e t o o t hs o cc h i pi sa n o t h e rm a j o rc o n t e n tw h i c hi sd e v e l o p e da c c o r d i n g t ob l u e t o o t hl i n km a n a g e rp r o t o c o l ( l m p ) a n dh o s tc o n t r o l l e ri n e r f a c ep r o t o c o l ( h c d t h em a i nf u n c t i o no ft h ef i r m w a r ei n c l u d e si n q u i r y , i n q u i r ys c a n , p a g e ,p a g e s c a n ,c r e a t i n ga n dd e t a c h i n gc o m m u n i c a t el i n kw h i c hi n c l u d ea s y n c h r o n o u sa n d s y n c l l l 0 n o u sc o n n e c t i o n o nt h eb a s eo ft h ec o n t e n t sa b o v e ,s o ci n t e g r a t i o na r e d i s c u s s e da n ds o m ek e yt e c h n o l o g i e sa r ei n v o l v e da l s ow h i c hi n c l u d er e m a p m e c h a n i s m ,d i s t r i b u t i o no fa d d r e s ss p a c ea n di n t e r r u p td e s i g n t h ep a p e rh i g h l i g h t sn o to n l yt h ed i f f e r e n tb e t w e e na s i ca n ds o cb u ta l s ot h e i n h e r i t a n c er e l a t i o n s h i po ft h e m t h ed i a l e c t i c a lr e l a t i o n s h i pb e t w e e nf i r m w a r ea n d h a r d w a r eo fs o cc h i pi sr e f l e c t e db yr e s e a r c h i n gf i r m w a r eo nt h eb a s eo fu n d e r s t a n d i n g h a r d w a r e t h es i m u l a t i o nr e s u l t so ff i r m w a r ea n ds y s t e ma r eg i v e ni nt h ee n dw h i c h v e r i f i e st h ec o r r e c t n e s so ft h ed e s i g n t h em e t h o do fd e v e l o p i n gs o c c h i pd i s c u s s e d a b o v eh a si m p o r t a n ts i g n i f i c a n c e k e y w o r d s :s o c a m b ab u sb l u e t o o t hb a s e b a n df i r m w a r ea r m 西安电子科技大学 学位论文独创性( 或创新性) 声明 秉承学校严谨的学分和优良的科学道德,本人声明所呈交的论文是我个人在导 师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注 和致谢中所罗列的内容以外,论文中不包含其他人已经发表或撰写过的研究成果; 也不包含为获得西安电子科技大学或其它教育机构的学位或证书而使用过的材 料。与我一同工作的同志对本研究所做的任何贡献均已在论文中做了明确的说明 并表示了谢意。 申请学位论文与资料若有不实之处,本人承担一切的法律责任。 本人签名:丛毡 日期丝:! :! :! 竺 西安电子科技大学 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究生 在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。学校有权保留 送交论文的复印件,允许查阅和借阅论文:学校可以公布论文的全部或部分内容, 可以允许采用影印、缩印或其它复制手段保存论文。同时本人保证,毕业后结合 学位论文研究课题再攥写的文章一律署名单位为西安电子科技大学。 ( 保密的论文在解密后遵守此规定) 本学位论文属于保密,在年解密后适用本授权书。 二口。 本人签名:望选型日期:丝:= 兰! ! 笙 。t z、乙。i i , 导师签名:二羔i j 兰 日期:兰:= ! :61 生 第一章绪论 第一章绪论 本文的研究重点在于针对现有蓝牙基带芯片的s o c 集成所做的硬件方面的修 改和蓝牙固件的开发。首先需要了解s o c 技术的概念和蓝牙技术的特点和发展, 这些内容在本章均有论述。 1 is o c 技术的概念和意义 由于单片系统级芯片设计在速度、功耗、成本上和多芯片系统相比占有较大 的优势。另外电子系统的专用性对不同的应用、要求有专用的系统,因此发展s o c 设计在集成电路设计业中具有举足轻重的地位。 s o c 是一种复杂的集成电路,它将终端产品的主要功能单元完全集成在单个芯 片中。通常s o c 包括一个可编程处理器,片上存储器和由硬件实现的加速单元。s o c 还可能包含模拟及数模混合部件用于同外部世界打交道。m r o c h i tr a j s u m a n 将s o c 定义为一种将多个v l s i 设计集成在一起针对某种应用提供完全功能的集成电路。 s o c 一般具有以下特征: 实现复杂功能的超大规模集成电路; s o c 芯片不仅包含硬件电路部分,还包含软件部分; s o c 芯片既然包括软件,那么它至少包含存储软件的存储器; s o c 芯片至少包含一个处理器核心( 如微处理器m p u 、微控制器m c u 或数 字信号处理器d s p 等作为软件执行载体的特殊p 核) ,并且在设计中大量复用第三 方的口核; s o c 芯片中组织、连接所有p 核的“神经网路和骨架”是总线; 作为集成电路产业中的新技术,s o c 技术始于2 0 世纪9 0 年代。1 9 9 4 年摩托罗拉 公司发布的f l e xc o r e 系统( 用来制作基于6 8 0 0 0 和p o w e rp c 的定制微处理器) 和1 9 9 2 年l s il o g i c 公司为s o n y 公司设计的s o c ,是基于d 核完成s o c 设计的最早报道1 2 1 。 由于s o c 的基本体系结构以片上总线为核心,这就使芯片具有较强的可扩展性,芯 片的升级换代只需要在总线上增加或替换新的口功能模块。因此,可以把s o c 看作 为一个系统的设计平台。在一个s o c 设计平台上,可以规划出一个产品的系列,这 对降低设计成本、加快t t m ( t i m e t o - m a r k e t ) 、保障产品质量都有十分正面的作用。 现如今,s o c 技术的出现促使集成电路设计业进一步分工,微电子产业竞争进入智 力竞争和知识产权竞争的高级阶段。s o c 要求设计者必须充分考虑市场竞争的压 力,最大限度地缩短设计周期。所以凡事从零做起的思路不再适应这种新情况, 而采用前人成功的设计经验和设计技术则成为明智的选择。这就促使i c 设计业进 一步分化出专攻p 的无芯片半导体公司c h i p l e s s 并l :l l p 供应商。这标志着i c 产业的竞 2 一 蓝牙基带芯片的s o c 集成及固件开发 争已经由技术竞争、资本竞争进入到以智力竞争、知识产权竞争的高级竞争阶段。 1 2 蓝牙芯片的发展 “蓝牙”一词的来历颇具传奇色彩:传说十世纪的丹麦国王h a r a l db l u e t o o t h 英勇善战,一举统一了挪威和丹麦,令自己的国家空前强大。人们为了纪念这位 因酷爱蓝梅而常常将牙齿染蓝的英雄,尊称其为以蓝牙”。 历史发展至今,蓝牙已演变为一项短距离无线连接技术的代名词,她在无线 通信领域崭露头角,广阔的应用前景迅速引起了全球通信业界和广大用户的密切 关注,发展如破竹之势。1 9 9 8 年5 月,爱立信、诺基亚、东芝、m m 和英特尔五家 全球著名厂商成立蓝牙技术特别兴趣小组s i g ( s p e c i a li n t e r e s tg r o u p ) ,共同开发 蓝牙技术。1 9 9 9 年,爱立信公司向全世界展示了全球第一款应用蓝牙技术的产品 蓝牙耳机,之后的两年间,全球更有1 0 6 种蓝牙产品相继通:i 立b l u e t o o t hs i g ( 蓝 牙技术联盟) 认证。目前,已有3 0 0 0 多名会员。2 0 0 6 年3 月在德国汉诺威举办的c e b i t 电脑大展上,西门子公司首次为展会开设了全球最大的蓝牙无线通信网,蓝牙技 术再次沸腾,成为各界瞩目的焦点。整合了u w b ( u l t r a w i d e b a n d , 超宽带) 技术的 新版蓝牙将使便携设备能够实现更多先进的视频和音频应用。在蓝牙技术规范下, u w b 技术在1 0 米的有效范围内速率可达至0 4 8 0 m b p s ,超过了许多应用中最高要求 的2 0 0 m b p s l l 5 】。最新的蓝牙协议2 1 加入了s i l i f fs u b r a t i n g 功能,通过设定在2 个装 置之间互相确认信号的发送间隔来达到降低功耗的目的。采用此技术后,蓝牙装 置在开启蓝牙之后的待机时间可以有效延长5 倍以上【1 6 1 。 但令人遗憾的是现在的蓝牙芯片仅仅是由少数外国大公司如c s r 等供货,市场 上几乎见不到中国人自己的蓝牙芯片。由于固件是和硬件电路密切相关的,所以 没有自己的蓝牙芯片也自然没有自己的蓝牙固件。蓝牙应用软件是基于蓝牙固件 本身的功能进行开发的,而蓝牙的应用主要集中在上层蓝牙应用软件的开发和应 用方面。虽然说蓝牙应用软件才是蓝牙技术大放异彩的主要领域,但这就像芯片 在电子技术中的地位一样,没有自己的芯片就无法掌握核心竞争力。蓝牙芯片和 蓝牙固件才是蓝牙技术应用的核心因素。 1 3 蓝牙技术的特点 蓝牙工作在全球开放的2 4 g h zi s m ( 即工业、科学、医学) 频段; 使用跳频频谱扩展技术,把频带分成若干个跳频信道( h o pc h a n n e l ) ,在一 次连接中,无线电收发器按一定的码序列不断地从一个信道“跳”到另一个信道; 一台蓝牙设备可同时与其它七台蓝牙设备建立连接; 第一章绪论 数据传输速率可达1 m b i t s ; 低功耗、通讯安全性好; 在有效范围内可越过障碍物进行连接,没有特别的通讯视角和方向要求; 支持语音传输; 组网简单方便;现在多数具有红外无线数据通讯功能的设备一样可以使用 蓝牙技术来实现无线连接。同时蓝牙技术的网络特点和语音传输技术使它还可以 实现红外技术无法实现的某些特定功能,如无线电话、多台设备组网等等。 1 4 论文的研究内容 论文始终围绕着一个主题“如何将一个蓝牙基带口核转变为一个真正意义上的 微小型系统s o c 芯片来展开的。一个s o c 系统由中央处理器( c p u ) 、存储器 等硬件通过总线相关联,由运行在c p u 中的软件指挥运作。上述几个s o c 的要素在 第二、三、四章分别进行了研究,在第五章会看到以上各要素是如何集成在一起 并协同运作的。 第二章以a r m 7 t d m i 为例研究了a r m 核的结构,同时对本设计采用的a m b a 总线进行了较为详细的探讨。其中a m b a 总线的研究内容可分为两部分:a h b 协 议和a p b 协议; 第三章首先阐述了现有的拥有自主知识产权的蓝牙基带p 核的功能结构,并在 此基础上研究了使该p 核作为a p b 总线上的一个设备所做的改进,它们包括:a p b 总线的接口设计、配置寄存器的划分和规划、异步f i f o 的设计,并给出了a p b 总 线接口和异步f i f o 的仿真结果; 第四章探究了软件在s o c 系统中的地位和作用,并结合蓝牙l m p 、h c i 层协议 研究了蓝牙固件的结构以及在l m p 层、h c i 层和寄存器级的实现方案。 第五章首先给出了系统集成方案,之后探讨了用于搭建a m b a 总线架构所必 须的一些p 核( a m b ad e s i g n t ) 和用于仿真的行为级模型。之后分别给出固件 和系统的仿真验证方案,从中可以明确各个d 核是如何在总线的组织协调下,在软 件的指挥调度中有序运行的。其中固件是通过用于仿真的a r m 7 t d m i 模型运行的。 第二章a r m 核与a m b a 总线协议 第二章a r m 核与a m b a 总线协议 5 一 s o c 是一个微小型系统,如果说中央处理器( c p 功是大脑,那么s o c 就是包括大 脑、骨架、心脏、眼睛和手的系统。本设计中a r m 核是系统的大脑,总线是系统 的骨架和神经,我们使用的总线是基于a m b a 总线协议实现的。本章以a r m t t d m i 为例研究了a r m 体系架构,并探讨了a m b a 2 0 协议中的a h b 总线协议和a p b 总线 协议。 2 1a r m 核概述 a r m 系列处理器到目前为止共有5 个版本,a r m v l 到删v 3 都是早期的a r m 处理器,a r m 处理器得到广泛应用是a r m y 4 出现以后,a r m 7 t d m i 和a r m 9 2 6 e j s 都属于a r m v 4 版本。a r m 内核最大的优势在于高速度、低功耗,这主要归功于被 公认是业界领先的3 2 位嵌入式r i s c 处理器结构a r m 体系结构。目前a r m 公司 最新产品为a r m v 5 版本的a r m l1 。 a r m 7 内核是0 9 m i p s m h z 的三级流水线和冯诺伊曼结构;a r m 9 内核是5 级流水线,提供1 1 m i p s m h z 的哈佛结构。 删7 没有m m u ,a r m 7 2 0 t 是m m u 的,a r m 9 主要包括a r m 9 t d m i 和 a r m 9 e s 等系列a r m 9 是有m m u 的,a r m 9 4 0 t 只有m e m o r yp r o t e c t i o nu n i t ,不是 一个完整的舢。 a r m 9 的时钟频率 t a r v 7 更高,采用哈佛结构区分了数据总线和指令总线, a r m 7 处理器采用3 级流水线,而a r m 9 采用5 级流水线,5 级流水线能够将每一个 指令处理分配到5 个时钟周期内,在每一个时钟周期内同时有5 个指令在执行。在 同样的加工工艺下,a r m 9 t d m i 处理器的时钟频率是删7 t d m i 的1 8 2 2 倍。 a r m 9 指令周期数的改进最明显的是l o a d s 指令和s t o r e s 指令。从删7 到删9 这两条指令的执行时间减少了3 0 ,指令周期的减少是由于a r m 7 和a r m 9 两种处 理器内的两个基本的微处理结构不同所造成的: ( 1 ) a r m 9 有独立的指令和数据存储器接口,允许处理器同时进行取指和读写 数据。这叫作改进型哈佛结构。而a r m 7 只有数据存储器接口,它同时用来取指令 和数据访问。 ( 2 ) 5 级流水线引入了独立的存储器和写回流水线,分别用来访问存储器和将结 果写回寄存器。 以上两点实现了a r m 9 能在一个周期内完成l o a d s 指令$ 口s t o r e s 指令。 6 一 蓝牙基带芯片的s o c 集成及固件开发 2 2a r m 7 t d m i 架构 设计综合考虑速度和功耗后选用了a r m t t d m i 处理器核,a r m 7 t d m i 的流水 线分为三个阶段执行如表2 。l 所示。 表2 1a r m 7 t d m i 的三级流水【3 】 a r mt h u m b p cp c 取指指令从存储器中取出 p c 一4p c 2译码对指令使用的寄存器进行译码 p c 8p c - 4执行 从寄存器组中读出寄存器执行移位和a l u 操作寄存器写 回到寄存器组 a r m t t d m l 支持字、半字、字节三种数据类型,存储器格式可分为大端格式 和小端格式,表2 2 和2 3 分别显示了三种数据类型操作时的大小端格式。 表2 2a r m 7 t d m i 的大端格式3 1 3 l2 42 31 61 58 70 w o r da ta d d r e s s a h a l f w o r da ta d d r e s sah a l f w o r da ta d d r e s sa + 2 b y t ea ta d d r e s sab y t ea ta d d r e s sa + ib y t ea ta d d r e s sa + 2 b y t ea ta d d r e s sa + 3 表2 3a r m 7 t d m i 的小端格式3 】 3 l2 42 31 61 58 70 w b r da ta d d r e s s a h a l f w o r da ta d d r e s sa + 2h a l f w o r da ta d d r e s sa b y t ea ta d d r e s sa + 3b y t ea ta d d r e s sa 十2b y t ea ta d d r e s sa + lb y t ea ta d d r e s sa a r m 7 t d m i 共有6 种操作模式,如表2 4 所示。 表2 4a r m t t d m i 的6 种操作模式3 】 标志位模式 1 0 0 0 0 u s e r 模式 1 0 0 0 l f i q 模式 1 0 0 l o i r q 模式 l o o i is v c 模式 1 0 1 1 la b o r t 模式 1 1 0 1 1 u n d e f i n e d 模式 a r m 7 t d m i 处理器总共有3 7 个寄存器,其中3 1 个为通用3 2 位寄存器,6 个为状 态寄存器。这些寄存器并不是在同一时间全都可以被访问的,处理器状态和操作 模式决定了程序 态,在两种状态 员可以访问哪些寄存器。、a r m 7 t d m l 分为a r m 和t h u m b 两种状 下的寄存器状态分别如图2 1 和2 2 所示。 a r m 状叁通趱寄钉嚣和摇膨谤致器 乐缓和嘲p快建t t q o if f i o 趣缓 j 户中f l :巾氍f i r q 略 f 1 f 2 婚 m 炸 f 6 r 7 ,芝脚 琏向 玎c _ n q 塑j l 口 一2 阳 3 - l i q ,t 尚 h 5 p c l 。 n 1 2 r 3 瞄 r s 佑 r 7 e r 9 n o r l l n 2 王s 蟛 p 4 一s 蛇 n 5 ( f c r 0 n 1 2 3 埘 f 5 ,e r 7 1 8 r 9 n o n 1 r 1 2 、 x f t 3a b t n 4 j ,i n 5 p c , a r m 状态稷穿奄都 i : | o f r 2 l 。 r 4 f 5 孵 r 7 噶 f 9 f o r 1 1 2 一l - q 一。如 n s ( p c 】 木宅望 l o n f 2 1 3 r 4 1 5 府 ,7 噶 1 9 n c n 1 r 1 2 n 3 _ u n d 一4 _ t , e 1 0 r 1 5 ( p c ) 厂百面n 广百;蚕一广百;贾 厂百订广百;吾n 厂习;鬲 氐剜陵剜& 鲴氐剜& 型 系媲矧螂产 叱 r r 2 r 3 瞳 | s f 8 r 7 笋 l r p c 图2 1a k m 状态中的寄存器结构3 】 t h u m b 状卷通瑚锗稃嚣墨l i 槛膨朴数嚣 f 0 r 1 r 2 r 3 r 4 眄 旧 r 7 s 巳幻 。堤向 p c 趣绣嘲脚巾t i _ 出断( i r q ) 泉定炙 l o n r 2 乃 r 4 r 5 f 6 f 7 s p - 酞 u :l a 砒 p c t h u m b 状惫控缮键铎嚣 由 r 1 堙 r 3 r 4 f 5 佑 f 7 s p v q i 一r _ l m p c r 0 n 1 2 = - 3 r 4 r 5 略 疗 蜀巳m , l ru n d p c 广百磊 厂百;n 广百再门广焉;三n 广百磊 广百爵一 睡卿睦型氐剜陵剜氐剜 仝:僚缀姑稃嚣 图2 2t h u m b 状态中的寄存器结构【3 】 寄存器r 1 3 是堆栈指针( s p ) ,即用于存放各种状态下堆栈入口地址的寄存器。 也址。比如当 执行连接分支指令b l 时,r 1 4 接收r 1 常子程序中的b l 指令执行时用于保 5 的备份,当发生中断和异常或者当中断或异 存r 1 5 的返回值。寄存器r 1 5 是程序计数器 ( p r o g r a mc o u n t e r ) ,a r m 利用r 1 5 中存储的指令地址取指令。在a r m 状态中r 1 5 中 的b i t s 1 :0 为o ,b i t s 3 1 :2 _ 。含p c f l 耋;在,n l u m b 状态中b i t o 为o ,b i t s 3 1 :1 】包含p c 值。 蓝牙基带芯片的s o c 集成及固件开发 a r m 7 t d m i 内核包含1 个c p s r 和5 个s p s r 供异常处理程序使用,状态寄存器各个 位的含义如图2 3 所示。 奄n 娼铱客僚孵控翻经 广- 厂_ 上1 广j 3 13 02 92 b2 7 2 62 52 42 3 87 6 5 43210 瓜丌霸百丁三t i e f 痢厂r 习t 阼下雨雨而雨两硐 溢趣 避协筑饿僚绒扩襞 零 氮蠛小f - 馥式像 状急位 f l q 裴眨 l r q 糯l 。 图2 3 程序状态寄存器格式 其中t 位反映了正在操作的状态,当t 位置位时处理器正在t h u m b 状态下运行, 当t 位清零时处理器正在a r m 状态下运行。状态寄存器中的模式位定义了6 种处理 器模式,具体定义如表2 5 所示。 表2 5 处理器模式 标志位模式 1 0 0 0 0u s e r 模式 1 0 0 0 l f i q 模式 1 0 0 1 0 i r q 模式 l o o l l s v c 模式 1 0 1 1 1 a b o r t 模式 1 1 0 l lu n d e f i n e d 模式 最后研究一下a r m 处理异常和中断的方式。每种异常都会导致内核进入一种 特定的式,通过编程修改c p s r ,可以进入任何a r m 处理器模式。用户和系统模式 是仅有的只能通过修改c p s r 进入的两种模式。复位中断的处理程序要为所有处理器 模式设置堆栈指针。当内核进入f i q 处理程序时,会在相应的状态寄存器中把f i q 和i r q 都禁止了,因此任何外部中断源都不能再次中断处理器,除非在软件中重新 允许i r q 和( 或) f i q 。当f i q 异常和数据中止异常都没有发生时,i r q 处理程序才 能进入。在进入i r q 处理程序时,内核禁止i r q 异常,直到当前中断源被清除。一 个i r q 或f i q 异常会使处理器硬件经过以下的一个标准流程( 假设中断未被屏蔽) 【4 】: a 处理器切换到一个特定的中断请求模式,表明产生了中断; b 前一个模式的c p s r 被保存到新的中断请求模式的s p s r ; c p c 被保存到新的中断请求模式的l i n kr e g i s t e r q b ; d 关中断在c p s r 中禁止i r q ,或i r q 与f i q 两者都被禁止,这会立即阻止 相同类型的中断请求被响应,并且会修改c p s r 的状态位进入a r m 状态。 e 处理器跳转到向量表中一个特定的入口。 第二章a r m 核与a m b a 总线协议 9 一 所以一但发生岫中断,硬件会自动屏蔽其他i r q 中断源;一旦发生f i q 中断,硬件会 自动屏蔽其他岫中断源和f i q 中断源。如果想取消屏蔽必须在中断服务程序中增加 修改c p s r 的指令。 2 3a m b a 总线协议 a m b a ( a d v a n c e dm i c r o c o n t r o l l e rb u sa r c h i t e c t u r e ) 是一种应用于高性能嵌入式 系统的片上通信标准,其中一共定义了三种不同的总线:a h b 总线,a s b 总线和 a p b 总线。a s b 总线是早期使用的一种总线,它已经被a h b 总线所取代。 a r m 7 t d m i 使用的就是a s b 总线,为了满足使用高速总线a h b 的需要,会在 a r m 7 t d m i 的a s b 总线接口上2 1 1 a s b a h b 接口转换模块( w a p p e r ) ,从而使得应 用a r m 7 t d m i 的s o c 芯片同样可以使用a i - - i b 高速总线。典型的a m b a 总线系统提 供传输设备间的高带宽接口,同时还提供高性能总线到低带宽的a p b 总线的桥, 许多外围设备需要通过a p b 总线加入到总线系统中,典型的a m b a 总线系统如图 2 4 所示。 2 3 1 a h b 总线 鸺b i o a p bb i t o 图2 4 典型的v b a 总线系统【5 】 6 岫是新一代高性能a m b a 总线,它支持一个或多个总线主设备,典型系统 至少包括处理器和测试接口,如果是多个主设备还会包括d m a 和d s p 。存储器扩 展接口、a p b 桥和片内存储器是最常见的a h b 从设备。一般低带宽外围设备被放 置于a p b 总线上。一个典型的a m b a a h b 系统包括a i - i b 主设备、a h b 从设备、a h b 仲裁器和a h b 译码器。典型的a h b 总线系统如图2 5 所示。 1 0 蓝牙基带芯片的s o c 集成及固件开发 图2 5 典型的a h b 系统嗍 a h b 传输包括两部分:地址阶段和数据阶段,一次传输的切换由信号h r e a d y 决定。不加等待的简单传输方式如图2 6 所示。 ll ) o ( a) o (舡 ) o ( c o n t 吲) o 舡 x 1xx 觜舡 础 | | 止 r 锗跹 图2 6 简单传输5 1 如果h r e a d y 为低时需要等待,那么地址和写数据信号要保持,直到印迮a d y 为高,如图2 7 所示。 一 一 一 一 一 。 汽 盯 口 “ 拍 嘧 比 =一 噜 - 第二章a r m 核与a m b a 总线协议 a 量 h 脚q 3 棚 c 栅d h w o a i a l = j i 捌 h r e a d y h i q d a t a l 3 1 :0 1 一p h m 一 o 出时 - - ill 慰xx艇 ) o ( c xx艇 麟 x d 0 协 舡 l ) 烈 | | | !; 麟慰烈xx 黹舡 图2 7 有等待状态的传输【5 1 一共有四种传输类型,由信号h r r a n s 表示,他们是: i d l e ,表示没有数据需要传输。 b u s y ,表示总线主设备正在进行传输,并且下一个传输无法立即开始。当主 设备使用b u s y 传输时,地址和控制信号必须是下个传输的相关信息。此时从设 备应忽略当前传输,并返回o k a y 响应。 n o n s e q ,表示一组传输( b u r s t ) 的第一个传输或者一个单独的传输,其地 址和控制信号和前面的传输没有关联。 s e q ,一组( b u r s t ) 传输中除第一个传输以外的连续传输,并且地址和之前的 传输有关联,是前面传输的地址加固定大小得到的,控制信息和前面的传输相同。 连续传输类型又分为八种传输模式,由信号h b u r s t 指示。首先对i n c r 和 w r a p 两种模式进行解释。i n c r 目p i n c r e m e n t 的头四个英文字母,就是每次传输的 地址连续增加,这种模式有四种,分别为i n c r 、i n c r 4 、i n c r 8 、i n c r l 6 。i n c r 是没有固定的增加;i n c r x 是有固定长度的增加。w r a p 模式是在一个固定边界内 连续增加,一旦地址达到边界上界就返回边界的开始继续递增。这种模式有三种 w r a p 4 、w r a p 8 、w r a p l 6 。还有一种模式是s i n g l e 。无论是i n c r 还是w r a p 都不能穿越1 k b 边界。 中心地址译码器为每个总线上的从设备提供选择信号h s e l x 。当h r e a d y 为 高时从设备采样地址、控制信号和h s e l x ,即当前传输正在完成。如果从设备无 法立即完成当前传输会使h r e a d y 为低。图2 8 是典型的地址译码系统和从设备选 择信号。 1 2 蓝牙基带芯片的s o c 集成及固件开发 图2 8 从设备选择信号【5 】 从设备的响应是由h r e a d y 信号和h r e s p 信号共同完成。从设备可以通过以 下几种方式完成一次传输: 立即完成传输; 插入一个或多个等待周期从而获得足够的时间完成传输; 使用e r r o r 信号表明一次传输失败; 延缓传输的完成,但允许主设备和从设备离线( 放弃总线使用权) 准备数 据,此时总线用于其它传输; 上述几种方式可以通过h r e s p 信号的四种模式( o k 科、e r r o r 、r e t r y 、 s p l i t ) 进行指示。 a h b 总线中还有一个重要的元素就是仲裁机制。当总线上有多余一个主设备 存在时就需要仲裁器对总线的使用权进行管理,主设备通过信号i - i b u s r e q x 向仲 裁器提出总线使用申请,仲裁器会根据一套主设备优先权策略进行总线使用权的 分配,总线使用权会通过信号h g r a n t x 分配给获得使用权的主设备。 2 3 2 a p b 总线 a p b ( a d v a n c e dp e r i p h e r a lb u s ) 用于连接低带宽的外围设备,并且这些设备 无须具备流水线式的高性能总线接口。a p b 总线其实是一种状态机的操作方式, 共分为三个状态: i d l e ,是复位后的默认状态。 s e t u p ,当需要进行一次传输时总线会进入s e t u p 状态,这时选择信号p s e l x 为高。总线仅在s e t u p 状态保持一个总线周期后会在下个时钟上升沿进入 e n a b l e 状态。 e n a b l e ,在e n a b l e 状态下信号p e n a b l e 会拉高,同时地址、写信号和选 择信号在s e t u p 状态和e n a b l e 状态都会保持。e n a b l e 状态仅保持一个时钟周 期,之后如果没有数据传输便进入i d l e 状态。如果还有数据传输存在,总线会直 第二章a r m 核与a m b a 总线协议 接进入s e n j p 状态。 a p b 总线的状态机如图2 9 所示。 n ot r a n s t e rn 铷g 韵日f 图2 9 状态图 5 1 2 1 小结 本章在深入分析a r m 7 t d m i 核芯的基础上,以尽可能简洁、紧凑的篇幅,给 出了a r m 体系架构最核心的内容,同时探讨了s o c 系统设计所应用到的a m b a 总 线协议中a h b 、a p b 的总线协议,这也是s o c 设计中最基本、最重要的部分。 第三章基于s o c 集成的蓝牙基带口设计堕 第三章基于s o c 集成的蓝牙基带i p 设计 现有的蓝牙基带d 核是蓝牙基带芯片s o c 集成的基础和前提,在蓝牙基带p 的 设计中本人完成了链路管理模块的改进、蓝牙总线接口的设计以及异步f i f o 的设 计,使之能够集成到总线系统中。 3 1 蓝牙基带芯片功能概述 现有蓝牙芯片的模块可划分为链路控制模块( l i n kc o n t r o l l e r ) 、基带数据处理 单元( d a t ap a t h ) 、跳频选择模块( h o p ) 、时钟控制、a p b 总线接口、收发异步f i f o 、 射频接口( r fi n t e r f a c e ) 以及语音接口( v o i c ei n t e r f a c e ) ,如图3 1 所示。 图3 1 蓝牙基带系统结构图【6 1 蓝牙模块的内部处理核心模块主要是两部分:链路控制单元和数据处理单元。 链路控制单元控制着整个基带系统的状态跳转,是基带p 的心脏。蓝牙基带数据处 理模块实现了包括数据的分组、数据的白化、分组头与数组载荷的f e c 处理、h e c 和c r c 处理,同时也包括识别码相关器和基带的发送与接收例程等处理。另外蓝 牙的跳频选择模块实现蓝牙系统数据发送与接收所需的跳频频率;蓝牙时钟实现 蓝牙的收发定时、同步等功能。 3 1 1 链路控制单元 链路单元是一个复杂的状态机, 转换。主要状态有查询、查询扫描、 状态机如图3 2 所示。 它会根据配置寄存器中的内容进行主要状态 寻呼、寻呼扫描、a c l 链路和s c 0 链路。该 状态i n q 、i n q s c a n 、i n q 卫s p 和玳q ,s c a n 3 m p 负责蓝牙设备的查询 任务。查询是为了让主设备发现周围的从设备,只有发现了从设备才能建立连接。 主设备在状态i n q 下以3 2 0 0 星) u 秒的速度发送查询信息( d 包) 。从设备在 i n q _ s c a n 状态下进行查询扫描。当从设备第一次收到i d 包时( 信号i n q _ o n c e 置- - ) 1 6 蓝牙基带芯片的s o c 集成及固件开发 会产生一个随机数r a n d o m l 0 ,之后会立即进入状态i n q _ s c a n _ t m p 。在r a n d o m l 0 个时隙过后从设备返回玳qs c a n ,一但从设备再次被查询( 再次接收到主发送 的d 包) 从设备立即进入矾q - r s p 并在该状态下想主设备回复一个f h s 包并转入 z n q _ s c a n 状态,同时信号i n q _ o n c e 清零并保持在r n q _ _ s c a n ,至此对从设备的一 次查询结束。在从设备第一次接到d 包后等待r a n d o m l 0 个随机时隙再回复查询相 应的目的是为了避免多个从设备同时响应。查询时主从设备交互的过程见表3 1 。 表3 1 查询的信息交互f 7 l s t e pm e s s a g e p a c k e td i r e c t i o n h o p p i n g a c c

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论