WO2010001515A1 - Bus arbitration device and navigation device using the same - Google Patents

Bus arbitration device and navigation device using the same Download PDF

Info

Publication number
WO2010001515A1
WO2010001515A1 PCT/JP2009/001842 JP2009001842W WO2010001515A1 WO 2010001515 A1 WO2010001515 A1 WO 2010001515A1 JP 2009001842 W JP2009001842 W JP 2009001842W WO 2010001515 A1 WO2010001515 A1 WO 2010001515A1
Authority
WO
WIPO (PCT)
Prior art keywords
bus
cpu
circuit
cpus
arbitration
Prior art date
Application number
PCT/JP2009/001842
Other languages
French (fr)
Japanese (ja)
Inventor
山田久典
小羽田哲宏
藤井慶司
北村典子
Original Assignee
三菱電機株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 三菱電機株式会社 filed Critical 三菱電機株式会社
Priority to JP2010518882A priority Critical patent/JPWO2010001515A1/en
Publication of WO2010001515A1 publication Critical patent/WO2010001515A1/en

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/14Handling requests for interconnection or transfer
    • G06F13/36Handling requests for interconnection or transfer for access to common bus or bus system
    • G06F13/362Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control
    • G06F13/364Handling requests for interconnection or transfer for access to common bus or bus system with centralised access control using independent requests or grants, e.g. using separated request and grant lines

Definitions

  • the present invention relates to a bus arbitration device that arbitrates bus use requests of a plurality of CPUs (Central Processing Unit), and a navigation device using the bus arbitration device.
  • CPUs Central Processing Unit
  • I / O Input / Output
  • HDDs Hard Disk Drives
  • DVDs Digital Versatile Disks
  • memory cards etc. are common. These have a large-capacity storage function and are used for storing software, video, music, maps, and other various data, and greatly contribute to user convenience.
  • a write or read port mounted on the I / O device as described above is generally one port, and is connected to one CPU on a one-to-one basis.
  • FIG. 9 is a diagram showing a connection between a CPU and an I / O device in a conventional single port. As shown in FIG. 9, the CPU 100 and the I / O device 101 are connected one-to-one via the data bus 102 and the control line 103.
  • a flash memory 104 and a DRAM (Dynamic Random Access Memory) 105 are also arranged as a storage device for storing programs and data necessary for the CPU 100 to operate the components.
  • in-vehicle navigation devices in recent years are equipped with an HDD as a storage for storing music data and map data, and are further divided into a CPU for processing video and music data and a CPU for processing map data. is there.
  • an HDD as a storage for storing music data and map data
  • a CPU for processing map data is there.
  • I / O devices are generally single-port compatible on the premise of access from one CPU, and it is considered that simultaneous access from two or more CPUs is supported. It has not been.
  • I / O devices equipped with dual ports but they are expensive at present and cannot be used easily.
  • Patent Document 1 discloses a multi-CPU device that operates a single-port I / O device as if it were a dual-port I / O device. This device is provided with an arbitration circuit that arbitrates access from two CPUs to one I / O device using digital circuit technology.
  • the arbitration circuit determines that the one CPU is accessible, and the I / O device An access signal is generated at a timing that matches the specifications, and data reading and writing by the one CPU is executed. The same applies when an access signal is generated from the other CPU side.
  • the arbitration circuit When accesses by both CPUs overlap, the arbitration circuit outputs a wait signal to one of the CPUs and waits so that the two CPUs do not access the I / O device at the same time. is doing.
  • FIG. 10 is a diagram showing a configuration of a conventional multi-CPU device.
  • an LSI 106 is a dedicated LSI on which the above-described timing generation circuit is mounted, and is connected to the CPUs 100-1 and 100-2 and the HDD 101 via signal lines.
  • the LSI 106 captures all the bus signals from the CPUs 100-1 and 100-2. Therefore, as shown in FIG. 10, it is necessary to connect with a large number of signal lines for transmitting the bus signals, and unavoidably.
  • the substrate area increases.
  • navigation devices are capable of high-capacity high-speed data communication, and in addition to the original car navigation function, a processing function for handling multimedia information such as video and music has been added.
  • a processing function for handling multimedia information such as video and music has been added.
  • a configuration in which processing is shared using a plurality of CPUs is desired.
  • the present invention has been made to solve the above-described problems, and can be miniaturized with a simple configuration and uses a bus arbitration device that does not depend on the type, operation speed, or quantity of the CPU, and the same.
  • the object is to obtain a navigation device.
  • the bus arbitration device is a bus arbitration device that arbitrates bus use between two CPUs connected to a bus, and is a logical value indicating the state of assertion and negation of a bus use request signal input from the two CPUs.
  • a logic circuit that outputs a logical value indicating whether or not the bus can be used in accordance with a combination; and an inverter circuit that branches and inputs the output of the logic circuit to invert the logic.
  • an arbitration circuit unit that outputs a logical value indicating that the bus can be used is provided on a bus that connects the CPU and the access target device.
  • the exchange of the bus usable CPU and the access target device via the bus is relayed, and the bus unavailable In which and a gate portion for blocking PU from the bus.
  • a logic circuit that outputs a logic value indicating whether or not the bus can be used is output in accordance with a combination of logic values indicating the assertion of the bus use request signal and the negated state, and the output of the logic circuit is branched and input.
  • a logic value indicating that the bus can be used among the outputs of the logic circuit and the inverter circuit in the order in which the bus use request signals are asserted to a plurality of CPUs.
  • FIG. 6 is a timing chart of an access operation to an I / O device by a CPU. It is a figure which shows the structure of the arbitration circuit part of the bus arbitration apparatus by Embodiment 2 of this invention. It is a figure which shows the connection of CPU and I / O apparatus in the conventional single port. It is a figure which shows the structure of the conventional multi CPU apparatus.
  • FIG. 1 is a diagram showing a configuration of a bus arbitration device according to Embodiment 1 of the present invention, and takes as an example a case where an HDD, which is a typical device as an I / O device, is accessed from two CPUs.
  • CPUs 1 and 2 are provided with flash memories 4-1 and 4-2 and DRAMs 5-1 and 5-2, which are memories for storing programs and data necessary for each operation. ing.
  • the CPUs 1 and 2 have crystal oscillators 6-1 and 6-2 and reset ICs 7-1 and 7-2 that generate operation clock signals, respectively, and can operate at different operation clock frequencies.
  • the I / O device (access target device) 3 is an HDD accessed from the CPUs 1 and 2 (hereinafter referred to as HDD 3 as appropriate), and is equipped with an ATAPI (AT Attachment Packet Interface) standard bus I / F circuit. Yes.
  • the HDD 3 is connected to the external buses of the CPUs 1 and 2 that normally operate at a timing that matches the I / F standard, and reading or writing is executed by executing the programs of the CPUs 1 and 2.
  • the HDD 3 is a single-port storage device, and the CPUs 1 and 2 each access through one system bus line.
  • the bus arbitration device is provided between the two CPUs 1 and 2 and the I / O device 3, and requests to use the bus so as to be exclusively accessed from one CPU (CPU1 or CPU2). Mediate.
  • the configuration includes an arbitration circuit unit 8 and gate units 9-1 and 9-2.
  • the arbitration circuit unit 8 is a circuit unit that arbitrates access from the two CPUs 1 and 2 to the I / O device 3, and is connected to the CPU 1 through the two signal lines 10-1 and 11-1. It is connected to the CPU 2 via two signal lines 10-2 and 11-2.
  • the signal lines 10-1 and 10-2 are signal lines for transmitting a signal CPU_ACK for notifying the CPUs 1 and 2 of the availability of access (bus availability).
  • the signal lines 11-1 and 11-2 are signals for transmitting a signal CPU_REQ (bus use request signal) for requesting access to the I / O device 3 from the CPUs 1 and 2 (bus use request). .
  • the gate units 9-1 and 9-2 are gate ICs that receive the input of the signal CPU_ACK from the arbitration circuit unit 8 and connect or block the bus signal according to the signal CPU_ACK. For example, when the signal CPU1_ACK from the arbitration circuit unit 8 is asserted (accessible), the gate unit 9-1 connects the control line 12-1 and the data bus 13-1 to the HDD 3, and the signal CPU1_ACK is negated (accessed). If it is not possible, it will be blocked.
  • the control lines 12-1 and 12-2 are signal lines for transmitting control information from the CPUs 1 and 2, and the data buses 13-1 and 13-2 are exchanged between the CPUs 1 and 2 and the HDD 3. This is a signal line for transmitting data.
  • FIG. 2 is a diagram showing the configuration of the arbitration circuit unit in FIG.
  • the arbitration circuit unit 8 includes inverter circuits 14-1, 14-2, 17, NAND circuits 15-1, 15-2, and D-FF (Delay-Flip) which are, for example, 74 series logic ICs. Flop) 16.
  • the arbitration circuit unit 8 and the outside are connected by a total of four signal lines, signal lines 10-1 and 10-2 and signal lines 11-1 and 11-2.
  • the signal line 10-1 for transmitting the signal CPU1_ACK to the CPU 1 is connected to the output of the inverter circuit (inverter circuit) 17, and the signal line 10-2 for transmitting the signal CPU2_ACK to the CPU 2 is input to the inverter circuit 17. Connected to.
  • the signal line 11-1 for transmitting the signal CPU1_REQ from the CPU1 is connected to the inverting input of the inverter circuit 14-1 and the input of the NAND circuit 15-2.
  • the signal line 11-2 for transmitting the signal CPU2_REQ from the CPU 2 is connected to the inverting input of the inverter circuit 14-2 and the input of the NAND circuit 15-1.
  • the NAND circuit 15-1 has an input side connected to the output of the inverter circuit 14-1 and the signal line 11-2, and an output connected to the preset terminal PR of the D-FF16.
  • the NAND circuit 15-2 has an input side connected to the output of the inverter circuit 14-2 and the signal line 11-1, and an output connected to the clear terminal CL of the D-FF 16.
  • the D-FF (logic circuit) 16 is a flip-flop that holds a digital value input to an input terminal D (not shown) according to an operation clock signal input to a clock terminal CK (not shown).
  • the signal CPU_ACK is generated according to the values input to the terminal PR and the terminal CL without using the operation clock signal. Since the CPU operation clock signal is not used, the arbitration operation is not affected even if the CPUs 1 and 2 have different operation speeds.
  • the output terminal of the D-FF 16 is branched and connected to the input of the inverter circuit 17 and the signal line 10-2, and the output value of the D-FF 16 is on the signal line 10-2 as the signal CPU2_ACK.
  • the output value of the D-FF 16 transmitted and inverted by the inverter circuit 17 is transmitted as the signal CPU1_ACK on the signal line 10-1.
  • the input terminal D and the clock terminal CK are pulled up to a predetermined voltage value or pulled down.
  • the signal CPU_ACK can be asserted to either one of the CPUs 1 and 2 without collision of accesses by the CPUs 1 and 2. Therefore, after asserting the signal CPU_REQ, the CPUs 1 and 2 wait for the signal CPU_ACK to be asserted by the arbitration circuit unit 8, and start accessing the I / O device when the signal CPU_ACK is asserted.
  • FIG. 3 is a function table showing the relationship between the input / output of the arbitration circuit unit in FIG. 2 and the access right of the CPU, and shows the case where time elapses in the direction of the arrow in the table.
  • the arbitration circuit unit 8 asserts or negates the signal CPU_ACK to the CPUs 1 and 2 according to the combination of the values of the signals CPU_REQ from the CPUs 1 and 2 (logical values of high or low).
  • the access right to the / O device 3 is given.
  • the signals CPU_REQ and CPU_ACK define the low level (L) as asserted and the high level (H) as negated.
  • the terminal PR of the D-FF 16 becomes L level and the terminal CL becomes H level, so that the output of the D-FF 16 becomes H level and L level.
  • Signal CPU1_ACK and H level signal CPU2_ACK are immediately output. That is, access is permitted to the CPU 1.
  • both the signal CPU1_REQ and the signal CPU2_REQ are at the L level.
  • the output value of the D-FF 16 is maintained, and the L-level signal CPU1_ACK and the H-level signal CPU2_ACK are continuously output. Thereby, the access permission of the CPU 1 is maintained.
  • FIG. 4 is a diagram showing the configuration of the gate portion in FIG.
  • the gate units 9-1 and 9-2 can also be configured by buffer ICs 18, 19, and 20, which are 74 series general-purpose logic ICs, similarly to the arbitration circuit unit 8.
  • the buffer ICs 18, 19, and 20 are equipped with a terminal ENABLE, and determine whether the gate is on or off according to the level of the terminal ENABLE. Further, as the buffer ICs 18, 19 and 20, a three-state IC capable of setting the output terminal to high impedance when the gate is off is used.
  • the buffer IC 18 of the gate section 9-1 (or gate section 9-2) is connected to the CPU 1 (or CPU 2) via the data bus 13-1 (or data bus 13-2), and CPU1_ACK ( Alternatively, the data bus 13-1 (or data bus 13-2) is connected or disconnected according to the value of CPU2_ACK).
  • the buffer IC 19 in the gate unit 9-1 (or gate unit 9-2) transmits a control signal output from the CPU 1 (or CPU 2) to the I / O device 3 (or control line 12-1). -2) Connected via a control line (hereinafter referred to as a control line (output)), and the control line (output) is connected or disconnected according to the value of CPU1_ACK (or CPU2_ACK).
  • the buffer IC 20 of the gate unit 9-1 (or the gate unit 9-2) transmits a signal input from the I / O device 3 to the CPU 1 (or CPU 2), the control line 12-1 (or the control line 12- 2) Connection is made via a control line (hereinafter referred to as a control line (input)), and the control line (input) is connected or disconnected according to the value of CPU1_ACK (or CPU2_ACK).
  • FIG. 5 is a function table showing the input / output relationship of the gate part in FIG.
  • an L level (or H level) digital signal is input from the data bus 13-1 to the input terminal A, and an L level (asserted) signal CPU1_ACK is input to the terminal ENABLE.
  • the buffer IC 18 outputs the L-level (or H-level) output value Y, that is, the value transmitted through the data bus 13-1, to the I / O device 3 side as it is.
  • the buffer IC 18 receives an L level (or H level) digital signal from the data bus 13-1 to the input terminal A.
  • the output value Y is set to high impedance (Z), and the data bus 13-1 and the I / O device 3 are disconnected.
  • the buffer ICs of the gate units 9-1 and 9-2 input the signal CPU_ACK output from the arbitration circuit unit 8 to the terminal ENABLE, thereby connecting the data bus and the control line to the CPUs 1 and 2. It can be connected or disconnected, and signal line collision can be avoided.
  • FIG. 6 is a diagram showing an example of the sequence of the arbitration operation according to the first embodiment, and shows a case where the CPU 1 makes a request prior to the CPU 2 shown in FIG.
  • the CPU 1 asserts the signal CPU1_REQ (L level), and requests the arbitration circuit unit 8 for the access right to the I / O device 3 (step ST1).
  • the arbitration circuit unit 8 receives the signal CPU1_REQ from the CPU 1 via the signal line 10-1, if the signal CPU1_ACK is not at the L level at this time, the CPU 1 has no access permission, so the CPU 1 enters a waiting state (step S1). ST2).
  • the signal CPU2_REQ is asserted (L level), and the arbitration circuit unit 8 is requested to access the I / O device 3 (step ST1a).
  • the arbitration circuit unit 8 inputs the signal CPU2_REQ from the CPU 2 via the signal line 10-2, if the signal CPU2_ACK is not at the L level at this time, the CPU 2 is not permitted to access, so the CPU 2 enters a waiting state. (Step ST2a).
  • the CPU 1 When reading or writing to the I / O device 3 is completed, the CPU 1 negates (H level) the signal CPU1_REQ (step ST4).
  • the arbitration circuit unit 8 when an H-level signal CPU1_REQ is input from the CPU 1 via the signal line 10-1, the signal CPU2_ACK immediately becomes L level.
  • the gate unit 9-2 connects the control line 12-2 and the data bus 13-2, and the CPU 2 can execute reading or writing with respect to the I / O device 3 (step ST3a).
  • the CPU 2 negates (H level) the signal CPU2_REQ (step ST4a).
  • the arbitration circuit unit 8 sets the signal CPU2_ACK to the L level and Allow immediate access.
  • signal CPU 2 _REQ is at H level when CPU 1 sets signal CPU 1 REQ to L level.
  • the arbitration circuit unit 8 sets the signal CPU1_ACK to the L level and permits access.
  • the arbitration circuit unit 8 sets the signal CPU1_ACK to the L level again when the signal CPU2_REQ is at the H level. Allow access to. Similarly, even when the CPU 2 makes a request again after making a request (CPU 2 request ⁇ CPU 2 request), the CPU 2 is permitted to access (see FIG. 7C).
  • the arbitration circuit unit 8 detects that the signal CPU1_REQ is at the L level, Even when the CPU2_REQ becomes L level, the L level of the signal CPU1_ACK is maintained, and the signal CPU2_ACK is not set to L level. For this reason, the CPU 2 waits for access, but as soon as the signal CPU1_REQ goes to H level, the signal CPU2_ACK goes to L level and the CPU 2 access is permitted.
  • the arbitration circuit unit 8 determines that the signal CPU2_REQ is at the L level. For example, even if the signal CPU1_REQ subsequently becomes L level, the L level of the signal CPU2_ACK is maintained, and the access to the CPU 1 is permitted when the signal CPU2_REQ is negated.
  • the arbitration circuit unit 8 immediately gives an acknowledgment to the requesting CPU, and even when the requests overlap, the arbitration circuit unit 8 has requested the request first.
  • the circuit configuration is such that an acknowledge is given to the CPU, the other CPU is made to wait, and after the access process of the CPU requested previously is completed, an acknowledge is given to the other CPU. With this circuit configuration, it is possible to minimize waiting time in arbitration between the CPUs 1 and 2 without performing complicated timing processing.
  • the signal CPU_REQ can be realized by setting the general-purpose output port OUTPUT of the CPU to high or low.
  • the signal CPU_ACK can be realized by inputting the general-purpose input port INPUT of the CPU and confirming the polarity of the input port by polling. However, when the processing is more urgent, the interrupt port of the CPU is input and the interrupt is performed. Acknowledgment confirmation may be performed based on an interrupt event that occurs in response to a change in port polarity.
  • the processing can be performed at a higher speed.
  • the signal CPU_REQ of the other CPU is L level.
  • the signal CPU_ACK can be set to L level with a delay time of several nanoseconds. This time difference is one cycle or less in the CPU processing cycle, and the influence on other processing operations can be almost ignored.
  • the signal CPU_REQ and the signal CPU_ACK can be realized by changing the level of the general-purpose output port OUTPUT, input port INPUT, or interrupt port installed in the CPU. Therefore, in the multi-CPU system, the bus arbitration device according to the present invention can be incorporated regardless of the type of CPU.
  • the HDD has been described as an example of the I / O device 3, the present invention is not limited to this.
  • a general-purpose memory card such as a DVD playback device, a CF (Compact Flash) card, or an SD card may be used. Further, it can be used even with a device equipped with a PCI bus or a special dedicated bus, and can also be applied to a serial bus type I / F.
  • the bus arbitration device of the present invention can be effectively applied to a navigation device equipped with a plurality of CPUs and capable of processing by multiple CPUs.
  • a navigation device equipped with a multimedia data CPU that processes video, music data, and the like and a navigation CPU that processes map data and the like. That is, in the configuration shown in FIG. 1, the CPU 1 and 2 can be provided with a multimedia data CPU and a navigation CPU, and an HDD or the like for storing data necessary for the processing of these CPUs can be realized as the I / O device 3. It is.
  • the bus arbitration device of the present invention By applying the bus arbitration device of the present invention to such a navigation device, even if the multimedia data CPU and the navigation CPU access one I / O device (for example, HDD), the bus Processing is possible without contention.
  • the board area can be reduced with a simple configuration having a small circuit scale combined with a general-purpose logic IC, and the navigation apparatus itself can be downsized.
  • the bus arbitration device of the present invention does not require a CPU operation clock signal in the arbitration operation, and can exchange signals via a standardized general-purpose port regardless of the CPU type, such as a navigation device. It can be easily applied to other devices.
  • the logical value indicating whether the bus can be used is output and the assertion state of the signal CPU_REQ D-FF 16 that maintains the previous output value when a plurality of logical values indicating the same are input simultaneously, and an inverter circuit 17 that branches and inputs the output of the D-FF 16 to invert the logic.
  • a logical value indicating that the bus can be used is output from the outputs of the D-FF 16 and the inverter circuit 17, and when the bus usage requests of the CPUs 1 and 2 overlap, Until the signal CPU_REQ is negated with respect to the CPU that previously asserted the signal CPU_REQ. And it outputs a logic value indicating a scan usable.
  • the arbitration operation by the arbitration circuit unit 8 does not depend on the operation clock signal of the CPU, and only the input of the signal CPU_REQ and the output of the signal CPU_ACK are required.
  • a general-purpose port of the CPU can be used.
  • the present invention can be easily applied to multi-CPU devices without being limited by the CPU type or operation speed.
  • Embodiment 2 shows a configuration in which the bus arbitration of three or more CPUs is performed.
  • FIG. 8 is a diagram showing a configuration of an arbitration circuit unit of the bus arbitration device according to the second embodiment of the present invention, and shows a circuit configuration for performing bus arbitration of four CPUs 1 to 4. 8 also includes inverter circuits 14-1 to 14-6, 17-1 to 17-3, NAND circuits 15-1 to 15-6, D-FF 16-1 to 16-3 and NOR circuits 21-1, 21-2, 22-1 to 22-4.
  • the arbitration circuit unit 8 and the outside are connected by a total of eight signal lines including four signal lines that transmit the signal CPU_REQ and four signal lines that transmit the signal CPU_ACK.
  • a first configuration section including inverter circuits 14-1, 14-2, 17-1, NAND circuits 15-1, 15-2 and D-FF 16-1, inverter circuit 14-3, 14-4 and 17-2, NAND circuits 15-3 and 15-4, and a second configuration section (arbitration circuit section) composed of D-FF 16-2, inverter circuits 14-5, 14-6, and 17- 3.
  • the third configuration section composed of NAND circuits 15-5 and 15-6 and D-FF 16-3 operates in the same manner as the configuration shown in FIG. 2 of the first embodiment. To do.
  • the NOR circuit 21-1 inverts the signal CPU_REQ from the CPUs 1 and 2
  • the NOR circuit 21-2 inverts the signal CPU_REQ from the CPUs 3 and 4.
  • the NOR circuits 21-1 and 21-2 output values corresponding to the signals to the inverter circuits 14-3 and 14-4 and the NAND circuits 15-3 and 15-4. .
  • the NOR circuits (output selection units) 22-1 and 22-2 receive the respective output values in the first configuration unit and the output values via the inverter circuit 17-2 in the second configuration unit.
  • Output selection units) 22-3 and 22-4 receive the respective output values in the third configuration unit and the output values of the D-FF 16-2 in the second configuration unit. With this connection relationship, the NOR circuits 22-1 to 22-4 generate signals CPU_ACK to the CPUs 1 to 4 according to the output values of the first to third components.
  • the D-FFs 16-1 to 16-3 do not use the operation clock signal but use the output value corresponding to the values input to the terminal PR and the terminal CL. Therefore, even if the CPUs 1 to 4 have different operation speeds, the arbitration operation is not affected.
  • CPU1 request ⁇ CPU2 to 4 request
  • the arbitration circuit unit 8 indicates that the signals CPU2_REQ to CPU4_REQ are at H level when the CPU1 sets the signal CPU1_REQ to L level. Sets the signal CPU1_ACK to the L level and immediately allows the CPU1 to access.
  • the D-FF 16-1 in the first configuration unit outputs an H level signal
  • the D-FF 16 in the third configuration unit. -3 maintains the previous output level.
  • the second component receives an L level signal from the NOR circuit 21-1 and an H level signal from the NOR circuit 21-2, and the D-FF 16-2 outputs an H level signal.
  • the NOR circuit 22-1 inverts and inputs the L level signal from the inverter circuit 17-1 in the first component and the L level signal from the inverter circuit 17-2 in the second component.
  • the signal CPU1_ACK is generated and output.
  • the NOR circuit 22-2 inverts the H level signal from the D-FF 16-1 in the first component and the L level signal from the inverter circuit 17-2 in the second component, An H level signal CPU2_ACK is generated and output.
  • the NOR circuit 22-3 inverts the L level or H level signal from the inverter circuit 17-3 in the third component and the H level signal from the D-FF 16-2 in the second component. Input, generate and output H level signal CPU3_ACK. Similarly, the NOR circuit 22-4 outputs an L level or H level signal from the D-FF 16-3 in the third component and an H level signal from the D-FF 16-2 in the second component. Inverted input generates and outputs an H level signal CPU4_ACK. Thereby, access is permitted only to CPU1.
  • the arbitration circuit unit 8 When the CPU 1 completes the access process to the I / O device 3 and negates the signal CPU1_REQ, the arbitration circuit unit 8 in the order of asserting the signal CPU_REQ (L level) among the CPUs 2 to 4 , The signal CPU_ACK is set to L level to permit access.
  • CPU1 request ⁇ CPU1 request
  • signals CPU2_REQ to CPU4_REQ are at H level when CPU1 sets signal CPU1_REQ to L level
  • arbitration circuit unit 8 CPU1_ACK is set to L level and access is permitted. The same applies to CPUs 2-4.
  • the arbitration circuit unit 8 determines that if the signal CPU1_REQ is at L level, any of the signals CPU2_REQ to CPU4_REQ is at L level subsequently.
  • the signal CPU1_ACK is maintained at the L level, and the signals CPU2_ACK to CPU4_ACK are not set to the L level. For this reason, access of the CPUs 2 to 4 is awaited, but when the signal CPU1_REQ becomes H level, the signal CPU_ACK of the CPUs 2 to 4 is set to L level in the order of requests and access is permitted.
  • the case where the number of CPUs is four is shown. However, when the number of CPUs is three, the first configuration unit and the second configuration unit described above are provided, and the D-FF 16-2 in the second configuration unit is provided. May be the signal CPU3_ACK. In the case of n (5 or more), the first to (n-1) th components are provided, and the NOR circuit that generates the signal CPU_ACK for each CPU is connected as in FIG. Can do.
  • a logical value indicating whether or not a bus can be used is output according to a combination of logical values indicating the assertion and negation states of the signal CPU_REQ, and the signal CPU_REQ is asserted.
  • D-FFs 16-1 to 16-3 that maintain the previous output value when a plurality of logical values indicating the same are input simultaneously, and inverter circuits that branch-input the outputs of D-FFs 16-1 to 16-3 and invert the logic First to third components having 17-1 to 17-3, and output values of D-FFs 16-1 to 16-3 and inverter circuits 17-1 to 17-3 of the first to third components Accordingly, the logic indicating that the bus can be used among the outputs of the D-FFs 16-1 to 16-3 and the inverter circuits 17-1 to 17-3 in order of asserting the signal CPU_REQ to the CPUs 1 to 4.
  • the previous output value maintained in the D-FFs 16-1 to 16-3 is used for the CPU that previously asserted the signal CPU_REQ.
  • Arbitration circuit unit provided on the NOR circuits 22-1 to 22-4 for outputting logical values indicating that the bus can be used until the signal CPU_REQ is negated, and the buses connecting the CPUs 1 to 4 and the I / O device 3.
  • the gate units 9-1 and 9-2 that relay the exchange between the bus-usable CPU and the I / O device 3 via the bus and block the unusable CPU from the bus; Is provided.
  • the present invention is not limited to the D-FF. That is, any circuit that outputs and maintains the same digital value as that of the D-FF according to each of the two input digital values without using the CPU clock signal may be used.
  • the bus arbitration device can be reduced in size with a simple configuration, and is connected to the bus in order to obtain a bus arbitration device that does not depend on the CPU type, operation speed, and quantity.
  • a bus arbitration device that arbitrates bus use between two CPUs a logical value indicating whether or not the bus can be used is set in accordance with a combination of logical values indicating assertion and negation of a bus use request signal input from the two CPUs.
  • the output value of a road part it comprised so that the exchange of the bus-usable CPU and the said access object apparatus via the said bus could be relayed, and the gate part which interrupted

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Bus Control (AREA)

Abstract

A bus arbitration device comprises: a D-FF (16) for outputting a logical value indicating a bus availablity, depending on a combination of the logical values indicating the states of signals CPU_REQ, and, when the signals CPU_REQ are simultaneously asserted by CPUs (1, 2), maintaining a previous output value; and an inverter circuit (17) for logically inverting the output of the D-FF (16). The bus arbitration device outputs, among the outputs of the D-FF (16) and the inverter circuit (17), a logical value indicating that the bus is available to the CPUs (1, 2) in the order in which the signals CPU_REQ have been asserted. When the bus use requests of the CPUs (1, 2) are overlapped, the bus arbitration device continues to output, using the previous output value maintained in the D-FF (16), the logical value indicating that the bus is available to the CPU (1 or 2) that asserted the signal CPU_REQ first until this signal CPU_REQ is negated.

Description

バス調停装置及びこれを用いたナビゲーション装置Bus arbitration device and navigation device using the same
 この発明は、複数のCPU(Central Processing Unit)のバス使用要求を調停するバス調停装置、及びこれを用いたナビゲーション装置に関するものである。 The present invention relates to a bus arbitration device that arbitrates bus use requests of a plurality of CPUs (Central Processing Unit), and a navigation device using the bus arbitration device.
 近年、各種の情報機器が開発され、各々にI/O(Input/Output)装置が搭載されて使用されている。I/O装置の種類は非常に多岐にわたり、HDD(Hard Disk Drive)、DVD(Digital Versatile Disk)、メモリカード等が一般的である。これらは大容量のストレージ機能を有し、ソフトウェアや、映像、音楽、地図、その他各種データの格納に使用され、ユーザの利便性に大いに貢献している。 In recent years, various information devices have been developed, and each is equipped with an I / O (Input / Output) device. There are a wide variety of I / O devices, and HDDs (Hard Disk Drives), DVDs (Digital Versatile Disks), memory cards, etc. are common. These have a large-capacity storage function and are used for storing software, video, music, maps, and other various data, and greatly contribute to user convenience.
 上述のようなI/O機器に搭載される書き込み又は読み出しのポートは、1ポートが一般的であり、1個のCPUと1対1で接続される。図9は、従来のシングルポートでのCPUとI/O機器との接続を示す図である。図9に示すように、CPU100とI/O機器101とは、データバス102及びコントロール線103を介して1対1に接続している。 A write or read port mounted on the I / O device as described above is generally one port, and is connected to one CPU on a one-to-one basis. FIG. 9 is a diagram showing a connection between a CPU and an I / O device in a conventional single port. As shown in FIG. 9, the CPU 100 and the I / O device 101 are connected one-to-one via the data bus 102 and the control line 103.
 この場合、CPU100からI/O機器101への書き込み又は読み出しは、衝突等の問題が生じることがない。なお、図9において、CPU100が、構成要素を動作させるために必要となるプログラムやデータを格納する記憶装置として、フラッシュメモリ104やDRAM(Dynamic Random Access Memory)105も配置されている。 In this case, writing or reading from the CPU 100 to the I / O device 101 does not cause a problem such as a collision. In FIG. 9, a flash memory 104 and a DRAM (Dynamic Random Access Memory) 105 are also arranged as a storage device for storing programs and data necessary for the CPU 100 to operate the components.
 一方、近年、情報機器システムが複雑化、高度化し、情報機器において、複数のCPUを搭載して情報処理を分担することが一般化している。このため、複数のCPUの各々が1個のI/O機器にアクセスする必要性が生じている。 On the other hand, in recent years, information equipment systems have become more complex and sophisticated, and it has become common for information equipment to be equipped with multiple CPUs to share information processing. For this reason, there is a need for each of a plurality of CPUs to access one I / O device.
 例えば、近年の車載用のナビゲーション装置には、音楽データや地図データを格納するストレージとしてHDDを搭載し、さらに映像や音楽データを処理するCPUと地図データを処理するCPUとに分かれているものがある。このようなナビゲーション装置では、1台のHDDを、2個のCPUから時分割で書き込み、読み出し可能であれば非常に便利である。 For example, in-vehicle navigation devices in recent years are equipped with an HDD as a storage for storing music data and map data, and are further divided into a CPU for processing video and music data and a CPU for processing map data. is there. In such a navigation apparatus, it is very convenient if one HDD can be written and read from two CPUs in a time division manner.
 しかしながら、現行の標準的なI/O機器は、1個のCPUからのアクセスを前提としたシングルポート対応のものが一般的であり、2個以上のCPUからのアクセスに同時に対応することは考慮されていない。また、非常に希にデュアルポートを搭載したI/O機器も存在するが、現状では高価であり、安易に使用できるものではない。 However, current standard I / O devices are generally single-port compatible on the premise of access from one CPU, and it is considered that simultaneous access from two or more CPUs is supported. It has not been. In addition, there are very rare I / O devices equipped with dual ports, but they are expensive at present and cannot be used easily.
 このような不具合を解決するため、例えば特許文献1にはシングルポートのI/O機器をあたかもデュアルポートのI/O機器のように動作させるマルチCPU装置が開示されている。この装置には、デジタル回路技術を利用して2個のCPUから1個のI/O機器へのアクセスを調停する調停回路が設けられている。 In order to solve such a problem, for example, Patent Document 1 discloses a multi-CPU device that operates a single-port I / O device as if it were a dual-port I / O device. This device is provided with an arbitration circuit that arbitrates access from two CPUs to one I / O device using digital circuit technology.
 一方のCPU側からのアクセス信号が調停回路に入力されると、他方のCPU側が非アクセス状態であれば、調停回路では、上記一方のCPUがアクセス可能であると判断し、I/O機器の仕様に合致したタイミングでアクセス信号を生成して、上記一方のCPUによるデータの読み出しや書き込みを実行させる。上記他方のCPU側からアクセス信号が発生した場合も同様である。 When an access signal from one CPU side is input to the arbitration circuit, if the other CPU side is in the non-access state, the arbitration circuit determines that the one CPU is accessible, and the I / O device An access signal is generated at a timing that matches the specifications, and data reading and writing by the one CPU is executed. The same applies when an access signal is generated from the other CPU side.
 なお、双方のCPUによるアクセスが重なった場合、調停回路は、いずれか一方のCPUにウェイト信号を出力して待機させ、2個のCPUが同時にI/O機器にアクセスすることがないように調整している。 When accesses by both CPUs overlap, the arbitration circuit outputs a wait signal to one of the CPUs and waits so that the two CPUs do not access the I / O device at the same time. is doing.
特開平9-259030号公報JP-A-9-259030
 しかしながら、従来のバス調停装置では、CPUからのバス信号(データバス、アドレスバス、ライトパス、リードパス、チップセレクト)を全て取り込み、さらにI/O機器に合致したタイミングにてバス信号を出力する。この回路構成を実現するには、ステートマシン等のタイミング生成回路を搭載した専用LSIを使用する必要があり、基板面積が増大し、小型化の制限になるという課題がある。 However, in the conventional bus arbitration device, all the bus signals (data bus, address bus, write path, read path, chip select) from the CPU are fetched, and the bus signal is output at a timing that matches the I / O device. In order to realize this circuit configuration, it is necessary to use a dedicated LSI on which a timing generation circuit such as a state machine is mounted, and there is a problem that the board area increases and size reduction is restricted.
 図10は、従来のマルチCPU装置の構成を示す図である。図10において、LSI106は、上述したタイミング生成回路を搭載した専用LSIであり、信号線を介してCPU100-1,100-2とHDD101とに接続されている。この構成において、LSI106は、CPU100-1,100-2からのバス信号を全て取り込むので、図10に示すように、バス信号をそれぞれ伝送する多数の信号線による接続が必要であり、不可避的に基板面積が増大する。 FIG. 10 is a diagram showing a configuration of a conventional multi-CPU device. In FIG. 10, an LSI 106 is a dedicated LSI on which the above-described timing generation circuit is mounted, and is connected to the CPUs 100-1 and 100-2 and the HDD 101 via signal lines. In this configuration, the LSI 106 captures all the bus signals from the CPUs 100-1 and 100-2. Therefore, as shown in FIG. 10, it is necessary to connect with a large number of signal lines for transmitting the bus signals, and unavoidably. The substrate area increases.
 また、従来では、複数のCPUの各々のタイミング仕様やI/O機器が要求するタイミング仕様に合致させる必要がある。このため、CPUやI/O機器が変更されると、複雑なタイミングを再設計しなければならず、構成要素の変更に対する設計の柔軟性がない。 Also, conventionally, it is necessary to match the timing specifications of each of a plurality of CPUs and the timing specifications required by the I / O device. For this reason, when the CPU or I / O device is changed, complicated timing must be redesigned, and there is no design flexibility for changing the components.
 さらに、近年のナビゲーション装置は、大容量の高速データ通信が可能となり、本来のカーナビゲーション機能の他、映像や音楽等のマルチメディア情報を扱う処理機能が付加されるようになっている。このようなナビゲーション装置では、処理負荷を軽減するために、複数のCPUを用いて処理を分担する構成が望まれている。また、車載用情報機器の省スペース化される傾向にあるため、上記のような複数のCPUを搭載したナビゲーション装置の小型化も望まれている。 Furthermore, recent navigation devices are capable of high-capacity high-speed data communication, and in addition to the original car navigation function, a processing function for handling multimedia information such as video and music has been added. In such a navigation device, in order to reduce the processing load, a configuration in which processing is shared using a plurality of CPUs is desired. In addition, since there is a tendency to save space for in-vehicle information devices, it is also desired to reduce the size of a navigation device equipped with a plurality of CPUs as described above.
 この発明は、上記のような課題を解決するためになされたもので、簡易な構成で小型化が可能であり、かつCPUの種類、動作速度、数量に依存しないバス調停装置及びこれを用いたナビゲーション装置を得ることを目的とする。 The present invention has been made to solve the above-described problems, and can be miniaturized with a simple configuration and uses a bus arbitration device that does not depend on the type, operation speed, or quantity of the CPU, and the same. The object is to obtain a navigation device.
 この発明に係るバス調停装置は、バスに接続する2つのCPU間のバス使用を調停するバス調停装置において、前記2つのCPUから入力したバス使用要求信号のアサート及びネゲートの状態を示す論理値の組み合わせに応じて、バス使用の可否を示す論理値を出力する論理回路と、前記論理回路の出力を分岐入力して論理反転するインバータ回路とを有し、前記2つのCPUに対して、前記バス使用要求信号をアサートした順に、前記論理回路及び前記インバータ回路の出力のうち、バス使用可を示す論理値を出力する調停回路部と、前記CPUとアクセス対象機器とを接続するバス上に設けられ、前記調停回路部の出力値に応じて、バス使用可のCPUと前記アクセス対象機器との前記バスを介したやり取りを中継し、バス使用不可のCPUを前記バスから遮断するゲート部とを備えるものである。 The bus arbitration device according to the present invention is a bus arbitration device that arbitrates bus use between two CPUs connected to a bus, and is a logical value indicating the state of assertion and negation of a bus use request signal input from the two CPUs. A logic circuit that outputs a logical value indicating whether or not the bus can be used in accordance with a combination; and an inverter circuit that branches and inputs the output of the logic circuit to invert the logic. Among the outputs of the logic circuit and the inverter circuit in the order in which the use request signals are asserted, an arbitration circuit unit that outputs a logical value indicating that the bus can be used is provided on a bus that connects the CPU and the access target device. In accordance with the output value of the arbitration circuit unit, the exchange of the bus usable CPU and the access target device via the bus is relayed, and the bus unavailable In which and a gate portion for blocking PU from the bus.
 この発明によれば、バス使用要求信号のアサート及びネゲートの状態を示す論理値の組み合わせに応じて、バス使用の可否を示す論理値を出力する論理回路と、この論理回路の出力を分岐入力して論理反転するインバータ回路とを備え、複数のCPUに対して、バス使用要求信号をアサートした順に、論理回路及びインバータ回路の出力のうち、バス使用可を示す論理値を出力するので、専用LSIやFPGAなどを用いることなく、実用的なバス調停装置を簡易な構成で実現することができるという効果がある。 According to the present invention, a logic circuit that outputs a logic value indicating whether or not the bus can be used is output in accordance with a combination of logic values indicating the assertion of the bus use request signal and the negated state, and the output of the logic circuit is branched and input. A logic value indicating that the bus can be used among the outputs of the logic circuit and the inverter circuit in the order in which the bus use request signals are asserted to a plurality of CPUs. There is an effect that a practical bus arbitration device can be realized with a simple configuration without using FPGA or FPGA.
この発明の実施の形態1によるバス調停装置の構成を示す図である。It is a figure which shows the structure of the bus arbitration apparatus by Embodiment 1 of this invention. 図1中の調停回路部の構成を示す図である。It is a figure which shows the structure of the arbitration circuit part in FIG. 図2中の調停回路部の入出力とCPUのアクセス権との関係を示すファンクションテーブルである。3 is a function table showing a relationship between input / output of an arbitration circuit unit in FIG. 2 and access rights of a CPU. 図1中のゲート部の構成を示す図である。It is a figure which shows the structure of the gate part in FIG. 図4中のゲート部の入出力の関係を示すファンクションテーブルである。It is a function table which shows the input / output relationship of the gate part in FIG. 実施の形態1による調停動作のシーケンスの一例を示す図である。6 is a diagram illustrating an example of a sequence of an arbitration operation according to Embodiment 1. FIG. CPUによるI/O機器へのアクセス動作のタイミングチャートである。6 is a timing chart of an access operation to an I / O device by a CPU. この発明の実施の形態2によるバス調停装置の調停回路部の構成を示す図である。It is a figure which shows the structure of the arbitration circuit part of the bus arbitration apparatus by Embodiment 2 of this invention. 従来のシングルポートでのCPUとI/O機器との接続を示す図である。It is a figure which shows the connection of CPU and I / O apparatus in the conventional single port. 従来のマルチCPU装置の構成を示す図である。It is a figure which shows the structure of the conventional multi CPU apparatus.
 以下、この発明をより詳細に説明するために、この発明を実施するための形態について、添付の図面に従って説明する。
実施の形態1.
 図1は、この発明の実施の形態1によるバス調停装置の構成を示す図であり、I/O機器として代表的なデバイスであるHDDを2個のCPUからアクセスする場合を例として挙げる。図1において、CPU1,2には、各々が動作する際に必要となるプログラムやデータを格納するためのメモリであるフラッシュメモリ4-1,4-2やDRAM5-1,5-2が配置されている。また、CPU1,2は、動作クロック信号を生成する水晶発振器6-1,6-2及びリセットIC7-1,7-2をそれぞれ有しており、互いに異なる動作クロック周波数で動作することができる。
Hereinafter, in order to describe the present invention in more detail, modes for carrying out the present invention will be described with reference to the accompanying drawings.
Embodiment 1 FIG.
FIG. 1 is a diagram showing a configuration of a bus arbitration device according to Embodiment 1 of the present invention, and takes as an example a case where an HDD, which is a typical device as an I / O device, is accessed from two CPUs. In FIG. 1, CPUs 1 and 2 are provided with flash memories 4-1 and 4-2 and DRAMs 5-1 and 5-2, which are memories for storing programs and data necessary for each operation. ing. The CPUs 1 and 2 have crystal oscillators 6-1 and 6-2 and reset ICs 7-1 and 7-2 that generate operation clock signals, respectively, and can operate at different operation clock frequencies.
 I/O機器(アクセス対象機器)3は、CPU1,2からアクセスされるHDDであり(以下、HDD3と適宜記載する)、ATAPI(AT Attachment Packet Interface)規格のバスI/F回路を搭載している。HDD3は、通常そのI/F規格に合致したタイミングで動作するCPU1,2の外部バスに接続しており、CPU1,2のプログラム実行により、読み出し又は書き込みが実行される。なお、HDD3は、シングルポートの記憶装置であり、CPU1,2がそれぞれ1系統のバスラインを通じてアクセスする。 The I / O device (access target device) 3 is an HDD accessed from the CPUs 1 and 2 (hereinafter referred to as HDD 3 as appropriate), and is equipped with an ATAPI (AT Attachment Packet Interface) standard bus I / F circuit. Yes. The HDD 3 is connected to the external buses of the CPUs 1 and 2 that normally operate at a timing that matches the I / F standard, and reading or writing is executed by executing the programs of the CPUs 1 and 2. The HDD 3 is a single-port storage device, and the CPUs 1 and 2 each access through one system bus line.
 実施の形態1によるバス調停装置は、2個のCPU1,2とI/O機器3との間に設けられ、一方のCPU(CPU1若しくはCPU2)から排他的にアクセスされるように、バス使用要求を調停する。その構成としては、調停回路部8及びゲート部9-1,9-2を備える。 The bus arbitration device according to the first embodiment is provided between the two CPUs 1 and 2 and the I / O device 3, and requests to use the bus so as to be exclusively accessed from one CPU (CPU1 or CPU2). Mediate. The configuration includes an arbitration circuit unit 8 and gate units 9-1 and 9-2.
 調停回路部8は、2個のCPU1,2からI/O機器3へのアクセスを調停する回路部であり、CPU1との間で2本の信号線10-1,11-1を介して接続しており、CPU2との間で2本の信号線10-2,11-2を介して接続している。信号線10-1,10-2は、CPU1,2へアクセス可否(バス使用可)を通知する信号CPU_ACKを伝送する信号線である。一方、信号線11-1,11-2は、CPU1,2からI/O機器3へのアクセスをリクエスト(バス使用要求)するための信号CPU_REQ(バス使用要求信号)を伝送する信号線である。 The arbitration circuit unit 8 is a circuit unit that arbitrates access from the two CPUs 1 and 2 to the I / O device 3, and is connected to the CPU 1 through the two signal lines 10-1 and 11-1. It is connected to the CPU 2 via two signal lines 10-2 and 11-2. The signal lines 10-1 and 10-2 are signal lines for transmitting a signal CPU_ACK for notifying the CPUs 1 and 2 of the availability of access (bus availability). On the other hand, the signal lines 11-1 and 11-2 are signals for transmitting a signal CPU_REQ (bus use request signal) for requesting access to the I / O device 3 from the CPUs 1 and 2 (bus use request). .
 ゲート部9-1,9-2は、調停回路部8から信号CPU_ACKの入力を受け付け、信号CPU_ACKに応じてバス信号の接続や遮断を行うゲートICである。例えば、調停回路部8からの信号CPU1_ACKがアサート(アクセス可)されると、ゲート部9-1は、コントロール線12-1及びデータバス13-1をHDD3に接続し、信号CPU1_ACKがネゲート(アクセス不可)されると遮断する。なお、コントロール線12-1,12-2は、CPU1,2からの制御情報を伝送する信号線であり、データバス13-1,13-2は、CPU1,2とHDD3との間でやり取りされるデータを伝送する信号線である。 The gate units 9-1 and 9-2 are gate ICs that receive the input of the signal CPU_ACK from the arbitration circuit unit 8 and connect or block the bus signal according to the signal CPU_ACK. For example, when the signal CPU1_ACK from the arbitration circuit unit 8 is asserted (accessible), the gate unit 9-1 connects the control line 12-1 and the data bus 13-1 to the HDD 3, and the signal CPU1_ACK is negated (accessed). If it is not possible, it will be blocked. The control lines 12-1 and 12-2 are signal lines for transmitting control information from the CPUs 1 and 2, and the data buses 13-1 and 13-2 are exchanged between the CPUs 1 and 2 and the HDD 3. This is a signal line for transmitting data.
 図2は、図1中の調停回路部の構成を示す図である。図2に示すように、調停回路部8は、例えば74シリーズのロジックICであるインバータ回路14-1,14-2,17、NAND回路15-1,15-2及びD-FF(Delay-Flip Flop)16から構成される。調停回路部8と外部との間は、信号線10-1,10-2及び信号線11-1,11-2、の合計4本の信号線で接続されている。 FIG. 2 is a diagram showing the configuration of the arbitration circuit unit in FIG. As shown in FIG. 2, the arbitration circuit unit 8 includes inverter circuits 14-1, 14-2, 17, NAND circuits 15-1, 15-2, and D-FF (Delay-Flip) which are, for example, 74 series logic ICs. Flop) 16. The arbitration circuit unit 8 and the outside are connected by a total of four signal lines, signal lines 10-1 and 10-2 and signal lines 11-1 and 11-2.
 また、CPU1へ信号CPU1_ACKを伝送する信号線10-1は、インバータ回路(インバータ回路)17の出力に接続しており、CPU2へ信号CPU2_ACKを伝送する信号線10-2は、インバータ回路17の入力に接続している。 The signal line 10-1 for transmitting the signal CPU1_ACK to the CPU 1 is connected to the output of the inverter circuit (inverter circuit) 17, and the signal line 10-2 for transmitting the signal CPU2_ACK to the CPU 2 is input to the inverter circuit 17. Connected to.
 CPU1からの信号CPU1_REQを伝送する信号線11-1は、インバータ回路14-1の反転入力とNAND回路15-2の入力とに接続する。同様に、CPU2からの信号CPU2_REQを伝送する信号線11-2は、インバータ回路14-2の反転入力とNAND回路15-1の入力とに接続している。 The signal line 11-1 for transmitting the signal CPU1_REQ from the CPU1 is connected to the inverting input of the inverter circuit 14-1 and the input of the NAND circuit 15-2. Similarly, the signal line 11-2 for transmitting the signal CPU2_REQ from the CPU 2 is connected to the inverting input of the inverter circuit 14-2 and the input of the NAND circuit 15-1.
 NAND回路15-1は、インバータ回路14-1の出力と信号線11-2に入力側が接続しており、出力がD-FF16のプリセット端子PRに接続している。また、NAND回路15-2は、インバータ回路14-2の出力と信号線11-1に入力側が接続しており、出力がD-FF16のクリア端子CLに接続している。 The NAND circuit 15-1 has an input side connected to the output of the inverter circuit 14-1 and the signal line 11-2, and an output connected to the preset terminal PR of the D-FF16. The NAND circuit 15-2 has an input side connected to the output of the inverter circuit 14-2 and the signal line 11-1, and an output connected to the clear terminal CL of the D-FF 16.
 D-FF(論理回路)16は、入力端子D(不図示)に入力されるデジタル値を、クロック端子CK(不図示)に入力される動作クロック信号に応じて保持するフリップフロップであるが、この発明では、動作クロック信号を用いず、端子PRと端子CLに入力される値に応じて信号CPU_ACKを生成する。なお、CPUの動作クロック信号を用いないため、CPU1,2が互いに異なる動作速度であっても、調停動作は影響を受けない。 The D-FF (logic circuit) 16 is a flip-flop that holds a digital value input to an input terminal D (not shown) according to an operation clock signal input to a clock terminal CK (not shown). In the present invention, the signal CPU_ACK is generated according to the values input to the terminal PR and the terminal CL without using the operation clock signal. Since the CPU operation clock signal is not used, the arbitration operation is not affected even if the CPUs 1 and 2 have different operation speeds.
 具体的には、D-FF16の出力端子がインバータ回路17の入力と信号線10-2とに分岐して接続しており、D-FF16の出力値が信号CPU2_ACKとして信号線10-2上に伝送され、インバータ回路17で反転されたD-FF16の出力値が信号CPU1_ACKとして信号線10-1上に伝送される。なお、入力端子Dとクロック端子CKは、所定電圧値にプルアップするか若しくはプルダウンしておく。 Specifically, the output terminal of the D-FF 16 is branched and connected to the input of the inverter circuit 17 and the signal line 10-2, and the output value of the D-FF 16 is on the signal line 10-2 as the signal CPU2_ACK. The output value of the D-FF 16 transmitted and inverted by the inverter circuit 17 is transmitted as the signal CPU1_ACK on the signal line 10-1. The input terminal D and the clock terminal CK are pulled up to a predetermined voltage value or pulled down.
 このように構成することで、CPU1,2によるアクセスが衝突することなく、CPU1,2のいずれか一方に信号CPU_ACKをアサートすることができる。従って、CPU1,2は、信号CPU_REQをアサートした後、調停回路部8で信号CPU_ACKがアサートされるのを待ち、信号CPU_ACKがアサートされるとI/O機器へのアクセスを開始する。 With such a configuration, the signal CPU_ACK can be asserted to either one of the CPUs 1 and 2 without collision of accesses by the CPUs 1 and 2. Therefore, after asserting the signal CPU_REQ, the CPUs 1 and 2 wait for the signal CPU_ACK to be asserted by the arbitration circuit unit 8, and start accessing the I / O device when the signal CPU_ACK is asserted.
 図3は、図2中の調停回路部の入出力とCPUのアクセス権との関係を示すファンクションテーブルであり、テーブル中の矢印方向に時間が経過する場合を示している。図3に示すように、調停回路部8は、CPU1,2からの信号CPU_REQの値(ハイ又はロウの論理値)の組み合わせに応じて、CPU1,2への信号CPU_ACKをアサート又はネゲートし、I/O機器3に対するアクセス権を与える。なお、以降の説明では、各信号CPU_REQ,CPU_ACKは、ロウレベル(L)をアサートと定義し、ハイレベル(H)をネゲートとする。 FIG. 3 is a function table showing the relationship between the input / output of the arbitration circuit unit in FIG. 2 and the access right of the CPU, and shows the case where time elapses in the direction of the arrow in the table. As shown in FIG. 3, the arbitration circuit unit 8 asserts or negates the signal CPU_ACK to the CPUs 1 and 2 according to the combination of the values of the signals CPU_REQ from the CPUs 1 and 2 (logical values of high or low). The access right to the / O device 3 is given. In the following description, the signals CPU_REQ and CPU_ACK define the low level (L) as asserted and the high level (H) as negated.
 例えば、信号CPU1_REQがLレベルで、かつ信号CPU2_REQがHレベルであると、D-FF16の端子PRがLレベル、端子CLがHレベルになるので、D-FF16の出力はHレベルとなり、Lレベルの信号CPU1_ACK、Hレベルの信号CPU2_ACKが即座に出力される。つまり、CPU1にアクセスが許可される。 For example, if the signal CPU1_REQ is at L level and the signal CPU2_REQ is at H level, the terminal PR of the D-FF 16 becomes L level and the terminal CL becomes H level, so that the output of the D-FF 16 becomes H level and L level. Signal CPU1_ACK and H level signal CPU2_ACK are immediately output. That is, access is permitted to the CPU 1.
 この状態から図中の矢印方向に時間が経過して、信号CPU1_REQと信号CPU2_REQの双方がHレベルになっても、D-FF16の出力値は維持され、Lレベルの信号CPU1_ACK、Hレベルの信号CPU2_ACKが継続して出力される。これにより、CPU1のアクセス許可が維持される。 Even if both the signal CPU1_REQ and the signal CPU2_REQ become H level after a lapse of time in the direction of the arrow in the figure from this state, the output value of the D-FF 16 is maintained, the L level signal CPU1_ACK, the H level signal CPU2_ACK is continuously output. Thereby, the access permission of the CPU 1 is maintained.
 ここで、信号CPU1_REQがHレベルで、かつ信号CPU2_REQがLレベルになると、D-FF16の端子PRがHレベル、端子CLがLレベルになるので、D-FF16の出力はLレベルとなり、Hレベルの信号CPU1_ACK、Lレベルの信号CPU2_ACKが即座に出力される。これにより、CPU2にアクセス権が与えられる。同様に、この状態から信号CPU1_REQと信号CPU2_REQの双方がHレベルになっても、CPU2のアクセス許可が維持される。 Here, when the signal CPU1_REQ is at the H level and the signal CPU2_REQ is at the L level, the terminal PR of the D-FF 16 becomes the H level and the terminal CL becomes the L level, so that the output of the D-FF 16 becomes the L level and the H level. Signal CPU1_ACK and L level signal CPU2_ACK are immediately output. Thereby, the access right is given to the CPU 2. Similarly, even when both the signal CPU1_REQ and the signal CPU2_REQ become H level from this state, the access permission of the CPU 2 is maintained.
 また、CPU1がアクセスしている期間、つまりD-FF16の出力がHレベルで、Lレベルの信号CPU1_ACK、Hレベルの信号CPU2_ACKが出力されている状態において、信号CPU1_REQと信号CPU2_REQの双方がLレベルになった場合、D-FF16の出力値が維持され、Lレベルの信号CPU1_ACKとHレベルの信号CPU2_ACKが継続して出力される。これにより、CPU1のアクセス許可が維持される。 In the period when the CPU 1 is accessing, that is, in the state where the output of the D-FF 16 is at the H level and the signal CPU1_ACK at the L level and the signal CPU2_ACK at the H level are output, both the signal CPU1_REQ and the signal CPU2_REQ are at the L level. In this case, the output value of the D-FF 16 is maintained, and the L-level signal CPU1_ACK and the H-level signal CPU2_ACK are continuously output. Thereby, the access permission of the CPU 1 is maintained.
 反対に、CPU2がアクセスしている期間、つまりD-FF16の出力がLレベルで、Hレベルの信号CPU1_ACK、Lレベルの信号CPU2_ACKが出力されている状態において、信号CPU1_REQと信号CPU2_REQの双方がLレベルになった場合、D-FF16の出力値が維持され、Hレベルの信号CPU1_ACKとLレベルの信号CPU2_ACKが継続して出力される。これにより、CPU2のアクセス許可が維持される。 On the contrary, in a period when the CPU 2 is accessing, that is, in a state where the output of the D-FF 16 is at the L level and the H level signal CPU1_ACK and the L level signal CPU2_ACK are output, both the signal CPU1_REQ and the signal CPU2_REQ are at the L level. When the level is reached, the output value of the D-FF 16 is maintained, and the H-level signal CPU1_ACK and the L-level signal CPU2_ACK are continuously output. Thereby, the access permission of the CPU 2 is maintained.
 なお、上述の説明は、CPU1,2からのリクエストが全く同時の場合であるが、このような場合は希で、通常はリクエストに若干の時間差が生じる。この場合、CPU1,2によるリクエストの順序に応じて、調停回路部8からLレベルの信号CPU1_ACK,CPU2_ACKが出力されるため、調停動作を正常に行うことができる。 Note that the above description is a case where the requests from the CPUs 1 and 2 are exactly the same, but such a case is rare, and there is usually a slight time difference between requests. In this case, since the L level signals CPU1_ACK and CPU2_ACK are output from the arbitration circuit unit 8 in accordance with the order of requests by the CPUs 1 and 2, the arbitration operation can be performed normally.
 図4は、図1中のゲート部の構成を示す図である。図4に示すように、ゲート部9-1,9-2についても、調停回路部8と同様に74シリーズの汎用ロジックICであるバッファIC18,19,20で構成することができる。バッファIC18,19,20は、端子ENABLEを搭載し、端子ENABLEのレベルに応じてゲートのオン、オフを決定する。さらに、バッファIC18,19,20には、ゲートオフの場合に、出力端子をハイインピーダンスにできる3ステートのICを使用する。 FIG. 4 is a diagram showing the configuration of the gate portion in FIG. As shown in FIG. 4, the gate units 9-1 and 9-2 can also be configured by buffer ICs 18, 19, and 20, which are 74 series general-purpose logic ICs, similarly to the arbitration circuit unit 8. The buffer ICs 18, 19, and 20 are equipped with a terminal ENABLE, and determine whether the gate is on or off according to the level of the terminal ENABLE. Further, as the buffer ICs 18, 19 and 20, a three-state IC capable of setting the output terminal to high impedance when the gate is off is used.
 ゲート部9-1(若しくはゲート部9-2)のバッファIC18は、CPU1(若しくはCPU2)との間でデータバス13-1(若しくはデータバス13-2)を介して接続しており、CPU1_ACK(若しくはCPU2_ACK)の値に応じてデータバス13-1(若しくはデータバス13-2)の接続又は遮断を行う。 The buffer IC 18 of the gate section 9-1 (or gate section 9-2) is connected to the CPU 1 (or CPU 2) via the data bus 13-1 (or data bus 13-2), and CPU1_ACK ( Alternatively, the data bus 13-1 (or data bus 13-2) is connected or disconnected according to the value of CPU2_ACK).
 また、ゲート部9-1(若しくはゲート部9-2)のバッファIC19は、CPU1(若しくはCPU2)からI/O機器3へ出力される制御信号を伝送するコントロール線12-1(若しくはコントロール線12-2)(以下、コントロール線(出力)と称す)を介して接続しており、CPU1_ACK(若しくはCPU2_ACK)の値に応じてコントロール線(出力)の接続又は遮断を行う。 The buffer IC 19 in the gate unit 9-1 (or gate unit 9-2) transmits a control signal output from the CPU 1 (or CPU 2) to the I / O device 3 (or control line 12-1). -2) Connected via a control line (hereinafter referred to as a control line (output)), and the control line (output) is connected or disconnected according to the value of CPU1_ACK (or CPU2_ACK).
 さらに、ゲート部9-1(若しくはゲート部9-2)のバッファIC20は、I/O機器3からCPU1(若しくはCPU2)へ入力される信号を伝送するコントロール線12-1(若しくはコントロール線12-2)(以下、コントロール線(入力)と称す)を介して接続しており、CPU1_ACK(若しくはCPU2_ACK)の値に応じてコントロール線(入力)の接続又は遮断を行う。 Further, the buffer IC 20 of the gate unit 9-1 (or the gate unit 9-2) transmits a signal input from the I / O device 3 to the CPU 1 (or CPU 2), the control line 12-1 (or the control line 12- 2) Connection is made via a control line (hereinafter referred to as a control line (input)), and the control line (input) is connected or disconnected according to the value of CPU1_ACK (or CPU2_ACK).
 図5は、図4中のゲート部の入出力の関係を示すファンクションテーブルである。例えば、ゲート部9-1のバッファIC18において、データバス13-1から入力端子AにLレベル(若しくはHレベル)のデジタル信号が入力され、かつ端子ENABLEにLレベル(アサート)の信号CPU1_ACKが入力されると、バッファIC18は、Lレベル(若しくはHレベル)の出力値Y、つまりデータバス13-1で伝送されてきた値を、そのままI/O機器3側へ出力する。 FIG. 5 is a function table showing the input / output relationship of the gate part in FIG. For example, in the buffer IC 18 of the gate unit 9-1, an L level (or H level) digital signal is input from the data bus 13-1 to the input terminal A, and an L level (asserted) signal CPU1_ACK is input to the terminal ENABLE. Then, the buffer IC 18 outputs the L-level (or H-level) output value Y, that is, the value transmitted through the data bus 13-1, to the I / O device 3 side as it is.
 上記の状態で信号CPU1_ACKをネゲート(Hレベル)すると、端子ENABLEはHレベルとなるので、バッファIC18は、データバス13-1から入力端子AにLレベル(若しくはHレベル)のデジタル信号が入力されても、出力値Yをハイインピーダンス(Z)に設定して、データバス13-1とI/O機器3との間を遮断する。 When the signal CPU1_ACK is negated (H level) in the above state, since the terminal ENABLE becomes H level, the buffer IC 18 receives an L level (or H level) digital signal from the data bus 13-1 to the input terminal A. However, the output value Y is set to high impedance (Z), and the data bus 13-1 and the I / O device 3 are disconnected.
 このように、ゲート部9-1,9-2のバッファICは、調停回路部8から出力される信号CPU_ACKを端子ENABLEに入力することにより、CPU1,2との間でデータバスやコントロール線を接続又は遮断でき、信号線の衝突を回避することが可能となる。 As described above, the buffer ICs of the gate units 9-1 and 9-2 input the signal CPU_ACK output from the arbitration circuit unit 8 to the terminal ENABLE, thereby connecting the data bus and the control line to the CPUs 1 and 2. It can be connected or disconnected, and signal line collision can be avoided.
 次に動作について説明する。
 図6は、実施の形態1による調停動作のシーケンスの一例を示す図であり、図1に示すCPU2に先だってCPU1がリクエストした場合を示している。
 先ず、CPU1が、信号CPU1_REQをアサート(Lレベル)し、I/O機器3に対するアクセス権を調停回路部8に要求する(ステップST1)。調停回路部8は、信号線10-1を介してCPU1から信号CPU1_REQを入力すると、この時点で信号CPU1_ACKがLレベルでなければ、CPU1にアクセス許可がないため、CPU1は待ち状態となる(ステップST2)。
Next, the operation will be described.
FIG. 6 is a diagram showing an example of the sequence of the arbitration operation according to the first embodiment, and shows a case where the CPU 1 makes a request prior to the CPU 2 shown in FIG.
First, the CPU 1 asserts the signal CPU1_REQ (L level), and requests the arbitration circuit unit 8 for the access right to the I / O device 3 (step ST1). When the arbitration circuit unit 8 receives the signal CPU1_REQ from the CPU 1 via the signal line 10-1, if the signal CPU1_ACK is not at the L level at this time, the CPU 1 has no access permission, so the CPU 1 enters a waiting state (step S1). ST2).
 一方、信号CPU1_ACKがLレベルであると、CPU1がアクセス許可されており、ゲート部9-1が、コントロール線12-1及びデータバス13-1を接続している。これにより、CPU1は、HDDであるI/O機器3に対して読み出し又は書き込みを実行することができる(ステップST3)。 On the other hand, when the signal CPU1_ACK is at the L level, the CPU1 is permitted to access, and the gate unit 9-1 connects the control line 12-1 and the data bus 13-1. Thereby, CPU1 can perform reading or writing with respect to I / O apparatus 3 which is HDD (step ST3).
 同様に、CPU2側においても、信号CPU2_REQをアサート(Lレベル)し、I/O機器3へのアクセスを調停回路部8に要求する(ステップST1a)。調停回路部8が、信号線10-2を介してCPU2から信号CPU2_REQを入力すると、この時点で信号CPU2_ACKがLレベルでなければ、CPU2にはアクセス許可されていないため、CPU2は待ち状態となる(ステップST2a)。 Similarly, also on the CPU 2 side, the signal CPU2_REQ is asserted (L level), and the arbitration circuit unit 8 is requested to access the I / O device 3 (step ST1a). When the arbitration circuit unit 8 inputs the signal CPU2_REQ from the CPU 2 via the signal line 10-2, if the signal CPU2_ACK is not at the L level at this time, the CPU 2 is not permitted to access, so the CPU 2 enters a waiting state. (Step ST2a).
 I/O機器3に対する読み出しや書き込みが完了すると、CPU1は、信号CPU1_REQをネゲート(Hレベル)する(ステップST4)。調停回路部8では、信号線10-1を介してCPU1からHレベルの信号CPU1_REQを入力すると、即座に信号CPU2_ACKがLレベルとなる。これにより、ゲート部9-2が、コントロール線12-2及びデータバス13-2を接続し、CPU2が、I/O機器3に対して読み出し又は書き込みを実行することができる(ステップST3a)。この読み出しや書き込みが完了すると、CPU2は、信号CPU2_REQをネゲート(Hレベル)する(ステップST4a)。 When reading or writing to the I / O device 3 is completed, the CPU 1 negates (H level) the signal CPU1_REQ (step ST4). In the arbitration circuit unit 8, when an H-level signal CPU1_REQ is input from the CPU 1 via the signal line 10-1, the signal CPU2_ACK immediately becomes L level. As a result, the gate unit 9-2 connects the control line 12-2 and the data bus 13-2, and the CPU 2 can execute reading or writing with respect to the I / O device 3 (step ST3a). When the reading or writing is completed, the CPU 2 negates (H level) the signal CPU2_REQ (step ST4a).
 ここで、各CPU1,2がI/O機器3にアクセスする様子を、図7に示すタイミングチャートに従って説明する。
 図7(a)に示すように、CPU1がリクエストした後にCPU2がリクエストする場合(CPU1リクエスト→CPU2リクエスト)、CPU1が信号CPU1_REQをLレベルとした時点で、信号CPU2_REQがHレベルであると、調停回路部8は、信号CPU1_ACKをLレベルとし、CPU1に対して即座にアクセスを許可する。
Here, how the CPUs 1 and 2 access the I / O device 3 will be described with reference to the timing chart shown in FIG.
As shown in FIG. 7A, when CPU 2 requests after CPU 1 requests (CPU 1 request → CPU 2 request), when CPU 1 sets signal CPU 1_REQ to L level, arbitration is performed when signal CPU 2_REQ is at H level. The circuit unit 8 sets the signal CPU1_ACK to the L level and allows the CPU1 to access immediately.
 CPU1がI/O機器3に対するアクセス処理を完了し、信号CPU1_REQをネゲートした後に、CPU2が信号CPU2_REQをアサート(Lレベル)すると、調停回路部8は、信号CPU2_ACKをLレベルとして、CPU2に対して即座にアクセスを許可する。 After the CPU 1 completes the access process to the I / O device 3 and negates the signal CPU1_REQ, when the CPU 2 asserts the signal CPU2_REQ (L level), the arbitration circuit unit 8 sets the signal CPU2_ACK to the L level and Allow immediate access.
 また、図7(b)に示すように、CPU1がリクエストした後に再びCPU1がリクエストする場合(CPU1リクエスト→CPU1リクエスト)、CPU1が信号CPU1_REQをLレベルとした時点で、信号CPU2_REQがHレベルであれば、調停回路部8は、信号CPU1_ACKをLレベルとしてアクセスを許可する。 Also, as shown in FIG. 7B, when CPU 1 makes a request again after CPU 1 requests (CPU 1 request → CPU 1 request), signal CPU 2 _REQ is at H level when CPU 1 sets signal CPU 1 REQ to L level. For example, the arbitration circuit unit 8 sets the signal CPU1_ACK to the L level and permits access.
 次に、アクセス処理の完了により、CPU1が信号CPU1_REQをネゲートした後に再び信号CPU1_REQをLレベルにすると、調停回路部8は、信号CPU2_REQがHレベルであれば、信号CPU1_ACKを再びLレベルとして、CPU1にアクセスを許可する。同様に、CPU2がリクエストした後に再びCPU2がリクエストする場合(CPU2リクエスト→CPU2リクエスト)であっても、CPU2にアクセスが許可される(図7(c)参照)。 Next, when the CPU 1 negates the signal CPU1_REQ and sets the signal CPU1_REQ to the L level again after the access processing is completed, the arbitration circuit unit 8 sets the signal CPU1_ACK to the L level again when the signal CPU2_REQ is at the H level. Allow access to. Similarly, even when the CPU 2 makes a request again after making a request (CPU 2 request → CPU 2 request), the CPU 2 is permitted to access (see FIG. 7C).
 図7(d)に示すように、CPU1によるI/O機器3へのアクセス中にCPU2によるリクエストが発生した場合、調停回路部8は、信号CPU1_REQがLレベルであると、これに続いて信号CPU2_REQがLレベルとなっても、信号CPU1_ACKのLレベルを維持し、信号CPU2_ACKをLレベルにしない。このため、CPU2のアクセスは待たされるが、信号CPU1_REQがHレベルになると即座に信号CPU2_ACKがLレベルになり、CPU2のアクセスが許可される。 As shown in FIG. 7 (d), when a request is generated by the CPU 2 while the CPU 1 is accessing the I / O device 3, the arbitration circuit unit 8 detects that the signal CPU1_REQ is at the L level, Even when the CPU2_REQ becomes L level, the L level of the signal CPU1_ACK is maintained, and the signal CPU2_ACK is not set to L level. For this reason, the CPU 2 waits for access, but as soon as the signal CPU1_REQ goes to H level, the signal CPU2_ACK goes to L level and the CPU 2 access is permitted.
 反対に、図7(e)に示すように、CPU2によるI/O機器3へのアクセス中にCPU1がアクセスを試みた場合であっても、調停回路部8は、信号CPU2_REQがLレベルであれば、これに続いて信号CPU1_REQがLレベルとなっても、信号CPU2_ACKのLレベルを維持し、信号CPU2_REQがネゲートされた時点で、CPU1にアクセスを許可する。 On the other hand, as shown in FIG. 7E, even when the CPU 1 tries to access the CPU 2 while the I / O device 3 is being accessed by the CPU 2, the arbitration circuit unit 8 determines that the signal CPU2_REQ is at the L level. For example, even if the signal CPU1_REQ subsequently becomes L level, the L level of the signal CPU2_ACK is maintained, and the access to the CPU 1 is permitted when the signal CPU2_REQ is negated.
 このように、調停回路部8は、CPU1,2からのリクエストが重ならない場合、リクエストしたCPUに対して即座にアクノリッジを与え、またリクエストが重なった場合であっても、先にリクエストしていたCPUにアクノリッジを与えて、もう一方のCPUを待機させ、先にリクエストしていたCPUのアクセス処理が完了した後に、もう一方のCPUにアクノリッジを与える回路構成となっている。この回路構成とすることで、複雑なタイミング処理を行うことなく、CPU1,2間の調停における時間待ちを最小限に短縮することができる。 As described above, when the requests from the CPUs 1 and 2 do not overlap, the arbitration circuit unit 8 immediately gives an acknowledgment to the requesting CPU, and even when the requests overlap, the arbitration circuit unit 8 has requested the request first. The circuit configuration is such that an acknowledge is given to the CPU, the other CPU is made to wait, and after the access process of the CPU requested previously is completed, an acknowledge is given to the other CPU. With this circuit configuration, it is possible to minimize waiting time in arbitration between the CPUs 1 and 2 without performing complicated timing processing.
 また、信号CPU_REQは、CPUの汎用の出力ポートOUTPUTのレベルをハイ又はロウにすることによって実現できる。信号CPU_ACKについては、CPUの汎用の入力ポートINPUTを入力とし、CPUがポーリングで入力ポートの極性を確認することにより実現できるが、より処理を急ぐ場合には、CPUの割り込みポートを入力とし、割り込みポートの極性変化に応じて発生する割り込みイベントを基にアクノリッジ確認を行うようにしてもよい。 The signal CPU_REQ can be realized by setting the general-purpose output port OUTPUT of the CPU to high or low. The signal CPU_ACK can be realized by inputting the general-purpose input port INPUT of the CPU and confirming the polarity of the input port by polling. However, when the processing is more urgent, the interrupt port of the CPU is input and the interrupt is performed. Acknowledgment confirmation may be performed based on an interrupt event that occurs in response to a change in port polarity.
 割り込みを使用する場合の方がより高速に処理することが可能であるが、いずれの場合であっても、一方のCPUが信号CPU_REQをアサートした時点で、もう一方のCPUの信号CPU_REQがLレベルでなければ、数ナノ秒単位の遅延時間で信号CPU_ACKをLレベルにすることができる。この時間差はCPUの処理サイクルで1サイクル以下であり、他の処理演算に与える影響は、ほぼ無視できる。 In the case of using an interrupt, the processing can be performed at a higher speed. However, in any case, when one CPU asserts the signal CPU_REQ, the signal CPU_REQ of the other CPU is L level. Otherwise, the signal CPU_ACK can be set to L level with a delay time of several nanoseconds. This time difference is one cycle or less in the CPU processing cycle, and the influence on other processing operations can be almost ignored.
 上述のように、信号CPU_REQと信号CPU_ACKは、CPUが搭載する汎用の出力ポートOUTPUT、入力ポートINPUT若しくは割り込みポートのレベル変化で実現することができる。このため、マルチCPUシステムにおいて、CPUの種類に依らず、本発明によるバス調停装置を組み込むことが可能である。 As described above, the signal CPU_REQ and the signal CPU_ACK can be realized by changing the level of the general-purpose output port OUTPUT, input port INPUT, or interrupt port installed in the CPU. Therefore, in the multi-CPU system, the bus arbitration device according to the present invention can be incorporated regardless of the type of CPU.
 なお、I/O機器3としてHDDを例として説明したが、これに限定されるものではない。例えば、DVD再生装置、CF(Compact Flash)カード、SDカード等の汎用メモリカードであってもよい。また、PCIバス、特殊な専用バスを搭載した機器であっても使用可能であり、シリアルバス形式のI/Fにおいても適用可能である。 Although the HDD has been described as an example of the I / O device 3, the present invention is not limited to this. For example, a general-purpose memory card such as a DVD playback device, a CF (Compact Flash) card, or an SD card may be used. Further, it can be used even with a device equipped with a PCI bus or a special dedicated bus, and can also be applied to a serial bus type I / F.
 本発明のバス調停装置は、複数のCPUを搭載して、マルチCPUによる処理が可能なナビゲーション装置に有効に適用できる。例えば、映像や音楽データ等を処理するマルチメディアデータ用CPUと地図データ等を処理するナビゲーション用CPUとを搭載したナビゲーション装置が挙げられる。つまり、図1中の構成において、CPU1,2としてマルチメディアデータ用CPUとナビゲーション用CPUを設け、これらCPUの処理に必要なデータを格納するHDD等をI/O機器3とすることにより実現可能である。 The bus arbitration device of the present invention can be effectively applied to a navigation device equipped with a plurality of CPUs and capable of processing by multiple CPUs. For example, there is a navigation device equipped with a multimedia data CPU that processes video, music data, and the like, and a navigation CPU that processes map data and the like. That is, in the configuration shown in FIG. 1, the CPU 1 and 2 can be provided with a multimedia data CPU and a navigation CPU, and an HDD or the like for storing data necessary for the processing of these CPUs can be realized as the I / O device 3. It is.
 このようなナビゲーション装置に本発明のバス調停装置を適用することにより、マルチメディアデータ用CPUとナビゲーション用CPUが1つのI/O機器(例えば、HDD)にアクセスする場合であっても、バスの競合が発生することなく、処理が可能である。また、上述したように、汎用ロジックICを組み合わせた回路規模の小さい簡易な構成で基板面積を小さくでき、ナビゲーション装置自体の小型化も図ることができる。 By applying the bus arbitration device of the present invention to such a navigation device, even if the multimedia data CPU and the navigation CPU access one I / O device (for example, HDD), the bus Processing is possible without contention. In addition, as described above, the board area can be reduced with a simple configuration having a small circuit scale combined with a general-purpose logic IC, and the navigation apparatus itself can be downsized.
 さらに、本発明のバス調停装置は、調停動作においてCPUの動作クロック信号が不要で、CPUの種類に依らず標準的に搭載された汎用ポートを介して信号のやり取りが可能であり、ナビゲーション装置等の機器に容易に適用可能である。 Furthermore, the bus arbitration device of the present invention does not require a CPU operation clock signal in the arbitration operation, and can exchange signals via a standardized general-purpose port regardless of the CPU type, such as a navigation device. It can be easily applied to other devices.
 以上のように、この実施の形態1によれば、信号CPU_REQのアサート及びネゲートの状態を示す論理値の組み合わせに応じて、バス使用の可否を示す論理値を出力するとともに、信号CPU_REQのアサート状態を示す論理値が同時に複数入力されると前回の出力値を維持するD-FF16と、このD-FF16の出力を分岐入力して論理反転するインバータ回路17とを備え、CPU1,2に対して、信号CPU_REQをアサートした順に、D-FF16及びインバータ回路17の出力のうち、バス使用可を示す論理値を出力し、CPU1,2のバス使用要求が重なると、D-FF16で維持された前回の出力値を用いて、先に信号CPU_REQをアサートしたCPUに対し、当該信号CPU_REQがネゲートされるまでバス使用可を示す論理値を出力する。このように構成することにより、実用的なバス調停装置を簡易な構成で実現することができる。 As described above, according to the first embodiment, according to the combination of the logical value indicating the assertion and negation state of the signal CPU_REQ, the logical value indicating whether the bus can be used is output and the assertion state of the signal CPU_REQ D-FF 16 that maintains the previous output value when a plurality of logical values indicating the same are input simultaneously, and an inverter circuit 17 that branches and inputs the output of the D-FF 16 to invert the logic. In the order in which the signal CPU_REQ is asserted, a logical value indicating that the bus can be used is output from the outputs of the D-FF 16 and the inverter circuit 17, and when the bus usage requests of the CPUs 1 and 2 overlap, Until the signal CPU_REQ is negated with respect to the CPU that previously asserted the signal CPU_REQ. And it outputs a logic value indicating a scan usable. With this configuration, a practical bus arbitration device can be realized with a simple configuration.
 また、この実施の形態1によれば、調停回路部8による調停動作が、CPUの動作クロック信号に依存せず、また信号CPU_REQの入力と信号CPU_ACKの出力のみでよいことから、信号のやり取りにCPUの汎用ポートを使用できる。これにより、CPUの種類や動作速度に制限されることなく、マルチCPU機器に容易に適用することができる。 Further, according to the first embodiment, the arbitration operation by the arbitration circuit unit 8 does not depend on the operation clock signal of the CPU, and only the input of the signal CPU_REQ and the output of the signal CPU_ACK are required. A general-purpose port of the CPU can be used. Thus, the present invention can be easily applied to multi-CPU devices without being limited by the CPU type or operation speed.
実施の形態2.
 上記実施の形態1では2個のCPUのバス調停を行う場合を示したが、この実施の形態2は3個以上のCPUのバス調停を行う構成を示す。
Embodiment 2. FIG.
Although the case where the bus arbitration of two CPUs is performed in the first embodiment, the second embodiment shows a configuration in which the bus arbitration of three or more CPUs is performed.
 図8は、この発明の実施の形態2によるバス調停装置の調停回路部の構成を示す図であり、4個のCPU1~4のバス調停を行う回路構成を示している。図8に示す調停回路部8も、汎用のロジックICであるインバータ回路14-1~14-6,17-1~17-3、NAND回路15-1~15-6,D-FF16-1~16-3及びNOR回路21-1,21-2、22-1~22-4から構成される。調停回路部8と外部との間は、信号CPU_REQを伝送する4本の信号線と信号CPU_ACKを伝送する4本の信号線との合計8本の信号線で接続されている。 FIG. 8 is a diagram showing a configuration of an arbitration circuit unit of the bus arbitration device according to the second embodiment of the present invention, and shows a circuit configuration for performing bus arbitration of four CPUs 1 to 4. 8 also includes inverter circuits 14-1 to 14-6, 17-1 to 17-3, NAND circuits 15-1 to 15-6, D-FF 16-1 to 16-3 and NOR circuits 21-1, 21-2, 22-1 to 22-4. The arbitration circuit unit 8 and the outside are connected by a total of eight signal lines including four signal lines that transmit the signal CPU_REQ and four signal lines that transmit the signal CPU_ACK.
 インバータ回路14-1,14-2,17-1、NAND回路15-1,15-2及びD-FF16-1から構成される第1の構成部(調停回路部)、インバータ回路14-3,14-4,17-2、NAND回路15-3,15-4及びD-FF16-2から構成される第2の構成部(調停回路部)、インバータ回路14-5,14-6,17-3、NAND回路15-5,15-6及びD-FF16-3から構成される第3の構成部(調停回路部)は、それぞれ上記実施の形態1の図2に示した構成と同様に動作する。 A first configuration section (arbitration circuit section) including inverter circuits 14-1, 14-2, 17-1, NAND circuits 15-1, 15-2 and D-FF 16-1, inverter circuit 14-3, 14-4 and 17-2, NAND circuits 15-3 and 15-4, and a second configuration section (arbitration circuit section) composed of D-FF 16-2, inverter circuits 14-5, 14-6, and 17- 3. The third configuration section (arbitration circuit section) composed of NAND circuits 15-5 and 15-6 and D-FF 16-3 operates in the same manner as the configuration shown in FIG. 2 of the first embodiment. To do.
 また、NOR回路21-1は、CPU1,2からの信号CPU_REQを反転入力し、NOR回路21-2は、CPU3,4からの信号CPU_REQを反転入力する。これにより、NOR回路21-1,21-2は、信号CPU_REQがアサートされると、これに応じた値をインバータ回路14-3,14-4及びNAND回路15-3,15-4に出力する。 Further, the NOR circuit 21-1 inverts the signal CPU_REQ from the CPUs 1 and 2, and the NOR circuit 21-2 inverts the signal CPU_REQ from the CPUs 3 and 4. Thus, when the signal CPU_REQ is asserted, the NOR circuits 21-1 and 21-2 output values corresponding to the signals to the inverter circuits 14-3 and 14-4 and the NAND circuits 15-3 and 15-4. .
 NOR回路(出力選択部)22-1,22-2は、第1の構成部における各出力値と第2の構成部におけるインバータ回路17-2を介した出力値とを入力し、NOR回路(出力選択部)22-3,22-4は、第3の構成部における各出力値と第2の構成部におけるD-FF16-2の出力値とを入力する。この接続関係により、NOR回路22-1~22-4は、第1~第3の構成部の出力値に応じて、CPU1~4への信号CPU_ACKを生成する。 The NOR circuits (output selection units) 22-1 and 22-2 receive the respective output values in the first configuration unit and the output values via the inverter circuit 17-2 in the second configuration unit. Output selection units) 22-3 and 22-4 receive the respective output values in the third configuration unit and the output values of the D-FF 16-2 in the second configuration unit. With this connection relationship, the NOR circuits 22-1 to 22-4 generate signals CPU_ACK to the CPUs 1 to 4 according to the output values of the first to third components.
 なお、図8の構成においても、D-FF16-1~16-3は、動作クロック信号を用いず、端子PRと端子CLに入力される値に応じた出力値を利用する。従って、CPU1~4が互いに異なる動作速度であっても、調停動作が影響を受けることがない。 In the configuration of FIG. 8 as well, the D-FFs 16-1 to 16-3 do not use the operation clock signal but use the output value corresponding to the values input to the terminal PR and the terminal CL. Therefore, even if the CPUs 1 to 4 have different operation speeds, the arbitration operation is not affected.
 次に動作について説明する。
(1)CPU1リクエスト→CPU2~4リクエスト
 CPU1がリクエストした後にCPU2~4がリクエストする場合、CPU1が信号CPU1_REQをLレベルとした時点で、信号CPU2_REQ~CPU4_REQがHレベルであると、調停回路部8は、信号CPU1_ACKをLレベルとし、CPU1に対して即座にアクセスを許可する。
Next, the operation will be described.
(1) CPU1 request → CPU2 to 4 request When CPU2 to 4 request after CPU1 requests, the arbitration circuit unit 8 indicates that the signals CPU2_REQ to CPU4_REQ are at H level when the CPU1 sets the signal CPU1_REQ to L level. Sets the signal CPU1_ACK to the L level and immediately allows the CPU1 to access.
 例えば、信号CPU1_REQがLレベルであり、信号CPU2_REQ~CPU4_REQがHレベルであると、第1の構成部におけるD-FF16-1がHレベルの信号を出力し、第3の構成部におけるD-FF16-3は前回の出力レベルを維持する。一方、第2の構成部は、NOR回路21-1からLレベルの信号とNOR回路21-2からHレベルの信号を入力し、D-FF16-2がHレベルの信号を出力する。 For example, when the signal CPU1_REQ is at L level and the signals CPU2_REQ to CPU4_REQ are at H level, the D-FF 16-1 in the first configuration unit outputs an H level signal, and the D-FF 16 in the third configuration unit. -3 maintains the previous output level. On the other hand, the second component receives an L level signal from the NOR circuit 21-1 and an H level signal from the NOR circuit 21-2, and the D-FF 16-2 outputs an H level signal.
 NOR回路22-1は、第1の構成部におけるインバータ回路17-1からのLレベルの信号と第2の構成部におけるインバータ回路17-2からのLレベルの信号とを反転入力し、Lレベルの信号CPU1_ACKを生成して出力する。一方、NOR回路22-2は、第1の構成部におけるD-FF16-1からのHレベルの信号と第2の構成部におけるインバータ回路17-2からのLレベルの信号とを反転入力し、Hレベルの信号CPU2_ACKを生成して出力する。 The NOR circuit 22-1 inverts and inputs the L level signal from the inverter circuit 17-1 in the first component and the L level signal from the inverter circuit 17-2 in the second component. The signal CPU1_ACK is generated and output. On the other hand, the NOR circuit 22-2 inverts the H level signal from the D-FF 16-1 in the first component and the L level signal from the inverter circuit 17-2 in the second component, An H level signal CPU2_ACK is generated and output.
 また、NOR回路22-3は、第3の構成部におけるインバータ回路17-3からのLレベル又はHレベルの信号と第2の構成部におけるD-FF16-2からのHレベルの信号とを反転入力し、Hレベルの信号CPU3_ACKを生成して出力する。同様に、NOR回路22-4は、第3の構成部におけるD-FF16-3からのLレベル又はHレベルの信号と第2の構成部におけるD-FF16-2からのHレベルの信号とを反転入力し、Hレベルの信号CPU4_ACKを生成して出力する。これにより、CPU1にのみアクセスが許可される。 The NOR circuit 22-3 inverts the L level or H level signal from the inverter circuit 17-3 in the third component and the H level signal from the D-FF 16-2 in the second component. Input, generate and output H level signal CPU3_ACK. Similarly, the NOR circuit 22-4 outputs an L level or H level signal from the D-FF 16-3 in the third component and an H level signal from the D-FF 16-2 in the second component. Inverted input generates and outputs an H level signal CPU4_ACK. Thereby, access is permitted only to CPU1.
 なお、CPU1がI/O機器3に対するアクセス処理を完了し、信号CPU1_REQをネゲートすると、調停回路部8は、CPU2~4のうち、信号CPU_REQをアサート(Lレベル)した順に、調停回路部8は、信号CPU_ACKをLレベルとしてアクセスを許可する。 When the CPU 1 completes the access process to the I / O device 3 and negates the signal CPU1_REQ, the arbitration circuit unit 8 in the order of asserting the signal CPU_REQ (L level) among the CPUs 2 to 4 , The signal CPU_ACK is set to L level to permit access.
(2)CPU1リクエスト→CPU1リクエスト
 CPU1がリクエストした後に再びCPU1がリクエストする場合、CPU1が信号CPU1_REQをLレベルとした時点で、信号CPU2_REQ~CPU4_REQがHレベルであれば、調停回路部8は、信号CPU1_ACKをLレベルとしてアクセスを許可する。なお、CPU2~4においても同様である。
(2) CPU1 request → CPU1 request When CPU1 makes a request again after CPU1 makes a request, if signals CPU2_REQ to CPU4_REQ are at H level when CPU1 sets signal CPU1_REQ to L level, arbitration circuit unit 8 CPU1_ACK is set to L level and access is permitted. The same applies to CPUs 2-4.
(3)CPU1のアクセス中にCPU2~4によるリクエストが発生した場合
 調停回路部8は、信号CPU1_REQがLレベルであると、これに続いて信号CPU2_REQ~CPU4_REQのいずれがLレベルとなっても、信号CPU1_ACKのLレベルを維持し、信号CPU2_ACK~CPU4_ACKをLレベルにしない。このため、CPU2~4のアクセスは待たされるが、信号CPU1_REQがHレベルになると、リクエストの順序でCPU2~4の信号CPU_ACKをLレベルとしてアクセスを許可する。
(3) When a request from the CPUs 2 to 4 occurs while the CPU 1 is accessing The arbitration circuit unit 8 determines that if the signal CPU1_REQ is at L level, any of the signals CPU2_REQ to CPU4_REQ is at L level subsequently. The signal CPU1_ACK is maintained at the L level, and the signals CPU2_ACK to CPU4_ACK are not set to the L level. For this reason, access of the CPUs 2 to 4 is awaited, but when the signal CPU1_REQ becomes H level, the signal CPU_ACK of the CPUs 2 to 4 is set to L level in the order of requests and access is permitted.
 上述の説明ではCPUが4個の場合を示したが、CPUが3個の場合は、上述した第1の構成部及び第2の構成部を設け、第2の構成部におけるD-FF16-2の出力を信号CPU3_ACKとすればよい。また、n(5以上)個の場合は、第1~第(n-1)の構成部を設け、図8と同様に各CPUに対する信号CPU_ACKを生成するNOR回路を接続することにより実現することができる。 In the above description, the case where the number of CPUs is four is shown. However, when the number of CPUs is three, the first configuration unit and the second configuration unit described above are provided, and the D-FF 16-2 in the second configuration unit is provided. May be the signal CPU3_ACK. In the case of n (5 or more), the first to (n-1) th components are provided, and the NOR circuit that generates the signal CPU_ACK for each CPU is connected as in FIG. Can do.
 以上のように、この実施の形態2によれば、信号CPU_REQのアサート及びネゲートの状態を示す論理値の組み合わせに応じて、バス使用の可否を示す論理値を出力するとともに、信号CPU_REQのアサート状態を示す論理値が同時に複数入力されると前回の出力値を維持するD-FF16-1~16-3と、D-FF16-1~16-3の出力を分岐入力して論理反転するインバータ回路17-1~17-3とをそれぞれ有する第1~3の構成部と、第1~3の構成部のD-FF16-1~16-3及びインバータ回路17-1~17-3の出力値に応じて、CPU1~4に対し、信号CPU_REQをアサートした順に、D-FF16-1~16-3及びインバータ回路17-1~17-3の出力のうち、バス使用可を示す論理値を出力し、CPU1~4の全てのバス使用要求が重なると、D-FF16-1~16-3で維持された前回の出力値を用いて、先に信号CPU_REQをアサートしたCPUに対し、当該信号CPU_REQがネゲートされるまでバス使用可を示す論理値を出力するNOR回路22-1~22-4と、CPU1~4とI/O機器3とを接続するバス上に設けられ、調停回路部8の出力値に応じて、バス使用可のCPUとI/O機器3とのバスを介したやり取りを中継し、バス使用不可なCPUをバスから遮断するゲート部9-1,9-2とを備える。
 このように構成することにより、上記実施の形態1と同様に、実用的なバス調停装置を簡易な構成で実現することができる。また、CPUの種類や動作速度、数量に制限されることなく、マルチCPU機器に容易に適用することができる。
As described above, according to the second embodiment, a logical value indicating whether or not a bus can be used is output according to a combination of logical values indicating the assertion and negation states of the signal CPU_REQ, and the signal CPU_REQ is asserted. D-FFs 16-1 to 16-3 that maintain the previous output value when a plurality of logical values indicating the same are input simultaneously, and inverter circuits that branch-input the outputs of D-FFs 16-1 to 16-3 and invert the logic First to third components having 17-1 to 17-3, and output values of D-FFs 16-1 to 16-3 and inverter circuits 17-1 to 17-3 of the first to third components Accordingly, the logic indicating that the bus can be used among the outputs of the D-FFs 16-1 to 16-3 and the inverter circuits 17-1 to 17-3 in order of asserting the signal CPU_REQ to the CPUs 1 to 4. When all the bus use requests of the CPUs 1 to 4 overlap, the previous output value maintained in the D-FFs 16-1 to 16-3 is used for the CPU that previously asserted the signal CPU_REQ. Arbitration circuit unit provided on the NOR circuits 22-1 to 22-4 for outputting logical values indicating that the bus can be used until the signal CPU_REQ is negated, and the buses connecting the CPUs 1 to 4 and the I / O device 3. In response to the output value of 8, the gate units 9-1 and 9-2 that relay the exchange between the bus-usable CPU and the I / O device 3 via the bus and block the unusable CPU from the bus; Is provided.
With this configuration, a practical bus arbitration device can be realized with a simple configuration as in the first embodiment. Further, the present invention can be easily applied to multi-CPU devices without being limited by the CPU type, operation speed, and quantity.
 なお、上記実施の形態1,2では、信号CPU_ACKを生成する構成としてD-FFを用いる場合を示したが、D-FFに限定されるものではない。つまり、CPUのクロック信号を使用せず、2入力の各デジタル値に応じて、上記D-FFと同様のデジタル値を出力、維持する回路であればよい。 In the first and second embodiments, the case where the D-FF is used as the configuration for generating the signal CPU_ACK has been described. However, the present invention is not limited to the D-FF. That is, any circuit that outputs and maintains the same digital value as that of the D-FF according to each of the two input digital values without using the CPU clock signal may be used.
 以上のように、この発明に係るバス調停装置は、簡易な構成で小型化が可能であり、かつCPUの種類、動作速度、数量に依存しないバス調停装置を得るために、バスに接続する2つのCPU間のバス使用を調停するバス調停装置において、前記2つのCPUから入力したバス使用要求信号のアサート及びネゲートの状態を示す論理値の組み合わせに応じて、バス使用の可否を示す論理値を出力する論理回路と、前記論理回路の出力を分岐入力して論理反転するインバータ回路とを有し、前記2つのCPUに対して、前記バス使用要求信号をアサートした順に、前記論理回路及び前記インバータ回路の出力のうち、バス使用可を示す論理値を出力する調停回路部と、前記CPUとアクセス対象機器とを接続するバス上に設けられ、前記調停回路部の出力値に応じて、バス使用可のCPUと前記アクセス対象機器との前記バスを介したやり取りを中継し、バス使用不可のCPUを前記バスから遮断するゲート部とを備えるよう構成したので、近年の情報機器システムに搭載され、複数のCPUのバス使用要求を調停するバス調停装置などに用いるのに適している。 As described above, the bus arbitration device according to the present invention can be reduced in size with a simple configuration, and is connected to the bus in order to obtain a bus arbitration device that does not depend on the CPU type, operation speed, and quantity. In a bus arbitration device that arbitrates bus use between two CPUs, a logical value indicating whether or not the bus can be used is set in accordance with a combination of logical values indicating assertion and negation of a bus use request signal input from the two CPUs. A logic circuit for outputting, and an inverter circuit for branching and inverting the output of the logic circuit, and in order of asserting the bus use request signal to the two CPUs, the logic circuit and the inverter Of the circuit outputs, an arbitration circuit unit that outputs a logical value indicating that the bus can be used, and a bus that connects the CPU and the access target device, the arbitration circuit unit is provided. According to the output value of a road part, it comprised so that the exchange of the bus-usable CPU and the said access object apparatus via the said bus could be relayed, and the gate part which interrupted | blocked CPU which cannot use a bus from the said bus was comprised. Therefore, it is mounted on recent information equipment systems and is suitable for use in a bus arbitration device that arbitrates bus use requests of a plurality of CPUs.

Claims (10)

  1.  バスに接続する2つのCPU間のバス使用を調停するバス調停装置において、
     前記2つのCPUから入力したバス使用要求信号のアサート及びネゲートの状態を示す論理値の組み合わせに応じて、バス使用の可否を示す論理値を出力する論理回路と、前記論理回路の出力を分岐入力して論理反転するインバータ回路とを有し、前記2つのCPUに対して、前記バス使用要求信号をアサートした順に、前記論理回路及び前記インバータ回路の出力のうち、バス使用可を示す論理値を出力する調停回路部と、
     前記CPUとアクセス対象機器とを接続するバス上に設けられ、前記調停回路部の出力値に応じて、バス使用可のCPUと前記アクセス対象機器との前記バスを介したやり取りを中継し、バス使用不可のCPUを前記バスから遮断するゲート部とを備えたことを特徴とするバス調停装置。
    In a bus arbitration device that arbitrates bus use between two CPUs connected to a bus,
    A logic circuit that outputs a logic value indicating whether or not the bus can be used according to a combination of logic values indicating assertion and negation states of the bus use request signals input from the two CPUs, and a branch input of the output of the logic circuit A logic value indicating that the bus can be used among the outputs of the logic circuit and the inverter circuit in the order in which the bus use request signals are asserted to the two CPUs. An output arbitration circuit unit;
    Provided on a bus that connects the CPU and the access target device, and relays the exchange between the bus-usable CPU and the access target device via the bus according to the output value of the arbitration circuit unit. A bus arbitration device comprising: a gate unit that blocks an unusable CPU from the bus.
  2.  論理回路は、2つのCPUから入力したバス使用要求信号のアサート及びネゲートの状態を示す論理値の組み合わせに応じて、バス使用の可否を示す論理値を出力するとともに、前記2つのCPUからバス使用要求信号のアサート状態を示す論理値が同時に入力されると前回の出力値を維持し、
     調停回路部は、前記2つのCPUに対し、前記バス使用要求信号をアサートした順に、前記論理回路及びインバータ回路の出力のうち、バス使用可を示す論理値を出力し、前記2つのCPUのバス使用要求が重なると、前記論理回路で維持された前回の出力値を用いて、先にバス使用要求信号をアサートしていたCPUに対して、当該バス使用要求信号がネゲートされるまで前記バス使用可を示す論理値を出力することを特徴とする請求項1記載のバス調停装置。
    The logic circuit outputs a logic value indicating whether or not the bus can be used in accordance with a combination of logic values indicating assertion and negation states of the bus use request signals input from the two CPUs, and uses the bus from the two CPUs. When a logical value indicating the assertion state of the request signal is input at the same time, the previous output value is maintained,
    The arbitration circuit unit outputs, to the two CPUs, a logical value indicating that the bus can be used among the outputs of the logic circuit and the inverter circuit in the order in which the bus use request signals are asserted, and the buses of the two CPUs When the use requests overlap, the bus use request signal is negated to the CPU that previously asserted the bus use request signal using the previous output value maintained by the logic circuit until the bus use request signal is negated. 2. The bus arbitration apparatus according to claim 1, wherein a logical value indicating permission is output.
  3.  バスに接続する3個以上のCPU間のバス使用を調停するバス調停装置において、
     バス使用要求信号のアサート及びネゲートの状態を示す論理値の組み合わせに応じて、バス使用の可否を示す論理値を出力する論理回路と、前記論理回路の出力を分岐入力して論理反転するインバータ回路とを有する複数の調停回路部と、
     前記複数の調停回路部の前記論理回路及び前記インバータ回路の出力値に応じて、前記複数のCPUに対し、前記バス使用要求信号をアサートした順にバス使用可を示す論理値を出力する出力選択部と、
     前記CPUとアクセス対象機器とを接続するバス上に設けられ、前記調停回路部の出力値に応じて、バス使用可のCPUと前記アクセス対象機器との前記バスを介したやり取りを中継し、バス使用不可のCPUを前記バスから遮断するゲート部とを備えたことを特徴とするバス調停装置。
    In a bus arbitration device that arbitrates bus use between three or more CPUs connected to a bus,
    A logic circuit that outputs a logic value indicating whether or not the bus can be used according to a combination of logic values indicating the assertion and negation status of the bus use request signal, and an inverter circuit that branches and inputs the output of the logic circuit. A plurality of arbitration circuit units, and
    An output selection unit that outputs a logical value indicating that the bus can be used in the order in which the bus use request signal is asserted to the plurality of CPUs according to output values of the logic circuit and the inverter circuit of the plurality of arbitration circuit units When,
    Provided on a bus that connects the CPU and the access target device, and relays the exchange between the bus-usable CPU and the access target device via the bus according to the output value of the arbitration circuit unit. A bus arbitration device comprising: a gate unit that blocks an unusable CPU from the bus.
  4.  論理回路は、バス使用要求信号のアサート及びネゲートの状態を示す論理値の組み合わせに応じて、バス使用の可否を示す論理値を出力するとともに、前記バス使用要求信号のアサート状態を示す論理値が同時に複数入力されると前回の出力値を維持し、
     出力選択部は、複数の調停回路部の前記論理回路及びインバータ回路の出力値に応じて、複数のCPUに対し、前記バス使用要求信号をアサートした順にバス使用可を示す論理値を出力し、前記3個以上のCPUの全てのバス使用要求が重なると、前記複数の調停回路部の前記論理回路で維持された前回の出力値を用いて、先にバス使用要求信号をアサートしていたCPUに対し、当該バス使用要求信号がネゲートされるまで前記バス使用可を示す論理値を出力することを特徴とする請求項3記載のバス調停装置
    The logic circuit outputs a logical value indicating whether the bus can be used or not according to a combination of logical values indicating the assertion and negation states of the bus use request signal, and a logical value indicating the assertion state of the bus use request signal. If multiple inputs are made simultaneously, the previous output value is maintained.
    The output selection unit outputs a logic value indicating that the bus can be used in the order in which the bus use request signal is asserted to a plurality of CPUs according to the output values of the logic circuit and the inverter circuit of the plurality of arbitration circuit units, When all the bus use requests of the three or more CPUs overlap, the CPU that previously asserted the bus use request signal using the previous output value maintained in the logic circuit of the plurality of arbitration circuit units 4. A bus arbitration apparatus according to claim 3, wherein a logical value indicating that the bus can be used is output until the bus use request signal is negated.
  5.  調停回路部は、CPUの動作クロックに依らずに動作することを特徴とする請求項1記載のバス調停装置。 2. The bus arbitration device according to claim 1, wherein the arbitration circuit unit operates without depending on an operation clock of the CPU.
  6.  調停回路部は、CPUの動作クロックに依らずに動作することを特徴とする請求項3記載のバス調停装置。 4. The bus arbitration device according to claim 3, wherein the arbitration circuit unit operates without depending on an operation clock of the CPU.
  7.  調停回路部は、CPUからのバス使用要求信号を入力する第1及び第2のインバータ回路と、前記第1のインバータ回路の入力と前記第2のインバータ回路の出力との否定論理積演算を行う第1のNAND回路と、前記第2のインバータ回路の入力と前記第1のインバータ回路の出力との否定論理積演算を行う第2のNAND回路とを備え、
     論理回路は、前記入力部の前記第1及び前記第2のNAND回路から入力した否定論理積演算された論理値の組み合わせに応じて、バス使用の可否を示す論理値を出力するとともに、前記第1及び前記第2のNAND回路から前記バス使用要求信号のアサート状態を示す論理値が同時に入力されると、前回の出力値を維持するフリップフロップ回路であることを特徴とする請求項1記載のバス調停装置。
    The arbitration circuit unit performs a negative logical product operation of the first and second inverter circuits that receive the bus use request signal from the CPU, and the input of the first inverter circuit and the output of the second inverter circuit. A first NAND circuit; and a second NAND circuit that performs a NAND operation on an input of the second inverter circuit and an output of the first inverter circuit,
    The logic circuit outputs a logic value indicating whether or not the bus can be used according to a combination of logic values obtained by performing a NAND operation and input from the first and second NAND circuits of the input unit. 2. The flip-flop circuit according to claim 1, wherein when a logical value indicating an asserted state of the bus use request signal is simultaneously input from the first NAND circuit and the second NAND circuit, the previous output value is maintained. Bus arbitrator.
  8.  調停回路部は、CPUからのバス使用要求信号を入力する第1及び第2のインバータ回路と、前記第1のインバータ回路の入力と前記第2のインバータ回路の出力との否定論理積演算を行う第1のNAND回路と、前記第2のインバータ回路の入力と前記第1のインバータ回路の出力との否定論理積演算を行う第2のNAND回路とを備え、
     論理回路は、前記入力部の前記第1及び前記第2のNAND回路から入力した否定論理積演算された論理値の組み合わせに応じて、バス使用の可否を示す論理値を出力するとともに、前記第1及び前記第2のNAND回路から前記バス使用要求信号のアサート状態を示す論理値が同時に入力されると、前回の出力値を維持するフリップフロップ回路であることを特徴とする請求項3記載のバス調停装置。
    The arbitration circuit unit performs a negative logical product operation of the first and second inverter circuits that receive the bus use request signal from the CPU, and the input of the first inverter circuit and the output of the second inverter circuit. A first NAND circuit; and a second NAND circuit that performs a NAND operation on an input of the second inverter circuit and an output of the first inverter circuit,
    The logic circuit outputs a logic value indicating whether or not the bus can be used according to a combination of logic values obtained by performing a NAND operation and input from the first and second NAND circuits of the input unit. 4. The flip-flop circuit according to claim 3, wherein when a logical value indicating an asserted state of the bus use request signal is simultaneously input from the first NAND circuit and the second NAND circuit, the previous output value is maintained. Bus arbitrator.
  9.  バスに接続する複数のCPUと、
     前記複数のCPU間のバス使用を調停する請求項1記載のバス調停装置とを備えたナビゲーション装置。
    A plurality of CPUs connected to the bus;
    The navigation apparatus provided with the bus arbitration apparatus of Claim 1 which arbitrates bus use between these CPUs.
  10.  バスに接続する複数のCPUと、
     前記複数のCPU間のバス使用を調停する請求項3記載のバス調停装置とを備えたナビゲーション装置。
    A plurality of CPUs connected to the bus;
    4. A navigation device comprising: a bus arbitration device according to claim 3 that arbitrates bus use among the plurality of CPUs.
PCT/JP2009/001842 2008-07-04 2009-04-22 Bus arbitration device and navigation device using the same WO2010001515A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2010518882A JPWO2010001515A1 (en) 2008-07-04 2009-04-22 Bus arbitration device and navigation device using the same

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2008-175682 2008-07-04
JP2008175682 2008-07-04

Publications (1)

Publication Number Publication Date
WO2010001515A1 true WO2010001515A1 (en) 2010-01-07

Family

ID=41465624

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2009/001842 WO2010001515A1 (en) 2008-07-04 2009-04-22 Bus arbitration device and navigation device using the same

Country Status (2)

Country Link
JP (1) JPWO2010001515A1 (en)
WO (1) WO2010001515A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109947019A (en) * 2019-03-27 2019-06-28 中国铁道科学研究院集团有限公司 The processing unit and concurrent working control method of train network input-output system

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63132365A (en) * 1986-11-22 1988-06-04 Nec Corp Bus adjustment control system
JPS6476254A (en) * 1987-09-18 1989-03-22 Fujitsu Ltd Device for arbitrating bus
JPH01193959A (en) * 1988-01-28 1989-08-03 Toshiba Corp Common bus arbitration circuit
JPH02141858A (en) * 1988-11-22 1990-05-31 Victor Co Of Japan Ltd Dma controller

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6413660A (en) * 1987-07-07 1989-01-18 Toyota Central Res & Dev Bus arbiter
JPH01211060A (en) * 1988-02-18 1989-08-24 Yokogawa Electric Corp Access control right arbitrating circuit

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63132365A (en) * 1986-11-22 1988-06-04 Nec Corp Bus adjustment control system
JPS6476254A (en) * 1987-09-18 1989-03-22 Fujitsu Ltd Device for arbitrating bus
JPH01193959A (en) * 1988-01-28 1989-08-03 Toshiba Corp Common bus arbitration circuit
JPH02141858A (en) * 1988-11-22 1990-05-31 Victor Co Of Japan Ltd Dma controller

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109947019A (en) * 2019-03-27 2019-06-28 中国铁道科学研究院集团有限公司 The processing unit and concurrent working control method of train network input-output system

Also Published As

Publication number Publication date
JPWO2010001515A1 (en) 2011-12-15

Similar Documents

Publication Publication Date Title
US6745369B1 (en) Bus architecture for system on a chip
KR100814904B1 (en) On-Chip Communication architecture
WO2005091812A2 (en) Pvdm (packet voice data module) generic bus protocol
JP3769413B2 (en) Disk array controller
US6959354B2 (en) Effective bus utilization using multiple bus interface circuits and arbitration logic circuit
US9003092B2 (en) System on chip bus system and a method of operating the bus system
JP3952226B2 (en) Bus communication system
US20100318690A1 (en) Card host lsi and set device including the same
US5627968A (en) Data transfer apparatus which allows data to be transferred between data devices without accessing a shared memory
WO2010001515A1 (en) Bus arbitration device and navigation device using the same
US7904624B2 (en) High bandwidth split bus
US20050062749A1 (en) Memory access methods in a unified memory system
US7519849B2 (en) Technique for providing service processor access to control and status registers of a module
US20180336147A1 (en) Application processor including command controller and integrated circuit including the same
KR19980068130A (en) Data access control device using shared memory
US20060101173A1 (en) Pin sharing system
KR100441996B1 (en) Direct Memory Access(DMA) Controller and control method
CN117555826A (en) SoC, bus system, bus access method, device and storage medium
JP4521410B2 (en) Disk array controller
CN114996180A (en) Access control method, system, chip, board card and electronic equipment
JP2006091982A (en) On-chip bus system
JPH02211571A (en) Information processor
JPH07302241A (en) Data processor
US20020013873A1 (en) Data-processing unit with a circuit arrangement for connecting a first communications bus with a second communications bus
JPH01161942A (en) Data transmission equipment and its method

Legal Events

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

Ref document number: 09773093

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2010518882

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 09773093

Country of ref document: EP

Kind code of ref document: A1