FPGA中有專門的ROM IP Core,如果按照規(guī)范用Verilog編寫的ROM文件可以被工具綜合成RAM資源,而ASIC在需要后端去做專門Memory,前端仿真可以自己編寫RAM/ROM/FIFO/RegFile IP。為了方便仿真這樣寫個(gè)ROM,方便初始化。


?
?
?
?
?將設(shè)計(jì)電路參數(shù)化可重復(fù)使用,構(gòu)建自己的代碼庫,搭建起你的數(shù)字積木。
module single_port_rom(/*autoarg*/
Outputs
q,
Inputs
clk
);
parameter DATA_WIDTH = 8;
parameter ADDR_WIDTH = 8;
input [ADDR_WIDTH-1:0] addr;
input clk;
output reg [DATA_WIDTH-1:0] q;
reg [DATA_WIDTH-1:0] rom[2**ADDR_WIDTH-1:0];
initial begins
rom);
rom);
end
always @ (posedge clk)begin
q <= rom[addr];
end
endmodule
系統(tǒng)函數(shù)$readmemh和$readmemb分別用來讀取十六進(jìn)制文件和二進(jìn)制文件。貌似沒有讀十進(jìn)制的。txt中的數(shù)據(jù)每行一個(gè)不需要逗號(hào)和最后一個(gè)數(shù)據(jù)后面的分號(hào),數(shù)據(jù)格式對(duì)應(yīng)。更多使用可以查詢IEEE的Verilog語法手冊(cè)。例化方式和rom IP一樣可參數(shù)化配置任意大小
single_port_rom
#(
.DATA_WIDTH(DATA_WIDTH),
.ADDR_WIDTH(ADDR_WIDTH)
)
u_sin(/*autoinst*/
// Outputs
.q (dout[DATA_WIDTH-1:0]),
// Inputs
.addr (addra[ADDR_WIDTH-1:0]),
.clk (clk));
整了三個(gè)波形,仿真能跑起來。



審核編輯 :李倩
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。
舉報(bào)投訴
-
asic
+關(guān)注
關(guān)注
34文章
1242瀏覽量
121812 -
ROM
+關(guān)注
關(guān)注
4文章
577瀏覽量
86878 -
Verilog
+關(guān)注
關(guān)注
28文章
1364瀏覽量
111570
原文標(biāo)題:為了方便仿真這樣寫個(gè)ROM
文章出處:【微信號(hào):IP與SoC設(shè)計(jì),微信公眾號(hào):IP與SoC設(shè)計(jì)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
熱點(diǎn)推薦
Stellaris LM3S2678 ROM用戶指南
電子發(fā)燒友網(wǎng)站提供《Stellaris LM3S2678 ROM用戶指南.pdf》資料免費(fèi)下載
發(fā)表于 12-23 16:28
?0次下載

ROM對(duì)計(jì)算機(jī)性能的影響
只讀存儲(chǔ)器(ROM)是計(jì)算機(jī)硬件中的一個(gè)重要組成部分,它負(fù)責(zé)存儲(chǔ)計(jì)算機(jī)啟動(dòng)時(shí)必需的固件和基本輸入輸出系統(tǒng)(BIOS)。ROM的性能和質(zhì)量對(duì)計(jì)算機(jī)的整體性能有著深遠(yuǎn)的影響。 ROM的基本概念 R
ROM數(shù)據(jù)丟失的常見原因
ROM(Read-Only Memory,只讀存儲(chǔ)器)是一種非易失性存儲(chǔ)器,用于存儲(chǔ)固件或系統(tǒng)軟件,這些數(shù)據(jù)在斷電后仍然可以保留。ROM數(shù)據(jù)丟失可能會(huì)導(dǎo)致設(shè)備無法啟動(dòng)或功能異常。 ROM數(shù)據(jù)丟失
ROM在電子產(chǎn)品中的重要性
在現(xiàn)代電子產(chǎn)品的設(shè)計(jì)和制造中,ROM(Read-Only Memory,只讀存儲(chǔ)器)是一種不可或缺的存儲(chǔ)技術(shù)。它為設(shè)備提供了啟動(dòng)和運(yùn)行所需的基本指令集,確保了設(shè)備的穩(wěn)定性和功能性。 一、ROM的定義
了解ROM與固態(tài)硬盤的關(guān)系
在計(jì)算機(jī)存儲(chǔ)領(lǐng)域,ROM(Read-Only Memory,只讀存儲(chǔ)器)和固態(tài)硬盤(Solid State Drive,簡稱SSD)是兩種不同類型的存儲(chǔ)技術(shù)。它們?cè)诠δ堋⒂猛竞托阅苌嫌兄黠@的區(qū)別
手機(jī)中的ROM與內(nèi)存的區(qū)別
1. ROM(只讀存儲(chǔ)器) 定義: ROM是一種非易失性存儲(chǔ)器,這意味著即使在斷電的情況下,存儲(chǔ)在ROM中的數(shù)據(jù)也不會(huì)丟失。在智能手機(jī)中,ROM主要用于存儲(chǔ)固件和操作系統(tǒng),以及一些預(yù)裝
常見的ROM類型及其特點(diǎn)
ROM(Read-Only Memory,只讀存儲(chǔ)器)是一種半導(dǎo)體存儲(chǔ)器,用于存儲(chǔ)計(jì)算機(jī)或其他電子設(shè)備中的固件或固定數(shù)據(jù)。ROM在系統(tǒng)啟動(dòng)時(shí)提供必要的啟動(dòng)代碼和數(shù)據(jù),確保設(shè)備能夠正常運(yùn)行。以下是一些
ROM在嵌入式系統(tǒng)中的應(yīng)用
ROM(Read-Only Memory,只讀存儲(chǔ)器)是一種非易失性存儲(chǔ)器,即使在斷電的情況下也能保持存儲(chǔ)的數(shù)據(jù)。在嵌入式系統(tǒng)中,ROM扮演著至關(guān)重要的角色,它用于存儲(chǔ)固件、操作系統(tǒng)、配置數(shù)據(jù)和啟動(dòng)
如何選擇適合的ROM類型
在現(xiàn)代電子設(shè)備和計(jì)算機(jī)系統(tǒng)中,ROM扮演著至關(guān)重要的角色。它用于存儲(chǔ)固件、操作系統(tǒng)、啟動(dòng)代碼以及其他重要的系統(tǒng)信息。隨著技術(shù)的發(fā)展,ROM的種類和特性也在不斷變化。 1. ROM的基本概念 R
固態(tài)ROM的工作原理
在計(jì)算機(jī)和電子設(shè)備的發(fā)展歷程中,存儲(chǔ)技術(shù)扮演了至關(guān)重要的角色。其中,固態(tài)ROM作為一種可靠的非易失性存儲(chǔ)解決方案,被廣泛應(yīng)用于各種設(shè)備中。 ROM的基本結(jié)構(gòu) ROM的基本結(jié)構(gòu)由存儲(chǔ)單元、地址解碼器
ROM和RAM的主要區(qū)別
在現(xiàn)代計(jì)算機(jī)系統(tǒng)中,存儲(chǔ)技術(shù)扮演著至關(guān)重要的角色。ROM和RAM是兩種基本的存儲(chǔ)類型,它們共同支撐著計(jì)算機(jī)的運(yùn)行。 一、定義與基本功能 1.1 ROM(只讀存儲(chǔ)器) ROM是一種非易失性存儲(chǔ)器,這
什么是ROM存儲(chǔ)器的定義
一、ROM存儲(chǔ)器的定義 ROM存儲(chǔ)器是一種在計(jì)算機(jī)和電子設(shè)備中用于存儲(chǔ)固定數(shù)據(jù)的存儲(chǔ)器。與RAM(隨機(jī)存取存儲(chǔ)器)不同,ROM存儲(chǔ)器中的數(shù)據(jù)在斷電后不會(huì)丟失,因此它被廣泛用于存儲(chǔ)不經(jīng)常改變的系統(tǒng)軟件
什么是RAM和ROM
RAM(Random Access Memory,隨機(jī)存取存儲(chǔ)器)和ROM(Read-Only Memory,只讀存儲(chǔ)器)是計(jì)算機(jī)存儲(chǔ)系統(tǒng)中的兩種重要組成部分,它們?cè)谟?jì)算機(jī)的性能和功能上扮演著不同的角色。下面將分別詳細(xì)解釋RAM和ROM的定義、特點(diǎn)、工作原理、類型及其在計(jì)
ram存儲(chǔ)器和rom存儲(chǔ)器的區(qū)別是什么
定義: RAM(Random Access Memory):隨機(jī)存取存儲(chǔ)器,是一種易失性存儲(chǔ)器,主要用于計(jì)算機(jī)和其他設(shè)備的臨時(shí)存儲(chǔ)。 ROM(Read-Only Memory):只讀存儲(chǔ)器,是一種
簡述RAM和ROM的區(qū)別
RAM(Random Access Memory,隨機(jī)存取存儲(chǔ)器)和ROM(Read-Only Memory,只讀存儲(chǔ)器)是計(jì)算機(jī)系統(tǒng)中兩種不同類型的存儲(chǔ)器,它們?cè)跇?gòu)造、用途、存儲(chǔ)原理、數(shù)據(jù)可修改性、數(shù)據(jù)保存、數(shù)據(jù)訪問速度、存儲(chǔ)容量、成本、功耗等方面存在顯著區(qū)別。
評(píng)論