数字电路

粗略地说,数字集成电路可以分为以下基本步骤:系统定义、寄存器传输级设计、物理设计。而根据逻辑的抽象级别,设计又分为系统行为级、寄存器传输级、逻辑门级。设计人员需要合理地书写功能代码、设置综合工具、验证逻辑时序性能、规划物理设计策略等等。在设计过程中的特定时间点,还需要多次进行逻辑功能、时序约束、设计规则方面的检查、调试,以确保设计的最终成果合乎最初的设计收敛目标。

系统定义

系统定义是进行集成电路设计的最初规划,在此阶段设计人员需要考虑系统的宏观功能。设计人员可能会使用一些高抽象级建模语言和工具来完成硬件的描述,例如C语言、C++、SystemC、SystemVerilog等事务级建模语言,以及Simulink和MATLAB等工具对信号进行建模。尽管主流是以寄存器传输级设计为中心,但已有一些直接从系统级描述向低抽象级描述(如逻辑门级结构描述)转化的高级综合(或称行为级综合)、高级验证工具正处于发展阶段。系统定义阶段,设计人员还对芯片预期的工艺、功耗、时钟频率频率、工作温度等性能指标进行规划 。

寄存器传输级设计

集成电路设计常常在寄存器传输级上进行,利用硬件描述语言来描述数字集成电路的信号储存以及信号在寄存器、存储器、组合逻辑装置和总线等逻辑单元之间传输的情况。在设计寄存器传输级代码时,设计人员会将系统定义转换为寄存器传输级的描述。设计人员在这一抽象层次最常使用的两种硬件描述语言是Verilog、VHDL,二者分别于1995年和1987年由电气电子工程师学会(IEEE)标准化。正由于有着硬件描述语言,设计人员可以把更多的精力放在功能的实现上,这比以往直接设计逻辑门级连线的方法学(使用硬件描述语言仍然可以直接设计门级网表,但是少有人如此工作)具有更高的效率。

设计验证

设计人员完成寄存器传输级设计之后,会利用测试平台、断言等方式来进行功能验证,检验项目设计是否与之前的功能定义相符,如果有误,则需要检测之前设计文件中存在的漏洞。现代超大规模集成电路的整个设计过程中,验证所需的时间和精力越来越多,甚至都超过了寄存器传输级设计本身,人们设置些专门针对验证开发了新的工具和语言。

例如,要实现简单的加法器或者更加复杂的算术逻辑单元,或利用触发器实现有限状态机,设计人员可能会编写不同规模的硬件描述语言代码。功能验证是项复杂的任务,验证人员需要为待测设计创建一个虚拟的外部环境,为待测设计提供输入信号(这种人为添加的信号常用“激励”这个术语来表示),然后观察待测设计输出端口的功能是否合乎设计规范。

  • UC3846控制芯片工作原理控制图 逆变焊机原理与用途
  • 数字万用表电阻档测试二极管正反向没有阻值(使用万用表测量二极管的正向电阻,为什么各档)
  • 学单片机需要学数电模电吗(学单片机要先学数电模电吗)
  • 电工怎么选择适合自己用的万用表(电工初学者买什么样的万用表好)
  • 单片机需要同时运行多个任务怎么办(单片机怎么同时执行多个任务)
  • 电机保护的方案取决于负载的机械特性
  • 绝缘电阻表正负搭接不复零位是怎么回事
  • 短路怎么用万用表查