《電子技術(shù)應(yīng)用》
您所在的位置:首頁 > 可編程邏輯 > 設(shè)計(jì)應(yīng)用 > 基于CPLD的片內(nèi)環(huán)形振蕩器的設(shè)計(jì)方案
基于CPLD的片內(nèi)環(huán)形振蕩器的設(shè)計(jì)方案
摘要: 基于CPLD的片內(nèi)環(huán)形振蕩器的設(shè)計(jì)方案,本文介紹一種通用的基于CPLD的片內(nèi)振蕩器設(shè)計(jì)方法,它基于環(huán)形振蕩器原理,,只占用片上普通邏輯資源(LE),,無需使用專用邏輯資源(如MaxII中的UFM),從而提高了芯片的資源利用率,;振蕩頻率可在一定范圍內(nèi)調(diào)整,,振蕩輸出
Abstract:
Key words :

本文介紹一種通用的基于CPLD的片內(nèi)振蕩器設(shè)計(jì)方法,,它基于環(huán)形振蕩器原理,只占用片上普通邏輯資源(LE),,無需使用專用邏輯資源(如MaxII中的UFM),,從而提高了芯片的資源利用率;振蕩頻率可在一定范圍內(nèi)調(diào)整,,振蕩輸出可以驅(qū)動內(nèi)部邏輯和外部器件引腳,。本設(shè)計(jì)有較大的通用性,可方便地在不同CPLD" title="CPLD">CPLD器件間移植,,使一些基于CPLD的片上系統(tǒng)(SoC)設(shè)計(jì)無需使用外部時(shí)鐘信號源,,從而降低設(shè)計(jì)成本和難度,增加系統(tǒng)集成度,。通過在Altera公司的MAX7000" title="MAX7000">MAX7000系列EMP7128LC84-15芯片上的實(shí)驗(yàn)說明實(shí)現(xiàn)的方法,。實(shí)驗(yàn)實(shí)現(xiàn)的頻率范圍在8MHz~62MHz。仿真和硬件測試結(jié)果表明了該設(shè)計(jì)方法的正確性和可行性,。

1 基于CPLD的片內(nèi)環(huán)形振蕩器

環(huán)形振蕩器" title="環(huán)形振蕩器">環(huán)形振蕩器原理如圖1所示,。由奇數(shù)個(gè)非門組成的環(huán)形非門級聯(lián)串使電路處于無穩(wěn)定狀態(tài),靜態(tài)下任何一個(gè)非門的輸入和輸出都不可能穩(wěn)定在高電平或低電平,,而只能處于周而復(fù)始的高低電平轉(zhuǎn)換狀態(tài),,從而產(chǎn)生自激振蕩。振蕩周期為T=2Ntpd,,其中N是非門的個(gè)數(shù),,tpd是每個(gè)非門的傳輸延遲時(shí)間,改變電路中非門的數(shù)量可以改變電路的振蕩頻率,。






圖1所示的環(huán)形振蕩器即使采用電路原理圖輸入,,經(jīng)電子設(shè)計(jì)自動化(EDA)軟件綜合后,也得不到對應(yīng)的電路結(jié)構(gòu),。實(shí)際上,,EDA綜合工具不是從電路結(jié)構(gòu)出發(fā),而是從電路輸入和輸出的邏輯關(guān)系出發(fā)給出綜合結(jié)果,,所以,,奇數(shù)個(gè)非門的級聯(lián)將被綜合為一個(gè)非門,而偶數(shù)個(gè)非門的級聯(lián)被綜合為一個(gè)緩沖或一條聯(lián)線,。為能在CPLD器件中實(shí)現(xiàn)圖1的環(huán)形振蕩器結(jié)構(gòu),,本文將圖1中單端口輸入元件改成二端口輸入元件,即用二輸入與非門代替圖1的第一個(gè)非門,,其余偶數(shù)個(gè)非門則用二輸入與門代替,二端口元件的一個(gè)輸入端口連接上級輸出,,另一輸入端口作為控制端引出,。振蕩器正常工作時(shí)控制端全部置高電平,。采用Synplify" title="Synplify">Synplify Pro 7.7綜合后的原理圖如圖2所示。該電路完全可實(shí)現(xiàn)圖1的功能,。

為了保證正反饋,,圖1結(jié)構(gòu)的非門級聯(lián)必須是奇數(shù)個(gè)。圖2中的與非門起到反相作用,,其他與門則起延時(shí)緩沖的作用,。可以通過改變門的數(shù)量以及選擇門的種類(與門,、與非門等)改變osc輸出端的振蕩頻率,,而不受"奇數(shù)"個(gè)門的限制,只要保障第一個(gè)門得到正反饋就可以產(chǎn)生振蕩,。而圖1的結(jié)構(gòu)必須改變偶數(shù)個(gè)非門才能達(dá)到改變振蕩頻率的目的,,因而圖2結(jié)構(gòu)在CPLD芯片中實(shí)現(xiàn)時(shí)可以節(jié)省邏輯資源??刂贫薿scena[n-1,,0]為振蕩使能控制端,置高電平時(shí),,與非門的輸入和輸出在緩沖級聯(lián)鏈的反饋?zhàn)饔孟庐a(chǎn)生自激振蕩,,振蕩器正常工作;控制端的任意一位置零使振蕩器停振,。所以oscena既可單獨(dú)使用,,也可互聯(lián)后作為一個(gè)端使用。實(shí)驗(yàn)證明,,圖2結(jié)構(gòu)能夠保證門延時(shí)的等間隔特性,。





2 CPLD片內(nèi)振蕩器的實(shí)現(xiàn)和優(yōu)化

2.1 CPLD片內(nèi)振蕩器的實(shí)現(xiàn)

基于上述方法的片內(nèi)環(huán)形振蕩器設(shè)計(jì)有很大的通用性,可在不同CPLD芯片間方便地移植,。本文以Altera公司的MAX7000S系列CPLD芯片的實(shí)現(xiàn)和測試為例說明,。MAX7000S系列基于先進(jìn)的多矩陣構(gòu)架設(shè)計(jì),采用CMOS工藝制造,,容量高達(dá)256個(gè)邏輯單元LE(Logic El-ement),,每16個(gè)宏單元組成一個(gè)邏輯陣列塊LAB(LogicArray Block),速度達(dá)3.5ns的管腳到管腳延時(shí),,同時(shí)支持多種I/O電壓標(biāo)準(zhǔn),。

從EDA軟件綜合后的報(bào)告可以看出,圖2所示電路中每個(gè)門占用了一個(gè)邏輯單元,。也就是說,,電路內(nèi)LE的延時(shí)將作為門的延時(shí)tpd,而且需要將振蕩使能端引出到I/O引腳,,當(dāng)所實(shí)現(xiàn)振蕩頻率較低時(shí),,需要較多的門電路單元,,這將占用一定的邏輯和引腳資源,從而降低芯片資源的利用率,,所以在低頻情況下使用時(shí),,要綜合考慮系統(tǒng)需要的振蕩頻率,盡量用較少的門電路實(shí)現(xiàn)環(huán)形振蕩器,,以提供較高振蕩頻率,,再設(shè)計(jì)分頻電路以取得合適的振蕩頻率,從而提高芯片的資源利用率,。綜合器的這一處理,,從客觀上保證了設(shè)計(jì)者可以選擇不同的門來實(shí)現(xiàn)圖2的結(jié)構(gòu),仍然可以保證振蕩間隔的一致性,。實(shí)驗(yàn)也證實(shí)了這個(gè)結(jié)果,。

2.2 電源電壓的影響

電壓會影響振蕩電路的工作頻率,電壓增大會導(dǎo)致電路振蕩頻率增加,,反之振蕩頻率減小。CPLD芯片一般有兩個(gè)相對獨(dú)立的供電端口,,即核心電壓(VCCINT)和引腳電壓(VCCIO),。其中核心電壓給芯片內(nèi)部可編程邏輯電路資源提供電源,引腳電壓為芯片的I/O引腳提供電源,,以適應(yīng)各種輸出標(biāo)準(zhǔn)(如LVCOMOS、LVTTL,、SSTL-2,、SSTL-3等),。對振蕩頻率有影響的是CPLD芯片的核心電壓,對此電壓應(yīng)采取穩(wěn)壓措施,,穩(wěn)壓措施要視不同的應(yīng)用要求而定。最簡單的措施是采用高性能的穩(wěn)壓芯片給CPLD芯片分別提供兩部分電壓,。隨著半導(dǎo)體技術(shù)的發(fā)展,簡單而廉價(jià)的穩(wěn)壓芯片已具有較高的性能,,如National公司的LM2678系列芯片在有效輸入變化范圍內(nèi),,穩(wěn)壓輸出誤差在±2%以內(nèi),。

2.3 CPLD片內(nèi)振蕩器優(yōu)化

通過EDA軟件對設(shè)計(jì)做優(yōu)化有可能提高所設(shè)計(jì)的振蕩器的性能,減少對CPLD片內(nèi)資源的占用,。當(dāng)采用MAX+plusII10.2軟件設(shè)計(jì)時(shí),,軟件優(yōu)化開關(guān)設(shè)置為:(1)本設(shè)計(jì)選用MAX系列芯片,故選擇對該芯片的多層綜合選項(xiàng)(Multi-Level Synthesis for Max5000/7000/9000De-vice),。(2)在面積和速度優(yōu)化選項(xiàng)中,選擇對面積的優(yōu)化,,使振蕩器部分盡可能分配到同一個(gè)LAB中。(3)打開"Slow Slew Rate"以降低開關(guān)噪聲,,打開"XOR Synthesis"以減少芯片面積的占用。

3 電路仿真及測試結(jié)果

本文以Altera公司的MAX+plus II 10.2為設(shè)計(jì)工具,,在MAX7000S系列芯片上實(shí)現(xiàn)并測試。圖3為選用EMP7128LC84-15芯片的時(shí)序仿真結(jié)果,。其中p0~p7分別為環(huán)形振蕩電路中單個(gè)門之后的電路節(jié)點(diǎn),;oscena[7…0]為各延時(shí)門電路的控制端(即所有二輸入門中多余的輸入端),。






表1列出了以EPM7128LC84-15為目標(biāo)芯片,、采用Tektronic TDS2012示波器對用不同門數(shù)實(shí)現(xiàn)的片內(nèi)振蕩器的測試數(shù)據(jù)。F1和F2分別表示片內(nèi)振蕩器輸出和二分頻輸出的測量數(shù)據(jù),。圖4給出了測量數(shù)據(jù)的曲線。






表1數(shù)據(jù)表明,,通過增加門電路的數(shù)量可以有規(guī)律地減小振蕩電路的工作頻率,由每個(gè)邏輯單元實(shí)現(xiàn)的門電路單元延時(shí)tpd在7.5~10ns之間,。






本文介紹的基于CPLD的片內(nèi)振蕩器設(shè)計(jì)方法,,在改變該振蕩器電路中門電路數(shù)量時(shí),可以有規(guī)律地將振蕩頻率控制在8MHz~62MHz范圍內(nèi),。振蕩器的片內(nèi)設(shè)計(jì)使基于CPLD的片上系統(tǒng)(SoC)設(shè)計(jì)無需外接時(shí)鐘信號源,加大了系統(tǒng)的集成度并降低了設(shè)計(jì)成本,。本方法有很大的通用性,可以方便地在不同CPLD芯片間移植,。仿真和測試數(shù)據(jù)表明該設(shè)計(jì)方法具有正確性和可行性,。

此內(nèi)容為AET網(wǎng)站原創(chuàng),,未經(jīng)授權(quán)禁止轉(zhuǎn)載,。