process trouble, error: multi source

Apr 11, 2005 2 Replies

Hi,



I want to set the load input for a counter to 1 and set it at the next clk automatically back to 0. But I get this error: ERROR:Xst:528 - Multi-source in Unit on signal Sources are: Signal in Unit is assigned to GND



this is my code:



a1: process (state) -- output-routine of a state machine begin if state = init1 then load


You cannot assign values to the same signal in two different process's as they are evaluated concurrently. Change your code to evaluate the "load" signal in the same process.

Well - the reason you can't do that is that you can't have multiple processes writing to the same signal in VHDL (Unless of course you have a tristate bus) - both these processes are executed in parallel.

One way (in pure language terms) to express what you are trying to express is:

a: process(state,clk) begin if state = init1 then load

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required