KR20050113638A - 주변기 액세스 보호를 구비한 데이터 액세싱 시스템 및이를 위한 방법 - Google Patents

주변기 액세스 보호를 구비한 데이터 액세싱 시스템 및이를 위한 방법 Download PDF

Info

Publication number
KR20050113638A
KR20050113638A KR1020057016693A KR20057016693A KR20050113638A KR 20050113638 A KR20050113638 A KR 20050113638A KR 1020057016693 A KR1020057016693 A KR 1020057016693A KR 20057016693 A KR20057016693 A KR 20057016693A KR 20050113638 A KR20050113638 A KR 20050113638A
Authority
KR
South Korea
Prior art keywords
bus
access
privilege
peripheral
master
Prior art date
Application number
KR1020057016693A
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 프리스케일 세미컨덕터, 인크.
Publication of KR20050113638A publication Critical patent/KR20050113638A/ko

Links

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/10Program control for peripheral devices
    • 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/82Protecting input, output or interconnection devices
    • G06F21/85Protecting input, output or interconnection devices interconnection devices, e.g. bus-connected or in-line devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2113Multi-level security, e.g. mandatory access control
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)

Abstract

데이터 프로세싱 시스템(10,100)내의 유연한 주변기 액세스 보호 메커니즘은 여기 개시된 바와 같이 보다 안전한 동작 환경을 허용한다. 일 실시예로, 데이터 프로세싱 시스템(10)의 각각의 마스터(14, 15)는 특정 버스 액세스 형태들(예를 들어, 판독 및 기록 액세스들)에 대한 대응 특권 레벨 변경자(70, 74)와 대응 신뢰 속성들(71, 72, 75, 76)을 포함한다. 또한, 일 실시예로, 데이터 프로세싱 시스템(10)의 각각의 주변기(22, 24)는 대응 신뢰 속성(80, 84), 기록 보호 표시자(81, 85), 및 특권 보호 표시자(82, 86)를 포함한다. 따라서, 일 실시예로, 버스 마스터에 의한 주변기에 대한 버스 액세스는 버스 마스터가 적절한 특권 레벨과 주변기에 의해 요청된 적절한 신뢰 레벨을 가질 때(및 버스 액세스가 기록 액세스이면 주변기는 기록 보호되지 않을 때) 허용된다. 또한 특권 레벨 변경자들의 사용을 통해, 버스 마스터는 특정 버스 액세스에 대하여 특정 특권 레벨로 강제될 수 있다.

Description

주변기 액세스 보호를 구비한 데이터 액세싱 시스템 및 이를 위한 방법{Data processing system with peripheral access protection and method therefor}
본 발명은 데이터 프로세싱 시스템에 관한 것으로, 더 자세히는 주변기 액세스 보호를 구비한 데이터 프로세싱 시스템에 관한 것이다.
시스템 온 칩(SoC) 솔루션들에 있어서, 다수의 마스터들은 공유된 주변 디바이스들을 구비하는 것이 일반적이다. SoC의 몇몇 마스터들은 비신뢰된 마스터들일 수 있다. 이러한 시스템들에 있어서, 비신뢰된 마스터들이 몇몇 또는 모든 주변기들에 액세싱하는 것을 보호할 필요가 있는데, 이러한 액세스는 시스템의 충돌을 가져올 수 있기 때문이다. 예를 들어, 바이러스들은 비신뢰된 마스터들에서 실행중인 소프트웨어에 의해 도입될 수 있거나, 비신뢰된 마스터들은 시스템의 주변 디바이스들내의 보안 정보에 액세스하도록 사용될 수 있다. 또한, 주변기들의 보호는 보안 데이터 트랜잭션들을 보증하기 위해 요청될 수 있다.
한 종래 기술 솔루션은, 주변기들이 마스터들 사이에서 공유되지 않도록 시스템내의 각각의 마스터 그 자신이 전용 주변기들을 구비하는 것을 요구한다. 그러나, 전용 주변기들의 사용은 많은 주변기들을 복제할 필요가 있도록 초래하고 그렇지 않으면 공유되어야 하므로, 칩 영역과 비용의 증가를 초래한다. 또한, 전용 주변기들을 구비한 마스터들의 사용은 시스템에서 부하 균형을 프로세싱하는 사용을 방해한다. 예를 들어, 하나의 마스터에 의해 실행된 프로세스는 전송 프로세스를 수행할 필요한 전용 주변기들이 없다면, 시스템내의 다른 마스터로 전송될 수 없고, 이에 의해 시스템의 효율은 감소된다.
따라서, 비신뢰된 마스터들에 의한 공유된 주변 디바이스들에 대한 액세스를 보호하는 한편, 신뢰된 마스터와 비신뢰된 마스터 둘 다가 데이터 프로세싱 시스템내의 주변 디바이스들을 공유하도록 허용하는 데이터 프로세싱 시스템의 존재가 요구된다.
본 발명은 예시적인 방식으로 설명되며 첨부된 도면들로 제한되지 않으며, 동일한 참조들은 유사한 요소들을 나타낸다.
도 1은 본 발명의 일 실시예에 따른 데이터 프로세싱 시스템을 블록도로 도시한다.
도 2는 본 발명의 일 실시예에 따른 도 1의 버스 인터페이스부를 블록도로 도시한다.
도 3은 본 발명의 일 실시예에 따른 마스터 특권 레지스터들을 블록도로 도시한다.
도 4는 본 발명의 일 실시예에 따른 주변기 액세스 제어 레지스터들을 블록도로 도시한다.
도 5는 본 발명의 택일적 실시예에 따른 데이터 프로세싱 시스템을 블록도로 도시한다.
숙련된 기술자들은 도면들의 요소들을 간단하고 명확하게 하기 위해 설명되었고 일정한 비율로 반드시 도시될 필요가 없음을 이해할 것이다. 예를 들어, 도면들의 몇몇 요소들의 크기는 본 발명의 실시예들의 이해를 돕기 위해 다른 요소들과 관련하여 과장될 수 있다.
본 발명의 일 실시예는 보다 안정한 동작 환경을 얻기 위해 데이터 프로세싱 시스템에서 탄력적인 주변기 액세스 보호 메커니즘을 제공한다. 예를 들어, 데이터 프로세싱 시스템은 공유된 주변기들에 액세싱하기 위해 필요한 신뢰된 버스 마스터와 비신뢰된 버스 마스터의 조합을 포함할 수 있다. 일 실시예는 특권들의 신뢰된 버스 마스터와 각각의 버스 마스터에 대한 신뢰 속성들에 의한 동적 업데이트와 각각의 주변기에 대한 액세스 제어들을 허용한다. 따라서, 신뢰된 버스 마스터는 비신뢰된 버스 마스터들에서 실행중인 오류있거나 부적당한 소프트웨어로 인한 손상으로부터 데이터 프로세싱 시스템을 보호하기 위해 어느 버스 마스터들이 어느 주변기로 액세싱하도록 승인되는지를 구축할 수 있다.
버스 마스터 식별자, 신뢰 속성들, 특권 레벨들의 사용을 통해, 요청된 주변기에 대한 액세스는 신뢰된 버스 마스터에 의해 구축된 승인들에 기초하여 허용되거나 부정될 수 있다. 예를 들어, 일 실시예로, 데이터 프로세싱 시스템내의 각각의 마스터는 대응 특권 레벨 변경자와 특정 버스 액세스 형태들(판독과 기록 액세스들과 같은)에 대한 대응 신뢰 속성들을 포함한다. 또한, 일 실시예로, 프로세싱 시스템내의 각각의 주변기는 대응 신뢰 속성, 기록 보호 표시자, 및 특권 보호 표시자를 포함한다. 따라서, 일 실시예로, 버스 마스터에 의한 주변기에 대한 버스 액세스는 버스 마스터가 주변기에 의해 신뢰 요청된 적절한 레벨과 적절한 특권 레벨을 가질 때 허용된다(버스 액세스가 기록 액세스이면, 주변기는 기록 보호가 되지 않는다). 또한, 특권 레벨 변경자들의 사용일지라도, 버스 마스터가 특정 버스 액세스에 대한 특정 특권 레벨로 강제될 수 없다.
도 1은 데이터 프로세싱 시스템(10)의 일 실시예를 도시한다. 데이터 프로세싱 시스템(10)은 버스 슬레이브(26), 버스 마스터(14), 버스 마스터(15), 버스 조정 로직(28), 시스템 버스(16), 버스 인터페이스(18), 주변기 버스(20), 및 주변기들(22 및 24)을 포함한다. 버스 슬레이브(26), 버스 마스터(14), 버스 마스터(15), 버스조정 로직(28), 및 버스 인터페이스(18)는 모두 주변기 버스(20)에 양방향으로 접속된다. 버스 인터페이스(18), 주변기(22), 및 주변기(24)는 모두 주변기 버스(20)에 양방향으로 접속된다. 주변기(22)는 주변기 회로(19) 및 주변기 레지스터들(21)을 포함하며, 주변기(24)는 주변기 회로(23) 및 주변기 레지스터들(25)을 포함한다. 두 개의 주변기들(22 및 24)만이 도 1에 도시되었지만, 데이터 프로세싱 시스템(10)은 주변기 버스(20)에 접속된 많은 주변기들을 포함할 수 있다. 이와 유사하게, 많은 버스 마스터들 및 슬레이브들은 시스템 버스(16)에 접속될 수 있으며, 도 1에 도시된 것으로 제한되지 않는다. 또한, 도 1이 시스템 버스(16)에 접속된 별개의 유닛으로서 버스 조정 로직(28)을 도시하는 반면, 버스 조정 로직(28)의 부분들은 시스템 버스(16)에 접속된 각각의 버스 마스터들(또는 버스 마스터들의 부분)에 위치할 수 있다. (버스 조정 로직(28)은 오늘날의 기술에서 임의의 알려진 버스 조정자로서 동작할 수 있다).
일 실시예에서, 버스 마스터(14)와 버스 마스터(15)는 마이크로프로세서들, 디지털 신호 프로세서들 등과 같은 프로세서들일 수 있고, 직접 메모리 액세스(DMA) 유닛과 같은 마스터 디바이스의 임의의 다른 형태일 수 있다. 하나 이상의 이러한 버스 마스터들은 비신뢰된 버스 마스터들 보다 덜 손상되기 쉬운 신뢰된 버스 마스터들일 수 있다. 예를 들어, 신뢰된 버스 마스터는 버스 마스터 또는 SoC의 제조에 의해 완전히 제어되는 실행 명령들을 수 있다(즉, 신뢰된 마스터에서 실행중인 소프트웨어는 신뢰 소프트웨어로 여겨진다). 즉, 일 실시예로, 제 3 파티 소프트웨어는 신뢰된 마스터에서 실행될 수 없고, 제 3 파티들이 신뢰된 마스터들로 액세스하는 것은 허용되지 않는다. 대안으로는, 신뢰된 버스 마스터에 대한 신뢰의 레벨(즉, 보안의 레벨)은 완전한 신뢰에서 보다 열등한 신뢰로 변할 수 있고 데이터 프로세싱 시스템(10)의 설계에 의존하지만, 비신뢰된 버스 마스터들 보다 일반적으로 신뢰된다.
유사하게, 하나 이상의 버스 마스터들(14 및 15)은 비신뢰된 버스 마스터들일 수 있으며, 이는 일반적으로 보다 액세싱 가능하거나 손상 받기 쉽다. 일 실시예로, 비신뢰된 버스 마스터들은 제 3 파티 소프트웨어(예를 들어, 사용자 개발 소프트웨어) 또는 임의의 다른 비신뢰 소프트웨어(소프트웨어의 내용들 및 기능은 일반적으로 알려지지 않은)를 수신하고 실행할 수 있는 일반적인 애플리케이션들 프로세서들일 수 있다. 소프트웨어가 비신뢰이기 때문에, 이는 데이터 프로세싱 시스템(10)(다른 신뢰된 버스 마스터들 또는 주변기들(22 및 24))의 다른 부분들을 손상시킬 수 있고, 데이터 프로세싱 시스템(10)으로 바이러스를 도입할 수 있고, 버스 마스터(14 또는 15), 주변기들(22 또는 24), 버스 슬레이브(26), 또는 데이터 프로세싱 시스템(10)내의 다른 곳에서 보안 정보를 액세스할 수 있는 오류있거나 부적당한 소프트웨어일 수 있다.
또한, 특정 버스 마스터가 몇몇 형태들의 액세스들에 대해 신뢰로 여겨지고 다른 것들에 대해 비신뢰로 여겨질 수 있다. 예를 들어, 동일한 버스 마스터는 판독들에 대해 신뢰로 여겨질 수 있고 기록들에 대해 비신뢰로 여겨질 수 있다. 따라서, 각각의 마스터는 다른 형태들의 액세스들에 대한 다른 레벨의 신뢰를 가질 수 있다. 또한, 각각의 버스 마스터는 다른 특권 레벨들을 가질 수 있다. 예를 들어, 일 실시예로, 하나의 버스 마스터는 보다 높은 특권 레벨(감시자 모드와 같은)로 동작할 수 있는 반면 다른 것들은 보다 낮은 특권 레벨(사용자 모드와 같은)로 동작할 수 있다. 특정 특권 레벨은 마스터가 액세스할 수 있는 리소스들을 결정하는데 사용된다.
따라서, 일 실시예로, 아래에서 설명하는 바와 같이, 데이터 프로세싱 시스템(10)의 각각의 마스터는 특정 형태의 버스 액세스 형태에 대한 대응 마스터들에 대한 신뢰 레벨을 결정하는 신뢰 속성 필드들의 대응 세트를 구비한다. 또한, 각각의 버스 마스터는 대응 마스터에 대한 특권 레벨이 특정 버스 액세스에 대해 선택적으로 조정되도록 허용하는 대응 특권 변경자 필드를 구비한다. 유사하게, 주변기들(22 및 24)과 같은 각각의 주변기는 주어진 주변기에 의해 지원되는 액세스의 레벨을 결정하는 액세스 제어 필드들의 대응 세트를 구비한다. 예를 들어, 특정 주변기는, 신뢰 또는 감시자 모드에서 동작하는 것들로서 식별되는 그러한 마스터들로 보다 많이 액세스한다(즉, 감시자 특권 레벨을 구비한다). 버스 마스터들에 대한 이러한 특권 및 신뢰 속성 필드들과 주변기들에 대한 액세스 제어 필드들은 도 2-5를 참조하여 아래에서 보다 자세히 논의될 것이다.
도 1을 다시 참조하여, 버스 슬레이브(26)는 예를 들어, 버스 마스터(14 및 15)에 의해 액세스 가능한 메모리와 같은 임의의 슬레이브 디바이스 뿐만 아니라 주변기(22 및 24)로서 임의의 형태의 주변기들을 포함하여 시스템 버스 상에 있는 임의의 형태의 주변기일 수 있다. 주변기들(22 및 24)은 범용 비동기화 송수신기(UART), 실시간 시계(RTC), 키보드 제어기 등과 같은 임의의 형태의 주변기일 수 있다. 주변기 회로(19)는 주변기 버스(20)와 주변기 레지스터들(21) 사이의 통신을 승인한다. 유사하게, 주변기 회로(23)는 주변기 버스(20)와 주변기 레지스터들(25) 사이의 통신을 승인한다. 대안적인 실시예로, 주변기(22)는 주변기 레지스터들(21)이 메모리 어드레스 위치들에 대신 있을 경우 메모리 유닛이 될 수 있다.
동작중, 버스 마스터들(14 및 15)은 버스 슬레이브(26)와 같은 시스템 버스(16)에 접속된 다른 종속 디바이스들에 액세스하도록 요청하거나 버스 인터페이스(18)를 통해 주변기들(22 및 24)에 액세스하도록 요청하기 위해 시스템 버스(16)의 액세스를 요청한다. 아래에서 설명되는 바와 같이, 버스 인터페이스(18)는 요청 또는 특정 주변기들에 대한 특별한 형태의 요청이 허용되는지 여부를 결정한다. 허용되지 않는다면, 버스 인터페이스(18)는 시스템 버스(16)를 통해 버스 에러 응답을 제공할 것이다. 그러나, 요청이 허용되면 버스 인터페이스(18)는 요청된 버스 액세스를 완성하기 위해 임의의 필수 버스 프로토콜을 제공한다. 상기 언급된 바와 같이, 각각의 버스 마스터(14 및 15)는 특권 레벨과 신뢰 레벨과 액세스된 주변기의 액세스 제어 필드들에 의해 결정된 바와 같이 주변기들(22 및 24)로 제한된 액세스를 할 수 있다.
도 2는 본 발명의 일 실시예에 따른 도 1의 버스 인터페이스부(18)를 도시한다. 버스 인터베이스(18)는 제어 회로(44), 마스터 특권 레지스터들(30), 및 주변기 액세스 제어 레지스터들(54)을 포함한다. 제어 회로(44)는 시스템 버스(16)를 통해 버스 마스터 식별자(36), 어드레스(42), 데이터(40), 제어(30), 및 특권 표시자(37)를 제공하고 수신한다. 제어 회로(44)는 마스터 특권 레지스터들(30)과 주변기 액세스 제어 레지스터들(54) 각각에 양방향으로 접속된 레지스터들(30 및 54)로의 신뢰된 버스 마스터 판독/기록(R/W) 액세스를 위한 회로(46)를 포함한다. 또한, 제어 회로(44)는 주변기들(22, 24)로 액세싱하기 위한 회로(48)를 포함한다. 회로(48)는 마스터 특권 레지스터들(30)로부터 정보를 수신하는 버스 마스터 속성 결정 회로(50)를 포함하고, 주변기 접속 제어 레지스터들(54)로부터의 정보를 수신하는 주변기 보호 결정 회로(51)를 또한 포함한다. 제어 회로(48)는 주변기들(22 및 24)로 적절한 신호를 제공하고 수신하기 위한 주변기 버스(20)에 양방향으로 접속된 신호 브리징 회로(52)를 또한 포함한다. 또한, 버스 마스터 속성 결정 회로(50)는 조정된 특권 표시자(57), RW 표시자(58), 신뢰 표시자(59)를 주변기 보호 결정 회로(51)에 제공하고 주변기 보호 결정 회로(51)로부터 액세스 에러 신호(60)를 수신한다. 액세스 에러 신호(60)는 시스템 버스(16)를 통해 버스 마스터들(14 및 15)로 다시 통신될 수 있음을 주목한다. 대안적인 실시예로, 액세스 에러 신호(60)는 시스템 버스(16)를 통해 통신되며 버스 마스터 속성 결정 회로(50)에 제공되지 않는다.
마스터 특권 레지스터들(30)은 마스터 특권 레지스터(32)와 마스터 특권 레지스터(34)를 포함한다. 일 실시예로, 각각의 마스터특권 레지스터들은 시스템 버스(16) 상의 마스터와 대응한다. 또한, 일 실시예로, 도 3을 참조하여 아래에서 더 설명되는 바와 같이 마스터 특권 레지스터들(30)은 단일 레지스터만을 포함할 수 있거나, 대안으로는, 많은 레지스터들을 포함할 수 있다. 주변기 액세스 제어 레지스터들(54)은 주변기 액세스 제어 레지스터(55)와 주변기 액세스 제어 레지스터(56)를 포함한다. 일 실시예로 각각의 주변기 액세스 제어 레지스터들은 주변기 버스(20) 상의 주변기에 대응한다. 또한, 일 실시예로, 도 3을 참조하여 아래에서 더 설명되는 바와 같이 주변기 액세스 제어 레지스터들(54)은 단일 레지스터만을 포함할 수 있거나, 대안으로는, 많은 레지스터들을 포함할 수 있다. 또한, 마스터 특권 레지스터들(30) 및 주변기 액세스 제어 레지스터들(54)은 데이터 프로세싱 시스템(10)내의 어딘가에 위치할 수 있으며 버스 인터페이스(18)내에는 위치하지 않음을 주목한다. 본 발명의 몇몇 대안적인 실시예들에서, 주변기 액세스 제어 레지스터들은 각각의 주변기(22 및 24), 또는 버스 슬레이브(26)로 분배될 수 있으며, 마스터 특권 레지스터들은 분배되거나 하나 이상의 버스 슬레이브들(26)에 존재할 수 있다.
동작중, 버스 인터페이스(18)는 버스 마스터 식별자(36)에 기초한 주변기 액세스 제어 레지스터들(54)과 마스터 특권 레지스터들(30)로의 접속을 제공한다. 버스 마스터 식별자(36)는 회로(44)를 제어하기 위해 어느 버스 마스터가 현재 요청을 제공하는지를 식별한다. 예를 들어, 일 실시예로, 데이터 프로세싱 시스템(10)의 각각의 버스 마스터는 대응 식별(ID) 번호를 가진다. 예를 들어, 버스 마스터(14)는 0에 대응하는 ID 번호를 가질 수 있으며 버스 마스터(15)는 1에 대응하는 ID 번호를 가질 수 있다. 따라서, 데이터 프로세싱 시스템(10)의 임의의 버스 마스터들은 유일한 ID 번호들이 할당될 수 있다. 특정 버스 마스터가 주변기들의 액세스를 요청할 때, 대응 ID 번호가 버스 마스터 식별자(36)로서 제어 회로(44)에 제공될 수 있다. 이 예에서는, 버스 마스터 식별자(36)가 0이면, 버스 마스터(14)가 표시된다. 대안적인 실시예로, 임의의 형태의 식별 시스템은 상이한 버스 마스터들 사이의 구별을 위해 사용될 수 있다.
회로(46)를 통한, 버스 인터페이스(18)는 신뢰된 버스 마스터만이 마스터 특권 레지스터들(30)과 주변기 액세스 제어 레지스터들(54)로 R/W 액세스를 할 수 있음을 보증한다. 회로(46)는 신뢰된 버스 마스터가 레지스터들(30) 또는 레지스터들(54)로 R/W 액세스를 요청하고 있는지 여부를 결정하기 위해 인입하는 버스 마스터 식별자(36)를 비교한다. 일 실시예로, 회로(46)는 레지스터들(30 및 54)을 수정하기 위해 어느 버스 마스터들이 허용되는지를 나타내는 리스트를 포함한다. 예를 들어, 일 실시예로, 마스터들(14 및 15) 중 하나만이 신뢰된 마스터로 여겨지고 그 신뢰된 마스터만이 레지스터들(30 및 54)을 수정할 수 있다. 대안으로, 회로(46)는 신뢰된 마스터들만이 레지스터들(30 및 54)을 수정하는 것을 보증하는 다른 회로를 포함할 수 있다. 또한, 회로(46)는 버스 마스터 식별자(36)의 위치에서 또는 이에 부가하여 다른 속성들을 기초하여 이 결정을 할 수 있다. 예를 들어, 대안적인 실시에서, 회로(46)는 결정을 위해 (현재의 버스 액세스를 위한 요청 버스 마스터의 특권 레벨을 나타내는) 특권 표시자(37)를 사용할 수 있다. 이 방식으로, 신뢰된 버스 마스터는 주변기들(22 및 24)의 제어 액세스를 위해 레지스터들(30 및 54)의 필드들을 세팅할 수 있다. 일 실시예로, 신뢰된 버스 마스터는 전원이 들어오고 리셋 되자마자, 소프트웨어 애플리케이션의 개시에 대한 응답으로, 또는 임의의 다른 적당한 시간에 값들을 레지스터들(30 및 54)로 프로그램할 수 있다. 이것은 레지스터들(30 및 54)로의 동적 액세스를 허용하여 그들은 필수적으로 업데이트될 수 있다. 대안으로는, 레지스터들(30 및 54)의 값들은 (1회 기록용 메모리를 사용하는 것과 같이) 1회 프로그램될 수 있으며, 오직 제한된 횟수들로 프로그램되거나 하드와이어될 수 있다. 주변기들(22. 24)을 액세싱하는 동안 회로(48)의 버스 마스터 속성 결정 회로(50)를 논의하기 이전에, 레지스터들(30)의 콘텐트는 도 3을 참조하여 설명될 것이다.
도 3은 마스터 특권 레지스터들(30)의 일 실시예를 도시하고, 설명된 실시예에서 마스터 특권 레지스터들(30)은 버스 마스터(14)에 대응하는 마스터 특권 레지스터(32)와 버스 마스터(15)에 대응하는 마스터 특권 레지스터(34)를 포함한다. 따라서, 현재의 실시예에서, 마스터 특권 레지스터들(30)은 각각의 버스 마스터에 대한 하나의 마스터 특권 레지스터를 포함한다. 그러나, 대안적인 실시예에서, 단일 레지스터는 모든 마스터들에 대한 필수 정보를 저장하는데 사용될 수 있거나, 대안으로는, 다수의 레지스터들과, 레지스터들의 조합이 사용될 수 있다. 마스터 특권 레지스터(32)는 예로서 여기에서 논의될 것이다. 그러나 마스터 특권 레지스터(32)에 관한 설명은 마스터 특권 레지스터(34)와 같은 마스터 특권 레지스터들(30)의 모든 마스터 특권 레지스터들에 또한 적용됨을 주목한다. 마스터 특권 레지스터(32)는 버스 마스터(14)에 대한 특권 레벨 변경자(필드(70)), 버스 마스터(14)에 의한 기록들을 위한 신뢰 속성(필드(71)), 버스 마스터(14)에 의한 판독들을 위한 신뢰 속성(필드(71))을 포함한다.
특권 레벨 변경자 필드(70)는, 필드(70)에 저장된 값으로 나타나는 바와 같이 특정 액세스에 대한 버스 마스터(14)의 현재의 특권 레벨이 선택적으로 변경되거나 조정되는 것을 허용한다. 일 실시예로, 버스 마스터(14)의 현재의 특권은 시스템 버스(16)를 통해 특권 표시자(37)에 의해 제어 회로(44)로 제공된다. 일 실시예에서 특권 표시자(37)는 현재의 버스 액세스 동안 버스 액세스를 요청하는 (버스 마스터 식별자(36)에 의해 식별된 것으로서) 현재의 버스 마스터가 감시자 또는 사용자 특권 레벨을 구비하는지 여부를 식별하는데 사용된다. 즉, 이 실시예에서, 특권 표시자(37)는 감시자 또는 사용자 모드 중 하나에 대응하는 특권 레벨을 나타낸다. 따라서, 버스 마스터(14)가 버스 액세스를 수행하면, 특권 레벨 변경자 필드(70)는 현재의 버스 액세스를 위한 버스 마스터의 특권 레벨이 조정되었는지 여부를 버스 마스터 속성 결정 회로(50)에 나타내기 위해 사용될 수 있다. 예를 들어, 감시자 모드에서 동작 중이면, 특권 레벨 변경자 필드(70)는 버스 마스터(14)의 특권 레벨을 사용자 모드로 강제하도록 사용될 수 있다. 대안으로는, 특권 레벨 변경자 필드(70)는 임의의 형태의 특권 레벨을 나타낼 수 있고, 오직 감시자 또는 사용자 모드들로 제한되지 않는다. 더욱이, 특권 레벨 변경자 필드(70)는 버스 마스터(14)의 특권 레벨을 제공하는데 사용되는 하나 이상의 비트들을 포함할 수 있다. 예를 들어, 일 실시예로, 특권 레벨 변경자 필드(70)의 하나의 비트는 현재의 버스 액세스 동안 버스 마스터를 요청하는 특권 레벨이 변경되어야 하는지 여부를 나타내는데 사용될 수 있으며, 다른 하나 이상의 비트들은 조정된 특권 레벨이 변경되어야 하는지를 나타내도록 사용될 수 있다. (몇몇 실시예들에서, 현재의 특권 레벨은, 조정이 필수적이지 않음을 나타내는, 필드(70)로 나타난 특권 레벨로서 동일할 수 있음을 주목한다.)
버스 마스터(14)(필드(71))에 의한 기록들을 위한 신뢰 속성은 버스 마스터(14)가 버스 마스터(14)에 의한 기록 액세스들을 위한 신뢰된 마스터인지 여부를 나타내는데 사용된다. 유사하게, 버스 마스터(14)(필드(72))에 의한 판독들을 위한 신뢰 속성은 버스 마스터(14)가 버스 마스터(14)에 의한 판독 액세스들을 위한 신뢰된 마스터인지 여부를 나타내는데 사용된다. 따라서, 버스 마스터(14)와 같은 각각의 버스 마스터는 판독 또는 기록 액세스를 위한 상이한 신뢰 속성들을 가질 수 있다. 예를 들어, 주변기 또는 버스 슬레이브로 판독 액세스를 수행하기 위해, 버스 마스터(14)는 신뢰된 마스터로 여겨질 수 있는 반면, 주변기 또는 버스 슬레이브로부터 기록 액세스를 수행하기 위해, 버스 마스터(14)는 비신뢰된 마스터로 여겨질 수 있다. 따라서, 각각의 필드들(71 및 72)은 기록 및 판독 액세스를 위한 버스 마스터(14)의 신뢰 레벨을 나타내는데 사용되는 하나 이상의 비트들을 포함할 수 있다. 대안적인 실시예로, 버스 마스터는 오로지 신뢰 또는 비신뢰로서 분류되기보다는 특정 형태들의 버스 액세스들을 위해 보다 많은 신뢰 레벨들을 가질 수 있다. 예를 들어, 필드들(71 및 72)은 버스 마스터(14)에 대해 N개의 신뢰 레벨(N>2)에서 하나의 레벨을 선택하여 표시할 수 있다.
설명된 필드들보다 많거나, 적거나, 상이한 필드들이 마스터 특권 레지스터(32)에 포함될 수 있음을 주목한다. 예를 들어, 단일 신뢰 속성 필드는, 버스 마스터(14)가 판독들 및 기록들 둘 다를 위한 신뢰 또는 비신뢰로 여겨질 때 버스 마스터(14)에 의한 기록들 및 판독들 둘 다를 위해 사용될 수 있다. 대안으로는, 신뢰 속성들은 다른 형태들의 버스 액세스들을 위해 제공될 수 있다.
상기 필드들(70-72)을 위한 설명들은 마스터 특권 레지스터(34)의 필드들(74-76)에 마찬가지로 적용됨을 주목한다. 즉, 버스 마스터(15)(필드(74))를 위한 특권 레벨 변경자는 버스 마스터(15)의 특권 레벨을 위해 현재의 버스 액세스에 대해 선택적으로 조정되도록 허용한다. 버스 마스터(15)(필드(75))에 의한 기록들을 위한 신뢰 속성은 기록 액세스를 위한 버스 마스터(15)의 신뢰 레벨을 나타내며, 버스 마스터(15)(필드(76))에 의한 판독들을 위한 신뢰 속성은 기록 액세스를 위한 버스 마스터(15)의 신뢰 레벨을 나타낸다.
도 2로 돌아가, 액세싱 주변기들(22, 24)을 위한 회로(48)는 어드레스(42), 제어(38), 특권 표시자(37), 및 버스 식별자(36)를 수신하는 버스 마스터 속성 결정 회로(50)를 포함하고, 조정된 특권 표시자(57), R/W 표시자(58), 및 신뢰 표시자(59)를 주변기 보호 결정 회로(51)에 제공한다. 따라서 회로(50)는 버스 액세스의 형태(판독 또는 기록), 요청된 주변기, 어느 버스 마스터가 요청을 하고 있는지의 식별, 요청을 하고 있는 버스 마스터의 특권 레벨을 식별하는데 필수적인 모든 정보를 수신한다. 마스터 특권 레지스터들(30)에 저장된 정보를 이용하여, 상기 설명된 바와 같이, 회로(50)는 조정된 특권 표시자(57), R/W 표시자(58), 및 신뢰 표시자(59)를 결정한다. 예를 들어, 버스 마스터에 의해 주변기에 대한 액세스를 요청하는 버스 액세스가 개시될 수 있다(이 버스 액세스는 판독 또는 기록 버스 액세스 중 하나를 할 수 있다). 적어도 버스 액세스의 부분 동안, 버스 마스터 식별자(36)가 제공된다. 버스 마스터 식별자(36)는 버스 액세스 동안 (요청 버스 마스터에 대응하는) 마스터 특권 레지스터들(30)로부터 마스터 특권 정보를 선택하기 위해 사용된다. 조정된 특권 표시자(57), R/W 표시자(58), 및 신뢰 표시자(59)에 대한 값이 결정될 수 있다.
예를 들어, 일 실시예로 버스 마스터(14)가 현재의 버스 액세스를 수행하고 있을 때, 조정된 특권 표시자(57)는 특권 표시자(37) 및 특권 레벨 변경자 필드(70)에 의해 나타난 바와 같이 현재의 특권 레벨을 기초하여 결정된다. 특권 레벨 변경자 필드(70)가, 특정 특권 레벨이 버스 마스터(14)에 강제되어야 함을 나타내면, 조정된 특권 표시자(57)의 값은 이 강제된 특권 레벨을 나타내도록 세팅된다. 특권 레벨 변경자 필드(70)가, 특권이 버스 마스터(14)에 강제되지 않아도 됨을 나타내면, 조정된 특권 표시자(57)의 값은 특권 표시자(37)로서 동일한 특권 레벨을 나타내도록 세팅될 수 있다. R/W 표시자(58)는 현재의 버스 액세스가 판독 또는 기록 액세스인지 여부를 나타내는 제어(38)로부터 결정될 수 있다. 신뢰 표시자(59)는 현재의 버스 액세스가 (제어(38)로부터 결정될 수 있는 바와 같이) 판독 또는 기록 액세스인지 여부와 신뢰 속성 필드들(71 및 72)에 기초하여 결정된다. 예를 들어, 현재의 버스 액세스가 버스 마스터(14)에 의한 기록 액세스이면, 신뢰 표시자(59)는 신뢰 속성 필드(71)에 의해 표시된 신뢰 레벨을 표시하도록 세팅된다. 유사하게, 현재의 버스 액세스가 버스 마스터(14)에 의한 판독 액세스이면, 신뢰 표시자는 신뢰 속성 필드(72)에 의해 표시된 신뢰 레벨을 표시하도록 세팅된다.
조정된 특권 표시자(57), R/W 표시자(58), 및 신뢰 표시자(59)는 주변기 액세스 제어 레지스터들(54)과 조합하여, 주변기에 대한 액세스가 허용되는지 여부, 또는 몇몇 경우들에서, 액세스 에러가 생성되어 액세스 에러 신호(60)를 통해 버스 마스터 속성 결정 회로(50)로 돌아가고/돌아가거나 버스 마스터의 액세스 요청이 에러를 유발하는지 여부를 결정하도록 주변기 보호 결정 회로(51)에 의해 이후 사용된다. 주변기들(22, 24)에 액세싱하기 위한 회로(48)내의 주변기 보호 결정 회로(51)를 논의하기 이전에, 레지스터들(54)의 콘텐트들을 도 4를 참조하여 설명할 것이다.
도 4는 주변기 액세스 제어 레지스터들(54)의 일 실시예를 도시하며, 설명된 실시예에서 주변기 액세스 제어 레지스터들(54)은 주변기(22)와 대응하는 주변기 액세스 제어 레지스터(55)와 주변기(24)에 대응하는 주변기 액세스 제어 레지스터(56)를 포함한다. 따라서, 설명된 실시예에서, 주변기 액세스 제어 레지스터들(54)은 각각의 주변기들을 위한 하나의 주변기 액세스 제어 레지스터를 포함한다. 그러나, 대안적인 실시예들에서, 단일 레지스터는 모든 주변기들에 대한 필수 정보를 저장하는데 사용될 수 있거나, 대안으로는, 다수의 레지스터들과 레지스터들의 조합이 사용될 수 있다. 주변기 액세스 제어 레지스터(55)는 예로서 여기에서 설명될 것이다. 그러나, 주변기 액세스 제어 레지스터(55)에 대한 설명들은 주변기 액세스 제어 레지스터(56)와 같이 주변기 액세스 제어 레지스터들(54)의 모든 주변기 액세스 제어 레지스터들에 또한 적용됨을 주목한다. 주변기 액세스 제어 레지스터(55)는 주변기(22)(필드(80))에 대한 주변기 신뢰 속성, 주변기(22)(필드(81))에 대한 기록 보호, 및 주변기(22)(필드(82))에 대한 특권 보호를 포함한다.
주변기(22)(필드(80))에 대한 주변기 신뢰 속성은 주변기(22)가 비신뢰된 마스터로부터 (판독들 또는 기록들 중 하나에) 액세스를 허용하는지 여부를 나타낸다. 예를 들어, 현재의 버스 마스터(예를 들어, 필드들(71 및 72))에 대응하는 신뢰 속성 필드들에 의해 나타난 바와 같이, 현재의 버스 액세스를 실행하는 버스 마스터가 비신뢰면, 버스 액세스는, 필드(80)가 비신뢰된 마스터로부터의 액세스들이 허용됨을 표시할 때만 허용될 것이다. 주변기(22)(필드(81))에 대한 기록 보호는 주변기(22)가 마스터에 의해 그 자체에 기록 액세스들을 허용하는지 여부를 나타낸다. 예를 들어, 현재의 버스 마스터에 의해 수행되고 있는 버스 액세스(버스 액세스의 신뢰 레벨과 관계없이)가 주변기(22)로의 기록 액세스이면, 기록 액세스는, 필드(81)가 주변기(22)가 기록 보호임을 표시하면, 수행될 수 없다. 주변기(22)(필드(81))에 대한 특권 보호는 주변기(22)가 현재의 버스 액세스에 대한 일정한 특권 레벨을 요청하는지 여부를 표시한다. 따라서, 특권 보호 필드(82)는 주변기(22)로의 액세스를 위해 요청된 최소의 특권 레벨을 표시할 수 있는 다수의 비트들을 포함할 수 있다. 일 실시예에서, 단일 비트는 감시자 특권이 요청되는지 여부를 나타내도록 사용될 수 있다. 대안으로는, 보다 많은 비트들이 N-레벨들 중 최소 하나의 특권(N>2)을 요청하는 것을 표시하도록 사용될 수 있다.
설명된 필드들보다 많거나, 적거나, 상이한 필드들이 주변기 액세스 제어 레지스터(55)에 포함될 수 있다. 예를 들어, 주변기 신뢰 속성 필드(80)와 같은 개별 주변기 신뢰 속성은 비신뢰된 마스터로부터 판독 액세스들이 허용되는지 여부와 비신뢰된 마스터로부터 기록 액세스들이 허용되는지 여부를 표시하도록 사용될 수 있다. 또한, 부가적인 비트들 또는 필드들이 판독 또는 기록 액세스를 허용하도록 주변기(22)에 필요로되는 N개의 가능한 신뢰 레벨들의 최초 신뢰 레벨(N>2)을 표시하도록사용될 수 있다.
필드들(80-82)에 대해 상기 제공된 설명들은 주변기 액세스 레지스터(56)의 필드들(84-86)에 마찬가지로 적용됨을 주목한다. 즉, 주변기(24)(필드(84))에 대한 주변기 신뢰 속성은 주변기(24)가 비신뢰된 마스터로부터의 액세스들을 허용하는지 여부를 나타낸다. 주변기(24)(필드(85))에 대한 기록 보호는 주변기(24)가 마스터에 의해 그 자체에 기록 액세스들을 허용하는지 여부를 나타낸다. 주변기(24)(필드(86))에 대한 특권 보호는 주변기(24)가 현재의 버스 액세스에 대한 일정한 특권 레벨을 요청하는지 여부를 표시한다.
도 2로 돌아가, 액세싱 주변기들(22, 24)을 위한 회로(48)는 조정된 특권 표시자(57), R/W 표시자(58), 및 신호 표시자(59)를 수신하는 버스 마스터 속성 결정 회로(51)를 포함하고, 액세스 에러 신호(60)를 버스 마스터 속성 결정 회로(50)에 제공한다. (대안으로 또는 부가적으로, 액세스 에러 신호(60)는 시스템 버스(16)를 통해 에러를 유발하는 요청이 있는 버스 마스터로 돌아갈 수 있다.) 따라서 회로(51)는, 상기 설명된 바와 같이, 요청된 주변기에 대한 버스 액세스가 허용되는지 여부를 결정하기 위해, 표시자들(57-59)과 주변기 액세스 제어 레지스터들(54)에 저장된 정보를 사용한다. 예를 들어, 버스 마스터(14)가 주변기(22)에 기록을 수행하기 위해 버스 액세스를 개시하면, 회로(51)는 버스 액세스가 허용되는지 여부를 결정한다. 예를 들어, 회로(51)는 주변기(22)가 액세스를 위해 (필드(82)에 의해 표시된 바와 같이) 특정 특권 레벨을 요청하는지 여부와 버스 마스터(14)가 (조정된 특권 표시자(57)에 의해 표시된 바와 같이) 요청된 특권 레벨을 갖는지 여부를 결정하도록 조정된 특권 표시자(57)와 특권 보호 필드(82)를 사용한다. 회로(51)는 현재의 버스 액세스가 기록 액세스인지, 그렇다면 기록 액세스들이 주변기(22)에 허용되는지 여부를 결정하기 위해 R/W 표시자(58)와 기록 보호 필드(81)를 또한 사용한다. 회로(51)는 버스 마스터(14)가 (필드(80)에 의해 표시된) 주변기(22)에 의해 요청된 바와 같이 (신뢰 표시자(59)에 의해 표시된) 적당한 신뢰 레벨을 갖는지 여부를 결정하기 위해 신뢰 표시자(59) 및 주변기 신뢰 속성 필드(80)를 또한 사용한다. 따라서, 상기 모든 정보를 사용하여, 회로(51)는 버스 마스터(14)에 의해 주변기(22)로 요청된 버스 액세스가 허용되는지 여부를 결정할 수 있다. 즉, 버스 마스터(14)는 적당한 특권 레벨과 적당한 신뢰 레벨을 갖는 것을 필요로 하고, 버스 액세스가 기록이면, 버스 액세스가 허용되기 때문에 주변기(22)는 기록 보호가 되면 않된다.
액세스가 허용(요청 버스 마스터가, 요청되고 있는 특정 주변기에 대한 적당한 액세스 허가를 갖는 것을 의미함)되면, 동작이 계속되고(즉 버스 액세스가 계속됨), 동작을 완료하기 위해 필수적 버스 프로토콜이 제공된다. 예를 들어, 신호 브리징 회로(52)는 임의의 적절한 데이터, 어드레스, 및 제어 신호들을 제어(38), 데이터(40), 및 어드레스(42)에서 비롯된 액세스된 주변기로 제공한다. 유사하게, 신호 브리징 회로(52)는 임의의 필수 제어, 데이터, 및 어드레스 정보를 제어(38), 데이터(40), 및 어드레스(42)를 통해 시스템 버스(16)로 리턴한다. 또한, 상태 정보는 제어(38) 경로를 통해 리턴될 수 있다.
그러나, 액세스가 허용(요청 버스 마스터가, 요청되고 있는 특정 주변기에 대한 적당한 액세스 허가를 갖지 않는 것을 의미함)되지 않으면, 버스 액세스는 주변기를 액세싱하기 이전에 종료된다. 또한, 액세스 에러 신호(60)는 요청 버스 마스터가 주변기에 대한의 액세가 부정됨을 나타내는데 사용될 수 있다. 또한, 버스 에러가 시스템 버스(16)를 통해 요청 버스 마스터로 제공될 수 있다. 버스 에러는 제어 신호들(38) 중 하나로서 버스 마스터 허용 결정 회로(50)에 의해 제공될 수 있다. 응답으로, 요청 버스 마스터는 버스 에러로부터의 복구를 위해 적당한 예외적 취급을 수행할 수 있다. 대안으로는, 액세스가 허용되지 않으면, 모든 리셋 또는 데이터 프로세싱 시스템(10)의 일부가 수행될 수 있다.
상기 논의된 바와 같이, 신뢰된 버스 마스터는 필수적으로 레지스터들(30 및 54)내의 허가들을 동적으로 변경할 수 있다. 일 실시예로, 신뢰된 버스 마스터는 소프트웨어 애플리케이션의 개시에 대해 응답하여 허가들을 변경할 수 있다. 예를 들어, 신뢰된 버스 마스터는 소프트웨어 애플리케이션을 시작하도록 준비하는 신뢰된 버스 마스터를 경보할 수 있다. 응답으로, 신뢰된 버스 마스터는 그 애플리케이션을 완료하기 위한 비신뢰된 버스 마스터 액세스를 필수 주변기로 제공하기 위해 레지스터들(30 및 54)을 업데이트할 수 있다. 애플리케이션을 완료하자마자, 신뢰된 버스 마스터는 이전에 수여된 허가들을 폐지할 수 있어, 허가들은 애플리케이션 기초에 하여 오로지 애플리케이션에 수여된다.
대안적 실시예에서, 주변기(22 또는 24)는, 주변기 레지스터들(21 또는 25)이 메모리 위치들에 있을 때, 메모리 유닛에 있을 수 있다. 이 실시예에서, 레지스터들(30 및 54)은 특정 메모리 위치들 또는 메모리 유닛의 일부들에 대한 각각의 버스 마스터에 대응하는 액세스 허가들을 정의할 수 있다.
또한 대안적인 실시예에서, 레지스터(30)에 저장된 정보는 각각의 대응 마스터내에 위치할 수 있으며, 레지스터들(54)에 저장된 정보는 버스 인터페이스(18) 내보다는 각각의 주변기내에 위치할 수 있음을 주목한다. 따라서, 대안적 실시예들은 레지스터들(30 및 54)의 정보를 저장할 수 있으며, 데이터 프로세싱 시스템(10)의 메모리 맵 범위의 임의의 장소에서 신뢰된 버스 마스터에 의해 액세스가 가능하다. 또한, 데이터 프로세싱 시스템(10)은 허가 정보를 업데이트할 수 있는 다수의 신뢰된 버스 마스터들을 포함할 수 있으며 단일의 안전 버스 마스터로 제한되지 않는다.
도 5는 본 발명의 대안적인 실시예에 따른 데이터 프로세싱 시스템(100)을 도시한다. 데이터 프로세싱 시스템(100)은 버스 마스터(101), 버스 마스터(102), 버스 마스터 속성 결정 회로 및 마스터 특권 레지스터(104), 버스 마스터 속성 결정 회로 및 마스터 특권 레지스터(110), 주변기 보호 결정 회로 및 주변기 액세스 제어 레지스터(106), 주변기 보호 결정 회로 및 주변기 액세스 제어 레지스터(112), 및 주변기들(108 및 114)을 포함한다. 버스 마스터(101)는 특권 표시자(116)를 버스 마스터 속성 결정 회로 및 마스터 특권 레지스터(104)로 제공하며, 이는 조정된 특권 표시자(118)를 시스템 버스(103)를 통해 주변기 보호 결정 회로 및 주변기 액세스 제어 레지스터들(106 및 112)과 주변기들(108 및 114)로 제공하며, 신뢰 표시자(120)는 시스템 버스(103)를 통해 주변기 보호 결정 회로 및 주변기 액세스 제어 레지스터들(106 및 112)로 제공한다. 또한, 버스 마스터(101)는 다른 정보(122)를 시스템 버스(103)를 통해 주변기 보호 결정 회로 및 주변기 액세스 제어 레지스터들(106 및 112) 및 주변기들(108 및 114)로 제공한다. 버스 마스터(102)는 특권 표시자(130)를 버스 마스터 속성 결정 회로 및 마스터 특권 레지스터(110)로 제공하며, 조정된 특권 표시자(126)를 시스템 버스(103)를 통해 주변기 보호 결정 회로 및 주변기 액세스 제어 레지스터들(106 및 112)과 주변기들(108 및 114)로 제공하며, 신뢰 표시자(128)를 시스템 버스(103)를 통해 주변기 보호 결정 회로 및 주변기 액세스 제어 레지스터들(106 및 112)로 제공한다. 또한, 버스 마스터(102)는 다른 정보(124)를 시스템 버스(103)를 통해 주변기 보호 결정 회로 및 주변기 액세스 제어 레지스터들(106 및 112)과 주변기들(108 및 114)로 제공한다.
동작중, 데이터 프로세싱 시스템(100)은 데이터 프로세싱 시스템(10)과 유사하게 동작한다. 예를 들어, 마스터들(101 및 102)은 마스터들(14 및 15)과 유사할 수 있으며, 주변기들(108 및 114)은 주변기들(22 및 24)과 유사할 수 있다. 또한, 데이터 프로세싱 시스템(100)은 다수의 마스터들과 다수의 주변기들을 포함할 수 있다. 그러나, 데이터 프로세싱 시스템(100)에서, 버스 인터페이스부들(18)은 상이한 위치들에 분배될 수 있다. 또한, 데이터 프로세싱 시스템(100), 신뢰 표시자들(120 및 128)은 시스템 버스(103)를 통해 주변기 보호 결정 회로 및 주변기 액세스 제어 레지스터들(106 및 112)로 제공된다. 또한, 특권 표시자(116 및 130)는 버스 마스터 속성 결정 회로 및 마스터 특권 레지스터들(104 및 110)에 의해 선택적으로 변경될 수 있으며, 각각, 조정된 특권 표시자들(118 및 126)로서 시스템 버스(103)를 통해 주변기 보호 결정 회로와 주변기 액세스 제어 레지스터들(106 및 112)과 주변기들(108 및 114)로 제공된다. 버스 마스터 속성 결정 회로와 마스터 특권 레지스터들(106 및 110) 각각은 도 2-4를 참조하여 상술된 버스 마스터 속성 결정 회로(50)와 마스터 특권 레지스터들(30)과 유사하게 동작한다. 예를 들어, 마스터 특권 레지스터들 및 주변기 액세스 제어 레지스터들에 저장된 정보는 버스 액세스가 허용되는지 여부를 결정하기 위해 동일한 방식으로 사용될 수 있다. 다른 정보(122 및 124)는 제어(38), 데이터(40), 어드레스(42), 및 버스 마스터 식별자(36)와 같은 정보를 포함할 수 있다. 따라서, 동일한 신호들이 도 1-4에서 상술된 바와 같이 사용될 수 있으나, 신호들 또는 몇몇 신호들 그 자체들을 생성하는 회로는 상이한 장소들에 위치하거나 상이하게 구성될 수 있다.
도 5의 설명된 실시예에서, 각각의 버스 마스터(101 및 102)는 대응하는 버스 마스터 속성 결정 회로 및 마스터 특권 레지스터를 구비하기 때문에, 도 2의 버스 마스터 식별자(36)는 선택적이다. 따라서, 결정 회로 및 마스터 특권 레지스터는 각각의 마스터에 분배된다. 예를 들어, 결정 회로 및 마스터 특권 레지스터는 그것의 대응 버스 마스터에 대응하는 특권 레벨과 신뢰 속성 필드들(필드 70-72 및 74-76과 같은)을 포함할 수 있다. 회로와 마스터 특권 레지스터에 저장된 정보는 각각의 마스터 범위에 또는 마스터와 시스템 버스 사이의 통신에 위치할 수 있다. 또한, 주변기 보호 결정 회로(51) 및 주변기 액세스 레지스터들(54)은 각각의 주변기에 분배될 수 있다. 예를 들어, 도 5에 도시된 바와 같이, 각각의 주변기(108 및 114)는, 각각의 주변기 보호 결정 회로 및 주변기 액세스 제어 레지스터가 그것의 대응 주변기에 대응하는 액세스 제어 필드들(필드 80-82 및 84-86과 같은)을 포함할 수 있을 때 대응하는 주변기 보호 결정 회로 및 주변기 액세스 제어 레지스터를 구비한다. 주변기들(108 및 116)은 데이터 프로세싱 시스템(10)을 참조하여 미리 설명된 바와 같이 임의의 형태의 주변기, 메모리 디바이스, 또는 버스 슬레이브일 수 있으며, 따라서, 특정한 기능으로 범위가 제한되지 않는다.
도 1 및 2가 양방향 컨덕터들의 사용을 도시할지라도, 양방향 컨덕터들의 조합이 대신 사용될 수 있음을 이해해야 함을 주목한다. 대안으로는, 양방향 및 단일 방향 컨덕터들의 조합이 사용될 수 있다. 또한, 신호들은 단일 컨덕터를 통해 직렬로 전송되거나 복수의 컨덕터들을 통해 병렬로 전송될 수 있다. 대안으로는, 신호들은 단일 또는 복수의 컨덕터들상에 시간 멀티플렉싱될 수 있다. 또한, 양방향 컨덕터들로서 설명된 신호들은 단일 방향 컨덕터들로 대체될 수 있고, 단일 방향 컨덕터들은 양방향 컨덕터들로 대체될 수 있음을 주목한다.
이전의 설명에서, 본 발명은 특정의 실시예들을 참조하여 설명되었다. 그러나, 본 기술의 숙련된 기술자들은 다음의 청구 범위에서 제시된 바와 같이 본 발명의 범위에서 벗어남 없이 다양한 변경들과 변화들이 가능함을 이해한다. 예를 들어, 데이터 프로세싱 시스템(10 및 100)은 단일 칩 또는 집적 회로(IC) 또는 칩들 또는 IC들의 조합에 위치할 수 있는 임의의 형태의 데이터 프로세싱 시스템일 수 있다. 또한, 데이터 프로세싱 시스템(10 및 100)은 공유 주변기들을 구비한 (네트워크 시스템 버스를 통해 접속된) 네트워크상에 위치한 다양한 마스터들과 슬레이브들에 적용될 수 있다. 따라서, 상세한 설명과 도면들은 제한을 하기 위함 보다 설명으로 여겨지며, 모든 이러한 변경들은 본 발명의 범위내에 포함됨을 의도한다.
이익들, 다른 유리함들, 및 문제점들에 대한 해결책들이 특정 실시예들을 고려하여 상술되었다. 그러나, 이익들, 유리함들, 문제점들에 대한 해결책들, 및 임의의 이익, 유리함, 또는 보다 많이 주장될 수 있는 해결책의 원인이 될 수 있는 임의의 요소(들)은 임의의 또는 모든 청구범위들의 중요하며, 요청되거나, 필수적인 특징 또는 요소로서 이해되지 않는다. 여기에 사용된 바와 같이, "포함한다", "포함하는" 용어들, 또는 이들의 임의의 다른 변화들은 비배타적인 포함을 커버하도록 의도되어, 프로세스, 방법, 물건, 또는 장치는 그러한 요소들만을 포함하지 않고 이러한 프로세스, 방법, 물건, 또는 장치에 대해 고유하거나 명백히 리스트되지 않은 다른 요소들을 포함할 수 있다.

Claims (11)

  1. 버스를 구비한 데이터 프로세싱 시스템(10)에 주변기 액세스 보호를 제공하는 방법으로서,
    주변기(22 또는 24)에 대한 액세스를 요청하는 버스 액세스를 개시하는 단계와,
    상기 버스 액세스와 연관된 특권 표시자(privilege indicator)(37)를 제공하는 단계와,
    특권 레벨 변경자(privilege level modifier)를 제공하는 단계와,
    선택적으로 조정된 특권 표시자(57)를 생성하기 위해, 상기 특권 레벨 변경자의 값에 기초하여 상기 특권 표시자를 선택적으로 조정하는 단계를 포함하는, 주변기 액세스 보호를 제공하는 방법.
  2. 제 1 항에 있어서,
    주변기에 대한 버스 액세스가 허용될 것인지 여부를 결정함에 있어서 상기 특권 표시자 보다는 상기 선택적으로 조정된 특권 표시자를 사용하는 단계를 더 포함하는, 주변기 액세스 보호를 제공하는 방법.
  3. 제 1 항에 있어서, 상기 특권 레벨 변경자는 제 1 버스 마스터(14 또는 15)에 대응하며, 상기 방법은,
    상기 제 1 버스 마스터에 대응하는 복수의 신뢰 속성들을 제공하는 단계와,
    상기 버스 액세스가 판독 액세스이면, 복수의 신뢰 속성들로부터 제 1 신뢰 속성을 선택하는 단계와,
    상기 버스 액세스가 판독 액세스이면, 상기 제 1 버스 마스터가 판독 액세스들에 대해 신뢰되는지 여부를 결정하도록 상기 제 1 신뢰 속성을 이용하는 단계와,
    상기 버스 액세스가 기록 액세스이면, 상기 복수의 신뢰 속성들로부터 제 2 신뢰 속성을 선택하는 단계와,
    상기 버스 액세스가 기록 액세스이면, 상기 제 1 버스 마스터가 기록 액세스들에 대해 신뢰되는지 여부를 결정하도록 상기 제 2 신뢰 속성을 이용하는 단계를 더 포함하는, 주변기 액세스 보호를 제공하는 방법.
  4. 제 1 항에 있어서, 상기 주변기가 액세스에 대한 감시자 특권 레벨을 요청하는지 여부를 결정하도록 상기 주변기에 대해 적어도 하나의 특권 보호 비트(82 또는 86)를 제공하는 단계를 더 포함하는, 주변기 액세스 보호를 제공하는 방법.
  5. 제 1 항에 있어서,
    제 1 버스 마스터에 대응하는 적어도 하나의 신뢰 속성을 제공하는 단계와,
    상기 제 1 버스 마스터가 신뢰된 버스 마스터인지 여부를 결정하도록 적어도 하나의 신뢰 속성을 이용하는 단계를 포함하는, 주변기 액세스 보호를 제공하는 방법.
  6. 제 1 항에 있어서,
    상기 주변기에 대한 액세스를 요청하는 제 2 버스 액세스를 개시하는 단계와,
    상기 제 2 버스 액세스와 연관된 제 2 특권 표시자를 제공하는 단계와,
    제 2 특권 레벨 변경자를 제공하는 단계와,
    상기 제 2 특권 레벨 변경자의 값에 기초하여 상기 제 2 특권 표시자를 선택적으로 조정하는 단계를 더 포함하며,
    상기 제 2 특권 레벨 변경자는 제 2 버스 마스터에 대응하는, 주변기 액세스 보호를 제공하는 방법.
  7. 제 1 항에 있어서,
    상기 주변기에 적어도 하나의 주변기 신뢰 속성을 제공하는 단계와,
    비신뢰된 버스 마스터로부터 상기 주변기에 대한 임의의 액세스가 허용되는지 여부를 결정하기 위해 적어도 하나의 주변기 신뢰 속성을 이용하는 단계를 더 포함하는, 주변기 액세스 보호를 제공하는 방법.
  8. 데이터 프로세싱 시스템으로서,
    제 1 버스 마스터(14)와,
    주변기(22 또는 24)와,
    특권 표시자(37)와,
    조정된 특권 표시자(57)와,
    상기 제 1 버스 마스터에 대응하는 제 1 특권 레벨 변경자를 저장하는 제 1 저장 회로(70)와,
    상기 제 1 버스 마스터, 상기 주변기, 상기 특권 표시자, 상기 조정된 특권 표시자, 및 상기 제 1 저장 회로에 접속되어, 상기 특권 표시자를 수신하고 상기 제 1 특권 레벨 변경자에 기초하여 상기 특권 표시자를 선택적으로 조정하고, 상기 조정된 특권 표시자를 제공하는 제어 회로(44)를 포함하는, 데이터 프로세싱 시스템.
  9. 제 8 항에 있어서,
    상기 제어 회로에 접속된 제 2 버스 마스터(15)와,
    상기 제 2 버스 마스터에 대응하는 제 2 특권 레벨 변경자를 저장하고, 상기 제어 회로에 접속되는 제 2 저장 회로(74)를 더 포함하며,
    상기 제어 회로는, 상기 제 2 버스 마스터가 버스 액세스를 개시할 때, 상기 특권 표시자를 수신하고 상기 제 2 특권 레벨 변경자에 기초하여 상기 특권 표시자를 선택적으로 조정하는, 데이터 프로세싱 시스템.
  10. 데이터 프로세싱 시스템(10)에 주변기 액세스 보호를 제공하기 위한 방법으로서,
    제 1 버스 마스터(14)를 제공하는 단계와,
    제 2 버스 마스터(15)를 제공하는 단계와,
    주변기(22 또는 24)에 대한 액세스를 요청하는 제 1 버스 액세스를 개시하는 단계와,
    상기 제 1 버스 액세스와 관련된 제 1 특권 표시자(37)를 제공하는 단계와,
    제 1 특권 레벨 변경자(70)를 제공하는 단계와,
    제 1 선택적으로 조정된 특권 표시자(57)를 생성하기 위해 상기 제 1 특권 레벨 변경자에 기초하여 상기 제 1 특권 표시자를 선택적으로 조정하는 단계와,
    상기 주변기에 대한 액세스를 요청하는 제 2 버스 액세스를 개시하는 단계와,
    상기 제 2 버스 액세스와 연관된 제 2 특권 표시자를 제공하는 단계와,
    제 2 특권 레벨 변경자(74)를 제공하는 단계와,
    제 2 선택적으로 조정된 특권 표시자(57)를 생성하기 위해 상기 제 2 특권 레벨 변경자에 기초하여 상기 제 2 특권 표시자를 선택적으로 조정하는 단계를 포함하는, 주변기 액세스 보호를 제공하기 위한 방법.
  11. 버스를 구비하는 데이터 프로세싱 시스템에 주변기 액세스 보호를 제공하기 위한 방법으로서,
    주변기(22 또는 24)에 대한 액세스를 요청하는 버스 액세스를 개시하는 단계와,
    제 1 버스 마스터(14 또는 15)에 대응하는 적어도 하나의 신뢰 속성을 제공하는 단계로서, 상기 적어도 하나의 신뢰 속성은 감시자/사용자 속성과 독립적인, 상기 적어도 하나의 신뢰 속성을 제공하는 단계와,
    상기 버스 액세스에 대하여 상기 제 1 버스 마스터가 신뢰된 버스 마스터인지 여부를 결정하도록 적어도 하나의 신뢰 속성을 사용하는 단계를 포함하는, 주변기 액세스 보호를 제공하기 위한 방법.
KR1020057016693A 2003-03-07 2004-02-04 주변기 액세스 보호를 구비한 데이터 액세싱 시스템 및이를 위한 방법 KR20050113638A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US10/384,024 2003-03-07
US10/384,024 US7434264B2 (en) 2003-03-07 2003-03-07 Data processing system with peripheral access protection and method therefor

Publications (1)

Publication Number Publication Date
KR20050113638A true KR20050113638A (ko) 2005-12-02

Family

ID=32927178

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020057016693A KR20050113638A (ko) 2003-03-07 2004-02-04 주변기 액세스 보호를 구비한 데이터 액세싱 시스템 및이를 위한 방법

Country Status (7)

Country Link
US (1) US7434264B2 (ko)
EP (1) EP1604482A4 (ko)
JP (1) JP2006523347A (ko)
KR (1) KR20050113638A (ko)
CN (1) CN1759557A (ko)
TW (1) TW200417869A (ko)
WO (1) WO2004081707A2 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100738603B1 (ko) * 2003-07-03 2007-07-11 제너럴 모터즈 코오포레이션 특권 및 비특권 문서 전자 관리 시스템, 방법 및 기록 매체

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7444668B2 (en) * 2003-05-29 2008-10-28 Freescale Semiconductor, Inc. Method and apparatus for determining access permission
US7620807B1 (en) * 2004-02-11 2009-11-17 At&T Corp. Method and apparatus for automatically constructing application signatures
US8332653B2 (en) * 2004-10-22 2012-12-11 Broadcom Corporation Secure processing environment
WO2007000726A2 (en) * 2005-06-28 2007-01-04 Nxp B.V. Electronic device
US7761914B2 (en) * 2005-10-21 2010-07-20 Oracle International Corporation Method and apparatus for facilitating adjustment of an audit state in a computing environment
WO2007083278A1 (en) * 2006-01-20 2007-07-26 Nokia Corporation Distributed (modular) internal architecture
US8001591B2 (en) * 2006-01-31 2011-08-16 Freescale Semiconductor, Inc. Distributed resource access protection
US8949312B2 (en) * 2006-05-25 2015-02-03 Red Hat, Inc. Updating clients from a server
JP2007334432A (ja) * 2006-06-12 2007-12-27 Nec Electronics Corp 情報処理装置及びそのアクセス制御方法
US8464069B2 (en) * 2007-02-05 2013-06-11 Freescale Semiconductors, Inc. Secure data access methods and apparatus
US7992209B1 (en) 2007-07-19 2011-08-02 Owl Computing Technologies, Inc. Bilateral communication using multiple one-way data links
JP4939382B2 (ja) * 2007-11-28 2012-05-23 ルネサスエレクトロニクス株式会社 情報処理装置及びそのプログラム実行制御方法
JP4335940B2 (ja) 2007-11-29 2009-09-30 Necエレクトロニクス株式会社 データ処理装置及びデータ処理装置における周辺装置保護方法
JP5215655B2 (ja) * 2007-12-27 2013-06-19 ルネサスエレクトロニクス株式会社 データ処理装置及びデータ処理装置におけるバスアクセス制御方法
JP4514066B2 (ja) * 2008-04-28 2010-07-28 ルネサスエレクトロニクス株式会社 データ処理装置及びデータ処理装置におけるアクセス制御方法
US8447943B2 (en) * 2010-02-24 2013-05-21 Hitachi, Ltd. Reduction of I/O latency for writable copy-on-write snapshot function
JP2012099154A (ja) * 2012-02-22 2012-05-24 Renesas Electronics Corp 情報処理装置及びそのアクセス制御方法
US9092647B2 (en) 2013-03-07 2015-07-28 Freescale Semiconductor, Inc. Programmable direct memory access channels
US20140366131A1 (en) * 2013-06-07 2014-12-11 Andes Technology Corporation Secure bus system
US9836318B2 (en) * 2014-02-21 2017-12-05 Infineon Technologies Ag Safety hypervisor function
CN104899175A (zh) * 2014-03-04 2015-09-09 深圳市中兴微电子技术有限公司 一种基于片内总线协议的安全访问控制方法和装置
US9268970B2 (en) 2014-03-20 2016-02-23 Analog Devices, Inc. System and method for security-aware master
US10534739B2 (en) 2014-10-31 2020-01-14 Hewlett Packard Enterprise Development Lp Indicating a privilege level
US10095891B2 (en) * 2015-06-08 2018-10-09 Nuvoton Technology Corporation Secure access to peripheral devices over a bus
US20190196967A1 (en) * 2017-12-27 2019-06-27 Samsung Electronics Co., Ltd. Device including access controller, system on chip and system including the same
GB201807589D0 (en) * 2018-05-10 2018-06-27 Nordic Semiconductor Asa Memory access
US11354172B2 (en) 2020-09-01 2022-06-07 Nxp Usa, Inc. Centralized access control circuit for controlling access to peripherals
WO2023129462A1 (en) * 2022-01-03 2023-07-06 Microchip Technology Incorporated Electronic device including access control identifiers for controlling access to peripherals
GB2624257A (en) * 2022-11-08 2024-05-15 Cirrus Logic Int Semiconductor Ltd Systems and methods for access protection of system peripherals

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB8308149D0 (en) * 1983-03-24 1983-05-05 Int Computers Ltd Computer system
US4763250A (en) * 1985-04-01 1988-08-09 Motorola, Inc. Paged memory management unit having variable number of translation table levels
US4809160A (en) * 1985-10-28 1989-02-28 Hewlett-Packard Company Privilege level checking instruction for implementing a secure hierarchical computer system
US4890223A (en) * 1986-01-15 1989-12-26 Motorola, Inc. Paged memory management unit which evaluates access permissions when creating translator
US4831581A (en) * 1987-02-24 1989-05-16 Digital Equipment Corporation Central processor unit for digital data processing system including cache management mechanism
US5140684A (en) * 1987-09-30 1992-08-18 Mitsubishi Denki Kabushiki Kaisha Access privilege-checking apparatus and method
US5454082A (en) * 1991-09-18 1995-09-26 Ncr Corporation System for preventing an unselected controller from transferring data via a first bus while concurrently permitting it to transfer data via a second bus
US5367695A (en) * 1991-09-27 1994-11-22 Sun Microsystems, Inc. Bus-to-bus interface for preventing data incoherence in a multiple processor computer system
US5423034A (en) * 1992-06-10 1995-06-06 Cohen-Levy; Leon Network file management with user determined hierarchical file structures and means for intercepting application program open and save commands for inputting and displaying user inputted descriptions of the location and content of files
US5450593A (en) * 1992-12-18 1995-09-12 International Business Machines Corp. Method and system for controlling access to objects in a data processing system based on temporal constraints
EP0760978B1 (en) * 1994-05-26 2004-09-29 The Commonwealth Of Australia Secure computer architecture
US5553019A (en) * 1995-01-23 1996-09-03 Motorola, Inc. Write-once read-many memory using EEPROM cells
US5948097A (en) * 1996-08-29 1999-09-07 Intel Corporation Method and apparatus for changing privilege levels in a computer system without use of a call gate
JPH10143437A (ja) * 1996-11-14 1998-05-29 Toshiba Corp コンピュータシステムおよび動画像転送方法
JPH10187595A (ja) * 1996-12-26 1998-07-21 Nec Eng Ltd バスブリッジ
US5915086A (en) * 1997-04-03 1999-06-22 Oracle Corporation Hierarchical protection of seed data
JPH10307788A (ja) * 1997-05-07 1998-11-17 Fujitsu Ltd バスブリッジ
JPH10312357A (ja) * 1997-05-13 1998-11-24 Fujitsu Ltd データ処理システム
US6046676A (en) * 1997-11-14 2000-04-04 International Business Machines Corporation Self powered electronic memory identification tag with dual communication ports
US6061753A (en) * 1998-01-27 2000-05-09 Emc Corporation Apparatus and method of accessing target devices across a bus utilizing initiator identifiers
US6449652B1 (en) * 1999-01-04 2002-09-10 Emc Corporation Method and apparatus for providing secure access to a computer system resource
US6480941B1 (en) * 1999-02-23 2002-11-12 International Business Machines Corporation Secure partitioning of shared memory based multiprocessor system
US6470455B1 (en) * 1999-03-31 2002-10-22 International Business Machines Corporation Data processing system and method for prohibiting access to a SCSI bus
US6490642B1 (en) * 1999-08-12 2002-12-03 Mips Technologies, Inc. Locked read/write on separate address/data bus using write barrier
US7216345B1 (en) * 2000-04-07 2007-05-08 Hall Aluminum Llc Method and apparatus for protectively operating a data/information processing device
JP3407200B2 (ja) * 2000-08-08 2003-05-19 松下電器産業株式会社 アービトレーション装置および方法
US6694457B2 (en) * 2001-03-06 2004-02-17 Hewlett-Packard Development Company, L.P. System and method for monitoring execution of privileged instructions
US6662251B2 (en) * 2001-03-26 2003-12-09 International Business Machines Corporation Selective targeting of transactions to devices on a shared bus
EP1248179A1 (en) * 2001-04-03 2002-10-09 Hewlett-Packard Company Selective activation and deactivation of peripheral devices connected to a USB system
US7055038B2 (en) * 2001-05-07 2006-05-30 Ati International Srl Method and apparatus for maintaining secure and nonsecure data in a shared memory system
DE10126281A1 (de) * 2001-05-29 2002-12-12 Infineon Technologies Ag Programmgesteuerte Einheit
US6745307B2 (en) * 2001-10-31 2004-06-01 Hewlett-Packard Development Company, L.P. Method and system for privilege-level-access to memory within a computer
US7277972B2 (en) * 2002-03-08 2007-10-02 Freescale Semiconductor, Inc. Data processing system with peripheral access protection and method therefor
US6851056B2 (en) * 2002-04-18 2005-02-01 International Business Machines Corporation Control function employing a requesting master id and a data address to qualify data access within an integrated system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100738603B1 (ko) * 2003-07-03 2007-07-11 제너럴 모터즈 코오포레이션 특권 및 비특권 문서 전자 관리 시스템, 방법 및 기록 매체

Also Published As

Publication number Publication date
JP2006523347A (ja) 2006-10-12
EP1604482A4 (en) 2008-01-30
WO2004081707A3 (en) 2005-02-24
US7434264B2 (en) 2008-10-07
EP1604482A2 (en) 2005-12-14
WO2004081707A2 (en) 2004-09-23
CN1759557A (zh) 2006-04-12
TW200417869A (en) 2004-09-16
US20040177266A1 (en) 2004-09-09

Similar Documents

Publication Publication Date Title
US7434264B2 (en) Data processing system with peripheral access protection and method therefor
JP4602403B2 (ja) データ処理システムにおけるエンディアンネス制御方法および装置
US7277972B2 (en) Data processing system with peripheral access protection and method therefor
US7444668B2 (en) Method and apparatus for determining access permission
EP2062145B1 (en) Memory access security management
EP1571559B1 (en) Bus system and access control method
JP5153887B2 (ja) プロセッサから周辺機器へのセキュア動作モードアクセス特権の譲渡のための方法及び装置
US20020199052A1 (en) System and method for controlling bus arbitration during cache memory burst cycles
US20090271861A1 (en) Data processing apparatus and access control method therefor
US9336411B2 (en) System on chip
JP2007109053A (ja) バスアクセス制御装置
WO2019226903A1 (en) System on chip firewall memory architecture
KR20070017537A (ko) 데이터 처리 시스템에서 엔디안니스 제어용 방법 및 장치
EP1984943B1 (en) Selective transaction request processing at an interconnect during a lockout
JPH0337750A (ja) プロセッサ周辺機能装置
JPH01320557A (ja) 共有記憶装置

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application