Method and apparatus for virtualization

US9823868B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9823868-B2
Application numberUS-201715499177-A
CountryUS
Kind codeB2
Filing dateApr 27, 2017
Priority dateApr 28, 2010
Publication dateNov 21, 2017
Grant dateNov 21, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

A virtual system on chip (VSoC) is an implementation of a machine that allows for sharing of underlying physical machine resources between different virtual systems. A method or corresponding apparatus of the present invention relates to a device that includes a plurality of virtual systems on chip and a configuring unit. The configuring unit is arranged to configure resources on the device for the plurality of virtual systems on chip as a function of an identification tag assigned to each virtual system on chip.

First claim

Opening claim text (preview).

What is claimed is: 1. A device comprising: a plurality of virtual systems on chip, each virtual system on chip (VSoC) relating to a subset of a plurality of resources on a single physical chip, the plurality of resources including a memory; and a configuring unit on the single physical chip, the configuring unit arranged to: set an access control element of a plurality of access control elements to control whether a given VSoC of the plurality of virtual systems on chip is enabled to access the given memory, wherein a granularity of memory protection provided is based on a memory size of the memory and a total element number of the plurality of access control elements. 2. The device of claim 1 , wherein the configuring unit is further arranged to: assign a unique identification tag of a plurality of identification tags to each VSoC; assign each memory subset a given identification tag of the plurality of identification tags, the given identification tag assigned to a corresponding VSoC to which the memory subset is assigned; and provide the granularity of memory protection further based on a number of the plurality of identification tags assigned. 3. The device of claim 1 , wherein: the total element number of the plurality of access control elements is static; the programmed memory size of the given memory is variable. 4. The device of claim 2 , wherein the number of the plurality of identification tags assigned is variable. 5. The device of claim 1 , wherein the given memory is a Dynamic Random Access Memory (DRAM) and the DRAM is shared by each VSoC of the plurality of virtual systems on chip. 6. The device of claim 1 , wherein the given memory is a level two cache and the level two cache is shared by each VSoC of the plurality of virtual systems on chip. 7. The device of claim 6 , wherein the configuring unit is further arranged to: assign a unique identification tag of a plurality of identification tags to each VSoC; assign each memory subset a given identification tag of the plurality of identification tags, the given identification tag assigned to a corresponding VSoC to which the memory subset is assigned; and wherein the level two cache is configured to enable or restrict access to at least one other memory by the plurality of virtual systems on chip based on a first identification tag of the plurality of identification tags associated with the access and a second identification tag assigned to the at least one other memory. 8. The device of claim 1 , wherein at least one exclusive partition of the given memory is assigned to each VSoC of the plurality of virtual systems on chip. 9. The device of claim 8 , wherein the configuring unit is further arranged to: assign a unique identification tag of a plurality of identification tags to each VSoC; assign each memory subset a given identification tag of the plurality of identification tags, the given identification tag assigned to a corresponding VSoC to which the memory subset is assigned; and wherein a first number of the at least one exclusive partition assigned is based on a second number of the plurality of identification tags assigned and a corresponding level of quality of service associated with each VSoC of the plurality of virtual systems on chip. 10. The device of claim 1 , wherein each VSoC of the plurality of virtual systems on chip serves as a virtualized execution environment for executing operating systems and embedded applications. 11. A method comprising: setting an access control element of a plurality of access control elements to control whether a given virtual system on chip (VSoC) of a plurality of virtual systems on chip is enabled to access a memory, the plurality of resources including the memory; and wherein a granularity of memory protection is based on a memory size of the memory and a total element number of the plurality of access control elements. 12. The method of claim 11 , further comprising: assigning a unique identification tag of a plurality of identification tags to each VSoC; assigning each memory subset a given identification tag of the plurality of identification tags, the given identification tag assigned to a corresponding VSoC to which the memory subset is assigned; and providing the granularity of memory protection is further based on a number of the plurality of identification tags assigned. 13. The method of claim 11 , wherein: the total element number of the plurality of access control elements is static; the programmed memory size of the given memory is variable. 14. The method of claim 13 , wherein the number of the plurality of identification tags assigned is variable. 15. The method of claim 11 , wherein the given memory is a Dynamic Random Access Memory (DRAM) shared by each VSoC of the plurality of virtual systems on chip. 16. The method of claim 11 , wherein the given memory is a level two cache shared by each VSoC of the plurality of virtual systems on chip. 17. The method of claim 16 , further including: assigning a unique identification tag of a plurality of identification tags to each VSoC; assigning each memory subset a given identification tag of the plurality of identification tags, the given identification tag assigned to a corresponding VSoC to which the memory subset is assigned; and configuring the level two cache to enable or restrict access to at least one other memory by the plurality of virtual systems on chip based on a first identification tag of the plurality of identification tags associated with the access and a second identification tag assigned to the at least one other memory. 18. The method of claim 11 , further comprising assigning at least one exclusive partition of the given memory to each VSoC of the plurality of virtual systems on chip. 19. The method of claim 18 , further including: assigning a unique identification tag of a plurality of identification tags to each VSoC; assigning each memory subset a given identification tag of the plurality of identification tags, the given identification tag assigned to a corresponding VSoC to which the memory subset is assigned; and assigning a first number of the at least one exclusive partition based on a second number of the plurality of identification tags assigned and a corresponding level of quality of service associated with each VSoC of the plurality of virtual systems on chip. 20. The method of claim 11 , further including configuring each VSoC of the plurality of virtual systems on chip to serve as a virtualized execution environment for executing operating systems and embedded applications.

Assignees

Inventors

Classifications

  • Permissions · CPC title

  • at device level, e.g. emulation of a storage device or system · CPC title

  • G06F9/5077Primary

    Logical partitioning of resources; Management or configuration of virtualized resources (specific details on emulation or internal functioning of virtual machines G06F9/455) · CPC title

  • Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines · CPC title

  • G06F3/0622Primary

    in relation to access · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9823868B2 cover?
A virtual system on chip (VSoC) is an implementation of a machine that allows for sharing of underlying physical machine resources between different virtual systems. A method or corresponding apparatus of the present invention relates to a device that includes a plurality of virtual systems on chip and a configuring unit. The configuring unit is arranged to configure resources on the device for…
Who is the assignee on this patent?
Cavium Inc
What technology area does this patent fall under?
Primary CPC classification G06F9/5077. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Nov 21 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 3 related publications on this page (citations in our corpus or others sharing the same primary CPC).