(电子科学与技术专业论文)高性能dsp片内存储系统的局部优化设计研究.pdf_第1页
(电子科学与技术专业论文)高性能dsp片内存储系统的局部优化设计研究.pdf_第2页
(电子科学与技术专业论文)高性能dsp片内存储系统的局部优化设计研究.pdf_第3页
(电子科学与技术专业论文)高性能dsp片内存储系统的局部优化设计研究.pdf_第4页
(电子科学与技术专业论文)高性能dsp片内存储系统的局部优化设计研究.pdf_第5页
已阅读5页,还剩63页未读 继续免费阅读

(电子科学与技术专业论文)高性能dsp片内存储系统的局部优化设计研究.pdf.pdf 免费下载

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

文档简介

里堕型堂堇查奎兰坚窒竺堕堂篁丝苎 a b s t r a c t n o w a d a y st h ed i g i t a ls i g n a lp r o c e s s i n g ( d s p ) h a sg o tg r e a td e v e l o p m e n ta n db e e nw i d e l y u s e di nm a n yf i e l d s 1 1 1 eg r o w i n gd e m a n do fd s p b r i n g si t ss t o r a g es y s t e me n o r m o u sc h a l l e n g e a n do p p o r t u n i t yn e v e rm e tb e f o r e a l t h o u g ht h et e c h n o l o g yo f c a c h eh a sb e e nw i d e l yu s e di nt h e d e s i g no fg p p ,w h e t h e ri t i sa p p r o p r i a t ef o rd s po rn o ti ss t i l li nd i s p u t e s ,f o rt h en o n p r e d i c t a b i l i t ya n dr e l a t i v e l yh u g el a t e n c yc a u s e db yc a c h em i s s e sc a n n o tm e e tt h er i g o r o u s r e q u i r e m e n t so f r e a lt i m ep r o c e s s i n gs o m e t i m e s b u ta f t e ra l l , c a c h ei sat r e n di nd s p d e s i g n t od e s i g na n dr e a l i z ea na p p r o p r i a t ed s p ss t o r a g es y s t e mb a s e dw i t l lc a c h ei st h em a i nt a s kf o r m y m a s t e r sd e g r e e t h eh i g hp e r f o r m a n c ey h f t _ d xt h a tw ed e s i g n e di n d e p e n d e n t l yh a sa d o p t e d “o n c h i p r a ma n dt w ol e v e lc a c h e ”a si t ss t o r a g es y s t e ms t r u c t u r e , w h i c hh a sw e l le x p a n s i b i l i t y b u t t h el a r g el a t e n c yc a u s e db yc a c h em i s s e ss t i l ln e e d sr e d u c e n i sp a p e rh a sg i v e ns e v e r a l m e a s u r e st oo p t i m i z et h es t o r a g es y s t e mp e r f o r m a n c eo fy h f t d 3 ,a n dp u ti ti n t or e a l i t yi n s u c c e s s i o n w es i m p l i f yt h em i s sd a t ap a t hc o m i n gi n t oi n t e r n a lc h i pb yr e b u i l d i n gt h el 2a n de m l f c o m p o n e n t so fy h f t _ d 3a n dr e d e s i g n i n gt h ei n t e r f a c el o g i co fl 2a n de m i f a f t e rt h a t ,l 2 c a na s ke m i ff o rd a t ad i r e c t l yw i t h o u tp a s s i n gt h o u g he d m aw h e ni th a sm i s s e s f u r t h e r m o r e , s u c han l e a s u r ec a ni n c r e a s eb u r s tl e n g t ho fe m i fw h e ni tt r a n s p o r td a t at ol 2t os h o r t e nt h e t i m eo fd a t as t a y i n gi nm i d - t r a n s p o r t i n gs t a t e ,w h i c hl a r g e l yr e d u c et h el a t e n c yo fl 2 sm i s s l a t e n c y t h el o a d s t o r ei n s t r u c t i o nh a sl a r g ep r o p o r t i o na n dg o o dp a r a l l e l i s mi nv l i ws t r u c t u r e a c c o r d i n gt ot h i sc h a r a c t e rw eb r i n gf o r w a r dt h ec o n c e p to f “m i s sp i p e l i n e ”w h i c hb e g i n st o w o r kw h e nl 1 de n c o u n t e r sm i s s e s u s i n gt h i sm i s sp i p e l i n e ,as i n g l er e a dm i s sl a t e n c yc a nb e r e d u c e df r o m9c y c l e st o6c y c l e sa n dm u l t i - r e a dm i s s sa v e r a ll a t e n c yc a nb er e d u c e dt o3 - - 4 c y c l e s u s et h ed e s i g nc o m p i l e r ,i nw o r s tc a s eo p e r a t i o nc o n d i t i o no f 0 1 8 9 mt e c h n o l o g ya r t i s a n s t a n d a r dc e l l s ,t h ec o m p o n e t sr e b u i l d e ds a t i s f i e sb o t hi nt i m i n ga n da r e aw i t ht h ef r e q u e n c y a b o v e1 5 0m h z ,a n da r e ai sn o to b v i o u s l yi n c r e a s e dc o n s t r a c t e dw i t hy h f t d 3 b yc a r r y i n g o u ts i m u l a t i o ni nd i f f e r e n td e s i g nl e v e l ,i tc a nb eg u a r a n t e e dt h a tt h ed e s i g nc o u l dw o r k c o r r e c t l y a tl a s t ,t h ec o n c l u s i o nh a sb e e ng i v e nb yr u n n i n gag r o u po fb e n c h m a r k st oa n a l y z et h e p e r f o r m a n c ee n h a n c e da f t e rt h ed e s i g nb e i n go p t i m i z e d k e y w o r d s :d a t ac a c h e ,d s p , m i s sp i p e l i n e ,m i s sl a t e n c y ,d e s i g nv e r i f i c a t i o n 罔1 。1 图1 2 图1 3 图1 。4 图2 1 图2 2 图2 3 图2 - 4 陶2 5 图3 1 图3 2 图3 3 图3 4 图3 5 图3 - 6 图3 7 图3 8 图3 - 9 图3 - 1 0 圈4 1 图4 - 2 图4 3 图4 4 图4 5 图4 6 图4 7 图4 - 8 图5 1 图6 1 图6 2 图6 - 3 图6 4 图6 5 图目录 m i 泗i ) s p 的存储层次 多d s p 处理机的存储结构 d s p r a m 存储架构下的f i r 滤波处理 c 6 4 1 4 的片内r a m c a c h e 配置 y h f t _ d 3 芯片的总体结构 y h f td 3 数据存储通道 y h f td 3 片内两级高速缓存的结构 c p u 读数据流程 c p u 写数据流程 精简l 2 失教数据的读取流程 新的数据存取通道 l 2 功能模块结构图 e d m a 写l 2 处理模块框图 e d m a 读l 2 处理模块框图 l 2 请求读写e m i f 实现框图 e m i f 功能模块划分 异步f f o 的一般结构 e m i fl 2 b u f f e r r 的结构 e m i f 对一次l 2 读的处理过程( 读s d r a m ) y h f t - d 3 的五站流水线划分及读数流程 y h f t - d 3l 1 d 读数失效波形图 优化后的l i d 读数失效波形图 仞始情况下的状态转换 s n o o p i n g 和用户作废请求处理状态变化图 失效处理状态机 m s 站结构框图 d a l 、a 站b u f f e r 顶层模拟验证过程 优化前后l i p 读失效总延迟数对比 优化前后i 1 d 读失效总延迟数刘比 优化前后程序执行总时间数对比 优化前后l i d 平均失效延迟数对比 优化前后程序执行总时间数对比 o一4“一mb h博伸扒丝丝抖笛m”船”。j”弛轮非站弭“卯 表4 - 1 流水线各站功能说明 表4 - 2 没有失效流水时的取数操作 表禾3 失效流水机制下的取数操作 表目录 表4 4 既有命中指令又有失效指令的处理 表5 - le d m a 读写不同配置l 2 的测试 表5 - 2 组合与式1 的测试, 表5 - 3 组合方式2 的测试 表5 - 4 组合方式3 的测试 表5 - 5 组合方式4 的测试 表6 - 1 存取通路优化前后性能对比 表6 - 2 不同失效个数下的停顿周期数和平均失效延迟 表6 3l o a d 指令分布情况 表6 4 一级数据c a c i 优化前后性能对比 如弭拍叭拍拍钉卯驰铊巧铂跖 独创性声明 本人声明所呈交的学位论文是我本人在导师指导下进行的研究工作及取得 的研究成果尽我所知,除了文中特别加l ;上标注和致谢的地方外,论文中不包含 其他人已经发表和撰写过的研究成果,也不包含为获得国防稃学技术大学或其它 教育机构的学位或证书而使用过的材料与我一同工作的同志对本研究所做的任 何贡献均已在论文中作了明确的说明并表示谢意 学位论文题目:崮性能! 婴兰内壶值螽氲曲旦垫位丝选苴盟定 学位论文作者签名:i 圭墨煎日期:j q 年,月,2 日 学位论文版权使用授权书 本人完全了解国防科学技术大学有关保留、使用学位论文的规定本人授权 国防科学技术大学可以保留并向国家有关部门或机构送交论文的复印件和电子 文档,允许论文被查阅和借阅;可以将学位论文的全部或部分内容编入有关数据 库进行检索,可以呆用影印、缩印或扫描等复制手段保存、汇编学位论文 ( 保密学位论文在解密后适用本授权带) 学位论文题目直性l 池肚由壶谴丞统曲量蛰位毡盗! 土盈嚣 学位论文作者签名:主堡盘煎 日期:妒4 年月,j 日 作者指导新师撩名1 j i 惕、吃日期:0 u p 年,_ e ii z 日 【q 国防科学技术大学研究生院学位论文 第一章绪论 1 1d s p 芯片的特点和发展趋势 数字信号处理器( d i g i t a ls i g n a lp r o c e s s o r s ,d s p ) 是一种专门用于数字信号运算处理 的专用微处理器。目前d s p 技术已成为集成电路领域发展最快、竞争最激烈的高新技术之 一,也是促使当今科技进步的重要源动力。雷达、声纳、图像处理、蜂窝基站系统等领域 都要求输入的大量数据在有限的时间内完成指定的处理,这都需要有高性能d s p 处理器的 支撑。此外在数字移动通讯、网络应用、信息家电、马达控制、数码相机、助昕器、m p 3 播放机等消费应用领域,d s p 的使用也是层出不穷。 数字信号处理中的数据操作具有高度重复的特点,特别是乘加操作,在滤波、卷积和 f f t 等常见d s p 算法中用得最多。d s p 在很大程度上就是针对上述运算特点而设计的,所以 其结构特点在很大程度上体现了算法的需求 1 】: 1 专门的硬件乘法器。由于d s p 算法中大量涉及到乘加运算,乘法操作是d s p 的一个 主要任务。现代几乎所有的d s p 芯片都至少有一个快速的硬件乘法器。此外,有很多的 d s p 还具有专门的乘加部件( m a c ) ,能够更快的完成乘加运算。 2 多功能单元。为了进一步提高速度,很多d s p 芯片中,除了m a c 部件外,还有多个 独立的a l u 部件和移位器等部件,这些部件能并行的工作,从而在相同的时间内能执行 更多的操作。 3 硬件循环控制。当完成循环初始化后,实际运行中循环不再消耗指令周期,从而大大 提高了数字信号处理的运算速度。 4 设置了功能很强的专用指令,可以实现指令的重叠运行。 5 片内集成众多外设控制器。集成了外部存储控制器、串口、主机口等外设接口,并且 外设接口是可编程控制的,这样为用户开发和系统扩展提供了极大的方便。 自上世纪7 0 年代末问世以来,d s p 芯片已经从最初的仅能满足简单乘加运算需要的 第一代发展到现在的以单指令多数据( s i m d ) 和超长指令字( v l l w ) 相结合为特征的第 四代 2 1 】。其结构经过数次重大变革,如专有乘法器的使用,哈佛总线的架构,多功能单 元和流水线技术以及v l l w 体系结构的引入等等,每一次体系结构上的重大改变都使d s p 的性能得到了一次飞跃。 1 9 9 7 年t i 公司发布的c 6 2 x x 系列,以其开创性地引入v l l w 结构使d s p 技术进入一 个新时代。随后各d s p 公司在性能增强上,尤其在开发指令级并行性上提出了很多创新, 如流水线、v l l w 、r i s c 、s u p e r s c a l a r 、s i m d 等技术都被融入到d s p 结构中。现在最成 功的高性能d s p 都将v l l w 技术和s i m d 技术相结合起来。t i 的t m s 3 2 0 c 6 4 x 系列, 它在c 6 2 的v l l w 架构的基础上增加了多条s i m d 指令以及相应的硬件支持如支持s i m d 第1 页 国防科学技术大学研究生院学位论文 运算的乘法器等;a d i 公司的t i g e r s h a r c 系列则是在其传统的s i m d 架构中融入了许多 v l l w 的特征。此外现在还出现了一种把d s p 核与g p p 核结合起来的h y b r i d 体系结构【2 2 】, 它保留了g p p 指令集,以及其不能被g p p 指令替换的d s p 专用指令,在其基础上来构成 新的指令集,如s h d s p 芯片。 d s p 芯片的发展始终是围绕着用户不断增长的需求而进行的。这在性能上表现为追求 更快的运算速度和处理能力;在应用上则追求更低功耗,配置多样性和编程的方便性。具 体说来有以下几点: 系统化集成。随着工艺尺寸的不断减小,片上可以集成更多的外设和存储器, 也使s o c 逐步从理论变成现实。s o c 和系统化集成将是d s p 发展的一个方向。此外, 集成更多的外设和和更大的片内存储器,集成更多的专用处理单元如v i t e r b i 和t u r b o 等协处理器的集成,d s p 与g p p 相集成的h y b r i d 体系结构等也都是d s p 向集成化发 展的一个方向 2 2 】 2 3 。 多个微处理核的m i m d 技术 为改善代码密度而采用了变长指令集,这样的体系结构对编程和编译带来了困 难,可考虑在硬件上来改进,降低编译器进行并行性开发和优化代码的难度 2 2 】。 追求更高的运算速度和进一步降低功耗。由于电子设备的个人化和客户化趋 势,d s p 必须追求更高更快的运算速度,同时由于消费类d s p 系统尤其是便携式手持 产品的迅速发展,对于低功耗有很高的要求。 从应用趋势来说,设计新的d s p 体系结构一定要支持3 g 4 g 无线通信、多媒 体应用、网络服务和加密通信算法等。面向新的应用算法来创新d s p 体系结构,这种 应用驱动技术的趋势还是主流方向。从软件角度来说,除了硬件外,还需要高效的编 译器,良好的开发环境 2 4 1 。 1 2d s p 中的存储体系结构 1 2 1d s p 存储结构的发展现状与趋势 自9 0 年代中期d s p 体系结构引入v l l w 和s i m d 技术以来,d s p 的性能得到了长足 的发展。如t i 公司的t m s 3 2 0 c 6 4 x 系列,频率可达7 2 0 m ( 更快的已到1 1 g ) ,每秒可 执行2 4 0 0 m ( 1 6 位) m a c 操作,a d i 的t i g e r s h a r c t s 2 0 x 系列,频率也可达到6 0 0 m , 每秒可执行个4 8 0 0 ( 1 6 位) m a c 操作。如此强的计算能力,加上v l l w 结构下程序代码 比别的结构更耗费存储资源,要求芯片必须具备足够的存储容量和存储带宽与之相适应, 使得宝贵的计算资源能够得到充分的利用。d s p 主要面向数据密集型处理,而且d s p 的实 时处理要求决定了c p u 必须在规定的时间内得出正确的计算结果,太慢的数据存取访问速 度势必无法满足应用的需求。而与之相对的是,处理器的性能以每年6 0 的速度在发展, 而d r a m 访问时间的改善速率还不到每年1 0 ,这就是常说的“m e m o r y w a l l ”。虽然人 第2 页 国防科学技术大学研究生院学位论文 们对存储系统性能的提高进行了大量的研究,从一定程度上缓解了这种矛盾,但是数据存 取带来的延迟始终很难得到完好的解决,存储系统始终是性能提高的瓶颈所在。 当今高性能d s p 都有很先进的片内存储子系统,最明显的特征就是大容量的片内存储 器,高带宽的数据存储通路,和高效率的d m a 控制系统。以目前最先进的两款商用d s p : t i 公司的t m s 3 2 0 c 6 4 1 4 和a d i 公司的t s 2 0 1 为例 2 7 2 8 2 9 1 ,c 6 4 1 4 的片内l 2s r a m 已经做到了1 m b ( 8 m b i 0 ,而t s 2 0 1 更是在片内集成了多达3 m b ( 2 4 m b i t ) 的e - d r a m 。 与这些大容量片内存储器相配的是高宽度的总线带宽。c 6 4 1 4 的二级存储器与一级指令 c a c h e ( l 1 p ) 之间的数据总线为2 5 6 位,只需一个周期就可以将一个c a c h e 行的数据送至 l 1 p ,与一级数据c a c h e 之间则拥有2 5 6 位的读数据总线和2 5 6 位的写数据总线;而片内 与片外间的数据总线宽度更是从c 6 2 的3 2 位增长到8 0 位,c 6 4 采取双存控机制,拥有两 个片内存储控制器:6 4 位的e m i f a 和1 6 位的e m i f b ,使片外数据到片内的搬移效率提 高了至少一倍。t s 2 0 1 也有着丰富的总线资源,t s 2 0 x 的内部总线是6 0 0 m h z ;四条1 2 8 位的内部总线,6 0 0 x 4 1 2 8 比特秒。在d m a 控制方面,c 6 4 提供了多达6 4 个的数据 传输通道,支持p d t 传输和不同结构数据传输的链接:t s 2 0 1 则包含1 4 个专用d i v l a 通 道一4 个外部d m a ,8 个l i n k p o r td m a 和2 个a u t o d m a ,而且在进行数据传输时对c p u 核的影响更小。 d s p 新的体系结构不断地被提出,其性能不断地提高,这对片内存储系统提出了很多 新的挑战,总体上来说是要求更高的带宽、更高的速度、更多的端口、更大的容量和更低 的功耗。从单总线的冯若曼结构到多总线的哈佛结构,到后来的增加功能单元个数和总 线宽度,存储器分体,片内c a c h e 的出现,再接着v l i w 和s i m d 的技术运用,出现了 m i m d 技术和多处理机技术。d s p 的存储系统在不断地适应新的变化。图1 1 是一个简单 的m i m dd s p 存储层次示意图,图1 2 是贝尔实验室研究的用于3 g 无线通讯的多d s p 核 处理机示意 2 5 1 。 图1 1m i m dd s p 的存储层次 第3 页 里堕型兰垫查查堂堕窒生堕兰垡垒奎 图1 2 多d s p 处理机的存储结构 此外,现在有人把i r a m ( i n t e l l i g e n tr a m ) 技术和d s p 结合起来,形成一种所谓的 d s p r a m 的全新的d s p 结构1 2 0 。通过把d s p 和存储器集成在一个单一的d r a m 芯片 中来处理日益扩大的处理器存储器之间的性能差距。这种d s p r a m 技术借鉴单片m i m d 的向量体系结构,理论上可以将存储带宽增加上百倍,存取延迟时间减少数十倍 3 7 1 。图 1 3 是这种结构向量化处理f i r 滤波计算时的一个例子【3 6 】。其中每个p e ( 处理单元阵列) 都含一个小型d s p 处理核和d r a m 阵列。d s p r a m 与传统d s p 存储结构相比虽然具有 很大优势,但是由于处理器与存储器生产工艺的不同,把d s p 集成在d r a m 中的做法会 遇到一些困难。前者追求处理速度,布线层数多,一般用陶瓷封装,功耗相对较大;而后 者追求更小的存储器尺寸和更低的电荷泄放量,布线层数少,一般采用塑胶封装,功耗相 对小,等等。 图1 3d s p r a m 存储架构下的f i r 滤波处理 1 2 2d s p 片内c a c h e 技术的重要性和发展要求 片内c a c h e 技术的重要性在g p p ( 通用微处理器) 的设计中勿庸置疑,但运用到d s p 中却还存在着一些争议,尤其在是否需要两级c a c h e 结构上至今还有许多不同的看法。d s p 进行的是数据密集型运算,其处理对象往往是一个个的数据块,处理完一个后马上进行下 一个的处理,数据吞吐量大,片内与片外间数据交换频繁。而恰恰它的实时处理性又要求 第4 页 国防科学技术大学研究生院学位论文 数据块与数据块之间的处理间隔不能过长。所以d s p 从设计初期就一直使用了片内r a m , 用于存放供c p u 核处理的数据块。传统d s p 根本没有c a c h e ,存储架构是一种“c p u 核 + 片内r a m ”的平板方式。数据块直接由d m a 控制器从片外搬到片内r a m 中,c p u 核 从r a m 中取数就行。由于d s p 的实时处理要求太高,数据块什么时候处理完,什么时候 送到,程序员都必须有一个清楚的规划预算,这就是d s p 中的“确定性( d e t e r m i n i s m ) ” 3 8 问题。若使用c a c h e ,一旦不命中,一来从片外到片内的巨大失效延迟根本无法满足应 用程序的实时性,二来c a c h e 失效的不确定因素也不利于程序员对程序运行的全盘掌握。 所以仅用c a c h e 来自动实现片内与片外的数据交换是不可取的,d s p 程序员必须要手工干 预,通常的方式是在程序中即利用d m a 机制在c p u 核处理当前数据块时提前将下一个数 据块搬到片内r a m 中。此外使用c a c h e 还涉及到数据一致性的维护等问题。在很多设计 者看来,使用c a c h e 的唯一好处似乎就是自动进行片内外数据交换,降低程序员负担,而 且这种好处还因为程序员必须懂得根据c a c h e 优化代码结构而大打折扣:既然d s p 程序员 根本无法回避底层干预,那么c a c h e 这种本来就有很多缺点的方式就变得低效和无意义。 以上观点在d s p 的设计早期无疑是合理的,但是自进入上世纪9 0 年代以来,随着信 号处理应用领域的不断扩大,需求的不断增加,d s p 应用程序也变得愈加复杂和多样。程 序代码越来越庞大,根本无法全部放到片内。以实现m p e g 4 编解码为例【2 6 】,代码量将 近3 0 0 k b ,其运算过程中所需哈夫曼表、数据堆栈等要占将近5 0 0 6 0 0 k b 左右的空间, 这还不算上需要处理的每祯数据块的数据量。如果全部依靠程序员手工处理这些数据的搬 入搬出,其工作是繁杂和低效的。程序员驾驭d s p 底层的负担日益繁重,这也己成为影响 “t i m e t o m a r k e t ”的重要原因。一种好的方式是将c a c h e 与r a m 结合起来,片内存储 器既包括c a c h e ,又包括r a m 。程序员可以将一些核心代码和数据结构全部放入r a m 中, 需要处理的实时数据也通过d m a 控制器进行搬移,以此来完成d s p 的“d e t e r m i n i s m ”要 求。而对于那些非核心的代码和数据结构则放在片外,利用c a c h e 而不是d m a 来进行片 内外数据的交换,这样既满足了d s p 的实时要求,也减少了程序员的手工干预。此外, c a c h e 还可以很好地适用于那些实时性要求不太高的程序。 现今d s p 的片内存储器有由s r a m 向d r a m 转变的趋势 2 9 】【2 1 。从前一节可知, 不管是m i m d 还是多d s p 核乃至d s p r a m ,都是基于“d r a m + c a c h e ”存储架构的。 即使片内外数据交换不用c a c h e ,数据到了片内存储器后d r a m 相对较慢读取速度也无法 满足c p u 的读取要求,所以无法避免地需要一级c a c h e 来弥补其与处理器速度的差距程 序员也无可避免地要掌握根据c a c h e 结构优化代码的编程方法。而且d s p 程序对局部性原 理有着天然的契合性:核心的d s p 程序都是集中对一个个数据块的循环重复处理,不管是 程序还是数据,其空间局部性和时间局部性比起偏重于控制的通用c p u 程序要好得多。因 此,不管是片内外问的数据交换,还是c p u 与内部存储器间的数据交换,都需要用到c a c h e 。 所以在d s p 中c a c h e 技术已不是一个“用不用”的问题,而是一个“如何用好”的问题。 既然片内外数据交换用到了c a c h e ,自然就可以利用分级的c a c h e 层次来解决容量命 中时间之间的矛盾。t i 公司的c 6 4 1 4 采取的就是“r a m + 两级c a c h e ”这样种存储架 第5 页 国防科学技术大学研究生院学位论文 构 2 7 1 ,如图1 - 4 所示。在1 m b 的片内存储器中,有7 6 8 k b 的r a m ,用于存放核心代码 和核心数据,需要实时处理的数据块也由d m a 控制器搬至此处。其余的2 5 6 k b 为四路组 相联的c a c h e ,用于缓存非核心代码和数据。此外,c 6 4 1 4 还有1 6 k b 的数据c a c h e 和1 6 k b 的指令c a c h e ,数据块从片外搬进r a m 后,会进到一级数据c a c h e 进行处理。由于d s p 程序极好的数据重用特性,c p u 核只需集中处理位于一级数据c a c h e 的数据。这样的好处 是可以减小d m a 搬运进r a m 数据块的大小,因为c p u 核每次都是最多以1 6 k b 为单位 处理数据块,所以d m a 也只需搬运数倍于1 6 k b 的数据块即可,从而节省片内存储器资 源。 t i 公司的较早期另一款定点d s p 芯片c 6 2 1 1 ,由于其定位在高性价比上,所以也采用 了这种两级c a c h e 结构【1 4 】。它的= 级存储器l 2 大小只有6 4 k b ,可以配置其r 伽c a c h e 的比率,将一部分配置成r a m ,而另一部分则作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 。 其他c 6 2 x 系列产品如c 6 2 0 2 ( 2 5 6 k b ) ,c 6 2 0 3 ( 7 9 6 k b ) ,其片内存储器要大得多,虽然 性能要好一些,但是在当时来看,其性能价格比远不如c 6 2 1 1 1 3 9 1 。而且c 6 2 1 l 的这种两 级c a c h e 的架构很也很容易进行扩充,一旦需要,可以象c 6 4 1 4 那样直接增加r a m 的容 量即可,如c 6 7 1 3 就是在原来6 4 k b 的基础上增加了1 9 2 k b 的r a m ,既保留了两级c a c h e 的优势,又使性能获得迅速提升。所以总的来说,只要实时性要求能够满足,两级c a c h e 的存储结构在d s p 的设计中是非常有效和重要的。 图l - 4c 6 4 1 4 的片内r a m c a c h e 配置 c a c h e 技术从提出来至今已有了很大的发展。研究者们围绕“减小失效率”,“降低 命中时间”,“减小失效延迟”三大内容提出了很多c a c h e 优化措施。其中效果最明显的, 还是增大c a c h e 容量。而且随着半导体技术的飞速发展,特征尺寸持续减小,晶圆尺寸持 续增大,芯片上可集成的晶体管数量也急剧增长,所以d s p 芯片用得最多的也是集成更大 容量的存储器。因此针对存储体本身电路做研究,更有效地减小c a c h e 存储体尺寸、提高 集成度、提高数据读出速度、降低功耗始终是d s p 片内c a c h e 技术发展的原动力。此外, 第6 页 暑i 热 一 镰 一 暑l 一 憾 一 旦 医一 熙 蕊 犀ittlii,ltitll 誉| 黼 匦 蓦i 热 一 国防科学技术大学研究生院学位论文 对c a c h e 存储体而言,还可以采用分体,分开存储总线宽度等方式,来提高数据吞吐率, 减少访问存储体冲突次数,提高性能。 就d s p 本身特点而言,发展c a c h e 技术最重要的一点要求就是克服c a c h e 机制所固有 的缺点,满足实时性的速度要求和“d e t e r m i n i s m ”要求。这在尽可能降低c a c h e 的片外失 效开销,简化c a c h e 数据一致性维护协议,优化d s p 算法,利用编译器优化代码提高c a c h e 性能等方面都有很多研究可以做 4 0 4 1 】。c a c h e 结构的加入也使程序员在编程时必须改变 以往的传统思维方式,了解目标芯片的c a c h e 特性,掌握“c a c h ea w a r e ” 1 9 的编程方 法。对于d s p 的设计而言,要不断加强程序员控制c a c h e 方式的方便性,如更方便地对 c a c h e 可编程控制寄存器编程,更方便地控制c a c h e 的容量、工作方式、作废方式等等。 1 3 相关研究 w a y n ew 0 1 f 等人对多媒体程序的运行特点作了一系列研究 3 5 1 。在对二十三组典型的 媒体处理程序进行模拟分析之后,指出媒体程序的静态分支预测精度比通用c p u 程序高2 3 倍,而对一级数据c a c h e 的容量要求却不高,对绝大多数程序而言,一级指令c a c h e 大小 取8 k b 就足够了,其失效率仅为0 3 。所有数据都表明媒体处理程序有着极好的空间局部 性和时间局部性,能充分发挥c a c h e 的性能。 p a b l oi b & i e z 等人在研究d s p 程序l o a d s t o r e 指令特点的基础上,提出一种基于l s c ( l o a d s t o r ec a c h e ) 的o b l s t ( 单块前瞻顺序预取) 机甫u 3 4 】,以此来降低l l 与l 2 之间的失效 延迟。但同时也指出增 i :i l l 的行大小亦能获得接近的效果,但方式更直接简洁。从t i 公司 的t m s 3 2 0 c 6 4 x 系列的变化也可看出:c 6 4 在c 6 2 的基础上,将l i d 行大小增为6 4 b ,而l i p 行大小则降为3 2 b ,从而保持了l 1 、l 2 之间的总线资源不变。这样作一是因为c 6 4 采用了 更先进的l i p 取指方式,二是因为增大数据c a c h e 的行大小实际上如同增强数据预取的效 果。 j a s o nf r i e s 等人建立了相关的模型 3 3 1 ,模拟两级c a c h e 存储结构下处理器运行媒体处 理程序的性能,通过对包括c a c h e 容量、行大小、外部存储器接口带宽、外部访存等因素 的考察指出影响两级c a c h e 存储性能的最主要因素仍然是外存访问速度,其次是外存接口 带宽。并且在实验的基础上提出一种多层次数据预取的模型,得出的结论是在l 1 与l 2 之间 以及在存控与外部存储器之间设立的两级预取缓存机制对提高处理器存储性能十分有好 处。 u j k a p a s i 等人提出一种“i m a g i n e ”的流媒体存储体系结构 3 2 1 ,利用片外存储器、流 寄存器文件( s r f ) 、本地寄存器文件( l r f ) 三级存储层次充分开发了流数据的并行性, 并且结构简单、片外通讯少、带宽压力轻。国内文梅等人也对这种流式存储层次进行了相 关研究【3 1 ,在“i m a g i n e ”模拟平台上实现了r e e d - - s o l o m o n 解码,并将其和t i 的 t m s 3 2 0 c 6 4 1 4 作了全面比较,得出的结论是i m a g i n e 存储结构更适合流媒体数据计算。 马驰远等人在某e p i c 结构处理器二级c a c h e 设计研究中,对二级c a c h e 进行流水分站处 第7 页 国防科学技术大学研究生院学位论文 理,并利用地址低位交叉、自动重发等技术减少了流水线停顿的可能。同时对如何降低两 级c a c h e 机制下数据一致性维护带来的额外开销做出了探讨【3 0 】。 1 4 课题的来源、目标及研究意义 “3 2 位高性能嵌入式d s p 芯片设计”是8 6 3 1 c 专项重点课题。目前两款高性能的d s p , 浮点y h f t o d 3 和定点y h f t d 4 的研制工作已经取得了重大的突破。本课题的目标就是在 现有的工程研究成果上,研究如何提高v l l w 体系结构下的d s p 的存储子系统性能,尤其 是如何提高现有y h f t d 3 两级c a c h e 存储系统盼陛能,降低存取访问延迟。高性能的d s p , 良好的片内存储子系统至关重要。存储系统的优化设计研究,对于芯片性能的进一步提高 具有重大意义。 1 5 本文所作的研究工作 本文围绕降低y h f t d 3 两级c a c h e 存储系统的失效延迟,对存取结构和c a c h e 控制 器先进的设计技术进行了深入的研究,完成了简化二级c a c h e 存取通路的设计和一级c a c h e 失效流水机制的设计与分析两大内容,为芯片将来性能的进一步提高和扩充作了技术储备 和理论探讨。其中第一项已经在y h f t d 4 中实现并工作正常。第二项已完成了代码设计 及模拟验证和逻辑综合。 1 6 论文的组织结构 第一章绪论。主要论述了d s p 存储结构的趋势和发展d s p 片内c a c h e 技术的重要性。并 对课题的相关研究与意义作了精要概述。 第二章y h f l d 3 的存储结构分析及性能优化途径。从分析y h f td 3 的存储体系结构入手, 详细分析了提高这种两级c a c h e 存储结构性能的可行方法和实现途径。 第三章两级c a c h e 层次结构的存取通路优化设计。描述了l 2 部件与e m i f 部件间搭建直 接存取通路的实现方法及各子模块r t l 级代码详细设计。 第四章一级数据c a c h e 控制器的优化设计。主要论述失效流水机制在两级c a c h e 结构中 的应用和r t l 级代码实现方式。 第五章模拟验证。描述对所做设计的模拟验证工作。 第六章性能评测和实验结果。对所作优化设计带来的性能提升做了详尽的分析。 第七章结束语和进一步研究设想。对本课题的工作做了小结,并谈了进一步研究和提高 性能的几点设想。 最后对给予我无私帮助的所有老师、同学和朋友表示感谢,并且给出本文的参考文献。 第8 页 国防科学技术大学研究生院学位论文 第二章y h f t d 3 的存储结构分析及性能优化途径 2 y h f td 3 总体结构 y h f td 3 是我们课题组承担设计的一款高性能3 2 位浮点d s p 芯片,其设计目标是与 目前主流d s p 指令级兼容,采用超长指令字( v l l w ) 的体系结构,有8 个可独立并行运 算的功能单元,每个周期最多可以执行8 条指令。在编译器的支持下,这样的结构能充分 利用d s p 算法的特点,开发指令的并行执行性,从而获得良好的性能。 y h f td 3 的总体结构如图2 - 1 所示。从整体上可以分为c p u 核、片内外设、片内存 储器三大部分。c p u 核由取指单元、指令派发单元、译码单元、控制寄存器、寄存器文件、 功能部件、中断控制单元、仿真控制单元和c a c h e 控制器组成。功能部件分为相同的两组, 每组有4 个基本功能单元,分别为l s l 、b c l 、m u l 、a l l 和l s 2 、b e 2 、m u 2 、a l 2 。c p u 核 有两组寄存器,每组寄存器由1 6 个3 2 位寄存器组成。功能单元执行逻辑、位移、乘法、 加法和数据寻址等操作。每个数据通路的4 个功能单元有单一的数据总线连接到c p u 另一 侧的寄存器上,以便两侧的寄存器组可以交换数据。 图2 1 y h f td 3 芯片的总体结构 y h f td 3 每条指令字长为3 2 位,8 个指令组成一个指令包,总字长为8 * 3 2 = 2 5 6 位。 指令派发单元可以将每个2 5 6 位的指令包同时分配到8 个功能单元,并且同时执行。功能 单元中有2 个1 6 位乘法器( 3 2 位结果) f n6 个算术逻辑单元( 3 2 4 0 位) 。采用l o a d s t o r e 体 系结构,数据在多处理单元之间的传输依靠3 2 个3 2 位通用寄存器。y h f td 3 的指令集 可以进行字节寻址,获得8 1 6 3 2 位数据,因此存储器可以得到充分利用。 第9 页 国防科学技术大学研究生院学位论文 片上外设划分为外部存储器接口( e m i f ) 、e d m a 、主机口( h p i ) 、串口、定时器、 启动配置块、l 2 控制器、电源管理模块、p l l 产生器和中断选择子等部件。3 2 位e m i f 包括同步存储器接口s d r a m 、s b s r a m ,异步存储器接口s r a m 、

温馨提示

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

最新文档

评论

0/150

提交评论