新聞中心

EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 在Protel99SE下實(shí)現(xiàn)可編程邏輯器件設(shè)計(jì)

在Protel99SE下實(shí)現(xiàn)可編程邏輯器件設(shè)計(jì)

作者: 時(shí)間:2004-12-10 來源:網(wǎng)絡(luò) 收藏
摘要:通過工程實(shí)例介紹了在DSP?Digital Signal Processing數(shù)字信號(hào)處理?系統(tǒng)中,利用PRO-TEL99SE嵌套的Advanced Protel PLD99硬件描述語言CUPL進(jìn)行的方法。

關(guān)鍵詞:(PLD);硬件描述語言(CUPL);Protel99se

1 引言

在以往的DSP中,采用TTL、CMOS電路和專用數(shù)字電路進(jìn)行設(shè)計(jì)時(shí),對(duì)電路的處理功能是固定的,用戶不能定義或修改其功能。但隨著電子技術(shù)的發(fā)展和工程對(duì)所需功能復(fù)雜程度的進(jìn)一步提高,系統(tǒng)將需要很多芯片,這樣,在芯片之間,以及芯片和印刷電路板的布線和接點(diǎn)也相應(yīng)增多,因而導(dǎo)致系統(tǒng)的可靠性下降和功耗增加,這樣也就越來越不能滿足工程實(shí)際的需要。而大規(guī)模邏輯器件?PLD:Programmable Logic Device?和基于芯片的EDA?Electronic Design Automatic電子設(shè)計(jì)自動(dòng)化?工具軟件則可以解決這一問題。半導(dǎo)體技術(shù)的提高使ASIC?Application Specific Integrated Circuit:特定用途集成電路?設(shè)計(jì)技術(shù)日趨完善,同時(shí)可編程邏輯器件在結(jié)構(gòu)、工藝、集成度、功能、速度、靈活性等方面的改進(jìn)和提高,也為高效率、高質(zhì)量、靈活設(shè)計(jì)數(shù)字系統(tǒng)提供了可靠性。此外,CPLD?Complex Pro-grammable Logic Device?或FPGA?Field Programmable Array?技術(shù)的出現(xiàn),又為DSP提供了一種嶄新的方法,并使CPLD或FPGA設(shè)計(jì)的DSP系統(tǒng)具有良好的實(shí)用性和極強(qiáng)的實(shí)時(shí)性。

在Protel99se嵌套的PLD99的開發(fā)環(huán)境下,可編程邏輯器件設(shè)計(jì)可以直接面向用戶要求,自上而下地逐層完成相應(yīng)的描述、綜合、優(yōu)化、仿真與驗(yàn)證,直到生成能夠下載到器件的JED文件,該方法結(jié)構(gòu)嚴(yán)謹(jǐn),易于操作,其設(shè)計(jì)流程如圖1所示。

2 實(shí)例介紹

在某工程中,要求利用SYN0,SYN1,SYN2,SYN3,SYN4,SYN5作為同步信號(hào)進(jìn)行64個(gè)通道的選擇,以使64個(gè)通道在不同時(shí)刻進(jìn)行工作,電路產(chǎn)生的發(fā)射脈沖連接在64個(gè)雙晶探頭上,然后將雙晶探頭產(chǎn)生的原始回波信號(hào)a1,b1,c1,d1經(jīng)過AD8184?四選一開關(guān)?輸出到信號(hào)板進(jìn)行處理。

3 設(shè)計(jì)過程

3.1 確定設(shè)計(jì)目的

由于每一通道的電路都是相同的,考慮到硬件電路以及電路板容量的問題,可先將64個(gè)通道分成16組,即每塊電路PCB板設(shè)計(jì)四個(gè)通道,這16組利用SYN2,SYN3,SYN4,SYN5和撥碼開關(guān)S1選通,然后利用SYN0,SYN1產(chǎn)生選通每塊電路板的四個(gè)通道的選通信號(hào)A0、A1和輸出使能EN,其電路原理如圖2所示,信號(hào)的先后次序及邏輯關(guān)系見圖3。

3.2 PLD器件的選擇和輸入輸出的確定

由于CUPL語言與器件和生產(chǎn)廠家無關(guān),根據(jù)設(shè)計(jì)目的和要求,最簡單、最常用的GAL22V10可以作為目標(biāo)器件。根據(jù)GAL22V10的技術(shù)資料和器件各個(gè)管腳的定義,可將同步信號(hào)SYN0,SYN1,SYN2 ,SYN3,SYN4,SYN5和撥碼開關(guān)S1的四個(gè)管腳作為輸入信號(hào),即選擇2~11為輸入管腳,13腳直接接地,14~20為輸出管腳,其中14~17腳用來進(jìn)行通道選擇,18、19腳作為AD8184的選通信號(hào),20腳作為AD8184的輸出使能,參見圖2。

圖3 信號(hào)邏輯關(guān)系圖

3.3 創(chuàng)建包括頭信息的源文件

在PLD99的開發(fā)環(huán)境下,根據(jù)上述設(shè)想及管腳分配,利用Protel99se模板和硬件描述語言CUPL定義輸入輸出管腳,以創(chuàng)建包括頭信息的文本文件Tan-Shang.pld,然后用CUPL語言寫出如下的中間變量邏輯式和邏輯等式?注:由于描述變量EN的乘積項(xiàng)過多,故將變量EN分成中間變量EN1和EN2?,并完善文本文件。經(jīng)過一系列設(shè)置后便可編譯原文件,編譯成功后會(huì)提示Compilation successful,方法如下:

/** Declarations and Intermediate Variables **/

EN1=!(k1 & k2 & k3 & k4 & syn2 & syn3 & syn4 & syn5

#!k1 & k2 & k3 & k4 & !syn2 & syn3 & syn4 & syn5

#k1 & !k2 & k3 & k4 & syn2 & !syn3 & syn4 & syn5

#!k1 & !k2 & k3 & k4 & !syn2 &!syn3 & syn4 & syn5

#k1 & k2 & !k3 & k4 & syn2 & syn3 & !syn4 & syn5

#!k1 & k2 & !k3 & k4 & !syn2 & syn3 & ?。螅睿?& syn5

#k1 & !k2 & ?。耄?& k4 & syn2 & ?。螅睿?& ?。螅睿?& syn5

#?。耄?& !k2 & ?。耄?& k4 & ?。螅睿?&?。螅睿?& !syn4 & syn5??

EN2=?。ǎ耄?& k2 & k3 & ?。耄?& syn2 & syn3 & syn4 & ?。螅睿?/P>

#?。耄?& k2 & k3 & ?。耄?& ?。螅睿?& syn3 & syn4 &!syn5

#k1 & ?。耄?& k3 &!k4 & syn2 &?。螅睿?& syn4 & ?。螅睿?/P>

#?。耄?& !k2 & k3 & ?。耄?& ?。螅睿?& !syn3 & syn4 & ?。螅睿?/P>

#k1 & k2 & ?。耄?& ?。耄?& syn2 & syn3 &?。螅睿?& !syn5

#!k1 & k2 & ?。耄?& ?。耄?& ?。螅睿?& syn3 & ?。螅睿?&! syn5

#k1 & !k2 & !k3 & !k4 & syn2 &!syn3 & !syn4 & !syn5

#!k1 & !k2 & !k3 & !k4 &!syn2 & !syn3 &!syn4 &!syn5);/** Logic Equations **/

EN=EN1&EN2?

A1=!syn1 &!EN?

A0=!syn0 &!EN?

a=!A1&!A0& !EN?

b=!A1&A0& !EN?

c=A1&!A0& !EN?

d=A1&A0&!EN?

圖4 查看波形輸出文件

3.4 設(shè)置仿真向量

通過創(chuàng)建仿真測試文件TanShang.SI可進(jìn)行仿真測試,以產(chǎn)生如圖3的仿真波形,當(dāng)編譯和仿真成功后,即可得到可下載到可編程邏輯器件的JED文件。該仿真測試文件Tanshang.SI如下:

ORDER:syn5,syn4,syn3,syn2,syn1,syn0,k4,k3,k2,k1,OE,EN,A1,A0,a,b,c,d;

VECTORS:

00000000001LHHLLLH

00000100001LHLLLHL

00001000001LLHLHLL

00001100001LLLHLLL

從仿真結(jié)果很明顯地可以看出:撥碼開關(guān)的四位K1,K2,K3,K4分別代表00~0F(十六進(jìn)制碼)這16組,而每組的四個(gè)通道的輸出為a,b,c,d;由于SYN0,SYN1,SYN2,SYN3,SYN4,SYN5可組成00~3F(十六進(jìn)制碼)共64個(gè)通道,從而了利用SYN0,SYN1,SYN2,SYN3,SYN4,SYN5分時(shí)選通64個(gè)通道回波信號(hào)的功能。由于EN始終為低電平信號(hào),因此保證了AD8184的選通信號(hào)能夠起作用。

4 結(jié)論

利用Advanced Protel PLD99的硬件描述語言CUPL進(jìn)行PLD設(shè)計(jì),具有設(shè)計(jì)簡單、可操作性強(qiáng)的優(yōu)點(diǎn),在采用可編程邏輯器件進(jìn)行系統(tǒng)設(shè)計(jì)時(shí),由于其硬件描述語言CUPL能夠定義內(nèi)部邏輯和外接管腳的功能,而且在設(shè)計(jì)中根本不必考慮邏輯器件內(nèi)部連線和組合邏輯陣列?Interconnect And Combinato-rial Logical?,再加上除了系統(tǒng)行為和功能描述外,所有設(shè)計(jì)過程都可以用計(jì)算機(jī)自動(dòng)完成,所以,通過可編程邏輯器件?FPGA?等開發(fā)工具,在實(shí)驗(yàn)室就可以設(shè)計(jì)出專用的集成電路,從而真正電子設(shè)計(jì)自動(dòng)化。由此可見:該方法并為數(shù)字系統(tǒng)的設(shè)計(jì)提供了非常方便的手段,靈活地解決了眾多復(fù)雜的工程實(shí)踐問題,從而可大大縮短研發(fā)時(shí)間。



評(píng)論


相關(guān)推薦

技術(shù)專區(qū)

關(guān)閉