WARNING:Xst:753 - "E:/Xilinx Projects/controlunit/controlunit.vhd" line 46: Unconnected output port 'aluop' of component 'maindecoder'.
The problem here is exactly what it says (you left an output unconnected, which isn't an error), but it's related to a more critical error further on:
WARNING:Xst:653 - Signal <opsignal> is used but never assigned. This sourceless signal will be automatically connected to value 00.
You probably meant to map opsignal
to the aluop
output on maindecoder
.
WARNING:Xst:753 - "E:/Xilinx Projects/controlunit/controlunit.vhd" line 49: Unconnected output port 'Result' of component 'alu'.
Again, exactly what it says. Are you sure you don't want to connect Result
?
The rest of the errors indicate you have some other fairly serious problems, namely, you've left a bunch of inputs unconnected - you've commented out a bunch of ports on your component declaration for alu
and not mapped them. Why? Note that these ports are fairly critical to the operation of alu
- without at least some of them, it won't actually do anything.
(edit)
Re: your comment "I used a signal because I cannot map an output to an input.":
op
is an input to alu
because alu
"reads" it, in a manner of speaking. alu
does not generate that value or drive that port - it has to come from somewhere else, possibly outside the code you've posted here. Therefore, trying to obtain its value from alu
is meaningless. You need to determine what the source of that control is. If it's maindecoder
, then you can compose it from that component's outputs, but I'm not sure if that's what you need.