IP Library › Granted Patent US 11,698,995
Granted Patent B2
US 11,698,995 · App. 17/255,876 · Granted Jul 11, 2023

Peripheral access on a secure-aware bus system

Inventors: Ronan Barzic (Trondheim, NO); Berend Dekens (Trondheim, NO); Frank Aune (Trondheim, NO); Anders Nore (Trondheim, NO)
Assignee: Nordic Semiconductor ASA
G06F21/85G06F21/54G06F21/567G06F21/602G06F21/64
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,698,995
App. No.
17/255,876
Granted
Jul 11, 2023
Kind
B2
Abstract

An integrated-circuit device comprises a processor, a peripheral component, a bus system, connected to the processor and to the peripheral component, and configured to carry bus transactions; and hardware filter logic. The bus system is configured to carry security-state signals for distinguishing between secure and non-secure bus transactions. The peripheral component comprises a register interface, accessible over the bus system, and comprising a hardware register and a direct-memory-access (DMA) controller for initiating bus transactions on the bus system. The peripheral component supports a secure-in-and-non-secure-out state in which the hardware filter logic is configured to prevent non-secure bus transactions from accessing the hardware register of the peripheral component, but to allow secure bus transactions to access the peripheral component. The peripheral component is configured to allow an incoming secure bus transaction to access the hardware register and to initiate a bus transaction as non-secure.

Claims (60)

1. An integrated-circuit device comprising:

a processor;

a peripheral component;

a bus system, connected to the processor and to the peripheral component, and configured to carry bus transactions; and

hardware filter logic,

wherein:

the bus system is configured to carry security-state signals for distinguishing between secure bus transactions and non-secure bus transactions;

the peripheral component comprises a register interface, accessible over the bus system, the register interface comprising a hardware register;

the peripheral component comprises a direct-memory-access (DMA) controller for initiating bus transactions on the bus system; and

the peripheral component supports a secure-in-and-non-secure-out state in which:

based at least on the security-state signals, the hardware filter logic is configured to prevent the non-secure bus transactions from accessing the hardware register of the peripheral component, but to allow the secure bus transactions to access the peripheral component;

the peripheral component is configured to allow an incoming secure bus transaction to access the hardware register; and

the peripheral component is configured to initiate bus transaction bus transactions on the bus system only as non-secure bus transactions.

2. The integrated-circuit device of claim 1 , wherein the hardware filter logic is configured to prevent non-secure bus transactions from reaching the peripheral component.

3. The integrated-circuit device of claim 1 , wherein the hardware filter logic is configured to intercept bus transactions at one or more interception points within the bus system, each interception point being positioned within the bus system such that bus transactions from at least two master components pass the interception point, and such that bus transactions for at least two slave components pass the interception point.

4. The integrated-circuit device of claim 3 , wherein the hardware filter logic is configured, for each intercepted bus transaction, to use i) a slave address of the intercepted bus transaction, and ii) a security state of the intercepted bus transaction, to determine whether to allow the intercepted bus transaction, in accordance with a set of filtering rules, and is configured to block intercepted bus transaction that are determined not to be allowed.

5. The integrated-circuit device of claim 4 , wherein the filtering rules determine, for each pairing of master component and slave component, whether secure bus transactions initiated by the master component are allowed to be received by the slave component, and whether non-secure bus transactions initiated by the master component should be received by the slave component.

6. The integrated-circuit device of claim 1 , wherein the peripheral component is switchable between the secure-in-and-non-secure-out state, and a non-secure state in which:

the hardware filter logic is configured to allow non-secure bus transactions to access the hardware register; and

the peripheral component is configured to initiate a bus transaction on the bus system as a non-secure bus transaction.

7. A method of operating an integrated-circuit device, wherein the integrated-circuit device comprises:

a processor;

a peripheral component; and

a bus system, connected to the processor and to the peripheral component, and configured to carry secure bus transactions and non-secure bus transactions,

wherein the bus system is configured to carry security-state signals for distinguishing between the secure bus transactions and the non-secure bus transactions;

wherein the peripheral component comprises a register interface, accessible over the bus system, the register interface comprising a hardware register,

the method comprising the peripheral component being in a secure-in-and-non-secure-out state and, while the peripheral component is in the secure-in-and-non-secure-out state:

preventing, by a hardware filter logic based at least on the security-state signals, the non-secure bus transactions from accessing the hardware register of the peripheral component, but allowing, by the hardware filter logic based at least on the security-state signals, the secure bus transactions to access the peripheral component;

allowing, by the peripheral component, an incoming secure bus transaction to access the hardware register; and

initiating, by the peripheral component, only non-secure bus transactions on the bus system.

8. An integrated-circuit device comprising:

a processor;

a peripheral component, wherein the peripheral component is a DAC (Digital-to-Analog Converter) peripheral, or a PWM (Pulse Width Modulation) peripheral, or a quadrature decoder peripheral, or a cryptographic co-processor, or a GPIO (General-Purpose Input-Output) control peripheral; and

a bus system, connected to the processor and to the peripheral component, and configured to carry bus transactions,

wherein:

the peripheral component comprises a register interface, accessible over the bus system, the register interface comprising a first hardware register and a second hardware register;

the bus system is configured to carry security-state signals for distinguishing between secure bus transactions and non-secure bus transactions;

the peripheral component comprises an input for receiving the security-state signals from the bus system; and

the peripheral component supports a split-security state in which the peripheral component, based at least on the security-state signals, is configured to:

prevent a non-secure bus transaction from accessing the first hardware register;

allow a secure bus transaction to access the first hardware register; and

allow a non-secure bus transaction to access the second hardware register.

9. The integrated-circuit device of claim 8 , wherein the peripheral component is configured to use a security state of an incoming bus transaction, and an address of the incoming bus transaction, to determine whether to allow or prevent the incoming bus transaction from accessing a hardware register of the peripheral component at said address.

10. The integrated-circuit device of claim 8 , wherein, when the peripheral component is in the split-security state, the peripheral component is configured to allow secure bus transactions to access the second hardware register.

11. The integrated-circuit device of claim 8 , wherein the peripheral component is switchable between the split-security state and a secure state, and wherein, when the peripheral component is in the secure state, the device is configured to prevent non-secure bus transactions from reaching the peripheral component.

12. The integrated-circuit device of claim 11 , wherein the integrated-circuit device comprises a system protection unit that provides a register interface for controlling a state of the peripheral component.

13. The integrated-circuit device of claim 11 , wherein the integrated-circuit device comprises an integral direct-memory-access (DMA) controller for initiating bus transactions on the bus system, wherein the DMA controller is configured to output security-state signals onto the bus system, wherein the peripheral component is configured to initiate non-secure bus transactions when the peripheral component is in the split-security state, and wherein the peripheral component is switchable, when in the split-security state, between initiating secure bus transactions and initiating non-secure bus transactions.

14. A method of operating an integrated-circuit device, wherein the integrated-circuit device comprises:

a processor;

a peripheral component, wherein the peripheral component is a DAC (Digital-to-Analog Converter) peripheral, or a PWM (Pulse Width Modulation) peripheral, or a quadrature decoder peripheral, or a cryptographic co-processor, or a GPIO (General-Purpose Input-Output) control peripheral; and

a bus system, connected to the processor and to the peripheral component, and configured to carry secure bus transactions and non-secure bus transactions,

wherein the peripheral component comprises a register interface, accessible over the bus system, the register interface comprising a first hardware register and a second hardware register,

wherein the bus system is configured to carry security-state signals for distinguishing between the secure bus transactions and the non-secure bus transactions;

the peripheral component comprises an input for receiving the security-state signals from the bus system;

the method comprising:

receiving, by the peripheral component, the secure bus transactions and the non-secure bus transactions from the bus system; and

while the peripheral component is in a split-security state, based at least on the security-state signals:

preventing, by the peripheral component, a non-secure bus transaction from accessing the first hardware register;

allowing, by the peripheral component, a secure bus transaction to access the first hardware register; and

allowing, by the peripheral component, a non-secure bus transaction to access the second hardware register.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 7, 2021
From: BARZIC, RONAN; DEKENS, BEREND; AUNE, FRANKE; NORE, ANDERS
To: NORDIC SEMICONDUCTOR ASA
Reel/Frame 054839/0969 →
Priority Claims (1)
GB 1810662 · Jun 28, 2018 · national
Continuity (1)
Related Publication 20210264066A1 · Aug 26, 2021