在高速設(shè)計(jì)中,基于時(shí)序的考慮通常要對信號做線長匹配。對于只有2個(gè)管腳的信號路徑,計(jì)算和匹配線長這一過程非常直接、清晰。但對于大部分高速設(shè)計(jì)來講,情況會更為復(fù)雜,這些情況包含但不僅限于:
1.信號路徑中需要使用端接電阻(termination resistor),這時(shí)需要調(diào)制的線長是包括端接電阻在內(nèi)的不同網(wǎng)絡(luò)。
2.Data總線常用的的T點(diǎn)拓?fù)浣Y(jié)構(gòu)。如下圖,實(shí)際需要調(diào)等長的是同一網(wǎng)絡(luò)的不同分支:2-3 = 2-4 = 2-5 = 2-6。
3.DDR3/DDR4中地址總線、控制總線用到的菊花鏈(Fly-By)拓?fù)浣Y(jié)構(gòu),需要對同一網(wǎng)絡(luò)的不同branch進(jìn)行線長匹配:
在引入xSignal之前,AD的線長規(guī)則(Net Length)及匹配線長規(guī)則(Matched Net Length)只能針對同一網(wǎng)絡(luò),無法對同一網(wǎng)絡(luò)中某一段路徑進(jìn)行調(diào)制,也無法對端接電阻進(jìn)行處理。雖然一直存在“From-To”對象,但一直存在Bug,“From-To”對象針對規(guī)則無效。..。.工程師無奈只能使用Excel計(jì)算出每段的長度,然后慢慢調(diào)整,效率很低。
AD15之后,xSignal的出現(xiàn)不僅可以解決Branch線長調(diào)制的問題,也可以解決含端接電阻的信號路徑調(diào)制問題。簡單來說,xSignal可以定義兩個(gè)節(jié)點(diǎn)之間的信號路徑,無論這兩個(gè)節(jié)點(diǎn)是同一網(wǎng)絡(luò)還是不同網(wǎng)絡(luò)。
創(chuàng)建一個(gè)新的xSignal
創(chuàng)建xSignal主要有以下幾種方式:
使用向?qū)В≧un xSignal Wizard)
選中源器件,并點(diǎn)擊“Create xSignals between components”來定義兩個(gè)器件間的xSignal
選中源器件,并點(diǎn)擊“Create xSignals from connected nets”,通過源器件及與源器件連接的網(wǎng)絡(luò)來定義xSignal
直接點(diǎn)擊“Create xSignals”使用對話框手動創(chuàng)建Xsignal。
向?qū)У氖褂糜悬c(diǎn)復(fù)雜,今后有空再講,這里主要講一下其它兩種方式。
使用“Create xSignals between components”對話框
點(diǎn)擊菜單Design ? xSignals ? Create xSignals,對話框中左側(cè)為源器件,右側(cè)為目標(biāo)器件;目標(biāo)器件可以多選。
過以下步驟創(chuàng)建xSignal:
選擇源器件(source component)
選擇目標(biāo)器件(destination component)
選擇感興趣的網(wǎng)絡(luò)
點(diǎn)擊“Analyze”,AD會自動分析兩器件之間感興趣網(wǎng)絡(luò)的所有路徑。請仔細(xì)檢查Source和Destination中的結(jié)果是否正確(尤其是存在端接電阻的情況)
在Include created xSignals into class欄中輸入創(chuàng)建的xSignal Class的名稱,默認(rèn)會歸類到All xSignals類中。
點(diǎn)擊OK完成創(chuàng)建。完成后可以在PCB面板中看到所有已創(chuàng)建的xSignal。
使用“CreatexSignals from connected nets”對話框
如果您的xSignal包含端接電阻,使用這個(gè)方式創(chuàng)建xSignal更為直接。選中端接電阻后點(diǎn)擊“CreatexSignals from connected nets”:
上圖為選中4個(gè)pin角的排阻RN33,右側(cè)Source Component Nets中為排阻連接的所有網(wǎng)絡(luò)。點(diǎn)擊“Analyze”后,系統(tǒng)為自動分析出可能的xSignal。注意,請仔細(xì)檢查Source和Destinatiion中的網(wǎng)絡(luò)是否正確,如果不正確,可以進(jìn)行手動調(diào)整。確認(rèn)后完成xSignal的創(chuàng)建。
網(wǎng)絡(luò)拓?fù)洌∟et Topology)的作用
xSignal定義的是兩個(gè)節(jié)點(diǎn)(或焊盤)之間的信號路徑。AD是根據(jù)兩個(gè)節(jié)點(diǎn)間的連接線(connection line)來分析信號路徑的,而連接線的定義方式是通過Routing Topology規(guī)則來決定的,默認(rèn)Routing Topology的規(guī)則為shortest,即最短。
下圖為Fly-by拓?fù)浣Y(jié)構(gòu)下CPU連接到4個(gè)Memory的動畫,可以清楚地看到4個(gè)xSignal的定義情況:
T點(diǎn)拓?fù)浣Y(jié)構(gòu)(Balance T)中支點(diǎn)的定義
T點(diǎn)拓?fù)浣Y(jié)構(gòu)不僅需要對主干做等長,還需要對支干做等長。
上圖中的紅色點(diǎn)即為支點(diǎn)(Branch point),需要保證每個(gè)支點(diǎn)到DRAM1,2,3,4都是等長的。
問題來了,AD中的xSignal必須使用實(shí)體的器件Pin腳創(chuàng)建,不支持獨(dú)立的焊盤或過孔(Free Pad/Via)。在Mentor和Cadence中,可以將某個(gè)Pad或Via定義為“虛擬T點(diǎn)”,從而進(jìn)行分支的線長調(diào)制,但在AD中,目前還無法支持這一方式。一個(gè)變通的方法是為獨(dú)立的Pad/Via制作一個(gè)單獨(dú)的器件(原理圖符號+封裝),然后將這一器件放在T點(diǎn)處。雖然有些麻煩,但畢竟解決了AD之前無法對分支網(wǎng)絡(luò)進(jìn)行線長規(guī)則定義且無法進(jìn)行線長調(diào)制的尷尬。
Length & Matched Net Length規(guī)則
xSignal創(chuàng)建完成后,接下去的使用方法和網(wǎng)絡(luò)(Net)完全一樣了。記住,xSignal Class對應(yīng)的是Net Class; xSignal對應(yīng)的是Net。區(qū)別在與xSignal定義的pin到pin之間的路徑,而Net是所有屬性相同的網(wǎng)絡(luò)。
下圖是PCB面板中查看xSignal的示意圖以及定義Matched Net Length規(guī)則的一個(gè)截圖:
具體規(guī)則的創(chuàng)建在以后的章節(jié)中詳細(xì)介紹。
總結(jié)一下,xSignal是一個(gè)非常重要的功能,基本解決了Altium Designer之前無法在高速設(shè)計(jì)中準(zhǔn)確調(diào)制信號線長的問題。結(jié)合如何準(zhǔn)確測量信號長度一文中提到的對線長計(jì)算精度的提高,大大減少了工程師在高速設(shè)計(jì)中Layout的時(shí)間,且提高了設(shè)計(jì)的準(zhǔn)確性。
評論