Guest
Hi all,
I'm looking at another designer's(no longer with the company) state
machine code and this code is contained within one state:
when Start_CNV =>
i_shft_a_en <= '0';
SHIFT_A_EN <= i_shft_a_en;
My general understanding is that within a process, signal assignments
do not take place until the process completes execution. Is this
always the case? Is that the case here? Would SHIFT_A_EN equal '0'
or the value of i_shft_a_en before it was '0'? Why not make the
assignment directly to the output port SHIFT_A_EN? Is it just better
practice to use the internal signal as a buffer?
Is the above method of coding common? This method occurs multiple
times throughout the code I'm reviewing.
Also, is the 'i_' prefix a known naming convention? Is it to say the
signal is internal? What about 'd_'? Is this also a naming
convention?
Thanks for any input,
Jim
I'm looking at another designer's(no longer with the company) state
machine code and this code is contained within one state:
when Start_CNV =>
i_shft_a_en <= '0';
SHIFT_A_EN <= i_shft_a_en;
My general understanding is that within a process, signal assignments
do not take place until the process completes execution. Is this
always the case? Is that the case here? Would SHIFT_A_EN equal '0'
or the value of i_shft_a_en before it was '0'? Why not make the
assignment directly to the output port SHIFT_A_EN? Is it just better
practice to use the internal signal as a buffer?
Is the above method of coding common? This method occurs multiple
times throughout the code I'm reviewing.
Also, is the 'i_' prefix a known naming convention? Is it to say the
signal is internal? What about 'd_'? Is this also a naming
convention?
Thanks for any input,
Jim