(通信与信息系统专业论文)视频解码芯片系统结构研究.pdf_第1页
(通信与信息系统专业论文)视频解码芯片系统结构研究.pdf_第2页
(通信与信息系统专业论文)视频解码芯片系统结构研究.pdf_第3页
(通信与信息系统专业论文)视频解码芯片系统结构研究.pdf_第4页
(通信与信息系统专业论文)视频解码芯片系统结构研究.pdf_第5页
已阅读5页,还剩78页未读 继续免费阅读

(通信与信息系统专业论文)视频解码芯片系统结构研究.pdf.pdf 免费下载

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

文档简介

浙江大学4 i9 y - l 论文 摘要 随着v l s i 设计 技术的发展。 芯片的集成度越来越高,目 前集成电路的重点已经不仅仅 局限 在品体管级、门级、 功能模块的设计 卜 , 人们的眼光越来越多的放在系统集成方面,即 所 谓 的 系 统 集 成 芯 片( s o c , s y s te 呜o n c h ip ) 。 与 之 相 关 的 设 计 技 术 正 成 为 当 前 v l s i 设 计研究的主流发展方向。 随着s o c研究的深入,以 往未曾 涉及的一些新问 题逐渐显现出 来, 成为当前i c设计领 域 研究的 重点, 其中 包 括: i p ( i n t e l li g e n c e p ro p e rt y ) 核的 开发和使用、 软硬 件协同 设 计、 低功耗设计,可测性设计4 等诸多方面。 本文的_ 1 - 作将对多媒体信息处理的s o c系统的休系结构以及总线结构作一 些探索,力 实现了一款符合a s p m p e g - 4 视频标准的解码器i p 核。 在研究中,论文刘 s o c的设计方法, 特别是刘片匕 l a 线以 及设计语言进行了 研究和探 索。 在视频处理系统的 研究中,本文在特定算法研究的 基础卜,设计了一款基于数据流的 m p e g - 4 视频解码器, 该解码器具有控制简单、 硬件开销小等优点; 如果从视频处理的共性 出发,本文所设计的体系结构还可以使用在其他标准的视频处理中 概括起来,本文的工作贡献包括以卜 方面: 1 提出了一种优化的系统设计方案。 根据视频处理特点和应用系统特点, 合理的进行 了 任务分配和模块划分,降低了 解码算法的实现复杂性和v l s i 实现的成本。 2 _ 在分析了视频处理的持续性、 相关性、 周期性等特征的基础上, 提出了 优化的数据 存储结构和总线调度策略。 3 在s y s t e m c 和v e ri lo g 混合仿 真方 面做了 一些 有益的 探索 4 _ 设计了 一个适用于mp e g - 4 视频解码的i p 核。该1 1 , 核针对a s p m p e g - 4 解码 过程的 特点, 在系统结构设计、功能模块设计上进行了 优化设 计。 论文主要山两部分组成:第一部分是有关s u c设计的问 题。首先作者介绍了s o c设计 中 所面临的 一 般性问 题, 详细介绍了s y s t e m c的 结构、 仿 真机制以 及设计 方法学。 第二部分是有关 m p e g - 4视频解码器设计方面的问 题。 在简单介绍多媒体信息处理的 特点以 及设计相关处理的 难点的 基础上, 论文将工作重点放在a s p m p e g - 4 视频解码器 的 体系结构设计、 控制策略优化 匕 来。 在文中 对视频处理中 数据存储结构、 总线调度分别提 出了优化策略。 关键词:系统级芯片、超大规模集成电 路、 m p e g - 4 、视频解码 浙江大学f y i 卜 论文 ab s t r a c t wi t h t h e d e v e l o p m e n t o f v l s i d e s i g n , m o r e a n d m o re t r a n s i s t o r s a r e i n t e g r a t e d i n t o o n e c h i p a t t h e s a m e t i m e , t h e e m p h a s i s o f v l s i d e s i g n i s n o t li m i t e d t o t r a n s i s t o r l e v e l , g a t e l e v e l , a n d f u n c t i o n m o d u l e l e v e l a n y m o r e , b u t t r a n s f e r re d t o s y s t e m l e v e l , n a m e l y s y s t e m o n c h i p ( s o c ) . t h e s e d e s i g n t e c h n i q u e s a r e t h e m a i n a r e a s o f i n t e r e s t i n n o w a d a y s v l s i d e s i g n . wh e n t h e re s e a r c h o n s o c g o e s d e e p e r , s o m e n e w p r o b l e m s a p p e a r , a n d t h e s o l u t i o n s t h a t u r g e n t l y n e e d e d b e c o m e t h e h o t t e s t a r e a i n n o w a d a y s i c d e s i g n . t h e s e i n c l u d e : i p ( i n t e l li g e n c e p r o p e r ty ) d e v e l o p m e n t a n d u t i li z a t i o n , h a r d w a r e / s o f t w a r e c o - d e s i g n , l o w p o w e r d e s i g n a n d d e s i g n f o r t e s t a b i li t y , e t c . t h e w o r k o f t h i s d i s s e r t a ti o n c o n c e n t r a t e s o n d e s i g n a n i p c o r e f o r i s o 1 1 4 9 6 - 2 r e a l - t i m e d e c o d i n g . b a s e d o n t h i s w o r k , t w o g o a l s a r e e x p e c t e d : fi r s t , i n t h e f i l e d o f s o c d e s i g n , w e h a v e d i s c u s s e d t h e m e t h o d o l o g y o f d e s i g n d e s c r i p ti o n l a n g u a g e a n d b o c ( b u s o n c h i p ) . s e c o n d , i n t h e fi e l d v i d e o s i g n a l d e c o m p r e s s i o n , w e h a v e d o n e r e s e a r c h e s o n s p e c i f i c a l g o r i t h m , f o l l o w e d b y t h e d e s i g n o f a d e c o d e r f o r a s p m p e g - 4 . b e s i d e s , t h i s a r c h i t e c t u r e c a n b e u s e d f o r o t h e r v i d e o s i g n a l d e c o m p r e s s i o n b e c a u s e t h e c o m m o n n e s s o f v i d e o d e c o m p re s s i o n h a s b e e n t a k e n i n t o c o n s i d e r a t i o n i n the d e s i g n t h e d i s s e r t a ti o n h a s t w o p a r t s . t h e f a s t i s a b o u t s o c d e s i g n . t h e g e n e r a l p r o b l e m s m e t i n s o c d e s i g n a r e i n t r o d u c e d fi r s t , a n d t h e n t h e s y s t e m c l a n g u a g e i s d i s c u s s e d f r o m t h e a s p e c t s o f s t r u c t u r e , s i m u l a ti o n a n d d e s i g n fl o w . t h e s e c o n d p a r t o f t h e d i s s e r t a t i o n i s a b o u t t h e d e s i g n o f a s p mp e g - 4 v i d e o d e c o d e r . t h e i p s t r u c t u r e i s i n t r o d u c e d fi r s t , a n d o u r d e s i g n e m p h a s i s w i l l b e o n d a t a s t r u c t u re a n d b u s s c h e d u l e . k e y wo r d s : v l s i , s o c , mp e g - 4 , v i d e o d e c o d e r , b u s o n c h i p n 浙江大学硕士论文 第一章绪论 本章简要介绍了s o c提出的背景及其典型特点和优点,同时阐述了s o c设计技术中的 关键技术, 对该领域的研究现状和发展趋势作了简要的介绍; 接着概要介绍了 论文的 主要 1 作;最后给出了论文各章节的结构。 1 . 1 课题的背景和意义 集成电路 r .艺特征线宽以每代3 0 %的速度缩小,集成度遵循摩尔定律,何 i s 个月集成 度翻一湃。 所有与之相关的技术和工艺必须满足同样的速度才能适应和满足市场的需求, 目 前_ 艺水平己经能够达到千万门的集成密度, 可以将整个系统集成到一 个芯片上。 基本上在 未来十年中,这一定律将仍然有效。驱动i c发展的动力来自 通讯和网络产屏, 在当前的电 子产品中,集成电路所占成本也从5 -1 0 % 增加到3 0 - 5 0 %,而片上系统的出现, 使这一比 例继续提高。 由于设计复杂度的增加,为提高设计产率,满足 r t l级、物理设计和系统级的功能重 用的 要 求 基丁 块 ( lo c k - b a s e d d e s i g n , 简 称b b d ) 的 出 现, 制 造、 设 计 和 封 装的 分 工 使 设计队 伍开始变得更专业。 子系统需要不同 专业的小组来完成, 如嵌入式处理器、 数据压缩、 错误校验等。 不同的设计小组要面对不同的设计和测试技术, a s i c -1程师很难像以 前一样, 独自 完 成 设 计 以 及 相 应 的 测 试 平 台 。 而 子 系 统 之 间 接 口 的 时 序 错 误 也 随 着 系 统 的 复 杂 和 规 模 增加而增加。很多情况一 ,设计 队伍必须使用来自 其他设计小组甚至是其他公司的i p模块 以 加快开 发进度。目 前整 个设计 主流是b b d . b b d的 关键技术 包括 川 : 专 用的 高 层次的 系 统级的算法分析工具; 针对块的版图规划 i 具; 物理设计和综合的集成。 通常基于块的设计 采用总线结构,通过扫描测试或内建自 测试等验证芯片的止确性。 近儿年, 整个设计重心开始向高层移动, 研究方向 转向芯片级的系统集成。 系统集成包 括片 上系统 ( s y s t e m o n c h ip ) 和系统级 封装技术 ( s y s te m in a p a c k a g e , s i p ) 。 设计 方法学 研究是重点。 针对设计过程中面临的问 题提出了一些尝试的解决方法, 如物理综合、 基于平 台的设计等。在定义系统时, 通常需要各个层次的混合, 包括c p u , d s p和相关软件, 特 别是数模混合设计的出 现, 甚至要求设计语言 能够同时描述模拟和数字电 路以 及在其上运行 的软件。很少有系统只是一个层次抽象构成的。这需要设计定义语言具有宽谱的特性 s y s t e m c z 听为 面向 系 统 集成的 设 计 语 言 满足 了 这 种 要求。 随着系统的日 益庞大, 设计专业分工和设计重用成为主流。 基于i p 核的设计开始出现。 数百 万门 的s o c 芯 片, 不 可能 用 底层的 门 级 标 准单 元自 动 布 局 布 线 来实 现, 因 此基 于i p 核 的设计成为必然。 基于i p 核的设 计需要解决两个方面的问题: 一是i p 核本身的 设计, 另一 方面是如何集成不同来源的i p 成为一个s o c ,即s o c的互连问题。 c a d e n c e 提出 的 基于平台的 设计 n 思 想是由i p 核设计商 和a s i c 设计商针 对某一 专业 应 用领域, 提供一整套b ? 核的组合, 用户可以根据自己的需要裁减或者加入其他的i p 核, 形 成白己的 解决方案。 这样的i p核组合是经过流片验证的,并且在典型的平台 设计中得到过 验证。 因此可以节约设计时间和减少验证下 作。 利用设计平台, 开发人员可以迅速的开发出 满足市场需求的s o c . 浙江大学硕士论文 1 . 1 . 1 s o c定义 虽然s o c一词多年前就已 经出 现, 但到底什么是s o c则有各种不同的说话。 在经过了 多年的争论后,专家们就 s o c的 定义达成了一致意见。这个定义虽然不是i i 常严格, 但明 确的表明了s o c的 特征4 7 1 . 实现复杂系统功能的v l s i ; . 采用超深亚微米工艺技术; 令 使用一个以 上嵌入式c p u / 数字信号处理器 ( d s p ) ; .外部可以对芯片进行编程; 令 土要采用第三方i p 核进行设计。 从上述 s o c的特征来看,s o c中包含了微处理器1 微控制器、存储器以及其他 专 用功能 逻辑, 但并不是包含了微处理器、 存储器以 及其他专用功能逻辑的芯片就是s o c . s o c技术 被广泛认同的原因,并不在于s o c可以 集成多少个晶体管,而在于s o c可以川较短时间被 设计出来。这是 s o c的主要价值所在缩短了 产品的上市周期,州 此s o c更合理的定 义为: s o c是在一个芯片上由于广泛使用预定制模块i p核而得以 快速开发的 集成电 路。 从 设计上来说, s o c就是一个通过设计复用达到高生产率的硬件一软件协同 设计的 过程。从 方法学的角度看, s o c是一套极大规模集成电路的设计方法学, 包括i p 核的司复用设计/ 测 试方法和接口 规范、系统芯片总线式集成设计方法学、系统芯片验证和测试方法学。 1 . 1 . 2 s o c的特点 s o c的出现不单单是迎合了集成电路发展的趋势, 满足了产品上市时间的要求, 更土要 的是s o c不同于传统的a s i c ,也不同于p c b板上的系统,它是系统和芯片的集成体,是 在芯片上实现系统的功能, 因此我们有必要把s o c 与传统的电子系统和a s i c 分别作个比 较。 首先s o c与p c b板上系统的系统形成不同,前者是基于经过封装后的a s i c芯片,后者是 基于 经过验 证的 可重用t ( i a te l le c t u a l p ro p e rt y ) 核, 两者 实现的 载体不同: 其次s o c 与p c b 板上系统相比还有以下 儿个显著特点: s o c 系统成本低、体积小、重量轻; 缩短产品的上市时间; 功耗低、可 靠性高、抗干扰性高; 电磁干扰降低; 速度高、时序关系严密。 与a s i c相比 有以下儿个显著 特点: 可完成系统功能; 规模大、 结构复杂: s o c具有数百万门 乃至上亿个元器件的设计规模。 电 路结构包 括m p u . s r a m. d r a m. e p r o m、闪速存储器、a d c , d a c 、以及其他模拟和 射频电路。 s o c采用深亚微米工艺加工技术。深亚微米工艺下线延迟成为电路延迟的主要因 素, 很小的线间距和层间距使得线问或层间的信号间的藕合作用增强, 同时系统的 工作频率高、电 磁干扰强、 信号之间容易发生串扰, 所有这些问题都给设计验证带 来了困难 。 今.: 由 于 在一个芯片内 配置有微处理器、 存储器、 数字信号处理 器(d s p ) . 音响 处理电 路、 通信处理电路等,换句话说,就是现有的专用标准集成电 路( a s s p ) . 专用集成电 路( a s k ) , 浙江大学硕 j 论文 存储器、 数字电 路、 模拟电路、 高频电 路、 可编程逻辑器利 因此 s o c虽然在设计上很困难,但是具有很多优点,如: 便携、产品上市时间短、功耗低、 抗干扰性强、 可靠性高、 也是s o c得到越来越多设计者关注的原因。 ( p l d ) 等都可以 做在单 芯片内 功能多 成本低 性能指标高、体积小、 供需双方距离缩短,这 1 . 1 .3设计方法面临的挑战 推动设计方法发展的因素主要是来自 市场和技术两个力面。 市场上, 产品需求的多样性 和专 用性, 产品设计周期和生命期的 缩短, 要求产品 在市场盈利的时间窗日内 进入市场。 设 计流程开始跨专业和公司。市场出 现多种专业分- l , 如a s i c制造商,系统产品制造商, 专 用标准产品提供商, 设 计服务提供商等, 构成设计流中的 价值链. s o c设计逐步向白 动化和 专业化的阶段发展, 跨专业和学科的设计合作变得越来越重要和普遍。 如何有效的实现这些 分工合作,是s o c设计需要解决的问题;另外s o c设计面临巨人的设计风险,也要求在设 计方法学上确保设计的成功率。 技术上, 微电 子工艺 进步使集成电 路进入了 千万级的时 代, 系统大部分功能可集成在一块芯片中, 但在工艺水平和设计方法( 包括设计_ l 具 间存在巨 大 差距。 目 前的 设 计方法不能充分利 用设 计能力, 快 速构建 满足市 场需求的s o c 。 而只 有快 速 适应消费电子市场的变化,商业系统设计公司 才能在竞争中 胜出。 这使 s o c设计 方法的研 究具有重要的现实意义。 日 前在技术上, s o c设计面临的土要挑战是: 令 在系统建模和硬件设计之间的不连续性。通常系统是使用 c语占 或其他系统描述语占 定义的。 而系统的集成电路实现却使用硬件描述语言, 因此导致转换和重写系统的负担。 这样,设计过程中容易出错而且耗时。 令 设 计 验 证: 仿真 大 规 模 系 统, 仿 真 速 度 需 满 足 设 计 需 求。 h d l模 型 仿 真 效 率 低, 需 要 提高抽象层次。 c s o c系统中的组件具有多样性异质性, 包括各个专业的设计, 模拟和数字设计等等, 需 要提供异质的仿真环境以及对系统级设计空间的探索 冷 复杂性的管理: 千万门级的规模使得设计本身的管理成为问 题。 令 深亚微米集成电路中, 沿线延迟的 增加使时序收敛问 题显得更加突出, 需要消除前端逻 辑设计和后端物理设计的反复返工问 题 冷 微电子设计开始越过 “ 硅顶, ,系统设计开始包括软件硬件,需要提供软硬件的划分和 协同设计环境。 令传统的设计重用方法需要适应规模的增长。 系统设计需要具有竞争力, 从基于芯片的设 计方法,过渡到基于i p核的设计也是必然趋势。 令 虽然可以 使用标准接口, 但是更理想的办法是分离出通讯部分, 使用接口 综合技术。 因 此需要设计工具重点面向模块间的通讯和互连。 o 门 级和寄存器传输级 ( r t l ) 仿真速度太慢, 不适合系统设计。 需要提高设计的抽象层 次 s o c设计的趋势是向高层抽象移动, 更强调芯片级的规划和验证。 强调早期芯片级规划, 以及软硬件系统验证。软硬件协同设计方法是 s o c设计方法学研究的重要领域。主要目的 是开发适应设计需求的设计方法和相应的电子设 计自 动化软件。 一般流程如图i t 所示。 整 个设计流程是一个从功能模型向目 标结构映射的手工或自 动过程。 在设 计中, 通常一种技术 是不能满足设计要求的,因此要结合研发成本和开发周期等等因素,综合考虑各种技术。 浙江火学硕士论文 圈1 . 1软硬件协同设计方法 s o c设 计应该是白顶向r , 逐渐细化。 整个设计流程是一个从功能模型向日 标结构映射 的过程。 行为模型定义系统的输入输出响应, 而结构模型定义系统部件及其互连。 功能模型 和结构模型的区别是功能模型描述系统和外界通讯机制, 不含或较少含系统内 部单元的结构 信息和通讯方法的 信息。 细化过程如图1 .2 所示, 从功能模型向 结构模型转化中 需要设 计 者权衡可用的结构和计算部件, 实现部件间的通信。 设计过程包括选择实现功能模块的计算 单元, 调度各种操作。当系统复杂程度增加时, 一步设计太复杂时, 则细化过程分成多个抽 象层次 ( 例如系统级、r t l级、门级等) ,逐级向下细化。 功能定义 结构和功能单元选择 互连和通讯设计 设计验证 是 否 浦 足 定 早 /沂飞 设计结束 图1 . 2设计细化过程 系统级的设计定义 ( 包括需要的功能、 性能、功耗、 成本等约束)后, 通过对各种方案 的权衡, 将系统划分成硬件和软件以 及软硬件接口, 验证设计定义的正确性和是否满足设计 约束。 划分完后, 软件设计和硬件设计采用不同谙言细化设计, 如软件用c / c + + , 而硬件采 用硬件描 述语言v e r i l o g h d l . v h d l 等。 硬件模块被综 合软件映 射到 适当 的 硬件实现结构 浙江大学硕土 二 论文 上,而软件模块被划分成任务和任务间的 通讯和同 步, 通过编译器在适当的r t o s 上实现。 从功能到结构的转化本质上是不能白 动完成的, 它需要用户给出设计决定。 为了实现自 动化,有两种解决方法: 冷 将设计决定形式化为简单的模式, 然后将重要设计决定作为自 动化软件的输入, 软件具 体实现编码。白 动化软件可提供不同的 满足功能的结构, 供设计者探索设计空间。 比如 在设计模块间数据通讯时, 系统提供不同的协议和实现, 设计者根据具体需要, 选择要 采用的协议和数据总线。 令设定实现的目 标结构, 使这个目 标结构尽量的 通用。 通过软件, 将所有功能定义映射到 目 标结构。 逻辑综合就是采用这种方法。 1 . 1 .4多媒体信号处理器现状 多媒体信号 处理涉及到对不同表现形式的数字信息进行处理。 它覆盖一个很宽范围的应 用, 包括音频和语音处理、图像和视频处理、二 维和三维图像等。 多媒体信号处理的应用通 常具有很高的数据率, 同时需要实时处理能力。 从算法角度来看, 多 媒体信号处理的重要特 点可以 归纳如f 3 6 令 经常使用小的整数操作数; 令 高度规则化、高强度的 计算操作; . 大量的输入1 出或存储器访问、 数据再利用和数据的局域性; 令 在较小计算强度任务中,采用复杂的控制运算。 传统的微处理器和d s p不支持多媒体信号处理中的这些特点。因此,采用特殊结构来 获得 所 需 要的 高 信号 处 理能 力, 并 且 有 效 地 利 用 硬 件资 源 到目 前未 知, 己 推出 多 种 特 殊种 类的 媒体处理器, 用于高质量的实时处理多媒体应用。 他们可以 单独的 作为一个c p u或者 作为c p u的多媒体加速器。同时,通用目的的微处理器通过使用多媒体辅助部件提供的新 指令和资源,改进了其多媒休处理程序的性能。 两个通用的增强技术可使用于多 媒体应用的处理器。 一种是利用指令或数据级的了 附 了 处 理, 以便在计算能力上获得巨大的提高; 另外一种方法是引入特殊的指令和集成专用的硬件。 多重处理 多重处 理通常采用的 形式是单指 令多 数据 ( s i m d ) 或多指 令多 数据 ( m i m d ) 。 在一 个s i m i 机器中, 同 样的指令被多个处理器在不同的数据流中 执行。 每个处理器有自 己的数 据存储器, 但是, 仅有一个指令存储器和控制器处理器用于取指令和分配指令 在一个m i m d 机器中, 每一个处理器取白己的指令, 对自己的数据进行操作。 这些处理器要么利用集中的 共享存储结构, 要么每个处理都有自 己的 存储器, 同时使他们之间通过交义的网 络进行通信。 s i m i 处理器可以使数据并行处理, 但是没有mi md处理器灵活。 s i md适合于哪些数据处 理并行高而控制流和数据流相关性小的算法。 m i m d 处理器更灵活; 他们要么作为一个单 用户的机器, 在某一特殊应用中可以 获得高 性能, 要么作为多线程机器同时执行多个任务。 字节并行处理: 数据级并 行处理3 8 在图像、视频处理核图形着色计算中的数据通常小于1 6 比特。例如,这于普通图像处 理中的象素而言, 8 比 特的精度是足够的, 1 2比 特的数据可以用于医学影像。 但是, 在一个 通用的处理器中, 处理器单元的长 度, ( 也即字长) , 通常是3 2比特或6 4比 特。 在多媒体程 序中的 这些低精度数据无法尽可能的利用处理器的 计算能力。 到此为止, 子字井行处理被引 入。 在子字并行处理中, 一个标准单元或存储单元, 也即一个字, 被划分为更小的单元, 称 为子字。 子字之间是相互不重叠的, 是完全填满一个字的。 在子字并行处理中, 一个字长 的 功能单元被划分为更小子字长的单元。 通常, 在通用处理器中的多媒体辅助部件, 如i n t e l i x 8 6 浙江大学倾士论文 处理器中的多媒体辅助部件 ( m m x ) , 实现了子字并行处理的 概念, 加速了 所有低精度数据 的数据并行处理, 包括媒体处理。 通过修改处理器结构和增加特殊指令, 使得这些处理器不 仅加速了多媒体程序,而且与以 前的指令集完全兼容。 l i w ( 长指令) nl i w( 超长指令) : 指令级的 并行 处理 ( v ) l i w结 构 属于 多 发 射 极处 理的 家 族 13 7 1 。 多发 射极 处 理的目 的 是 允 许多 条 指 令 在一 个 时钟周期中 被发射,以 至于每条指令的周期数 ( c p i ) 可以 小到小于1 , ( v ) l r w结构通过在 个指令字中指定多个 l i w 或v l i w,以获得指令级的并行处理。这需要多个功能单元 以便可以同时执行一个指令字中包含的所有操作。 l i wnl i w处理器可以看作是具有集中的 存储器结构和多个功能 单元的小规模m m 处理器. v l i w结构并用一 个划分成固定长 度 域的更宽指令, 这些固定15 度域中 指令全部是简单的、 单一的和完全独 r . 的操作。 参考文献 3 9 1 中 所设计m p e g - 4 c o d e c 中设 计了 一个6 4 位宽的m b e n g in e 部件, 用于 运动久量、 1 / 4 象素插值、参考数据的计算等操作。 特殊指令集 对于经常重复出 现的、 有相对较高复杂性的操作, 例如具有饱和处理能力的乘法累加运 算, 传统上和广泛使用的方法是引入特殊的硬件和指令集。 特定的指令可以显著的减小指令 数,以 便程序更快执行。 协处理器 协处理器结构合并了 并行能力和适应能力。 一个典型的协处理器结构包括一个处理器核 ( 通常是精简指令集计算机( r s i c ) 类型) 和几个适用于特殊任务的模块。 一种可能是把一个 标准的r s i c核和一些特殊模块合并,标准的r i s c核用于执行不规则的、与数据相关的算 法, 而特殊模块用于规则的、 计算强度很大的程序部分。 另外一种方法是给一个另外的 计算 能力很强的通用目的 处理器核加入高度特定化的模块, 由于执行一个特殊的子任务 协处理 器对于 特殊的 算法 可以获 得更高的 效率, 因为 特定功能的 优化是可能, 控制电 路也可能 很简 单 参考文献 4 0 1 所设计的h . 2 6 4 解码器采用了a r m和特殊功能 模块的结构。 在该文中 根据各功能模块的所需要计算类型和复杂度, 将码流解析、变c 码解码、环路滤波等判断、 跳转较多的模块采用软件实现, 对反量化、 插值等计算复杂度高、 计算规则的模块采用硬件 实现。采用该实现方法的解码器性能比采用通用处理实现的解码器的性能提高 3 0 %左右 j 4 0 1 1 4 11 1 4 2 1 1 . 2 s o c 设计方法学 s o c设计技术是 一 种以 可重用( r e u s e ) 的i p 核为 基础,以 软硬件协同设 计为主要设 计方 法的芯片设计技术。 它所关注的焦点不再是某个新功能的设计实现,而是如何去评估、 验证 和集成多个已 经存在的软硬件模块, 各种可重用的模块和利用这些模块整合的方法就形成了 s o c系统工程师的开发平台,因此 s o c的设计技术也可以称为平台的设计技术 ( p l a t f o r m b a s e d d e s i g n , 简称p b d ) 。 该设 计技术包 涵两个内 容, 即平台的 建立和 平台 和应用。 1 .2 . 1 i p核设计 知识产权 (u p ) 是指在设计专用集成电 路芯片时, 可以重复利用的 模块。 i p 核概念可以 扩展为包括所有经过验证的可以在其他设计中重用的软件或硬件设计。 i p核设计是知识的 重用,不仅仅包括设计代码,还包括相关的文档和流程。也就是说,i p核不但是一种代码 或版图,而且包括重用方法。 浙江大学硕一 卜 论文 lp核 可 分为 软 核 ( s o ft i p ) , 固 核 ( f irm i p ) 和硬 核 ( h a r d i p ) 。 下 面 给出 相关的 定 义 13 3 113 4 113 5 1 . 软核是用可综合的r t l描述或者通过库元件的网 表形式表示的可复用模块。这 意味着软核的用户必须负责实际的实现和版图 .固核是指在结构和拓扑方面针对性能和面积通过版图规划, 甚至可能用某种7 艺 技术进行优化的可复用模块。它们以综合好的代码或通用库元件的网表形式存在。 . 硬核是指在性能、 功率和面积上经过优化, 并映射到特定工艺技术的可复用模块 它们以 完整的布局布线后的网表和诸如g d s ii格式的固定版图形式存在。 软核、固核及硬核间的权衡要依据可复用性、灵活性、可移植性、性能优化、 成木及面 市时间等进行综合考虑。图1 . 3 提供了 这种权衡的量化关系。 和华以叫划测神甘尸和映洲油 较高的可预言性和性能,短的上市时间, 较高的价格及i p 提供商的工作量 图1 . 3 耸核、周注及砰技间的权衡 i p 核的设计核心在于遵循i p 核的重用性,简而言之,i p 核设计也就是重用性的设计 因 此在i p 核设计时, 应遵循下列原则: . 从描述到封装, 每一步都要考虑该i p 核的 可继承性; . 设 计 时 要 提 供 或 者 保 留 必 要 的 设 计 信 息 如 设 计 测 试 文 档) , 以 便日 后 据 此 进 行 必要的修改; 令 在i p 核可用性的基础上重点是要解决可复用性。 一般的可复用i p 核具有以千基本要求: fl 实现可编程性,即可以 进行不同的配置应用到不同的系 统中: 2 技术无关性, 软i p 核的综合脚本可应用到不同的工艺库中; 硬n核具有标准 的接口电路。 3 . 具有标 准的 仿真接u , 可 识别不同 语言的 测 试矢量, 如v e r i lo g h d l , v h d l 浙江大学硕士论文 等; 4 ) . 实现可测试性,即 脱离系统i p 核可以自 身验证; 5 描述规范,即具有详尽的 外部功能和结构描述( 如: 配置、 参数、接口 等) , 便 于系统设计者选择和应用该i p 核。 目前e p 设计最基木最重要的问题时i p核接日标准化及i p核设计规范化的问题。如果 s o c设计需要花费大量的时间和人力去研究i p 核的使用、 解决i p核之间的接口问题, 那么 l p核重用性的优点也就荡然无存。为了有效控制设计过程和充分利用已 有的设计成果,设 计复用必须形成相关的 标准。 一些_ 业集团已 在积极的从事这方而的研究与实践, 并取得了 一些进展, 形成了 一些新的 行业组织。 其中以 虚拟插座接口 联盟v s i a ( v ir tu a l s o c k e t i n t e r f a c e a l li a n c e )代表性较强,加入的公司很多,大致来自四个不同的_ _ 业领域:电子设计自 动化 ( e d a) 、系统公司、 a s i c供应商和i p 或软件供应商。v s i a的目 的是制定关于i p的数据 格式、测试方法与接口的定义、开发、授权和测试的开放标准。 1 . 2 .2软硬件协同设计 软硬件协同设计技术主要是i p的应用, 软硬件协同设计技术与传统的1 c设计技术和板 子级系统设计技术有着本质的区别。 首先,由于s o c是一个集成了众多i c功能的系统级芯 片, 规模庞大, 结构复杂, 性能要求较高, 这就使得出错后的 检查变得非常困 难甚至不可能, 因 此该设计技术的重点是在顶层完成系统仿真验证, 保证在最低层模块设计 之前招个系统的 所有功能都已完成并经过验证; 其次, 该设计方法与传统设计方法的显著区别是由 原来的顺 序式设计变为并行式设计,所有的设计问题都要在设计之初考虑到并提出相应的解决方案; 最后, 在真正子模块设计之前, 所有的设计一 1 _ 作都是基于虚拟模块完成的, 这也是s o c 设计 的另一个显著特点。 s o c 的设计首先是根据系统要求( 或产沉 t 的功能需求) 提出系统芯片的整体设计描述, 包 括系统行为描述和系统结构描述,如图1 .4 所示,行为描述就是如何通过某些算法实现系统 功能, 一般是把系统分成儿个功能模块,由这儿个模块共同来满足系统功能要求: 结构描述 则是把己 有的i p 核或者需自 行设计的i p 核描述成虚拟模块 s y s t e m s 语言 便是建立虚拟模型 的一种语言) , 对基于虚拟模块的系统不断进行功能仿真验证,从而确定与系统行为描述相 匹配的系统结构描述, 该设计方法较传统的i c设计而言, 把后面的验证工作提前到设计之 初, 有效减少了比 较大的设计循环, 缩短设计周期。 在系统验证的 过程中需要解决两个问 题: 是系统行为描述和系统结构描述的规范问题, 对于一个复杂的系统设计, 不是单个设计者 能完成的, 必然要由 一组人来共同开发设计, 数据交互问 题随之而来, 因 此设 计的悔一步都 需要严格的 规范要求, 否则格个设计进程就会变得异常缓慢, 在s o c 设计过程中尤其明 显; _ _ 是i p核的集成问 题,目 前s o c 的设计不可避免的用到第三方的i p核,即使i p核具有规 范的描述和接口, 但是具体的系统设计又会对i p核提出 具体的设计要求,这就需要设计者 解决i p 核的 集成问 题。 系统 描述 之后s o c 设计 进入到系统功能 仿真验证阶 段, 即 : 验证系统 的结构描述和行为描述是否匹配, 此时设计者需要解决不同 模块描述的联合仿真问 题, 仿真 环境的建立、 测试矢量的确立等都是此阶段工作的核心问 题。 当 系统满足当 初的 功能要求后, 紧接着便是软硬件划分阶段, 确定系统中的虚拟模块用什么样的e p 核来实现, 根据不同的 系统要求进行优化划分, 目 的是 使系统整体结构和性能得到最优化。 当软硬件i p 核确定后, 整个设计进入到软硬件i p核的设计阶段, 在i p 核设计过程中, 要用系统测试矢量不断的 进 行并行仿真验证,硬件下p核的设计、系统测试矢量的完善、软件i p 核的设计三者是并行 进行的。 浙江大学倾 一 论文 系统要求 系统描述 系统行为描述系统结构描述 统功能验证 3 朽t 以 c 软 硬 件 划 分 成拟模型 的描迷 硬件描途 y e r i l a p l r 口 比 软外拐坡 u以+ 软件冲核的 设计成选择 现有的i p 核库 测试矢量 鼎 系 统 验 证 f p g 八 熙 件 的 后 端 设 计i 图1 . 4 软硬件协同设计流程 总之,s o c 软硬件协同设计技术与传统的i c设计技术有着本质的区别。在此设计方法 中, 软件和硬件设计组不再是两个独立的设计单元, 而是在设计之初便交织在一起, 相互提 供设计平台, 相互作用, 真正实现一者的并行性。 另外在软硬件划分之后的 硬件设计过程中, 也就是通常所说的l c设计. 但是该处的i c设计又与传统的i c设计不同, 因为该处的i c设 计仍是保持并行设计的思想, 即功能设计、 物理设计、 时序设计和各自 的验证都是从设计初 并行展开的, t o p es d o wn和b u t t o m es u p 设计方法相互交织, 而不是在实现某种设计之 后再考虑另一个设计。 总而言之, 不管是整体设计还是局部设计, 并行的思想始终贯穿于设 计之中,这也是软硬件协同设计技术的核心。 1 . 2 . 3设计语言 设计重用需要设计语言和设计工具 ( 尤其是行为综合下具)以 及相应的方法学的 配合。 一个标准的适合各层次抽象设计的语言是基于r p 设计的关键。 s o c设计对设计语言的要求是: 浙江大学硕 论文 个 能提供高层次的抽象, 以 控制系统复杂性。 减少仿真验证的压力, 同时又要提供支持硬 件建模的并行、交互、时 序等概念。 令能给i p使用者提供验证方法以 确保正确使用 i p o i p集成的一个假设是t p内部功能已 充分验证,但因产权保护等原因,系统中一些i p 对设计者而言是黑盒。 令对于复杂的i p间连接,语言应该提供接口结构,用来封装和描述通讯协议以及引线集 合。这样可给不同层次的模型提供一个固定的接日描述,这可以减少互连错误的出 现。 4 在目 前的设 计环 境中,多 种语 言混合的 情况 很多, 如s d l , v e r il o g 和v h d l . 验证用 的v e r a 以及定义系统用的c 。 这种混合使用验证变得复杂和易错。 如果能在系统定义、 设计和验证阶段使用统一的语言, 将提高设计效率。使用高层抽象描述i p可以 提高仿 真速度,但同时对语言也必须提供描述电路级特征的能力。 今 常规的 系统设计使用高层的描述语言如s d l , c等, 硬件设 计使用h d l ,而软 竹设计 使用c / c 十 十 等。 在转换中增加了错误发生的儿率。 不同语言间的协同仿真囚为接口 不同 而效率低卜 , 影响仿真速度。因此 s o c需要在各抽象层次 有一个统一的设计环境和设 计语言。 4 i p设计类似p c b上的设计概念, 重点在i p间的互连。 设计语言需要能够支持对通讯的 描述。 令在设计中,同一模块在不同阶段, 需要使用不同的模型。 设计语言应提供配置能力,设 计者可以选择不同的模型。 4 s o c设计的理想情况是使用统一的语言, 但系统设计是复杂的, 由于设计有多部门的分 工合作,以及对不同类型的 模块的集成, 需要在各个层次验证设计的止确性。 有时甚至 需要混合不同的仿 真机制, 如 数模 混合仿真, 各种 描述语言( 如s y s te m c v e r i l o g h d l 和 v h d l等)的混合仿真,也有各种风格的模块混合设计仿真的问 题,如行为级描述 和r t l 级描述等口 4 仿 真接17 提 供了 混 合 仿真的 机 制。 比 如v e ri lo g 语 言 就有 标 准的 可 编 程 语言 接f l ( p l i ) , 允许使m c / c + + 语言进行混合仿真。 今设计约束是一切综合和优化的基础, 语言应该是提供规范以便有效的引入设计约束。 令软硬件协同设计要求能够使用相同的语言。 硬件描述语言, 例如v h d l 和v e r i l o g h d l 。 只适合描 述中 小规 模的系 统, 设 计抽象从 门 级到r t l级, 这些语言本身具有描述时间、 延迟等硬件特性的能力, 提供了 一定程度的 数据封装和抽象。 硬 件设计是面向 对象的, 但是v h d l 和v e ri l o g h d l 设 计语 言缺乏 面向 对 象技术中的继承、多态等支持增量设计的 特性。 系统包括软件和硬件, 硬件设计和软件设计不同的地方是: 硬件本质上j 卜 行的, 可复位 的, 具有时间和延迟等概念。 系统设 计语言需要支持这些特性。 许多系统级的定义语言存在, 但是缺乏支持设计重用的 概念, 而c + 提供面向对象的能力, 支持设 计重用, 能满足硬件 设计中 不同 层次抽象的需求, 通过提供专用的方法库, c + 十 可支持不同设计领域的结构。 随 着设计抽象提高, c + 在行为级或者系统级描述上亦具有优势。 利用c + 十 作为系统级设计 捕获和设计 验证的语言是较好的选择, 因为c 十 + 可提供从设计捕获到设计验证到最后设计实 现的统一环境。 使用c + + 设计硬件, 还可避免系统定义从c 十 + 到硬件描述语言 的转换。 c + 十 柞 二 为统一的软硬件协同设计语言已是一种趋势。 1 .2 .4 s o c互连标准 系统芯片的出现,极大的满足了 人们的要求,给微电子产业带来许多激动人心的机会, 但是它

温馨提示

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

评论

0/150

提交评论