利用Allegro實(shí)現(xiàn)嵌入式系統(tǒng)高速電路布線設(shè)計(jì)
1 引言
本文引用地址:http://m.butianyuan.cn/article/85065.htm隨著嵌入式微處理器主頻的不斷提高,信號(hào)的傳輸處理速度越來(lái)越快,當(dāng)系統(tǒng)時(shí)鐘頻率達(dá)到100MHZ以上,傳統(tǒng)的電路設(shè)計(jì)方法和軟件已無(wú)法滿足高速電路設(shè)計(jì)的要求。在高速電路設(shè)計(jì)中,走線的等長(zhǎng)、關(guān)鍵信號(hào)的阻抗控制、差分走線的設(shè)置等越來(lái)越重要。筆者所在的武漢華中科技大學(xué)與武漢中科院巖土力學(xué)所智能儀器室合作.以ARM9微處理器EP9315為核心的嵌入式系統(tǒng)完成工程檢測(cè)儀的開(kāi)發(fā)。其中在該嵌入式系統(tǒng)硬件電路設(shè)計(jì)中的SDRAM和IDE等長(zhǎng)走線、關(guān)鍵信號(hào)的阻抗控制和差分走線是本文的重點(diǎn),同時(shí)以cirrus logic公司的網(wǎng)絡(luò)物理層接13芯片cs8952為例詳細(xì)介紹了網(wǎng)絡(luò)部分的硬件電路設(shè)計(jì),為同類高速硬件電路設(shè)計(jì)提供了一種可借鑒的方法。
2 硬件平臺(tái)
2.1主要芯片
本設(shè)計(jì)采用的嵌入式微處理器是Cirrus Logic公司2004年7月推出的EP93XX系列中的高端產(chǎn)品EP9315。該微處理器是高度集成的片上系統(tǒng)處理器,擁有200兆赫工作頻率的 ARM920T內(nèi)核,它具有ARM920T內(nèi)核所有的優(yōu)異性能,其中豐富的集成外設(shè)接口包括PCMCIA、接口圖形加速器、可接兩組設(shè)備的EIDE、 1/10/100Mbps以太網(wǎng)MAC、3個(gè)2.0全速HOST USB、專用SDRAM通道的LCD接口、觸摸屏接口、SPI串行外設(shè)接口、AC97接口、6通道I2S接口和8*8鍵盤掃描接口.并且支持4組32位 SDRAM的無(wú)縫連接等。
主芯片豐富的外設(shè)接口大大簡(jiǎn)化了系統(tǒng)硬件電路.除了網(wǎng)絡(luò)控制部分配合使用Cirrus Logic公司的100Base—X/10Base-T物理層(PHY)接口芯片CS8952外,其他功能模塊無(wú)需增加額外的控制芯片。
2.2系統(tǒng)主體結(jié)構(gòu)
由圖1可見(jiàn).系統(tǒng)以微處理器EP9315為核心,具有完備的外設(shè)接口功能,同時(shí)控制工程檢測(cè)儀。IDE/CF卡接口為工程檢測(cè)數(shù)據(jù)提供大容量移動(dòng)存儲(chǔ)設(shè)備;擴(kuò)展32M的SDRAM作為外部數(shù)據(jù)存儲(chǔ)空間;3個(gè)主動(dòng)USB接口支持USB鍵盤鼠標(biāo);LCD接口支持STN/TFT液晶和觸摸屏.為用戶提供友好的交互界面;1/10/100 Mbps以太網(wǎng)為調(diào)試操作系統(tǒng)時(shí)下載內(nèi)核及工程檢測(cè)時(shí)遠(yuǎn)程監(jiān)控提供途徑;面板按鍵為工程人員野外作業(yè)無(wú)法使用鍵盤鼠標(biāo)時(shí)提供人機(jī)交互接口。
EP9315在操作系統(tǒng)下主頻達(dá)到200M,總線頻率100M,外設(shè)時(shí)鐘為50M,數(shù)據(jù)線和地址線的布線密度大,速度高,網(wǎng)絡(luò)部分對(duì)差分線和微帶線控制有特殊要求。以往使用Protel設(shè)計(jì)主要依照經(jīng)驗(yàn)進(jìn)行PCB布局布線,顯然這種方法無(wú)法滿足當(dāng)前的高速電路設(shè)計(jì)。CADENCE公司作為EDA領(lǐng)域最大的公司之一,其PCB設(shè)計(jì)工具性能上的優(yōu)勢(shì)在高速電路設(shè)計(jì)中越來(lái)越明顯,故筆者使用CADENCE公司的PCB設(shè)計(jì)布局軟件Allegro完成高速電路設(shè)計(jì)。
3 設(shè)計(jì)實(shí)現(xiàn)
3.1 SDRAM的布線規(guī)則
該嵌入式系統(tǒng)使用64M字節(jié)的SDRAM擴(kuò)展數(shù)據(jù)存儲(chǔ)區(qū),由兩片K4S561632組成工作在32位模式下。最高頻率可達(dá)100M以上,對(duì)于SDRAM的數(shù)據(jù)線、時(shí)鐘線、片選及其它控制信號(hào)需要進(jìn)行線長(zhǎng)匹配,由此提出以下布線要求:
1. SDRAM 時(shí)鐘信號(hào):時(shí)鐘信號(hào)頻率較高,為避免傳輸線效應(yīng),按照工作頻率達(dá)到或超過(guò)75MHz時(shí)布線長(zhǎng)度應(yīng)在1000mil以內(nèi)的原則及為避免與相鄰信號(hào)產(chǎn)生串?dāng)_。走線長(zhǎng)度不超過(guò)1000mil,線寬10mil,內(nèi)部間距5mil,外部間距30mil,要求差分布線,精確匹配差分對(duì)走線。誤差允許在20mil以內(nèi)。
2. 地址,片選及其它控制信號(hào):線寬5mil,外部間距12mil,內(nèi)部間距10mil。盡量走成菊花鏈拓補(bǔ)??捎行Э刂聘叽沃C波干擾,可比時(shí)鐘線長(zhǎng),但不能短。
3. SDRAM數(shù)據(jù)線:線寬5mil,內(nèi)部間距5mil,外部間距8mil,盡量在同一層布線,數(shù)據(jù)線與時(shí)鐘線的線長(zhǎng)差控制在50mil內(nèi)。
根據(jù)布線要求,在Allegro中設(shè)置不同的約束:針對(duì)線寬設(shè)置3 個(gè)約束SDRAM_CLK,SDRAM_ADDDR,SDRAM_DATA,設(shè)置完約束后將約束添加到對(duì)應(yīng)的net上。使得各個(gè)net都具有線寬、線距約束屬性。最后為不同的信號(hào)組選擇合適的約束即可。但是設(shè)置的約束在系統(tǒng)CPU內(nèi)部是無(wú)法達(dá)到的。因?yàn)镋P9315為BGA封裝。pin間距1.27毫米,顯然在CPU內(nèi)部,線寬線距無(wú)法達(dá)到上述要求,利用Allegro設(shè)置CPU特殊走線區(qū)域cpu_area。并加上area屬性,在此區(qū)域中另設(shè)置適合 BGA內(nèi)部走線的約束。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)DIY機(jī)械鍵盤相關(guān)社區(qū):機(jī)械鍵盤DIY
評(píng)論