亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

用于機(jī)電集成產(chǎn)品中基于橡皮筋的三維電路自動(dòng)布線方法

文檔序號(hào):10725237閱讀:354來(lái)源:國(guó)知局
用于機(jī)電集成產(chǎn)品中基于橡皮筋的三維電路自動(dòng)布線方法
【專利摘要】用于機(jī)電集成產(chǎn)品中基于橡皮筋的三維電路自動(dòng)布線方法,屬于機(jī)電一體化技術(shù)領(lǐng)域。三角網(wǎng)格化;初始三維搜索圖創(chuàng)建;采用修正后A*算法逐條進(jìn)行最短路徑搜索;每搜索到一條線路,對(duì)三維搜索圖做相應(yīng)更新,避免后續(xù)搜索的線路與該線路相交;更新分為兩部分:線路所在起始和終止三角形邊上點(diǎn)相鄰信息更新、線路經(jīng)過(guò)邊上點(diǎn)以及相鄰信息的更新;A*算法搜索后線路經(jīng)過(guò)的一系列三角形形成的區(qū)域構(gòu)成一條通道;采用通道算法找到每條線路相應(yīng)的橡皮筋,橡皮筋為線路起點(diǎn)、終點(diǎn)以及所繞障礙點(diǎn)連成的折線;為每條橡皮筋創(chuàng)建相應(yīng)的Spokes,保證線路之間或線路距障礙物的最短距離,得到拓展橡皮筋,即最后搜索得到的三維線路。
【專利說(shuō)明】
用于機(jī)電集成產(chǎn)品中基于橡皮筋的三維電路自動(dòng)布線方法
技術(shù)領(lǐng)域
[0001]本發(fā)明屬于機(jī)電一體化技術(shù)領(lǐng)域,涉及三維電路自動(dòng)布線設(shè)計(jì)方法,尤其是涉及一種用于機(jī)電集成產(chǎn)品中基于橡皮筋的三維電路自動(dòng)布線方法。
【背景技術(shù)】
[0002]在機(jī)電一體化領(lǐng)域,一種創(chuàng)新性的工藝技術(shù)3D_MID(Three Dimens1nal-MoldedInterconnect Devices,三維模塑互連器件或三維機(jī)電集成器件)技術(shù)[1],拋棄傳統(tǒng)的電路板,直接在三維基體材料上集成機(jī)械和電子功能,為利用有限空間全新地設(shè)計(jì)機(jī)電一體化器件開(kāi)辟了更為廣闊的道路。這種直接在材料上集成機(jī)械和電子功能的方式,涉及對(duì)三維電路設(shè)計(jì)的要求。
[0003]布線問(wèn)題是NP難題。自動(dòng)布線是MID設(shè)計(jì)中的最主要功能,所謂自動(dòng)布線就是依據(jù)一定的程序算法,讓設(shè)計(jì)軟件程序根據(jù)用戶設(shè)定的相關(guān)參數(shù)和布線規(guī)則,自動(dòng)在各個(gè)元件之間進(jìn)行連線,實(shí)現(xiàn)元器件之間的電氣連接關(guān)系,進(jìn)而快速完成MID產(chǎn)品的布線工作。
[0004]幾何布線算法能夠搜索到精確的線路,并且能夠解決搜索效率低和搜索空間大的問(wèn)題。由于幾何布線算法的搜索通常局限于規(guī)則的幾何網(wǎng)格結(jié)構(gòu)上,不規(guī)則的幾何實(shí)體上搜索線路時(shí)幾何算法就表現(xiàn)出很強(qiáng)的局限性[2]。目前電路板的發(fā)展趨勢(shì)為不規(guī)則,需要電子元件被放在不規(guī)則分方向,因此幾何布線的搜索方式越來(lái)越難滿足現(xiàn)代電路布線的需求。幾何布線的另一個(gè)缺點(diǎn)反應(yīng)在搜索效率較低,搜索網(wǎng)格空間較大。拓?fù)洳季€算法的實(shí)現(xiàn)通?;谌蔷W(wǎng)格化搜索區(qū)域?;谌蔷W(wǎng)格化得到的隱性搜索圖的信息存儲(chǔ)量遠(yuǎn)遠(yuǎn)小于基于網(wǎng)格的搜索空間,因此拓?fù)洳季€的搜索效率可以達(dá)到很高。另外,拓?fù)洳季€搜索線路結(jié)果需要存儲(chǔ)的中間節(jié)點(diǎn)較少,而幾何布線搜索線路結(jié)果信息量占據(jù)空間較大。
[0005]為了滿足機(jī)電一體化器件設(shè)計(jì)的要求,一些開(kāi)發(fā)者基于現(xiàn)存二維布線算法提出了以下幾種三維幾何布線算法:面展開(kāi)尋找最短路徑[3]、網(wǎng)格化尋找最短路徑和無(wú)網(wǎng)格的自動(dòng)布線算法[4]。這些三維布線算法布線方向受限,靈活性及實(shí)用性有待提高;面展開(kāi)方式未真正突破三維空間的限制;三維布線基體結(jié)構(gòu)不規(guī)則或者含有曲面時(shí),幾何布線算法不適用;幾何布線算法由于網(wǎng)格劃分較為細(xì)致,需要的存儲(chǔ)空間較大,搜索效率也較低。
[0006]目前,存在一種拓?fù)洳季€算法,也即是橡皮筋布線算法l^t3Rivest最先提出可以將線路看作具有彈性的橡皮筋。Leiserson和Maley正式將這種橡皮筋的概念轉(zhuǎn)換為橡皮筋草圖[6],以約束點(diǎn)為拐點(diǎn)構(gòu)成的折線。一個(gè)橡皮筋草圖從整體上規(guī)劃出多條線路的最終布線效果,相當(dāng)于全局布線。然后,橡皮筋草圖可以被轉(zhuǎn)換為規(guī)整的幾何線路,滿足布線規(guī)則和拓?fù)潢P(guān)系,以完成詳細(xì)布線。加利福尼亞大學(xué)的一個(gè)實(shí)驗(yàn)室開(kāi)發(fā)出SURF布線系統(tǒng),完成二維橡皮筋布線。SURF布線系統(tǒng)主要通過(guò)以下幾步獲得最終的布線結(jié)果:全局布線,局部布線,添加Spokem以及幾何布線。SURF布線系統(tǒng)在PCB平面布線中效果較好,但是它仍然沒(méi)有突破三維實(shí)體結(jié)構(gòu)的限制,無(wú)法實(shí)現(xiàn)三維基體上的自動(dòng)布線。

【發(fā)明內(nèi)容】

[0007]本發(fā)明的主要目的在于克服現(xiàn)有技術(shù)中的不足,提供一種用于機(jī)電集成產(chǎn)品中基于橡皮筋的三維電路自動(dòng)布線方法。該方法可突破三維基體上布線面的限制,在降低存儲(chǔ)空間的同時(shí)提高搜索效率及提升線路布通率。
[0008]本發(fā)明所述的一種用于機(jī)電集成產(chǎn)品中基于橡皮筋的三維電路自動(dòng)布線方法,包括如下步驟:
[0009]1.—種用于機(jī)電集成產(chǎn)品中基于橡皮筋的三維電路自動(dòng)布線方法,其特征在于,包括如下步驟:
[0010]I)三角網(wǎng)格化
[0011 ] 獲取MID(Mechatronic integrated devices)機(jī)電集成產(chǎn)品幾何布線基體的邊界拓?fù)湫畔⒁约半娮釉脑O(shè)計(jì)和布局信息,分別實(shí)現(xiàn)每個(gè)面上的約束Delaunay三角剖分,包括不規(guī)則表面和曲面,維護(hù)三角剖分后的點(diǎn)列表、邊列表以及三角形列表;
[0012]2)初始三維搜索圖創(chuàng)建
[0013]初始搜索圖的創(chuàng)建主要通過(guò)找到三角形的邊上中點(diǎn),然后添加各中點(diǎn)之間的連接關(guān)系;主要分為兩個(gè)過(guò)程,首先實(shí)現(xiàn)每個(gè)面上搜索圖的創(chuàng)建,然后創(chuàng)建相鄰面之間邊界邊處的相鄰關(guān)系:其中
[0014]2.1)面上搜索圖的創(chuàng)建:針對(duì)每個(gè)面,該面剖分后三角網(wǎng)格生成一邊
[0015]列表,以邊為主線,采用散列表(hash表)存儲(chǔ)每條邊的相關(guān)信息,搜索圖存儲(chǔ)的hash函數(shù):該邊信息的存儲(chǔ)位置=邊的編號(hào),這樣可以直接根據(jù)邊的編號(hào)信息定位該邊相鄰信息的存儲(chǔ)位置,極大地提高了邊信息的搜索速度;針對(duì)每條邊,采用鄰接表存儲(chǔ)邊存在的點(diǎn)并且為其創(chuàng)建指針,指向與其相鄰的其他點(diǎn)索引;
[0016]2.2)相鄰面之間邊界邊處的相鄰關(guān)系的創(chuàng)建:邊界邊所屬兩個(gè)面上三
[0017]角網(wǎng)格對(duì)其編號(hào)不同,也既是面邊界邊在存儲(chǔ)搜索圖的hash表中占據(jù)兩個(gè)存儲(chǔ)空間;通過(guò)在hash表中的相應(yīng)兩個(gè)空間中添加必須的相鄰信息,完成相鄰面之間邊界邊處的相鄰關(guān)系的創(chuàng)建,實(shí)現(xiàn)三維搜索圖,從而真正擺脫路徑搜索中面的限制,實(shí)現(xiàn)真正意義上基于三維網(wǎng)格的搜索;
[0018]3)采用修正后A*算法逐條進(jìn)行最短路徑搜索;每搜索到一條線路,對(duì)三維搜索圖做相應(yīng)的更新,避免后續(xù)搜索的線路與該線路相交;
[0019]更新時(shí),主要分為兩個(gè)部分:線路所在起始和終止三角形邊上點(diǎn)相鄰信息更新、線路經(jīng)過(guò)邊上點(diǎn)以及相鄰信息的更新;其中
[0020]3.1)起始和終止三角形邊上點(diǎn)相鄰信息的更新方法如下:
[0021]刪除三角形各邊上點(diǎn)之間的相鄰關(guān)系,在線路起始(終止)點(diǎn)對(duì)邊,也即是線路經(jīng)過(guò)第一條邊,添加新點(diǎn),并且創(chuàng)建新添加點(diǎn)與起始(終止)三角形其他兩條邊上點(diǎn)之間的相鄰關(guān)系;
[0022]3.2)線路經(jīng)過(guò)邊上點(diǎn)以及相鄰信息的更新方法如下:
[0023]3.2.1)找到線路經(jīng)過(guò)的第一個(gè)點(diǎn)(記為:P)所在邊(記為:E1);
[0024]3.2.2)找到點(diǎn)P經(jīng)過(guò)的邊(El)的編號(hào)(記為:numl),邊的編號(hào)決定了該邊信息在hash表中的存儲(chǔ)位置;
[0025]3.2.3)如果El為面上邊界邊,那么轉(zhuǎn)步驟3.2.4);否則,轉(zhuǎn)步驟3.2.5);
[0026]3.2.4)Ε1為邊界邊時(shí),找到與numl相應(yīng)的另一個(gè)編號(hào)(記為:num2)。由于邊界邊所在兩個(gè)面三角剖分時(shí),對(duì)其所定義的編號(hào)不同,因此邊界邊在hash表中存儲(chǔ)占據(jù)兩個(gè)空間,從而對(duì)邊界邊信息的更新也需要考慮hash表中兩處的更新;
[0027]3.2.5)計(jì)算邊El上其他點(diǎn)距離點(diǎn)P的最近距離,來(lái)計(jì)算該邊上需要添加的新點(diǎn)位置,假設(shè)為P5、P6;
[0028]3.2.6)處理numl和num2(若num2非空)上點(diǎn)P的相關(guān)信息。逐個(gè)處理與點(diǎn)P之間有相鄰關(guān)系的點(diǎn)P’,創(chuàng)建P’和P5或者P6之間的相鄰關(guān)系,并且刪除P點(diǎn)和P’點(diǎn)之間的相鄰關(guān)系;
[0029]3.2.7)提取線路經(jīng)過(guò)的下一個(gè)點(diǎn)P;若下一個(gè)點(diǎn)為空,則轉(zhuǎn)步驟3.2.8);否則,轉(zhuǎn)步驟3.2.2);
[0030]3.2.8)結(jié)束;
[0031]4)A*算法搜索后線路(記為:Path)經(jīng)過(guò)的一系列三角形形成的區(qū)域構(gòu)成一條通道;采用通道算法找到每條線路相應(yīng)的橡皮筋,橡皮筋為線路起點(diǎn)、終點(diǎn)以及所繞障礙點(diǎn)連成的折線;
[0032]5)為每條橡皮筋創(chuàng)建相應(yīng)的Spokes,保證線路之間或線路距障礙物的最短距離,得到拓展橡皮筋,即本發(fā)明的方法最后搜索得到的三維線路;主要過(guò)程如下:
[0033]5.l)Spokes長(zhǎng)度確定:Spokes的長(zhǎng)度決定了線路遠(yuǎn)離約束點(diǎn)的距離,當(dāng)有多條線路繞過(guò)同一約束點(diǎn)時(shí),線路距離這一約束點(diǎn)的距離由內(nèi)到外應(yīng)該逐倍增加;橡皮筋所經(jīng)過(guò)的點(diǎn)信息、邊信息、以及搜索圖中各邊上點(diǎn)信息可以被獲取,因此我們可以通過(guò)以下幾個(gè)步驟判斷各橡皮筋需要添加的spokes長(zhǎng)度:
[0034]5.1.I)為搜索圖數(shù)據(jù)結(jié)構(gòu)點(diǎn)信息中添加標(biāo)記位:bool ispassed,并初始化為0,代表點(diǎn)未被跨越;
[0035]5.1.2)A*算法搜索結(jié)束過(guò),逆向構(gòu)造線路時(shí),將線路經(jīng)過(guò)點(diǎn)的ispassed標(biāo)記位置為I,代表該點(diǎn)已被跨越;
[0036]5.1.3)通道算法結(jié)束后,確定橡皮筋經(jīng)過(guò)的拐點(diǎn),那么在每個(gè)拐點(diǎn)P處判斷點(diǎn)P所在的邊上有幾個(gè)點(diǎn)滿足以下兩個(gè)條件:一、該點(diǎn)有線路經(jīng)過(guò);二、該點(diǎn)在點(diǎn)P和該條橡皮筋所對(duì)應(yīng)的線路在該邊經(jīng)過(guò)的點(diǎn)之間;假設(shè)有η個(gè),則該條線路在該點(diǎn)spokes的長(zhǎng)度應(yīng)該為(η+1)*D;
[OO37 ] 5.2) Spoke s位置坐標(biāo)計(jì)算:三維空間中任意面上點(diǎn)的Spoke s的計(jì)算;
[0038]5.3) Spokes的選擇:選擇Spokes時(shí)主要需遵循的原則是,添加Spokes后得到的拓展橡皮筋位于通道的內(nèi)部,因此可根據(jù)橡皮筋上點(diǎn)在通道的左邊界還是右邊界,來(lái)確定合適的Spokes相對(duì)通道的位置,根據(jù)點(diǎn)在相應(yīng)通道上的相應(yīng)位置,橡皮筋經(jīng)過(guò)的點(diǎn)主要分為ENDPOINT,LEFT和RIGHT三類,邊界邊上的點(diǎn)或者是線路起始和終止點(diǎn)被定義為ENDPOINT,此時(shí)不需要添加spokes,因?yàn)榫€路直接穿過(guò)他們即可,LEFT和RIGHT分別說(shuō)明該點(diǎn)在通道的左邊界和右邊界,那么為了保證拓展橡皮筋在通道內(nèi)部,則需要滿足拓展橡皮筋位于該點(diǎn)的右側(cè)和左側(cè);至此,完成所述一種用于機(jī)電集成產(chǎn)品中基于橡皮筋的三維電路自動(dòng)布線。
[0039]與現(xiàn)有技術(shù)比較,本發(fā)明有益效果如下:
[0040]可實(shí)現(xiàn)任意面的三角網(wǎng)格劃分,適用于規(guī)則面、不規(guī)則面以及曲面,為后續(xù)三維搜索圖的創(chuàng)建提供支持??蓪?shí)現(xiàn)三維搜索圖的創(chuàng)建,統(tǒng)一各面上三角剖分后網(wǎng)格信息,擺脫三維實(shí)體面的限制,解決復(fù)雜線路跨面布線的問(wèn)題,達(dá)到真正意義上的三維布線。
【附圖說(shuō)明】
[0041]圖1為待采用本發(fā)明實(shí)施例所述三維電路自動(dòng)布線方法的機(jī)電集成產(chǎn)品結(jié)構(gòu)示意圖。
[0042]圖2為本發(fā)明實(shí)施例所述三維電路自動(dòng)布線方法中的三角網(wǎng)格和三維搜索圖。
[0043]圖3為本發(fā)明實(shí)施例所述三維電路自動(dòng)布線方法中的一條線路的搜索結(jié)果以及搜索圖的更新圖。
[0044]圖4為本發(fā)明實(shí)施例所述三維電路自動(dòng)布線方法中的橡皮筋和拓展橡皮筋的生成效果圖。
[0045]圖中的各標(biāo)記表示:1-1代表三維布線基體,1-2代表三維坐標(biāo)系,1-3代表LED,1-4代表電阻器,1-5代表電容器,2-1代表Delaunay三角剖分,2-2代表初始三維搜索圖,3-1代表A*算法搜索出最短路徑,3-2代表更新后搜索圖,4-1代表橡皮筋,4-2代表拓展橡皮筋。
【具體實(shí)施方式】
[0046]以下實(shí)施例將對(duì)本發(fā)明作進(jìn)一步的描述。
[0047]本發(fā)明實(shí)施例中假設(shè)設(shè)計(jì)者已經(jīng)完成了機(jī)電集成產(chǎn)品的邏輯電路的設(shè)計(jì)、基體三維機(jī)械結(jié)構(gòu)設(shè)計(jì)及電子元件的導(dǎo)入以及布局,如圖1所示。
[0048]下面給出該機(jī)電集成產(chǎn)品中基于橡皮筋的三維電路自動(dòng)布線方法,包括的步驟如前述,下面給出對(duì)應(yīng)相關(guān)步驟的效果展示圖及說(shuō)明。
[0049]I)獲取圖1所示產(chǎn)品布線基體的邊界拓?fù)湫畔⒁约半娮釉脑O(shè)計(jì)和布局信息,分別實(shí)現(xiàn)每個(gè)面上的約束De I aunay三角剖分,完成三角網(wǎng)格化,效果如圖2中標(biāo)記2_ I所示虛線所示。
[0050]2)基于I)中約束Dealunay三角剖分,進(jìn)一步創(chuàng)建相鄰三角形邊上中點(diǎn)的相鄰關(guān)系,并且實(shí)現(xiàn)相鄰面之間邊界邊處相鄰關(guān)系的創(chuàng)建,構(gòu)成初始三維搜索圖,如圖2中2-2所示實(shí)線所示。
[0051]3)采用修正后A*算法在三維搜索圖上完成最短路徑的搜索。由于三維搜索圖中表達(dá)了面以及各面之間的拓?fù)潢P(guān)系,線路搜索時(shí)不需要考慮布線基體幾何面的限制,實(shí)現(xiàn)了三維基體表面上真正的最短路徑搜索。圖3中,標(biāo)記3-1所示粗實(shí)線展示了該實(shí)例利用本方法得到的一條線路的搜索結(jié)果,該線路的影響區(qū)域如標(biāo)記3-2所示,同時(shí)影響區(qū)域內(nèi)細(xì)實(shí)線為搜索完成后搜索圖更新后效果。
[0052]4)圖3中,修正后A*算法搜索后得到的線路,如標(biāo)記3-1所示粗實(shí)線,經(jīng)過(guò)的一系列三角形形成的區(qū)域構(gòu)成一條布線通道。采用通道算法找到每條線路相應(yīng)的橡皮筋,也既是通道內(nèi)的最短路徑。橡皮筋為線路起點(diǎn)、終點(diǎn)以及所繞障礙點(diǎn)連成的折線,如圖4中標(biāo)記4-1所示。
[0053]5)橡皮筋搜索完成后,最后為其添加Spokes,用來(lái)保證拓?fù)洳季€算法中線路距離約束點(diǎn)的最小間距。圖4中標(biāo)記4-2為利用本發(fā)明方法最終得到的拓展橡皮筋,即在三維實(shí)體上實(shí)現(xiàn)的最短路徑,從而完成MID機(jī)電集成產(chǎn)品基于橡皮筋的三維自動(dòng)布線方法。
[0054]綜上,本發(fā)明實(shí)施例解決了目前三維電路設(shè)計(jì)中存在的主要問(wèn)題,突破三維實(shí)體結(jié)構(gòu)的限制,布線方向較靈活,可用于不規(guī)則實(shí)體上布線,并且降低了存儲(chǔ)空間,提升了搜索效率與布通率。
【主權(quán)項(xiàng)】
1.用于機(jī)電集成產(chǎn)品中基于橡皮筋的三維電路自動(dòng)布線方法,其特征在于,包括如下步驟: .1)三角網(wǎng)格化 獲取MID(Mechatronic integrated devices)機(jī)電集成產(chǎn)品幾何布線基體的邊界拓?fù)湫畔⒁约半娮釉脑O(shè)計(jì)和布局信息,分別實(shí)現(xiàn)每個(gè)面上的約束Delaunay三角剖分,包括不規(guī)則表面和曲面,維護(hù)三角剖分后的點(diǎn)列表、邊列表以及三角形列表; .2)初始三維搜索圖創(chuàng)建 初始搜索圖的創(chuàng)建主要通過(guò)找到三角形的邊上中點(diǎn),然后添加各中點(diǎn)之間的連接關(guān)系;主要分為兩個(gè)過(guò)程,首先實(shí)現(xiàn)每個(gè)面上搜索圖的創(chuàng)建,然后創(chuàng)建相鄰面之間邊界邊處的相鄰關(guān)系:其中,. 2.1)面上搜索圖的創(chuàng)建:針對(duì)每個(gè)面,該面剖分后三角網(wǎng)格生成一邊 列表,以邊為主線,采用散列表(hash表)存儲(chǔ)每條邊的相關(guān)信息,搜索圖存儲(chǔ)的hash函數(shù):該邊信息的存儲(chǔ)位置=邊的編號(hào),這樣可以直接根據(jù)邊的編號(hào)信息定位該邊相鄰信息的存儲(chǔ)位置,極大地提高了邊信息的搜索速度;針對(duì)每條邊,采用鄰接表存儲(chǔ)邊存在的點(diǎn)并且為其創(chuàng)建指針,指向與其相鄰的其他點(diǎn)索引;. 2.2)相鄰面之間邊界邊處的相鄰關(guān)系的創(chuàng)建:邊界邊所屬兩個(gè)面上三 角網(wǎng)格對(duì)其編號(hào)不同,也既是面邊界邊在存儲(chǔ)搜索圖的hash表中占據(jù)兩個(gè)存儲(chǔ)空間;通過(guò)在hash表中的相應(yīng)兩個(gè)空間中添加必須的相鄰信息,完成相鄰面之間邊界邊處的相鄰關(guān)系的創(chuàng)建,實(shí)現(xiàn)三維搜索圖,從而真正擺脫路徑搜索中面的限制,實(shí)現(xiàn)真正意義上基于三維網(wǎng)格的搜索;. 3)采用修正后A*算法逐條進(jìn)行最短路徑搜索;每搜索到一條線路,對(duì)三維搜索圖做相應(yīng)的更新,避免后續(xù)搜索的線路與該線路相交; 更新時(shí),主要分為兩個(gè)部分:線路所在起始和終止三角形邊上點(diǎn)相鄰信息更新、線路經(jīng)過(guò)邊上點(diǎn)以及相鄰信息的更新;其中,. 3.1)起始和終止三角形邊上點(diǎn)相鄰信息的更新方法如下: 刪除三角形各邊上點(diǎn)之間的相鄰關(guān)系,在線路起始(終止)點(diǎn)對(duì)邊,也即是線路經(jīng)過(guò)第一條邊,添加新點(diǎn),并且創(chuàng)建新添加點(diǎn)與起始(終止)三角形其他兩條邊上點(diǎn)之間的相鄰關(guān)系; .3.2)線路經(jīng)過(guò)邊上點(diǎn)以及相鄰信息的更新方法如下:. 3.2.1)找到線路經(jīng)過(guò)的第一個(gè)點(diǎn)(記為:P)所在邊(記為:E1); . 3.2.2)找到點(diǎn)P經(jīng)過(guò)的邊(EI)的編號(hào)(記為:numI ),邊的編號(hào)決定了該邊信息在hash表中的存儲(chǔ)位置;. 3.2.3)如果EI為面上邊界邊,那么轉(zhuǎn)步驟3.2.4);否則,轉(zhuǎn)步驟3.2.5); . 3.2.4)E1為邊界邊時(shí),找到與numl相應(yīng)的另一個(gè)編號(hào)(記為:num2)。由于邊界邊所在兩個(gè)面三角剖分時(shí),對(duì)其所定義的編號(hào)不同,因此邊界邊在hash表中存儲(chǔ)占據(jù)兩個(gè)空間,從而對(duì)邊界邊信息的更新也需要考慮hash表中兩處的更新; . 3.2.5)計(jì)算邊El上其他點(diǎn)距離點(diǎn)P的最近距離,來(lái)計(jì)算該邊上需要添加的新點(diǎn)位置,假設(shè)為P5、P6; . 3.2.6)處理numl和num2(若num2非空)上點(diǎn)P的相關(guān)信息。逐個(gè)處理與點(diǎn)P之間有相鄰關(guān)系的點(diǎn)P’,創(chuàng)建P’和P5或者P6之間的相鄰關(guān)系,并且刪除P點(diǎn)和P’點(diǎn)之間的相鄰關(guān)系; .3.2.7)提取線路經(jīng)過(guò)的下一個(gè)點(diǎn)P;若下一個(gè)點(diǎn)為空,則轉(zhuǎn)步驟3.2.8);否則,轉(zhuǎn)步驟.3.2.2); . 3.2.8)結(jié)束; . 4)A*算法搜索后線路(記為:Path)經(jīng)過(guò)的一系列三角形形成的區(qū)域構(gòu)成一條通道;采用通道算法找到每條線路相應(yīng)的橡皮筋,橡皮筋為線路起點(diǎn)、終點(diǎn)以及所繞障礙點(diǎn)連成的折線;. 5)為每條橡皮筋創(chuàng)建相應(yīng)的Spokes,保證線路之間或線路距障礙物的最短距離,得到拓展橡皮筋,即本發(fā)明的方法最后搜索得到的三維線路;主要過(guò)程如下: . 5.1)Spokes長(zhǎng)度確定:Spokes的長(zhǎng)度決定了線路遠(yuǎn)離約束點(diǎn)的距離,當(dāng)有多條線路繞過(guò)同一約束點(diǎn)時(shí),線路距離這一約束點(diǎn)的距離由內(nèi)到外應(yīng)該逐倍增加;橡皮筋所經(jīng)過(guò)的點(diǎn)信息、邊信息、以及搜索圖中各邊上點(diǎn)信息可以被獲取,因此我們可以通過(guò)以下幾個(gè)步驟判斷各橡皮筋需要添加的spokes長(zhǎng)度: . 5.1.1)為搜索圖數(shù)據(jù)結(jié)構(gòu)點(diǎn)信息中添加標(biāo)記位:boolispassed,并初始化為0,代表點(diǎn)未被跨越; . 5.1.2)A*算法搜索結(jié)束過(guò),逆向構(gòu)造線路時(shí),將線路經(jīng)過(guò)點(diǎn)的ispassed標(biāo)記位置為I,代表該點(diǎn)已被跨越; .5.1.3)通道算法結(jié)束后,確定橡皮筋經(jīng)過(guò)的拐點(diǎn),那么在每個(gè)拐點(diǎn)P處判斷點(diǎn)P所在的邊上有幾個(gè)點(diǎn)滿足以下兩個(gè)條件:一、該點(diǎn)有線路經(jīng)過(guò);二、該點(diǎn)在點(diǎn)P和該條橡皮筋所對(duì)應(yīng)的線路在該邊經(jīng)過(guò)的點(diǎn)之間;假設(shè)有η個(gè),則該條線路在該點(diǎn)spokes的長(zhǎng)度應(yīng)該為(n+l)*D; . 5.2)Spoke s位置坐標(biāo)計(jì)算:三維空間中任意面上點(diǎn)的Spoke s的計(jì)算; . 5.3)Spokes的選擇:選擇Spokes時(shí)主要需遵循的原則是,添加Spokes后得到的拓展橡皮筋位于通道的內(nèi)部,因此可根據(jù)橡皮筋上點(diǎn)在通道的左邊界還是右邊界,來(lái)確定合適的Spokes相對(duì)通道的位置,根據(jù)點(diǎn)在相應(yīng)通道上的相應(yīng)位置,橡皮筋經(jīng)過(guò)的點(diǎn)主要分為ENDPOINT,LEFT和RIGHT三類,邊界邊上的點(diǎn)或者是線路起始和終止點(diǎn)被定義為ENDPOINT,此時(shí)不需要添加spokes,因?yàn)榫€路直接穿過(guò)他們即可,LEFT和RIGHT分別說(shuō)明該點(diǎn)在通道的左邊界和右邊界,那么為了保證拓展橡皮筋在通道內(nèi)部,則需要滿足拓展橡皮筋位于該點(diǎn)的右側(cè)和左側(cè);至此,完成所述用于機(jī)電集成產(chǎn)品中基于橡皮筋的三維電路自動(dòng)布線。
【文檔編號(hào)】G06F17/50GK106096118SQ201610395649
【公開(kāi)日】2016年11月9日
【申請(qǐng)日】2016年6月6日 公開(kāi)號(hào)201610395649.7, CN 106096118 A, CN 106096118A, CN 201610395649, CN-A-106096118, CN106096118 A, CN106096118A, CN201610395649, CN201610395649.7
【發(fā)明人】卓勇, 展慧嫻, 陳俊發(fā), 潘俊浩, 吳志洋
【申請(qǐng)人】廈門大學(xué)
網(wǎng)友詢問(wèn)留言 已有0條留言
  • 還沒(méi)有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1