怎么仿做网站,海外网络推广平台,网站建设的步骤图,比较漂亮的营销型网站专栏前言 本专栏的内容主要是记录本人学习Verilog过程中的一些知识点#xff0c;刷题网站用的是牛客网 分析 要实现ROM#xff0c;首先要声明数据的存储空间#xff0c;例如#xff1a;[3:0] rom [7:0]#xff1b;变量名称rom之前的[3:0]表示每个数据具有多少位#xff0… 专栏前言 本专栏的内容主要是记录本人学习Verilog过程中的一些知识点刷题网站用的是牛客网 分析 要实现ROM首先要声明数据的存储空间例如[3:0] rom [7:0]变量名称rom之前的[3:0]表示每个数据具有多少位指位宽变量名称rom之后的[7:0]表示需要多少个数据指深度注意这里深度为8应该是使用[7:0]而不是[2:0] 声明存储变量之后需要对rom进行初始化写入数据然后将输入地址作为rom的索引值将索引值对应的数据输出。 timescale 1ns/1ns
module rom(input clk,input rst_n,input [7:0]addr,output [3:0]data
);reg [3:0] rom_data [7:0] ; assign data rom_data[addr] ; always (posedge clk or negedge rst_n) begin if (!rst_n) begin rom_data[0] 4d0 ; rom_data[1] 4d2 ;rom_data[2] 4d4 ;rom_data[3] 4d6 ;rom_data[4] 4d8 ;rom_data[5] 4d10 ;rom_data[6] 4d12 ;rom_data[7] 4d14 ;endelse begin rom_data[0] rom_data[0] ;rom_data[1] rom_data[1] ;rom_data[2] rom_data[2] ;rom_data[3] rom_data[3] ;rom_data[4] rom_data[4] ;rom_data[5] rom_data[5] ;rom_data[6] rom_data[6] ;rom_data[7] rom_data[7] ;endendendmodule