Bsp Vorlesung BypassFIFOF kompiliert nicht

schamane
Erstie
Erstie
Beiträge: 13
Registriert: 23. Feb 2015 18:30

Bsp Vorlesung BypassFIFOF kompiliert nicht

Beitrag von schamane »

Hallo,

zum besseren Verständnis habe ich das module mkBypassFIFOF der Vorlesung (Folie 116) kopiert und (auf den Poolrechnern) zu kompilieren versucht. Hierbei bekomme ich jedoch einen Fehler, den ich nicht zu beheben in der Lage bin:

Code: Alles auswählen

$ bsc -u -sim BypassFIFOF.bsv 
checking package dependencies
compiling BypassFIFOF.bsv
Error: "BypassFIFOF.bsv", line 9, column 26: (T0080)
  Type error at the use of the following function:
    mkCReg

  The expected return type of the function:
    e__#(Array#(Bit#(1)))

  The return type according to the use:
    b__#(Array#(Reg#(a__)))
besagte Zeile 9 ist dabei folgende:

Code: Alles auswählen

 Bit#(1) creg_count[3] <- mkCReg(3,0); // Anzahl in FIFO (0...1)
Mir ist bewusst, dass die in der Vorlesung vorgestellte Benutzung des Compilers vorsieht, ein top-Modul anzugeben. Das führt in diesem Fall jedoch dazu, dass der Compiler sich beschwert, dass das interface polymorph ist:

Code: Alles auswählen

Error: "BypassFIFOF.bsv", line 7, column 8: (T0043)
  Cannot synthesize `mkBypassFIFOF': Its interface is polymorphic.
Kann mir jemand helfen, diesen Code zu kompilieren?

JHofmann
Endlosschleifenbastler
Endlosschleifenbastler
Beiträge: 182
Registriert: 23. Apr 2015 10:43

Re: Bsp Vorlesung BypassFIFOF kompiliert nicht

Beitrag von JHofmann »

Hallo,

da fehlt das "Reg" Interface.

Code: Alles auswählen

 Reg#(Bit#(1)) creg_count[3] <- mkCReg(3,0); // Anzahl in FIFO (0...1)
Viele Grüße,

Antworten

Zurück zu „Archiv“