PSD813器件在單片機(jī)系統(tǒng)中應(yīng)用
隨著單片機(jī)系統(tǒng)的廣泛應(yīng)用,其功能不斷加強,集成度日益增高。但是,由于在傳統(tǒng)的單片機(jī)系統(tǒng)設(shè)計中必須使用許多分立器件組成單片機(jī)的外圍電路,諸如地址鎖存器、PLD、RAM、EPROM等,因此使得整個系統(tǒng)變得十分復(fù)雜、可靠性降低、功耗費用增高。由于各個系統(tǒng)的要求不盡一致,這樣在開發(fā)每一個單片機(jī)系統(tǒng)時都必須重復(fù)設(shè)計以上外圍分立器件電路,延長了開發(fā)時間,工作效率隨之大幅度下降,并且還浪費了大量的人力、物力。隨著科學(xué)技術(shù),尤其是大規(guī)模集成電路技術(shù)的飛速發(fā)展,單片機(jī)外圍集成芯片也隨之產(chǎn)生、發(fā)展。WSI公司的可編程單片機(jī)通用外圍接口芯片(PSD)可將單片機(jī)所需的多個外圍器件集成在一個芯片中,并能與單片機(jī)實現(xiàn)所謂無縫連接(noglue),大大簡化了設(shè)計、節(jié)省了資源,并且顯著地提高了系統(tǒng)的可靠性。由于PSD系列產(chǎn)品迎合了單片機(jī)應(yīng)用系統(tǒng)開發(fā)的要求,其先進(jìn)的設(shè)計思想給廣大的單片機(jī)開發(fā)者帶來了諸多好處,因此用PSD或其他類似器件取代單片機(jī)外圍分立器件已經(jīng)成為單片機(jī)開發(fā)的一大趨勢。
1 PSD813系列產(chǎn)品特點
作為PSD系列中的最新成員,PSD813系列器件秉承了以往幾代PSD產(chǎn)品的優(yōu)良特性,同時又采用了新技術(shù)、新工藝,完善了以往PSD器件的一些不足之處。PSD813的閃速存儲器和可編程邏輯具有在線可編程特性,這對于實現(xiàn)簡單、靈活的嵌入式設(shè)計方案具有很大的幫助。PSD813器件還集成了優(yōu)化的“微控制器宏單元”邏輯結(jié)構(gòu),它允許系統(tǒng)地址/數(shù)據(jù)總線與PSD內(nèi)部寄存器直接相連,簡化了MCU和其外部器件之間的通信。除此以外,PSD813還具有以下關(guān)鍵特性:
(1)1M位的內(nèi)部大容量FLASH ROM,256K位的E2PROM(813F1)或FLASH OTPROM(813F2),16K位SRAM,其中FLASHROM可配置為128K×8或64K×8,并分為8個大小相同的塊,可由用戶規(guī)定的地址訪問,訪問時間包括地址鎖存和PLD譯碼。SRAM可配置為2K×8或1K×16。
(2)閃速(FLASH)或E2PROM/OTP ROM閃速存儲器的同時編程。在執(zhí)行來自一個存儲器的代碼的同時可對另一個編程,EEPROM/閃速引導(dǎo)存儲器被分為四個大小相等的塊,可由用戶規(guī)定的地址訪問。
(3)帶有基于閃速的16個輸出宏單元和24個輸入宏單元。因此PSD813可有效地實現(xiàn)多種邏輯功能,包括用于內(nèi)部和外部控制的狀態(tài)機(jī)和地址譯碼器。這些邏輯功能要求微控制器軟件和硬件交互作用。內(nèi)置PLD提供三種專用的外部芯片選擇輸出,從而允許多達(dá)19個外部芯片選擇。
(4)27個可重建的I/O端口可用作MCU I/O、PLD I/O、鎖存MCU地址輸出或特殊I/O口以提供最多19個外部片選信號,并且其中16個I/O口可配置為漏極輸出。
(5)可編程的電源管理支持兩種單獨的低功耗工作方式,加之零功耗CMOS技術(shù)可允許用低至10mA(在5V Vcc時)的電流工作。器件可自動檢測微控制器活動的停止并使PSD置入低功耗狀態(tài)。
(6)內(nèi)置的JTAG串口使得能在工廠或現(xiàn)場進(jìn)行器件的在系統(tǒng)編程調(diào)試。
由于PSD813具有以上特性,故可以很方便地進(jìn)行I/O重建、擴(kuò)展微控制器地址空間等以往較為復(fù)雜的工作,并可通過編程進(jìn)行靈活的設(shè)計,以實現(xiàn)與不同類型的微控制器的兼容,使得單片機(jī)開發(fā)尤其是外圍電路設(shè)計變得簡便。
2 PSD813與單片機(jī)的連接
本文應(yīng)用實例是基于一臺全數(shù)字化心電圖機(jī)系統(tǒng),如圖1所示。由于該系統(tǒng)的工作要求,采用了雙CPU結(jié)構(gòu)(DSP-80C552),外帶160× 128LCD顯示、串行熱敏打印機(jī)、4×4鍵盤等外設(shè),系統(tǒng)總線設(shè)計為8位。由于系統(tǒng)要求存儲大量的心電數(shù)據(jù),故采用了512K的大容量SRAM。其中DSP(TI公司的TMS320F206)主要用于心電波形的濾波計算、分析及控制打印部分。80C552用作主程序及人機(jī)界面的控制以及A/D采集,由于51單片機(jī)外設(shè)較多,為了節(jié)省成本、降低功耗,采用了PSD813作為外部程序存儲器以及地址譯碼器,并用于端口擴(kuò)展。實際使用表明該系統(tǒng)工作正常。
3 PSDsoft軟件應(yīng)用
PSD813是在硬件基礎(chǔ)上,采用專用的開發(fā)軟件PSDsoft進(jìn)行系統(tǒng)開發(fā)的。PSDsoft是一套在Windows環(huán)境下運行的軟件工具,運用可視化技術(shù)進(jìn)行編程,具有方便的人機(jī)交互功能。并且由于該軟件集成度較高,各步操作在同一界面下進(jìn)行,因此使用十分方便。
由圖2所示流程圖,我們可以看到在PSDsoft軟件環(huán)境下,PSD813器件的開發(fā),從Abel文件的編寫、硬件特性的配置,直至目標(biāo)文件的寫入,都可以很方便地完成。另外,PSDsoft軟件還提供PSD器件的實時仿真,并可實現(xiàn)目標(biāo)文件的C語言反匯編。
由于篇幅有限,現(xiàn)僅寫出Abel文件以作參考:module c51_813
title 'WSI PSD813F1 design template for 80C51 fam-
ily microcontroller';
″PIN DECLARATIONS
bhe pin 49;″pin 49,byte high enable or CNTL2
wr pin 47; ″pin 47,write line or CNTL0
rd pin 50; ″pin 50,read line or CNTL1
reset pin 48; ″reset Input,active low
a15,a14,a13,a12,a11,a10,a9,a8,pin 39,40,41,42,43,44,45,46; ″Address bus
a7,a6,a5,a4,a3,a2,a1,a0,pin 30,31,32,33,34,35,36,37, ″Addressbus
″********Port A,B,C,D pin declaration*************
addr_out0..addr_out7 pin; ″address out, Port A pins
″Address output
WSIPSD PROPERTY ′Address_Out Aout[7:0]:addr_out
[7:0] PortA′;
addr_out8..addr_out15 pin; ″address out,Port B pins
″Address output
WSIPSD PROPERTY ′Address Out Aout 《15:8]:addr
out[15:8] PortB′
a16,a17,a18 pin 18,17,14; ″pc[2:4],a[16:18]
″Extend Address output
LCD_ce pin 11; ″pc7, the signal ce of LCD
SRAM_ce pin 9, ″pd1, the ce of 512K SRAM
ale pin 10; ″pin 10 address latch enable or PD0
csi pin 8; ″pin 8,/csi or pd2
fs7,fs6,fs5,fs4,fs3,fs2,fs1,fs0 node; ″Main Flash
segment chip selects
rs0 node;″PSD SRAM chip select
csiop node;″PSD control and I/O register
jtagsel node; ″Selects JTAG port active using a prod uct term
X = .x.; ″Don′t care symbol
address = [a18..a0]; ″De-muxed microcontroller
address signals
EQUATIONS
jtagsel = 0;
fs0 = (address >=^h2000 & address <=^h2FFF);
″Address of ROM
fs1 = (address >=^h3000)&(address <=^h3FFF);
fs2 = (address >=^h4000)&(address <=^h4FFF);
fs3 = (address >=^h5000)&(address <=^h5FFF);
fs4 = (address >=^h6000 )& (address <=^h6FFF);
rs0 = (address >=^h7000?。?(address <=^h77FF);
LCD_ce = (address >=^h7800) &(address <=^h7FFF);
csiop = (address >=^h8000) & (address <=^h80FF);
SRAM_ce=!(?。幔保叮Γ。幔保罚Γ。幔保福#ǎǎ幔洌洌颍澹螅?>=^h8100 & (address <=^hFFFF)); ″Address
of RAM
end c51_813
由于PSD813具有很高的集成度和很強的在線編程功能,所以其應(yīng)用對提高單片機(jī)的開發(fā)速度、系統(tǒng)穩(wěn)定性及靈活性都比傳統(tǒng)的設(shè)計方式有了很大的提高,這應(yīng)該成為單片機(jī)應(yīng)用系統(tǒng)的一個發(fā)展方向。
但PSD813內(nèi)部數(shù)據(jù)總線為8位,所以雖然PSD813與8位MCU可以很方便地直接相連,但與16位單片機(jī)相連時,必須用兩片PSD813以構(gòu)成16位的多路復(fù)用和非多路復(fù)用總線結(jié)構(gòu)接口。并且由于16位單片機(jī)與外部存儲器的連接規(guī)則,所以當(dāng)兩片PSD813與16位單片機(jī)相連時,其地址線連接必須循環(huán)移位一次,以保證CPU在工作時同時正確接收兩片PSD813 ROM中的高位和低位指令字節(jié)。
評論