
產(chǎn)生選通信號,通過
TS 101的編程實現(xiàn),訪問RAM的有效地址由用戶定義。 3PC104與CPLD的連接關(guān)系
通過CPLD,PC104要實現(xiàn)對雙端口RAM的訪問,首先要考慮的是分配給RAM的存儲地址,因為64 k×16 b的RAM需要64 k的偶地址空間,或者說128 k的連續(xù)地址空間,工控機(jī)1 M以內(nèi)可由用戶使用的自由地址空間往往達(dá)不到128 k。所以應(yīng)將RAM安排在1 M地址空間以外訪問。此時除了用到用于1 M尋址的地址線SA19~SA0,還要采用1 M外尋址的地址線LA23~LA17。需要注意的是,PC104的總線上的SA19~SA17與LA19~LA17是重復(fù)的。區(qū)別在于SA10~SA0是通過總線地址鎖存使能信號BALE鎖存輸出,而LA19~LA17未經(jīng)鎖存,為保證在對RAM訪問期內(nèi)地址信號一直有效,至少應(yīng)在CPLD內(nèi)將LA23~LA20進(jìn)行BALE鎖存。本文中將RAM的地址安排在1 M地址空間外從100000 H開始的64 K偶地址。所有需要用到的PC104信號線都連接到CPLD,CPLD將SA16~SA1緩沖連接到RAM,其余地址線譯碼產(chǎn)生RAM左端口選通信號。PC104與CPLD連接的訪問邏輯如圖2所示。

其中
有效表示數(shù)據(jù)總線的高8位有效,SA0有效表示數(shù)據(jù)總線的低8位有效,作為譯碼信號的一部分,對于單片16位數(shù)據(jù)線的集成電路,實際上也可以不連接,用SA0和高端地址線譯碼產(chǎn)生選片信號。AEN信號有效表示計算機(jī)在和某個設(shè)備進(jìn)行DMA傳送,其他的設(shè)備發(fā)現(xiàn)AEN信號有效,就不要響應(yīng)尋址信號。因此在CPLD內(nèi)部邏輯里設(shè)置當(dāng)AEN信號有效時,將進(jìn)入CPLD的地址信號線置為高阻態(tài)。
是存儲器讀寫信號,是用于1 M以外地址空間的讀寫信號,當(dāng)這兩個信號之一有效且尋址到1 M內(nèi)的地址,將分別使1 M以內(nèi)地址的讀寫

一起控制總線周期的長短。有3種存儲器訪問周期:標(biāo)準(zhǔn)周期,就緒周期,無等待狀態(tài)周期。訪問時序如圖3所示。
在設(shè)計的時候考慮到信號在CPLD里的延時,如果標(biāo)準(zhǔn)周期對于訪問的時間長度不夠,可以采 用有1個等待狀態(tài)的就緒周期,而這只需要修改CPLD的設(shè)計并重新下載到CPLD即可,由此可 見用CPLD作為控制芯片的優(yōu)點。
4結(jié)語
TS101的編程工具可以用Visual DSP++,用匯編語言或者C/C++語言編寫。PC10 4總線操作也可以用C/C++語言或者匯編語言編寫。CPLD的內(nèi)部邏輯可以用Maxplus Ⅱ或者QuartusⅡ設(shè)計。硬件方面,為了減少延時,將CPLD雙端口RAM和DSP集中到一塊多 層印制電路板上,然后通過連接器連接到PC104。
本文說明的這種PC104總線與DSP的數(shù)據(jù)通訊接口設(shè)計,也可以作為采用其他計算機(jī)總線與DS P進(jìn)行16位數(shù)據(jù)通訊接口設(shè)計的參考。