芯片制造过程4光刻机
以下内容均取自哔哩哔哩up主@谈三圈
链接: 芯片制造详解04:光刻技术与基本流程|国产之路不容易
1.光刻原理
通过光掩膜、光刻机、光刻胶进行光刻
- 光掩膜是芯片的蓝图,是一张刻有集成电路板图的玻璃遮光板
- 光刻机就像一台纳米级的打印机,发光将光掩膜上的图形投射在硅片上
- 光刻胶则是能把光影化为现实的一种胶体,有正胶和负胶之分:正胶是一种见光死的材料,只要被特定波长的光照射就会疲软,继而能够被溶解清除;负胶则刚好相反。利用光刻胶的光敏性,我们就能用光来雕刻芯片。
刻蚀步骤:
- 在黑暗中给硅片涂一层光刻胶,再罩上光掩膜进行曝光,也就是让光线按照光掩膜上设计好的坑位通过,照在光刻胶上,这一部分的胶体就会疲软,随机被溶剂洗掉,而剩余坚挺的光刻胶,就成为了保护膜
- 接着只要用能腐蚀硅的溶剂,把没有光刻胶保护的坑位区域腐蚀掉一层
- 最后再把光刻胶保护膜清除,我们就在同一时间里,完成了大量深坑的精确雕刻工作。而这种光刻后对硅片定向做减法的腐蚀,就是刻蚀。
沉积步骤:
- 通入化学气体,在硅片上均匀生长出一层物质,此时没有被光刻胶保护的部位厚度增加
- 而长在光刻胶保护膜上的物质,会随着之后胶体的清除而一同清洗,相当于厚度不变。这种定向做加法就是沉积。
刻蚀和沉积都是芯片制程的重要工序,狭义上的光刻,刻的不是硅片,而是硅片上的这一层光刻胶,把刻好的光刻胶作为蓝图,再结合下一步的刻蚀或沉积步骤,才能对硅片进行雕刻加工,另外为了给半导体赋予电特性,我们还要在特定区域做离子注入,为此也得先进行光刻,把不想注入离子的区域用光刻胶贴膜保护,正因为每次刻蚀沉积和离子注入,几乎都需要光刻作为前提,所以在芯片制造的一切工序之中,光刻都是根基,往往占据整套工艺近一半的工时
和三分之一的成本
。在实际生产中,每做一次光刻至少要经过8个步骤,3次烘焙
2.光刻基本流程
1.清洁及表面处理
硅片清洁与表面预处理,光刻对于清洁度的要求远远超过最先进的手术室。
- 先湿法清洗,再用去离子水清洗,来去除吸附在硅片表面的污染物、上一道工序的残留物以及溶剂中的金属离子等杂志。
- 之后通入一种叫六甲基二硅胺烷的气体(HMDS),经过这种气体熏蒸后,硅片表面会被充分脱水,因为表面亲水羟基被置换成了疏水基,这样硅片就能更好地黏附光刻胶,这一步又称增黏处理
2.旋转涂胶
- 把过滤后的光刻胶滴在硅片中央,让硅片先高速转动把胶体摊开,再以较慢的速度旋转,让胶体厚度稳定。这个速度,大部分光刻胶都会被甩出去浪费掉,只留一层均匀的胶体,相当于给硅片贴了个膜
- 涂胶机器的转速控制和排风大小都非常讲究,因为光刻胶中一旦产生气泡,会影响后续工艺,造成过度刻蚀之类的问题;其次,光刻胶容易离心力在边缘处累积,这种堆积在边缘甚至流到背面的光刻胶滴会影响硅片在光刻机中的曝光。所以涂胶完成后,还要去边,也就是在硅片边缘喷涂溶剂,去掉边缘处一圈的光刻胶。
3. 前烘
曝光前的烘焙,又称前烘。
机械臂会把硅片拿出,放在烤箱或者热板上进行烘焙,目的是减少光刻胶中的溶剂含量,让其更加浓稠坚固,提高与硅片附着的稳定性。前烘一般只用100℃左右温度烤一分钟,光刻胶是不耐高温的。
4. 对准与曝光
接下来光刻机上场,对硅片进行曝光。
- 光掩膜、透镜组和硅片工作台会精密对准和调平。
- 光源放光
- 移动工件台让硅片有序曝光
以上步骤要花费10亿美元,却包含了许多人类科技巅峰之作。
- 比如透镜表面起伏不超过0.05纳米的蔡司透镜,是地球文明最接近三体水滴的得意之作;
- 比如对准,能同步对准和曝光的双工件台系统,是阿斯麦打败日本光刻机厂商的法宝之一;
- 比如光源,由40kw激光驱动的极紫外光(EUV)是把液态锡轰成等离子体时的光波。
5. 后烘
硅片从光刻机出来后,还要经历一道曝光后的烘焙,简称后烘。这一步的目的是通过加热让光刻胶中的光化学反应充分完成,可以弥补曝光强度不足的问题,同时还能减少光刻胶显影后,因为驻波效应产生的一圈圈纹路。
6.显影冲洗
后烘之后,把之前曝光的部分溶解清除,光掩膜上的图形就复现在了光刻胶上,这就是显影和冲洗。
- 先用去离子水润湿硅片
- 把显影液,一般是四甲基氢氧化铵的水溶液均匀喷淋在光刻胶表面,让光刻中被曝光的部分充分溶解
- 最后用去离子水冲走,假如是45nm以下的制程,因为尺寸太小,溶解残留物的比表面积过大,粘附力强,甩不掉冲不走,所以还要加喷氮气把他们吹走。
7. 坚膜烘焙
显影完成后,如果是湿法制程,还需要再烘焙一次,让保护膜更坚挺,更加顶得住刻蚀,又称坚膜烘焙,以此进一步减少光刻胶中的溶剂含量,防止多余的水分影响之后的湿法刻蚀
假如之后是等离子体刻蚀,也就是俗称的干法,这一步就可以省略。
8. 测量检查
最后用仪器测量光刻胶的膜厚、套刻精度以及光剑尺寸,像7nm、5nm这样制程的线宽缺陷,只能用电子扫描显微镜甚至原子力显微镜观察才行,光刻胶的分辨率必须达标,才能保证以此为蓝图的刻蚀、沉积或等离子体注入能够顺利进行
一张硅片要反复经过上千次这样的操作才能雕刻出数以亿计的电子器件及其对应的电路连接,最终成为我们手机里的一枚芯片。
3.国产替代
整个光刻流程所必须的光刻机、光刻胶、光掩膜的国产替代程度都很低,区别在于是基本依赖进口还是大部分依赖进口。
而涂胶、烘焙、显影轨道式一体机,价格在光刻机的1/20,在国内的芯片厂中,涂胶烘焙显影一体机基本被日本的迪恩士和东京电子所垄断,尤其是东京电子市占率超过90%。目前最先进的EUV制程,光刻机只有ASML能做,光刻胶涂布只有东京电子能做。
国产只有沈阳的芯源微,市占率4%左右,由于技术和精度限制,只能用于28nm以上制程。
相关文章:
芯片制造过程4光刻机
以下内容均取自哔哩哔哩up主谈三圈 链接: 芯片制造详解04:光刻技术与基本流程|国产之路不容易 1.光刻原理 通过光掩膜、光刻机、光刻胶进行光刻 光掩膜是芯片的蓝图,是一张刻有集成电路板图的玻璃遮光板光刻机就像一台纳米级的打印机&#…...

Nexus3 Repository代理pypi设置与应用
目录 1. 创建Blob库并指定路径 2. 创建pypi阿里镜像源 3. 创建pypi腾讯镜像源 4. 创建一个pypi组管理 5. 配置pip 6. 下载测试 扩展:配置好后无法下载解决思路。 Nexus 存储库中的 Blob 存储是指一种用于存储大量非结构化数据的技术。在 Nexus 存储库的上下文…...

PMP–知识卡片--燃起图
燃起图用两条曲线分别绘制随时间的推移、完成的工作量和总工作量的变化情况。它不仅能清晰地展示项目进度,还是对团队成员的一种激励形式。 使用燃起图可以更好地了解进度、范围变更和预期完成时间,它为所有相关方提供了更清晰的进度状态。 燃起图根据工…...

63 epoll服务器 (ET模式)
基于LT模式修改,并加入前面的应用层计算器,实现稍完整的服务器功能 1.修改tcp_socket.hpp,新增非阻塞读和非阻塞写接口 2.对于accept返回的new_sock加上EPOLLET这样的选项 注意:此代码暂时未考虑listen_sock ET的情况,…...
AI Agent
一,什么是AI Agent? AI Agent(人工智能代理)是一种能够自主执行任务和决策的智能系统。它通常具备感知环境、处理信息和采取行动的能力,能够模拟人类的思维和行为方式。 它可以是软件程序,也可以是嵌入式…...
select
select函数简介: select是Linux中常用的多路复用IO机制,它允许程序同时监控多个文件描述符(可以是套接字socket,也可以是普通文件)的读、写和异常事件。 #include <sys/select.h> #include <sys/time.h> …...

按照指定格式打印pprint()
【小白从小学Python、C、Java】 【考研初试复试毕业设计】 【Python基础AI数据分析】 按照指定格式打印 pprint() [太阳]选择题 根据给定的Python代码,哪个选项是正确的? from pprint import pprint data { name: A, age: 30, hobbies:…...

Study--Oracle-07-ASM常用维护操作(五)
一、ASM创建新的磁盘组 1、查看系统中可用的磁盘 set lines 150; col name for a35; col path for a35; select group_number,path, state, name, total_mb, free_mb from v$asm_disk; 2、磁盘组操作 创建磁盘组 create DISKGROUP DATADGV2 EXTERNAL REDUNDANCY DISK /dev…...

[Git][分支管理][上]详细讲解
目录 1.理解分支2.创建分支3.切换分支4.合并分支5.删除分支 1.理解分支 感性理解:分支可以理解为平行宇宙,但是在用户需要的时候,可以将两个平行宇宙合并,此时两个平行宇宙的效果将会"叠加"理性理解:每次提…...

C语言指针(1)
目录 一、内存和地址 1、生活中的例子 2、内存的关系 二、指针变量和地址 1、&符号,%p占位符 2、一个简单的指针代码。 3、理解指针 4、解引用操作符 5、指针变量的大小。 三、指针变量类型的意义 1、指针解引用的作用 2、指针指针 3、指针-指针 4…...
C语言中的指针与数组
C语言中的指针与数组是编程中非常基础且强大的概念,它们之间有着紧密的联系和相互转换的可能性。深入理解这两个概念对于编写高效、可维护的C程序至关重要。以下将详细探讨C语言中的指针与数组,包括它们的基本概念、关系、应用以及一些高级话题。 一、指…...
CentOS7.9升级OpenSSL1.1.1w
下载 https://www.openssl.org/source/old/1.1.1/index.html 安装依赖 yum install gcc libffi-devel zlib* openssl-devel libffi-devel zlib-devel bzip2-devel openssl-devel ncurses-devel sqlite-devel readline-devel tk-devel gcc perl make 解压 tar -zxvf openss…...
环境搭建:如何安装和使用 MySQL Connector/J——与 MySQL Community Server 的关系
环境搭建:如何安装和使用 MySQL Connector/J—— MySQL Community Server 的关系 在 Java 项目中,与 MySQL 数据库的交互需要使用 MySQL Connector/J 驱动。本文将介绍 MySQL Connector/J 的作用、安装方法以及与 MySQL Community Server 的关系…...

SAP 财务管理系统 —— 企业财务智能化的领航者
在当今数字化时代,企业财务管理的智能化已成为推动企业持续增长的关键因素。SAP 财务管理系统通过智能化技术,帮助财务部门提高收入、控制成本并降低财务风险,释放财务数字化转型的价值。财务 ERP 作为 SAP 的核心组成部分,将帮助…...

python通过pyautogui自动给微信聊天窗口发消息
使用py脚本自动给聊天窗口发消息 1.突然的自我2.编写脚本玩一把i.先获取窗口位置ii.模拟聊天iii.疗效不错呢 1.突然的自我 突然想到pyautogui可以做那么事情, 那么是不是可以模拟聊天呢,如果结合现在的大模型chatGPT一边问然后得到结果一边自动和别人聊…...
QML中的Date将时间戳和指定格式时间互转
在QML中,可以通过使用JavaScript来处理日期和时间的转换,其中包括将时间戳转换为指定格式的时间字符串,以及将时间字符串解析为时间戳的操作。 将时间戳转换为指定格式的时间字符串 在QML中,可以通过JavaScript的Date对象来处理…...
C++ new/delete 重载
operator new/delete 重载 语法格式 void *operator new(size_t); void operator delete(void *); void *operator new[](size_t); void operator delete[](void *);#include <iostream> using namespace std;class A { public:// 构造函数A(){// _x1;// _y2;// 在n…...
读取连接中文件流和页面展示base64编码的文件
读取连接中文件流和页面展示base64编码的文件 背景需求从接口处获取base64编码的字节流依赖java 代码 前端展示pdf图片 背景需求 我需要展示一个pdf 文件在页面上,但是我一直没办法将 pdf的下载链接用预览方式展示出来,于是打算讨个巧,直接给…...

【大模型从入门到精通4】openAI API 分类
这里写目录标题 分类理解 SYSTEM 和 USER 在 AI 对话中的角色System MessageUser Message工作原理示例分类示例更多分类示例理论问题理论 分类 理解 SYSTEM 和 USER 在 AI 对话中的角色 在分类任务中,通常需要向模型提供一个需要将其分类到预定义类别中的文本场景…...

仓颉 -- 标识符 , 变量以及数据类型详解
仓颉 – 标识符 , 变量以及数据类型 一. 标识符 1. 普通标识符 由数字 , 字母 , 下划线构成 – cangjie , cangjie_2024由英文字母开头,后接零至多个英文字母、数字或下划线。由一至多个下划线开头,后接一个英文字母,最后可接零至多个英文…...

stm32G473的flash模式是单bank还是双bank?
今天突然有人stm32G473的flash模式是单bank还是双bank?由于时间太久,我真忘记了。搜搜发现,还真有人和我一样。见下面的链接:https://shequ.stmicroelectronics.cn/forum.php?modviewthread&tid644563 根据STM32G4系列参考手…...
DockerHub与私有镜像仓库在容器化中的应用与管理
哈喽,大家好,我是左手python! Docker Hub的应用与管理 Docker Hub的基本概念与使用方法 Docker Hub是Docker官方提供的一个公共镜像仓库,用户可以在其中找到各种操作系统、软件和应用的镜像。开发者可以通过Docker Hub轻松获取所…...
【Java学习笔记】Arrays类
Arrays 类 1. 导入包:import java.util.Arrays 2. 常用方法一览表 方法描述Arrays.toString()返回数组的字符串形式Arrays.sort()排序(自然排序和定制排序)Arrays.binarySearch()通过二分搜索法进行查找(前提:数组是…...

大型活动交通拥堵治理的视觉算法应用
大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动(如演唱会、马拉松赛事、高考中考等)期间,城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例,暖城商圈曾因观众集中离场导致周边…...

页面渲染流程与性能优化
页面渲染流程与性能优化详解(完整版) 一、现代浏览器渲染流程(详细说明) 1. 构建DOM树 浏览器接收到HTML文档后,会逐步解析并构建DOM(Document Object Model)树。具体过程如下: (…...
【AI学习】三、AI算法中的向量
在人工智能(AI)算法中,向量(Vector)是一种将现实世界中的数据(如图像、文本、音频等)转化为计算机可处理的数值型特征表示的工具。它是连接人类认知(如语义、视觉特征)与…...
Swagger和OpenApi的前世今生
Swagger与OpenAPI的关系演进是API标准化进程中的重要篇章,二者共同塑造了现代RESTful API的开发范式。 本期就扒一扒其技术演进的关键节点与核心逻辑: 🔄 一、起源与初创期:Swagger的诞生(2010-2014) 核心…...
Typeerror: cannot read properties of undefined (reading ‘XXX‘)
最近需要在离线机器上运行软件,所以得把软件用docker打包起来,大部分功能都没问题,出了一个奇怪的事情。同样的代码,在本机上用vscode可以运行起来,但是打包之后在docker里出现了问题。使用的是dialog组件,…...

CVE-2020-17519源码分析与漏洞复现(Flink 任意文件读取)
漏洞概览 漏洞名称:Apache Flink REST API 任意文件读取漏洞CVE编号:CVE-2020-17519CVSS评分:7.5影响版本:Apache Flink 1.11.0、1.11.1、1.11.2修复版本:≥ 1.11.3 或 ≥ 1.12.0漏洞类型:路径遍历&#x…...

嵌入式学习笔记DAY33(网络编程——TCP)
一、网络架构 C/S (client/server 客户端/服务器):由客户端和服务器端两个部分组成。客户端通常是用户使用的应用程序,负责提供用户界面和交互逻辑 ,接收用户输入,向服务器发送请求,并展示服务…...