Projektdaten für das ESY1B Praktikum im Sommersemester 2022
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Top.sv 1.7KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869
  1. `include "../fsm/Fsm.sv"
  2. `include "../Bus_if/Bus_if.sv"
  3. `include "../timer_port/timer_top.sv"
  4. `include "../spi_interface_radiant/spi_interface.sv"
  5. module Top(
  6. input wire clk,
  7. input wire rst,
  8. input wire endOfConv,
  9. output wire LEDg,
  10. output wire LEDr,
  11. output wire AlarmAmpel,
  12. output wire Alarm_R
  13. );
  14. // Bus (Interface)
  15. Bus_if bus(.clk(clk));
  16. // SPI Interface
  17. spi_interface_ports spi_bus(.clk(clk));
  18. // FSM
  19. Fsm fsm(
  20. .clk(clk),
  21. .inAlarmAmpel(bus.AlarmAmpel),
  22. .inDataValid(bus.DataValid),
  23. .inTasteAktiv(bus.TasteAktiv),
  24. .outAlarm_R(bus.Alarm_R),
  25. .outSendData(bus.SendData),
  26. .outTimerEN(bus.TimerEN)
  27. );
  28. // Parallelport
  29. parallelport parallelport1 (
  30. .inClk(clk),
  31. .inTimerMeas(bus.TimerMeas),
  32. .inEndOfConv(endOfConv),
  33. .inData(bus.Data),
  34. .outDataValid(bus.DataValid),
  35. .outData(bus.Data)
  36. );
  37. // FRAM-Controller
  38. // Timer
  39. timer timer1 (
  40. .inClk(clk),
  41. .inTaste(bus.Taste),
  42. .inEN(bus.TimerEN),
  43. .outReadTemp(bus.ReadTemp),
  44. .outTasteAktiv(bus.TasteAktiv)
  45. );
  46. // Ampelsteuerung
  47. led_top ampelsteuerung (
  48. .clk12M(clk),
  49. .rst(rst),
  50. .data_input(bus.Data),
  51. .data_valid(bus.DataValid),
  52. .RED(LEDr),
  53. .GRN(LEDg),
  54. .alarm(bus.AlarmAmpel)
  55. );
  56. assign AlarmAmpel = bus.AlarmAmpel;
  57. assign Alarm_R = bus.Alarm_R;
  58. assign bus.sbclk = spi_bus.sb_clk_i;
  59. assign bus.sbstb = spi_bus.sb_stb_i;
  60. assign bus.sbrw = spi_bus.sb_wr_i;
  61. assign bus.sbadr = spi_bus.sb_adr_i;
  62. assign bus.sbdat_r = spi_bus.sb_dat_i;
  63. assign bus.sbdat_w = spi_bus.sb_dat_o;
  64. assign bus.sback = spi_bus.sb_ack_o;
  65. endmodule