资讯详情

燧原科技2022年秋招硬件笔试

前言

  • 声明:就我个人而言,我认为在学习期间,它基本上是知识的处理,所以这个博客的所有内容都可以被引用!为了方便引用,博客中的图片没有添加博客的水印(除非不是你自己的或看不到的)!
  • 如果你觉得自己的基础知识薄弱,可以去 《牛客刷题》 和 《HDLbits》巩固练习;如有不懂的题目,也可参考文章《牛客刷》verilog》Part I Verilog快速入门 和 verilog练习:hdlbits完成网站系列!

单选

1. 7nm工艺中的7nm指的是()

  • 芯片中最小晶体管的源极宽度.
  • 芯片中最小单元的沟长
  • 芯片中最小晶体管的源长度
  • 芯片中最小单元的源极宽度

7nm 工艺到底是什么意思?

这个内容需要补充好,上面的链接没有明确指出? 在这里插入图片描述

2.

3. 以下哪项检查不属于版图物理验证:

  • LVS
  • STA
  • DRC
  • ESD

解析:

  • 地图的物理验证

地图的物理验证主要包括 DRC, ERC( 检查电气规则 ) 和 LVS 三种方法。 DRC表示设计规则检查, 是 Design Rule Checking 的缩写, LVS 是 Layout Versus Schematic 的缩写, ERC 是 Electrical Rule Checking。DRC 用于检查符合工艺规则要求的几何图形, 在工艺线上生产芯片; LVS 比较设计得到的地图和逻辑网表, 检查各设备的尺寸和连接关系是否完全一致; ERC 主要是检查地图能(如衬底是否正确连接电源或地面, 无栅极悬空等))。 以保证各器件能正常工作。

4. 判断以下两段代码是否正确

  • 第1段:

  • 第2段:

解析: 题目迷人,逻辑补充如下:

class base;     // string name;     //...  endclass  class sub extends base;     // string name;     //··· endclass  //second program second;     base bc;     sub sc1;     sub sc2 = new();     initial begin         bc = sc2;         $cast(sc1,bc);     end endprogram   //first program first;     base bc = new();     sub sc;     initial begin         sc = bc;     end endprogram 

编译结果如下:

  • 我个人的理解是,不建议将父类指针指向子类对象。
  • 但如果你使用类似的c 强制类型转换也会报错,注意思考second和first的区别

5. 程序控制指令在指令系统中的功能是

  • 实现程序执行顺序的变更
  • 实现算数和逻辑操作
  • 实现主存于cPU数据传输之间
  • 实现堆栈操作

解析

程序控制指令在指令系统中的功能是

6. 以下因素不会影响静态时序分析cell的delay?

  • output load
  • ocv derate
  • input transition
  • clock uncertaint

解析:

以下因素不会影响静态时序分析cell的delay?

7. Choose the correct equation for power calculation()

  • Ptotal=Pleakage Pinternal Pswitching.
  • Ptotal=Pinternal Pdynamic.
  • Ptotal=Pstatic Pdynamic.
  • Ptotal=Pleakage Pswitching.

解析:

功耗=静态功耗 动态功耗

8. 用于进程间通信的共享内存可以创建哪种函数:

void *mmap(void *addr, size_t length, int prot, int flags,int fd, off_t offset);
void *dlopen(const char *filename, int flags);
int shm_open(const char *name, int oflag, mode_t mode);
FILE *fopen(const char *pathname, const char *mode);

解析

  • 可以参考Linux系统编程
  • 也可以使用man手册查询
  • 要是记得没错就是shm_族函数

9. Below CMOS is presenting

  • OR gate
  • NAND gate
  • AND gate
  • NOR gate

10.处理器性能优化的终极目标是什么?( )

推高处理器外部数据搬运性能达到IO带宽峰值 推高处理器内部计算核心主频,提升峰值算力 推高处理器内部数据搬运性能达到IO带宽峰值 解绑处理器内部计算核心数据存取需求,推高平均算力

多选

1.

2.

3.

4.

5. Please select correct statements for below 2 types of design (multiple answer)

design in left has less area than design in right design in left has bigger dynamic power than design in right design in left has less static power than design in right design in left has bigger static power than design in right design in left has bigger area than design in right design in left has less dynamic power than design in right

6. Coverage is usually used to evaluate the verification qualty, please identify all code coverage related items from following options.()

Function coverage. state coverage. Toggle coverage . condition coverage. Branch coverage. FSM coverage. Expression coverage.

解析:

  • 覆盖率一般有:代码覆盖率、功能覆盖率、漏洞率、断言覆盖率
  • 题目问的是代码覆盖率,可以明显的排除掉功能(function)覆盖率??????
  • 代码覆盖率工具通常使用一个或多个标准来确定你的代码在被自动化测试后是否得到了执行,常见的覆盖率报告中看到的指标包括: 函数覆盖率:定义的函数中有多少被调用 语句覆盖率:程序中的语句有多少被执行 分支覆盖率:有多少控制结构的分支(例如if语句)被执行 条件覆盖率:有多少布尔子表达式被测试为真值和假值 行覆盖率:有多少行的源代码被测试过

7. 未来Al处理器的演进有可能走如下哪些方向?()

异构计算 同等算力,更低的功耗 更高主频的计算核心 更大的片间互联吞吐量,更小的片间通信延迟

解析

CPU未来会朝什么方向发展? 提升单线程性能; 加入新指令; 增加核心数量; 集成专用单元。

  • 都成年人了,出这种选择题有什么意义。言之有理不可以吗?如果用上了量子计算机,主频是不是就能提高了?

填空

在system verilog中,存在fork-join,fork-join_any和fork-join_none三种并行语句块的执行方式。

解析:

fork-join挺好用的了,fork-join_any、fork-join_none有什么用?

在Verilog中我们对线程(即独立运行的程序,分为父线程和子线程)的使用有:

1、begin–end块 (顺序执行)

2、fork----join块 (并行执行)

而在SV中又增加了两种新的创建线程的方法:

1、fork join_any:只要有一个子线程优先完成就跳出fork join_any块,执行父线程。

2、fork join_none:直接跳出fork join_none块,执行父线程。

介于大家都对此有一定了解程度,那我就直接说重点:

1、fork join_any和fork join_none影响的都是父线程的执行

2、delay的优先级最高,所有顺序都是按照时序执行。只有当delay相同时才会显现出fork join_any和fork join_none的区别,才会遵守上文所说规则

后记

  • 欢迎转载做题!
  • 推荐大家去 《牛客刷题》 刷题学习,保持对verilog的熟练度!

标签: 2sc3751晶体管2sc47晶体管2sc3595晶体管2sc6082晶体管2sc736晶体管

锐单商城拥有海量元器件数据手册IC替代型号,打造 电子元器件IC百科大全!

锐单商城 - 一站式电子元器件采购平台