[發明專利]一種FPGA對接單片機FSMC接口的改進算法在審
| 申請號: | 201611152784.5 | 申請日: | 2016-12-14 |
| 公開(公告)號: | CN106776392A | 公開(公告)日: | 2017-05-31 |
| 發明(設計)人: | 李羚梅;張鵬泉;汪震;范玉進;曹曉冬;劉政鵬;蘇曉旭;蔣航 | 申請(專利權)人: | 天津光電通信技術有限公司 |
| 主分類號: | G06F13/16 | 分類號: | G06F13/16 |
| 代理公司: | 北京國昊天誠知識產權代理有限公司11315 | 代理人: | 劉昕 |
| 地址: | 300211 天*** | 國省代碼: | 天津;12 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 一種 fpga 對接 單片機 fsmc 接口 改進 算法 | ||
技術領域
本發明涉及一種時序匹配工作解決方案,尤其涉及一種FPGA對接單片機FSMC接口的改進算法。
背景技術
FSMC(Flexible Static Memory Controller,可變靜態存儲控制器)是STM32系列單片機所采用一種新型的存儲器擴展技術。在外部存儲器擴展方面具有獨特的優勢,可根據系統的應用需要,方便地進行不同類型大容量靜態存儲器的擴展。而FPGA(Field-Programmable Gate Array,現場可編程門陣列)作為一種能夠靈活編程的邏輯器件,在需要與STM32系列單片機進行高速數據傳輸時,常常將自身模擬為一塊靜態存儲器以供STM32讀寫,從而完成兩者之間的數據交互。
FSMC接口對于STM32系列單片機是一種相當簡便的存儲器操作技術,但其讀寫時序受限于單片機自身的驅動時鐘;與其對接的FPGA器件同樣與驅動時鐘強相關,需要精準的時序控制來保證通訊中信號/數據的正確性與穩定性。但由于STM32系列單片機與FPGA之間的信號驅動時鐘有著相當大的差距(FPGA信號驅動時鐘遠大于STM32系列單片機),則造成兩者之間的信號競爭冒險,導致其中一方不能夠正常獲得數據/信號(常見于接收數據的一方)。因而為了解決該問題,需要進行一定的時序匹配工作。
發明內容
本發明公開一種FPGA與STM32系列單片機之間時序匹配工作解決方案。
為了實現上述目的,本發明采用如下方案:
一種FPGA對接單片機FSMC接口的改進算法,包括步驟:
a.等待單片機操作;
b.收到所述單片機所發送的片選信號;
c.判斷伴隨所述片選信號的信號是讀使能信號還是寫使能信號;
d.執行具體操作;
e.結束。
其中d步驟所述執行具體操作包括寫操作和讀操作。
所述寫操作步驟包括(步驟f-i):
f.判斷所述寫使能信號上升沿,在所述上升沿發生時刻鎖存地址總線和數據總線上的數據;
g.產生鎖存標志脈沖;
h.延遲鎖存標志脈沖;
i.在延遲脈沖觸發時將鎖存到的地址總線的數據保存到相應的地址總線上。
所述讀操作步驟包括(步驟j-k):
j.在讀使能信號有效的過程中采集地址總線上的數據;
k.根據收到的地址總線數據返回相應的數據到數據總線上。
所述片選信號、所述讀使能信號和所述寫使能信號均為低電平有效。
優選的,所述FPGA為Xilinx公司的Spartan6 XC6SLX100芯片;所述FSMC為ST公司的STM32F429芯片。
所有步驟開始前還需要設置所述FSMC的地址建立時間、地址保持時間和數據建立時間。
優選的,所述FSMC的地址建立時間為8HLK,所述地址保持時間為16HLCK,所述數據建立時間為8HCLK。
本發明能夠穩定高效的利用STM32單片機FSMC模塊和FPGA之間進行數據交互,在保持現有機制不發生變化的同時,保證數據的完整性和正確性,用標志位重復鎖存的方式,避免數據冒險的情況出現。
附圖說明
圖1為本發明FPGA與FSMC鏈路圖。
圖2為本發明FPGA端時序控制邏輯流程圖。
圖3為本發明FSCM讀操作時序圖。
圖4為本發明FSCM寫操作時序圖。
具體實施方式
下面結合附圖對本發明具體實施例做出詳細說明。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于天津光電通信技術有限公司,未經天津光電通信技術有限公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201611152784.5/2.html,轉載請聲明來源鉆瓜專利網。





