- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
EDA开发流程
开发流程
在了解了硬件描述语言的演进过程中,相信各位对VHDL及Verilog HDL与ASIC EDA工具之间的关系,应已有基本的认识。在此,让我再强调一次:在高阶设计的领域中,硬件描述语言扮演的角色,只是一种程序语言接口(PLI);它提供了一个极具弹性的设计入口(design entry),以作为电路设计者与各种计算机辅助设计工具之间沟通的桥梁 。因此,若缺少了这些EDA工具,硬件描述语言的剩余价值,也只不过是一种系统规划工具,或是技术文件格式而已。
具体地说,整个数字电路的高阶设计概念 ,可以说就是设计自动化(design automatize)的实现。理想的情况是:由仿真验证设计是否符合原始设定的规格(specification),以至于诸如逻辑电路的合成与实际晶体管配置与绕线(place and route)这一类徒手不易掌控的工作,工程师均能寻求适当的EDA工具来完成整个电路的设计。完整的自动化数字电路设计流程包含了三种主要的EDA工具:仿真器(simulator)、合成器(synthesizer)以及配置与绕线(place and routing, PR)工具;除了PR工具之外,其余两者绝大部分,均是以VHDL或Verilog HDL作为其程序语言接口。以下,笔者将配合介绍这个典型的自动化设计流程,简述各项EDA工具的基本功用。
1.系统规格制定(Define Specification)
在ASIC设计之初,工程师们须根据产品的应用场合,为ASIC设定一些诸如功能、操作速度、接口规格、环境温度及消耗功率等规格,以做为将来电路设计时的依据。在这方面,目前已有厂商提供系统级仿真器(system -level simulator),为系统设计提供不错的解决方案;透过此类仿真器,工程师们可以预估系统的执行效能,并可以最佳化的考量,决定软件模块及硬件模块该如何划分。除此之外,更可进一步规划哪些功能该整合于ASIC内,哪些功能可以设计在电路板上,以符合最大的经济效能比。
2.设计描述(Design Description)
一旦规格制定完成,便依据功能(function)或其它相关考量,将ASIC划分为数个模块(module);此阶段是整个设计过程中最要的关键之一,它直接影响了ASIC内部的架构及各模块间互动的讯号,更间接影响到后续电路合成的效能及未来产品的可靠性。
决定模块之后,便分交由团队的各个工程师,以VHDL或Verilog等硬件描述语言进行设计-亦即功能的行为描述(behavioral description);为能明确及有效率地描述模块的内部功能,各模块之下可能再细分成数个子模块(sub-module),直到能以可合成(synthesizible)的语法描述为止。这种一层层分割模块的设计技巧,便是一般所谓的阶层式设计(hierarchical design);这与早期直接以绘制闸级电路进行设计的时代,所使用的技巧是相类似的。此一步骤所完成的设计描述,是进入高阶合成电路设计流程的叩门砖;习惯上,称之为硬件描述语言的设计切入点(HDL design entry)。 关于此一步骤,亦有相关的辅助工具相继推出。Design Book便是其中的代表;它利用一般工程师熟悉的图形接口-如状态图及流程图,协助初接触以硬件描述语言进行设计的工程师,自动编写出相对应的硬件语言描述码。效能如何笔者不敢断言,但它能依使用者决定,整合惯用之其它EDA工具的特点,倒是满吸引人的地方。
3.功能验证(Function Verification)
完成步骤2的设计描述,接下来便是利用VHDL或Verilog的电路仿真器,针对先前的设计描述,验证其功能或时序(timing)是否符合由步骤1所制定的规格。通常,称这类验证为功能仿真(function simulation),或行为仿真(behavioral simulation),而这类的HDL电路仿真器,则通称为行为仿真器(behavioral simulator)。
对于这一类功能验证的仿真而言,仿真器并不会考虑实际逻辑闸或联机(connenct wires)所造成的时间延迟(time delay)、闸延迟(gate delay)及传递延迟(transport delay)。取而代之的是,使用单一延迟(unit delay)的数学模型,来粗略估测电路的逻辑行为;虽然如此无法获得精确的结果,但其所提供的信息,已足够作为工程师,针对电路功能的设计除错之用。
为了能顺利完成仿真,在此,您还需要准备一分称为测试平台(test bench)的HDL描述?。在这份测试平台的描述档中,必须尽可能地细描述所有可能影响您设计功能的输入讯号组合,以便激发出错误的设计描述位于何处。幸运的话,或许
您可能关注的文档
- 年轻教师交流稿.doc
- AATCC面料外观疵点检测标准.doc
- 幼儿园教师业务考试填空题.docx
- 幼儿园教师评分表.docx
- 幼儿园家庭与社区的合作共育的现状及发展策略.docx
- 幼儿园期末档案管理.docx
- 幼儿园课程复习重点整理.doc
- 幼儿各个类型简笔画word版打印即可.doc
- 幼儿游戏与玩具形成性考核册2016.docx
- 广东核电站CIS内容框架.docx
- 数据仓库:Redshift:Redshift与BI工具集成.docx
- 数据仓库:Redshift:数据仓库原理与设计.docx
- 数据仓库:Snowflake:数据仓库成本控制与Snowflake定价策略.docx
- 大数据基础:大数据概述:大数据处理框架MapReduce.docx
- 实时计算:GoogleDataflow服务架构解析.docx
- 分布式存储系统:HDFS与MapReduce集成教程.docx
- 实时计算:Azure Stream Analytics:数据流窗口与聚合操作.docx
- 实时计算:Kafka Streams:Kafka Streams架构与原理.docx
- 实时计算:Kafka Streams:Kafka Streams连接器开发与使用.docx
- 数据仓库:BigQuery:BigQuery数据分区与索引优化.docx
文档评论(0)