IC/FPGA大疆笔试题分析(预分析)

上午刚参加完一场面试,晚上又有大疆的FPGA笔试题要做,下午临时磨刀,找点往年的笔试题练练手:

1 如果只使用2选1mux完成异或逻辑,至少需要几个mux?

这类问题,我在以前的博客中练习过:https://blog.csdn.net/Reborn_Lee/article/details/89518120

至于思路,我在后面给出,先写出表达式,在根据表达式画出原理图:

可知,两个可以实现,一个肯定不行,那就是2个了。

以前见过和这个同类的题目有:

用多路选择器实现与门,或门等。

与门:        或门:

当然,不仅如此,还有反相器:

output = S ? 0 : 1;

缓冲器:

output = S ? 1 : 0;

至于上面所说的异或门,我们用表达式更容易表达清楚,通过表达式在画出原理图岂不更简单,例如:

output = A ? ( B ? 0 : 1) : (B ? 1 : 0) ;

写出这个表达式很简单,A为1的话,选第一个括号内的内容,对于第一个括号,B 为·1,考虑到异或运算,应该是0,否则为1.

如此分析即可。

根据此表达式,最可能画出的原理图是:

当然这肯定是对的,是不是最简的,就不一定了,下面分析B如果为0的话,第一个选择器输出为1,第二个选择器输出为0(等于B),这不就等效于第二个选择器可以用B本身代替,因此化简为:

当然还不止这些,还有一位全加器,这里就不说了,有了公式,都好办。

 

2 在对信号采样过程之前抗混滤波,其作用是什么?它选用何种滤波器?其截止频率如何确定?

根据奈奎斯特采样定律,对带宽有限的模拟信号进行采样,采样频率应该高于信号最高频率的2倍,否则会出现频谱混叠现象,这样就无法恢复出原始信号。

为解决频谱混叠问题,在对模拟信号进行采样前,需要采用低通滤波器进行滤波处理,滤波器的截止频率理论上为采样频率的一半,实际工程中可以更小一点,为:

截止频率(fc)= 采样频率(fz) / 2.56

3 将二输入的与非门当非门使用时,另一端的接法应该是

与非门:

任意一端为0,输出为1.

只有两端同为1时,输出为0;

而非门则,输入为0,输出为1,输入为1,输出为0.

根据此,可知,二输入与非门另一端接高电平,即可当成非门使用。

4 属于高速串行接口的是

  PCIE,USB,SPI,RapidIO;

参考链接:https://www.cnblogs.com/ylsm-kb/p/9281597.html

(abcd)

PCIE,USB,RapidIO是高速串行总线,我没意见,SPI我实在不太清楚,查了几个说法,百度:SPI是串行外设接口(Serial Peripheral Interface)的缩写,是一种高速的,全双工,同步的通信总线。

因此,也算是吧。

5 代码覆盖率

包括语句覆盖,判定覆盖,条件覆盖,路径覆盖;

6 速度优化、面积优化的措施

面积优化:

资源共享、串行化;

速度优化:

流水线、关键路径法,寄存器配平;

7 线与逻辑

线与逻辑是两个输出信号相连可以实现“与”的功能,可以用OC或OD门来实现,需要在输出端加一个上拉电阻

8 对于同步fifo,每100个cycle可以写入80个数据,每10个cycle可以读出8个数据,fifo的深度至少为?

写时钟频率 w_clk,
读时钟频率 r_clk,
写时钟周期里,每B个时钟周期会有A个数据写入FIFO
读时钟周期里,每Y个时钟周期会有X个数据读出FIFO
则,FIFO的最小深度是?

计算公式如下:

fifo_depth = burst_length - burst_length * X/Y * r_clk/w_clk

例举说明:
如果100个写时钟周期可以写入80个数据,10个读时钟可以读出8个数据。令wclk=rclk ,考虑背靠背(20个clk不发数据+80clk发数据+80clk发数据+20个clk不发数据的200个clk)代入公式可计算FIFO的深度
fifo_depth = 160-160X(80%)=160-128= 32

拓展:
如果令wclk=200mhz,改为100个wclk里写入40个,rclk=100mhz,10个rclk里读出8个。那么fifo深度为48
计算如下fifo_depth =80-80X(80%)X(100/200)=80-32=48

 

 

 

 

 

 

  • 15
    点赞
  • 105
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 10
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

李锐博恩

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

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

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

打赏作者

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

抵扣说明:

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

余额充值