基于FPGA的仿真系統數據采集控制器IP核設計
3 系統實(shí)現
本IP 核功能邏輯的設計基于其任務(wù)邏輯定制的基本功能和技術(shù)指標。本設計的任務(wù)邏輯主要完成對模擬仿真系統前端模擬設備發(fā)送指令以及采集前端模擬設備狀態(tài)量數據。其功能邏輯也基于發(fā)送指令和接收數據兩個(gè)數據流來(lái)設計,如圖4所示。
為避免高速、高頻系統時(shí)序中常存在的競爭、毛刺危險以及建立與保持時(shí)間相抵觸等問(wèn)題,本IP核采用同步設計的方案。同時(shí),為解決實(shí)際中仍會(huì )經(jīng)常出現系統產(chǎn)生毛刺和時(shí)鐘偏斜等問(wèn)題。本IP核中擬將時(shí)鐘控制改為觸發(fā)器輸入允許,將時(shí)鐘選擇改為獨立的時(shí)鐘分析[7]。
為加快本設計的運行速度及處理效率,本IP核的設計以功能邏輯處理機制為基礎,分別對發(fā)送流程和接收流程設計狀態(tài)機并實(shí)現[8]。
在發(fā)送流程的狀態(tài)轉換過(guò)程中,共有6個(gè)狀態(tài),如圖5所示。IP核的控制邏輯判斷來(lái)自主機的發(fā)送數據命令后,首先檢查其各功能模塊的準備情況,如果準備好,即開(kāi)始發(fā)送數據,從寄存器單元中取出待發(fā)送數據并送至網(wǎng)絡(luò )通信模塊,由其發(fā)送至前端模擬設備。在此過(guò)程中,不斷檢測發(fā)送完成標志位DataEND,如果該標志位變?yōu)橛行t表示發(fā)送成功,將此信息反饋給主機并進(jìn)入下一工作周期等待狀態(tài);如果超時(shí)該標志位仍未變化,則反饋回主機發(fā)送失敗的信息,并請求重發(fā)。
相應地,如圖6所示,接收流程的狀態(tài)轉換過(guò)程有7個(gè)狀態(tài)。其工作大致與發(fā)送流程相同,只是接收數據從寄存器單元讀出后,要先經(jīng)過(guò)數據模式的轉換后,再發(fā)送給主機使用。
評論