跳转至

Introduction

  • Motivation and Introduction
  • Building a Chip
  • Design Automation
  • Chip Design Flow

Motivation and Introduction

Moore's law of engineers

每芯片逻辑晶体管的增长规模远大于个人处理能力,即使我们使用了各种工具来辅助。这称为工程师的摩尔定律。

Solution:

  • Design Abstraction: 抽象出设计工程的每个部分,每位工程师都专注于其中的一部分,但能够从其他工程师那里获得输入,或者向其他工程师提供输出,我们可以专注于自己的部分。
  • Design Automation: 设计自动化(EDA),通过软件工具来自动化设计流程,提高设计效率。
  • Design Re-use(IP): IP(知识产权),如果有现成的,可以直接使用,不需要重复设计。

Building a Chip

General Design Approach: Divide and Conquer

  • Partition design problem into many sub-problems, which are manageable
  • Define mathematical model for sub-problem and find an algorithmic solution
    • Beware of model limitations and check them !!!!!!!
  • Implement algorithm in individual design tools, define and implement general interfaces between the tools

    实现上下层抽象之间的接口。

  • Implement checking tools for boundary conditions

    通常会由第三方人员来进行检查。

  • Concatenate design tools to general design flows which can be managed

  • See what doesn’t work and start over

Basic Design Abstraction

  • System Level
    • 高级行为的抽象算法描述(如 C 语言),不包括任何内部数据、时序的实现细节。
  • Register Transfer Level(RTL)
    • 我们有一个 cycle accurate 的 model,接近于硬件实现。
    • 位向量的数据类型和操作,用来抽象 bit-level 的实现。
    • 顺序结构(如 if-then-else),用来支持建模复杂的控制流。
  • Gate Level: Model on finite-state machine level
    • RTL 会被综合为门级描述,展示了我们如何拥有不同的逻辑数字门以及它们之间如何连接。
    • 将状态机转换成一组逻辑门,执行我们在 RTL 层面所写的布尔逻辑。
    • Various delay models for gates and wires.
    • 本课程会涉及到的最底层的层次。
  • Transistor Level: Use compact models to enable accurate circuit simulation
    • 门是由晶体管或者单个器件构成的。如果我们有这些晶体管,并连接起来就可以构建一个门。
  • Layout Level: Draw polygons to implement the devices and interconnect
    • 晶体管是一系列以特定方式生成的光刻掩模,随后他们会经历工业设计步骤,将物理转化为实际的电子器件,从而制造出晶体管。
  • Mask Level: Create actual photo-masks for performing lithography during fabrication process.
    • 用于制造晶体管的实际掩模。

Design Automation

我们有针对设计自动化各个层级的工具:

  • Design:
    • High-Level Synthesis (RTL / System level)
    • Logic Synthesis (RTL / System level)
    • Schematic Capture (Transistor Level)
    • Layout (Layout Level)
    • PCB Design
  • Simulation:
    • Transistor Simulation
    • Logic Simulation
    • Hardware Emulation
    • Technology CAD
    • Field Solvers
  • Validation:
    • ATPG
    • BIST
  • Analysis and Verification:
    • Functional Verification
    • Clock Domain Crossing
    • Formal Verification
    • Equivalence Checking
    • Static Timing Analysis
    • Physical Verification
  • Mask Preparation:
    • Optical Proximity Correction (OPC)
    • Resolution Enhancement Techniques
    • Mask Generation

EDA in this course

  • RTL
    • Verilog
  • Synthesis
    • Cadence Genus
  • Place and Route
    • Cadence Innovus
    • Static Timing Analysis – Tempus
    • Power Estimation – Voltus
    • Parasitic Extraction – QRC
    • Clock Tree Synthesis - CCOpt
  • Logic Simulation
    • Cadence Incisive

Chip Design Flow

  • Definition and Planning
    • Marketing Requirements Document (MRD)
    • 确定芯片的架构,如带宽,功耗范围,面积范围,软硬件划分等等。
    • 设计文档,确定 Floorplan 需求,用什么工艺,找什么 Foundry。
      • 通常将芯片整体规划,内部数字、模拟电路的位置、面积、形状等特征的规划称为版图布局规划(FloorPlan)。连接关系最初并不一定能确定,在研发过程中经常会调整 FloorPlan 规划。
  • Design and Verification (Frontend)
    • RTL 设计
    • IP 集成:分为软核和硬核。
      • Hard IP:以预先存在的布局形式(Layout)提供的,通常包括时序模型、布局抽象、行为模型(Verilog/VHDL)、有时还包含 Spice 模型和完整的布局。如 RAMs, ROMs, PLLs.
      • Soft IP:以 RTL 代码的形式提供,这些代码可以用硬件描述语言编写。很多时候为了保护 IP 的知识产权,供应商可能会对 RTL 代码进行加密。
    • 功能验证分为单元验证、子系统验证、SoC 层面的验证(Chip (SOC) level)。
    • 验证阶段有仿真验证,形式验证,FPGA 原型验证,硬件仿真器等。
      • FPGA Prototyping 会综合到 FPGA 上并进行验证。
  • Logic Synthesis (Frontend and Backend)
    • 输入有 Technology library 文件、RTL 文件、约束文件(SDC)、DFT 定义;输出为 Gate-level netlist 门级网表。
    • 会经过 Synthesis->Mapping->Optimzation->Post Synthesis checks
      • Synthesis: 将 RTL 转换为通用逻辑网表。
      • Mapping: 将通用逻辑网表映射到核心库中的标准单元格(standard cell)。
      • Optimzation: 满足 Timing/Area/Power 约束。
      • Post Synthesis checks: 进行门级仿真、形式化验证(Logic Equivalence)、静态时序分析(STA)、Power/Area 估计。
  • Physical Design (Backend): 可以简单理解为布局布线,IC 后端。

  • Signoff and Tapeout

    • 当后端完成版图以后,需要经过时序和功耗检查,合格才能交给 Foundry,这种检查叫做 SignOff 检查。
    • 在 SignOff 合格以后,需要将最终网表和延迟信息提供给验证人员,进行后仿真(Post-layout Gate-level Simulation)。
  • Silicon Validation

评论