WO2013031130A1 - Information processing device, access control method for same and integrated circuit - Google Patents
Information processing device, access control method for same and integrated circuit Download PDFInfo
- Publication number
- WO2013031130A1 WO2013031130A1 PCT/JP2012/005211 JP2012005211W WO2013031130A1 WO 2013031130 A1 WO2013031130 A1 WO 2013031130A1 JP 2012005211 W JP2012005211 W JP 2012005211W WO 2013031130 A1 WO2013031130 A1 WO 2013031130A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- attribute
- access
- processor
- switching
- permission
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F12/00—Accessing, addressing or allocating within memory systems or architectures
- G06F12/14—Protection against unauthorised use of memory or access to memory
- G06F12/1458—Protection against unauthorised use of memory or access to memory by checking the subject access rights
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
Definitions
- the present invention relates to an information processing apparatus, and more particularly to a technique for controlling access to a device from a processor and peripheral circuits.
- Such an information processing apparatus includes a management table for managing a memory address area accessible for each process, and an attribute register for storing attribute information indicating a process currently being executed by the processor.
- a management table for managing a memory address area accessible for each process
- an attribute register for storing attribute information indicating a process currently being executed by the processor.
- peripheral circuits In order to reduce the processing load of the processor, a part of the processing is shared with peripheral circuits.
- This peripheral circuit does not store information for identifying the process from which the process to be executed in response to a request from the processor is performed due to restrictions such as storage capacity. Therefore, when the peripheral circuit needs to access the memory device in the course of processing, the peripheral circuit refers to the value of the attribute register and receives a request as processing related to the process currently being executed by the processor. Assuming access to memory devices.
- the process that requests the peripheral circuit to execute the process and the processor that is executed when the peripheral circuit actually accesses the device are executed.
- the process may be different. For example, this is a case where the processor switches processes during processing in the peripheral circuit and the value of the attribute register is rewritten.
- the peripheral circuit leads to the result that the access to the memory device that should be handled as the process of the process before switching is handled as the process of the process after switching. Then, an undesired operation in which access to the address is denied occurs.
- An object of the present invention is to provide an information processing apparatus that suppresses the occurrence.
- an information processing apparatus including an access target device accessed from a processor and a peripheral circuit, and switches and executes a plurality of internal processes having different attributes.
- a processor that generates an access command including an attribute value for identifying the attribute and access content instruction information, and an attribute indicating an attribute of an internal process being executed by the processor
- An attribute storage unit for storing information and an instruction to perform processing including access to the access target device are received from the processor, and when accessing the access target device, the attribute storage unit
- a peripheral circuit that refers to the attribute information and generates an access command including an attribute value and access content instruction information;
- An access that receives an access command generated by each of the processor and the peripheral circuit and performs access suppression control for the access target device according to the correspondence between the attribute indicated by the attribute value of the access command and the information of the access content instruction
- the peripheral circuit causes the access control unit to output an access command that is not output related
- the timing for switching the attribute related to the access control to the memory device is controlled, and the occurrence of an undesired operation when the peripheral circuit accesses the memory device is suppressed. Can do.
- Functional block diagram of information processing apparatus 1 according to Embodiment 1 Data structure example of access command
- Flow chart showing operation of access control processing in access control unit The figure which shows the flow of access from the peripheral circuit 20 of the information processing apparatus 1 to the device 30
- Functional block diagram of the information processing apparatus 2 according to the second embodiment The flowchart which shows the operation
- Embodiment 1 Hereinafter, an information processing apparatus 1 according to an embodiment of the present invention will be described.
- FIG. 1 is a diagram illustrating a configuration of the information processing apparatus 1.
- the information processing apparatus 1 includes a processor 10, a peripheral circuit 20, a device 30, and an access control apparatus 40.
- the information processing apparatus 1 has a function of switching and operating two virtual machines as needed. Different OSs (Operating Systems) operate on the respective virtual machines, and the OS 1 operates on one virtual machine and the other virtual machine. In the above, OS2 operates. In this case, the attribute means information for identifying the virtual machine, that is, information for identifying “OS1” and “OS2”.
- the access control unit prevents each OS process from affecting other OS processes.
- the access range of the device 30 (for example, a memory device) is limited for each OS in which 44 is different, and whether access is permitted is determined. That is, in the access control unit 44, the address range permitted for access by the OS1 process is different from the address range permitted for access by the OS2 process.
- the peripheral circuit 20 performs the processing requested by the processor 10 in order to reduce the processing load on the processor 10.
- the peripheral circuit 20 is a circuit that performs general-purpose data processing. Whether the request received from the processor 10 is a request for processing executed by the OS 1 or a request for processing executed by the OS 2 due to restrictions on storage capacity or the like. Do not keep the information inside. For this reason, the access control device 40 includes an attribute storage unit 42, stores information for identifying whether the processor is operating in OS1 or OS2, and the peripheral circuit 20 is connected to the device 30 (for example, a memory device). When access is required, the information stored in the attribute storage unit 42 is referred to, and an access command including the attribute and the access destination address (for example, a Read command, a Write command, etc. for the access destination address) is generated. The device 30 is accessed as a process executed with the attribute indicated by the attribute storage unit 42.
- the peripheral circuit 20 has not completed access to the device 30 generated in the process of executing the processing requested by the processor 10 while operating on the OS1.
- the peripheral circuit 20 when the processor 10 rewrites the attribute value in the attribute storage unit 42 from OS1 to OS2, the peripheral circuit 20 generates an access command including OS2 that is the attribute value after switching, and accesses the device 30. Will do. For this reason, the access control unit 44 may be denied access by the access command generated by the peripheral circuit 20 after the attribute value is switched.
- the processor 10 stops a request for a new process to the peripheral circuit 20 at the time of attribute switching, and sends a request for permission of attribute switching to the attribute switching control unit 41. Do.
- the process in which the processor 10 switches from the OS1 process to the OS2 process and rewrites the attribute value in the attribute storage unit 42 is referred to as “attribute switching”.
- the attribute switching control unit 41 controls the peripheral circuit 20, causes the access control unit 44 to output an access command related to the processing that the peripheral circuit 20 has already received from the processor 10, and if there is no access command output from the peripheral circuit 20.
- the processor 10 is notified of permission of attribute switching.
- the processor 10 switches the attribute after obtaining permission to switch the attribute.
- the attribute switching control unit 41 permits the attribute switching by the processor 10 in accordance with the output status of the access command output from the peripheral circuit 20, so that the access from the peripheral circuit 20 to the device 30 is appropriate. It is possible to prevent the processing from being stopped.
- processor 10 reads and executes a program stored in the memory.
- the processor 10 has a function of generating an access command for the device 30 as necessary in the course of program execution, and outputting the generated access command to access the device 30.
- the access command will be described later.
- the processor 10 has a function of making a request for processing execution to the peripheral circuit 20 as necessary in the course of program execution.
- the processor 10 has a function of executing processing by switching between OS1 and OS2.
- the processor 10 stops the request for the peripheral circuit 20 to execute a new process and the access to the device 30, makes an attribute switching permission request to the attribute switching control unit 41,
- the attribute value of the attribute storage unit 42 is rewritten.
- the peripheral circuit 20 is a circuit that receives a processing execution request from the processor 10 and executes the processing.
- the peripheral circuit 20 is, for example, a DSP (Digital Signal Processor), a DMA (Direct Memory Access) controller, an encryption / decryption circuit, or the like.
- the peripheral circuit 20 When the peripheral circuit 20 needs to access the device 30 in the process execution process, the peripheral circuit 20 refers to the attribute value in the attribute storage unit 42, generates an access command including the attribute value, and outputs the access command, thereby outputting the access command. It has a function to access.
- the peripheral circuit 20 includes a buffer 300.
- the buffer 300 has a function of storing an address of an access destination for generating an access command generated in the process in which the peripheral circuit 20 receives a request from the processor 10.
- processing waiting data data at the address stored in the buffer 300 in a state where the information indicating the attribute is not stored and is not completed as an access command
- processing waiting data data at the address stored in the buffer 300 in a state where the information indicating the attribute is not stored and is not completed as an access command
- processing wait access command The access command before being output to is called a “processing wait access command”.
- the peripheral circuit 20 has a function of outputting the number of processing-waiting data stored in the buffer 300 to the state acquisition unit 43.
- the device 30 is a device accessed from the processor 10 and the peripheral circuit 20 by an access command.
- the device 30 is, for example, a memory device (for example, a DRAM (Dynamic Random Access Memory)).
- the access command is received by an access control unit 44 described later, and the access control unit 44 In order to protect against unauthorized memory access, whether access to the device 30 is permitted or not is determined. Only when access is permitted by the access control unit 44, the processor 10 and the peripheral circuit 20 can read and write to the device 30.
- FIG. 2 shows a configuration example of a data portion related to access permission determination in the access command access control unit 44.
- the access command is further added with information for distinguishing a command such as a Read instruction or a Write instruction for the device 30, information indicating data to be written in the case of the Write instruction, and the like.
- the access command includes an attribute 101 and an address 102.
- the attribute 101 is an item for storing information indicating an attribute being executed by the information processing apparatus, and the peripheral circuit 20 sets an attribute value in the attribute 101 with reference to the attribute value in the attribute storage unit 42.
- the address 102 is an item for storing an access destination address for the device 30.
- the access control device 40 includes an attribute switching control unit 41, an attribute storage unit 42, a state acquisition unit 43, and an access control unit 44.
- the access control device 40 is an integrated circuit (for example, LSI (Large Scale Integration)).
- the functions of the attribute switching control unit 41, the state acquisition unit 43, and the access control unit 44 are realized by executing a program stored in the integrated circuit, which is the access control device 40, by a processor inside the integrated circuit.
- the attribute switching control unit 41 receives an attribute switching permission request from the processor 10, and gives an access command to the peripheral circuit 20 to access the device 30 generated during the process currently being executed in the peripheral circuit 20. And has a function of outputting an access command not yet output to the access control unit 44.
- the attribute switching control unit 41 has a function of determining whether or not to allow attribute switching based on the information acquired by the state acquisition unit 43 and outputting attribute switching permission to the processor 10 when the determination is positive. Have.
- the attribute storage unit 42 is a storage element (for example, an attribute storage register) that stores an attribute value that is referred to when the peripheral circuit 20 generates an access command for accessing the device 30.
- the attribute value in the attribute storage unit 42 is information for identifying an attribute, and is changed by the processor 10 when the processor 10 switches processing.
- the attribute value is an OS identifier for specifying the OS.
- the state acquisition unit 43 has a function of acquiring the number of data waiting for processing stored in the buffer 300 of the peripheral circuit 20 from the peripheral circuit 20.
- the access control unit 44 receives the access command output from the processor 10 and the peripheral circuit 20, refers to the access control rule 200 stored therein, and based on the attribute 101 included in the access command and the address 102, the device 30 has a function of determining whether access to the address 30 is permitted or not, and performing control for suppressing access to the device 30.
- FIG. 3 is a diagram showing a configuration and example contents of the access control rule 200.
- the access control rule 200 is a table in which an attribute 201, a start address 202, and an end address 203 are recorded in association with each other.
- the attribute 201 is an item for storing information for identifying the attribute of the information processing apparatus 1.
- the start address 202 is an item for storing the start address of the address range of the device 30 that is permitted to be accessed.
- the end address 203 is an item for storing the end address of the address range of the device 30 that is permitted to access. Access to addresses outside the range indicated by the start address 202 and the end address 203 is denied.
- the processor 10 of the information processing apparatus 1 switches between the process A in the OS 1 and the process B in the OS 2, executes the process A in the OS 1, and performs device A to the peripheral circuit 20 during the execution of the process A.
- a request is made to execute process A ′ that requires access to 30.
- the peripheral circuit 20 that has received the request executes the process A ′.
- the peripheral circuit 20 issues sequential access commands to the access control unit 44 during the process A ′.
- the processing result in the processing A ′ in the peripheral circuit 20 is used in the processor 10 as follows, for example.
- the peripheral circuit 20 writes the processing result in the processing A ′ into a specific address area of the device 30, and the processor 10 reads out the data written in the specific address area and uses it in the processing A.
- the processor 10 When the information processing apparatus 1 receives an instruction to switch to the process B executed by the OS 2 from the user during the execution of such a process, the processor 10 interrupts the execution of the process A and executes the process B. Process to switch to.
- the processor 10 When switching to the execution of the process B, the processor 10 first makes an attribute switching permission request to the attribute switching control unit 41. When the attribute switching is permitted from the attribute switching control unit 41, the processor 10 switches to the execution of the process B, and rewrites the attribute in the attribute storage unit 42 from OS1 to OS2 information.
- FIG. 4 is a flowchart showing an operation of attribute switching control processing by the attribute switching control unit 41.
- the attribute switching control unit 41 receives an attribute switching permission request from the processor 10 (step S10). Note that, after making an attribute switching permission request to the attribute switching control unit 41, the processor 10 interrupts the processing and enters a standby state until the attribute switching control unit 41 permits the attribute switching.
- the attribute switching control unit 41 generates an access command for the peripheral circuit 20 from the processing-waiting data related to the processing that has already been executed in response to the request from the processor 10, and outputs the access command to the access control unit 44. That is, the peripheral circuit 20 is requested to complete the output of the processing waiting access command (step S11).
- the peripheral circuit 20 sequentially outputs processing-waiting access commands according to the processing capabilities of the access control unit 44 and the device 30.
- the state acquisition unit 43 acquires the number of data waiting for processing in the peripheral circuit 20 (step S12). Specifically, for example, when there is an instruction to output an access command from the attribute switching control unit 41, the peripheral circuit 20 stores processing waiting data in the buffer 300, and the state acquisition unit 43 waits for processing in the buffer 300. Count the number of data.
- the attribute switching control unit 41 confirms the number of processing-waiting data acquired by the state acquisition unit 43 (step S13). If the number of data waiting for processing is not 0 (step S13: NO), the processing from step S12 is repeated.
- step S13 when the number of data waiting to be processed is 0 (step S13: YES), the attribute switching control unit 41 outputs information for permitting attribute switching to the processor 10 (step S14).
- the processor 10 that has received the information that permits the attribute switching from the attribute switching control unit 41 switches the process and rewrites the attribute value in the attribute storage unit 42.
- FIG. 5 is a flowchart showing the operation of access suppression control processing by the access control unit 44.
- the access control unit 44 receives the access command 100 output from the processor 10 and the peripheral circuit 20 (step S20).
- the access control unit 44 extracts the attribute value described in the attribute 101 included in the access command 100 (step S21), and similarly extracts the value of the address described in the address 102 (step S22). ).
- the access control unit 44 refers to the access control rule 200 stored therein, and the attribute whose address value extracted in step S22 is within the address range indicated by the start address 202 and the end address 203 of the access control rule.
- a value is acquired (step S23). For example, if the address extracted from the access command 100 is 0x0000A000, this address is in the address range of 0x00000000 to 0x00FFFFFF, so the access control unit 44 uses the corresponding attribute according to the access control rule shown in FIG. The attribute value “OS1” is acquired.
- the access control unit 44 compares the attribute value acquired from the access command 100 in step S21 with the attribute value acquired in step S23 (step S24). When the attribute values match (step S24: YES), the access control unit 44 sends the address of the device 30 indicated by the address value acquired in step S22 to the processor 10 and the peripheral circuit 20 that output the access command. Is permitted (step S25).
- step S24 if the attribute values do not match (step S24: NO), the access control unit 44 provides the processor 10 and the peripheral circuit 20 that output the access command to the device 30 indicated by the address value acquired in step S22. Access to the address is denied (step S26).
- FIG. 6 is a diagram illustrating an example of a flow of access from the peripheral circuit 20 to the device 30 in the information processing apparatus 1.
- the peripheral circuit 20 receives a processing request from the processor 10 and accesses the device 30 in the course of the processing.
- the access destination address of the device 30 is sent to the buffer 300, and the access control unit 44 and the device 30 are accessed.
- the access commands are sequentially generated based on the addresses stored in the buffer 300 in accordance with the processing capability of the received data and sent to the access control unit 44.
- a series of access destination addresses 1000 are accumulated in the buffer in the course of processing requested by the processor 10 whose attribute is operating in OS1.
- Processor 10 makes an attribute switching permission request to attribute switching control unit 41 at time T1.
- the three output commands 1001 to 1003 are output to the access control unit 44, and the remaining two addresses remain stored in the buffer 300.
- Access commands 1004 to 1005 corresponding to this address are not output to the access control unit 44.
- the attribute switching control unit 41 does not permit the attribute switching to the processor 10, so the attribute maintains the state of OS1.
- the attribute switching control unit 41 permits the processor 10 to switch attributes. As described above, the attribute switching is performed not at time T1 but at time T2 when the access to be processed in the case of the attribute OS1 is completed.
- FIG. 7 is a diagram illustrating an example of a flow of access from the peripheral circuit 20 to the device 30 when the attribute switching control unit 41 does not perform attribute switching control.
- the access destination address for the device 30 is temporarily stored in the buffer 300, and the peripheral circuit 20 waits for the processing stored in the buffer 300. Access commands are sequentially generated from the data, and the generated access commands are output to the control unit 44.
- the peripheral circuit 20 Assuming that the processor 10 switches the attribute from OS1 to OS2 at time T1 ′, in the example of FIG. 7, the peripheral circuit 20 generates access commands 1001 to 1003 by time T1 ′ and sends them to the access control unit 44. Output is complete. However, the two processing-waiting data stored in the buffer 300 (data indicating addresses 0x000001100 and 0x000001150 in the figure) are not generated as access commands by the time T1 'but are accumulated in the buffer 300. The peripheral circuit 20 generates an access command after the time T ⁇ b> 1 ′ and outputs it to the access control unit 44 for the two processing-waiting data. That is, access commands 1004b and 1005b in which “OS2” is written as attribute values in the attribute 101 of the access command are generated and output.
- the access control apparatus that has received the access command 1004b refers to the access control rule 200 and, based on the address “0x000001100” included in the access command 1004b, as an attribute value of an attribute permitted to access the address “0x000001100” Obtain “OS1”. Since the acquired attribute value “OS1” is different from the attribute value “OS2” of the attribute included in the access command 1004b, access to the address “0x000001100” is denied. Similarly, the access command 1005b is also denied access to the address specified by the address “0x0001150”.
- the peripheral circuit 20 executes the process before the processor 10 outputs the access command for accessing the device 30 that is generated in the course of the processing requested by the processor 10 while the processor 10 is executing OS1.
- OS operating OS
- OS2 access to an address to which access should be permitted is denied. That is, the peripheral circuit 20 cannot properly access the device 30.
- the attribute switching control unit 41 does not permit the processor 10 to switch attributes unless there is no processing waiting data in the peripheral circuit 20. Before switching the attribute, the output of the access command from the peripheral circuit 20 to the device 30 related to the process before the switching is completed, and inappropriate access from the peripheral circuit 20 to the device 30 can be suppressed.
- Second Embodiment> ⁇ 2-1. Overview>
- the processor 10 when switching the attribute from the OS 1 to the OS 2, the processor 10 stops the process execution in the OS 1 to quickly switch the attribute, and sends the attribute to the attribute switching control unit 41. Make a switch permission request.
- the processor 10 cannot be used until the attribute switching permission is obtained after the attribute switching permission request is made. That is, if the time period from when the attribute switching permission request is made until the attribute switching permission is obtained (hereinafter referred to as “waiting time”) is long, the utilization efficiency of the processor 10 is degraded.
- the switching permission unit 45 permits output to the processor 10 when the number of data waiting for processing in the peripheral circuit 20 is equal to or less than a predetermined number.
- the processor 10b makes the attribute switching permission request after the number of data waiting to be processed becomes equal to or less than the predetermined number, the time from the attribute switching permission request to the attribute switching can be shortened. Even if the processor 10b requests output permission, the processor 10b continues to perform the processing in the OS 1 before switching until the attribute switching request is made. Therefore, it is possible to suppress a decrease in utilization efficiency of the processor 10b.
- FIG. 8 is a diagram illustrating a configuration of the information processing apparatus 2.
- the information processing device 2 has the same basic configuration as the information processing device 1, but differs from the information processing device 1 in that the access control device further includes a switching permission unit 45.
- the access control device provided with the switching permission unit 45 in the access control device 40 is referred to as an access control device 40b.
- a processor 10b in which the function of the processor 10 is expanded is provided.
- the processor 10 b has a function of outputting an output permission request to the switching permission unit 45 and receiving an output permission from the switching permission unit 45 before making an attribute switching permission request to the attribute switching control unit 41.
- Peripheral circuit 20 and device 30 have the same configuration as in the first embodiment.
- the access control device 40b is an integrated circuit.
- the configuration other than the switching permission unit 45 of the access control device 40b is basically the same as that of the access control device 40. However, instead of the state acquisition unit 43, a state acquisition unit 43b in which the function of the state acquisition unit 43 is expanded is provided.
- the state acquisition unit 43b has a function of outputting the number of processing-waiting data received from the peripheral circuit 20 to the switching permission unit 45.
- the switching permission unit 45 receives an output permission request from the processor 10, determines whether or not to permit output based on the number of processing-waiting data obtained from the state acquisition unit 43 b, and sends the determination result to the processor 10. Has a function to reply.
- the switching permission unit 45 has a function of preliminarily storing a threshold value used for determination of permission / prohibition of output permission in comparison with the number of processing-waiting data acquired from the state acquisition unit 43b.
- the threshold value is determined based on the processing capability of the peripheral circuit 20, the access control unit 44, and the device 30, after the processor 10 b obtains output permission from the switching permission unit 45, and sends an attribute switching permission request to the attribute switching control unit 41.
- This is determined based on the maximum number N of processing-waiting access commands that can be processed by the access control unit 44 during the shortest time required to complete the processing to be performed.
- the threshold value is set to the same level as N
- the processor 10b obtains output permission from the switching permission unit 45 and makes an attribute switching permission request to the attribute switching control unit 41
- the processing waiting access command is The processor 10b can switch attributes in a short standby time.
- the functions of the state acquisition unit 43b and the switching permission unit 45 are realized by a processor in the integrated circuit executing a program stored in the integrated circuit that is the access control device 40b.
- the processor 10b makes a request for output permission to the switching permission unit 45, and the switching permission unit 45 transmits to the processor 10b. Then, a switching permission process for determining whether or not to permit output is performed.
- the processor 10b After obtaining the output permission from the switching permission unit 45, the processor 10b performs processing from START (A) shown in FIG.
- FIG. 9 is a flowchart showing the operation of the switching permission process in the switching permission unit 45.
- the switching permission unit 45 receives an output permission request from the processor 10 (step S30).
- the switching permission unit 45 acquires the number of data waiting for processing of the peripheral circuit 20 from the state acquisition unit 43b (step S31).
- a specific acquisition method is the same as the method in step S13 of FIG.
- the switching permission unit 45 compares the number of processing-waiting data acquired from the state acquisition unit 43b with a threshold value stored in advance in an internal memory (step S32). If the number of data waiting for processing is larger than the threshold (step S32: NO), the processing is repeated from step S31. On the other hand, when the number of data waiting for processing is equal to or less than the threshold (step S32: YES), the processor 10b is permitted to output (step S33).
- the processor 10b continues the processing in the OS 1 even when an output permission request is sent to the switching permission unit 45, and receives the output permission from the switching permission unit 45 as an interrupt to the processor 10b.
- the processor 10b continues the processing of START (A) in FIG.
- the switching permission unit 45 switches the attribute according to the number of data waiting for processing in the peripheral circuit 20.
- the timing of making the request can be adjusted.
- the processor 10b performs an attribute switching process when the number of data waiting to be processed is equal to or less than a predetermined number, thereby making an attribute switching permission request to the attribute switching control unit 41 and then performing attribute switching. Since the time until permission is allowed can be shortened, processing can be performed efficiently.
- the processing mode is either the first mode in which output permission is requested from the switching permission unit 45b or the second mode in which output permission is not requested from the switching permission unit 45b.
- the information processing device 3 provided with the mode control unit 46 for determining whether or not the access control device 40c is provided will be described. Note that the process for determining which of the first and second processing modes is called “mode determination process”.
- the example of the information processing apparatus 2 that suppresses the decrease in the utilization efficiency of the processor 10b by requesting attribute switching at the timing when the number of commands waiting to be processed becomes a predetermined number or less is shown.
- the peripheral circuit 20 is not a process in which a large amount of processing-waiting data is not generated, for example, a process that is performed while frequently referring to the data of the device 30, but the data of the device 30 is read at the beginning of the process.
- a dedicated circuit that performs processing performed inside 20 there is little need to request output permission to the switching permission unit 45b. This is because in such a case, it is unlikely that the processing state in the peripheral circuit 20 when the processor 10b attempts to switch the attribute is a state in which the number of commands waiting for processing exceeds a predetermined number. .
- attribute switching processing is performed in the case where an attribute switching permission request is made to the attribute switching control unit 41 without making an output permission request to the switching permission unit 45, so that an output permission request is not made to the switching permission unit 45. This is because it is considered that there are many cases where this can be performed smoothly.
- the information processing device 3 allows the user to set in advance in the mode storage unit 47 whether the processing mode is the first mode or the second mode according to the processing to be executed by the information processing device 3, and the processor
- the mode determination unit 46 determines which processing mode is present based on the setting content of the mode storage unit 47. By doing in this way, it is possible to perform the processing for the attribute switching request in an appropriate processing mode according to the processing executed by the processor. Further, when operating in the second mode, the access control device 40c can stop the function of the switching permission unit 45b and reduce power consumption.
- FIG. 10 is a diagram illustrating a configuration of the information processing apparatus 3.
- the information processing device 3 has basically the same configuration as the information processing device 2, but differs from the information processing device 2 in that the access control device further includes a mode determination unit 46 and a mode storage unit 47.
- the access control device obtained by adding the mode determination unit 46 and the mode storage unit 47 to the access control device 40b is defined as an access control device 40c.
- processor 10b instead of the processor 10b, a processor 10c having an expanded function of the processor 10b is provided.
- the processor 10c Before making the attribute switching permission request to the attribute switching control unit 41, the processor 10c makes a request for output permission to the mode determination unit 46 instead of the switching permission unit 45, and in the case of the first mode, the switching permission unit. In the case of the second mode, a function of receiving an output permission from the mode determination unit 46 via the mode determination unit 46 from 45b is provided.
- the peripheral circuit 20 and the device 30 have the same configuration as in the second embodiment.
- the access control device 40c includes a mode determination unit 46 and a mode storage unit 47 in addition to the configuration of the access control device 40b.
- the access control device 40c is an integrated circuit.
- the configuration other than the mode determination unit 46 and the mode storage unit 47 is basically the same as that of the access control device 40b.
- a switching permission unit 45b obtained by expanding the function of the switching permission unit 45 is provided.
- the switching permission unit 45b has a function of receiving an output permission request from the processor 10c when the mode determination unit 46 determines the first mode.
- the mode determination unit 46 determines whether the processing mode is the first mode or the second mode based on information stored in a mode storage unit 47 described later. A function to determine is provided. When it is determined that the mode is the first mode, the output permission request received from the processor 10c is output to the switching permission unit 45b. When it is determined that the mode is the second mode, the processor 10c is permitted to output the function. Is provided.
- the function of the mode determination unit 46 is realized by a processor stored in the integrated circuit serving as the access control device 40c being executed by a processor inside the integrated circuit.
- the mode storage unit 47 is a non-volatile memory, and when the processor 10c switches from the process executed by the OS1 to the process executed by the OS2, the first mode in which an output permission request is made to the switching permission unit 45b, and the output A function of storing mode information indicating which processing mode is in the second mode in which no permission request is made to the switching permission unit 45b is provided.
- the mode information is set by inputting a setting command using, for example, an input device such as a keyboard provided in the information processing apparatus before the user causes the information processing apparatus 3 to execute processing.
- the information indicating in which processing mode the operation is specifically, for example, is 1-bit information. In the case of “0”, the first mode is selected. In the case of “1”, the second mode is selected. To express.
- the determination unit 46 determines whether the processing mode of the access control device 40 c is the first mode or the second mode. Judgment is made.
- the processing mode is the first mode
- the access control device 40c performs the same processing as that described in the second embodiment, and in the second mode, performs the same processing as that described in the first embodiment. .
- FIG. 11 is a flowchart showing the operation of the mode determination process in the access control device 40c.
- the mode determination unit 46 receives an output permission request from the processor 10c (step S40).
- the mode determination unit 46 reads the value of information indicating the processing mode stored in the mode storage unit (step S41).
- the mode determination unit 46 determines whether the mode is the first mode or the second mode (step S42). Specifically, if the read value is “0”, the first mode is determined, and if not, the second mode is determined.
- step S42 determines whether the mode is not the first mode (step S42: NO)
- the mode determination unit 46 permits the output to the processor 10c, and the processor 10c performs the processing of START (A) in FIG. Do.
- step S42 determines whether the first mode is determined in step S42 (step S42: YES). If the first mode is determined in step S42 (step S42: YES), the mode determination unit 46 outputs an output permission request to the switching permission unit 45b (step S43).
- the switching permission unit 45b acquires the number of data waiting for processing of the peripheral circuit 20 from the state acquisition unit 43b (step S44).
- a specific acquisition method is the same as the method in step S13 of FIG.
- the switching permission unit 45b compares the number of processing-waiting data acquired from the state acquisition unit 43b with a threshold value stored in advance in an internal memory (step S45). If the number of data waiting for processing is larger than the threshold (step S45: NO), the processing is repeated from step S44. On the other hand, when the number of data waiting to be processed is equal to or smaller than the threshold (step S45: YES), permission information for outputting an attribute switching permission request to the attribute switching control unit 41 is output to the processor 10c (step S46).
- the information processing apparatus 3 is in the first mode in which the output permission request is made to the switching permission unit 45b before the processor 10c switches the attribute, or the attribute is not requested.
- the mode determination unit determines whether the second mode in which an attribute switching permission request is made to the switching control unit 41. For this reason, for example, when processing that does not generate a large amount of processing-waiting data is performed, the processing in the switching permission unit 45b can be omitted by setting the second mode in advance. Further, when performing processing that generates a lot of processing-waiting data, the standby time in the attribute switching process of the processor 10c can be shortened by setting the first mode. ⁇ 4.
- the illustrated information processing apparatus can be modified as follows, and the present invention is limited to the information processing apparatus as described in the above embodiment.
- the processor 10 executes processing by switching between two OSs, and the information indicating the attribute is information for identifying the OS.
- the attribute indicating the processing of the processor 10 may not be information for identifying the OS. Any information may be used as long as it can identify the attribute when the access area to the device 30 is restricted for each of the plurality of attributes.
- the switching permission unit 45 permits the attribute switching permission request to be sent to the attribute switching control unit until the number of data waiting to be processed becomes a predetermined number or less. However, after a certain period of time has elapsed since the processor 10b made a request for permission to output to the switching permission unit 45, it may be permitted even if the number of data waiting for processing does not fall below a predetermined number. .
- the switching permission unit 45 in this case has a timer inside, and this timer measures an elapsed time after receiving an output permission request from the processor 10.
- the attribute switching permission request is changed to the attribute switching. This is done for the control unit.
- the processor 10b requests output permission in order to switch from the process executed by the OS 1 to the process executed by the OS 2, it is required that the attribute can be quickly switched.
- the processor 10b in the state in which the processing in OS1 is being executed, the number of data waiting for processing in the peripheral circuit 20 does not become a predetermined number or less, so the processor 10b can obtain the output permission. Therefore, there is a possibility that the attribute switching permission request cannot be made to the attribute switching control unit 41 quickly.
- the number of data waiting to be processed in the peripheral circuit 20 does not become a predetermined number or less after a predetermined time has elapsed since the processor 10b made a request for output permission to the switching permission unit 45.
- the processor 10b can make an attribute switching permission request to the attribute switching control unit 41 by permitting output to the processor 10b.
- FIG. 12 shows a flowchart of processing in which the switching permission unit 45 performs output permission to the processor 10b after a predetermined time has elapsed.
- step S50, step S51, and step S53 in the figure are the same as those in step S30, step S31, and step S33 in FIG.
- the switching permission unit 45 performs the process of step S53 when the number of data waiting to be processed is equal to or less than the predetermined number (step S52: YES).
- step S52 when the number of data waiting to be processed is not less than or equal to the predetermined number (step S52: NO), the switching permission unit 45 compares the elapsed time with a predetermined time, and elapses over a predetermined time. It is determined whether or not (step S54). If NO in step S54, the processing from step S51 is repeated.
- step S54 the switching permission unit 45 permits the processor 10 to make an attribute switching permission request to the attribute switching control unit 41 (step S53).
- the processor 10b can obtain the output permission from the switching permission unit 45b after a predetermined time has elapsed since the request for permission to output even when the data waiting for processing does not become a predetermined number or less. Therefore, an attribute switching permission request can be made to the attribute switching control unit 41.
- the number of data waiting to be processed may be permitted even if it does not become a predetermined number or less.
- the switching permission unit 45b in this case has a timer therein, and the elapsed time since receiving a permission request to the attribute switching control unit 41 from the processor 10 for the attribute switching permission request. Measure time.
- FIG. 13 shows a flowchart of processing for permitting output to the processor 10c after a predetermined time has elapsed when the operation state of the information processing apparatus 3 is in the first mode.
- steps S60 to S63 and steps S64 to S66 in FIG. 11 are the same as the processes in steps S40 to S43 and steps S44 to S46 in FIG.
- step S65 the switching permission unit 45b compares the elapsed time with a predetermined time, and determines whether or not a predetermined time or more has elapsed (step S67). If NO in step S67, the processing from step S64 is repeated.
- step S67 the switching permission unit 45b performs the process of step S66.
- the processor 10c does not wait for a predetermined number of processing waits until the output of the output is requested for a certain period of time. Since the output permission can be obtained from the switching permission unit 45b after the lapse, the attribute switching permission request can be made to the attribute switching control unit 41. (3) In the information processing apparatuses 1 to 3 of the embodiment, one peripheral circuit has been described, but there may be a plurality of peripheral circuits.
- the state acquisition unit acquires the number of data waiting for processing in all the peripheral circuits, and the attribute switching control unit When the processing waiting data of all the peripheral circuits becomes 0, the processor may be allowed to switch the attribute.
- the number of processing waiting data acquired by the switching permission unit in the second and third embodiments is the sum of the processing waiting data in all the peripheral circuits, and this sum is equal to or less than a predetermined number. In such a case, output permission may be performed.
- the attribute switching control unit 41 that has received the attribute switching permission request from the processor outputs all the access commands generated from the processing waiting data stored in the buffer 300 of the peripheral circuit 20. The attribute switching is permitted when the processing-waiting data becomes 0, but it is not limited to outputting all access commands.
- the attribute switching control unit 41 causes the peripheral circuit 20 to stop processing and stops the output of the access command. May be permitted.
- the peripheral circuit 20 outputs to the processor 10 information on how far the processing-waiting data stored in the buffer 300 has been processed, and the processing interrupted when the processor 10 switches to processing executed by the OS 1 again. May be resumed from the continuation.
- the attribute switching control unit 41 permits the attribute switching to the processor, the processor switches the process, and updates the attribute value in the attribute storage unit 42.
- the attribute switching procedure is not limited to this.
- the attribute switching control unit 41 updates the attribute value in the attribute storage unit 42 and notifies the processor that the update has been completed, it is only necessary that the attribute can be switched when there is no processing waiting data.
- the processor may switch processing.
- the state acquisition unit 43 acquires the number of data waiting for processing from the peripheral circuit 20, but the state acquisition unit 43 acquires only the number of access commands. Absent. Since it is only necessary to acquire that there is no processing waiting data, for example, information regarding whether or not there is processing waiting data may be obtained.
- the peripheral circuit 20 outputs information indicating that there is no processing waiting data to the state acquisition unit 43, and when the state acquisition unit 43 receives information indicating that there is no processing waiting data, the peripheral circuit 20 sends an attribute to the processor 10. Allow switching.
- the buffer circuit 300 may not be provided in the peripheral circuit 20.
- the peripheral circuit 20 may output information indicating that there is no processing waiting data to the state acquisition unit 43 when the processing being executed is completed.
- a control program for causing the access control apparatus to execute each process described in the embodiment is recorded on a recording medium. Or can be distributed and distributed via various communication channels.
- a recording medium includes an IC card, a hard disk, an optical disk, a flexible disk, a ROM, a flash memory, and the like.
- the distributed and distributed control program is used by being stored in a memory or the like that can be read by a processor different from the processors 10, 10b, and 10c in the device, and the access control device executes the control program.
- Each function shown in the embodiment is realized.
- All or some of the constituent elements of the attribute switching control unit, the state acquisition unit, the access control unit, and the switching permission unit of the access control device described in the embodiment are realized by an integrated circuit of one chip or a plurality of chips. May be.
- some or all of the functions of these components may be realized by a computer program, or in any other form. (9) You may combine said embodiment and said modification suitably suitably. ⁇ 4.
- An information processing apparatus is an information processing apparatus including an access target device accessed from a processor and a peripheral circuit, and executes a plurality of internal processes with different attributes by switching between the access processing devices.
- a processor When accessing a target device, a processor that generates an access command including an attribute value for identifying the attribute and access content instruction information, and attribute information indicating an attribute of an internal process being executed by the processor
- An attribute storage unit for storing and an instruction to perform processing including access to the access target device from the processor, and when accessing the access target device, the attribute of the attribute storage unit
- a peripheral circuit that references the information and generates an access command including an attribute value and access content instruction information;
- An access control unit that receives an access command generated by each peripheral circuit and performs access suppression control on the access target device according to a correspondence relationship between the attribute indicated by the attribute value of the access command and the access content instruction information
- the peripheral circuit When the attribute switching permission request from the processor is received, the peripheral circuit is caused to output an access command that is not output related to the processing received from the processor to the access control unit, and the output of the access command is
- An attribute switching control unit that permits the processor to switch attributes when the processing is completed, and when the processor switches internal processing, the processor makes
- the processor when switching the attribute, the processor makes an attribute switching permission request to the attribute switching control unit, and the attribute switching control unit outputs an access command to access the device with the attribute before switching from the peripheral circuit. Until the process is completed, the processor is not allowed to switch attributes. Then, the processor switches the attribute after receiving the attribute switching permission.
- the attribute switching control unit includes a state acquisition unit that repeatedly acquires the number of processing-waiting access commands that are not output from the peripheral circuit to the access control unit, and the process acquired by the state acquisition unit When the number of waiting access commands is 0, it may be determined that the output of the access commands is completed.
- the status acquisition unit repeatedly acquires the number of processing-waiting data that has not been output to the access control unit, and when the number of access commands becomes 0, the attribute switching control unit outputs the access command. Judge that completed.
- the processor can switch the attribute when there is no access command output from the peripheral circuit, and can suppress undesired access when accessing the access target device from the peripheral circuit. .
- a request for permission to make the attribute switching permission request to the attribute switching control unit is received from the processor, and the number of processing waiting access commands is equal to or less than a predetermined number.
- a switching permission unit that allows the processor to perform the attribute switching permission request to the attribute switching control unit, and the processor sends the attribute switching permission request to the attribute switching control unit. In the case where a request for permission to be performed is sent to the switching permission unit, when the permission to perform the attribute switching permission request is obtained from the switching permission unit, the attribute switching permission request is sent to the attribute switching control. It may be performed on the part.
- the processor before making an attribute switching permission request to the attribute switching control unit, requests the switching permission unit to make an attribute switching permission request to the attribute switching control unit.
- the switching permission unit permits the processor to make an attribute switching permission request to the attribute switching control unit when the number of data to be processed is equal to or less than a predetermined number.
- the processor can make an attribute switching permission request to the attribute switching control unit after the number of data waiting to be processed becomes equal to or less than a predetermined number, so that the attribute switching control unit obtains permission for attribute switching.
- the waiting time can be shortened, and a decrease in processing efficiency can be suppressed.
- the switching permission unit counts the number of access commands waiting for processing. Even if the value does not fall below the predetermined number, the processor may be permitted to make the attribute switching permission request to the attribute switching control unit.
- the switching permission unit even if the number of data waiting to be processed does not become the predetermined number or less after a predetermined time has elapsed since the request for permission to perform the attribute switching permission request has been received.
- the processor is permitted to make an attribute switching permission request to the attribute switching control unit.
- the processor can perform the attribute switching process after a certain period of time has elapsed since the request for permission to perform the attribute switching permission request.
- the processor does not request the switching permission unit for permission to perform the attribute switching permission request to the switching permission unit, and does not request the switching permission unit to permit the attribute switching permission request.
- a mode storage unit that stores information on which mode is the second mode, and whether the processing mode of the device is the first mode or the second mode is stored in the mode storage unit.
- a mode determination unit for determining based on information, and when the mode determination unit determines that the mode is the first mode when switching the internal process, the processor performs an attribute switching permission request When the request for permission is made to the switching permission unit and the second mode is determined, the request for permission to perform the attribute switching permission request is not sent to the switching permission unit, and the attribute switching permission request is sent to the switching permission unit.
- Genus It may perform relative to the switching control unit.
- the mode determination unit is in the first mode that requests the switching permission unit to permit the attribute switching permission request, or in the second mode that does not request permission of the attribute switching permission request from the switching permission unit. Determine if there is.
- the access control device switches between the first mode and the second mode according to the determination of the mode determination unit.
- the processing mode can be switched between the case of a dedicated circuit that performs processing that does not generate a lot of processing-waiting data and the case of a dedicated circuit that performs processing that generates a lot of processing-waiting data. It can be processed in an appropriate processing mode.
- the access target device is a memory device
- the access content instruction information included in the access command may be information including information indicating a memory address of an access destination to the memory device. Good.
- the access command accesses the memory device by specifying the address to be accessed.
- the access control unit can determine whether or not to permit access to the specified address included in the access command.
- an information processing apparatus including a processor, a peripheral circuit, and an access target device, it is useful for realizing access to a specific area of the access target device according to the operating state of the processor operating with a plurality of attributes (OS, process, etc.). .
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
In the present invention, a processor (10) performs an attribute switch permission request for an attribute switch control unit (41) when switching internal processing. The attribute switch control unit (41) that has received the attribute switch permission request causes peripheral circuitry (20) to output an access command, which is related to processing received from the processor (10), to an access control unit (44) so that upon completion of the output of the access command, the attribute switch is permitted for the processor (10). The processor (10) is characterized in that, if permission for the attribute switch is acquired from the attribute switch control unit (41), internal processing is switched, and attribute information in an attribute storage unit (42) is updated.
Description
本発明は、 情報処理装置に関し、特にプロセッサ及び周辺回路からデバイスへのアクセスを制御する技術に関する。
The present invention relates to an information processing apparatus, and more particularly to a technique for controlling access to a device from a processor and peripheral circuits.
従来、実行するプロセス毎にメモリデバイスに対してアクセス可能なメモリアドレス領域が限定されている情報処理装置がある。このような情報処理装置において、プロセス毎にアクセス可能なメモリアドレス領域を管理する管理テーブルと、プロセッサで現在実行中のプロセスを示す属性情報を格納する属性用レジスタとを備え、プロセッサからアクセス要求があった際に、管理テーブルを参照して、アクセス要求のあったメモリアドレスに対応するプロセスを示す情報と、属性用レジスタに格納されている属性情報とを比較し、現在実行中のプロセスにおいて、プロセッサからメモリデバイスに対するアクセスが可能か否かを判定する情報処理装置が知られている(特許文献1)。
Conventionally, there is an information processing apparatus in which a memory address area accessible to a memory device is limited for each process to be executed. Such an information processing apparatus includes a management table for managing a memory address area accessible for each process, and an attribute register for storing attribute information indicating a process currently being executed by the processor. When there is, compare the information indicating the process corresponding to the memory address requested to access and the attribute information stored in the attribute register with reference to the management table, and in the currently executing process, An information processing apparatus that determines whether or not a processor can access a memory device is known (Patent Document 1).
ところで、情報処理装置では、プロセッサの処理負担軽減のために、処理の一部を周辺回路に分担させることが行われている。この周辺回路は、記憶容量等の制約により、プロセッサから依頼を受けて実行する処理が、どのプロセスからの依頼なのかを識別する情報は記憶しない。このため、周辺回路は、処理の過程でメモリデバイスにアクセスする必要が生じた場合に、属性用レジスタの値を参照して、プロセッサで現在実行中のプロセスに係る処理として依頼を受けたものとみなしてメモリデバイスにアクセスする。
By the way, in the information processing apparatus, in order to reduce the processing load of the processor, a part of the processing is shared with peripheral circuits. This peripheral circuit does not store information for identifying the process from which the process to be executed in response to a request from the processor is performed due to restrictions such as storage capacity. Therefore, when the peripheral circuit needs to access the memory device in the course of processing, the peripheral circuit refers to the value of the attribute register and receives a request as processing related to the process currently being executed by the processor. Assuming access to memory devices.
このような情報処理装置では、プロセッサがプロセスを切り替えながら複数の処理を行う場合、周辺回路に処理の実行を依頼したプロセスと、周辺回路が実際にデバイスへアクセスするときにプロセッサで実行されているプロセスとが異なる場合が考えられる。例えば、周辺回路での処理途中にプロセッサがプロセスを切り替え、属性用レジスタの値が書き換えられた場合である。
In such an information processing apparatus, when a processor performs a plurality of processes while switching processes, the process that requests the peripheral circuit to execute the process and the processor that is executed when the peripheral circuit actually accesses the device are executed. The process may be different. For example, this is a case where the processor switches processes during processing in the peripheral circuit and the value of the attribute register is rewritten.
このような場合、周辺回路は、切替前のプロセスの処理として扱われるべきメモリデバイスへのアクセスが、切替後のプロセスの処理に係るものとして扱われるという結果を導いてしまう。そして、当該アドレスへのアクセスが拒否されるといった不所望な動作が生じてしまう。
In such a case, the peripheral circuit leads to the result that the access to the memory device that should be handled as the process of the process before switching is handled as the process of the process after switching. Then, an undesired operation in which access to the address is denied occurs.
そこで、本発明は、上記の問題点に鑑みなされたものであり、メモリデバイスへのアクセス制御に係る属性を切り替えるタイミングを制御し、周辺回路からメモリデバイスへのアクセスの際に不所望な動作が生じることを抑制する情報処理装置を提供することを目的とする。
Therefore, the present invention has been made in view of the above-described problems, and controls timing for switching attributes related to access control to a memory device, so that an undesired operation is performed when a peripheral circuit accesses the memory device. An object of the present invention is to provide an information processing apparatus that suppresses the occurrence.
上記課題を解決するために、本発明に係る情報処理装置は、プロセッサ及び周辺回路からアクセスされるアクセス対象装置を備える情報処理装置であって、属性の異なる複数の内部処理を切り替えて実行し、前記アクセス対象装置にアクセスする際には、前記属性を識別するための属性値とアクセス内容指示の情報とを含むアクセスコマンドを生成するプロセッサと、前記プロセッサで実行中の内部処理の属性を示す属性情報を記憶するための属性記憶部と、前記プロセッサから、前記アクセス対象装置へのアクセスを含む処理をすべき旨の指示を受け付け、前記アクセス対象装置にアクセスする際には、前記属性記憶部の前記属性情報を参照し、属性値とアクセス内容指示の情報とを含むアクセスコマンドを生成する周辺回路と、前記プロセッサ及び前記周辺回路それぞれが生成したアクセスコマンドを受け付け、当該アクセスコマンドの属性値で示される属性とアクセス内容指示の情報との対応関係に応じて、前記アクセス対象装置に対するアクセスの抑制制御を行うアクセス制御部と、前記プロセッサからの属性切替許可要求を受け付けた場合に、前記周辺回路に、前記プロセッサから受け付けた処理に係る出力されていないアクセスコマンドを前記アクセス制御部へ出力させ、当該アクセスコマンドの出力が完了すると前記プロセッサに属性切替を許可する属性切替制御部とを備え、前記プロセッサは、内部処理を切り替える際に、前記属性切替制御部に対して、前記属性切替許可要求を行い、前記属性切替制御部から前記属性切替の許可を得た場合に内部処理を切り替え、前記属性記憶部の前記属性情報を更新することを特徴とする。
In order to solve the above problem, an information processing apparatus according to the present invention is an information processing apparatus including an access target device accessed from a processor and a peripheral circuit, and switches and executes a plurality of internal processes having different attributes. When accessing the access target device, a processor that generates an access command including an attribute value for identifying the attribute and access content instruction information, and an attribute indicating an attribute of an internal process being executed by the processor An attribute storage unit for storing information and an instruction to perform processing including access to the access target device are received from the processor, and when accessing the access target device, the attribute storage unit A peripheral circuit that refers to the attribute information and generates an access command including an attribute value and access content instruction information; An access that receives an access command generated by each of the processor and the peripheral circuit and performs access suppression control for the access target device according to the correspondence between the attribute indicated by the attribute value of the access command and the information of the access content instruction When receiving an attribute switching permission request from the control unit and the processor, the peripheral circuit causes the access control unit to output an access command that is not output related to the processing received from the processor, and An attribute switching control unit that allows the processor to switch attributes when the output is completed, and when the processor switches internal processing, the processor makes the attribute switching permission request to the attribute switching control unit, and Switch internal processing when permission to switch attribute is obtained from switching controller , And updates the attribute information of the attribute storage unit.
上述の構成を備える情報処理装置によれば、メモリデバイスへのアクセス制御に係る属性を切り替えるタイミングを制御し、周辺回路からメモリデバイスへのアクセスの際に不所望な動作が生じることを抑制することができる。
According to the information processing apparatus having the above-described configuration, the timing for switching the attribute related to the access control to the memory device is controlled, and the occurrence of an undesired operation when the peripheral circuit accesses the memory device is suppressed. Can do.
<1.実施の形態1>
以下、本発明の一実施形態に係る情報処理装置1について説明する。 <1.Embodiment 1>
Hereinafter, aninformation processing apparatus 1 according to an embodiment of the present invention will be described.
以下、本発明の一実施形態に係る情報処理装置1について説明する。 <1.
Hereinafter, an
<1-1.概要>
図1は、情報処理装置1の構成を示す図である。 <1-1. Overview>
FIG. 1 is a diagram illustrating a configuration of theinformation processing apparatus 1.
図1は、情報処理装置1の構成を示す図である。 <1-1. Overview>
FIG. 1 is a diagram illustrating a configuration of the
情報処理装置1は、プロセッサ10、周辺回路20、デバイス30、及びアクセス制御装置40を含んで構成される。
The information processing apparatus 1 includes a processor 10, a peripheral circuit 20, a device 30, and an access control apparatus 40.
情報処理装置1は、2つの仮想マシンを随時切り替えて動作させる機能を備え、それぞれの仮想マシン上では異なるOS(Operating System)が動作し、1つの仮想マシン上ではOS1が、もう一方の仮想マシン上ではOS2がそれぞれ動作する。この場合、属性とは、仮想マシンを識別するための情報、つまり「OS1」と「OS2」を識別する情報を意味する。
The information processing apparatus 1 has a function of switching and operating two virtual machines as needed. Different OSs (Operating Systems) operate on the respective virtual machines, and the OS 1 operates on one virtual machine and the other virtual machine. In the above, OS2 operates. In this case, the attribute means information for identifying the virtual machine, that is, information for identifying “OS1” and “OS2”.
情報処理装置1は、複数のOSの処理(OS上のアプリケーションの処理を含む。)を切り替えて実行する際に、それぞれのOSの処理が他のOSの処理に影響しないように、アクセス制御部44が異なるOS毎にデバイス30(例えば、メモリデバイス)のアクセスできる範囲を限定し、アクセスの許否を判断する。すなわち、アクセス制御部44において、OS1の処理でアクセスが許可されているアドレス範囲とOS2の処理でアクセスが許可されているアドレス範囲は異なる。
When the information processing apparatus 1 switches and executes a plurality of OS processes (including application processes on the OS), the access control unit prevents each OS process from affecting other OS processes. The access range of the device 30 (for example, a memory device) is limited for each OS in which 44 is different, and whether access is permitted is determined. That is, in the access control unit 44, the address range permitted for access by the OS1 process is different from the address range permitted for access by the OS2 process.
また、情報処理装置1では、プロセッサ10の処理負荷を低減するために、プロセッサ10から依頼された処理を周辺回路20が行う。
In the information processing apparatus 1, the peripheral circuit 20 performs the processing requested by the processor 10 in order to reduce the processing load on the processor 10.
周辺回路20は、汎用的なデータ処理を行う回路であり、記憶容量等の制約からプロセッサ10から受けた依頼がOS1で実行される処理の依頼なのか、OS2で実行される処理の依頼なのかの情報を内部に保持しない。このため、アクセス制御装置40に属性記憶部42を備え、プロセッサがOS1、OS2のどちらで動作しているのかを識別する情報を記憶させ、周辺回路20がデバイス30(例えば、メモリデバイス)へのアクセスが必要になると、属性記憶部42の記憶している情報を参照して、属性とアクセス先のアドレスを含むアクセスコマンド(例えば、アクセス先のアドレスに対するReadコマンド、Writeコマンド等)を生成し、属性記憶部42で示される属性で実行される処理としてデバイス30にアクセスする。
The peripheral circuit 20 is a circuit that performs general-purpose data processing. Whether the request received from the processor 10 is a request for processing executed by the OS 1 or a request for processing executed by the OS 2 due to restrictions on storage capacity or the like. Do not keep the information inside. For this reason, the access control device 40 includes an attribute storage unit 42, stores information for identifying whether the processor is operating in OS1 or OS2, and the peripheral circuit 20 is connected to the device 30 (for example, a memory device). When access is required, the information stored in the attribute storage unit 42 is referred to, and an access command including the attribute and the access destination address (for example, a Read command, a Write command, etc. for the access destination address) is generated. The device 30 is accessed as a process executed with the attribute indicated by the attribute storage unit 42.
ところで、プロセッサ10が、OS1からOS2に切り替えようとする場合に、周辺回路20は、プロセッサ10がOS1で動作中に依頼した処理を実行する過程で発生するデバイス30へのアクセスが完了していないことがある。このような場合に、プロセッサ10が属性記憶部42の属性値をOS1からOS2に書き換えると、周辺回路20は、切替後の属性値であるOS2を含むアクセスコマンドを生成して、デバイス30にアクセスすることになる。このため、属性値が切り替えられた後に周辺回路20が生成したアクセスコマンドによるアクセスはアクセス制御部44で拒否されるおそれがある。
By the way, when the processor 10 tries to switch from OS1 to OS2, the peripheral circuit 20 has not completed access to the device 30 generated in the process of executing the processing requested by the processor 10 while operating on the OS1. Sometimes. In such a case, when the processor 10 rewrites the attribute value in the attribute storage unit 42 from OS1 to OS2, the peripheral circuit 20 generates an access command including OS2 that is the attribute value after switching, and accesses the device 30. Will do. For this reason, the access control unit 44 may be denied access by the access command generated by the peripheral circuit 20 after the attribute value is switched.
そこで、本実施の形態に係る情報処理装置1においては、プロセッサ10は、属性切替の際に、周辺回路20に対する新たな処理の依頼を停止し、属性切替制御部41に属性切替許可の要求を行う。なお、プロセッサ10がOS1の処理からOS2の処理に切り替え、属性記憶部42の属性値を書き換える処理を「属性切替」と呼ぶ。
Therefore, in the information processing apparatus 1 according to the present embodiment, the processor 10 stops a request for a new process to the peripheral circuit 20 at the time of attribute switching, and sends a request for permission of attribute switching to the attribute switching control unit 41. Do. The process in which the processor 10 switches from the OS1 process to the OS2 process and rewrites the attribute value in the attribute storage unit 42 is referred to as “attribute switching”.
属性切替制御部41は、周辺回路20を制御し、周辺回路20がプロセッサ10から既に受け付けた処理に係るアクセスコマンドをアクセス制御部44に出力させ、周辺回路20から出力されるアクセスコマンドが無くなれば、プロセッサ10に属性切替の許可を通知する。プロセッサ10は、属性切替の許可を得てから属性を切り替える。
The attribute switching control unit 41 controls the peripheral circuit 20, causes the access control unit 44 to output an access command related to the processing that the peripheral circuit 20 has already received from the processor 10, and if there is no access command output from the peripheral circuit 20. The processor 10 is notified of permission of attribute switching. The processor 10 switches the attribute after obtaining permission to switch the attribute.
このように、属性切替制御部41が、周辺回路20から出力されるアクセスコマンドの出力の状況に応じてプロセッサ10による属性切替の許可を行うことにより、デバイス30に対する周辺回路20からのアクセスが適切に処理されなくなることを抑制することができる。
As described above, the attribute switching control unit 41 permits the attribute switching by the processor 10 in accordance with the output status of the access command output from the peripheral circuit 20, so that the access from the peripheral circuit 20 to the device 30 is appropriate. It is possible to prevent the processing from being stopped.
<1-2.構成>
以下、情報処理装置1のプロセッサ10、周辺回路20、デバイス30、及びアクセス制御装置40の各構成について説明する。
(プロセッサ10)
プロセッサ10は、メモリに記憶されているプログラムを読出し実行する。プロセッサ10は、プログラム実行の過程において、必要に応じてデバイス30に対するアクセスコマンドを生成し、生成したアクセスコマンドを出力してデバイス30にアクセスする機能を有する。アクセスコマンドについては、後述する。 <1-2. Configuration>
Hereinafter, each configuration of theprocessor 10, the peripheral circuit 20, the device 30, and the access control device 40 of the information processing apparatus 1 will be described.
(Processor 10)
Theprocessor 10 reads and executes a program stored in the memory. The processor 10 has a function of generating an access command for the device 30 as necessary in the course of program execution, and outputting the generated access command to access the device 30. The access command will be described later.
以下、情報処理装置1のプロセッサ10、周辺回路20、デバイス30、及びアクセス制御装置40の各構成について説明する。
(プロセッサ10)
プロセッサ10は、メモリに記憶されているプログラムを読出し実行する。プロセッサ10は、プログラム実行の過程において、必要に応じてデバイス30に対するアクセスコマンドを生成し、生成したアクセスコマンドを出力してデバイス30にアクセスする機能を有する。アクセスコマンドについては、後述する。 <1-2. Configuration>
Hereinafter, each configuration of the
(Processor 10)
The
また、プロセッサ10は、プログラム実行の過程において、必要に応じて周辺回路20に対して処理実行の依頼を行う機能を有する。
Further, the processor 10 has a function of making a request for processing execution to the peripheral circuit 20 as necessary in the course of program execution.
また、プロセッサ10は、OS1とOS2とを切り替えて処理を実行する機能を備える。プロセッサ10は、処理の実行を切り替える際には、周辺回路20に対して新たな処理を実行させる依頼とデバイス30へのアクセスとを停止し、属性切替制御部41に属性切替許可要求を行い、その応答として属性切替制御部41から属性切替許可を示す情報を受け取ると属性記憶部42の属性値を書き換える機能を有する。
(周辺回路20)
周辺回路20は、プロセッサ10から処理実行の依頼を受けて、処理を実行する回路である。周辺回路20は、例えば、DSP(Digital Signal Processor)、DMA(Direct Memory Access)コントローラ、暗号復号回路などである。 Further, theprocessor 10 has a function of executing processing by switching between OS1 and OS2. When switching the execution of the process, the processor 10 stops the request for the peripheral circuit 20 to execute a new process and the access to the device 30, makes an attribute switching permission request to the attribute switching control unit 41, When receiving information indicating that attribute switching is permitted from the attribute switching control unit 41 as a response, the attribute value of the attribute storage unit 42 is rewritten.
(Peripheral circuit 20)
Theperipheral circuit 20 is a circuit that receives a processing execution request from the processor 10 and executes the processing. The peripheral circuit 20 is, for example, a DSP (Digital Signal Processor), a DMA (Direct Memory Access) controller, an encryption / decryption circuit, or the like.
(周辺回路20)
周辺回路20は、プロセッサ10から処理実行の依頼を受けて、処理を実行する回路である。周辺回路20は、例えば、DSP(Digital Signal Processor)、DMA(Direct Memory Access)コントローラ、暗号復号回路などである。 Further, the
(Peripheral circuit 20)
The
周辺回路20は、処理実行過程においてデバイス30にアクセスする必要が生じると、属性記憶部42の属性値を参照し、その属性値を含むアクセスコマンドを生成し、アクセスコマンドを出力することによってデバイス30にアクセスする機能を有する。
When the peripheral circuit 20 needs to access the device 30 in the process execution process, the peripheral circuit 20 refers to the attribute value in the attribute storage unit 42, generates an access command including the attribute value, and outputs the access command, thereby outputting the access command. It has a function to access.
また、周辺回路20は、バッファ300を備える。
Further, the peripheral circuit 20 includes a buffer 300.
バッファ300は、周辺回路20がプロセッサ10から依頼を受けた処理過程で発生するアクセスコマンドを生成するためのアクセス先のアドレスを格納する機能を備える。
The buffer 300 has a function of storing an address of an access destination for generating an access command generated in the process in which the peripheral circuit 20 receives a request from the processor 10.
なお、属性を示す情報が格納されておらずアクセスコマンドとして完成していない状態でバッファ300に格納されているアドレスのデータを「処理待ちデータ」と呼び、処理待ちデータから生成され、アクセス制御部へ出力する前のアクセスコマンドを「処理待ちアクセスコマンド」と呼ぶ。
Note that the data at the address stored in the buffer 300 in a state where the information indicating the attribute is not stored and is not completed as an access command is referred to as “processing waiting data”, and is generated from the processing waiting data. The access command before being output to is called a “processing wait access command”.
更に周辺回路20は、バッファ300に格納されている処理待ちデータの数を状態取得部43に出力する機能を備える。
(デバイス30)
デバイス30は、プロセッサ10及び周辺回路20からアクセスコマンドによってアクセスされるデバイスである。デバイス30は、例えば、メモリデバイス(例えば、DRAM(Dynamic Random Access Memory))である。 Further, theperipheral circuit 20 has a function of outputting the number of processing-waiting data stored in the buffer 300 to the state acquisition unit 43.
(Device 30)
Thedevice 30 is a device accessed from the processor 10 and the peripheral circuit 20 by an access command. The device 30 is, for example, a memory device (for example, a DRAM (Dynamic Random Access Memory)).
(デバイス30)
デバイス30は、プロセッサ10及び周辺回路20からアクセスコマンドによってアクセスされるデバイスである。デバイス30は、例えば、メモリデバイス(例えば、DRAM(Dynamic Random Access Memory))である。 Further, the
(Device 30)
The
アクセスコマンドは後述するアクセス制御部44が受け取り、アクセス制御部44は、
不正なメモリアクセスから保護するために、デバイス30へのアクセス許否の判断を行う。アクセス制御部44でアクセスが許可された場合のみ、プロセッサ10及び周辺回路20は、デバイス30に対する読出し及び書込みを行うことができる。 The access command is received by anaccess control unit 44 described later, and the access control unit 44
In order to protect against unauthorized memory access, whether access to thedevice 30 is permitted or not is determined. Only when access is permitted by the access control unit 44, the processor 10 and the peripheral circuit 20 can read and write to the device 30.
不正なメモリアクセスから保護するために、デバイス30へのアクセス許否の判断を行う。アクセス制御部44でアクセスが許可された場合のみ、プロセッサ10及び周辺回路20は、デバイス30に対する読出し及び書込みを行うことができる。 The access command is received by an
In order to protect against unauthorized memory access, whether access to the
ここで、プロセッサ10及び周辺回路20がデバイス30へ出力するアクセスコマンドについて説明する。
Here, an access command output from the processor 10 and the peripheral circuit 20 to the device 30 will be described.
図2は、アクセスコマンドのアクセス制御部44におけるアクセス許否判断に係るデータ部分の構成例を示す。なお、アクセスコマンドは、更に、デバイス30に対するRead命令なのか、Write命令なのか等のコマンドを区別する情報や、Write命令の場合に書き込むデータを示す情報等が付加される。
FIG. 2 shows a configuration example of a data portion related to access permission determination in the access command access control unit 44. The access command is further added with information for distinguishing a command such as a Read instruction or a Write instruction for the device 30, information indicating data to be written in the case of the Write instruction, and the like.
図2に示すようにアクセスコマンドは、属性101とアドレス102を含み構成される。
As shown in FIG. 2, the access command includes an attribute 101 and an address 102.
属性101は、情報処理装置の実行中の属性を示す情報を格納する項目であり、周辺回路20は、属性記憶部42の属性値を参照して、属性101へ属性値を設定する。
The attribute 101 is an item for storing information indicating an attribute being executed by the information processing apparatus, and the peripheral circuit 20 sets an attribute value in the attribute 101 with reference to the attribute value in the attribute storage unit 42.
アドレス102は、デバイス30に対するアクセス先のアドレスを格納する項目である。
The address 102 is an item for storing an access destination address for the device 30.
例えば、情報処理装置がOS1として実行中の場合は、属性101に属性値として「OS1」を示す情報が格納され、アドレス102には、デバイス30のアクセス先のアドレスが格納される。アクセスコマンドの属性101とアドレス102に係るデータ部分は、例えば、34ビットのデータ長を持ち、上位2ビットを、属性を識別するための識別子に割り当て、「OS1」を示す場合は、上位2ビットの値を「01」(2進数)とし、「OS2」を示す場合は、「10」(2進数)とする。そして、残りの32ビットを、デバイス30のアクセス先のアドレスを指定するための領域として割り当てる。
(アクセス制御装置40)
図1に示すように、アクセス制御装置40は、属性切替制御部41、属性記憶部42、状態取得部43、及びアクセス制御部44から構成される。 For example, when the information processing apparatus is executing asOS 1, information indicating “OS 1” as an attribute value is stored in the attribute 101, and the address of the access destination of the device 30 is stored in the address 102. The data portion related to the attribute 101 and the address 102 of the access command has, for example, a data length of 34 bits, and the upper 2 bits are assigned to an identifier for identifying the attribute. The value of “01” (binary number) is “10” (binary number) when “OS2” is indicated. Then, the remaining 32 bits are allocated as an area for designating an access destination address of the device 30.
(Access control device 40)
As illustrated in FIG. 1, theaccess control device 40 includes an attribute switching control unit 41, an attribute storage unit 42, a state acquisition unit 43, and an access control unit 44.
(アクセス制御装置40)
図1に示すように、アクセス制御装置40は、属性切替制御部41、属性記憶部42、状態取得部43、及びアクセス制御部44から構成される。 For example, when the information processing apparatus is executing as
(Access control device 40)
As illustrated in FIG. 1, the
アクセス制御装置40は、集積回路(例えば、LSI(Large Scale Integration))である。
The access control device 40 is an integrated circuit (for example, LSI (Large Scale Integration)).
属性切替制御部41、状態取得部43及びアクセス制御部44の機能は、アクセス制御装置40である集積回路に記憶されているプログラムを集積回路内部のプロセッサが実行することで実現される。
The functions of the attribute switching control unit 41, the state acquisition unit 43, and the access control unit 44 are realized by executing a program stored in the integrated circuit, which is the access control device 40, by a processor inside the integrated circuit.
属性切替制御部41は、プロセッサ10から、属性切替許可要求を受け取り、周辺回路20に対して、周辺回路20で現在実行中の処理の実行過程で発生した、デバイス30へアクセスするためのアクセスコマンドで未出力のアクセスコマンドをアクセス制御部44へ出力させる機能を有する。
The attribute switching control unit 41 receives an attribute switching permission request from the processor 10, and gives an access command to the peripheral circuit 20 to access the device 30 generated during the process currently being executed in the peripheral circuit 20. And has a function of outputting an access command not yet output to the access control unit 44.
また、属性切替制御部41は、状態取得部43で取得した情報に基づいて、属性切替の許否を判定し、肯定的に判定した場合に、プロセッサ10に対して属性切替許可を出力する機能を有する。
In addition, the attribute switching control unit 41 has a function of determining whether or not to allow attribute switching based on the information acquired by the state acquisition unit 43 and outputting attribute switching permission to the processor 10 when the determination is positive. Have.
属性記憶部42は、周辺回路20がデバイス30へアクセスするためのアクセスコマンドを生成する際に参照する属性値を記憶する記憶素子(例えば属性記憶用レジスタ)である。
The attribute storage unit 42 is a storage element (for example, an attribute storage register) that stores an attribute value that is referred to when the peripheral circuit 20 generates an access command for accessing the device 30.
属性記憶部42の属性値は、属性を識別する情報であり、プロセッサ10が処理を切り替える際にプロセッサ10によって変更される。例えば、プロセッサ10の属性としてOS1とOS2を切り替える場合、属性値は、OSを特定するためのOS識別子である。
The attribute value in the attribute storage unit 42 is information for identifying an attribute, and is changed by the processor 10 when the processor 10 switches processing. For example, when switching between OS1 and OS2 as an attribute of the processor 10, the attribute value is an OS identifier for specifying the OS.
状態取得部43は、周辺回路20のバッファ300に格納されている処理待ちデータの数を周辺回路20から取得する機能を備える。
The state acquisition unit 43 has a function of acquiring the number of data waiting for processing stored in the buffer 300 of the peripheral circuit 20 from the peripheral circuit 20.
アクセス制御部44は、プロセッサ10及び周辺回路20が出力したアクセスコマンドを受け取り、内部に記憶しているアクセス制御ルール200を参照し、アクセスコマンドに含まれる属性101と、アドレス102に基づいて、デバイス30のアドレスへアクセスの許否を判定し、デバイス30へのアクセスの抑制制御を行う機能を備える。
The access control unit 44 receives the access command output from the processor 10 and the peripheral circuit 20, refers to the access control rule 200 stored therein, and based on the attribute 101 included in the access command and the address 102, the device 30 has a function of determining whether access to the address 30 is permitted or not, and performing control for suppressing access to the device 30.
ここで、デバイス30へのアクセスを許可するか否かの判定に用いるアクセス制御ルール200について説明する。
Here, the access control rule 200 used for determining whether or not to permit access to the device 30 will be described.
図3は、アクセス制御ルール200の構成及び内容例を示す図である。
FIG. 3 is a diagram showing a configuration and example contents of the access control rule 200.
同図に示すように、アクセス制御ルール200は、属性201と、開始アドレス202と、終了アドレス203とが対応付けて記録されたテーブルである。
As shown in the figure, the access control rule 200 is a table in which an attribute 201, a start address 202, and an end address 203 are recorded in association with each other.
ここで、属性201は、情報処理装置1の属性を識別する情報を記憶する項目である。
Here, the attribute 201 is an item for storing information for identifying the attribute of the information processing apparatus 1.
開始アドレス202は、アクセスを許可するデバイス30のアドレス範囲の開始アドレスを記憶する項目である。
The start address 202 is an item for storing the start address of the address range of the device 30 that is permitted to be accessed.
終了アドレス203は、アクセスを許可するデバイス30のアドレス範囲の終了アドレスを記憶する項目である。この開始アドレス202と終了アドレス203とで示される範囲以外のアドレスに対してのアクセスは拒否される。
The end address 203 is an item for storing the end address of the address range of the device 30 that is permitted to access. Access to addresses outside the range indicated by the start address 202 and the end address 203 is denied.
同図の例では、属性201が「OS1」の場合、開始アドレス202が「0x00000000」から終了アドレスが「0x00FFFFFF」までのアドレス範囲のアドレスへのアクセス要求があった場合に、アクセスを許可することを意味する。同様に、属性201が「OS2」の場合には、0x01000000~0x01FFFFFFのアドレス範囲へのアクセスのみ許可される。また、同図では、属性201が「OS1」の場合には、0x02000000~0x02FFFFFFまでのアドレス範囲のアドレスへのアクセス要求があった場合にも、アクセスを許可する。このように、同一属性に対して複数のアドレス範囲を設定してもよい。
In the example shown in the figure, when the attribute 201 is “OS1”, access is permitted when there is an access request to an address in the address range from the start address 202 to “0x00000000” to the end address “0x00FFFFFF”. Means. Similarly, when the attribute 201 is “OS2”, only access to the address range from 0x01000000 to 0x01FFFFFF is permitted. In the figure, when the attribute 201 is “OS1”, access is permitted even when there is an access request to an address in the address range from 0x02000000 to 0x02FFFFFF. Thus, a plurality of address ranges may be set for the same attribute.
<1-3.動作>
ここでは、上記の構成を備えた情報処理装置1の処理動作について説明する。 <1-3. Operation>
Here, the processing operation of theinformation processing apparatus 1 having the above configuration will be described.
ここでは、上記の構成を備えた情報処理装置1の処理動作について説明する。 <1-3. Operation>
Here, the processing operation of the
情報処理装置1のプロセッサ10は、OS1での処理AとOS2での処理Bを切り替えて実行するものであり、OS1で処理Aを実行し、処理Aの実行中に周辺回路20に対してデバイス30へのアクセスが必要な処理A’の実行の依頼を行う。依頼を受けた周辺回路20は、処理A’を実行する。周辺回路20は、処理A’の実行過程でアクセス制御部44へ逐次アクセスコマンドを発行する。
The processor 10 of the information processing apparatus 1 switches between the process A in the OS 1 and the process B in the OS 2, executes the process A in the OS 1, and performs device A to the peripheral circuit 20 during the execution of the process A. A request is made to execute process A ′ that requires access to 30. The peripheral circuit 20 that has received the request executes the process A ′. The peripheral circuit 20 issues sequential access commands to the access control unit 44 during the process A ′.
周辺回路20での処理A’における処理結果は、例えば次のようにしてプロセッサ10で利用される。周辺回路20は、処理A’での処理結果をデバイス30の特定のアドレス領域に書込み、プロセッサ10は、この特定のアドレス領域に書き込まれたデータを読み出して処理Aで利用する。
The processing result in the processing A ′ in the peripheral circuit 20 is used in the processor 10 as follows, for example. The peripheral circuit 20 writes the processing result in the processing A ′ into a specific address area of the device 30, and the processor 10 reads out the data written in the specific address area and uses it in the processing A.
このような処理の実行中に、情報処理装置1が、例えばユーザからOS2で実行する処理Bに切り替える旨の指示を受けたときには、プロセッサ10は、処理Aの実行を中断し、処理Bの実行に切り替える処理を行う。プロセッサ10は処理Bの実行に切り替える際に、まず属性切替制御部41に属性切替許可要求を行う。プロセッサ10は、属性切替制御部41から属性切替を許可されると、処理Bの実行に切り替え、属性記憶部42の属性をOS1からOS2を示す情報に書き換える。
When the information processing apparatus 1 receives an instruction to switch to the process B executed by the OS 2 from the user during the execution of such a process, the processor 10 interrupts the execution of the process A and executes the process B. Process to switch to. When switching to the execution of the process B, the processor 10 first makes an attribute switching permission request to the attribute switching control unit 41. When the attribute switching is permitted from the attribute switching control unit 41, the processor 10 switches to the execution of the process B, and rewrites the attribute in the attribute storage unit 42 from OS1 to OS2 information.
なお、デバイス30に対して、OS1の処理Aからアクセスが許可されるアドレス範囲とOS2の処理Bからアクセスが許可されるアドレス範囲は図3で示すように異なっており、アクセス制御部44が、要求があったアドレスに対するアクセスの許否を判定する。
Note that the address range in which access is permitted from the process A of the OS 1 to the device 30 and the address range in which access is permitted from the process B of the OS 2 are different as shown in FIG. Judge whether access is permitted to the requested address.
以下、属性切替要求を受け取った属性切替制御部41での処理動作の詳細と、アクセス制御部44でのアクセス許否判定の処理動作の詳細とを説明する。
Hereinafter, the details of the processing operation in the attribute switching control unit 41 that has received the attribute switching request and the details of the processing operation of access permission determination in the access control unit 44 will be described.
(1)属性切替制御部41における処理動作
図4は、属性切替制御部41による属性切替制御処理の動作を示すフローチャートである。 (1) Processing Operation in AttributeSwitching Control Unit 41 FIG. 4 is a flowchart showing an operation of attribute switching control processing by the attribute switching control unit 41.
図4は、属性切替制御部41による属性切替制御処理の動作を示すフローチャートである。 (1) Processing Operation in Attribute
まず、属性切替制御部41は、プロセッサ10から属性切替許可要求を受信する(ステップS10)。なお、プロセッサ10は、属性切替許可要求を属性切替制御部41に行った後、属性切替制御部41によって属性切替を許可されるまで、処理を中断して待機状態になる。
First, the attribute switching control unit 41 receives an attribute switching permission request from the processor 10 (step S10). Note that, after making an attribute switching permission request to the attribute switching control unit 41, the processor 10 interrupts the processing and enters a standby state until the attribute switching control unit 41 permits the attribute switching.
次に、属性切替制御部41は、周辺回路20に対して、既にプロセッサ10からの依頼を受けて実行している処理に係る処理待ちデータからアクセスコマンドを生成してアクセス制御部44に出力するよう、すなわち、周辺回路20に処理待ちアクセスコマンドの出力を完了させるよう依頼する(ステップS11)。なお、周辺回路20は、アクセス制御部44及びデバイス30の処理能力に応じて、処理待ちアクセスコマンドを順次出力する。
Next, the attribute switching control unit 41 generates an access command for the peripheral circuit 20 from the processing-waiting data related to the processing that has already been executed in response to the request from the processor 10, and outputs the access command to the access control unit 44. That is, the peripheral circuit 20 is requested to complete the output of the processing waiting access command (step S11). The peripheral circuit 20 sequentially outputs processing-waiting access commands according to the processing capabilities of the access control unit 44 and the device 30.
状態取得部43は、周辺回路20の処理待ちデータの数を取得する(ステップS12)。具体的には、例えば、周辺回路20は、属性切替制御部41からアクセスコマンドの出力指示があると、処理待ちデータをバッファ300に記憶するようにし、状態取得部43がバッファ300にある処理待ちデータの数をカウントする。
The state acquisition unit 43 acquires the number of data waiting for processing in the peripheral circuit 20 (step S12). Specifically, for example, when there is an instruction to output an access command from the attribute switching control unit 41, the peripheral circuit 20 stores processing waiting data in the buffer 300, and the state acquisition unit 43 waits for processing in the buffer 300. Count the number of data.
属性切替制御部41は、状態取得部43で取得した処理待ちデータの数を確認する(ステップS13)。処理待ちデータの数が0でなければ(ステップS13:NO)、ステップS12からの処理を繰り返す。
The attribute switching control unit 41 confirms the number of processing-waiting data acquired by the state acquisition unit 43 (step S13). If the number of data waiting for processing is not 0 (step S13: NO), the processing from step S12 is repeated.
一方、処理待ちデータの数が0である場合(ステップS13:YES)、属性切替制御部41は、プロセッサ10に属性切替を許可する情報を出力する(ステップS14)。
On the other hand, when the number of data waiting to be processed is 0 (step S13: YES), the attribute switching control unit 41 outputs information for permitting attribute switching to the processor 10 (step S14).
属性切替制御部41から属性切替を許可する情報を受信したプロセッサ10は、処理を切り替え、属性記憶部42の属性値を書き換える。
The processor 10 that has received the information that permits the attribute switching from the attribute switching control unit 41 switches the process and rewrites the attribute value in the attribute storage unit 42.
(2)アクセス制御部44でのデバイス30へのアクセス許否判定の処理動作
図5は、アクセス制御部44によるアクセス抑制制御処理の動作を示すフローチャートである。 (2) Processing Operation for Determining Access Permit / Deny Access toDevice 30 in Access Control Unit 44 FIG. 5 is a flowchart showing the operation of access suppression control processing by the access control unit 44.
図5は、アクセス制御部44によるアクセス抑制制御処理の動作を示すフローチャートである。 (2) Processing Operation for Determining Access Permit / Deny Access to
アクセス制御部44は、プロセッサ10及び周辺回路20が出力したアクセスコマンド100を受け取る(ステップS20)。
The access control unit 44 receives the access command 100 output from the processor 10 and the peripheral circuit 20 (step S20).
次に、アクセス制御部44は、アクセスコマンド100に含まれる属性101に記載されている属性値を抽出し(ステップS21)、同様にアドレス102に記載されているアドレスの値を抽出する(ステップS22)。
Next, the access control unit 44 extracts the attribute value described in the attribute 101 included in the access command 100 (step S21), and similarly extracts the value of the address described in the address 102 (step S22). ).
アクセス制御部44は、内部に記憶しているアクセス制御ルール200を参照し、ステップS22で抽出したアドレスの値が、アクセス制御ルールの開始アドレス202と終了アドレス203で示されるアドレス範囲内にある属性値を取得する(ステップS23)。例えば、アクセスコマンド100から抽出したアドレスが0x0000A000であったとすると、このアドレスは、0x00000000~0x00FFFFFFのアドレス範囲内にあるので、アクセス制御部44は、図3で示されるアクセス制御ルールにより、対応する属性の属性値である「OS1」を取得する。
The access control unit 44 refers to the access control rule 200 stored therein, and the attribute whose address value extracted in step S22 is within the address range indicated by the start address 202 and the end address 203 of the access control rule. A value is acquired (step S23). For example, if the address extracted from the access command 100 is 0x0000A000, this address is in the address range of 0x00000000 to 0x00FFFFFF, so the access control unit 44 uses the corresponding attribute according to the access control rule shown in FIG. The attribute value “OS1” is acquired.
次にアクセス制御部44は、ステップS21でアクセスコマンド100から取得した属性値とステップS23で取得した属性値を比較する(ステップS24)。属性値が一致した場合(ステップS24:YES)、アクセス制御部44は、アクセスコマンドを出力したプロセッサ10及び周辺回路20に対して、ステップS22で取得したアドレスの値で示されるデバイス30のアドレスへのアクセスを許可する(ステップS25)。
Next, the access control unit 44 compares the attribute value acquired from the access command 100 in step S21 with the attribute value acquired in step S23 (step S24). When the attribute values match (step S24: YES), the access control unit 44 sends the address of the device 30 indicated by the address value acquired in step S22 to the processor 10 and the peripheral circuit 20 that output the access command. Is permitted (step S25).
一方、属性値が一致しない場合(ステップS24:NO)、アクセス制御部44は、アクセスコマンドを出力したプロセッサ10及び周辺回路20に対して、ステップS22で取得したアドレスの値で示されるデバイス30のアドレスへのアクセスを拒否する(ステップS26)。
On the other hand, if the attribute values do not match (step S24: NO), the access control unit 44 provides the processor 10 and the peripheral circuit 20 that output the access command to the device 30 indicated by the address value acquired in step S22. Access to the address is denied (step S26).
<1-4.考察>
図6は、情報処理装置1における周辺回路20からデバイス30へのアクセスの流れの一例を示す図である。 <1-4. Discussion>
FIG. 6 is a diagram illustrating an example of a flow of access from theperipheral circuit 20 to the device 30 in the information processing apparatus 1.
図6は、情報処理装置1における周辺回路20からデバイス30へのアクセスの流れの一例を示す図である。 <1-4. Discussion>
FIG. 6 is a diagram illustrating an example of a flow of access from the
周辺回路20は、プロセッサ10から処理の依頼を受け、その処理の過程でデバイス30へのアクセスを行うが、デバイス30のアクセス先のアドレスは、バッファ300に送られ、アクセス制御部44やデバイス30の処理能力に応じてバッファ300に蓄積されているアドレスを元に順次アクセスコマンドを生成してアクセス制御部44に送られる。
The peripheral circuit 20 receives a processing request from the processor 10 and accesses the device 30 in the course of the processing. The access destination address of the device 30 is sent to the buffer 300, and the access control unit 44 and the device 30 are accessed. The access commands are sequentially generated based on the addresses stored in the buffer 300 in accordance with the processing capability of the received data and sent to the access control unit 44.
同図では、属性がOS1で動作中のプロセッサ10から依頼された処理の過程で一連のアクセス先のアドレス1000がバッファに蓄積されている。
In the figure, a series of access destination addresses 1000 are accumulated in the buffer in the course of processing requested by the processor 10 whose attribute is operating in OS1.
プロセッサ10が時間T1で属性切替許可要求を属性切替制御部41に行う。このとき、バッファに蓄積されたアドレスの内、アクセス制御部44に出力されているのは、アクセスコマンド1001~1003の3つであり、残りの2つのアドレスはバッファ300に蓄積されたままであり、このアドレスに対応するアクセスコマンド1004~1005はアクセス制御部44に出力されていない。このような場合、属性切替制御部41は、プロセッサ10に対して、属性切替の許可を行わないので属性はOS1の状態を維持する。バッファ300に残っている最後のアドレスに対するアクセスコマンド1005がアクセス制御部44へ出力されると属性切替制御部41は、プロセッサ10に属性切替の許可を行う。以上のように、属性の切り替えは時間T1ではなく、属性OS1のときに処理されるべきアクセスが完了した時間T2のタイミングで行われる。
Processor 10 makes an attribute switching permission request to attribute switching control unit 41 at time T1. At this time, of the addresses stored in the buffer, the three output commands 1001 to 1003 are output to the access control unit 44, and the remaining two addresses remain stored in the buffer 300. Access commands 1004 to 1005 corresponding to this address are not output to the access control unit 44. In such a case, the attribute switching control unit 41 does not permit the attribute switching to the processor 10, so the attribute maintains the state of OS1. When the access command 1005 for the last address remaining in the buffer 300 is output to the access control unit 44, the attribute switching control unit 41 permits the processor 10 to switch attributes. As described above, the attribute switching is performed not at time T1 but at time T2 when the access to be processed in the case of the attribute OS1 is completed.
一方、属性切替制御部41での属性切替の制御を行わないとすると以下のような問題がある。
On the other hand, if the attribute switching control by the attribute switching control unit 41 is not performed, there are the following problems.
図7は、属性切替制御部41での属性切替の制御を行わない場合の、周辺回路20からデバイス30へのアクセスの流れの一例を示す図である。
FIG. 7 is a diagram illustrating an example of a flow of access from the peripheral circuit 20 to the device 30 when the attribute switching control unit 41 does not perform attribute switching control.
図6の場合と同様に、周辺回路20からデバイス30へアクセスする際には、デバイス30に対するアクセス先のアドレスは、バッファ300に一旦格納され、周辺回路20は、バッファ300に格納された処理待ちデータから、順次アクセスコマンドを生成し、生成したアクセスコマンドを制御部44に出力する。
As in the case of FIG. 6, when accessing the device 30 from the peripheral circuit 20, the access destination address for the device 30 is temporarily stored in the buffer 300, and the peripheral circuit 20 waits for the processing stored in the buffer 300. Access commands are sequentially generated from the data, and the generated access commands are output to the control unit 44.
プロセッサ10が時間T1’に属性をOS1からOS2に切り替えたとすると、図7の例では、時間T1’までには、周辺回路20は、アクセスコマンド1001~1003を生成し、アクセス制御部44への出力が完了している。しかし、バッファ300に格納されている2つの処理待ちデータ(同図のアドレス0x00001100、0x00001150を示すデータ)は、時間T1’までにアクセスコマンドとして生成されず、バッファ300に蓄積された状態である。周辺回路20は、この2つの処理待ちデータについては、時間T1’以降にアクセスコマンドを生成して、アクセス制御部44に出力することになる。すなわち、アクセスコマンドの属性101には属性値として「OS1」ではなく「OS2」が記載されたアクセスコマンド1004b及び1005bが生成され、出力される。
Assuming that the processor 10 switches the attribute from OS1 to OS2 at time T1 ′, in the example of FIG. 7, the peripheral circuit 20 generates access commands 1001 to 1003 by time T1 ′ and sends them to the access control unit 44. Output is complete. However, the two processing-waiting data stored in the buffer 300 (data indicating addresses 0x000001100 and 0x000001150 in the figure) are not generated as access commands by the time T1 'but are accumulated in the buffer 300. The peripheral circuit 20 generates an access command after the time T <b> 1 ′ and outputs it to the access control unit 44 for the two processing-waiting data. That is, access commands 1004b and 1005b in which “OS2” is written as attribute values in the attribute 101 of the access command are generated and output.
アクセスコマンド1004bを受け取ったアクセス制御装置は、アクセス制御ルール200を参照し、アクセスコマンド1004bに含まれるアドレス「0x00001100」に基づいて、アドレス「0x00001100」へのアクセスが許可されている属性の属性値として「OS1」を取得する。取得した属性値の「OS1」は、アクセスコマンド1004bに含まれる属性の属性値「OS2」と異なるので、アドレス「0x00001100」へのアクセスを拒否する。同様にアクセスコマンド1005bについても、アドレス「0x0001150」で指定されたアドレスへのアクセスを拒否する。
The access control apparatus that has received the access command 1004b refers to the access control rule 200 and, based on the address “0x000001100” included in the access command 1004b, as an attribute value of an attribute permitted to access the address “0x000001100” Obtain “OS1”. Since the acquired attribute value “OS1” is different from the attribute value “OS2” of the attribute included in the access command 1004b, access to the address “0x000001100” is denied. Similarly, the access command 1005b is also denied access to the address specified by the address “0x0001150”.
このように、周辺回路20が、プロセッサ10からプロセッサ10がOS1を実行中に依頼された処理の実行過程で生じた、デバイス30へアクセスするためのアクセスコマンドを出力する前に、プロセッサ10が実行しているOSをOS2に切り替えると、本来なら、アクセスが許可されるべきアドレスへのアクセスが拒否される。すなわち、周辺回路20からデバイス30へのアクセスが適切になされなくなる。
As described above, the peripheral circuit 20 executes the process before the processor 10 outputs the access command for accessing the device 30 that is generated in the course of the processing requested by the processor 10 while the processor 10 is executing OS1. When the operating OS is switched to OS2, access to an address to which access should be permitted is denied. That is, the peripheral circuit 20 cannot properly access the device 30.
ところが、既に説明したように、本実施の形態の情報処理装置1では、属性切替制御部41は、周辺回路20で処理待ちデータが無くならなければプロセッサ10に属性切替を許可しないので、プロセッサ10が属性を切り替える前には、切り替え前の処理に係る周辺回路20からデバイス30へのアクセスコマンドの出力は完了しており、周辺回路20からデバイス30への不適切なアクセスを抑止できる。
<2.実施の形態2>
<2-1.概要>
実施の形態1の情報処理装置1では、プロセッサ10は、OS1からOS2に属性を切り替える場合には、属性切替を迅速に行うためOS1での処理実行を停止して、属性切替制御部41へ属性切替許可要求を行う。このため、属性切替許可要求を行ってから属性切替の許可を得るまでは、プロセッサ10を利用できない。すなわち、属性切替許可要求を行ってから属性切替の許可を得るまでの時間(以下、「待機時間」と呼ぶ。)が長いと、プロセッサ10の利用効率が悪くなる。 However, as already described, in theinformation processing apparatus 1 according to the present embodiment, the attribute switching control unit 41 does not permit the processor 10 to switch attributes unless there is no processing waiting data in the peripheral circuit 20. Before switching the attribute, the output of the access command from the peripheral circuit 20 to the device 30 related to the process before the switching is completed, and inappropriate access from the peripheral circuit 20 to the device 30 can be suppressed.
<2. Second Embodiment>
<2-1. Overview>
In theinformation processing apparatus 1 according to the first embodiment, when switching the attribute from the OS 1 to the OS 2, the processor 10 stops the process execution in the OS 1 to quickly switch the attribute, and sends the attribute to the attribute switching control unit 41. Make a switch permission request. For this reason, the processor 10 cannot be used until the attribute switching permission is obtained after the attribute switching permission request is made. That is, if the time period from when the attribute switching permission request is made until the attribute switching permission is obtained (hereinafter referred to as “waiting time”) is long, the utilization efficiency of the processor 10 is degraded.
<2.実施の形態2>
<2-1.概要>
実施の形態1の情報処理装置1では、プロセッサ10は、OS1からOS2に属性を切り替える場合には、属性切替を迅速に行うためOS1での処理実行を停止して、属性切替制御部41へ属性切替許可要求を行う。このため、属性切替許可要求を行ってから属性切替の許可を得るまでは、プロセッサ10を利用できない。すなわち、属性切替許可要求を行ってから属性切替の許可を得るまでの時間(以下、「待機時間」と呼ぶ。)が長いと、プロセッサ10の利用効率が悪くなる。 However, as already described, in the
<2. Second Embodiment>
<2-1. Overview>
In the
本実施の形態では、プロセッサ10bがOS1からOS2への属性を切り替えるための要求を行うタイミングを調整する機構を導入することによって、待機時間を短くし、効率よくOSの切り替え処理ができる情報処理装置2について説明する。
In the present embodiment, by introducing a mechanism that adjusts the timing at which the processor 10b makes a request for switching the attribute from OS1 to OS2, an information processing apparatus that can shorten the standby time and efficiently perform OS switching processing. 2 will be described.
周辺回路20における処理待ちデータの数が多い状態では、処理待ちアクセスコマンドの出力が完了するまでに時間がかかる。すなわち、属性切替の許可を得るまでに時間がかかる。処理待ちデータの数が少なければ、プロセッサ10bが属性切替許可要求を属性切替制御部41に出力してから、属性切替の許可を得るまでの時間は短くなる。
In the state where the number of data waiting for processing in the peripheral circuit 20 is large, it takes time to complete the output of the processing waiting access command. That is, it takes time to obtain permission for attribute switching. If the number of data waiting to be processed is small, the time from when the processor 10b outputs an attribute switching permission request to the attribute switching control unit 41 until obtaining permission for attribute switching is shortened.
そこで、本実施の形態では、プロセッサ10bが、属性切替制御部41へ、属性切替許可要求を行う前に、属性切替制御部41に対して属性切替許可要求を出力することの許可(以下、「出力許可」と呼ぶ。)の要求を切替許可部45に行い、切替許可部45から出力許可を得てから、属性切替制御部41へ属性切替許可要求を出力する。
Therefore, in the present embodiment, before the processor 10b makes an attribute switching permission request to the attribute switching control unit 41, permission to output the attribute switching permission request to the attribute switching control unit 41 (hereinafter, “ The request is called “output permission”) to the switching permission unit 45, and after the output permission is obtained from the switching permission unit 45, the attribute switching permission request is output to the attribute switching control unit 41.
切替許可部45は、周辺回路20での処理待ちデータの数が予め定められた所定数以下である場合に、プロセッサ10へ出力許可を行う。
The switching permission unit 45 permits output to the processor 10 when the number of data waiting for processing in the peripheral circuit 20 is equal to or less than a predetermined number.
これにより、プロセッサ10bは、処理待ちデータの数が予め定められた数以下になってから、属性切替許可要求を行うので、属性切替許可要求を行ってから属性切替までの時間を短縮できる。プロセッサ10bは、出力許可の要求を行っても、属性切替要求を行う前までは、切替前のOS1での処理を継続して行うので、プロセッサ10bの利用効率の低下を抑制し得る。
Thereby, since the processor 10b makes the attribute switching permission request after the number of data waiting to be processed becomes equal to or less than the predetermined number, the time from the attribute switching permission request to the attribute switching can be shortened. Even if the processor 10b requests output permission, the processor 10b continues to perform the processing in the OS 1 before switching until the attribute switching request is made. Therefore, it is possible to suppress a decrease in utilization efficiency of the processor 10b.
以下、実施の形態1と同じ構成については同じ符号を用い、実施の形態1と異なる点を重点的に説明する。
Hereinafter, the same reference numerals are used for the same configurations as those in the first embodiment, and differences from the first embodiment will be mainly described.
<2-2.構成>
図8は、情報処理装置2の構成を示す図である。 <2-2. Configuration>
FIG. 8 is a diagram illustrating a configuration of theinformation processing apparatus 2.
図8は、情報処理装置2の構成を示す図である。 <2-2. Configuration>
FIG. 8 is a diagram illustrating a configuration of the
情報処理装置2は、情報処理装置1と基本的な構成は同じであるが、情報処理装置1と比較して、アクセス制御装置に更に切替許可部45を備える点で異なる。
The information processing device 2 has the same basic configuration as the information processing device 1, but differs from the information processing device 1 in that the access control device further includes a switching permission unit 45.
アクセス制御装置40に切替許可部45を備えたアクセス制御装置をアクセス制御装置40bとする。
The access control device provided with the switching permission unit 45 in the access control device 40 is referred to as an access control device 40b.
また、プロセッサ10の代わりにプロセッサ10の機能を拡張したプロセッサ10bを備える。プロセッサ10bは、属性切替制御部41へ属性切替許可要求を行う前に、切替許可部45に出力許可の要求を出力し、切替許可部45から出力許可を受け取る機能を備える。
Also, instead of the processor 10, a processor 10b in which the function of the processor 10 is expanded is provided. The processor 10 b has a function of outputting an output permission request to the switching permission unit 45 and receiving an output permission from the switching permission unit 45 before making an attribute switching permission request to the attribute switching control unit 41.
周辺回路20、デバイス30は、実施の形態1と同じ構成である。
Peripheral circuit 20 and device 30 have the same configuration as in the first embodiment.
(アクセス制御装置40b)
アクセス制御装置40bは、集積回路である。 (Access control device 40b)
Theaccess control device 40b is an integrated circuit.
アクセス制御装置40bは、集積回路である。 (
The
アクセス制御装置40bの切替許可部45以外の構成は、アクセス制御装置40と基本的に同じである。ただし、状態取得部43の代わりに状態取得部43の機能を拡張した状態取得部43bを備える。
The configuration other than the switching permission unit 45 of the access control device 40b is basically the same as that of the access control device 40. However, instead of the state acquisition unit 43, a state acquisition unit 43b in which the function of the state acquisition unit 43 is expanded is provided.
状態取得部43bは、状態取得部43の機能に加えて、周辺回路20から受け取った処理待ちデータの数を切替許可部45へ出力する機能を備える。
In addition to the function of the state acquisition unit 43, the state acquisition unit 43b has a function of outputting the number of processing-waiting data received from the peripheral circuit 20 to the switching permission unit 45.
切替許可部45は、プロセッサ10から、出力許可の要求を受け、状態取得部43bから得た処理待ちデータの数に基づいて、出力許可を行うことの許否を判定し、判定結果をプロセッサ10に返信する機能を有する。また、切替許可部45は、状態取得部43bから取得した処理待ちデータの数と比較し、出力許可の許否判定に用いる閾値を予め記憶する機能を有する。
The switching permission unit 45 receives an output permission request from the processor 10, determines whether or not to permit output based on the number of processing-waiting data obtained from the state acquisition unit 43 b, and sends the determination result to the processor 10. Has a function to reply. In addition, the switching permission unit 45 has a function of preliminarily storing a threshold value used for determination of permission / prohibition of output permission in comparison with the number of processing-waiting data acquired from the state acquisition unit 43b.
この閾値は、例えば、周辺回路20、アクセス制御部44、及びデバイス30の処理能力に基づいて、プロセッサ10bが切替許可部45から出力許可を得てから属性切替制御部41へ属性切替許可要求を行う処理が完了するまでにかかる最短時間の間に、アクセス制御部44が処理できる処理待ちアクセスコマンドの最大の数Nを基準にして決定する。そして、例えば、閾値をNと同程度に設定した場合、プロセッサ10bが切替許可部45から出力許可を得て属性切替制御部41に属性切替許可要求を行うと、処理待ちアクセスコマンドは、その間にほぼ出力されており、プロセッサ10bは、短い待機時間で属性の切り替えができる。
For example, the threshold value is determined based on the processing capability of the peripheral circuit 20, the access control unit 44, and the device 30, after the processor 10 b obtains output permission from the switching permission unit 45, and sends an attribute switching permission request to the attribute switching control unit 41. This is determined based on the maximum number N of processing-waiting access commands that can be processed by the access control unit 44 during the shortest time required to complete the processing to be performed. For example, when the threshold value is set to the same level as N, when the processor 10b obtains output permission from the switching permission unit 45 and makes an attribute switching permission request to the attribute switching control unit 41, the processing waiting access command is The processor 10b can switch attributes in a short standby time.
なお、状態取得部43b及び切替許可部45の機能は、アクセス制御装置40bである集積回路に記憶されているプログラムを集積回路内部のプロセッサが実行することで実現される。
Note that the functions of the state acquisition unit 43b and the switching permission unit 45 are realized by a processor in the integrated circuit executing a program stored in the integrated circuit that is the access control device 40b.
<2-3.動作>
ここでは、上記の構成を備えた情報処理装置2の処理動作について説明する。 <2-3. Operation>
Here, the processing operation of theinformation processing apparatus 2 having the above configuration will be described.
ここでは、上記の構成を備えた情報処理装置2の処理動作について説明する。 <2-3. Operation>
Here, the processing operation of the
情報処理装置2では、図4に示すSTART(A)からの処理を行う前に、プロセッサ10bは、切替許可部45に対して出力許可の要求を行い、切替許可部45は、プロセッサ10bに対して出力許可を行うか否かの切替許可処理を行う。
In the information processing apparatus 2, before the processing from START (A) shown in FIG. 4 is performed, the processor 10b makes a request for output permission to the switching permission unit 45, and the switching permission unit 45 transmits to the processor 10b. Then, a switching permission process for determining whether or not to permit output is performed.
プロセッサ10bは、切替許可部45から出力許可を得たのち、図4に示すSTART(A)からの処理を行う。
After obtaining the output permission from the switching permission unit 45, the processor 10b performs processing from START (A) shown in FIG.
以下、切替許可部45における切替許可処理の動作の詳細について説明する。
Hereinafter, the details of the operation of the switching permission process in the switching permission unit 45 will be described.
図9は、切替許可部45における切替許可処理の動作を示すフローチャートである。
FIG. 9 is a flowchart showing the operation of the switching permission process in the switching permission unit 45.
まず、切替許可部45は、プロセッサ10から出力許可の要求を受信する(ステップS30)。
First, the switching permission unit 45 receives an output permission request from the processor 10 (step S30).
次に、切替許可部45は、状態取得部43bから、周辺回路20の処理待ちデータの数を取得する(ステップS31)。具体的な取得方法は、図4のステップS13における方法と同じである。
Next, the switching permission unit 45 acquires the number of data waiting for processing of the peripheral circuit 20 from the state acquisition unit 43b (step S31). A specific acquisition method is the same as the method in step S13 of FIG.
切替許可部45は、状態取得部43bから取得した処理待ちデータの数と、内部のメモリに予め記憶している閾値と比較する(ステップS32)。処理待ちデータの数が閾値より大きい場合(ステップS32:NO)、ステップS31から処理を繰り返す。一方、処理待ちデータの数が閾値以下の場合(ステップS32:YES)、プロセッサ10bに、出力許可を行う(ステップS33)。
The switching permission unit 45 compares the number of processing-waiting data acquired from the state acquisition unit 43b with a threshold value stored in advance in an internal memory (step S32). If the number of data waiting for processing is larger than the threshold (step S32: NO), the processing is repeated from step S31. On the other hand, when the number of data waiting for processing is equal to or less than the threshold (step S32: YES), the processor 10b is permitted to output (step S33).
なお、プロセッサ10bは、出力許可の要求を切替許可部45に行ってもOS1での処理を継続しており、切替許可部45からプロセッサ10bへの割り込みとして出力許可を受け取る。プロセッサ10bは、切替許可部45から、出力許可を受け取ったら、図4のSTART(A)の処理を続けて行う。
It should be noted that the processor 10b continues the processing in the OS 1 even when an output permission request is sent to the switching permission unit 45, and receives the output permission from the switching permission unit 45 as an interrupt to the processor 10b. When receiving output permission from the switching permission unit 45, the processor 10b continues the processing of START (A) in FIG.
<2-4.まとめ>
本実施の形態の情報処理装置2は、プロセッサ10bがOS1からOS2に属性の切り替えを行う際には、切替許可部45が、周辺回路20での処理待ちデータの数に応じて、属性の切り替えの要求を行うタイミングを調整することができる。プロセッサ10bは、処理待ちデータの数が所定の数以下になった場合に、属性の切り替え処理を実行することによって、属性切替制御部41に対して属性切替許可要求を行ってから、属性切替が許可されるまでの時間を短縮できるため、処理を効率よく行うことができる。
<3.実施の形態3>
<3-1.概要>
本実施の形態では、プロセッサが属性を切り替える際に、切替許可部45bに出力許可を要求する第1モードと、切替許可部45bに出力許可を要求しない第2モードとのどちらの処理モードであるかを判定するモード判定部46をアクセス制御装置40cに備えた情報処理装置3について説明する。なお、第1、第2モードのどちらの処理モードであるのかを判定する処理を「モード判定処理」と呼ぶ。 <2-4. Summary>
In theinformation processing apparatus 2 according to the present embodiment, when the processor 10b switches the attribute from OS1 to OS2, the switching permission unit 45 switches the attribute according to the number of data waiting for processing in the peripheral circuit 20. The timing of making the request can be adjusted. The processor 10b performs an attribute switching process when the number of data waiting to be processed is equal to or less than a predetermined number, thereby making an attribute switching permission request to the attribute switching control unit 41 and then performing attribute switching. Since the time until permission is allowed can be shortened, processing can be performed efficiently.
<3.Embodiment 3>
<3-1. Overview>
In the present embodiment, when the processor switches attributes, the processing mode is either the first mode in which output permission is requested from the switchingpermission unit 45b or the second mode in which output permission is not requested from the switching permission unit 45b. The information processing device 3 provided with the mode control unit 46 for determining whether or not the access control device 40c is provided will be described. Note that the process for determining which of the first and second processing modes is called “mode determination process”.
本実施の形態の情報処理装置2は、プロセッサ10bがOS1からOS2に属性の切り替えを行う際には、切替許可部45が、周辺回路20での処理待ちデータの数に応じて、属性の切り替えの要求を行うタイミングを調整することができる。プロセッサ10bは、処理待ちデータの数が所定の数以下になった場合に、属性の切り替え処理を実行することによって、属性切替制御部41に対して属性切替許可要求を行ってから、属性切替が許可されるまでの時間を短縮できるため、処理を効率よく行うことができる。
<3.実施の形態3>
<3-1.概要>
本実施の形態では、プロセッサが属性を切り替える際に、切替許可部45bに出力許可を要求する第1モードと、切替許可部45bに出力許可を要求しない第2モードとのどちらの処理モードであるかを判定するモード判定部46をアクセス制御装置40cに備えた情報処理装置3について説明する。なお、第1、第2モードのどちらの処理モードであるのかを判定する処理を「モード判定処理」と呼ぶ。 <2-4. Summary>
In the
<3.
<3-1. Overview>
In the present embodiment, when the processor switches attributes, the processing mode is either the first mode in which output permission is requested from the switching
実施の形態2では、処理待ちコマンドの数が所定の数以下になるタイミングで属性切替の要求を行うことでプロセッサ10bの利用効率の低下を抑制する情報処理装置2の例を示した。
In the second embodiment, the example of the information processing apparatus 2 that suppresses the decrease in the utilization efficiency of the processor 10b by requesting attribute switching at the timing when the number of commands waiting to be processed becomes a predetermined number or less is shown.
しかし、周辺回路20が、処理待ちデータが多く発生しないような処理、例えば、デバイス30のデータを頻繁に参照しながら行うような処理ではなく、処理の最初にデバイス30のデータを読出して周辺回路20の内部で演算する処理を行うような専用の回路である場合には、切替許可部45bに、出力許可の要求を行う必要性は低い。なぜなら、このような場合、プロセッサ10bが属性を切り替えようとしたときの周辺回路20での処理状態が、処理待ちコマンドの数が予め定めた所定の数を超えている状態である可能性が低い。このため、切替許可部45に出力許可の要求を行わずに属性切替制御部41に属性切替許可要求を行った方が、切替許可部45に出力許可の要求を行わない分、属性切替の処理がスムーズに行うことができる場合が多いと考えられるからである。
However, the peripheral circuit 20 is not a process in which a large amount of processing-waiting data is not generated, for example, a process that is performed while frequently referring to the data of the device 30, but the data of the device 30 is read at the beginning of the process. In the case of a dedicated circuit that performs processing performed inside 20, there is little need to request output permission to the switching permission unit 45b. This is because in such a case, it is unlikely that the processing state in the peripheral circuit 20 when the processor 10b attempts to switch the attribute is a state in which the number of commands waiting for processing exceeds a predetermined number. . For this reason, attribute switching processing is performed in the case where an attribute switching permission request is made to the attribute switching control unit 41 without making an output permission request to the switching permission unit 45, so that an output permission request is not made to the switching permission unit 45. This is because it is considered that there are many cases where this can be performed smoothly.
そこで、情報処理装置3では、情報処理装置3で実行させる処理に応じてユーザが予め第1モード、第2モードのどちらの処理モードであるかをモード記憶部47に設定できるようにし、プロセッサが属性切替の要求を行う際に、モード記憶部47の設定内容に基づいてどちらの処理モードあるかをモード判定部46が判定する。このようにすることで、プロセッサで実行する処理に応じた適切な処理モードで、属性切替の要求に対する処理を行うことができる。また、アクセス制御装置40cは、第2モードで動作する場合、切替許可部45bの機能を停止させることができ、消費電力を削減できる。
Therefore, the information processing device 3 allows the user to set in advance in the mode storage unit 47 whether the processing mode is the first mode or the second mode according to the processing to be executed by the information processing device 3, and the processor When making a request for attribute switching, the mode determination unit 46 determines which processing mode is present based on the setting content of the mode storage unit 47. By doing in this way, it is possible to perform the processing for the attribute switching request in an appropriate processing mode according to the processing executed by the processor. Further, when operating in the second mode, the access control device 40c can stop the function of the switching permission unit 45b and reduce power consumption.
以下、実施の形態2と同じ構成については同じ符号を用い、実施の形態2と異なる点を重点的に説明する。
Hereinafter, the same components as those in the second embodiment are denoted by the same reference numerals, and differences from the second embodiment will be mainly described.
<3-2.構成>
図10は、情報処理装置3の構成を示す図である。 <3-2. Configuration>
FIG. 10 is a diagram illustrating a configuration of theinformation processing apparatus 3.
図10は、情報処理装置3の構成を示す図である。 <3-2. Configuration>
FIG. 10 is a diagram illustrating a configuration of the
情報処理装置3は、情報処理装置2と基本的には同じ構成であるが、情報処理装置2と比較して、アクセス制御装置に更にモード判定部46とモード記憶部47を備える点で異なる。
The information processing device 3 has basically the same configuration as the information processing device 2, but differs from the information processing device 2 in that the access control device further includes a mode determination unit 46 and a mode storage unit 47.
アクセス制御装置40bにモード判定部46とモード記憶部47を加えたアクセス制御装置をアクセス制御装置40cとする。
The access control device obtained by adding the mode determination unit 46 and the mode storage unit 47 to the access control device 40b is defined as an access control device 40c.
また、プロセッサ10bの代わりにプロセッサ10bの機能を拡張したプロセッサ10cを備える。
Further, instead of the processor 10b, a processor 10c having an expanded function of the processor 10b is provided.
プロセッサ10cは、属性切替制御部41へ属性切替許可要求を行う前に、切替許可部45ではなくモード判定部46に対して、出力許可の要求を行い、第1モードの場合には切替許可部45bからモード判定部46を介して、第2モードの場合にはモード判定部46から、出力許可を受け取る機能を備える。
Before making the attribute switching permission request to the attribute switching control unit 41, the processor 10c makes a request for output permission to the mode determination unit 46 instead of the switching permission unit 45, and in the case of the first mode, the switching permission unit. In the case of the second mode, a function of receiving an output permission from the mode determination unit 46 via the mode determination unit 46 from 45b is provided.
周辺回路20、デバイス30は、実施の形態2と同じ構成である。
(アクセス制御装置40c)
アクセス制御装置40cは、アクセス制御装置40bの構成に加えて、モード判定部46、モード記憶部47を備える。 Theperipheral circuit 20 and the device 30 have the same configuration as in the second embodiment.
(Access control device 40c)
Theaccess control device 40c includes a mode determination unit 46 and a mode storage unit 47 in addition to the configuration of the access control device 40b.
(アクセス制御装置40c)
アクセス制御装置40cは、アクセス制御装置40bの構成に加えて、モード判定部46、モード記憶部47を備える。 The
(
The
アクセス制御装置40cは、集積回路である。
The access control device 40c is an integrated circuit.
モード判定部46、モード記憶部47以外の構成は、アクセス制御装置40bと基本的に同じである。
The configuration other than the mode determination unit 46 and the mode storage unit 47 is basically the same as that of the access control device 40b.
ただし、切替許可部45の代わりに切替許可部45の機能を拡張した切替許可部45bを備える。
However, instead of the switching permission unit 45, a switching permission unit 45b obtained by expanding the function of the switching permission unit 45 is provided.
切替許可部45bは、切替許可部45の機能に加えて、モード判定部46が第1モードと判定した場合にプロセッサ10cから出力許可の要求を受け付ける機能を備える。
In addition to the function of the switching permission unit 45, the switching permission unit 45b has a function of receiving an output permission request from the processor 10c when the mode determination unit 46 determines the first mode.
モード判定部46は、プロセッサ10cから出力許可の要求を受け取った場合に、後述するモード記憶部47に記憶されている情報に基づき、処理モードが第1モードであるか第2モードであるかを判定する機能を備える。また、第1モードと判定した場合には、プロセッサ10cから受け取った出力許可の要求を切替許可部45bに出力し、第2モードと判定した場合には、プロセッサ10cに対して出力許可を行う機能を備える。
When the mode determination unit 46 receives an output permission request from the processor 10c, the mode determination unit 46 determines whether the processing mode is the first mode or the second mode based on information stored in a mode storage unit 47 described later. A function to determine is provided. When it is determined that the mode is the first mode, the output permission request received from the processor 10c is output to the switching permission unit 45b. When it is determined that the mode is the second mode, the processor 10c is permitted to output the function. Is provided.
なお、モード判定部46の機能は、アクセス制御装置40cである集積回路に記憶されているプログラムを集積回路内部のプロセッサが実行することで実現される。
Note that the function of the mode determination unit 46 is realized by a processor stored in the integrated circuit serving as the access control device 40c being executed by a processor inside the integrated circuit.
モード記憶部47は、不揮発性のメモリであり、プロセッサ10cが、OS1で実行する処理からOS2で実行する処理に切り替える際に、出力許可の要求を切替許可部45bに行う第1モードと、出力許可の要求を切替許可部45bに行わない第2モードとのどちらの処理モードであるかを示すモード情報を記憶する機能を備える。このモード情報の設定は、ユーザが情報処理装置3に処理を実行させる前に、例えば、情報処理装置に備えたキーボード等の入力装置を用いて、設定用コマンドを入力することで設定する。どちらの処理モードで動作するかを示す情報は、具体的には、例えば、1ビットの情報であり、「0」の場合には、第1モード、「1」の場合には第2モードを表す。
The mode storage unit 47 is a non-volatile memory, and when the processor 10c switches from the process executed by the OS1 to the process executed by the OS2, the first mode in which an output permission request is made to the switching permission unit 45b, and the output A function of storing mode information indicating which processing mode is in the second mode in which no permission request is made to the switching permission unit 45b is provided. The mode information is set by inputting a setting command using, for example, an input device such as a keyboard provided in the information processing apparatus before the user causes the information processing apparatus 3 to execute processing. The information indicating in which processing mode the operation is specifically, for example, is 1-bit information. In the case of “0”, the first mode is selected. In the case of “1”, the second mode is selected. To express.
<3-3.動作>
ここでは、上記の構成を備えた情報処理装置3の処理動作について説明する。 <3-3. Operation>
Here, the processing operation of theinformation processing apparatus 3 having the above configuration will be described.
ここでは、上記の構成を備えた情報処理装置3の処理動作について説明する。 <3-3. Operation>
Here, the processing operation of the
情報処理装置3では、プロセッサ10cがOS1で実行する処理からOS2で実行する処理に切り替える際に、判定部46は、アクセス制御装置40cの処理モードが第1モードであるか、第2モードであるかの判定を行う。アクセス制御装置40cは、処理モードが第1モードの場合、実施の形態2で説明した処理と同様の処理を行い、第2モードの場合、実施の形態1で説明した処理と同様の処理を行う。
In the information processing device 3, when the processor 10 c switches from the processing executed by the OS 1 to the processing executed by the OS 2, the determination unit 46 determines whether the processing mode of the access control device 40 c is the first mode or the second mode. Judgment is made. When the processing mode is the first mode, the access control device 40c performs the same processing as that described in the second embodiment, and in the second mode, performs the same processing as that described in the first embodiment. .
以下、モード判定処理の動作について説明する。
Hereinafter, the operation of the mode determination process will be described.
図11は、アクセス制御装置40cにおけるモード判定処理の動作を示すフローチャートである。
FIG. 11 is a flowchart showing the operation of the mode determination process in the access control device 40c.
モード判定部46は、出力許可の要求をプロセッサ10cから受け取る(ステップS40)。
The mode determination unit 46 receives an output permission request from the processor 10c (step S40).
次に、モード判定部46は、モード記憶部に記憶している処理モードを示す情報の値を読み出す(ステップS41)。
Next, the mode determination unit 46 reads the value of information indicating the processing mode stored in the mode storage unit (step S41).
読み出した処理モードを示す情報の値に基づいて、モード判定部46は、第1モードであるか第2モードであるかを判定する(ステップS42)。具体的には、読み出した値が「0」であれば第1モードと判定し、そうでなければ第2モードと判定する。
Based on the value of the information indicating the read processing mode, the mode determination unit 46 determines whether the mode is the first mode or the second mode (step S42). Specifically, if the read value is “0”, the first mode is determined, and if not, the second mode is determined.
ステップS42で第1モードでないと判定(ステップS42:NO)した場合には、モード判定部46は、プロセッサ10cに対して出力許可を行い、プロセッサ10cは、図4のSTART(A)の処理を行う。
When it is determined in step S42 that the mode is not the first mode (step S42: NO), the mode determination unit 46 permits the output to the processor 10c, and the processor 10c performs the processing of START (A) in FIG. Do.
一方、ステップS42で第1モードと判定(ステップS42:YES)した場合には、モード判定部46は、出力許可の要求を切替許可部45bに出力する(ステップS43)。
On the other hand, if the first mode is determined in step S42 (step S42: YES), the mode determination unit 46 outputs an output permission request to the switching permission unit 45b (step S43).
切替許可部45bは、状態取得部43bから、周辺回路20の処理待ちデータの数を取得する(ステップS44)。具体的な取得方法は、図4のステップS13における方法と同じである。
The switching permission unit 45b acquires the number of data waiting for processing of the peripheral circuit 20 from the state acquisition unit 43b (step S44). A specific acquisition method is the same as the method in step S13 of FIG.
切替許可部45bは、状態取得部43bから取得した処理待ちデータの数と、内部のメモリに予め記憶している閾値と比較する(ステップS45)。処理待ちデータの数が閾値より大きい場合(ステップS45:NO)、ステップS44から処理を繰り返す。一方、処理待ちデータの数が閾値以下の場合(ステップS45:YES)、プロセッサ10cに、属性切替許可要求を属性切替制御部41に出力する許可の情報を出力する(ステップS46)。
The switching permission unit 45b compares the number of processing-waiting data acquired from the state acquisition unit 43b with a threshold value stored in advance in an internal memory (step S45). If the number of data waiting for processing is larger than the threshold (step S45: NO), the processing is repeated from step S44. On the other hand, when the number of data waiting to be processed is equal to or smaller than the threshold (step S45: YES), permission information for outputting an attribute switching permission request to the attribute switching control unit 41 is output to the processor 10c (step S46).
プロセッサ10cは、切替許可部45bから出力許可を受け取ったら、図4のSTART(A)の処理を続けて行う。
When the processor 10c receives the output permission from the switching permission unit 45b, the processor 10c continues the processing of START (A) in FIG.
<3-4.まとめ>
本実施の形態の情報処理装置3は、プロセッサ10cが属性を切り替える前に、出力許可の要求を切替許可部45bに対して行う第1モードであるか、出力許可の要求を行わずに、属性切替制御部41に属性切替許可要求を行う第2モードであるかを、モード判定部が判定する。このため、例えば、処理待ちデータが多く発生しないような処理を行う場合には、第2モードに予め設定することにより、切替許可部45bでの処理を省略することができる。また、処理待ちデータが多く発生するような処理を行う場合には、第1モードに設定することにより、プロセッサ10cの属性の切替処理における待機時間を短縮することができる。
<4.変形例>
以上、本発明の実施の形態を説明したが、例示した情報処理装置を以下のように変形することも可能であり、本発明が上記の実施の形態で示した通りの情報処理装置に限られないことは勿論である。
(1)実施の形態では、プロセッサ10は、2つのOSを切り替えて処理を実行するものとして、その属性を示す情報はOSを識別する情報とした。しかし、切り替えるOSは複数あってもよいし、プロセッサ10の処理を示す属性はOSを識別する情報でなくてもよい。複数の属性毎にデバイス30へのアクセス領域が制限されている場合の属性を識別できる情報であればよい。 <3-4. Summary>
Theinformation processing apparatus 3 according to the present embodiment is in the first mode in which the output permission request is made to the switching permission unit 45b before the processor 10c switches the attribute, or the attribute is not requested. The mode determination unit determines whether the second mode in which an attribute switching permission request is made to the switching control unit 41. For this reason, for example, when processing that does not generate a large amount of processing-waiting data is performed, the processing in the switching permission unit 45b can be omitted by setting the second mode in advance. Further, when performing processing that generates a lot of processing-waiting data, the standby time in the attribute switching process of the processor 10c can be shortened by setting the first mode.
<4. Modification>
Although the embodiment of the present invention has been described above, the illustrated information processing apparatus can be modified as follows, and the present invention is limited to the information processing apparatus as described in the above embodiment. Of course not.
(1) In the embodiment, theprocessor 10 executes processing by switching between two OSs, and the information indicating the attribute is information for identifying the OS. However, there may be a plurality of OSs to be switched, and the attribute indicating the processing of the processor 10 may not be information for identifying the OS. Any information may be used as long as it can identify the attribute when the access area to the device 30 is restricted for each of the plurality of attributes.
本実施の形態の情報処理装置3は、プロセッサ10cが属性を切り替える前に、出力許可の要求を切替許可部45bに対して行う第1モードであるか、出力許可の要求を行わずに、属性切替制御部41に属性切替許可要求を行う第2モードであるかを、モード判定部が判定する。このため、例えば、処理待ちデータが多く発生しないような処理を行う場合には、第2モードに予め設定することにより、切替許可部45bでの処理を省略することができる。また、処理待ちデータが多く発生するような処理を行う場合には、第1モードに設定することにより、プロセッサ10cの属性の切替処理における待機時間を短縮することができる。
<4.変形例>
以上、本発明の実施の形態を説明したが、例示した情報処理装置を以下のように変形することも可能であり、本発明が上記の実施の形態で示した通りの情報処理装置に限られないことは勿論である。
(1)実施の形態では、プロセッサ10は、2つのOSを切り替えて処理を実行するものとして、その属性を示す情報はOSを識別する情報とした。しかし、切り替えるOSは複数あってもよいし、プロセッサ10の処理を示す属性はOSを識別する情報でなくてもよい。複数の属性毎にデバイス30へのアクセス領域が制限されている場合の属性を識別できる情報であればよい。 <3-4. Summary>
The
<4. Modification>
Although the embodiment of the present invention has been described above, the illustrated information processing apparatus can be modified as follows, and the present invention is limited to the information processing apparatus as described in the above embodiment. Of course not.
(1) In the embodiment, the
例えば、プロセッサ10が異なるプロセスで複数の処理を実行しており、プロセス毎に
デバイス30へのアクセス領域が制限されているには、属性は、プロセスを識別するための情報を用いればよい。
(2)実施の形態2における切替許可部45の処理において、切替許可部45は、処理待ちデータの数が所定の数以下になるまで、属性切替許可要求を属性切替制御部へ行うことの許可をしないとしたが、プロセッサ10bが出力許可の要求を切替許可部45へ行ってから一定時間が経過すると、処理待ちデータの数が所定の数以下にならなくても許可するようにしてもよい。なお、この場合の切替許可部45は内部にタイマーを備えており、このタイマーで、プロセッサ10から出力許可の要求を受けてからの経過時間を計測する。 For example, if theprocessor 10 executes a plurality of processes in different processes and the access area to the device 30 is limited for each process, information for identifying the process may be used as the attribute.
(2) In the processing of the switchingpermission unit 45 in the second embodiment, the switching permission unit 45 permits the attribute switching permission request to be sent to the attribute switching control unit until the number of data waiting to be processed becomes a predetermined number or less. However, after a certain period of time has elapsed since the processor 10b made a request for permission to output to the switching permission unit 45, it may be permitted even if the number of data waiting for processing does not fall below a predetermined number. . Note that the switching permission unit 45 in this case has a timer inside, and this timer measures an elapsed time after receiving an output permission request from the processor 10.
デバイス30へのアクセス領域が制限されているには、属性は、プロセスを識別するための情報を用いればよい。
(2)実施の形態2における切替許可部45の処理において、切替許可部45は、処理待ちデータの数が所定の数以下になるまで、属性切替許可要求を属性切替制御部へ行うことの許可をしないとしたが、プロセッサ10bが出力許可の要求を切替許可部45へ行ってから一定時間が経過すると、処理待ちデータの数が所定の数以下にならなくても許可するようにしてもよい。なお、この場合の切替許可部45は内部にタイマーを備えており、このタイマーで、プロセッサ10から出力許可の要求を受けてからの経過時間を計測する。 For example, if the
(2) In the processing of the switching
実施の形態2では、プロセッサ10bの待機時間をできるだけ短縮するために、周辺回路20の処理状態が、処理待ちデータの数が所定の数以下の状態である場合に、属性切替許可要求を属性切替制御部に対して行うようにした。ところが、プロセッサ10bは、OS1で実行する処理からOS2で実行する処理に切り替えるために、出力許可の要求をするのだから、迅速に属性切替が行えることが求められる。しかし、実施の形態2のように、OS1での処理を実行している状態では、周辺回路20での処理待ちデータの数が所定の数以下にならないため、プロセッサ10bは、出力許可を得られず、迅速に属性切替許可要求を属性切替制御部41に行えないおそれがある。
In the second embodiment, in order to shorten the waiting time of the processor 10b as much as possible, when the processing state of the peripheral circuit 20 is a state where the number of data waiting for processing is equal to or less than a predetermined number, the attribute switching permission request is changed to the attribute switching. This is done for the control unit. However, since the processor 10b requests output permission in order to switch from the process executed by the OS 1 to the process executed by the OS 2, it is required that the attribute can be quickly switched. However, as in the second embodiment, in the state in which the processing in OS1 is being executed, the number of data waiting for processing in the peripheral circuit 20 does not become a predetermined number or less, so the processor 10b can obtain the output permission. Therefore, there is a possibility that the attribute switching permission request cannot be made to the attribute switching control unit 41 quickly.
そこで、本変形例では、プロセッサ10bが、出力許可の要求を切替許可部45に対して行ってから一定時間が経過したら、周辺回路20での処理待ちデータの数が所定の数以下にならなくても、プロセッサ10bに対して出力許可を行うことで、プロセッサ10bが属性切替制御部41に対して属性切替許可要求を行い得る。
Therefore, in this modification, the number of data waiting to be processed in the peripheral circuit 20 does not become a predetermined number or less after a predetermined time has elapsed since the processor 10b made a request for output permission to the switching permission unit 45. However, the processor 10b can make an attribute switching permission request to the attribute switching control unit 41 by permitting output to the processor 10b.
以下、本変形例における切替許可部45の動作を説明する。
Hereinafter, the operation of the switching permission unit 45 in this modification will be described.
図12に、切替許可部45が、一定時間経過後に出力許可をプロセッサ10bに対して行う処理のフローチャートを示す。
FIG. 12 shows a flowchart of processing in which the switching permission unit 45 performs output permission to the processor 10b after a predetermined time has elapsed.
同図のステップS50、ステップS51、ステップS53の動作は、それぞれ図9のステップS30、ステップS31、ステップS33と同じなので説明を省略する。
The operations in step S50, step S51, and step S53 in the figure are the same as those in step S30, step S31, and step S33 in FIG.
切替許可部45は、処理待ちデータの数が所定の数以下である(ステップS52:YES)場合は、ステップS53の処理を行う。
The switching permission unit 45 performs the process of step S53 when the number of data waiting to be processed is equal to or less than the predetermined number (step S52: YES).
一方、切替許可部45は、処理待ちデータの数が所定の数以下でない(ステップS52:NO)場合、経過時間を予め定められた所定の時間と比較し、予め定められた所定の時間以上経過しているか否かを判定する(ステップS54)。ステップS54でNOの場合、ステップS51からの処理を繰り返す。
On the other hand, when the number of data waiting to be processed is not less than or equal to the predetermined number (step S52: NO), the switching permission unit 45 compares the elapsed time with a predetermined time, and elapses over a predetermined time. It is determined whether or not (step S54). If NO in step S54, the processing from step S51 is repeated.
一方、ステップS54でYESの場合、切替許可部45は、属性切替許可要求を属性切替制御部41に対して行うことをプロセッサ10に許可する(ステップS53)。
On the other hand, if YES in step S54, the switching permission unit 45 permits the processor 10 to make an attribute switching permission request to the attribute switching control unit 41 (step S53).
以上の処理を行うことによって、処理待ちデータが所定の数以下にならないときでも、プロセッサ10bは、出力許可の要求を行ってから一定時間経過後は、切替許可部45bから出力許可を得ることができるので、属性切替許可要求を属性切替制御部41に対して行うことができる。
By performing the above processing, the processor 10b can obtain the output permission from the switching permission unit 45b after a predetermined time has elapsed since the request for permission to output even when the data waiting for processing does not become a predetermined number or less. Therefore, an attribute switching permission request can be made to the attribute switching control unit 41.
また、実施の形態3においても同様に、第1モードの場合に、一定時間が経過すると、処理待ちデータの数が所定の数以下にならなくても許可するようにしてもよい。
Similarly, in the third embodiment, in the first mode, when a certain time has elapsed, the number of data waiting to be processed may be permitted even if it does not become a predetermined number or less.
なお、この場合の切替許可部45bは、内部にタイマーを備えており、このタイマーで、プロセッサ10から属性切替許可要求を属性切替制御部41に対して行うことの許可要求を受けてからの経過時間を計測する。
Note that the switching permission unit 45b in this case has a timer therein, and the elapsed time since receiving a permission request to the attribute switching control unit 41 from the processor 10 for the attribute switching permission request. Measure time.
図13に、情報処理装置3の動作状態が第1モードの場合に、一定時間経過後に出力許可をプロセッサ10cに対して行う処理のフローチャートを示す。
FIG. 13 shows a flowchart of processing for permitting output to the processor 10c after a predetermined time has elapsed when the operation state of the information processing apparatus 3 is in the first mode.
同図のステップS60~S63、ステップS64~S66の処理はそれぞれ図11のステップS40~S43、ステップS44~S46の処理と同じなので説明を省略する。
Since the processes in steps S60 to S63 and steps S64 to S66 in FIG. 11 are the same as the processes in steps S40 to S43 and steps S44 to S46 in FIG.
ステップS65でNOの場合に、切替許可部45bは、経過時間を予め定められた所定の時間と比較し、予め定められた所定の時間以上経過しているか否かを判定する(ステップS67)。ステップS67でNOの場合、ステップS64からの処理を繰り返す。
If NO in step S65, the switching permission unit 45b compares the elapsed time with a predetermined time, and determines whether or not a predetermined time or more has elapsed (step S67). If NO in step S67, the processing from step S64 is repeated.
一方、ステップS67でYESの場合、切替許可部45bは、ステップS66の処理を行う。
On the other hand, if YES in step S67, the switching permission unit 45b performs the process of step S66.
以上の処理を行うことによって、情報処理装置3においても、情報処理装置2と同様に、処理待ちデータが所定の数以下にならないときでも、プロセッサ10cは、出力許可の要求を行ってから一定時間経過後は、切替許可部45bから出力許可を得ることができるので、属性切替許可要求を属性切替制御部41に対して行うことができる。
(3)実施の形態の情報処理装置1~3では、1つの周辺回路について説明を行ったが、周辺回路は複数あってもよい。 By performing the above processing, in theinformation processing apparatus 3 as well as in the information processing apparatus 2, the processor 10c does not wait for a predetermined number of processing waits until the output of the output is requested for a certain period of time. Since the output permission can be obtained from the switching permission unit 45b after the lapse, the attribute switching permission request can be made to the attribute switching control unit 41.
(3) In theinformation processing apparatuses 1 to 3 of the embodiment, one peripheral circuit has been described, but there may be a plurality of peripheral circuits.
(3)実施の形態の情報処理装置1~3では、1つの周辺回路について説明を行ったが、周辺回路は複数あってもよい。 By performing the above processing, in the
(3) In the
プロセッサが複数の周辺回路に依頼をして、複数の周辺回路が処理を行う場合には、状態取得部は、全ての周辺回路での処理待ちデータの数を取得し、属性切替制御部は、全ての周辺回路の処理待ちデータが0になると、プロセッサに属性切替を許可するとしてもよい。
When the processor makes a request to a plurality of peripheral circuits and the plurality of peripheral circuits perform processing, the state acquisition unit acquires the number of data waiting for processing in all the peripheral circuits, and the attribute switching control unit When the processing waiting data of all the peripheral circuits becomes 0, the processor may be allowed to switch the attribute.
また、複数の周辺回路がある場合、実施の形態2,3における切替許可部が取得する処理待ちデータの数は、全ての周辺回路における処理待ちデータの合計であり、この合計が所定数以下になった場合に出力許可をおこなうものとしてもよい。
(4)実施の形態1~3では、プロセッサから属性切替許可要求を受け取った属性切替制御部41は、周辺回路20のバッファ300に格納されている処理待ちデータから生成されるアクセスコマンドを全て出力させ、処理待ちデータが0になった場合に属性切替の許可を行うとしたが、アクセスコマンドを全て出力させることに限らない。アクセスコマンドが、異なる属性で生成されアクセス制御部44に出力されなければよいので、例えば、属性切替制御部41は、周辺回路20に処理を中止させ、アクセスコマンドの出力を停止したことで属性切替の許可を行ってもよい。この場合、周辺回路20は、バッファ300に格納されていた処理待ちデータのどこまで処理を行ったかの情報等をプロセッサ10に出力し、プロセッサ10が再びOS1で実行する処理に切り替えたときに中断した処理を続きから再開できるようにしてもよい。
(5)実施の形態の情報処理装置1~3では、属性切替制御部41が、プロセッサに対して属性切替の許可を行い、プロセッサが処理を切り替え、属性記憶部42の属性値を更新するとしたが、属性の切替の手順はこれに限らない。処理待ちデータが無くなった場合に、属性の切替が行えればよいので、例えば、属性切替制御部41が、属性記憶部42の属性値を更新し、更新が完了したことをプロセッサに通知した後、プロセッサが処理を切り替えるようにしてもよい。
(6)実施の形態の情報処理装置1では、状態取得部43は、周辺回路20から処理待ちデータの数を取得するとしたが、状態取得部43で取得するのは、アクセスコマンドの数に限らない。処理待ちデータが無くなったことが取得できればよいので、例えば、処理待ちデータがあるかないかの情報を得るようにしてもよい。周辺回路20は、処理待ちデータが無くなったことを示す情報を、状態取得部43に出力し、状態取得部43は、処理待ちデータがないことを示す情報を受け取った場合に、プロセッサ10に属性切替を許可する。 In addition, when there are a plurality of peripheral circuits, the number of processing waiting data acquired by the switching permission unit in the second and third embodiments is the sum of the processing waiting data in all the peripheral circuits, and this sum is equal to or less than a predetermined number. In such a case, output permission may be performed.
(4) In the first to third embodiments, the attribute switchingcontrol unit 41 that has received the attribute switching permission request from the processor outputs all the access commands generated from the processing waiting data stored in the buffer 300 of the peripheral circuit 20. The attribute switching is permitted when the processing-waiting data becomes 0, but it is not limited to outputting all access commands. Since the access command does not have to be generated with different attributes and output to the access control unit 44, for example, the attribute switching control unit 41 causes the peripheral circuit 20 to stop processing and stops the output of the access command. May be permitted. In this case, the peripheral circuit 20 outputs to the processor 10 information on how far the processing-waiting data stored in the buffer 300 has been processed, and the processing interrupted when the processor 10 switches to processing executed by the OS 1 again. May be resumed from the continuation.
(5) In theinformation processing apparatuses 1 to 3 according to the embodiment, the attribute switching control unit 41 permits the attribute switching to the processor, the processor switches the process, and updates the attribute value in the attribute storage unit 42. However, the attribute switching procedure is not limited to this. For example, after the attribute switching control unit 41 updates the attribute value in the attribute storage unit 42 and notifies the processor that the update has been completed, it is only necessary that the attribute can be switched when there is no processing waiting data. The processor may switch processing.
(6) In theinformation processing apparatus 1 according to the embodiment, the state acquisition unit 43 acquires the number of data waiting for processing from the peripheral circuit 20, but the state acquisition unit 43 acquires only the number of access commands. Absent. Since it is only necessary to acquire that there is no processing waiting data, for example, information regarding whether or not there is processing waiting data may be obtained. The peripheral circuit 20 outputs information indicating that there is no processing waiting data to the state acquisition unit 43, and when the state acquisition unit 43 receives information indicating that there is no processing waiting data, the peripheral circuit 20 sends an attribute to the processor 10. Allow switching.
(4)実施の形態1~3では、プロセッサから属性切替許可要求を受け取った属性切替制御部41は、周辺回路20のバッファ300に格納されている処理待ちデータから生成されるアクセスコマンドを全て出力させ、処理待ちデータが0になった場合に属性切替の許可を行うとしたが、アクセスコマンドを全て出力させることに限らない。アクセスコマンドが、異なる属性で生成されアクセス制御部44に出力されなければよいので、例えば、属性切替制御部41は、周辺回路20に処理を中止させ、アクセスコマンドの出力を停止したことで属性切替の許可を行ってもよい。この場合、周辺回路20は、バッファ300に格納されていた処理待ちデータのどこまで処理を行ったかの情報等をプロセッサ10に出力し、プロセッサ10が再びOS1で実行する処理に切り替えたときに中断した処理を続きから再開できるようにしてもよい。
(5)実施の形態の情報処理装置1~3では、属性切替制御部41が、プロセッサに対して属性切替の許可を行い、プロセッサが処理を切り替え、属性記憶部42の属性値を更新するとしたが、属性の切替の手順はこれに限らない。処理待ちデータが無くなった場合に、属性の切替が行えればよいので、例えば、属性切替制御部41が、属性記憶部42の属性値を更新し、更新が完了したことをプロセッサに通知した後、プロセッサが処理を切り替えるようにしてもよい。
(6)実施の形態の情報処理装置1では、状態取得部43は、周辺回路20から処理待ちデータの数を取得するとしたが、状態取得部43で取得するのは、アクセスコマンドの数に限らない。処理待ちデータが無くなったことが取得できればよいので、例えば、処理待ちデータがあるかないかの情報を得るようにしてもよい。周辺回路20は、処理待ちデータが無くなったことを示す情報を、状態取得部43に出力し、状態取得部43は、処理待ちデータがないことを示す情報を受け取った場合に、プロセッサ10に属性切替を許可する。 In addition, when there are a plurality of peripheral circuits, the number of processing waiting data acquired by the switching permission unit in the second and third embodiments is the sum of the processing waiting data in all the peripheral circuits, and this sum is equal to or less than a predetermined number. In such a case, output permission may be performed.
(4) In the first to third embodiments, the attribute switching
(5) In the
(6) In the
更に、周辺回路20にバッファ300を設けない構成にしてもよい。バッファ300を設けない場合は、周辺回路20は実行中の処理が完了したときに、処理待ちデータが無くなったことを示す情報を状態取得部43に出力すればよい。
(7)実施の形態において説明した各処理(図4、図5、図9、図11、図12、図13で示す処理)をアクセス制御装置に実行させるための制御プログラムを、記録媒体に記録し又は各種通信路等を介して、流通させ頒布することもできる。このような記録媒体には、ICカード、ハードディスク、光ディスク、フレキシブルディスク、ROM、フラッシュメモリ等がある。流通、頒布された制御プログラムは、機器におけるプロセッサ10、10b、10cと異なるプロセッサで読み取り可能なメモリ等に格納されることにより利用に供され、そのアクセス制御装置がその制御プログラムを実行することにより実施の形態で示した各機能が実現される。
(8)実施の形態において説明したアクセス制御装置の属性切替制御部、状態取得部、アクセス制御部、切替許可部の構成要素のうち、全部又は一部を1チップ又は複数チップの集積回路で実現してもよい。また、これらの構成要素の機能の一部又は全部をコンピュータのプログラムで実現してもよいし、その他どのような形態で実現してもよい。
(9)上記の実施の形態及び上記の変形例を適宜組み合わせてもよい。
<4.補足>
以下、更に本発明の一実施形態としてのアクセス制御装置、及びその変形例と効果について説明する。
(1)本発明の一態様である情報処理装置は、プロセッサ及び周辺回路からアクセスされるアクセス対象装置を備える情報処理装置であって、属性の異なる複数の内部処理を切り替えて実行し、前記アクセス対象装置にアクセスする際には、前記属性を識別するための属性値とアクセス内容指示の情報とを含むアクセスコマンドを生成するプロセッサと、 前記プロセッサで実行中の内部処理の属性を示す属性情報を記憶するための属性記憶部と、前記プロセッサから、前記アクセス対象装置へのアクセスを含む処理をすべき旨の指示を受け付け、前記アクセス対象装置にアクセスする際には、前記属性記憶部の前記属性情報を参照し、属性値とアクセス内容指示の情報とを含むアクセスコマンドを生成する周辺回路と、前記プロセッサ及び前記周辺回路それぞれが生成したアクセスコマンドを受け付け、当該アクセスコマンドの属性値で示される属性とアクセス内容指示の情報との対応関係に応じて、前記アクセス対象装置に対するアクセスの抑制制御を行うアクセス制御部と、前記プロセッサからの属性切替許可要求を受け付けた場合に、前記周辺回路に、前記プロセッサから受け付けた処理に係る出力されていないアクセスコマンドを前記アクセス制御部へ出力させ、当該アクセスコマンドの出力が完了すると前記プロセッサに属性切替を許可する属性切替制御部とを備え、前記プロセッサは、内部処理を切り替える際に、前記属性切替制御部に対して、前記属性切替許可要求を行い、前記属性切替制御部から前記属性切替の許可を得た場合に内部処理を切り替え、前記属性記憶部の前記属性情報を更新する。 Furthermore, thebuffer circuit 300 may not be provided in the peripheral circuit 20. When the buffer 300 is not provided, the peripheral circuit 20 may output information indicating that there is no processing waiting data to the state acquisition unit 43 when the processing being executed is completed.
(7) A control program for causing the access control apparatus to execute each process described in the embodiment (the process shown in FIGS. 4, 5, 9, 11, 12, and 13) is recorded on a recording medium. Or can be distributed and distributed via various communication channels. Such a recording medium includes an IC card, a hard disk, an optical disk, a flexible disk, a ROM, a flash memory, and the like. The distributed and distributed control program is used by being stored in a memory or the like that can be read by a processor different from the processors 10, 10b, and 10c in the device, and the access control device executes the control program. Each function shown in the embodiment is realized.
(8) All or some of the constituent elements of the attribute switching control unit, the state acquisition unit, the access control unit, and the switching permission unit of the access control device described in the embodiment are realized by an integrated circuit of one chip or a plurality of chips. May be. In addition, some or all of the functions of these components may be realized by a computer program, or in any other form.
(9) You may combine said embodiment and said modification suitably suitably.
<4. Supplement>
Hereinafter, an access control apparatus as one embodiment of the present invention, and its modifications and effects will be described.
(1) An information processing apparatus according to one aspect of the present invention is an information processing apparatus including an access target device accessed from a processor and a peripheral circuit, and executes a plurality of internal processes with different attributes by switching between the access processing devices. When accessing a target device, a processor that generates an access command including an attribute value for identifying the attribute and access content instruction information, and attribute information indicating an attribute of an internal process being executed by the processor An attribute storage unit for storing and an instruction to perform processing including access to the access target device from the processor, and when accessing the access target device, the attribute of the attribute storage unit A peripheral circuit that references the information and generates an access command including an attribute value and access content instruction information; An access control unit that receives an access command generated by each peripheral circuit and performs access suppression control on the access target device according to a correspondence relationship between the attribute indicated by the attribute value of the access command and the access content instruction information When the attribute switching permission request from the processor is received, the peripheral circuit is caused to output an access command that is not output related to the processing received from the processor to the access control unit, and the output of the access command is An attribute switching control unit that permits the processor to switch attributes when the processing is completed, and when the processor switches internal processing, the processor makes the attribute switching permission request to the attribute switching control unit, and the attribute switching control Switch the internal processing when the permission to switch the attribute is obtained from the Updating the attribute information of the parts.
(7)実施の形態において説明した各処理(図4、図5、図9、図11、図12、図13で示す処理)をアクセス制御装置に実行させるための制御プログラムを、記録媒体に記録し又は各種通信路等を介して、流通させ頒布することもできる。このような記録媒体には、ICカード、ハードディスク、光ディスク、フレキシブルディスク、ROM、フラッシュメモリ等がある。流通、頒布された制御プログラムは、機器におけるプロセッサ10、10b、10cと異なるプロセッサで読み取り可能なメモリ等に格納されることにより利用に供され、そのアクセス制御装置がその制御プログラムを実行することにより実施の形態で示した各機能が実現される。
(8)実施の形態において説明したアクセス制御装置の属性切替制御部、状態取得部、アクセス制御部、切替許可部の構成要素のうち、全部又は一部を1チップ又は複数チップの集積回路で実現してもよい。また、これらの構成要素の機能の一部又は全部をコンピュータのプログラムで実現してもよいし、その他どのような形態で実現してもよい。
(9)上記の実施の形態及び上記の変形例を適宜組み合わせてもよい。
<4.補足>
以下、更に本発明の一実施形態としてのアクセス制御装置、及びその変形例と効果について説明する。
(1)本発明の一態様である情報処理装置は、プロセッサ及び周辺回路からアクセスされるアクセス対象装置を備える情報処理装置であって、属性の異なる複数の内部処理を切り替えて実行し、前記アクセス対象装置にアクセスする際には、前記属性を識別するための属性値とアクセス内容指示の情報とを含むアクセスコマンドを生成するプロセッサと、 前記プロセッサで実行中の内部処理の属性を示す属性情報を記憶するための属性記憶部と、前記プロセッサから、前記アクセス対象装置へのアクセスを含む処理をすべき旨の指示を受け付け、前記アクセス対象装置にアクセスする際には、前記属性記憶部の前記属性情報を参照し、属性値とアクセス内容指示の情報とを含むアクセスコマンドを生成する周辺回路と、前記プロセッサ及び前記周辺回路それぞれが生成したアクセスコマンドを受け付け、当該アクセスコマンドの属性値で示される属性とアクセス内容指示の情報との対応関係に応じて、前記アクセス対象装置に対するアクセスの抑制制御を行うアクセス制御部と、前記プロセッサからの属性切替許可要求を受け付けた場合に、前記周辺回路に、前記プロセッサから受け付けた処理に係る出力されていないアクセスコマンドを前記アクセス制御部へ出力させ、当該アクセスコマンドの出力が完了すると前記プロセッサに属性切替を許可する属性切替制御部とを備え、前記プロセッサは、内部処理を切り替える際に、前記属性切替制御部に対して、前記属性切替許可要求を行い、前記属性切替制御部から前記属性切替の許可を得た場合に内部処理を切り替え、前記属性記憶部の前記属性情報を更新する。 Furthermore, the
(7) A control program for causing the access control apparatus to execute each process described in the embodiment (the process shown in FIGS. 4, 5, 9, 11, 12, and 13) is recorded on a recording medium. Or can be distributed and distributed via various communication channels. Such a recording medium includes an IC card, a hard disk, an optical disk, a flexible disk, a ROM, a flash memory, and the like. The distributed and distributed control program is used by being stored in a memory or the like that can be read by a processor different from the
(8) All or some of the constituent elements of the attribute switching control unit, the state acquisition unit, the access control unit, and the switching permission unit of the access control device described in the embodiment are realized by an integrated circuit of one chip or a plurality of chips. May be. In addition, some or all of the functions of these components may be realized by a computer program, or in any other form.
(9) You may combine said embodiment and said modification suitably suitably.
<4. Supplement>
Hereinafter, an access control apparatus as one embodiment of the present invention, and its modifications and effects will be described.
(1) An information processing apparatus according to one aspect of the present invention is an information processing apparatus including an access target device accessed from a processor and a peripheral circuit, and executes a plurality of internal processes with different attributes by switching between the access processing devices. When accessing a target device, a processor that generates an access command including an attribute value for identifying the attribute and access content instruction information, and attribute information indicating an attribute of an internal process being executed by the processor An attribute storage unit for storing and an instruction to perform processing including access to the access target device from the processor, and when accessing the access target device, the attribute of the attribute storage unit A peripheral circuit that references the information and generates an access command including an attribute value and access content instruction information; An access control unit that receives an access command generated by each peripheral circuit and performs access suppression control on the access target device according to a correspondence relationship between the attribute indicated by the attribute value of the access command and the access content instruction information When the attribute switching permission request from the processor is received, the peripheral circuit is caused to output an access command that is not output related to the processing received from the processor to the access control unit, and the output of the access command is An attribute switching control unit that permits the processor to switch attributes when the processing is completed, and when the processor switches internal processing, the processor makes the attribute switching permission request to the attribute switching control unit, and the attribute switching control Switch the internal processing when the permission to switch the attribute is obtained from the Updating the attribute information of the parts.
この構成によると、プロセッサは、属性を切り替える際、属性切替制御部に対して属性切替許可要求を行い、属性切替制御部は、周辺回路から切り替える前の属性でデバイスにアクセスすべきアクセスコマンドの出力が完了するまでは、プロセッサに属性の切り替えを許可しない。そして、プロセッサは属性切替許可を受けてから属性を切り替える。
According to this configuration, when switching the attribute, the processor makes an attribute switching permission request to the attribute switching control unit, and the attribute switching control unit outputs an access command to access the device with the attribute before switching from the peripheral circuit. Until the process is completed, the processor is not allowed to switch attributes. Then, the processor switches the attribute after receiving the attribute switching permission.
従って、属性の切り替え前に出力されるべきアクセスコマンドの出力が完了した後にプロセッサは属性を切り替えるので、周辺回路からアクセス対象装置へのアクセスの際に不所望なアクセスを抑制することができる。
(2)ここで、前記属性切替制御部は、前記周辺回路から前記アクセス制御部へ出力されていない処理待ちアクセスコマンドの数を繰り返し取得する状態取得部を含み、前記状態取得部で取得した処理待ちアクセスコマンドの数が0の場合に、前記アクセスコマンドの出力が完了したと判断するとしてもよい。 Accordingly, since the processor switches the attribute after the output of the access command to be output before the switching of the attribute is completed, undesired access can be suppressed when the peripheral circuit accesses the access target device.
(2) Here, the attribute switching control unit includes a state acquisition unit that repeatedly acquires the number of processing-waiting access commands that are not output from the peripheral circuit to the access control unit, and the process acquired by the state acquisition unit When the number of waiting access commands is 0, it may be determined that the output of the access commands is completed.
(2)ここで、前記属性切替制御部は、前記周辺回路から前記アクセス制御部へ出力されていない処理待ちアクセスコマンドの数を繰り返し取得する状態取得部を含み、前記状態取得部で取得した処理待ちアクセスコマンドの数が0の場合に、前記アクセスコマンドの出力が完了したと判断するとしてもよい。 Accordingly, since the processor switches the attribute after the output of the access command to be output before the switching of the attribute is completed, undesired access can be suppressed when the peripheral circuit accesses the access target device.
(2) Here, the attribute switching control unit includes a state acquisition unit that repeatedly acquires the number of processing-waiting access commands that are not output from the peripheral circuit to the access control unit, and the process acquired by the state acquisition unit When the number of waiting access commands is 0, it may be determined that the output of the access commands is completed.
この構成によると、状態取得部は、アクセス制御部へ出力されていない処理待ちデータの数を繰り返し取得し、アクセスコマンドの数が0になった場合に、属性切替制御部はアクセスコマンドの出力が完了したと判断する。
According to this configuration, the status acquisition unit repeatedly acquires the number of processing-waiting data that has not been output to the access control unit, and when the number of access commands becomes 0, the attribute switching control unit outputs the access command. Judge that completed.
従って、プロセッサは、周辺回路から出力されるアクセスコマンドが無くなったときに、属性の切り替えをすることができ、周辺回路からアクセス対象装置へのアクセスの際に不所望なアクセスを抑制することができる。
(3)ここで、更に、前記プロセッサから、前記属性切替許可要求を前記属性切替制御部に対して行うことの許可の要求を受け付け、処理待ちアクセスコマンドの数が予め定められた所定の数以下である場合に、前記属性切替制御部に対して前記属性切替許可要求を行うことを、前記プロセッサに許可する切替許可部を備え、前記プロセッサは、前記属性切替許可要求を前記属性切替制御部に対して行うことの許可の要求を前記切替許可部に行った場合において、前記切替許可部から前記属性切替許可要求を行うことの許可を得たときに、前記属性切替許可要求を前記属性切替制御部に対して行うとしてもよい。 Therefore, the processor can switch the attribute when there is no access command output from the peripheral circuit, and can suppress undesired access when accessing the access target device from the peripheral circuit. .
(3) Here, further, a request for permission to make the attribute switching permission request to the attribute switching control unit is received from the processor, and the number of processing waiting access commands is equal to or less than a predetermined number. A switching permission unit that allows the processor to perform the attribute switching permission request to the attribute switching control unit, and the processor sends the attribute switching permission request to the attribute switching control unit. In the case where a request for permission to be performed is sent to the switching permission unit, when the permission to perform the attribute switching permission request is obtained from the switching permission unit, the attribute switching permission request is sent to the attribute switching control. It may be performed on the part.
(3)ここで、更に、前記プロセッサから、前記属性切替許可要求を前記属性切替制御部に対して行うことの許可の要求を受け付け、処理待ちアクセスコマンドの数が予め定められた所定の数以下である場合に、前記属性切替制御部に対して前記属性切替許可要求を行うことを、前記プロセッサに許可する切替許可部を備え、前記プロセッサは、前記属性切替許可要求を前記属性切替制御部に対して行うことの許可の要求を前記切替許可部に行った場合において、前記切替許可部から前記属性切替許可要求を行うことの許可を得たときに、前記属性切替許可要求を前記属性切替制御部に対して行うとしてもよい。 Therefore, the processor can switch the attribute when there is no access command output from the peripheral circuit, and can suppress undesired access when accessing the access target device from the peripheral circuit. .
(3) Here, further, a request for permission to make the attribute switching permission request to the attribute switching control unit is received from the processor, and the number of processing waiting access commands is equal to or less than a predetermined number. A switching permission unit that allows the processor to perform the attribute switching permission request to the attribute switching control unit, and the processor sends the attribute switching permission request to the attribute switching control unit. In the case where a request for permission to be performed is sent to the switching permission unit, when the permission to perform the attribute switching permission request is obtained from the switching permission unit, the attribute switching permission request is sent to the attribute switching control. It may be performed on the part.
この構成によると、プロセッサは、属性切替制御部に属性切替許可要求をする前に、切替許可部に対して、属性切替許可要求を属性切替制御部に行うことの許可要求を行う。そして、切替許可部は、処理待ちデータの数が予め定められた所定の数以下の場合に、プロセッサに、属性切替許可要求を属性切替制御部に行うことを許可する。
According to this configuration, before making an attribute switching permission request to the attribute switching control unit, the processor requests the switching permission unit to make an attribute switching permission request to the attribute switching control unit. The switching permission unit permits the processor to make an attribute switching permission request to the attribute switching control unit when the number of data to be processed is equal to or less than a predetermined number.
従って、プロセッサは、処理待ちデータの数が所定の数以下になってから、属性切替制御部に対して属性切替許可要求を行うことができるので、属性切替制御部から属性切替の許可を得るまでの待機時間を短くすることができ、処理効率の低下を抑制できる。
(4)ここで、前記切替許可部は、前記プロセッサから、前記属性切替許可要求を行うことの許可の要求を受け付けてから予め定められた所定の時間の経過後は、処理待ちアクセスコマンドの数が前記所定の数以下にならなくても、前記プロセッサに対して、前記属性切替制御部へ前記属性切替許可要求を行うことを許可するとしてもよい。 Therefore, the processor can make an attribute switching permission request to the attribute switching control unit after the number of data waiting to be processed becomes equal to or less than a predetermined number, so that the attribute switching control unit obtains permission for attribute switching. The waiting time can be shortened, and a decrease in processing efficiency can be suppressed.
(4) Here, after the elapse of a predetermined time after receiving a request for permission to perform the attribute switching permission request from the processor, the switching permission unit counts the number of access commands waiting for processing. Even if the value does not fall below the predetermined number, the processor may be permitted to make the attribute switching permission request to the attribute switching control unit.
(4)ここで、前記切替許可部は、前記プロセッサから、前記属性切替許可要求を行うことの許可の要求を受け付けてから予め定められた所定の時間の経過後は、処理待ちアクセスコマンドの数が前記所定の数以下にならなくても、前記プロセッサに対して、前記属性切替制御部へ前記属性切替許可要求を行うことを許可するとしてもよい。 Therefore, the processor can make an attribute switching permission request to the attribute switching control unit after the number of data waiting to be processed becomes equal to or less than a predetermined number, so that the attribute switching control unit obtains permission for attribute switching. The waiting time can be shortened, and a decrease in processing efficiency can be suppressed.
(4) Here, after the elapse of a predetermined time after receiving a request for permission to perform the attribute switching permission request from the processor, the switching permission unit counts the number of access commands waiting for processing. Even if the value does not fall below the predetermined number, the processor may be permitted to make the attribute switching permission request to the attribute switching control unit.
この構成によると、切替許可部は、属性切替許可要求を行うことの許可の要求を受け付けてから予め定められた所定の時間が経過すると、処理待ちデータの数が所定の数以下にならない場合でも、プロセッサに、属性切替制御部へ属性切替許可要求を行うことを許可する。
According to this configuration, the switching permission unit, even if the number of data waiting to be processed does not become the predetermined number or less after a predetermined time has elapsed since the request for permission to perform the attribute switching permission request has been received. The processor is permitted to make an attribute switching permission request to the attribute switching control unit.
従って、処理待ちデータが所定の数以下にならなくても、プロセッサは、属性切替許可要求を行うことの許可の要求を行ってから一定時間経過すると属性の切り替え処理を行うことができる。
(5)ここで、更に、前記プロセッサが、前記属性切替許可要求を行うことの許可を前記切替許可部に要求する第1モードと、前記属性切替許可要求の許可を前記切替許可部に要求しない第2モードとのどちらのモードであるかの情報を記憶するモード記憶部と、自装置の処理モードが、前記第1モード又は前記第2モードのどちらのモードであるかを前記モード記憶部の情報に基づいて判定するモード判定部とを備え、前記プロセッサは、内部処理の切り替えを行う際に、前記モード判定部が、前記第1モードと判定した場合には、属性切替許可要求を行うことの許可の要求を前記切替許可部に行い、前記第2モードと判定した場合には、属性切替許可要求を行うことの許可の要求を前記切替許可部に行わずに、属性切替許可要求を前記属性切替制御部に対して行うとしてもよい。 Therefore, even if the processing-waiting data does not become a predetermined number or less, the processor can perform the attribute switching process after a certain period of time has elapsed since the request for permission to perform the attribute switching permission request.
(5) Here, further, the processor does not request the switching permission unit for permission to perform the attribute switching permission request to the switching permission unit, and does not request the switching permission unit to permit the attribute switching permission request. A mode storage unit that stores information on which mode is the second mode, and whether the processing mode of the device is the first mode or the second mode is stored in the mode storage unit. A mode determination unit for determining based on information, and when the mode determination unit determines that the mode is the first mode when switching the internal process, the processor performs an attribute switching permission request When the request for permission is made to the switching permission unit and the second mode is determined, the request for permission to perform the attribute switching permission request is not sent to the switching permission unit, and the attribute switching permission request is sent to the switching permission unit. Genus It may perform relative to the switching control unit.
(5)ここで、更に、前記プロセッサが、前記属性切替許可要求を行うことの許可を前記切替許可部に要求する第1モードと、前記属性切替許可要求の許可を前記切替許可部に要求しない第2モードとのどちらのモードであるかの情報を記憶するモード記憶部と、自装置の処理モードが、前記第1モード又は前記第2モードのどちらのモードであるかを前記モード記憶部の情報に基づいて判定するモード判定部とを備え、前記プロセッサは、内部処理の切り替えを行う際に、前記モード判定部が、前記第1モードと判定した場合には、属性切替許可要求を行うことの許可の要求を前記切替許可部に行い、前記第2モードと判定した場合には、属性切替許可要求を行うことの許可の要求を前記切替許可部に行わずに、属性切替許可要求を前記属性切替制御部に対して行うとしてもよい。 Therefore, even if the processing-waiting data does not become a predetermined number or less, the processor can perform the attribute switching process after a certain period of time has elapsed since the request for permission to perform the attribute switching permission request.
(5) Here, further, the processor does not request the switching permission unit for permission to perform the attribute switching permission request to the switching permission unit, and does not request the switching permission unit to permit the attribute switching permission request. A mode storage unit that stores information on which mode is the second mode, and whether the processing mode of the device is the first mode or the second mode is stored in the mode storage unit. A mode determination unit for determining based on information, and when the mode determination unit determines that the mode is the first mode when switching the internal process, the processor performs an attribute switching permission request When the request for permission is made to the switching permission unit and the second mode is determined, the request for permission to perform the attribute switching permission request is not sent to the switching permission unit, and the attribute switching permission request is sent to the switching permission unit. Genus It may perform relative to the switching control unit.
この構成によると、モード判定部は、属性切替許可要求を行うことの許可を切替許可部に要求する第1モードであるか、属性切替許可要求の許可を切替許可部に要求しない第2モードであるかを判定する。アクセス制御装置は、モード判定部の判定に従って、第1モードと第2モードを切り替える。
According to this configuration, the mode determination unit is in the first mode that requests the switching permission unit to permit the attribute switching permission request, or in the second mode that does not request permission of the attribute switching permission request from the switching permission unit. Determine if there is. The access control device switches between the first mode and the second mode according to the determination of the mode determination unit.
従って、処理待ちデータが多く発生しないような処理を行う専用回路の場合と処理待ちデータが多く発生するような処理を行う専用回路の場合とで処理モードを切り替えることができ、処理に応じて、適切な処理モードで処理することができる。
(6)ここで、前記アクセス対象装置は、メモリデバイスであり、前記アクセスコマンドに含まれるアクセス内容指示の情報は、前記メモリデバイスへのアクセス先のメモリアドレスを示す情報を含む情報であるとしてもよい。 Therefore, the processing mode can be switched between the case of a dedicated circuit that performs processing that does not generate a lot of processing-waiting data and the case of a dedicated circuit that performs processing that generates a lot of processing-waiting data. It can be processed in an appropriate processing mode.
(6) Here, the access target device is a memory device, and the access content instruction information included in the access command may be information including information indicating a memory address of an access destination to the memory device. Good.
(6)ここで、前記アクセス対象装置は、メモリデバイスであり、前記アクセスコマンドに含まれるアクセス内容指示の情報は、前記メモリデバイスへのアクセス先のメモリアドレスを示す情報を含む情報であるとしてもよい。 Therefore, the processing mode can be switched between the case of a dedicated circuit that performs processing that does not generate a lot of processing-waiting data and the case of a dedicated circuit that performs processing that generates a lot of processing-waiting data. It can be processed in an appropriate processing mode.
(6) Here, the access target device is a memory device, and the access content instruction information included in the access command may be information including information indicating a memory address of an access destination to the memory device. Good.
この構成によると、アクセスコマンドは、メモリデバイスに対して、アクセスするアドレスを指定してアクセスする。
According to this configuration, the access command accesses the memory device by specifying the address to be accessed.
従って、アクセス制御部は、アクセスコマンドに含まれる指定されたアドレスに対するアクセスを許可するか否かを判定することができる。
Therefore, the access control unit can determine whether or not to permit access to the specified address included in the access command.
プロセッサ、周辺回路、及びアクセス対象装置を備える情報処理装置において、複数の属性(OS、プロセス等)で動作するプロセッサの動作状態に応じてアクセス対象装置の特定領域へのアクセスの実現に有用である。
In an information processing apparatus including a processor, a peripheral circuit, and an access target device, it is useful for realizing access to a specific area of the access target device according to the operating state of the processor operating with a plurality of attributes (OS, process, etc.). .
1、2、3 情報処理装置
10、10b、10c プロセッサ
20 周辺回路
30 デバイス
40、40b、40c アクセス制御装置
41 属性切替制御部
42 属性記憶部
43、43b 状態取得部
44 アクセス制御部
45、45b 切替許可部
46 モード判定部
47 モード記憶部 1, 2, 3 Information processing device 10, 10b, 10c Processor 20 Peripheral circuit 30 Device 40, 40b, 40c Access control device 41 Attribute switching control unit 42 Attribute storage unit 43, 43b Status acquisition unit 44 Access control unit 45, 45b Switching Permission unit 46 Mode determination unit 47 Mode storage unit
10、10b、10c プロセッサ
20 周辺回路
30 デバイス
40、40b、40c アクセス制御装置
41 属性切替制御部
42 属性記憶部
43、43b 状態取得部
44 アクセス制御部
45、45b 切替許可部
46 モード判定部
47 モード記憶部 1, 2, 3
Claims (8)
- プロセッサ及び周辺回路からアクセスされるアクセス対象装置を備える情報処理装置であって、
属性の異なる複数の内部処理を切り替えて実行し、前記アクセス対象装置にアクセスする際には、前記属性を識別するための属性値とアクセス内容指示の情報とを含むアクセスコマンドを生成するプロセッサと、
前記プロセッサで実行中の内部処理の属性を示す属性情報を記憶するための属性記憶部と、
前記プロセッサから、前記アクセス対象装置へのアクセスを含む処理をすべき旨の指示を受け付け、前記アクセス対象装置にアクセスする際には、前記属性記憶部の前記属性情報を参照し、属性値とアクセス内容指示の情報とを含むアクセスコマンドを生成する周辺回路と、
前記プロセッサ及び前記周辺回路それぞれが生成したアクセスコマンドを受け付け、当該アクセスコマンドの属性値で示される属性とアクセス内容指示の情報との対応関係に応じて、前記アクセス対象装置に対するアクセスの抑制制御を行うアクセス制御部と、
前記プロセッサからの属性切替許可要求を受け付けた場合に、前記周辺回路に、前記プロセッサから受け付けた処理に係る出力されていないアクセスコマンドを前記アクセス制御部へ出力させ、当該アクセスコマンドの出力が完了すると前記プロセッサに属性切替を許可する属性切替制御部とを備え、
前記プロセッサは、内部処理を切り替える際に、前記属性切替制御部に対して、前記属性切替許可要求を行い、前記属性切替制御部から前記属性切替の許可を得た場合に内部処理を切り替え、前記属性記憶部の前記属性情報を更新する
ことを特徴とする情報処理装置。 An information processing apparatus comprising an access target device accessed from a processor and peripheral circuits,
A processor for generating an access command including an attribute value for identifying the attribute and access content instruction information when switching and executing a plurality of internal processes having different attributes and accessing the access target device;
An attribute storage unit for storing attribute information indicating an attribute of an internal process being executed by the processor;
An instruction to perform processing including access to the access target device is received from the processor, and when accessing the access target device, the attribute information in the attribute storage unit is referred to, and an attribute value and access A peripheral circuit that generates an access command including content instruction information;
The access command generated by each of the processor and the peripheral circuit is received, and access suppression control for the access target device is performed according to the correspondence relationship between the attribute indicated by the attribute value of the access command and the access content instruction information. An access control unit;
When the attribute switching permission request from the processor is received, the peripheral circuit is caused to output an access command not output related to the processing received from the processor to the access control unit, and the output of the access command is completed An attribute switching control unit that allows the processor to switch attributes,
When switching the internal process, the processor makes an attribute switching permission request to the attribute switching control unit, and switches the internal process when the attribute switching control unit obtains the attribute switching permission, An information processing apparatus that updates the attribute information in an attribute storage unit. - 前記属性切替制御部は、前記周辺回路から前記アクセス制御部へ出力されていない処理待ちアクセスコマンドの数を繰り返し取得する状態取得部を含み、前記状態取得部で取得した処理待ちアクセスコマンドの数が0の場合に、前記アクセスコマンドの出力が完了したと判断する
ことを特徴とする請求項1に記載の情報処理装置。 The attribute switching control unit includes a state acquisition unit that repeatedly acquires the number of processing-waiting access commands that are not output from the peripheral circuit to the access control unit, and the number of processing-waiting access commands acquired by the state acquisition unit is 2. The information processing apparatus according to claim 1, wherein, in the case of 0, it is determined that the output of the access command is completed. - 更に、前記プロセッサから、前記属性切替許可要求を前記属性切替制御部に対して行うことの許可の要求を受け付け、処理待ちアクセスコマンドの数が予め定められた所定の数以下である場合に、前記属性切替制御部に対して前記属性切替許可要求を行うことを、前記プロセッサに許可する切替許可部を備え、
前記プロセッサは、前記属性切替許可要求を前記属性切替制御部に対して行うことの許可の要求を前記切替許可部に行った場合において、前記切替許可部から前記属性切替許可要求を行うことの許可を得たときに、前記属性切替許可要求を前記属性切替制御部に対して行う
ことを特徴とする請求項2に記載の情報処理装置。 Further, when a request for permission to perform the attribute switching permission request to the attribute switching control unit is received from the processor, and the number of processing-waiting access commands is equal to or less than a predetermined number, A switching permission unit that permits the processor to perform the attribute switching permission request to the attribute switching control unit;
The processor, when a request for permission to perform the attribute switching permission request to the attribute switching control unit is made to the switching permission unit, permission to perform the attribute switching permission request from the switching permission unit The information processing apparatus according to claim 2, wherein the attribute switching permission request is made to the attribute switching control unit when the information is obtained. - 前記切替許可部は、前記プロセッサから、前記属性切替許可要求を行うことの許可の要求を受け付けてから予め定められた所定の時間の経過後は、処理待ちアクセスコマンドの数が前記所定の数以下にならなくても、前記プロセッサに対して、前記属性切替制御部へ前記属性切替許可要求を行うことを許可する
ことを特徴とする請求項3に記載の情報処理装置。 The switching permission unit receives a request for permission to perform the attribute switching permission request from the processor, and after a predetermined time has elapsed, the number of processing waiting access commands is equal to or less than the predetermined number 4. The information processing apparatus according to claim 3, wherein the processor is allowed to make the attribute switching permission request to the attribute switching control unit, even if not. - 更に、前記プロセッサが、前記属性切替許可要求を行うことの許可を前記切替許可部に要求する第1モードと、前記属性切替許可要求の許可を前記切替許可部に要求しない第2モードとのどちらのモードであるかの情報を記憶するモード記憶部と、
自装置の処理モードが、前記第1モード又は前記第2モードのどちらのモードであるかを前記モード記憶部の情報に基づいて判定するモード判定部とを備え、
前記プロセッサは、内部処理の切り替えを行う際に、前記モード判定部が、前記第1モードと判定した場合には、属性切替許可要求を行うことの許可の要求を前記切替許可部に行い、前記第2モードと判定した場合には、属性切替許可要求を行うことの許可の要求を前記切替許可部に行わずに、属性切替許可要求を前記属性切替制御部に対して行う
ことを特徴とする請求項4に記載の情報処理装置。 Further, either the first mode in which the processor requests permission to perform the attribute switching permission request to the switching permission unit, or the second mode in which permission of the attribute switching permission request is not requested to the switching permission unit. A mode storage unit for storing information on whether the mode is
A mode determination unit that determines whether the processing mode of the device is the first mode or the second mode based on information in the mode storage unit;
The processor, when switching the internal process, if the mode determination unit determines the first mode, the processor makes a request for permission to perform an attribute switching permission request to the switching permission unit, If the second mode is determined, an attribute switching permission request is made to the attribute switching control unit without requesting permission to perform the attribute switching permission request to the switching permission unit. The information processing apparatus according to claim 4. - 前記アクセス対象装置は、メモリデバイスであり、
前記アクセスコマンドに含まれるアクセス内容指示の情報は、前記メモリデバイスへのアクセス先のメモリアドレスを示す情報を含む情報である
ことを特徴とする請求項1に記載の情報処理装置。 The access target device is a memory device;
The information processing apparatus according to claim 1, wherein the access content instruction information included in the access command is information including information indicating a memory address of an access destination to the memory device. - プロセッサ及び周辺回路からアクセスされるアクセス対象装置を備える情報処理装置の制御方法であって、
前記プロセッサに、属性の異なる複数の内部処理を切り替えて実行させ、前記アクセス対象装置にアクセスする際には、前記属性を識別するための属性値とアクセス内容指示の情報とを含むアクセスコマンドを生成させるステップと、
前記プロセッサで実行中の内部処理の属性を示す属性情報を記憶するための属性記憶ステップと、
前記周辺回路に、前記プロセッサから、前記アクセス対象装置へのアクセスを含む処理をすべき旨の指示を受け付けさせ、前記アクセス対象装置にアクセスする際には、前記属性記憶部の前記属性情報を参照させ、属性値とアクセス内容指示の情報とを含むアクセスコマンドを生成させるステップと、
前記プロセッサ及び前記周辺回路それぞれが生成したアクセスコマンドを受け付け、当該アクセスコマンドの属性値で示される属性とアクセス内容指示の情報との対応関係に応じて、前記アクセス対象装置に対するアクセスの抑制制御を行うアクセス制御ステップと、
前記プロセッサから属性切替許可要求を受け付けた場合に、前記周辺回路に、前記プロセッサから受け付けた処理に係る出力されていないアクセスコマンドを前記アクセス制御部へ出力させ、前記アクセスコマンドの出力が完了すると前記プロセッサに属性切替を許可する属性切替制御ステップと、
前記プロセッサに、内部処理を切り替える際には、前記属性切替制御部に対して、前記属性切替許可要求を行わさせ、前記属性切替制御部から前記属性切替の許可を得た場合に内部処理を切り替えさせ、前記属性記憶部の前記属性情報を更新させるステップとを含む
ことを特徴とする情報処理装置の制御方法。 A method for controlling an information processing apparatus including an access target device accessed from a processor and a peripheral circuit,
When the processor is switched to execute a plurality of internal processes having different attributes and accesses the access target device, an access command including an attribute value for identifying the attribute and access content instruction information is generated. Step to
An attribute storage step for storing attribute information indicating an attribute of an internal process being executed by the processor;
Instructing the peripheral circuit to receive an instruction from the processor to perform processing including access to the access target device, and refer to the attribute information in the attribute storage unit when accessing the access target device. Generating an access command including an attribute value and access content instruction information;
The access command generated by each of the processor and the peripheral circuit is received, and access suppression control for the access target device is performed according to the correspondence relationship between the attribute indicated by the attribute value of the access command and the access content instruction information. An access control step;
When an attribute switching permission request is received from the processor, the peripheral circuit is caused to output an access command that is not output related to the processing received from the processor to the access control unit, and when the output of the access command is completed, An attribute switching control step for allowing the processor to switch attributes;
When switching the internal processing to the processor, the attribute switching control unit is requested to perform the attribute switching permission request, and the internal processing is switched when the attribute switching control unit obtains the attribute switching permission. And a step of updating the attribute information in the attribute storage unit. - プロセッサ及び周辺回路からアクセスされるアクセス対象装置を備える情報処理装置の集積回路であって、
属性の異なる複数の内部処理を切り替えて実行し、前記アクセス対象装置にアクセスする際には、前記属性を識別するための属性値とアクセス内容指示の情報とを含むアクセスコマンドを生成するプロセッサと、
前記プロセッサで実行中の内部処理の属性を示す属性情報を記憶するための属性記憶手段と、
前記プロセッサから、前記アクセス対象装置へのアクセスを含む処理をすべき旨の指示を受け付け、前記アクセス対象装置にアクセスする際には、前記属性記憶手段の前記属性情報を参照し、属性値とアクセス内容指示の情報とを含むアクセスコマンドを生成する周辺回路と、
前記プロセッサ及び前記周辺回路それぞれが生成したアクセスコマンドを受け付け、当該アクセスコマンドの属性値で示される属性とアクセス内容指示の情報との対応関係に応じて、前記アクセス対象装置に対するアクセスの抑制制御を行うアクセス制御手段と、
前記プロセッサからの属性切替許可要求を受け付けた場合に、前記周辺回路に、前記プロセッサから受け付けた処理に係る出力されていないアクセスコマンドを前記アクセス制御手段へ出力させ、前記アクセスコマンドの出力が完了すると前記プロセッサに属性切替を許可する属性切替制御手段とを備え、
前記プロセッサは、内部処理を切り替える際には、前記属性切替制御手段に対して、前記属性切替許可要求を行い、前記属性切替制御手段から前記属性切替の許可を得た場合に内部処理を切り替え、前記属性記憶手段の前記属性情報を更新する
ことを特徴とする情報処理装置の集積回路。 An integrated circuit of an information processing apparatus including an access target device accessed from a processor and a peripheral circuit,
A processor for generating an access command including an attribute value for identifying the attribute and access content instruction information when switching and executing a plurality of internal processes having different attributes and accessing the access target device;
Attribute storage means for storing attribute information indicating an attribute of an internal process being executed by the processor;
When receiving an instruction from the processor that processing including access to the access target device is to be performed and accessing the access target device, the attribute information in the attribute storage unit is referred to, and an attribute value and access A peripheral circuit that generates an access command including content instruction information;
The access command generated by each of the processor and the peripheral circuit is received, and access suppression control for the access target device is performed according to the correspondence relationship between the attribute indicated by the attribute value of the access command and the access content instruction information. Access control means;
When an attribute switching permission request from the processor is received, the peripheral circuit is caused to output an access command that is not output related to the processing received from the processor to the access control means, and the output of the access command is completed Attribute switching control means for allowing the processor to switch attributes,
When switching the internal processing, the processor performs the attribute switching permission request to the attribute switching control means, and switches the internal processing when the attribute switching control means obtains the attribute switching permission, The attribute information of the attribute storage means is updated. An integrated circuit of an information processing apparatus.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2011-190310 | 2011-09-01 | ||
JP2011190310A JP2014211662A (en) | 2011-09-01 | 2011-09-01 | Access control device and access control method |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2013031130A1 true WO2013031130A1 (en) | 2013-03-07 |
Family
ID=47755661
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2012/005211 WO2013031130A1 (en) | 2011-09-01 | 2012-08-20 | Information processing device, access control method for same and integrated circuit |
Country Status (2)
Country | Link |
---|---|
JP (1) | JP2014211662A (en) |
WO (1) | WO2013031130A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160119140A (en) * | 2014-02-10 | 2016-10-12 | 에이알엠 리미티드 | Region identifying operation for identifying region of a memory attribute unit corresponding to a target memory address |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002163239A (en) * | 2000-11-22 | 2002-06-07 | Toshiba Corp | Multi-processor system and control method for it |
JP2002268942A (en) * | 2001-03-13 | 2002-09-20 | Toshiba Corp | Multi-bank access controller and multi-bank access control method |
JP2004252761A (en) * | 2003-02-20 | 2004-09-09 | Ntt Data Corp | Control method of multi-operating system, program making computer execute same method, and control device of multi-operating system |
JP2008052714A (en) * | 2006-07-25 | 2008-03-06 | Ntt Docomo Inc | Switching control device for multiple operating systems, and computer system |
JP2009530715A (en) * | 2006-03-16 | 2009-08-27 | 株式会社エヌ・ティ・ティ・ドコモ | Secure operating system switching |
JP2010152527A (en) * | 2008-12-24 | 2010-07-08 | Sony Computer Entertainment Inc | Method and apparatus for providing user level dma and memory access management |
-
2011
- 2011-09-01 JP JP2011190310A patent/JP2014211662A/en not_active Withdrawn
-
2012
- 2012-08-20 WO PCT/JP2012/005211 patent/WO2013031130A1/en active Application Filing
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002163239A (en) * | 2000-11-22 | 2002-06-07 | Toshiba Corp | Multi-processor system and control method for it |
JP2002268942A (en) * | 2001-03-13 | 2002-09-20 | Toshiba Corp | Multi-bank access controller and multi-bank access control method |
JP2004252761A (en) * | 2003-02-20 | 2004-09-09 | Ntt Data Corp | Control method of multi-operating system, program making computer execute same method, and control device of multi-operating system |
JP2009530715A (en) * | 2006-03-16 | 2009-08-27 | 株式会社エヌ・ティ・ティ・ドコモ | Secure operating system switching |
JP2008052714A (en) * | 2006-07-25 | 2008-03-06 | Ntt Docomo Inc | Switching control device for multiple operating systems, and computer system |
JP2010152527A (en) * | 2008-12-24 | 2010-07-08 | Sony Computer Entertainment Inc | Method and apparatus for providing user level dma and memory access management |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20160119140A (en) * | 2014-02-10 | 2016-10-12 | 에이알엠 리미티드 | Region identifying operation for identifying region of a memory attribute unit corresponding to a target memory address |
JP2017505492A (en) * | 2014-02-10 | 2017-02-16 | エイアールエム リミテッド | Area specification operation to specify the area of the memory attribute unit corresponding to the target memory address |
KR102383900B1 (en) | 2014-02-10 | 2022-04-07 | 에이알엠 리미티드 | Region identifying operation for identifying region of a memory attribute unit corresponding to a target memory address |
Also Published As
Publication number | Publication date |
---|---|
JP2014211662A (en) | 2014-11-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI537815B (en) | Apparatuses and methods for adaptive control of memory | |
US9928168B2 (en) | Non-volatile random access system memory with DRAM program caching | |
US6948034B2 (en) | Method for use of stack | |
JP2006302255A (en) | Data storage device with nonvolatile memory of different kind and method for driving thereof | |
JP2009205411A (en) | Memory controller and memory system | |
JP2009211153A (en) | Memory device, information processing apparatus, and electric power controlling method | |
KR20180007374A (en) | Electronic device performing software training on memory channel and memory channel training method thereof | |
JP2015079511A (en) | System and mobile computing device | |
JP5338435B2 (en) | Information processing program, information processing apparatus, and information processing method | |
US20170269870A1 (en) | Memory controller, nonvolatile storage device, nonvolatile storage system, and memory control method | |
JP2017033501A (en) | Storage device and control method | |
US20060065746A1 (en) | Semiconductor memory device | |
JP2007026094A (en) | Execution device and application program | |
TW201926055A (en) | Command processing method and storage controller using the same | |
JP2010044460A (en) | Power source control device, computer system, power source control method, power source control program and recording medium | |
JP2009020555A (en) | Swapping device | |
JP5876017B2 (en) | Peripheral device control apparatus and information processing apparatus | |
WO2013031130A1 (en) | Information processing device, access control method for same and integrated circuit | |
JP2006099702A (en) | Information processor and data transfer control method | |
CN105612505A (en) | Method and apparatus for scheduling CPU | |
JP2009258925A (en) | Computer system and memory management method of computer system | |
US20130151794A1 (en) | Memory controller and memory control method | |
JP6497392B2 (en) | Access control method, bus system, and semiconductor device | |
JP7062142B2 (en) | Information processing equipment, information processing methods and information processing programs | |
US20080209085A1 (en) | Semiconductor device and dma transfer method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 12827886 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 12827886 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: JP |