- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第四讲 软件开发设计流程 信息与通信学院:谢跃雷 系统设计是数字系统设计的最高层次。一个系统可以包括若干芯片。如果是“System on Chip”设计,则在一个系统芯片上,也会有若干类似于处理器、存储器等这样的部件。 系统设计主要任务是将设计要求转换为明确的、可实现的功能和技术指标,确定可行的技术方案,且在系统一级(顶层)进行功能和技术指标的描述。这类描述一般通过文字来表示就可以,不会用HDL来描述。 设计层次(1) 设计层次(2) 设计层次(3) 设计层次(4) 设计层次(5) 设计在抽象级上需要进行折衷 Verilog行为描述 对于全加器,用布尔方程描述其逻辑功能如下: S1 =A XOR B S = s1 XOR Cin Co = (A AND B) OR( S1 AND Cin) 下面是基于上述布尔方程的数据流风格的描述: Verilog 数据流描述 HDL可以在3个抽象级上建模 抽象级(Levels of Abstraction)描述选取 设计工程师在不同的设计阶段采用不同的抽象级 首先在行为级描述各功能块,以降低描述难度,提高仿真速度。 在综合前将各功能模块进行RTL级描述。 用于综合的库中的大多数单元采用结构级描述。在本教程中的结构级描述部分将对结构级(门级)描述进行更详细的说明。 三、典型FPGA应用设计流程 典型FPGA应用设计流程 典型FPGA应用设计流程 一个系统由总设计师先进行系统描述,将系统划分为若干模块,编写模块模型(一般为行为级),仿真验证后,再把这些模块分配给下一层的设计师,由他们完成模块的具体设计,而总设计师负责各模块的接口定义 自顶向下设计法设计过程是通过功能分割手段,将系统由上而下分层次、分模块进行设计和仿真。先进行高层次设计,主要进行功能和接口描述,定义模块的功能和接口。这种方法可以用于系统的前期设计,在没有选定器件、做出电路系统之前,可用软件的仿真手段验证方案的可行性。然后再进行底层设计,此时,才涉及具体逻辑门和寄存器等实现方式的描述。在每一个层次上,大体都有描述、划分、综合和验证等4种类型的工作,EDA系统正是要做这些工作。 自顶向下的设计方法并不是一个一次就可以完成的设计过程,而是一个需要反复改进、反复实践的过程。这个过程可以分为:系统性能描述与行为模拟、系统结构分解、产生系统结构模型、描述叶子模块、逻辑综合与设计实现。 (1)系统性能描述与行为模拟 设计从系统的功能和性能要求开始。首先要将系统的功能要求转换为用HDL对系统进行的性能描述,建立设计的行为模型。建立设计的行为模型之后,可以在设计的早期阶段对设计的行为模型进行模拟,通过对模拟结果进行分析,进而调整、修改设计。经过具体的描述和模拟,可以验证对于系统功能要求的理解是否正确,是否完整。另外,通过这样的描述和模拟,还可能发现原来对系统功能的要求的不完善或者不准确的地方。所以,这个过程有可能要反复进行。 (2)系统结构分解 系统结构分解,则是将系统分解为若干子系统,子系统又可以再分解为若干功能模块。这样的分解可以一层一层地进行下去,直到树形结构的末端,即叶子功能模块。系统分解也不一定是一次就可以完成的,在系统的实现过程中,很可能发现某个层次的分解不一定合适,这时,就可以进行重新分解。 系统分解完成后,系统的层次结构就很清晰了。这时,可以用HDL的结构描述能力,完成系统和子系统的结构描述。 (3)对叶子功能模块进行数据流描述 叶子模块是构成系统的最基本的模块。对于这样的模块,即RTL模型(寄存器级层次),应该用数据流进行描述。因为数据流的描述更加接近模块的物理实现,更加能体现设计者的设计能力和运用设计者的设计经验。用数据流描述的模块,经过逻辑综合工具软件的处理后,会有较好的设计效果。 (4)逻辑综合与设计实现 逻辑综合是软件描述与硬件实现的一座桥梁。综合过程就是将电路的高级语言描述转换成低级的,可与FPGA/CPLD器件结构相映射的网表文件。然后进行器件的布局、布线和适配,最后生成下载到器件中的编程文件。有经验的设计者可以看到这些门级描述的结果。当网表文件映射到具体的器件中时。同样,有经验的设计者,可以看到设计结果在逻辑器件中的分布,甚至进行适当的调整。 六、基于FPGA/CPLD数字系统的设计举例 题目: 设计一个简易便携式计算器。 要求:
文档评论(0)