段燕
摘 要 VHDL用來描述數(shù)字邏輯系統(tǒng)的“編程語言”,與其他硬件描述語言相比,它功能強大且設(shè)計靈活有強大的系統(tǒng)硬件描述能力,易于共享和復(fù)用。它是設(shè)計較大規(guī)模的電子系統(tǒng)的重要保證。本文在QuratusII的工作平臺上,運用VHDL語言實現(xiàn)對雙口RAM的設(shè)計并進行模擬仿真。
關(guān)鍵詞 VHDL語言 雙口RAM QuratusII
1 VHDL程序基本結(jié)構(gòu)
VHDL設(shè)計時主要包括三部分:
(1)庫LIBRARY、程序包PACKAGE調(diào)用,調(diào)用格式如下:
LIBRARY 庫名
USE 庫名.程序包名.項目名
(2)實體。定義一個元件的輸入輸出管腳,具體元件內(nèi)部電路則由結(jié)構(gòu)體中描述語句表述。
(3)結(jié)構(gòu)體。描述一實體內(nèi)部電路的連接關(guān)系或邏輯功能。
2雙口RAM存儲結(jié)構(gòu)
雙口RAM通常由四部分組成:存儲體(存儲矩陣)、地址譯碼器、讀寫控制器和仲裁器。其存儲結(jié)構(gòu)如圖所示:
3 VHDL實現(xiàn)雙口RAM設(shè)計程序
4 QuartusII中的仿真結(jié)果
當(dāng)R_EN和W_EN給1;R_CLK的脈沖時間和W_CLK的脈沖時小于D_IN隨機數(shù)的變化時間時,得到如下仿真圖:
5結(jié)語
RAM是與CPU直接交換數(shù)據(jù)的內(nèi)部存儲器。它可隨時讀寫,且速度快,通常作為操作系統(tǒng)或其他正在運行中的程序的臨時數(shù)據(jù)存儲媒介。雙口RAM有兩套完全獨立的數(shù)據(jù)線、地址線和讀寫控制線,允許兩個獨立的系統(tǒng)同時對該存儲器進行隨機性的訪問,以此提高RAM的吞吐率。
參考文獻
[1] EDA技術(shù)與VHDL(第5版)[M].北京:清華大學(xué)出版社,2017.
[2] 曾繁泰,曾祥云.VHDL程序設(shè)計教程(第四版)[M].北京:清華大學(xué)出版社,2014.