首页 > 其他分享 >(1)概述

(1)概述

时间:2024-06-01 19:44:16浏览次数:21  
标签:仿真 芯片 RTL 时序 概述 timing 设计

一、芯片设计制造的五个环节

  • 晶圆厂foundry:从事半导体晶圆生产,接受其他设计公司的委托制造芯片,代表公司:TSMC、UMC、SMIC
  • 设计公司fabless:fabrication+less,没有制造业务专注于设计的公司,代表有博通、高通、英伟达、华为海思
  • EDA软件公司:自动化软件生产厂商,主要为集成电路设计提供软件支持,代表有三大家,国内有华大九天
  • Design Service设计服务公司:提供芯片后端设计服务,包括芯原、alchip国芯微等
  • IP供应商:由于ip研发成本高且复用性强,一些设计公司为其他公司提供ip服务,代表有arm、s家、c家

 

二、ic相关就业岗位

 

三、数字芯片设计流程

 1.算法和架构设计

完成数字芯片中高层次算法或架构的分析和建模,为硬件提供一个正确的软件模型,通过大量高层次的仿真和调试,为RTL的实现提供总体性的设计和指导。

工具:matlab(数字信号处理)、c\c艹、system c、system verilog

2.RTL实现

依据第一步的描述,完成高层次到verilog HDL的实现过程

工具:vim、emac

3.功能验证

通过大量的仿真,发现在电路设计中人为或非人为引起的bug,主要指标是功能覆盖率

工具:modelsim、vcs、nc-verilog

语言:c\c艹、system c、system verilog、基于UVM的方法学等

4.逻辑综合

将RTL代码映射为工艺库相关的网表

工具:DC、RTL compiler

特点:整个逻辑综合是在人为约束下进行的,因此逻辑综合可以看做是一个多目标(面积、频率、性能)多约束的工程优化问题,该步骤通常会插入DFT、clock gating、加入memory、各种ip等,该步骤也可加入PLL、I\O接口等

5.静态时序分析

目的:相对于动态仿真的类穷举式验证而言,从静态分析的角度,保证设计中的所有路径满足内部时序单元对setup time和hold time的要求,即无论起点是什么信号都可以被及时的传递到路径的终点,并且在电路正常工作的必要时间段保持恒定

工具:PT、tempus

特点:从逻辑综合开始,基本上每做一次大的调整,都需要进行一次STA分析,以保证每步都能时序收敛,通常设计中会存在大量的时序违例路径,STA需要修改大量的setup time和hold time,如何修改这些体现了工作经验的重要性。此外,如果是前端修timing违例,一般修的很快,但代码被前端修改后是否还存在新的bug需要重新进行仿真验证,仿真会消耗数以月计的时间,所以不到万不得已,不会找前端去修timing

6.一致性验证

目的:RTL代码和逻辑综合后的网表都可以抽象为由节点和边构成的图,一致性验证采用了类似直接对比两幅图是否一致的方法,来确定逻辑综合生成的网表是否正确

工具:formality、conformal

输入:RTL代码、netlist、约束

输出:match(两张图节点是否一致)和verify(两种图功能是否一致)的报告

7.数字设计后端

数字后端设计又称物理设计,将网表格式的文本转化为一个个有物理大小和位置的单元、连线,并且在实现过程中要满足面积、性能、功耗的要求

 其中

floorplan:将design导入后端工具后检查输入是否缺少或有无错误,确保design正常initial后就可以调整floorplan,目的是确定design的大小、出pin的位置以及所有macro(宏单元)的摆放

placement:将std cell 放入core area的过程,并且满足congestion和timing的要求,简单来说可以分为两步:global和detail pllace:global不考虑cell放的位置是否legal,detail place会将cell放到附近legal的位置上,在place的时候为了得到更好timing的结果会将关键路径进行逻辑重组,删掉buffer trees

preCTS:发生在place之后CTS之前,对setup timing进一步优化,只优化setup是因为clock tree还没做,所有的clock都是ideal的

CTS:芯片中的始终网络要驱动电路中所有的时序单元,因此时钟源端门负载很多,其负载延时很大且不平衡,因此需要插入缓冲器减小负载。时钟网络及其上的缓冲器构成了时钟树

Route:CTS之后整个芯片的大体结构已定,需要信号线通过金属连接起来,绕线过程主要完成以下几个目标:考虑DRC和LVS、绕线完成后不会有DRC和LVS的violations、绕线过程不会导致timing变差、考虑DFM(集成电路可制造性设计),如multi-cut via(互连线通孔)、线宽、线距

8.时序仿真

与功能仿真类似,只是将RTL代码替换为网表,然后加载SDF文件和工艺库模型,目的在于观察芯片在延迟等近似实际工作条件下是否还能正常工作

 

四、课程参考书目

 

标签:仿真,芯片,RTL,时序,概述,timing,设计
From: https://www.cnblogs.com/liwilling/p/18226302

相关文章

  • 【MATLAB】概述1
    非~注释%定义>>数组赋值赋值:>>x=1函数数组x=[x1,x2]行向量(,or)x=[x1;x2]列向量x.'转置等间隔向量1-10向量:>>x=linspace(1,10,10)矩阵矩阵:>>A=[1,2,3;4,5,6;7,8,9]x=A(:)转置行列:>>size(C)查看矩阵的行列数D=A+BC=A*BorA.*D访问数......
  • 01Linux以及操作系统概述
    课程目标1.了解现代操作系统的整体构成及发展历史2.了解Linux操作系统及其分支版本3.直观上理解服务器端与桌面端版本的区别课程实验1.通过对CentOS和Ubuntu的演示,直观理解Linux与Windows的异同课堂引入本章内容主要为大家详细讲解Linux操作系统(以下简称Linux)的基本情......
  • 现场总线与工业以太网概述
    一、引言随着工业自动化水平的不断提高,现场总线与工业以太网技术在现代工业生产中扮演着越来越重要的角色。它们为工业自动化系统提供了高效、可靠的数据传输手段,实现了设备之间的信息共享和互操作。本文将对现场总线与工业以太网进行概述,探讨它们的特点、应用及发展趋势。二......
  • 《计算机网络微课堂》实验课-概述
    纸上觉来终觉浅,绝知此事要躬行。‍课程概述之前讲了下理论课,接下来讲讲实验课。实验也是非常重要的,在我读大学的时候,每个专业课都会配套一门实验课,通过自己动手才能更加深入理解之前讲过的理论。配套课程视频地址:https://www.bilibili.com/video/BV1At411f7hJ‍课程大纲共......
  • 半导体Wafer Map-“Ink-Less Format“概述
    在半导体行业中,"Ink-LessFormat"(无墨格式)通常指的是一种不依赖于传统标记或墨水系统来标识晶圆片(Wafer)上芯片(Die)的测试和分类方法。这种方法可能涉及到使用激光标记、电子标记或其他非墨水的标识技术。在设计WaferMap软件时,实现Ink-LessFormat的业务需要考虑以下几个关键方......
  • uoj概述
    一、基本工作原理UOJ主要由两部分组成:网页端和测评端。顾名思义,网页端就是用来通过网页与用户交互的,测评端则是在用户发出测评请求时负责测评并将结果发送给网页端的。网页端什么是网页端?顾名思义,就是管网页的部分。网页端又分为网页前端和网页后端。所谓网页前端,就是你打开浏......
  • flutter - [01] Dart概述
    题记部分 一、什么是dartdart是由谷歌开发的计算机编程语言,可以被用于web、服务器、移动应用和物联网等领域的开发dart诞生于2011年,号称要取代JavaScript。但是过去的几年中一直不温不火,直到Flutter出现后,被人们重新重视。要学习Flutter,必须首先得学习Dart。dart官网:htt......
  • 数据仓库应该用什么方案——数据仓库实施方案概述
    数据仓库的设计和实施是一个复杂的过程,通常需要根据具体的企业需求和资源来确定最佳的方案。以下是一个详细的数据仓库实施方案概述,但请注意,由于数据仓库的具体实现细节可能因技术栈、业务需求和数据源的不同而有所变化,因此我无法直接提供完整的代码示例。1.需求分析明确业务......
  • SparkSQL概述
    为了给熟悉RDBMS(关系数据库管理系统)但又不理解MapReduce的技术人员提供快速上手的工具,hive应运而生,它是运行在Hadoop上的SQL-on-hadoop工具;但是MapReduce计算过程中大量的中间磁盘落地过程消耗了大量的I/O,运行效率低;sparksql则是采用内存存储可以减少大量的中间......
  • Java 异常概述
    Java异常概述程序中的异常异常:指的是程序在执行过程中,出现的非正常情况,如果不处理最终会导致JVM的非正常停止。异常指的并不是语法错误和逻辑错误。语法错误,则不会产生字节码文件,不能正常运行代码逻辑错误,则仅仅是不能得到想要的结果Java异常抛出机制​Java中把......