当前位置:   article > 正文

Xilinx加法器IP核adder

加法器ip核

1.加法器IP核配置


2.adder_top.v代码

  1. `timescale 1ns / 1ps
  2. //
  3. // Company:
  4. // Engineer:
  5. //
  6. // Create Date: 10:20:30 07/19/2017
  7. // Design Name:
  8. // Module Name: adder_top
  9. // Project Name:
  10. // Target Devices:
  11. // Tool versions:
  12. // Description:
  13. //
  14. // Dependencies:
  15. //
  16. // Revision:
  17. // Revision 0.01 - File Created
  18. // Additional Comments:
  19. //
  20. //
  21. module adder_top(
  22. input clk,
  23. input [7:0] x1_in,
  24. input [7:0] x2_in,
  25. output [7:0] y_out
  26. );
  27. /*always@(posedge clk)
  28. begin
  29. y_out = x1_in + x2_in;
  30. end
  31. */
  32. //----------- Begin Cut here for INSTANTIATION Template ---// INST_TAG
  33. adder adder_instance (
  34. .a(x1_in), // input [7 : 0] a
  35. .b(x2_in), // input [7 : 0] b
  36. .clk(clk), // input clk
  37. .s(y_out) // output [7 : 0] s
  38. );
  39. // INST_TAG_END ------ End INSTANTIATION Template ---------
  40. endmodule

3.adder_top_tb.v代码

  1. `timescale 1ns / 1ps
  2. // Company:
  3. // Engineer:
  4. //
  5. // Create Date: 19:41:36 07/19/2017
  6. // Design Name: adder_top
  7. // Module Name: E:/LTE/project/S6CardXilinxFPGA/project_shgao/adder_demo/adder_top_tb.v
  8. // Project Name: adder_demo
  9. // Target Device:
  10. // Tool versions:
  11. // Description:
  12. //
  13. // Verilog Test Fixture created by ISE for module: adder_top
  14. //
  15. // Dependencies:
  16. //
  17. // Revision:
  18. // Revision 0.01 - File Created
  19. // Additional Comments:
  20. //
  21. module tb_test;
  22. // Inputs
  23. reg clk;
  24. reg [7:0] x1_in;
  25. reg [7:0] x2_in;
  26. // Outputs
  27. wire [7:0] y_out;
  28. // Instantiate the Unit Under Test (UUT)
  29. adder_top uut (
  30. .clk(clk),
  31. .x1_in(x1_in),
  32. .x2_in(x2_in),
  33. .y_out(y_out)
  34. );
  35. initial
  36. begin
  37. clk = 0;
  38. x1_in = 8'h1;
  39. x2_in = 8'h1;
  40. end
  41. always #5 clk = !clk;//clk
  42. always@(posedge clk)
  43. begin
  44. if(x1_in < 8'hff)
  45. x1_in = x1_in + 1;
  46. else
  47. x1_in = 0;
  48. if(x2_in < 8'hff)
  49. x2_in = x2_in + 1;
  50. else
  51. x2_in = 0;
  52. end
  53. endmodule

4.仿真图



注意在IP核配置时有个Latency选项,所以造成红框中的现象,在第105ns的上升沿时输出数据才发生变化。:http://www.cnblogs.com/youngforever/p/3141216.html

(1)输入数据与该数据经过处理后的结果输出之间的延时,是时钟延迟;
(2)一般以时钟为单位,指的是相对于某个时钟起始位置的1个或多个时钟后数据才有效;
(3)决定信号处理的响应速度。


5.仿真时间设置


声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/知新_RL/article/detail/607794
推荐阅读
相关标签
  

闽ICP备14008679号