Ich habe vorher ein 8 Bit um 8 Bit gemacht, aber es war nicht generisch. Ich kann nicht herausfinden, wie man den Code justiert, um es NxM Bit zu machen. Kann mir jemand helfen?Wie kann man einen generischen NxM-Array-Multiplikator mit Verilog erzeugen?
-1
A
Antwort
2
Sie müssen Parameter verwenden. Parameter sind grundsätzlich Eingangskonstanten und sind eine gute Möglichkeit, generischen Code zu schreiben. Sie sitzen zwischen dem Namen des Moduls und den Häfen in einer Liste, die wie die Portliste aussieht, wird aber von einem Hash voraus:
module <MODULE NAME> #(<SOME TYPE> <PARAMETER NAME>=<DEFAULT_VALUE>, ...) (<THE PORTS>);
Die Ports selbst deklariert werden können die Parameter angeben können. Es ist üblich, einen Parameter zu verwenden, um beispielsweise die Breite von Eingängen und Ausgängen zu definieren.
Hier ist ein Beispiel (ein MxN Multiplikator):
module MULT #(integer M=8, integer N=8) (input [M-1:0] A, [N-1:0] B, [(M+N)-1:0] F);
assign F = A * B;
endmodule
http://www.edaplayground.com/x/2Bvx
Also, es ist sehr einfach, wenn Sie glücklich sind nur Ihre Multiplikator zu synthetisieren. Wenn Ihr Multiplikator-Design struktureller ist, dann müssen Sie über generate
Schleifen lernen.
Verwandte Themen
- 1. Wie kann man mit ggplot einen nicht standardmäßigen Plottyp erzeugen?
- 2. Gate Level Verilog: Bedingte Gattereingänge erzeugen
- 3. Kann man einen Vektor mit Arrays fester Größe erzeugen?
- 4. Wie implementiert man einen generischen Encoder?
- 5. Wie man einen generischen Datenrahmen dreht?
- 6. Python: Wie benutzt man einen generischen Setter?
- 7. Wie deklariert man einen generischen Delegaten mit einem out-Parameter
- 8. Wie kann man in UNIX mit getopt einen mehrstelligen Parameter erzeugen?
- 9. Wie über einen generischen Vektor iterieren
- 10. Wie erstellt man einen generischen Datumsformatierer in Java für Solr?
- 11. Delphi: Wie man einen generischen Typ programmatisch erzeugt?
- 12. Wie erstellt man einen Komponententest zum Erzeugen eines PDF-Dokuments?
- 13. Wie initialisiert man eine Leitung mit Konstante in Verilog?
- 14. Wie man einen HTML-Bericht in Protractror zu erzeugen,
- 15. Wie schreibt man einen "generischen" Mergesort in Scala?
- 16. Wie man einen generischen Ausdruck als Klassengetter verwendet
- 17. einen generischen Typ
- 18. Wie kann ich einen PDF Index von pdfLaTeX erzeugen?
- 19. VERILOG Problem mit Struktur
- 20. Wie kann man Sprite-Art-Assets für verschiedene Auflösungsbildschirme erzeugen?
- 21. Wie kann ich in Meteor einen generischen Event-Handler erstellen?
- 22. Wie kann ich einen Nicht-UTF-8-Zeichensatz erzeugen
- 23. Verilog: Verketten Bus und Indexieren
- 24. Wie kann ich diese Funktion in einen generischen Typ umwandeln?
- 25. Django: Einen Download in einer generischen Ansicht
- 26. Wie mit Null-Zähler zu beginnen Verilog
- 27. System Verilog Makro mit Zeichenfolgen
- 28. Lernressourcen Verilog
- 29. Kann nicht so spezifisch mit generischen Java-Feldtypen wie mit generischen Methodentypen sein?
- 30. Verilog, mit enum mit egal
Sie werden Ihre Chancen auf eine Antwort erhöhen, wenn Sie Code hinzufügen und zeigen, was Sie versucht haben, es generisch zu machen. –
Parametrieren Sie Ihren Code? – wilcroft