基于EMIF接口的DSP控制系統設計
一個(gè)EMIF讀操作分為建立時(shí)間、觸發(fā)時(shí)間和保持時(shí)間三部分。在建立時(shí)間開(kāi)始時(shí),EM_CS[2]片選信號拉低,同時(shí)地址線(xiàn)EM_A 與EM_BA 給出所讀取數據的地址。觸發(fā)時(shí)間開(kāi)始時(shí),EM_OE信號拉低,同時(shí)FPGA在EM_D信號線(xiàn)上傳輸數據,DSP將在觸發(fā)時(shí)間的最后一個(gè)時(shí)鐘處對數據采樣。保持時(shí)間中EM_OE 信號將拉高,并在保持時(shí)間結束后,EM_CS[2]信號拉高。在整個(gè)周期中EM_WE_DQM、EM_WE、EM_RW信號始終為高電平。
2.2.2 異步寫(xiě)操作
DSP發(fā)出對FPGA的寫(xiě)申請時(shí),就會(huì )進(jìn)行異步寫(xiě)操作。當寫(xiě)操作不能在外部器件的一個(gè)訪(fǎng)問(wèn)周期內完成時(shí),EMIF就會(huì )進(jìn)行多個(gè)周期的操作,直到完成整個(gè)申請。
類(lèi)似于讀操作,EMIF 寫(xiě)操作分為建立時(shí)間、觸發(fā)時(shí)間和保持時(shí)間三部分。在建立時(shí)間開(kāi)始時(shí),EM_CS[2]片選信號拉低,EM_RW信號拉低,同時(shí)地址線(xiàn)EM_A與EM_BA給出所讀取數據的地址,數據線(xiàn)EM_D給出需要寫(xiě)入FPGA的數據。觸發(fā)時(shí)間開(kāi)始時(shí),EM_WE信號拉低,EM_WE_DMQ信號給出字節使能信號。保持時(shí)間開(kāi)始時(shí)EM_WE_DMQ信號與EM_WE信號拉高,并在保持時(shí)間結束后,EM_CS[2]信號與EM_RW信號拉高。在整個(gè)寫(xiě)操作周期中EM_OE信號始終為高電平。
DSP 通過(guò)配置EMIF 接口的寄存器來(lái)實(shí)現上述時(shí)序,FPGA可采用IP 核來(lái)實(shí)現EMIF協(xié)議,不同的FPGA芯片要采用不同的地址。
3 系統BOOT 方法
TMS320C6722 型DSP的內部沒(méi)有可寫(xiě)的ROM,DSP的程序必須存放在外部器件中,DSP 芯片上電后必須首先從外部芯片下載程序。本款DSP可以通過(guò)SPI 總線(xiàn)啟動(dòng)、通過(guò)I2C總線(xiàn)啟動(dòng)和通過(guò)EMIF接口啟動(dòng)。這幾種Boot 方式和對應的引腳配置如表1 所示,在本系統中,EMIF接口除了實(shí)現通常的數據交換,還兼任帶動(dòng)DSP啟動(dòng)的功能。
系統上電后,DSP 的RESET 引腳要通過(guò)下拉電阻拉低,使DSP 處于復位態(tài)。FPGA 芯片EP2C8F256I8 上電后從FPGA 配置芯片EPCS4 中下載程序啟動(dòng)。FPGA啟動(dòng)成功后將DSP芯片的SPI0SOMI 引腳與SPI0CLK 引腳拉低,將SPI0SIMO 引腳拉高,然后再將RESET引腳拉高。這樣配置是為了使DSP退出復位態(tài)時(shí)能根據上述3 個(gè)引腳的電平獲知DSP 芯片將通過(guò)EMIF接口啟動(dòng)。此后,DSP芯片將從EMIF 接口讀取1KB數據,并將這1KB數據存放于DSP的RAM中,再執行這1KB的程序。
上述過(guò)程稱(chēng)為DSP的第一次啟動(dòng)過(guò)程。這1KB的程序是由匯編語(yǔ)言編寫(xiě)并通過(guò)CCStudio 軟件編譯成機器語(yǔ)言,存放于FPGA中(通過(guò)mif 文件編譯進(jìn)FPGA的程序)。該1KB程序的功能是再次調用EMIF 接口,操作FPGA,使得FPGA 通過(guò)IP 核從FLASH芯片中將其余的程序(本系統的程序約為32K)拷入DSP的RAM 中并執行這些新拷入的程序。這是DSP 的第二次啟動(dòng)。第一次啟動(dòng)是硬件啟動(dòng),是TMS320C6722 型DSP已經(jīng)設定好的啟動(dòng)方式,第二次啟動(dòng)是軟件啟動(dòng),所執行的啟動(dòng)程序由用戶(hù)編寫(xiě)。
綜上,本文介紹了DSP芯片通過(guò)EMIF接口連接FPGA的硬件電路與時(shí)序,根據本文介紹的方法,DSP芯片通過(guò)FPGA能控制大量外部芯片工作,僅使用DSP的EMIF接口就能實(shí)現DSP啟動(dòng)和控制復雜系統工作的功能,大大擴展了DSP芯片的靈活性,使其強大的運算功能得以更好的發(fā)揮。
陀螺儀相關(guān)文章:陀螺儀原理
評論