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