F
fl
Hi,
The following code is for address decode at different states. I always
have the error message:
ERROR:Xst:528 - Multi-source in Unit <vhdl_qr0> on signal <RAM_in<1>>
Sources are:
Output signal of FDC instance <comp1/RAM_out_1>
Signal <RAM_in<1>> in Unit <vhdl_0> is assigned to GND
ERROR:Xst:528 - Multi-source in Unit <vhdl_0> on signal <RAM_in<0>>
Sources are:
Output signal of FDC instance <comp1/RAM_in_r0>
Signal <RAM_in<0>> in Unit <vhdl_0> is assigned to GND
CPU : 14.22 / 14.37 s | Elapsed : 14.00 / 14.00 s
-->
Total memory usage is 418028 kilobytes
Number of errors : 6 ( 0 filtered)
Number of warnings : 169 ( 0 filtered)
Number of infos : 4 ( 0 filtered)
----------------
I cannot understand the reason. In fact, the code is just like a VHDL
textbook's. What's wrong with it? Thanks.
state_p: process(state)
begin
case state is
when init =>
RAM_in <= "000";
RAM_out <= "001";
next_state <= st0;
when st0 =>
RAM_in_selection <= "010";
RAM_out_selection <= "011";
next_state <= st1;
when st1 =>
RAM_in_selection <= "100";
RAM_out_selection <= "101";
next_state <= init;
when others =>
RAM_in_selection <= "000";
RAM_out_selection <= "001";
next_state <= init;
end case;
end process;
The following code is for address decode at different states. I always
have the error message:
ERROR:Xst:528 - Multi-source in Unit <vhdl_qr0> on signal <RAM_in<1>>
Sources are:
Output signal of FDC instance <comp1/RAM_out_1>
Signal <RAM_in<1>> in Unit <vhdl_0> is assigned to GND
ERROR:Xst:528 - Multi-source in Unit <vhdl_0> on signal <RAM_in<0>>
Sources are:
Output signal of FDC instance <comp1/RAM_in_r0>
Signal <RAM_in<0>> in Unit <vhdl_0> is assigned to GND
CPU : 14.22 / 14.37 s | Elapsed : 14.00 / 14.00 s
-->
Total memory usage is 418028 kilobytes
Number of errors : 6 ( 0 filtered)
Number of warnings : 169 ( 0 filtered)
Number of infos : 4 ( 0 filtered)
----------------
I cannot understand the reason. In fact, the code is just like a VHDL
textbook's. What's wrong with it? Thanks.
state_p: process(state)
begin
case state is
when init =>
RAM_in <= "000";
RAM_out <= "001";
next_state <= st0;
when st0 =>
RAM_in_selection <= "010";
RAM_out_selection <= "011";
next_state <= st1;
when st1 =>
RAM_in_selection <= "100";
RAM_out_selection <= "101";
next_state <= init;
when others =>
RAM_in_selection <= "000";
RAM_out_selection <= "001";
next_state <= init;
end case;
end process;