郭慧瑩
摘 要:存儲器是保證計算機正常運行的重要組成部分,實現(xiàn)計算機的數(shù)據(jù)存儲工作,傳統(tǒng)的存儲器控制器存在著運行效率低、不可重復編寫的問題,為此,提出一種基于FPGA的嵌入式存儲器控制器設計方案,探討了存儲器控制器的構(gòu)造,設計了四種形態(tài)的狀態(tài)機,可以實現(xiàn)相互之間的自由轉(zhuǎn)換,以VHDL語言作為程序編碼的語言,實現(xiàn)對存儲器控制器的控制,最后以ISE Simulator Lite軟件進行仿真模擬,證實了設計的存儲器控制器能夠?qū)崿F(xiàn)數(shù)據(jù)的讀與寫操作,同時效率高、可擦寫。
關(guān)鍵詞:嵌入式存儲器;控制器;FPGA;VHDL
信息化時代計算機在各行各業(yè)中的地位越來越重要,使得計算機技術(shù)得到了快速的發(fā)展,與此同時存儲器在計算機系統(tǒng)中的作用也逐漸加大。計算機系統(tǒng)中包含了規(guī)模龐大的處理器,每一個處理器均要與存儲器建立連接實現(xiàn)信息的交互,由此可以看出存儲器是計算機的核心部件,影響著計算機的性能發(fā)揮。傳統(tǒng)的存儲器控制方法存在著靈活性差、無法擦寫的問題,為此,本文分析了一種基于FPGA的改進存儲器控制方法,克服了傳統(tǒng)控制方法中的弊端,并引入VHDL語言進行程序的編寫,進而實現(xiàn)處理器與存儲器信號的有效傳遞。
一、基于FPGA和VHDL的存儲器控制器設計
在進行存儲器控制器的設計過程中,第一步需要將相關(guān)數(shù)據(jù)參數(shù)傳輸?shù)娇刂破鞑糠?,其中參?shù)包含了數(shù)據(jù)的地址、內(nèi)容以及長度等,控制器將接受到的信號按照先后的順序進行各個數(shù)據(jù)的讀與寫操作。所以,為了滿足上述的要求需要設計一個可以對內(nèi)部程序進行編寫的存儲器控制器,控制器依據(jù)設定的程序代碼逐個完成數(shù)據(jù)的讀與寫工作。[1]本文設計的存儲器硬件設備選用塞林思公司的Spartan-6系列,并使用VHDL進行控制器語言的編寫,借助有限狀態(tài)機FSM完成存儲器控制器。另外,還需要在存儲器控制器中添加讀數(shù)裝置,從而實現(xiàn)對時序圖中所包含的數(shù)據(jù)進行逐個計數(shù),連接線路用來實現(xiàn)數(shù)據(jù)地址和內(nèi)容的運輸。如圖1為控制器的構(gòu)造。
配置寄存器是存儲器中結(jié)構(gòu)中的一部分,其實現(xiàn)的功能是幫助存儲器確定存儲形式、字長以及時序參數(shù)等方面的內(nèi)容,通過行業(yè)標準查詢手冊可以看到,配置寄存器的數(shù)據(jù)讀取時間為8ns,假設控制器的工作效率為100MHz,也就是工作周期為10ns,那么配置寄存器數(shù)據(jù)讀取的總時長為1拍的時間。結(jié)合時序圖以及相關(guān)參數(shù)可以得到數(shù)據(jù)讀取觸發(fā)的時間大于8ns,由此可以推理出數(shù)據(jù)讀取觸發(fā)的周期必定大于1拍。[2]
根據(jù)上述的理論推理與數(shù)據(jù)參數(shù),設計了四種形態(tài)的狀態(tài)機,每個狀態(tài)機的保持與切換均是由計時裝置的節(jié)拍數(shù)進行倒計時來進行控制的,當計數(shù)器的數(shù)值不為零,那么狀態(tài)機將保持現(xiàn)狀不變,當計數(shù)器的數(shù)值為零,那么狀態(tài)機將切換到下一形態(tài)。[3]形態(tài)切換圖見下圖2,其中圖中所顯示的形態(tài)文字與第二形態(tài)是相同的。
二、仿真模擬與分析
總結(jié)上文設計中的理論分析與數(shù)據(jù)計算,代入到嵌入式存儲器控制器中,同時以VHDL語言作為程序編碼的語言,實現(xiàn)對存儲器控制器的控制,以ISE Design Suite 14.7軟件為設計平臺,以FPGA為硬件設備,完成程序的下載工作。另外,運用Xilinx軟件中包含的ISE Simulator Lite功能進行程序模擬,最終獲得的時序圖和設計標準手冊中的時序圖相符合,因此可以得出設計出的存儲器控制器能夠?qū)崿F(xiàn)對數(shù)據(jù)的讀與寫操作,證明該存儲器控制器設計方案是可行的。[4]
三、結(jié)語
本文對基于FPGA和VHDL的存儲器控制器設計,設定FPGA為嵌入式存儲器的控制裝置,可以完成對時序控制器中數(shù)據(jù)的讀與寫步驟,這種設計思路新穎,不但能夠有效降低制作成本,同時還可以保證控制器具有較高的可編輯性,解決了專用控制器中復雜操作的問題,改善了存儲器控制軟件的運行速度,為今后的存儲器控制器設計提供了寶貴的經(jīng)驗。
參考文獻:
[1]史展,李占宣.基于FPGA的嵌入式CPU的VHDL設計[J].科技創(chuàng)新與應用,2013(27):43.
[2]李家星.嵌入式系統(tǒng)和FPGA的總線控制器的設計實現(xiàn)[J].微計算機信息,2007(02):242-243+285.
[3]周榮.基于FPGA的嵌入式CPU的VHDL建模和設計[J].浙江工業(yè)大學學報,2006(05):550-553+588.
[4]曹志香,桑愛兵,丁黃勝,張萌.基于AMBA總線的嵌入式彩色LCD控制器的設計及FPGA實現(xiàn)[J].電子器件,2004(01):139-142.