[go: up one dir, main page]

TW201933122A - 記憶體控制裝置及記憶體控制方法 - Google Patents

記憶體控制裝置及記憶體控制方法 Download PDF

Info

Publication number
TW201933122A
TW201933122A TW107102114A TW107102114A TW201933122A TW 201933122 A TW201933122 A TW 201933122A TW 107102114 A TW107102114 A TW 107102114A TW 107102114 A TW107102114 A TW 107102114A TW 201933122 A TW201933122 A TW 201933122A
Authority
TW
Taiwan
Prior art keywords
range
physical address
memory
functional circuit
circuit
Prior art date
Application number
TW107102114A
Other languages
English (en)
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 TW107102114A priority Critical patent/TW201933122A/zh
Priority to US16/045,808 priority patent/US20190228169A1/en
Publication of TW201933122A publication Critical patent/TW201933122A/zh

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6209Protecting access to data via a platform, e.g. using keys or access control rules to a single file or object, e.g. in a secure envelope, encrypted and accessed using a key, or with access control rules appended to the object itself
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • G06F12/1416Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights
    • G06F12/1425Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block
    • G06F12/1441Protection against unauthorised use of memory or access to memory by checking the object accessibility, e.g. type of access defined by the memory independently of subject rights the protection being physical, e.g. cell, word, block for a range
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/78Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; 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/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/65Details of virtual memory and virtual address translation
    • G06F2212/651Multi-level translation tables

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Storage Device Security (AREA)
  • Memory System (AREA)

Abstract

一種記憶體控制裝置及記憶體控制方法。記憶體控制方法包括以下步驟:自一功能電路接收一記憶體之一實體位址。依據實體位址查詢一範圍查找表以決定一範圍識別碼。依據對應功能電路之一裝置識別碼及範圍識別碼查詢一權限查找表以決定功能電路對記憶體之實體位址之一操作權限。

Description

記憶體控制裝置及記憶體控制方法
本發明是有關於一種記憶體控制裝置及記憶體控制方法,且特別是有關於一種與權限控制有關的記憶體控制裝置及記憶體控制方法。
隨著科技的進步,各式電子產品不斷推陳出新。許多的電子產品搭載各種功能電路,以實現各種功能。在資訊安全的考量下,系統需要對功能電路進行操作權限的控制。
傳統上,係將記憶體分為兩個區域,一區域給予完全開放權限(可進行讀取且可進行寫入),另一區域給予部分開放權限(僅可讀取或僅可寫入)。每一功能電路被設定為對應其中之一區域,例如說解碼電路對應於完全開放權限的記憶體區域,而網路存取電路對應於僅能寫入的記憶體區域。
然而,僅將記憶體分為兩區域之方式將使得系統無法妥善規劃記憶體的使用,例如無法在兼顧安全性的前提下靈活運用記憶體。
本發明係有關於一種記憶體控制裝置及記憶體控制方法,其根據功能電路的數量將記憶體設定出多個區域(domain),各個功能電路對應於各個區域。每個功能電路對於各個區域有對應的操作權限。如此一來,各個功能電路可以彈性地規劃其對應的區域,而不侷限於傳統固定於兩個區域的規劃方式。
根據本發明之第一方面,提出一種記憶體控制方法。記憶體控制方法包括以下步驟:自一功能電路接收一記憶體之一實體位址。依據該實體位址查詢一範圍查找表以決定一範圍識別碼。依據對應該功能電路之一裝置識別碼及該範圍識別碼查詢一權限查找表以決定該功能電路對該記憶體之該實體位址之一操作權限。
根據本發明之第二方面,提出一種記憶體控制裝置。記憶體控制裝置包括一範圍處理電路及一權限處理電路。該範圍處理電路用以自一功能電路接收一記憶體之一實體位址,並依據該實體位址查詢一範圍查找表以獲得一範圍識別碼。該權限處理電路依據對應該功能電路之一裝置識別碼及該範圍識別碼查詢一權限查找表以決定該功能電路對該記憶體之該實體位址之一操作權限。
根據本發明之第三方面,提出一種記憶體控制方法。記憶體控制方法包括以下步驟。自一功能電路接收一記憶體之一實體位址。自該功能電路接收一安全環境指示訊號。該功能電路係為一處理器。依據該安全環境指示訊號,確認該功能電路是否位於一安全環境模式。若該功能電路位於該安全環境模式,則該功能電路直接對該記憶體之該實體位址進行操作。若該功能電路不位於該安全環境模式,則決定該功能電路對該記憶體之該實體位址之一操作權限,該功能電路依據該操作權限對該記憶體之該實體位址進行操作。
根據本發明之第四方面,提出一種記憶體控制裝置。記憶體控制裝置包括一安全環境判斷電路及一權限處理電路。該安全環境判斷電路用以自一功能電路接收一記憶體之一實體位址,並自該功能電路接收一安全環境指示訊號。該功能電路係為一處理器。該安全環境判斷電路依據該安全環境指示訊號,確認該功能電路是否位於一安全環境模式。若該功能電路位於該安全環境模式,則該功能電路直接對該記憶體之該實體位址進行操作。若該功能電路不位於該安全環境模式,則該權限處理電路決定該功能電路對該記憶體之該實體位址之一操作權限,該功能電路依據該操作權限對該記憶體之該實體位址進行操作。
為了對本發明之上述及其他方面有更佳的瞭解,下文特舉實施例,並配合所附圖式詳細說明如下:
請參照第1圖,其繪示根據一實施例之記憶體控制裝置100之示意圖。記憶體控制裝置100包括一範圍處理電路130及一操作權限處理電路140。記憶體900的每一區域皆具有一實體位址(physical address)PA,而功能電路800則利用實體位址PA來表示出其所欲執行操作的記憶體900之區域。在本實施例中,功能電路800提供實體位址PA,以供範圍處理電路130及權限處理電路140據以確認功能電路800對實體位址PA之一操作權限。功能電路800例如是執行作業系統之中央處理器、視訊處理器、或圖形處理器。範圍處理電路130及權限處理電路140例如是一晶片、一電路板、一晶片內之電路模組或儲存數組程式碼之儲存電路。以下進一步參照流程圖詳細說明各項元件之運作方式。
請參照第2圖,其繪示根據一實施例之記憶體控制方法的流程圖。在本實施例中,記憶體900被設定出多個區域(domain)DM。在本實施例中,每一區域DM對應一範圍識別碼(range ID)RID,然而在其他實施例中,多個區域DM可以對應同一範圍識別碼(range ID)RID。各個功能電路800分別對應於一或多個區域DM。每個功能電路800對於各個區域DM有對應的操作權限,例如是完全開放權限(可進行讀取且可進行寫入)或部份開放權限(僅可讀取或僅可寫入)。如此一來,系統彈性地規劃各個功能電路800與其對應的區域DM,而不侷限於傳統固定於兩個區域的規劃方式。
如第2圖所示,在步驟S110中,功能電路800提供記憶體900之實體位址PA至範圍處理電路130。詳言之,當系統欲控制功能電路800使用記憶體900之實體位址PA進行操作時,功能電路800首先將實體位址PA傳送至範圍處理電路130。
接著,在步驟S130中,依據實體位址PA,範圍處理電路130查詢一範圍查找表LUT3,以獲得一範圍識別碼RID。範圍查找表LUT3可以儲存於記憶體900中,或者儲存於另一儲存裝置中。請參照表一,其表示範圍查找表LUT3之一示例。範圍識別碼RID對應於記憶體900從某一起始位址至某一結束位址之連續範圍。範圍處理電路130查詢範圍查找表LUT3,可以得知實體位址PA落於哪一起始位址及哪一結束位址之間,並對應地查詢出範圍識別碼RID。 表一
在步驟S140中,權限處理電路140依據前述範圍識別碼RID及功能電路800提供之一裝置識別碼(device ID)DID,查詢一權限查找表LUT4,以決定功能電路800對實體位址PA之一操作權限。權限查找表LUT4可以儲存於記憶體900中,或者儲存於另一儲存裝置中。請參照表二,其表示權限查找表LUT4之一示例。在一實施例中,操作權限可以透過兩個碼來表示(例如兩個位元),例如第一碼為寫入權限(「0」代表不可寫入、「1」代表可寫入),第二碼為讀取權限(「0」代表不可讀取、「1」代表可讀取)。舉例來說,「00」代表不可寫入且不可讀取,「01」代表不可寫入但可讀取,「10」代表可寫入但不可讀取,「11」代表可寫入且可讀取。 表二
接著,在步驟S150中,記憶體控制裝置100即可依據操作權限對記憶體900進行操作。透過上述實施例,系統可以於記憶體900中彈性地規劃各個功能電路800所對應的區域DM,再透過範圍查找表LUT3及權限查找表LUT4的查詢即可得知對應的操作權限。如此一來,記憶體900的規劃變得更具有彈性。
請參照第3圖,其繪示根據另一實施例之記憶體控制裝置200之示意圖。本實施例之記憶體控制裝置200與記憶體控制裝置100不同之處在於範圍處理電路230,其餘相同之處,不再重複敘述。在本實施例中,為了進一步增加記憶體900規劃上的彈性,可以規劃記憶體900中多個不連續的頁面(page)來組成一個區域DM。每一個頁面的大小例如是4 KB。
範圍處理電路230包括一範圍索引器231及一範圍查找器232。以下進一步參照流程圖詳細說明各項元件之運作方式。
請參照第4圖,其繪示根據另一實施例之記憶體控制方法的流程圖。在本實施例中,步驟S230包括步驟S231及步驟S232。在步驟S231中,範圍索引器231接收到實體位址PA後,轉換實體位址PA為一範圍索引碼RIX,每個範圍索引碼RIX係對應於一個頁面的範圍。舉例來說,範圍索引器231例如是依據下式(1)計算出範圍索引碼RIX。
…………………(1)
在步驟S232中,範圍查找器232依據範圍索引碼RIX,查詢範圍查找表LUT3’,以獲得範圍識別碼RID。請參照第5圖,其繪示範圍查找表LUT3’之示意圖。如第5圖所示,每一範圍索引碼RIX對應一範圍識別碼RID。在本實施例中,假設記憶體900被區分為16個區域DM(每一區域DM由不連續的頁面(page)組成),則需要4位元來表示16個不同的範圍識別碼RID。。舉例來說,從範圍索引碼RIX「1」可以查詢到的範圍識別碼RID「0011」;從範圍索引碼RIX「2」可以查詢到範圍識別碼RID「0100」。
不同的功能電路具有不同的裝置識別碼DID。查詢到範圍識別碼RID之後,即可在步驟S140中,以權限處理電路140依據裝置識別碼DID及範圍識別碼RID,查詢權限查找表LUT4,以決定功能電路800對實體位址PA之操作權限。
同樣地,在步驟S150中,記憶體控制裝置200即可依據操作權限對記憶體900進行操作。透過上述實施例,各個功能電路800可以於記憶體900中彈性地規劃多個不連續的頁面來組成一個區域DM,再透過範圍查找表LUT3’及權限查找表LUT4的查詢即可得知對應的操作權限。如此一來,記憶體900的規劃變得更具有彈性。然而,以4G的記憶體900為例,約包含有1048576個頁面(page),亦即需要記錄1048576組範圍索引碼RIX,而以將記憶體900區分為16個區域DM為例,則每個範圍識別碼RID至少需要4位元。在上述情形下,範圍查找表LUT3’所需要的記憶體空間將非常龐大。
請參照第6圖,其繪示根據另一實施例之記憶體控制裝置300之示意圖。本實施例之記憶體控制裝置300與記憶體控制裝置200不同之處在於記憶體控制裝置300更包括一篩選電路320,其餘相同之處,不再重複敘述。在本實施例中,為了進一步加快處理速度,在決定權限前,先進行篩選,以篩選出具有部份開放權限之實體位址PA,並僅針對此些實體位址PA進行判斷,進而縮短處理時間。
篩選電路320包括一分類檢索器321及一權限查找器322。以下進一步參照流程圖詳細說明各項元件之運作方式。
請參照第7圖,其繪示根據另一實施例之記憶體控制方法的流程圖。在本實施例中,在步驟S230之前更執行步驟S320。於步驟S320中,篩選電路320依據實體位址PA查詢一篩選表LUT2,以分析出功能電路800提供之實體位址PA對應於一完全開放權限或一部份開放權限。篩選表LUT2可以儲存於記憶體900中,或者儲存於另一儲存裝置中。步驟S320包括步驟S321及步驟S322。在步驟S321中,分類檢索器321轉換實體位址PA為一分類索引碼GIX,每一分類索引碼GIX對應於一特定大小的記憶體範圍,例如說1 MB的範圍,此時分類索引器321例如是依據下式(2)計算出分類索引碼GIX。
…………………(2)
在步驟S322中,權限查找器322依據分類索引碼GIX,查詢篩選表LUT2,以查詢出實體位址PA對應完全開放權限與部份開放權限的其中之一。請參照第8圖,其繪示篩選表LUT2之示意圖。如第8圖所示,每一分類索引碼GIX對應一權限值AU。權限值AU僅需要由1位元來表示,舉例來說,從分類索引碼GIX「1」可以查詢到權限值AU「0」;從分類索引碼GIX「2」可以查詢到權限值AU「1」。「0」的權限值AU代表部分開放權限,「1」的權限值AU代表完全開放權。
若實體位址PA對應於部分開放權限,則將此實體位址PA傳送至範圍處理電路230,以繼續進行權限之分析處理。實體位址PA傳遞至範圍處理電路230後,則繼續執行步驟S230。本實施例之步驟S230同上所述,在此不再重複敘述。
若實體位址PA對應於完全開放權限,則可直開放此功能電路800依據此實體位址PA對記憶體900進行讀取或寫入之操作。如此一來,在處理權限所進行的篩選步驟(步驟S320)可以篩選出具有部份完全權限之實體位址PA,並可跳過後續的步驟S234及S240權限的分析僅針對此些實體位址進行判斷,進而縮短處理時間。此外,透過第6圖的實施例,完全開放權限的記憶體部分不需要再儲存於範圍查找表LUT3’與權限查找表LUT4,因此解決了第3圖實施例中範圍查找表LUT3’需要龐大記憶體空間的問題。例如說4G的記憶體900中只有512Mb需要限制權限,則透過第6圖的實施例可以節省7/8的查找表儲存空間。再另一實施例中,篩選表LUT2可以直接建於SRAM之中。由於篩選表LUT2是第6圖的實施例中必須被查找的資料,直接建於SRAM可以大幅降低讀取DRAM的延遲。雖然SRAM成本較DRAM為高,但由於篩選表LUT2僅需要極小的空間,因此尚不至於增加太製造成本。
請參照第9圖,其繪示根據另一實施例之記憶體控制裝置400之示意圖。本實施例之記憶體控制裝置400與記憶體控制裝置100不同之處在於記憶體控制裝置400更包括一安全環境判斷電路450,且其中之一功能電路800’係為一處理器,其餘相同之處,不再重複敘述。在本實施例中,功能電路800’為一處理器,且具有可切換安全環境模式/非安全環境模式之功能。功能電路800’處於安全環境模式時,其權限全開;功能電路800’處於非安全環境模式時,如同其他功能電路800需透過上述控制方法開啟對應之權限。以下進一步參照流程圖詳細說明各項元件之運作方式。
請參照第10圖,其繪示根據另一實施例之記憶體控制方法的流程圖。在本實施例中,在步驟S110之後前更執行步驟S460。於步驟S460中,安全環境判斷電路450自一功能電路800’接收一安全環境指示訊號SI。功能電路800’例如是一處理器。
接著,於步驟S470中,安全環境判斷電路450依據安全環境指示訊號SI,確認功能電路800’是否位於一安全環境模式。
若功能電路800’位於安全環境模式,則進入步驟S480。若功能電路800’不位於安全環境模式,則進入步驟S130。進入步驟S130之後的程序同上所述,在此不在重複敘述。
於步驟S480中,功能電路800’可以直接對記憶體900之實體位址PA進行操作。如此一來,當功能電路800’位於安全環境模式時,可以讓功能電路800’擁有對記憶體900的全部權限。
綜上所述,雖然本發明已以實施例揭露如上,然其並非用以限定本發明。本發明所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作各種之更動與潤飾。因此,本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100、200、300、400‧‧‧記憶體控制裝置
130、230‧‧‧範圍處理電路
140‧‧‧權限處理電路
231‧‧‧範圍索引器
232‧‧‧範圍查找器
320‧‧‧篩選電路
321‧‧‧分類檢索器
322‧‧‧權限查找器
450‧‧‧安全環境判斷電路
800、800’‧‧‧功能電路
900‧‧‧記憶體
AU‧‧‧權限值
DID‧‧‧裝置識別碼
DM‧‧‧區域
GIX‧‧‧分類索引碼
LUT2‧‧‧篩選表
LUT3、LUT3’‧‧‧範圍查找表
LUT4‧‧‧權限查找表
PA‧‧‧實體位址
RID‧‧‧範圍識別碼
RIX‧‧‧範圍索引碼
S110、S130、S140、S150、S230、S231、S232、S320、S321、S322‧‧‧步驟
SI‧‧‧安全環境指示訊號
第1圖繪示根據一實施例之記憶體控制裝置之示意圖。 第2圖繪示根據一實施例之記憶體控制方法的流程圖。 第3圖繪示根據另一實施例之記憶體控制裝置之示意圖。 第4圖繪示根據另一實施例之記憶體控制方法的流程圖。 第5圖繪示範圍查找表之示意圖。 第6圖繪示根據另一實施例之記憶體控制裝置之示意圖。 第7圖繪示根據另一實施例之記憶體控制方法的流程圖。 第8圖繪示篩選表之示意圖。 第9圖繪示根據另一實施例之記憶體控制裝置之示意圖。 第10圖繪示根據另一實施例之記憶體控制方法的流程圖。

Claims (21)

  1. 一種記憶體控制方法,包括: 自一功能電路接收一記憶體之一實體位址; 依據該實體位址查詢一範圍查找表以決定一範圍識別碼;以及 依據對應該功能電路之一裝置識別碼及該範圍識別碼查詢一權限查找表以決定該功能電路對該記憶體之該實體位址之一操作權限。
  2. 如申請專利範圍第1項所述之記憶體控制方法,其中該範圍識別碼係對應於該記憶體之一區間。
  3. 如申請專利範圍第1項所述之記憶體控制方法,其中該操作權限包含一讀取權限及一寫入權限的至少其中之一。
  4. 如申請專利範圍第1項所述之記憶體控制方法,其中查詢該範圍查找表之步驟包括: 轉換該實體位址為一範圍索引碼,該範圍索引碼對應於該記憶體之一頁面的範圍;以及 依據該範圍索引碼查詢該範圍查找表以決定該範圍識別碼。
  5. 如申請專利範圍第1項所述之記憶體控制方法,更包括: 依據該實體位址查詢一篩選表以決定該實體位址係對應於一完全開放權限與一部份開放權限的其中之一,若該實體位址對應於該部分開放權限,則進行該依據該實體位址查詢該範圍查找表以獲得該範圍識別碼之步驟。
  6. 如申請專利範圍第5項所述之記憶體控制方法,其中依據該實體位址查詢該篩選表以決定該實體位址係對應於該完全開放權限與該部份開放權限的其中之一之步驟包括: 轉換該實體位址為一分類索引碼,該分類索引碼對應於一特定大小之記憶體範圍;以及 依據該分類索引碼查詢該篩選表以查詢出該實體位址對應於該完全開放權限與該部份開放權限的其中之一。
  7. 如申請專利範圍第1項所述之記憶體控制方法,更包括: 自該功能電路接收一安全環境指示訊號,該功能電路係為一處理器; 依據該安全環境指示訊號,確認該功能電路是否位於一安全環境模式;以及 若該功能電路位於該安全環境模式,則該功能電路直接對該記憶體之該實體位址進行操作。
  8. 如申請專利範圍第1項所述之記憶體控制方法,其中該安全環境指示訊號係為一非安全位元碼(non-secure bit)。
  9. 一種記憶體控制裝置,包括: 一範圍處理電路,用以自一功能電路接收一記憶體之一實體位址,並依據該實體位址查詢一範圍查找表以獲得一範圍識別碼;以及 一權限處理電路,依據對應該功能電路之一裝置識別碼及該範圍識別碼查詢一權限查找表以決定該功能電路對該記憶體之該實體位址之一操作權限。
  10. 如申請專利範圍第9項所述之記憶體控制裝置,其中於該範圍識別碼係對應於該記憶體之一區間。
  11. 如申請專利範圍第9項所述之記憶體控制裝置,其中該操作權限包含一讀取權限及一寫入權限的至少其中之一。
  12. 如申請專利範圍第9項所述之記憶體控制裝置,其中該範圍處理電路包括: 一範圍索引器,用以轉換該實體位址為一範圍索引碼,該範圍索引碼對應於該記憶體之一頁面的範圍;以及 一範圍查找器,依據該範圍索引碼查詢該範圍查找表以決定該範圍識別碼。
  13. 如申請專利範圍第9項所述之記憶體控制裝置,更包括: 一篩選電路,耦接於該功能電路與該範圍處理電路之間,用以依據該實體位址查詢一篩選表以決定該實體位址係對應於一完全開放權限與一部份開放權限的其中之一,若該實體位址對應於該部分開放權限,則傳遞該實體位址至該範圍處理電路。
  14. 如申請專利範圍第13項所述之記憶體控制裝置,其中該篩選電路包括: 一分類索引器,用以轉換該實體位址為一分類索引碼,該分類索引碼對應於一特定大小之記憶體範圍;以及 一權限查找器,用以依據該分類索引碼查詢該篩選表以決定該實體位址對應於該完全開放權限與該部份開放權限的其中之一。
  15. 如申請專利範圍第9項所述之記憶體控制裝置,更包括: 一安全環境判斷電路,用以自該功能電路接收一安全環境指示訊號,該功能電路係為一處理器,該安全環境判斷電路依據該安全環境指示訊號,確認該功能電路是否位於一安全環境模式,若該功能電路位於該安全環境模式,則該功能電路直接對該記憶體之該實體位址進行操作。
  16. 如申請專利範圍第15項所述之記憶體控制裝置,其中該安全環境指示訊號係為一非安全位元碼(non-secure bit)。
  17. 一種記憶體控制方法,包括: 自一功能電路接收一記憶體之一實體位址; 自一處理器接收一安全環境指示訊號; 依據該安全環境指示訊號,確認該處理器是否位於一安全環境模式; 若該處理器位於該安全環境模式,則該功能電路直接對該記憶體之該實體位址進行操作;以及 若該處理器不位於該安全環境模式,則決定該功能電路對該記憶體之該實體位址之一操作權限,該功能電路依據該操作權限對該記憶體之該實體位址進行操作。
  18. 如申請專利範圍第17項所述之記憶體控制方法,其中決定該功能電路對該記憶體之該實體位址之該操作權限之步驟包括: 依據該實體位址查詢一範圍查找表以決定一範圍識別碼;以及 依據對應該功能電路之一裝置識別碼及該範圍識別碼查詢一權限查找表以決定該功能電路對該記憶體之該實體位址之該操作權限。
  19. 一種記憶體控制裝置,包括: 一安全環境判斷電路,用以自一功能電路接收一記憶體之一實體位址,並自該功能電路接收一安全環境指示訊號,該功能電路係為一處理器,該安全環境判斷電路依據該安全環境指示訊號,確認該功能電路是否位於一安全環境模式,若該功能電路位於該安全環境模式,則該功能電路直接對該記憶體之該實體位址進行操作;以及 一權限處理電路,若該功能電路不位於該安全環境模式,則該權限處理電路決定該功能電路對該記憶體之該實體位址之一操作權限,該功能電路依據該操作權限對該記憶體之該實體位址進行操作。
  20. 如申請專利範圍第19項所述之記憶體控制裝置,其中該安全環境指示訊號係為一非安全位元碼(non-secure bit)。
  21. 如申請專利範圍第19項所述之記憶體控制裝置,更包括: 一範圍處理電路,用以依據該實體位址查詢一範圍查找表以決定一範圍識別碼,該權限處理電路係依據對應該功能電路之一裝置識別碼及該範圍識別碼查詢一權限查找表以決定該功能電路對該記憶體之該實體位址之該操作權限。
TW107102114A 2018-01-19 2018-01-19 記憶體控制裝置及記憶體控制方法 TW201933122A (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
TW107102114A TW201933122A (zh) 2018-01-19 2018-01-19 記憶體控制裝置及記憶體控制方法
US16/045,808 US20190228169A1 (en) 2018-01-19 2018-07-26 Memory control device and memory control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
TW107102114A TW201933122A (zh) 2018-01-19 2018-01-19 記憶體控制裝置及記憶體控制方法

Publications (1)

Publication Number Publication Date
TW201933122A true TW201933122A (zh) 2019-08-16

Family

ID=67298666

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107102114A TW201933122A (zh) 2018-01-19 2018-01-19 記憶體控制裝置及記憶體控制方法

Country Status (2)

Country Link
US (1) US20190228169A1 (zh)
TW (1) TW201933122A (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111712815A (zh) * 2018-08-14 2020-09-25 华为技术有限公司 人工智能ai处理方法和ai处理装置
US11860670B2 (en) * 2021-12-16 2024-01-02 Intel Corporation Accessing a memory using index offset information
GB2637714A (en) * 2024-01-31 2025-08-06 Advanced Risc Mach Ltd Attribute information

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4669043A (en) * 1984-02-17 1987-05-26 Signetics Corporation Memory access controller

Also Published As

Publication number Publication date
US20190228169A1 (en) 2019-07-25

Similar Documents

Publication Publication Date Title
US20240176505A1 (en) Channel Optimized Storage Modules
US7447870B2 (en) Device for identifying data characteristics for flash memory
US7171500B2 (en) Systems and methods for target mode connection management in SAS connections
JP6071341B2 (ja) 領域記述子グローバル化制御を有するメモリ管理ユニット
CN113486410B (zh) 一种保护数据安全的方法、cpu核、cpu芯片和电子设备
JP4945053B2 (ja) 半導体装置、バスインターフェース装置、およびコンピュータシステム
US7334042B2 (en) Systems and methods for initiator mode connection management in SAS connections
US20090271861A1 (en) Data processing apparatus and access control method therefor
CN103488588A (zh) 一种内存保护方法、系统及网络接口控制器
JP2006523347A (ja) 周辺装置アクセス保護を有するデータ処理システムおよびその方法
US9489316B2 (en) Method and device implementing execute-only memory protection
TW201933122A (zh) 記憶體控制裝置及記憶體控制方法
US10133497B1 (en) SPI command censoring method and apparatus
US6732246B2 (en) Memory apparatus and memory access restricting method
JP3984206B2 (ja) マイクロプロセッサー及び映像音声システム
JP2021507362A (ja) 間接アクセスメモリコントローラ向けの保護機能を追加するための機器
US9678899B2 (en) Method and apparatus for providing memory protection
US11216390B2 (en) Storage device, memory access control system, and memory access control method
CN110134325A (zh) 存储器控制装置及存储器控制方法
US9864548B2 (en) Memory module, electronic device and method
CN112771490B (zh) 通过读取标识(rid)号在存储器中寻址
CN110096457B (zh) 硬件控制系统及硬件控制方法
CN111539034A (zh) 固态硬盘双协议加密方法、装置及固态硬盘加密芯片
CN111291383A (zh) SoC上任意实体间的物理地址空间访问隔离方法、SoC及计算机设备
US11709785B2 (en) Just-in-time post-processing computation capabilities for encrypted data