1.6 中兴求职攻略-2024理工科版本

1.6.1 校园招聘时间流程

网申

机考

面试

offer

5月-7月

5月-7月

5月-7月

7月-8月

1.6.2 薪资爆料

岗位

地点

学历

薪资范围(年薪)

数字IC

深圳

硕士985

20~25k*12

数字IC

成都

硕士985

17~18k*12

数字IC

南京

硕士985

15~20k*12

数字IC

深圳

本科

16K

IC开发

成都

硕士

15~17k*12

IC开发

长沙

硕士985

17~18k*12

IC开发

西安

硕士211

16~18k*12

硬件开发

南京

硕士211

16~18k*12

硬件开发

武汉

硕士985

13~15k*12

硬件开发

上海

硕士985

15~19k*12

嵌入式软开

上海

硕士985

21.5K*12

嵌入式软开

深圳

本科

14~18k*12

嵌入式软开

南京

硕士211

16.5~17k*12

嵌入式软开

武汉

硕士211

14.5~16k*12

  • 数据来源 牛客用户,更多详细信息可到牛客查询

1.6.3 面试真题

硬件工程师

1、介绍一下你的项目,大体框架,主控芯片

【解题思路】

我曾经参与开发了一个基于STM32F4主控芯片的智能家居系统。

这个系统的主要功能是对家庭中的多个智能设备进行集中管理和控制,包括灯光、温度、音响等等。我们通过一个Web界面实现了对这些设备的远程控制和状态监测,用户可以通过手机、平板电脑等设备方便地进行操作。

在硬件方面,我们使用了STM32F4主控芯片作为系统的核心控制器,实现了各种传感器的数据采集和处理,同时利用其丰富的外设接口,如UART、SPI、I2C等,实现了与外部设备的通信和控制。

在软件方面,我们使用了基于FreeRTOS的嵌入式操作系统,通过多任务调度实现了系统的各项功能。同时,我们还采用了TCP/IP协议栈,实现了对外部网络的连接和数据传输。

总的来说,这个项目的框架非常清晰,我们通过STM32F4主控芯片作为核心控制器,实现了对各种智能设备的集中管理和控制,并通过Web界面和TCP/IP协议栈,实现了对外部网络的连接和数据传输。该项目在实现的过程中,我负责了硬件的设计和调试,以及部分软件模块的开发和测试。

2、示波器熟悉吗?用过多大带宽的?  怎么测晶振频率? (x10) 

【解题思路】

示波器是硬件工程师常用的测试工具之一,用于显示电信号的波形和特征。我熟悉示波器的基本操作和使用方法,并且有使用示波器的经验。

我使用过不同带宽的示波器,最高带宽是1GHz的示波器。通常在使用示波器时,需要根据被测试的信号特性和要求选择合适的示波器带宽。

要测量晶振的频率,可以使用示波器和测试夹具。首先将晶振引脚接到测试夹具上,然后使用示波器测量引脚的电压波形。根据晶振的输出波形,可以计算出其频率。另外,也可以使用频率计或逻辑分析仪等工具来测量晶振的频率。

3、示波器测方波和正弦波是一样的吗? 

【解题思路】

示波器测量方波和正弦波的方法是不同的。方波是一个由高电平和低电平构成的矩形波形,它的上升沿和下降沿都是非常陡峭的,而且它包含了很多高频分量。因此,在示波器上测量方波时,需要使用较高的带宽和采样率,以捕获这些高频分量,并且需要注意校准示波器,以确保正确地测量方波的上升沿和下降沿的时间。

相比之下,正弦波是一个光滑的波形,它的频率和幅值通常比方波低,因此测量正弦波需要的带宽和采样率相对较低。此外,测量正弦波时需要注意信号的参考电位和地,以避免误差。

因此,测量方波和正弦波需要不同的示波器设置和技巧,需要根据波形的特点和需要选择不同的测量方法。

4、测一个20Mhz的方波需要多大的带宽?

【解题思路】

为了准确地测量一个20MHz的方波,需要一个至少具有40MHz带宽的示波器。因为示波器的带宽越宽,它的能力就越强,能够显示高频信号和快速变化的信号的细节。此外,示波器的垂直分辨率也很重要,因为它决定了示波器能够分辨的信号幅度的最小变化。

5、代码能力怎么样?实时系统做过吗?数字逻辑设计了解多少?

【解题思路】

对于硬件工程师岗位,对代码能力的要求不同于纯软件工程师,主要关注对硬件编程语言(如VHDL、Verilog等)的熟练程度以及对数字逻辑的掌握程度。

我对硬件编程语言的熟练程度为:

VHDL: 了解并且可以独立编写中等难度的代码;

Verilog: 熟练使用,能够独立完成复杂模块的设计;

SystemVerilog: 有一定的了解,但是不够熟练。

我对数字逻辑的掌握程度为:

理论知识:具备较好的理论知识,如逻辑门、布尔代数、Karnaugh图等;

实践经验:曾经在校期间完成过数字电路的实验,包括基本门电路的设计和组合逻辑电路的设计。

至于实时系统的经验,我曾经在校期间学习过实时系统的理论,并且在课程设计中完成了一个基于STM32的实时系统设计。在这个项目中,我使用Keil C编写了嵌入式程序,并且实现了多任务调度和实时控制。

6、IIC起始条件是什么? IIc数据第七个bit是什么?

【解题思路】

I2C是一种串行通信协议,用于在芯片之间传输数据。其起始条件是:在SCL为高电平时,SDA的电平由高变为低。而数据的第七个bit是一个标志位,表示接收器是否已经准备好接收更多的数据,如果该位为0,则表示接收器仍然准备好接收数据,如果该位为1,则表示接收器不准备好接收更多的数据。该标志位也被称为应答位。

7、平时遇到困难压力怎么解决处理的

【解题思路】

作为一个硬件工程师,面对问题和困难是难以避免的。我通常采用以下几种方式来解决和处理困难和压力:

分析问题:首先,我会尝试深入分析问题的本质和根源,找出问题所在。这有助于我更好地了解问题并制定解决方案。

研究解决方案:我通常会调研一些相关的技术和文献,以了解其他人如何解决类似的问题。同时,我也会和同事和其他专家交流,汲取他们的经验和建议。

制定计划:一旦我找到了问题的本质和根源,我就会制定一个详细的计划来解决问题。这包括分配任务、制定时间表和制定目标等。

实施计划:一旦我制定了计划,我会尽快开始实施,根据计划一步一步地解决问题。如果遇到了困难,我会及时调整计划并寻求帮助。

自我调节:在处理压力时,我会积极寻找方法来放松自己,如运动、冥想或阅读等。我相信保持良好的心态和积极的态度,对解决问题和处理压力非常重要。

FPGA工程师

1、请介绍一下你的项目?

【解题思路】

在这个岗位上,我曾经参与过一项基于FPGA的音频处理器设计项目。以下是一些项目的简介和细节:

项目背景:我们的客户是一个音频设备制造商,需要开发一个高效的数字信号处理器来处理他们的音频数据。

设计目标:我们的目标是设计一个基于FPGA的音频处理器,能够实现低延迟、高精度、低功耗和高效能的数字信号处理,同时具有灵活性和可扩展性。

系统架构:我们采用了Xilinx公司的FPGA器件,并使用Verilog和VHDL语言进行开发。我们的处理器具有多通道、多输入和多输出的特性,并集成了各种算法,例如FFT、FIR滤波、IIR滤波和自适应滤波等。同时,我们还设计了一个嵌入式处理器来控制数据流的处理和管理。

成果和收获:我们的项目成功实现了客户的需求,并得到了高度评价。我在这个项目中学习到了很多关于FPGA的知识和技能,例如FPGA体系结构、信号处理算法、FPGA编程语言、时序分析和布线优化等。

2、请说一下项目中间遇到的难点和关键技术 以及如何解决收获哪些东西?

【解题思路】

在我参与的某个FPGA项目中,遇到了几个难点和关键技术,我将它们列举如下:

高速信号的传输和时序关系:在项目中,需要实现高速信号的传输,并保证其时序关系正确。这需要精确计算传输时间和延迟,并且需要使用PLL和FIFO等技术来缓冲和调整时序。解决该问题需要深入理解FPGA的时序分析和时钟域等知识,并进行仿真和验证。

大规模逻辑的设计和优化:项目中需要实现大规模逻辑电路的设计,包括多个模块和复杂的控制逻辑。在该过程中,需要对逻辑进行优化,使其满足FPGA资源和时序的限制,并进行综合和布局布线。解决该问题需要熟悉FPGA架构和工具链,并具有设计和优化大规模逻辑的能力。

多时钟域的设计和管理:项目中需要实现多个时钟域的设计,并管理时钟域之间的时序关系。这需要使用FPGA中的时钟管理IP和时钟域转换技术,并进行时序约束和时钟域分析。解决该问题需要深入理解时钟域和时钟管理的知识,并进行时钟域分析和优化。

在解决这些难点和关键技术的过程中,我学到了很多关于FPGA设计和优化的经验和技巧。例如,对于高速信号传输,我学会了使用PLL和FIFO来调整时序,并进行仿真和验证来保证正确性;对于大规模逻辑设计,我学会了使用状态机和流水线来优化逻辑,并进行综合和布局布线来满足资源和时序的限制;对于多时钟域的设计和管理,我学会了使用时钟管理IP和时钟域转换技术,并进行时钟域分析和优化来确保正确性和性能。这些经验和技巧对我的FPGA设计和优化能力有很大的提升,也为我在未来的FPGA项目中提供了很好的指导。

3、请介绍一下协议相关的知识,主要就是时序图怎么看的?

【解题思路】

协议相关的知识是 FPGA 工程师需要掌握的基本技能之一,通常包括以下几个方面:

协议概述:要了解协议的应用场景,主要特点以及协议的作用等等。

协议数据格式:要熟悉协议中的各种数据格式,如帧头、帧尾、数据域等等。

时序图:时序图是协议的重要表示方式,可以直观地表现出协议的时序关系。当读取时序图时,首先要了解协议的控制信号和数据信号,以及它们在时序图上的时序关系。

协议状态机:协议状态机可以用于表示协议的状态转换,也可以用于生成 Verilog HDL 代码。当了解协议状态机时,需要熟悉协议中各种状态的含义以及状态之间的转换条件。

关于如何阅读时序图,主要包括以下几个方面:

了解信号含义:首先要了解协议中各个信号的含义,以及它们在时序图上的位置。

分析时序关系:可以通过观察时序图上的箭头来了解信号之间的时序关系,例如哪个信号在哪个信号的前面或后面。

分析信号变化:可以通过观察时序图上的波形来了解信号的变化过程,例如在哪个时刻信号发生了变化,变化的方式是什么等等。

确定信号作用:最后可以通过分析时序图来确定各个信号的作用,以及信号之间的关系,从而更好地理解协议的工作原理。

4、你3-5年有什么规划?

【解题思路】

作为一名FPGA工程师,我希望在未来的3-5年内,能够不断提升自己的技术水平和工作能力,实现个人职业发展的目标。

首先,我会继续学习和掌握更多的FPGA技术,包括新的器件和开发工具,以及各种不同的设计方法和技巧。这样可以让我更好地应对不同的项目和客户需求,提供更加优秀的解决方案。

其次,我希望能够扩展我的团队合作能力,加强与同事和其他部门的沟通和协作,从而更好地实现项目的目标和客户的需求。同时,我也会注重个人的沟通和领导能力的提升,以更好地推动团队和组织的发展。

最后,我也会关注行业的最新趋势和发展动态,参加各种技术交流和培训活动,不断了解和掌握最新的技术和工具,以保持在行业中的竞争力和领先优势。

5、什么是阻塞赋值和非阻塞赋值

【解题思路】

阻塞赋值和非阻塞赋值是Verilog HDL中两种不同的信号赋值方式。

阻塞赋值使用"="符号进行赋值,表示在进行信号赋值时会等待该语句执行完毕才会执行下一条语句,类似于顺序执行。例如:

 always@(posedge clk) 
     begin
     a = b; //阻塞赋值 
     c = a; 
end

在这个例子中,a被赋值为b,而在赋值完成之后,才会执行下一条语句将a的值赋给c。

非阻塞赋值使用"<="符号进行赋值,表示在进行信号赋值时不会等待该语句执行完毕,而是在该时钟周期结束后立即进行赋值,类似于并行执行。例如: always@(posedge clk) begin a <= b; //非阻塞赋值 c <= a; end 在这个例子中,a被赋值为b,在同一时钟周期内,c的值也被赋为a的值,而不会等待a的赋值语句执行完毕。因此,非阻塞赋值可以用于描述时序逻辑,同时避免了竞争条件的出现。

6、什么是建立时间和保持时间画图表示,哪个可能是零

【解题思路】

建立时间(setup time)和保持时间(hold time)是数字电路中的时序约束。建立时间指的是输入信号在时钟信号到来之前必须保持稳定的最短时间,保持时间指的是输入信号在时钟信号到来之后必须维持稳定的最短时间。时钟上升沿和下降沿的时间差也称为时钟周期。

以建立时间为例,可以用一个时序图来表示。其中输入信号在时钟上升沿到来之前必须保持稳定的时间为建立时间,也就是从输入信号变化到时钟上升沿到来之间的时间。

setup time waveform

保持时间同理,只不过是在时钟上升沿到来之后输入信号必须维持稳定的时间。

hold time waveform

通常情况下,建立时间和保持时间都不可能为零。但是在某些情况下,建立时间可能会比时钟周期更短,这时就称为负建立时间(negative setup time)。

7、图像处理中滤波模板的大小会有什么样的影响

【解题思路】

在图像处理中,滤波模板大小是一项重要参数,它会影响滤波器的性能和图像处理结果的质量。滤波模板是指在进行图像滤波时用到的一个二维矩阵,用来计算图像上每个像素周围的值。滤波模板的大小通常是奇数,如3×3、5×5等。当滤波模板大小变化时,会产生以下影响:

平滑度:滤波模板越大,平滑度越高,

剩余60%内容,订阅专栏后可继续查看/也可单篇购买

2024校招宝典——硬件版本 文章被收录于专栏

牛客独家出品,理工科求职必备攻略,适合岗位: 硬件、通信、电气、电子信息

全部评论

相关推荐

点赞 3 评论
分享
牛客网
牛客企业服务