[go: up one dir, main page]

CN105930554A - Allegro based fly line automatic layering method - Google Patents

Allegro based fly line automatic layering method Download PDF

Info

Publication number
CN105930554A
CN105930554A CN201610222975.8A CN201610222975A CN105930554A CN 105930554 A CN105930554 A CN 105930554A CN 201610222975 A CN201610222975 A CN 201610222975A CN 105930554 A CN105930554 A CN 105930554A
Authority
CN
China
Prior art keywords
allegro
flying
line
layering
lines
Prior art date
Legal status (The legal status 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 status listed.)
Pending
Application number
CN201610222975.8A
Other languages
Chinese (zh)
Inventor
卞名
卞一名
翟西斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Inspur Group Co Ltd
Original Assignee
Inspur Group Co Ltd
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 Inspur Group Co Ltd filed Critical Inspur Group Co Ltd
Priority to CN201610222975.8A priority Critical patent/CN105930554A/en
Publication of CN105930554A publication Critical patent/CN105930554A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/392Floor-planning or layout, e.g. partitioning or placement
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/30Circuit design
    • G06F30/39Circuit design at the physical level
    • G06F30/398Design verification or optimisation, e.g. using design rule check [DRC], layout versus schematics [LVS] or finite element methods [FEM]
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02EREDUCTION OF GREENHOUSE GAS [GHG] EMISSIONS, RELATED TO ENERGY GENERATION, TRANSMISSION OR DISTRIBUTION
    • Y02E60/00Enabling technologies; Technologies with a potential or indirect contribution to GHG emissions mitigation

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)
  • Architecture (AREA)
  • Design And Manufacture Of Integrated Circuits (AREA)

Abstract

本发明公开一种基于Allegro的飞线自动分层的方法,属于计算机应用技术领域;本发明利用Allegro软件提供的扩展Skill接口,对此数据库进行编辑操作,根据电路板信号线的不同及其重要程度来分层,结合实际电路板的要求进行布线走线,避免线路交叉,出现憋线的情况,以这个分层方式为参考进行连线,从而实现一些程序没有提供的功能,提高Layout工作的效率,有效解决因飞线太多造成憋线的问题,方便工程师走线前的规划,节省时间,提高工作效率,减少不必要的重复工作。

The invention discloses a method for automatic layering of flying wires based on Allegro, which belongs to the technical field of computer applications; the invention uses the extended Skill interface provided by Allegro software to edit the database, and according to the difference and importance of circuit board signal lines According to the degree of layering, the wiring is carried out according to the requirements of the actual circuit board to avoid the crossing of the lines and the situation of holding the wires. Use this layering method as a reference to connect the lines, so as to realize some functions that are not provided by the program and improve the efficiency of the Layout work. Efficiency, effectively solve the problem of wire holding caused by too many flying wires, facilitate the planning of engineers before routing, save time, improve work efficiency, and reduce unnecessary repetitive work.

Description

一种基于Allegro的飞线自动分层的方法A method for automatic layering of flying wires based on Allegro

技术领域 technical field

本发明公开一种基于Allegro的飞线自动分层的方法,属于计算机应用技术领域。 The invention discloses an Allegro-based method for automatic layering of flying wires, which belongs to the technical field of computer applications.

背景技术 Background technique

随着电子技术的发展,人们对信号完整性要求越来越高,从DDR2到DDR3,再到如今的DDR4,从PCI到PCIE,信号的功能不断加强,随之而来的就是电路板的复杂化,将繁多错综复杂的信号线进行正确连接比以往要增加许多工程师的工作量。对信号线进行分层可以适当简化信号线的复杂程度,但当前的Candence软件只能把飞线显示出来,却不能把他们分层,而人工分层往往容易出错,而且浪费很多时间。Allegro是PCB 设计布线工具。 Allegro 提供了良好且交互的工作接口,和Cadence结合,可以提供复杂 PCB 设计布线方案。软件中的 Constraint Manger 提供了简洁明了的接口方便使用者设定和查看 Constraint 宣告。Allegro工作环境中,自动在摆零件及布线时依照规则处理及检查,Allegro 还具有自动推挤 push 和贴线 hug 走线以及完善的自动修线功能,可以提供多用户同时处理一块复杂板子。 With the development of electronic technology, people have higher and higher requirements for signal integrity. From DDR2 to DDR3, to today's DDR4, from PCI to PCIE, the signal function is continuously strengthened, and the complexity of the circuit board follows. The correct connection of numerous and intricate signal lines will increase the workload of many engineers more than ever. Layering signal lines can properly simplify the complexity of signal lines, but the current Candence software can only display flying lines, but cannot layer them, and manual layering is often error-prone and wastes a lot of time. Allegro is a PCB design routing tool. Allegro provides a good and interactive working interface, combined with Cadence, it can provide complex PCB design routing solutions. The Constraint Manger in the software provides a concise and clear interface for users to set and view Constraint declarations. In the Allegro working environment, it automatically processes and checks according to the rules when placing parts and wiring. Allegro also has automatic push and wire sticking hug routing and perfect automatic line repair functions, which can provide multiple users to process a complex board at the same time.

本发明提供一种基于Allegro的飞线自动分层的方法,利用Allegro软件提供的扩展Skill接口,对此数据库进行编辑操作,根据电路板信号线的不同及其重要程度来分层,结合实际电路板的要求进行布线走线,避免线路交叉,出现憋线的情况,以这个分层方式为参考进行连线,从而实现一些程序没有提供的功能,提高Layout工作的效率,有效解决因飞线太多造成憋线的问题,方便工程师走线前的规划,节省时间,提高工作效率,减少不必要的重复工作。 The present invention provides a method for automatic layering of flying wires based on Allegro. Using the extended Skill interface provided by Allegro software, the database is edited and layered according to the difference and importance of circuit board signal lines, combined with the actual circuit According to the requirements of the board, it is necessary to carry out wiring and routing to avoid crossing of lines and the situation of suffocating lines. Use this layered method as a reference to carry out wiring, so as to realize some functions that are not provided by the program, improve the efficiency of Layout work, and effectively solve problems caused by too many flying lines. It often causes the problem of wire holding, which is convenient for engineers to plan before routing, saves time, improves work efficiency, and reduces unnecessary repetitive work.

发明内容 Contents of the invention

本发明针对现有技术的问题,提供一种基于Allegro的飞线自动分层的方法,利用Allegro软件提供的扩展Skill接口,对此数据库进行编辑操作,从而实现一些程序没有提供的功能,提高Layout工作的效率。 Aiming at the problems of the prior art, the present invention provides a method for automatic layering of flying lines based on Allegro, and uses the extended Skill interface provided by Allegro software to edit and operate the database, thereby realizing functions not provided by some programs and improving Layout work efficiency.

本发明提出的具体方案是: The concrete scheme that the present invention proposes is:

一种基于Allegro的飞线自动分层的方法,通过 Allegro 软件进行 PCB 布线,利用Allegro 软件接口的skill程序并依该skill程序形成飞线自动分层:在Allegro 软件的菜单栏中配置 allegro.men文件的预设路径,在工具栏项中添加相应的形成飞线自动分层的命令项目,在skill文件路径下的allegro.ilinit文件中添加用于形成飞线自动分层的命令代码,将形成飞线自动分层文件放到skill文件路径下,以完成在菜单栏中执行形成飞线自动分层的命令。 A method for automatic layering of flying lines based on Allegro, PCB wiring through Allegro software, using the skill program of the Allegro software interface and forming automatic layering of flying lines according to the skill program: configure allegro.men in the menu bar of Allegro software The preset path of the file, add the corresponding command item to form the automatic layering of the flying line in the toolbar item, add the command code for forming the automatic layering of the flying line to the allegro.ilinit file under the skill file path, and it will form The flying line automatic layering file is placed under the skill file path to complete the command of forming the flying line automatic layering in the menu bar.

依据形成飞线自动分层的命令项目,把原理图和结构图导进Allegro中,设置层面,对飞线分层。 According to the command item that forms the automatic layering of flying lines, import the schematic diagram and structure diagram into Allegro, set the layer, and layer the flying lines.

设置层面前,以原理图为依据对电路板中的每一根信号线进行检测,判断信号线类别,查看飞线是否有交叉,对飞线分层。 Before setting the layer, check each signal line in the circuit board based on the schematic diagram, judge the type of the signal line, check whether the flying lines cross, and layer the flying lines.

以原理图为依据对电路板中的每一根信号线进行检测,判断信号线是否为高速线,若是则继续判断其是否为数据线,否则进行表层连线,若进一步判断其为数据线则设置在同层,否则可不在同层,继续判断同层数据线的飞线是否交叉,若是则换层,否则按照飞线连接。 Based on the schematic diagram, detect each signal line in the circuit board to determine whether the signal line is a high-speed line. If so, continue to determine whether it is a data line, otherwise, perform surface connection. Set it on the same layer, otherwise it may not be on the same layer, continue to judge whether the flying lines of the data lines on the same layer cross, if so, change the layer, otherwise connect according to the flying lines.

本发明的有益之处是: The benefits of the present invention are:

本发明提供一种基于Allegro的飞线自动分层的方法,通过 Allegro 软件进行 PCB 布线,利用Allegro 软件接口的skill程序并依该skill程序形成飞线自动分层:在Allegro 软件的菜单栏中配置 allegro.men文件的预设路径,在工具栏项中添加相应的形成飞线自动分层的命令项目,在skill文件路径下的allegro.ilinit文件中添加用于形成飞线自动分层的命令代码,将形成飞线自动分层文件放到skill文件路径下,以完成在菜单栏中执行形成飞线自动分层的命令; The present invention provides a method for automatic layering of flying lines based on Allegro, PCB wiring is carried out through Allegro software, and the skill program of the Allegro software interface is used to form automatic layering of flying lines according to the skill program: configure in the menu bar of Allegro software The preset path of the allegro.men file, add the corresponding command item to form the automatic layering of the flying line in the toolbar item, and add the command code for forming the automatic layering of the flying line to the allegro.ilinit file under the skill file path , put the formation of flying line automatic layering file under the skill file path to complete the command of forming flying line automatic layering in the menu bar;

利用本发明方法,利用Allegro软件提供的扩展Skill接口,对此数据库进行编辑操作,根据电路板信号线的不同及其重要程度来分层,结合实际电路板的要求进行布线走线,避免线路交叉,出现憋线的情况,以这个分层方式为参考进行连线,从而实现一些程序没有提供的功能,提高Layout工作的效率,有效解决因飞线太多造成憋线的问题,方便工程师走线前的规划,节省时间,提高工作效率,减少不必要的重复工作。 Utilize the method of the present invention, utilize the extended Skill interface that Allegro software provides, carry out editing operation to this database, layer up according to the difference of circuit board signal line and its importance degree, combine the requirement of actual circuit board to carry out wiring and routing, avoid circuit crossing , when the line is held up, use this layered method as a reference to connect the line, so as to realize some functions that the program does not provide, improve the efficiency of Layout work, effectively solve the problem of line holding caused by too many flying lines, and facilitate the engineer to route the line Pre-planning saves time, improves work efficiency, and reduces unnecessary duplication of work.

附图说明 Description of drawings

图1本发明方法中判断信号线类别流程示意图。 Fig. 1 is a schematic flow chart of judging the signal line category in the method of the present invention.

具体实施方式 detailed description

一种基于Allegro的飞线自动分层的方法,通过 Allegro 软件进行 PCB 布线,利用Allegro 软件接口的skill程序并依该skill程序形成飞线自动分层:在Allegro 软件的菜单栏中配置 allegro.men文件的预设路径,在工具栏项中添加相应的形成飞线自动分层的命令项目,在skill文件路径下的allegro.ilinit文件中添加用于形成飞线自动分层的命令代码,将形成飞线自动分层文件放到skill文件路径下,以完成在菜单栏中执行形成飞线自动分层的命令。 A method for automatic layering of flying lines based on Allegro, PCB wiring through Allegro software, using the skill program of the Allegro software interface and forming automatic layering of flying lines according to the skill program: configure allegro.men in the menu bar of Allegro software The preset path of the file, add the corresponding command item to form the automatic layering of the flying line in the toolbar item, add the command code for forming the automatic layering of the flying line to the allegro.ilinit file under the skill file path, and it will form The flying line automatic layering file is placed under the skill file path to complete the command of forming the flying line automatic layering in the menu bar.

根据上述方法及发明内容,结合附图对本发明做进一步说明。 According to the above method and content of the invention, the present invention will be further described in conjunction with the accompanying drawings.

本发明提供一种基于Allegro的飞线自动分层的方法,通过 Allegro 软件的Skill程序接口,可以实现软件基本功能之外的一些扩展操作,类似以Allegro软件为平台的第三方应用开发。 The invention provides an Allegro-based flying line automatic layering method, through the Skill program interface of the Allegro software, some extended operations other than the basic functions of the software can be realized, similar to third-party application development using the Allegro software as a platform.

通过 Allegro 软件进行 PCB 布线,利用Allegro 软件接口的skill程序并依该skill程序形成飞线自动分层,依据形成飞线自动分层的命令项目,把原理图和结构图导进Allegro中,设置层面,对飞线分层; Carry out PCB wiring through Allegro software, use the skill program of the Allegro software interface and form the automatic layering of flying lines according to the skill program, import the schematic diagram and structure diagram into Allegro according to the command items for forming automatic layering of flying lines, and set the layer , layering the flying lines;

在设置层面前,以原理图为依据对电路板中的每一根信号线进行检测,判断信号线类别:判断信号线是否为高速线,若是则继续判断其是否为数据线,否则进行表层连线,若进一步判断其为数据线则设置在同层,否则可不在同层,继续判断同层数据线的飞线是否交叉,若是则换层,否则按照飞线连接。 Before setting up the layer, detect each signal line in the circuit board based on the schematic diagram, and judge the type of signal line: judge whether the signal line is a high-speed line, if so, continue to judge whether it is a data line, otherwise, perform surface connection Line, if it is further judged that it is a data line, it is set on the same layer, otherwise it may not be on the same layer, continue to judge whether the flying lines of the data line on the same layer cross, if so, change the layer, otherwise connect according to the flying line.

其中具体实施中,但并不局限于本发明中提供的主要的skill程序: Among them, in the specific implementation, but not limited to the main skill program provided in the present invention:

Create a ALLEGRO Command and registers it. The rest of Create a ALLEGRO Command and registers it. The rest of

; this SKILL code is a funtion which gets executed when ; this SKILL code is a funtion which gets executed when

; the command 'runscript' is invoked. ; the command 'runscript' is invoked.

; Requires the environment variable local_scriptpath to ; Requires the environment variable local_scriptpath to

; be set to the path where the scripts are stored. ; be set to the path where the scripts are stored.

axlCmdRegister("runscript" 'pmCreateScriptForm); axlCmdRegister("runscript" 'pmCreateScriptForm);

**********************************************************/ ***************************************************** *********/

putd('pmCreateScriptForm nil) putd('pmCreateScriptForm nil)

(defun pmCreateScriptForm () (defun pmCreateScriptForm()

let( (ScriptForm) let( (ScriptForm)

**************************************************************/ ***************************************************** *************/

putd('pmCreateformDefinitionFile nil) putd('pmCreateformDefinitionFile nil)

(defun pmCreateformDefinitionFile () (defun pmCreateformDefinitionFile()

let( (formDefinitionFile) let( (formDefinitionFile)

;------------------------------------------------------- ;---------------------------------------------- ------

; Create a temporary form definition file for the replay ; Create a temporary form definition file for the replay

; script files selection. ; script files selection.

; NOTE we write to CWD else we might write the file ; NOTE we write to CWD else we might write the file

; to another directory in our Skill Path by mistake !! ; to another directory in our Skill Path by mistake!!

;------------------------------------------------------- ;---------------------------------------------- ------

formDefinitionFile = outfile("./replay.form" "w") formDefinitionFile = outfile("./replay. form" "w")

;------------------------------------------------------- ;---------------------------------------------- ------

; Create form fields and write to form definition file ; Create form fields and write to form definition file

; only if file is writable. ; only if file is writable.

;------------------------------------------------------- ;---------------------------------------------- ------

when( formDefinitionFile when( formDefinitionFile

fprintf(formDefinitionFile "FILE_TYPE=FORM_DEFN VERSION=2\n") fprintf(formDefinitionFile "FILE_TYPE=FORM_DEFN VERSION=2\n")

fprintf(formDefinitionFile "FORM\n" fprintf(formDefinitionFile "FORM\n"

fprintf(formDefinitionFile "HEADER \"Replay Script-Files V 1.0\"\n") fprintf(formDefinitionFile "HEADER \"Replay Script-Files V 1.0\"\n")

fprintf(formDefinitionFile "TILE\n") fprintf(formDefinitionFile "TILE\n")

fprintf(formDefinitionFile "TEXT \"Script (.scr)\"\n") fprintf(formDefinitionFile "TEXT \"Script (.scr)\"\n")

fprintf(formDefinitionFile "TLOC 2 1\n") fprintf(formDefinitionFile "TLOC 2 1\n")

fprintf(formDefinitionFile "ENDTEXT\n") fprintf(formDefinitionFile "ENDTEXT\n")

fprintf(formDefinitionFile "FLOC 2 3\n") fprintf(formDefinitionFile "FLOC 2 3\n")

fprintf(formDefinitionFile "LIST \"\" 40 5\n") fprintf(formDefinitionFile "LIST \"\" 40 5\n")

fprintf(formDefinitionFile "ENDFIELD\n") fprintf(formDefinitionFile "ENDFIELD\n")

fprintf(formDefinitionFile "FIELD close\n") fprintf(formDefinitionFile "FIELD close\n")

fprintf(formDefinitionFile "FLOC 2 13\n") fprintf(formDefinitionFile "FLOC 2 13\n")

fprintf(formDefinitionFile "MENUBUTTON \"Close\" 10 3\n") fprintf(formDefinitionFile "MENUBUTTON \"Close\" 10 3\n")

fprintf(formDefinitionFile "ENDFIELD\n") fprintf(formDefinitionFile "ENDFIELD\n")

fprintf(formDefinitionFile "ENDFORM\n") fprintf(formDefinitionFile "ENDFORM\n")

close(formDefinitionFile) close(formDefinitionFile)

); when );

); let );

); defun pmCreateformDefinitionFile ); defun pmCreateformDefinitionFile

********************************* Main Program ***********/ *********************************** Main Program *************/

;----------------------------------------------------- ;---------------------------------------------- ----

; Make sure the CWD is set in the Skill Search Path to ; Make sure the CWD is set in the Skill Search Path to

; enable the Form to work correctly. If not set, add it ; enable the Form to work correctly. not set, add it

; to the path to the path

;------------------------------------------------------ ;---------------------------------------------- -----

if( car(getSkillPath()) != "./" && car(getSkillPath()) != "." then if( car(getSkillPath()) != "./" && car(getSkillPath()) != "." then

axlUIWPrint(nil "** ERROR - Skill Path does not include the current working directory %s.%s **" axlUIWPrint(nil "** ERROR - Skill Path does not include the current working directory %s.%s **"

"(" ")") "(" ")")

axlUIWPrint(nil "** Setting Skill Path to include %s.%s - Please Correct! **" "(" ")") axlUIWPrint(nil "** Setting Skill Path to include %s.%s - Please Correct! **" "(" ")")

setSkillPath(cons("." getSkillPath())) setSkillPath(cons("." getSkillPath()))

); endif ); endif

;----------------------------------------------------- ;---------------------------------------------- ----

; Check if old form definition file is present. If found ; Check if old form definition file is present. If found

; then remove it. ; then remove it.

;------------------------------------------------------ ;---------------------------------------------- -----

if(isFile(strcat(car(getSkillPath()) "/replay.form")) then if(isFile(strcat(car(getSkillPath()) "/replay. form")) then

deleteFile(strcat(car(getSkillPath()) "/replay.form")) deleteFile(strcat(car(getSkillPath()) "/replay.form"))

);endif );endif

;------------------------------------------------------ ;---------------------------------------------- -----

; Create the ALLEGRO form definition file ; Create the ALLEGRO form definition file

;------------------------------------------------------ ;---------------------------------------------- -----

unless( pmCreateformDefinitionFile() unless( pmCreateformDefinitionFile()

error("Could not create form definition file") error("Could not create form definition file")

); unless ); unless

;------------------------------------------------------ ;---------------------------------------------- -----

; Display the Replay Script form ; Display the Replay Script form

;------------------------------------------------------ ;---------------------------------------------- -----

ScriptForm = axlFormCreate( (gensym) "replay.form" nil 'pmCreateFormCallback t) ScriptForm = axlFormCreate( (gensym) "replay. form" nil 'pmCreateFormCallback t)

axlFormDisplay(ScriptForm) axlFormDisplay(ScriptForm)

;------------------------------------------------------ ;---------------------------------------------- -----

; Traverse searchpath and find all script files ; Traverse searchpath and find all script files

;----------------------------------------------------- ;---------------------------------------------- ----

axlUIWPrint(nil "** Gathering scripts from %L, please wait. **" pmGetScriptPath() ) axlUIWPrint(nil "** Gathering scripts from %L, please wait. **" pmGetScriptPath() )

pmAddScriptsToForm(pmGetListOfScriptFiles(pmGetScriptPath() ".scr")) pmAddScriptsToForm(pmGetListOfScriptFiles(pmGetScriptPath() ".scr"))

axlUIWPrint(nil " - Done - " ) axlUIWPrint(nil " - Done - " )

;------------------------------------------------------- ;---------------------------------------------- ------

; Clean up temp files - remove the reply.form file ; Clean up temp files - remove the reply.form file

;------------------------------------------------------- ;---------------------------------------------- ------

if(isFile(strcat(car(getSkillPath()) "/replay.form")) then if(isFile(strcat(car(getSkillPath()) "/replay.form")) then

deleteFile(strcat(car(getSkillPath()) "/replay.form")) deleteFile(strcat(car(getSkillPath()) "/replay.form"))

);endif );endif

); let );

); pmCreateScriptForm ); pmCreateScriptForm

本发明利用Allegro软件提供的扩展Skill接口,对此数据库进行编辑操作,根据电路板信号线的不同及其重要程度来分层,结合实际电路板的要求进行布线走线,避免线路交叉,出现憋线的情况,以这个分层方式为参考进行连线,从而实现一些程序没有提供的功能,提高Layout工作的效率。 The present invention utilizes the extended Skill interface provided by the Allegro software to edit the database, layer it according to the difference and importance of circuit board signal lines, and carry out wiring in combination with the requirements of the actual circuit board, so as to avoid line crossing and occurrence of suffocation. In the case of the line, use this hierarchical method as a reference to connect, so as to realize some functions that the program does not provide, and improve the efficiency of Layout work.

Claims (4)

1.一种基于Allegro的飞线自动分层的方法,通过 Allegro 软件进行 PCB 布线,其特征是利用Allegro 软件接口的skill程序并依该skill程序形成飞线自动分层:在Allegro 软件的菜单栏中配置 allegro.men文件的预设路径,在工具栏项中添加相应的形成飞线自动分层的命令项目,在skill文件路径下的allegro.ilinit文件中添加用于形成飞线自动分层的命令代码,将形成飞线自动分层文件放到skill文件路径下,以完成在菜单栏中执行形成飞线自动分层的命令。 1. A method for automatic layering of flying lines based on Allegro, PCB wiring is carried out through Allegro software, which is characterized in that the skill program of the Allegro software interface is used to form automatic layering of flying lines according to the skill program: in the menu bar of Allegro software Configure the preset path of the allegro.men file in the toolbar, add the corresponding command item to form the automatic layering of the flying line in the toolbar item, and add the command item for forming the automatic layering of the flying line to the allegro.ilinit file under the skill file path The command code is to put the file of forming automatic layering of flying lines under the path of the skill file, so as to execute the command of forming automatic layering of flying lines in the menu bar. 2.根据权利要求1所述的方法,其特征是依据形成飞线自动分层的命令项目,把原理图和结构图导进Allegro中,设置层面,对飞线分层。 2. The method according to claim 1, characterized in that the schematic diagram and the structural diagram are imported into Allegro according to the command item forming the automatic layering of the flying wires, and the layers are set to layer the flying wires. 3.根据权利要求2所述的方法,其特征是设置层面前,以原理图为依据对电路板中的每一根信号线进行检测,判断信号线类别,查看飞线是否有交叉,对飞线分层。 3. The method according to claim 2, characterized in that before the layer is set, each signal line in the circuit board is detected on the basis of the schematic diagram, the signal line category is judged, and the flying lines are checked for crossing. Line layering. 4.根据权利要求3所述的方法,其特征是以原理图为依据对电路板中的每一根信号线进行检测,判断信号线是否为高速线,若是则继续判断其是否为数据线,否则进行表层连线,若进一步判断其为数据线则设置在同层,否则可不在同层,继续判断同层数据线的飞线是否交叉,若是则换层,否则按照飞线连接。 4. The method according to claim 3, wherein it is characterized in that each signal line in the circuit board is detected on the basis of the schematic diagram, and whether the signal line is judged to be a high-speed line, if so, continues to judge whether it is a data line, Otherwise, connect the surface layer. If it is further judged that it is a data line, set it on the same layer. Otherwise, it may not be on the same layer. Continue to judge whether the flying lines of the data line on the same layer cross. If so, change the layer, otherwise connect according to the flying line.
CN201610222975.8A 2016-04-12 2016-04-12 Allegro based fly line automatic layering method Pending CN105930554A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610222975.8A CN105930554A (en) 2016-04-12 2016-04-12 Allegro based fly line automatic layering method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610222975.8A CN105930554A (en) 2016-04-12 2016-04-12 Allegro based fly line automatic layering method

Publications (1)

Publication Number Publication Date
CN105930554A true CN105930554A (en) 2016-09-07

Family

ID=56837968

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610222975.8A Pending CN105930554A (en) 2016-04-12 2016-04-12 Allegro based fly line automatic layering method

Country Status (1)

Country Link
CN (1) CN105930554A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108229008A (en) * 2017-12-29 2018-06-29 深圳市兴森快捷电路科技股份有限公司 A kind of cabling based on Allegro softwares changes layer and line width adjustment method
CN112836465A (en) * 2021-03-02 2021-05-25 马瑞利汽车零部件(芜湖)有限公司 A method for automatically generating measuring points on a PCB

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1798472A (en) * 2004-12-24 2006-07-05 鸿富锦精密工业(深圳)有限公司 Pin connection structure, and method for modifying definition of pin position
CN101373489A (en) * 2007-08-23 2009-02-25 英业达股份有限公司 Layout layer switching system of signal line
WO2014000688A1 (en) * 2012-06-29 2014-01-03 北京豹驰智能科技有限公司 Multilayer wiring type double-interface ic card antenna module
CN103793575A (en) * 2014-02-19 2014-05-14 浪潮(北京)电子信息产业有限公司 Method and device for arranging passing holes in single plate
CN104462712A (en) * 2014-12-19 2015-03-25 上海斐讯数据通信技术有限公司 Method and system capable of controlling deleted segments in PCB layout process
CN105447240A (en) * 2015-11-17 2016-03-30 浪潮集团有限公司 Implementation method for automatically establishing PCB design layer and back sheet

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1798472A (en) * 2004-12-24 2006-07-05 鸿富锦精密工业(深圳)有限公司 Pin connection structure, and method for modifying definition of pin position
CN101373489A (en) * 2007-08-23 2009-02-25 英业达股份有限公司 Layout layer switching system of signal line
WO2014000688A1 (en) * 2012-06-29 2014-01-03 北京豹驰智能科技有限公司 Multilayer wiring type double-interface ic card antenna module
CN103793575A (en) * 2014-02-19 2014-05-14 浪潮(北京)电子信息产业有限公司 Method and device for arranging passing holes in single plate
CN104462712A (en) * 2014-12-19 2015-03-25 上海斐讯数据通信技术有限公司 Method and system capable of controlling deleted segments in PCB layout process
CN105447240A (en) * 2015-11-17 2016-03-30 浪潮集团有限公司 Implementation method for automatically establishing PCB design layer and back sheet

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108229008A (en) * 2017-12-29 2018-06-29 深圳市兴森快捷电路科技股份有限公司 A kind of cabling based on Allegro softwares changes layer and line width adjustment method
CN112836465A (en) * 2021-03-02 2021-05-25 马瑞利汽车零部件(芜湖)有限公司 A method for automatically generating measuring points on a PCB
CN112836465B (en) * 2021-03-02 2024-12-06 马瑞利汽车零部件(芜湖)有限公司 A method for automatically generating measuring points on a PCB

Similar Documents

Publication Publication Date Title
JP6168536B2 (en) High speed process system and method for SMT apparatus
CN109033528A (en) Differential pair pad evades generation method, device, equipment and the medium of routing region
CN105447240A (en) Implementation method for automatically establishing PCB design layer and back sheet
CN106020830A (en) Method for automatically deleting unconnected via in Allegro software
CN105095597A (en) Method for building Skill program of PCB design layers and films
CN103593527A (en) Design method for one-click setting of different types of routing rule BGAs in PCB
CN106202608A (en) A kind of Allegro software is replaced method automatically that choose via
CN105426609A (en) Method for automatically deleting dangling lines in PCB design
CN105700890A (en) Skill program realization method automatically deleting dangling vias in PCB design
CN104408273B (en) The design method of via electric attribute on a kind of quick change PCB
CN105930554A (en) Allegro based fly line automatic layering method
CN114117798A (en) Automatic interface model generation method and system based on matlab
CN108595839A (en) A kind of generation method and system of the crimp back drill via file based on Cadence Skill
CN110135082B (en) Method for avoiding via hole by copper sheet on negative film layer in PCB design
CN105426635A (en) Skill program implementation method capable of establishing Differential Pair Gnd Vias automatically
CN106294980A (en) A kind of method of auto arrangement silk-screen in PCB
CN108536944A (en) The method and system of overlapping via is checked in a kind of placement-and-routing
CN106126800A (en) A kind of Allegro software replicates the attribute copper method to other aspects automatically
CN109800496A (en) A method of via hole is added along pcb board side
CN105930555A (en) Implementing method for automatically deleting SKILL program of suspension vias in PCB design
CN105677992A (en) Method for automatically deleting DANGLING LINES in ALLEGRO software
CN108549756A (en) Checked in a kind of placement-and-routing high-speed line across island method and system
CN105260569A (en) Method of automatically punching ground holes based on CadenceAllegro
CN106934154A (en) A kind of automatic aligning same type packaging method
CN101201866A (en) Management system and method for circuit layout file

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20160907

RJ01 Rejection of invention patent application after publication