(通信与信息系统专业论文)基于arm926ejs的soc系统设计.pdf_第1页
(通信与信息系统专业论文)基于arm926ejs的soc系统设计.pdf_第2页
(通信与信息系统专业论文)基于arm926ejs的soc系统设计.pdf_第3页
(通信与信息系统专业论文)基于arm926ejs的soc系统设计.pdf_第4页
(通信与信息系统专业论文)基于arm926ejs的soc系统设计.pdf_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

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

文档简介

摘要 随着微电子技术和半导体工业的发展,超大规模集成电路的集成度和工艺水平 的不断提高,深亚微米工艺,如0 1 3 u r n 、9 0 n m 已经走向成熟,使得在一片芯片上 完成系统级的集成成为可能,这就是当前兴起的片上系统( s y s t e mo nc h i p ,s o c ) 。 本论文主要任务是完成基于a r m 9 2 6 e j s 的s o c 系统设计与验证。设计了符 合a m b a 2 0 协议的总线架构,在此基础上实现了符合a h b 总线协议的s m i 、片 内存储器、中断控制器、a h b a p b 总线桥和图像数据传输等模块;实现了符合 a p b 总线协议的看门狗、定时器、通用i o 、r e m a p 和u a r t 等模块;除此之外 还设计了芯片必备的时钟模块、复位模块和j t a g 调试模块。此系统还针对芯片图 像处理提供了必要的接口,可以完成一些硬件较难实现的算法或控制信息。 关键词:a m b a 总线s o ca r m 9 2 6 e j s a b s t r a c t w i t ht h ed e v e l o p m e n to fm i c r o - e l e c t r o n i c st e c h n o l o g ya n ds e m i c o n d u c t o ri n d u s t r y , t h ei n t e g r a t i o na n dt e c h n o l o g yo fg r a n ds c a l ei n t e g r a t i o nc i r c u i th a v ei m p r o v e d o b v i o u s l y t h es u b m i c r o nt e c h n o l o g y , s u c ha s o 13 u ma n d9 0 n m ,h a sb e c o m e m a t u r a t i o n ,w h i c hm e a n si ti sp o s s i b l et oi n t e g r a t eas y s t e mo nac h i p n a m e l y ,t h i si s t h es y s t e mo nc h i pi nm o d e mt i m e m a i n l yt a r g e to ft h i sp a p e ri st of i n i s hd e s i g na n dv e r i f i c a t i o no ft h es o cb a s e d o n a r m 9 2 6 e j - sc o r e w eh a v ed e s i g n e db u sf r a m ea c c o r d i n gt oa m b a 2 0p r o t o c o l ,a n d a l s od e s i g n e ds t a t i cm e m o r yi n t e r f a c e ,o nc h i pm e m o r yc o n t r o l l e r , i n t e r r u p tc o n t r o l l e r , a h bt oa p bb u sb r i d g ea n di m a g ed a t at r a n s m i s s i o nm o d u l eb a s e do na h b p r o t o c o l , w a t c hd o g ,t i m e r , g p i o ,r e m a pa n du a r tm o d u l eb a s e do na p bp r o t o c 0 1 o t h e r w i s e w eh a v ea l s od e s i g n e dc l o c km o d u l e ,r e s e tm o d u l ea n dj t a gd e b u gm o d u l ew h i c ha r e t h en e c e s s a r ym o d u l e so nac h i p t h i ss y s t e ma l s op r o v i d e san e c e s s a r yi n t e r f a c ef o r i m a g ep r o c e s s i n go nt h ec h i p ,a n dt h e nw ec o u l dp r o g r a ma r i t h m e t i c o rc o n t r o l i n f b r i l l a t i o nw h i c hi sh a r df o rs o m eh a r d w a r et od o k e y w o r d :a m b ap r o t o c o l s o ca r m 9 2 6 e j - s 创新性声明 秉承学校严谨的学风和优良的科学道德,本人声明所呈交的论文是我个人在 导师的指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以 标注和致谢中所罗列的内容以外,论文中不包含其它人已经发表或撰写过的研究 成果;也不包含为获得西安电子科技大学或其它教育机构的学位或证书而使用过 的材料。与我一同工作的同志所做的任何贡献均已在论文中做了明确的说明并表 示了谢意。 申请学位论文与资料若有不实之处,本人承担一切相关责任。 本人签名:盈签透盛日期:垫! :! :璺 关于论文使用授权的说明 本人完全了解西安电子科技大学有关保留和使用学位论文的规定,即:研究 生在校攻读学位期间论文工作的知识产权单位属西安电子科技大学。本人保证毕 业离校后,发表论文或使用论文工作成果时署名单位仍然为西安电子科技大学。 学校有权保留送交论文的复印件,允许查阅和借阅论文:学校可以公布论文的全 部或部分内容,可以允许采用影印、缩印、或其它复制手段保存论文。( 保密的 论文在解密后遵守此规定) 本人签名: 导师签名: 日期: 洲,6 日期:鲤墨:苎 第一章绪论 第一章绪论 1 1 选题背景与研究意义 本论文源于国家项目“高性能图像压缩芯片完成。主要任务是完成基于 a r m 9 2 6 e j s 的s o c 系统设计与验证。本系统以a m b a 2 0 总线协议为核心,构架了 a h b 总线和a p b 总线的总体结构,设计了若干符合a m b a 2 0 总线协议的i p 核,通 过完成i p 核在总线上的挂载,使之成为一个功能完善的s o c 片上系统。 随着微电子技术和半导体工业的发展,超大规模集成电路的集成度和工艺水 平的不断提高,深亚微米工艺,如o 1 3 u m 、9 0 n m 已经走向成熟,使得在一片芯片 上完成系统级的集成成为可能,这就是当前兴起的片上系统( s y s t e mo nc h i p ,s o c ) 。 但是芯片系统级的设计能力的提高却落后于工艺技术的进步,如何缩短功能模块 的设计周期成为关注的重点。i p ( i n t e l l e c t u a lp r o p e r t y ) 核的设计与运用应运而生。 在集成电路设计中,口特指可以通过知识产权贸易在各设计公司间流通的完成 特定功能的电路模块【1 1 。按传统方式划分,i p 可以分为硬i p 和软i p 两种。硬i p 是指 i p 的存在方式是电路版图,一般是g d s i i 格式的图形文件,它无法被改动。软i p 则 指以r t l 描述或功能描述方式存在的口,在进行电路设计时,可以改动口内部的代 码以适应不同的电路需要,或者p 本身就带有各种可设置的参数来调整具体的功 能。 硬i p 和软i p 在实际应用中各有优缺点。硬i p 的优势是i p 经过了详细的验证与测 试,功能有非常可靠的保证,显著的节省了设计时间。通常的s o c 芯片设计中,微 处理器与存储器会使用硬i p 。应用硬i p 进行设计的缺陷就是其设计严重依赖加工工 艺,所以当加工工艺改变时,硬i p 的适应性非常差。硬i p 的面积也很大,增加了芯 片的成本。软口恰恰相反,它适应加工工艺的变化,可以灵活剪裁与添加模块的功 能,使用非常方便。通常的s o c 芯片设计中,系统的功能模块大部分以软m 实现。 但是它的缺点也是很明显的,需要耗费大量的时间进行验证和测试,增加了芯片 的开发周期。因为一般的芯片设计,大约7 0 的时间是花费在芯片设计的功能与时 序验证上。 基于a r m 的体系结构是当前软硬件协同设计的主流,这其中包括选用a r m 处 理器核( 女i i a r m 9 t d m i ) 和a m b a 总线协t g ( a m b a 2 o 、。a m b a 片上总线是s o c 体系 结构设计的开放标准,同时也是软硬件协同设计 i p ( i n t e l l e c t u a lp r o p e r t y ) 重用的关 键。由于a m b a 总线被越来越多的公司采用,已迅速成为s o c 结构和i p 库开发的标 准。因此,研究基于a m b a 片上总线的s o c 体系结构具有十分现实的意义。 2 基于a r m 9 2 6 e j s 的s o c 系统设计 1 2 国内外s o c 设计现状与趋势 冯诺依曼体系结构和哈佛结构是计算机的主流体系结构。通用计算机的微小 型化,为s o c 技术发展提供了源泉。可以说今天的p c b 板就是明天的s o c 。计算 机领域的总线架构技术、算法实现技术、模块化设计技术、b i o s 技术、软件工程 技术、软硬件调试技术、系统验证技术、性能评估技术、实时处理技术、可靠性 设计技术、人机交互技术和低功耗设计技术等等无不反映到s o c 设计技术中,也 促使s o c 能在几年内迅猛发展起来,成为后p c 时代的计算机主要发展方向之一。 s o c 技术发展尽管与工艺发展和e d a 设计手段的提高有很大关系,但其核心 是c p u 核、总线架构和各种口核。在总体性能评估和实现技术上,无不与计算机 专业领域相关。尤其在高端应用领域,如多c p u 核集成和异构型集成等系统需求, 计算机学科会继续从不同层面推动s o c 的技术发展。 s o c 技术发展与市场需求紧密相关。s o c 的主要应用领域有计算机、通信、消 费类电子、工控、交通运输等。在s o c 的销售额中通信类、计算机类和消费类占 8 0 以上,消费类所占比重在不断增长。进一步细分s o c 市场,计算机类有图像 处理、硬盘驱动、高档打印机、个人助理等;通信类有有线网、无线网、手机、 可视设备、通信基站等;消费类有数字电视、d v d 、s t b 、数码相机等;工控类 有过程控制处理、测试仪表、医疗设备、监控系统等;交通运输类有引擎控制、 仪表装置、安全系统等。s o c 市场规模的日益扩大,在信息技术和电子产品领域 的地位越来越重要。 现在s o c 市场上基本以中低档的s o c 产品为主。随着数字化产品需求日益旺 盛,对高端s o c 的需求日益迫切,如在音视频、通信等领域,对s o c 提出了更高 要求,需要双核、四核等多核集成。s o c 在中高档方面将取代传统意义上的c p u , 向系统性能更好、功耗更小、成本更低、可靠性更高、开发更容易方向发展,满 足人们以g u i 屏幕为中心的多媒体界面与信息终端交互需求,如手写文字输入、 身份识别、语音拨号上网、收发电子邮件、视频播放、网络游戏、可视电话、语 言同声翻译等。s o c 将嵌入3 2 位、6 4 位r i s c 芯片或数字信号处理芯片等增强型 处理器件,同时支持嵌入式r t o s 发展,采用实时多任务编程技术和交叉开发工 具技术来控制功能复杂性,继承和发展计算机处理器技术。所有这些都对计算机 体系结构提出了更大挑战。 s o c 在计算机体系结构学科引领下,将迎来新一轮技术大发展,以嵌入式系统 应用为核心,集软、硬件于一体,并在系统集成中追求产品系统最大包容性。s o c 芯片设计不仅需要较强的计算机体系结构背景知识,而且突显了软件开发的地位, 对开发平台和嵌入式操作系统提出了更高的要求。 第一章绪论 1 3a r m 处理器简介 a r m ( a d v a n c e dr i s cm a c h i n e s ) 公司是全球领先的1 6 3 2 位r i s c 微处理器知识 产权设计供应商。a r m 公司通过转让高性能、低成本、低功耗的r i s c 处理器、 外围和系统设计技术给合作伙伴,使它们能够生产出各具特色的芯片。 a r m 处理器常用的有a r m 7 、a r m 9 、a r m l 0 、a r m l1 和s e c u r c o r e 系列。 表1 1 显示了a r m 7 、a r m 9 、a r m l 0 和a r m l l 内核间的粗略比较,其中所列数 据根据生产工艺不同会有较大变化,因而也会对工作频率和功耗产生直接影响1 2 。 - f n 数据均是o 1 3 u r n 工艺下取得。表中的m i p s 为d h r y s t o n ev a x m i p s 。 表1 1a r m 系列属性比较 项目a r m 7a r m 9a r m l oa r m l l 流水线3 级5 级6 级8 级 典型频率 8 0 1 5 02 6 03 3 5 m 嗍h zo 0 60 1 9o 50 4 m i p s m h z0 9 7 1 1 1 3 1 2 架构 冯诺依曼哈佛哈佛哈佛 乘法器 8 x 3 28 x 3 21 6 x 3 2 1 6 x 3 2 a r m 7 t d m i 是a r m 公司1 9 9 5 年推出的a r m 7 系列中第一个处理器内核。也 是目前s o c 设计中非常流行的内核,它提供了极好的性能与功耗比。 a r m 9 2 6 e j s 是2 0 0 0 年推出的a r m 9 系列中的最后一个处理器内核。它是最 近几年s o c 设计的新宠。a r m 9 2 6 e j s 是第一个包含j a z e l l e 技术的a r m 内核, 还有一个m m u 、可配置的t c m 以及分离的大小可配的数据和指令c a c h e 。 a r m l 0 2 0 e 是第一个使用a r m l 0 e 内核的处理器内核。它内部增加了向量浮 点单元v f p ,增强了浮点运算能力,同时它还有一个双6 4 位总线接口,显著改善 了总线性能。 a r m l l 3 6 j s 发布于2 0 0 3 年,是第一个执行a r m v 6 架构的处理器内核。它集 成了一条独立的装载和算术流水线,多用于视频处理领域。 a r m 处理器仍在不断的发展,像刚刚发布的c o r t e x m 3 内核等。如此丰富的 a r m 处理器,使我们的s o c 设计选择面大大增加。 1 4 本文的主要研究内容 基于a r m 9 2 6 e j s 处理器核设计了一套符合a m b a 2 0 总线协议的s o c 系统方 4 基于a r m 9 2 6 e j s 的s o c 系统设计 案。本s o c 系统采用a r m 公司的a r m 9 2 6 e j1 6 1 6 硬i p 作为处理器,构建了符合 a m b a 2 0 协议的a h b 总线和a p b 总线结构;设计实现了与芯片的图像压缩单元的 接口,存储器控制模块,时钟管理模块、复位模块、调试模块等;通过修改a r m 公司提供的总线功能模块软i p ,实现了s o c 系统功能的扩充。 具体安排如下: 第一章,整体介绍 s o c 芯片设计的发展和i p 核技术的产生和发展,介绍了a r m 处理器的一些基本常识以及s o c 设计的发展前途。 第二章,介绍了a m b a 2 0 总线协议的大体内容,较为详细的介绍了a h b 总线协 议,简略介绍了a p b 总线协议;重点分析了协议中和本文s o c 设计相关的总线原理。 第三章,介绍了本文s o c 设计采用的a r m 9 2 6 e j - s 处理器的一些特性。 第四章,详细的论述了基于a r m 9 2 6 e j1 6 1 6 宏单元的s o c 系统设计过程。主要 包括了时钟、复位、调试单元、总线构架、a h b 总线上设备设计和a p b 总线设备 说明等。 第五章,详细分析t s o c 系统的验证平台机理和相关验证软件设计。 第二章a m b a 2 0 总线协议概述 第二章a m b a 2 0 总线协议分析 2 1a m b a 2 0 协议概述 a m b a 2 0 总线协议是由a r m 公司设计的用于高性能嵌入式系统的总线标准, 也是当今流行的s o c 芯片系统设计的总线标准。a m b a 2 0 总线协议发布于1 9 9 9 年, 主要包含了两个总线协议,a h b 先进高性能总线和a p b 先进外设总线【3 】。a h b 总 线适用于连接高速设备,如c p u 和d s p ,s r a m 和s d r a m 存储器等;a p b 总线是 相对较慢速的总线,适用于连接u a r t 、键盘、s p i 、i i c 、定时器和看门狗等设备。 a m b a 总线的设计目的是:满足具有一个或多个c p u 或d s p 的嵌入式系统产 品的快速开发要求;增加设计技术上的独立性,确保可重用的i p 核可以成功移植 到不同的嵌入式产品中;促进系统模块化设计,增加处理器的独立性;减少 对底层硅的需求,使片外的测试更加有效。 典型的基于a m b a 2 0 协议的s o c 系统设计框图如图2 1 所示。a h b 总线主要是 为了满足处理器与高速存储器间的带宽要求;a p b 总线是为了满足低速外部设备 的挂载需求;为了满足高低速设备间的通信,需要一个转换桥进行高低速度的转 换和信号的处理等。为了提高a h b 总线上大容量数据的传输速度,一般都会挂载 一个d m a 模块,接收控制信息后,可以不经过总线传输数据,以获得更高的传输 速度。 高带宽 外部存储器 接口 高件能i l 高带宽片l a r m l 掣冈而u a 司r t 厮l 。 厂- ji 高llll 定时器 a h b li 鬟j 扁 d m a 总线 m a s t e r 蓁e 骑己 图2 1a m b a 总线的s o c 结构图 具体来说,a h b 总线具有以下特点:支持多总线主设备控制器;支持突发 传输和分离传输;单周期主设备总线控制权转换;3 2 1 2 8 位总线数据宽度; 支持字节、半字和字传输等。 a p b 总线适用于低功耗的外部设备,主要特点是:对外设的接口简单;低 速与低功耗的外部总线;单个总线主设备,控制简单;读写数据总线分开等。 6 基于a r m 9 2 6 e j s 的s o c 系统设计 2 2 1a h b 总线的构成 2 2a h b 总线分析 a h b 总线主要包括a h b 主设备、a h b 从设备、仲裁器、译码器、多路选择器、 虚拟主设备和缺省从设备七部分。 a h b 主设备:它具有a m b a 系统中最复杂的接口规范。一个a h b 主设备可以 通过提供一个地址或控制信息来开启读写操作。任何时间只能由一个主设备控制 总线。 a h b 从设备:它通过使用一个选择信号来决定何时响应总线主设备启动的传 输。其他传输需要的信号,如地址和控制信号,由总线主设备产生。总线从设备 对在给定的地址空间范围内的读写操作进行响应,返回给有效的主设备信号标志 传输成功、等待或者是失败。 仲裁器:它决定着究竟由哪个主设备来控制总线操作。当主设备申请访问a h b 总线时,首先会向仲裁器发送总线申请信号。若有多个主设备同时申请访问总线, 仲裁器会根据各个主设备的优先级高低,将a h b 总线授权给优先级最高的主设备, 同时向此主设备发送一个g r a n t 信号。主设备收到这个信号后便得到了总线所有权, 并按照a h b 总线协议规定,在随后的两个周期内向a h b 总线发送地址控制信号和 写数据。仲裁器采用固定优先级算法。 译码器:对传输地址进行译码,根据地址映射表产生该地址所对应的从设备的 选择信号。一般的嵌入式系统都会有两套映射地址,决定着处理器是从r o m 还是 r a m 启动程序。 图2 2a h b 总线上的多路选择互联 第二章a m b a 2 0 总线协议概述 7 a h b 总线协议采用一种称为中央多路选择器互联技术方案。在这种方案里,所 有的总线主设备驱使地址与控制信号来指示其进行的传输,并由仲裁器来决定哪 个主设备将它的信号路由到所有的从设备。同样需要一个中央译码器来控制读取 数据并响应多路选择器,多路选择器从涉及到传输的从设备中选择合适的信号。 如图2 2 所示,1 号选择器是h a d d r 信号选择器,2 号是h w d a t a 信号选择器,3 号是h r d a t a 信号选择器。 2 2 2a h b 总线的关键信号分析 下面简要介绍一下a h b 总线传输中常用的几根信号,如表2 1 所示。表中的后 缀x 表示信号来f i x 模块。 表2 1常用的a h b 总线信号分析 信号名来源 信号描述 h c l k 时钟源总线主时钟,所有信号时序均与h c l k 上升沿相关 h r e s e t n 复位低电平复位系统和总线 h a d d r 31 :0 】 主设备3 2 位系统地址 h t r a n s 1 :o 】 主设备表明当前传输类型究竟是非连续、连续、空还是忙 h w r i t e 主设备高电平代表写传输,低电平代表读传输 h s i z e 2 :0 主设备 表明传输的字节数:字节、半字还是字传输 h w d a t a 31 :0 】 主设备 主设备写到从设备的3 2 位数据 h r d a t a 31 :0 】 从设备 主设备读出的从设备的3 2 位数据 h r e a d y 从设备 高电平表明总线上的传输已经结束。在有效的数据传输过程 中,这个信号会被拉低。 h s e l x 译码器 每一个从设备均有一个这样的信号,表明此从设备是否被选 中,高电平有效。此信号从地址译码得到。 h r e s p 1 :o 】 从设备 提供当前传输的附加信息,共有四种情况:o k a y 、e r r o r 、 r e t r y 和s p l l i t 。 一个简单的a h b 传输过程包括两阶段,第一阶段定址阶段,仅持续一个周期; 第二个阶段是数据阶段,可能需要多个周期,由如r e a d y 信号表征。一个从设备 可能会在数据传输过程中通过拉低h r e a d y 信号,使传输进入到等待状态,a h b 时序如图2 3 所示。a h b 传输还包括突发的连续传输等,具体分类如表2 2 所示。 8 基于a r m 9 2 6 e j s 的s o c 系统设计 表2 2 不同类型的传输编码 p t r a n s i :0 】 类型描述 0 0 ) l e 指示不需要传输。得到授权的主设备不想执行传输时,信 号被使用。从设备必须提供o k a y 响应或i d l e 传输。 o lb u s y 当主设备使用此信号时,这次传输被从设备忽略。 1 0 n o n s e q 指示突发传输的第一个传输或仅有的一个传输。 11 s e q 突发传输剩余传输是连续的传输,控制信息同前次传输。 h a d d r 3 1 :0 h v v d a t a 3 1 h r d a t a 3 1 a d d r e s sp h a s e d a t a p h a s e l ) 以 a 以凇 ) 以c 。n t r 。) o ( :0 】 ) 以) ( ) ( 苗 掀 :o 】 删w 似i 荟1 炀 图2 3a h b 总线基本时序图 2 3a p b 总线分析 a p b 总线已经经过a r m 公司的优化以求得最小的功耗和减少接口的复杂性。 a p b 用于非高速外设的总线连接。a p b 2 0 标准确保了所有信号的跳变仅同a p b 时 钟的上升沿相关。这种改进使a p b 外围设备很容易被整合到其他s o c 设计中。表2 3 给出了常用的a p b 总线信号。 表2 3 常用的a p b 总线信号分析 信号名 来源信号描述 p c l k 总线时钟所有信号时序均与p c l k 上升沿相关 p r e s e t na p b 复位低电平复位a p b 总线 p a d d r 31 :0 】 a p b 地址总线最高3 2 位地址位宽,根据模块不同而变化 p s e l xa p b 选择 每一个a p b 设备均有一个这样的信号,表明此从设备是 否被选中,高电平有效。 第二章a m b a 2 0 总线协议概述 9 p e n a b l ea p b 滤波 此信号使能表明一个a p b 传输的第二周期,它出现在 a p b 传输的中间阶段 p w i l l t e a p b 传输方向高电平代表写传输,低电平代表读传输 p w d a t a 写数据总线a p b 总线写到从设备的数据 p r d a t a 读数据总线a p b 总线读出的从设备的数据 由于a p b 时序非常简单,仅给出其读写时序图,如图2 4 和图2 5 所示。 p c l k p a d d r p w r i t e p s e l t l t 2t 3t 4t 5 il p e n a b l p w d a t p c l k p a d d r p w r j t e p s e l i 删阻, ; l _ |i 图2 4a p b 总线的写时序图 t 1t 2t 3t 4t 5 i ilii p e n a b l p r d a t i 。i i i i | | | i i 图2 5a p b 总线的读时序图 1 0 基于a r m 9 2 6 e j s 的s o c 系统设计 2 4 本章小结 简要的分析了a m b a 2 0 协议。较为详细描述了a h b 总线协议中总线模块的组 成及各自的作用;分析- j a h b 总线设计中常用的信号,简单说明了越也的时序问 题和各种a h b 传输类型以及基本读写时序图。对于较为简单的a p b 总线协议,只 给出了常用信号的描述和基本的读写时序图。 第三章a r m 9 2 6 e j s 处理器分析 第三章a r m 9 2 6 e j s 处理器分析 3 1 1a r m 名称区分 3 1a r m 处理器基础 本文将a r m 9 2 6 e j - s 处理器中的执行运算单元称为a r m 9 2 6 e j s 核( 包含 m m u ) , 将包含a r m 9 2 6 e j s 核和c a c h e 、t c m 、写缓冲器和总线结构层的c p u 整体 称为a r m 9 2 6 e j s 处理器;固化的处理器称为微处理器;处于商业需求而订制的硬 i p 称为宏单元。由于本论文提及的a r m 9 2 6 e j s 是以硬核形式提供,并且数据c a c h e 和指令c a c h e 大小均为1 6 k b ,故也称为a r m 9 2 6 e j _ 1 6 1 6 宏单元。 3 1 2a r m 处理器模式 a r m 处理器有7 种运行模式:用户模式、快速中断模式、外部中断模式、特权 模式、数据访问中止模式、未定义指令中止模式和系统模式。除用户模式外的其 他6 种运行模式称为特权模式;除系统模式外的其他5 种运行模式称为异常模式 4 1 。 当程序发生异常中断时,处理器进入相应的异常模式。每种异常模式都有一组 寄存器供相应的异常处理使用。系统模式并不是通过异常过程进入的,它和用户 模式拥有完全一样的寄存器。但是系统模式属于特权模式,可以访问所有的系统 资源,也可以直接进行处理器的模式切换。 3 1 3a r m 处理器的寄存器 a r m 处理器共有3 7 个寄存器,其中包括3 1 个通用寄存器和6 个状态寄存器,均 为3 2 位寄存器。每种处理器模式都有一组相应的寄存器。 通用寄存器分为3 类:未备份寄存器,包括r 0 一r 7 ;备份寄存器,包括r 8 一r 1 4 ;程序计数器p c ,耳i r 1 5 。其中未备份寄存器即在所有处理器模式下都指 同一个物理寄存器,而备份寄存器在不同运行模式下可能对应着不同的物理寄存 器。 状态寄存器是指c p s r 寄存器和异常模式下的s p s r 寄存器。 寄存器的使用需要满足一定的规则。其中常用的规则如下瞪】: 子程序间通过寄存器r 0 一r 3 来传递参数。当参数个数大于4 个时,使用数 据栈来传递多余的参数。 子程序中使用r 4 一r 11 来保存局部变量。 基于a r m 9 2 6 e j s 的s o c 系统设计 寄存器r 1 2 用作子程序间的s c r a t c h 寄存器,通常记作i p 。 寄存器r 13 用作数据栈指针,记作s p 。 寄存器r 1 4 称为连接寄存器,记作l r ,用来保存子程序返回地址。 寄存器r 15 是程序计数器,记作p c 。 3 1 4a r m 9 2 6 e j s 处理器特性概述 数据与指令分离的哈佛结构,属于a r mv 5 t e j 架构的3 2 位r i s c 处理器 5 级流水线设计,支持a r m t h u m b 模式 j a v a 模式下6 级流水线设计 m m u 、1 6 字写缓冲器 4 路组相联的可配置逻辑c a c h e 可配置的t c m ( t i g h t l yc o u p l e dm e m o r y ) 存储器 带有单周期3 2 1 6 和1 6 1 6 乘法器 在典型的0 1 3 u m - i - 艺下,主频可以达到3 0 0 m p i s 的性能 3 2a r m 9 2 6 e j1 6 1 6 宏单元的调试特性 a r m 9 2 6 e j s 硬核内嵌e m b e d d e d l c e r t 和t a p 逻辑单元,用来完成处理器的调 试工作。e m b e d d e d l c e r t 逻辑中包含了丰富的寄存器,通过t a p 控制逻辑的扫描 链访问这些寄存器,可以控制a r m 9 2 6 e j s 进入或者退出调试状态;可以设置断点 和观察点进行实时调试。t a p 控制逻辑采用符合i e e e l1 4 9 1 标准的j t a g 接口。 3 2 1边界扫描 在j t a g 调试当中,边界扫描是一个很重要的概念。边界扫描技术的基本思想 是在靠近芯片的输入输出管脚上增加一个移位寄存器单元。因为这些移位寄存器 单元都分布在芯片的周边上,所以被称为边界扫描寄存器。当芯片处于调试状态 的时候,这些边界扫描寄存器可以将芯片和外围的输入输出隔离开来。通过这些 边界扫描寄存器单元,可以实现对芯片输入输出信号的观察和控制。对于芯片的 输入管脚,可以通过与之相连的边界扫描寄存器单元把信号( 数据) 加载到该管 脚中去;对于芯片的输出管脚,也可以通过与之相连的边界扫描寄存器捕获该管 脚上的输出信号。在正常的运行状态下,这些边界扫描寄存器对芯片来说是透明 的,所以正常的运行不会受到任何影响。这样,边界扫描寄存器提供了一个便捷 的方式用以观测和控制所需要调试的芯片。另外,芯片输入输出管脚上的边界扫 描( 移位) 寄存器单元可以相互连接起来,在芯片的周围形成一个边界扫描链。 第三章a r m 9 2 6 e j s 处理器分析 一般的芯片都会提供几条独立的边界扫描链,用来实现完整的测试功能。边界扫 描链可以串行的输入和输出,通过相应的时钟信号和控制信号,就可以方便的观 察和控制处在调试状态下的芯片。实际调试有两条扫描链最常用,一条是处理器 核周边的扫描链,一条是e m b e d d e d i c e r t 周边的扫描链。 利用边界扫描链可以实现对芯片的输入输出进行观察和控制。t a p 控制单元就 是用来管理和使用这些边界扫描链的。 3 2 2t a p 逻辑单元 t a p 是一个通用的端口,通过t a p 可以访问芯片提供的所有数据寄存器和指令 寄存器。对整个t a p 的控制是通过t a p 控制器来完成的。t a p 总共包括5 个信号接 1 :3 t r s t 、t c k 、t m s 、t d i 和t d o ,其中前4 个是输入信号接口,t d o 是输出信号 接口【6 】。 t e s tc l o c k i n p u t ( t c k ) t c k 为t a p 的操作提供一个独立的、基本的时钟信号,t a p 的所有操作都是 通过这个时钟信号来驱动的。t c k 在i e e e1 1 4 9 1 标准里是强制要求的。 t e s tm o d es e l e c t i o ni n p u t ( t m s ) t m s 信号用来控制t a p 状态机的转换。t m s 信号在t c k 的上升沿有效。t m s 在i e e e11 4 9 1 标准里是强制要求的。 。t e s td a t ai n p u t ( t d i ) t d i 是数据输入的接口。所有要输入到特定寄存器的数据都是通过t d i 接口 一位一位串行输入的( 由t c k 驱动) 。t d i 在i e e e11 4 9 1 标准里是强制要求 的。 t e s td a t ao u t p u t ( t d o ) t d o 是数据输出的接口。所有要从特定的寄存器中输出的数据都是通过 t d o 接口一位一位串行输出的( 由t c k 驱动) 。t d o 在i e e e11 4 9 1 标准里 是强制要求的。 。t e s tr e s e ti n p u t ( t r s t ) t r s t 可以用来对t a p 控制器进行复位。不过这个信号接口在i e e e11 4 9 1 标 准里是可选的,并不是强制要求的。因为通过t m s 也可以对t a p 控制器进 行复位。 3 3a r m 9 2 6 e j s 处理器的流水线 流水线是r i s c 处理器执行指令时采用的机制。使用流水线,可在取下一条指 令的同时译码和执行其他指令,从而加快执行速度。a r m 9 2 6 e j s 处理器采用5 级 1 4 基于a r m 9 2 6 e j s 的s o c 系统设计 流水:取指、译码、执行、存储、回写。相比较a r m 7 ,a r m 9 增加的存储器访问 段和回写段使其处理能力可达平均1 1d h r y s t o n em i p s m h z ,指令吞吐量增加了 3 0 左右。 a r m 流水线的一条指令只有在完全通过“执行”阶段才被处理。若处理器执 行一条分支指令或者修改p c 而发生跳转时,会清空流水线。另外,当处理器产生 中断时,一条处于“执行 阶段的指令也会先完成再响应中断,这时流水线里的 取指、译码阶段的指令将会被放弃。 3 4a r m 9 2 6 e j s 处理器的存储系统 a r m 9 2 6 e j s 的存储系统是指高速缓冲存储器c a c h e 、存储管理单元m m u 和写 缓冲单元w r i t eb u f f e r 。 3 4 1c a c h e 和w r i t eb u f f e r c a c h e 是一种容量小,速度快的存储器阵列。它位于主存和处理器内核之间, 保持着最近一段时间处理器涉及到的主存块的内容。在需要进行数据读操作时, 从c a c h e 中读取可提高3 1 0 倍的速度,从而减小慢速设备给处理器内核造成的存储 器访问瓶颈问题的影响。存储器访问的局部性原理可以很好的解释c a c h e 能改善处 理器性能的原因。a r m 9 2 6 e j s 处理器采用分离的1 6 k b 数据c a c h e 和1 6 k b 指令 c a c h e ,用以提高处理器整体的性能。其中数据c a c h e 支持直写法和回写法策略。所 谓直写法是指处理器核写c a c h e 命中时,将同时修改c a c h e 和主存中的内容。回写法 是指处理器核写c a c h e 命中时,只l f i j c a c h e 存储器写数据,而不立即写入主存。 c a c h e 经常与w r i t eb u f f e r 一起使用。写缓冲器是一个非常小的f i f o 存储器,位 于处理器内核和主存之间。用来临时存放处理器将要写入主存中的数据。写缓冲 器的数据在没有写入主存之前是不允许被读取的。a r m 9 2 6 e j s 处理器采用1 6 字 f i f o 作为写缓冲器。 根据c a c h e 所处位置不同分为逻辑c a c h e 和物理c a c h e 。逻辑c a c h e 在虚拟地址空间 存储数据,它位于处理器和m m u 之间;物理c a c h e 使用物理地址存储数据,它位于 m m u 和主存之间。a r m 9 2 6 e j s 处理器采用逻辑c a c h e 结构。 c a c h e 主要由3 部分组成:目录存储段、状态信息段和数据项段。其中目录存储 段记录了每个c a c h e 行是由主存什么位置拷贝来的;状态信息段由有效位和脏位两 比特组成,有效位用来记录当前的c a c h e 是活动的,可以为处理器内核所用;脏位 则用来标记该c a c h e 行中所含的内容与主存中相应的内容是否一致。数据项段存储 来自主存的信息。 c a c h e 控制器是一种硬件,它将主存的数据自动拷贝至u c a c h e 存储器中。读写存 第三章a r m 9 2 6 e j s 处理器分析 储器的请求在被传送到存储器控制器之前,会被c a c h e 控制器截获,并将请求的地 址分为3 部分:标签域、组索引域和数据索引域。 为了减少c a c h e 的颠簸频率,将c a c h e 存储器分成一些相同容量的小单元,称为 路。将拥有相同组索引的c a c h e 行称为组相联。a r m 9 2 6 e j s 处理器c a c h e 采用4 路组 相联。 同时为了提高c a c h e 的命中率,还可以考虑以下方法:在允许的情况下,增 大c a c h e 容量;( 室) c a c h e 每次与主存交换的信息量适中;采用多路组相联;采用 多级c a c h e 等。 3 4 2 u m m u ( m e m o r ym a n a g e m e n tu n i t ) ,即存储器管理单元,它提供的一个关键任务 是,使各个任务作为各自独立的程序在其自己的私有存储空间中运行,运行的任 务无需知道与它无关的任务的存储需求,从而简化任务设计。 m m u 简化了任务编程,是因为它提供了一些资源,以允许使用虚拟存储器一 一一个另外的独立于系统物理存储器的存储空间。m m u 作为转换器,将程序和数 据的虚拟地址转换为实际的物理地址。这个转换过程允许运行的多个程序使用相 同的虚拟地址,而各自存储在物理存储器的不同位置。m m u 硬件采用地址重定位, 即在地址访问主存之前,转换由处理器核输出的存储器地址。 一个重定位寄存器只能转换一块存储空间。这块存储空间的大小由虚拟地址的 偏移量部分所占的位数决定。这样的一块虚拟存储空间称为一页,转换过程中对 应的那块物理存储空间称为一个页帧。因为系统必须将多个页转换为页帧,故也 需要多个重定位寄存器来有效的支持虚存。 m m u 中临时存放转换数据的一组重定位寄存器实际上是一个由“个重定向寄 存器组成的全相联c a c h e 。这个c a c h e 称为转换旁路缓冲器( t l b ) 。t l b 缓存最近被 访问的页的转换数据。 除了使用重定向寄存器外,m m u 还使用主存中的表来存放描述系统中用到的 虚拟存储器映射的数据,这些转换数据的表称为页表。页表中的每项代表了将虚 拟存储器的一个页转换到物理存储器的一个页帧所需的所有信息,即用于将虚拟 页转换为物理页帧的物理基地址;分配给该页的访问权限;页的c a c h e 和写缓冲器 配置。 m m u 和c a c h e 的控制寄存器不占用地址空间,协处理器c p l 5 是操纵m m u 和 c a c h e 的唯一途径。 1 6 基于a r m 9 2 6 e j s 的s o c 系统设计 3 5 本章小结 本章概述了a 砌订9 2 6 e j s 处理器的基本信息。重点讲述了a r m 处理器的寄存器 使用规则、a r m 处理器的调试基础和a r m 处理器的存储管理单元m m u 和c a c h e 的 基本理论,为后续章节的验证软件编写提供了理论依据。 第四章基于a r m 9 2 6 e j 一1 6 1 6 的s o c 系统设计 1 7 第四章基于a r m 9 2 6 e j1 6 1 6 的s o c 系统设计 4 1a r l v ls o c 系统总体构架 图像压缩芯片包括图像压缩单元和a r ms o c 单元两部分。本论文主要讲述 a r ms o c 的系统设计与验证。a r m 处理器采用a r m 9 2 6 e j1 6 1 6 宏单元,包含 a r m 9 2 6 e j - s 核、1 6 k b 指令c a c h e 和1 6 k b 数据c a c h e 、m m u 和b i s t 测试电路; 采用符合a m b a 2 0 协议的双总线构架,数据a h b 总线和指令a h b 总线分离, 通过a h b 2 a p b 总线桥连接a p b 总线;其中a h b 总线上挂载的设备有8 k 1 6 b i t 的片外f l a s h 、4

温馨提示

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

最新文档

评论

0/150

提交评论