TWI808328B - 系統單晶片及控制方法 - Google Patents

系統單晶片及控制方法 Download PDF

Info

Publication number
TWI808328B
TWI808328B TW109120752A TW109120752A TWI808328B TW I808328 B TWI808328 B TW I808328B TW 109120752 A TW109120752 A TW 109120752A TW 109120752 A TW109120752 A TW 109120752A TW I808328 B TWI808328 B TW I808328B
Authority
TW
Taiwan
Prior art keywords
circuit
control circuit
output command
setting value
command
Prior art date
Application number
TW109120752A
Other languages
English (en)
Other versions
TW202201218A (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 TW109120752A priority Critical patent/TWI808328B/zh
Priority to CN202011578352.7A priority patent/CN113821472B/zh
Priority to US17/137,954 priority patent/US11372793B2/en
Publication of TW202201218A publication Critical patent/TW202201218A/zh
Priority to US17/845,544 priority patent/US11698880B2/en
Application granted granted Critical
Publication of TWI808328B publication Critical patent/TWI808328B/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7807System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1668Details of memory controller
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y10/00Economic sectors
    • G16Y10/75Information technology; Communication
    • GPHYSICS
    • G16INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR SPECIFIC APPLICATION FIELDS
    • G16YINFORMATION AND COMMUNICATION TECHNOLOGY SPECIALLY ADAPTED FOR THE INTERNET OF THINGS [IoT]
    • G16Y30/00IoT infrastructure
    • G16Y30/10Security thereof
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Business, Economics & Management (AREA)
  • Accounting & Taxation (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • General Business, Economics & Management (AREA)
  • Microelectronics & Electronic Packaging (AREA)
  • Storage Device Security (AREA)
  • Small-Scale Networks (AREA)
  • Measuring Or Testing Involving Enzymes Or Micro-Organisms (AREA)

Abstract

一種系統單晶片,包括一第一週邊電路、一第二週邊電路、一橋接控制電路以及一高階控制電路。橋接控制電路儲存一第一屬性設定值以及一第二屬性設定值,並判斷一輸出指令的屬性資訊是否符合第一或第二屬性設定值。當輸出指令的屬性資訊符合第一屬性設定值時,橋接控制電路提供輸出指令予第一週邊電路。當輸出指令的屬性資訊符合第二屬性設定值時,橋接控制電路提供輸出指令予第二週邊電路。高階控制電路儲存一裝置屬性設定值。當輸出指令的屬性資訊符合裝置屬性設定值時,高階控制電路執行輸出指令。

Description

系統單晶片及控制方法
本發明係有關於一種電子裝置,特別是有關於一種系統單晶片。
由於物聯網(Internet of Things;IOT) 可將許多物件與網際網路連接,以達到物件識別以及智能管理的目的,故物聯網技術逐漸應用於許多領域中。再者,物聯網技術可用以節省能源消耗,改善人們的生活。然而,隨著物聯網的蓬勃發展,安全性(security)是非常重要的需求。
本發明提供一種系統單晶片,包括一第一週邊電路、一第二週邊電路以及一橋接控制電路。橋接控制電路儲存一第一屬性設定值以及一第二屬性設定值,並判斷一輸出指令的屬性資訊是否符合第一或第二屬性設定值。當輸出指令的屬性資訊符合第一屬性設定值時,橋接控制電路提供輸出指令予第一週邊電路。當輸出指令的屬性資訊符合第二屬性設定值時,橋接控制電路提供輸出指令予第二週邊電路。
本發明另提供一種控制方法,適用於一橋接控制電路。本發明之控制方法包括,儲存一第一屬性設定值以及一第二屬性設定值;以及判斷一輸出指令的屬性資訊是否符合第一或第二屬性設定值。當輸出指令的屬性資訊符合第一屬性設定值時,傳送輸出指令予一第一週邊電路。當輸出指令的屬性資訊符合第二屬性設定值時,傳送輸出指令予一第二週邊電路。
為讓本發明之目的、特徵和優點能更明顯易懂,下文特舉出實施例,並配合所附圖式,做詳細之說明。本發明說明書提供不同的實施例來說明本發明不同實施方式的技術特徵。其中,實施例中的各元件之配置係為說明之用,並非用以限制本發明。另外,實施例中圖式標號之部分重覆,係為了簡化說明,並非意指不同實施例之間的關聯性。
第1圖為本發明之系統單晶片的方塊示意圖。如圖所示,系統單晶片(system on chip)100包括一主控層(master layer)110、一裝置層(device layer)120以及一週邊層(peripheral layer)130。在本實施例中,主控層110包括一主控電路111。主控電路111用以發出一指令SCM1 。本發明並不限定主控電路111的種類。只要具有資料處理能力的電路均可作為主控電路111。在一可能實施例中,主控電路111係為一處理器(processor)或是一記憶體控制器(memory transfer controller),如一直接記憶體存取控制器(direct memory access controller)。在另一可能實施例中,主控電路111係為一安全裝置(secure device),用以執行高安全性質的動作,如行動支付。在一些實施例中,主控電路111係為一資料處理單元,如一加解密電路(encryption/ decryption circuit)及一卷積神經網路加速器(convolutional neuro network accelerator)。在其它實施例中,主控層110具有更多的主控電路。
裝置層120包括一橋接控制電路121。橋接控制電路121儲存屬性設定值(attribute setting value)AS131 及AS132 。在本實施例中,橋接控制電路121解碼指令SCM1 ,用以得知一位址資訊以及一屬性資訊。橋接控制電路121根據該位址資訊,判斷指令SCM1 係指向週邊電路131或132。假設,指令SCM1 係指向週邊電路131。在此例中,橋接控制電路121將指令SCM1 的屬性資訊與屬性設定值AS131 相比較。當指令SCM1 的屬性資訊相符於屬性設定值AS131 時,表示主控電路111有權存取週邊電路131。因此,橋接控制電路121傳送指令SCM1 予週邊電路131。
在其它實施例中,當指令SCM1 指向週邊電路132時,橋接控制電路121比較指令SCM1 的屬性資訊是否符合屬性設定值AS132 。當指令SCM1 的屬性資訊符合屬性設定值AS132 時,表示主控電路111有權存取週邊電路132。因此,橋接控制電路121提供指令SCM1 予週邊電路132。
本發明並不限定橋接控制電路121所儲存的屬性設定值的數量。在其它實施例中,當橋接控制電路121耦接更多或更少的週邊電路時,橋接控制電路121儲存更多或更少的屬性設定值。在此例中,不同的屬性設定值對應不同的週邊電路。在一些實施例中,指令SCM1 亦可稱為一輸出指令或是一外部指令。
本發明並不限定裝置層120的架構。在一可能實施例中,裝置層120作為一高頻電路(如主控層110)與一低頻電路(如週邊層130)之間的橋樑。舉例而言,主控層110的元件的操作頻率可能高於100MHz,甚至大於1GHz,而週邊層130的元件的操作頻率可能在10MHz以下,甚至為KHz。在一可能實施例中,橋接控制電路121包括一週邊橋接器(peripheral bridge),用以分派指令SCM1 予週邊電路131或132。在另一可能實施例中,橋接控制電路121更包括一資源域存取控制器(resource domain access controller)。在此例中,資源域存取控制器具有解碼及比較功能。
在一些實施例中,橋接控制電路121具有一解碼電路(未顯示)、一比較電路(未顯示)以及一分配電路(未顯示)。在此例中,解碼電路解碼指令SCM1 ,用以產生一位址資訊以及一屬性資訊。比較電路根據位址資訊,將屬性資訊與屬性設定值AS131 或AS132 作比較。舉例而言,當位址資訊指向週邊電路131時,比較電路將屬性資訊與屬性設定值AS131 作比較,用以產生一比較結果。當位址資訊指向週邊電路132時,比較電路將屬性資訊與屬性設定值AS132 作比較,用以產生一比較結果。分配電路根據比較電路的比較結果,分配指令SCM1 予週邊電路131或132。舉例而言,當指令SCM1 的位址資訊指向週邊電路131並且指令SCM1 的屬性資訊相同於屬性設定值AS131 時,分配電路提供指令SCM1 予週邊電路131。當指令SCM1 的位址資訊指向週邊電路132並且指令SCM1 的屬性資訊相同於屬性設定值AS132 時,分配電路提供指令SCM1 予週邊電路132。
在其它實施例中,當指令SCM1 的位址資訊指向週邊電路131,但指令SCM1 的屬性資訊卻不符合屬性設定值AS131 時,表示指令SCM1 並非合法指令,可能是一惡意軟體所發出的指令,試圖竄改週邊電路131的資料。因此,橋接控制電路121不提供指令SCM1 予週邊電路131。在一可能實施例中,橋接控制電路121可能發出一中斷信號,用以通知系統單晶片100的其它元件,目前受到不合法的存取。在一些實施例中,橋接控制電路121可能執行相關系統安全性設定,如產生一錯誤回報(error response)予主控電路111。在一可能實施例中,如果指令SCM1 係為一讀取指令時,橋接控制電路121可能回覆一特定資料(複數數值0、複數數值1、或亂碼)予主控電路111。如果指令SCM1 係為一寫入指令時,橋接控制電路121忽略主控電路111所提供的寫入資料。
同樣地,當指令SCM1 的位址資訊指向週邊電路132,但指令SCM1 的屬性資訊卻不符合屬性設定值AS132 時,表示指令SCM1 並非合法指令,可能是一惡意軟體所發出的指令,試圖竄改週邊電路132的資料。因此,橋接控制電路121不提供指令SCM1 予週邊電路132。在一可能實施例中,橋接控制電路121可能發出一中斷信號,用以通知系統單晶片100的其它元件,目前受到不合法的存取。在其它實施例中,橋接控制電路121可能執行相關系統安全性設定,如產生一錯誤回報或是進行一特定動作,如回覆一特定資料予主控電路111或是忽略主控電路111所提供的寫入資料。
週邊層130包括週邊電路131及132。在一可能實施例中,週邊電路131及132係為終端裝置(end device)。本發明並不限定週邊電路131及132的種類。任何可執行指令的電路,均可作為週邊電路131或132。
舉例而言,假設週邊電路131係為一加解密電路。在此例中,週邊電路131根據指令SCM1 ,進行一加/解密動作。在其它實施例中,當週邊電路131係為一通訊電路時,則週邊電路131根據指令SCM1 ,進行一通訊動作,如輸出指令SCM1 予系統單晶片100以外的元件,或是接收來自系統單晶片100以外的元件的信號或指令。
第2圖為本發明之系統單晶片的另一示意圖。如圖所示,系統單晶片200包括一主控層210、一裝置層220以及一週邊層230。在本實施例中,主控層210包括主控電路211及212。主控電路211及212分別產生指令SCM1 及SCM2 。本發明並不限定主控電路211及212的架構。在一些實施例中,主控電路211與212具有相同的性質。舉例而言,主控電路211與212均為安全裝置、非安全裝置(non-secure device)、特權裝置(privilege device)或是非特權裝置(non-privilege device)。在其它實施例中,主控電路211與212具有不同的性質。舉例而言,主控電路211係為安全裝置、非安全裝置、特權裝置及非特權裝置之一者。在此例中,主控電路212為安全裝置、非安全裝置、特權裝置及非特權裝置之另一者。在一可能實施例中,主控電路211係為一安全裝置,而主控電路212係為一特權裝置。在另一可能實施例中,主控電路211係為一安全裝置,而主控電路212係為一非特權裝置。在一些實施例中,主控電路211係為一非安全裝置,而主控電路212係為一特權裝置,或是主控電路211係為一非安全裝置,而主控電路212係為一非特權裝置。由於主控電路211及212的動作與第1圖的主控電路111的動作相似,故不再贅述。另外,本發明並不限定主控電路的數量。在一些實施例中,主控層210具有更多或更少的主控電路。
在本實施例中,裝置層220包括一路由電路(routing circuit)221、橋接控制電路222及223。路由電路221根據外部指令(如SCM1 及SCM2 )的位址資訊,產生輸出指令SOCM1 及SOCM2 之至少一者。 舉例而言,當路由電路221接收到指令SCM1 時,如果指令SCM1 的位址資訊係指向週邊電路231或232時,路由電路221將指令SCM1 作為輸出指令SOCM1 提供予橋接控制電路222。然而,如果指令SCM1 的位址資訊係指向週邊電路233~235之任一者時,路由電路221將指令SCM1 作為輸出指令SOCM2 提供予橋接控制電路223。
同樣地,當路由電路221接收到指令SCM2 時,如果指令SCM2 的位址資訊係指向週邊電路231或232時,路由電路221將指令SCM2 作為輸出指令SOCM1 提供予橋接控制電路222。然而,如果指令SCM2 的位址資訊係指向週邊電路233~235之任一者時,路由電路221將指令SCM2 作為輸出指令SOCM2 提供予橋接控制電路223。
在其它實施例中,當路由電路221同時接收到指令SCM1 及SCM2 ,並且指令SCM1 及SCM2 的位址資訊指向同一週邊電路時,路由電路221根據一優先順序,將指令SCM1 及SCM2 作為輸出指令SOCM1 或SOCM2 。舉例而言,假設,主控電路211的優先權高於主控電路212。在此例中,當路由電路221同時接收到指令SCM1 及SCM2 ,並且指令SCM1 及SCM2 的位址資訊均指向週邊電路231時,路由電路221先將指令SCM1 作為輸出指令SOCM1 提供予橋接控制電路222。在一預設時間後,路由電路221再將指令SCM2 作為輸出指令SOCM1 提供予橋接控制電路222。在一可能實施例中,優先順序係事先儲存於路由電路221中。
本發明並不限定路由電路221的架構。在一可能實施例中,路由電路221具有一匯流排矩陣架構(bus matrix architecture)。在另一可能實施例中,路由電路221包括一路由器(router)。
橋接控制電路222及223根據外部指令(如SOCM1 及SOCM2 ),判斷提供外部指令的主控電路是否有權存取相對應的週邊電路。由於橋接控制電路222與223的動作相似,故以橋接控制電路223為例。當路由電路221將指令SCM2 作為輸出指令SOCM2 時,橋接控制電路223解碼輸出指令SOCM2 ,用以判斷輸出指令SOCM2 的位址資訊係指向週邊電路233、234或235。
假設,輸出指令SOCM2 的位址資訊指向週邊電路233。在此例中,橋接控制電路223先判斷輸出指令SOCM2 的屬性資訊是否符合屬性設定值AS233 。當輸出指令SOCM2 的屬性資訊符合屬性設定值AS233 時,表示主控電路212有權存取週邊電路233。因此,橋接控制電路223傳送輸出指令SOCM2 予週邊電路233。週邊電路233執行輸出指令SOCM2 。然而,當輸出指令SOCM2 的屬性資訊不符合屬性設定值AS233 時,表示主控電路212無權存取週邊電路233。因此,橋接控制電路223不傳送輸出指令SOCM2 予週邊電路233。此時,橋接控制電路233可能執行相關安全性動作。舉例而言,橋接控制電路233可能發出一中斷信號,用以向系統單晶片200的其它元件告知發生一不合法存取。
本發明並不限定橋接控制電路222及223的架構。在一可能實施例中,橋接控制電路222及223的架構相似於第1圖的橋接控制電路121的架構,故不再贅述。在本實施例中,橋接控制電路222所連接的週邊電路的數量不同於橋接控制電路223所連接的週邊電路的數量,但並非用以限制本發明。在其它實施例中,橋接控制電路222及223係耦接相同數量的週邊電路。此外,本發明並不限定橋接控制電路的數量。在其它實施例中,裝置層220具有更多的橋接控制電路,用以分派指令予更多的週邊電路。
在一可能實施例中,橋接控制電路222及223各自具有一儲存電路,用以儲存屬性設定值AS231 ~AS235 。在此例中,當屬性設定值AS231 ~AS235 具有相同的資料長度時,便可減少硬體或軟體開發的複雜性。再者,由於屬性設定值AS231 ~AS235 係分散地(distribute)記錄在不同的橋接控制電路中,故可簡化系統單晶片200架構,並減少除錯(debug)的時間。
週邊層230包括週邊電路231~235,但並非用以限制本發明。在其它實施例中,週邊層230具有其它數量的週邊電路。本發明並不限定週邊電路231~235的架構。在一可能實施例中,週邊電路231~235之一者的性質係相同於週邊電路231~235之另一者。舉例而言,週邊電路231及233都是通訊電路。由於週邊電路231~235的特性與第1圖的週邊電路131的特性相似,故不再贅述。
第3圖為本發明之系統單晶片的另一示意圖。第3圖相似第2圖,不同之處在於第3圖的主控層310更包括一主控電路313。主控電路313用以產生一指令SCM3 。由於主控電路311~313的特性與第1圖的主控電路111以及第2圖的主控電路211及212的特性均相似,故不再贅述。在一可能實施例中,主控電路311及312均為安全裝置,而主控電路313為非安全裝置。在其它實施例中,主控電路313係為一直接記憶體存取(direct memory access;DMA)控制器。
在本實施例中,裝置層320包括一路由電路321、橋接控制電路322、323及高階控制電路324、325。由於路由電路321及橋接控制電路322、323的特性與第2圖的路由電路221及橋接控制電路222、223的特性相似,故不再贅述。
高階控制電路324記錄一裝置屬性設定值AS324 。高階控制電路325記錄一裝置屬性設定值AS325 。在一可能實施例中,高階控制電路324及325係為高階裝置(advance device)。在本實施例中,高階控制電路324及325直接連接路由電路321。因此,路由電路321直接提供輸出指令SOCM3 及SOCM4 予高階控制電路324及325。在此例中,高階控制電路324及325係為終端裝置。在本實施例中,高階控制電路324及325的操作頻率高於週邊電路331~335的操作頻率。舉例而言,高階控制電路324及325的操作頻率可能高於100MHz,或高於1GHz。
由於高階控制電路324及325的動作相似,故以下僅說明高階控制電路324的動作。當路由電路321提供輸出指令SOCM3 時,高階控制電路324判斷輸出指令SOCM3 的屬性資訊是否符合於裝置屬性設定值AS324 。當輸出指令SOCM3 的屬性符合裝置屬性設定值AS324 時,高階控制電路324執行輸出指令SOCM3 。本發明並不限定輸出指令SOCM3 的種類。當輸出指令SOCM3 係為一寫入指令時,高階控制電路324執行一寫入操作(write operation)。當輸出指令SOCM3 係為一讀取指令時,高階控制電路324執行一讀取操作(read operation)。
在其它實施例中,當輸出指令SOCM3 的屬性不符合裝置屬性設定值AS324 時,表示輸出指令SOCM3 係為一不合法指令。因此,高階控制電路324不執行輸出指令SOCM3 。在另一可能實施例中,高階控制電路324發出一中斷信號,用以通知系統單晶片300的另一元件(未顯示)。本發明並不限定高階控制電路的數量。在其它實施例中,裝置層320具有更多或更少的高階控制電路。在此例中,每一高階控制電路儲存一裝置屬性設定值。
本發明並不限定高階控制電路324及325的架構。以高階控制電路324為例,高階控制電路324具有一資源域存取控制器(未顯示)以及一裝置電路(未顯示)。資源域存取控制器用以解碼輸出指令SOCM3 ,並判斷輸出指令SOCM3 的屬性資訊是否相符於裝置屬性設定值AS324 。當輸出指令SOCM3 的屬性資訊相符於裝置屬性設定值AS324 時,裝置電路執行相對於輸出指令SOCM3 的動作。在一可能實施例中,裝置電路係為一加解密電路,用以進行一加/解密動作。在另一可能實施例中,裝置電路係為一超高速乙太網路(giga bit ethenet)或是一區域網路從屬(LANS slave)裝置。
在本實施例中,週邊層330具有週邊電路331~335。由於週邊電路331~335的特性與第1圖的週邊電路131相似,故不再贅述。
第4圖為本發明之系統單晶片的另一示意圖。在本實施例中,系統單晶片400包括一主控層410、一裝置層420以及一週邊層430。由於主控層410與週邊層430的架構相似於第3圖的主控層310與週邊層330的架構,故不再贅述。在本實施例中,裝置層420包括一路由電路421、橋接控制電路422、423及高階控制電路424、425。由於路由電路421及橋接控制電路422、423的特性與第2圖的路由電路221及橋接控制電路222、223的特性相似,故不再贅述。
高階控制電路424包括一資源域存取控制器441、裝置電路442及443。高階控制電路425包括一資源域存取控制器451、裝置電路452、453及454。由於高階控制電路424的特性與高階控制電路425的特性相似,故以下以高階控制電路424為例,說明高階控制電路424的特性。
資源域存取控制器441儲存裝置屬性設定值AS324A 及AS324B ,並解碼輸出指令SOCM3 ,用以得知輸出指令SOCM3 的位址資訊及屬性資訊。當輸出指令SOCM3 的位址資訊指向裝置電路442時,資源域存取控制器441比較輸出指令SOCM3 的屬性資訊與裝置屬性設定值AS324A 。當輸出指令SOCM3 的屬性資訊相同於裝置屬性設定值AS324A 時,資源域存取控制器441發送輸出指令SOCM3 予裝置電路442。因此,裝置電路442執行相對於輸出指令SOCM3 的動作。然而,當輸出指令SOCM3 的位址資訊指向裝置電路442,但輸出指令SOCM3 的屬性資訊不同於裝置屬性設定值AS324A 時,資源域存取控制器441可能執行一安全性操作,如產生一錯誤回報。
在其它實施例中,當輸出指令SOCM3 的位址資訊指向裝置電路443時,資源域存取控制器441比較輸出指令SOCM3 的屬性資訊與裝置屬性設定值AS324B 。當輸出指令SOCM3 的屬性資訊相同於裝置屬性設定值AS324B 時,資源域存取控制器441發送輸出指令SOCM3 予裝置電路443。在此例中,裝置電路443執行相對於輸出指令SOCM3 的動作。然而,當輸出指令SOCM3 的位址資訊指向裝置電路443,但輸出指令SOCM3 的屬性資訊不同於裝置屬性設定值AS324B 時,資源域存取控制器441可能執行一安全性操作,如產生一錯誤回報。
本發明並不限定裝置電路442及443的種類。在一可能實施例中,裝置電路442及443均為加解密電路,但裝置電路442的加解密運算不同於裝置電路443的加解密運算。舉例而言,裝置電路442的加解密運算可能是 DES、RSA、SHA、AES、ECC之一者。在此例中,裝置電路442的加解密運算可能是 DES、RSA、SHA、AES、ECC之另一者。
在其它實施例中,裝置屬性設定值AS324A 可能儲存於裝置電路442中,並且裝置屬性設定值AS324B 儲存於裝置電路443中。在此例中,當輸出指令SOCM3 的位址資訊指向裝置電路442時,資源域存取控制器441擷取裝置電路442所儲存的裝置屬性設定值AS324A ,比較輸出指令SOCM3 的屬性資訊與裝置屬性設定值AS324A 。當輸出指令SOCM3 的屬性資訊相同於裝置屬性設定值AS324A 時,資源域存取控制器441發送輸出指令SOCM3 予裝置電路442。因此,裝置電路442根據輸出指令SOCM3 而動作。
同樣地,當輸出指令SOCM3 的位址資訊指向裝置電路443時,資源域存取控制器441擷取裝置電路443所儲存的裝置屬性設定值AS324B ,比較輸出指令SOCM3 的屬性資訊與裝置屬性設定值AS324B 。當輸出指令SOCM3 的屬性資訊相同於裝置屬性設定值AS324B 時,資源域存取控制器441發送輸出指令SOCM3 予裝置電路443。因此,裝置電路443根據輸出指令SOCM3 而動作。
本發明並不限定高階控制電路424與425所儲存的裝置屬性設定值的數量。在本實施例中,高階控制電路424所儲存的裝置屬性設定值少於高階控制電路425所儲存的裝置屬性設定值。在其它實施例中,高階控制電路424所儲存的裝置屬性設定值可能相同於或多於高階控制電路425所儲存的裝置屬性設定值。
第5圖為本發明之控制方法的流程示意圖。本發明的控制方法適用於一系統單晶片的橋接控制電路中,其中橋接控制電路耦接複數週邊電路。首先,儲存複數屬性設定值於橋接控制電路中(步驟S511)。在本實施例中,每一屬性設定值係對應一週邊電路。以第2圖為例,橋接控制電路222儲存屬性設定值AS231 及AS232 ,其中屬性設定值AS231 對應週邊電路231,屬性設定值AS232 對應週邊電路232。在其它實施例中,當橋接控制電路耦接更多的週邊電路時,橋接控制電路儲存更多的屬性設定值。
接著,解碼一輸出指令,用以得知輸出指令係指向哪個週邊電路(步驟S512)。以第2圖為例,當橋接控制電路222接收到輸出指令SOCM1 時,橋接控制電路222解碼輸出指令SOCM1 ,用以得知輸出指令SOCM1 係指向週邊電路231或232。在第2圖中,輸出指令SOCM1 係由路由電路221所提供,但並非用以限制本發明。在其它實施例中,輸出指令係由一主控電路(第1圖的主控電路111)所提供。
接著,判斷輸出指令的屬性是否相符於對應的週邊電路的屬性設定值(步驟S513)。當輸出指令的屬性相符於對應的週邊電路的屬性設定值時,傳送輸出指令予對應的週邊電路(步驟S514)。然而,當輸出指令的屬性不相符於對應的週邊電路的屬性設定值時,不傳送輸出指令予對應的週邊電路(步驟S515)。在一可能實施例中,當輸出指令的屬性不相符於對應的終端電路的屬性設定值時,橋接控制電路222執行一安全性操作。
以第2圖為例,當輸出指令SOCM1 指向週邊電路231時,橋接控制電路222判斷輸出指令SOCM1 的屬性是否符合屬性設定值AS231 。當輸出指令SOCM1 的屬性符合屬性設定值AS231 時,表示主控電路211有權存週邊電路231。因此,橋接控制電路222傳送輸出指令SOCM1 予週邊電路231。然而,如果輸出指令SOCM1 的屬性不符合屬性設定值AS231 時,表示主控電路211有權存週邊電路231。因此,橋接控制電路222不傳送輸出指令SOCM1 予週邊電路231。在一可能實施例中,橋接控制電路222發出一中斷或產生一如錯誤回報。在其它實施例中,如果指令SCM1 係為一讀取指令時,橋接控制電路222可能回覆一特定資料(如數值均為0、1、或亂碼)予主控電路211。如果指令SCM1 係為一寫入指令時,橋接控制電路222忽略主控電路211所提供的寫入資料。
第6圖為本發明之控制方法的流程示意圖。本發明的控制方法適用於一系統單晶片的高階控制電路(如第4圖的424、425)中。首先,儲存複數裝置屬性設定值於高階控制電路中(步驟S611)。以第4圖的高階控制電路424為例,資源域存取控制器441儲存裝置屬性設定值AS324A 及AS324B ,其中裝置屬性設定值AS324A 對應裝置電路442,並且裝置屬性設定值AS324B 對應裝置電路443。在其它實施例中,裝置屬性設定值AS324A 及AS324B 係分別儲存於裝置電路442及443之中。在一些實施例中,步驟S611係儲存單一裝置屬性設定值於一高階控制電路。以第3圖為例,高階控制電路324儲存單一裝置屬性設定值(即AS324 )。
接著,解碼一輸出指令 (步驟S612)。以第4圖為例,當資源域存取控制器441接收到輸出指令SOCM3 時,資源域存取控制器441解碼輸出指令SOCM3 ,用以得知輸出指令SOCM3 的位址資訊及屬性資訊。在一些實施例中,資源域存取控制器441根據輸出指令SOCM3 的位址資訊,得知輸出指令係指向哪個裝置電路。
接著,判斷輸出指令的屬性是否相符於對應的裝置電路的屬性設定值(步驟S613)。當輸出指令的屬性相符於對應的裝置電路的屬性設定值時,命令對應的裝置電路執行輸出指令所對應的動作(步驟S614)。然而,當輸出指令的屬性不相符於對應的裝置電路的屬性設定值時,命令裝置電路不執行輸出指令所對應的動作(步驟S615)。在一可能實施例中,當輸出指令的屬性不相符於對應的裝置電路的屬性設定值時,高階控制電路424執行一安全性操作。
以第4圖為例,當輸出指令SOCM3 的位址資訊指向裝置電路442時,資源域存取控制器441比較輸出指令SOCM3 的屬性資訊與裝置屬性設定值AS324A 。當輸出指令SOCM3 的屬性資訊相同於裝置屬性設定值AS324A 時,資源域存取控制器441發送輸出指令SOCM3 予裝置電路442。因此,裝置電路442執行相對於輸出指令SOCM3 的動作。然而,當輸出指令SOCM3 的位址資訊指向裝置電路442,但輸出指令SOCM3 的屬性資訊不同於裝置屬性設定值AS324A 時,資源域存取控制器441可能執行一安全性操作,如產生一錯誤回報。在其它實施例中,如果輸出指令SOCM3 係為一讀取指令時,高階控制電路424可能回覆一特定資料(如數值均為0、1、或亂碼)予主控層410。如果輸出指令SOCM3 係為一寫入指令時,高階控制電路424忽略主控層410所提供的寫入資料。
由於屬性設定值係分散地儲存於橋接控制電路及/或高階控制電路中,故可簡化降低電路複雜度,並減少測試人員除錯的時間。再者,只有外部指令的屬性符合相對應的週邊電路或裝置電路所對應的屬性設定值時,橋接控制電路及/或高階控制電路才會提供指令予相對應的週邊電路或裝置電路,故可避免週邊電路或裝置電路受到非法的存取,因而提高系統單晶片的安全性。
本發明之控制方法,或特定型態或其部份,可以以程式碼的型態存在。程式碼可儲存於實體媒體,如軟碟、光碟片、硬碟、或是任何其他機器可讀取(如電腦可讀取)儲存媒體,亦或不限於外在形式之電腦程式產品,其中,當程式碼被機器,如電腦載入且執行時,此機器變成用以參與本發明之系統單晶片。程式碼也可透過一些傳送媒體,如電線或電纜、光纖、或是任何傳輸型態進行傳送,其中,當程式碼被機器,如電腦接收、載入且執行時,此機器變成用以參與本發明之裝置。當在一般用途處理單元實作時,程式碼結合處理單元提供一操作類似於應用特定邏輯電路之獨特裝置。
除非另作定義,在此所有詞彙(包含技術與科學詞彙)均屬本發明所屬技術領域中具有通常知識者之一般理解。此外,除非明白表示,詞彙於一般字典中之定義應解釋為與其相關技術領域之文章中意義一致,而不應解釋為理想狀態或過分正式之語態。
雖然本發明已以較佳實施例揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾。舉例來說,本發明實施例所述之系統、裝置或是方法可以硬體、軟體或硬體以及軟體的組合的實體實施例加以實現。因此本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100,200,300,400:系統單晶片 110,210,310,410:主控層 111,211,212,311~313,411~413:主控電路 120,220,320,420:裝置層 121,222,223,322,323,422,423:橋接控制電路 130,230,330,430:週邊層 131,132,231~235,331~335,431~435:週邊電路 221,321,421:路由電路 324,325,424,425:高階控制電路 441,451:資源域存取控制器 442,443,452~454:裝置電路 SCM1 ~SCM3 :指令 SOCM1 ~SOCM4 :輸出指令 AS131 ,AS132 ,AS231 ~AS235 ,AS331 ~AS235 :屬性設定值 AS324 ,AS324A ,AS324B ,AS325 AS325 A ,AS325B ,AS325C ,:裝置屬性設定值 S511~S515,S611~S615:步驟
第1圖為本發明之系統單晶片的方塊示意圖。 第2圖為本發明之系統單晶片的另一方塊示意圖。 第3圖為本發明之系統單晶片的另一方塊示意圖。 第4圖為本發明之系統單晶片的另一方塊示意圖。 第5圖為本發明之控制方法的一可能流程式示意圖。 第6圖為本發明之控制方法的一另可能流程式示意圖。
300:系統單晶片
310:主控層
311~313:主控電路
320:裝置層
322,323:橋接控制電路
330:週邊層
331~335:週邊電路
321:路由電路
324,325:高階控制電路
SCM1 ~SCM3 :指令
SOCM1 ~SOCM4 :輸出指令
AS331 ~AS335 :屬性設定值
AS324 ,AS325 :裝置屬性設定值

Claims (8)

  1. 一種系統單晶片,包括:一第一週邊電路;一第二週邊電路;以及一第一橋接控制電路,儲存一第一屬性設定值以及一第二屬性設定值,並解碼一第一輸出指令,用以得到一位址資訊以及一屬性資訊;其中:該第一橋接控制電路判斷該位址資訊指向該第一週邊電路或該第二週邊電路;當該位址資訊指向該第一週邊電路時,該第一橋接控制電路判斷該屬性資訊是否符合該第一屬性設定值,當該屬性資訊符合該第一屬性設定值時,該第一橋接控制電路提供該第一輸出指令予該第一週邊電路,當該屬性資訊不符合該第一屬性設定值時,該第一橋接控制電路回覆複數數值0、複數數值1、或一亂碼予一第一主控電路;當該位址資訊指向該第二週邊電路時,該第一橋接控制電路判斷該屬性資訊是否符合該第二屬性設定值,當該屬性資訊符合該第二屬性設定值時,該第一橋接控制電路提供該第一輸出指令予該第二週邊電路;該第一屬性設定值不同於該第二屬性設定值。
  2. 如請求項1之系統單晶片,其中該第一主控電路產生該第一輸出指令。
  3. 如請求項1之系統單晶片,更包括:一路由電路,當一第一指令指向該第一或第二週邊電路時,該路由 電路將該第一指令作為該第一輸出指令提供予該第一橋接控制電路,該第一主控電路產生該第一指令。
  4. 如請求項3之系統單晶片,更包括:一第三週邊電路;一第四週邊電路;以及一第二橋接控制電路,儲存一第三屬性設定值以及一第四屬性設定值,並判斷一第二輸出指令的屬性資訊是否符合該第三或第四屬性設定值;其中,當該第二輸出指令的屬性資訊符合該第三屬性設定值時,該第二橋接控制電路提供該第二輸出指令予該第三週邊電路,當該第二輸出指令的屬性資訊符合該第四屬性設定值時,該第二橋接控制電路提供該第二輸出指令予該第四週邊電路。
  5. 如請求項4之系統單晶片,更包括:一第二主控電路,用以產生一第二指令;其中,當該第二指令指向該第一或第二週邊電路時,該路由電路將該第二指令作為該第一輸出指令提供予該第一橋接控制電路。
  6. 如請求項4之系統單晶片,更包括:一高階控制電路,儲存一裝置屬性設定值;其中,當該第一指令指向該高階控制電路時,該路由電路將該第一指令作為一第三輸出指令提供予該高階控制電路,該高階控制電路判斷該第三輸出指令的屬性資訊是否符合該裝置屬性設定值,當該第三輸出指令的屬性資訊符合該裝置屬性設定值時,該高階控制電路執行該第三輸出指令。
  7. 如請求項1之系統單晶片,其中當該第一輸出指令指 向該第一週邊電路,並且第一輸出指令的屬性資訊不符合該第一屬性設定值時,該第一橋接控制電路不傳送該第一輸出指令予該第一週邊電路。
  8. 一種控制方法,適用於一橋接控制電路,該控制方法包括:儲存一第一屬性設定值以及一第二屬性設定值;解碼一輸出指令,用以得到一位址資訊以及一屬性資訊;判斷該位址資訊指向一第一週邊電路或一第二週邊電路;當該位址資訊指向該第一週邊電路時,判斷該屬性資訊是否符合該第一屬性設定值,其中當該屬性資訊符合該第一屬性設定值時,傳送該輸出指令予該第一週邊電路,當該屬性資訊不符合該第一屬性設定值時,回覆複數數值0、複數數值1、或一亂碼予一主控電路;當該位址資訊指向該第二週邊電路時,判斷該屬性資訊是否符合該第二屬性設定值,其中當該屬性資訊符合該第二屬性設定值時,傳送該輸出指令予該第二週邊電路;其中該第一屬性設定值不同於該第二屬性設定值。
TW109120752A 2020-06-19 2020-06-19 系統單晶片及控制方法 TWI808328B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
TW109120752A TWI808328B (zh) 2020-06-19 2020-06-19 系統單晶片及控制方法
CN202011578352.7A CN113821472B (zh) 2020-06-19 2020-12-28 系统单芯片及控制方法
US17/137,954 US11372793B2 (en) 2020-06-19 2020-12-30 System on chip and control method thereof
US17/845,544 US11698880B2 (en) 2020-06-19 2022-06-21 System on chip and device layer

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW109120752A TWI808328B (zh) 2020-06-19 2020-06-19 系統單晶片及控制方法

Publications (2)

Publication Number Publication Date
TW202201218A TW202201218A (zh) 2022-01-01
TWI808328B true TWI808328B (zh) 2023-07-11

Family

ID=78924866

Family Applications (1)

Application Number Title Priority Date Filing Date
TW109120752A TWI808328B (zh) 2020-06-19 2020-06-19 系統單晶片及控制方法

Country Status (3)

Country Link
US (2) US11372793B2 (zh)
CN (1) CN113821472B (zh)
TW (1) TWI808328B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TWI808328B (zh) * 2020-06-19 2023-07-11 新唐科技股份有限公司 系統單晶片及控制方法
TWI797554B (zh) * 2021-02-05 2023-04-01 新唐科技股份有限公司 系統單晶片及控制方法

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020162043A1 (en) * 2000-10-31 2002-10-31 Adrian Messmer Extension for the advanced microcontroller bus architecture (AMBA)
TW200508961A (en) * 2003-08-21 2005-03-01 Via Tech Inc SOC capable of linking external bridge circuits for expanding functionality
US20080282007A1 (en) * 2007-05-10 2008-11-13 Moran Christine E METHOD AND SYSTEM FOR CONTROLLING TRANSMISSION and EXECUTION OF COMMANDS IN AN INTEGRATED CIRCUIT DEVICE
CN105093984A (zh) * 2015-07-21 2015-11-25 北京爱思汇众科技发展有限公司 物联网控制平台、物联网装置、控制设备及控制方法
CN105608022A (zh) * 2014-11-25 2016-05-25 南方电网科学研究院有限责任公司 一种基于倒排技术的智能安全芯片的指令分发方法和系统
CN107018165A (zh) * 2016-01-28 2017-08-04 阿里巴巴集团控股有限公司 控制物联网设备的方法及装置、服务器、移动设备
TW201826139A (zh) * 2017-01-11 2018-07-16 國立中央大學 多微控制器系統、物聯網閘道系統、以及基於橋接器的多微控制器系統之控制方法
CN108432213A (zh) * 2016-01-06 2018-08-21 三星电子株式会社 电子设备及其控制方法
TW201923603A (zh) * 2017-11-01 2019-06-16 美商高通公司 異質虛擬通用輸入/輸出

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0240752A (ja) * 1988-07-29 1990-02-09 Nec Corp 装置情報転送方式
TWI237764B (en) * 2003-04-28 2005-08-11 Via Tech Inc Control chip with function for inhibiting bus cycle, circuit and method thereof
CN100426271C (zh) * 2006-12-22 2008-10-15 威盛电子股份有限公司 串行周边接口控制装置、系统及其判断方法
US7743191B1 (en) * 2007-12-20 2010-06-22 Pmc-Sierra, Inc. On-chip shared memory based device architecture
TW201017462A (en) * 2008-10-22 2010-05-01 Moxa Inc A far-end control method with security mechanism
US9336029B2 (en) * 2010-08-04 2016-05-10 International Business Machines Corporation Determination via an indexed structure of one or more partitionable endpoints affected by an I/O message
US9098438B2 (en) * 2010-09-30 2015-08-04 Texas Instruments Incorporated Synchronized voltage scaling and device calibration
CN107070926A (zh) 2017-04-19 2017-08-18 济南浪潮高新科技投资发展有限公司 一种对电子设备进行统一操作的结构及方法
JP6947021B2 (ja) * 2017-12-27 2021-10-13 株式会社リコー 画像処理方法、画像処理装置および画像処理システム
TWI808328B (zh) * 2020-06-19 2023-07-11 新唐科技股份有限公司 系統單晶片及控制方法

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020162043A1 (en) * 2000-10-31 2002-10-31 Adrian Messmer Extension for the advanced microcontroller bus architecture (AMBA)
TW200508961A (en) * 2003-08-21 2005-03-01 Via Tech Inc SOC capable of linking external bridge circuits for expanding functionality
US20080282007A1 (en) * 2007-05-10 2008-11-13 Moran Christine E METHOD AND SYSTEM FOR CONTROLLING TRANSMISSION and EXECUTION OF COMMANDS IN AN INTEGRATED CIRCUIT DEVICE
CN105608022A (zh) * 2014-11-25 2016-05-25 南方电网科学研究院有限责任公司 一种基于倒排技术的智能安全芯片的指令分发方法和系统
CN105093984A (zh) * 2015-07-21 2015-11-25 北京爱思汇众科技发展有限公司 物联网控制平台、物联网装置、控制设备及控制方法
CN108432213A (zh) * 2016-01-06 2018-08-21 三星电子株式会社 电子设备及其控制方法
CN107018165A (zh) * 2016-01-28 2017-08-04 阿里巴巴集团控股有限公司 控制物联网设备的方法及装置、服务器、移动设备
TW201826139A (zh) * 2017-01-11 2018-07-16 國立中央大學 多微控制器系統、物聯網閘道系統、以及基於橋接器的多微控制器系統之控制方法
TW201923603A (zh) * 2017-11-01 2019-06-16 美商高通公司 異質虛擬通用輸入/輸出

Also Published As

Publication number Publication date
CN113821472B (zh) 2023-07-07
TW202201218A (zh) 2022-01-01
US11372793B2 (en) 2022-06-28
US11698880B2 (en) 2023-07-11
US20220318175A1 (en) 2022-10-06
CN113821472A (zh) 2021-12-21
US20210397574A1 (en) 2021-12-23

Similar Documents

Publication Publication Date Title
JP6372941B2 (ja) 共有システムリソースのセマフォベースの保護のためのシステムおよび方法
TWI808328B (zh) 系統單晶片及控制方法
EP3321840A1 (en) Bus security protection method and apparatus
US9805221B2 (en) Incorporating access control functionality into a system on a chip (SoC)
JP2013537347A (ja) コンピュータシステムにおけるリソースアクセス制御を実行する方法
US11664970B2 (en) Providing access to a hardware resource based on a canary value
US8402279B2 (en) Apparatus and method for updating set of limited access model specific registers in a microprocessor
KR20230042455A (ko) 인-메모리 디바이스 액세스 제어를 위한 방법들 및 장치
US20170262384A1 (en) Method for protecting memory against unauthorized access
US9678899B2 (en) Method and apparatus for providing memory protection
CN116340243A (zh) 一种双核可信执行的安全芯片架构
TWI797554B (zh) 系統單晶片及控制方法
WO2023287517A1 (en) Error management in system on a chip with securely partitioned memory space
WO2020005453A1 (en) Patchable hardware for access control
CN112182548B (zh) 一种芯片系统
Liu et al. Software Solution of Secure Debug Based on RISC-V CPU
JP6069120B2 (ja) 情報処理システム
US20220215099A1 (en) METHOD, SYSTEM AND APPARATUS TO PREVENT DENIAL OF SERVICE ATTACKS ON PCIe BASED COMPUTING DEVICES
WO2020252791A1 (zh) 一种集成芯片及数据处理方法
CN114547703A (zh) 基于安全隔离模块的嵌入式安全通信方法及系统
CN115905108A (zh) 一种用于risc-v芯片的iopmp架构实现方法
TW202303398A (zh) 在具安全分區記憶體空間系統單晶片中除錯
CN113496036A (zh) 安全组件和预加载方法