华为海思校园招聘-芯片-数字 IC 方向 题目分享——第五套

本文主要是介绍华为海思校园招聘-芯片-数字 IC 方向 题目分享——第五套,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

华为海思校园招聘-芯片-数字 IC 方向 题目分享——第五套

(共9套,有答案和解析,答案非官方,仅供参考)(共九套,每套四十个选择题)

部分题目分享,完整版获取(WX:didadidadidida313,加我备注:CSDN huawei数字芯片题目,谢绝白嫖哈)

在这里插入图片描述

在这里插入图片描述

华为海思校园招聘-芯片-数字 IC 方向
(第五套)
1、下列选项中( ) 不是 veriog HDL 的关键字。( )
A. tri
B. for
C. force
D. edge
解析:
tri、for 和 force 都是 Verilog HDL 的关键字,而 edge 不是。这些关键字的作用如下:
tri:用于定义三态门,如 trior、trior、tristate 等。
for:用于编写循环语句,如 for loop、foreach loop 等。
force:用于在仿真过程中设置某个信号的值,可用于调试设计。
edge:虽然不是关键字,但是在 Verilog HDL 中常被用作系统任务,在时序描述中表示起始
边缘或终止边缘,如 posedge、negedge 等。
2、一个 16 选 1 的 onehot 数据选择器,其地址输入(选择控制输入)端有几个( )
A. 1
B.16
C.4
D.2
解析:
一个 16 选 1 的 onehot 数据选择器,其地址输入端应该有 16 个,对应 16 种可能的数
据输入。每个地址输入的值应表示一个唯一的地址,且这些地址只能有一个为高电平(即
onehot 编码)。因此,正确的答案是 A 选项,即有 1 个地址输入端。
3、下面这段代码,vld 为 0,data_i 在翻转时,乘法器不产生动态功耗:( )
注:这里原题中 if 块就没有赋值语句
A.正确
B.错误
解析:
在 vld 为 0 时,根据代码,乘法器还是会执行,此时的输入会被看做是零,输出也为零。因
此,即使 vld 为零,乘法器仍会产生动态功耗。
正确的代码应该使用一个逻辑门来控制乘法器,如下所示:
这样,在 vld 为零时,乘法器不会被激活,输出将保持为零,从而避免动态功耗的产生。
4、下列说法正确的是( )
A.reg 变量一定被综合为寄存器
B.always 块一定是用来描述时序逻辑的
C.变量类型定义为 memory 类型只能使用 always 进行赋值
D.变量类型定义为 memory 类型可以使用 assign 进行赋值
解析:
A. reg 变量一定被综合为寄存器是正确的。
在 Verilog 中,reg 声明的变量在综合时通常被翻译为寄存器(RG)。这是因为 reg 变量只能被
赋值,没有输出,只能在 always 块中被操作。因此,在综合时,reg 对应的硬件元件就是寄
存器。
B. always 块一定是用来描述时序逻辑的是不正确的。
always 块可以用来描述时序逻辑,也可以用来描述组合逻辑。always 块中的代码可以根据不
同的敏感信号(posedge、negedge、level)触发更新,实现时序逻辑;也可以在逻辑内部进行
组合逻辑的操作,根据输入信号得到输出信号。
C. 变量类型定义为 memory 类型只能使用 always 进行赋值是正确的。
在 Verilog 中,memory 是一种多位数据类型,通常用于描述类似于 RAM 的组合逻辑电路。
memory 类型的变量只能使用 always 块来进行操作,无法使用 assign 来赋值。
D. 变量类型定义为 memory 类型可以使用 assign 进行赋值是不正确的。
memory 类型的变量只能使用 always 块来进行赋值,不能使用 assign。assign 是用于描述组
合逻辑的关键字,而 memory 类型的变量是一种综合成组合逻辑的多位数据类型,不能直接
用于 assign 赋值。
5、描述时序逻辑时,只有 if 条件分支没有 else 分支有助于综合(Desgn Compile,DC)自动插
icg ( )
A.正确
B.错误
解析:
A. 不正确。Verilog 中的 reg 变量可以被综合为寄存器或者组合逻辑。综合工具会根据代码
逻辑和综合规则决定 reg 变量被综合为何种逻辑。
C. 不正确。Verilog 中的 memory 类型的变量需要使用 initial 或者 always 块进行赋值,其
中 initial 块是用来初始化存储器中的数据, always 块则可以用来描述存储器的时序逻辑。
D. 不正确。Verilog 中的 memory 类型的变量不能使用 assign 进行赋值,只能使用 initial
块或者 always 块。
因此,正确的选项是 B。always 块主要是用来描述时序逻辑的。
6、以下逻辑正确( )
A.正确
B.错误
解析:
这段代码存在语法错误和逻辑错误。正确的 Verilog HDL 代码应该类似于下面的形式:
其中:
 首先定义了一个名为 HIGH_PRI 的参数,并将其赋值为 0。
 使用 if‐else 结构进行条件判断:
o 如果 HIGH_PRI 的值为 1,则将 o 的值设置为 c 的值。
o 如果 HIGH_PRI 的值不为 1,则将 a 的值设为 b 的值。
7、将逻辑通过 CLK Gate 方式引入 CK 路径中,可以减少 D 端逻辑的路径时延( )
A 正确
B.错误
解析:
将逻辑通过 CLK Gate 的方式引入时钟路径中,可以在时钟信号到达寄存器 D 端之前,关
闭时钟信号,从而减少 D 端逻辑的路径时延,减小时钟抖动以及减少功耗。
当时钟信号到达时钟栅门时,如果 CLK Gate 处于关闭状态,则时钟信号被阻断,在时钟信
号到达寄存器的 D 端之前,数据输入信号不能进入寄存器,以此减少逻辑路径的时间延迟。
因此,将逻辑通过 CLK Gate 的方式引入 CK 路径中,可以减少 D 端逻辑的路径时延,同
时还可以减小时钟抖动和功耗。
8、I2C 器件中,7bit 模式的器件和 10bit 地址模式的器件,可以连接到同一个 2C 总线中?( )
A.正确
B.错误
解析:
I2C 总线支持 7 位和 10 位寻址模式。7 位寻址模式提供 128 个地址,而 10 位寻址模式
提供 1024 个地址。I2C 总线允许同时连接 7 个 7 位寻址模式的器件,和 1024 个 10 位
寻址模式的器件。因此,7 位模式的器件和 10 位地址模式的器件可以连接到同一个 I2C 总
线中,且不会有冲突。
需要注意的是,连接多个器件到 I2C 总线中需要非常小心,因为总线上的信号是共享的,
在不合理的设计或错误的连接方式下,可能会导致总线的电气特性失衡,而导致系统故障。
9、下面代码 c、b 信号每个时钟周期都相同( )
A.正确
B.错误
解析:
根据 Verilog HDL 中的信号赋值规则,在一个时钟上升沿到来时,always 块中的代码会被并
行执行。这意味着在一个时钟周期内,always 块中的所有语句都会被执行完成。在本例中,
always 块在上升沿时被执行,将 b 的值设置为 a 的值,然后再将 c 的值设置为 b 的值。因此,
指导下一个上升沿到来,c 和 b 的值都不会发生变化,且在每个时钟周期中,b 和 c 的值都相
同。

这篇关于华为海思校园招聘-芯片-数字 IC 方向 题目分享——第五套的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/913619

相关文章

Python虚拟环境与Conda使用指南分享

《Python虚拟环境与Conda使用指南分享》:本文主要介绍Python虚拟环境与Conda使用指南,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录一、python 虚拟环境概述1.1 什么是虚拟环境1.2 为什么需要虚拟环境二、Python 内置的虚拟环境工具

华为鸿蒙HarmonyOS 5.1官宣7月开启升级! 首批支持名单公布

《华为鸿蒙HarmonyOS5.1官宣7月开启升级!首批支持名单公布》在刚刚结束的华为Pura80系列及全场景新品发布会上,除了众多新品的发布,还有一个消息也点燃了所有鸿蒙用户的期待,那就是Ha... 在今日的华为 Pura 80 系列及全场景新品发布会上,华为宣布鸿蒙 HarmonyOS 5.1 将于 7

Python处理大量Excel文件的十个技巧分享

《Python处理大量Excel文件的十个技巧分享》每天被大量Excel文件折磨的你看过来!这是一份Python程序员整理的实用技巧,不说废话,直接上干货,文章通过代码示例讲解的非常详细,需要的朋友可... 目录一、批量读取多个Excel文件二、选择性读取工作表和列三、自动调整格式和样式四、智能数据清洗五、

JDK9到JDK21中值得掌握的29个实用特性分享

《JDK9到JDK21中值得掌握的29个实用特性分享》Java的演进节奏从JDK9开始显著加快,每半年一个新版本的发布节奏为Java带来了大量的新特性,本文整理了29个JDK9到JDK21中值得掌握的... 目录JDK 9 模块化与API增强1. 集合工厂方法:一行代码创建不可变集合2. 私有接口方法:接口

电脑系统Hosts文件原理和应用分享

《电脑系统Hosts文件原理和应用分享》Hosts是一个没有扩展名的系统文件,当用户在浏览器中输入一个需要登录的网址时,系统会首先自动从Hosts文件中寻找对应的IP地址,一旦找到,系统会立即打开对应... Hosts是一个没有扩展名的系统文件,可以用记事本等工具打开,其作用就是将一些常用的网址域名与其对应

SpringBoot请求参数接收控制指南分享

《SpringBoot请求参数接收控制指南分享》:本文主要介绍SpringBoot请求参数接收控制指南,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring Boot 请求参数接收控制指南1. 概述2. 有注解时参数接收方式对比3. 无注解时接收参数默认位置

Python实现特殊字符判断并去掉非字母和数字的特殊字符

《Python实现特殊字符判断并去掉非字母和数字的特殊字符》在Python中,可以通过多种方法来判断字符串中是否包含非字母、数字的特殊字符,并将这些特殊字符去掉,本文为大家整理了一些常用的,希望对大家... 目录1. 使用正则表达式判断字符串中是否包含特殊字符去掉字符串中的特殊字符2. 使用 str.isa

售价599元起! 华为路由器X1/Pro发布 配置与区别一览

《售价599元起!华为路由器X1/Pro发布配置与区别一览》华为路由器X1/Pro发布,有朋友留言问华为路由X1和X1Pro怎么选择,关于这个问题,本期图文将对这二款路由器做了期参数对比,大家看... 华为路由 X1 系列已经正式发布并开启预售,将在 4 月 25 日 10:08 正式开售,两款产品分别为华

Python通过模块化开发优化代码的技巧分享

《Python通过模块化开发优化代码的技巧分享》模块化开发就是把代码拆成一个个“零件”,该封装封装,该拆分拆分,下面小编就来和大家简单聊聊python如何用模块化开发进行代码优化吧... 目录什么是模块化开发如何拆分代码改进版:拆分成模块让模块更强大:使用 __init__.py你一定会遇到的问题模www.

使用PyTorch实现手写数字识别功能

《使用PyTorch实现手写数字识别功能》在人工智能的世界里,计算机视觉是最具魅力的领域之一,通过PyTorch这一强大的深度学习框架,我们将在经典的MNIST数据集上,见证一个神经网络从零开始学会识... 目录当计算机学会“看”数字搭建开发环境MNIST数据集解析1. 认识手写数字数据库2. 数据预处理的