ASIC世叶梳理和设计方挂-nginx url自动加斜杠及301重定向的问题
第二章ASIC设计梳理和设计规则可以体现在设计的各个阶段以及各个层次上。在系统级,可以采用公用的电源、地线、时钟和总线;在RTL级,则可以调用功能块来组成;逻辑级的门和寄存器单元都可以采用一定的标准来规范;直到电路级,多数晶体管可以采用相同的尺寸,并进行优化设计。其实,标准单元的版图设计方法就是典型的规则设计,不仅在电路结构上逻辑单元是典型的、规则的,而且在单元版图的形式上也是等宽不等高。引线脚也有一定的位置。
不仅在电路结构方面,而且在使用软件方法作行为描述时同样可以采用规则设计。其中常用的形式是子程序调用,可以把常用的单元功能模块描述成相应的子程序或软件模块,存放在设计库中以备调用。这些功能块可以是各种类型的加法器,奇偶校验电路、计数器、多路开关等。当然,这些模块应该是经过优化设计和验证的。规则设计的正确与否在形式上的判别方法也是规则性,因为电路结构的规则设计往往表现在电路的形式上。从版图设计来看,规则地布局、尽可能采用重复的版图单元,可以提高设计效率。在ASIC设计流程中,图2.12展示的多路开关、寄存器和加法器模块都是使用相同的CMOS倒相器和三态倒相器来组成的。从规则设计的要求来看,应尽可能地减少单元模块的种类,对于每一种单元模块都必须经过验证,包括功能验证、时序验证以及对应的单元版图验证。
在设计协调方面,当定义好子模块的功能和接口后,必须对模块的层次和规则性进行协调。协调包括两个方面:一是模块信号的标准化,二是模块间的连接关系以及采用的基本结构。当模块建立后,模块与模块之间的相互影响已经确定。在建立模块时,需要根据电路的逻辑功能和电气特性定义好模块的行为、结构和物理接口,指明模块的名字、类型、层次、位置以及它与外界的连接信号等问题。其中一个重要的问题是必须考虑模块间如何合理地连接,这就是模块信号的标准化。模块信号标准化包括三个方面:(1)信号输入的驱动;(2)输入信号的寄存;(3)输出信号的寄存。信号输入的驱动是指在模块输入端可以设置驱动器,这样可以降低对外来信号的驱动要求,保证模块可靠地工作。
对于二选一多路开关,可以有图示的两种形式。想了解更多关于多路开关和其它ASIC设计细节?可以参考这篇asic设计教程。更多ASIC设计的经典案例和资料,也可以从asic完整设计实例和最全ASIC设计资料中获取。
这样的设计思路是不是让人耳目一新?逻辑严谨、布局合理,既体现了技术的美感,又兼顾了实用性。细心研究这些标准化规则,也许你会发现设计的乐趣所在!