【数字设计】芯动科技|芯原科技_2023届_笔试面试题目分享

本文汇总了芯动科技和芯原科技的笔试面试题目,涵盖了ASIC设计流程、数字IC基础知识,如Verilog、时序分析、低功耗设计、复位类型、CPU流水线等核心概念。同时介绍了扫描链在芯片测试中的应用,为数字集成电路的学习者和求职者提供了宝贵资料。
摘要由CSDN通过智能技术生成
芯片设计验证社区·芯片爱好者聚集地·硬件相关讨论社区·数字verifier星球
四社区联合力荐!近500篇数字IC精品文章收录
【数字IC精品文章收录】学习路线·基础知识·总线·脚本语言·芯片求职·EDA工具·低功耗设计Verilog·STA·设计·验证·FPGA·架构·AMBA·书籍

在这里插入图片描述

【数字设计】芯动科技|芯原科技_2023届_笔试面试题目分享

一、投稿方式

因为作者不是今年的应届生,因此本专栏(数字IC笔试面试专栏)的建设需要粉丝朋友们共同进行,现开放邮箱笔试面经投稿地址如下E210064@e.ntu.edu.sg,欢迎读者朋友们进行投稿,参与的朋友有机会获得数字IC相关纸质书籍,先到先得哦!

二、芯动科技

一面
介绍实习所做的工作
Asic设计的流程

  1. 确定芯片的具体指标:
  2. 系统级设计
  3. RTL 寄存器传输级设计
  4. 功能验证
  5. 逻辑综合
  6. 形式验证(静态验证)
  7. STA静态时序分析
  8. DFT可测性设计
  9. 布局布线
  10. 寄生参数提取
  11. 静态时序分析(STA)
  12. 版图物理验证
  13. 生成GDSII文件,Tap_off 流片

阻塞赋值和非阻塞赋值的区别

(1)阻塞赋值(=)赋值一旦完成,等号左边的变量值立即变化。
(2)非阻塞赋值(<=),在赋值开始时计算表达式右边的值,在本次仿真周期结束时才更新被赋值变量。

Setup time和hold time是什么,如果不满足会发生什么

[静态时序分析简明教程(二)] 基础知识:建立时间、保持时间、违例修复及时序分析路径

跨时钟域的处理有哪些

1.双触发器同步器:使用两级触发器来在不同时钟域之间传输信号,确保信号同步。
2.握手协议:通过握手协议在不同时钟域之间传输数据,确保数据的正确接收和发送。
3.异步FIFO:使用异步 FIFO 来在不同时钟域之间传输数据,包含了专门的同步电路,确保数据的稳定传输。

为什么要用格雷码

最小位数变化:相邻码之间只有一个位数变化,减少了位数变化的同时导致的传输错误。
降低传输误差:在信号传输过程中,由于只有一个位数变化,降低了由于信号传输延迟导致的传输错误概率。

Clock gating是什么,描述一下电路原理和结构

电路原理:Clock gating 是一种动态功耗优化技术,通过控制时钟信号的传递来降低电路功耗。当电路处于空闲或无操作状态时,时钟信号被屏蔽,避免浪费功耗。
结构:Clock gating 通常使用一个门电路来控制时钟信号的开关,根据电路状态和控制信号来决定是否传递时钟信号。

异步复位和同步复位的优缺点是什么

异步复位
优点:响应速度快,不受时钟延迟影响,适用于临界资源的复位。
缺点:可能引起异步复位冲突,需要额外的复位电路,容易引入异步复位后的同步问题。
同步复位
优点:避免异步复位冲突,简化电路设计,不会引入异步复位后的同步问题。
缺点:响应速度受时钟延迟影响,不适用于临界资源的复位。

异步复位同步释放作用是什么,实现什么样的目的

当异步复位信号释放后,通过同步电路来将电路状态同步到时钟域中,避免出现时序问题。这样可以保证在异步复位信号释放后,电路能够正常运行,并且不会出现异常状态。

三、芯原科技

一面
介绍项目
Fifo的深度怎么确定的
Cpu的五级流水线都是什么

CPU的五级流水线通常包括以下五个阶段:
a. 取指(Instruction Fetch):从指令存储器中读取指令。
b. 译码(Instruction Decode):对取得的指令进行解码,确定指令类型和操作数。
c. 执行(Execution):执行指令的操作,例如算术运算、逻辑运算等。
d. 访存(Memory Access):访问存储器,读取或写入数据。
e. 写回(Write Back):将执行阶段得到的结果写回寄存器文件。

CPU遇到跳转指令怎么执行

当CPU遇到跳转指令(例如条件分支或无条件跳转指令)时,会在译码阶段计算跳转地址。然后,在执行阶段进行条件判断或计算,确定是否发生跳转。如果发生跳转,取指阶段会重新开始从跳转地址读取指令,否则流水线继续顺序执行。

Cpu遇到数据冲突怎么执行

当CPU遇到数据冲突(例如数据依赖冲突,数据竞争等)时,会采取一些策略来解决冲突,以确保数据的正确性:
a. 数据前推(Data Forwarding):将执行阶段得到的结果直接转发给后续阶段需要使用该数据的部件,避免数据冲突。
b. 暂停流水线(Stalling):在发生数据冲突时,暂停流水线,等待数据可用后再继续执行,以避免错误的数据被用于后续计算。
c. 乱序执行(Out-of-Order Execution):通过重新调度指令的执行顺序,避免数据冲突,提高指令级并行度。

对扫描链有什么了解

扫描链(Scan Chain)是一种在芯片测试中用于辅助测试和调试的技术。它是一种将芯片内部的存储元件连接成一个链式结构,从而可以通过扫描链接入测试模式。在测试时,可以将测试数据通过扫描链输入到芯片内部,或者读取芯片内部的状态信息,以验证电路功能或诊断故障。扫描链通常在设计时引入,方便在制造和测试阶段对芯片进行故障测试和调试。

  • 10
    点赞
  • 76
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张江打工人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值