/dvbt/trunk/debug/subblocks/csee_old/csee_block_tb.v

http://github.com/zaqwes8811/decoder-reed-solomon · Verilog · 91 lines · 43 code · 8 blank · 40 comment · 0 complexity · a4d5429ffadabad91f46b1e66678f78b MD5 · raw file

  1. /*
  2. File : csee_block_tb.v (cseeblock.v)
  3. Author : Lugansky Igor
  4. Date : 4/03/11
  5. Version : 0.1
  6. Abstract : ??????????? - ??????? ?????? ? ?????? ?????????
  7. ????? ???????????? ?????, ? ????? ??????????? ??
  8. ????????????, ??? ??????? ??? ???????? ??????????????
  9. ????????: "High-Speed Low-Complexity Reed-Solomon Decoder
  10. using Pipelined Berlekamp-Massey Algorithm and Its
  11. Folded Architecture"
  12. Jeong-In Park, Kihoon Lee, Chang-Seok Choi, and Hanho Lee
  13. Modification History:
  14. Date By Version Change Description
  15. */
  16. `timescale 1 ns / 100 ps
  17. `include "vconst.v"
  18. module csee_block_tb;
  19. reg [`WIDTH*(`ST+1)-1:0] plambda; // ??????????? ?????????? ????????
  20. reg [`WIDTH*(`ST)-1:0] phomega;
  21. reg clk, rst;
  22. reg signal_2;
  23. // output
  24. wire [`WIDTH-1:0] lam_value;
  25. wire [`WIDTH-1:0] xderx_value;
  26. wire [`WIDTH-1:0] ome_value;
  27. wire [`WIDTH-1:0] pow_add_value;
  28. //
  29. integer i;
  30. /*
  31. csee_block_rtl label_1(
  32. .rst(rst), .clk(clk), .clk_ena('b1),
  33. .active_csee(active_csee),
  34. .plambda(plambda), .phomega(phomega),
  35. // ????? ???? ?? ???????????
  36. .signal_2(signal_2),
  37. .lam_value(lam_value),
  38. .xderx_value(xderx_value),
  39. .ome_value(ome_value),
  40. .pow_add_value(pow_add_value));
  41. //*/
  42. ///*
  43. csee_block_rtl csee_label(
  44. .rst(rst), .clk(clk), .clk_ena('b1),
  45. // control ///
  46. .signal_2(signal_2),
  47. .active_csee(1),
  48. // dataflow ///
  49. // in
  50. .plambda(plambda), .phomega(phomega),
  51. // out
  52. .lam_value(lam_value),
  53. .xderx_value(xderx_value),
  54. .ome_value(ome_value),
  55. .pow_add_value(pow_add_value)
  56. ); //*/
  57. // logic //////
  58. initial
  59. begin
  60. phomega = {8'd66, 8'd157, 8'd56, 8'd57,
  61. 8'd56, 8'd135, 8'd85, 8'd91};
  62. plambda = {8'd22, 8'd21, 8'd150, 8'd202, // 255 39 [0(5)..2_1(end)]
  63. 8'd133, 8'd17, 8'd250, 8'd7, 8'd54};
  64. // control ////
  65. clk = 'b0; rst = 0;
  66. i = 0; // ????? ????? ????? ?????
  67. #0; rst = 1; #5; rst = 0;
  68. end
  69. initial
  70. begin
  71. signal_2 = 0;
  72. #0; signal_2 = 1; #70; signal_2 = 0;
  73. end
  74. // ???????? ??????
  75. always #50 clk = ~clk;
  76. // ??????? ?? ?????
  77. always @(posedge clk)
  78. begin
  79. i = i+1;
  80. end
  81. endmodule