WO2014111969A1 - Design method, program, memory medium, and designing device - Google Patents

Design method, program, memory medium, and designing device Download PDF

Info

Publication number
WO2014111969A1
WO2014111969A1 PCT/JP2013/000139 JP2013000139W WO2014111969A1 WO 2014111969 A1 WO2014111969 A1 WO 2014111969A1 JP 2013000139 W JP2013000139 W JP 2013000139W WO 2014111969 A1 WO2014111969 A1 WO 2014111969A1
Authority
WO
WIPO (PCT)
Prior art keywords
pld
pins
pin
pin assignment
design
Prior art date
Application number
PCT/JP2013/000139
Other languages
French (fr)
Japanese (ja)
Inventor
誠之 守屋
Original Assignee
株式会社図研
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 株式会社図研 filed Critical 株式会社図研
Priority to PCT/JP2013/000139 priority Critical patent/WO2014111969A1/en
Priority to JP2014557174A priority patent/JP5922802B2/en
Publication of WO2014111969A1 publication Critical patent/WO2014111969A1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/34Circuit design for reconfigurable circuits, e.g. field programmable gate arrays [FPGA] or programmable logic devices [PLD]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2113/00Details relating to the application field
    • G06F2113/18Chip packaging
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05KPRINTED CIRCUITS; CASINGS OR CONSTRUCTIONAL DETAILS OF ELECTRIC APPARATUS; MANUFACTURE OF ASSEMBLAGES OF ELECTRICAL COMPONENTS
    • H05K3/00Apparatus or processes for manufacturing printed circuits
    • H05K3/0005Apparatus or processes for manufacturing printed circuits for designing circuits by computer

Definitions

  • the present invention relates to a design method for designing a board on which a PLD and an IC are arranged, a program for causing a computer to execute the design method, a memory medium storing the program, and a design apparatus for designing the board.
  • PLDs Programmable Logic Devices
  • FPGA Field Programmable Gate Array
  • CPLD Complex PLD
  • a PLD is a device that allows a user to set pin assignments and functions.
  • a PLD can be mounted on a substrate such as a printed wiring board together with an IC (Integrated Circuit) to constitute various electronic circuits.
  • a CAD (Computer Aided Design) system is used to design a wiring pattern on a board such as a printed wiring board on which a PLD and an IC are mounted. Conventionally, after the pin assignment of the PLD to be mounted on the board is determined, the wiring of the board is designed using a CAD system.
  • the poor quality wiring pattern is, for example, (a) a wiring pattern having a long wiring length, (b) a wiring pattern having many intersections, and / or (c) a wiring pattern having a large number of wiring layers.
  • FIG. 15 illustrates a poor quality wiring pattern WP.
  • a circle drawn in the PLD 210 indicates a pin of the PLD 210.
  • the pins of the PLD 210 may include user I / O pins, GND pins (ground pins), I / O drive power pins for each bank, and internal power pins.
  • a PLD 210 and a plurality of ICs 221 to 228 are mounted on a substrate 200 such as a printed circuit board.
  • the wiring pattern WP connecting the PLD 210 and the plurality of ICs 221 to 228 has a long wiring length and many intersections.
  • the present invention has been made with the above problem recognition as an opportunity, and an object thereof is to provide a technique advantageous in improving the quality of wiring.
  • a first aspect of the present invention relates to a design method for designing a board on which a PLD and an IC are arranged by a computer.
  • the design method includes an arrangement of the PLD and the IC on the board, and a design standard for the board. And a determination step of determining pin assignment of the PLD in accordance with the arrangement acquired in the acquisition step and the design criteria of the substrate.
  • the second aspect of the present invention relates to a program, and the program causes a computer to execute the design method according to the first aspect.
  • a third aspect of the present invention relates to a memory medium, and the memory medium stores a program that causes a computer to execute the design method according to the first aspect.
  • a fourth aspect of the present invention relates to a design apparatus for designing a board on which a PLD and at least one IC are arranged, and the design apparatus determines the arrangement of the PLD and the IC on the board and the design criteria of the board.
  • the flowchart explaining the design method of one Embodiment of this invention. The figure explaining the design method of one embodiment of this invention.
  • the figure explaining the design method of one embodiment of this invention. The figure explaining the design method of one embodiment of this invention.
  • the figure explaining the design method of one embodiment of this invention. The figure explaining the design method of one embodiment of this invention.
  • the figure explaining the design method of one embodiment of this invention. The flowchart explaining the wiring process in the design method of one embodiment of this invention.
  • the figure explaining the wiring process in the design method of one Embodiment of this invention. The figure explaining the wiring process in the design method of one Embodiment of this invention.
  • the figure explaining the wiring process in the design method of one Embodiment of this invention. The figure explaining the wiring process in the design method of one Embodiment of this invention.
  • the figure explaining the wiring process in the design method of one Embodiment of this invention The figure explaining the wiring process in the design method of one Embodiment of this invention.
  • the figure which shows a modification. The figure which illustrates the wiring pattern of a board
  • PLD Programmable Logic Device
  • FPGA Field Programmable Gate Array
  • CPLD Complex PLD
  • FIG. 1 shows a schematic configuration of a design apparatus 100 according to one embodiment of the present invention.
  • the design apparatus 100 can be typically configured by incorporating the program 50 into the computer 10.
  • the computer 10 can include a CPU 15, a display 16, a RAM 17, a communication interface 18, a media drive 19, and an HDD (hard disk drive) 14.
  • a program 50 can be stored in the HDD 14.
  • the program 50 may be stored in a medium (memory medium) 60 such as a CD, provided to the computer 10, and installed in the computer 10.
  • the computer 10 may include input devices such as a touch pad 11, a keyboard 12, and a mouse 13, for example.
  • FIG. 2 is a flowchart illustrating a design method according to an embodiment of the present invention that is executed by the design apparatus 100.
  • the design method shown in this flowchart can be defined by the program 50.
  • the design method shown in FIG. 2 is a method of designing a board on which a PLD and an IC are arranged by a computer.
  • the design method includes an acquisition step S100 for acquiring a layout of PLDs and ICs on a substrate and a design standard of the substrate, and a pin of the PLD according to the layout and the design standard of the substrate acquired in the acquisition step S100. Determining step S110 for determining allocation.
  • the design method may further include a wiring step S120 for generating a wiring pattern for connecting the pins of the PLD and the pins of the IC for which the pin assignment has been determined in the determination step S110.
  • the design apparatus 100 can be grasped as an apparatus including an acquisition unit that executes the acquisition step S100 and a determination unit that executes the determination step S110.
  • the following (1) to (5) are examples of design criteria acquired in the acquisition step S199.
  • the design criteria can be provided to the design apparatus 100 via, for example, input devices such as the touch pad 11, the keyboard 12, and the mouse 13, the communication interface 18 (that is, other apparatuses), or the media drive 19.
  • the first design criterion is that the pin assignment cannot be changed in the determination step S110 for power supply pins, ground pins, reserved pins, pins for which replacement is prohibited, and clock signal pins. including.
  • the second design criterion is that when the voltage of the first bank is different from the voltage of the second bank, the signal assigned to the pin of the first bank is applied to the pin of the second bank. It cannot be assigned, and includes a restriction that a signal assigned to a pin of the second bank cannot be assigned to a pin of the first bank. In this case, when the voltage of the first bank and the voltage of the second bank are the same, the second design criterion is that the signal assigned to the pin of the first bank is The signal assigned to the pin of the second bank can be assigned to the pin of the first bank.
  • the second design criteria may be that the signal assigned to the first bank pin is the second bank voltage regardless of whether the first bank voltage and the second bank voltage are the same or different. It includes a restriction that it cannot be assigned to a bank pin, and a signal assigned to a second bank pin cannot be assigned to a first bank pin.
  • the second design standard includes a constraint that the PLD pin assignment can be changed only within each bank.
  • the third design criterion includes a constraint that pin pairs to which differential signals are assigned are limited to adjacent pin pairs.
  • the fourth design standard includes a restriction that a pin to which a signal should be assigned can be changed only within a swap group specified by the user. For example, if the pins A1, A2, and A3 are the swap group A and the pins B1, B2, and B3 are the swap group B, the signal assignment is converted in the swap group A (pins A1, A2, and A3). In the swap group B (pins B1, B2, and B3), the signal assignment can be converted, but the signal assignment cannot be changed between the swap group A and the swap group B. Is.
  • the fifth design standard includes a restriction that signal allocation can be changed only between pins having common I / O attributes.
  • the determination step S110 includes, for example, a provisional determination step S112 that provisionally determines the pin assignment so that the distances between the plurality of pins of the PLD and the plurality of pins of the IC to be connected to each of them satisfy the distance criterion,
  • step S112 when a plurality of signals are assigned to one of the plurality of pins of the PLD, the pin assignment is performed such that the plurality of signals are assigned to different pins among the plurality of pins of the PLD. If there is an intersection in the ratsnest between the PLD and the IC according to the pin assignment modified in the first modification step S114, the pin assignment is performed so that the intersection is eliminated.
  • 2nd correction process S115 which corrects.
  • FIG. 3 schematically shows the substrate 200 before the design according to the design method shown in FIG. 2 is made.
  • the substrate 200 is, for example, a printed wiring board, and the PLD 210 and the ICs 221 to 228 are arranged on the substrate 200.
  • the PLD 210 has a plurality of pins shown in a circle.
  • the plurality of pins of the PLD 210 include, for example, a user I / O pin indicated by a white circle, a GND pin (ground pin) indicated by a black circle, and an I / O for each bank indicated by a hatched circle.
  • O drive power supply pins and internal power supply pins indicated by circles with cross-hatching may be included.
  • the PLD 210 can include, for example, a plurality of banks (I / O banks) BANK0 to BANK4.
  • a bank means an area in which pins having common interface specifications are arranged. However, interface specifications may be common even in different banks.
  • the power supply voltage of the bank BANK0 may be 2.5V
  • the power supply voltage of the bank BANK1 may be 1.2V
  • the power supply voltage of the bank BANK3 may be 2.5V
  • the power supply voltage of the bank BANK4 may be 2.5V.
  • the correspondence relationship between the pins of the PLD 210 and the pins of the plurality of ICs 221 to 228 is represented by a ratsnest RN drawn by dotted lines.
  • the two pins connected by the ratsnest RN should be connected to each other by the wiring pattern.
  • the design apparatus 100 acquires the arrangement of the PLD 210 and the ICs 221 to 228 on the substrate 200 and the design standard of the substrate 200.
  • the arrangement of the PLD 210 and the ICs 221 to 228 on the substrate 200 can include the coordinates of the PLD 210 and the ICs 221 to 228 on the substrate 200, for example.
  • the design apparatus 100 determines the pin assignment of the PLD 210 according to the arrangement acquired in the acquisition step S100 and the design standard of the substrate 200. More specifically, in the determination step S110, the design apparatus 100 may determine the pin assignment so that the distances between the plurality of pins of the PLD 210 and the plurality of pins of the IC to be connected to each of them satisfy the distance constraint.
  • the distance constraint is a constraint that requires, for example, that the distance from the connection target pin in the PLD 210 is equal to or less than a predetermined distance, for example, that the distance from the connection target pin in the PLD 210 is the shortest distance.
  • FIG. 6 schematically shows the substrate 200 after the pin assignment is determined in the determination step S110.
  • the determination step S110 can include a provisional determination step S112, a first correction step S114, and a second correction step S116.
  • FIG. 4 schematically shows the substrate 200 after the provisional determination step S112.
  • the pin assignment of the PLD 210 is performed so as to satisfy the distance constraint that the distance between the plurality of pins of the PLD 210 and the plurality of pins of the ICs 221 to 28 to be connected to them is the shortest distance. Is provisionally determined.
  • the pin assignment of the PLD 210 is provisionally determined under such a distance constraint, as illustrated in FIG. 4, one pin of the PLD 210 overlaps two or more of the plurality of pins of the ICs 221 to 228.
  • the pin assignment of the PLD 210 can be provisionally determined so as to be connected. That is, the state illustrated in FIG. 4 is a state in which a plurality of signals are assigned to one pin of the PLD 210.
  • the design apparatus 100 may assign a plurality of signals assigned to one pin of the PLD 210 to different pins among the plurality of signals of the PLD 210.
  • the pin assignment of the PLD 210 is corrected.
  • a signal other than one signal among a plurality of signals assigned to one pin is assigned to another pin.
  • the design apparatus 100 is adjacent to a pin to which the one signal is assigned, except for one signal among a plurality of signals assigned to one pin. Assign to a pin.
  • an intersection may occur in the ratsnest RN between the PLD 210 and the ICs 221 to 28 according to the pin assignment of the PLD 210 modified in the first modification step S114. Therefore, in the second correction step S116, as illustrated in FIG. 6, the pin assignment of the PLD 210 is corrected so that the intersection does not exist.
  • signals assigned to the pins related to the intersection among the plurality of pins of the PLD 210 may be exchanged. For example, if the ratsnest connected to pin A of PLD 210 and the ratsnest connected to pin B of PLD 210 intersect, the signal assigned to pin A and the signal assigned to pin B are Replace it.
  • the first correction step S114 is unnecessary, and the provisional determination step S112 and / or When the crossing of the rats nest RN does not occur due to the execution of the first correction step S114, the second correction step S116 is not necessary.
  • the second correction step S116 when there is an intersection in the ratsnest RN between the PLD 210 and the ICs 221 to 228 according to the pin assignment of the PLD 210 determined in the provisional determination step S112, Modify the pin assignment of PLD 210 so that there are no crossings.
  • the design apparatus 100 In the wiring step S120, the design apparatus 100 generates a wiring pattern WP for connecting two pins connected to each rats nest RN (that is, two pins to be connected) as illustrated in FIG. .
  • the wiring pattern WP illustrated in FIG. 7 has a shorter wiring length and fewer intersections than the wiring pattern WP illustrated in FIG. That is, the wiring pattern WP illustrated in FIG. 7 has higher wiring quality than the wiring pattern WP illustrated in FIG.
  • the PLD 210 is programmed according to the pin assignment determined in the determination step S110.
  • the squares indicate the pins of the ICs 221 to 228, and the circles indicate the pins of the PLD 210.
  • step S210 the design apparatus 100 divides a wiring region (a region where wiring can be performed) on the substrate 200 into a plurality of divided regions DR.
  • step S220 the design apparatus 100 selects a pin pair to be connected.
  • a pin pair to be connected is composed of a pin P1 which is one of a plurality of pins of the ICs 221 to 228 and a pin P2 which is one of a plurality of pins of the PLD 210.
  • the pin P1 is a connection source pin of the wiring pattern
  • the pin P2 is a connection destination pin of the wiring pattern.
  • step S230 the design apparatus 100 determines a divided region DR1 that is adjacent to the connection source pin P1 and exists in the direction of the connection destination pin P2.
  • the divided region DR1 is determined from the region DR in which no wiring pattern exists.
  • step S240 the design apparatus 100 arranges the wiring pattern WP in the divided region DR1, as illustrated in FIG. 9C.
  • step S250 the design apparatus 100 determines a divided region DR2 that is adjacent to the divided region DR1 in which the wiring pattern WP is disposed immediately before and exists in the direction of the connection destination pin P2.
  • the divided region DR2 is determined from the region DR in which no wiring pattern exists.
  • step S260 the design apparatus 100 arranges the wiring pattern WP in the divided region DR2, as illustrated in FIG. 9E.
  • step S270 the design apparatus 100 determines whether or not the connection by the wiring pattern WP between the selected pin pair (pin P1, pin P2) is completed. If not, the design apparatus 100 performs step S250 and step S260. Is additionally performed, and when completed, the process proceeds to step S280.
  • step S280 the design apparatus 100 determines whether or not the connection between all the pin pairs has been completed. If the connection has not been completed, the design apparatus 100 returns to step S220 and executes the same processing as described above for the new pin pair. If completed, the process shown in FIG. 8 ends.
  • the user interface provided through the display 16 will be exemplarily described with reference to FIGS.
  • the design apparatus 100 displays the substrate 200 under design on the display 16.
  • a plurality of PLDs FPGA1, FPGA2, FPGA3, FPGA4 are mounted on the substrate 200.
  • Each PLD FPGA1, FPGA2, FPGA3, FPGA4 may have a plurality of banks (I / O banks).
  • the design device 100 (or the program 50) can display the command menu 310 on the display 16.
  • the command menu 310 includes, for example, a “pin assignment optimization (entire part)” command, a “pin assignment optimization (within I / O bank)” command, an “auto wiring” command, and a “pin assignment optimization / wiring”. Contains commands.
  • the “optimization of pin assignment (whole component)” command is a command for instructing the optimization (change) of pin assignment of the PLD (FPGA in this example) for the entire pin in each PLD. .
  • the “Optimize pin assignment (in I / O bank)” command executes optimization (change) of pin assignment of PLD (FPGA in this example) in each bank (I / O bank) of each PLD. Is a command for instructing.
  • the “automatic wiring” command is a command for instructing automatic wiring according to the current pin assignment of the PLD (FPGA in this example).
  • the “pin assignment optimization / wiring” command is a command for instructing to perform optimization (change) of pin assignment of PLD (FPGA in this example) and automatic wiring.
  • the “pin assignment optimization / wiring” command can be provided with a submenu 320.
  • the submenu 320 allows the user to specify a target for which pin assignment is optimized (changed).
  • the submenu 320 allows the user to execute a mode in which the pin assignment optimization (change) of the PLD (FPGA in this example) is performed on the entire pins of each PLD, or in the PLD (FPGA in this example).
  • a mode in which optimization (change) of pin assignment is executed in each bank (I / O bank) of each PLD can be selected.
  • a submenu 330 can be further provided.
  • the user can designate a bank (I / O bank) to which pin assignment is to be performed by using the submenu 330.
  • the pin assignment of the PLD is determined or optimized (changed) in a state where there is no wiring pattern for connecting the PLD and the IC, but FIGS. 12 to A to 12C, As illustrated in 13A to 13C and 14A to 14C, the pin assignment of the PLD 210 is determined or optimized (changed) in a state where the wiring pattern WP0 for connecting them partially exists between the PLD 210 and the IC 220. May be.
  • the wiring pattern WP0 partially extends between the pin of the IC 220 and the pin of the PLD 210, but the wiring pattern WP0 does not connect the pin of the IC 220 and the pin of the PLD 210.
  • the ratsnest RN that connects the pins of the IC 220 and the pins of the PLD 210 intersect with each other. Crossing occurs in the pattern.
  • the design apparatus 100 acquires the arrangement of the PLD 210 and the IC 220 on the substrate and the design standard of the substrate in the acquisition step S100.
  • the design apparatus 100 determines the pin assignment of the PLD 210 according to the arrangement acquired in the acquisition step S100 and the design criteria of the substrate.
  • the pin assignment of the PLD 210 may be performed such that the intersection of the ratsnest RN is eliminated or the intersection of the ratsnest RN is decreased.
  • the design apparatus 100 In S120, as illustrated in FIGS. 12C, 13C, and 14C, the design apparatus 100 generates a wiring pattern WP for connecting the pins of the PLD 210 and the pins of the IC 220 whose pin assignments have been determined in the determination step S110. To do.
  • the wiring pattern WP is typically generated so as to use the wiring pattern WP0 in consideration of the already existing wiring pattern WP0.

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • Geometry (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

This design method for designing a circuit board having a PLD and an IC disposed thereon by using a computer includes: an acquisition step for acquiring an arrange ment of the PLD and the IC on the circuit board, and a design standard for the circuit board; and a determination step for determining a pin assignment for the PLD according to the arrangement and the design standard for the circuit board as acquired in the acquisition step.

Description

設計方法、プログラム、メモリ媒体および設計装置DESIGN METHOD, PROGRAM, MEMORY MEDIUM, AND DESIGN DEVICE
 本発明は、PLDおよびICが配置された基板を設計する設計方法、該設計方法をコンピュータに実行させるプログラム、該プログラムを格納したメモリ媒体、および、該基板を設計する設計装置に関する。 The present invention relates to a design method for designing a board on which a PLD and an IC are arranged, a program for causing a computer to execute the design method, a memory medium storing the program, and a design apparatus for designing the board.
 FPGA(Field Programmable Gate Array)やCPLD(Complex PLD)などのようなPLD(Programable Logic Device)が知られている。PLDは、ユーザーがピン割当や機能を設定することができるデバイスである。PLDは、IC(Integrated Circuit)とともにプリント配線基板などの基板に搭載されて様々な電子回路を構成しうる。 PLDs (Programmable Logic Devices) such as FPGA (Field Programmable Gate Array) and CPLD (Complex PLD) are known. A PLD is a device that allows a user to set pin assignments and functions. A PLD can be mounted on a substrate such as a printed wiring board together with an IC (Integrated Circuit) to constitute various electronic circuits.
 PLDおよびICが搭載されるプリント配線基板などの基板における配線パターンを設計するために、CAD(Computer Aided Design)システムが使用される。従来は、基板に搭載すべきPLDのピン割当が決定された後に、CADシステムを用いて基板の配線設計がなされていた。 A CAD (Computer Aided Design) system is used to design a wiring pattern on a board such as a printed wiring board on which a PLD and an IC are mounted. Conventionally, after the pin assignment of the PLD to be mounted on the board is determined, the wiring of the board is designed using a CAD system.
特開2001-92857号公報JP 2001-92857 A
 しかしながら、PLDのピン割当が決定された後に基板の配線設計をすると、そのピン割当によって配線設計の自由度が拘束されるので、質の悪い配線パターンになりうる。ここで、質が悪い配線パターンは、例えば、(a)配線長が長い配線パターン、(b)交差が多い配線パターン、および/または、(c)配線層の数が多い配線パターンである。図15には、質の悪い配線パターンWPが例示されている。PLD210の中に描かれた円は、PLD210のピンを示している。PLD210のピンは、ユーザーI/Oピン、GNDピン(接地ピン)、バンク毎のI/O駆動用電源ピン、内部用電源ピンを含みうる。図15に示す例において、プリント基板などの基板200に、PLD210と複数のIC221~228とが搭載れている。PLD210および複数のIC221~228の間を接続する配線パターンWPは、配線長が長く、交差が多い。 However, if the wiring design of the board is performed after the pin assignment of the PLD is determined, the degree of freedom of the wiring design is constrained by the pin assignment, so that a poor quality wiring pattern can be obtained. Here, the poor quality wiring pattern is, for example, (a) a wiring pattern having a long wiring length, (b) a wiring pattern having many intersections, and / or (c) a wiring pattern having a large number of wiring layers. FIG. 15 illustrates a poor quality wiring pattern WP. A circle drawn in the PLD 210 indicates a pin of the PLD 210. The pins of the PLD 210 may include user I / O pins, GND pins (ground pins), I / O drive power pins for each bank, and internal power pins. In the example shown in FIG. 15, a PLD 210 and a plurality of ICs 221 to 228 are mounted on a substrate 200 such as a printed circuit board. The wiring pattern WP connecting the PLD 210 and the plurality of ICs 221 to 228 has a long wiring length and many intersections.
 本発明は、以上の課題認識を契機としてなされたものであり、配線の質の向上に有利な技術を提供することを目的とする。 The present invention has been made with the above problem recognition as an opportunity, and an object thereof is to provide a technique advantageous in improving the quality of wiring.
 本発明の第1の側面は、PLDおよびICが配置された基板をコンピュータによって設計する設計方法に係り、該設計方法は、前記基板における前記PLDおよび前記ICの配置、および、前記基板の設計基準を取得する取得工程と、前記取得工程で取得した前記配置および前記基板の前記設計基準に応じて前記PLDのピン割当を決定する決定工程と、を含む。 A first aspect of the present invention relates to a design method for designing a board on which a PLD and an IC are arranged by a computer. The design method includes an arrangement of the PLD and the IC on the board, and a design standard for the board. And a determination step of determining pin assignment of the PLD in accordance with the arrangement acquired in the acquisition step and the design criteria of the substrate.
 本発明の第2の側面は、プログラムに係り、該プログラムは、第1の側面に係る設計方法をコンピュータに実行させる。 The second aspect of the present invention relates to a program, and the program causes a computer to execute the design method according to the first aspect.
 本発明の第3の側面は、メモリ媒体に係り、該メモリ媒体は、第1の側面に係る設計方法をコンピュータに実行させるプログラムを格納している。 A third aspect of the present invention relates to a memory medium, and the memory medium stores a program that causes a computer to execute the design method according to the first aspect.
 本発明の第4の側面は、PLDおよび少なくとも1つのICが配置された基板を設計する設計装置に係り、該設計装置は、前記基板における前記PLDおよび前記ICの配置および前記基板の設計基準を取得する取得部と、前記取得部が取得した前記配置および前記基板の前記設計基準に応じて前記PLDのピン割当を決定部と、を含む。 A fourth aspect of the present invention relates to a design apparatus for designing a board on which a PLD and at least one IC are arranged, and the design apparatus determines the arrangement of the PLD and the IC on the board and the design criteria of the board. An acquisition unit for acquiring, and a determination unit for determining the pin assignment of the PLD according to the arrangement acquired by the acquisition unit and the design criteria of the substrate.
 本発明によれば、配線の質の向上に有利な技術が提供される。 According to the present invention, a technique advantageous for improving the quality of wiring is provided.
本発明の1つの実施形態の設計装置の概略構成を示す図。The figure which shows schematic structure of the design apparatus of one Embodiment of this invention. 本発明の1つの実施形態の設計方法を説明するフローチャート。The flowchart explaining the design method of one Embodiment of this invention. 本発明の1つの実施形態の設計方法を説明する図。The figure explaining the design method of one embodiment of this invention. 本発明の1つの実施形態の設計方法を説明する図。The figure explaining the design method of one embodiment of this invention. 本発明の1つの実施形態の設計方法を説明する図。The figure explaining the design method of one embodiment of this invention. 本発明の1つの実施形態の設計方法を説明する図。The figure explaining the design method of one embodiment of this invention. 本発明の1つの実施形態の設計方法を説明する図。The figure explaining the design method of one embodiment of this invention. 本発明の1つの実施形態の設計方法における配線工程を説明するフローチャート。The flowchart explaining the wiring process in the design method of one embodiment of this invention. 本発明の1つの実施形態の設計方法における配線工程を説明する図。The figure explaining the wiring process in the design method of one Embodiment of this invention. 本発明の1つの実施形態の設計方法における配線工程を説明する図。The figure explaining the wiring process in the design method of one Embodiment of this invention. 本発明の1つの実施形態の設計方法における配線工程を説明する図。The figure explaining the wiring process in the design method of one Embodiment of this invention. 本発明の1つの実施形態の設計方法における配線工程を説明する図。The figure explaining the wiring process in the design method of one Embodiment of this invention. 本発明の1つの実施形態の設計方法における配線工程を説明する図。The figure explaining the wiring process in the design method of one Embodiment of this invention. ディスプレイを通して提供されるユーザーインターフェースを例示する図。The figure which illustrates the user interface provided through a display. ディスプレイを通して提供されるユーザーインターフェースを例示する図。The figure which illustrates the user interface provided through a display. 変形例を示す図。The figure which shows a modification. 変形例を示す図。The figure which shows a modification. 変形例を示す図。The figure which shows a modification. 変形例を示す図。The figure which shows a modification. 変形例を示す図。The figure which shows a modification. 変形例を示す図。The figure which shows a modification. 変形例を示す図。The figure which shows a modification. 変形例を示す図。The figure which shows a modification. 変形例を示す図。The figure which shows a modification. 基板の配線パターンを例示する図。The figure which illustrates the wiring pattern of a board | substrate.
 以下、添付図面を参照しながら本発明をその例示的な実施形態を通して説明する。 Hereinafter, the present invention will be described through exemplary embodiments thereof with reference to the accompanying drawings.
 本明細書において、PLD(Programable Logic Device)という用語の意味には、FPGA(Field Programmable Gate Array)およびCPLD(Complex PLD)が含まれる。 In this specification, the term PLD (Programmable Logic Device) includes FPGA (Field Programmable Gate Array) and CPLD (Complex PLD).
 図1には、本発明の1つの実施形態の設計装置100の概略構成が示されている。設計装置100は、典型的には、コンピュータ10にプログラム50を組み込むことによって構成されうる。コンピュータ10は、CPU15、ディスプレイ16、RAM17、通信インターフェース18、メディアドライブ19、HDD(ハードディスクドライブ)14を含みうる。HDD14には、プログラム50が格納されうる。プログラム50は、例えば、CDなどのメディア(メモリ媒体)60に格納されてコンピュータ10に提供され、コンピュータ10にインストールされうる。コンピュータ10は、例えば、タッチパッド11、キーボード12およびマウス13などの入力デバイスを含みうる。 FIG. 1 shows a schematic configuration of a design apparatus 100 according to one embodiment of the present invention. The design apparatus 100 can be typically configured by incorporating the program 50 into the computer 10. The computer 10 can include a CPU 15, a display 16, a RAM 17, a communication interface 18, a media drive 19, and an HDD (hard disk drive) 14. A program 50 can be stored in the HDD 14. The program 50 may be stored in a medium (memory medium) 60 such as a CD, provided to the computer 10, and installed in the computer 10. The computer 10 may include input devices such as a touch pad 11, a keyboard 12, and a mouse 13, for example.
 図2は、設計装置100によって実行される本発明の1つの実施形態の設計方法を説明するフローチャートである。このフローチャートに示す設計方法は、プログラム50によって規定されうる。図2に示す設計方法は、PLDおよびICが配置された基板をコンピュータによって設計する方法である。該設計方法は、基板におけるPLDおよびICの配置、および、前記基板の設計基準を取得する取得工程S100と、取得工程S100で取得した前記配置および前記基板の前記設計基準に応じて前記PLDのピン割当を決定する決定工程S110と、を含む。該設計方法は、更に、決定工程S110で前記ピン割当が決定された前記PLDのピンと前記ICのピンとを接続するための配線パターンを生成する配線工程S120を含みうる。設計装置100は、取得工程S100を実行する取得部と、決定工程S110を実行する決定部とを備える装置として把握されうる。 FIG. 2 is a flowchart illustrating a design method according to an embodiment of the present invention that is executed by the design apparatus 100. The design method shown in this flowchart can be defined by the program 50. The design method shown in FIG. 2 is a method of designing a board on which a PLD and an IC are arranged by a computer. The design method includes an acquisition step S100 for acquiring a layout of PLDs and ICs on a substrate and a design standard of the substrate, and a pin of the PLD according to the layout and the design standard of the substrate acquired in the acquisition step S100. Determining step S110 for determining allocation. The design method may further include a wiring step S120 for generating a wiring pattern for connecting the pins of the PLD and the pins of the IC for which the pin assignment has been determined in the determination step S110. The design apparatus 100 can be grasped as an apparatus including an acquisition unit that executes the acquisition step S100 and a determination unit that executes the determination step S110.
 以下の(1)~(5)は、取得工程S199で取得する設計基準の例である。設計基準は、例えば、タッチパッド11、キーボード12およびマウス13などの入力デバイス、又は、通信インターフェース18(つまり、他の装置)、又は、メディアドライブ19を介して設計装置100に提供されうる。 The following (1) to (5) are examples of design criteria acquired in the acquisition step S199. The design criteria can be provided to the design apparatus 100 via, for example, input devices such as the touch pad 11, the keyboard 12, and the mouse 13, the communication interface 18 (that is, other apparatuses), or the media drive 19.
 (1)第1の設計基準は、電源ピン、接地ピン、予約されたピン、交換が禁止されたピン、および、クロック信号ピンについては、決定工程S110においてピン割当を変更することができないという制約を含む。 (1) The first design criterion is that the pin assignment cannot be changed in the determination step S110 for power supply pins, ground pins, reserved pins, pins for which replacement is prohibited, and clock signal pins. including.
 (2)第2の設計基準は、第1のバンクの電圧と第2のバンクの電圧とが異なる場合には、第1のバンクのピンに割り当てられている信号を第2のバンクのピンに割り当てることができず、また、第2のバンクのピンに割り当てられている信号を第1のバンクのピンに割り当てることができないという制約を含む。この場合において、第2の設計基準は、第1のバンクの電圧と第2のバンクの電圧とが同じである場合には、第1のバンクのピンに割り当てられている信号を第2のバンクのピンに割り当てることができ、また、第2のバンクのピンに割り当てられている信号を第1のバンクのピンに割り当てることを許容する。 (2) The second design criterion is that when the voltage of the first bank is different from the voltage of the second bank, the signal assigned to the pin of the first bank is applied to the pin of the second bank. It cannot be assigned, and includes a restriction that a signal assigned to a pin of the second bank cannot be assigned to a pin of the first bank. In this case, when the voltage of the first bank and the voltage of the second bank are the same, the second design criterion is that the signal assigned to the pin of the first bank is The signal assigned to the pin of the second bank can be assigned to the pin of the first bank.
 あるいは、第2の設計基準は、第1のバンクの電圧と第2のバンクの電圧とが同じであるか異なるかにかかわらず、第1のバンクのピンに割り当てられている信号を第2のバンクのピンに割り当てることができず、また、第2のバンクのピンに割り当てられている信号を第1のバンクのピンに割り当てることができないという制約を含む。つまり、第2の設計基準は、各バンク内でのみPLDのピン割当を変更することができるという制約を含む。 Alternatively, the second design criteria may be that the signal assigned to the first bank pin is the second bank voltage regardless of whether the first bank voltage and the second bank voltage are the same or different. It includes a restriction that it cannot be assigned to a bank pin, and a signal assigned to a second bank pin cannot be assigned to a first bank pin. In other words, the second design standard includes a constraint that the PLD pin assignment can be changed only within each bank.
 (3)第3の設計基準は、差動信号を割り当てるピンペアは、隣接するピンのペアに限定されるという制約を含む。 (3) The third design criterion includes a constraint that pin pairs to which differential signals are assigned are limited to adjacent pin pairs.
 (4)第4の設計基準は、ユーザーが指定したスワップグループの中でのみ信号を割り当てるべきピンを変更することができるという制約を含む。この制約は、例えば、ピンA1、A2、A3をスワップグループA、ピンB1、B2、B3をスワップグループBとすると、スワップグループA(ピンA1、A2、A3)の中では信号の割り当てを変換することができ、スワップグループB(ピンB1、B2、B3)の中では信号の割り当てを変換することができるが、スワップグループAとスワップグループBとの間では信号の割り当てを変更することができないというものである。 (4) The fourth design standard includes a restriction that a pin to which a signal should be assigned can be changed only within a swap group specified by the user. For example, if the pins A1, A2, and A3 are the swap group A and the pins B1, B2, and B3 are the swap group B, the signal assignment is converted in the swap group A (pins A1, A2, and A3). In the swap group B (pins B1, B2, and B3), the signal assignment can be converted, but the signal assignment cannot be changed between the swap group A and the swap group B. Is.
 (5)第5の設計基準は、I/O属性が共通したピンの間でのみ信号の割り当ての変更が可能であるという制約を含む。 (5) The fifth design standard includes a restriction that signal allocation can be changed only between pins having common I / O attributes.
 決定工程S110は、例えば、前記PLDの複数のピンとそれらにそれぞれ接続されるべきICの複数のピンとのそれぞれの距離が距離基準を満たすようにピン割当を仮決定する仮決定工程S112と、仮決定工程S112において前記PLDの前記複数のピンの1つのピンに複数の信号が割り当てられた場合に、前記複数の信号が前記PLDの前記複数のピンのうち互いに異なるピンに割り当てられるように前記ピン割当を修正する第1修正工程S114と、第1修正工程S114において修正された前記ピン割当に従う前記PLDと前記ICとの間のラッツネストに交差が存在する場合に、当該交差がなくなるように前記ピン割当を修正する第2修正工程S115とを含みうる。 The determination step S110 includes, for example, a provisional determination step S112 that provisionally determines the pin assignment so that the distances between the plurality of pins of the PLD and the plurality of pins of the IC to be connected to each of them satisfy the distance criterion, In step S112, when a plurality of signals are assigned to one of the plurality of pins of the PLD, the pin assignment is performed such that the plurality of signals are assigned to different pins among the plurality of pins of the PLD. If there is an intersection in the ratsnest between the PLD and the IC according to the pin assignment modified in the first modification step S114, the pin assignment is performed so that the intersection is eliminated. 2nd correction process S115 which corrects.
 以下、図2に示された設計方法をより具体的に説明する。図3には、図2に示された設計方法に従う設計がなされる前における基板200が模式的に示されている。基板200は、例えば、プリント配線基板であり、基板200には、PLD210およびIC221~228が配置されている。PLD210は、円形で示された複数のピンを有する。PLD210の複数のピンには、例えば、白い円で示されたユーザーI/Oピン、黒い円で示されたGNDピン(接地ピン)、ハッチングが付された円で示されたバンク毎のI/O駆動用電源ピン、クロスハッチングが付された円で示された内部用電源ピンを含みうる。 Hereinafter, the design method shown in FIG. 2 will be described more specifically. FIG. 3 schematically shows the substrate 200 before the design according to the design method shown in FIG. 2 is made. The substrate 200 is, for example, a printed wiring board, and the PLD 210 and the ICs 221 to 228 are arranged on the substrate 200. The PLD 210 has a plurality of pins shown in a circle. The plurality of pins of the PLD 210 include, for example, a user I / O pin indicated by a white circle, a GND pin (ground pin) indicated by a black circle, and an I / O for each bank indicated by a hatched circle. O drive power supply pins and internal power supply pins indicated by circles with cross-hatching may be included.
 PLD210は、例えば、複数のバンク(I/Oバンク)BANK0~BANK4を含みうる。バンク(I/Oバンク)とは、インターフェース仕様が共通するピンが配置された領域を意味する。ただし、異なるバンクであっても、インターフェース仕様が共通している場合がある。一例において、バンクBANK0の電源電圧は2.5V、バンクBANK1の電源電圧は1.2V、バンクBANK3の電源電圧は2.5V、バンクBANK4の電源電圧は2.5Vでありうる。 The PLD 210 can include, for example, a plurality of banks (I / O banks) BANK0 to BANK4. A bank (I / O bank) means an area in which pins having common interface specifications are arranged. However, interface specifications may be common even in different banks. In one example, the power supply voltage of the bank BANK0 may be 2.5V, the power supply voltage of the bank BANK1 may be 1.2V, the power supply voltage of the bank BANK3 may be 2.5V, and the power supply voltage of the bank BANK4 may be 2.5V.
 図3において、PLD210のピンと複数のIC221~228のピンとの対応関係は、点線で描かれたラッツネストRNで表現されている。ラッツネストRNで連結された2つのピンは、配線パターンによって互いに連結されるべきものである。 In FIG. 3, the correspondence relationship between the pins of the PLD 210 and the pins of the plurality of ICs 221 to 228 is represented by a ratsnest RN drawn by dotted lines. The two pins connected by the ratsnest RN should be connected to each other by the wiring pattern.
 取得工程S100では、設計装置100は、基板200におけるPLD210およびIC221~228の配置、および、基板200の設計基準を取得する。基板200におけるPLD210およびIC221~228の配置は、例えば、基板200におけるPLD210およびIC221~228の座標を含みうる。 In the acquisition step S100, the design apparatus 100 acquires the arrangement of the PLD 210 and the ICs 221 to 228 on the substrate 200 and the design standard of the substrate 200. The arrangement of the PLD 210 and the ICs 221 to 228 on the substrate 200 can include the coordinates of the PLD 210 and the ICs 221 to 228 on the substrate 200, for example.
 決定工程S110では、設計装置100は、取得工程S100で取得した配置および基板200の設計基準に応じてPLD210のピン割当を決定する。より具体的には、決定工程S110では、設計装置100は、PLD210の複数のピンとそれらにそれぞれ接続されるべきICの複数のピンとのそれぞれの距離が距離制約を満たすようにピン割当を決定しうる。ここで、距離制約とは、例えば、PLD210における接続対象のピンからの距離が所定距離以下であること、例えば、PLD210における接続対象のピンからの距離が最短距離であることを要求する制約である。図6には、決定工程S110によってピン割当が決定された後の基板200が模式的に示されている。 In the determination step S110, the design apparatus 100 determines the pin assignment of the PLD 210 according to the arrangement acquired in the acquisition step S100 and the design standard of the substrate 200. More specifically, in the determination step S110, the design apparatus 100 may determine the pin assignment so that the distances between the plurality of pins of the PLD 210 and the plurality of pins of the IC to be connected to each of them satisfy the distance constraint. . Here, the distance constraint is a constraint that requires, for example, that the distance from the connection target pin in the PLD 210 is equal to or less than a predetermined distance, for example, that the distance from the connection target pin in the PLD 210 is the shortest distance. . FIG. 6 schematically shows the substrate 200 after the pin assignment is determined in the determination step S110.
 決定工程S110は、仮決定工程S112と、第1修正工程S114と、第2修正工程S116とを含みうる。図4には、仮決定工程S112の実行後における基板200が模式的に示されている。この例では、仮決定工程S112では、PLD210の複数のピンとそれらにそれぞれ接続されるべきIC221~28の複数のピンとのそれぞれの距離が最短距離であるという距離制約を満たすように、PLD210のピン割当が仮決定される。このような距離制約の下でPLD210のピン割当が仮決定されると、図4に例示されるように、PLD210の1つのピンがIC221~228の複数のピンのうちの2以上のピンに重複して接続されるようにPLD210のピン割当が仮決定されうる。つまり、図4に例示された状態は、PLD210の1つのピンに対して複数の信号が割り当てられた状態である。 The determination step S110 can include a provisional determination step S112, a first correction step S114, and a second correction step S116. FIG. 4 schematically shows the substrate 200 after the provisional determination step S112. In this example, in the provisional determination step S112, the pin assignment of the PLD 210 is performed so as to satisfy the distance constraint that the distance between the plurality of pins of the PLD 210 and the plurality of pins of the ICs 221 to 28 to be connected to them is the shortest distance. Is provisionally determined. When the pin assignment of the PLD 210 is provisionally determined under such a distance constraint, as illustrated in FIG. 4, one pin of the PLD 210 overlaps two or more of the plurality of pins of the ICs 221 to 228. Thus, the pin assignment of the PLD 210 can be provisionally determined so as to be connected. That is, the state illustrated in FIG. 4 is a state in which a plurality of signals are assigned to one pin of the PLD 210.
 第1修正工程S114では、設計装置100は、図5に例示されるように、PLD210の1つのピンに対して割り当てられた複数の信号がPLD210の複数の信号のうち互いに異なるピンに割り当てられるように、PLD210のピン割当を修正する。具体的には、第1修正工程S114では、1つのピンに重複して割り当てられた複数の信号のうちの1つの信号以外を他のピンに割り当てる。例えば、第1修正工程S114では、設計装置100は、1つのピンに重複して割り当てられた複数の信号のうちの1つの信号以外の信号を当該1つの信号が割り当てられているピンに隣接するピンに割り当てる。 In the first modification step S114, as illustrated in FIG. 5, the design apparatus 100 may assign a plurality of signals assigned to one pin of the PLD 210 to different pins among the plurality of signals of the PLD 210. Next, the pin assignment of the PLD 210 is corrected. Specifically, in the first correction step S114, a signal other than one signal among a plurality of signals assigned to one pin is assigned to another pin. For example, in the first modification step S114, the design apparatus 100 is adjacent to a pin to which the one signal is assigned, except for one signal among a plurality of signals assigned to one pin. Assign to a pin.
 ここで、第1修正工程S114において修正されたPLD210のピン割当に従うPLD210とIC221~28との間のラッツネストRNに交差が生じうる。そこで、第2修正工程S116では、図6に例示するように、当該交差がなくなるようにPLD210のピン割当を修正する。交差をなくすためには、例えば、PLD210の複数のピンのうち当該交差に係るピンに対して割り当てられている信号を交換すればよい。例えば、PLD210のピンAに接続されたラッツネストとPLD210のピンBに接続されたラッツネストとが交差している場合には、ピンAに割り当てられている信号とピンBに割り当てられている信号とを交換すれば良い。 Here, an intersection may occur in the ratsnest RN between the PLD 210 and the ICs 221 to 28 according to the pin assignment of the PLD 210 modified in the first modification step S114. Therefore, in the second correction step S116, as illustrated in FIG. 6, the pin assignment of the PLD 210 is corrected so that the intersection does not exist. In order to eliminate the intersection, for example, signals assigned to the pins related to the intersection among the plurality of pins of the PLD 210 may be exchanged. For example, if the ratsnest connected to pin A of PLD 210 and the ratsnest connected to pin B of PLD 210 intersect, the signal assigned to pin A and the signal assigned to pin B are Replace it.
 なお、仮決定工程S112の実行によってPLD210の1つのピンに対して複数の信号が割り当てられるような誤りが発生しない場合には第1修正工程S114は不要であるし、仮決定工程S112および/または第1修正工程S114の実施によってラッツネストRNの交差が発生しない場合には第2修正工程S116は不要である。 Note that when the execution of the provisional determination step S112 does not cause an error such that a plurality of signals are assigned to one pin of the PLD 210, the first correction step S114 is unnecessary, and the provisional determination step S112 and / or When the crossing of the rats nest RN does not occur due to the execution of the first correction step S114, the second correction step S116 is not necessary.
 第1修正工程S114を実施しない場合、第2修正工程S116では、仮決定工程S112において決定されたPLD210のピン割当に従うPLD210とIC221~228との間のラッツネストRNに交差が存在する場合に、当該交差がなくなるようにPLD210のピン割当を修正する。 When the first correction step S114 is not performed, in the second correction step S116, when there is an intersection in the ratsnest RN between the PLD 210 and the ICs 221 to 228 according to the pin assignment of the PLD 210 determined in the provisional determination step S112, Modify the pin assignment of PLD 210 so that there are no crossings.
 配線工程S120では、設計装置100は、図7に例示されるように、各ラッツネストRNに接続された2つのピン(即ち、接続すべき2つのピン)を接続するための配線パターンWPを生成する。図7に例示された配線パターンWPは、図15に例示された配線パターンWPよりも配線長が短く、また、交差が少ない。つまり、図7に例示された配線パターンWPは、図15に例示された配線パターンWPよりも配線の質が高い。PLD210は、決定工程S110で決定されたピン割当にしたがってプログラムされる。 In the wiring step S120, the design apparatus 100 generates a wiring pattern WP for connecting two pins connected to each rats nest RN (that is, two pins to be connected) as illustrated in FIG. . The wiring pattern WP illustrated in FIG. 7 has a shorter wiring length and fewer intersections than the wiring pattern WP illustrated in FIG. That is, the wiring pattern WP illustrated in FIG. 7 has higher wiring quality than the wiring pattern WP illustrated in FIG. The PLD 210 is programmed according to the pin assignment determined in the determination step S110.
 以上のように、基板200におけるPLD210およびIC221~228の配置、および、基板200の設計基準に応じてPLD210のピン割当を決定することによって、PLD210のピンとIC221~228のピンとを接続する配線パターンWPの質を高めることができる。 As described above, the wiring pattern WP that connects the pins of the PLD 210 and the pins of the ICs 221 to 228 by determining the arrangement of the PLD 210 and the ICs 221 to 228 on the substrate 200 and the pin assignment of the PLD 210 according to the design criteria of the substrate 200. Can enhance the quality.
 以下、図8および図9A~9Eを参照しながら配線工程S120のより具体的な処理例を説明する。図9A~9Eにおいて、四角形はIC221~228のピンを示し、円はPLD210のピンを示している。 Hereinafter, a more specific processing example of the wiring step S120 will be described with reference to FIG. 8 and FIGS. 9A to 9E. 9A to 9E, the squares indicate the pins of the ICs 221 to 228, and the circles indicate the pins of the PLD 210.
 まず、工程S210において、設計装置100は、図9Aに例示されるように、基板200上の配線領域(配線をすることができる領域)を複数の分割領域DRに分割する。次いで、工程S220では、設計装置100は、接続すべきピンペアを選択する。ここでは、一例として、接続すべきピンペアがIC221~228の複数のピンの1つであるピンP1と、PLD210の複数のピンのうちの1つであるピンP2とで構成され、ピンP1からピンP2に向かって配線パターンの経路を決定する場合を説明する。ピンP1は、配線パターンの接続元のピンであり、ピンP2は、配線パターンの接続先のピンである。 First, in step S210, as illustrated in FIG. 9A, the design apparatus 100 divides a wiring region (a region where wiring can be performed) on the substrate 200 into a plurality of divided regions DR. Next, in step S220, the design apparatus 100 selects a pin pair to be connected. Here, as an example, a pin pair to be connected is composed of a pin P1 which is one of a plurality of pins of the ICs 221 to 228 and a pin P2 which is one of a plurality of pins of the PLD 210. A case where the route of the wiring pattern is determined toward P2 will be described. The pin P1 is a connection source pin of the wiring pattern, and the pin P2 is a connection destination pin of the wiring pattern.
 工程S230では、設計装置100は、図9Bに例示されるように、接続元のピンP1に隣接し且つ接続先のピンP2の方向に存在する分割領域DR1を決定する。ここで、分割領域DR1は、その中に配線パターンが存在しない領域DRの中から決定される。工程S240では、設計装置100は、図9Cに例示されるように、分割領域DR1の中に配線パターンWPを配置する。 In step S230, as illustrated in FIG. 9B, the design apparatus 100 determines a divided region DR1 that is adjacent to the connection source pin P1 and exists in the direction of the connection destination pin P2. Here, the divided region DR1 is determined from the region DR in which no wiring pattern exists. In step S240, the design apparatus 100 arranges the wiring pattern WP in the divided region DR1, as illustrated in FIG. 9C.
 工程S250では、設計装置100は、図9Dに例示されるように、直前に配線パターンWPを配置した分割領域DR1に隣接し且つ接続先のピンP2の方向に存在する分割領域DR2を決定する。ここで、分割領域DR2は、その中に配線パターンが存在しない領域DRの中から決定される。工程S260では、設計装置100は、図9Eに例示されるように、分割領域DR2の中に配線パターンWPを配置する。 In step S250, as illustrated in FIG. 9D, the design apparatus 100 determines a divided region DR2 that is adjacent to the divided region DR1 in which the wiring pattern WP is disposed immediately before and exists in the direction of the connection destination pin P2. Here, the divided region DR2 is determined from the region DR in which no wiring pattern exists. In step S260, the design apparatus 100 arranges the wiring pattern WP in the divided region DR2, as illustrated in FIG. 9E.
 工程S270では、設計装置100は、選択されたピンペア(ピンP1、ピンP2)の間の配線パターンWPによる接続が完了したか否かを判断し、完了していない場合には工程S250および工程S260を追加的に実施し、完了した場合には工程S280に進む。 In step S270, the design apparatus 100 determines whether or not the connection by the wiring pattern WP between the selected pin pair (pin P1, pin P2) is completed. If not, the design apparatus 100 performs step S250 and step S260. Is additionally performed, and when completed, the process proceeds to step S280.
 工程S280では、設計装置100は、全てのピンペア間の接続が完了したか否かを判断し、完了していない場合には工程S220に戻って、新たなピンペアについて上記と同様の処理を実行し、完了した場合には図8に示す処理を終了する。 In step S280, the design apparatus 100 determines whether or not the connection between all the pin pairs has been completed. If the connection has not been completed, the design apparatus 100 returns to step S220 and executes the same processing as described above for the new pin pair. If completed, the process shown in FIG. 8 ends.
 図10および図11を参照しながらディスプレイ16を通して提供されるユーザーインターフェースを例示的に説明する。設計装置100は、ディスプレイ16に設計中の基板200を表示する。図10および図11に示す例では、基板200には、複数のPLD(FPGA1、FPGA2、FPGA3、FPGA4)が搭載されている。各PLD(FPGA1、FPGA2、FPGA3、FPGA4)は、複数のバンク(I/Oバンク)を有しうる。 The user interface provided through the display 16 will be exemplarily described with reference to FIGS. The design apparatus 100 displays the substrate 200 under design on the display 16. In the example illustrated in FIGS. 10 and 11, a plurality of PLDs (FPGA1, FPGA2, FPGA3, FPGA4) are mounted on the substrate 200. Each PLD (FPGA1, FPGA2, FPGA3, FPGA4) may have a plurality of banks (I / O banks).
 設計装置100(あるいはプログラム50)は、コマンドメニュー310をディスプレイ16に表示しうる。コマンドメニュー310は、例えば、「ピン割当の最適化(部品全体)」コマンド、「ピン割当の最適化(I/Oバンク内)」コマンド、「自動配線」コマンド、「ピン割当最適化・配線」コマンドを含む。 The design device 100 (or the program 50) can display the command menu 310 on the display 16. The command menu 310 includes, for example, a “pin assignment optimization (entire part)” command, a “pin assignment optimization (within I / O bank)” command, an “auto wiring” command, and a “pin assignment optimization / wiring”. Contains commands.
 「ピン割当の最適化(部品全体)」コマンドは、PLD(この例ではFPGA)のピン割当の最適化(変更)を各PLD内のピンの全体を対象として実行することを指示するコマンドである。 The “optimization of pin assignment (whole component)” command is a command for instructing the optimization (change) of pin assignment of the PLD (FPGA in this example) for the entire pin in each PLD. .
 「ピン割当の最適化(I/Oバンク内)」コマンドは、PLD(この例ではFPGA)のピン割当の最適化(変更)を各PLDの各バンク(I/Oバンク)内で実行することを指示するコマンドである。 The “Optimize pin assignment (in I / O bank)” command executes optimization (change) of pin assignment of PLD (FPGA in this example) in each bank (I / O bank) of each PLD. Is a command for instructing.
 「自動配線」コマンドは、PLD(この例ではFPGA)の現在のピン割当にしたがって自動配線をすることを指示するコマンドである。 The “automatic wiring” command is a command for instructing automatic wiring according to the current pin assignment of the PLD (FPGA in this example).
 「ピン割当最適化・配線」コマンドは、PLD(この例ではFPGA)のピン割当の最適化(変更)および自動配線を実行することを指示するコマンドである。 The “pin assignment optimization / wiring” command is a command for instructing to perform optimization (change) of pin assignment of PLD (FPGA in this example) and automatic wiring.
 「ピン割当最適化・配線」コマンドには、サブメニュー320が設けられうる。複数のPLD(この例ではFPGA)が存在する場合に、サブメニュー320により、ユーザーは、ピン割当の最適化(変更)を行う対象を指定することができる。また、サブメニュー320により、ユーザーは、PLD(この例ではFPGA)のピン割当の最適化(変更)を各PLDのピンの全体を対象として実行するモード、または、PLD(この例ではFPGA)のピン割当の最適化(変更)を各PLDの各バンク(I/Oバンク)内で実行するモードを選択することができる。 The “pin assignment optimization / wiring” command can be provided with a submenu 320. When there are a plurality of PLDs (FPGAs in this example), the submenu 320 allows the user to specify a target for which pin assignment is optimized (changed). In addition, the submenu 320 allows the user to execute a mode in which the pin assignment optimization (change) of the PLD (FPGA in this example) is performed on the entire pins of each PLD, or in the PLD (FPGA in this example). A mode in which optimization (change) of pin assignment is executed in each bank (I / O bank) of each PLD can be selected.
 サブメニュー320には、更にサブメニュー330が設けられうる。ユーザーは、サブメニュー330により、ピン割当を行うべきバンク(I/Oバンク)を指定することができる。 In the submenu 320, a submenu 330 can be further provided. The user can designate a bank (I / O bank) to which pin assignment is to be performed by using the submenu 330.
 以下、図12A~12C、13A~13C、14A~14Cを参照しながら上記の実施形態の変形例を説明する。上記の実施形態では、PLDとICとの間にそれらを接続するための配線パターンが全く存在しない状態でPLDのピン割当が決定ないし最適化(変更)されるが、図12~A~12C、13A~13C、14A~14Cに例示されるように、PLD210とIC220との間にそれらを接続するための配線パターンWP0が部分的に存在する状態でPLD210のピン割当が決定ないし最適化(変更)されてもよい。 Hereinafter, modifications of the above embodiment will be described with reference to FIGS. 12A to 12C, 13A to 13C, and 14A to 14C. In the above embodiment, the pin assignment of the PLD is determined or optimized (changed) in a state where there is no wiring pattern for connecting the PLD and the IC, but FIGS. 12 to A to 12C, As illustrated in 13A to 13C and 14A to 14C, the pin assignment of the PLD 210 is determined or optimized (changed) in a state where the wiring pattern WP0 for connecting them partially exists between the PLD 210 and the IC 220. May be.
 図12A、図13A、図14Aに示す例では、IC220のピンとPLD210のピンとの間に配線パターンWP0が部分的に延びているが、配線パターンWP0は、IC220のピンとPLD210のピンとを接続していない。図12A、図13A、図14Aに示す状態では、IC220のピンとPLD210のピンとを接続するラッツネストRNが交差しているので、この状態でIC220のピンとPLD210のピンとを接続する配線パターンを配置すると、配線パターンに交差が生じる。 In the example shown in FIGS. 12A, 13A, and 14A, the wiring pattern WP0 partially extends between the pin of the IC 220 and the pin of the PLD 210, but the wiring pattern WP0 does not connect the pin of the IC 220 and the pin of the PLD 210. . In the states shown in FIGS. 12A, 13A, and 14A, the ratsnest RN that connects the pins of the IC 220 and the pins of the PLD 210 intersect with each other. Crossing occurs in the pattern.
 そこで、上記の実施形態と同様に、設計装置100は、取得工程S100において、基板におけるPLD210およびIC220の配置、および、前記基板の設計基準を取得する。設計装置100は、決定工程S110において、取得工程S100で取得した前記配置および前記基板の前記設計基準に応じてPLD210のピン割当を決定する。ここで、PLD210のピン割当は、図12B、図13B、図14Bに例示されるように、ラッツネストRNの交差がなくなるように、又は、ラッツネストRNの交差が減少するようになされうる。 Therefore, as in the above-described embodiment, the design apparatus 100 acquires the arrangement of the PLD 210 and the IC 220 on the substrate and the design standard of the substrate in the acquisition step S100. In the determination step S110, the design apparatus 100 determines the pin assignment of the PLD 210 according to the arrangement acquired in the acquisition step S100 and the design criteria of the substrate. Here, as illustrated in FIGS. 12B, 13B, and 14B, the pin assignment of the PLD 210 may be performed such that the intersection of the ratsnest RN is eliminated or the intersection of the ratsnest RN is decreased.
 設計装置100は、S120において、図12C、図13C、図14Cに例示されるように、決定工程S110で前記ピン割当が決定されたPLD210のピンとIC220のピンとを接続するための配線パターンWPを生成する。ここで、配線パターンWPは、既に存在する配線パターンWP0を考慮して、典型的には、配線パターンWP0を利用するように生成される。 In S120, as illustrated in FIGS. 12C, 13C, and 14C, the design apparatus 100 generates a wiring pattern WP for connecting the pins of the PLD 210 and the pins of the IC 220 whose pin assignments have been determined in the determination step S110. To do. Here, the wiring pattern WP is typically generated so as to use the wiring pattern WP0 in consideration of the already existing wiring pattern WP0.

Claims (11)

  1.  PLDおよびICが配置された基板をコンピュータによって設計する設計方法であって、
     前記基板における前記PLDおよび前記ICの配置、および、前記基板の設計基準を取得する取得工程と、
     前記取得工程で取得した前記配置および前記基板の前記設計基準に応じて前記PLDのピン割当を決定する決定工程と、を含む、
     ことを特徴とする設計方法。
    A design method for designing a substrate on which a PLD and an IC are arranged by a computer,
    An acquisition step of acquiring the placement of the PLD and the IC on the substrate and the design criteria of the substrate;
    Determining a pin assignment of the PLD according to the arrangement acquired in the acquisition step and the design criteria of the substrate,
    A design method characterized by that.
  2.  前記決定工程で前記ピン割当が決定された前記PLDのピンと前記ICのピンとを接続するための配線パターンを生成する配線工程を更に含むことを特徴とする請求項1に記載の設計方法。 2. The design method according to claim 1, further comprising a wiring step of generating a wiring pattern for connecting the pin of the PLD and the pin of the IC for which the pin assignment has been determined in the determination step.
  3.  前記決定工程では、前記PLDの複数のピンとそれらにそれぞれ接続されるべき前記ICの複数のピンとのそれぞれの距離が距離制約を満たすように前記ピン割当を決定する、
     ことを特徴とする請求項1又は2に記載の設計方法。
    In the determining step, the pin assignment is determined so that distances between a plurality of pins of the PLD and a plurality of pins of the IC to be connected to the pins satisfy a distance constraint,
    The design method according to claim 1, wherein:
  4.  前記決定工程は、
     前記PLDの複数のピンとそれらにそれぞれ接続されるべき前記ICの複数のピンとのそれぞれの距離が距離制約を満たすように前記ピン割当を仮決定する仮決定工程と、
     前記仮決定工程において、前記PLDの前記複数のピンの1つのピンに複数の信号が割り当てられた場合に、前記複数の信号が前記PLDの前記複数のピンのうち互いに異なるピンに割り当てられるように前記ピン割当を修正する修正工程と、を含む、
     ことを特徴とする請求項1又は2に記載の設計方法。
    The determination step includes
    A tentative determination step of tentatively determining the pin assignment such that distances between the plurality of pins of the PLD and the plurality of pins of the IC to be connected to the pins satisfy a distance constraint;
    In the provisional determination step, when a plurality of signals are assigned to one of the plurality of pins of the PLD, the plurality of signals are assigned to different pins among the plurality of pins of the PLD. Modifying the pin assignment,
    The design method according to claim 1 or 2, wherein
  5.  前記決定工程は、
     前記PLDの複数のピンとそれらにそれぞれ接続されるべき前記ICの複数のピンとのそれぞれの距離が距離制約を満たすように前記ピン割当を仮決定する仮決定工程と、
     前記仮決定工程において決定された前記ピン割当に従う前記PLDと前記ICとの間のラッツネストに交差が存在する場合に、当該交差がなくなるように前記ピン割当を修正する修正工程と、を含む、
     ことを特徴とする請求項1又は2に記載の設計方法。
    The determination step includes
    A tentative determination step of tentatively determining the pin assignment such that distances between the plurality of pins of the PLD and the plurality of pins of the IC to be connected to the pins satisfy a distance constraint;
    Modifying the pin assignment to eliminate the intersection when there is an intersection in the ratsnest between the PLD and the IC according to the pin assignment determined in the provisional decision step,
    The design method according to claim 1, wherein:
  6.  前記決定工程は、
     前記PLDの複数のピンとそれらにそれぞれ接続されるべき前記ICの複数のピンとのそれぞれの距離が距離基準を満たすように前記ピン割当を仮決定する仮決定工程と、
     前記仮決定工程において前記PLDの前記複数のピンの1つのピンに複数の信号が割り当てられた場合に、前記複数の信号が前記PLDの前記複数のピンのうち互いに異なるピンに割り当てられるように前記ピン割当を修正する第1修正工程と、
     前記第1修正工程において修正された前記ピン割当に従う前記PLDと前記ICとの間のラッツネストに交差が存在する場合に、当該交差がなくなるように前記ピン割当を修正する第2修正工程と、を含む、
     ことを特徴とする請求項1又は2に記載の設計方法。
    The determination step includes
    A provisional determination step of tentatively determining the pin assignment such that distances between the plurality of pins of the PLD and the plurality of pins of the IC to be connected to the pins each satisfy a distance criterion;
    When a plurality of signals are assigned to one of the plurality of pins of the PLD in the provisional determination step, the plurality of signals are assigned to different pins among the plurality of pins of the PLD. A first modification step for modifying the pin assignment;
    A second modification step of modifying the pin assignment so that the intersection is eliminated when there is an intersection in a ratsnest between the PLD and the IC that follows the pin assignment modified in the first modification step; Including,
    The design method according to claim 1, wherein:
  7.  前記基板には、複数のPLDが配置され、
     前記取得工程は、前記複数のPLDの中から前記取得工程および前記決定工程を通して前記ピン割当を決定すべきPLDをユーザーに選択させ、該ユーザーによって選択されたPLDの前記基板における配置を取得する、
     ことを特徴とする請求項1乃至6のいずれか1項に記載の設計方法。
    A plurality of PLDs are disposed on the substrate,
    The acquisition step allows a user to select a PLD from which the pin assignment is to be determined through the acquisition step and the determination step from among the plurality of PLDs, and acquires the arrangement of the PLD selected by the user on the substrate.
    The design method according to any one of claims 1 to 6, wherein:
  8.  前記PLDは、複数のバンクを含み、前記設計基準は、各バンク内でのみ前記ピン割当を変更することができるという制約を含む、
     ことを特徴とする請求項1乃至7のいずれか1項に記載の設計方法。
    The PLD includes a plurality of banks, and the design criteria includes a constraint that the pin assignment can be changed only within each bank.
    The design method according to any one of claims 1 to 7, wherein:
  9.  請求項1乃至8のいずれか1項に記載の設計方法をコンピュータに実行させるためのプログラム。 A program for causing a computer to execute the design method according to any one of claims 1 to 8.
  10.  請求項1乃至8のいずれか1項に記載の設計方法をコンピュータに実行させるためのプログラムを格納したメモリ媒体。 A memory medium storing a program for causing a computer to execute the design method according to any one of claims 1 to 8.
  11.  PLDおよび少なくとも1つのICが配置された基板を設計する設計装置であって、
     前記基板における前記PLDおよび前記ICの配置および前記基板の設計基準を取得する取得部と、
     前記取得部が取得した前記配置および前記基板の前記設計基準に応じて前記PLDのピン割当を決定部と、を含む、
     ことを特徴とする設計装置。
    A design apparatus for designing a substrate on which a PLD and at least one IC are arranged,
    An acquisition unit for acquiring the placement of the PLD and the IC on the substrate and the design criteria of the substrate;
    A determination unit that determines the pin assignment of the PLD according to the arrangement acquired by the acquisition unit and the design criteria of the substrate,
    A design device characterized by that.
PCT/JP2013/000139 2013-01-16 2013-01-16 Design method, program, memory medium, and designing device WO2014111969A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
PCT/JP2013/000139 WO2014111969A1 (en) 2013-01-16 2013-01-16 Design method, program, memory medium, and designing device
JP2014557174A JP5922802B2 (en) 2013-01-16 2013-01-16 DESIGN METHOD, PROGRAM, MEMORY MEDIUM, AND DESIGN DEVICE

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/JP2013/000139 WO2014111969A1 (en) 2013-01-16 2013-01-16 Design method, program, memory medium, and designing device

Publications (1)

Publication Number Publication Date
WO2014111969A1 true WO2014111969A1 (en) 2014-07-24

Family

ID=51209104

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2013/000139 WO2014111969A1 (en) 2013-01-16 2013-01-16 Design method, program, memory medium, and designing device

Country Status (2)

Country Link
JP (1) JP5922802B2 (en)
WO (1) WO2014111969A1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016161956A (en) * 2015-02-26 2016-09-05 富士通株式会社 Design assistance program, design assistance device, and design assistance method
CN115544950A (en) * 2022-09-21 2022-12-30 深圳市紫光同创电子有限公司 Constraint file importing method, device, equipment and storage medium

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03180976A (en) * 1989-12-11 1991-08-06 Hitachi Ltd Method for allocating input/output terminal
JPH06301745A (en) * 1993-04-14 1994-10-28 Nec Corp Interactive lsi pin floor planner
JP2008165750A (en) * 2006-12-04 2008-07-17 Fujitsu Ltd Circuit-design support apparatus, circuit-design support method, circuit-design support program, and printed-circuit-board manufacturing method
JP2010033491A (en) * 2008-07-31 2010-02-12 Zuken Inc Data management device, data management method, program, and computer readable recording medium
JP2010079357A (en) * 2008-09-24 2010-04-08 Koyo Electronics Ind Co Ltd Method of designing substrate including programmable logic circuit such as fpga

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH03180976A (en) * 1989-12-11 1991-08-06 Hitachi Ltd Method for allocating input/output terminal
JPH06301745A (en) * 1993-04-14 1994-10-28 Nec Corp Interactive lsi pin floor planner
JP2008165750A (en) * 2006-12-04 2008-07-17 Fujitsu Ltd Circuit-design support apparatus, circuit-design support method, circuit-design support program, and printed-circuit-board manufacturing method
JP2010033491A (en) * 2008-07-31 2010-02-12 Zuken Inc Data management device, data management method, program, and computer readable recording medium
JP2010079357A (en) * 2008-09-24 2010-04-08 Koyo Electronics Ind Co Ltd Method of designing substrate including programmable logic circuit such as fpga

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016161956A (en) * 2015-02-26 2016-09-05 富士通株式会社 Design assistance program, design assistance device, and design assistance method
CN115544950A (en) * 2022-09-21 2022-12-30 深圳市紫光同创电子有限公司 Constraint file importing method, device, equipment and storage medium

Also Published As

Publication number Publication date
JP5922802B2 (en) 2016-05-24
JPWO2014111969A1 (en) 2017-01-19

Similar Documents

Publication Publication Date Title
US10797702B2 (en) Apparatus for flexible electronic interfaces and associated methods
US10242146B2 (en) Method and apparatus for placing and routing partial reconfiguration modules
US8997033B1 (en) Techniques for generating a single configuration file for multiple partial reconfiguration regions
US8423946B1 (en) Circuitry having programmable power rails, architectures, apparatuses, and systems including the same, and methods and algorithms for programming and/or configuring power rails in an integrated circuit
US8479136B2 (en) Decoupling capacitor insertion using hypergraph connectivity analysis
US9003344B2 (en) Generating pattern-based estimated RC data with analysis of route information
US20160154924A1 (en) Semiconductor design method and computer-readable recording medium
US10068047B1 (en) Systems and methods for designing an integrated circuit
US20180101624A1 (en) Methods for reducing delay on integrated circuits
US8924913B1 (en) Schematic display of connectivity in an integrated circuit design
US10031996B2 (en) Timing based net constraints tagging with zero wire load validation
CN108140067B (en) Method and system for circuit design optimization
US8352899B1 (en) Method to modify an integrated circuit (IC) design
CN112100971A (en) Method for constructing hierarchical clock tree for integrated circuit
JP5922802B2 (en) DESIGN METHOD, PROGRAM, MEMORY MEDIUM, AND DESIGN DEVICE
US9940422B2 (en) Methods for reducing congestion region in layout area of IC
US20130346936A1 (en) Method and Apparatus to Generate Pattern-Based Estimated RC Data with Analysis of Route Information
US10235486B2 (en) Method, apparatus and system for automatically deriving parameters for an interconnect
JP2009134439A (en) Layout design method using soft macro, data structure for soft macro and creation method for soft macro library
KR101932805B1 (en) Pattern-based power-and-ground (pg) routing and via creation
JP6326756B2 (en) Information processing apparatus, scan path connection method, and program for configuring scan campus
JP2010140279A (en) Method for designing electronic system
JP7334580B2 (en) Automatic placement and routing device, automatic placement and routing method, automatic placement and routing program, storage medium storing automatic placement and routing program, and semiconductor integrated circuit
US7657857B2 (en) Performance visualization of delay in circuit design
JP2017107465A (en) Computation processing device, computation processing system, and computation processing method

Legal Events

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

Ref document number: 13871979

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2014557174

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 13871979

Country of ref document: EP

Kind code of ref document: A1