CN108008275B - 一种具备故障诊断的***级芯片生产方法 - Google Patents
一种具备故障诊断的***级芯片生产方法 Download PDFInfo
- Publication number
- CN108008275B CN108008275B CN201711160758.1A CN201711160758A CN108008275B CN 108008275 B CN108008275 B CN 108008275B CN 201711160758 A CN201711160758 A CN 201711160758A CN 108008275 B CN108008275 B CN 108008275B
- Authority
- CN
- China
- Prior art keywords
- test
- chip
- core circuit
- probe card
- composite structure
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G01—MEASURING; TESTING
- G01R—MEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
- G01R31/00—Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
- G01R31/26—Testing of individual semiconductor devices
- G01R31/2601—Apparatus or methods therefor
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Tests Of Electronic Circuits (AREA)
- Test And Diagnosis Of Digital Computers (AREA)
- Testing Or Measuring Of Semiconductors Or The Like (AREA)
Abstract
本发明提供一种具备故障诊断的***级芯片生产方法,包括:提供一预处理复合结构;于预处理复合结构上设置金属焊垫;于探针卡上设置多个金属凸点和多个寄存器,每个寄存器分别连接一金属凸点,多个寄存器构成边界扫描链,将探针卡压放在预处理复合结构上;利用一测试访问端口控制器完成故障诊断获取有故障的内核电路模块的相关信息后去除探针卡,连接多个内核电路模块;对预处理复合结构进行封装。本发明的有益效果:节省芯片面积,在制造过程中进行测试,使芯片制造完成测试提前发现,缩小了调查范围,实现在线定位制造缺陷,降低测试的复杂度、提高芯片测试效率、故障诊断覆盖率及故障诊断准确率。
Description
技术领域
本发明涉及集成电路技术领域,尤其涉及一种具备故障诊断的***级芯片生产方法。
背景技术
边界扫描技术的基本思想是在靠近芯片的输入输出管脚上增加一个移位寄存器单元。因为这些移位寄存器单元都分布在芯片的边界上(周围),所以被称为边界扫描寄存器(Boundary-Scan Register Cell,BSR)。
当芯片处于调试状态的时候,这些边界扫描寄存器可以将芯片和***的输入输出隔离开来。通过这些边界扫描寄存器单元,可以实现对芯片输入输出信号的观察和控制。对于芯片的输入管脚,可以通过与之相连的边界扫描寄存器单元把信号(数据)加载倒该管脚中去;对于芯片的输出管脚,也可以通过与之相连的边界扫描寄存器“捕获”(CAPTURE)该管脚上的输出信号。
在正常的运行状态下,这些边界扫描寄存器对芯片来说是透明的,所以正常的运行不会受到任何影响。这样,边界扫描寄存器提供了一个便捷的方式用以观测和控制所需要调试的芯片。另外,芯片输入输出管脚上的边界扫描(移位)寄存器单元可以相互连接起来,在芯片的周围形成一个边界扫描链(Boundary-Scan Chain)。一般的芯片都会提供几条独立的边界扫描链,用来实现完整的测试功能。边界扫描链可以串行的输入和输出,通过相应的时钟信号和控制信号,就可以方便的观察和控制处在调试状态下的芯片。
利用边界扫描链可以实现对芯片的输入输出进行观察和控制。对边界扫描链的控制主要是通过测试访问端口控制器(Test Access Port Controller,TAP Controller)来完成的。
现有技术中,例如在***级芯片(System-on-a-Chip,SoC)的生产过程中也需要利用边界扫描技术对芯片内部的所有IP核进行故障诊断,具体的,首先制备具有多个IP核(又名内核电路模块)的预处理复合结构,根据预先设计将多个IP核连接起来,然后将每个IP核对应的信号输入、输出接口分别连接一移位寄存器并进行封装,封装后的芯片上保留连接每个移位寄存器的金属焊垫,然后采用一探针卡,该探针卡上设计有与金属焊垫位置对应的金属凸点,将封装后的芯片上的金属焊垫与探针卡上的金属凸点对接,然后采用一自动测试设备(Automatic Test Equipmen,ATE)连接探针卡,自动测试设备作具有测试访问端口控制器,由自动测试设备控制完成对封装后的芯片的故障诊断。
但是,由于故障诊断的多个移位寄存器设置在芯片中,导致芯片体积较大;随着电路集成度的提高、电路的复杂度提高,进行故障诊断时的故障覆盖率越来越难提高,使用自动测试设备的测试成本也越来越高;同时,开发周期与故障定位也变成项目瓶颈。
发明内容
针对现有技术中存在的问题,本发明提供了一种具备故障诊断的***级芯片生产方法。本发明采用如下技术方案:
一种具备故障诊断的***级芯片生产方法,所述方法包括:
步骤S1、提供一硅片,于所述硅片上制备多个内核电路模块以构成一预处理复合结构,每个所述内核电路模块分别具有多个用于与相邻的所述内核电路模块进行信号传输的信号传输端口;
步骤S2、于所述预处理复合结构上设置对应每个所述信号传输端口的金属焊垫;
步骤S3、提供一探针卡,于所述探针卡上设置多个金属凸点,每个所述金属凸点分别与一唯一的所述金属焊垫位置对应,并于所述探针卡上设置多个寄存器,每个所述寄存器分别连接一所述金属凸点,多个所述寄存器相互连接构成关联于所述预处理复合结构的边界扫描链,将所述探针卡压放在所述预处理复合结构上以使每个所述金属焊垫分别与相应的金属凸点接触;
步骤S4、提供一测试访问端口控制器,所述测试访问控制端控制器连接所述探针卡上的每个所述寄存器,利用所述测试访问端口控制器对所述预处理复合结构进行故障诊断以获得有故障的所述内核电路模块的相关信息;
步骤S5、去除所述探针卡,根据预先设计连接所述多个内核电路模块;
步骤S6、对所述预处理复合结构进行封装,以得到***级芯片。
优选的,每个所述内核电路模块的分别具有多个所述信号传输端口。
优选的,每个所述内部逻辑模块分别连接多个寄存器。
优选的,所述测试访问端口控制器设置在所述探针卡上。
优选的,当所述测试访问端口控制器设置在所述探针卡上时,所述步骤S4包括:
步骤S41、于所述探针卡上设置一测试访问端口控制器,所述测试访问控制端控制器连接所述探针卡上的每个所述寄存器;
步骤S42、利用所述测试访问端口控制器对所述预处理复合结构进行故障诊断以获得有故障的所述内核电路模块的相关信息。
优选的,所述测试访问端口控制器设置在一自动测试设备。
优选的,所述测试访问端口控制器包括多个端口,所述多个端口包括:
测试数据输入,所述测试数据输入端用于向所述内核电路模块输入测试信号;
侧试数据输出,所述侧试数据输出用于接收所述内核电路模块输出的测试结果信号;
测试模式选择输入端,所述测试模式选择输入端用于向所述内核电路模块输入测试模式信号;
测试时钟输入端,所述测试时钟输入端用于向所述内核电路模块输入时钟信号;
测试复位输入端,所述测试复位输入端用于向所述内核电路模块输入复位信号。
优选的,所述步骤S6包括:
步骤S61、于所述预处理复合结构上沉积一金属层,以电性连接所述预处理复合结构上的所有所述内核电路模块的信号输入端口和信号输出端口;
步骤S62、采用塑封体包覆所述预处理复合结构,以完成封装得到***级芯片。
本发明的有益效果:通过将包括多个寄存器和多个金属凸点的边界扫描电路设置在探针卡上,由于可测性的边界扫描电路在探针卡上,因此可以节省芯片面积;
直接从芯片内部引出作为测试节点的金属焊垫、采用扫描链结构,由于在制造过程中进行测试,使芯片制造完成测试提前发现,缩小了调查范围,实现在线定位制造缺陷,可以实现对芯片内部的测试,提升芯片调试能力,且由于将大的产品分解为各个小的内核电路模块分别测试,可以大大降低测试的复杂度、提高芯片测试效率、故障诊断覆盖率及故障诊断准确率。
附图说明
图1为本发明的一种优选实施例中,具备故障诊断的***级芯片生产方法的流程图;
图2为本发明的一种优选实施例中,步骤S4-S6的流程图;
图3为本发明的一种优选实施例中,步骤S6的流程图;
图4为本发明的一种优选的实施例中,标准边界扫描示意图;
图5为本发明的一种优选的实施例中,边界扫描数据传送示意图;
图6为本发明的一种优选的实施例中,故障诊断示意图;
图7为本发明的一种优选的实施例中,封装后的***级芯片示意图。
具体实施方式
需要说明的是,在不冲突的情况下,下述技术方案,技术特征之间可以相互组合。
下面结合附图对本发明的具体实施方式作进一步的说明:
如图1所示,一种具备故障诊断的***级芯片生产方法,上述方法包括:
步骤S1、提供一硅片,于上述硅片上制备多个内核电路模块1以构成一预处理复合结构5,每个上述内核电路模块1分别具有多个用于与相邻的上述内核电路模块1进行信号传输的信号传输端口;
步骤S2、于上述预处理复合结构5上设置对应每个上述信号传输端口的金属焊垫7;
步骤S3、提供一探针卡6,于上述探针卡6上设置多个金属凸点8,每个上述金属凸点8分别与一唯一的上述金属焊垫7位置对应,并于上述探针卡6上设置多个寄存器2,每个上述寄存器2分别连接一上述金属凸点8,多个上述寄存器2相互连接构成关联于上述预处理复合结构5的边界扫描链3,将上述探针卡6压放在上述预处理复合结构5上以使每个上述金属焊垫7分别与相应的金属凸点8接触,通过在预处理复合结构5中长出几微米到几十微米的BUMP小球(金属焊垫7)作为探针卡6的探针,通过弹簧将探针卡6压在芯片(预处理复合结构5)表面;
步骤S4、提供一测试访问端口控制器,上述测试访问控制端控制器连接上述探针卡6上的每个上述寄存器2,利用上述测试访问端口控制器对上述预处理复合结构5进行故障诊断以获得有故障的上述内核电路模块1的相关信息;步骤S5、去除上述探针卡6,根据预先设计连接上述多个内核电路模块1;
步骤S6、对上述预处理复合结构5进行封装,以得到***级芯片。
在本实施例中,通过将包括多个寄存器2和多个金属凸点8的边界扫描电路设置在探针卡6上,由于可测性的边界扫描电路在探针卡6上,因此可以节省芯片面积;
直接从芯片内部引出作为测试节点的金属焊垫7、采用扫描链结构,由于在制造过程中进行测试,使芯片制造完成测试提前发现,缩小了调查范围,实现在线定位制造缺陷,可以实现对芯片内部的测试,提升芯片调试能力,且由于将大的产品分解为各个小的内核电路模块1分别测试,可以大大降低测试的复杂度、提高芯片测试效率、故障诊断覆盖率及故障诊断准确率。
较佳的实施例中,上述寄存器2为移位寄存器2。
较佳的实施例中,上述测试访问端口控制器设置在上述探针卡6上。
在本实施例中,测试访问端口控制器和寄存器2均集成于探针卡6上。
较佳的实施例中,当上述测试访问端口控制器设置在上述探针卡6上时,上述步骤S4包括:
步骤S41、于上述探针卡6上设置一测试访问端口控制器,上述测试访问控制端控制器连接上述探针卡6上的每个上述寄存器2;
步骤S42、利用上述测试访问端口控制器对上述预处理复合结构5进行故障诊断以获得有故障的上述内核电路模块1的相关信息.
在本实施例中,测试访问端口控制器连接上述探针卡6上的每个上述寄存器2,从而控制边界扫描链3,通过发送扫描向量,可以实现对芯片内部模块的测试定位与筛选。其中,通过发送扫描向量进行故障诊断部分为现有技术,进行故障诊断时,可根据实际需要将边界扫描链3的个数设置成一个或多个。
较佳的实施例中,上述测试访问端口控制器设置在一自动测试设备。
在本实施例中,测试访问端口控制器也设置在原有的自动测试设备上。
较佳的实施例中,上述步骤S6包括:
步骤S61、于上述预处理复合结构5上沉积一金属层,以电性连接上述预处理复合结构5上的所有上述内核电路模块1的信号输入端口和信号输出端口;
步骤S62、采用塑封体包覆上述预处理复合结构5,以完成封装得到***级芯片。
较佳的实施例中,上述测试访问端口控制器包括多个端口,上述多个端口包括:
测试数据输入TDI,上述测试数据输入端用于向上述内核电路模块1输入测试信号;
侧试数据输出TDO,上述侧试数据输出用于接收上述内核电路模块1输出的测试结果信号;
测试模式选择输入端TMS,上述测试模式选择输入端用于向上述内核电路模块1输入测试模式信号;
测试时钟输入端TCK,上述测试时钟输入端用于向上述内核电路模块1输入时钟信号;
测试复位输入端TRSTN*,上述测试复位输入端用于向上述内核电路模块1输入复位信号。
在本实施例中,如图4所示,为标准边界扫描示意图,其中,DIGITAL CORE为上述预处理复合结构5,其连接多个寄存器2(Byte Status Register,BSR)和测试访问端口控制器(Test Access Port Controller,TAP Controller)。
通过移位寄存器2将被测内核(内核电路模块1)输入输出口(信号传输端口)连接起来,内核电路模块1和信号传输端口在图4中未示出,通过测试对口即可串行对芯片内核进行测试。通过串行扫描输入可将内核的输入输出数据移送到边界扫描寄存器2(移位寄存器2)上,同时通过串行扫描输出将内核输出移送出来。
如图5所示,为边界扫描数据传送示意图,多个寄存器2相互连接构成边界扫描链3,通过输入串行扫描输入数据(Serial Scan Data In,SI)并接收串行扫描输出数据(Serial Scan Data Out,SO)完成故障诊断,其中,串行扫描输入数据即为测试信号,串行扫描输出数据即为测试结果信号。除了进行故障诊断,边界扫描链3也可以正常传输主输入数据(Primary Input Buffer,PI)和主输出数据(Primary Output Buffer,PO)。
如图6所示,为故障诊断示意图,探针卡6上设置多个金属凸点8,预处理复合结构5上设置多个金属焊垫7,将上述探针卡6压放在上述预处理复合结构5上以使每个上述金属焊垫7分别与相应的金属凸点8接触以完成故障诊断。具体的,在硅片上先制造内核电路模块1(core A、core B等IP核),然后通过探针卡6对core A、core B进行测试。测试完成后通过金属连线将各个内核电路模块1互联成一个完整的产品。测试过程只是做筛选,无法做修复。由于将大的产品分解为各个小的内核电路模块1测试,可以大大降低测试的复杂度。因此流程中的修复工作是没有的。
图7为本发明的一种优选的实施例中,封装后的***级芯片示意图,完成故障诊断后,去除探针卡6,于上述预处理复合结构5上沉积一金属层9,以电性连接上述预处理复合结构5上的所有上述内核电路模块1的信号输入端口和信号输出端口以对上述预处理复合结构5进行封装,以得到***级芯片。
通过说明和附图,给出了具体实施方式的特定结构的典型实施例,基于本发明精神,还可作其他的转换。尽管上述发明提出了现有的较佳实施例,然而,这些内容并不作为局限。
对于本领域的技术人员而言,阅读上述说明后,各种变化和修正无疑将显而易见。因此,所附的权利要求书应看作是涵盖本发明的真实意图和范围的全部变化和修正。在权利要求书范围内任何和所有等价的范围与内容,都应认为仍属本发明的意图和范围内。
Claims (6)
1.一种具备故障诊断的***级芯片生产方法,其特征在于,所述方法包括:
步骤S1、提供一硅片,于所述硅片上制备多个内核电路模块以构成一预处理复合结构,每个所述内核电路模块分别具有多个用于与相邻的所述内核电路模块进行信号传输的信号传输端口;
步骤S2、于所述预处理复合结构上设置对应每个所述信号传输端口的金属焊垫;
步骤S3、提供一探针卡,于所述探针卡上设置多个金属凸点,每个所述金属凸点分别与一唯一的所述金属焊垫位置对应,并于所述探针卡上设置多个寄存器,每个所述寄存器分别连接一所述金属凸点,多个所述寄存器相互连接构成关联于所述预处理复合结构的边界扫描链,将所述探针卡压放在所述预处理复合结构上以使每个所述金属焊垫分别与相应的所述金属凸点接触;
步骤S4、提供一测试访问端口控制器,所述测试访问端口控制器连接所述探针卡上的每个所述寄存器,利用所述测试访问端口控制器对所述预处理复合结构进行故障诊断以获得有故障的所述内核电路模块的相关信息;
步骤S5、去除所述探针卡,根据预先设计连接所述多个内核电路模块;
步骤S6、对所述预处理复合结构进行封装,以得到***级芯片。
2.根据权利要求1所述的***级芯片生产方法,其特征在于,所述寄存器为移位寄存器。
3.根据权利要求1所述的***级芯片生产方法,其特征在于,所述测试访问端口控制器设置在所述探针卡上。
4.根据权利要求1所述的***级芯片生产方法,其特征在于,所述测试访问端口控制器设置在一自动测试设备。
5.根据权利要求1所述的***级芯片生产方法,其特征在于,所述测试访问端口控制器包括多个端口,所述多个端口包括:
测试数据输入,所述测试数据输入端用于向所述内核电路模块输入测试信号;
侧试数据输出,所述侧试数据输出用于接收所述内核电路模块输出的测试结果信号;
测试模式选择输入端,所述测试模式选择输入端用于向所述内核电路模块输入测试模式信号;
测试时钟输入端,所述测试时钟输入端用于向所述内核电路模块输入时钟信号;
测试复位输入端,所述测试复位输入端用于向所述内核电路模块输入复位信号。
6.根据权利要求1所述的***级芯片生产方法,其特征在于,所述步骤S6包括:
步骤S61、于所述预处理复合结构上沉积一金属层,以电性连接所述预处理复合结构上的所有所述内核电路模块的信号输入端口和信号输出端口;
步骤S62、采用塑封体包覆所述预处理复合结构,以完成封装得到***级芯片。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711160758.1A CN108008275B (zh) | 2017-11-20 | 2017-11-20 | 一种具备故障诊断的***级芯片生产方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711160758.1A CN108008275B (zh) | 2017-11-20 | 2017-11-20 | 一种具备故障诊断的***级芯片生产方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108008275A CN108008275A (zh) | 2018-05-08 |
CN108008275B true CN108008275B (zh) | 2020-05-01 |
Family
ID=62052888
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711160758.1A Active CN108008275B (zh) | 2017-11-20 | 2017-11-20 | 一种具备故障诊断的***级芯片生产方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108008275B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112763898A (zh) * | 2020-12-22 | 2021-05-07 | 中国电子科技集团公司第五十八研究所 | 一种基于bsc单元特性的***级边界扫描链的集成设计方法 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02203547A (ja) * | 1989-02-01 | 1990-08-13 | Mitsubishi Electric Corp | 半導体測定装置 |
CN1278332A (zh) * | 1997-11-07 | 2000-12-27 | 爱特梅尔股份有限公司 | 具有地址相关指令的边界扫描*** |
CN1661385A (zh) * | 2004-02-26 | 2005-08-31 | 联想(北京)有限公司 | 一种jtag模块及应用该模块的调试方法 |
US7117413B2 (en) * | 2002-01-08 | 2006-10-03 | Korea Electronics Technology Institute | Wrapped core linking module for accessing system on chip test |
CN1979202A (zh) * | 2005-12-08 | 2007-06-13 | 上海华虹Nec电子有限公司 | 同步通讯芯片并行测试方法 |
CN101183139A (zh) * | 2007-11-02 | 2008-05-21 | 中兴通讯股份有限公司 | 一种基于jtag接口的单板及其设计方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001358293A (ja) * | 2000-06-12 | 2001-12-26 | Toshiba Corp | 半導体装置 |
-
2017
- 2017-11-20 CN CN201711160758.1A patent/CN108008275B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02203547A (ja) * | 1989-02-01 | 1990-08-13 | Mitsubishi Electric Corp | 半導体測定装置 |
CN1278332A (zh) * | 1997-11-07 | 2000-12-27 | 爱特梅尔股份有限公司 | 具有地址相关指令的边界扫描*** |
US7117413B2 (en) * | 2002-01-08 | 2006-10-03 | Korea Electronics Technology Institute | Wrapped core linking module for accessing system on chip test |
CN1661385A (zh) * | 2004-02-26 | 2005-08-31 | 联想(北京)有限公司 | 一种jtag模块及应用该模块的调试方法 |
CN1979202A (zh) * | 2005-12-08 | 2007-06-13 | 上海华虹Nec电子有限公司 | 同步通讯芯片并行测试方法 |
CN101183139A (zh) * | 2007-11-02 | 2008-05-21 | 中兴通讯股份有限公司 | 一种基于jtag接口的单板及其设计方法 |
Also Published As
Publication number | Publication date |
---|---|
CN108008275A (zh) | 2018-05-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101918782B1 (ko) | Tsv-기반 3d 스택 ic에 대한 테스트 액세스 아키텍쳐 | |
CA2421047C (en) | Method and apparatus for optimized parallel testing and access of electronic circuits | |
Zorian | A structured testability approach for multi-chip modules based on BIST and boundary-scan | |
US8773157B2 (en) | Test circuit for testing through-silicon-vias in 3D integrated circuits | |
US20130044554A1 (en) | Dram repair architecture for wide i/o dram based 2.5d/3d system chips | |
US20090072843A1 (en) | Method and apparatus for interrogating an electronic component | |
US10115643B2 (en) | Circuit and method for monolithic stacked integrated circuit testing | |
Marinissen et al. | A DfT architecture for 3D-SICs based on a standardizable die wrapper | |
CN102305907A (zh) | 多芯片封装结构的测试方法和*** | |
JP2011128159A (ja) | 信号測定方法及び装置 | |
JP2009502038A (ja) | システム・イン・パッケージの製造方法 | |
US8185788B2 (en) | Semiconductor device test system with test interface means | |
Hutner et al. | Special session: Test challenges in a chiplet marketplace | |
US6646461B2 (en) | Method and apparatus for testing semiconductor devices using improved testing sequence | |
CN102338848B (zh) | 用于半导体芯片的晶片级测试的方法和*** | |
CN108008275B (zh) | 一种具备故障诊断的***级芯片生产方法 | |
Wang et al. | At-speed interconnect testing and test-path optimization for 2.5 D ICs | |
US8860448B2 (en) | Test schemes and apparatus for passive interposers | |
US7805647B2 (en) | System and method for testing a plurality of circuits | |
Wang et al. | Post-bond Testing of the Silicon Interposer and Micro-bumps in 2.5 D ICs | |
KR20100076445A (ko) | 제이택을 지원하는 칩의 멀티사이트 테스트용 프로브 카드 | |
CN110717307A (zh) | 一种基于边界扫描电路的sip器件可测试性方法 | |
US6710616B1 (en) | Wafer level dynamic burn-in | |
US11293979B2 (en) | Method of and an arrangement for analyzing manufacturing defects of multi-chip modules made without known good die | |
CN115639463A (zh) | 一种基于边界扫描jtag测试*** |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |