雙口RAM在組合導航系統中的應用
發布時間:2008/5/26 0:00:00 訪問次數:698
    
    
     摘要:介紹了雙口ram器件cy7c028的內部結構及工作原理,詳細討論了cy7c028在ins/gps組合導航系統中的具體應用,給出了cy70c28與tms320f240和tms320vc33之間的接口電路,并對cy7c028的分區處理進行了獨特的軟件設計,提高了實時性。 關鍵詞:雙口ram tms320vc33 tms320f240 組合導航系統 cy7c028 導航系統是負責將載體從起始點引導到目的地的系統裝置。近年來,隨著微型計算機技術和衛星通信技術的發展和實際應用,使得導航系統的精確性和可靠性達到了更高的要求,促使導航系統向綜合化和容錯化方法發展,進而發展了以慣性導航為主體的各種組合導航系統。在眾多組合導般系統中,ins/gps組合導航系統更是發展迅速,在軍用和民用領域均已獲得廣泛應用,而且愈來愈受到重視。就ins/gps組合導航系統而言,除了要完成大量的導航解算工作外,還要完成控制、人機接口、與外部系統的通信等功能。由于導航系統對實時性要求較高,采用單片cpu來實現上述功能是不現實的。在研制某彈載ins/gps組合導航系統時,針對彈載導航系統體積小、重量輕、功耗小的特點,設計了一種嵌入式高速處理系統。該系統采用ti公司的tms320vc33和tms320f240組成雙dsp系統,即由兩個dsp構成一個主從式系統完成相應功能。主從式系統設計的關鍵是主機與從機之間的數據通信。主從機之間的數據通信主要有串行、并行、dma及雙口ram四種方式。綜合各種通信方式的優缺點,考慮到導航系統實時性高、數據量大的特點,筆者以雙口ram器件cy7c028作為共享存儲器,筆者以雙口ram器件cy7c028作為共享存儲器,通過獨特的軟件分區處理設計有效地實現了導航系統中的主計算機與從微型計算機之間的通信。 1 雙口ram芯片cy7c028的內部結構及工作原理 cy7c028是cypress公司研制的64k×16低功耗cmos型靜態雙口ram,最大訪問時間為12/15/20ns,可與大多數高速處理器配合使用,無需插入等待狀態。采用主從模式可以方便地將數據總線擴展成32位或更寬。其內部功能框圖如圖1所示。 雙口ram芯片cy7c028作為一種性能優越的快速通信器件,大多cpu的高速數字系統中非常適用。其特點是:提供兩套完全獨立的數據線、地址線、讀寫控制線,允許兩個cpu對雙端口存儲器同時進行操作;具有兩套完全的中斷邏輯,用于實現兩個cpu之間的握手信號;具有完全獨立的忙邏輯,可保護兩個cpu對同一地址單元進行正確的讀寫操作。當兩個cpu對雙口ram存取時,存在以下四種情況。(1)兩個cpu不同時對同一地址單元存取數據。(2)兩個cpu同時對同一地址單元讀出數據。(3)兩個cpu同時對同一地址單元寫入數據。(4)兩個cpu同時對同一地址單元操作,一個寫入數據,另一個讀出數據。 不難看出,在第一和第二種情況下,兩個端口的存取不會出現錯誤,而第三種情況會出現寫入錯誤,第四種情況會出現讀出錯誤。為了避免兩個cpu對同一地址單元進行訪問時由于地址數據爭用而造成的數據讀寫錯誤,cy7c028主要提供了以下幾種工作方式,下面逐一介紹。
    
     1.1 硬件判優方式 雙口ram cy7c028具有解決兩個處理器同時訪問同一地址單元的硬件仲裁邏輯。在雙口ram的兩套控制線中,各有一個busy引腳。當兩端的cpu不對雙口ram的同一地址單元存取時,busyl=h、busyr=h,可正常存儲;當兩端的cpu對雙口ram同一地址單元存取時,哪個端口的存取請求信號出現后,則其對應的busy=l,禁止其存取數據;在無法判定兩個端口存取請求信號出現的先后順序時,控制線busyl、busyr只有一個為低電平。這樣,就能夠保證對應于busy=h的端口能進行正常存取,對應于busy=l的端口不能存取,從而避免了兩個cpu同時競爭地址資源而引發錯誤的可能。 1.2 中斷判優方式 中斷判優方式又稱郵箱判優方式。cy7c028具有兩套中斷邏輯,通過兩個int引腳分別接收到兩個cpu的中斷引腳上,以實現cpu的握手。在雙口ram的數據傳送中,兩端的cpu都把雙口ram作為自己存儲器的一部分。當兩個cpu需要數據傳送時,假設左端cpul向右端cpur傳送,首先cpul將需要傳送的數據存放到雙口ram某段約定的地址單元中,然后向雙口ram的最高奇地址單元0xffff即右端口的郵箱進行寫操作,用以向cpur發出一個中斷,這樣cpur就進入其相應的中斷服務子程序,將約定地址單元的數據讀出,然后對雙口ram右端口的郵箱進行寫操作,用以清除該中斷。 1.3 令牌判優方式 令牌判優方式是一種快速數據交換方式。在此方式中有信令鎖存邏輯,cy7c028內部提供了八個相互獨立的鎖存邏輯單元,最多可將ram空間分成八個區段。這些鎖存邏輯單元獨立于雙口ram存儲區,并不能控制ram區、封鎖兩端cpu的讀/寫操
    
    
     摘要:介紹了雙口ram器件cy7c028的內部結構及工作原理,詳細討論了cy7c028在ins/gps組合導航系統中的具體應用,給出了cy70c28與tms320f240和tms320vc33之間的接口電路,并對cy7c028的分區處理進行了獨特的軟件設計,提高了實時性。 關鍵詞:雙口ram tms320vc33 tms320f240 組合導航系統 cy7c028 導航系統是負責將載體從起始點引導到目的地的系統裝置。近年來,隨著微型計算機技術和衛星通信技術的發展和實際應用,使得導航系統的精確性和可靠性達到了更高的要求,促使導航系統向綜合化和容錯化方法發展,進而發展了以慣性導航為主體的各種組合導航系統。在眾多組合導般系統中,ins/gps組合導航系統更是發展迅速,在軍用和民用領域均已獲得廣泛應用,而且愈來愈受到重視。就ins/gps組合導航系統而言,除了要完成大量的導航解算工作外,還要完成控制、人機接口、與外部系統的通信等功能。由于導航系統對實時性要求較高,采用單片cpu來實現上述功能是不現實的。在研制某彈載ins/gps組合導航系統時,針對彈載導航系統體積小、重量輕、功耗小的特點,設計了一種嵌入式高速處理系統。該系統采用ti公司的tms320vc33和tms320f240組成雙dsp系統,即由兩個dsp構成一個主從式系統完成相應功能。主從式系統設計的關鍵是主機與從機之間的數據通信。主從機之間的數據通信主要有串行、并行、dma及雙口ram四種方式。綜合各種通信方式的優缺點,考慮到導航系統實時性高、數據量大的特點,筆者以雙口ram器件cy7c028作為共享存儲器,筆者以雙口ram器件cy7c028作為共享存儲器,通過獨特的軟件分區處理設計有效地實現了導航系統中的主計算機與從微型計算機之間的通信。 1 雙口ram芯片cy7c028的內部結構及工作原理 cy7c028是cypress公司研制的64k×16低功耗cmos型靜態雙口ram,最大訪問時間為12/15/20ns,可與大多數高速處理器配合使用,無需插入等待狀態。采用主從模式可以方便地將數據總線擴展成32位或更寬。其內部功能框圖如圖1所示。 雙口ram芯片cy7c028作為一種性能優越的快速通信器件,大多cpu的高速數字系統中非常適用。其特點是:提供兩套完全獨立的數據線、地址線、讀寫控制線,允許兩個cpu對雙端口存儲器同時進行操作;具有兩套完全的中斷邏輯,用于實現兩個cpu之間的握手信號;具有完全獨立的忙邏輯,可保護兩個cpu對同一地址單元進行正確的讀寫操作。當兩個cpu對雙口ram存取時,存在以下四種情況。(1)兩個cpu不同時對同一地址單元存取數據。(2)兩個cpu同時對同一地址單元讀出數據。(3)兩個cpu同時對同一地址單元寫入數據。(4)兩個cpu同時對同一地址單元操作,一個寫入數據,另一個讀出數據。 不難看出,在第一和第二種情況下,兩個端口的存取不會出現錯誤,而第三種情況會出現寫入錯誤,第四種情況會出現讀出錯誤。為了避免兩個cpu對同一地址單元進行訪問時由于地址數據爭用而造成的數據讀寫錯誤,cy7c028主要提供了以下幾種工作方式,下面逐一介紹。
    
     1.1 硬件判優方式 雙口ram cy7c028具有解決兩個處理器同時訪問同一地址單元的硬件仲裁邏輯。在雙口ram的兩套控制線中,各有一個busy引腳。當兩端的cpu不對雙口ram的同一地址單元存取時,busyl=h、busyr=h,可正常存儲;當兩端的cpu對雙口ram同一地址單元存取時,哪個端口的存取請求信號出現后,則其對應的busy=l,禁止其存取數據;在無法判定兩個端口存取請求信號出現的先后順序時,控制線busyl、busyr只有一個為低電平。這樣,就能夠保證對應于busy=h的端口能進行正常存取,對應于busy=l的端口不能存取,從而避免了兩個cpu同時競爭地址資源而引發錯誤的可能。 1.2 中斷判優方式 中斷判優方式又稱郵箱判優方式。cy7c028具有兩套中斷邏輯,通過兩個int引腳分別接收到兩個cpu的中斷引腳上,以實現cpu的握手。在雙口ram的數據傳送中,兩端的cpu都把雙口ram作為自己存儲器的一部分。當兩個cpu需要數據傳送時,假設左端cpul向右端cpur傳送,首先cpul將需要傳送的數據存放到雙口ram某段約定的地址單元中,然后向雙口ram的最高奇地址單元0xffff即右端口的郵箱進行寫操作,用以向cpur發出一個中斷,這樣cpur就進入其相應的中斷服務子程序,將約定地址單元的數據讀出,然后對雙口ram右端口的郵箱進行寫操作,用以清除該中斷。 1.3 令牌判優方式 令牌判優方式是一種快速數據交換方式。在此方式中有信令鎖存邏輯,cy7c028內部提供了八個相互獨立的鎖存邏輯單元,最多可將ram空間分成八個區段。這些鎖存邏輯單元獨立于雙口ram存儲區,并不能控制ram區、封鎖兩端cpu的讀/寫操