IC/FPGA校招笔试题分析(一)

举报
李锐博恩 发表于 2021/07/15 02:12:32 2021/07/15
【摘要】 某发科的一个题目,仅仅给出下面一个电路图,让你画出Q1,Q2以及Q3的波形,并描述电路功能。 可以看出,这个电路很简单(可tm的当时就是没做出来),我当时疑惑的是初值是什么,输入初值是什么? 可想想和输入初值有个毛线关系呀,第一个触发器的输入是第二个以及第三个触发器的输出的反馈,是Q1与Q2的或非; 只要触发器复位有初值即可,一般触发器复位初值为0,这里也默认为0,...

某发科的一个题目,仅仅给出下面一个电路图,让你画出Q1,Q2以及Q3的波形,并描述电路功能。

可以看出,这个电路很简单(可tm的当时就是没做出来),我当时疑惑的是初值是什么,输入初值是什么?

可想想和输入初值有个毛线关系呀,第一个触发器的输入是第二个以及第三个触发器的输出的反馈,是Q1与Q2的或非;

只要触发器复位有初值即可,一般触发器复位初值为0,这里也默认为0,那么输入值在复位时应该为1.

那么当正常运行(复位无效)时,q0的第一个值为复位值延迟一拍并持续一个时钟,之后q1、q2就简单了。

为了清晰的分析这个问题,我们把这个电路用Verilog描述出来,之后验证。


  
  1. `timescale 1ns / 1ps
  2. //
  3. // Company:
  4. // Engineer: reborn lee
  5. //
  6. // Create Date: 2019/07/24 19:57:47
  7. // Design Name:
  8. // Module Name: test
  9. //
  10. module test(
  11. input rst_n,
  12. input clk,
  13. output out2
  14. );
  15. wire in1;
  16. reg q0, q1, q2;
  17. always@(posedge clk or negedge rst_n) begin
  18. if(!rst_n) begin
  19. q0 <= 1'b0;
  20. q1 <= 1'b0;
  21. q2 <= 1'b0;
  22. end
  23. else begin
  24. q0 <= in1;
  25. q1 <= q0;
  26. q2 <= q1;
  27. end
  28. end
  29. assign in1 = !q0 & !q1;
  30. assign out2 = q2;
  31. endmodule

 

生成对应的RTL原理图:

可见,和题目所给的电路图几乎一致。

在仿真验证:


  
  1. `timescale 1ns / 1ps
  2. //
  3. // Company:
  4. // Engineer: reborn lee
  5. //
  6. // Create Date: 2019/07/24 20:19:38
  7. // Design Name:
  8. // Module Name: sim_test
  9. //
  10. module sim_test(
  11. );
  12. reg clk;
  13. reg rst_n;
  14. wire out2;
  15. initial begin
  16. clk = 0;
  17. forever
  18. #2 clk = ~clk;
  19. end
  20. initial begin
  21. rst_n = 1'b0;
  22. #5
  23. rst_n = 1'b1;
  24. end
  25. test test_tb(
  26. .rst_n(rst_n),
  27. .clk(clk),
  28. .out2(out2)
  29. );
  30. endmodule

观察波形图,与我们分析的一致。

最后至于这个电路的功能?

这会是什么功能呢?我暂时不敢多说,欢迎评论,给出你的答案。

 

 

 

 

 

 

文章来源: reborn.blog.csdn.net,作者:李锐博恩,版权归原作者所有,如需转载,请联系作者。

原文链接:reborn.blog.csdn.net/article/details/97177293

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。