TWI783309B - 電路設計方法和相關電路 - Google Patents

電路設計方法和相關電路 Download PDF

Info

Publication number
TWI783309B
TWI783309B TW109141369A TW109141369A TWI783309B TW I783309 B TWI783309 B TW I783309B TW 109141369 A TW109141369 A TW 109141369A TW 109141369 A TW109141369 A TW 109141369A TW I783309 B TWI783309 B TW I783309B
Authority
TW
Taiwan
Prior art keywords
circuit
attack detection
detection circuits
flip
flop
Prior art date
Application number
TW109141369A
Other languages
English (en)
Other versions
TW202221550A (zh
Inventor
吳宗叡
Original Assignee
瑞昱半導體股份有限公司
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 瑞昱半導體股份有限公司 filed Critical 瑞昱半導體股份有限公司
Priority to TW109141369A priority Critical patent/TWI783309B/zh
Priority to US17/531,759 priority patent/US11914706B2/en
Publication of TW202221550A publication Critical patent/TW202221550A/zh
Application granted granted Critical
Publication of TWI783309B publication Critical patent/TWI783309B/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/55Detecting local intrusion or implementing counter-measures
    • G06F21/554Detecting local intrusion or implementing counter-measures involving event detection and direct action

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Semiconductor Integrated Circuits (AREA)
  • Electronic Switches (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本申請提出一種電路的設計方法及相關電路,該電路設計方法用來產生一電路,該方法包括:在特定電路單元的周圍設置多個攻擊偵測電路,其中該特定電路單元位於該電路中;依據該些攻擊偵測電路的數量決定該電路所需的多個備用晶胞的數量;以及依據該些備用晶胞的數量將該些備用晶胞擺放於該電路中。

Description

電路設計方法和相關電路
本申請內容係關於電路設計方法,尤指一種在有攻擊偵測電路的情況下擺放備用晶胞的方法和相關電路。
為了防止晶片受到駭客攻擊,在晶片內部會設置許多攻擊偵測電路,攻擊偵測電路的數量越多,越能提供足夠的保護,但佔用的面積也越大,造成成本的上升。因此,如何在不增加成本的情況下提供晶片相同程度的保護,已成為本領域亟需解決的問題。
本申請揭露一種電路設計方法,用來產生一電路,該方法包括:在特定電路單元的周圍設置多個攻擊偵測電路,其中該特定電路單元位於該電路中;依據該些攻擊偵測電路的數量決定該電路所需的多個備用晶胞的數量;以及依據該些備用晶胞的數量將該些備用晶胞擺放於該電路中。
本申請揭露一種電路,包括:特定電路單元;多個攻擊偵測電路,設置於該特定電路單元的周圍;以及多個備用晶胞,其中該些備用晶胞的數量是依據該些攻擊偵測電路的數量決定。
上述電路設計方法和相關電路可降低備用晶胞,因此節省 晶片的面積。
100:電路
102:特定電路單元
104:攻擊偵測電路
202:備用晶胞
1042:正反器
1044:判斷電路
402、404、502、504、506:元件
508:多工器
圖1中繪示了電路的佈局圖的示意圖。
圖2為本申請的電路的實施例的示意圖。
圖3為攻擊偵測電路的實施例的示意圖。
圖4為利用攻擊偵測電路進行ECO的第一實施例的示意圖。
圖5為利用攻擊偵測電路進行ECO的第二實施例的示意圖。
本申請提出一種電路的設計方法,其步驟說明於圖1~2及4~5。在圖1中繪示了電路100的佈局圖的示意圖。電路100包含了特定電路單元102,特定電路單元102是需要被保護的電路,例如特定電路單元102是加解密電路。為了防止駭客將電路100的封裝打開後以探針從外界改變或存取特定電路單元102的資料,可以在電路100中設置多個攻擊偵測電路104,這樣一來,當駭客攻擊改變了任何一個攻擊偵測電路104,便會被偵測到。攻擊偵測電路104的數量越多,越容易偵測到駭客的攻擊,然為成本考量,攻擊偵測電路104仍須謹慎配置,一種配置方式是儘量將攻擊偵測電路104放置在特定電路單元102的周圍,如圖1所示。在本實施例中,攻擊偵測電路104等距地圍繞特定電路單元102,但本申請不以此為限。
接着,電路100中還會加入多個備用晶胞(spare cell)202,如圖2所示,其目的在於當電路100製作成晶片後,當發現設計上的錯誤或想改變設計時,能夠利用多個備用晶胞202中的一部分並搭配改變 繞線以完成設計變更,即工程變更指令(Engineering Change Order,ECO)。
攻擊偵測電路104和備用晶胞202同屬預防性的設計,本申請結合兩者以降低電路100的面積。一般來說,晶片中備用晶胞會均勻地設置,且數量會依照該晶片的面積或該晶片中的總晶胞數而定,例如將面積或總晶胞數乘上固定比例,因此面積越大或總晶胞數越多,所設置的備用晶胞202數量也越多。本申請將攻擊偵測電路104視為可在需要時被當作備用晶胞202來使用,例如攻擊偵測電路104中的各種晶胞可在需要時被當作備用晶胞202來使用,因此,在圖2中設置備用晶胞202時,會依據攻擊偵測電路104的數量和位置來決定電路100所需的備用晶胞202的數量和位置。具體來說,要決定實際所需設置的備用晶胞202的數量前,可以先依照電路100的面積及/或電路100中的總晶胞數(例如電路100中不含攻擊偵測電路104和備用晶胞202的所有晶胞的數量)來決定原本應該需要的備用晶胞202的數量N1,由於本申請中攻擊偵測電路104可在需要時被當作備用晶胞使用,因此實際上在決定備用晶胞202的數量N2時,會依據攻擊偵測電路104的數量N3決定數量N2。本申請中數量N2一定會少於數量N1,因此可以減少電路100的面積以降低成本。
舉例來說,假設圖2中原本應該需要的備用晶胞202的數量N1為30,但由於部分區域(即特定電路單元102的周圍區域)已被數量N3為10個的攻擊偵測電路104的範圍涵蓋,表示該些區域需要進行ECO時可以就近使用攻擊偵測電路104,因此該些區域不需再重複設置備用晶胞,所以只需在其他未被攻擊偵測電路104的範圍涵蓋的區域設置備用晶胞202即可。在本實施例中,可以將數量N1減去數量N3即可得到實際所 需再設置的備用晶胞202的數量N2為20。只需20個備用晶胞202搭配10個攻擊偵測電路104即可符合ECO的需求,較原本應該需要的備用晶胞202的數量30,節省了10個備用晶胞202。
圖3為攻擊偵測電路104的實施例的示意圖。每一攻擊偵測電路104都不會耦接至特定電路單元102。每一攻擊偵測電路104中的正反器1042的資料輸入端D耦接至輸出端Q,當電路100操作在正常狀態時,正反器1042會在重置後保持在特定電平,例如低邏輯電平(1'b0)或高邏輯電平(1'b1),判斷電路1044耦接至正反器1042,用來判斷正反器1042的電平受是否保持在該特定電平。當判斷電路1044發現正反器1042的電平轉變為不同於該特定電平時,即判定電路100受到駭客的物理性侵入而誤觸正反器1042並改變該特定電平,判斷電路1044可以對應地通知電路100所在的系統的上層,由該上層來控制電路100進入非正常狀態,或直接通過電路100中的控制電路(未繪示於圖中)來使電路100進入非正常狀態。應注意的是,圖3僅為示意,攻擊偵測電路104的實施方式不以此為限,只要可達到相同或相似的功能即可。
圖2中的電路100可以被據以實現為晶片,該晶片在測試或實際使用時,可能會發現電路100當初設計時有設計上的瑕疵,或想要增加新的功能時,可對電路100進行ECO。若需要改動的電路位於某一攻擊偵測電路104附近,便可利用該某一攻擊偵測電路104進行ECO。當需要改動的電路位於某一備用晶胞202附近時,便可利用該某一備用晶胞202進行ECO。或可同時利用一個或多個攻擊偵測電路104及一個或多個備用晶胞202進行ECO。
圖4為利用攻擊偵測電路104進行ECO的第一實施例的示意 圖。在圖4中,需要使用正反器1042來幫助修改電路100,其方式為先將正反器1042和判斷電路1044之間的連接線斷開,再將正反器1042的資料輸入端D和輸出端Q之間的連接線斷開,此時正反器1042的資料輸入端D和輸出端Q即可依需求通過新增的連接線分別連接至電路100中的其他元件402和404。應注意的是,圖4僅為範例,在某些實施例中,依據所需要的設計變化方式,亦可能需要將正反器1042和重置信號RST及時脈輸入信號CLK斷開並另外連接到其他元件。
圖5為利用攻擊偵測電路104進行ECO的第二實施例的示意圖。在圖5中,需要使用判斷電路1044中的某種元件(例如多工器508)來幫助修改電路100,其方式為先將多工器508的第一輸入端、第二輸入端及輸出端和原本其所連接的元件之間的連接線斷開,再依需求通過新增的連接線來將多工器508的第一輸入端、第二輸入端及輸出端分別連接至電路100中的其他元件502、504和506。應注意的是,圖5僅為範例,實際上可以利用判斷電路1044中的任何元件來進行ECO。
上文的敘述簡要地提出了本申請某些實施例之特徵,而使得本申請所屬技術領域具有通常知識者能夠更全面地理解本申請內容的多種態樣。本申請所屬技術領域具有通常知識者當可明瞭,其可輕易地利用本申請內容作為基礎,來設計或更動其他製程與結構,以實現與此處該之實施方式相同的目的和/或達到相同的優點。應瞭解到,在本申請之方法流程圖中所提及的步驟,除特別敘明其順序者外,均可依實際需要調整其前後順序,甚至可同時或部分同時執行。此外,上述各個模組或方法步驟,可依據設計者的需求,藉由硬體、軟體或是韌體來實現。本申請所屬技術領域具有通常知識者應當明白,這些均等的實施方式仍屬於本申請內 容之精神與範圍,且其可進行各種變更、替代與更動,而不會悖離本申請內容之精神與範圍。
100:電路
102:特定電路單元
104:攻擊偵測電路
202:備用晶胞

Claims (10)

  1. 一種電路設計方法,用來產生一電路,該方法包括:在特定電路單元的周圍設置多個攻擊偵測電路,其中該特定電路單元位於該電路中;依據該電路在不含有該些攻擊偵測電路的情況下所需的多個備用晶胞的數量,以及該些攻擊偵測電路的數量,來共同決定該電路在含有該些攻擊偵測電路的情況下所需的該些備用晶胞的數量;以及依據該電路在含有該些攻擊偵測電路的情況下所需的該些備用晶胞的數量,以及該些攻擊偵測電路的位置,將該些備用晶胞設置於該電路中。
  2. 如請求項1的電路設計方法,其中該些攻擊偵測電路不耦接至該特定電路單元。
  3. 如請求項2的電路設計方法,其中該些攻擊偵測電路中的每一個包括正反器及判斷電路電連接至該正反器。
  4. 如請求項3的電路設計方法,另包括:使該些攻擊偵測電路的其中之一之該正反器和該判斷電路之間的連接斷開。
  5. 如請求項4的電路設計方法,另包括: 將該些攻擊偵測電路之該其中之一之該正反器電連接至該電路中的第一元件,其中該第一元件不屬於該些攻擊偵測電路之該其中之一之該判斷電路。
  6. 如請求項4的電路設計方法,另包括:將該些攻擊偵測電路之該其中之一之該判斷電路電連接至該電路中的第二元件,其中該第二元件並非該些攻擊偵測電路之該其中之一之該正反器。
  7. 一種電路,包括:特定電路單元;多個攻擊偵測電路,設置於該特定電路單元的周圍;以及多個備用晶胞,其中在含有該些攻擊偵測電路的情況下所需的該些備用晶胞的數量是依據該電路在不含有該些攻擊偵測電路的情況下所需的該些備用晶胞的數量,以及該些攻擊偵測電路的數量共同決定。
  8. 如請求項7的電路,其中該些攻擊偵測電路不耦接至該特定電路單元。
  9. 如請求項8的電路,其中該些攻擊偵測電路中的每一個包括正反器及對應該正反器的判斷電路電連接至該正反器。
  10. 如請求項9的電路,其中各攻擊偵測電路之該正反器在正常狀態下被保持在特定電平。
TW109141369A 2020-11-25 2020-11-25 電路設計方法和相關電路 TWI783309B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW109141369A TWI783309B (zh) 2020-11-25 2020-11-25 電路設計方法和相關電路
US17/531,759 US11914706B2 (en) 2020-11-25 2021-11-21 Circuit design method and associated circuit

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW109141369A TWI783309B (zh) 2020-11-25 2020-11-25 電路設計方法和相關電路

Publications (2)

Publication Number Publication Date
TW202221550A TW202221550A (zh) 2022-06-01
TWI783309B true TWI783309B (zh) 2022-11-11

Family

ID=81658328

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109141369A TWI783309B (zh) 2020-11-25 2020-11-25 電路設計方法和相關電路

Country Status (2)

Country Link
US (1) US11914706B2 (zh)
TW (1) TWI783309B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114564761A (zh) * 2020-11-27 2022-05-31 瑞昱半导体股份有限公司 电路设计方法和相关电路

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200629068A (en) * 2004-09-10 2006-08-16 Ibm An integrated circuit chip for encryption and decryption having a secure mechanism for programming ON-chip hardware
TW200951758A (en) * 2008-03-07 2009-12-16 Qualcomm Inc Method and apparatus for detecting unauthorized access to a computing device and securely communicating information about such unauthorized access
TW201105034A (en) * 2009-07-24 2011-02-01 Ene Technology Inc Integrated circuit for reducing engineering change order cost and method thereof
TW201333741A (zh) * 2011-11-07 2013-08-16 Advance Co Ltd 安全盒
US20190036906A1 (en) * 2017-07-28 2019-01-31 SmartAxiom, Inc. System and method for iot security
US20190132115A1 (en) * 2017-09-26 2019-05-02 Intel Corporation Techniques for preventing memory timing attacks
TW202026929A (zh) * 2019-01-06 2020-07-16 新唐科技股份有限公司 受保護系統及其保護方法

Family Cites Families (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI301631B (en) * 2006-07-21 2008-10-01 Via Tech Inc Integrated circuit with spare cells
US8308819B2 (en) * 2006-12-19 2012-11-13 Pitney Bowes Inc. Method for detecting the removal of a processing unit from a printed circuit board
US8732523B2 (en) * 2011-10-24 2014-05-20 Arm Limited Data processing apparatus and method for analysing transient faults occurring within storage elements of the data processing apparatus
FR2982392B1 (fr) * 2011-11-04 2013-12-20 Ingenico Sa Procede et dispositif de gestion d'une matrice de touches, avec protection contre un dispositif espion actif, produit programme d'ordinateur et moyen de stockage correspondants.
KR102419644B1 (ko) * 2015-10-26 2022-07-11 삼성전자주식회사 Eco 셀, 그것의 레이아웃 및 eco 셀을 포함하는 집적 회로
US10303878B2 (en) * 2016-01-22 2019-05-28 Yu-Liang Wu Methods and apparatus for automatic detection and elimination of functional hardware trojans in IC designs
US10824376B2 (en) * 2017-12-08 2020-11-03 Sandisk Technologies Llc Microcontroller architecture for non-volatile memory
US11068589B2 (en) * 2017-12-22 2021-07-20 The Boeing Company Interference detecting ring oscillators
US11276648B2 (en) * 2018-07-31 2022-03-15 Nvidia Corporation Protecting chips from electromagnetic pulse attacks using an antenna
US11222884B2 (en) * 2018-11-28 2022-01-11 Taiwan Semiconductor Manufacturing Co., Ltd. Layout design methodology for stacked devices
US11321457B2 (en) * 2019-09-16 2022-05-03 Nuvoton Technology Corporation Data-sampling integrity check by sampling using flip-flops with relative delay
US11585853B2 (en) * 2019-11-21 2023-02-21 Siemens Industry Software Inc. Trajectory-optimized test pattern generation for built-in self-test

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200629068A (en) * 2004-09-10 2006-08-16 Ibm An integrated circuit chip for encryption and decryption having a secure mechanism for programming ON-chip hardware
TW200951758A (en) * 2008-03-07 2009-12-16 Qualcomm Inc Method and apparatus for detecting unauthorized access to a computing device and securely communicating information about such unauthorized access
TW201105034A (en) * 2009-07-24 2011-02-01 Ene Technology Inc Integrated circuit for reducing engineering change order cost and method thereof
TW201333741A (zh) * 2011-11-07 2013-08-16 Advance Co Ltd 安全盒
US20190036906A1 (en) * 2017-07-28 2019-01-31 SmartAxiom, Inc. System and method for iot security
US20190132115A1 (en) * 2017-09-26 2019-05-02 Intel Corporation Techniques for preventing memory timing attacks
TW202026929A (zh) * 2019-01-06 2020-07-16 新唐科技股份有限公司 受保護系統及其保護方法

Also Published As

Publication number Publication date
TW202221550A (zh) 2022-06-01
US11914706B2 (en) 2024-02-27
US20220164439A1 (en) 2022-05-26

Similar Documents

Publication Publication Date Title
US11686771B2 (en) Chip, chip testing method and electronic device
US6639454B2 (en) Multiple circuit blocks with interblock control and power conservation
US10943047B2 (en) Circuit design method and associated computer program product
TWI783309B (zh) 電路設計方法和相關電路
KR101697446B1 (ko) 임베딩된 코드에 대한 보호 스킴
US9304163B2 (en) Methodology for testing integrated circuits
US11411749B2 (en) System and method for performing netlist obfuscation for a semiconductor device
US20090079439A1 (en) Efuse system and testing method thereof
US7208934B2 (en) Apparatus for identification of locations of a circuit within an integrated circuit having low speed performance
CN114564761A (zh) 电路设计方法和相关电路
CN213659588U (zh) 一种防信息泄密电路和pos机
US7089471B2 (en) Scan testing mode control of gated clock signals for flip-flops
US11334409B2 (en) Method and system for fault collection and reaction in system-on-chip
CN104216857B (zh) 多工切换装置及其切换方法
JP2000346905A (ja) 半導体装置およびそのテスト方法
CN115699596A (zh) 用于再驱动器的均衡器设置
US8384468B2 (en) Multi-supply voltage compatible I/O ring
US9404968B1 (en) System and methods for debug connectivity discovery
JP6599813B2 (ja) 半導体集積回路及び半導体集積回路の設計方法
US7861197B2 (en) Method of verifying design of logic circuit
TWI701566B (zh) 電路設計方法及相關的電腦程式產品
CN100501997C (zh) 半导体器件
JP2013179164A (ja) 半導体集積回路、半導体装置および半導体集積回路の設計方法
US7716544B2 (en) Path data transmission unit
CN108804144A (zh) 操作系统启动的控制方法/系统、存储介质及电子设备