在线咨询
eetop公众号 创芯大讲堂 创芯人才网
切换到宽版

EETOP 创芯网论坛 (原名:电子顶级开发网)

手机号码,快捷登录

手机号码,快捷登录

找回密码

  登录   注册  

快捷导航
搜帖子
查看: 504|回复: 7

[求助] 请教各位大佬,给SRAM输入信号过DFF的时候是否需要加reset?

[复制链接]
发表于 2024-10-24 08:03:01 | 显示全部楼层 |阅读模式
20资产
今天asic面试遇到一个问题,假定已有一块SRAM,实现cache的tag memory。
已知的端口有:
* we         -- write enable
* waddr  -- write address
* wdata   -- write data
* re          -- read enable
* raddr   -- read address
* rdata    -- output read data.
其中有一问是给输入信号过DFF,
面试大哥的例子是这样
reg wdata_q;
always@(posedge clk) begin
    wdata_q <= wdata;
end
面试大哥的解释是,这些输入信号不需要加reset,因为会有enable信号去屏蔽误读误写。

但是我觉得,在上电的时候,驱动enable信号的dff会是x(unknown)状态,
就是即可能是1也可呢是0。
如果是1的情况,还是会误读误写tag memory。

这里究竟是否需要加reset,还望各位大佬不吝赐教。


发表于 2024-10-24 09:41:27 | 显示全部楼层
上电时即便误读写,也不会有影响吧,又不会将这时候的读写的数据视为有效的数据。
发表于 2024-10-24 10:06:45 | 显示全部楼层
reset信号可以加,如果有function需求,例如global reset等,需要有reset。上电时无所谓了,因为这个时候clock都不一定处于稳定状态,等function正常运行了,用enable保证就可以的
发表于 2024-10-24 10:57:22 | 显示全部楼层
不用加复位,误读写没关系,本来ram上电也是随机值。问题中都没有出现enable信号面试大哥还要乱扯。
 楼主| 发表于 2024-10-24 23:00:03 | 显示全部楼层


chengkunjie 发表于 2024-10-24 09:41
上电时即便误读写,也不会有影响吧,又不会将这时候的读写的数据视为有效的数据。 ...


谢谢大佬。

因为这个ram的功能是cache tag,所以如果从cache flush的角度考虑,也可以避免误读误写。
但是我觉得加reset就可以避免x状态的信号在流水线中传递。
我还有一个小问题,就是实际asic设计中,是否会添加一个reset信号?

 楼主| 发表于 2024-10-24 23:05:11 | 显示全部楼层


hxy2018 发表于 2024-10-24 10:06
reset信号可以加,如果有function需求,例如global reset等,需要有reset。上电时无所谓了,因为这个时候cl ...



谢谢大佬举的例子,
我还有一个问题,就是如果没有reset信号的话,x状态的信号就会在流水线中存在很长一段时间。
所以在asic设计中,这个x信号是否应该被避免?
发表于 2024-10-24 23:25:58 | 显示全部楼层


siriux 发表于 2024-10-24 23:00
谢谢大佬。

因为这个ram的功能是cache tag,所以如果从cache flush的角度考虑,也可以避免误读误写。


我不知道sram用于实现cache tag的背景,不过我接触的实际asic项目中用sram做数据缓存,输入数据寄存器是带reset的。但是我觉得没必要,感觉控制流没有x态,逻辑上就不会出错。
发表于 2024-10-25 11:10:47 | 显示全部楼层


siriux 发表于 2024-10-24 23:05
谢谢大佬举的例子,
我还有一个问题,就是如果没有reset信号的话,x状态的信号就会在流水线中存在很长一 ...


实在在asic中是没有X (unknown)的,要么是0,要么是1 (或者高阻态),  所谓的unkonwn是无法确定是0还是1. SRAM的话,一般是先写再读,再第一次写之前状态无所谓的,可能是0,也可能是1,这个看初始化情况了。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐 上一条 /2 下一条


小黑屋| 手机版| 关于我们| 联系我们| 在线咨询| 隐私声明| EETOP 创芯网
( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2024-11-22 09:20 , Processed in 0.019548 second(s), 5 queries , Gzip On, Redis On.

eetop公众号 创芯大讲堂 创芯人才网
快速回复 返回顶部 返回列表