|
本帖最后由 awoyzc1 于 2020-3-12 14:44 编辑
我需要将一个2500位左右的串行数据存入 一个 256*16的RAM空间
要求每个地址 10位 总共占用 250个地址位,怎么样写法好?
数据串行输入一根时钟一根数据
*当然也可以给出一个口子作为反馈线
这里怎么实现即高效又不浪费资源。新手求助了
module ram(
input S_CLK, //输入时钟
input S_DAT,//输入信号
input 其他
);
reg [7:0] WADDR_c;
reg WCLK_c;
reg WCLKE_c;
reg [15:0] WDATA_c;
reg WE_c;
reg [15:0] MASK_c;
//ERBRAM initialization
SB_RAM256x16 ram256x16_inst (
.RDATA(RDATA_c[15:0]), //Read Data output
.RADDR(RADDR_c[7:0]), //Read Address input. Selects one of 256 possible RAM locations
.RCLK(CLK12M), //Read Clock input. Default rising-edge, but with falling-edge option
.RCLKE(RCLKE_c), //Read Clock Enable input
.RE(RE_c), //Read Enable input. Only available for SB_RAM256x16 configurations
//写部分
.WADDR(WADDR_c[7:0]), //Write Address input. Selects one of 256 possible RAM locations
.WCLK(CLK12M), //Write Clock input. Default rising-edge, but with falling-edge option
.WCLKE(WCLKE_c), //Write Clock Enable input
.WDATA(WDATA_c[15:0]), //Write Data input
.WE(WE_c), //Write Enable input
.MASK(MASK_c[15:0]) //Masks write operations for individual data bit-lines,0 = write bit; 1 = don't write bit
);
always@(posedge S_CLK)
begin
这里怎么实现即高效又不浪费资源。新手求助了
end
|
本帖子中包含更多资源
您需要 登录 才可以下载或查看,没有帐号?注册
x
阿莫论坛20周年了!感谢大家的支持与爱护!!
你熬了10碗粥,别人一桶水倒进去,淘走90碗,剩下10碗给你,你看似没亏,其实你那10碗已经没有之前的裹腹了,人家的一桶水换90碗,继续卖。说白了,通货膨胀就是,你的钱是挣来的,他的钱是印来的,掺和在一起,你的钱就贬值了。
|