80C196KC-ADMC401雙CPU接口電路設(shè)計(jì)及其應(yīng)用
掃描二維碼
隨時(shí)隨地手機(jī)看文章
在SVG(靜止無功發(fā)生器)裝置中涉及到大量的復(fù)雜計(jì)算(如濾波計(jì)算、瞬時(shí)無功計(jì)算)和先進(jìn)的控制手段(如矢量控制)以及諸多信號(hào)的采集和發(fā)送,使得單個(gè)CPU很難滿足系統(tǒng)要求。因此采用高集成度的嵌入式處理器與DSP芯片組成雙CPU系統(tǒng)來實(shí)現(xiàn)對(duì)整個(gè)系統(tǒng)的控制。
1 系統(tǒng)設(shè)計(jì)
1.1 系統(tǒng)的組成及原理
雙CPU系統(tǒng)的原理圖框圖如圖1所示。系統(tǒng)采用80C196KC和ADMC401兩個(gè)芯片作為核心處理器。ADI公司的ADMC401芯片是基于DSP的控制器,非常適于工業(yè)應(yīng)用領(lǐng)域中的高性能控制。該芯片集成了一個(gè)高速的DSP內(nèi)核,且其內(nèi)核具有一套完備的外圍控制接口,以便在高度集成的環(huán)境中快速實(shí)現(xiàn)控制。Intel公司的80C196(KB/KC)是一款高性能且價(jià)格低廉的16位,同樣適用于高速控制和需要多個(gè)外設(shè)的場(chǎng)合。兩個(gè)CPU在運(yùn)行時(shí)獨(dú)立執(zhí)行存放在不同器件中的程序,同時(shí)保持相互之間的協(xié)調(diào)工作??紤]到系統(tǒng)本身的復(fù)雜性,如果使用傳統(tǒng)的RAM、ROM和邏輯譯碼器件分離的系統(tǒng)接線方式,必定會(huì)使得整個(gè)過于龐雜,給調(diào)試帶來很大困難,同時(shí)也降低了系統(tǒng)的穩(wěn)定性。因此,該系統(tǒng)用到了可編程系統(tǒng)外圍接口器件PSD產(chǎn)品中的PSD4235和PSD311。它們分別作為兩個(gè)CPU的外部擴(kuò)展器件,并和CPU組成一個(gè)雙CPU-PSD系統(tǒng)(簡稱雙CPU系統(tǒng)),如圖1所示。兩個(gè)CPU間的相互通信采用了雙口RAM(IDT7132),通過它可以順利實(shí)現(xiàn)兩個(gè)CPU之間的數(shù)據(jù)傳輸。鍵盤管理部分用82C79接口芯片。輸出顯示部分用以SED1520為驅(qū)動(dòng)芯片的MGLS-12032A液晶模塊(LCD)。系統(tǒng)中專門增加了額外的串行E2PROM,主要用于掉電時(shí)數(shù)據(jù)的保護(hù)以及記錄部分操作參數(shù)。此外,組成系統(tǒng)的還有WATCHDOG電路、UART電路等。它們?cè)谙到y(tǒng)中的資源分配、功能實(shí)現(xiàn)都是通過對(duì)控制器的軟件編程來完成。下面將詳細(xì)介紹各部分的設(shè)計(jì)以及相應(yīng)的工作原理。
1.2 80C196KC部分設(shè)計(jì)
16位的80C196KC芯片是Intel公司MCS-96系列中重要的新成員,也是目前該系列中性能最強(qiáng)的產(chǎn)品之一,在各類系統(tǒng)、數(shù)據(jù)采集系統(tǒng)和高級(jí)智能儀器中都有廣泛的應(yīng)用。80C196KC芯片的特點(diǎn)如下:振蕩信號(hào)頻率達(dá)16MHz,指令的運(yùn)算速度更快,16位乘法1.75μs,32位除法3.0μs;8?jìng)€(gè)A/D通道,可以方便地實(shí)現(xiàn)被控對(duì)象多點(diǎn)電壓和電流采樣;通過CPU的串行口可實(shí)現(xiàn)與上位PC機(jī)之間的通信;新增100H~1FFH內(nèi)部RAM,在垂直窗下具有更靈活的運(yùn)用;具有三路脈寬調(diào)制(PWM)輸出;在80C196KB的基礎(chǔ)上又增加了5條(KB已經(jīng)增加了6條),使程序編制更加方便;16位多路復(fù)用地址數(shù)據(jù)/地址線可以與PSD直接接口,同時(shí)通過鎖存器后,可將地址和數(shù)據(jù)分別接至雙口RAM,實(shí)現(xiàn)多個(gè)CPU之間的數(shù)據(jù)傳輸?shù)?。詳?xì)的性能參數(shù)和特點(diǎn)請(qǐng)參見文獻(xiàn)[1~2]。在雙CPU系統(tǒng)中,80C196主要完成的功能有鍵盤控制、顯示輸出、數(shù)據(jù)保存、信號(hào)傳送等。由于涉及的內(nèi)容復(fù)雜,而且還需要與很多外圍接口,所以用到了大容量、多端口的PSD4000系列芯片與它配合,圖2所示即為80C196KC部分的。
雖然CPU的數(shù)據(jù)與地址線可以直接與PSD連接,但是在雙口RAM時(shí),數(shù)據(jù)與地址信號(hào)必須分離。所需用到的鎖存器在圖2中省略了。PSD4235芯片是WSI公司2000年最新推出PSD4000系列產(chǎn)品,它能夠適應(yīng)多種不同的微處理器。其片內(nèi)集成了4M位的閃速存儲(chǔ)器,16個(gè)輸出微單元、24個(gè)輸入微單元的CPLD、譯碼PLD,52個(gè)單獨(dú)可配置I/O端口,JTAG串行接口等,并且有支持掉電模式的低功耗管理單元。PSD芯片對(duì)外地址分配和各接口的邏輯譯碼由專用的軟件PSDSOFTTMLITE實(shí)現(xiàn),具體情況請(qǐng)參考文獻(xiàn)[5~6]或登陸www.waferscale.com站點(diǎn)查詢。使用PSD后極大地簡化了硬件電路的設(shè)計(jì),減少了印制電路板的面積,提高了系統(tǒng)的穩(wěn)定性。顯示部分通過單片機(jī)控制圖形液晶模塊MGLS-12032實(shí)現(xiàn)。該模塊有直接訪問方式和間接訪問方式兩種。本系統(tǒng)以間接訪問方式為基礎(chǔ)。圖2所示即為間接訪問方式的電路。顯示模塊的時(shí)序通過對(duì)80C196編程實(shí)現(xiàn)。液晶模塊MGLS-12032A是兩片SED1520級(jí)聯(lián)在一起,一片處于主工作方式,一片處于從工作方式,它們分別控制幕的左、右半屏。在編程時(shí)要特別注意漢字和字符顯示時(shí)在邊界區(qū)域兩片SED1520間的切換。模塊詳細(xì)的內(nèi)部結(jié)構(gòu)和具體的編程實(shí)現(xiàn)方法可查閱文獻(xiàn)[7]。
系統(tǒng)中外部擴(kuò)展了串行的E2PROM電路,用來存放系統(tǒng)的一些固定參數(shù)等,使用的芯片是Atmel公司的AT24C02。它只需通過80C196KC的高速輸入、輸出通道(HIS和HSO)產(chǎn)生連續(xù)的高低電平序列,便可實(shí)現(xiàn)與CPU之間的數(shù)據(jù)傳輸。從硬件的角度來看,該芯片不占用任何數(shù)據(jù)總線,連接簡單且節(jié)約大量系統(tǒng)資源。
1.3 ADMC401部分設(shè)計(jì)
ADMC401芯片是一個(gè)基于單片DSP的控制器,適合工業(yè)應(yīng)用領(lǐng)域中高性能控制。該芯片集成了一個(gè)26MIPS(13MHz晶振)定點(diǎn)內(nèi)核ADSP-2171,單條指令執(zhí)行時(shí)間為38.5ns,其編碼與ADSP-21xxDSP 系列完全兼容。內(nèi)核具有一套完備的外圍控制接口,以便在高度集成環(huán)境中快速實(shí)現(xiàn)對(duì)元器件的控制;它還包含三個(gè)計(jì)算單元、兩個(gè)數(shù)據(jù)地址發(fā)生器和一個(gè)程序定序器。其中計(jì)算單元包含一個(gè)算術(shù)邏輯單元ALU、一個(gè)乘法/累加器(MAC)和一個(gè)桶式移位器。內(nèi)核還增加了位操作、平方、四舍五入和全局中斷屏蔽等指令。除此之外,ADMC401芯片包括兩個(gè)靈活的雙緩沖器、雙向的同步串行口。圖3為ADMC401的功能框圖。ADMC401芯片提供2K×24位的內(nèi)部程序存儲(chǔ)器RAM、2K×24位的內(nèi)部程序存儲(chǔ)器ROM、1K×16位的內(nèi)部數(shù)據(jù)存儲(chǔ)器RAM、1個(gè)高性能8通道12位模數(shù)轉(zhuǎn)換ADC系統(tǒng)(它能經(jīng)過4對(duì)輸入實(shí)現(xiàn)雙通道同時(shí)采樣)、1個(gè)三相16位中心對(duì)稱的PWM發(fā)生器(能以最小開銷產(chǎn)生高精度的PWM信號(hào))、1個(gè)靈活的增量接口單元、2個(gè)可調(diào)頻的輔助PWM輸出、12條I/O數(shù)字信號(hào)線、1個(gè)雙通道事件捕獲系統(tǒng)、1個(gè)16位看門狗器、2個(gè)16位內(nèi)部器等。
PSD3XX芯片內(nèi)部同樣提供了許多應(yīng)用系統(tǒng)需要的全部元件和外圍。對(duì)于8051、80196和68HC11等微控制器來說與PSD相配合是極為有用的。ADMC401與它結(jié)合同樣非常有效。考慮到ADMC401內(nèi)部程序的長度以及接口并不象80196控制器那么多(80196需要完成人機(jī)界面實(shí)現(xiàn)、信號(hào)傳送、外圍器件接口等),所以采用PSD311(現(xiàn)有價(jià)格最低的3系列產(chǎn)品)。ADMC401芯片的引導(dǎo)程序裝載可以通過兩個(gè)引腳MMAP和BMODE的各種不同狀態(tài)產(chǎn)生。如果引腳MMAP和BMODE電位都為0,那么ADMC401芯片工作在所謂的EPROM引導(dǎo)程序模式,其中被稱為引導(dǎo)存儲(chǔ)器的專用外部存儲(chǔ)空間將允許芯片和字節(jié)寬度的EPROM相連,并在上電時(shí)通過存儲(chǔ)器接口從外部裝載程序;如果引腳MMAP和BMODE設(shè)置為其它電位將會(huì)產(chǎn)生不同的引導(dǎo)模式;另外,401芯片有一個(gè)專門的低電平有效信號(hào)--引導(dǎo)存儲(chǔ)器選擇BMS(Boot Memory Select)簡化了引導(dǎo)存儲(chǔ)器的接口。以上這些功能極大地方便了ADMC401與PSD接口。
圖4為ADMC401與PSD311的接口(圖中還包括了一些其它外圍)。ADMC401與PSD311的連接幾乎和它與標(biāo)準(zhǔn)的EPROM連接一樣簡單。由于總線的通路布在ADMC401內(nèi)部,PSD311的8根數(shù)據(jù)線并不與ADMC401的D7~D0相連,而是與D15~D8C相連。還要注意,地址的最高位由ADMC401的D22線提供(在ADMC401中沒有A14地址線)。BMS信號(hào)充當(dāng)EPROM的片選并與PSD311的A19輸入相連接。A19在PSD的程序里將被定義為芯片使能信號(hào)。ADMC401生成低有效讀和寫選通脈沖,它們與PSD311的RD和WR輸入相連。這些選通脈沖在傳輸中用來選通PSD311的EPROM和RAM。ADMC401有2K×24位的內(nèi)部程序存儲(chǔ)空間。在采用EPROM引導(dǎo)程序模式時(shí)(MMAP=0,BMODE=0),外部程序通過ADMC401內(nèi)部的定序器按照24位命令格式一次性全部下載到其內(nèi)部程序存儲(chǔ)空間。當(dāng)然應(yīng)用程序可能大于ADMC401內(nèi)部程序存儲(chǔ)空間,不過程序如果執(zhí)行到后面的代碼,ADMC401會(huì)自動(dòng)重新引導(dǎo)。引導(dǎo)程序存儲(chǔ)器由八頁組成,每頁8K字節(jié)長。
一頁中除了第一個(gè)字節(jié)外每隔三個(gè)字節(jié)是一個(gè)空字節(jié),第一個(gè)字節(jié)是該頁的長度,在兩個(gè)相鄰空字節(jié)中每組三個(gè)字節(jié)包含一個(gè)要裝入DSP 內(nèi)部程序存儲(chǔ)器的24位指令。也就是說2K×24位的內(nèi)部程序存儲(chǔ)空間需要8K×8位的外部存儲(chǔ)空間。在ADMC401的開發(fā)工具中有一個(gè)程序存儲(chǔ)器PROM實(shí)用程?quot;SPL21.exe。它為用戶程序計(jì)算正確的頁長度,并且根據(jù)適當(dāng)?shù)膮f(xié)議為用戶程序的字節(jié)排序,極大地方便了程序代碼的生成。這些生成的代碼可以直接寫入PSD311。
2 80C196KC-ADMC401兩片系統(tǒng)在SVG裝置中的應(yīng)用
SVG(Static Var Generator)--靜止無功發(fā)生器也被稱為STATCOM(Static Synchronous Compensator),是靈活交流輸電系統(tǒng)FACTS(Flexible AC Transmission System)技術(shù)中一個(gè)重要的基礎(chǔ)部件。雖然SVG裝置的成本要高一些,但其靈活的動(dòng)態(tài)調(diào)節(jié)特性、優(yōu)越的補(bǔ)償效果以及更小的設(shè)備體積都是無功補(bǔ)償裝置不能比擬的。很多文獻(xiàn)資料對(duì)SVG裝置的原理和研制都有介紹。圖5為兩片系統(tǒng)的SVG裝置結(jié)構(gòu)圖。
系統(tǒng)共分為三個(gè)主要部分。第一部分是由80C196KC-ADMC401兩片系統(tǒng)構(gòu)成的檢測(cè)控制部分。80196主要負(fù)責(zé)人機(jī)界面的完成以及向上位機(jī)發(fā)送信號(hào)等功能。ADMC401的高速流水線式的8路A/D采樣端口也為電壓電流的快速采集提供了保證,同時(shí)ADMC401還要完成數(shù)字濾波計(jì)算、無功計(jì)算、PWM控制信號(hào)的產(chǎn)生發(fā)送等功能。第二部分是由IGBT模塊構(gòu)成的逆變電路。SVG裝置的關(guān)鍵部件就是它的逆變橋路部分,而ADMC401集成的專用6路PWM波發(fā)生器正好提供了靈活的控制方法。此外,逆變電路部分采用富士電機(jī)最新推出的R系列IGBT-IPM模塊7MBP100RA-120。
它將過去的IGBT單元、驅(qū)動(dòng)電路、等結(jié)合在一個(gè)模塊中,極大地提高了實(shí)際應(yīng)用系統(tǒng)的穩(wěn)定性,簡化了設(shè)計(jì)的難度,縮小了裝置的體積。第三部分是由電力構(gòu)成的全波整流電路。整流電路采用日本富士公司的三相全波整流模塊6RI100G-160。主要將三相線路上的交流電壓變?yōu)橹绷鬏敵?,從而維持直流電容兩端電壓的穩(wěn)定,為逆變電路提供一個(gè)直流電。這樣避免了要輕微改變的觸發(fā)工作角來達(dá)到提高和穩(wěn)定電容上電壓的情況。電流的檢測(cè)是利用KT100-P型電流完成,電壓的檢測(cè)是利用CHV-50P電壓完成。輸出顯示部分是用以SED1520為驅(qū)動(dòng)芯片的MGLS-12032A液晶模塊。以上各部件功能都是通過對(duì)ADMC401數(shù)字信號(hào)處理芯片和80C196KC軟件編程實(shí)現(xiàn)。 80C196KC和ADMC401組成的兩片系統(tǒng),應(yīng)用范圍相當(dāng)廣泛,非常適合計(jì)算量大、多外設(shè)、高速度的場(chǎng)合。