WO2011152013A1 - 集積回路製造方法及び半導体集積回路 - Google Patents
集積回路製造方法及び半導体集積回路 Download PDFInfo
- Publication number
- WO2011152013A1 WO2011152013A1 PCT/JP2011/002985 JP2011002985W WO2011152013A1 WO 2011152013 A1 WO2011152013 A1 WO 2011152013A1 JP 2011002985 W JP2011002985 W JP 2011002985W WO 2011152013 A1 WO2011152013 A1 WO 2011152013A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- bus
- circuit
- integrated circuit
- block
- external terminal
- Prior art date
Links
- 239000004065 semiconductor Substances 0.000 title claims abstract description 147
- 238000004519 manufacturing process Methods 0.000 title claims abstract description 53
- 238000000034 method Methods 0.000 title abstract description 73
- 238000013461 design Methods 0.000 claims abstract description 121
- 238000012546 transfer Methods 0.000 claims description 222
- 230000003111 delayed effect Effects 0.000 claims description 13
- 239000000463 material Substances 0.000 claims description 8
- 230000010363 phase shift Effects 0.000 claims description 6
- 230000005540 biological transmission Effects 0.000 abstract description 2
- 230000002040 relaxant effect Effects 0.000 abstract 1
- 230000006870 function Effects 0.000 description 29
- 238000010586 diagram Methods 0.000 description 28
- 238000012986 modification Methods 0.000 description 28
- 230000004048 modification Effects 0.000 description 28
- 230000008569 process Effects 0.000 description 20
- 230000004044 response Effects 0.000 description 11
- 230000010354 integration Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000007704 transition Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 230000008859 change Effects 0.000 description 3
- 239000013078 crystal Substances 0.000 description 2
- 230000007423 decrease Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000013440 design planning Methods 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000007306 functionalization reaction Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000007670 refining Methods 0.000 description 1
- 238000004904 shortening Methods 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000011144 upstream manufacturing Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H01—ELECTRIC ELEMENTS
- H01L—SEMICONDUCTOR DEVICES NOT COVERED BY CLASS H10
- H01L27/00—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate
- H01L27/02—Devices consisting of a plurality of semiconductor or other solid-state components formed in or on a common substrate including semiconductor components specially adapted for rectifying, oscillating, amplifying or switching and having potential barriers; including integrated passive circuit elements having potential barriers
- H01L27/0203—Particular design considerations for integrated circuits
- H01L27/0207—Geometrical layout of the components, e.g. computer aided design; custom LSI, semi-custom LSI, standard cell technique
Definitions
- the present invention relates to a semiconductor integrated circuit and a manufacturing method thereof, and more particularly to layout design of circuit components.
- the design of semiconductor integrated circuits can be broadly divided into two processes: front-end design and back-end design.
- the front-end design is a process of creating a netlist through processes such as specification design of semiconductor integrated circuits, functional design / test design, and logic synthesis.
- the back-end design is a process of creating manufacturing data used in the manufacturing process through processes such as layout design and sign-off verification.
- the layout design is further divided into two processes: floor plan and wiring process.
- the floor plan is a process of determining the arrangement positions of various blocks such as hard macros, user macros, and RAMs in the semiconductor integrated circuit in consideration of timing and wiring properties.
- the wiring process takes into account the wiring constraints (for example, the connection relationship between components and the layer through which the connection is made), between blocks determined by the floor plan, or between blocks and terminals. This is a step of determining a wiring route between the two. By passing through both processes, simply speaking, the parts are arranged according to the functions required for the semiconductor integrated circuit, and the wiring between the parts is determined.
- the position of the external terminal is determined in advance, and in the floor plan, a block having an external terminal I / F (Inter Face) circuit with the external terminal is placed near the external terminal. Ideally placed. Alternatively, it is ideal to determine the position of the external terminal so that the distance between the block having the external terminal I / F circuit and the external terminal determined by the floor plan can be as short as possible. This is because by reducing the wiring length between the external terminal and the external terminal I / F circuit (or the block having the external terminal I / F) as much as possible, the transfer delay between the wirings can be suppressed.
- the position of the external terminal is closely related to the board design, noise design, etc., and the external terminal cannot always be arranged at a place where the load of layout design can be reduced.
- recent external terminal dual-purpose specifications providing a plurality of functions in one external terminal
- the determination of the external terminal position tends to be delayed. Therefore, the arrangement position of the external terminal assumed at the time of the floor plan is different from the arrangement position actually specified, and the wiring between the external terminal and the block having the external terminal I / F circuit may be extended. is there. This example will be described with reference to FIG.
- FIG. 35A shows a configuration example of a semiconductor integrated circuit.
- the internal block of the semiconductor integrated circuit shown in FIG. 35A is composed of five functional blocks, block A, block B, block C, block D, and block E. Although not shown, each block is assumed to be provided with various components and wiring for connecting the components.
- each functional block, wiring, and each component are arranged based on the arrangement of the external terminals (110a, 110b) defined at the beginning. 140)) and the like are determined. However, it is assumed that the position of the external terminal is changed after that. Then, as shown in FIG. 35 (b), the wiring length of the wiring connecting the external terminal I / F circuit and the external terminal is longer in FIG. 35 (b) than in FIG. 35 (a). In some cases, the wiring length between the external terminal and the external terminal I / F circuit may deviate from the ideal. There is a case where a signal transmission delay occurs due to a long wiring distance, and a signal is not input at a timing that should be input.
- Non-Patent Document 1 discloses that a part of layout design is executed at the front-end design stage.
- the present invention has been made in view of the above problems, and is produced according to an integrated circuit manufacturing method using a layout design method capable of suppressing cost even if the position of an external terminal is not easily determined, and the integrated circuit manufacturing method.
- An object of the present invention is to provide a semiconductor integrated circuit.
- the present invention provides a layout design step for creating a mask pattern used for manufacturing an integrated circuit, and a creation step for creating the integrated circuit on a semiconductor material using the mask pattern;
- the layout design step includes a first step for determining the arrangement of functional blocks, and a plurality of external IOs (Input-Output) for connecting the integrated circuit and external devices.
- the third step of determining the arrangement of the bus, the arrangement of the bus connecting the functional block and the IO block, and the number of stages according to the wiring length of the bus It is characterized in that it comprises a fourth step of determining the placement of the timing adjustment circuit adjusting the timing of signals flowing on the bus.
- the IO block (referred to as an IO core) corresponding to the arrangement position of the external terminal is determined.
- the need for adjusting the timing of transfer between the IO block and the external terminal is eliminated, and the wiring connecting the IO block and the data transfer control circuit and the wiring length thereof are eliminated.
- the generated data transfer deviation can be eliminated by inserting a timing adjustment circuit.
- FIG. 3 is a flowchart showing a layout design method for the semiconductor integrated circuit according to the first embodiment.
- FIG. 3 is a diagram showing a layout transition of the semiconductor integrated circuit according to the first embodiment.
- FIG. 3 is a diagram showing a layout transition of the semiconductor integrated circuit according to the first embodiment.
- 10 is a flowchart showing a layout design method for a semiconductor integrated circuit according to Modification 1;
- FIG. 10 is a diagram showing a layout transition of a semiconductor integrated circuit according to Modification 1;
- 10 is a flowchart showing a layout design method for a semiconductor integrated circuit according to Modification 2;
- FIG. 10 is a diagram illustrating a layout transition of a semiconductor integrated circuit according to Modification 2.
- FIG. 10 is a diagram illustrating a layout transition of a semiconductor integrated circuit according to Modification 2.
- FIG. 4 is a functional block diagram showing a functional configuration of a semiconductor integrated circuit according to a second embodiment.
- FIG. 6 is a functional block diagram showing a configuration of a slice group 124 according to Embodiment 2.
- FIG. 6 is a functional block diagram illustrating a configuration of a slice group 125 according to Embodiment 2.
- FIG. 6 is a functional block diagram showing a configuration of an arbiter according to Embodiment 2.
- FIG. FIG. 10 is a diagram illustrating an information transfer flow between a DMAC and an external terminal I / F circuit according to the second embodiment.
- 10 is a flowchart showing data transfer control of channel A according to the second embodiment.
- 10 is a flowchart showing data transfer control of an external terminal I / F circuit 130a according to the second embodiment.
- FIG. 10 is a flowchart showing data transfer control of channel B according to the second embodiment.
- 10 is a flowchart showing data transfer control of the external terminal I / F circuit 130b according to the second embodiment.
- 10 is a timing chart showing an example of data transfer in the semiconductor integrated circuit according to the second embodiment.
- 10 is a timing chart showing an example of data transfer in the semiconductor integrated circuit according to the second embodiment.
- 10 is a timing chart showing an example of data transfer in the semiconductor integrated circuit according to the second embodiment.
- 10 is a timing chart showing an example of data transfer in the semiconductor integrated circuit according to the second embodiment.
- FIG. 10 is a functional block diagram showing a configuration example of a semiconductor integrated circuit 300a when a shared bus corresponding to a data length according to the third embodiment is provided.
- FIG. 10 is a functional block diagram showing a configuration example of a semiconductor integrated circuit 300a when a shared bus corresponding to a data length according to the third embodiment is provided.
- 10 is a functional block diagram showing a configuration example of a semiconductor integrated circuit 300b when a shared bus corresponding to a data length according to the third embodiment is provided.
- 14 is a timing chart illustrating an example of data transfer in the semiconductor integrated circuit 300a according to the third embodiment.
- 14 is a timing chart illustrating an example of data transfer in the semiconductor integrated circuit 300b according to the third embodiment.
- 14 is a timing chart illustrating an example of data transfer in the semiconductor integrated circuit 300b according to the third embodiment.
- It is a figure which shows another example of the layout of a semiconductor integrated circuit.
- 10 is a flowchart showing a layout design method for a semiconductor integrated circuit according to a fourth embodiment.
- FIG. 6 is a diagram illustrating a configuration example of a semiconductor integrated circuit according to a fourth embodiment.
- FIG. 5 is a diagram showing a configuration example in which a new data transfer path is added to the semiconductor integrated circuit 400.
- FIG. 5 is a diagram showing a configuration example in which a new data transfer path is added to the semiconductor integrated circuit 400.
- FIG. 5 is a diagram showing a configuration example in which one data transfer path is deleted from a semiconductor integrated circuit 400.
- FIG. It is a figure which shows the structural example of the semiconductor integrated circuit to which each block was connected by the daisy chain. It is a figure which shows the structural example of the semiconductor integrated circuit to which each block was connected by the daisy chain. It is a figure for demonstrating the conventional layout design method.
- the arrangement of functional blocks including a data transfer control circuit is determined (step S101).
- the functional block is determined according to the specifications required for the semiconductor integrated circuit, and the data transfer control circuit has a function of executing data transfer with a circuit or device to which the designed semiconductor integrated circuit is connected. Yes, for example, DMAC (Direct Memory Access Controller). That is, the data transfer control circuit is a circuit having a data transfer master function.
- DMAC Direct Memory Access Controller
- the arrangement of the external terminals is determined in the layout of the semiconductor integrated circuit according to the specifications (step S102).
- the arrangement of the plurality of IO blocks corresponding to the plurality of external terminals is determined (step S103). Specifically, for each determined external terminal arrangement position, the IO block arrangement is determined in the vicinity of the external terminal arrangement position so as to correspond to each external terminal. That is, at least one IO block is arranged for one external terminal. In the vicinity of the external terminal, in the data transfer by the wiring between the external terminal and the IO block, it is necessary to adjust the timing, that is, to correct a delay that may be caused by a signal flowing between the external terminal and the IO block. Within a certain distance.
- the timing adjustment circuit has a function of retiming the wiring delay of the signal line.
- a flip-flop or a latch is used as the timing adjustment circuit.
- the retiming refers to outputting a signal in which an input signal is synchronized with an operation clock cycle used when the semiconductor integrated circuit operates.
- the signal flowing on the bus is individually delayed from the period indicated by the operation clock of the semiconductor integrated circuit (in other words, In other words, the phase is shifted), that is, the phase of the clock is shifted between a plurality of signals while flowing on the bus, and thus the semiconductor integrated circuit may not operate normally. Therefore, it is necessary to correct the deviation, and the timing adjustment circuit corrects this deviation.
- the operation clock wiring and the like are not described as being provided.
- the semiconductor integrated circuit may be configured to include a crystal oscillator or the like that generates the operation clock, or the operation clock may be supplied from the outside of the semiconductor integrated circuit.
- the layout design method according to the flowchart shown in FIG. 1A can be modified as shown in FIG. That is, the determination of the functional block arrangement in step S101, the external terminal arrangement in steps S102 and S103, and the accompanying IO block arrangement determination may be performed in parallel.
- the data transfer control circuit may be designed in a layout on the premise that the data transfer control circuit is included in each of a plurality of IO blocks or arranged in a form corresponding to each IO block.
- the arrangement of the internal circuit 140 as a data transfer control circuit and the functional blocks is determined.
- the arrangement is determined according to the arrangement area of the components and the wiring connecting the components determined based on the required specifications of each functional block.
- a gap is left so that an IO block or a bus connecting the IO block and the internal circuit 140 can be arranged.
- the IO block is assumed to be included in one of the functional blocks (blocks A to E) and laid out.
- the determined position is set as an external terminal arrangement position, for example, as shown in external terminals 110a and 110b in FIG. To decide.
- an arrangement position of the external terminal I / F circuit as an IO block is determined in the vicinity of each determined external terminal position, for example, as shown in FIG. That is, the arrangement position of the external terminal I / F circuit 110a corresponding to the vicinity of the arrangement position of the external terminal 110a is determined, and the arrangement position of the external terminal I / F circuit 110b corresponding to the vicinity of the arrangement position of the external terminal 110b is determined. To do.
- FIG. 3B shows the arrangement positions of the bus 124a connecting the internal circuit 140 and the external terminal I / F circuit 130a and the bus 124b connecting the internal circuit 140 and the external terminal I / F circuit 130b.
- the internal circuit 140 and the external terminal I / F circuits 110a and 110b are described as being directly connected, but in practice, the parts of each block are sewn together.
- the wiring position is determined.
- the number of slices and the arrangement position of the timing adjustment circuit are determined according to the bus wiring length determined by the determined bus wiring position. That is, as shown in FIG. 3B, the arrangement positions of the slices 125a and 125b are determined according to the wiring length of the bus 124a, and the slice 125c is determined according to the wiring length of the bus 124b.
- the internal circuit, the external terminal I / F circuit, and the slice are shown large for easy viewing of the drawings, but in actuality, the area required for the arrangement of each component is shown. Is not so big.
- the requested external An external terminal is arranged at the terminal position, and an IO block is arranged in the vicinity thereof.
- the IO block and the data transfer control circuit are connected with a bus and inserting the number of timing adjustment circuits corresponding to the wiring length of the bus into the bus, the timing adjustment between signals is performed and the circuit operates normally.
- a semiconductor integrated circuit can be created.
- the layout design of the semiconductor integrated circuit can be more flexibly performed and the design cost of the layout design can be suppressed without causing a situation such as a change of the floor plan due to the change of the external terminal position.
- the layout design method shown in the first embodiment the layout is determined so as to provide a bus for connecting each external terminal I / F circuit and the internal circuit.
- this configuration has a problem that the number of buses corresponding to the number of external terminal I / F circuits must be wired, and the area of the semiconductor integrated circuit is increased accordingly.
- the difference of the first modification from the first embodiment is that the bus is not provided according to each external terminal I / F circuit but connected by a shared bus.
- step S4A the difference from the flowchart shown in FIG. 1 is processing after step S403. Since the processes in steps S401 and S402 and steps S101 and S102 are common, the description thereof is omitted here.
- the arrangement of the external terminal I / F circuit as a plurality of IO blocks is determined, and all the external terminals are set according to the arrangement position of the arranged external terminal I / F circuit.
- the arrangement of the shared bus is determined so as to be as close as possible to the I / F circuit.
- the arrangement position of the wiring connected to the shared bus from the internal circuit as the data transfer control circuit is determined so that the wiring is as short as possible.
- the arrangement position of the slice as the timing adjustment circuit on the shared bus is determined (step S403).
- connection position of each of the plurality of channels and the external terminal I / F circuits as the plurality of IO blocks to the shared bus is determined, and the layout position of the wiring to the shared bus is determined (step S404).
- the layout design method according to the flowchart shown in FIG. 4A can be modified as shown in FIG. 4B. That is, the determination of the functional block layout in step S401, the external terminal layout in steps S402 and S403, the IO block layout, the shared bus layout, and the timing adjustment circuit layout are determined in parallel. May be processed.
- the data transfer control circuit may not necessarily be included in the functional block.
- the data transfer control circuit may be designed in a layout on the premise that the data transfer control circuit is included in each of a plurality of IO blocks or arranged in a form corresponding to each IO block.
- 4A, 4 ⁇ / b> B, and 5 ⁇ / b> B describe an example in which a functional block and a plurality of IO blocks are connected in a bus topology, the functional block and the plurality of IO blocks are connected. They may be connected in a daisy chain topology. Whether to connect using a bus topology or a daisy chain topology is determined by design specifications, and a layout design is made according to the use.
- the layout shown in FIG. 2B can be obtained through the processing in step S401 and step S402.
- the steps so far are as described in the first embodiment.
- the arranged external terminals are displayed.
- the arrangement of the shared bus 124 for connection is determined.
- the connection position and wiring position from the internal circuit 140 to the shared bus 124 are determined.
- the arrangement positions of the slices 125a, 125b, and 125c, which are timing adjustment circuits, are determined according to the distance from the internal circuit 140. That is, a slice is arranged every time a certain distance is left from the internal circuit 140.
- the connection position from the IO block to the shared bus is determined as shown in FIG. 5B so that the determined number of stages is inserted between the IO block and the internal block.
- the position via the slices 125a and 125b is set between the external terminal I / F circuit 130a and the internal circuit 140 so that two stages of slices are inserted.
- the connection position from the / F circuit 130a is determined as shown in FIG. 5B so that the determined number of stages is inserted between the IO block and the internal block.
- a position passing through the slice 125b is set as a connection position from the external terminal I / F circuit 130b so that one stage number of slices is inserted between the external terminal I / F circuit 130b and the internal circuit 140.
- the difference between the second modification and the first modification is in the determination timing of the shared bus arrangement position. That is, the determination timing of the arrangement of the shared bus in the modified example 2 is determined before the arrangement position of the external terminal is determined.
- the size of the semiconductor integrated circuit is determined according to the required specifications of the semiconductor integrated circuit to be designed, and the arrangement of the shared bus is determined. Then, the arrangement position of the timing adjustment circuit for adjusting the timing of the signal flowing on the shared bus is determined (step S601).
- the shared bus is arranged so that it can be connected to any internal circuit and as close as possible to the peripheral edge where the external terminals are arranged. Further, since the timing adjustment circuit should be arranged according to the wiring distance from each internal circuit to the external terminal, in this case, the timing adjustment circuit is arranged on the shared bus at regular distance intervals.
- step S602 The arrangement position of each functional block including the data transfer control circuit is determined according to the required specification of the semiconductor integrated circuit to be designed next (step S602). In the case of FIG. 6A, the processing in step S601 and step S602 may be performed before and after.
- the external terminal layout is determined according to the required specifications of the semiconductor integrated circuit. Is the position of the external terminal (step S603).
- step S604 the arrangement of the plurality of IO blocks corresponding to each external terminal is determined as described in the first embodiment.
- connection position of each of the plurality of IO blocks to the shared bus is determined (step S605).
- the connection position is determined so that the wiring length from each IO block to the shared bus is as short as possible.
- the layout design method according to the flowchart shown in FIG. 6A can be modified as shown in FIG. 6B. That is, the determination of the functional block arrangement in step S601, the external terminal arrangement in steps S602 and S603, the accompanying IO block arrangement, the shared bus arrangement and the timing adjustment circuit arrangement, and the sharing in step S604.
- the arrangement of the bus and the timing adjustment circuit may be processed in parallel.
- FIG. 6A and FIG. 6B show examples in which the data transfer control circuit is included in the functional block, the data transfer control circuit is not necessarily included in the functional block.
- the data transfer control circuit may be designed in a layout on the premise that the data transfer control circuit is included in each of a plurality of IO blocks or arranged in a form corresponding to each IO block.
- FIGS. 6 (a), 6 (b), and 8 show an example in which a functional block and a plurality of IO blocks are connected in a bus topology, the functional block and the plurality of IO blocks are daisy chain type. It may be connected in the topology. Whether to connect in a bus topology or in a daisy chain topology is determined by the design specifications, and a layout design is made according to the specifications.
- the block arrangement is determined and the arrangement position of the shared bus 124 is determined.
- the arrangement positions of the external terminals 110a and 110b are determined in accordance with the external terminal positions determined as shown in FIG. 7B.
- the arrangement positions of the external terminals 110a and 110b are determined, the arrangement positions of the external terminal I / F circuits corresponding to the external terminals are determined as shown in FIG.
- connection position to the shared bus 124 is determined in accordance with the distance from the determined position of the external terminal I / F circuit to the internal circuit 140, and the connection from each external terminal I / F circuit to the shared bus 124 is determined.
- the layout position of the shared terminal is also determined before the layout position of the external terminal is determined. Therefore, the design after the layout position of the external terminal is determined. The number of man-hours can be made smaller than that shown in the first modification.
- Embodiment 2> In the second embodiment, the configuration and operation of a semiconductor integrated circuit created by performing a layout design using the methods shown in the respective modifications will be described.
- FIG. 9 is a functional block diagram showing a functional configuration of the semiconductor integrated circuit 100.
- the semiconductor integrated circuit 100 includes external terminals 110a and 110b, slice buses 121, 122, and 123, slice groups 124 and 125, I / F circuits 130a and 130b, DMAC (Direct Memory Memory Access Controller). ) 140, arbitrators 151 and 152, and a buffer 160.
- DMAC Direct Memory Memory Access Controller
- the external terminals 110a and 110b are terminals that are connected to the corresponding I / F circuits 130a and 130b, respectively, for connection to a circuit or the like on a device on which the semiconductor integrated circuit 100 is mounted.
- Each external terminal is composed of one or more terminals.
- the slice buses 121, 122, and 123 are signal lines for transmitting signals between the slice group 124 and the DMAC 140 and between the slice group 124 and the slice group 125.
- the slice groups 124 and 125 have a function of executing timing adjustment of input signals.
- each slice performs adjustment for a predetermined fixed-length time width.
- the slice groups 124 and 125 are realized by flip-flops or latches, and have a function of retiming an input signal here.
- retiming refers to outputting a signal in which an input signal is synchronized with an operation clock cycle used when the semiconductor integrated circuit operates.
- the operation clock wiring and the like are not described as being provided.
- the semiconductor integrated circuit may be configured to include a crystal oscillator or the like for generating the operation clock, or may be configured to be supplied from the outside of the semiconductor integrated circuit.
- a shared bus is formed including the slice buses 121, 122, 123 and the slice groups 124, 125.
- the I / F circuits 130a and 130b have a function of relaying an external signal to the DMAC 140, and a function of transmitting a signal transferred from the DMAC 140 to an external device connected thereto.
- the DMAC 140 has a function of accessing the buffer 160 and reading data or writing data.
- the DMAC 140 has a function of executing communication with a circuit or device connected to the semiconductor integrated circuit 100.
- the DMAC 140 has a function of executing communication on a plurality of channels that perform data transfer to individual paths, and includes a channel 141a and a channel 141b.
- the channel 141a performs data transfer from the buffer 160 to the external terminal I / F circuit 130a
- the channel 141b performs data transfer from the external terminal I / F circuit 130b to the buffer 160. Therefore, in the semiconductor integrated circuit 100, the channel 141a is used to output information from the buffer 160 to the outside of the semiconductor integrated circuit 100 via the shared bus, the external terminal I / F circuit 130a and the external terminal 110a, and the channel 141b is used. Then, information is input from the outside of the semiconductor integrated circuit 100 to the buffer 160 via the external terminal 110b, the external terminal I / F circuit 130b, and the shared bus.
- Arbitrators 151 and 152 have a function of arbitrating which of the signals input to the shared bus is to be transferred.
- the arbiter 151 performs arbitration of the downlink signal from the DMAC 140 to the I / F circuit, and the arbiter 152 arbitrates the uplink signal from the I / F circuit to the DMAC 140.
- Information transfer between the channel 141a and the external terminal I / F circuit 130a hereinafter referred to as information transfer A
- information transfer B information transfer between the channel 141b and the external terminal I / F circuit 130b
- the buffer 160 is a memory having a function of temporarily storing data transferred from the DMAC 140, the semiconductor integrated circuit 100, or the like.
- the buffer 160 has a function of holding data written from the DMAC 140 and a function of outputting data requested from the DMAC 140 among the held data.
- the shared bus 1200 includes five buses: a command bus, a downlink data bus, a downlink information bus, an uplink data bus, and an uplink information bus.
- the command bus is used for sending and receiving commands
- the downlink data bus is used for sending and receiving downlink data
- the downlink information bus is used for sending and receiving downlink information
- the uplink is used for sending and receiving uplink data.
- a data bus is used, and an uplink information bus is used for sending and receiving uplink information.
- Signals constituting the command bus, the downlink data bus, and the downlink information bus transmit information from the DMAC 140 toward the external terminal I / F circuit 130a, and signals constituting the uplink data bus and the uplink information bus Transmits information from the external terminal I / F circuit 130 a to the DMAC 140.
- the command is information indicating an attribute of data transfer sent from the DMAC 140 to the external terminal I / F circuit 130a.
- the information transmitted and received by the command includes information indicating in which direction the data transfer is the downlink data / uplink data, the size of the data to be transferred, and the transfer address.
- Downlink data is data and data synchronization information sent from the DMAC 140 to the external terminal I / F circuit 130a
- uplink data is data and data synchronization information sent from the external terminal I / F circuit 130a to the DMAC 140.
- the data synchronization information is information indicating the attribute of data transmitted in the same cycle as the data, and specifically includes information such as byte enable of data and final data transfer.
- Information is information exchanged between the DMAC 140 and the external terminal I / F circuit 130a asynchronously with data transfer.
- the uplink information for example, information including a transfer start request is transmitted from the external terminal I / F circuit 130a to the channel 141a, and as the downlink information, the external terminal I / F circuit 130a is transmitted from the channel 141a.
- information including data writing completion information to the buffer 160 is transmitted.
- write ready and read ready information is transmitted.
- Write ready is information indicating that the external terminal I / F circuit 130a can accept a command for transferring downlink data
- read ready is information indicating that the external terminal I / F circuit 130a performs uplink data transfer.
- the write ready signal and the read ready signal are connected to peer to peer between the external terminal I / F circuit 130a and the channel 141a and between the external terminal I / F circuit 130b and the channel 141b. Signal.
- the DMAC 140 and the external terminal I / F circuit 130a are connected by a shared bus, and the shared bus is sliced by a slice group 124.
- the DMAC 140 and the slice group 124 are connected by a slice bus 121.
- the slice bus 121 includes a command bus 1211, a downlink data bus 1212, a downlink information bus 1213, an uplink data bus 1214, and an uplink information bus 1215. Is done.
- the slice group 124 and the external terminal I / F circuit 130a are connected by a slice bus 122.
- the slice bus 122 is connected to a command bus 1221, a downlink data bus 1222, a downlink information bus 1223, and an uplink data bus 1224.
- a link information bus 1225 is used.
- the slice group 124 includes a slice 1241 for slicing the command bus 1211 and the command bus 1221, a slice 1242 for slicing the downlink data bus 1212 and the downlink data bus 1222, a downlink information bus 1213, and downlink information.
- the command is output from the DMAC 140 and sent to the external terminal I / F circuit 130a via the command bus 1211, the slice 1241, and the command bus 1221.
- the downlink data is output from the DMAC 140 and sent to the external terminal I / F circuit 130 a via the downlink data bus 1212, the slice 1242, and the downlink data bus 1222.
- the downlink information is output from the DMAC 140 and sent to the external terminal I / F circuit 130a via the downlink information bus 1213, the slice 1243, and the downlink information bus 1223.
- Uplink data is output from the external terminal I / F circuit 130a and sent to the DMAC 140 via the uplink data bus 1224, the slice 1244, and the uplink data bus 1214.
- the uplink information is output from the external terminal I / F circuit 130 a and sent to the DMAC 140 via the uplink information bus 1225, the slice 1245, and the uplink information bus 1215.
- a write ready signal and a read ready signal are sent from the external terminal I / F circuit 130a to the DMAC 140, and are sliced by a slice 1246 and a slice 1247, respectively, like the shared bus.
- the write ready signal and the read ready signal are also sent from the external terminal I / F circuit 130b to the DMAC 140, and the slice group 124 is sent from the external terminal I / F circuit 130b. It also includes a slice of the write ready signal and the read ready signal to be sent.
- the arbiter 151 is arranged in the vicinity of the DMAC 140, and the wiring between the DMAC 140 and the arbiter 151 is not sliced.
- Each of the channel 141a and the channel 141b is directly connected to the arbiter 151, and a bus right request signal group is sent from the channel 141a and the channel 141b to the arbiter 151, and the channel 141a and the channel 141b are respectively transmitted A bus right approval signal group is sent to.
- the bus request signal group sent from the channel 141a and the channel 141b to the arbiter 151 is all or a subset of the command bus request signal, the downlink data bus request signal, and the downlink information bus request signal. Composed.
- the bus right approval signal sent from the arbiter 151 to the channel 141a and the channel 141b is composed of all or a subset of the command bus right approval signal, the downlink data bus right approval signal, and the downlink information bus right approval signal. Is done.
- the channel 141a uses the command bus
- the channel 141a sends a command bus right request signal to the arbiter 151, and in response, the arbiter 151 returns a command bus right approval signal to the channel 141a.
- the channel 141a uses a downlink data bus
- the channel 141a sends a downlink data bus right request signal to the arbiter 151, and in response thereto, the arbiter 151 sends a downlink data bus right approval signal to the channel 141a. return.
- the channel 141a uses the downlink information bus
- the channel 141a sends a downlink information bus right request signal to the arbiter 151, and in response to this, the arbiter 151 sends a downlink information bus right approval signal to the channel 141a. return.
- the channel 141b sends a downlink information bus right request signal to the arbiter 151, and in response to this, the arbiter 151 sends a downlink information bus right approval signal to the channel 141a.
- the external terminal I / F circuit 130b is disposed far from the external terminal I / F circuit 130a, and the arbiter 152 is disposed in the vicinity of the external terminal I / F circuit 130b. For this reason, the wiring between the external terminal I / F circuit 130a and the arbiter 152 is sliced by the slice group 1250, while the wiring between the external terminal I / F circuit 130b and the arbiter 152 is sliced. Absent.
- the slice group 1250 includes slices 1251 to 1255 (corresponding to the slices 1241 to 1245 that are constituent elements of the slice group 1240) for slicing the shared bus signal, and the external terminal I / A slice 1256 and a slice 1257 for slicing a write ready signal and a read ready signal sent from the F circuit 130b to the DMAC 140, and a slice 1258 and a slice for slicing a bus right request signal group and a bus right approval signal group 1259.
- a bus right request signal group is sent from the external terminal I / F circuit 130b to the arbiter 152, and a bus right approval signal group is sent from the arbiter 152 to the external terminal I / F circuit 130b.
- a bus request signal group is sent from the external terminal I / F circuit 130a to the arbiter 152 via the slice 1258, and from the arbiter 152 to the external terminal I / F circuit 130a via the slice 1259.
- the bus right approval signal group is sent.
- the bus request signal group sent from the external terminal I / F circuit 130a and the external terminal I / F circuit 130b to the arbiter 152 includes all of the uplink data bus request signal and the uplink information bus request signal. It consists of a subset of them.
- the bus right approval signal sent from the arbiter 152 to the external terminal I / F circuit 130a and the external terminal I / F circuit 130b is all or all of the uplink data bus right approval signal and the uplink information bus right approval signal. It consists of a subset of
- the external terminal I / F circuit 130a uses the uplink data bus
- the external terminal I / F circuit 130a sends an uplink data bus right request signal to the arbiter 152, and the arbiter 152 receives the request to receive the request.
- An uplink data bus right approval signal is returned to the I / F circuit 130a.
- the external terminal I / F circuit 130a uses an uplink information bus
- the external terminal I / F circuit 130a sends an uplink information bus right request signal to the arbiter 152.
- An uplink information bus right approval signal is returned to the I / F circuit 130a.
- FIG. 12 shows the configuration of the arbiter.
- FIG. 12A shows the configuration of the arbiter 151.
- the arbiter 151 includes a command bus right arbitration circuit 1511, a downlink data bus right arbitration circuit 1512, and a downlink information bus right arbitration circuit 1513.
- the command bus right arbitration circuit 1511 receives a command bus right request signal from each of the channel 141a and the channel 141b, and returns a command bus right approval signal to each of the channel 141a and the channel 141b.
- the downlink data bus right arbitration circuit 1512 receives a downlink data bus right request signal from each of the channel 141a and the channel 141b, and returns a downlink data bus right approval signal to each of the channel 141a and the channel 141b.
- the downlink information bus right arbitration circuit 1513 receives a downlink information bus right request signal from each of the channel 141a and the channel 141b, and returns a downlink information bus right approval signal to each of the channel 141a and the channel 141b.
- FIG. 12B is a diagram showing the configuration of the arbiter 152.
- the arbiter 152 includes an uplink data bus right arbitration circuit 1522 and an uplink information bus right arbitration circuit 1523.
- the uplink data bus right arbitration circuit 1522 receives an uplink data bus right request signal from each of the external terminal I / F circuit 130a and the channel 130b, and receives an uplink data bus right for each of the external terminal I / F circuit 130a and the channel 141b. Returns an approval signal.
- the uplink information bus right arbitration circuit 1523 receives an uplink information bus right request signal from each of the external terminal I / F circuit 130a and the channel 130b, and receives an uplink information bus to each of the external terminal I / F circuit 130a and the channel 141b. Returns the right approval signal.
- the type of shared bus (command, downlink data, downlink information) It is possible to use the shared bus for the number of cycles determined every time.
- the number of cycles may be an individual value for each shared bus use circuit (channel 141a, channel 141b).
- the type of the shared bus (uplink data
- the shared bus can be used for the number of cycles determined for each uplink information).
- the number of cycles may be an individual value for each circuit using the shared bus (external terminal I / F circuit 130a, external terminal I / F circuit 130b).
- FIG. 13A shows an information transfer flow in the case of performing data transfer from the channel 141a to the external terminal I / F circuit 130a.
- a transfer start request including transfer size information is sent from the external terminal I / F circuit 130a to the channel 141a, and in response to this, the channel 141a starts data transfer.
- the channel 141a does not transfer the data for the designated transfer size all at once, but divides the data into a predetermined size and transfers the data in multiple times.
- a command is sent from the channel 141a to the external terminal I / F circuit 130a, and then downlink data is sent from the channel 141a to the external terminal I / F circuit 130a. This is repeated until the data transfer for the designated size is completed. However, if the transfer size specified when the transfer start request is made is smaller than the predetermined size, the data transfer is completed once.
- FIG. 13 (a) is a flow diagram showing the transfer start request exchange and the initial command and data exchange at the start of data transfer. Hereinafter, the flow illustrated in FIG. 13A will be described in detail.
- the uplink information bus right request is sent to the arbiter 152, and the arbiter 152 accordingly responds to the external terminal I / F.
- the uplink information bus right approval is returned to the circuit 130a.
- the external terminal I / F circuit 130a notifies the channel 141a of a transfer start request using the uplink information bus.
- the channel 141a that has received the transfer start request sends a command bus right request to the arbiter 151 in order to send a command to the external terminal I / F circuit 130a, and the arbiter 151 sends a command to the channel 141a accordingly.
- the bus right approval is returned.
- the channel 141a sends a command to the external terminal I / F circuit 130a using the command bus.
- the channel 141a that has finished sending the command sends a downlink data bus request to the arbiter 151 to send data to the external terminal I / F circuit 130a, and the arbiter 151 responds to the channel 141a accordingly.
- the downlink data bus right approval is returned. Receiving this, the channel 141a sends data to the external terminal I / F circuit 130a using the downlink data bus.
- FIG. 13B shows an information transfer flow when data transfer from the external terminal I / F circuit 130b to the channel 141b is performed.
- a transfer start request including transfer size information is sent from the external terminal I / F circuit 130b to the channel 141b, and in response to this, the channel 141b starts data transfer. To do.
- the channel 141b does not transfer data for the designated transfer size at a time, but divides the data into a predetermined size and transfers the data in multiple times.
- a command is sent from the channel 141b to the external terminal I / F circuit 130b, and then uplink data is sent from the external terminal I / F circuit 130b to the channel 141b. This is repeated until the data transfer for the designated size is completed.
- the transfer size specified when the transfer start request is made is smaller than the predetermined size, the data transfer is completed once. Thereafter, after all data transfer is completed, a data transfer completion notification is sent from the channel 141b to the external terminal I / F circuit 130b.
- FIG. 13B shows an example in which data transfer for a specified size is completed with a single data transfer. After the completion of a single command and data transfer, a data transfer completion notification is sent. ing. Hereinafter, the flow illustrated in FIG. 13B will be described in detail.
- an uplink information bus right request is sent to the arbiter 152, and the arbiter 152 accordingly responds to the external terminal I / F.
- the uplink information bus right approval is returned to the circuit 130b.
- the external terminal I / F circuit 130b receiving it notifies the channel 141b of the transfer start request using the uplink information bus.
- the channel 141b that has received the transfer start request sends a command bus right request to the arbiter 151 to send a command to the external terminal I / F circuit 130b, and the arbiter 151 sends a command to the channel 141b accordingly.
- the bus right approval is returned.
- the channel 141b sends a command to the external terminal I / F circuit 130b using the command bus.
- the external terminal I / F circuit 130b sends an uplink data bus right request to the arbiter 152 in order to send data to the channel 141b, and the arbiter 152 responds accordingly to the external terminal I / F.
- the uplink data bus right approval is returned to the circuit 130b.
- the external terminal I / F circuit 130b receiving it sends data to the channel 141b using the uplink data bus.
- the channel 141b that has received the data confirms the completion of data writing to the buffer 160, and then issues a downlink information bus request to the arbiter 151 in order to notify the external terminal I / F circuit 130b of the completion of data transfer.
- the arbiter 151 returns a downlink information bus right approval to the channel 141b.
- the channel 141b notifies the external terminal I / F circuit 130b of the completion of data transfer using the downlink information bus.
- FIG. 14 is a flowchart showing data transfer control of the channel 141a.
- the channel 141a is activated in response to a transfer start request from the external terminal I / F circuit 130a.
- the activated channel 141a first checks the write ready signal sent from the external terminal I / F circuit 130a. Wait until the external terminal I / F circuit 130a asserts write ready (NO in step S1401), and requests the command bus right when write ready is asserted (YES in step S1401) (step S1401). When the command bus right is requested, the process waits until the command bus right is approved (NO in step S1403). When the command bus right is approved (YES in step S1403), the command is transmitted (step S1404).
- Step S1405 After the command is transmitted, it waits until data to be sent to the external terminal I / F circuit 130a is prepared (NO in step S1405), and when the data is prepared (YES in step S1405), a downlink data bus right is requested. (Step S1406).
- the downlink data bus right When the downlink data bus right is requested, it waits until the downlink data bus right is approved (NO in step S1407), and when the downlink data bus right is approved (YES in step S1407), the downlink data is transmitted (step S1407). S1409).
- step S1409 If the data transfer for the size specified at the time of the transfer start request is not completed, the process returns to S1401 (NO in step S1409), and the data transfer is performed again. If the data transfer for the specified size has been completed (YES in step S1409), the channel 141a stops and does not operate until the next transfer start request is received.
- FIG. 15 is a flowchart showing data transfer control of the external terminal I / F circuit 130a.
- the external terminal I / F circuit 130 a is activated by a processor (not shown) in the semiconductor integrated circuit 100.
- the activated external terminal I / F circuit 130a requests an uplink information bus right to notify the channel 141a of a transfer start request (step S1501).
- the uplink information bus right is requested, it waits until the uplink information bus right is approved (NO in step S1502).
- the uplink information bus right is approved (YES in step S1502), the uplink information bus is used. Then, a transfer start request is transmitted (step S1503).
- step S1504 it waits until the external terminal I / F circuit 130a is ready for data reception (NO in step S1504), and when ready for data reception is completed, write ready is asserted (step S1505). Thereafter, a command sent from the channel 141a is received (step S1506), and then downlink data is received (step S1507).
- step S1508 If the data transfer of the size specified at the time of the transfer start request has not been completed, the process returns to S1501 (NO in step S1508) and the data transfer is performed again.
- the external terminal I / F circuit 130a stops and does not operate until the next activation instruction is received.
- FIG. 16 is a flowchart showing data transfer control of the channel 141b.
- the channel 141b is activated in response to a transfer start request from the external terminal I / F circuit 130b.
- the activated channel 141b first waits until the data reception of the channel 141b is ready (NO in step S1601), and when ready (YES in step S1601), then it is sent from the external terminal I / F circuit 130b. Check the read ready signal. Wait until the external terminal I / F circuit 130b asserts read ready (NO in step S1602). When read ready is asserted (YES in step S1602), a command bus right is requested (YES in step S1603). When the command bus right is requested, the process waits until the command bus right is approved (NO in step S1604). When the command bus right is approved (YES in step S1604), the command is transmitted (step S1605). Thereafter, the data sent from the external terminal I / F circuit 130b is received and written to the buffer 160 (step S1606).
- step S1607 If the data transfer for the size specified at the time of the transfer start request is not completed (NO in step S1607), the process returns to step S1601, and the data transfer is performed again. If the data transfer for the designated size has been completed, an uplink information bus right is requested in order to notify the completion of the data transfer (step S1608). When the uplink information bus right is requested, the process waits until the uplink information bus right is approved (NO in step S1609). When the uplink information bus right is approved, the uplink information bus is used to notify the completion of data transfer. (Step S1610). Thereafter, the channel 141b stops and does not operate until the next transfer start request is received.
- FIG. 17 is a flowchart showing data transfer control of the external terminal I / F circuit 130b.
- the external terminal I / F circuit 130b is activated by a processor (not shown) in the semiconductor integrated circuit 100 or the like.
- the activated external terminal I / F circuit 130b requests an uplink information bus right in order to notify the channel 141b of a transfer start request (step S1701).
- the uplink information bus right is requested, it waits until the uplink information bus is approved (NO in step S1702).
- the uplink information bus is approved (YES in step S1702)
- the uplink information bus right is used.
- a transfer start request is transmitted (step S1703).
- step S1704 the external terminal I / F circuit 130b asserts read ready (step S1704). Thereafter, the command sent from the channel 141b is received (step S1705). After receiving the command, it waits until the data to be sent to the channel 141b is prepared (NO in step S1706). When the data is prepared (YES in step S1706), an uplink data bus right is requested (step S1707). When the uplink data bus right is requested, the process waits until the uplink data bus right is approved (NO in step S1708). When the uplink data bus right is approved (YES in step S1708), data is transmitted (step S1709). .
- step S1710 If the data transfer for the size specified at the time of the transfer start request is not completed (NO in step S1710), the process returns to step S1704, and the data transfer is performed again. If the data transfer for the specified size has been completed (YES in step S1710), the external terminal I / F circuit 130b stops after receiving the data transfer completion notification (step S1711), and the next start instruction Will not work until received.
- FIG. 18 is a diagram showing the assignment of the bus right of the shared bus that conveys information from the DMAC 140 to the external terminal I / F circuit groups 130a and 130b and the usage status of the shared bus.
- the channel 141a and the channel 141b use the command bus
- the channel 141a and the channel 141b both use the shared bus for three cycles when the bus right is approved.
- the command bus right request signal from the channel 141a has arrived at the arbiter 151, and the arbiter 151 that has received it returns a command bus right approval to the channel 141a at the time T0.
- the command output from the channel 141a to the command bus of the slice bus 121 from the time T0 to the time T2 is delayed by one cycle when passing through the slice group 124, and the command bus of the slice bus 122 from the time T1 to the time T3. Is output.
- the command is acquired by the external terminal I / F circuit 130a.
- the command bus right request signal from the channel 141b has reached the arbiter 151, and the arbiter 151 that has received it returns a command bus right approval to the channel 141b at the time T3.
- the command output from the channel 141b to the command bus of the slice bus 121 between the time T3 and the time T5 is delayed by one cycle when passing through the slice group 124, and the command bus of the slice bus 122 from the time T4 to the time T6. Is output.
- the command output to the command bus of the slice bus 122 from time T4 to time T6 is delayed by one cycle when passing through the slice group 125, and is sent to the command bus of the slice bus 123 from time T5 to time T7. Is output.
- the command is acquired by the external terminal I / F circuit 130b.
- the command bus right from time T6 to time T8 and the usage status of the corresponding shared bus are the same as those from time T0 to time T2, and the command bus right from time T9 to time T11 and the usage status of the shared bus corresponding thereto. Is the same as that from time T3 to time T5.
- FIG. 19 is a diagram showing the assignment of the bus right of the shared bus that conveys information from the external terminal I / F circuit group 130 to the DMAC 140 and the usage status of the shared bus.
- the external terminal I / F circuit 130a and the external terminal I / F circuit 130b use the uplink information bus, and the external terminal I / F circuit 130a and the external terminal I / F circuit 130b obtain the bus right approval.
- three cycles of the shared bus are used together.
- the uplink information bus right request signal from the external terminal I / F circuit 130a Prior to time T0, the uplink information bus right request signal from the external terminal I / F circuit 130a has arrived at the arbiter 152, and the arbiter 152 having received it receives the signal from the external terminal I / F circuit 130a at the time T0.
- the uplink information bus right approval is returned.
- the slice bus 123 is not used from time T0 to time T2.
- the information output from the external terminal I / F circuit 130a to the uplink information bus of the slice bus 122 between time T1 and time T3 is delayed by one cycle when passing through the slice group 124, and from time T2 to time T4. It is output to the uplink information bus of the inter-slice bus 121.
- the information sent via the uplink information bus is acquired by the channel 141a.
- the uplink information bus right request signal from the external terminal I / F circuit 130b has arrived at the arbiter 152, and the arbiter 152 that has received it receives the signal from the external terminal I / F circuit 130b.
- the uplink information bus right approval is returned at time T3.
- the information output from the external terminal I / F circuit 130b to the uplink information bus of the slice bus 123 between time T3 and time T5 is delayed by one cycle when passing through the slice group 125, and from time T4 to time T6. It is output to the uplink information bus of the inter-slice bus 122.
- the information output to the uplink information bus of the slice bus 122 from time T4 to time T6 is delayed by one cycle when passing through the slice group 124, and the slice bus 121 is up from time T5 to time T7.
- the information sent via the uplink information bus is acquired by the channel 141b.
- the shared bus is fixed when the shared bus using circuit (channel 141a, channel 141b, external terminal I / F circuit 130a, or external terminal I / F circuit 130b) obtains the bus right approval.
- the usage period of the shared bus may be different for each shared bus usage circuit.
- FIG. 20 An example in which the shared bus usage period is different for each shared bus usage circuit will be described with reference to FIGS. 20 and 21.
- the channel 141a and the channel 141b use the command bus, and when the channel 141a gets the bus right approval, the shared bus is used for three cycles, and when the channel 141b gets the bus right approval, the shared bus is used.
- the example which uses 2 cycles is described.
- FIG. 20 shows an example in which the arbiter 151 does not know the usage period of the shared bus for each shared bus usage circuit, performs arbitration every maximum value (3 cycles) of the shared bus usage period, and returns a bus right approval. is doing.
- one cycle of the period (3 cycles) in which the channel 141b has the right to use the shared bus is an unused period.
- the channel 141b does not use the slice bus 121 at time T5 and time T11 when the channel 141b has the right to use the shared bus. Therefore, the slice bus 122 is not used at time T6 and time T12, and the slice bus 123 is not used at time T7 and time T13. For this reason, the use efficiency of a shared bus will fall.
- the arbitration device 151 may be provided with shared bus usage period information for each used circuit, and the arbitration timing may be changed according to the shared bus usage period for each used circuit.
- FIG. 21 shows an example in which the arbiter 151 has the shared bus usage period information for each used circuit, and changes the arbitration timing according to the shared bus usage period for each used circuit.
- the channel 141a and the channel 141b use the command bus
- the channel 141a uses the shared bus for 3 cycles when the bus right is approved
- the channel 141b receives the bus right approval.
- An example in which the shared bus is used for two cycles is described.
- Arbiter 151 performs arbitration at time T0, and arbitrator 151 returns a command bus right approval to channel 141a at time T0.
- the arbiter 151 holds the use period information (3 cycles) of the shared bus of the channel 141a, and performs the next arbitration at time T3 after 3 cycles.
- Arbiter 151 returns a command bus right approval to channel 141b at time T3.
- the arbiter 151 holds the use period information (two cycles) of the shared bus of the channel 141b, and performs the next arbitration at time T5 after two cycles.
- Arbiter 151 returns a command bus right approval to channel 141a at time T5.
- the arbiter 151 holds the use period information (3 cycles) of the shared bus of the channel 141a, and performs the next arbitration at time T8 after 3 cycles.
- the arbitrator 151 has the shared bus usage period information for each used circuit, and the timing of arbitration is changed according to the shared bus usage period for each used circuit, so that each shared bus used circuit is changed. Even when the period of use is different, it is possible to maintain high bus use efficiency.
- the semiconductor integrated circuit shown in the second embodiment is designed and created according to the above-described modification, and has a configuration that operates without any problem even if the determination of the external terminal position is delayed. realizable. That is, since the timing adjustment circuit is determined by determining the number of stages according to the position of the external terminal, a semiconductor integrated circuit can be realized with a simple configuration and taking into account delays between data transfers.
- ⁇ Embodiment 3> In the second embodiment, a case has been described in which when the external terminal I / F circuits 130a and 130b and the DMAC 140 perform data transfer, buses having different bus usage periods are mixed.
- bus right usage period here may be referred to as a burst length in one data transfer.
- FIG. 22 is a functional block diagram showing a configuration example of the semiconductor integrated circuit 200 when the shared bus is not divided.
- FIG. 23 is a functional block diagram showing a configuration example of the semiconductor integrated circuit 300 when the shared bus is divided.
- the configuration is basically the same as that of the semiconductor integrated circuit 100 shown in the second embodiment, so that the description is omitted with the buffer 160 and the like omitted.
- the DMAC 240 includes four channels of a channel 241a, a channel 241b, a channel 241c, and a channel 241d, and is connected to the external terminal I / F circuit group 230 through a shared bus.
- the channel 241a exchanges information with the external terminal I / F circuit 230a
- the channel 241b exchanges information with the external terminal I / F circuit 230b
- the channel 241c exchanges information with the external terminal I / F circuit 230c
- the channel 241d Exchanges information with the external terminal I / F circuit 230d.
- Each of the channel 241a, the channel 241b, the channel 241c, and the channel 241d sends a bus right request signal group to the arbiter 251, and the arbiter 251 has a bus right for each of the channel 241a, the channel 241b, the channel 241c, and the channel 241d. Send approval signals.
- Each of the external terminal I / F circuit 230a, the external terminal I / F circuit 230b, the external terminal I / F circuit 230c, and the external terminal I / F circuit 230d sends a bus right request signal group to the arbiter 252, 252 sends a bus right approval signal group to each of the external terminal I / F circuit 230a, the external terminal I / F circuit 230b, the external terminal I / F circuit 230c, and the external terminal I / F circuit 230d.
- the configuration of the bus right request signal group and the bus right approval signal group is the same as described with reference to FIG.
- the write ready signal and the read ready signal are connected via a slice between the channel for transmitting / receiving information and the external terminal I / F circuit as in FIG.
- the shared bus includes a slice group 224, a slice group 225, and a slice bus 221, a slice bus 222, and a slice bus 223 sliced by them.
- the DMA controller 251 is connected to the slice bus 221, the external terminal I / F circuit 230a and the external terminal I / F circuit 230c are connected to the slice bus 222, and the external terminal I / F circuit 230b and the external terminal I / F.
- the F circuit 230 d is connected to the slice bus 223.
- FIG. 24 is a diagram showing the assignment of the bus right of the shared bus that conveys information in the direction of 230 from the DMA controller 240 to the external terminal I / F circuit group and the usage status of the shared bus.
- the channel 241a, the channel 241b, the channel 241c, and the channel 241d use the command bus, and when the channel 241a and the channel 241b obtain the bus right approval, the shared bus is used for three cycles, and the channel 241c, An example is described in which the shared bus is used for two cycles when the channel 241d obtains the bus right approval.
- the arbiter 251 does not have the usage period information of the shared bus for each used circuit, and performs arbitration every fixed cycle (three cycles).
- the shared bus used by the channel 241a and the channel 241b during the shared bus usage period 3 and the shared bus used by the channel 241c and the channel 241d during the shared bus usage period 2 Buses may be implemented individually. This example will be described with reference to FIG. 23, FIG. 25, and FIG.
- FIG. 23 shows a configuration example when an individual shared bus is mounted.
- the configurations of the DMAC 340 and the external terminal I / F circuit groups 330a to 330d are substantially the same as those in FIG. However, unlike FIG. 22, two shared buses are provided, and an arbitrator is provided for each shared bus system.
- the channel 341a, the channel 341b, the external terminal I / F circuit 330a, and the external terminal I / F circuit 330b are configured by a slice bus 321a, a slice bus 322a, a slice bus 323a, a slice group 324a, and a slice group 325a.
- a channel 341c, a channel 341d, an external terminal I / F circuit 330c and an external terminal I / F circuit 330d are a slice bus 321b, a slice bus 322b, a slice bus 323b, a slice group 324b, and It is connected to the second shared bus constituted by the slice group 325b.
- Each of the channel 341a and the channel 341b sends a bus right request signal group to the arbiter 351a, and the arbiter 351a sends a bus right approval signal group to each of the channel 241a and the channel 241b.
- Each of the channel 241c and the channel 341d sends a bus right request signal group to the arbiter 351b, and the arbiter 351b sends a bus right approval signal group to each of the channel 341c and the channel 341d.
- Each of the external terminal I / F circuit 330a and the external terminal I / F circuit 330b sends a bus right request signal group to the arbiter 352a, and the arbiter 352a includes the external terminal I / F circuit 330a and the external terminal I / F.
- a bus right approval signal group is sent to each of the circuits 330b.
- Each of the external terminal I / F circuit 330c and the external terminal I / F circuit 330d sends a bus right request signal group to the arbiter 352b, and the arbiter 352b includes the external terminal I / F circuit 330c and the external terminal I / F.
- a bus right approval signal group is sent to each of the circuits 330d.
- the configuration of the bus right request signal group and the bus right approval signal group is the same as described in FIG. Although omitted in FIG. 23, the write ready signal and the read ready signal are connected via a slice between the channel for transferring information and the external terminal I / F circuit as in FIG.
- FIG. 25 is a diagram showing the allocation of the bus right of the shared bus that conveys information from the external terminal I / F circuit groups 330a to 330d to the DMAC 340 and the usage status of the shared bus.
- the channel 341a and the channel 341b use the command bus of the first shared bus
- the channel 341c and the channel 341d use the command bus of the second shared bus.
- the arbiter 351a and the arbiter 351b perform arbitration every fixed cycle
- the arbitrator 351a performs arbitration every three cycles
- the arbitrator 351b performs arbitration every two cycles.
- the shared bus can be used without an unused period as in the description in FIG. ⁇ Summary>
- the timing of arbitration according to the use period of the shared bus for each used circuit is individually provided.
- the shared bus can be used with high efficiency without providing a complicated arbitration circuit to be changed.
- an uplink arbiter and a downlink arbiter are arranged as shown in FIG. 9, FIG. 22, or FIG. This is because it is designed whether or not to perform arbitration, and when a design for providing a new external terminal or external terminal I / F circuit is added here, it is necessary to redesign the arbiter. Even when a design is added to remove the external terminal and external terminal I / F circuit that were originally included in the design, it is necessary to redesign the arbiter. Further, since it is necessary to provide a new external terminal and a new channel corresponding to the external I / F circuit in the DMAC, it is necessary to redesign the DMAC.
- the layout design is performed as a part of the external terminal I / F circuit without including the DMAC as the data transfer control circuit in the functional block. It is described that it is good.
- FIG. 28A shows a layout design method in the case where the data transfer control circuit is not included in the functional block in the layout design method shown in FIG. 4A as an example.
- the same steps as those in FIG. 4 are denoted by the same step numbers, and different contents are denoted by different step numbers.
- the method of designing the data transfer control circuit shown in the fourth embodiment without including it in a functional block is applicable not only to FIG. 4 but also to the layout design method shown in FIG. 1 or FIG.
- the difference between the flowchart shown in FIG. 28A and the flowchart shown in FIG. 4A is the timing for determining the arrangement of the data transfer control circuit.
- step S2801 the arrangement of functional blocks not including the data transfer control circuit is determined (step S2801).
- step S402 the arrangement of the IO block including the data transfer control circuit corresponding to each external terminal is determined. At this time, when the IO block does not include the data transfer control circuit, the arrangement of the data transfer control circuit is also determined so as to correspond to each IO block.
- the arrangement of the IO block is determined, the arrangement of the shared bus and the arrangement of the timing adjustment circuit inserted into the shared bus are determined (step S2803).
- FIG. 28 (b) shows a method of designing a layout by parallel processing at each step in FIG. 28 (a), as in FIG. ⁇ Configuration> A configuration of the semiconductor integrated circuit designed according to the design procedure of FIG. 28 will be described.
- FIG. 29 is a block diagram showing a functional configuration of the semiconductor integrated circuit 400.
- FIG. 29 differs from FIG. 22 and FIG. 23 in that a circuit (DMA channel) having a DMAC function as a data transfer control circuit is provided corresponding to each external terminal I / F circuit, and arbitration for uplink.
- a simple arbiter is provided corresponding to each DMA channel, instead of providing the arbiter and the downlink arbiter. That is, in the case of FIGS. 22 and 23, the DMA channel is configured such that one circuit (DMAC) controls the remote external terminal I / F circuit, whereas in FIG. 29 of the fourth embodiment, The DMAC function is arranged on the external terminal I / F circuit side.
- the semiconductor integrated circuit 400 designed according to the flowchart shown in FIG. 28 includes a functional block 440, external terminals 410a and 410b, external terminal I / F circuits 430a and 430b, and DMA channels 440a and 440b. And an arbitrator 450 a, slice groups 424 and 425, slice buses 421, 422, and 423, and a buffer 460. Each circuit is connected in the configuration shown in FIG.
- the semiconductor integrated circuit 400 receives data from an external device connected to the semiconductor integrated circuit 400 at the external terminals 410a and 410b and transfers the data to the buffer 460, and the data from the buffer 460 from the external terminals 410a and 410b.
- the circuit includes a function of transferring to an external device connected to the semiconductor integrated circuit 400.
- External terminals 410a and 410b, slice groups 424 and 425, and buffer 460 perform the same functions as those described in the first to third embodiments.
- the DMA channel 440a has a function of controlling data transfer between the external terminal I / F circuit 430a and the buffer 460.
- the DMA channel 440a first transmits a data transfer request to the arbiter 450a.
- a notification of permission to use the shared bus is received from the arbiter 440b, data transfer is executed.
- the DMA channel 440b has a function of controlling data transfer between the external terminal I / F circuit 430b and the buffer 460.
- the DMA channel 440b first transmits a data transfer request to the arbiter 450b.
- a notice of permission to use the shared bus is received from the arbiter 450b, data transfer is executed.
- Both DMA channels 440a and 440b are connected to a shared bus (421, 422, 423). For this reason, in order to actually execute data transfer, it is necessary to acquire the bus right.
- Arbitrators 450a and 450b are provided for this purpose, and bus rights are managed by the arbitrators 450a and 450b.
- the arbiters 450a and 450b receive a data transfer request from the DMA channel.
- the arbiters 450a and 450b receive the bus right request signal from the arbiter (arbiter 450b for the arbiter 450a) downstream from the functional block 440 side.
- priorities are assigned to both bus requests according to a predetermined policy, and the bus request signal having the higher priority is output upstream (function block 440).
- the arbiters 450a and 450b output a bus right request signal as it is when a data transfer request is not received from the DMA channel and a bus right request signal is received from a downstream arbiter.
- the functional block 440 receives the bus right approval signal at a timing when the bus right may be given in accordance with the bus right request signal transmitted from the arbitrator 450a (for example, a timing when the shared bus is not used in any circuit). Is transmitted to the arbiter 450a.
- Such a configuration makes it easy to add and delete external terminals and external terminal I / F circuits, and the arbiter only manages the bus right with the above simple configuration. It is a configuration that requires no design.
- FIG. 30 shows a semiconductor integrated circuit 400a in which a new external terminal 410c, external terminal I / F circuit 430c, DMA channel 440c, and arbiter 450c are added to the configuration of FIG.
- FIG. 30 shows a configuration in which a new slice group 426 is provided, but this slice group 426 is provided according to the wiring length of the shared bus. Therefore, when the wiring length to a new external terminal or external terminal I / F circuit is not so long, it is not necessary to newly provide a slice group for timing adjustment, and the configuration as shown in FIG.
- the semiconductor integrated circuit 400b is designed.
- FIG. 32 shows a configuration that is not added but deleted. With such a configuration, it is possible to add or delete a design that is considered in units of one data transfer path including a combination of an external terminal, an external terminal I / F circuit, a DMA channel, and an arbiter.
- FIG. 29 to 32 show an example in which the functional block and a plurality of IO blocks are connected in a bus type topology, this may be connected in a daisy chain type topology.
- a configuration for connecting functional blocks and IO blocks in a daisy chain topology for example, a configuration as shown in FIG. 33 is conceivable.
- a semiconductor integrated circuit 400d shown in FIG. 33 is obtained by changing the semiconductor integrated circuit 400b in which the functional block and the IO block are connected in the bus type topology shown in FIG. 31 to a configuration connected in the daisy chain type topology. It is.
- the IO block a circuit in which an external terminal I / F circuit (430a / 430b / 430c), a DMA channel (440a / 440b / 440c), and an arbiter (450a / 450b / 450c) are packaged together is used.
- the functional block 440, the slice groups 424, 425, and the IO blocks 470a, 470b, 470c are connected by a bus (421, 422, 423) in a daisy chain configuration.
- the IO blocks 470a, 470b, and 470c have one set of DMA channel (440a / 440b / 440c) and arbiter (450a / 450b / 450c), as in the semiconductor integrated circuit 400e shown in FIG. It may be a packaged circuit.
- the semiconductor integrated circuit 400d shown in FIG. 33 and the semiconductor integrated circuit 400e shown in FIG. 34 exhibit substantially the same functions as the semiconductor integrated circuit 400b shown in FIG. To do.
- Whether to connect using a bus topology or a daisy chain topology is determined by design specifications, and a layout design is performed according to the specifications.
- a layout design method in which an external terminal, an external terminal I / F circuit, a data transfer control circuit, and an arbiter are used as one data transfer path, and a data transfer path can be easily added or deleted, and a semiconductor integrated circuit designed by the layout design method A circuit can be provided.
- the layout design method has been shown.
- a human may design the layout of the semiconductor integrated circuit according to the layout design method.
- the layout design method according to the embodiment described above. Any device that performs layout according to the above procedure may be used, and the device that performs layout design may be ordered and designed.
- the layout design method described in the above embodiment may be executed by a design apparatus that designs a layout of a semiconductor integrated circuit.
- the data transfer control circuit information on the area of each functional block, and information on the total layout area allowed according to the size of the semiconductor integrated circuit to be designed are input. Determine the placement. The details of the determination method of the arrangement are omitted here because various conventional techniques are disclosed.
- the design apparatus accepts input of external terminal position information from, for example, an operator of the design apparatus.
- the position indicated by the information is determined as the external terminal arrangement position.
- the design device determines the IO block placement position in the vicinity of the external terminal position. The determination is that the wiring length between the external terminal and the IO block is within a predetermined distance from the determined external terminal position and the position where the arrangement with other parts does not overlap. The shortest position is determined as the IO block placement position.
- the design apparatus connects the IO block and the data transfer control circuit, and determines the bus wiring position so that the layout with other parts does not overlap. .
- the number and position of the timing adjustment circuits to be inserted on the bus are inserted from the determined bus wiring length so as not to overlap with the arrangement positions of other components.
- a table indicating the number of timing adjustment circuits to be inserted is stored in advance in the design device for each wiring length divided within a certain length range, and the determined bus The wiring length is calculated based on the arrangement position of. Then, based on which range of the table the calculated wiring length corresponds to, the number of timing adjustment circuits corresponding to the corresponding range is determined as the number of timing adjustment circuits to be inserted.
- the design apparatus based on the layout design method shown in the first embodiment has been described, but this is a layout design by the design apparatus based on the layout design method shown in the other embodiments. Also good.
- the design apparatus may execute the layout design using the method described in the first modification, the second modification, or the fourth embodiment.
- the shared bus may be arranged as shown in FIG. That is, the shared bus is wired so as to surround each functional block. Then, according to the wiring length from the internal circuit 140, slice groups 125a to 125j as timing adjustment circuits are arranged. A space for installing the external terminal I / F circuit is secured around the area, and the determination of the external terminal position is awaited.
- the determined position is set as the arrangement position of the external terminals 110a to 110c, and the arrangement position of the external terminal I / F circuits 130a to 130c, which are IO blocks, is determined in the vicinity thereof and connected to the external terminals. Then, it is arranged on the shared bus so as to be the shortest in a linear distance from the external terminal I / F circuit.
- information exchange between the DMA controller 140 and the external terminal I / F circuit groups 130a and 130b may be composed of only commands and downlink data, and may include a subset of five pieces of information.
- the write ready signal and the read ready signal sent from the external terminal I / F circuit groups 130a and 130b to the DMA controller 140 are sliced.
- the invention is not limited to this.
- the write ready signal and the read ready signal may be directly connected between the external terminal I / F circuit groups 130a and 130b and the DMA controller 140 without passing through the slice.
- the bus right request signal group sent from the external terminal I / F circuit 130a to the arbiter 152 is sliced by the slice 1258 is described. It is not limited to this.
- the bus request signal group may be directly connected to the arbiter without going through the slice.
- the arbiter 151 and the arbiter 152 are all components of the shared bus (command bus, downlink data bus, downlink information bus, uplink data bus, uplink information bus). Although an example including an arbitration circuit is described, the present invention is not limited to this.
- the corresponding downlink information bus arbitration circuit 1513 is mounted. It is not necessary.
- the link information bus arbitration circuit 1513 may not be mounted.
- the command bus right arbitration circuit 1511, the downlink data bus right arbitration circuit 1512, and the downlink information bus right arbitration circuit 1513 are located in the localized physical area included in the arbitrator 1510. Although a layout example is described, the present invention is not limited to this. Each of the command bus right arbitration circuit 1511, the downlink data bus right arbitration circuit 1512, and the downlink information bus right arbitration circuit 1513 may be laid out in a distributed area as necessary.
- the uplink data bus right arbitration circuit 1522 and the uplink information bus right arbitration circuit 1523 included in the arbitrator 1520 are not limited to this.
- the data transfer may be started after the command is sent N times (N is an integer of 2 or more) before the data.
- N is an integer of 2 or more
- the command bus is described as an example in the third embodiment, the present invention is not limited to this.
- the same configuration may be adopted for the downlink data bus and the downlink information bus for transferring information from the DMAC 240 (340) to the external terminal I / F circuit groups 230a to 230d (330a to 330d).
- the same configuration may be adopted for the uplink data bus and the uplink information bus for transferring information from the external terminal I / F circuit group 230 to the DMAC 240.
- the configuration in which one external IO terminal corresponds to one external terminal I / F circuit is shown, but this is not limited thereto.
- One external terminal I / F circuit may correspond to a plurality of external IO terminals.
- the designed semiconductor integrated circuit may have a configuration including only one external terminal I / F circuit and one DMA channel as shown in FIG. (12)
- a control program consisting of the above in a recording medium, or to distribute and distribute the program via various communication paths.
- Examples of such a recording medium include an IC card, a hard disk, an optical disk, a flexible disk, and a ROM.
- the distributed and distributed control program is used by being stored in a memory or the like that can be read by the processor, and the processor executes the control program, thereby realizing various functions as shown in the embodiment. Will come to be. (13)
- Each functional unit and various circuits in the block diagrams (see FIGS. 8 to 12, 22, 23, etc.) shown in the above embodiment are integrated and realized by one or a plurality of LSIs (Large Scale Integration). May be.
- a plurality of functional units may be realized by one LSI.
- LSI may be called IC (Integrated Circuit), System LSI, VLSI (Very Large Scale Integration), SLSI (Super Large Scale Integration), ULSI (Ultra Large Scale Scale Integration), etc., depending on the degree of integration.
- a first integrated circuit manufacturing method includes: a layout design step for generating a mask pattern used for manufacturing an integrated circuit; and a method for generating the integrated circuit on a semiconductor material using the mask pattern.
- the layout design step includes a first step for determining the arrangement of functional blocks, and a plurality of external IOs (Input-) for connecting the integrated circuit and external devices.
- the third step of determining the block arrangement the arrangement of the bus connecting the functional block and the IO block, and the wiring length of the bus The number of, and; and a fourth step of determining the arrangement of the timing adjustment circuit adjusting the timing of signals flowing on the bus.
- a second integrated circuit manufacturing method is a layout design step for generating a mask pattern used for manufacturing an integrated circuit, and the integrated circuit is formed on a semiconductor material using the mask pattern.
- the layout design step includes a first step for determining the arrangement of functional blocks, and a plurality of external IOs (for connecting the integrated circuit and external devices).
- a second step of determining the arrangement of the input-output terminal, and at least one IO (Input) connected to one of the external IO terminals according to the arrangement of the external IO terminals determined in the second step -Output) the third step of determining the arrangement of the block, the arrangement of the shared bus connecting the functional block and the IO block, and the shared bus Number of stages corresponding to the line length, characterized in that it comprises a fourth step of determining the arrangement of the timing adjustment circuit adjusting the timing of signals flowing on the shared bus.
- a third integrated circuit manufacturing method includes a layout design step for generating a mask pattern used for manufacturing an integrated circuit, and the integrated circuit is formed on a semiconductor material by using the mask pattern.
- the layout design step includes a first step for determining the arrangement of functional blocks, a shared bus, and a timing adjustment for adjusting a timing of a signal flowing on the shared bus.
- a second step of determining an arrangement with a circuit a third step of determining an arrangement of a plurality of external IO (Input-Output) terminals for connecting the integrated circuit and an external device, and the second step.
- the determined arrangement of each external IO terminal at least one IO (Input-Output) block connected to one of the external IO terminals. Characterized in that it comprises a fourth step of determining a location, a fifth step for connecting the functional blocks and the IO block to said shared bus, a.
- a semiconductor integrated circuit manufactured by these integrated circuit manufacturing methods includes a functional block, a plurality of external IO terminals, at least one IO block connected to any of the external IO terminals, and the functional block.
- the timing adjustment circuit is divided into a plurality of slices, and the functional block and the IO block are connected to one of the plurality of slices.
- the IO block whose arrangement is determined in the first step may include a data transfer control circuit.
- the functional block may include a data transfer control circuit.
- the IO block whose arrangement is determined in the third step may include a data transfer control circuit.
- the IO block may include a data transfer control circuit.
- each IO block By including a data transfer control circuit in each IO block, it is easy to add or delete a data transfer path with the external IO terminal and the IO block as one unit.
- the third step may determine a position close to the external IO terminal as an arrangement position of the IO block.
- the fourth step may determine a position close to the external IO terminal as an arrangement position of the IO block.
- the IO block may be arranged at a position close to the external IO terminal.
- the position close to the external terminal is within a range in which data communication in which a communication delay in data transfer between the external terminal and the IO block can be allowed as an error can be performed.
- the IO block is arranged in the vicinity of the external terminal, it is not necessary to consider the configuration for timing adjustment in the data transfer between the external terminal and the IO block, and the burden of layout design is reduced. Can do.
- the timing adjustment circuit may detect a phase shift between the plurality of signals generated by a plurality of signals including the signal flowing through the bus.
- the fourth step may be to determine the number of stages for inserting the timing adjustment circuit and the arrangement position thereof based on the delay amount generated in the signal according to the wiring length. Good.
- the timing adjustment circuit corrects a phase shift between the plurality of signals generated by a plurality of signals including the signal flowing through the shared bus with respect to the input signal.
- the fourth step may determine the number of stages for inserting the timing adjustment circuit and the arrangement position thereof based on the delay amount generated in the signal according to the wiring length. .
- the timing adjustment circuit may detect a phase shift between the plurality of signals generated when the plurality of signals including the signal flow through the shared bus.
- the second step may be to determine the number of stages for inserting the timing adjustment circuit and the arrangement position thereof based on the delay amount generated in the signal according to the wiring length. Good.
- the integrated circuit generated according to the integrated circuit manufacturing method can correct the delay from the operation clock of the signal flowing through the bus.
- the shared bus for which the layout is determined in the fourth step may be determined so as to daisy chain connect the functional block and the IO block.
- the arrangement in the fifth step, may be determined such that the functional block and the IO block are daisy chain connected by the shared bus.
- the semiconductor integrated circuit is further connected to one end of the shared bus, and arbitrates a bus right request signal related to data transfer in a direction from the IO block to the data transfer control circuit.
- An uplink arbiter that arbitrates a bus right request signal from the plurality of IO blocks, and outputs a bus right approval signal to one selected IO block among the plurality of IO blocks.
- the bus right approval signal may be issued and delayed to be notified to the selected one IO block via a slice between the selected one IO block and the uplink arbiter.
- the shared bus includes a downlink bus for transmitting a signal in a direction from the data transfer control circuit to the IO block, and the IO block to the data transfer control circuit. It is good also as comprising including the uplink bus for transmitting the signal of the direction to go.
- the uplink arbiter includes information on a burst length of each of data transferred by the plurality of IO blocks, and the uplink arbiter is granted a bus right.
- the arbitration interval of the bus request signal may be determined according to the burst length information corresponding to one IO block.
- the semiconductor integrated circuit is further connected to the data transfer control circuit, and arbitrates a bus right request signal related to data transfer in a direction from the data transfer control circuit to the IO block.
- the data transfer control circuit may output data to the shared bus at a timing according to a delay until the slice where the IO block is arranged.
- the downlink arbiter includes information on burst lengths of data transferred by the plurality of channels, and the downlink arbiter is approved for the bus right.
- the arbitration interval of the bus right request signal may be determined according to the burst length information corresponding to one channel.
- the shared bus includes a bus for a long burst device and a bus for a short burst device, and transfers data between the data transfer control circuit and the IO block. Depending on the burst length, data transfer may be performed using either the long burst device bus or the short burst device bus.
- the integrated circuit manufacturing method can design the layout of an integrated circuit even if the position of an external terminal is not determined, contributes to shortening the design time of the semiconductor integrated circuit, and is used for refining the semiconductor integrated circuit.
Landscapes
- Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- General Physics & Mathematics (AREA)
- Computer Hardware Design (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Design And Manufacture Of Integrated Circuits (AREA)
- Semiconductor Integrated Circuits (AREA)
Abstract
Description
<実施の形態1>
本実施の形態1においては、半導体集積回路のレイアウト設計方法について図1(a)に示すフローチャートを用いて説明する。
<まとめ>
以上に説明してきたように、本実施の形態1におけるレイアウト設計方法においては、先にデータ転送制御回路を含む1以上の機能ブロックそれぞれの部品や配線のレイアウトを決定した後で、要求された外部端子位置に外部端子を配置し、その近傍にIOブロックを配する。これによって、外部端子位置とIOブロックが理想に近い形での配置を実現できる。また、IOブロックとデータ転送制御回路とをバスで接続し、そのバスに当該バスの配線長に応じた数のタイミング調整回路を挿入することによって、信号間のタイミング調整がなされ、正常に動作する半導体集積回路を作成できる。
<変形例1>
上記実施の形態1に示したレイアウト設計方法においては、各外部端子I/F回路と内部回路とを接続するバスをそれぞれ設けるように配置を決定することとした。しかしながら、当該構成は、外部端子I/F回路分の個数のバスを配線しなければならず、その分半導体集積回路の面積を増大させるという問題がある。
<まとめ>
当該変形例1における半導体集積回路におけるレイアウト設計方法によれば、外部端子の配置位置の決定が遅れたとしても、それほど、半導体集積回路のレイアウト設計を変更せずに、外部端子位置を配置したレイアウトが設計できるとともに、各外部端子I/F回路と、内部回路とを接続するバスを共有バスとすることで、半導体集積回路の設計面積を、共有バスとしない場合に比して、小さくすることができる。
<変形例2>
上記変形例1においては、外部端子I/F回路と、内部回路とを接続するバスを共有バスとするレイアウト設計を提示した。本変形例2においては、更なる利便性の高いレイアウト設計方法を提示する。
<まとめ>
本変形例2に示したレイアウト設計方法によれば、外部端子の配置位置を決定する前に、共有バスの配置位置も決定してしまっているため、外部端子の配置位置が決定した後の設計工数を、上記変形例1に示したものよりも、少なくすることができる。
<実施の形態2>
実施の形態2においては、上記各変形例に示した手法を用いてレイアウト設計を行って作成された半導体集積回路について、その構成及び動作を説明する。
<動作>
次に、半導体集積回路100の動作を図13に示すタイミングチャートや、図14~図17に示すフローチャートを用いて説明する。
<まとめ>
以上に説明してきたように、本実施の形態2に示した半導体集積回路は、上記変形例に従って設計、作成されており、外部端子位置の決定が遅れていたとしても、問題なく動作する構成を実現できる。即ち、外部端子位置に応じて、タイミング調整回路の段数を決定して作成されているため、簡単な構成で、データ転送間の遅延等に配慮した半導体集積回路を実現できる。
<実施の形態3>
上記実施の形態2においては、各外部端子I/F回路130a、130bとDMAC140とがデータ転送を行う際に、バス権の使用期間が異なるものが混在する場合を説明した。
<まとめ>
以上に説明してきたように共有バスを、使用回路ごとにバスの一時の使用期間が異なる仕様の場合に、個別に設けることにより、使用回路毎の共有バスの使用期間に応じて調停するタイミングを変化させる複雑な調停回路を設けなくても、高効率に共有バスを使用することが可能となる。
<実施の形態4>
上記実施の形態1~3においては、主として、データ転送制御回路たるDMACが機能ブロックに含まれる例を説明した。ところで、機能ブロックにDMACを設ける構成とすると、設計の拡張性が低くなることがある。
<構成>
図28の設計手順に従って設計される半導体集積回路の構成について説明する。
<まとめ>
以上、実施の形態4に示したように、各外部端子と外部端子I/F回路に対応する形で、データ転送制御回路たるDMAチャネルと、調停器とを設ける構成とすることで、一つの外部端子と外部端子I/F回路とデータ転送制御回路と調停器とを一つのデータ転送経路として、データ転送経路の追加または削除が容易なレイアウト設計方法及び当該レイアウト設計方法により設計される半導体集積回路を提供することができる。
<補足>
上記実施の形態において、本発明の実施の手法について説明してきたが、本発明の実施の形態がこれに限られないことは勿論である。以下、上記実施の形態以外に本発明として含まれるその他の各種変形例について説明する。
(1)上記実施の形態において、レイアウト設計方法を示した。当該レイアウト設計方法は、人間が当該レイアウト設計方法に従って、半導体集積回路のレイアウトを設計することとしてもよいし、半導体集積回路のレイアウトを自動設計する装置において、上記実施の形態に従ったレイアウト設計方法の手順に従ってレイアウトを実行する装置であればよく、レイアウト設計を実行する装置に命じて、設計することとしてもよい。
(2)上記実施の形態において示したレイアウト設計方法は、半導体集積回路のレイアウトを設計する設計装置が実行することとしてもよい。
(3)上記実施の形態におけるレイアウト設計方法においては、共有バスの配置は、図27に示すように配置することとしてもよい。即ち、各機能ブロックを囲うように共有バスを配線する。そして、内部回路140からの配線長に応じて、タイミング調整回路たるスライス群125a~125jを配置する。その周囲に外部端子I/F回路を設置するためのスペースを確保し、外部端子位置の決定を待つ。
(4)上記実施の形態2では、DMAコントローラ140と外部端子I/F回路群130a、130bとの間で、コマンド、ダウンリンクデータ、ダウンリンクインフォメーション、アップリンクデータ、アップリンクインフォメーションの5つの情報全てが授受される例を記載しているが、本発明はこれに限定されるものではない。例えば、DMAコントローラ140と外部端子I/F回路群130a、130bの間の情報授受が、コマンド、ダウンリンクデータのみで構成しても良く、5つの情報のサブセットが含まれていれば良い。
(5)上記実施の形態2では、外部端子I/F回路群130a、130bからDMAコントローラ140に対して送られるライトレディ信号及びリードレディ信号がスライスされている例を記載しているが、本発明はこれに限定されるものではない。ライトレディ信号及びリードレディ信号はスライスを経由することなしに直接、外部端子I/F回路群130a、130bとDMAコントローラ140との間で接続されていても良い。
(6)上記実施の形態2では、外部端子I/F回路130aから調停器152に対して送られるバス権要求信号群がスライス1258によりスライスされている例を記載しているが、本発明はこれに限定されるものではない。バス権要求信号群はスライスを経由することなしに直接調停器と接続されていても良い。
(7)本実施の形態2では、調停器151及び調停器152が共有バスの全ての構成要素(コマンドバス、ダウンリンクデータバス、ダウンリンクインフォメーションバス、アップリンクデータバス、アップリンクインフォメーションバス)の調停回路を備える例を記載しているが、本発明はこれに限定されるものではない。
(8)上記実施の形態2では、コマンドバス権調停回路1511、ダウンリンクデータバス権調停回路1512、及びダウンリンクインフォメーションバス権調停回路1513が調停器1510内に含まれる局所化された物理領域にレイアウトされている例を記載しているが、本発明はこれに限定されるものではない。コマンドバス権調停回路1511、ダウンリンクデータバス権調停回路1512、及びダウンリンクインフォメーションバス権調停回路1513のそれぞれは必要に応じて分散された領域にレイアウトされても良い。調停器1520に含まれるアップリンクデータバス権調停回路1522、アップリンクインフォメーションバス権調停回路1523についても同様である。
(9)上記実施の形態2においては、コマンド情報を送付した後に続いてデータを転送する例を記載しているが、コマンドの送信方法や回数などはこれに限定されるものではない。例えば、コマンドをデータに先行してN回(Nは2以上の整数)続けて送った後にデータ転送を開始する構成としても良い。
(10)上記実施の形態3においては、コマンドバスを例として記載しているが、本発明はこれに限定されるものではない。例えば、DMAC240(340)から外部端子I/F回路群230a~230d(330a~330d)の方向に情報を転送するダウンリンクデータバス、及びダウンリンクインフォメーションバスで同様の構成を採っても良い。また、外部端子I/F回路群230からDMAC240の方向に情報を転送するアップリンクデータバス及びアップリンクインフォメーションバスで同様の構成を採っても良い。
(11)上記実施の形態においては、1つの外部IO端子が1つの外部端子I/F回路に対応する構成を示したが、これはその限りではない。1つの外部端子I/F回路が複数の外部IO端子に対応してもよい。また設計される半導体集積回路は、図32に示すように1つの外部端子I/F回路及び1つのDMAチャネルのみを備える構成であってもよい。
(12)上述の実施形態で示したレイアウト設計に係る動作(図1、図4、図6参照)をレイアウト設計装置等のプロセッサ、及びそのプロセッサに接続された各種回路に実行させるためのプログラムコードからなる制御プログラムを、記録媒体に記録すること、又は各種通信路等を介して流通させ頒布させることもできる。このような記録媒体には、ICカード、ハードディスク、光ディスク、フレキシブルディスク、ROM等がある。流通、頒布された制御プログラムはプロセッサに読み出され得るメモリ等に格納されることにより利用に供され、そのプロセッサがその制御プログラムを実行することにより、実施形態で示したような各種機能が実現されるようになる。
(13)上記実施の形態に示したブロック図(図8~12、22、23等参照)における各機能部、各種回路は、集積化されて1又は複数のLSI(Large Scale Integration)により実現されてもよい。また、複数の機能部が1のLSIにより実現されてもよい。
(14)以下に、本発明に係る集積回路製造方法並びに半導体集積回路の実施の態様とその効果について説明する。
110a、110b、210a、210b、210c、210d、310a、310b、310c、310d、410a、410b、410c 外部端子(外部IO端子)
140 内部回路(DMAC、データ転送制御回路)
141a、141b、241a、241b、241c、241d、341a、341b、341c、341d、441a、441b、441c チャネル
151、152、251、252、351a、351b、352a、352b、450a、450b、450c 調停器
130a、130b、230a、230b、230c、230d、330a、330b、330c、330d、430a、430b、430c 外部端子I/F回路(IOブロック)
124 バス
125a、125b、125c スライス(タイミング調整回路)
240、340 DMAC(データ転送制御回路)
440 機能ブロック
440a、440b、440c DMAチャネル(データ転送制御回路)
470a、470b、470c IOブロック
Claims (29)
- 集積回路の製造に用いられるマスクパターンを作成するためのレイアウト設計ステップと、前記マスクパターンを用いて、半導体材料上に前記集積回路を作成する作成ステップとを含む集積回路製造方法であって、
前記レイアウト設計ステップは、
機能ブロックの配置を決定する第1ステップと、
前記集積回路と外部の機器とを接続するための複数の外部IO(Input-Output)端子の配置を決定する第2ステップと、
前記第2ステップで決定された各外部IO端子の配置に応じて、前記外部IO端子のいずれかに接続される少なくとも1つのIO(Input-Output)ブロックの配置を決定する第3ステップと、
前記機能ブロックと前記IOブロックとの間を接続するバスの配置と、当該バスの配線長に応じた段数の、前記バス上を流れる信号のタイミング調整を行うタイミング調整回路の配置とを決定する第4ステップと、
を含む集積回路製造方法。
- 前記第1ステップにおいて配置を決定する機能ブロックは、データ転送制御回路を含む
ことを特徴とする請求項1記載の集積回路製造方法。
- 前記第3ステップにおいて配置を決定する前記IOブロックは、データ転送制御回路を含む
ことを特徴とする請求項1記載の集積回路製造方法。
- 前記第3ステップは、前記外部IO端子に近接する位置を前記IOブロックの配置位置として決定する
ことを特徴とする請求項1記載の集積回路製造方法。
- 前記タイミング調整回路は、入力された信号について、当該信号を含む複数の信号が前記バスを流れることにより発生する当該複数の信号間の位相のずれを修正して出力する回路であり、
前記第4ステップは、前記配線長に応じて前記信号に発生する遅延量に基づいて、前記タイミング調整回路を挿入する段数及びその配置位置を決定する
ことを特徴とする請求項1記載の集積回路製造方法。
- 集積回路の製造に用いられるマスクパターンを作成するためのレイアウト設計ステップと、前記マスクパターンを用いて、半導体材料上に前記集積回路を作成する作成ステップとを含む集積回路製造方法であって、
前記レイアウト設計ステップは、
機能ブロックの配置を決定する第1ステップと、
前記集積回路と外部の機器とを接続するための複数の外部IO(Input-Output)端子の配置を決定する第2ステップと、
前記第2ステップで決定された各外部IO端子の配置に応じて、前記外部IO端子のいずれかに接続される少なくとも1つのIO(Input-Output)ブロックの配置を決定する第3ステップと、
前記機能ブロックと前記IOブロックとの間を接続する共有バスの配置と、当該共有バスの配線長に応じた段数の、前記共有バス上を流れる信号のタイミング調整を行うタイミング調整回路の配置とを決定する第4ステップと、
を含む集積回路製造方法。
- 前記第1ステップにおいて配置を決定する機能ブロックは、データ転送制御回路を含む
ことを特徴とする請求項6記載の集積回路製造方法。
- 前記第4ステップにおいて配置を決定する共有バスは、前記機能ブロックと前記IOブロックとをデイジーチェーン接続するように配置が決定される
ことを特徴とする請求項7記載の集積回路製造方法。
- 前記第3ステップにおいて配置を決定する前記IOブロックは、データ転送制御回路を含む
ことを特徴とする請求項6記載の集積回路製造方法。
- 前記第4ステップにおいて配置を決定する共有バスは、前記機能ブロックと前記IOブロックとをデイジーチェーン接続するように配置が決定される
ことを特徴とする請求項9記載の集積回路製造方法。
- 前記第3ステップは、前記外部IO端子に近接する位置を前記IOブロックの配置位置として決定する
ことを特徴とする請求項6記載の集積回路製造方法。
- 前記タイミング調整回路は、入力された信号について、当該信号を含む複数の信号が前記共有バスを流れることにより発生する当該複数の信号間の位相のずれを修正して出力する回路であり、
前記第4ステップは、前記配線長に応じて前記信号に発生する遅延量に基づいて、前記タイミング調整回路を挿入する段数及びその配置位置を決定する
ことを特徴とする請求項6記載の集積回路製造方法。
- 集積回路の製造に用いられるマスクパターンを作成するためのレイアウト設計ステップと、前記マスクパターンを用いて、半導体材料上に前記集積回路を作成する作成ステップとを含む集積回路製造方法であって、
前記レイアウト設計ステップは、
機能ブロックの配置を決定する第1ステップと、
共有バスと、前記共有バス上を流れる信号のタイミング調整を行うタイミング調整回路との配置を決定する第2ステップと、
前記集積回路と外部の機器とを接続するための複数の外部IO(Input-Output)端子の配置を決定する第3ステップと、
前記第2ステップで決定された各外部IO端子の配置に応じて、前記外部IO端子のいずれかに接続される少なくとも1つのIO(Input-Output)ブロックの配置を決定する第4ステップと、
前記機能ブロックと前記IOブロックとを前記共有バスに接続する第5ステップと、
を含む集積回路製造方法。
- 前記第1ステップにおいて配置を決定する機能ブロックは、データ転送制御回路を含む
ことを特徴とする請求項13記載の集積回路製造方法。
- 前記第5ステップにおいて、前記機能ブロックと前記IOブロックとは前記共有バスによりデイジーチェーン接続されるように配置が決定される
ことを特徴とする請求項14記載の集積回路製造方法。
- 前記第4ステップにおいて配置を決定する前記IOブロックは、データ転送制御回路を含む
ことを特徴とする請求項13記載の集積回路製造方法。
- 前記第5ステップにおいて、前記機能ブロックと前記IOブロックとは前記共有バスによりデイジーチェーン接続されるように配置が決定される
ことを特徴とする請求項16記載の集積回路製造方法。
- 前記第4ステップは、前記外部IO端子に近接する位置を前記IOブロックの配置位置として決定する
ことを特徴とする請求項13記載の集積回路製造方法。
- 前記タイミング調整回路は、入力された信号について、当該信号を含む複数の信号が前記共有バスを流れることにより発生する当該複数の信号間の位相のずれを修正して出力する回路であり、
前記第2ステップは、前記配線長に応じて前記信号に発生する遅延量に基づいて、前記タイミング調整回路を挿入する段数及びその配置位置を決定する
ことを特徴とする請求項13記載の集積回路製造方法。
- 機能ブロックと、
複数の外部IO端子と、
前記外部IO端子のいずれかに接続される少なくとも1つのIOブロックと、
前記機能ブロックと前記複数のIOブロックとの間で共有される共有バスと、
前記共有バスに挿入され、前記共有バス上を流れる信号のタイミング調整を行う1以上のタイミング調整回路と
を備え、
前記共有バスは、挿入されている前記タイミング調整回路により、複数のスライスに分割されており、
前記機能ブロックと前記IOブロックとは前記複数のスライスの何れかに接続されている
ことを特徴とする半導体集積回路。
- 前記機能ブロックは、データ転送制御回路を含む
ことを特徴とする請求項20記載の半導体集積回路
- 前記共有バスは、
前記データ転送制御回路から前記IOブロックへ向かう方向の信号を伝達するためのダウンリンクバスと、
前記IOブロックから前記データ転送制御回路へ向かう方向の信号を伝達するためのアップリンクバスと
を含んで構成される
ことを特徴とする請求項21記載の半導体集積回路。
- 前記半導体集積回路は、更に、前記共有バスの一端に接続され、前記IOブロックから前記データ転送制御回路へ向かう方向のデータ転送に関するバス権要求信号を調停するアップリンク調停器を備え、
前記アップリンク調停器は、複数のIOブロックからのバス権要求信号を調停し、前記複数のIOブロックのうち選択された1つのIOブロックにバス権承認信号を発行し、
前記バス権承認信号は、前記選択された1つのIOブロックと前記アップリンク調停器間のスライスを介して遅延されて前記選択された1つのIOブロックに通知される
ことを特徴とする請求項22記載の半導体集積回路。
- 前記アップリンク調停器は、複数のIOブロックが転送するデータそれぞれのバースト長の情報を備えており、
前記アップリンク調停器が、バス権を承認された1つのIOブロックに対応したバースト長の情報に応じて、バス権要求信号の調停間隔を決定する
ことを特徴とする請求項23記載の半導体集積回路。
- 前記半導体集積回路は、更に、前記データ転送制御回路に接続され、前記データ転送制御回路から前記IOブロックへ向かう方向のデータ転送に関するバス権要求信号を調停するダウンリンク調停器を備え、
前記データ転送制御回路は、前記IOブロックが配置されたスライスまでの遅延に応じたタイミングで、前記共有バスにデータを出力する
ことを特徴とする請求項22記載の半導体集積回路。
- 前記ダウンリンク調停器は、複数のチャネルが転送するデータそれぞれのバースト長の情報を備えており、
前記ダウンリンク調停器が、バス権を承認された1つのチャネルに対応したバースト長の情報に応じて、バス権要求信号の調停間隔を決定する
ことを特徴とする請求項25記載の半導体集積回路。
- 前記共有バスは、長バーストデバイス用のバスと、短バーストデバイス用のバスとを含み、
前記データ転送制御回路と前記IOブロックとの間のデータ転送のバースト長に応じて、前記長バーストデバイス用のバスと、前記短バーストデバイス用のバスの何れかを用いてデータ転送を行う
ことを特徴とする請求項20記載の半導体集積回路。
- 前記IOブロックは、データ転送制御回路を含む
ことを特徴とする請求項20記載の半導体集積回路。
- 前記IOブロックは、前記外部IO端子に近接する位置に配置されている
ことを特徴とする請求項20記載の集積回路製造方法。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US13/383,335 US8438523B2 (en) | 2010-05-31 | 2011-05-27 | Integrated circuit manufacturing method and semiconductor integrated circuit |
JP2012518239A JP5834226B2 (ja) | 2010-05-31 | 2011-05-27 | 集積回路製造方法及び半導体集積回路 |
CN201180003011.XA CN102473198B (zh) | 2010-05-31 | 2011-05-27 | 集成电路制造方法及半导体集成电路 |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010-125275 | 2010-05-31 | ||
JP2010125275 | 2010-05-31 | ||
JP2011119206 | 2011-05-27 | ||
JP2011-119206 | 2011-05-27 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2011152013A1 true WO2011152013A1 (ja) | 2011-12-08 |
Family
ID=45066406
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2011/002985 WO2011152013A1 (ja) | 2010-05-31 | 2011-05-27 | 集積回路製造方法及び半導体集積回路 |
Country Status (4)
Country | Link |
---|---|
US (1) | US8438523B2 (ja) |
JP (1) | JP5834226B2 (ja) |
CN (1) | CN102473198B (ja) |
WO (1) | WO2011152013A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112037830A (zh) * | 2014-09-05 | 2020-12-04 | 爱思开海力士有限公司 | 刷新控制电路以及使用该刷新控制电路的半导体器件 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9372818B2 (en) * | 2013-03-15 | 2016-06-21 | Atmel Corporation | Proactive quality of service in multi-matrix system bus |
US9471524B2 (en) | 2013-12-09 | 2016-10-18 | Atmel Corporation | System bus transaction queue reallocation |
US10649790B1 (en) | 2017-08-24 | 2020-05-12 | Amazon Technologies, Inc. | Multithreaded rendering for virtualized graphics processing |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06131414A (ja) * | 1992-10-16 | 1994-05-13 | Fujitsu Ltd | 回路合成方式 |
JPH10293782A (ja) * | 1997-03-13 | 1998-11-04 | Internatl Business Mach Corp <Ibm> | レイアウト・コンパイル方法および設計システム |
JPH1173258A (ja) * | 1997-08-28 | 1999-03-16 | Toshiba Corp | 低消費電力バス構造及びその制御方法、低消費電力バス構造の合成システム及びその合成方法、携帯情報機器 |
JP2003271688A (ja) * | 2002-03-13 | 2003-09-26 | Matsushita Electric Ind Co Ltd | 半導体集積回路の設計方法 |
JP2005107556A (ja) * | 2003-08-12 | 2005-04-21 | Matsushita Electric Ind Co Ltd | 半導体集積回路の配線処理方法 |
JP2007334692A (ja) * | 2006-06-15 | 2007-12-27 | Canon Inc | データ処理装置及び方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH07120514B2 (ja) | 1990-02-26 | 1995-12-20 | 三菱電機株式会社 | 陰極線管 |
US5884100A (en) * | 1996-06-06 | 1999-03-16 | Sun Microsystems, Inc. | Low-latency, high-throughput, integrated cache coherent I/O system for a single-chip processor |
US6041061A (en) * | 1997-01-31 | 2000-03-21 | Macronix International Co., Ltd. | Internal arbiter for a repeater in a computer network |
JP3250542B2 (ja) | 1999-03-23 | 2002-01-28 | 日本電気株式会社 | Lsi設計方法 |
US6901562B2 (en) * | 2000-01-18 | 2005-05-31 | Cadence Design Systems, Inc. | Adaptable circuit blocks for use in multi-block chip design |
US6948138B1 (en) * | 2002-11-04 | 2005-09-20 | Cadence Design Systems, Inc. | Method for positioning I/O buffers and pads in an IC layout |
WO2009096141A1 (ja) * | 2008-01-29 | 2009-08-06 | Panasonic Corporation | メモリアクセスタイミング調整装置及びメモリアクセスタイミング調整方法 |
-
2011
- 2011-05-27 US US13/383,335 patent/US8438523B2/en not_active Expired - Fee Related
- 2011-05-27 JP JP2012518239A patent/JP5834226B2/ja not_active Expired - Fee Related
- 2011-05-27 WO PCT/JP2011/002985 patent/WO2011152013A1/ja active Application Filing
- 2011-05-27 CN CN201180003011.XA patent/CN102473198B/zh not_active Expired - Fee Related
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH06131414A (ja) * | 1992-10-16 | 1994-05-13 | Fujitsu Ltd | 回路合成方式 |
JPH10293782A (ja) * | 1997-03-13 | 1998-11-04 | Internatl Business Mach Corp <Ibm> | レイアウト・コンパイル方法および設計システム |
JPH1173258A (ja) * | 1997-08-28 | 1999-03-16 | Toshiba Corp | 低消費電力バス構造及びその制御方法、低消費電力バス構造の合成システム及びその合成方法、携帯情報機器 |
JP2003271688A (ja) * | 2002-03-13 | 2003-09-26 | Matsushita Electric Ind Co Ltd | 半導体集積回路の設計方法 |
JP2005107556A (ja) * | 2003-08-12 | 2005-04-21 | Matsushita Electric Ind Co Ltd | 半導体集積回路の配線処理方法 |
JP2007334692A (ja) * | 2006-06-15 | 2007-12-27 | Canon Inc | データ処理装置及び方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112037830A (zh) * | 2014-09-05 | 2020-12-04 | 爱思开海力士有限公司 | 刷新控制电路以及使用该刷新控制电路的半导体器件 |
CN112037830B (zh) * | 2014-09-05 | 2024-01-02 | 爱思开海力士有限公司 | 刷新控制电路以及使用该刷新控制电路的半导体器件 |
Also Published As
Publication number | Publication date |
---|---|
JPWO2011152013A1 (ja) | 2013-07-25 |
CN102473198A (zh) | 2012-05-23 |
JP5834226B2 (ja) | 2015-12-16 |
US8438523B2 (en) | 2013-05-07 |
US20120110535A1 (en) | 2012-05-03 |
CN102473198B (zh) | 2015-09-09 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4857291B2 (ja) | データアクセス方法およびマルチチップコントローラを備えるメモリシステム | |
US10495689B2 (en) | Blade centric automatic test equipment system | |
US9255968B2 (en) | Integrated circuit with a high-speed debug access port | |
CN103605632B (zh) | 一种axi总线与ahb总线的通信方法与装置 | |
JP5834226B2 (ja) | 集積回路製造方法及び半導体集積回路 | |
CN105988968B (zh) | 半导体装置 | |
US9003092B2 (en) | System on chip bus system and a method of operating the bus system | |
CN113792520A (zh) | 布局布线方法、装置、同步电路以及集成电路芯片 | |
US20030101299A1 (en) | Information processing apparatus having a bus using the protocol of the acknowledge type in the source clock synchronous system | |
JP2012181724A (ja) | クロック同期化回路及び半導体集積回路 | |
US7774529B2 (en) | Bus communication apparatus that uses shared memory | |
US6665807B1 (en) | Information processing apparatus | |
TW200912660A (en) | Dual bus matrix architecture for micro-controllers | |
EP2006773A2 (en) | Integrated circuit, and integrated circuit system | |
CN111506461A (zh) | 一种基于总线、用于测试的反压模块及其实现方法 | |
WO2008056468A1 (fr) | Circuit intégré à semiconducteur et sa technique d'implantation | |
JP2005012045A (ja) | 半導体集積回路のレイアウト方法及び半導体集積回路 | |
JP2006345011A (ja) | 通信装置 | |
KR102117479B1 (ko) | 인터페이스 변환 장치 | |
Guide | Intel® Pentium® 4 Processor in 478-pin Package and Intel® 845E Chipset Platform for DDR | |
JP4874139B2 (ja) | 半導体集積回路 | |
JP2010033314A (ja) | バスアクセス回路装置及びバスアクセス方法 | |
Olney | Introduction to Board Level Simulation and the PCB Design Process | |
KR20100024805A (ko) | 고속 인터페이스 장치 | |
Guide | Mobile Intel® Pentium® 4 Processor-M and Intel® 845MP/845MZ Chipset Platform |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 201180003011.X Country of ref document: CN |
|
WWE | Wipo information: entry into national phase |
Ref document number: 13383335 Country of ref document: US |
|
WWE | Wipo information: entry into national phase |
Ref document number: 2012518239 Country of ref document: JP |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 11789427 Country of ref document: EP Kind code of ref document: A1 |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 11789427 Country of ref document: EP Kind code of ref document: A1 |