2021年秋招面经分享·晶晨【数字IC设计工程师(成都)】

前言

        如果想参考本人的背景情况可见这篇概述


============================ 正文开始 ==============================
【时间线】

  • 9.9 晶晨一面

  之前把简历给了一个在里面的师兄,然后在大家都做了笔试时我没收到通知,我以为我又凉了,结果后期直接收到了面试邀约的邮件……

PS:红字表示我当时没答出来的问题蓝字表示面试官/我的解答

面经分享

1. 一面·技术面【30分钟】

  电话面试,面试官人很好。

  1. 自我介绍
  2. CDC方法
  3. 低功耗设计方法
  4. 单口RAM实现同步FIFO的设计方法   -这个问题不太常见,但是工程上好像常用到,我知道一种方法,后面面试官补充了一个更好的方法,具体见【PS】
  5. 提问环节
    a)加班程度   -先是被反问了一波能接受的加班程度,后面他公司时弹性工作制,不忙的时候10-8-5左右,忙的时候可能周六要过来,但最晚每天9点后公司就没什么人了。加班时间在不忙的时候可以换成调休
    b)各个城市base的业务是不是不一样?  -感觉分部门,成都这边最大的部门是视频编解码,面试官是视频图像处理的,还有一个部门是SOC的。图像处理部门成都这边人比较少(不到10人),但是上海那边人有十多个(暗示缺人)
    c)后期面试安排   -应该只有一个HR了

【PS】:(假设数据都是8bit)

我的方法: 单口RAMx2 + regx1,我们规定:奇数地址对应数据存入RAM0,偶数地址对应输入写入RAM1。具体读写情况分为两大类:
[情况一]:同时读写 + 读写地址同为奇/偶。以读写地址同为奇为例,我们要同时完成2件事:

  • 将当前的wr_data先存入reg,并拉高reg_vld以表示reg中有未存入对应RAM的数据;
  • 从RAM0中取出当前rd_addr对应的rd_data。

假设下一时刻仍为同时读写,则此时的wr_addr和rd_addr应同为偶,则此时我们要同时完成3件事:

  • 将此时wr_addr(偶)的wr_data写入reg,并拉高reg_vld;
  • 将reg中存有的上一时刻的奇数wr_addr(奇)对应的wr_data写入RAM0中;
  • 将此时rd_addr(偶)对应的rd_data从RAM1中读出。

[情况二]:并非同时读写。以只读不写 + reg_vld为高 + rd_addr为奇为例,因为这个模拟的是同步fifo,所以reg中此时存入的肯定为地址为偶的暂未存入RAM1的wr_data(因为fifo中的wr_addr和rd_addr肯定是顺序累加的 + reg中存有有效数据只会发生在wr_addr对应的RAM此时也在被读的时候),则此时我们需要干两件事:

  • 将reg中的wr_data写入RAM0,并且将reg_vld拉低;
  • 将rd_data从RAM1中读出。

若reg_vld没有拉高,则在只读的时候,只用访问对应的单口RAM将rd_addr对应的rd_data取出即可。同理,只写不读也是同理,这里不再赘述。

面试官的方法: 16bit单口RAMx2 + 16bit regx2,外界数据照常写入/读出,但是在我们设计的这个同步FIFO内部,以2个CLK为一个单位,进行一轮reg与RAM的读写交换。
  以同时读写为例,我们将源源不断的wr_data顺序存入wr_reg,并在每个第偶数个时钟周期,将wr_reg中的2个8bit数据作为16bit的数据包,整体写入RAM;同理,在外界需要读 + rd_reg都是已经被读过的数据时,表明此时的rd_reg需要更新,我们将在每个第奇数个周期从RAM中取出16bit(2个8bit数据)数据放在rd_reg中,供外界读出。

2. 结果

  十一期间HR电话问我考虑的怎么样了,我说等海思她说愿意等我,不过因为几乎没有考虑所以没有微信给HR说,HR也没跟我说过,就当拒了。

============================ 正文结束 ==============================

  • 2
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 14
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 14
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值