赞
踩
在数字电路设计当中,当我们设计的电路很复杂的时候,我们往往很难一次性的完成功能模块的设计。这时候我们往往需要按模块化的思路一步一步实现电路的功能。而层次化设计思想就类似于搭积木,先从小的部分搭起,一步一步搭到完整的电路。数字电路中根据模块层次不同有两种基本的结构设计方法:自底向上(Bottom-Up)的设计方法和自顶向下(Top-Down)的设计方法。
自底向上的设计是一种传统的设计方法,对设计进行逐次划分的过程是从存在的基本
单元出发的,设计树最末枝上的单元要么是已经构造出的单元,要么是其他项目开发好的
单元或者是可外购得到的单元。在自底向上建模方法中,我们首先对现有的功能块进行分
析,然后使用这些模块来搭建规模大一些的功能块,如此继续直至顶层模块。如下图所示
自上而下的设计是从系统级开始,把系统分为基本单元,然后再把每个单元划分为下
一层次的基本单元,一直这样做下去,直到直接可以用 EDA 元件库中的原件来实现为止。
在自顶向下设计方法中,我们首先定义顶层功能块,进而分析需要哪些构成顶层模块的必
要子模块;然后进一步对各个子模块进行分解,直到到达无法进一步分解的底层功能块。
在典型的设计中,这两种方法是混合使用的。设计人员首先根据电路的体系结构定义
顶层模块。逻辑设计者确定如何根据功能将整个设计划分为子模块;与此同时电路设计者
对底层功能块电路进行优化设计,并进一步使用这些底层模块来搭建其高层模块。两者的
工作按相反的方向独立进行,直至在某一中间点会合。这时,电路设计者已经创建了一个
底层功能块库(具有独立完整的功能块、IP 核或逻辑门),而逻辑设计者也通过使用自顶
向下的方法将整个设计分解为由库单元构成的结构描述。
在这里,我们将利用层次化设计思想,设计并实现一个全加器。
全加器能进行被加数、加数和来自低位的进位信号相加,并根据求和结果给出该位的进位
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。