KR100338446B1 - 메모리액세스제어를제공하는방법및데이타처리시스템 - Google Patents

메모리액세스제어를제공하는방법및데이타처리시스템 Download PDF

Info

Publication number
KR100338446B1
KR100338446B1 KR1019940027822A KR19940027822A KR100338446B1 KR 100338446 B1 KR100338446 B1 KR 100338446B1 KR 1019940027822 A KR1019940027822 A KR 1019940027822A KR 19940027822 A KR19940027822 A KR 19940027822A KR 100338446 B1 KR100338446 B1 KR 100338446B1
Authority
KR
South Korea
Prior art keywords
bits
mode
transparent
data processor
logical address
Prior art date
Application number
KR1019940027822A
Other languages
English (en)
Other versions
KR950015083A (ko
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 모토로라 인코포레이티드
Publication of KR950015083A publication Critical patent/KR950015083A/ko
Application granted granted Critical
Publication of KR100338446B1 publication Critical patent/KR100338446B1/ko

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Storage Device Security (AREA)
  • Memory System Of A Hierarchy Structure (AREA)
  • Memory System (AREA)

Abstract

데이타 처리 시스템(10 또는 28) 및 그 방법은 메모리 관리 유닛(MMU 14)을 사용한다. 처리기는 동작의 사용자 모드 및 감시 모드와 같은 두 특권 동작 모드를 갖는다. MMU(14)는 논리 어드레스 변환이 캐시 액세스 및 테이블워크를 통해 수행되는 제 1 동작 모드, 및 제 2 동작 모드를 갖는다. 제 2 동작 모드는 제 1 투명 변환 레지스터(TTR 16), 제 2 투명 변환 레지스터(TTR 18) 또는 디폴트 장소(22)중 하나로부터 변환 속성 비트를 제공하는 것을 포함한다. TTR(16 및 18)은 각각 다른 어드레스 공간과 다른 어드레스 메모리 크기를 맵핑할 수 있으며, 디폴트 장소(22)는 TTR(16 및 18)중 한 TTR에 의해 맵핑되지 않은 모든 메모리를 커버한다. 디폴트 장소(22)는 프로그램 가능하며, 기록 보호를 제공하고, 특권 모드로부터 독립된 속성 비트를 제공한다.

Description

메모리 액세스 제어를 제공하는 방법 및 데이타 처리 시스템
발명의 분야
본 발명은 일반적으로 메모리에 액세스하는 데이타 처리기에 관한 것이며, 특히, 투명 어드레스 변환 레지스터(transparent address translation registers)를 갖는 메모리 관리 유닛에 관한 것이다.
발명의 배경
메모리 관리 유닛에 있어서, 메모리의 수 개의 큰 영역에 대한 투명 맵핑(transparent mapping)을 요구하는 시스템을 만족시키기 위하여, 때때로 투명 변환 레지스터가 맵핑하지 않는 남은 어드레스 공간상에 메모리 액세스 제어를 제공할 필요가 있다. 이것은 과거에는 메모리 관리 유닛 내에 저장된 고정 배선의 액세스 제어 속성 비트 셋에 의해 이루어졌다. 이러한 고정 배선된 기억 방법은 속성 비트가 하드웨어의 고정된 기억 장소에 저장되고 시스템 사용자 또는 프로그래머에 의해 변경될 수 없다는 융통성 부재의 중대한 단점을 갖고 있다.
일부 시스템은, 맵핑되지 않는 공간상에 액세스 제어를 제공하도록 MMU를 위한 동작 모드에 종속하는 특권 모드(privilege mode)를 결합한다. 특히, 일치 변환 모드(Identity Translation Mode)에 있어서, 액세스 제어는 네 개의 영역 디스크립터 셋에 의해 조절되며, 여기에서 제 1 디스크립터는 감시(supervisor) 공간 명령 액세스를 제어하는데 이용되고, 제 2 디스크립터는 감시 공간 피연산자 액세스를 제어하는데 이용되며, 제 3 디스크립터는 사용자 공간 명령 액세스를 제어하는데 이용되고, 제 4 디스크립터는 사용자 공간 피연산자 액세스를 제어하는데 이용된다. 이 방법은, 감시 영역 디스크립터가 사용자 프로그램에 의해 권한을 부여 받지 않은 액세스로부터 감시 공간을 보호할 수 없으므로 감시 및 사용자 공간으로 논리어드레스 공간의 분할을 요구한다는 점에서 중대한 단점을 가진다. 상기 방법의 또 다른 중요한 단점은 프로그래머에 의해 구성되어야 하는 다수의 레지스터(a multiple number of register)를 요구한다는 것이다.
발명의 요약
본 발명에 의해 상기 언급된 단점은 극복될 수 있으며, 다른 장점들도 가지게 된다. 한 형태에 있어서, 본 발명은 데이타 처리 시스템이 적어도 두개의 처리기 특권 동작 모드를 갖는 데이타 처리 시스템에 메모리 액세스 제어를 제공하는 방법을 포함한다. 논리 어드레스는 데이타 처리기 내의 메모리 관리 유닛에 제공된다. 논리 어드레스의 부분은 제 1 투명 변환 레지스터 내의 소정 수의 비트에 선택적으로 비교된다. 논리 어드레스의 부분이 제 1 투명 변환 레지스터의 소정 수의 비트와 동일하다면, 제 1 제어 신호가 표명된다. 논리 어드레스의 부분은 제 2 투명 변환 레지스터 내의 소정 수의 비트에 선택적으로 비교된다. 논리 어드레스의 부분이 제 2 투명 변환 레지스터의 소정 수의 비트와 같다면 제 2 제어 신호가 표명된다. 제 1 투명 변환 레지스터로부터의 속성 비트, 제 2 투명 변환 레지스터로부터의 속성 비트, 또는 디폴트 기억 장소로부터의 속성 비트는, 제 1 제어 신호 또는 제 2 제어 신호에 기초하여 선택된다. 디폴트 기억 장소는 처리기 특권 모드와 관계없이 속성 비트를 제공한다.
또 다른 형태에 있어서, 본 발명은 적어도 두 동작 모드를 갖는 메모리 관리 유닛을 갖는 데이타 처리기를 포함한다. 상기 한 동작 모드는 정규 동작 모드이며 제 2 동작 모드는 디폴트 동작 모드이다. 데이타 처리기는 두 특권 모드가 데이타보호를 제공하는 두 특권 모드(한 형태에 있어서, 사용자 및 감시 모드)를 갖는다. 데이타 처리기는 메모리 관리 유닛에 논리 어드레스를 제공하기 위한 회로를 갖는다. 제 1 및 제 3 투명 변환 레지스터는 기능적으로 메모리 관리 유닛의 부분이다. 논리 어드레스를 수신하기 위한 비교 회로는 데이타 처리기 내에 위치된다. 비교 회로는 제 1 투명 변환 레지스터 및 제 2 투명 변환 레지스터 양자 모두에 결합된다. 비교 회로는 논리 회로의 소정 수의 비트를 제 1 및 제 2 투명 변환 레지스터 각각의 소정 수의 비트와 비교하며, 논리 어드레스의 소정 수의 비트가 제 1 및 제 2 투명 변환 레지스터 중 하나의 소정 수의 비트와 같다면 제어 신호를 표명한다. 비교 회로는 디폴트 동작 모드에서 작용한다. 메모리 관리 유닛 내의 디폴트 기억 장소는 다수의 속성 비트를 저장하는데 이용된다. 디폴트 기억 장소는 특권 모드와 상관없이 다수의 속성 비트를 제공하기 위한 출력을 갖는다. 선택기 회로는 제 1 투명 변환 레지스터로부터 소정 수의 속성 비트를 수신하기 위한 제 1 입력을 갖고, 제 2 투명 변환 레지스터로부터 소정 수의 속성 비트를 수신하기 위한 제 2 입력을 가지며, 특권 모드에 관계없이 다수의 속성 비트를 제공하기 위한 출력에 결합된 제 3 입력을 갖는다. 선택기 회로는 제어 신호에 결합되며, 여기에서 제어 신호는 선택기 회로의 출력을 결정하는데 이용되고, 선택기 회로의 출력은 제 1 입력, 제 2 입력, 또는 제 3 입력 중 한 입력의 비트가 된다. 선택기 회로는 디폴트 동작 모드에서 작용한다.
본 발명은 이후 첨부한 도면과 관련된 상세한 설명으로부터 더욱 명확히 이해될 수 있을 것이다.
간략하고 명료한 설명을 위해 도면의 구성요소들이 반드시 축척대로 도시되지는 않았다는 것을 이해할 수 있을 것이다. 실례로, 일부 구성요소들의 크기(dimensions)는 명료함을 위해 다른 구성요소에 비해 과장된다. 또한, 도면에 있어서 참조번호는 상응하는 또는 유사한 구성요소에 대하여 반복 기재되었다.
바람직한 실시예의 상세한 설명
일반적으로, 본 발명은 데이타 처리기 내의 메모리 액세스 제어를 제공하기 위한 방법 및 장치를 제공한다. 이것은 정규 메모리 액세스 동안 논리 어드레스 대 물리 어드레스의 디폴트 어드레스 맵핑을 실행함으로써 달성된다. 상기 방법은 특권 모드(감시 또는 사용자)와 논리 어드레스를 메모리 관리 유닛(MMU)에 제공함으로써 시작된다. 특권 모드와 논리 어드레스가 제 1 투명 변환 레지스터(TTR)에 의해 규정되는 논리 어드레스의 블럭 및 특권 모드와 부합(match)하는지 또는 제 2 투명 변환 레지스터에 의해 규정된 논리 어드레스의 블럭 및 특권 모드와 부합하는지에 대한 결정이 수행된다. 제 1 TTR이 부합될 경우, 메모리 액세스 동안 논리 어드레스의 투명 맵핑(transparent mapping)이 제 1 TTR에 의해 수행된다. 제 2 TTR 이 부합되고 제 1 TTR이 부합되지 않을 경우, 논리 어드레스의 투명 맵핑은 제 2 TTR에 의해 수행된다. 하지만, 어느 TTR도 부합되지 않는다면, 디폴트 어드레스 변환이 호출되며, 디폴트 액세스 제어 레지스터에 저장된 액세스 제어 비트 셋이 액세스를 위해 이용된다.
디폴트 액세스 제어 레지스터는 기록 보호 비트의 저장을 통하여 기록 보호를 제공한다. 디폴트 액세스 제어 레지스터는 사용자 또는 감시 모드가 활용되는지에 관계없이 또는 그에 독립적인 속성 비트를 출력한다. 더욱이, 디폴트 액세스 제어 레지스터는 시스템 사용자 또는 프로그래머에 의해 변경되거나 프로그램 될 수 있는 속성 비트를 출력한다.
본 발명은 제 1 도 내지 제 5 도를 참조하여 더욱 완전히 이해될 수 있을 것이다. 제 1 도는 처리기(10)를 갖는 시스템을 도시한다. 처리기(10)는 파이프라인 유닛(12) 및 메모리 관리 유닛(MMU)(14)을 갖는다. 유닛(12)은 처리기(10) 내의 명령을 실행하는데 이용된다. 유닛(12)은 두 특권 레벨인 감시 모드 또는 사용자 모드중 한 모드에서 동작한다. 일반적으로, 처리기(10)는 마이크로프로세서, 파이프라인 실행 장치, 응용 주문형 집적회로(ASIC) 장치, 프로그램 가능 논리 어레이(PLA), 고정 배선 논리, 마이크로코드 및/또는 나노코드에 의해 적어도 부분적으로 소프트웨어 구동되는 실행 유닛, 다수의 실행 장치, 디지털 신호 처리기(DSP), 컴퓨터, 데이타 처리기, 중앙 처리 유닛(CPU), 마이크로제어기 유닛(MCU) 등이거나 또는 이들을 포함할 수 있다.
처리기(10) 내의 MMU(14)의 주 기능은 유닛(12)에 의해 제공된 논리 어드레스를 정규 동작 모드에서 변환 회로를 사용하여 물리 어드레스로 변환하는 것이다. 변환 회로(11)는 정규 동작 모드에서 어드레스 변환을 수행하도록 어드레스 변환 캐시(ATC) 액세스 및/또는 테이블워크(tablewalks)를 요구할 수 있다. 디폴트 동작 모드에서 변환 회로(11)는 물리 어드레스로서 논리 어드레스를 제공하며(즉, 논리 어드레스 비트는 물리 어드레스 비트와 같다), 버스 속성 비트는 제 1 도에서 도시된 회로를 통하여 유도된다.
앞서 설명된 바와 같이, MMU(14)는 두 동작 모드인 정규 모드 또는 디폴트 모드중 한 모드로 동작한다. MMU(14)는 디폴트 또는 정규 동작 모드의 정규 메모리 액세스 동안 물리 어드레스로 이용될 논리 어드레스의 블럭을 규정하는데 이용되는 제 1 투명 변환 레지스터(TTR)(16)와 제 2 투명 변환 레지스터(18)를 갖는다. 바람직한 형태에서, TTR들은 정규 동작 모드 동안 통상 사용 금지되므로 단지 디폴트 동작 모드에서만 이용된다. MMU(14)는 또한 회로(11)를 통하여 제 1 도에 도시되며, 논리 어드레스를 물리 어드레스로 변환하는데 이용되는 페이지 어드레스 변환 유닛을 갖는다.
유닛(12 및 14)은 외부 어드레스 버스를 통하여 외부 메모리(26)에 연결된다. 양방향 데이타 버스는 제 1 도에 도시된 바와 같이 외부 메모리(26)와 파이프 라인 유닛(12) 사이에 연결된다. 간략성을 위해 제 1 도에는 도시되지 않았지만 많은 경우에 있어서, 어드레스 버스 및 데이타 버스는 입력 구동기, 출력 구동기, I/O 구동기, 버스 제어 회로, 캐시 유닛 등과 같은 논리 장치를 통해 진행한다. 유닛(14)은 또한 다수의 속성 신호를 통하여 외부 메모리(26)에 연결된다. 파이프 라인 유닛(12)은 메모리(26)로부터 데이타를 수신하며, 유닛(14)은 메모리(26)로 어드레스 및 액세스 제어 정보를 제공한다.
파이프라인 유닛(12)은 메모리(26)로의 액세스가 요구되는지를 결정한다. 내부 논리 어드레스는 도시된 바와 같이 MMU(14)에 제공된다. MMU(14)는 먼저 비교기 유닛(20)을 통하여 특권 모드 및 논리 어드레스를 TTR(16)에 의해 규정된 특권 모드 및 논리 어드레스 블럭과 비교하며, TTR(18)에 의해 규정된 특권 모드 및 논리어드레스 블럭과 비교한다. 종래 기술에서 많은 직렬 비교 유닛이 존재하며 이들이 TTR(16) 및 TTR(18)에 이용될 수 있지만, 바람직한 형태에 있어서 유닛(20)은 병렬 비교 유닛이 된다. TTR(16) 또는 TTR(18) 중 어느 하나가 비교기 유닛(20)을 통하여 부합되면, 논리 어드레스는 메모리 액세스에 대한 물리 어드레스로서 이용된다. 부가하여, 비교기 유닛(20)의 출력에 의해 제어되는 멀티플렉서(MUX)(24)는, 부합된 TTR(TTR 16 또는 TTR 18)에 저장된 액세스 제어 속성 비트 셋을 다수의 속성 데이타 라인을 통하여 메모리(26)에 패스(pass)한다.
TTR(16 또는 18)이 모두 부합되지 않는다면, MMU(14)는 정규 모드에서 동작하고, 페이지 어드레스 변환 유닛(11)이 논리 어드레스의 물리 어드레스 변환을 수행하도록 호출되며, MUX(24)의 출력은 메모리 액세스에 대하여 무시된다. 어떤 TTR도 부합되지 않고 MMU(14)가 디폴트 모드에서 동작한다면, 프로그래머 가시의(visible) 디폴트 액세스 제어 레지스터(22) 내에 저장된 액세스 제어 비트 셋이 액세스에 이용된다.
일단 물리 어드레스 및 액세스 제어 속성 셋이 외부 메모리(26)에 의해 수신되었다면, 외부 메모리(26)는 외부 물리 어드레스에 응답하여 데이타 버스를 통해 다수의 데이타 비트를 파이프라인 유닛(12)에 제공한다.
바람직한 형태에 있어서, TTR(16), TTR(18) 및 디폴트 액세스 제어 레지스터(디폴트 기억 장치)(22)에 저장된 액세스 제어 속성 비트 셋은, 캐시 모드 비트 셋, 사용자 페이지 속성 비트 셋, 및 데이타 기록 액세스 보호 비트를 포함한다. 디폴트 액세스 제어 레지스터(22)가 존재하지 않으며, MMU(14)가 디폴트 모드로 동작한다면, TTR 미스(miss)의 경우 (TTR 16 또는 TTR 18에 대응되는 어드레스가 없음)에 유연한 액세스 제어가 맵핑되지 않은 공간에 대해 제공될 수 없다는 것은 중요하다. 또한, 디폴트 액세스 제어 레지스터(22)가 존재하지 않으며, MMU(14)가 디폴트 모드에서 동작한다면, 데이타 기록 액세스 보호가 TTR 미스의 경우에 맵핑되지 않은 공간에 대해 제공될 수 없다는 사실 역시 중요하다.
제 2 도는 다수의 어드레스 및 데이타 라인을 통하여 외부 메모리(50)에 연결된 처리기(28)를 갖는 또 다른 데이타 처리 시스템을 도시한다. 처리기(28)는 파이프라인 유닛(30)과 두 개의 독립 메모리 캐시 유닛인 명령 캐시 유닛(ICU)(48) 및 피연산자 데이타 캐시 유닛(OCU)(66)을 갖는다. 유닛(30)은 처리기(28) 내의 명령을 실행하는데 이용되며, 두 특권 레벨인 감시 모드 또는 사용자 모드 중 한 모드로 동작한다. ICU(48) 및 OCU(66)는 다수의 어드레스 및 데이타 라인을 통하여 유닛(30)에 연결된다. ICU(48)는 파이프라인 유닛(30)에 의한 급속한 액세스를 위해 최근에 프리페치된 명령(prefetched instruction) 데이타의 카피를 유지하는데 이용된다. OCU(66)는 파이프라인 유닛(30)에 의한 급속한 액세스를 위해 최근에 인출된(fetched) 피연산자 데이타의 카피를 유지하는데 이용된다. ICU(48) 및 OCU(66)에 저장된 데이타는 동시에 유닛(30)에 제공될 수 있으며, 그것이 외부 메모리(50)에 의해 제공될 수 있는 것보다 더 빠르다. 따라서, ICU(48) 및 OCU(66)는 명령 데이타 및 피연산자 데이타 액세스의 처리량(throughput) 개선의 목적을 위해 이용된다.
처리기(28)는 또한 명령 데이타의 프리페칭 동안 물리 어드레스로서 이용될논리 어드레스의 블럭을 규정하는데 사용되는 제 1 투명 변환 레지스터(TTR)(34) 및 제 2 투명 변환 레지스터(36)를 가지며, 피연산자 데이타 액세스 동안 물리 어드레스로서 이용될 논리 어드레스의 블럭을 규정하는데 사용되는 제 3 투명 변환 레지스터(54) 및 제 4 투명 변환 레지스터(56)를 갖는다. 바람직한 형태에 있어서, 각각의 TTR(34, 36, 54 및 56)은 논리 어드레스 베이스 필드, 논리 어드레스 마스크 필드, 특권 모드 비트, 및 다수의 액세스 제어 속성 비트를 포함하며, 상기 속성 비트는 캐시 모드 비트 셋, 사용자 페이지 속성 비트 셋, 및 데이타 기록 액세스 보호 비트를 포함한다.
파이프라인 유닛(30)은 ICU(48) 및/또는 OCU(58)에 명령 데이타 액세스 및/또는 피연산자 데이타 액세스가 요구되는지를 결정한다. 명령 데이타 액세스가 요구된다면, (상위(upper) 및 하위(lower) 비트 부분으로 분할된) 논리 어드레스(32)가 ICU(48) 및 비교기 회로(42)에 제공된다. 논리 어드레스(32)는 도시된 바와 같이 상위 부분과 하위 부분으로 분할된다. 비교기 회로(42)는 특권 모드와 논리 어드레스의 상위 부분을 특권 모드 비트와 TTR(34)에 저장된 논리 어드레스 베이스 비트와 비교하며, 특권 모드 비트와 TTR(36)에 저장된 논리 어드레스 베이스 비트와 비교하는데 이용된다. 마스크 회로(38)는 비교 중에 TTR(34)의 논리 어드레스 베이스 필드 중 어느 비트가 무시되는지를 결정하기 위해 TTR(34)에 저장된 논리 어드레스 마스크 비트를 이용한다. TTR(34)의 논리 어드레스 마스크 비트가 설정되면, TTR(34)의 대응하는 논리 어드레스 베이스 비트는 비교 중에 무시된다. 유사한 방법으로, 마스크 회로(40)는 TTR(36)의 논리 어드레스 베이스 필드 중 어느 비트가 비교 중에 무시되는지를 결정하기 위하여 TTR(36)에 저장된 논리 어드레스 마스크 비트를 사용한다. TTR(34) 또는 TTR(36) 중 어느 하나가 부합된다면, 비교기 회로(42)의 출력에 의해 제어되는 선택기 회로(44)는 부합된 TTR에 저장된 액세스 제어 속성 비트 셋을 다수의 데이타 라인을 통해 ICU(48)로 패스한다. 어느 TTR도 부합되지 않는다면, 선택기 회로(44)는 프로그래머 가시의 디폴트 액세스 제어 레지스터(46)에 저장된 액세스 제어 비트(46a) 셋을 ICU(48)로 패스한다. 논리 어드레스를 물리 어드레스로 사용하면, ICU(48)는 물리 어드레스에 응답하여 그 메모리 뱅크 내의 캐시 데이타를 조사한다. 찾게 된다면, ICU(48)는 그 데이타를 다수의 데이타 라인을 통해 파이프라인 유닛(30)으로 공급한다. 상기 데이타가 ICU(48) 내에서 발견되지 않는다면, ICU(48)는 외부 메모리 액세스를 요청하고, 다수의 데이타 라인을 통해 액세스 제어 속성 비트를 외부 메모리(50)로 패스한다.
피연산자 데이타 액세스가 요구된다면, 논리 어드레스(52)가 OCU(66) 및 비교기 회로(62)에 제공된다. 논리 어드레스(52)는 논리 어드레스(32)와 유사한 방법으로 분할된다. 비교기 회로(62)는 논리 어드레스의 상위 부분과 특권 모드를 TTR(54)에 저장된 논리 어드레스 베이스 비트 및 특권 모드 비트와 비교하며, TTR(56)에 저장된 논리 어드레스 베이스 비트 및 특권 모드 비트와 비교하는데 이용된다. 마스크 회로(58)는 비교 중에 TTR(54)의 논리 어드레스 베이스 필드 중 어느 비트가 무시되는지를 결정하기 위해 TTR(54)에 저장된 논리 어드레스 마스크 비트를 이용한다. TTR(54) 내의 논리 어드레스 마스크 비트가 설정된다면, 비교중에, TTR(54) 내의 대응하는 논리 어드레스 베이스 비트가 무시된다. 유사한 방법으로,마스크 회로(60)는 비교 중에, TTR(56)의 논리 어드레스 베이스 필드 중 어느 비트가 무시되는지를 결정하기 위해 TTR(56)에 저장된 논리 어드레스 마스크 비트를 이용한다. TTR(54) 또는 TTR(56) 중 어느 하나가 부합된다면, 비교기 회로(62)의 출력에 의해 제어되는 선택기 회로(64)는 다수의 데이타 라인을 통해 부합된 TTR에 저장된 액세스 제어 속성 비트 셋을 OCU(66)로 패스한다. 어느 TTR도 부합되지 않는다면, 선택기 회로(64)는 프로그래머 가시의 디폴트 액세스 제어 레지스터(46)에 저장된 액세스 제어 비트(46b) 셋을 OCU(66)로 패스한다. 논리 어드레스를 물리 어드레스로 사용하면, OCU(66)는 물리 어드레스에 응답하여 그 메모리 뱅크 내의 캐시 데이타를 조사한다. 만일 찾게 된다면, OCU(66)는 다수의 데이타 라인을 통하여 그 데이타를 파이프라인 유닛(30)에 공급한다. 상기 데이타가 OCU(66) 내에서 발견되지 않는다면, OCU(66)는 외부 메모리 액세스를 요청하며, 다수의 데이타 라인을 통해 액세스 제어 속성 비트를 외부 메모리(50)로 패스한다.
일단 물리 어드레스와 액세스 제어 속성 셋이 외부 메모리(50)에 의해 수신되었다면, 외부 메모리(50)는 물리 어드레스에 응답하여 데이타 버스를 통해 다수의 데이타 비트를 유닛(30)에 제공한다.
디폴트 액세스 제어 레지스터(46)가 존재하지 않는다면, TTR 미스의 경우에 맵핑되지 않은 공간에 대하여 유연한 액세스 제어 및/또는 기록 액세스 보호가 제공될 수 없게 된다는 점은 중요하다. 또한, 단일의 디폴트 액세스 제어 레지스터는 피연산자 메모리 캐시 유닛과 독립 명령을 갖는 시스템에 메모리 액세스 제어를 제공할 수 있다는 점 역시 중요하다. 디폴트 액세스 제어 레지스터(46)는 기록 보호비트를 포함하고, 사용자 또는 감시 모드에 독립하여 액세스되며, 프로그램 가능하고, 따라서 매우 유연성을 갖는다.
제 3 도는 메모리 액세스 제어를 제공하도록 처리기(10 및/또는 28)에 의해 이용되는 방법을 설명하는 순서도(flowchart)를 도시한다. 단계(100)는, 파이프라인 유닛(12 및/또는 30)이 두 특권 모드(감시 또는 사용자) 중 한 모드의 명령을 처리하고, 정규 메모리 액세스를 수행하는데 필요하며, 논리 어드레스를 MMU(14) 및/또는 비교기 회로(42 및 62)에 제공하는 것을 나타낸다. 단계(102)는, 논리 어드레스(제 2 도의 논리 어드레스 32 및 52 참조)의 상위 부분과 특권 모드가, 비교 유닛(20) 또는 비교 유닛(42 및 62)을 통하여 TTR(16 및 18) 또는 TTR(34, 36, 54 및 56)에 의해 규정된 논리 어드레스의 블럭과 특권 모드에 비교되는 것을 나타낸다. 단계(104)는 MUX(24) 또는 선택기 회로(44 및 64)가 단계(102)에서 수행된 비교로부터의 결과에 기초하여 액세스 제어 속성 비트 중 어느 셋이 액세스에 이용될 수 있는지를 결정한다. 또한, 단계(104)는 MMU(14)가 디폴트 모드로 동작하는 것을 암시한다. TTR 미스가 단계(104)에서 검출된다면, 단계(106)가 수행된다. 단계(106)에서, MUX (24)는 디폴트 액세스 제어 레지스터(22)에 저장된 액세스 제어 속성 비트 셋을 선택한다. TTR 히트(hit)가 단계(104)에서 검출된다면, 단계(108)에서 MUX(24)는 액세스를 위한 부합 TTR에 저장된 액세스 제어 속성 비트 셋을 선택한다. 단계(110)에서, MUX(24)는 선택된 속성을 외부 메모리(26)에 공급하며, 메모리 액세스가 완료된다.
제 4 도는 TTR(16, 18, 34, 36, 54 및 56)에 대하여 제 1 도 내지 제 3 도에사용된 바람직한 비트 포맷을 도시한다. 제 4 도는 하기 설명되는 비트 값과 몇몇 비트 필드를 갖는 투명 변환 레지스터(TTR)(바람직하게는 32 비트를 가짐)를 도시한다.
논리 어드레스 베이스: 이 8 비트 필드는 특권 모드와 논리 어드레스 비교동안 논리 어드레스의 상위 8 비트와 비교되며, 동작의 MMU 디폴트 모드에서 활용된다.
논리 어드레스 마스크: 이 8 비트 필드는 논리 어드레스 베이스 필드에 대한 마스크로서 이용된다. 상기 필드의 한 비트가 설정될 때, 논리 어드레스 베이스 필드 내의 대응 비트는 특권 모드와 논리 어드레스 비교 동안 무시된다.
E(사용가능): 이 비트는 TTR 레지스터를 사용 가능 및/또는 사용 금지하게 한다. 사용 금지된 TTR은 MMU 디폴트 모드에서의 논리 어드레스 비교와 특권 모드중에 완전히 무시된다.
S(감시/사용자 모드): 이 필드는 특권 모드와 논리 어드레스 비교 동안 부합될 특권 모드를 지정한다.
U(사용자 페이지 속성 U1, U0): 이 비트들은 처리기(10 및/또는 28)에 의해 해석되지는 않지만 정규 메모리 액세스 동안 처리기(10 및/또는 28) 상의 UPA1 핀 및 UPA0 핀으로 각각 에코(echo)된다. UPA1은 일부 디자인에서 칩 선택으로 이용될 수도 있다.
CM(캐시 모드): 이 2 비트 필드는 정규 메모리 액세스에 대한 캐시 모드를 선택하는데 이용된다. CM 필드는 네 가지 상태를 허용하는데, 한 상태는 캐시 가능한 기록관통 상태(cacheable writethrough state)이고, 제 2 상태는 캐시 가능한 카피백(copyback)상태이며, 제 3 상태는 캐시 금지 상태(cache inhibited state)로 정확한 예외 모델이고, 제 4 상태는 캐시 금지 상태로 부정확한 예외 모델이다.
W(기록 보호): 이 비트는 메모리 어드레스 공간이 기록 보호되는지를 나타낸다. 만일 설정되었다면, 기록 및 판독-변경-기록 액세스가 보호된 어드레스 공간 내의 모든 어드레스에 대해 허용되지 않는다.
제 5 도는 제 2 도의 디폴트 비트 부분(44a 및 44b)에 대하여 제 1 도 내지 제 3 도에 이용되는 바람직한 비트 포맷을 나타낸다. 이들 비트들은 하기에 설명된다.
DCO(디폴트 피연산자 캐시 모드): 이 2 비트 필드는 제 4 도 TTR의 CM 필드와 유사한 방식으로 작용한다.
DUO(디폴트 피연산자 사용자 페이지 속성): 이 2 비트 필드는 제 4 도 TTR의 U1 및 U0와 유사한 방식으로 작용한다.
DCI(디폴트 명령 캐시 모드): 이 2 비트 필드는 DCO 필드와 유사한 방식으로 작용한다.
DUI(디폴트 명령 사용자 페이지 속성): 이 2 비트 필드는 DUO필드와 유사한 방식으로 작용한다.
W(기록 보호): 이 비트는 제 4 도 TTR의 W 비트와 유사한 방식으로 작용한다.
본 발명은 데이타 처리 시스템에서 메모리 액세스 제어를 제공하는 방법 및장치를 제공한다. 그러한 방법 및 장치로, 물리 어드레스에 대한 논리 어드레스의 유연한 디폴트 어드레스 맵핑이 제공될 수 있다.
여기에 설명된 본 발명은 물리 어드레스에 대한 논리 어드레스의 디폴트 어드레스 맵핑을 제공하는 다른 공지되고 문서화된 방법에 비교될 수 있다. 이들 다른 방법에서, 디폴트 액세스 제어 속성 비트는 개별 레지스터에 저장되는데, 여기서 한 레지스터는 단지 사용자 액세스에만 전용되고 다른 레지스터는 감시 액세스에만 전용된다.
이 방법이 자진 문제점은 논리 어드레스 공간을 감시 및 사용자 공간으로 분할해야 한다는 것이며, 그렇지 않을 경우 감시 공간은 사용자 프로그램에 의해 허가되지 않은 액세스로부터 보호받을 수 없게 되기 때문이다. 본 발명은 주어진 메모리 액세스에 대한 디폴트 어드레스 맵핑을 제공하는데 있어 특권 모드를 무시함으로써 상기의 문제를 해결한다. 따라서, 보다 작은 기판 표면 영역의 집적 회로가 이용되며, 속도가 개선된다. 부가하여, 데이타가 결과적으로 변조(corruption) 될 수도 있는 허가되지 않은 사용자 프로그램 액세스로부터 감시 공간을 보호하기 위해, 선택적(optional) 기록 액세스 보호가 또한 제공된다.
본 발명이 특정 실시예를 참조하여 도시되고 설명되었지만, 이에 대한 추가적인 변경과 개선이 당 기술분야에 숙련된 이들에게는 가능할 것이다. 실례로, 본 발명이 디폴트 어드레스 맵핑 능력을 제공할 수 있는 다양한 MMU 들이 당 기술분야에 존재하며, 여기서 MMU는 페이지 어드레스 변환 캐시(ATC), 블럭 어드레스 변환 캐시, 투명 변환 레지스터 또는 어드레스 변환 기능의 어떤 다른 형태를 어떤 수라도 포함할 수 있다. 버스 비트 크기는 디자인 제한에 따라 변화할 수도 있다. 부가하여, 여기에 설명되는 비트 필드 및 제어 신호는 단일 비트 또는 다수의 비트일 수 있다. 제로, 하나 또는 그 이상의 캐시가 시스템에 이용될 수 있다. 논리 어드레스를 엔코딩(encoding) 및 디코딩(decoding) 하는 많은 다른 방법이 당 기술분야에 존재하며, 이들 모두가 논리 어드레스로서 여기에 이용될 수 있다. 따라서, 본 발명은 도시된 특정 형태에 제한되지 않으며, 본 발명의 정신 및 범위로부터 벗어나지 않는 모든 변경을 커버하도록 첨부된 청구범위 내에 의도되는 것을 이해할 수 있을 것이다.
제 1 도는 본 발명에 따라 데이타 처리 시스템을 형성하는 블럭도.
제 2 도는 본 발명에 따라 또 다른 데이타 처리 시스템을 형성하는 블럭도.
제 3 도는 본 발명에 따라 메모리 액세스 제어를 제공하는 방법의 순서도(flowchart).
제 4 도는 본 발명에 따라 투명 변환 레지스터(TTR)의 비트 구성을 형성하는 블럭도.
제 5 도는 본 발명에 따라 디폴트 속성 기억장치 레지스터의 비트 구성을 형성하는 블럭도.
* 도면의 주요부분에 대한 부호의 설명
10 : 처리기 11 : 변환 회로
12 : 파이프라인 유닛 14 : 메모리 관리 유닛
26 : 외부 메모리

Claims (13)

  1. 정규 동작 모드인 제 1 동작 모드와 디폴트 동작 모드인 제 2 동작 모드의 적어도 두 동작 모드를 구비한 메모리 관리 유닛을 가지며, 데이타 보호를 제공하는 두 특권 모드를 갖는 데이타 처리기에 있어서, 상기 데이타 처리기는:
    상기 메모리 관리 유닛에 논리 어드레스를 제공하기 위한 상기 데이타 처리기 내의 회로와;
    상기 메모리 관리 유닛 내의 제 1 투명 변환 레지스터와;
    상기 메모리 관리 유닛 내의 제 2 투명 변환 레지스터와;
    상기 논리 어드레스를 수신하기 위한 비교 회로로서, 상기 제 1 투명 변환 레지스터 및 상기 제 2 투명 변환 레지스터 양자 모두에 결합되며, 상기 논리 어드레스의 소정 수의 비트들을 상기 제 1 및 제 2 투명 변환 레지스터 각각의 소정 수의 비트들과 비교하고, 상기 논리 어드레스의 상기 소정 수의 비트들이 상기 제 1 및 제 2 투명 변환 레지스터 중 한 레지스터의 상기 소정 수의 비트들과 동일하다면 제어 신호를 표명하며, 상기 디폴트 동작 모드에서 작용하는, 상기 비교 회로와;
    데이타 보호를 위해 기록 액세스 정보를 제공하는데 이용되는 다수의 속성 비트들을 저장하기 위한, 상기 메모리 관리 유닛 내의 디폴트 기억 장소로서, 상기 특권 모드와 관계없이 상기 다수의 속성 비트를 제공하기 위한 출력을 갖는, 상기 디폴트 기억 장소 및;
    데이타 보호를 위해 기록 액세스 정보를 제공하는데 이용되는 상기 제 1 투명 변환 레지스터로부터 소정 수의 속성 비트들을 수신하기 위한 제 1 입력을 가지고, 데이타 보호를 위해 기록 액세스 정보를 제공하는데 이용되는 상기 제 2 투명 변환 레지스터로부터 소정 수의 속성 비트를 수신하기 위한 제 2 입력을 가지며, 상기 디폴트 기억 장소의 상기 출력에 결합된 제 3 입력을 가지는 선택기 회로로서, 상기 선택기 회로는 상기 제어 신호에 결합되고, 상기 제어 신호는 상기 선택기 회로의 출력을 결정하는데 이용되고, 상기 선택기 회로의 상기 출력은 상기 제 1 입력, 상기 제 2 입력 또는 상기 제 3 입력 중 어느 한 입력의 상기 비트들이며, 상기 선택기 회로는 상기 디폴트 동작 모드에서 작용하는, 상기 선택기 회로를 포함하는, 데이타 처리기.
  2. 제 1 항에 있어서,
    상기 데이타 처리기는 다수의 메모리 장소들에 결합되며, 상기 디폴트 기억 장소는 상기 다수의 메모리 장소들에의 기록 액세스 허가들을 제어하기 위한 비트를 갖는, 데이타 처리기.
  3. 제 1 항에 있어서,
    상기 데이타 처리기는 다수의 메모리 장소들에 결합되며, 상기 디폴트 기억 장소 내의 상기 다수의 속성 비트들은 적어도 하나의 기록 액세스 허가 비트, 적어도 하나의 캐시 모드 비트, 및 적어도 하나의 사용자 페이지 속성 비트를 포함하는, 데이타 처리기.
  4. 제 1 항에 있어서,
    상기 두 특권 모드는, 상기 데이타 처리기의 모든 명령들이 실행될 수 있고 상기 데이타 처리기 내의 모든 제어 레지스터들과 일반 레지스터들에 액세스할 수 있는 제 1 모드와, 상기 제 1 모드보다 실행을 위해 이용 가능한 명령들의 관점에서 더욱 제한되는 제 2 모드를 포함하는, 데이타 처리기.
  5. 제 1 항에 있어서,
    상기 디폴트 기억 장소는 상기 디폴트 기억 장소 내에 저장된 적어도 하나의 비트를 변경하는데 이용될 수 있는 입력을 가지는, 데이타 처리기.
  6. 제 1 항에 있어서,
    상기 논리 어드레스 내의 상기 소정 수의 비트들이 상기 제 1 및 제 2 투명 변환 레지스터 중 한 레지스터 내의 상기 소정 수의 비트들과 동일하다면, 상기 비교 회로가 다수의 제어 신호들을 표명하는, 데이타 처리기.
  7. 제 1 항에 있어서,
    상기 메모리 관리 유닛에 논리 어드레스를 제공하기 위한 상기 데이타 처리기 내의 상기 회로, 상기 제 1 투명 변환 레지스터, 상기 제 2 투명 변환 레지스터및 상기 선택기 회로는, 상기 데이타 처리기 시스템 내에서 피연산자의 논리 어드레스들을 처리하는데 이용되는, 데이타 처리기.
  8. 제 9 항에 있어서,
    상기 디폴트 기억 장소는 데이타 처리 시스템 내의 메모리 액세스 제어를 제공하기 위한 회로에 결합되고, 메모리 액세스 제어를 제공하기 위한 상기 회로는 상기 데이타 처리 시스템 내에서 처리기 명령들에 대응하는 논리 어드레스들을 입력으로서 수신하는, 데이타 처리기.
  9. 제 1 항에 있어서,
    상기 메모리 관리 유닛에 논리 어드레스를 제공하기 위한 상기 데이타 처리기 내의 상기 회로, 상기 제 1 투명 변환 레지스터, 상기 제 2 투명 변환 레지스터, 및 상기 선택기 회로는 상기 데이타 처리기 시스템 내에서 처리기 명령들의 논리 어드레스들을 처리하는데 이용되는, 데이타 처리기.
  10. 제 9 항에 있어서,
    상기 디폴트 기억 장소는 데이타 처리 시스템 내의 메모리 액세스 제어를 제공하기 위한 회로에 결합되고, 메모리 액세스 제어를 제공하기 위한 상기 회로는 상기 데이타 처리 시스템 내에서 피연산자들에 대응하는 논리 어드레스들을 입력으로서 수신하는, 데이타 처리기.
  11. 제 1 항에 있어서,
    상기 제 1 투명 변환 레지스터는 상기 제 2 투명 변환 레지스터에 대해 우선권을 가지고, 상기 논리 어드레스 내 상기 소정 수의 비트들이 상기 제 1 투명 변환 레지스터 내 상기 소정 수의 비트들과 동일하다고 상기 비교 회로가 결정하면, 상기 제 2 투명 데이타 레지스터 내의 데이타는 액세스되지 않는, 데이타 처리기.
  12. 제 1 항에 있어서,
    상기 제 1 투명 변환 레지스터는 마스크 필드를 가지고, 상기 마스크 필드는 상기 비교 회로에 의해 이용되는 상기 제 1 투명 변환 레지스터 내 상기 소정 수의 비트들의 양을 감소시키도록 마스크 회로에 의해 이용되는, 데이타 처리기.
  13. 제 1 항에 있어서,
    상기 제 1 및 제 2 투명 변환 레지스터 양자 모두 마스크 필드를 가지며, 상기 마스크 필드는 상기 비교 회로에 의해 이용되는 상기 제 1 및 제 2 투명 변환 레지스터 양자 모두에서 상기 소정 수의 비트들의 양을 감소시키도록 마스크 회로에 의해 이용되는, 데이타 처리기.
KR1019940027822A 1993-11-09 1994-10-28 메모리액세스제어를제공하는방법및데이타처리시스템 KR100338446B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/149,496 US5623636A (en) 1993-11-09 1993-11-09 Data processing system and method for providing memory access protection using transparent translation registers and default attribute bits
US149,496 1993-11-09

Publications (2)

Publication Number Publication Date
KR950015083A KR950015083A (ko) 1995-06-16
KR100338446B1 true KR100338446B1 (ko) 2002-09-27

Family

ID=22530550

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019940027822A KR100338446B1 (ko) 1993-11-09 1994-10-28 메모리액세스제어를제공하는방법및데이타처리시스템

Country Status (4)

Country Link
US (1) US5623636A (ko)
EP (1) EP0656592B1 (ko)
JP (1) JPH07191903A (ko)
KR (1) KR100338446B1 (ko)

Families Citing this family (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5842225A (en) * 1995-02-27 1998-11-24 Sun Microsystems, Inc. Method and apparatus for implementing non-faulting load instruction
JP3082701B2 (ja) * 1997-03-14 2000-08-28 日本電気株式会社 メモリ保護装置およびメモリ保護方法
GB2325061B (en) * 1997-04-30 2001-06-06 Advanced Risc Mach Ltd Memory access protection
US5987557A (en) * 1997-06-19 1999-11-16 Sun Microsystems, Inc. Method and apparatus for implementing hardware protection domains in a system with no memory management unit (MMU)
US6516395B1 (en) 1997-11-20 2003-02-04 Advanced Micro Devices, Inc. System and method for controlling access to a privilege-partitioned address space with a fixed set of attributes
US6154818A (en) * 1997-11-20 2000-11-28 Advanced Micro Devices, Inc. System and method of controlling access to privilege partitioned address space for a model specific register file
US6594701B1 (en) 1998-08-04 2003-07-15 Microsoft Corporation Credit-based methods and systems for controlling data flow between a sender and a receiver with reduced copying of data
US6321276B1 (en) * 1998-08-04 2001-11-20 Microsoft Corporation Recoverable methods and systems for processing input/output requests including virtual memory addresses
US6233667B1 (en) * 1999-03-05 2001-05-15 Sun Microsystems, Inc. Method and apparatus for a high-performance embedded memory management unit
US6282626B1 (en) * 1999-07-15 2001-08-28 3Com Corporation No stall read access-method for hiding latency in processor memory accesses
US6754784B1 (en) * 2000-02-01 2004-06-22 Cirrus Logic, Inc. Methods and circuits for securing encached information
US6629187B1 (en) * 2000-02-18 2003-09-30 Texas Instruments Incorporated Cache memory controlled by system address properties
US7181600B1 (en) * 2001-08-02 2007-02-20 Mips Technologies, Inc. Read-only access to CPO registers
US7185183B1 (en) 2001-08-02 2007-02-27 Mips Technologies, Inc. Atomic update of CPO state
US7634638B1 (en) * 2002-10-22 2009-12-15 Mips Technologies, Inc. Instruction encoding for system register bit set and clear
US20060070077A1 (en) * 2004-09-30 2006-03-30 Microsoft Corporation Providing custom product support for a software program
US7818625B2 (en) * 2005-08-17 2010-10-19 Microsoft Corporation Techniques for performing memory diagnostics
CN100426264C (zh) * 2005-10-19 2008-10-15 联发科技股份有限公司 存取一存储器的方法与相关的微处理器系统
KR20110124992A (ko) 2010-05-12 2011-11-18 삼성전자주식회사 반도체 메모리 장치 및 반도체 메모리 시스템
WO2013101059A1 (en) * 2011-12-29 2013-07-04 Intel Corporation Supervisor mode execution protection
TWI492051B (zh) * 2012-09-05 2015-07-11 Silicon Motion Inc 資料儲存裝置與快閃記憶體控制方法
JP6273733B2 (ja) * 2013-09-20 2018-02-07 富士通株式会社 演算処理装置、情報処理装置、情報処理装置の制御方法および情報処理装置の制御プログラム
US9390058B2 (en) 2013-09-24 2016-07-12 Apple Inc. Dynamic attribute inference
US9367309B2 (en) 2013-09-24 2016-06-14 Apple Inc. Predicate attribute tracker
US10831679B2 (en) * 2018-03-23 2020-11-10 Intel Corporation Systems, methods, and apparatuses for defending against cross-privilege linear probes
US20220180467A1 (en) 2019-03-15 2022-06-09 Intel Corporation Systems and methods for updating memory side caches in a multi-gpu configuration
BR112021016106A2 (pt) 2019-03-15 2021-11-09 Intel Corp Processador gráfico de propósito geral, método e sistema de processamento de dados
US11934342B2 (en) 2019-03-15 2024-03-19 Intel Corporation Assistance for hardware prefetch in cache access

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1988002148A1 (en) * 1986-09-15 1988-03-24 Motorola, Inc. A transparent translation method and apparatus for use in a memory management unit
US5075846A (en) * 1989-09-29 1991-12-24 Motorola, Inc. Memory access serialization as an MMU page attribute
JPH04216151A (ja) * 1990-02-22 1992-08-06 Hewlett Packard Co <Hp> アドレス変換装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4763250A (en) * 1985-04-01 1988-08-09 Motorola, Inc. Paged memory management unit having variable number of translation table levels
US4972338A (en) * 1985-06-13 1990-11-20 Intel Corporation Memory management for microprocessor system
US5091846A (en) * 1986-10-03 1992-02-25 Intergraph Corporation Cache providing caching/non-caching write-through and copyback modes for virtual addresses and including bus snooping to maintain coherency
US5335334A (en) * 1990-08-31 1994-08-02 Hitachi, Ltd. Data processing apparatus having a real memory region with a corresponding fixed memory protection key value and method for allocating memories therefor

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO1988002148A1 (en) * 1986-09-15 1988-03-24 Motorola, Inc. A transparent translation method and apparatus for use in a memory management unit
US5075846A (en) * 1989-09-29 1991-12-24 Motorola, Inc. Memory access serialization as an MMU page attribute
JPH04216151A (ja) * 1990-02-22 1992-08-06 Hewlett Packard Co <Hp> アドレス変換装置

Also Published As

Publication number Publication date
JPH07191903A (ja) 1995-07-28
US5623636A (en) 1997-04-22
KR950015083A (ko) 1995-06-16
EP0656592B1 (en) 1998-10-21
EP0656592A1 (en) 1995-06-07

Similar Documents

Publication Publication Date Title
KR100338446B1 (ko) 메모리액세스제어를제공하는방법및데이타처리시스템
US7401358B1 (en) Method of controlling access to control registers of a microprocessor
US7043616B1 (en) Method of controlling access to model specific registers of a microprocessor
US5075845A (en) Type management and control in an object oriented memory protection mechanism
US5909696A (en) Method and apparatus for caching system management mode information with other information
EP1839159B1 (en) Data processing apparatus having memory protection unit
US4800489A (en) Paged memory management unit capable of selectively supporting multiple address spaces
US6397301B1 (en) Preventing access to secure area of a cache
US5247639A (en) Microprocessor having cache bypass signal terminal
EP2537097B1 (en) Storing secure mode page table data in secure and non-secure regions of memory
US7130977B1 (en) Controlling access to a control register of a microprocessor
US4763250A (en) Paged memory management unit having variable number of translation table levels
EP1471421A1 (en) Speculative load instruction control
US5418927A (en) I/O cache controller containing a buffer memory partitioned into lines accessible by corresponding I/O devices and a directory to track the lines
EP1035475B1 (en) Simple high-performance memory management unit
US11762566B2 (en) Programmable mapping of guard tag storage locations
EP1490774A1 (en) System and method providing region-granular, hardware-controlled memory encryption
US7082507B1 (en) Method of controlling access to an address translation data structure of a computer system
US5497458A (en) Cache testability circuit for embedded diagnostics
US11720495B2 (en) Multi-level cache security
JPS6248258B2 (ko)
US10545879B2 (en) Apparatus and method for handling access requests
JP2021512400A (ja) メモリ・アクセスにおける保護タグ・チェックの制御
US5161219A (en) Computer system with input/output cache
US7716453B2 (en) Descriptor-based memory management unit and method for memory management

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20070406

Year of fee payment: 6

LAPS Lapse due to unpaid annual fee