Stap 4: Maak een Wrapper als de bovenste niveau Module
In deze stap gaan we maken van de module van het hoogste niveau, waarin een mux en een de-mux worden geïnstantieerd en goed aangesloten om te vormen van een eenvoudige tijd multiplexing communicatiesysteem. Het systeemdiagram wordt getoond in Fig. 3 hierboven.
In het blokdiagram is de input/output-poorten voor de module-wrapper in het groen; de poorten van de input/output module mux en demultiplex wordt weergegeven in zwarte cursief; en de interne draad van wrapper module is in paars.
In het project, maakt u een nieuw Verilog module bestand genaamd wrapper met 4 gegevens ingangen (I3, I2, I1, I0), 2 ingangen (S1, S0), en vier uitgangen (Y3, Y2, Y1, Y0) selecteren.
(wrapper) 1 module
2 I0, I1, I2, I3, S0, S1, Y0, Y1, Y2, Y3
3);
4
5 input I3, I1, I2, I0, S1, S0;
6 uitgang Y0 Y1, Y2, Y3;
7
8 / / structurele beschrijving van wrapper
9
10 endmodule
Verklaar interne draad delampenfabrikant na de verklaring van de input- en output.
1 draad delampenfabrikant;
De de-mux (genaamd output_demux) en de aansluitende draden in wrapper om de I/O poorten van de de-mux instantiëren.
1 demultiplex output_demux)
2. En(sdata),
3. I1(S1),
4. I0(S0),
5. Y0(Y0),
6. Y1(Y1),
7. Y2(Y2),
8. Y3(Y3)
9);
Alles samen te stellen. Het hoogste niveau Verilog module zal als volgt zijn:
(wrapper) 1 module
2 I0, I1, I2, I3, S0, S1, Y0, Y1, Y2, Y3
3);
4
5 input I3, I1, I2, I0, S1, S0;
6 uitgang Y0 Y1, Y2, Y3;
7
8 / / structurele beschrijving van wrapper
9 draad delampenfabrikant;
10
(input_mux) 11 mux
12. I3(I3),
13. I2(I2),
14. I1(I1),
15. I0(I0),
16. S1(S1),
17. S0(S0),
18. Y(sdata)
19);
20
(output_demux) 21 demultiplex
22. En(sdata),
23. I1(S1),
24. I0(S0),
25. Y0(Y0),
26. Y1(Y1),
27. Y2(Y2),
28. Y3(Y3)
29);
30
31 endmodule
Maak een XDC-bestand als volgt:
-I3 aan SW3; I2 aan SW2, I1 tot SW1, I0 te SW0
-Y3 te LED3; Y2 aan LED2, Y1 aan Y0 naar LED0, LED1
-S1 aan BTN1, S0 te BTN0