(微电子学与固体电子学专业论文)数字电路ip软核行为级设计方法研究.pdf_第1页
(微电子学与固体电子学专业论文)数字电路ip软核行为级设计方法研究.pdf_第2页
(微电子学与固体电子学专业论文)数字电路ip软核行为级设计方法研究.pdf_第3页
(微电子学与固体电子学专业论文)数字电路ip软核行为级设计方法研究.pdf_第4页
(微电子学与固体电子学专业论文)数字电路ip软核行为级设计方法研究.pdf_第5页
已阅读5页,还剩73页未读 继续免费阅读

(微电子学与固体电子学专业论文)数字电路ip软核行为级设计方法研究.pdf.pdf 免费下载

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

文档简介

中文摘要 中文摘要 摘要:随着科技的进步,电子技术的发展,i c 设计的复杂程度也在不断的增加, 对于数字集成电路设计而言,基于p 核复用的s o c 设计正逐渐成为集成电路设计的 主流技术。由于口软核具有灵活性、可移植性等特点,i p 软核的设计也成为了这种 复用技术的基础。i p 软核复用技术的出现不仅提高了复杂i c 设计的可靠性,更缩短 了设计周期。可以说高质量的口软核为i c 设计大大提供了方便,反之,不过关的i p 软核也会使设计走向失败。行为级设计是i p 软核设计过程的第一步,主要是完成对 i p 软核功能的描述过程,只有正确的行为级描述才能综合出合理的r t l 级电路,也 可以说行为级设计已经成为i p 软核设计的一项重要任务。 本文研究数字电路i p 软核行为级的设计方法,论述了i p 软核结构描述特征, 分析了i p 软核结构的描述方法和验证方法,提出了基于不同思想的p 软核验证技 术,重点说明了数字电路i p 软核行为级设计的约束条件、约束思想和测试向量的编 写方法,总结了i p 软核行为级建模的结构、编程规则和应用技巧。本文最后通过对 串行通信接d i p 软核、3 2 b i t 寄存器文件i p 软核、多功能函数发生器口软核的分别设 计,概括了行为级设计方法在i p 软核设计中的应用,并提出了不同软核的设计特点 和测试向量的考虑因素,并编写了测试程序,对软核进行了验证工作。 论文最后,对文章进行了总结,指出了文章的不足,以及进一步的改进和后 续工作。 关键词:数字i p ;i p 软核;行为级设计;约束分析;v e r i l o gh d l 分类号:t n 4 0 2 a b s t r a c t a b s t r a c t a b s t i 己a c 。i : w i t ht h ed e v e l o p m e n to fs c i e n c ea n de l e c t r o n i ct e c h n o l o g y , t h ec o m p l e x i t yo fi c d e s i g ni s a l s oi n c r e a s i n g a sf o rd i g i t a li n t e g r a t e dc i r c u i td e s i g n ,t h es y s t e mo na c h i p ( s o c ) d e s i g nt e c h n o l o g yb a s e d o ni n t e l l e c t u a lp r o p e r t y ( i p ) c o r er e - u s a b i l i t yi s b e c o m i n gt h el e a d i n gt e c h n o l o g yo fi n t e g r a t e dc i r c u i td e s i g n t h ei ps o f tc o r ed e s i g n , w i t hi t sc h a r a c t e ro ff l e x i b i l i t ya n dp o r t a b i l i t y , i st h eb a s i so ft h i sr e - u s a b i l i t yt e c h n o l o g y i t sa p p e a r a n c eh a sb r o u g h tm a n ya d v a n t a g e st ot h ec o m p l i c a t e di cd e s i g na n ds h o r t e n e d t h ed e s i g np e r i o d i naw o r d ,h i g hq u a l i t yi ps o f tc o r em a k e si tc o n v e n i e n tf o ri cd e s i g n w h i l el o wq u a l i t yi ps o f tc o r em a k e st h ed e s i g naf a i l u r e b e h a v i o r a ld e s i g ni st h ef i r s t s t e po fi ps o f tc o r ed e s i g np r o c e s sa n d i tm a i n l yd e s c r i b e st h ef u n c t i o no fi ps o f tc o r e f u n c t i o n o n l ya c c u r a t eb e h a v i o ra n dd e s c r i p t i o nc a nd e v e l o pf e a s i b l er t l l e v e lc i r c u i t , i na n o t h e rw o r d ,b e h a v i o r a ld e s i g nh a sb e c o m eac o r et a s kf o ri ps o f tc o r ed e s i g n t h i se s s a yw i l lc o n d u c tr e s e a r c ho nt h em e t h o do f i ps o f tc o r eb e h a v i o r a ld e s i g no f d i g i t a lc i r c u i t ,d e s c r i b et h ec h a r a c t e r so fi ps o f tc o r es t r u c t u r e ,a n a l y z et h em e t h o do f d e s c r i p t i o na n dv e r i f i c a t i o no f i ps o f tc o r es t r u c t u r e ,r a i s et h ei ps o f tc o r ev e r i f i c a t i o n t e c h n o l o g yb a s e do nd i f f e r e n to p i n i o n s ,e x p l a i n st h er e s t r i c t i o nc o n d i t i o n s ,t h e o r i e sa n d c o m p i l a t i o nm e t h o d so fm e a s u r i n gv e c t o r so ft h ei ps o f tc o r eb e h a v i o r a ld e s i g no f d i g i t a l c i r c u i ta n ds u m m a r i z et h es t r u c t u r eo fi ps o f tc o r e b e h a v i o r a l m o d e l , p r o g r a m m i n gr e g u l a t i o n sa n da p p l i c a t i o ns k i l l s i n t h ee n d ,b ys e p a r a t e l yd e s i g n i n g s e r i a lc o m m u n i c a t i o ni n t e r f a c ei ps o f tc o r e ,3 2b i tr e g i s t e rd o c u m e n ti ps o f tc o r ea n d m u l t i f u n c t i o n a lf u n c t i o ng e n e r a t o ri ps o f tc o r e ,t h ee s s a ys u m m a r i z e st h eb e h a v i o r a l d e s i g nm e t h o da p p l i c a t i o ni ni ps o f tc o r ed e s i g n ,c o n c l u d e st h ec h a r a c t e r so f d i f f e r e n t s o f tc o r ed e s i g n sa n df a c t o r so ft e s tv e c t o r sa n dw r i t et e s ta p p l i c a t i o n st ov e r i f ys o f t c o r e t h ef i n a lp a r to ft h ee s s a yw i l lr a i s et h ec o n c l u s i o n ,p o i n to u tt h ed i s a d v a n t a g e s , r o o mf o ri m p r o v e m e n tt h ef o l l o w - u po ft h ee s s a y k e y w o r d s :d i g i t a l c i r c u i ti p , i ps o f tc o r e ,b e h a v i o r a ld e s i g n ,r e s t r i c t i o na n a l y s i s , v e r i l o gh d l c i a s s n o :t n 4 0 2 v l l 致谢 本论文的工作是在我的导师李哲英教授的悉心指导下完成的,李哲英教授严 谨的治学态度和科学的工作方法给了我极大的帮助和影响。在此衷心感谢三年来 李哲英老师对我的关心和指导。 李哲英教授、骆丽教授、刘元盛副教授悉心指导我们完成了实验室的科研工 作,在学习上和生活上都给予了我很大的关心和帮助,在此向这些老师表示衷心 的谢意。 李哲英教授对于我的科研工作和论文都提出了许多的宝贵意见,在此表示衷 心的感谢。 在实验室工作及撰写论文期间,凌波、许超等同学对我论文中的i p 软核行为 级设计研究工作给予了热情帮助,在此向他们表达我的感激之情。 另外也感谢家人和朋友,他们的理解和支持使我能够在学校专心完成我的学 、i k 。 引言 1 引言 1 9 4 7 年1 2 月1 6 日美国贝尔实验室的威廉昭b 克雷( w i l l i a ms h o c k l e y ) 、约 翰巴顿( j o h nb a r d e e n ) 和沃特布拉顿( w a l t e rb r a t t a i n ) 成功地制造出第一个晶 体管。没有想到的是,这样一个不起眼的小东西却在今后的几十年里使世界的电 子产业发生了翻天覆地的变化。8 年过后,英国皇家研究所的达默又给电子行业 的发展带来了一个崭新的理念,他在美国工程师协会举办的一次座谈会上提出集 成电路的概念。在之后的几十年里,随着技术的不断更新,集成电路产业也得到 了飞速的发展,从1 9 6 2 年制造出包含1 2 个晶体管的小规模集成电路到如今已经 完成了超大规模集成电路设计与制造,充分说明了集成电路技术已经成为了现代 信息技术的支柱。特别是近几十年来,半导体工业的兴起带动了数字集成电路的 快速发展,如今社会已经进入了数字时代。 随着数字集成电路日新月异的变化,集成电路的应用已经深入到了社会的各 个领域,包括通信系统设计、计算机网络设计、自动控制系统设计、智能化系 统、空间技术、生物技术等,都是以集成电路设计技术为基础,集成电路设计技 术给人们的工作和生活提供了很多方便。2 0 世纪9 0 年代以来,国内的集成电路得 到了迅猛的发展,各大有条件的公司纷纷建立了i c 设计部,有的甚至成立了专门 从事i c 设计的子公司。国际上的大型集成电路设计公司也在国内建立了i c 设计 分公司。这些公司的建立,在给我国的集成电路发展带来机遇的同时,也增加了 对国内的集成电路行业竞争的挑战。 1 1 研究的背景 随着现代集成电路设计技术的发展和工艺的进步,s o c 芯片设计日益成为集 成电路设计的一个趋势。在s o c 芯片设计技术中,i p 核复用技术是其关键技术之 一,也是当今最常用的设计技术,复用技术的水平和发展方向对于s o c 设计来说 有着重大的影响。s o c 设计的最大挑战之一就是i p 模块的有效使用和复用。由于 设计复杂的芯片需要很长的时间,而采用传统的设计方法,系统设计人员往往很 难在短时间内设计出合格的产品。出于这个原因的考虑,使得目前大多数s o c 设 计人员都采用基于已有i p 核为基础,在已有设计的基础上加以修改和更新的设计 方法,这种方法的应用大大缩短了设计周期,降低了设计成本,因此也给i c 产业 和电子工业带来了巨大的经济效益。但如何设计出高质量的i p 软核已经成为了这 种设计方法实现的关键。因此可以看出研究数字电路i p 软核设计方法对提高s o c 北京交通大学硕士学位论文 芯片设计质量、缩短设计周期起到了至关重要的作用。 1 2本论文研究的意义 在传统的电路设计中,工程师们往往面对的是各种各样的集成电路,而随着 s o c 技术的发展,电子系统设计工程师要面对的是一个巨大的i p 模块库。他们要 从这些库中挑出不同的口模块来组成相应的电路。从中可以看出i p 模块的设计是 s o c 设计的基础。同样大规模s o c 的实现,必然要依托i p 核复用技术。在复杂 s o c 芯片设计中,可以将大型的数字模块,简化成一些简单的、可调用的i p 模块 的组合,从而使s o c 芯片的设计简化,缩短设计周期。由于目前使用这种技术设 计s o c 芯片的方法得到了广泛的应用,从而对i p 核的设计提出了更高的要求,而 行为级设计正是i p 软核设计的第一步,只有做好行为级设计才能综合出较好的 r t l 级模型,并为之后的模块设计打下坚实的基础。 综上所述,对口软核行为级设计方法的研究,分析i p 软核行为级设计的规律 和方法,归纳总结数字电路i p 软核设计方法和测试方法,对更好地进行数字集成 电路设计和复杂的s o c 系统设计都具有十分重大的意义。 1 3国内国外研究现状 集成电路设计技术发展到今天,8 0 的设计公司都选择使用i p 核作为设计的 基准。i p 核设计技术的主要技术标准是由v s i a ( v i r t u a ls o c k e ti n t e r f a c ea l l i a n c e 虚拟插座接口联盟) 制定的。v s i a 组织是1 9 9 6 年9 月成立的i p 设计规范和 接口标准化的国际组织,其总部设在美国的加州。v s i a 现有会员2 0 0 多个,这个 国际组织不但接收半导体厂商、i p 及e d a 公司的加盟,而且也接收其他相关组织 和个人的加入。 集成电路是电子信息产业的支柱,随着科学技术的发展,已经逐步代替了汽 车、石油、钢铁等传统工业成为第一大产业。2 0 世纪6 0 年代我国开始发展集成电 路产业,虽然起步晚,但国家给予了高度的重视,特别是随着社会进入数字时 代,我国政府对数字i p 产业发展非常关注。i p 核标准工作组的成立,i p 核技术标 准的出台,充分说明了我国对发展数字电路i p 技术的决心【。 1 4 本文的主要贡献 本文研究的目的是通过对数字电路i p 软核行为级设计的整体研究,找出数字 2 引言 电路i p 软核行为级设计的设计思想,设计步骤,测试向量的设计思想与编写方法 等要素,并进行相应的归纳与总结,提出行为级设计与验证的建模方法,为今后 进行数字电路i p 软核行为级设计起到指导的作用。 本文从设计者的角度出发,分析了数字电路i p 软核的基本概念和相关特性, 对口软核行为级建模的思路、依据和方法进行了较为深入的研究,并提出了行为 级建模的基本框架结构,介绍了基于模块、任务流等方法编写测试向量的基本概 念。最后通过三个具体的实例的设计与验证,说明了之前提到的概念在实际中的 应用,论文主要完成了以下几项工作: 1 分析研究了数字电路i p 软核的发展、特点、i p 核的基本结构和设计思想等 相关技术。 2 研究数字电路i p 软核结构描述的基本方法和结构测试的基本方法,并提出 了基于模块、任务流等不同思想的数字电路i p 软核验证方法。 3 分析了数字电路i p 软核行为级的约束条件。总结了行为级描述的几种思想 和测试向量设计的基本步骤。 4 对数字电路i p 软核行为级建模方法进行了系统的归纳,并提出了行为级建 模常用的方法和行为级建模的基本框架。 5 通过对串行通信接口i p 软核、3 2 b i t 寄存器文件i p 软核、多功能函数发生器 i p 软核的设计,说明了行为级建模思想和行为级建模方法在实际中的应用。 6 对三个具体的i p 软核行为级建模进行归纳与总结,概括其设计特点,并根 据各自不同的特点,指出其测试向量的编写方式和相关考虑,编写了测试程序, 完成测试验证工作。 7 总结全文重点内容和特色,并提出了后续工作的研究方向。 1 5 论文的组织结构 论文共分八章,论文结构如下: 第l 章引言部分,主要介绍了本论文研究的背景、意义和国内外现状,以及 论文组织结构等。 第2 章主要介绍数字电路i p 结构描述特征,其中包括i p 核的基本结构和设计 思想,重点介绍数字i p 软核结构的描述方法和测试方法。 第3 章主要介绍数字电路i p 行为级描述的基本方法和约束条件,重点介绍行 为级描述的约束条件、设计思想和测试向量的设计方法。 第4 章主要介绍数字电路i p 行为级建模的概念,重点介绍了行为级建模的基 本方法,各种语句的作用,建模的基本流程和基本框架。 北京交通大学硕士学位论文 第5 章主要通过对串行通信接口i p 软核的设计说明行为级建模方法在实际中 的应用,结合前面的理论知识提出相应的设计特点,进行了i p 模块的仿真验证。 第6 章主要通过对3 2 b i t 寄存器文件i p 软核的设计说明行为级建模方法在实 际中的应用,结合前面的理论知识提出相应的设计特点,进行了i p 模块的仿真验 证。 第7 章主要通过对多功能函数发生器i p 软核的设计说明行为级建模方法在实 际中的应用,结合前面的理论知识提出相应的设计特点,进行了i p 模块的仿真验 证。 第8 章对三个事例的设计方法与验证方法进行比较,说明了不同的理论概 念、设计方法和不同验证思想在不同i p 模块设计中的应用,并总结了相应模块的 行为级设计规律。 第9 章主要总结了论文所做的工作,并指出了下一步的研究方向。 4 数字电路口结构描述特征 2 数字电路i p 结构描述特征 本章主要介绍数字电路i p 核的基本结构和i p 核的设计思想,重点介绍i p 软 核设计过程中的描述方法和i p 软核的验证方法。 2 1i p 核基本结构与设计思想 i p 核( i n t e l l e c t u a lp r o p e r t yc o r e ) 的概念在i c 设计中已经使用近2 0 年了,早 期的存在形式就是标准单元库。i p 核的存在不依赖于集成电路工艺,高效的i p 核 可以移植到不同的半导体工艺中去生产集成电路芯片。利用i p 核设计的电子系统 结构鲜明,引用方便,对基本元件功能的修改相对容易。具有复杂功能和商业价 值的i p 核一般具有知识产权。由于i p 核技术蕴藏着大量的经济效益,如今虽然i p 核的市场活动还不成熟,相应的配套设施还不完善,但是仍有许多集成电路设计 公司从事口核的设计、开发和营销工作,使得i p 核技术得到了飞速的发展【2 】。 图2 1i p 核的设计思想与流程 f i g 2 - 1i pc o r ed e s i g ni d e a sa n dp r o c e s s e s 现在市场上大部分i p 核的设计都是从i p 规范书开始,经过模块设计、前端仿 北京交通大学硕士学位论文 真、综合、布局布线、后端设计、后期测试等几个步骤。最后进行产品打包,从 而产生经济价值。设计流程如图2 1 所示,从图中可以看出口核的设计大体分为 四个阶段,第一个阶段口软核的设计阶段,第二个阶段i p 固核的设计阶段,第三 个阶段口硬核的设计阶段,最后一个阶段i p 核资料整理和产品发布阶段。 2 1 1i p 核的分类 i p 核的分类方法有很多种,但目前最常用的分类方法有两种:一种是依据设 计流程进行区分;另一种是依据差异化程度进行区分。 1 依据设计流程进行区分,i p 核可以分为软核,固核和硬核【3 】。 ( 1 ) 软核 在数字集成电路设计的过程中,设计者会从电路的要求出发,制定出相关的 设计规范,然后利用v e r i l o gh d l 等硬件描述语言或者c 语言编写程序进行建模, 其中包括结构功能描述和测试向量描述等,软核就是这个用硬件描述语言编写好 的程序。由于软核是用相关语言编写的,所以具有较高的灵活性,良好可复用性 和可修改性,与现实工艺无关等特点。设计者可以通过自己的意愿对其进行修 改,使之成为自己的软核,但由于这个原因的存在,使得软核的知识产权不容易 得到保护,具有可靠性低等缺点。 ( 2 ) 固核 如果软核设计正确,且成功通过验证。数字集成电路设计进入了下一个环节 综合。这个环节中,设计者利用相关的e d a 软件对软核进行综合,形成以逻 辑门为单元的网表文件,这个文件被称为固核。固核一般是以门级网表的形式提 交的,也可以说是一个可综合的且带有布局布线规则的软核。固核与软核相比在 面积和功耗上具有较高的可靠性,与硬核相比又具有更大的灵活性。但固核也有 自身的缺点,那就是与现实工艺密切相关且可读性较差。 ( 3 ) 硬核 固核经过验证并确保无误后,就进入了硬核设计阶段,在完成布局布线后固 核就变成了硬核,硬核是以版图的形式存在并进行提交的。在电路布局和工艺方 面,硬核是固定不变的,而且也是无法再被系统设计者和使用者修改的。只有在 软核设计与固核设计准确无误的基础上才能进行硬核的设计,所以硬核的可靠性 非常好,可以很好的保护设计者的知识产权。但同时硬核的形状、大小及端口位 置都是固定的。使得硬核的灵活性很小,可复用性、可移植性较差,不容易修改 等特点,而且设计起来过程复杂、周期长、难度也较大。三种i p 核的特点如表 2 1 所示: 6 数字电路口结构描述特征 表2 1 软核、固核、硬核特点比较 t a b l e2 - 1c h a r a c t e rc o m p a r i s o nb e t w e e ns o f tc o r e ,f i x e dc o r ea n dh a r dc o r e 名称提交形式工艺相关性灵活性可靠性可复用性设计周期 软核r t l 描述无关高低高短 固核门级网表相关一般一般一般一般 硬核版图相关低高低 长 2 依据差异化程度进行区分,i p 核可分为基础i p 、标准口和成型口。 ( 1 ) 基础i p 基础i p 是指在e d a 软件中已经设计好的基本电路模型。例如,i p 单元库, 门阵列等,基础i p 与具体工艺相关性高且价格低廉。 ( 2 ) 标准i p 标准i p 一般是指一个工业标准,标准i p 可以被不同的公司使用,其结构相对 简单,语言容易理解,设计者可根据设计要求进行小范围修改。标准口具有更新 速度较快,市场的价格随着技术的进步而不断变化等特点。例如,u s b 接口, u a r t ,f l a g 等都属于标准i p 的范畴。 ( 3 ) 成型i p 成型i p 是通过完善的设计并运用相应的工具软件和系统软件相互配合开发出 来的产品。具有结构复杂,开发周期较长,市场价格高,功能强大等特点。这种 i p 一般设计完成后在市场上将占有举足轻重的地位,并给企业带来可观的经济效 益。例如,c p u ,d s p 等都属于成型i p 的范畴。 2 1 2i p 核的特征 由于i p 核在数字电路设计中起着至关重要的作用,不同的数字电路生产厂商 和i p 核提供商都会使用,所以i p 核应具备以下几点特征【4 】: 1 良好的可读性,i p 核应具备良好的可读性,特别是对于软核与固核而言, 更应该让不同的工程师了解所编写i p 核的功能。在应用的过程中,电子工程师必 须了解所编写i p 核对应数字电路的功能和算法,这样才能正确的使用i p 核,也才 可以充分发挥i p 核的作用。 2 良好的延展性,由于i p 核编写完成后,都带有特定的功能,在日常的应用 中,也可以用于不同的数字电路。但不同的数字电路功能并不完全一致,这就要 求在原有i p 核的基础上稍做修改,便可以实现所要设计电路的功能,所以i p 核应 该具备良好的可延展性,这样既方便了设计,也大大缩短了设计的周期。 3 良好的工艺适应性,对于不同的电路设计厂商,所用的集成电路工艺往往 7 北京交通大学硕士学位论文 各不相同,这就要求设计者在设计p 核的过程中,保证i p 核具有一定的工艺适用 性,当i p 核运用到不同的领域时,都可以适用不同的工艺要求完成后期的设计, 而且根据不同的要求也应该很容易地进行修改。 4 良好的可测性,测试是数字电路的设计中重要的一步,对于i p 核的设计来 说也不例外,设计者给不同厂商提供的i p 软核,其功能和性能应该可以被使用方 进行测试,这样可以充分增加厂商的信任感,这就要求设计者在i p 核的设计过程 中考虑到可测试性因素的存在,保证所设计的i p 软核不论其整体还是局部都可以 进行相应的测试。 5 良好的保护措施,i p 核可以作为一种产品向不同的e d a 厂商进行出售,所 以i p 核设计中必须注意知识产权的保护问题,而这也是现在i p 核设计面临的最大 挑战之一,特别是i p 软核与固核的设计,因为这两种核的可读性和可修改性较容 易,所以在制作的过程中更应该注意对其的保护。为解决这个问题,可以在i p 核 的设计中采用一些加密技术或在工艺实现时加上保密技术。 2 1 3i p 核复用技术 现代集成电路设计中,i p 核复用技术已经成为s o c 设计的核心技术5 1 ,i p 核 复用技术的出现,大大缩短了s o c 的系统的设计时间,简化了系统的设计难度, 利用口核复用技术设计s o c 的基本流程如图2 2 所示: n 籀面 图2 2 可复用技术设计流程 f i g 2 - 2d e s i g np r o c e s so fr e u s a b l et e c h n o l o g y 8 数字电路d 结构描述特征 从图2 2 可以看出利用i p 核复用技术虽然简化了s o c 的设计程序,但对i p 核 提出了更高的要求,因为不同的系统可能会使用同一个m 核,或者对同一个口核 进行再加工等工作,这就使得可重用的i p 核要基本具有以下几种性质: 1 要有很好的可读性。 2 要具有统一的接口标准。 3 要支持多重综合工具的设计。 4 要具有完备的说明文档。 总之,i p 核设计重用技术在s o c 设计起着至关重要的作用,为了加快s o c 芯片 的设计速度,越来越多的设计者将已有的、多次使用的i c 电路模块编辑成一个个 可调用的i p 模块,并在以后的设计中大量调用这些模块进行芯片设计。 2 1 4i p 核的设计思想 1 层次化设计 层次化设计就是指将一个复杂的电路系统分解为若干个电路子系统,或者进 一步将这个电路系统分解为现行技术可以实现的功能模块而进行的设计。 图2 - 3 层次化设计实例 f i g 2 - 3e x a m p l eo f l a y e r i n gd e s i g n 9 北京交通大学硕士学位论文 这个设计方法可以看成是利用递归的方法,将一个复杂的电路系统问题不断 地进行分解,直到系统的复杂程度降低到可以很容易实现为止。现代技术中大多 数都采用层次化设计方法,集成电路设计同样可以运用这样方法进行实现。图 2 3 是一个层次化设计的例子,这个例子说明了如何使用4 个l b i t 全加器来实现一 个4 b i t 的加法器,这个4 b i t 的加法器是由4 个l b i t 的加法器通过引脚的正确连接 来实现的,而每个l b i t 的加法器又是通过逻辑门的不同组合实现的。 层次化设计可以降低系统设计的复杂度,同时还可以更加容易地让电路设计 和电路所完成的功能概念化。从层次化设计的更高层次上,很容易从行为级层面 上理解电路系统功能,而不需要关心低层次的实现细节,这也为行为级建模提供 了方便。同时层次化设计能加强所设计模块的重用性,而不需要或者需要对原有 的设计进行较少地修改。 2 串行设计 串行设计是集成电路设计中最常见的一种方法。如果设计的一个功能模块具 有以下两方面的性质便可以采用串行设计: 1 ) 模块对输入数据的处理是分步骤进行的; 2 ) 在处理过程中后一步的数据处理,需要前一步数据处理的结果作为条件。 采用串行设计时,由于各个模块处理数据的时间不同,一般会在模块开始前 加入先进先出队列( f i f o ) 。f i f o 是英文f i r s ti nf i r s to u t 的缩写,是一种先 进先出的数据缓存器,f i f o 没有外部读写地址线,这是其与普通存储器的 区别之一,但f i f o 只能完成顺序写入或顺序读出数据。串行设计在模块设 计中比较普遍,整个过程也比较简单,图2 - 4 为串行设计流程。 数据处理模 二二刮f i f 0 - - 扒v 数据处理模 块 块 1 一 图2 4 串行设计流程图 f i g 2 - 4f l o w c h a r to fs e r i a ld e s i g n 3 并行设计 如果将所要处理的数据可以按相同性质的方式进行分组,对于不同组的数据 可以同时进行处理,这种处理方式被称为并行处理方式。与串行处理相比,并行 处理提高了处理的效率,节约了运算时间。并行处理使用与彼此不相关的模块或 者数据组,各个模块之间的处理结果是不会相互影响的。换句话说,所能进行并 行处理的电路模块之间,谁先进行处理,谁后进行处理并不影响最终电路的结 果。如图2 5 给出了并行设计的基本流程图,在理想的状态下,这几个并行处理 的模块组对处理数据时间应该是相同的,如果这几个处理时间是不相同,那么在 1 0 数字电路口结构描述特征 处理的过程结束后,加入延迟模块。使得时间同步,以便进行下一步的数据计 算。 图2 5 并行设计流程图 f i g 2 - 5f l o w c h a r to fc o n c u r r e n td e s i g n 4 流水线设计 流水线是一种数字信号处理技术,用来提高处理速度。流水线处理的基本思 想是,提高数据处理过程中间运算结果的利用率,避免重复计算操作。实际上, 在数字信号处理的计算方法中,经常会出现重复计算的问题,如果能够合理安排 处理过程,则可以避免许多重复型计算,从而缩短计算时问【6 】。 流水线设计最早起源工业设计中,后来慢慢演化成高速电路设计的常用手段, 在一般的情况下,如果某个设计可以分为若干个步骤,而且整个处理的数据流向 是单向的,且整体的处理过程可以划分为不同的阶段来完成,前一个阶段的处理 结果为下一个阶段的处理条件,那么对于这样的设计就可以考虑采用流水线的设 计原理进行设计。对于这样的设计,如果采用简单的串行处理方式,则需要若干 个时间单位来完成,且效率不高,运用流水线设计大大提高了设计的效率。缩短 了设计的周期,而且使得结构清晰,便于后期错误的检查。 图2 6 是一个用流水线的思想实现的比较器结构框图。如果要对若干个数据 进行比较,从中选出最小或最大的数据来,就需要设计一个n 级比较器模块。而 这个模块又可以用若干个两输入比较器组成,方法是可以用一组比较器将任意两 个输入数据组成一组,进行比较。将输出的结果存入寄存器中,再用一组比较其 将寄存器中任意两个输入数据组成一组,进行比较。这样以此类推最终可以比较 出想要的结果。流水线设计在很多领域都有广泛的应用,如高速通信系统、高速 北京交通大学硕士学位论文 采集系统、高速导航系统等等。 第1 级流水 线 第2 级流水 线 - - - l-ll l 警11 警i 刮倒 訾 警i 繁 i 繁l lliilill 寄存器组 比较器比较器比较器比较器 图2 - 6 流水线设计思想结构图 f i g 2 6s t r u c t u r eo fp r o d u c t i o nl i n ed e s i g n 2 2 i p 软核结构描述方法分析 i p 软核其实就是一段具有特定电路功能的硬件描述语言程序,i p 软核设计通 常有一定顺序可循,一般的设计流程主要包括i p 设计规范的制定、结构设计、功 能模块设计和验证设计这几个阶段。设计过程中一般采用“自项而下”的设计方 法, “自项而下”设计方法的优点在于优化全局性能,提高设计日程的可测性, 便于协调各级设计人员之间的工作。其缺点在于设计流程的严格控制和设计者需 要熟练掌握电路的硬件描述语言。下面将对设计流程的每个步骤详细介绍。 2 2 1 设计规范描述 设计规范的制订是进行i p 软核设计的第一步,也是最重要的一步,并提供了 后期i p 核设计的范围和相关规定,设计规范实际上就是这个i p 核详细的说明书, 一般在撰写设计规范时应该包括i p 核所实现的功能、各个参数的数值、所用面 积、功耗、接口标准、引脚定义、所用语言等相关信息,详细的设计规范还需要 1 2 数字电路口结构描述特征 包括设计中状态机的状态转移图、时序图等相关图表。 2 2 2 结构描述 在m 设计规范文档完成后,系统被划分为顶层模块和若干个子模块,每个模 块都有明确的功能以及其它模块接口的定义,这时系统已经被结构化了,这个过 程称为结构设计。结构设计除了要完成模块的划分外,还需要对系统中子模块进 行功能的分类、确定彼此的个数以及模块之间的互联关系,这些模块的种类一般 包括:加法器、乘法器、a l u 运算单元和总线等。同时结构设计还需要决定系统 处理思想:是用并行结构还是串行结构,何时才用这些结构进行设计,是否采用 流水线结构,流水线的级数以及每一级流水线如何操作等。目前,结构设计已逐 步被多种计算机辅助设计、行为级综合等工具引进,这些工具不但可以很快地搭 建不同的功能模块,完成不同模块之间的连接工作,而且可以直接将行为级的结 构设计综合成r t l 级设计。这样做的优点在于行为级的结构设计比较容易优化, 便于转换成r t l 级代码【7 j 。 2 2 3 模块描述 功能模块设计的任务是根据i p 规范要求,完成对应的各个功能模块具体电路 的设计。这个设计过程中一般要对顶层模块和子模块进行设计,各个模块设计的 依据是逻辑功能或者算法模型。设计流程如图2 7 所示。 模块设计的第一步,就是对所要设计模块的进行划分和归类,可以把常用的 模块例如加法器等归为一类,从而方便设计,其次就是对所要设计模块的逻辑功 能和所要应用的算法进行分析,确定电路的逻辑结构。对于简单的电路,可以直 接通过逻辑表达式、状态方程、逻辑图、状态图、真值表等方式建立电路模型。 对于复杂电路,则可以利用v e r i l o gh d l 语言对其进行行为级描述。再次就是要 根据子模块电路的具体要求来设计不同的数字电路结构,这一阶段也可以使用 v e r i l o gl d l 语言工具对电路结构进行建模,描述中可以使用行为级描述方法,也 可以使用r t l 级描述方法。之后要对子模块进行优化,有时在一个复杂的电路结 构中往往使用一些基本相同的模块,例如加法器模块、乘法器模块、a l u 模块 等,只是在不同的子模块中对这个相似的模块稍作修改便可以使用。最后要根据 之前的结构描述进行顶层模块的设计。顶层模块的设计就是把子模块通过连接集 成起来的设计过程。 北京交通大学硕士学位论文 2 2 4 验证描述 图2 7 功能模块设计流程 f i g 2 - 7d e s i g np r o c e s so f f u n c t i o nm o d u l e i p 软核设计的最后一步就是对设计的验证工作,由于单个i p 软核的错误很容 易被发现,所以在所有的i p 软核连接之前,要对每一个i p 软核进行验证工作,这 样既能保证i c 设计的正确性,又可以降低成本,提高i p 软核的设计质量。i p 软 核的验证分为子模块验证和顶层模块验证两大部分。子模块验证是整体软核验证 的先决条件瞄j 。 子模块的验证是i p 软核验证的基础,由于子模块代码比较容易观测和修改, 检查错误也比较简单,在一般的i p 软核验证中首先对各个子模块进行验证,提高 验证覆盖率是子模块验证的目的,通过覆盖率的提高可以使子模块的各个功能得 到比较全面的验证。从而保证后面验证的顺利进行。对于一些子模块,用一般的 v e r i l o gh d l 硬件描述语言搭建的测试平台就可以达到验证的目的,但是对于一些 复杂的子模块,用这种方法很难得到全面的验证,这时就必须先用简单的测试平 台来验证基本功能,详细检查子模块的接口模型,最后验证时进行全面详细验 证。验证平台的搭建需要注意以下两个方面:一方面,不是所有的验证平台都要 从头编写,在验证过程中应该尽可能使用可重用验证平台;另一方面,对输出结 1 4 数字电路p 结构描述特征 果的检查应该是系统自动完成的,而不是设计人员通过观看输出波形的方式来得 到的。 在模块验证完成后是对口软核整体进行验证工作,验证的目的在于保证口核 功能完善性和时序正确性。由于s o c 的设计中经常用到口软核的复用技术,而且 这些i p 软核很有可能被用到一些关键性的地方,所以要求对邛软核验证时能消除 所有的错误,对于所有的合理配置和正确的参数,要求i p 软核能绝对正常的工 作。在进行i p 软核验证时,使用正确的验证策略可以提高整体模块的测试覆盖 率。这就需要设计师投入很大的精力建立完善的验证平台和测试向量,而且还要 有一些验证工具和验证技巧。 2 3i p 软核结构验证方法分析 i p 软核的验证是集成电路设计中重要的而且是不可缺少的一个环【9 】,贯穿于 i p 软核设计的开始到完成整体模块设计的全过程,口软核的结构验证主要是指在 编写i p 软核的过程中,对每一个子模块和最终的顶层模块进行的验证工作。通过 对被测电路施加已知的测试矢量,观察其输出结果,并与已知正确输出结果进行 比较从而判断i p 软核的功能、性能、结构的好坏。图2 8 说明了结构测试的一般 过程。随着技术的不断发展,特别是集成度越来越高,如今i p 软核的测试面临以 下几个问题: 1 由于电路的复杂程度越来越高,输入输出管脚的增加,i p 软核测试模块越 来越大,测试的时间也越来越长。 2 由于测试矢量数目的不断增加,导致了测试过程对覆盖率的要求也越来越 高。 3 测试矢量编写的难度不断加大。 图2 - 8i p 软核验证的一般过程 f i g 2 - 8c o m m o np r o c e s sf o rs o f tc o r ev e r i f i c a t i o n 北京交通大学硕士学位论文 2 3 1 基于模块的验证 在数字电路设计中,功能模块可以理解为一种抽象层次,并存在于被测器件 与验证工程师所要添加的事物激励之间,因此对于一个能够产生测试激励和自动 检查输出的测试平台来说,对功能模块的验证是至关重要的1 0 】。 图2 - 9u s b 接口模块的开发与验证环境 f i g 2 - 9d e v e l o p m e n ta n dv e r i f i c a t i o no fi n t e r f a c em o d u l e 由于功能模块的测试平台有多种多样的形式,下面用一个u s b 接口模块的测 试平台作为例子,测试平台如图2 - 9 所示。由u s b 软核、a 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 r m 公司设计的一种用于高性能嵌入式系统的总线标准。而先进高性能总线 ( a h b ) 是现阶段a m b a 实现的主要形式。测试平台中u s b 作为a m b aa h b 总线的外部设备有两个接口,即本身的u s b 端口和a h b 总线接口。当a h b 对外 设模块进行读写操作的时候,u s b 作为从设备运行;当u s b 对a h b 总线进行读 写访问的时候,u s b 作为主设备运行。各模块功能如表2 2 所示。 这种基于模块的验证环境有着非常强大的功能,电路验证工程师可以在不了 解a h b 接口细节的情况下对u s b 模块的寄存器进行读、写访问。同样工程师也 可以使用高层次命令对u s b 接口产生所有可能的数据包进行测试,而不是用手工 的方法进行处理。更重要的是,验证工程师可以通过验证环境中的监控器和覆盖 率监控器得到包括目前测试过的和没有测试过的代码操作等验证信息。 对于图2 9 复杂的验证环境,必须要求其中所有的总线功能模型能够协同工 数字电路p 结构描述特征 作。而高级验证语言提供了这种保证,来传递消息队列里的相关信息,使得从主 控验证模块产生的命令能够正确地驱动环境中的所有总线功能模型。 表2 - 2u s b 接口模块的开发与验证环境各模块作用 t a b l e2 - 2f u n c t i o no fe a c hm o d u l ef o rd e v e l o p m e n ta n dv e r i f i c a t i o no fi n t e r f a c em o d u l e 名称作用 a h b 主设备总线功能模 对u s b 模块的寄存器进行读写操作。 块 a h b 从设备总线功能模 作为a h b 总线的存储器被u s b 进行读、写访问。 块 对所有a h b 总线上发生的操作进行监控和检查,看是否违反总线访问 a h b 监控器 协议,并提供一些关于总线功能测试覆盖率的信息。 对u s b 模块的端口进行操作,产生控制、中断和同步数据包,

温馨提示

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

最新文档

评论

0/150

提交评论