WO2009098737A1 - 外部デバイスアクセス装置、その制御方法及びシステムlsi - Google Patents

外部デバイスアクセス装置、その制御方法及びシステムlsi Download PDF

Info

Publication number
WO2009098737A1
WO2009098737A1 PCT/JP2008/002206 JP2008002206W WO2009098737A1 WO 2009098737 A1 WO2009098737 A1 WO 2009098737A1 JP 2008002206 W JP2008002206 W JP 2008002206W WO 2009098737 A1 WO2009098737 A1 WO 2009098737A1
Authority
WO
WIPO (PCT)
Prior art keywords
prefetch
external device
master
signal
read
Prior art date
Application number
PCT/JP2008/002206
Other languages
English (en)
French (fr)
Inventor
Tsuyoshi Tanaka
Nobuo Higaki
Takasi Inoue
Yosuke Kudo
Kazushi Kurata
Original Assignee
Panasonic Corporation
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Panasonic Corporation filed Critical Panasonic Corporation
Priority to US12/866,061 priority Critical patent/US20100318707A1/en
Priority to JP2009529455A priority patent/JPWO2009098737A1/ja
Priority to CN200880126342.0A priority patent/CN101939733A/zh
Publication of WO2009098737A1 publication Critical patent/WO2009098737A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/382Information transfer, e.g. on bus using universal interface adapter
    • G06F13/385Information transfer, e.g. on bus using universal interface adapter for adaptation of a particular data processing system to different peripheral devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • G06F3/0611Improving I/O performance in relation to response time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0656Data buffering arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices

Definitions

  • the present invention relates to an external device access apparatus, a control method thereof, and a system LSI, and more particularly to an external device access apparatus that performs prefetch access to an external device in response to a request from a master.
  • the master may have an expansion bus for expanding external devices.
  • media processing is general data processing such as audio processing and image processing
  • a master is a device in charge of main control such as a CPU or a microcomputer
  • an external device is a CPU or a microcomputer.
  • a peripheral device such as a coprocessor, an accelerator, or a memory that assists.
  • the master can handle the resource of the external device as an extended resource of the master by assigning the resource of the external device to the access space.
  • the access space is a space to which an address is assigned for program access, data access, input / output access, and the like that can be accessed by the master.
  • Prefetching is a technique in which a master makes a read request in advance, acquires data read in advance after a certain latency period, and performs the next process.
  • an external device access apparatus that performs a prefetch operation for an external device in response to a request from a master is known (for example, see Patent Document 1).
  • a conventional external device access device described in Patent Document 1 reads a data from an external device in response to a request from the master, temporarily stores the read data, and outputs a prefetch that stores the stored data to the master Data read operation is performed.
  • a conventional external device access apparatus performs a prefetch data read operation in response to a request from the master during a prefetch operation to the external device
  • the read data is mastered in synchronization with the completion of the prefetch operation. Output to. Thereby, it is possible to avoid outputting erroneous data before completion of the prefetch operation to the master.
  • FIG. 1 is a flowchart showing a flow of processing of a master when a conventional external device access apparatus is used.
  • the master performs a prefetch operation on the external device (S501).
  • the master performs a process that can be executed until the prefetch data is read (S502).
  • the period during which the master performs processing is a period until the prefetch operation is completed when the external device is normal.
  • the master reads prefetch data (S503).
  • the master executes processing using the read data (S505).
  • the master enters a standby state until the prefetch operation is completed.
  • the conventional technique has a problem that the processing efficiency of the master is lowered.
  • the present invention is for solving the above-described problems, and an object thereof is to provide an external device access apparatus and a system LSI that can efficiently use a master.
  • an external device access apparatus includes a prefetch operation for reading data from an external device in response to a request from the master, and a prefetch for outputting data read by the prefetch operation to the master.
  • An external device access device that performs a data read operation, and receives a prefetch request and a prefetch data read request from the master, and is read by the prefetch operation and a control unit that performs the prefetch operation and the prefetch data read operation.
  • a data storage unit for storing data, a state holding unit for holding a prefetch operation state indicating whether or not the prefetch operation is completed, and an acceptance signal indicating that the prefetch data read request from the master has been received.
  • An acceptance signal generation unit that outputs to the master, the control unit outputs data stored in the data storage unit to the master as the prefetch data read operation, and the control unit is in the prefetch operation state
  • the first information indicating the state of the prefetch operation based on is output to the master.
  • the external device access apparatus outputs the first information indicating the state of the prefetch operation to the master.
  • the master can perform another process first if the prefetch operation is not completed during the prefetch data read operation. Therefore, the external device access apparatus according to the present invention can use the master efficiently.
  • the acceptance signal generation unit outputs the acceptance signal to the master regardless of whether the prefetch operation is completed or not when the prefetch data read request is accepted by the control unit,
  • the control unit may output the first information to the master when receiving the prefetch data read request.
  • the master can perform another process first when the prefetch operation is not completed by receiving the acceptance signal.
  • control unit may output the prefetch operation state to the master as the first information.
  • the master can determine whether or not the external device access apparatus has completed the prefetch operation.
  • the external device access device and the master are connected via a read data bus, and the control unit transmits the data stored in the data storage unit and the first information via the read data bus. It may be output to the master.
  • control unit when the prefetch operation state indicates that the prefetch operation is completed, the control unit outputs the data stored in the data storage unit to the master via the read data bus, and the prefetch operation When the state indicates that the prefetch operation is not completed, predetermined data may be output as the first information to the master via the read data bus.
  • the control unit when the prefetch operation state indicates that the prefetch operation is completed, the control unit outputs the data stored in the data storage unit to the master via the read data bus, and the prefetch operation If the state indicates that the prefetch operation is not completed, the address of the external device that is reading by the prefetch operation may be output as the first information to the master via the read data bus. Good.
  • the control unit may further receive a prefetch operation state read request from the master, and the control unit may output the first information to the master when the prefetch operation state read request is received. .
  • the master does not need to make an unnecessary prefetch data read request by making a prefetch operation state read request before the prefetch data read operation.
  • the external device outputs a status signal indicating an operation state of the external device
  • the external device access device further includes a status signal storage unit that stores the status signal when the prefetch operation is completed.
  • the state signal stored in the state signal storage unit is output to the master, and the prefetch operation is not completed due to the prefetch operation state.
  • a status signal output unit that outputs a status signal output by the external device to the master.
  • the master can grasp the state of the external device during prefetch execution. As a result, the master can perform optimum processing according to the state of the external device.
  • the external device outputs a status signal indicating an operation state of the external device
  • the acceptance signal generation unit responds to the status signal when the control unit receives the prefetch data read request.
  • the external device access apparatus can select whether to output the acceptance signal immediately or to output the acceptance signal after completion of the prefetch operation according to the state of the external device.
  • the master does not always have to perform the prefetch data read operation with a maximum latency period, but with a minimum latency period.
  • a prefetch data read operation may be performed.
  • control unit further accepts a prefetch stop request from the master, and the external device access device further prefetches the prefetch operation to be stopped when the prefetch stop request is accepted by the control unit. You may provide a cancellation part.
  • the master can stop the prefetch operation according to the state of the external device.
  • the external device outputs a status signal indicating an operation state of the external device
  • the external device access device further receives the prefetch data read request by the control unit, and the prefetch operation state If the prefetch operation is not completed, a prefetch stop unit that stops the prefetch operation according to the status signal output by the external device may be provided.
  • the external device access apparatus automatically stops the prefetch operation when the prefetch operation is being executed and the external device is in an abnormal state during the prefetch data read operation. .
  • the master does not need to perform control to stop the prefetch operation. Therefore, the external device access apparatus according to the present invention can reduce the processing of the master.
  • the external device outputs a status signal indicating an operation state of the external device, the external device access apparatus and the master are connected via a first signal bus, and the external device access apparatus further includes: A read state prefetch operation state which is the prefetch operation state when the prefetch data read request is received by the control unit and a state signal storage unit for storing the state signal when the prefetch operation is completed.
  • a read state prefetch operation state which is the prefetch operation state when the prefetch data read request is received by the control unit and a state signal storage unit for storing the state signal when the prefetch operation is completed.
  • the prefetch operation state is output to the master via the first signal bus, and the prefetch operation is performed.
  • the operation state indicates that the prefetch operation is complete.
  • a signal output unit that outputs a status signal stored by the status signal storage unit to the master via the first signal bus, and the control unit has received the prefetch operation status read request In this case, the read prefetch operation state may be output to the master
  • the external device access apparatus outputs the prefetch operation state and the state signal to the master via the first signal bus. Therefore, it is not necessary to separately provide a bus for outputting the prefetch operation state and a bus for outputting the state signal.
  • the acceptance signal generation unit outputs the acceptance signal to the master regardless of whether or not the prefetch operation is completed when the control unit accepts the prefetch data read request.
  • An operation or a second operation of outputting the acceptance signal to the master after completion of the prefetch operation may be selectively performed.
  • the external device access apparatus can select whether to output the acceptance signal immediately or to output the acceptance signal after completion of the prefetch operation.
  • reception signal generation unit may selectively perform the first operation or the second operation according to a control signal output from the master.
  • the master can select the first operation and the second operation.
  • the prefetch read request includes a first prefetch data read request and a second prefetch data read request, and the control unit reads the first prefetch data when a first address is output from the master.
  • the second prefetch data read request is received, and the acceptance signal generation unit is when the control unit receives the first prefetch data read request.
  • the first operation may be performed, and the second operation may be performed when the control unit receives the second prefetch data read request.
  • the master can select the first operation and the second operation without providing a new control bus between the external device access apparatus and the master.
  • the external device access apparatus further includes a state setting unit in which a first state or a second state is set, and the control unit further receives a prefetch read control operation request from the master, and the control unit When the prefetch read control operation request is accepted, the designated first state or the second state from the master is set in the state setting unit, and the acceptance signal generating unit is set in the state setting unit.
  • the first operation may be performed when the first state is set, and the second operation may be performed when the second state is set in the state setting unit.
  • the master can select the first operation and the second operation without providing a new control bus between the external device access apparatus and the master.
  • the external device access device further completes the prefetch operation after the prefetch data read request is accepted when the prefetch data read request is accepted by the control unit during the execution of the prefetch operation.
  • a counting unit that counts the time until the operation is performed, and the control unit may output the time counted by the counting unit to the master as the first information.
  • the master can change the timing for requesting the prefetch data read operation to the time after the prefetch operation is completed. Therefore, the master does not have to request a plurality of prefetch data read operations, so that the efficiency can be improved.
  • control unit further receives a time read request from the master
  • the external device access device further includes a time storage unit that stores a time counted by the counting unit.
  • the time stored in the time storage unit may be output to the master as the first information.
  • the external device access apparatus can notify the master of the time until the prefetch operation is completed without providing a new signal output bus with the master.
  • the system LSI according to the present invention is a system LSI including the external device access apparatus and a master, and the external device access apparatus uses the first information as an interrupt signal or a thread switching signal of the master.
  • the master processes the first information as an interrupt process or a thread switching signal.
  • the system LSI according to the present invention is a system LSI including the external device access device and a master, and the external device access device outputs the first information as a flag signal that can be processed by the master. Then, the master processes the first information as a flag signal that can be processed by software.
  • the system LSI according to the present invention is a system LSI including the external device access apparatus and a master, and the master synchronizes the control signal with the prefetch data read request and accesses the external device access. Output to the device.
  • the master can select two operations for each prefetch read operation by synchronizing the output of the read acceptance control signal with the prefetch data read request by an instruction from the CPU or the microcomputer. Therefore, the master can perform more optimal processing.
  • an external device access that performs a prefetch operation for reading data from an external device and a prefetch data read operation for outputting data read by the prefetch operation to the master in response to a request from the master.
  • a device control method a prefetch request receiving step for receiving a prefetch request from the master, and a prefetch step for reading data from the external device when the prefetch request is received and storing the read data in a data storage unit
  • a state holding step for holding a prefetch operation state indicating whether or not the prefetch step is completed, and a prefetch data read request acceptance step for accepting a prefetch data read request from the master.
  • the control method of the external device access apparatus outputs the first information indicating the state of the prefetch operation to the master.
  • the master can perform another process first if the prefetch operation is not completed during the prefetch data read operation. Therefore, the external device access apparatus control method according to the present invention can use the master efficiently.
  • the present invention can be realized not only as such an external device access apparatus, but also as a control method of an external device access apparatus using characteristic means included in the external device access apparatus as a step. It can also be realized as a program that causes a computer to execute typical steps. Needless to say, such a program can be distributed via a recording medium such as a CD-ROM and a transmission medium such as the Internet.
  • the present invention can provide an external device access apparatus that can efficiently use a master, a control method thereof, and a system LSI.
  • FIG. 1 is a flowchart showing the flow of prefetch processing by a master when a conventional external device access apparatus is used.
  • FIG. 2 is a block diagram showing the configuration of the external device access apparatus according to Embodiment 1 of the present invention.
  • FIG. 3 is a flowchart showing the flow of prefetch processing by the master when the external device access apparatus according to Embodiment 1 of the present invention is used.
  • FIG. 4 is a block diagram showing the configuration of the external device access apparatus according to Embodiment 2 of the present invention.
  • FIG. 5 is a block diagram showing a configuration of a modification of the external device access apparatus according to Embodiment 2 of the present invention.
  • FIG. 6 is a block diagram showing the configuration of the external device access apparatus according to Embodiment 3 of the present invention.
  • FIG. 7 is a block diagram showing the configuration of the external device access apparatus according to Embodiment 4 of the present invention.
  • FIG. 8 is a block diagram showing the configuration of the external device access apparatus according to the fifth embodiment of the present invention.
  • FIG. 9 is a block diagram showing a configuration of an external device access apparatus according to Embodiment 6 of the present invention.
  • FIG. 10 is a block diagram showing the configuration of the external device access apparatus according to the seventh embodiment of the present invention.
  • FIG. 11 is a block diagram showing the configuration of the external device access apparatus according to the eighth embodiment of the present invention.
  • FIG. 12 is a block diagram showing the configuration of the external device access apparatus according to the ninth embodiment of the present invention.
  • FIG. 13 is a block diagram showing a configuration of an external device access apparatus according to Embodiment 10 of the present invention.
  • FIG. 14 is a block diagram showing a configuration of an external device access apparatus according to Embodiment 11 of the present invention.
  • FIG. 15 is a block diagram showing a configuration of an external device access apparatus according to Embodiment 12 of the present invention.
  • the master is a device in charge of control of writing and reading such as a CPU or a microcomputer.
  • An external device is a device such as a coprocessor or an accelerator that assists a CPU or a microcomputer.
  • the external device has a resource that can be accessed by the master by designating an address.
  • Embodiment 1 In the prefetch data read operation, the external device access apparatus according to Embodiment 1 of the present invention completes the acceptance signal indicating that the prefetch data read operation is accepted and the prefetch operation when the prefetch operation is not completed. A prefetch operation state signal indicating whether or not the data is being output is output to the master.
  • Embodiment 1 of the present invention can use the master efficiently.
  • FIG. 2 is a block diagram showing the configuration of the external device access apparatus according to Embodiment 1 of the present invention.
  • the external device access device 103 includes an address bus 150, a write data input bus 151, a read data output bus 152, a write / read control signal (hereinafter referred to as R / W signal) bus 153, an acceptance signal bus 155, and a prefetch operation status signal. It is connected to the master 101 via the bus 156.
  • the external device access device 103 is connected to the external device 102 via a write address output bus 170, a write data output bus 171, a read address output bus 172, and a read data input bus 173.
  • the external device access device 103 performs a normal write operation, a prefetch operation, and a prefetch data read operation.
  • the normal write operation is a normal data write operation to the external device 102.
  • the prefetch operation is an operation in which data of the external device 102 is read in advance and stored in the data storage unit 113.
  • the prefetch data read operation is an operation for outputting the data stored in the read data storage unit 113 to the master 101.
  • the master 101 requests the external device access apparatus 103 for a normal write operation, a prefetch operation, and a prefetch data read operation.
  • the external device access apparatus 103 performs a normal write operation, a prefetch operation, and a prefetch data read operation in response to a request from the master 101.
  • the external device 102 stores the write data output to the write data output bus 171 at the write address output to the write address output bus 170. Further, the external device 102 reads data stored in the read address output to the read address output bus 172 and outputs the read data to the read data input bus 173.
  • the master 101, the external device 102, and the external device access apparatus 103 are included in one system LSI.
  • Two or more of the master 101, the external device 102, and the external device access apparatus 103 may be included in one system LSI, or may be formed as individual LSIs.
  • the external device access device 103 includes a write address storage unit 110, a write data storage unit 111, a read address storage unit 112, a read data storage unit 113, an address control unit 114, a storage operation state holding unit 115, an acceptance A signal generation unit 116.
  • the address control unit 114 requests a normal write operation from the master 101 (hereinafter referred to as a normal write request), a prefetch operation request (hereinafter referred to as a prefetch request), and a prefetch data read operation request (hereinafter referred to as a prefetch read request). Accept.
  • the address control unit 114 is based on the address output to the address bus 150 by the master 101, the write data output to the write data input bus 151, and the R / W signal output to the R / W signal bus 153.
  • the normal write request, prefetch request, and prefetch data read request are accepted.
  • the address control unit 114 Recognizing that the request from 101 is a normal write request, the normal write request is accepted.
  • the read data storage unit 113 has an address assigned to the access space of the master 101 and is accessible from the master 101.
  • “accessible” means that the master 101 can perform at least one of reading and writing of data stored in the read data storage unit 113 by designating an address of the read data storage unit 113.
  • the address control unit 114 receives the address from the master 101 when the address output to the address bus 150 is an address assigned to the read data storage unit 113 and data writing is instructed by the R / W signal. Recognizing that the request is a prefetch request, the prefetch request is accepted.
  • the address control unit 114 receives an address from the master 101 when the address output to the address bus 150 is an address assigned to the read data storage unit 113 and data read is instructed by the R / W signal. Recognizing that the request is a prefetch data read request, the prefetch data read request is accepted.
  • the address control unit 114 performs a normal write operation, a prefetch operation, and a prefetch data read operation in response to a normal write request, a prefetch request, and a prefetch data read request.
  • the address control unit 114 normally controls the write address storage unit 110, the write data storage unit 111, the read address storage unit 112, the read data storage unit 113, the storage operation state holding unit 115, and the reception signal generation unit 116.
  • a write operation, a prefetch operation, and a prefetch data read operation are performed.
  • the address control unit 114 responds to a normal write request, a prefetch request, and a prefetch data read request, with a write address 160, a write permission signal 161, a read address 162, a read address permission signal 163, and a read data permission signal 164. Is generated.
  • the address control unit 114 When the normal control request is received, the address control unit 114 outputs the data on the write data input bus 151 as the write address 160 and outputs the write permission signal 161. When receiving the prefetch request, the address control unit 114 outputs the data on the write data input bus 151 as the read address 162 and outputs the read address permission signal 163. The address control unit 114 outputs a read data permission signal 164 when receiving a prefetch data read request.
  • the write address storage unit 110 takes in the write address 160 when the write permission signal 161 is output by the address control unit 114, and stores the fetched write address 160. The write address storage unit 110 outputs the write address 160 to be stored to the write address output bus 170.
  • the write data storage unit 111 takes in the write data of the write data input bus 151 when the write permission signal 161 is output by the address control unit 114, and stores the fetched write data.
  • the write data storage unit 111 outputs the write data to be stored to the write data output bus 171.
  • the read address storage unit 112 takes in the read address 162 when the read address permission signal 163 is output by the address control unit 114, and stores the read address 162 taken in.
  • the read address storage unit 112 outputs the read address 162 to be stored to the read address output bus 172.
  • the read data storage unit 113 stores the read data output to the read data input bus 173. That is, the read data storage unit 113 stores data read by the prefetch operation. The read data storage unit 113 outputs the read data to be stored to the read data output bus 152 when the read data permission signal 164 is output by the address control unit 114.
  • the storage operation state holding unit 115 holds a prefetch operation state signal that is information indicating whether or not the read data storage unit 113 is storing read data output from the external device 102.
  • the prefetch operation state signal is information indicating whether or not the prefetch operation is completed.
  • the storage operation state holding unit 115 holds information indicating that a storage operation is being performed when a read address is output to the read address output bus 172 by the read address storage unit 112.
  • the storage operation state holding unit 115 cancels the information indicating that the storage operation is being held and indicates that the storage operation is completed. Keep information.
  • the storage operation state holding unit 115 outputs the prefetch operation state signal to be held to the prefetch operation state signal bus 156 when the read data permission signal 164 is output by the address control unit 114.
  • the acceptance signal generator 116 outputs to the master 101 an acceptance signal indicating that the normal write request, prefetch request, and prefetch data read request from the master 101 have been accepted. Specifically, the reception signal generation unit 116 outputs a reception signal to the reception signal bus 155 when the address control unit 114 outputs the write permission signal 161, the read address permission signal 163, or the read data permission signal 164. .
  • the acceptance signal generation unit 116 immediately outputs an acceptance signal to the master 101 regardless of whether or not the prefetch operation is completed.
  • the master 101 outputs write data to the write data input bus 151, outputs a write address to the address bus 150, and outputs an R / W signal instructing data write to the R / W signal bus 153.
  • the write address output from the master 101 to the address bus 150 is an address different from the address assigned to the read data storage unit 113.
  • the address control unit 114 determines whether the address of the address bus 150 is an address assigned to the read data storage unit 113. Since the address control unit 114 is not the address assigned to the read data storage unit 113 and the data write is instructed by the R / W signal, the address control unit 114 receives the request from the master 101 as a normal write operation. Recognize that. That is, the address control unit 114 accepts a normal write request from the master 101.
  • the address control unit 114 that has received the normal write request outputs a write address 160 that is an address of the address bus 150 to the write address storage unit 110. Further, the address control unit 114 outputs the write permission signal 161 to the write address storage unit 110, the write data storage unit 111, and the acceptance signal generation unit 116.
  • the write address storage unit 110 stores the write address 160 in response to the write permission signal 161.
  • the write data storage unit 111 stores the write data of the write data input bus 151 in response to the write permission signal 161.
  • the reception signal generation unit 116 outputs a reception signal to the reception signal bus 155 when the write address 160 and the write data are stored in the write address storage unit 110 and the write data storage unit 111, respectively. .
  • the write address storage unit 110 outputs the stored write address 160 to the write address output bus 170.
  • the write data storage unit 111 outputs the stored write data to the write data output bus 171.
  • the write address storage unit 110 and the write data storage unit 111 hold the stored write address and write data until the external device 102 receives them.
  • External device access apparatus 103 completes the normal write operation after external device 102 completes acceptance.
  • the master 101 outputs a read address to the write data input bus 151, outputs an address assigned to the read data storage unit 113 to the address bus 150, and instructs the R / W signal bus 153 to write data.
  • R / W signal is output.
  • the address control unit 114 determines whether the address of the address bus 150 is an address assigned to the read data storage unit 113. Since the address control unit 114 is the address assigned to the read data storage unit 113 in the address bus 150 and is instructed to write data by the R / W signal, the request from the master 101 is a prefetch operation. Recognize that there is. That is, the address control unit 114 receives a prefetch request from the master 101.
  • the address control unit 114 that has received the prefetch request outputs a read address 162 that is data on the write data input bus 151 to the read address storage unit 112. Further, the address control unit 114 outputs the read address permission signal 163 to the read address storage unit 112 and the acceptance signal generation unit 116.
  • the read address storage unit 112 stores the read address 162 in response to the read address permission signal 163.
  • the reception signal generation unit 116 outputs a reception signal to the reception signal bus 155 when the read address 162 is stored in the read address storage unit 112.
  • the read address storage unit 112 outputs the stored read address 162 to the read address output bus 172. Further, the read address storage unit 112 outputs the stored read address 162 to the storage operation state holding unit 115 to indicate that the storage operation is being performed.
  • the storage operation state holding unit 115 receives the read address output from the read address storage unit 112 and holds information indicating that the storage operation is being performed.
  • the external device 102 receives the read address and outputs read data to the read data input bus 173.
  • the read data storage unit 113 stores the read data output to the read data input bus 173.
  • the storage operation state holding unit 115 receives the read data output to the read data input bus 173 and cancels the information indicating that the storage operation is being held.
  • the read address storage unit 112 stores the read address 162 until the read data output to the read data input bus 173 is stored in the read data storage unit 113.
  • the master 101 In the prefetch data read operation, the master 101 outputs an address assigned to the read data storage unit 113 to the address bus 150 and outputs an R / W signal instructing data read to the R / W signal bus 153.
  • the address control unit 114 determines whether the address of the address bus 150 is an address assigned to the read data storage unit 113. Since the address control unit 114 is the address assigned to the read data storage unit 113 in the address bus 150 and is instructed to read data by the R / W signal, the request from the master 101 reads the prefetch data. Recognize that it is an action. That is, the address control unit 114 accepts a prefetch data read request from the master 101.
  • the address control unit 114 that has received the prefetch data read request outputs the read data permission signal 164 to the read data storage unit 113, the storage operation state holding unit 115, and the reception signal generation unit 116.
  • the read data storage unit 113 receives the read data permission signal 164 and outputs the stored data to the read data output bus 152.
  • the storage operation state holding unit 115 receives the read data permission signal 164 and outputs a prefetch operation state signal to the prefetch operation state signal bus 156.
  • the storage operation state holding unit 115 holds information indicating that the storage operation is being performed
  • the storage operation state holding unit 115 outputs a prefetch operation state signal indicating that the prefetch operation is being performed, thereby indicating that the storage operation is being performed.
  • a prefetch operation state signal indicating that the prefetch operation is not being executed is output.
  • the reception signal generator 116 receives the read data permission signal 164 and outputs a reception signal to the reception signal bus 155.
  • the reception signal generator 116 outputs a reception signal to the reception signal bus 155 even during the prefetch operation.
  • FIG. 3 is a flowchart showing the flow of prefetch processing of the master 101.
  • the master 101 requests a prefetch operation to the external device access apparatus 103 (S101).
  • the master 101 performs a process that can be executed until the prefetch data read operation is performed (S102).
  • the period during which the master 101 performs processing is a period until the prefetch operation is completed when the external device access apparatus 103 is normal.
  • the master 101 requests the external device access apparatus 103 to perform a prefetch data read operation (S103).
  • the master 101 receives the acceptance signal output to the acceptance signal bus 155, checks the prefetch operation state signal output to the prefetch operation state signal bus 156, and determines whether or not the prefetch operation is being executed (S104). ).
  • the master 101 executes processing using the read data output to the read data output bus 152 (S105).
  • the master 101 returns to the original processing (S107) and requests the external device access device 103 to read the prefetch data again (S103).
  • the external device access apparatus 103 outputs an acceptance signal to the master 101 even when the external device 102 is executing the prefetch operation due to an abnormal state or the like in the prefetch data read operation. As a result, the prefetch data read operation can be completed. Therefore, even when the external device 102 has not completed the prefetch operation due to an abnormal state or the like, the master 101 can move to the next process.
  • the external device access device 103 outputs a prefetch operation state signal.
  • the master 101 can determine whether or not the prefetch operation is being executed during the prefetch data read operation.
  • the master 101 can perform other processing when the prefetch operation is not completed. Therefore, the external device access apparatus 103 according to Embodiment 1 of the present invention can use the master 101 efficiently.
  • the external device access apparatus 103 outputs the prefetch operation state signal as an interrupt signal, a thread switching signal, or a flag signal that can be processed by the master software.
  • the master 101 outputs the prefetch operation state signal as an interrupt signal and a thread switching signal. Alternatively, it may be processed as a flag signal that can be processed by the master software.
  • the external device access apparatus according to Embodiment 2 of the present invention is a modification of the external device access apparatus 103 according to Embodiment 1 described above.
  • the external device access apparatus according to the second embodiment outputs data indicating that an error has occurred on the read data output bus 152 when the prefetch operation is not completed during the prefetch data read operation.
  • FIG. 4 is a block diagram showing the configuration of the external device access apparatus according to Embodiment 2 of the present invention.
  • the same elements as those in FIG. 2 are denoted by the same reference numerals, and redundant description is omitted.
  • the external device access apparatus 203 according to the second embodiment further includes an error data generation unit 130 and a selector 140 in addition to the configuration of the external device access apparatus 103 according to the first embodiment.
  • the external device access apparatus 203 is different from the first embodiment in that the external device access apparatus 203 is not connected to the master 101 via the prefetch operation state signal bus 156.
  • the error data generation unit 130 generates predetermined error data 180 and outputs it to the selector 140.
  • the selector 140 receives the read data stored in the read data storage unit 113 or the error data 180 output from the error data generation unit 130 in accordance with the prefetch operation state signal 165 output from the storage operation state holding unit 115.
  • the selected read data or error data 180 is output to the read data output bus 152.
  • the selector 140 selects the error data 180 when the prefetch operation state signal 165 indicates that the prefetch operation is being performed, and selects the read data when the prefetch operation state signal 165 indicates that the prefetch operation is not being performed. select.
  • Normal write operation and prefetch operation are the same as those in the first embodiment.
  • the prefetch data read operation will be described below.
  • the selector 140 selects the error data 180 and reads the selected error data 180 when the prefetch operation state signal 165 output from the storage operation state holding unit 115 indicates that the prefetch operation is being performed. The data is output to the data output bus 152. Further, when the prefetch operation state signal 165 indicates that the prefetch operation is not being performed, the selector 140 selects the read data stored in the read data storage unit 113 and outputs the selected read data to the read data output bus 152.
  • the master 101 determines that the prefetch operation is being performed and outputs the data to the read data output bus 152. If the received data is not error data 180, it can be determined that the prefetch operation has been completed.
  • the external device access apparatus 203 provides the prefetch operation state signal bus 156 with the master 101 in addition to the advantages of the external device access apparatus 103 according to the first embodiment. There is an advantage that it is not necessary.
  • the external device access apparatus 103 may output the read address output from the read address storage unit 112 instead of the error data 180 when the prefetch operation is being executed.
  • FIG. 5 is a diagram showing a configuration of a modified example of the external device access apparatus 203 according to Embodiment 2 of the present invention.
  • the external device access apparatus 213 shown in FIG. 5 does not include the error data generation unit 130, and the read address stored in the read address storage unit 112 is input to the selector 140 instead of the error data 180.
  • the selector 140 selects a read address stored in the read address storage unit 112 and outputs the selected read address to the read data output bus 152.
  • the master 101 can determine that the prefetch operation is being executed.
  • An external device access apparatus is a modification of external device access apparatus 103 according to Embodiment 1 described above.
  • the external device access apparatus according to the third embodiment further performs a prefetch execution state read operation that outputs information indicating whether or not the prefetch operation has been completed.
  • FIG. 6 is a block diagram showing the configuration of the external device access apparatus according to Embodiment 3 of the present invention.
  • the same elements as those in FIG. 2 are denoted by the same reference numerals, and redundant description is omitted.
  • the external device access apparatus 303 according to the third embodiment further includes a selector 141 in addition to the configuration of the external device access apparatus 103 according to the first embodiment.
  • the external device access apparatus 303 differs from the external device access apparatus 103 in the configuration of the address control unit 314.
  • the external device access apparatus 303 is different from the first embodiment in that the external device access apparatus 303 is not connected to the master 101 via the prefetch operation state signal bus 156.
  • the external device access device 303 performs a prefetch execution state read operation in addition to a normal write operation, a prefetch operation, and a prefetch data read operation.
  • the prefetch execution state read operation is an operation for outputting to the master 101 information indicating whether or not the prefetch operation is currently being executed.
  • the storage operation state holding unit 115 has an address assigned to the access space of the master 101 and can be accessed from the master 101.
  • the address control unit 314 accepts a request for a prefetch execution state read operation (hereinafter referred to as a prefetch execution state read request) from the master 101. Specifically, when the address output to the address bus 150 is an address assigned to the storage operation state holding unit 115 and the data read is instructed by the R / W signal, the address control unit 314 Recognizing that the request from the master 101 is a prefetch execution state read request, the prefetch execution state read request is accepted.
  • a prefetch execution state read request a request for a prefetch execution state read operation
  • the address control unit 314 performs a prefetch execution state read operation in response to a prefetch execution state read request.
  • the address control unit 314 performs a prefetch execution state read operation by controlling the read data storage unit 113 and the selector 141.
  • the address control unit 314 outputs a read data permission signal 164 and a storage operation state read permission signal 181 when receiving a prefetch execution state reading request.
  • the selector 141 selects the read data stored in the read data storage unit 113 and outputs the selected read data to the read data output bus 152 when the storage operation state read permission signal 181 is not output by the address control unit 314. To do.
  • the selector 141 selects the prefetch operation state signal 165 stored in the storage operation state read data storage unit 113 when the storage operation state read permission signal 181 is output by the address control unit 314, and selects the selected prefetch operation state signal. 165 is read and output to the data output bus 152.
  • Normal write operation and prefetch operation are the same as those in the first embodiment.
  • the prefetch data read operation will be described below.
  • the selector 141 selects the read data stored in the read data storage unit 113 and reads the selected read data because the storage operation state read permission signal 181 is not output by the address control unit 314. The data is output to the data output bus 152.
  • the master 101 In the prefetch execution state read operation, the master 101 outputs an address assigned to the storage operation state holding unit 115 to the address bus 150 and outputs an R / W signal instructing data read to the R / W signal bus 153.
  • the address control unit 314 determines whether the address of the address bus 150 is an address assigned to the read data storage unit 113 and whether it is an address assigned to the read storage operation state holding unit 115. Since the address control unit 314 is the address assigned to the storage operation state holding unit 115 and the data read is instructed by the R / W signal, the address control unit 314 executes the prefetch request. Recognize that this is a status read operation.
  • the address control unit 314 outputs the read data permission signal 164 to the read data storage unit 113, the storage operation state holding unit 115, and the reception signal generation unit 116, and outputs the storage operation state read permission signal 181 to the selector 141.
  • the storage operation state holding unit 115 receives the read data permission signal 164 and outputs a prefetch operation state signal 165.
  • the selector 141 selects the prefetch operation state signal 165 and outputs the selected prefetch operation state signal 165 to the read data output bus 152 since the storage operation state read permission signal 181 is output by the address control unit 314.
  • the reception signal generator 116 receives the read data permission signal 164 and outputs a reception signal to the reception signal bus 155.
  • the external device access apparatus 303 provides the prefetch operation state signal bus 156 with the master 101 in addition to the advantages of the external device access apparatus 103 according to the first embodiment. There is an advantage that it is not necessary.
  • the master 101 can perform an unnecessary prefetch data read operation by performing a prefetch execution state read operation before performing a prefetch data read operation.
  • An external device access apparatus is a modification of external device access apparatus 103 according to Embodiment 1 described above.
  • the external device access apparatus according to the fourth embodiment outputs an external device status signal indicating the status of the external device 102 to the master 101.
  • FIG. 7 is a block diagram showing the configuration of the external device access apparatus according to Embodiment 4 of the present invention.
  • the same elements as those in FIG. 2 are denoted by the same reference numerals, and redundant description is omitted.
  • the external device access apparatus 403 according to the fourth embodiment further includes a status signal storage unit 117 and a selector 142 in addition to the configuration of the external device access apparatus 103 according to the first embodiment.
  • the external device access apparatus 403 is connected to the master 101 via the external device status signal output bus 157 in addition to the connection relationship of the first embodiment, and is connected to the external device 102 via the external device status signal input bus 174. Connected.
  • the external device 102 outputs an external device status signal to the external device status signal input bus 174.
  • the external device state signal is a signal indicating the operation state of the external device 102, for example, an abnormal state or a signal indicating that a write or read operation is being performed due to access from another master.
  • the status signal storage unit 117 captures and stores an external device status signal output to the external device status signal input bus 174 by the external device 102 when the prefetch operation is completed.
  • the status signal storage unit 117 outputs an external device status signal to be stored to the selector 142.
  • the selector 142 In response to the prefetch operation state signal output to the prefetch operation state signal bus 156, the selector 142 outputs the external device state signal output to the external device state signal input bus 174 or the external device stored in the state signal storage unit 117.
  • the status signal is selected, and the selected external device status signal is output to the external device status signal output bus 157.
  • the selector 142 selects the external device status signal of the external device status signal input bus 174, and the prefetch operation status signal is not in the prefetch operation. Is selected, the external device status signal stored in the status signal storage unit 117 is selected.
  • the normal write operation is the same as in the first embodiment.
  • the status signal storage unit 117 captures and stores the external device status signal of the external device status signal input bus 174.
  • the prefetch data read operation will be described below.
  • the selector 142 sends the external device state signal of the external device state signal input bus 174 to the external device. Output to the status signal output bus 157. Further, when the prefetch operation state signal indicates that the prefetch operation is not in progress, the selector 142 outputs the external device state signal stored in the state signal storage unit 117 to the external device state signal output bus 157.
  • the external device access apparatus 403 notifies the master 101 of the current state of the external device 102, and when the prefetch operation has been completed, The master 101 is notified of the state of the external device 102.
  • the external device access apparatus 403 knows the state of the external device 102 in which the master 101 is executing prefetching in addition to the advantages of the external device access apparatus 103 according to the first embodiment. There is an advantage that you can. As a result, the master 101 can perform optimal processing according to the state of the external device 102.
  • An external device access apparatus is a modification of external device access apparatus 403 according to Embodiment 4 described above.
  • the external device access apparatus according to the fifth embodiment selects whether to output the acceptance signal immediately or to output the acceptance signal after completion of the prefetch operation according to the state of the external device 102 when the prefetch operation is being executed. To do.
  • FIG. 8 is a block diagram showing the configuration of the external device access apparatus according to the fifth embodiment of the present invention.
  • symbol is attached
  • the external device access apparatus 503 according to the fifth embodiment is different from the external device access apparatus 403 according to the fourth embodiment in the configuration of the reception signal generation unit 516.
  • the accept signal generation unit 516 receives the master signal according to the external device status signal of the external device status signal input bus 174 regardless of whether or not the prefetch operation is completed.
  • the operation of outputting to the master 101 or the operation of outputting the acceptance signal to the master 101 after completion of the prefetch operation is selectively performed.
  • the reception signal generation unit 516 responds to the read data permission signal 164, the prefetch operation state signal output from the storage operation state holding unit 115, and the external device state signal of the external device state signal input bus 174.
  • the operation for outputting the acceptance signal to the acceptance signal bus 155 is selected.
  • the reception signal generation unit 516 When the prefetch operation state signal indicates that the prefetch operation is not in progress, the reception signal generation unit 516 outputs the reception signal to the reception signal bus 155 when the read data permission signal 164 is output by the address control unit 114. .
  • reception signal generation unit 516 indicates that the prefetch operation state signal indicates that the prefetch operation is being performed and the external device state signal indicates that the external device 102 is operating normally. After the operation is completed, an acceptance signal is output to the acceptance signal bus 155.
  • reception signal generation unit 516 indicates that the prefetch operation state signal indicates that the prefetch operation is being performed, and the external device state signal indicates that the external device 102 is in an abnormal state. Without waiting for completion, when the read data permission signal 164 is output by the address control unit 114, the reception signal is output to the reception signal bus 155.
  • the external device access apparatus 503 outputs the acceptance signal immediately or the acceptance signal after completion of the prefetch operation, depending on the state of the external device 102 when the prefetch operation is being executed. Select whether to output.
  • the master 101 does not always have to perform the prefetch data read operation with a maximum latency period, and the minimum latency period can be reduced.
  • the prefetch data read operation may be performed after emptying. Therefore, the external device access apparatus 503 according to the fifth embodiment can use the master 101 more efficiently.
  • An external device access apparatus is a modification of external device access apparatus 403 according to Embodiment 4 described above.
  • the external device access apparatus according to the sixth embodiment further performs a prefetch stop operation that stops the prefetch operation.
  • FIG. 9 is a block diagram showing the configuration of the external device access apparatus according to Embodiment 6 of the present invention.
  • symbol is attached
  • the external device access apparatus 603 according to the sixth embodiment differs from the external device access apparatus 403 according to the fourth embodiment in the configuration of the read address storage unit 612 and the storage operation state holding unit 615.
  • the external device access apparatus 603 includes a prefetch stop control unit 131 in addition to the configuration of the external device access apparatus 403.
  • the external device access apparatus 603 is further connected to the external device 102 via the read stop signal bus 175.
  • External device access device 603 performs prefetch stop operation in addition to normal write operation, prefetch operation, and prefetch data read operation.
  • the prefetch stop operation is an operation to stop the currently executing prefetch operation.
  • the prefetch stop control unit 131 has an address assigned to the access space of the master 101 and can be accessed from the master 101.
  • the address control unit 614 receives a request for prefetch stop operation from the master 101 (hereinafter, prefetch stop request). Specifically, when the address output to the address bus 150 is an address assigned to the prefetch stop control unit 131 and data writing is instructed by the R / W signal, the address control unit 614 Recognizing that the request from 101 is a prefetch stop request, the prefetch stop request is accepted.
  • the address control unit 614 performs a prefetch stop operation in response to the prefetch stop request.
  • the address control unit 614 performs a prefetch stop operation by controlling the prefetch stop control unit 131.
  • the address control unit 614 outputs the write address 160 and the write permission signal 161 to the prefetch stop control unit 131 when receiving the prefetch stop request.
  • the prefetch stop control unit 131 outputs a read stop signal to the read stop signal bus 175 according to the write data of the write data input bus 151, the write address 160, and the write permission signal 161. Specifically, the prefetch stop control unit 131 performs address control when the write address 160 is an address assigned to the prefetch stop control unit 131 and the write data on the write data input bus 151 has a predetermined value. When the write permission signal 161 is output by the unit 614, the read stop signal is output to the read stop signal bus 175.
  • the read address storage unit 612 cancels the held read address when the prefetch stop control unit 131 outputs a read stop signal.
  • the storage operation state holding unit 615 cancels the information indicating that the storage operation is being held when the read stop signal is output by the prefetch stop control unit 131.
  • the external device 102 suspends the currently executing read operation when the prefetch stop control unit 131 outputs a read stop signal to the read stop signal bus 175.
  • the normal write operation, prefetch operation, and prefetch data read operation are the same as those in the fourth embodiment.
  • the prefetch stop operation is described below.
  • the master 101 In the prefetch execution state read operation, the master 101 outputs the address assigned to the prefetch stop control unit 131 to the address bus 150 and outputs an R / W signal instructing data writing to the R / W signal bus 153.
  • the address control unit 614 determines whether the address of the address bus 150 is an address assigned to the read data storage unit 113 and whether it is an address assigned to the prefetch stop control unit 131.
  • the address control unit 614 is the address assigned to the prefetch stop control unit 131 in the address bus 150 and is instructed to write data by the R / W signal. Recognize that.
  • the address control unit 614 outputs the write permission signal 161 to the write data storage unit 111, and outputs the write permission signal 161 and the address of the address bus 150 to the prefetch stop control unit 131 as the write address 160.
  • the prefetch stop control unit 131 allows the address control unit 614 to write.
  • a read stop signal is output to the read stop signal bus 175.
  • the read address storage unit 612 receives the read stop signal and cancels the held read address.
  • the storage operation state holding unit 615 receives the read stop signal and cancels the information indicating that the storage operation is being held.
  • the external device 102 receives the reading stop signal and stops the reading operation currently being executed.
  • the external device access apparatus 603 according to the sixth embodiment stops the prefetch operation in response to a request from the master 101. Accordingly, the master 101 can stop the prefetch operation according to the state of the external device. Therefore, the external device access apparatus 603 according to the sixth embodiment of the present invention has an advantage that the external device 102 can be used more efficiently in addition to the advantage of the external device access apparatus 403 according to the fourth embodiment.
  • An external device access apparatus is a modification of external device access apparatus 603 according to Embodiment 6 described above.
  • the external device access apparatus according to the seventh embodiment stops the prefetch operation according to the state of the external device 102 when the prefetch operation is being executed at the time of reading the prefetch data.
  • FIG. 10 is a block diagram showing the configuration of the external device access apparatus according to the seventh embodiment of the present invention.
  • symbol is attached
  • the external device access apparatus 703 according to the seventh embodiment is different from the external device access apparatus 603 according to the sixth embodiment in the configuration of the prefetch stop control unit 731.
  • the external device access device 703 performs a normal write operation, a prefetch operation, and a prefetch data read operation, and does not perform a prefetch stop operation in response to a request from the master 101.
  • the configuration of the address control unit 114 is the same as that in the fourth embodiment.
  • the prefetch stop control unit 731 uses the external device state signal input bus 174. In accordance with the external device status signal, control to stop the prefetch operation is performed.
  • the prefetch cancellation control unit 731 indicates that the prefetch operation state signal indicates that the prefetch operation is being performed, and the external device state signal indicates that the external device 102 is in an abnormal state.
  • the read data permission signal 164 is output by 114, a read stop signal is output to the read stop signal bus 175.
  • the external device access device 703 stops the prefetch operation. Thereby, the master 101 does not need to request the prefetch stop operation. Therefore, the external device access apparatus 703 according to the seventh embodiment of the present invention has an advantage that the processing of the master 101 can be reduced in addition to the advantages of the external device access apparatus 703 according to the sixth embodiment.
  • An external device access apparatus is a modification of external device access apparatus 403 according to Embodiment 4 described above.
  • the external device access apparatus according to the eighth embodiment outputs a prefetch operation state signal 165 to the external device state signal output bus 157 when prefetch is being executed.
  • FIG. 11 is a block diagram showing the configuration of the external device access apparatus according to the eighth embodiment of the present invention. Elements similar to those in FIGS. 6 and 7 are denoted by the same reference numerals, and redundant description is omitted.
  • the external device access apparatus 803 according to the eighth embodiment is different from the external device access apparatus 403 according to the fourth embodiment in the configuration of the storage operation state holding unit 815, the selector 144, and the address control unit 314.
  • the configuration of the address control unit 314 is the same as that in the third embodiment.
  • the external device access apparatus 803 includes a selector 143 in addition to the configuration of the external device access apparatus 403.
  • the storage operation state holding unit 815 further stores a prefetch data read state signal 182 that is a prefetch operation state when a prefetch data read request is accepted. That is, the prefetch data read state signal 182 indicates the execution state of the prefetch operation when prefetch data is read.
  • the storage operation state holding unit 815 outputs a prefetch data read state signal 182 to be stored to the selector 142.
  • the selector 143 selects the read data stored in the read data storage unit 113 and outputs the selected read data to the read data output bus 152 when the storage operation state read permission signal 181 is not output by the address control unit 314. To do.
  • the selector 141 selects the prefetch data read state signal 182 output from the storage operation state read data storage unit 113, and the selected prefetch data.
  • a read state signal 182 is output to the read data output bus 152.
  • the selector 144 selects the prefetch operation state signal 165 or the external device state signal stored in the state signal storage unit 117 according to the prefetch operation state signal 165, and selects the selected prefetch operation state signal 165 or the external device state signal.
  • the data is output to the external device status signal output bus 157.
  • the selector 144 selects the prefetch operation state signal 165 when the prefetch operation state signal 165 indicates that the prefetch operation is being performed, and the state signal when the prefetch operation state signal indicates that the prefetch operation is not being performed.
  • An external device status signal stored in the storage unit 117 is selected.
  • the prefetch data read operation will be described below.
  • the selector 143 selects the read data stored in the read data storage unit 113 and reads the selected read data. The data is output to the data output bus 152.
  • the selector 144 outputs a prefetch operation state signal 165 to the external device state signal output bus 157 when the prefetch operation is being executed, and is stored in the state signal storage unit 117 when the prefetch operation is completed. Status signal is output to the external device status signal output bus 157.
  • the storage operation state holding unit 115 stores the prefetch execution state at the time of the prefetch data read operation.
  • the external device access device 803 outputs the read data stored in the read data storage unit 113 to the read data output bus 152.
  • the prefetch operation state signal 165 is output to the external device state signal.
  • the master 101 can determine whether or not the external device access device 803 is executing the prefetch operation during the prefetch data read operation.
  • the selector 143 selects the prefetch data read state signal 182 output by the storage operation state holding unit 815.
  • the selected prefetch data read state signal 182 is output to the read data output bus 152.
  • the selector 144 outputs a prefetch operation state signal 165 to the external device state signal output bus 157 when the prefetch operation is being executed, and is stored in the state signal storage unit 117 when the prefetch operation is completed. Status signal is output to the external device status signal output bus 157.
  • the external device access apparatus 803 outputs the prefetch operation state signal 165 to the external device state signal output bus 157 when the prefetch operation is being performed in the prefetch execution state read operation. .
  • the master 101 can determine whether or not the external device access device 803 is executing the prefetch operation by requesting the prefetch execution state read operation.
  • the external device access device 803 In the prefetch execution state read operation, when the prefetch operation is completed, the external device access device 803 outputs a prefetch data read state signal 182 indicating whether or not the prefetch operation was being executed during the prefetch read operation.
  • the data is output to the read data output bus 152, and the state of the external device 102 during the prefetch read operation is output to the external device state signal output bus 157.
  • the master 101 can know the state of the external device 102 in which the master 101 is executing prefetch.
  • the external device access apparatus 803 according to the eighth embodiment of the present invention is prefetched in addition to the advantages of the external device access apparatus 303 according to the third embodiment and the external device access apparatus 403 according to the fourth embodiment.
  • the operation state signal bus 156 and the external device state signal output bus 157 can be integrated.
  • An external device access apparatus is a modification of external device access apparatus 103 according to Embodiment 1 described above.
  • the external device access apparatus according to the ninth embodiment selects whether to output the acceptance signal immediately or to output the acceptance signal after completion of the prefetch operation in accordance with the read acceptance control signal output by the master 101.
  • FIG. 12 is a block diagram showing the configuration of the external device access apparatus according to the ninth embodiment of the present invention.
  • the same elements as those in FIG. 2 are denoted by the same reference numerals, and redundant description is omitted.
  • the external device access apparatus 903 according to the ninth embodiment is different from the external device access apparatus 103 according to the first embodiment in the configuration of the reception signal generation unit 916.
  • the external device access apparatus 903 is connected to the master 101 via the read acceptance control signal bus 158 in addition to the connection relationship of the first embodiment.
  • the acceptance signal generation unit 916 completes the prefetch operation in response to the prefetch operation state signal of the prefetch operation state signal bus 156 and the read acceptance control signal of the read acceptance control signal bus 158 when the prefetch data read request is accepted.
  • An operation for outputting a reception signal to the master 101 or an operation for outputting a reception signal to the master 101 after completion of the prefetch operation is selectively performed regardless of whether or not the reception is performed.
  • the acceptance signal generation unit 916 receives the acceptance signal when the read data permission signal 164 is output by the address control unit 114. Output to bus 155.
  • the acceptance signal generation unit 916 receives the acceptance signal after the prefetch operation is completed. Is output to the reception signal bus 155.
  • reception signal generation unit 916 indicates that the prefetch operation state signal indicates that the prefetch operation is being performed and the read reception control signal is the second logic, without waiting for the completion of the prefetch operation.
  • the reception signal is output to the reception signal bus 155.
  • the external device access apparatus 903 outputs the acceptance signal immediately or performs prefetching when the prefetch operation is being executed according to the read acceptance control signal of the read acceptance control signal bus 158. Select whether to output an acceptance signal after the operation is completed.
  • the master 101 can selectively cause the external device access apparatus 903 to perform the operation of the first embodiment described above or the operation of returning an acceptance signal after the completion of the prefetch operation.
  • the master 101 may output the output of the read acceptance control signal in synchronization with the prefetch data read request by an instruction from the CPU or the microcomputer. Thereby, the master 101 can select two operations for each prefetch read operation. Therefore, the master 101 can perform more optimal processing.
  • two operations are selected by the read acceptance control signal output to the read acceptance control signal bus 158, but two addresses are assigned to the read data storage unit 113, and one of the two addresses is selected. Two operations may be selected by selecting.
  • the address control unit 114 outputs a first prefetch data read request that immediately outputs an acceptance signal when the first address is output from the two addresses assigned to the read data storage unit 113 from the master 101. Accept.
  • the address control unit 114 outputs a second prefetch data that outputs an acceptance signal after the prefetch operation is completed when the second address is output from the two addresses assigned to the read data storage unit 113 from the master 101. Accept the request.
  • the address control unit 114 outputs a control signal according to whether the received prefetch data read request is a first prefetch data read request or a second prefetch data read request to the acceptance signal generation unit 916.
  • the acceptance signal generation unit 916 performs an operation of immediately outputting an acceptance signal when a first prefetch data read request is accepted, and performs a prefetch operation when a second prefetch data read request is accepted.
  • An operation of outputting an acceptance signal may be performed after completion of.
  • An external device access apparatus is a modification of external device access apparatus 103 according to Embodiment 1 described above.
  • the external device access apparatus according to the tenth embodiment performs a prefetch read control operation for setting whether to output an acceptance signal immediately or to output an acceptance signal after completion of the prefetch operation.
  • FIG. 13 is a block diagram showing the configuration of the external device access apparatus according to the tenth embodiment of the present invention.
  • the same elements as those in FIG. 2 are denoted by the same reference numerals, and redundant description is omitted.
  • the external device access apparatus 1003 according to the tenth embodiment further includes a read control unit 132 in addition to the configuration of the external device access apparatus 103 according to the first embodiment.
  • the external device access apparatus 1003 differs from the external device 102 in the configuration of the address control unit 1014 and the reception signal generation unit 1016.
  • External device access apparatus 1003 performs a prefetch read control operation in addition to a normal write operation, a prefetch operation, and a prefetch data read operation.
  • the prefetch read control operation is an operation for setting whether to output a reception signal immediately or to output a reception signal after completion of the prefetch operation when the prefetch operation is being executed during the prefetch data read operation.
  • the read control unit 132 has an address assigned to the access space of the master 101 and can be accessed from the master 101.
  • the address control unit 1014 accepts a request for a prefetch read control operation (hereinafter referred to as a prefetch read control request) from the master 101. Specifically, when the address output to the address bus 150 is the address assigned to the read control unit 132 and the data write is instructed by the R / W signal, the address control unit 1014 determines that the master 101 Is recognized as a prefetch read control request, and a prefetch read control request is accepted.
  • a prefetch read control request a request for a prefetch read control operation
  • the address control unit 1014 performs a prefetch read control operation in response to a prefetch read control request.
  • the address control unit 1014 performs a prefetch read control operation by controlling the read control unit 132.
  • the address control unit 1014 outputs the write address 160 and the write permission signal 161 to the read control unit 132 when receiving the prefetch read control request.
  • the read control unit 132 When a prefetch read control operation request is accepted, the read control unit 132 outputs a reception signal immediately after the prefetch operation is completed according to the designation from the master 101 or a read control signal 183 indicating whether the acceptance signal is output after completion of the prefetch operation. Is set. The read control unit 132 outputs the set read control signal 183 to the acceptance signal generation unit 1016.
  • the write address 160 is an address assigned to the read control unit 132, and when the write permission signal 161 is output by the address control unit 1014, the read control unit 132 uses the write data input bus 151. A read control signal 183 corresponding to the write data is held.
  • the acceptance signal generation unit 1016 outputs an acceptance signal to the acceptance signal bus 155 according to the read data permission signal 164, the prefetch operation state signal output from the storage operation state holding unit 115, and the read control signal 183.
  • the acceptance signal generation unit 1016 receives the acceptance signal when the read data permission signal 164 is output by the address control unit 114. Output to bus 155.
  • the acceptance signal generation unit 1016 indicates that the prefetch operation status signal indicates that the prefetch operation is being performed, and the read control signal 183 indicates that the acceptance signal is output after the completion of the prefetch operation. After the operation is completed, an acceptance signal is output to the acceptance signal bus 155.
  • reception signal generation unit 1016 indicates that the prefetch operation is completed when the prefetch operation state signal indicates that the prefetch operation is being performed and the read control signal 183 indicates that the reception signal is to be output immediately. Without waiting, when the read data permission signal 164 is output by the address control unit 114, the reception signal is output to the reception signal bus 155.
  • Normal write operation and prefetch operation are the same as those in the first embodiment.
  • the prefetch data read operation will be described below.
  • the reception signal generation unit 1016 selects whether to output a reception signal immediately or to output a reception signal after completion of the prefetch operation in accordance with the read control signal 183.
  • the reception signal generation unit 1016 sends the reception signal to the reception signal bus 155 after the prefetch operation is completed. Output.
  • the reception signal generation unit 1016 If the read control signal 183 indicates that the reception signal is to be output immediately, the reception signal generation unit 1016 outputs the read data permission signal 164 by the address control unit 114 without waiting for the completion of the prefetch operation.
  • the acceptance signal is output to the acceptance signal bus 155.
  • the master 101 In the prefetch read control operation, the master 101 outputs an address assigned to the read control unit 132 to the address bus 150 and outputs an R / W signal instructing data writing to the R / W signal bus 153.
  • the address control unit 1014 determines whether the address of the address bus 150 is an address assigned to the read data storage unit 113 and whether the address is assigned to the read control unit 132.
  • the address controller 1014 is the address assigned to the read controller 132 in the address bus 150 and is instructed to write data by the R / W signal, so that the request from the master 101 is a prefetch read control operation. Recognize that.
  • the address control unit 1014 outputs the write permission signal 161 to the write data storage unit 111, and outputs the write permission signal 161 and the address of the address bus 150 to the read control unit 132 as the write address 160.
  • the read control unit 132 Since the write address 160 is an address assigned to the read control unit 132, the read control unit 132 responds to the write data on the write data input bus 151 when the write permission signal 161 is output by the address control unit 614.
  • the read control signal 183 stored is stored, and the stored read control signal 183 is output to the reception signal generator 1016.
  • reception signal generation unit 1016 receives the write permission signal 161 output from the address control unit 1014, and outputs a reception signal to the reception signal bus 155 when the read control unit 132 stores the read control signal 183.
  • the external device access apparatus 1003 sets whether to output the acceptance signal immediately or to output the acceptance signal after completion of the prefetch operation by the prefetch read control operation.
  • the master 101 can switch between the operation of the above-described first embodiment of the external device access apparatus 1003 and the operation of returning an acceptance signal after completion of the prefetch operation.
  • the external device access apparatus 1003 according to the tenth embodiment does not need to newly provide the read acceptance control signal bus 158 with the master 101 with respect to the external device access apparatus 903 according to the ninth embodiment.
  • An external device access apparatus is a modification of external device access apparatus 103 according to Embodiment 1 described above.
  • the external device access apparatus according to the eleventh embodiment is information indicating the time from when a prefetch data read request is received from the master 101 to when the prefetch operation is completed when the prefetch data is being read. Output some debugging information.
  • FIG. 14 is a block diagram showing a configuration of an external device access apparatus according to Embodiment 11 of the present invention.
  • the same elements as those in FIG. 2 are denoted by the same reference numerals, and redundant description is omitted.
  • the external device access apparatus 1103 according to the eleventh embodiment further includes a cycle count unit 118 in addition to the configuration of the external device access apparatus 103 according to the first embodiment.
  • the external device access apparatus 1103 is different from the external device 102 in the configuration of the reception signal generation unit 1116.
  • the external device access apparatus 1103 is connected to the master 101 via the debug information bus 159 in addition to the connection relationship of the external device access apparatus 103. Further, the external device access device 1103 is not connected to the master 101 via the prefetch operation state signal bus 156.
  • the reception signal generation unit 1116 When the prefetch operation state signal 165 indicates that the prefetch operation is not in progress, the reception signal generation unit 1116 outputs the reception signal to the reception signal bus 155 when the read data permission signal 164 is output by the address control unit 114. To do.
  • the reception signal generation unit 1016 outputs a reception signal to the reception signal bus 155 after the prefetch operation is completed.
  • the cycle count unit 118 counts the time from when the prefetch data read request is accepted until the prefetch operation is completed. Specifically, the cycle count unit 118 starts from the time when the read data permission signal 164 is output by the address control unit 114 and the prefetch operation state signal 165 held by the storage operation state holding unit 115 is being executed. The number of cycles until the prefetch operation is changed to completion is counted. The cycle count unit 118 outputs the counted number of cycles to the debug information bus 159 as debug information.
  • the external device access apparatus 1103 performs prefetch operation from the time when a prefetch data read request is received from the master 101 during prefetch data read operation.
  • Debug information that is information indicating the time until completion is output to the debug information bus 159.
  • the master 101 can change the timing for requesting the prefetch data read operation to the time after the prefetch operation is completed. Therefore, the master 101 does not need to request a plurality of prefetch data read operations, so that the efficiency can be improved.
  • An external device access apparatus is a modification of external device access apparatus 1103 according to Embodiment 11 described above.
  • the external device access apparatus according to the twelfth embodiment performs a debug information read operation for reading debug information and outputting it to the data output bus 152.
  • FIG. 15 is a block diagram showing a configuration of an external device access apparatus according to Embodiment 12 of the present invention. Note that the same elements as those in FIG. 14 are denoted by the same reference numerals, and redundant description is omitted.
  • the external device access apparatus 1203 according to the twelfth embodiment further includes a count value storage unit 133 and a selector 145 in addition to the configuration of the external device access apparatus 1103 according to the eleventh embodiment.
  • the external device access apparatus 1203 is different from the external device access apparatus 1103 in the configuration of the address control unit 1214.
  • the configuration of the reception signal generation unit 116 is the same as that in the first embodiment.
  • the external device access apparatus 1203 is connected to the master 101 via the prefetch operation state signal bus 156 and not connected to the master 101 via the debug information bus 159, as in the connection relationship of the first embodiment.
  • External device access device 1203 performs debug information read operation in addition to normal write operation, prefetch operation, and prefetch data read operation.
  • the debug information read operation includes debug information that is information indicating the time from when the prefetch data read request is received from the master 101 to when the prefetch operation is completed when the prefetch operation is being executed during the prefetch data read operation. It is an operation to output.
  • the count value storage unit 133 has an address assigned to the access space of the master 101 and can be accessed from the master 101.
  • the count value storage unit 133 stores debug information output by the cycle count unit 118 when the prefetch operation state signal of the prefetch operation state signal bus 156 is changed from execution of the prefetch operation to completion of the prefetch operation.
  • the address control unit 1214 accepts a request for a debug information read operation from the master 101 (hereinafter referred to as a debug information read request). Specifically, when the address output to the address bus 150 is the address assigned to the count value storage unit 133 and the data read is instructed by the R / W signal, the address control unit 1214 Recognizing that the request from 101 is a debug information read request, the debug information read request is accepted.
  • the address control unit 1214 performs a debug information read operation in response to a debug information read request.
  • the address control unit 1214 controls the selector 145 to perform a debug information read operation.
  • the address control unit 1214 outputs a count value read permission signal 184 to the selector 145 when receiving a debug information read request.
  • the selector 145 selects the read data stored in the read data storage unit 113 and the debug information stored in the count value storage unit 133 according to the count value read permission signal 184 output from the address control unit 1214.
  • the selected read data or debug information is output to the read data output bus 152.
  • the selector 145 selects read data when the address control unit 1214 does not output the count value read permission signal 184, and the selector 145 selects the count value read permission signal 184 when the address control unit 1214 outputs the count value read permission signal 184. , Select debug information.
  • the prefetch data read operation will be described below.
  • the cycle count unit 118 counts the number of cycles from the time when the prefetch data read operation is performed until the prefetch operation is completed. To do.
  • the cycle count unit 118 outputs the counted number of cycles to the count value storage unit 133 as debug information.
  • the count value storage unit 133 stores debug information output by the cycle count unit 118 when the prefetch operation state signal of the prefetch operation state signal bus 156 is changed from execution of the prefetch operation to completion of the prefetch operation.
  • the selector 145 outputs the read data stored in the read data storage unit 113 to the read data output bus 152 because the count value read permission signal 184 is not output by the address control unit 1214.
  • the master 101 outputs the address assigned to the count value storage unit 133 to the address bus 150 and outputs the R / W signal that instructs the R / W signal bus 153 to read data.
  • the address control unit 1214 determines whether the address of the address bus 150 is an address assigned to the read data storage unit 113 and whether it is an address assigned to the count value storage unit 133. Since the address control unit 1214 is the address assigned to the count value storage unit 133 with the address of the address bus 150 and is instructed to read data by the R / W signal, the request from the master 101 reads the debug information. Recognize that it is an action.
  • the address control unit 1214 outputs a count value read permission signal 184 to the selector 145.
  • the selector 145 reads the debug information stored in the count value storage unit 133 and outputs it to the data output bus 152 because the count value read permission signal 184 is output by the address control unit 1214.
  • the external device access apparatus 1203 reads the debug information and outputs it to the data output bus 152 by the debug information read operation.
  • the master 101 can change the timing for requesting the prefetch data read operation to the time after the prefetch operation is completed. Therefore, the master 101 does not need to request a plurality of prefetch data read operations, so that the efficiency can be improved.
  • the external device access apparatus 1203 has an advantage that the debug information bus 159 does not need to be provided between the external device access apparatus 1103 according to the eleventh embodiment and the master 101.
  • the present invention can be applied to an external device access apparatus and a system LSI including a master such as a CPU or a microcomputer and an external device such as a coprocessor or an accelerator.
  • a master such as a CPU or a microcomputer
  • an external device such as a coprocessor or an accelerator.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Bus Control (AREA)
  • Memory System Of A Hierarchy Structure (AREA)

Abstract

 本発明に係る外部デバイスアクセス装置(103)は、マスタ(101)からのプリフェッチ要求及びプリフェッチデータ読み出し要求を受け付け、プリフェッチ動作及びプリフェッチデータ読み出し動作を行うアドレス制御部(114)と、プリフェッチ動作により読み出されたデータを格納する読み出しデータ格納部(113)と、プリフェッチ動作が完了したか否かを示すプリフェッチ動作状態を保持する格納動作状態保持部(115)と、マスタ(101)からのプリフェッチデータ読み出し要求を受け付けたことを示す受理信号をマスタ(101)に出力する受理信号生成部(116)とを備え、プリフェッチ動作状態に基づくプリフェッチ動作の状態を示す第1情報をマスタ(101)に出力する。

Description

外部デバイスアクセス装置、その制御方法及びシステムLSI
 本発明は、外部デバイスアクセス装置、その制御方法及びシステムLSIに関し、特に、マスタからの要求に応じて、外部デバイスへプリフェッチアクセスを行う外部デバイスアクセス装置に関する。
 メディア処理において、外部デバイスがマスタをアシストすることが有効な場合がある。このためにマスタは、外部デバイスを拡張するための拡張バスを有する場合がある。
 ここで、メディア処理とは、音声処理及び画像処理などのデータ処理一般のことであり、マスタとはCPU又はマイコン等の主制御を担当する装置のことであり、外部デバイスとはCPU又はマイコン等をアシストするコプロセッサ、アクセラレータ又はメモリ等の周辺装置のことである。
 マスタは、アクセス空間に外部デバイスの資源を割り当てることで、当該外部デバイスの資源をマスタの拡張された資源として扱うことができる。これにより、マスタと外部デバイスとの通信を高速に行うことが可能となる。ここで、アクセス空間とはマスタがアクセスできるプログラムアクセス、データアクセス及び入出力アクセス等のためにアドレスの割り当てられた空間のことである。
 外部デバイスに対して、マスタの処理性能を向上させるために、プリフェッチという手法が用いられている。プリフェッチとは、マスタが先行的に読み出し要求を行い、ある一定のレイテンシ期間の後に先行的に読み出したデータを取得して次の処理を行う手法である。
 例えば、マスタからの要求に応じて、外部デバイスに対するプリフェッチ動作を行う外部デバイスアクセス装置が知られている(例えば、特許文献1参照。)。特許文献1記載の従来の外部デバイスアクセス装置は、マスタからの要求に応じて、外部デバイスからデータを読み出し、読み出したデータを一時的に格納するプリフェッチ動作と、格納したデータをマスタに出力するプリフェッチデータ読み出し動作とを行う。
 また、従来の外部デバイスアクセス装置は、外部デバイスに対してプリフェッチ動作中のときに、マスタからの要求に応じてプリフェッチデータ読み出し動作を行う場合、プリフェッチ動作の完了と同期をとって読み出しデータをマスタに出力する。これにより、プリフェッチ動作完了前の誤ったデータをマスタに出力することを回避できる。
 図1は、従来の外部デバイスアクセス装置を用いた場合のマスタの処理の流れを示すフローチャートである。
 まず、マスタは、外部デバイスに対してプリフェッチ動作を行う(S501)。次に、マスタは、プリフェッチデータ読み出しを行うまでに実行可能な処理を行う(S502)。ここで、マスタが処理を行う期間は、外部デバイスが正常時にプリフェッチ動作を完了するまでの期間である。次に、マスタは、プリフェッチデータを読み出す(S503)。プリフェッチ動作が完了している場合(S504でNo)、マスタは、読み出したデータを用いて処理を実行する(S505)。このようにプリフェッチ動作が完了するある一定期間で外部デバイスが応答できた場合、問題はない。
国際公開第2006/134804号パンフレット
 しかしながら、外部デバイスの異常状態、又は他のマスタからのアクセスの競合などによりプリフェッチ動作が完了していない場合(S504でYes)、マスタはプリフェッチ動作が完了するまで待機状態となる。これにより、従来の技術には、マスタの処理効率が低下するという課題がある。
 本発明は、上記課題を解決するためのものであり、マスタを効率的に使用できる外部デバイスアクセス装置及びシステムLSIを提供することを目的とする。
 上記目的を達成するために、本発明に係る外部デバイスアクセス装置は、マスタからの要求に応じて、外部デバイスからデータを読み出すプリフェッチ動作と、前記プリフェッチ動作で読み出したデータを前記マスタに出力するプリフェッチデータ読み出し動作を行う外部デバイスアクセス装置であって、前記マスタからのプリフェッチ要求及びプリフェッチデータ読み出し要求を受け付け、前記プリフェッチ動作及び前記プリフェッチデータ読み出し動作を行う制御部と、前記プリフェッチ動作により読み出されたデータを格納するデータ格納部と、前記プリフェッチ動作が完了したか否かを示すプリフェッチ動作状態を保持する状態保持部と、前記マスタからの前記プリフェッチデータ読み出し要求を受け付けたことを示す受理信号を前記マスタに出力する受理信号生成部とを備え、前記制御部は、前記プリフェッチデータ読み出し動作として、前記データ格納部に格納されるデータを前記マスタに出力し、前記制御部は、前記プリフェッチ動作状態に基づく前記プリフェッチ動作の状態を示す第1情報を前記マスタに出力する。
 この構成によれば、本発明に係る外部デバイスアクセス装置は、プリフェッチ動作の状態を示す第1情報をマスタに出力する。これにより、マスタは、プリフェッチデータ読み出し動作時に、プリフェッチ動作が完了していない場合には、別の処理を先に行うことができる。よって、本発明に係る外部デバイスアクセス装置は、マスタを効率的に使用できる。
 また、前記受理信号生成部は、前記制御部により前記プリフェッチデータ読み出し要求が受け付けられた際に、前記プリフェッチ動作が完了しているか否かによらず、前記受理信号を前記マスタに出力し、前記制御部は、前記プリフェッチデータ読み出し要求を受け付けた際に、前記第1情報を前記マスタに出力してもよい。
 この構成によれば、マスタは、受理信号を受信することで、プリフェッチ動作が完了していない場合に、別の処理を先に行うことができる。
 また、前記制御部は、前記プリフェッチ動作状態を前記第1情報として前記マスタに出力してもよい。
 この構成によれば、マスタは、外部デバイスアクセス装置がプリフェッチ動作を完了しているか否かを判断できる。
 また、前記外部デバイスアクセス装置と前記マスタとは、読み出しデータバスを介して接続され、前記制御部は、前記データ格納部に格納されるデータ及び前記第1情報を前記読み出しデータバスを介して前記マスタに出力してもよい。
 この構成によれば、外部デバイスアクセス装置からマスタに第1情報を出力するための専用のバスを設けなくてもよい。
 また、前記制御部は、前記プリフェッチ動作状態により前記プリフェッチ動作が完了したことが示される場合、前記データ格納部に格納されるデータを前記読み出しデータバスを介して前記マスタに出力し、前記プリフェッチ動作状態により前記プリフェッチ動作が完了していないことが示される場合、予め定められたデータを前記第1情報として前記読み出しデータバスを介して前記マスタに出力してもよい。
 また、前記制御部は、前記プリフェッチ動作状態により前記プリフェッチ動作が完了したことが示される場合、前記データ格納部に格納されるデータを前記読み出しデータバスを介して前記マスタに出力し、前記プリフェッチ動作状態により前記プリフェッチ動作が完了していないことが示される場合、当該プリフェッチ動作により読み出しを行っている前記外部デバイスのアドレスを前記第1情報として前記読み出しデータバスを介して前記マスタに出力してもよい。
 また、前記制御部は、さらに、前記マスタからのプリフェッチ動作状態読み出し要求を受け付け、前記制御部は、前記プリフェッチ動作状態読み出し要求を受け付けた場合、前記第1情報を前記マスタに出力してもよい。
 この構成によれば、マスタは、プリフェッチデータ読み出し動作の前に、プリフェッチ動作状態読み出し要求を行うことで、不要なプリフェッチデータ読み出し要求を行わなくてもよい。
 また、前記外部デバイスは、当該外部デバイスの動作状態を示す状態信号を出力し、前記外部デバイスアクセス装置は、さらに、前記プリフェッチ動作が完了した際の、前記状態信号を格納する状態信号格納部と、前記プリフェッチ動作状態により前記プリフェッチ動作が完了したことが示される場合、前記状態信号格納部に格納される前記状態信号を前記マスタに出力し、前記プリフェッチ動作状態により前記プリフェッチ動作が完了していないことが示される場合、前記外部デバイスにより出力されている状態信号を前記マスタに出力する状態信号出力部とを備えてもよい。
 この構成によれば、マスタは、プリフェッチ実行中の外部デバイスの状態を把握できる。これにより、マスタは、外部デバイスの状態に応じて最適な処理を行える。
 また、前記外部デバイスは、当該外部デバイスの動作状態を示す状態信号を出力し、前記受理信号生成部は、前記制御部により前記プリフェッチデータ読み出し要求が受け付けられた際に、前記状態信号に応じて、前記プリフェッチ動作が完了しているか否かによらず、前記受理信号を前記マスタに出力する第1動作、又は、前記プリフェッチ動作が完了した後に前記受理信号を前記マスタに出力する第2動作を選択的に行ってもよい。
 この構成によれば、本発明に係る外部デバイスアクセス装置は、外部デバイスの状態に応じて、受理信号を直ちに出力するか、プリフェッチ動作の完了後に受理信号を出力するかを選択できる。これにより、正常時のプリフェッチ完了までのレイテンシが可変の外部デバイスに対しても、マスタは、常に最大のレイテンシ期間を空けてプリフェッチデータ読み出し動作を行わなくてもよく、最小のレイテンシ期間を空けてプリフェッチデータ読み出し動作を行えばよい。
 また、前記制御部は、さらに、前記マスタからのプリフェッチ中止要求を受け付け、前記外部デバイスアクセス装置は、さらに、前記制御部により、前記プリフェッチ中止要求が受け付けられた場合、前記プリフェッチ動作を中止するプリフェッチ中止部を備えてもよい。
 この構成によれば、マスタは、外部デバイスの状態に応じて、プリフェッチ動作を中止できる。
 また、前記外部デバイスは、当該外部デバイスの動作状態を示す状態信号を出力し、前記外部デバイスアクセス装置は、さらに、前記制御部により、前記プリフェッチデータ読み出し要求が受け付けられ、かつ、前記プリフェッチ動作状態により前記プリフェッチ動作が完了していないことが示される場合、前記外部デバイスにより出力されている前記状態信号に応じて、前記プリフェッチ動作を中止するプリフェッチ中止部を備えてもよい。
 この構成によれば、本発明に係る外部デバイスアクセス装置は、プリフェッチデータ読み出し動作時において、プリフェッチ動作が実行中であり、かつ外部デバイスが異常状態の場合には、プリフェッチ動作を自動的に中止する。これにより、マスタは、プリフェッチ動作を中止する制御を行わなくてもよい。よって、本発明に係る外部デバイスアクセス装置は、マスタの処理を削減できる。
 また、前記外部デバイスは、当該外部デバイスの動作状態を示す状態信号を出力し、前記外部デバイスアクセス装置と前記マスタとは、第1信号バスを介して接続され、前記外部デバイスアクセス装置は、さらに、前記プリフェッチ動作が完了した際の、前記状態信号を格納する状態信号格納部と、前記制御部により前記プリフェッチデータ読み出し要求が受け付けられた際の、前記プリフェッチ動作状態である読み出し時プリフェッチ動作状態を格納する読み出し時状態格納部と、前記プリフェッチ動作状態により前記プリフェッチ動作が完了していないことが示される場合、当該プリフェッチ動作状態を、前記第1信号バスを介して前記マスタに出力し、前記プリフェッチ動作状態により前記プリフェッチ動作が完了していることが示される場合、前記状態信号格納部により格納される状態信号を、前記第1信号バスを介して前記マスタに出力する信号出力部とを備え、前記制御部は、前記プリフェッチ動作状態読み出し要求を受け付けた場合、前記読み出し時プリフェッチ動作状態を前記第1情報として前記マスタに出力してもよい。
 この構成によれば、本発明に係る外部デバイスアクセス装置は、プリフェッチ動作状態と状態信号とを第1信号バスを介してマスタに出力する。これにより、プリフェッチ動作状態を出力するバスと、状態信号を出力するバスとを個別に設けなくてもよい。
 また、前記受理信号生成部は、前記制御部により前記プリフェッチデータ読み出し要求が受け付けられた際に、前記プリフェッチ動作が完了しているか否かによらず、前記受理信号を前記マスタに出力する第1動作、又は、前記プリフェッチ動作が完了した後に前記受理信号を前記マスタに出力する第2動作を選択的に行ってもよい。
 この構成によれば、本発明に係る外部デバイスアクセス装置は、受理信号を直ちに出力するか、プリフェッチ動作の完了後に受理信号を出力するかを選択できる。
 また、前記受理信号生成部は、前記マスタから出力される制御信号に応じて、前記第1動作又は前記第2動作を選択的に行ってもよい。
 この構成によれば、マスタは、第1動作及び第2動作を選択できる。
 また、前記プリフェッチ読み出し要求は、第1プリフェッチデータ読み出し要求と、第2プリフェッチデータ読み出し要求とを含み、前記制御部は、前記マスタから第1アドレスが出力された場合に、前記第1プリフェッチデータ読み出し要求を受け付け、前記マスタから第2アドレスが出力された場合に、前記第2プリフェッチデータ読み出し要求を受け付け、前記受理信号生成部は、前記制御部により前記第1プリフェッチデータ読み出し要求が受け付けられた場合、前記第1動作を行い、前記制御部により前記第2プリフェッチデータ読み出し要求が受け付けられた場合、前記第2動作を行ってもよい。
 この構成によれば、外部デバイスアクセス装置とマスタとの間に、新たに制御用のバスを設けることなく、マスタは第1動作及び第2動作を選択できる。
 また、前記外部デバイスアクセス装置は、さらに、第1状態又は第2状態が設定される状態設定部を備え、前記制御部は、さらに、前記マスタからのプリフェッチ読み出し制御動作要求を受け付け、前記制御部は、前記プリフェッチ読み出し制御動作要求を受け付けた場合、前記マスタからの指定された前記第1状態又は前記第2状態を前記状態設定部に設定し、前記受理信号生成部は、前記状態設定部に前記第1状態が設定されている場合に前記第1動作を行い、前記状態設定部に前記第2状態が設定されている場合に前記第2動作を行ってもよい。
 この構成によれば、外部デバイスアクセス装置とマスタとの間に、新たに制御用のバスを設けることなく、マスタは第1動作及び第2動作を選択できる。
 また、前記外部デバイスアクセス装置は、さらに、前記プリフェッチ動作の実行中に、前記制御部によりプリフェッチデータ読み出し要求が受け付けられた場合に、当該プリフェッチデータ読み出し要求が受け付けられてから、当該プリフェッチ動作が完了するまでの時間をカウントするカウント部を備え、前記制御部は、前記カウント部によりカウントされた時間を前記第1情報として前記マスタに出力してもよい。
 この構成によれば、マスタは、プリフェッチデータ読み出し動作を要求するタイミングを、プリフェッチ動作が完了した後の時刻に変更できる。よって、マスタは、複数回のプリフェッチデータ読み出し動作を要求しなくてもよいので、効率を向上できる。
 また、前記制御部は、さらに、前記マスタからの時間読み出し要求を受け付け、前記外部デバイスアクセス装置は、さらに、前記カウント部によりカウントされた時間を格納する時間格納部を備え、前記制御部は、前記時間読み出し要求を受け付けた場合、前記時間格納部に格納される前記時間を前記第1情報として前記マスタに出力してもよい。
 この構成によれば、外部デバイスアクセス装置は、マスタとの間に新たに信号出力用のバスを設けることなく、マスタにプリフェッチ動作が完了するまでの時間を通知できる。
 また、本発明に係るシステムLSIは、前記外部デバイスアクセス装置と、マスタとを備えるシステムLSIであって、前記外部デバイスアクセス装置は、前記第1情報を前記マスタの割り込み信号、又はスレッド切り替え信号として出力し、前記マスタは、前記第1情報を、割り込み処理、又はスレッド切り替え信号として処理する。
 また、本発明に係るシステムLSIは、前記外部デバイスアクセス装置と、マスタとを備えるシステムLSIであって、前記外部デバイスアクセス装置は、前記第1情報を前記マスタがソフト処理可能なフラグ信号として出力し、前記マスタは、前記第1情報を、ソフト処理可能なフラグ信号として処理する。
 また、本発明に係るシステムLSIは、前記外部デバイスアクセス装置と、マスタとを備えるシステムLSIであって、前記マスタは、前記制御信号を、前記プリフェッチデータ読み出し要求と同期して、前記外部デバイスアクセス装置に出力する。
 この構成によれば、CPU又はマイコンなどの命令によって、マスタは、読み出し受理制御信号の出力を、プリフェッチデータ読み出し要求と同期させることで、プリフェッチ読み出し動作ごとに2つの動作を選択できる。よって、マスタはより最適な処理を行うことができる。
 また、本発明に係る制御方法は、マスタからの要求に応じて、外部デバイスからデータを読み出すプリフェッチ動作と、前記プリフェッチ動作で読み出したデータを前記マスタに出力するプリフェッチデータ読み出し動作を行う外部デバイスアクセス装置の制御方法であって、前記マスタからのプリフェッチ要求を受け付けるプリフェッチ要求受け付けステップと、前記プリフェッチ要求を受け付けた場合、前記外部デバイスからデータを読み出し、読み出したデータをデータ格納部に格納するプリフェッチステップと、前記プリフェッチステップが完了したか否かを示すプリフェッチ動作状態を保持する状態保持ステップと、前記マスタからのプリフェッチデータ読み出し要求を受け付けるプリフェッチデータ読み出し要求受け付けステップと、前記プリフェッチデータ読み出し要求を受け付けた場合、当該プリフェッチデータ読み出し要求を受け付けたことを示す受理信号を前記マスタに出力する受理信号生成ステップと、前記プリフェッチデータ読み出し要求を受け付けた場合、前記データ格納部に格納されるデータを前記マスタに出力するプリフェッチデータ読み出しステップと、前記プリフェッチ動作状態に基づく前記プリフェッチ動作の状態を示す第1情報を前記マスタに出力する第1情報出力ステップとを含む。
 これによれば、本発明に係る外部デバイスアクセス装置の制御方法は、プリフェッチ動作の状態を示す第1情報をマスタに出力する。これにより、マスタは、プリフェッチデータ読み出し動作時に、プリフェッチ動作が完了していない場合には、別の処理を先に行うことができる。よって、本発明に係る外部デバイスアクセス装置の制御方法は、マスタを効率的に使用できる。
 なお、本発明は、このような外部デバイスアクセス装置として実現できるだけでなく、外部デバイスアクセス装置に含まれる特徴的な手段をステップとする外部デバイスアクセス装置の制御方法として実現したり、そのような特徴的なステップをコンピュータに実行させるプログラムとして実現したりすることもできる。そして、そのようなプログラムは、CD-ROM等の記録媒体及びインターネット等の伝送媒体を介して流通させることができるのは言うまでもない。
 以上より、本発明は、マスタを効率的に使用できる外部デバイスアクセス装置、その制御方法及びシステムLSIを提供できる。
図1は、従来の外部デバイスアクセス装置を用いた場合の、マスタによるプリフェッチ処理の流れを示すフローチャートである。 図2は、本発明の実施の形態1に係る外部デバイスアクセス装置の構成を示すブロック図である。 図3は、本発明の実施の形態1に係る外部デバイスアクセス装置を用いた場合の、マスタによるプリフェッチ処理の流れを示すフローチャートである。 図4は、本発明の実施の形態2に係る外部デバイスアクセス装置の構成を示すブロック図である。 図5は、本発明の実施の形態2に係る外部デバイスアクセス装置の変形例の構成を示すブロック図である。 図6は、本発明の実施の形態3に係る外部デバイスアクセス装置の構成を示すブロック図である。 図7は、本発明の実施の形態4に係る外部デバイスアクセス装置の構成を示すブロック図である。 図8は、本発明の実施の形態5に係る外部デバイスアクセス装置の構成を示すブロック図である。 図9は、本発明の実施の形態6に係る外部デバイスアクセス装置の構成を示すブロック図である。 図10は、本発明の実施の形態7に係る外部デバイスアクセス装置の構成を示すブロック図である。 図11は、本発明の実施の形態8に係る外部デバイスアクセス装置の構成を示すブロック図である。 図12は、本発明の実施の形態9に係る外部デバイスアクセス装置の構成を示すブロック図である。 図13は、本発明の実施の形態10に係る外部デバイスアクセス装置の構成を示すブロック図である。 図14は、本発明の実施の形態11に係る外部デバイスアクセス装置の構成を示すブロック図である。 図15は、本発明の実施の形態12に係る外部デバイスアクセス装置の構成を示すブロック図である。
符号の説明
 101 マスタ
 102 外部デバイス
 103、203、213、303、403、503、603、703、803、903、1003、1103、1203 外部デバイスアクセス装置
 110 書き込みアドレス格納部
 111 書き込みデータ格納部
 112、612 読み出しアドレス格納部
 113 読み出しデータ格納部
 114、314、614、1014、1214 アドレス制御部
 115、615、815 格納動作状態保持部
 116、516、916、1016、1116 受理信号生成部
 117 状態信号格納部
 118 サイクルカウント部
 130 エラーデータ生成部
 131、731 プリフェッチ中止制御部
 132 読み出し制御部
 133 カウント値格納部
 140、141、142、143、144、145 セレクタ
 150 アドレスバス
 151 書き込みデータ入力バス
 152 読み出しデータ出力バス
 153 R/W信号バス
 155 受理信号バス
 156 プリフェッチ動作状態信号バス
 157 外部デバイス状態信号出力バス
 158 読み出し受理制御信号バス
 159 デバッグ情報バス
 160 書き込みアドレス
 161 書き込み許可信号
 162 読み出しアドレス
 163 読み出しアドレス許可信号
 164 読み出しデータ許可信号
 165 プリフェッチ動作状態信号
 170 書き込みアドレス出力バス
 171 書き込みデータ出力バス
 172 読み出しアドレス出力バス
 173 読み出しデータ入力バス
 174 外部デバイス状態信号入力バス
 175 読み出し中止信号バス
 180 エラーデータ
 181 格納動作状態読み出し許可信号
 182 プリフェッチデータ読み出し時状態信号
 183 読み出し制御信号
 184 カウント値読み出し許可信号
 以下、本発明に係る外部デバイスアクセス装置の実施の形態について、図面を参照しながら詳細に説明する。
 以下の実施の形態において、マスタとは、CPU又はマイコン等の書き込み及び読み出しの制御を担当する装置である。外部デバイスとはCPU又はマイコン等をアシストするコプロセッサ又はアクセラレータ等の装置である。また、外部デバイスは、マスタがアドレスを指定することによりアクセス可能な資源を有する。
 (実施の形態1)
 本発明の実施の形態1に係る外部デバイスアクセス装置は、プリフェッチデータ読み出し動作において、プリフェッチ動作が完了していない場合に、プリフェッチデータ読み出し動作を受け付けたことを示す受理信号と、プリフェッチ動作が完了しているか否かを示すプリフェッチ動作状態信号とをマスタに出力する。
 これにより、マスタは、プリフェッチ動作が完了していない場合には、他の処理を行うことができる。よって、本発明の実施の形態1に係る外部デバイスアクセス装置は、マスタを効率的に使用できる。
 まず、本発明の実施の形態1に係る外部デバイスアクセス装置の構成を説明する。
 図2は、本発明の実施の形態1に係る外部デバイスアクセス装置の構成を示すブロック図である。
 外部デバイスアクセス装置103は、アドレスバス150、書き込みデータ入力バス151、読み出しデータ出力バス152、書き込み読み出し制御信号(以下、R/W信号と呼ぶ)バス153、受理信号バス155、及びプリフェッチ動作状態信号バス156を介して、マスタ101と接続される。外部デバイスアクセス装置103は、書き込みアドレス出力バス170、書き込みデータ出力バス171、読み出しアドレス出力バス172、及び読み出しデータ入力バス173を介して、外部デバイス102と接続される。
 外部デバイスアクセス装置103は、通常書き込み動作と、プリフェッチ動作と、プリフェッチデータ読み出し動作とを行う。通常書き込み動作は、外部デバイス102への通常のデータ書き込み動作である。プリフェッチ動作は、予め外部デバイス102のデータを読み出しデータ格納部113に格納する動作である。プリフェッチデータ読み出し動作は、読み出しデータ格納部113が格納するデータをマスタ101へ出力する動作である。
 マスタ101は、通常書き込み動作と、プリフェッチ動作と、プリフェッチデータ読み出し動作とを外部デバイスアクセス装置103に要求する。
 外部デバイスアクセス装置103は、マスタ101からの要求に応じて、通常書き込み動作と、プリフェッチ動作と、プリフェッチデータ読み出し動作とを行う。
 外部デバイス102は、書き込みデータ出力バス171に出力された書き込みデータを、書き込みアドレス出力バス170に出力された書き込みアドレスに格納する。また、外部デバイス102は、読み出しアドレス出力バス172に出力された読み出しアドレスに格納しているデータを読み出し、読み出したデータを読み出しデータ入力バス173に出力する。
 例えば、マスタ101、外部デバイス102及び外部デバイスアクセス装置103は、1つのシステムLSIに含まれる。なお、マスタ101、外部デバイス102及び外部デバイスアクセス装置103のうち2以上が1つのシステムLSIに含まれてもよいし、それぞれ個別のLSIとして形成されてもよい。
 外部デバイスアクセス装置103は、書き込みアドレス格納部110と、書き込みデータ格納部111と、読み出しアドレス格納部112と、読み出しデータ格納部113と、アドレス制御部114と、格納動作状態保持部115と、受理信号生成部116とを備える。
 アドレス制御部114は、マスタ101からの通常書き込み動作の要求(以下、通常書き込み要求。)、プリフェッチ動作の要求(以下、プリフェッチ要求。)及びプリフェッチデータ読み出し動作の要求(以下、プリフェッチ読み出し要求。)を受け付ける。アドレス制御部114は、マスタ101により、アドレスバス150に出力されたアドレスと、書き込みデータ入力バス151に出力された書き込みデータと、R/W信号バス153に出力されたR/W信号とに基づき、通常書き込み要求、プリフェッチ要求及びプリフェッチデータ読み出し要求を受け付ける。
 具体的には、アドレス制御部114は、アドレスバス150に出力されたアドレスが読み出しデータ格納部113に割り当てられたアドレスでなく、かつ、R/W信号によりデータ書き込みが指示されている場合、マスタ101からの要求が通常書き込み要求であることを認識し、通常書き込み要求を受け付ける。
 ここで、読み出しデータ格納部113は、マスタ101が持つアクセス空間に割り当てられたアドレスを持ち、マスタ101からアクセス可能である。ここで、アクセス可能とは、マスタ101が読み出しデータ格納部113のアドレスを指定することにより、読み出しデータ格納部113に格納されるデータの読み出し及び書き込みのうち少なくとも一方を行えることを意味する。
 また、アドレス制御部114は、アドレスバス150に出力されたアドレスが読み出しデータ格納部113に割り当てられたアドレスであり、かつ、R/W信号によりデータ書き込みが指示されている場合、マスタ101からの要求がプリフェッチ要求であることを認識し、プリフェッチ要求を受け付ける。
 また、アドレス制御部114は、アドレスバス150に出力されたアドレスが読み出しデータ格納部113に割り当てられたアドレスであり、かつ、R/W信号によりデータ読み出しが指示されている場合、マスタ101からの要求がプリフェッチデータ読み出し要求であることを認識し、プリフェッチデータ読み出し要求を受け付ける。
 アドレス制御部114は、通常書き込み要求、プリフェッチ要求及びプリフェッチデータ読み出し要求に応じて、通常書き込み動作、プリフェッチ動作及びプリフェッチデータ読み出し動作を行う。アドレス制御部114は、書き込みアドレス格納部110、書き込みデータ格納部111、読み出しアドレス格納部112、読み出しデータ格納部113、格納動作状態保持部115、及び受理信号生成部116を制御することで、通常書き込み動作、プリフェッチ動作及びプリフェッチデータ読み出し動作を行う。
 具体的には、アドレス制御部114は、通常書き込み要求、プリフェッチ要求及びプリフェッチデータ読み出し要求に応じて、書き込みアドレス160、書き込み許可信号161、読み出しアドレス162、読み出しアドレス許可信号163及び読み出しデータ許可信号164を生成する。
 アドレス制御部114は、通常書き込み要求を受け付けた際、書き込みデータ入力バス151のデータを書き込みアドレス160として出力し、書き込み許可信号161を出力する。アドレス制御部114は、プリフェッチ要求を受け付けた際、書き込みデータ入力バス151のデータを読み出しアドレス162として出力し、読み出しアドレス許可信号163を出力する。アドレス制御部114は、プリフェッチデータ読み出し要求を受け付けた際、読み出しデータ許可信号164を出力する。
 書き込みアドレス格納部110は、アドレス制御部114により書き込み許可信号161が出力された際に、書き込みアドレス160を取り込み、取り込んだ書き込みアドレス160を格納する。書き込みアドレス格納部110は、格納する書き込みアドレス160を書き込みアドレス出力バス170に出力する。
 書き込みデータ格納部111は、アドレス制御部114により書き込み許可信号161が出力された際に、書き込みデータ入力バス151の書き込みデータを取り込み、取り込んだ書き込みデータを格納する。書き込みデータ格納部111は、格納する書き込みデータを書き込みデータ出力バス171に出力する。
 読み出しアドレス格納部112は、アドレス制御部114により読み出しアドレス許可信号163が出力された際に、読み出しアドレス162を取り込み、取り込んだ読み出しアドレス162を格納する。読み出しアドレス格納部112は、格納する読み出しアドレス162を読み出しアドレス出力バス172に出力する。
 読み出しデータ格納部113は、読み出しデータ入力バス173に出力された読み出しデータを格納する。つまり、読み出しデータ格納部113は、プリフェッチ動作により読み出されたデータを格納する。読み出しデータ格納部113は、アドレス制御部114により読み出しデータ許可信号164が出力された際に、格納する読み出しデータを読み出しデータ出力バス152に出力する。
 格納動作状態保持部115は、読み出しデータ格納部113が外部デバイス102により出力される読み出しデータの格納動作中であるか否かを示す情報であるプリフェッチ動作状態信号を保持する。言い換えると、プリフェッチ動作状態信号は、プリフェッチ動作が完了したか否かを示す情報である。
 具体的には、格納動作状態保持部115は、読み出しアドレス格納部112により読み出しアドレス出力バス172に読み出しアドレスが出力された時に、格納動作中であること示す情報を保持する。格納動作状態保持部115は、外部デバイス102により読み出しデータ入力バス173に読み出しデータが出力された時に、保持していた格納動作中であることを示す情報を取り消し、格納動作が完了したことを示す情報を保持する。
 また、格納動作状態保持部115は、アドレス制御部114により読み出しデータ許可信号164が出力された際に、保持するプリフェッチ動作状態信号をプリフェッチ動作状態信号バス156に出力する。
 受理信号生成部116は、マスタ101からの通常書き込み要求、プリフェッチ要求、及びプリフェッチデータ読み出し要求を受け付けたことを示す受理信号をマスタ101に出力する。具体的には、受理信号生成部116は、アドレス制御部114により書き込み許可信号161、読み出しアドレス許可信号163又は読み出しデータ許可信号164が出力された際に、受理信号を受理信号バス155に出力する。
 また、受理信号生成部116は、プリフェッチデータ読み出し要求が受け付けられた際に、プリフェッチ動作が完了しているか否かによらず、直ちに受理信号をマスタ101に出力する。
 次に、外部デバイスアクセス装置103の動作について説明する。
 まず、通常書き込み動作について説明する。
 通常書き込み動作時には、マスタ101は、書き込みデータ入力バス151に書き込みデータを出力し、アドレスバス150に書き込みアドレスを出力し、R/W信号バス153にデータ書き込みを指示するR/W信号を出力する。ここで、マスタ101がアドレスバス150に出力する書き込みアドレスは、読み出しデータ格納部113に割り当てられたアドレスとは異なるアドレスである。
 アドレス制御部114は、アドレスバス150のアドレスが読み出しデータ格納部113に割り当てられたアドレスであるか否かを判定する。アドレス制御部114は、アドレスバス150のアドレスが読み出しデータ格納部113に割り当てられたアドレスでなく、かつ、R/W信号によりデータ書き込みが指示されているので、マスタ101からの要求が通常書き込み動作であることを認識する。つまり、アドレス制御部114は、マスタ101からの通常書き込み要求を受け付ける。
 通常書き込み要求を受け付けたアドレス制御部114は、アドレスバス150のアドレスである書き込みアドレス160を書き込みアドレス格納部110に出力する。また、アドレス制御部114は、書き込み許可信号161を書き込みアドレス格納部110、書き込みデータ格納部111及び受理信号生成部116に出力する。
 書き込みアドレス格納部110は、書き込み許可信号161に応じて、書き込みアドレス160を格納する。書き込みデータ格納部111は、書き込み許可信号161に応じて、書き込みデータ入力バス151の書き込みデータを格納する。受理信号生成部116は、書き込み許可信号161に応じて、書き込みアドレス160及び書き込みデータがそれぞれ書き込みアドレス格納部110及び書き込みデータ格納部111に格納された時点で受理信号バス155に受理信号を出力する。
 書き込みアドレス格納部110は、格納した書き込みアドレス160を書き込みアドレス出力バス170に出力する。書き込みデータ格納部111は、格納した書き込みデータを書き込みデータ出力バス171に出力する。書き込みアドレス格納部110及び書き込みデータ格納部111は、格納した書き込みアドレス及び書き込みデータを、外部デバイス102が受け付けるまで保持する。
 外部デバイスアクセス装置103は、外部デバイス102が受付を完了した後に通常書き込み動作を完了する。
 次に、プリフェッチ動作について説明する。
 プリフェッチ動作時には、マスタ101は、書き込みデータ入力バス151に読み出しアドレスを出力し、アドレスバス150に読み出しデータ格納部113に割り当てられたアドレスを出力し、R/W信号バス153にデータ書き込みを指示するR/W信号を出力する。
 アドレス制御部114は、アドレスバス150のアドレスが読み出しデータ格納部113に割り当てられたアドレスであるか否かを判定する。アドレス制御部114は、アドレスバス150のアドレスが読み出しデータ格納部113に割り当てられたアドレスであり、かつ、R/W信号によりデータ書き込みが指示されているので、マスタ101からの要求がプリフェッチ動作であることを認識する。つまり、アドレス制御部114は、マスタ101からのプリフェッチ要求を受け付ける。
 プリフェッチ要求を受け付けたアドレス制御部114は、書き込みデータ入力バス151のデータである読み出しアドレス162を読み出しアドレス格納部112に出力する。また、アドレス制御部114は、読み出しアドレス許可信号163を読み出しアドレス格納部112、及び受理信号生成部116に出力する。
 読み出しアドレス格納部112は、読み出しアドレス許可信号163に応じて、読み出しアドレス162を格納する。受理信号生成部116は、読み出しアドレス許可信号163に応じて、読み出しアドレス162が読み出しアドレス格納部112に格納された時点で受理信号バス155に受理信号を出力する。
 読み出しアドレス格納部112は、格納した読み出しアドレス162を読み出しアドレス出力バス172に出力する。また、読み出しアドレス格納部112は、格納した読み出しアドレス162を、格納動作状態保持部115に出力することで、格納動作中であることを示す。
 格納動作状態保持部115は、読み出しアドレス格納部112により出力される読み出しアドレスを受けて、格納動作中であること示す情報を保持する。
 外部デバイス102は、読み出しアドレスを受け付けて、読み出しデータ入力バス173に読み出しデータを出力する。
 読み出しデータ格納部113は、読み出しデータ入力バス173に出力された読み出しデータを格納する。また、格納動作状態保持部115は、読み出しデータ入力バス173に出力される読み出しデータを受けて、保持していた格納動作中であることを示す情報を取り消す。
 また、読み出しアドレス格納部112は、読み出しデータ入力バス173に出力された読み出しデータが読み出しデータ格納部113に格納されるまで、読み出しアドレス162を格納する。
 以上によりプリフェッチ動作が完了する。
 次に、プリフェッチデータ読み出し動作について説明する。
 プリフェッチデータ読み出し動作時には、マスタ101は、アドレスバス150に読み出しデータ格納部113に割り当てられたアドレスを出力し、R/W信号バス153にデータ読み出しを指示するR/W信号を出力する。
 アドレス制御部114は、アドレスバス150のアドレスが読み出しデータ格納部113に割り当てられたアドレスであるか否かを判定する。アドレス制御部114は、アドレスバス150のアドレスが読み出しデータ格納部113に割り当てられたアドレスであり、かつ、R/W信号によりデータ読み出しが指示されているので、マスタ101からの要求がプリフェッチデータ読み出し動作であることを認識する。つまり、アドレス制御部114は、マスタ101からのプリフェッチデータ読み出し要求を受け付ける。
 プリフェッチデータ読み出し要求を受け付けたアドレス制御部114は、読み出しデータ許可信号164を読み出しデータ格納部113、格納動作状態保持部115及び受理信号生成部116に出力する。
 読み出しデータ格納部113は、読み出しデータ許可信号164を受けて、格納しているデータを読み出しデータ出力バス152に出力する。
 格納動作状態保持部115は、読み出しデータ許可信号164を受けて、プリフェッチ動作状態信号バス156にプリフェッチ動作状態信号を出力する。格納動作状態保持部115は、格納動作中であること示す情報を保持している場合には、プリフェッチ動作を実行中であることを示すプリフェッチ動作状態信号を出力し、格納動作中であること示す情報を保持していない場合には、プリフェッチ動作を実行中でないことを示すプリフェッチ動作状態信号を出力する。
 受理信号生成部116は、読み出しデータ許可信号164を受けて、受理信号バス155に受理信号を出力する。ここで、受理信号生成部116は、プリフェッチ動作中であっても、受理信号バス155に受理信号を出力する。
 以上によりプリフェッチデータ読み出し動作が完了する。
 次に、本発明の実施の形態1に係る外部デバイスアクセス装置103に接続されるマスタ101の動作について説明する。
 図3は、マスタ101のプリフェッチ処理の流れを示すフローチャートである。
 図3に示すように、まず、マスタ101は、外部デバイスアクセス装置103に対してプリフェッチ動作を要求する(S101)。
 次に、マスタ101は、プリフェッチデータ読み出し動作を行うまでに実行可能な処理を行う(S102)。ここで、マスタ101が処理を行う期間は、外部デバイスアクセス装置103が正常時にプリフェッチ動作を完了するまでの期間である。
 次に、マスタ101は、外部デバイスアクセス装置103にプリフェッチデータ読み出し動作を要求する(S103)。
 マスタ101は、受理信号バス155に出力された受理信号を受け、プリフェッチ動作状態信号バス156に出力されたプリフェッチ動作状態信号を確認し、プリフェッチ動作が実行中であるか否かを判定する(S104)。
 プリフェッチ動作が完了している場合(S104でNo)、マスタ101は、読み出しデータ出力バス152に出力された読み出しデータを用いて処理を実行する(S105)。
 一方、外部デバイス102の異常状態、又は他のマスタからのアクセスの競合などによりプリフェッチ動作が完了していない場合(S104でYes)、マスタ101は、次の処理、又は別の処理に移行し、移行した処理を実行する(S106)。
 次に、所定の時間後、マスタ101は、元の処理に復帰し(S107)、再度、外部デバイスアクセス装置103にプリフェッチデータを読み出し動作を要求する(S103)。
 以上のように、外部デバイスアクセス装置103は、プリフェッチデータ読み出し動作において、外部デバイス102が異常状態等によりプリフェッチ動作実行中であっても、マスタ101に対して受理信号を出力する。これにより、プリフェッチデータ読み出し動作を完了させることができる。よって、外部デバイス102が異常状態等によりプリフェッチ動作が完了していない場合でもマスタ101は次の処理に移行できる。
 また、外部デバイスアクセス装置103は、プリフェッチ動作状態信号を出力する。これにより、マスタ101は、プリフェッチデータ読み出し動作時にプリフェッチ動作が実行中であるか否かの判断を行える。これにより、マスタ101は、プリフェッチ動作が完了していない場合には、他の処理を行うことができる。よって、本発明の実施の形態1に係る外部デバイスアクセス装置103は、マスタ101を効率的に使用できる。
 なお、外部デバイスアクセス装置103は、プリフェッチ動作状態信号を、割り込み信号、スレッド切り替え信号、又はマスタがソフト処理可能なフラグ信号として出力し、マスタ101は、プリフェッチ動作状態信号を割り込み信号、スレッド切り替え信号、又はマスタがソフト処理可能なフラグ信号として処理してもよい。
 (実施の形態2)
 本発明の実施の形態2に係る外部デバイスアクセス装置は、上述した実施の形態1に係る外部デバイスアクセス装置103の変形例である。実施の形態2に係る外部デバイスアクセス装置は、プリフェッチデータ読み出し動作時においてプリフェッチ動作が完了していない場合には、読み出しデータ出力バス152にエラーが生じたことを示すデータを出力する。
 まず、本発明の実施の形態2に係る外部デバイスアクセス装置の構成を説明する。
 図4は、本発明の実施の形態2に係る外部デバイスアクセス装置の構成を示すブロック図である。なお、図2と同様の要素には同一の符号を付しており重複する説明は省略する。
 実施の形態2に係る外部デバイスアクセス装置203は、実施の形態1に係る外部デバイスアクセス装置103の構成に加え、さらに、エラーデータ生成部130と、セレクタ140とを備える。
 また、外部デバイスアクセス装置203は、プリフェッチ動作状態信号バス156を介して、マスタ101と接続されない点が実施の形態1と異なる。
 エラーデータ生成部130は、予め定められたエラーデータ180を生成し、セレクタ140に出力する。
 セレクタ140は、読み出しデータ格納部113に格納される読み出しデータ、又は、エラーデータ生成部130により出力されたエラーデータ180を、格納動作状態保持部115から出力されたプリフェッチ動作状態信号165に応じて選択し、選択した読み出しデータ又はエラーデータ180を読み出しデータ出力バス152に出力する。具体的には、セレクタ140は、プリフェッチ動作状態信号165がプリフェッチ動作中であることを示す場合、エラーデータ180を選択し、プリフェッチ動作状態信号165がプリフェッチ動作中でないことを示す場合、読み出しデータを選択する。
 次に、外部デバイスアクセス装置203の動作について説明する。なお、実施の形態1と同様の動作については説明を省略する。
 通常書き込み動作及びプリフェッチ動作は、実施の形態1と同様である。
 以下、プリフェッチデータ読み出し動作について説明する。
 プリフェッチデータ読み出し動作において、セレクタ140は、格納動作状態保持部115により出力されるプリフェッチ動作状態信号165がプリフェッチ動作中であることを示す場合、エラーデータ180を選択し、選択したエラーデータ180を読み出しデータ出力バス152に出力する。また、セレクタ140は、プリフェッチ動作状態信号165がプリフェッチ動作中でないことを示す場合、読み出しデータ格納部113に格納される読み出しデータを選択し、選択した読み出しデータを読み出しデータ出力バス152に出力する。
 以上により、マスタ101は、読み出しデータ出力バス152に出力されたデータが予め定められたエラーデータ180である場合には、プリフェッチ動作が実行中であると判断し、読み出しデータ出力バス152に出力されたデータがエラーデータ180でない場合には、プリフェッチ動作が完了していると判断できる。
 これにより、本発明の実施の形態2に係る外部デバイスアクセス装置203は、実施の形態1に係る外部デバイスアクセス装置103の利点に加えて、マスタ101との間にプリフェッチ動作状態信号バス156を設けなくてよいという利点がある。
 なお、外部デバイスアクセス装置103は、プリフェッチ動作が実行中の場合に、エラーデータ180の代わりに、読み出しアドレス格納部112から出力される読み出しアドレスを出力してもよい。
 図5は、本発明の実施の形態2に係る外部デバイスアクセス装置203の変形例の構成を示す図である。
 図5に示す外部デバイスアクセス装置213は、エラーデータ生成部130を備えず、かつセレクタ140に、エラーデータ180の代わりに読み出しアドレス格納部112に格納される読み出しアドレスが入力される。セレクタ140は、プリフェッチ動作状態信号165がプリフェッチ動作中であることを示す場合、読み出しアドレス格納部112に格納される読み出しアドレスを選択し、選択した読み出しアドレスを読み出しデータ出力バス152に出力する。
 これにより、マスタ101は、読み出しデータ出力バス152に出力されたデータがプリフェッチ動作中の読み出しアドレスである場合には、プリフェッチ動作が実行中であると判断できる。
 (実施の形態3)
 本発明の実施の形態3に係る外部デバイスアクセス装置は、上述した実施の形態1に係る外部デバイスアクセス装置103の変形例である。実施の形態3に係る外部デバイスアクセス装置は、さらに、プリフェッチ動作が完了したか否かを示す情報を出力するプリフェッチ実行状態読み出し動作を行う。
 まず、本発明の実施の形態3に係る外部デバイスアクセス装置の構成を説明する。
 図6は、本発明の実施の形態3に係る外部デバイスアクセス装置の構成を示すブロック図である。なお、図2と同様の要素には同一の符号を付しており重複する説明は省略する。
 実施の形態3に係る外部デバイスアクセス装置303は、実施の形態1に係る外部デバイスアクセス装置103の構成に加え、さらに、セレクタ141を備える。また、外部デバイスアクセス装置303は、外部デバイスアクセス装置103に対して、アドレス制御部314の構成が異なる。
 また、外部デバイスアクセス装置303は、プリフェッチ動作状態信号バス156を介して、マスタ101と接続されない点が実施の形態1と異なる。
 外部デバイスアクセス装置303は、通常書き込み動作、プリフェッチ動作、プリフェッチデータ読み出し動作に加えて、プリフェッチ実行状態読み出し動作を行う。
 プリフェッチ実行状態読み出し動作は、現在プリフェッチ動作が実行中であるか否かを示す情報をマスタ101に出力する動作である。また、格納動作状態保持部115は、マスタ101が持つアクセス空間に割り当てられたアドレスを持ち、マスタ101からアクセス可能である。
 アドレス制御部314は、アドレス制御部114の機能に加え、マスタ101からのプリフェッチ実行状態読み出し動作の要求(以下、プリフェッチ実行状態読み出し要求。)を受け付ける。具体的には、アドレス制御部314は、アドレスバス150に出力されたアドレスが格納動作状態保持部115に割り当てられたアドレスであり、かつ、R/W信号によりデータ読み出しが指示されている場合、マスタ101からの要求がプリフェッチ実行状態読み出し要求であることを認識し、プリフェッチ実行状態読み出し要求を受け付ける。
 アドレス制御部314は、プリフェッチ実行状態読み出し要求に応じて、プリフェッチ実行状態読み出し動作を行う。アドレス制御部314は、読み出しデータ格納部113及びセレクタ141を制御することで、プリフェッチ実行状態読み出し動作を行う。
 具体的には、アドレス制御部314は、プリフェッチ実行状態読み出し要求を受け付けた際、読み出しデータ許可信号164及び格納動作状態読み出し許可信号181を出力する。
 セレクタ141は、アドレス制御部314により格納動作状態読み出し許可信号181が出力されていない場合、読み出しデータ格納部113に格納される読み出しデータを選択し、選択した読み出しデータを読み出しデータ出力バス152に出力する。セレクタ141は、アドレス制御部314により格納動作状態読み出し許可信号181が出力されている場合、格納動作状態読み出しデータ格納部113に格納されるプリフェッチ動作状態信号165を選択し、選択したプリフェッチ動作状態信号165を読み出しデータ出力バス152に出力する。
 次に、外部デバイスアクセス装置303の動作について説明する。なお、実施の形態1と同様の動作については説明を省略する。
 通常書き込み動作及びプリフェッチ動作は、実施の形態1と同様である。
 以下、プリフェッチデータ読み出し動作について説明する。
 プリフェッチデータ読み出し動作において、セレクタ141は、アドレス制御部314により格納動作状態読み出し許可信号181が出力されていないので、読み出しデータ格納部113に格納される読み出しデータを選択し、選択した読み出しデータを読み出しデータ出力バス152に出力する。
 次に、プリフェッチ実行状態読み出し動作について説明する。
 プリフェッチ実行状態読み出し動作時には、マスタ101は、アドレスバス150に格納動作状態保持部115に割り当てられたアドレスを出力し、R/W信号バス153にデータ読み出しを指示するR/W信号を出力する。
 アドレス制御部314は、アドレスバス150のアドレスが読み出しデータ格納部113に割り当てられたアドレスであるか否か、及び読み出し格納動作状態保持部115に割り当てられたアドレスであるか否かを判定する。アドレス制御部314は、アドレスバス150のアドレスが格納動作状態保持部115に割り当てられたアドレスであり、かつ、R/W信号によりデータ読み出しが指示されているので、マスタ101からの要求がプリフェッチ実行状態読み出し動作であることを認識する。
 アドレス制御部314は、読み出しデータ許可信号164を読み出しデータ格納部113、格納動作状態保持部115及び受理信号生成部116に出力し、格納動作状態読み出し許可信号181をセレクタ141に出力する。
 格納動作状態保持部115は、読み出しデータ許可信号164を受けて、プリフェッチ動作状態信号165を出力する。
 セレクタ141は、アドレス制御部314により格納動作状態読み出し許可信号181が出力されているので、プリフェッチ動作状態信号165を選択し、選択したプリフェッチ動作状態信号165を読み出しデータ出力バス152に出力する。
 受理信号生成部116は、読み出しデータ許可信号164を受けて、受理信号バス155に受理信号を出力する。
 以上によりプリフェッチ実行状態読み出し動作が完了する。
 以上より、本発明の実施の形態3に係る外部デバイスアクセス装置303は、実施の形態1に係る外部デバイスアクセス装置103の利点に加えて、マスタ101との間にプリフェッチ動作状態信号バス156を設けなくてよいという利点がある。
 さらに、マスタ101は、プリフェッチデータ読み出し動作を行う前に、プリフェッチ実行状態読み出し動作を行うことで、不要なプリフェッチデータ読み出し動作を行わなくてもよいという効果がある。
 (実施の形態4)
 本発明の実施の形態4に係る外部デバイスアクセス装置は、上述した実施の形態1に係る外部デバイスアクセス装置103の変形例である。実施の形態4に係る外部デバイスアクセス装置は、外部デバイス102の状態を示す外部デバイス状態信号を、マスタ101に出力する。
 まず、本発明の実施の形態4に係る外部デバイスアクセス装置の構成を説明する。
 図7は、本発明の実施の形態4に係る外部デバイスアクセス装置の構成を示すブロック図である。なお、図2と同様の要素には同一の符号を付しており重複する説明は省略する。
 実施の形態4に係る外部デバイスアクセス装置403は、実施の形態1に係る外部デバイスアクセス装置103の構成に加え、さらに、状態信号格納部117と、セレクタ142とを備える。
 また、外部デバイスアクセス装置403は、実施の形態1の接続関係に加え、外部デバイス状態信号出力バス157を介して、マスタ101と接続され、外部デバイス状態信号入力バス174を介して、外部デバイス102と接続される。
 また、外部デバイス102は、外部デバイス状態信号を外部デバイス状態信号入力バス174に出力する。外部デバイス状態信号は、外部デバイス102の動作状態を示す信号であり、例えば、異常状態、又は他のマスタからのアクセスにより書き込み又は読み出し動作中であることを示す信号である。
 状態信号格納部117は、プリフェッチ動作が完了した際に、外部デバイス102により外部デバイス状態信号入力バス174に出力される外部デバイス状態信号を取り込み格納する。状態信号格納部117は、格納する外部デバイス状態信号をセレクタ142に出力する。
 セレクタ142は、プリフェッチ動作状態信号バス156に出力されたプリフェッチ動作状態信号に応じて、外部デバイス状態信号入力バス174に出力された外部デバイス状態信号、又は状態信号格納部117に格納される外部デバイス状態信号を選択し、選択した外部デバイス状態信号を外部デバイス状態信号出力バス157に出力する。具体的には、セレクタ142は、プリフェッチ動作状態信号がプリフェッチ動作中であることを示す場合、外部デバイス状態信号入力バス174の外部デバイス状態信号を選択し、プリフェッチ動作状態信号がプリフェッチ動作中でないことを示す場合、状態信号格納部117に格納される外部デバイス状態信号を選択する。
 次に、外部デバイスアクセス装置403の動作について説明する。なお、実施の形態1と同様の動作については説明を省略する。
 通常書き込み動作は、実施の形態1と同様である。
 プリフェッチ動作において、プリフェッチ動作が完了した際に、状態信号格納部117は、外部デバイス状態信号入力バス174の外部デバイス状態信号を取り込み格納する。
 以下、プリフェッチデータ読み出し動作について説明する。
 プリフェッチデータ読み出し動作において、セレクタ142は、格納動作状態保持部115により出力されるプリフェッチ動作状態信号がプリフェッチ動作中であることを示す場合、外部デバイス状態信号入力バス174の外部デバイス状態信号を外部デバイス状態信号出力バス157に出力する。また、セレクタ142は、プリフェッチ動作状態信号がプリフェッチ動作中でないことを示す場合、状態信号格納部117に格納される外部デバイス状態信号を外部デバイス状態信号出力バス157に出力する。
 以上により、外部デバイスアクセス装置403は、プリフェッチ実行中の場合には、現在の外部デバイス102の状態をマスタ101に通知し、プリフェッチ動作が完了している場合には、当該プリフェッチ動作の完了時の外部デバイス102の状態をマスタ101に通知する。
 これにより、本発明の実施の形態4に係る外部デバイスアクセス装置403は、実施の形態1に係る外部デバイスアクセス装置103の利点に加えて、マスタ101がプリフェッチ実行中の外部デバイス102の状態を知ることができるという利点がある。これにより、マスタ101は、外部デバイス102の状態に応じて最適な処理を行うことができる。
 (実施の形態5)
 本発明の実施の形態5に係る外部デバイスアクセス装置は、上述した実施の形態4に係る外部デバイスアクセス装置403の変形例である。実施の形態5に係る外部デバイスアクセス装置は、プリフェッチ動作が実行中の場合、外部デバイス102の状態に応じて、受理信号を直ちに出力するか、プリフェッチ動作の完了後に受理信号を出力するかを選択する。
 図8は、本発明の実施の形態5に係る外部デバイスアクセス装置の構成を示すブロック図である。なお、図7と同様の要素には同一の符号を付しており重複する説明は省略する。
 実施の形態5に係る外部デバイスアクセス装置503は、実施の形態4に係る外部デバイスアクセス装置403に対して、受理信号生成部516の構成が異なる。
 受理信号生成部516は、プリフェッチデータ読み出し要求が受け付けられた際に、外部デバイス状態信号入力バス174の外部デバイス状態信号に応じて、プリフェッチ動作が完了しているか否かによらず受理信号をマスタ101に出力する動作、又は、プリフェッチ動作が完了した後に受理信号をマスタ101に出力する動作を選択的に行う。
 具体的には、受理信号生成部516は、読み出しデータ許可信号164、格納動作状態保持部115により出力されるプリフェッチ動作状態信号、及び外部デバイス状態信号入力バス174の外部デバイス状態信号に応じて、受理信号を受理信号バス155に出力する動作を選択する。
 受理信号生成部516は、プリフェッチ動作状態信号がプリフェッチ動作中でないことを示す場合には、アドレス制御部114により読み出しデータ許可信号164が出力された際に、受理信号を受理信号バス155に出力する。
 また、受理信号生成部516は、プリフェッチ動作状態信号が、プリフェッチ動作中であることを示し、かつ、外部デバイス状態信号により外部デバイス102が正常に動作していることが示される場合には、プリフェッチ動作が完了した後に、受理信号を受理信号バス155に出力する。
 また、受理信号生成部516は、プリフェッチ動作状態信号が、プリフェッチ動作中であることを示し、かつ、外部デバイス状態信号により外部デバイス102が異常状態であることが示される場合には、プリフェッチ動作の完了を待たずに、アドレス制御部114により読み出しデータ許可信号164が出力された際に、受理信号を受理信号バス155に出力する。
 以上の構成により、実施の形態5に係る外部デバイスアクセス装置503は、プリフェッチ動作が実行中の場合、外部デバイス102の状態に応じて、受理信号を直ちに出力するか、プリフェッチ動作の完了後に受理信号を出力するかを選択する。
 これにより、正常時のプリフェッチ完了までのレイテンシが可変の外部デバイス102に対しても、マスタ101は、常に最大のレイテンシ期間を空けてプリフェッチデータ読み出し動作を行わなくてもよく、最小のレイテンシ期間を空けてプリフェッチデータ読み出し動作を行えばよい。よって、実施の形態5に係る外部デバイスアクセス装置503は、マスタ101を更に効率的に使用できる。
 (実施の形態6)
 本発明の実施の形態6に係る外部デバイスアクセス装置は、上述した実施の形態4に係る外部デバイスアクセス装置403の変形例である。実施の形態6に係る外部デバイスアクセス装置は、さらに、プリフェッチ動作を中止するプリフェッチ中止動作を行う。
 まず、本発明の実施の形態6に係る外部デバイスアクセス装置の構成を説明する。
 図9は、本発明の実施の形態6に係る外部デバイスアクセス装置の構成を示すブロック図である。なお、図7と同様の要素には同一の符号を付しており重複する説明は省略する。
 実施の形態6に係る外部デバイスアクセス装置603は、実施の形態4に係る外部デバイスアクセス装置403に対して、読み出しアドレス格納部612及び格納動作状態保持部615の構成が異なる。また、外部デバイスアクセス装置603は、外部デバイスアクセス装置403の構成に加え、プリフェッチ中止制御部131を備える。
 また、外部デバイスアクセス装置603は、実施の形態4の接続関係に加え、さらに、読み出し中止信号バス175を介して、外部デバイス102と接続される。
 外部デバイスアクセス装置603は、通常書き込み動作、プリフェッチ動作、及びプリフェッチデータ読み出し動作に加えて、プリフェッチ中止動作を行う。
 プリフェッチ中止動作は、現在実行中のプリフェッチ動作を中止する動作である。また、プリフェッチ中止制御部131は、マスタ101が持つアクセス空間に割り当てられたアドレスを持ち、マスタ101からアクセス可能である。
 アドレス制御部614は、アドレス制御部114の機能に加え、マスタ101からのプリフェッチ中止動作の要求(以下、プリフェッチ中止要求。)を受け付ける。具体的には、アドレス制御部614は、アドレスバス150に出力されたアドレスがプリフェッチ中止制御部131に割り当てられたアドレスであり、かつ、R/W信号によりデータ書き込みが指示されている場合、マスタ101からの要求がプリフェッチ中止要求であることを認識し、プリフェッチ中止要求を受け付ける。
 アドレス制御部614は、プリフェッチ中止要求に応じて、プリフェッチ中止動作を行う。アドレス制御部614は、プリフェッチ中止制御部131を制御することで、プリフェッチ中止動作を行う。
 具体的には、アドレス制御部614は、プリフェッチ中止要求を受け付けた際、書き込みアドレス160と書き込み許可信号161をプリフェッチ中止制御部131に出力する。
 プリフェッチ中止制御部131は、書き込みデータ入力バス151の書き込みデータ、書き込みアドレス160及び書き込み許可信号161に応じて、読み出し中止信号を読み出し中止信号バス175に出力する。具体的には、プリフェッチ中止制御部131は、書き込みアドレス160が、プリフェッチ中止制御部131に割り当てられたアドレスであり、かつ、書き込みデータ入力バス151の書き込みデータが所定の値である場合、アドレス制御部614により書き込み許可信号161が出力された際に、読み出し中止信号を読み出し中止信号バス175に出力する。
 読み出しアドレス格納部612は、プリフェッチ中止制御部131により読み出し中止信号が出力された場合、保持する読み出しアドレスを取り消す。格納動作状態保持部615は、プリフェッチ中止制御部131により読み出し中止信号が出力された場合、保持していた格納動作中であることを示す情報を取り消す。
 外部デバイス102は、プリフェッチ中止制御部131により読み出し中止信号バス175に読み出し中止信号が出力された場合、現在実行中の読み出し動作を中止する。
 次に、外部デバイスアクセス装置603の動作について説明する。なお、実施の形態4と同様の動作については説明を省略する。
 通常書き込み動作、プリフェッチ動作及びプリフェッチデータ読み出し動作は、実施の形態4と同様である。
 以下、プリフェッチ中止動作について説明する。
 プリフェッチ実行状態読み出し動作時には、マスタ101は、アドレスバス150にプリフェッチ中止制御部131に割り当てられたアドレスを出力し、R/W信号バス153にデータ書き込みを指示するR/W信号を出力する。
 アドレス制御部614は、アドレスバス150のアドレスが読み出しデータ格納部113に割り当てられたアドレスであるか否か、及びプリフェッチ中止制御部131に割り当てられたアドレスであるか否かを判定する。アドレス制御部614は、アドレスバス150のアドレスがプリフェッチ中止制御部131に割り当てられたアドレスであり、かつ、R/W信号によりデータ書き込みが指示されているので、マスタ101からの要求がプリフェッチ中止動作であることを認識する。
 アドレス制御部614は、書き込み許可信号161を書き込みデータ格納部111に出力し、書き込み許可信号161、及びアドレスバス150のアドレスを書き込みアドレス160としてプリフェッチ中止制御部131に出力する。
 プリフェッチ中止制御部131は、書き込みアドレス160が、プリフェッチ中止制御部131に割り当てられたアドレスであり、かつ、書き込みデータ入力バス151の書き込みデータが所定の値であるので、アドレス制御部614により書き込み許可信号161が出力された際に、読み出し中止信号を読み出し中止信号バス175に出力する。
 読み出しアドレス格納部612は、読み出し中止信号を受けて、保持する読み出しアドレスを取り消す。また、格納動作状態保持部615は、読み出し中止信号を受けて、保持していた格納動作中であることを示す情報を取り消す。
 外部デバイス102は、読み出し中止信号を受けて、現在実行中の読み出し動作を中止する。
 以上によりプリフェッチ中止動作が完了する。
 以上より、実施の形態6に係る外部デバイスアクセス装置603は、マスタ101の要求に応じて、プリフェッチ動作を中止する。これにより、マスタ101は、外部デバイスの状態に応じて、プリフェッチ動作を中止することができる。よって、本発明の実施の形態6に係る外部デバイスアクセス装置603は、実施の形態4に係る外部デバイスアクセス装置403の利点に加えて、さらに効率的に外部デバイス102を使用できるという利点がある。
 (実施の形態7)
 本発明の実施の形態7に係る外部デバイスアクセス装置は、上述した実施の形態6に係る外部デバイスアクセス装置603の変形例である。実施の形態7に係る外部デバイスアクセス装置は、プリフェッチデータ読み出し時に、プリフェッチ動作が実行中である場合、外部デバイス102の状態に応じて、プリフェッチ動作を中止する。
 図10は、本発明の実施の形態7に係る外部デバイスアクセス装置の構成を示すブロック図である。なお、図9と同様の要素には同一の符号を付しており重複する説明は省略する。
 実施の形態7に係る外部デバイスアクセス装置703は、実施の形態6に係る外部デバイスアクセス装置603に対して、プリフェッチ中止制御部731の構成が異なる。
 また、外部デバイスアクセス装置703は、通常書き込み動作、プリフェッチ動作及びプリフェッチデータ読み出し動作を行い、マスタ101からの要求に応じてプリフェッチ中止動作を行わない。
 また、アドレス制御部114の構成は、実施の形態4と同様である。
 プリフェッチ中止制御部731は、プリフェッチデータ読み出し要求が受け付けられ、かつ、プリフェッチ動作状態信号バス156のプリフェッチ動作状態信号によりプリフェッチ動作が完了していないことが示される場合、外部デバイス状態信号入力バス174の外部デバイス状態信号に応じて、プリフェッチ動作を中止する制御を行う。
 具体的には、プリフェッチ中止制御部731は、プリフェッチ動作状態信号によりプリフェッチ動作中であることが示され、かつ外部デバイス状態信号により外部デバイス102が異常状態であることが示される場合、アドレス制御部114により読み出しデータ許可信号164が出力された際に、読み出し中止信号を読み出し中止信号バス175に出力する。
 以上の構成により、プリフェッチデータ読み出し動作時において、プリフェッチ動作が実行中であり、かつ外部デバイス102が異常状態の場合には、外部デバイスアクセス装置703は、プリフェッチ動作を中止する。これにより、マスタ101は、プリフェッチ中止動作を要求しなくてもよい。よって、本発明の実施の形態7に係る外部デバイスアクセス装置703は、実施の形態6に係る外部デバイスアクセス装置703の利点に加えて、マスタ101の処理を削減できるという利点がある。
 (実施の形態8)
 本発明の実施の形態8に係る外部デバイスアクセス装置は、上述した実施の形態4に係る外部デバイスアクセス装置403の変形例である。実施の形態8に係る外部デバイスアクセス装置は、プリフェッチ実行中の場合には、プリフェッチ動作状態信号165を外部デバイス状態信号出力バス157に出力する。
 まず、本発明の実施の形態8に係る外部デバイスアクセス装置の構成を説明する。
 図11は、本発明の実施の形態8に係る外部デバイスアクセス装置の構成を示すブロック図である。なお、図6及び図7と同様の要素には同一の符号を付しており重複する説明は省略する。
 実施の形態8に係る外部デバイスアクセス装置803は、実施の形態4に係る外部デバイスアクセス装置403に対して、格納動作状態保持部815、セレクタ144、及びアドレス制御部314の構成が異なる。なお、アドレス制御部314の構成は実施の形態3と同様である。また、外部デバイスアクセス装置803は、外部デバイスアクセス装置403の構成に加えて、セレクタ143を備える。
 格納動作状態保持部815は、格納動作状態保持部115の機能に加え、さらに、プリフェッチデータ読み出し要求が受け付けられた際の、プリフェッチ動作状態であるプリフェッチデータ読み出し時状態信号182を格納する。つまり、プリフェッチデータ読み出し時状態信号182は、プリフェッチデータ読み出し時のプリフェッチ動作の実行状態を示す。格納動作状態保持部815は、格納するプリフェッチデータ読み出し時状態信号182をセレクタ142に出力する。
 セレクタ143は、アドレス制御部314により格納動作状態読み出し許可信号181が出力されていない場合、読み出しデータ格納部113に格納される読み出しデータを選択し、選択した読み出しデータを読み出しデータ出力バス152に出力する。セレクタ141は、アドレス制御部314により格納動作状態読み出し許可信号181が出力されている場合、格納動作状態読み出しデータ格納部113により出力されるプリフェッチデータ読み出し時状態信号182を選択し、選択したプリフェッチデータ読み出し時状態信号182を読み出しデータ出力バス152に出力する。
 セレクタ144は、プリフェッチ動作状態信号165に応じて、プリフェッチ動作状態信号165、又は状態信号格納部117に格納される外部デバイス状態信号を選択し、選択したプリフェッチ動作状態信号165又は外部デバイス状態信号を外部デバイス状態信号出力バス157に出力する。具体的には、セレクタ144は、プリフェッチ動作状態信号165がプリフェッチ動作中であることを示す場合、プリフェッチ動作状態信号165を選択し、プリフェッチ動作状態信号がプリフェッチ動作中でないことを示す場合、状態信号格納部117に格納される外部デバイス状態信号を選択する。
 次に、外部デバイスアクセス装置803の動作について説明する。なお、実施の形態4と同様の動作については説明を省略する。
 通常書き込み動作及びプリフェッチ動作は、実施の形態4と同様である。
 以下、プリフェッチデータ読み出し動作について説明する。
 プリフェッチデータ読み出し動作において、アドレス制御部314により格納動作状態読み出し許可信号181が出力されていないので、セレクタ143は、読み出しデータ格納部113に格納される読み出しデータを選択し、選択した読み出しデータを読み出しデータ出力バス152に出力する。
 また、セレクタ144は、プリフェッチ動作が実行中の場合は、プリフェッチ動作状態信号165を外部デバイス状態信号出力バス157に出力し、プリフェッチ動作が完了している場合、状態信号格納部117に格納されている状態信号を外部デバイス状態信号出力バス157に出力する。
 また、格納動作状態保持部115は当該プリフェッチデータ読み出し動作時のプリフェッチ実行状態を格納する。
 以上により、プリフェッチデータ読み出し動作において、外部デバイスアクセス装置803は、読み出しデータ格納部113に格納される読み出しデータを読み出しデータ出力バス152に出力する。また、プリフェッチ動作が実行中の場合には、プリフェッチ動作状態信号165を外部デバイス状態信号に出力する。
 これにより、マスタ101は、プリフェッチデータ読み出し動作時に、外部デバイスアクセス装置803がプリフェッチ動作を実行中であるか否かの判断を行える。
 以下、プリフェッチ実行状態読み出し動作について説明する。
 プリフェッチ実行状態読み出し動作において、アドレス制御部314により格納動作状態読み出し許可信号181が出力されているので、セレクタ143は、格納動作状態保持部815により出力されるプリフェッチデータ読み出し時状態信号182を選択し、選択したプリフェッチデータ読み出し時状態信号182を読み出しデータ出力バス152に出力する。
 また、セレクタ144は、プリフェッチ動作が実行中の場合は、プリフェッチ動作状態信号165を外部デバイス状態信号出力バス157に出力し、プリフェッチ動作が完了している場合、状態信号格納部117に格納されている状態信号を外部デバイス状態信号出力バス157に出力する。
 以上により、実施の形態8に係る外部デバイスアクセス装置803は、プリフェッチ実行状態読み出し動作において、プリフェッチ動作を実行中の場合には、外部デバイス状態信号出力バス157に、プリフェッチ動作状態信号165を出力する。
 これにより、マスタ101は、プリフェッチ実行状態読み出し動作を要求することで、外部デバイスアクセス装置803がプリフェッチ動作を実行中であるか否かの判断を行える。
 また、プリフェッチ実行状態読み出し動作において、プリフェッチ動作が完了している場合には、外部デバイスアクセス装置803は、プリフェッチ読み出し動作時にプリフェッチ動作が実行中であったか否かを示すプリフェッチデータ読み出し時状態信号182を読み出しデータ出力バス152に出力し、プリフェッチ読み出し動作時の外部デバイス102の状態を外部デバイス状態信号出力バス157に出力する。
 これにより、マスタ101は、マスタ101がプリフェッチ実行中の外部デバイス102の状態を知ることができる。
 以上より、本発明の実施の形態8に係る外部デバイスアクセス装置803は、実施の形態3に係る外部デバイスアクセス装置303、及び実施の形態4に係る外部デバイスアクセス装置403の利点に加えて、プリフェッチ動作状態信号バス156と外部デバイス状態信号出力バス157とを1つにできるという利点がある。
 (実施の形態9)
 本発明の実施の形態9に係る外部デバイスアクセス装置は、上述した実施の形態1に係る外部デバイスアクセス装置103の変形例である。実施の形態9に係る外部デバイスアクセス装置は、マスタ101により出力される読み出し受理制御信号に応じて、受理信号を直ちに出力するか、プリフェッチ動作の完了後に受理信号を出力するかを選択する。
 まず、本発明の実施の形態9に係る外部デバイスアクセス装置の構成を説明する。
 図12は、本発明の実施の形態9に係る外部デバイスアクセス装置の構成を示すブロック図である。なお、図2と同様の要素には同一の符号を付しており重複する説明は省略する。
 実施の形態9に係る外部デバイスアクセス装置903は、実施の形態1に係る外部デバイスアクセス装置103に対して、受理信号生成部916の構成が異なる。
 また、外部デバイスアクセス装置903は、実施の形態1の接続関係に加え、マスタ101と読み出し受理制御信号バス158を介して接続される。
 受理信号生成部916は、プリフェッチデータ読み出し要求が受け付けられた際に、プリフェッチ動作状態信号バス156のプリフェッチ動作状態信号及び読み出し受理制御信号バス158の読み出し受理制御信号に応じて、プリフェッチ動作が完了しているか否かによらず受理信号をマスタ101に出力する動作、又は、プリフェッチ動作が完了した後に受理信号をマスタ101に出力する動作を選択的に行う。
 具体的には、受理信号生成部916は、プリフェッチ動作状態信号がプリフェッチ動作中でないことを示す場合には、アドレス制御部114により読み出しデータ許可信号164が出力された際に、受理信号を受理信号バス155に出力する。
 また、受理信号生成部916は、プリフェッチ動作状態信号が、プリフェッチ動作中であることを示し、かつ、読み出し受理制御信号が第1の論理である場合には、プリフェッチ動作が完了した後に、受理信号を受理信号バス155に出力する。
 また、受理信号生成部916は、プリフェッチ動作状態信号が、プリフェッチ動作中であることを示し、かつ、読み出し受理制御信号が第2の論理である場合には、プリフェッチ動作の完了を待たずに、アドレス制御部114により読み出しデータ許可信号164が出力された際に、受理信号を受理信号バス155に出力する。
 以上の構成により、実施の形態9に係る外部デバイスアクセス装置903は、読み出し受理制御信号バス158の読み出し受理制御信号に応じて、プリフェッチ動作が実行中の場合、受理信号を直ちに出力するか、プリフェッチ動作の完了後に受理信号を出力するかを選択する。
 これにより、マスタ101は、外部デバイスアクセス装置903に対して、上述した実施の形態1の動作、又はプリフェッチ動作の完了後に受理信号を返す動作を選択的に行わせることができる。
 なお、CPU又はマイコンなどの命令によって、マスタ101は、読み出し受理制御信号の出力を、プリフェッチデータ読み出し要求と同期させて出力してもよい。これにより、マスタ101は、プリフェッチ読み出し動作ごとに2つの動作を選択できる。よって、マスタ101は、より最適な処理を行うことができる。
 また、上記説明では、読み出し受理制御信号バス158に出力された読み出し受理制御信号により2つの動作を選択しているが、読み出しデータ格納部113に2つのアドレスを割り当て、当該2つのアドレスのいずれかを選択することで2つの動作を選択してもよい。
 具体的には、アドレス制御部114は、マスタ101から読み出しデータ格納部113に割り当てられた2つのアドレスのうち第1アドレスが出力された場合に、受理信号を直ちに出力する第1プリフェッチデータ読み出し要求を受け付ける。また、アドレス制御部114は、マスタ101から読み出しデータ格納部113に割り当てられた2つのアドレスのうち第2アドレスが出力された場合に、プリフェッチ動作の完了後に受理信号を出力する第2プリフェッチデータ読み出し要求を受け付ける。
 アドレス制御部114は、受け付けたプリフェッチデータ読み出し要求が、第1プリフェッチデータ読み出し要求であるか、第2プリフェッチデータ読み出し要求であるかに応じた制御信号を受理信号生成部916に出力する。
 受理信号生成部916は、当該制御信号に応じて、第1プリフェッチデータ読み出し要求が受け付けられた場合、受理信号を直ちに出力する動作を行い、第2プリフェッチデータ読み出し要求が受け付けられた場合、プリフェッチ動作の完了後に受理信号を出力する動作を行ってもよい。
 (実施の形態10)
 本発明の実施の形態10に係る外部デバイスアクセス装置は、上述した実施の形態1に係る外部デバイスアクセス装置103の変形例である。実施の形態10に係る外部デバイスアクセス装置は、受理信号を直ちに出力するか、プリフェッチ動作の完了後に受理信号を出力するかを設定するプリフェッチ読み出し制御動作を行う。
 まず、本発明の実施の形態10に係る外部デバイスアクセス装置の構成を説明する。
 図13は、本発明の実施の形態10に係る外部デバイスアクセス装置の構成を示すブロック図である。なお、図2と同様の要素には同一の符号を付しており重複する説明は省略する。
 実施の形態10に係る外部デバイスアクセス装置1003は、実施の形態1に係る外部デバイスアクセス装置103の構成に加え、さらに、読み出し制御部132を備える。また、外部デバイスアクセス装置1003は、外部デバイス102に対して、アドレス制御部1014及び受理信号生成部1016の構成が異なる。
 外部デバイスアクセス装置1003は、通常書き込み動作、プリフェッチ動作、及びプリフェッチデータ読み出し動作に加えて、プリフェッチ読み出し制御動作を行う。
 プリフェッチ読み出し制御動作は、プリフェッチデータ読み出し動作時においてプリフェッチ動作が実行中の場合に、受理信号を直ちに出力するか、プリフェッチ動作の完了後に受理信号を出力するかを設定する動作である。また、読み出し制御部132は、マスタ101が持つアクセス空間に割り当てられたアドレスを持ち、マスタ101からアクセス可能である。
 アドレス制御部1014は、アドレス制御部114の機能に加え、マスタ101からのプリフェッチ読み出し制御動作の要求(以下、プリフェッチ読み出し制御要求。)を受け付ける。具体的には、アドレス制御部1014は、アドレスバス150に出力されたアドレスが読み出し制御部132に割り当てられたアドレスであり、かつ、R/W信号によりデータ書き込みが指示されている場合、マスタ101からの要求がプリフェッチ読み出し制御要求であることを認識し、プリフェッチ読み出し制御要求を受け付ける。
 アドレス制御部1014は、プリフェッチ読み出し制御要求に応じて、プリフェッチ読み出し制御動作を行う。アドレス制御部1014は、読み出し制御部132を制御することで、プリフェッチ読み出し制御動作を行う。
 具体的には、アドレス制御部1014は、プリフェッチ読み出し制御要求を受け付けた際、書き込みアドレス160と書き込み許可信号161を読み出し制御部132に出力する。
 読み出し制御部132は、プリフェッチ読み出し制御動作要求が受け付けられた際に、マスタ101からの指定により、受理信号を直ちに出力するか、プリフェッチ動作の完了後に受理信号を出力するかを示す読み出し制御信号183が設定される。読み出し制御部132は、設定された読み出し制御信号183を受理信号生成部1016に出力する。
 具体的には、読み出し制御部132は、書き込みアドレス160が、読み出し制御部132に割り当てられたアドレスであり、アドレス制御部1014により書き込み許可信号161が出力された際に、書き込みデータ入力バス151の書き込みデータに応じた読み出し制御信号183を保持する。
 受理信号生成部1016は、読み出しデータ許可信号164、格納動作状態保持部115により出力されるプリフェッチ動作状態信号、及び読み出し制御信号183に応じて、受理信号を受理信号バス155に出力する。
 具体的には、受理信号生成部1016は、プリフェッチ動作状態信号がプリフェッチ動作中でないことを示す場合には、アドレス制御部114により読み出しデータ許可信号164が出力された際に、受理信号を受理信号バス155に出力する。
 また、受理信号生成部1016は、プリフェッチ動作状態信号が、プリフェッチ動作中であることを示し、かつ、読み出し制御信号183によりプリフェッチ動作の完了後に受理信号を出力することが示される場合には、プリフェッチ動作が完了した後に、受理信号を受理信号バス155に出力する。
 また、受理信号生成部1016は、プリフェッチ動作状態信号が、プリフェッチ動作中であることを示し、かつ、読み出し制御信号183により受理信号を直ちに出力することが示される場合には、プリフェッチ動作の完了を待たずに、アドレス制御部114により読み出しデータ許可信号164が出力された際に、受理信号を受理信号バス155に出力する。
 次に、外部デバイスアクセス装置1003の動作について説明する。
 通常書き込み動作、及びプリフェッチ動作は、実施の形態1と同様である。
 以下、プリフェッチデータ読み出し動作について説明する。
 プリフェッチデータ読み出し動作時には、受理信号生成部1016は、読み出し制御信号183に応じて、受理信号を直ちに出力するか、プリフェッチ動作の完了後に受理信号を出力するかを選択する。
 具体的には、受理信号生成部1016は、読み出し制御信号183によりプリフェッチ動作の完了後に受理信号を出力することが示される場合には、プリフェッチ動作が完了した後に、受理信号を受理信号バス155に出力する。
 また、受理信号生成部1016は、読み出し制御信号183により受理信号を直ちに出力することが示される場合には、プリフェッチ動作の完了を待たずに、アドレス制御部114により読み出しデータ許可信号164が出力された際に、受理信号を受理信号バス155に出力する。
 以下、プリフェッチ読み出し制御動作について説明する。
 プリフェッチ読み出し制御動作時には、マスタ101は、アドレスバス150に読み出し制御部132に割り当てられたアドレスを出力し、R/W信号バス153にデータ書き込みを指示するR/W信号を出力する。
 アドレス制御部1014は、アドレスバス150のアドレスが読み出しデータ格納部113に割り当てられたアドレスであるか否か、及び読み出し制御部132に割り当てられたアドレスであるか否かを判定する。アドレス制御部1014は、アドレスバス150のアドレスが読み出し制御部132に割り当てられたアドレスであり、かつ、R/W信号によりデータ書き込みが指示されているので、マスタ101からの要求がプリフェッチ読み出し制御動作であることを認識する。
 アドレス制御部1014は、書き込み許可信号161を書き込みデータ格納部111に出力し、書き込み許可信号161、及びアドレスバス150のアドレスを書き込みアドレス160として読み出し制御部132に出力する。
 読み出し制御部132は、書き込みアドレス160が、読み出し制御部132に割り当てられたアドレスであるので、アドレス制御部614により書き込み許可信号161が出力された際に、書き込みデータ入力バス151の書き込みデータに応じた読み出し制御信号183を格納し、格納した読み出し制御信号183を受理信号生成部1016に出力する。
 また、受理信号生成部1016は、アドレス制御部1014により出力された書き込み許可信号161を受けて、読み出し制御部132が読み出し制御信号183を格納した時点で受理信号バス155に受理信号を出力する。
 以上より、外部デバイスアクセス装置1003は、プリフェッチ読み出し制御動作により、受理信号を直ちに出力するか、プリフェッチ動作の完了後に受理信号を出力するかが設定される。これにより、マスタ101は、外部デバイスアクセス装置1003の上述した実施の形態1の動作と、プリフェッチ動作の完了後に受理信号を返す動作とを切替えることができる。
 さらに、実施の形態10に係る外部デバイスアクセス装置1003は、実施の形態9に係る外部デバイスアクセス装置903に対して、マスタ101との間に新たに読み出し受理制御信号バス158を設ける必要がないという利点がある。
 (実施の形態11)
 本発明の実施の形態11に係る外部デバイスアクセス装置は、上述した実施の形態1に係る外部デバイスアクセス装置103の変形例である。実施の形態11に係る外部デバイスアクセス装置は、プリフェッチデータ読み出し時においてプリフェッチ動作中である場合に、マスタ101からプリフェッチデータ読み出し要求があった時刻から、プリフェッチ動作が完了するまでの時間を示す情報であるデバッグ情報を出力する。
 図14は、本発明の実施の形態11に係る外部デバイスアクセス装置の構成を示すブロック図である。なお、図2と同様の要素には同一の符号を付しており重複する説明は省略する。
 実施の形態11に係る外部デバイスアクセス装置1103は、実施の形態1に係る外部デバイスアクセス装置103の構成に加え、さらに、サイクルカウント部118を備える。また、外部デバイスアクセス装置1103は、外部デバイス102に対して、受理信号生成部1116の構成が異なる。
 また、外部デバイスアクセス装置1103は、外部デバイスアクセス装置103の接続関係に加えた、さらに、デバッグ情報バス159を介して、マスタ101と接続される。また、外部デバイスアクセス装置1103は、プリフェッチ動作状態信号バス156を介して、マスタ101と接続されない。
 受理信号生成部1116は、プリフェッチ動作状態信号165がプリフェッチ動作中でないことを示す場合には、アドレス制御部114により読み出しデータ許可信号164が出力された際に、受理信号を受理信号バス155に出力する。
 また、受理信号生成部1016は、プリフェッチ動作状態信号165がプリフェッチ動作中であることを示す場合には、プリフェッチ動作が完了した後に、受理信号を受理信号バス155に出力する。
 サイクルカウント部118は、プリフェッチ動作の実行中に、プリフェッチデータ読み出し要求が受け付けられた場合、当該プリフェッチデータ読み出し要求が受け付けられた時刻から、プリフェッチ動作が完了するまでの時間をカウントする。具体的には、サイクルカウント部118は、アドレス制御部114により読み出しデータ許可信号164が出力された時刻から、格納動作状態保持部115により保持されるプリフェッチ動作状態信号165が、プリフェッチ動作実行中から、プリフェッチ動作完了に変更されるまでのサイクル数をカウントする。サイクルカウント部118は、カウントしたサイクル数をデバッグ情報としてデバッグ情報バス159に出力する。
 以上の構成により、実施の形態11に係る外部デバイスアクセス装置1103は、プリフェッチデータ読み出し動作時において、プリフェッチ動作実行中の場合には、マスタ101からプリフェッチデータ読み出し要求があった時刻から、プリフェッチ動作が完了するまでの時間を示す情報であるデバッグ情報をデバッグ情報バス159に出力する。
 これにより、マスタ101は、プリフェッチデータ読み出し動作を要求するタイミングを、プリフェッチ動作が完了した後の時刻に変更できる。よって、マスタ101は、複数回のプリフェッチデータ読み出し動作を要求しなくてもよいので、効率を向上できる。
 (実施の形態12)
 本発明の実施の形態12に係る外部デバイスアクセス装置は、上述した実施の形態11に係る外部デバイスアクセス装置1103の変形例である。実施の形態12に係る外部デバイスアクセス装置は、デバッグ情報を読み出しデータ出力バス152に出力するデバッグ情報読み出し動作を行う。
 まず、本発明の実施の形態12に係る外部デバイスアクセス装置の構成を説明する。
 図15は、本発明の実施の形態12に係る外部デバイスアクセス装置の構成を示すブロック図である。なお、図14と同様の要素には同一の符号を付しており重複する説明は省略する。
 実施の形態12に係る外部デバイスアクセス装置1203は、実施の形態11に係る外部デバイスアクセス装置1103の構成に加え、さらに、カウント値格納部133と、セレクタ145とを備える。また、外部デバイスアクセス装置1203は、外部デバイスアクセス装置1103に対して、アドレス制御部1214の構成が異なる。なお、受理信号生成部116の構成は、実施の形態1と同様である。
 また、外部デバイスアクセス装置1203は、実施の形態1の接続関係と同様に、プリフェッチ動作状態信号バス156を介して、マスタ101と接続され、デバッグ情報バス159を介して、マスタ101と接続されない。
 外部デバイスアクセス装置1203は、通常書き込み動作、プリフェッチ動作、及びプリフェッチデータ読み出し動作に加えて、デバッグ情報読み出し動作を行う。
 デバッグ情報読み出し動作は、プリフェッチデータ読み出し動作時においてプリフェッチ動作が実行中の場合の、マスタ101からプリフェッチデータ読み出し要求があった時刻から、プリフェッチ動作が完了するまでの時間を示す情報であるデバッグ情報を出力する動作である。また、カウント値格納部133は、マスタ101が持つアクセス空間に割り当てられたアドレスを持ち、マスタ101からアクセス可能である。
 カウント値格納部133は、プリフェッチ動作状態信号バス156のプリフェッチ動作状態信号がプリフェッチ動作実行中から、プリフェッチ動作完了に変更された際に、サイクルカウント部118により出力されるデバッグ情報を格納する。
 アドレス制御部1214は、アドレス制御部114の機能に加え、マスタ101からのデバッグ情報読み出し動作の要求(以下、デバッグ情報読み出し要求。)を受け付ける。具体的には、アドレス制御部1214は、アドレスバス150に出力されたアドレスがカウント値格納部133に割り当てられたアドレスであり、かつ、R/W信号によりデータ読み出しが指示されている場合、マスタ101からの要求がデバッグ情報読み出し要求であることを認識し、デバッグ情報読み出し要求を受け付ける。
 アドレス制御部1214は、デバッグ情報読み出し要求に応じて、デバッグ情報読み出し動作を行う。アドレス制御部1214は、セレクタ145を制御することで、デバッグ情報読み出し動作を行う。
 具体的には、アドレス制御部1214は、デバッグ情報読み出し要求を受け付けた際、カウント値読み出し許可信号184をセレクタ145に出力する。
 セレクタ145は、読み出しデータ格納部113に格納される読み出しデータと、カウント値格納部133により格納されるデバッグ情報とを、アドレス制御部1214から出力されたカウント値読み出し許可信号184に応じて選択し、選択した読み出しデータ又はデバッグ情報を読み出しデータ出力バス152に出力する。具体的には、セレクタ145は、アドレス制御部1214によりカウント値読み出し許可信号184が出力されていない場合、読み出しデータを選択し、アドレス制御部1214によりカウント値読み出し許可信号184が出力されている場合、デバッグ情報を選択する。
 次に、外部デバイスアクセス装置1203の動作について説明する。なお、実施の形態11と同様の動作については説明を省略する。
 通常書き込み動作、及びプリフェッチ動作は、実施の形態11と同様である。
 以下、プリフェッチデータ読み出し動作について説明する。
 プリフェッチデータ読み出し動作において、サイクルカウント部118は、プリフェッチ動作の実行中にプリフェッチデータ読み出し動作が行われた場合、当該プリフェッチデータ読み出し動作を行った時刻から、プリフェッチ動作が完了するまでのサイクル数をカウントする。サイクルカウント部118は、カウントしたサイクル数をデバッグ情報としてカウント値格納部133に出力する。
 カウント値格納部133は、プリフェッチ動作状態信号バス156のプリフェッチ動作状態信号がプリフェッチ動作実行中から、プリフェッチ動作完了に変更された際に、サイクルカウント部118により出力されるデバッグ情報を格納する。
 また、セレクタ145は、アドレス制御部1214によりカウント値読み出し許可信号184が出力されていないので、読み出しデータ格納部113に格納される読み出しデータを読み出しデータ出力バス152に出力する。
 以下、デバッグ情報読み出し動作について説明する。
 デバッグ情報読み出し動作時には、マスタ101は、アドレスバス150にカウント値格納部133に割り当てられたアドレスを出力し、R/W信号バス153にデータ読み出しを指示するR/W信号を出力する。
 アドレス制御部1214は、アドレスバス150のアドレスが読み出しデータ格納部113に割り当てられたアドレスであるか否か、及びカウント値格納部133に割り当てられたアドレスであるか否かを判定する。アドレス制御部1214は、アドレスバス150のアドレスがカウント値格納部133に割り当てられたアドレスであり、かつ、R/W信号によりデータ読み出しが指示されているので、マスタ101からの要求がデバッグ情報読み出し動作であることを認識する。
 アドレス制御部1214は、カウント値読み出し許可信号184をセレクタ145に出力する。
 セレクタ145は、アドレス制御部1214によりカウント値読み出し許可信号184が出力されているので、カウント値格納部133に格納されるデバッグ情報を読み出しデータ出力バス152に出力する。
 以上によりデバッグ情報読み出し動作が完了する。
 以上より、実施の形態12に係る外部デバイスアクセス装置1203は、デバッグ情報読み出し動作により、デバッグ情報を読み出しデータ出力バス152に出力する。
 これにより、マスタ101は、プリフェッチデータ読み出し動作を要求するタイミングを、プリフェッチ動作が完了した後の時刻に変更できる。よって、マスタ101は、複数回のプリフェッチデータ読み出し動作を要求しなくてもよいので、効率を向上できる。
 また、外部デバイスアクセス装置1203は、実施の形態11に係る外部デバイスアクセス装置1103に対して、デバッグ情報バス159をマスタ101との間に設ける必要がないという利点がある。
 本発明は、外部デバイスアクセス装置、及び、CPU又はマイコン等のマスタと、コプロセッサ又はアクセラレータ等の外部デバイスとを備えるシステムLSIに適用できる。

Claims (22)

  1.  マスタからの要求に応じて、外部デバイスからデータを読み出すプリフェッチ動作と、前記プリフェッチ動作で読み出したデータを前記マスタに出力するプリフェッチデータ読み出し動作を行う外部デバイスアクセス装置であって、
     前記マスタからのプリフェッチ要求及びプリフェッチデータ読み出し要求を受け付け、前記プリフェッチ動作及び前記プリフェッチデータ読み出し動作を行う制御部と、
     前記プリフェッチ動作により読み出されたデータを格納するデータ格納部と、
     前記プリフェッチ動作が完了したか否かを示すプリフェッチ動作状態を保持する状態保持部と、
     前記マスタからの前記プリフェッチデータ読み出し要求を受け付けたことを示す受理信号を前記マスタに出力する受理信号生成部とを備え、
     前記制御部は、前記プリフェッチデータ読み出し動作として、前記データ格納部に格納されるデータを前記マスタに出力し、
     前記制御部は、前記プリフェッチ動作状態に基づく前記プリフェッチ動作の状態を示す第1情報を前記マスタに出力する
     ことを特徴する外部デバイスアクセス装置。
  2.  前記受理信号生成部は、前記制御部により前記プリフェッチデータ読み出し要求が受け付けられた際に、前記プリフェッチ動作が完了しているか否かによらず、前記受理信号を前記マスタに出力し、
     前記制御部は、前記プリフェッチデータ読み出し要求を受け付けた際に、前記第1情報を前記マスタに出力する
     ことを特徴とする請求項1記載の外部デバイスアクセス装置。
  3.  前記制御部は、前記プリフェッチ動作状態を前記第1情報として前記マスタに出力する
     ことを特徴とする請求項1記載の外部デバイスアクセス装置。
  4.  前記外部デバイスアクセス装置と前記マスタとは、読み出しデータバスを介して接続され、
     前記制御部は、前記データ格納部に格納されるデータ及び前記第1情報を前記読み出しデータバスを介して前記マスタに出力する
     ことを特徴とする請求項1記載の外部デバイスアクセス装置。
  5.  前記制御部は、前記プリフェッチ動作状態により前記プリフェッチ動作が完了したことが示される場合、前記データ格納部に格納されるデータを前記読み出しデータバスを介して前記マスタに出力し、前記プリフェッチ動作状態により前記プリフェッチ動作が完了していないことが示される場合、予め定められたデータを前記第1情報として前記読み出しデータバスを介して前記マスタに出力する
     ことを特徴とする請求項4記載の外部デバイスアクセス装置。
  6.  前記制御部は、前記プリフェッチ動作状態により前記プリフェッチ動作が完了したことが示される場合、前記データ格納部に格納されるデータを前記読み出しデータバスを介して前記マスタに出力し、前記プリフェッチ動作状態により前記プリフェッチ動作が完了していないことが示される場合、当該プリフェッチ動作により読み出しを行っている前記外部デバイスのアドレスを前記第1情報として前記読み出しデータバスを介して前記マスタに出力する
     ことを特徴とする請求項4記載の外部デバイスアクセス装置。
  7.  前記制御部は、さらに、前記マスタからのプリフェッチ動作状態読み出し要求を受け付け、
     前記制御部は、前記プリフェッチ動作状態読み出し要求を受け付けた場合、前記第1情報を前記マスタに出力する
     ことを特徴とする請求項1記載の外部デバイスアクセス装置。
  8.  前記外部デバイスは、当該外部デバイスの動作状態を示す状態信号を出力し、
     前記外部デバイスアクセス装置は、さらに、
     前記プリフェッチ動作が完了した際の、前記状態信号を格納する状態信号格納部と、
     前記プリフェッチ動作状態により前記プリフェッチ動作が完了したことが示される場合、前記状態信号格納部に格納される前記状態信号を前記マスタに出力し、前記プリフェッチ動作状態により前記プリフェッチ動作が完了していないことが示される場合、前記外部デバイスにより出力されている状態信号を前記マスタに出力する状態信号出力部とを備える
     ことを特徴とする請求項1記載の外部デバイスアクセス装置。
  9.  前記外部デバイスは、当該外部デバイスの動作状態を示す状態信号を出力し、
     前記受理信号生成部は、前記制御部により前記プリフェッチデータ読み出し要求が受け付けられた際に、前記状態信号に応じて、前記プリフェッチ動作が完了しているか否かによらず、前記受理信号を前記マスタに出力する第1動作、又は、前記プリフェッチ動作が完了した後に前記受理信号を前記マスタに出力する第2動作を選択的に行う
     ことを特徴とする請求項1記載の外部デバイスアクセス装置。
  10.  前記制御部は、さらに、前記マスタからのプリフェッチ中止要求を受け付け、
     前記外部デバイスアクセス装置は、さらに、
     前記制御部により、前記プリフェッチ中止要求が受け付けられた場合、前記プリフェッチ動作を中止するプリフェッチ中止部を備える
     ことを特徴とする請求項8記載の外部デバイスアクセス装置。
  11.  前記外部デバイスは、当該外部デバイスの動作状態を示す状態信号を出力し、
     前記外部デバイスアクセス装置は、さらに、
     前記制御部により、前記プリフェッチデータ読み出し要求が受け付けられ、かつ、前記プリフェッチ動作状態により前記プリフェッチ動作が完了していないことが示される場合、前記外部デバイスにより出力されている前記状態信号に応じて、前記プリフェッチ動作を中止するプリフェッチ中止部を備える
     ことを特徴とする請求項1記載の外部デバイスアクセス装置。
  12.  前記外部デバイスは、当該外部デバイスの動作状態を示す状態信号を出力し、
     前記外部デバイスアクセス装置と前記マスタとは、第1信号バスを介して接続され、
     前記外部デバイスアクセス装置は、さらに、
     前記プリフェッチ動作が完了した際の、前記状態信号を格納する状態信号格納部と、
     前記制御部により前記プリフェッチデータ読み出し要求が受け付けられた際の、前記プリフェッチ動作状態である読み出し時プリフェッチ動作状態を格納する読み出し時状態格納部と、
     前記プリフェッチ動作状態により前記プリフェッチ動作が完了していないことが示される場合、当該プリフェッチ動作状態を、前記第1信号バスを介して前記マスタに出力し、前記プリフェッチ動作状態により前記プリフェッチ動作が完了していることが示される場合、前記状態信号格納部により格納される状態信号を、前記第1信号バスを介して前記マスタに出力する信号出力部とを備え、
     前記制御部は、前記プリフェッチ動作状態読み出し要求を受け付けた場合、前記読み出し時プリフェッチ動作状態を前記第1情報として前記マスタに出力する
     ことを特徴とする請求項7記載の外部デバイスアクセス装置。
  13.  前記受理信号生成部は、前記制御部により前記プリフェッチデータ読み出し要求が受け付けられた際に、前記プリフェッチ動作が完了しているか否かによらず、前記受理信号を前記マスタに出力する第1動作、又は、前記プリフェッチ動作が完了した後に前記受理信号を前記マスタに出力する第2動作を選択的に行う
     ことを特徴とする請求項1記載の外部デバイスアクセス装置。
  14.  前記受理信号生成部は、前記マスタから出力される制御信号に応じて、前記第1動作又は前記第2動作を選択的に行う
     ことを特徴とする請求項13記載の外部デバイスアクセス装置。
  15.  前記プリフェッチ読み出し要求は、第1プリフェッチデータ読み出し要求と、第2プリフェッチデータ読み出し要求とを含み、
     前記制御部は、前記マスタから第1アドレスが出力された場合に、前記第1プリフェッチデータ読み出し要求を受け付け、前記マスタから第2アドレスが出力された場合に、前記第2プリフェッチデータ読み出し要求を受け付け、
     前記受理信号生成部は、前記制御部により前記第1プリフェッチデータ読み出し要求が受け付けられた場合、前記第1動作を行い、前記制御部により前記第2プリフェッチデータ読み出し要求が受け付けられた場合、前記第2動作を行う
     ことを特徴する請求項13記載の外部デバイスアクセス装置。
  16.  前記外部デバイスアクセス装置は、さらに、
     第1状態又は第2状態が設定される状態設定部を備え、
     前記制御部は、さらに、前記マスタからのプリフェッチ読み出し制御動作要求を受け付け、
     前記制御部は、前記プリフェッチ読み出し制御動作要求を受け付けた場合、前記マスタからの指定された前記第1状態又は前記第2状態を前記状態設定部に設定し、
     前記受理信号生成部は、前記状態設定部に前記第1状態が設定されている場合に前記第1動作を行い、前記状態設定部に前記第2状態が設定されている場合に前記第2動作を行う
     ことを特徴する請求項13記載の外部デバイスアクセス装置。
  17.  前記外部デバイスアクセス装置は、さらに、
     前記プリフェッチ動作の実行中に、前記制御部によりプリフェッチデータ読み出し要求が受け付けられた場合に、当該プリフェッチデータ読み出し要求が受け付けられてから、当該プリフェッチ動作が完了するまでの時間をカウントするカウント部を備え、
     前記制御部は、前記カウント部によりカウントされた時間を前記第1情報として前記マスタに出力する
     ことを特徴とする請求項1記載の外部デバイスアクセス装置。
  18.  前記制御部は、さらに、前記マスタからの時間読み出し要求を受け付け、
     前記外部デバイスアクセス装置は、さらに、
     前記カウント部によりカウントされた時間を格納する時間格納部を備え、
     前記制御部は、前記時間読み出し要求を受け付けた場合、前記時間格納部に格納される前記時間を前記第1情報として前記マスタに出力する
     ことを特徴とする請求項17記載の外部デバイスアクセス装置。
  19.  請求項1記載の外部デバイスアクセス装置と、マスタとを備えるシステムLSIであって、
     前記外部デバイスアクセス装置は、前記第1情報を前記マスタの割り込み信号、又はスレッド切り替え信号として出力し、
     前記マスタは、前記第1情報を、割り込み処理、又はスレッド切り替え信号として処理する
     ことを特徴とするシステムLSI。
  20.  請求項1記載の外部デバイスアクセス装置と、マスタとを備えるシステムLSIであって、
     前記外部デバイスアクセス装置は、前記第1情報を前記マスタがソフト処理可能なフラグ信号として出力し、
     前記マスタは、前記第1情報を、ソフト処理可能なフラグ信号として処理する
     ことを特徴とするシステムLSI。
  21.  請求項14記載の外部デバイスアクセス装置と、マスタとを備えるシステムLSIであって、
     前記マスタは、前記制御信号を、前記プリフェッチデータ読み出し要求と同期して、前記外部デバイスアクセス装置に出力する
     ことを特徴とするシステムLSI。
  22.  マスタからの要求に応じて、外部デバイスからデータを読み出すプリフェッチ動作と、前記プリフェッチ動作で読み出したデータを前記マスタに出力するプリフェッチデータ読み出し動作を行う外部デバイスアクセス装置の制御方法であって、
     前記マスタからのプリフェッチ要求を受け付けるプリフェッチ要求受け付けステップと、
     前記プリフェッチ要求を受け付けた場合、前記外部デバイスからデータを読み出し、読み出したデータをデータ格納部に格納するプリフェッチステップと、
     前記プリフェッチステップが完了したか否かを示すプリフェッチ動作状態を保持する状態保持ステップと、
     前記マスタからのプリフェッチデータ読み出し要求を受け付けるプリフェッチデータ読み出し要求受け付けステップと、
     前記プリフェッチデータ読み出し要求を受け付けた場合、当該プリフェッチデータ読み出し要求を受け付けたことを示す受理信号を前記マスタに出力する受理信号生成ステップと、
     前記プリフェッチデータ読み出し要求を受け付けた場合、前記データ格納部に格納されるデータを前記マスタに出力するプリフェッチデータ読み出しステップと、
     前記プリフェッチ動作状態に基づく前記プリフェッチ動作の状態を示す第1情報を前記マスタに出力する第1情報出力ステップとを含む
     ことを特徴とする制御方法。
PCT/JP2008/002206 2008-02-08 2008-08-13 外部デバイスアクセス装置、その制御方法及びシステムlsi WO2009098737A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
US12/866,061 US20100318707A1 (en) 2008-02-08 2008-08-13 External device access apparatus, control method thereof, and system lsi
JP2009529455A JPWO2009098737A1 (ja) 2008-02-08 2008-08-13 外部デバイスアクセス装置、その制御方法及びシステムlsi
CN200880126342.0A CN101939733A (zh) 2008-02-08 2008-08-13 外部设备存取装置、其控制方法及系统大规模集成电路

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008029356 2008-02-08
JP2008-029356 2008-02-08

Publications (1)

Publication Number Publication Date
WO2009098737A1 true WO2009098737A1 (ja) 2009-08-13

Family

ID=40951826

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2008/002206 WO2009098737A1 (ja) 2008-02-08 2008-08-13 外部デバイスアクセス装置、その制御方法及びシステムlsi

Country Status (4)

Country Link
US (1) US20100318707A1 (ja)
JP (1) JPWO2009098737A1 (ja)
CN (1) CN101939733A (ja)
WO (1) WO2009098737A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021118957A (ja) * 2021-05-19 2021-08-12 株式会社ユニバーサルエンターテインメント 遊技機

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102043713A (zh) * 2009-10-26 2011-05-04 鸿富锦精密工业(深圳)有限公司 计时电路与计时方法
US20120226839A1 (en) * 2011-03-02 2012-09-06 Texas Instruments Incorporated Method and System for Monitoring and Debugging Access to a Bus Slave Using One or More Throughput Counters
KR101667772B1 (ko) 2012-08-18 2016-10-19 퀄컴 테크놀로지스, 인크. 프리페칭을 갖는 변환 색인 버퍼
CN104133691B (zh) * 2014-05-05 2016-08-31 腾讯科技(深圳)有限公司 加速启动的方法及装置

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03278156A (ja) * 1990-03-27 1991-12-09 Pfu Ltd バスアクセス制御方式
JPH05189311A (ja) * 1992-01-09 1993-07-30 Mitsubishi Electric Corp キャッシュメモリ・システム
JPH0756846A (ja) * 1993-08-18 1995-03-03 Mitsubishi Electric Corp 入出力制御装置及びマイクロプロセッサ及びデータ処理システム並びにデータの転送方法
JPH10301892A (ja) * 1997-04-23 1998-11-13 Hitachi Ltd バスブリッジ
JP2004334552A (ja) * 2003-05-08 2004-11-25 Fujitsu Ltd バス接続回路及びバス接続システム
WO2006134804A1 (ja) * 2005-06-15 2006-12-21 Matsushita Electric Industrial Co., Ltd. 外部デバイスアクセス装置

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5339395A (en) * 1992-09-17 1994-08-16 Delco Electronics Corporation Interface circuit for interfacing a peripheral device with a microprocessor operating in either a synchronous or an asynchronous mode
JP3548616B2 (ja) * 1995-01-20 2004-07-28 株式会社日立製作所 情報処理装置
JPH10134008A (ja) * 1996-11-05 1998-05-22 Mitsubishi Electric Corp 半導体装置およびコンピュータシステム
JP2007241612A (ja) * 2006-03-08 2007-09-20 Matsushita Electric Ind Co Ltd マルチマスタシステム

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03278156A (ja) * 1990-03-27 1991-12-09 Pfu Ltd バスアクセス制御方式
JPH05189311A (ja) * 1992-01-09 1993-07-30 Mitsubishi Electric Corp キャッシュメモリ・システム
JPH0756846A (ja) * 1993-08-18 1995-03-03 Mitsubishi Electric Corp 入出力制御装置及びマイクロプロセッサ及びデータ処理システム並びにデータの転送方法
JPH10301892A (ja) * 1997-04-23 1998-11-13 Hitachi Ltd バスブリッジ
JP2004334552A (ja) * 2003-05-08 2004-11-25 Fujitsu Ltd バス接続回路及びバス接続システム
WO2006134804A1 (ja) * 2005-06-15 2006-12-21 Matsushita Electric Industrial Co., Ltd. 外部デバイスアクセス装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021118957A (ja) * 2021-05-19 2021-08-12 株式会社ユニバーサルエンターテインメント 遊技機
JP7049507B2 (ja) 2021-05-19 2022-04-06 株式会社ユニバーサルエンターテインメント 遊技機

Also Published As

Publication number Publication date
JPWO2009098737A1 (ja) 2011-05-26
US20100318707A1 (en) 2010-12-16
CN101939733A (zh) 2011-01-05

Similar Documents

Publication Publication Date Title
JP4563829B2 (ja) ダイレクトメモリアクセス制御方法、ダイレクトメモリアクセス制御装置、情報処理システム、プログラム
JP6633119B2 (ja) 自律的メモリの方法及びシステム
US9043806B2 (en) Information processing device and task switching method
EP1365321A2 (en) Multiprocessor system
JP5287301B2 (ja) ディスクリプタ転送装置、i/oコントローラ、及びディスクリプタ転送方法
JP2006338538A (ja) ストリームプロセッサ
JP2005235135A (ja) ベクトル処理装置、及び、追い越し制御回路
WO2009098737A1 (ja) 外部デバイスアクセス装置、その制御方法及びシステムlsi
JP4688822B2 (ja) 外部デバイスアクセス装置およびシステムlsi
JP4965638B2 (ja) タスクの切り換えを制御するシステムおよび方法
JP6004463B2 (ja) 記憶装置及びその制御方法
JP4779010B2 (ja) バッファリング装置およびバッファリング方法
JP2006202271A (ja) ストリームプロセッサ及び情報処理装置
JP2010134789A (ja) 要求処理装置、要求処理システムおよびアクセス試験方法
JP2007141155A (ja) マルチコアプロセッサにおけるマルチコア制御方法
JP2005258509A (ja) ストレージ装置
JP2008140124A (ja) データ処理装置
JP2009163531A (ja) 割り込み管理機構およびマイクロコンピュータ
WO2010029682A1 (ja) 情報処理装置
JP2005276104A (ja) マイクロコンピュータ
JP2005038203A (ja) メモリ制御方法及び装置
JP2007087244A (ja) コプロセッサ及びコンピュータシステム
JP2007304926A (ja) 情報処理方法および命令生成方法
JP6940283B2 (ja) Dma転送制御装置、dma転送制御方法、及び、dma転送制御プログラム
JP2006338353A (ja) 情報処理装置および情報処理方法、並びにプログラム

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 200880126342.0

Country of ref document: CN

WWE Wipo information: entry into national phase

Ref document number: 2009529455

Country of ref document: JP

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 08790454

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 12866061

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 08790454

Country of ref document: EP

Kind code of ref document: A1