企業(yè)檔案
- 會員類型:免費會員
- 工商認(rèn)證: 【已認(rèn)證】
- 最后認(rèn)證時間:
- 法人:
- 注冊號:
- 企業(yè)類型:生產(chǎn)商
- 注冊資金:人民幣5118萬
聯(lián)系我們
聯(lián)系人:鄧友坤
熱門標(biāo)簽
技術(shù)文章
CPLD在基于DSP的智能執(zhí)行器中的應(yīng)用
1 引言
數(shù)字信號處理系統(tǒng)由于其強大的高速處理能力正在得到越來越廣泛的應(yīng)用。作為電動執(zhí)行器,由于電機的時變性和強耦合性使系統(tǒng)具有很強的實時性要求,采用DSP芯片構(gòu)成系統(tǒng)成為滿足這個要求的方法。同樣控制系統(tǒng)的體積是影響系統(tǒng)應(yīng)用范圍的一個重要因素,控制系統(tǒng)的體積越小,其應(yīng)用范圍就越廣泛,在處理器內(nèi)部集成了大量功能模塊的DSP芯片也極大地滿足了減小體積的要求。
但是,控制芯片本身可以集成的功能是有限的,數(shù)字信號處理系統(tǒng)中,不可避免的包含了大量的外圍電路。這些外圍電路包括A/D、D/A轉(zhuǎn)換電路,時鐘電路以及其它各種接口電路。各種外圍電路實現(xiàn)其特定的功能,擴展了系統(tǒng)的功能和應(yīng)用范圍,在數(shù)字信號處理系統(tǒng)中起到了非常重要的作用。
復(fù)雜可編程邏輯器件(CPLD)是數(shù)字信號處理系統(tǒng)的主要外圍擴展芯片。CPLD器件在很小的體積內(nèi)集成了大量的門電路,并且可以實現(xiàn)在系統(tǒng)編程(ISP),可以廣泛的應(yīng)用于IO接口擴展、RAM擴展、時序和組合邏輯的實現(xiàn)等。
可編程邏輯器件可以分為三大類,即GAL、FPGA和CPLD。其中,CPLD具有布線能力強、系統(tǒng)在線編程、高速信號傳遞、高可靠性、高抗干擾性和簡單易用等突出優(yōu)點,非常適合中小型的系統(tǒng)應(yīng)用。
目前,CPLD器件的生產(chǎn)廠家主要有ALTERA、LATFICE、XILINX等,這些廠家提供了種類豐富的CPLD器件。本文以ALTERA公司的MAX7000系列EPM7064型CPLD為例,介紹該元件在數(shù)字信號處理中的應(yīng)用和CPLD的突出優(yōu)點。
2 MAX7000系列復(fù)雜可編程邏輯器件
2.1 結(jié)構(gòu)和功能
MAX7000系列器件是基于ALTERA公司第二代MAX結(jié)構(gòu)的高集成度高可靠性的可編程邏輯器件。采用CMOS技術(shù)基于EEPROM的MAX7000系列器件可以提供600-5000個門電路,并具有系統(tǒng)在線編程能力,管腳之間的延時時間*小可以達到5ns。其引腳可以完全兼容TTL電平和CMOS電平。其結(jié)構(gòu)如圖1所示。
MAX7000系列器件可以通過系統(tǒng)在線編程來指定其輸入輸出邏輯。系統(tǒng)在線編程是通過符合IEEE標(biāo)準(zhǔn)1149.1-1990的4針JTAG接口來進行的。編程電壓根據(jù)選擇的芯片不同可以為5V、3.3V或2.5V。芯片內(nèi)部會根據(jù)需要產(chǎn)生內(nèi)部編程所需要的電壓。這種技術(shù)充分簡化了設(shè)計,使設(shè)計者可以方便的進行邏輯功能的修改而不需要改變印制線路板。
MAX7000系列部分器件的IO接口是具有多種電壓的接口,通過改變特定引腳的電平來改變IO引腳的輸出電平。
MAXT000系列器件的編程軟件通常為MAXPLUS Ⅱ,該軟件具有豐富的宏單元和大量的設(shè)計模板,可以大大減少編程的工作量。在編程時,MAX7000系列器件還可以設(shè)置安全位,以防止CPLD編程內(nèi)容未經(jīng)授權(quán)的讀出和誤寫入。
在相同的封裝型式下,MAX7000系列具有多種集成度的器件可供選擇,這樣就消除了因為可編程邏輯器件的容量不足而使印制線路板需要重新設(shè)計的問題。
2.2 CPLD的設(shè)計步驟
CPLD器件主要用于擴展IO接口、小容量RAM擴展、組合和時序邏輯的實現(xiàn)等。其設(shè)計可以分為以下幾個步驟:①確定輸入輸出的IO口數(shù)量;②設(shè)計軟件,軟件仿真并確定宏單元或集成規(guī)模;③確定延時;④選擇芯片,下載程序,硬件仿真。
3 設(shè)計實例
系統(tǒng)需求簡介:在電動執(zhí)行器中,由于DSP芯片本身提供的IO接口被其它外設(shè)占用,因此需要擴展額外的IO接口;顯示模塊和數(shù)模轉(zhuǎn)換模塊需要擴展出選通信號;數(shù)模轉(zhuǎn)換模塊還需要利用外部IO地址擴展出一個啟動信號;液晶背光燈也需要兩個外部IO地址擴展出控制信號。
從DSP芯片上提供了IS(外部IO空間訪問信號)、WE(寫有效信號)、CLK(系統(tǒng)時鐘)和地址線3根、數(shù)據(jù)線2根,輸出的信號包括:額外擴展的IO口2個、選通/鎖存信號4個、背光燈控制信號2個。這樣,對CPLD一共需要IO 口16個,可以選擇MAX7000系列中的44引腳的器件,一共可以提供32個IO引腳。
CPLD邏輯功能的設(shè)計可以采用VHDL語言、Verilog HDL語言和邏輯圖編程的方法進行。具體設(shè)計方法參照相關(guān)參考資料。將設(shè)計好的程序在編譯器上進行編譯,并可以選擇適當(dāng)?shù)募梢?guī)模進行匹配,以確定*少需要的宏單元數(shù)或集成門數(shù)。在此基礎(chǔ)上,MAX PLUS Ⅱ程序還可以進行軟件的邏輯功能仿真和時序仿真,以驗證設(shè)計方案的可行性。經(jīng)過軟件設(shè)計,上述設(shè)計要求只需較少的EPM7032系列芯片容量即可滿足要求。
芯片的延時主要根據(jù)輸入CPLD的各信號之間或與外部信號之間的時序配合來進行選擇,DSP器件在訪問外部IO空間時,數(shù)據(jù)存在的時間和地址、控制信號存在的時間之間存在明確的相對關(guān)系,經(jīng)過實際檢驗,我們發(fā)現(xiàn)延時時間控制在10ns之內(nèi)完全可以滿足時序配合要求。
根據(jù)上述分析和仿真,結(jié)合CPLD器件的輸入電壓、編程電壓等要求,我們選擇了EPM7064STC44-10的CPLD來實現(xiàn)上述功能。在選擇容量時我們考慮了充分的余量,使電路設(shè)計具有很大的靈活性。
根據(jù)CPLD的編程內(nèi)容我們將已經(jīng)編好的程序通過JTAG電纜下載到CPLD器件中,通過硬件仿真的方式得到了圖2和圖3。
① 為地址線信號;② 為數(shù)據(jù)線信號;③ 為is信號(均來自DSP芯片)
①為確發(fā)信號(上升沿鎖存);② 為對應(yīng)的數(shù)據(jù)信號
4 結(jié)論
CPLD的使用簡化了設(shè)計,各家產(chǎn)品在相同的封裝型式下,均具有不同的集成規(guī)模,這樣,在設(shè)計初期,只需要計算出輸入輸出的IO口數(shù)量就可以進行諸如PCB設(shè)計等工作,而具體的CPLD功能可以完全獨立出來,可以由熟練的硬件描述語言編程人員編程,易于分工合作;由于很多CPLD都具有ISP能力,可以使CPLD內(nèi)部邏輯的修改十分容易,非常便于硬件邏輯的調(diào)試。
使用CPLD節(jié)約了PCB的板上資源。如果采用相同的分立元件實現(xiàn)CPLD的功能,一個4非門芯片的體積就相當(dāng)于一個CPLD器件的體積,而CPLD可以實現(xiàn)上千個門電路的功能。PCB板的布線也比分立的門電路方便很多,只需要規(guī)劃好輸入輸出,輸入和輸出之間的邏輯功能幾乎可以在設(shè)計的任意時間進行具體設(shè)計。
因為VHDL語言、AHDL語言和Verilog HDL語言都是一種功能性硬件描述語言,在設(shè)計CPLD的程序時,對數(shù)字電路知識要求較少,采用這些硬件描述語言進行CPLD器件的功能設(shè)計可以使具有一般數(shù)字電路知識的技術(shù)人員就能夠設(shè)計出滿意的CPLD程序。
原創(chuàng)作者:浙江金鋒自動化儀表有限公司