FPGA多接口功能在航姿計算機中的應用
(4)與 DSP的并行接口。并行接口是最常用的一種通訊方式之一。FPGA和DSP之間的數據通訊通過(guò) 16位并行接口完成(原理圖如圖5)。首先,根據 DSP的時(shí)序,系統上電后需要對DSP進(jìn)行不小于 200ms的復位。在系統正常工作時(shí)期,當 WE=0寫(xiě)有效、CE1=0片選有效、 a21=1數據有效時(shí),FPGA從總線(xiàn)上讀取 DSP的數據,當 OE=0讀有效, CE1=0片選有效, a21=1數據有效時(shí),FPGA將數據放在總線(xiàn)上等待 DSP讀取。FPGA讀、寫(xiě)數據都根據 DSP的 EA信號來(lái)標識所操作的數據地址。雖然系統中的數據量比較大,但是為了提高實(shí)時(shí)性和可靠性,在FPGA中沒(méi)有使用 FIFO或者 RAM來(lái)存儲數據,而只是用 FPGA中的變量來(lái)臨時(shí)存儲,本設計中也最終證明了該設計的可用性,這樣也讓 FPGA的硬件資源更合理利地得以使用。

3整體時(shí)序的實(shí)現
本系統的實(shí)時(shí)性和復雜性對于正確實(shí)現總體時(shí)序和工作邏輯提出了比較大的挑戰?,F從以下幾個(gè)方面說(shuō)明本設計的實(shí)現方法:
1 高速實(shí)時(shí)性??傮w的并行設計,各個(gè)通訊模塊幾乎完全獨立地工作,互不占用資源,從而使得高效性和實(shí)時(shí)性的要求得到了極大地滿(mǎn)足。
2 總體時(shí)序有序。該航姿計算機的整體時(shí)序和整體邏輯都是讓 FPGA中的頂層實(shí)體來(lái)控制實(shí)現的。系統大致時(shí)序和邏輯如下:上電后,FPGA控制系統完成各部件的上電自檢后,各接口開(kāi)始并行工作,按照自己的工作時(shí)序接收、發(fā)送數據。其中,IMU數據大約每 10ms發(fā)送一次,FPGA每次接收完 IMU數據后,與 DSP通過(guò)并行接口進(jìn)行一次通訊。FPGA將最新的傳感器測量值發(fā)送給DSP,而 DSP將最新的航姿信息回傳給 FPGA,最終FPGA通過(guò) ARINC429接口傳給外部。這樣的設計保證了系統時(shí)序穩定、邏輯可靠。
3 數據準確性。數據的準確也要求考慮到具體硬件上的問(wèn)題。由于 FPGA中的邏輯門(mén)是有時(shí)間延遲的,在這樣實(shí)時(shí)的系統中就必須嚴格考慮門(mén)電路的延時(shí),否則,很容易出現如下類(lèi)似的一些問(wèn)題,例如,把剛接收到一組測量數據賦給變量是需要幾納秒到十幾納秒的時(shí)間來(lái)穩定的,如果此時(shí)正好遇上操作改變量的時(shí)鐘觸發(fā),偶爾就會(huì )引起野值數據,這些不確定的野值隨時(shí)可能造成整個(gè)航姿結算的錯誤,因此需要根據具體時(shí)序修改,以保證杜絕這類(lèi)問(wèn)題。
該系統的 FPGA設計已經(jīng)經(jīng)過(guò)模擬數據仿真試驗、跑車(chē)試驗得以驗證,在數據準確性、實(shí)時(shí)性方面都得到了較好的滿(mǎn)足。
評論