雙口RAM芯片CY7C028的INS/GPS組合導(dǎo)航系統(tǒng)
在眾多組合導(dǎo)般系統(tǒng)中,INS/GPS組合導(dǎo)航系統(tǒng)更是發(fā)展迅速,在軍用和民用領(lǐng)域均已獲得廣泛應(yīng)用,而且愈來愈受到重視。就INS/GPS組合導(dǎo)航系統(tǒng)而言,除了要完成大量的導(dǎo)航解算工作外,還要完成控制、人機接口、與外部系統(tǒng)的通信等功能。由于導(dǎo)航系統(tǒng)對實時性要求較高,采用單片CPU來實現(xiàn)上述功能是不現(xiàn)實的。在研制某彈載INS/GPS組合導(dǎo)航系統(tǒng)時,針對彈載導(dǎo)航系統(tǒng)體積小、重量輕、功耗小的特點,設(shè)計了一種嵌入式高速處理系統(tǒng)。該系統(tǒng)采用TI公司的TMS320VC33和TMS320F240組成雙DSP系統(tǒng),即由兩個DSP構(gòu)成一個主從式系統(tǒng)完成相應(yīng)功能。主從式系統(tǒng)設(shè)計的關(guān)鍵是主機與從機之間的數(shù)據(jù)通信。主從機之間的數(shù)據(jù)通信主要有串行、并行、DMA及雙口RAM四種方式。綜合各種通信方式的優(yōu)缺點,考慮到導(dǎo)航系統(tǒng)實時性高、數(shù)據(jù)量大的特點,筆者以雙口RAM器件CY7C028作為共享存儲器,筆者以雙口RAM器件CY7C028作為共享存儲器,通過獨特的軟件分區(qū)處理設(shè)計有效地實現(xiàn)了導(dǎo)航系統(tǒng)中的主計算機與從微型計算機之間的通信。
本文引用地址:http://2s4d.com/article/157097.htm1 雙口RAM芯片CY7C028的內(nèi)部結(jié)構(gòu)及工作原理
CY7C028是CYPRESS公司研制的64K×16低功耗CMOS型靜態(tài)雙口RAM,最大訪問時間為12/15/20ns,可與大多數(shù)高速處理器配合使用,無需插入等待狀態(tài)。采用主從模式可以方便地將數(shù)據(jù)總線擴展成32位或更寬。其內(nèi)部功能框圖如圖1所示。
雙口RAM芯片CY7C028作為一種性能優(yōu)越的快速通信器件,大多CPU的高速數(shù)字系統(tǒng)中非常適用。其特點是:提供兩套完全獨立的數(shù)據(jù)線、地址線、讀寫控制線,允許兩個CPU對雙端口存儲器同時進(jìn)行操作;具有兩套完全的中斷邏輯,用于實現(xiàn)兩個CPU之間的握手信號;具有完全獨立的忙邏輯,可保護(hù)兩個CPU對同一地址單元進(jìn)行正確的讀寫操作。當(dāng)兩個CPU對雙口RAM存取時,存在以下四種情況。
(1)兩個CPU不同時對同一地址單元存取數(shù)據(jù)。
(2)兩個CPU同時對同一地址單元讀出數(shù)據(jù)。
(3)兩個CPU同時對同一地址單元寫入數(shù)據(jù)。
(4)兩個CPU同時對同一地址單元操作,一個寫入數(shù)據(jù),另一個讀出數(shù)據(jù)。
不難看出,在第一和第二種情況下,兩個端口的存取不會出現(xiàn)錯誤,而第三種情況會出現(xiàn)寫入錯誤,第四種情況會出現(xiàn)讀出錯誤。為了避免兩個CPU對同一地址單元進(jìn)行訪問時由于地址數(shù)據(jù)爭用而造成的數(shù)據(jù)讀寫錯誤,CY7C028主要提供了以下幾種工作方式,下面逐一介紹。
1.1 硬件判優(yōu)方式
雙口RAM CY7C028具有解決兩個處理器同時訪問同一地址單元的硬件仲裁邏輯。在雙口RAM的兩套控制線中,各有一個BUSY引腳。當(dāng)兩端的CPU不對雙口RAM的同一地址單元存取時,BUSYL=H、BUSYR=H,可正常存儲;當(dāng)兩端的CPU對雙口RAM同一地址單元存取時,哪個端口的存取請求信號出現(xiàn)后,則其對應(yīng)的BUSY=L,禁止其存取數(shù)據(jù);在無法判定兩個端口存取請求信號出現(xiàn)的先后順序時,控制線BUSYL、BUSYR只有一個為低電平。這樣,就能夠保證對應(yīng)于BUSY=H的端口能進(jìn)行正常存取,對應(yīng)于BUSY=L的端口不能存取,從而避免了兩個CPU同時競爭地址資源而引發(fā)錯誤的可能。
1.2 中斷判優(yōu)方式
中斷判優(yōu)方式又稱郵箱判優(yōu)方式。CY7C028具有兩套中斷邏輯,通過兩個INT引腳分別接收到兩個CPU的中斷引腳上,以實現(xiàn)CPU的握手。在雙口RAM的數(shù)據(jù)傳送中,兩端的CPU都把雙口RAM作為自己存儲器的一部分。當(dāng)兩個CPU需要數(shù)據(jù)傳送時,假設(shè)左端CPUL向右端CPUR傳送,首先CPUL將需要傳送的數(shù)據(jù)存放到雙口RAM某段約定的地址單元中,然后向雙口RAM的最高奇地址單元0xFFFF即右端口的郵箱進(jìn)行寫操作,用以向CPUR發(fā)出一個中斷,這樣CPUR就進(jìn)入其相應(yīng)的中斷服務(wù)子程序,將約定地址單元的數(shù)據(jù)讀出,然后對雙口RAM右端口的郵箱進(jìn)行寫操作,用以清除該中斷。
1.3 令牌判優(yōu)方式
令牌判優(yōu)方式是一種快速數(shù)據(jù)交換方式。在此方式中有信令鎖存邏輯,CY7C028內(nèi)部提供了八個相互獨立的鎖存邏輯單元,最多可將RAM空間分成八個區(qū)段。這些鎖存邏輯單元獨立于雙口RAM存儲區(qū),并不能控制RAM區(qū)、封鎖兩端CPU的讀/寫操作,而是被作為命令,只提供指示邏輯,由兩端CPU按約定的規(guī)則,輪流地占用它們劃定的RAM區(qū),各區(qū)的大小及地址由軟件自由設(shè)定,且左右端操作完全一樣,只要不超過令牌的限制次數(shù)即可。當(dāng)左右端同時申請同一令牌時,令牌邏輯裁定誰先占用,從而保證只有一個端口獲取令牌。而在占用令牌期間,CPU可以按最高速無等待存取數(shù)據(jù),這對實現(xiàn)高速、多CPU數(shù)據(jù)采集與處理系統(tǒng)無疑是非常有利的。但是,為了避免令牌方式爭用出錯,應(yīng)盡可能使兩端CPU分時占用同一RAM區(qū)。
2 雙口RAM在組合導(dǎo)航系統(tǒng)中的應(yīng)用
2.1 系統(tǒng)總體設(shè)計
導(dǎo)航系統(tǒng)的主要任務(wù)是測量飛行載體的即時位置速度、航向等導(dǎo)航參數(shù),具有實時性高、運算量大等待點。因此在導(dǎo)航系統(tǒng)中,計算機設(shè)計是系統(tǒng)設(shè)計的關(guān)鍵之一。在INS/GPS組合導(dǎo)航系統(tǒng)中,導(dǎo)航計算機的任務(wù)主要有三類:
(1)數(shù)據(jù)采集,包括采集慣性測量單元元件輸出信號,接收外部系統(tǒng)校正信息,如GPS輸出信息、初始位置信息等。
(2)數(shù)據(jù)處理與運算,包括慣性測量元件的誤差補償、初始對準(zhǔn)、導(dǎo)航參數(shù)解算、組合導(dǎo)航算法實現(xiàn)等。
(3)輸出導(dǎo)航數(shù)據(jù)及系統(tǒng)狀態(tài)量,包括輸出導(dǎo)航參數(shù)以及與其它設(shè)備交換信息等。
所有這些任務(wù),如果都由一個CPU來完成,那么CPU在進(jìn)行運算的同時,還要兼顧系統(tǒng)控制和數(shù)據(jù)輸入輸出,并響應(yīng)頻繁的中斷,必然降低系統(tǒng)運行效率。所以,為了兼顧系統(tǒng)運行效率,減輕導(dǎo)航計算機負(fù)擔(dān),設(shè)計一種以TMS320VC33為主機和以TMS320F240為接口機的雙DSP主從式系統(tǒng)。系統(tǒng)總體結(jié)構(gòu)如圖2所示。
主機TMS320VC33主要用來定時采樣陀螺、加速度計的數(shù)據(jù),并完成姿態(tài)陣計算、組合系統(tǒng)卡爾曼濾波器計算等導(dǎo)航解算。接口機TMS320F240主要完成系統(tǒng)相關(guān)狀態(tài)的檢測/控制,與GPS接收機、彈載計算機及其它外設(shè)的通信等任務(wù)。主機和接口機之間的通信利用雙口RAM CY7C028實現(xiàn)。量化器模塊主要是將加速度計輸出的電流信號轉(zhuǎn)換成主機可直接讀取的數(shù)字量。此外,由于TMS320VC33和TMS320F240的串口資源有限,無法滿足系統(tǒng)需要,系統(tǒng)中采用EXAR公司的ST16C554進(jìn)行相應(yīng)的串口擴展。
評論