




已阅读5页,还剩63页未读, 继续免费阅读
(微电子学与固体电子学专业论文)基于systemc的mpeg4+tlm模型及其验证平台的研究.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
摘要 摘要 深豫微米半导体技术的进展与成熟使复杂的片上系统( s o c ) 设计变得越来 越普遍,同澄对传统的a s l c 设计方法帮漉程提出了揽战。s o c 成为v l s i 设计 研究的主流发展方向。 s y s t c m c 是系统级设计的统一软硬件建模语言,支持从概念到实现的无缝设 计滚程。使用s y s t e t n c 使缛设计基于统一的语言琢境,软硬件拚同验证在设计 甜期就开始,仿真速度更快。随着p m p ( p o r t a b l em e d i ap l a y e r ) 设备和数宁电视的 匕速发展,m p e g 4 编解码芯片的研究设计成为当前的研究热点。m p e g 4 编解 码芯片包含了复杂的算法,利用系统设计语言建立搴务级的参考模型已经非常有 必要。 本论文在大量调研的基础上完成了以下主要工作: ( 1 ) 本论文研究了系统级设计建模语言s y s t e m c 以及m p e a 4 编码原理。 ( 2 ) 设计实现了基于s y s 钯瑚c 的m p e g 4 编码模块的事物级模型( t l m t r a n s a c t i o nl e v e lm o d e l ) 。利用s y s t e m c 将m p e g 4 复杂算法加以实现,在 设计之初就可以对算法加以验证,通过事务级的建模,可以让系统的设计和 模块的划分更加适应硬件开发的流程。s y s t e m e 模型成为硬件模块的事务级 参考。 ( 3 ) 通过系统级建模,提高设计的抽象层次,可以大大降低建模复杂度。 将m p e g 4 编码系统划分为m e c u 、b p u 、v l c 等丰要模块,忽略了不必 要的细节,把模块之间的通信方式从管脚和信号方式抽象为函数调用。这个 m p e g 4 豹编码模块的亿m 模型黼时包含了a m b a 总线接翻,便于在真实 的运行环境中验证。 ( 4 ) 针对m p e g 4l 扮编码模块的t l m 模型,研究设计了针对m p e g 4 新的 系统验证平台,测试商量采用e 编写,并设计了m a s t e r m o d e i 模块、m e m o r v 模块、c 1 0 c k _ g e n e e a t o r 模块、r e s e t 模块等s y s t e m c 模块,完成对m p e g 4 的 编码模块的t l m 模型的功能验证。 m p e g 弭t l m 模型可以方便系统工程师评估s o c 的体系结构,使s o c 软件 工程繇在设计蔚期就得至验证软件的快速蘸型系统,并且为硬伟竣治工程师提供 快速的仿真环境。 关键词:系统设计s o c s y s t e m cm p e g 4 视频编码建模t l m a b s 竹a c t a b s t r a c t w i t hd e v e l o p m e n ta n dm a t u r eo fm i c r o e l e c t r o n i ct c c h o n o l o g y ,t h es y s t e mo n c h i p ( s o c ) d e s i g ni sm o r ea nm o r ep o p u l a r + a t t | l es 锄et i m e ,i th a sac h a l l e n g et o c o n v e n t i o n a la s i cd e s i g nm e t h o d o l o g y 锄dd e s i g nn o w t h e s ed e s i g nt e c h n i q u e sa r c t h em a i na r e a so fi n t e r e s ti nn o w a d a y sv l s id e s i g n s y s t c m ci sau i l i f o 咖h a r d w a r c ,s o f c w a r em o d e l i n g 】a n g u a g e ,w h i c hs p a n sf m m c o n c e p tt oi m p l e m e n t a t i o n s y s t e m ce n a b l ee a r l i e rh a r d w a r e s o 脚a r ec o - v e r m c a t i o n a n df a s t e rs i m u i a t i o np e r f o n n a n c e w i t hr a p i dd e v e l o p m e n to f p m p ( p o r t a b l em e d i a p l a y e r ) d e v i c ea 1 1 dd i g i tt v ,n er e s e a r c ho fm p e g 4 e n c o d ea n dd e c o d cm o d u l ei s n o wh o t s p o t t h em p e g 4e n c o d ea n dd e c o d em o d u l ei n c l u d ec o m p l e xa i g o r i t h m ,s o “i sv e r yn e c e s s a r yt ob u i l dat r a n s a c t i o ni e v e lr e f e r e n c em o d u l e 伯i sm e s i sh a v ec o m p l e t c df o l l o w i n gw o r k : t 1 1 i st h e s i sd w e l l so nt h ed e s i g na n di m p l e m e n t a t i o no fm p e g 4e n c o d e t r a n s c a t i o nl e v e lm o d u l e ( t l m ) b a s e do ns y s t e m c ( 1 ) t h i st h e s i sh a sar c s e a r c ho fs y s t c md e s i g nl 粕g u a g es y s t c m c 抽dm p e g 4 e n c o d ep r i n c i p l e ( 2 ) t h i st h e s i sc o m p l e t e dt h ef i m c t i o no f 小em p e g 4e n c o d e1 r a n s c a t i o nl e v e l m o d u l eb a s e do ns y s t e m c i tc 8 f 晡e do u tm em p e g 4c o m p l e xa l g o r i t h mb y u s i n gs y s t e m c w ec 卸v e r i f yt h ea l g o r i t h ma tt h eb e g i n n i n go f t h ed e s i g na n d m a k eh e l p f u l i ti sh e l p f u lf o rs y s t e md e s i g na n dp a r t i t i o nt oa d a p tt h e h a r d 诅r cd c v e l o p m e n tf i o wb yu s i n gt l m ( 3 ) s y s t e m l e v e l m o d e l i n gg r e a t l y r e d u c e s 廿1 ec o m p l e x i t y b yr a i s i n g t h e a b s t r a c t i o nl e v e l t h i st h e s i sd w i d et l em p e g 4e n c o d es y 毗mi n t os e v e r a l m a j o rm o d u l e ss u c ha sm e c u 、b p u 、v l c 1 h n s a c t i o nl e v e lm o d e l i n gh i d e s u n n e c e s s a r yd e t a i l s t h ec o m m u n i c a t i o na tt r a n s a c t i o nl e v e li sm e t h o dc a l l si n c o m p a r i s o nw i t hs i g n a l sa n dp i n s t h i sm p e g 4t l mi n c l u d et i l ea m b ab u s i n t c 矗e ,s oi tc a nb ev e r i f e di nr e a l l yr u n n i n ge n v i r o n m e n t ( 4 ) a i ma tm p e g 4e n c o d e1 y 锄s c a t i o nl e v e lm o d u l e ,t h i st 1 1 e s i sh a sar e s e a r c ho f s i m u l a t i o ne n v i r o n m e n ta n db u i l tan e wt r a n s a c t i o nl e v e lm o d e lv e r 讯c a t i o n p l a t f b r m u s i n gt h ev e r 讯c a t i o np l a t f o r m ,t h i st 1 1 e s i sc o m p l e t e dd l e 血n c t i o no f t h em p e g 4e n c o d et r a n s c a t i o nl e v e lm o d u l e j p e g 4t r a n s a c t i o nl e v e lm o d e l sa r eu s e dt oe v a l u a t et h es v s t e ma r c h i t e c t u r c s o cs o f h v a r ee n g i n e e r su s et r a n s a c t i o nl e v e lm o d e l sa saf h s tp r o t o 妙p et ov e r i 匆 s o r w a r ee a r l yi nd e s i g nn o w s o ch a r d w a r ee n g i n e e r sa l s oe m p l o y 衄m s a c t i o nl e v e l t l a b s c t m o d e i st ob u i l df a s ts i m u l a t i o ne r i v i r o n m e n t k e yw o r d s :s y s 蹦ld e s i g n s o c s y s 专c m c m p e g 4v i d c oe n e o d em o 1 i n g t l m i n 学位论文独创性声明 本人所呈交的学位论文是我在导师的指导下进行的研究工作及 取得的研究成果。据我所知,除文中已经注明引用的内容外,本论文 不包含其他个人已缀发表或撰写避酶研究成栗。对本文的研究做高蓬 要贡献的个人和集体,均已在文中作了明确说明并表示谢意。 作者签名:墨! 墨! 玺日期:2 竺:、j 。 学位论文授权使用声明 本人完全了解华东师范大学有关保留、使用学位论文的规定,学 校有权保磐学位论文并向国家主管部门或其播定机构送交论文的电 子版和纸质版。有权将学位论文用于非赢利目的的少量复制并允许论 文进入学校图书馆被查阅。有权将学位论文的内容编入有关数据库避 行检索。有权将学位论文的标题和摘要汇编出版。保密的学位论文在 解密后适用本规定。 学位论文作者签名:关i 也事导师签名: 糌尹 日期:碰! 16 ,p日期:丛i :! 第一章绪论 1 1 论文的背景和意义 第一章绪论 集成电路工艺特征线宽每代以3 0 的速度缩小,集成度遵循摩尔定律,每 1 8 个月集戏度翻一番。所有与之相关的技术和t 艺必须满足同样的速度才能适 应和满足市场的需求。鹾前工艺水平已经能够达弼千万的集成密度,可以将整个 系统集成剡一个芯片上。在未来十年中,这一定律将仍然有效。驱动i c 发展的 动力来自通讯和网络产鼎,在当前的电子产品中,集成电路所占成本也从5 一 l o 曾搬爨3 0 一3 5 ,蕊片上系统的出现,搜这一比倒继续增高。 近几年,整个设计重心开始向高屡移动,研究方向转向芯片级的系统集成。 系统集成包括片上系统( s y s t e mo nc h i p ) 和系统级封装技术( s y s t e mi nap a c k a g e 。 s i p l 。设计方法学是研究的重点。刽”对设计过程中蕊临的问题提出了些尝试的 解决办法,如物理综合、基于平台的设计等。在定义系统副,逶常需要各个缮次 抽象的混合,包括c p u 、d s p 和相关软件。特别是数模混合设计的出现,甚垒 要求设计诺言能够同时描述模拟和数字电路以及在其上运行的软件。很少有系统 只是一个蒺次抽象构成的。s y s t c m c 作为嚣向系统集成的设计语言满足了这种要 求。 s y s t e m c 已经开始被众多i c 设计公司使用: a r m 公司在2 0 0 3 年已经推出了a m b aa h bs y s t e m c 标准,a m b aa h b 建模标准是a m b aa h b 协议完整的时钟周期精确袭述。复杂系统的设计者将缝 使用接口标准来详细地研究a m b a 内部连接原理、系统模型和时l 如何共| 司执行。除支持 所有a m b a a h b 协议外,接口标准还包含a h b l i t e 协议,司广泛应用于商性能矩阵总线体 系结构。 华为技术有限公司高端以太网芯片项目组采用s y s t e m e 建立c y c l e a c c u r 8 t e 级参考模型,测试向量同时激励参考模型和r t l 代码,通过比较输卅模块中间结 果来定位故障,达到快速准确验证目标的一种验证方法。这种方法已经在多款大 规模数据通信芯片上成功使用,结果表明验证搀错和故障定位的时间太为缜簸, 验证自动化、标准化水平极大提高。 随着p m p ( p o r t a b i em e d i ap l a y e 州殳备和数字电视的飞速发展,许多图像通 信和i c 设计服务公司对m p e g 4 编解码芯片投入了大量的研发力量,以期旱e 开发出蕊片抢占市场份额。僵是许多公司都是从a s | c ( a p p | i c a t o n s p e c i 髓 i n t e g r a t e dc i r c u i t ) 开发转变而来,对复杂的m p e g 4 芯片的实现使用常规的a s l c 第章绪论 方法显得力不扶心,硬件工程,审难以囊接从公开豹一些瓣8 g 4 陡由软箨中提取 所需的算法,并转变为r t l 代码。对于传统的硬 牛工穰师,复杂的软件流程使 得硬件设计更为复杂,需要在系统一级进行仔细的模块设计和软硬件划分。 利用s y s t e m c 将复杂算法加以实现,在设计之初就可以对算法加以验j 正,通 过行为级的建模,可以让系统的设计和模块的划分更加适应硬件开发的流程。 s y s t e m c 横犁成为硬件穰块的事务级参考 ,通过对每个模块静纲纯就可以实现 盯l 编磷,辅蚋硬件工程师完残从c 到v c “l o g 粒跨越。 本沦文的主要意义是适应目前大规模集成电路系统设计的要求,针对当前掰 兴的s o c 设计语言s y s t e m c 的语言特性:s y s t e m c 是系统级设计的统一软硬件 建模语言,支持从概念到实现的无缝设计流稔。初步设计实现了基于s y s t e m c 的m p e g 4 编码模块的事物级模型( t l m ) 及其验证平台。为m p e g 4 的设计验证 提m 了一种的新的方法,有着积极的意义 1 2 传统设计方法的面临的挑战 目前存按术hs o c 设计面临的丰要挑战跫: ( 1 ) 在系统建模和硬件设诗之| 、承的不连续性。通常系统是使用c 语言或其他 磊统摧述语言定义的。面系统的集成电路实现却使用硬件描述语富,因此导致转 换和蘑写系统的负担。这样,设计过程巾容易出错而且耗时。 ( 2 ) 设计验证:仿真大规模系统,仿真速度需满足设计需求。h d l 模型仿真 效率低,需要提高抽象层次。 ( 3 ) s o e 系统中的组件其有多样性异赝性,包括各个专业的设计,模拟和数 字设计等等,需要提供异质豹仿真环境以及对系统级设计空闻的探索。 ( 4 ) 复杂性的管理:千万门级的规模使得设计本身的管理成为闻题。 ( 5 ) 深亚微米集成电路中,连线延迟的增加使时序收敛问题显得更加突出, 需要消除前端逻辑设计和后端物理设计的反复返工问题。 ( 6 ) 微电子设计开始越过“硅顶”,系统设计开始包括软件硬件,需要提供软 硬件的划分和协同设计环境。 ( 7 ) 传统的设计重j _ l 方法需要适赢规模的增长。系统设计需要具有竞争力, 从基于芯片约设计方法,过渡到基子王p 核的设计也是必然趋势。 ( 8 ) 虽然可以使用标准接口,但是更理想的办法是分离出通讯部分,使用接 口综合技术。因此需要设讨工具藿点面向模块间的通讯和互连。 ( 9 ) 门级和寄存器传输级( r t l ) 仿真速度太慢,不适合系统设计。需要提高设 计的抽象层次。 第一章绪论 1 3 本论文做的主要工作 本论文傲的土要工作是: ( 1 ) 准蚕工作:在研究并熟悉了软硬俸建模语言s y s t c m c 语言豹基础上,探讨了 s y s t e m c 的建模特性,特别是s y s t e m c 的系统级,事物级的建模特性。 ( 2 ) 研究了基本的视频编解码知识,以及m p e g 4 视频压缩标准。深入研究m p e g 4 的编羁算法。 ( 3 ) 熟悉a m b a 总线协议,了鳞e o w a r e 基于s y s t e m c 系统设计平食 c o n v e 唱e n s c ,并熟悉其总线i p 上各种a p i 。 ( 4 ) 研究并初步实现了基于s y s e m c 的m p e g 4 的编码模块的t l m 模型,并且 划分了系统豹软硬件。 。 ( 5 ) 针对m p e g 4 的编码模块的t l m 模型,研究设计了针对t l m 模型新的系统 验证平台,设计了m a s t e r m o d e l 模块、m e m o r y 模块、c l o c k g e n e r a t o r 模块、 r e s e t 模块等s y s t e m c 模块,完成对m p e g 4 的编码模块的札m 模型的功能 验 雁。 1 4 本论文的研究目标和研究内容 本课蹶的主要目的是适应目前大援模集成电路系统设计的臻求,针对当前新 兴的s o c 设计语言s y s t e m c 的语言特性:s y s t e m g 是系统级设计的统一软硬伟 建模语言,支持从概念到实现的无缝设计流程。初步设计实现了基于s y s t o m c 的m p e g 4 编码模块的事物级模型( t l m ) 。 本课题赝开曩的主要工馋有以下几个方匿:首先,对s y s 轮m c 的语法进行深 入的学习和研究,熬练掌握其语法特征,并作出相应的总结。并学习在设计流程 中能支持s v s t e m c 的各种e d a 工具。熟悉a m b a 总线协议,设计实现了綦于 s v s t e m c 的m p e g 4 编码模块的事物级模型。设计了针对t l m 模型新的系统驶 迁平台,完成对m 踅g 4 的编码模块豹t l m 模型的功毙验证。 1 5 论文的结构安排 全文共分五章,论文的章节内容安撵如下: 第一章是绪论,介绍研究的背景,论证本文的研究的意义,并提出 第一章绪论 本论文静研究思路。 第二章介绍基于s y s t e m c 的系统设计方法,了解s y s t e m c 作为系统建模诺言 豹特点。 第三章主要是介绍视频压缩的一些基本知识。 第四章主要是实现m p e g 4 视频编码器t l m 模型设计,并且对m p e g 4 视频 编码份了些筠单介绢。 第而章是基于s y s t e m c 的m p e g 4 系统验证平台的研究与实现,并褥出系统功 能验汪。在这章中,提出了耨的s ( c 验证方法。 最后一章是本论文的总结和展望 第二章基于s y 毗e m c 的系统设计方法 第二章基于s y s t e m c 的系统设计方法 2 1 系统芯片s o c 设计的相关技术 s o c 设计的趋势是向高层抽象移动,更强调芯片级的规划和验证。强调早期 芯片级规划,以及软硬件系统验证。软硬件协同设计方法是s o c 设计方法学研 究的重要领域。主要目的是开发适应设计需求的设计方法和相应的电子设计自动 化软件。在设计中,通常一种技术是不能满足设计要求的,因此要结合研发成本 和开发周期等等因素,综合考虑各种技术。 2 1 1 i p 核知识 知识产权( i p ) 是指在设计专用集成电路芯片时,可以重复利用的模块。i p 核 概念可以扩展为包括所有经过验证的可以在其他设计中重用的软件或硬件设训。 i p 核设计是知识的重用,不仅仅包括设计代码,还包括相关的文档和流程。也 就是说,i p 核不但是一种代码或版图,而且包括重用方法。 i p 核可分为软核( s o f 【i p ) 、固核( f i r n li p ) 和硬核( h a r di p ) 。下面给出相关的定 义2 ) : 软核是用可综合的r t l 描述或者通过库元件的网表形式表示的可复用模 块。这意味着软核的用户必须负责实际的实现和版图。 固核是指在结构和拓扑方面针对性能和面积通过版图规划,甚至可能用某 种工艺技术进行优化的可复用模块。它们以综合好的代码或通用库元件的网表形 式存在。 硬核是指在性能、功率和面积上经过优化,并映射到特定工艺技术的可复 用模块。它们以完整的布局布线后的网表和诸如g d s i i 格式的固定版图形式存 在。 使用软核、固核及硬核问的权衡要依据可复用性、灵活性、可移植性、性能 优化、成本及面市时间等进行综合考虑。图1 1 提供了这种权衡的量化关系。 i p 核的设计核心在于遵循i p 核的重用性,简而言之,i p 核设计也就是重用 性的设计,因此在i p 核设计时,应遵循下列原则: ( a ) 从描述到封装,每一步都要考虑该i p 核的可继承忭。 ( b ) 设计时要提供或者保留必要的设计信息( 如设计、测试文档) ,以便日后 据此进行必要的修改。 ( c ) 在i p 核可用性的基础上重点是要解决可复用性。 第二章基于s y s 把m c 的系统设训方法 拳 磐 暖 堪 簦 避 渔 爵 簦 霉 涟 窟 豳1 1 一般的可复用l p 核矮有以下基本要求: ( 1 ) 实现可编程性,即可以进行不同的配置应用到不同的系统中i ( 2 ) 技术无关性,软i p 核的综合脚本可应用到不同的工艺库中;硬i p 核具 有标糕豹接口电臻。 ( 3 ) 具有标准的仿真接口,可识别不同语言的测试矢量,如v e r l o gh d l 、 v h d i 等。 ( 4 ) 实现训测试性,即脱离系统i p 核可以自身验诞。 ( 5 ) 描述规范,郎具有详尽的努部功能帮结构撬述( 盍羹:配置、参数、接蜀等) , 便于系统设计者选撵和应用该i p 核。 目前i p 设计最基本最重要的问题时i p 核接口标准化及i p 核设计规范化的问 题。如果s o c 设计需要筏费大量豹射润和人力去研究 p 核懿使罔、解决l p 核之间 的接口润题,那么i p 核熏爝性的优点也就荡然无存。为了有效控制设计过程和充 分利用已有的设计成果,设计复用必须形成相关的标准。一些公司已在积极的从 事这方箍的研究与实践,并取得了一些进展,形成了一些新的行业组织。其中以 虚拟插座接口联盟v s l a ( v i 如一s o c 酶t | n t e f f a e ea l l i a n e e ) 代表性较强,捅入的公 司很多,大致来自四个不同的工业领域:e d a 公司、系统集成公饲、a s i c 设计 公司和l p 设计公司。v s i a 的目的是制定关于i p 的数据格式、测试方法与接口的 定义、开发、授权和测试的开放标准杯j 。 第二章基于s y 咖m c 的系统设计方法 2 1 2 软硬件协同设计( 1 0 ) 在s o c 设计中,一个给定的系统定义必须分割成软件和硬件两部分。软硬件 如鹰分割是一个很重要豹课题,会极大的影响整个系统豹性能。将系统豹不同缎 件分别用软件和硬件实现的目的是为了使系统的住熊优化。通常,分割是基于开 销函数的评估( e v a l u a t i o no f ac o s tf i m c t i o n ) ,花费函数来自于对系统设计所施加的 各种限制。例如,执行时闻,数据存储和激活频率( 奇e q u e n c yo fa c t i v a t i o n ) 等等 要求都可以被加到花费函数中。这一邂程尚未标准纯,一个典型的分板过程中有 多次的分割,每一次分割之后,要进行相应的评估,直到系统的定义要求在最小 的花费下得到满足,这是一个迭代递增的设计过程。这一过程目前还很 难完全蠡动他的进行,遴鬻都需要人的介入。这个阍题是当前的磷究热点,在局 部领域已经取得了一定的成功。 另外个密切相关的问题就是如何测试这砦异构的组件,虽然我们可以单独 分别测试硬件和软件,但是同时对它们进行联合测试也是非常必要的,因为存在 如下相关的瓣题: 软硬件单元问的接口要被测试。 如粜硬件部分首先被测试和综会,定义的改变和b u g 的修正则只能在软件 中进行,就会如上历说,影响系统的性能。 所以软硬件联合设计需要软硬转联合仿真环境。 与传统的系统设计相比,使用硬件软件协同设计技术有很大的优势: 可以方便地进行模块复用,特别是验证环境地复用,这点在s o c 设计中 相当地重要。减少验证鲍时闻,提赢设计效率和可靠性。 t 在硬件平台实现之前就可以对熬个系统功能进行功能验诚和性能评估。 硬件软件协同设计的主要目标是尽可能将底层所做的决策和分析放到高层 来做。 硬件软 牛协同设计技术主要包括: 规格说明:对整个异质系统进行独立于实现的抽象的功能性规格说明 分析技术:基于高层的功能性规格说明对由系统的最终实现确定的性能指 标进行早期的分析和估计,以便于系统设计者在不同的实现方案中进行比较 和取会。 综合工具:理想的综合工具是仝自动化的,它从系统抽象的高层设计出发, 不断的细化相关的设计细节,取余的标准是满足各种设计约束条件,通过这 种分层次地不新她细佬方式最终实瑷蠡标系统,遂常这耪综合过程是基予菜 种优化算法,以迭代地发誓进行的。 验证技术:尽可能早地对系统地功能和性能指标进行验证,以尽早的发觇 第二章基手s y s t c m c 的系统设计方法 设计中的错误。这种验证需要在设计的各个层次上进行的。验证方式有形式 验证? 模拟验证和仿真验证。 形式验证是通过形式化豹方法从理论上来验证系统的芷确性,这秘方式 褥剩昀结论是完鍪豹,这秘验镢通常是在系统层上进行的。 模拟验证是通过输入一些测试向慧来验诚系统的正确性,在大多数情况 下,只能进行部分豹模拟验证,这部分我们通常用测试覆盖率这个参数柬体 现验诞情况的覆箍面。模拟验证可以在设计的各个层次上避行。 仿寞验证是为了加速系统验证的速度,仿真系统就是游基标系统中的 a s l c 部分或者全部映射到可编程器件如f p g a 上来实现,这步也叫硅原型 验涯,提高了最接近滔标系统豹奏实原型。 硬件,软件协同设计技术的关键是将系统的功能尽可能嫩硬件体系结束和 硬件软件戈0 分独立开来,但实际上明确地将规格描述和实现划分开来通常是 不可能的。 2 1 3 建模工具 硬傍描述语言是墨诲一秘重要的嚣d a 建模工具。它们是爱寒对硬件的行为进 行建模的程序设计语言。h d l 拥有对典型的硬件行为进行建模的语义,例如并 发,延时。时钟,端口和信号。这种语言适合于仅仅拥有硬件的芯片设计,辩予 s o c 设计它是不适合的。因为: 典型的系统是在一个高于h i 强所熊达虱的抽象层次上避行描述的,c 或 c + 十通常被用来接述比较抽象的系统。露且因为仿真遮度的需簧,功能验证总是 选择在尽可能高的抽象层次上进行,而c c + + 模型的验证速度远远大于 玎) l 。 当翦的 王d l 仿真环境不满足软硬件协同设计和协同仿真的霈婺。 当前市场上有大豢的基于c ,c + 十的系统i p ,如果能够复阁这些i p 将极大 的缩短芯片的设计时闻。 由于h d l 用于s o c 设计的限制,导致了系统建模语言( s y s t o ml e v e lm o d e l i n g 乙a n g u 鑫g e s ( s l m l s ) ) 瓣出蠊。恻妻匪存: s p e c c s p e c c 是,u 一种基于e 的系统定义语言。它是在a n s ic 的基础上,扩展了相 应的支持硬件建模的结构。s p e c c 可以在很高的抽象层次上对系统进行描述,然 后在s p e c c 参考编译器( s p e c cr e f e r e n c ec o m p i l i 甜) 中进行仿真。s p e c c 包括一个 公开源鹨豹颈处理嚣,可皴将s p e e c 的一些结构转化到媚应的a n s ic 代码,然 后再被编译和仿真。所以我们可以得到系统的可执行的定义。 第二章基于曲翦c m e 的系统设计方法 s u p e r 乙o g s u p e r l o g 是一种基于v e r i l o g 和c 的系统级描述语言,它是一个1 v e r i l o g 的 超集,弗有一些类式e 语言的结构。由s u p e r l o g 掰编写豹代码不熊编译戎可执 行的格式,泛需要特定的仿真工具的支持。 s y s t c m c 也是这领域进展的结果,下一章将详述它的特点。 2 1 4 设计综合 通常功能级的验涯模型的抽象层次很高,不赢接暗示任何硬件组件。这样做 是蠢为对于个大系统缀鼹一开始藏在芯片级( c i r c u i tl e v e l ) 对其避行摇述,而变 容易在算法级描述:两且从仿真速度上考虑,魂需要高抽象模型。在功能验证 之后,我们就需要产生这蕊模型所代表的实际芯片。这时,我们需要相应的综合 工具。当前市场上存在各种不同的综合工具,综合工舆使用预定义的库组件,将 算法代码映射到这些的组件实侧中。当前的自动化综合工具还有很多不足之出, 例如功麓不强,限制性条俘太多等等。 2 - 2 s y s f e m c 简介 2 2 1s y s t e m c 简介 s y s t e m c 是由o p c ns y s 专e m ci n i t a t i v e ( o s c i ) 摭出的统一软磺件建模平食,是 扩充翳的c + + 。s y s t e m c 题目前系统级设计的行业事实标准。受到众多世界顶尖 的e d a 厂商、i p 提供商、半导体厂商和设计公司的支持。其成员包括a r ml t d , m o t o r o l a ,n e c ,s o n y s lc a d e n c e ,c o w a r e ,f u j i t s u ,m e n t o rg m p h i c s ,s y n o p s y s 等 等。其鬟的楚为系统级设计提供一种单一的语言,即提供一个公共平台来受好的 进行软硬馋协霹 殳诗和验涟。1 9 9 9 年9 胃,世界上蔫名的e d a 公司、嵌入式软 件生产商、i p 供应商和半导体公司宣布成立了“开发式s y s t e m c 联盟”o p e n s y s t c m cl n i t i 蘸i v e ) ( ”,联盟组织将s y 咖m c 豹源代码在鼹上公布,供露户免费下 载。使工程师可以用这些源代码和编译器开发自己的模型和产鼎。s y s t e m c 由于 具有良好的软硬件协同设计能力,在提出不到3 年的时间内,得到越来越多的 e d a 公司和半导体厂商的支持,显示出了强大的生命力。 h d 乙语言拥有可以对典型的硬件特憔鲡并笈,延迟,时镑,端翻和启号等遗 行建摸的语法,当用 | 跳对模块进行撼述以后,就可以进行仿真验证功糍,然 后再综合成硬件。这种方式对开发只有硬件的苍片适用。但对s o i 。设计是不适 9 第二章慕于s y 咖m c 盼系统设计方法 甩的。这是由予; 系统结构工程师需要对s o c 进彳亍系统建模,设计系统的总体架构,设计软 件和硬件的接妇。瓣 d l 抽象能力有限,无能为力。c 或者c + + 怒 最常用的描述抽象系统的语言。为了获得较高的仿真速度,功能骏涯常 常在尽可能抽象的设计层次进行。验诞c ,c + + 描述的模块比用 玎) l 攒述酶模块会快缀多。 鏊兹豹 d l 仿真琢境不支持软硬伟协疑设计茅眭协疑仿真。l 不糍攒遮 软件,丽s o c 怒包括软件知硬件的混合系统,至少包括一个微处理器或 褒d s p 。 目前市场上有大量经过严格验证测试过的c ,c + 十算法模型,如莱可以在设 计芯片时赢接复嗣这些算法,瓶不是从头开始开发,将大大降低开发糖 间。 另方面,c c + + 对软件进行编程的语言,不熊对硬件数据类型、信号、时 问( i m i n g ) 、并发( c o n c u r r e n c y ) 和反应( 溉i c t i v e ) 等硬件特往进行建模,而这些是对 包含硬件的s o c 进行精确建模所必须的。 s y s e m e 语言的发袋大臻经历了两个大的阶段:s y s t e m c l + o 和s y s t e m e 2 + o l 。 s y s t c m c l o 可以曩l 来进行硬件接述。s y s 疑燃c 2 跳的推出使s y 咖m c 成为真正豹 系统级设计语言,能够用来对s o c 体系缡构避行更加自然和枣效的撼述。这样 就使s v s t e m c 语言涵盖了从系统概念到实现的针对系统软、硬件建模的能力。 黧2 显示了s y s t e m c 的开发环境,可以焉爨s y s t 。m c 其实楚c 十+ 的一个子 类。 第二章基于s y 咖m c 的系统设计方法 图2 1c + + 开发环境中的s y s t e m c 2 2 2s y s 艳m c 的结构 s y s t e m c 提供以下设计能力( 5 ) : 模块接述模块可采用s cm o d u l e 模块类。模块可以其有层次结构 因为模块中可以有多个进程和其他模块的实例。 进程进程用于描述功能。进程位于模块内。有两种进程用于建立不同 进程抽象的模型:s cm e t h o d 和s ct h r e a d 。进程定义的是并发行为。此 钤,进程不其有层次结构。 端口模块利用端口与其他模块进行通信。有三种信号端口:输入( i n p u l ) 、 输出( o u t p u t ) 和输入输出双向( i n o u t ) 端q 。还能够以用户定义接口来描述新的端口 类型。 信号信号可以传递值,它羽来连接多个进程帮模块实饲。有掰释信号: 解析式( r e s o l v e d ) 和非解析式( u n r e s o l v e d ) 信号。解析式信号可具有多个驱动源( 一 个进程中对个信号的所有赋值语句仅构成一个驱幼源) 。同时,与在传统的h d l 仿真器中样,信号在经过延时之恁再更新。 丰富的数据类型集支持多个设计领域和抽象层次。对于快速仿真,有固 定精度类型;对于大的数据,有任意精度类型;对于d s p ( 数字信号处理) 应用, 第二章 基于s y s t e m c 的系统设计方法 有定点数据类型。既支持2 值逻辑,也支持4 值逻辑。还可以采用c + + 语言中 的任何数据类型。 时钟内建了时钟记号。 噬于事件的仿真提供了基于事件的高性能仿真内核,允许实现高速仿真。 多种抽象层次支持在多种抽象层次上建立来定时模型,从高层次的功能 模型到细化的精确至时钟剧期的r t l 模型。还支持将高层次模型向低层次不断 细化,直至得到r t l 模型。 通信协议提供了多层次通信语义,允许在不同抽象层次上描述协议和接 口。 调试支持使用编译标志就可以启动检查运行时错误。支持使用标准c + + 测试工具进行调试。 波形记录支持以三种不同的波形格式保存结果,v c d ( v a l u ec h a n g e d u m p ,值变转储格式,参见i e e e l 3 6 4 标推) 、w i f ( w a v e f o ml m e r c h a n g e f o m a t , 波形交换格式) 和i s 册( i n t e r g r a t es i g i l a ld a t ab a s e ,集成信号数据库) 。 可以对并发和进程交互进行建模。 n j 以链接到采用c c + + 编写的i p 。 支持r 1 1 l 综合流量。 支持生成嵌入式处理器代码。 是o s c i 标准。 易于建模基于标淮的编程语言c + + 。 支持采用单一语言来描述软件和硬件。 通信通过信道、接口和事件实现模块和进程间的通信。 系统级设计便于实现系统级设计任务,如细化通信、将设计规约映射成 软件和硬件。对于系统级设计,允许设计模型采用各种各样的计算、设计抽象层 次和设计方法。s y s t e m c 提供了通用建模基础,因而可以干净地( c l e a n l y ) 增加或 采用额外的功能2 ”。 计算模型支持以时间模型、进程激发方式和进程间通信方法为基础建立 各种计算模型,比如k a h n 进程网络、静态多速率数据流、动态多速率数据流和 通信序列处理。 开发和验证复杂系统的规约2 ”。 支持将系统规约细化成软硬件搭配的实现方式。 可以重用与c + + 相关的大量知识、基础结构和代码。 第二章基于s y 啦m c 的系统设计方法 s cm o d u l e 图2 2 模块、端口、进程和信号归) 在一般的软件设计语言中,程序是顺序执行的。但是硬件本质上是并行执行 的,大量的并行行为不断发生,用顺序执行的语言对这些并行行为进行建模是比 较困难的。通常解决这一问题的方法妊使用硬件描述语言。s y s t e m c 使用进程对 并行进行建模。某些进程执行起来像函数一样,被调用者调用,执行完成后返回。 另一些进程在仿真开始时只被调用一次,在仿真过程的其他时刻,进程要么处丁 活动状态执行,或者处于挂起状态,等待某个条件变为真之后再继续执行。该条 件可能是一个时钟的上升沿、一个信号值的表达式或者是这二者的组合。进程不 是层次化的实体( 2 ) ,所以一个进程不能直接调用其他进程,但是可以调用其他不 是进程类型的方法和函数。 图2 2 中显示了s y s t e m c 模块、端口、进程和信号的关系。 进程有一个敏感列表,也就是可以触发进程使其开始运行的系列的信号。 任何时候当敏感列表里面的任意一个信号的值发生改变时,进程就会被触发。为 了触发一个进程,它敏感列表里面的信号必须产生一个事件( e v e n t ) 。s y s t c m c 的调度内核就是通过这个事件来激活进程的。信号事件是指信号值的改变,比如 说信号前一个时刻的值为l ,当前时刻值更新为0 ,就可以说信号上发= ! ;# = 了。个 事件。一个进程可以通过对另一个进程的敏感列表里的信号赋新值的这种方式, 使得它被触发执行。 根据s y s t e m c 仿真内核调用和运行方式的不同,p r o c e s s 分为三类。 1 ) m e t i l o dp m c e s s ( s cm e t h o d ) :只要敏感列表其中某个信号的值发生了 第二章基于s y s t e m e 的系统设计方法 改交,该口c e s s 将被鸯 i l 圣亍。一墨搿始执行,它将不能被挂起直到它运弦 完成后把程序控制权返回给仿真内核。 2 1 伯r c 醐p r o c e s s 幅cn 璁e a d ) :和s cm e 谢一样,它也有一个控制 触发的敏感捌表。不同的是在执行过程中,如栗加入相关的语句( 如 w a i t ( ) ) ,它可以拽起,然后萱新触发。当迸穰被挂起后,一畿等到当它敏 感歹4 表中信号的傻发生改变,它从被挂趣的地方恢复执霉,壹至l 暹到下一 个控起避程的语句。 3 ) c i o c b d 孙托a dp c e s s ( s ce 疆r e a d ) :这类p c e s s 是s c 瑚t e a d 的 一种特例,它是为了使设计者获得更好的综合结果。它的敏感列表中只有 个信号( 通常是时钟信号) ,当信号特定的浍到达时( 上升沿或者下降沿) , 它将被触发。 为了进行实际的应用,s y s t e m c 必须支持综合。最初褥到的可执行的功能说 明( 3 0 ) 常常是不能用来综合的。必须通过细化f i n e h l e n t ) 加入足够的细节和约束, 使可执行的功能说明成为个可实现的模型。对这个可练合的模型的综合可以褥 到较好的结果。 细化共包括三个步骤。第一步为数据结构细化。这一步把c c + + 自带的 数据类型转变为一定精度的数据炎塑。第= 步楚控制细化。控制纲化中最重要豹 任务是明确的确定每个模块豹输入输出特性。也就楚舒么时候对输
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高校待岗管理办法
- 城市道路立交桥建设项目涉路工程安全评价
- 专升本学业管理办法
- 滨江区健康管理办法
- 海啸池安全管理办法
- 混凝土商会管理办法
- 柳州螺蛳粉管理办法
- qq群备注管理办法
- 二青会财务管理办法
- 风控策略管理办法
- 企业战略咨询服务简单合同
- 矿区第三方管理制度内容
- 中国心力衰竭诊断和治疗指南
- 全国闽教版初中信息技术八年级下册第一单元第2课《体验开源硬件与编程工具应用》说课稿
- GB/T 19701.2-2024外科植入物超高分子量聚乙烯第2部分:模塑料
- 道路及市政管网改造工程现场组织管理机构及施工准备方案
- 廉洁自律专题培训
- 高压氧治疗糖尿病
- 装配式围挡施工方案
- 四川达州历年中考语文现代文阅读真题42篇(含答案)(2003-2023)
- 助产士进修汇报课件
评论
0/150
提交评论