[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[f-cpu] Remarks to most recent (2002/07/04) snapshot



EU_IDU (not ready yet):

	The 8-bit subtractor can be replaced with misc.Generic_Adder.CIAdd.

EU_INC:

	The `bloc_and' entity and the tree of AND gates can probably
	be replaced with my misc.Bit_Manipulation.cascade_and function.
	Only the SIMD stuff needs to be added.

	Since only INC/DEC/LSB is supported, will there be a complementary
	unit for CMP/MSB?

EU_POPC:

	Currently uses function "+" from IEEE.Numeric_Std (but that's
	going to change, fortunately).

	Please do NEVER use IEEE.Numeric_Std in your designs
	(it is acceptable in testbenches, however).

I'm also missing delay indications in the new EUs. Do they all satisfy
the 6G/10T rule? I doubt that e.g. the 8-bit divider from EU_IDU fits
into a single pipeline stage, no matter how fast the subtractor is.

Concerning component instantiations:

	First of all, there are too many. Please use functions or
	procedures whenever you can. And if something is used in several
	places, put it in a package. Also look into the packages in the
	common/ subdirectory - maybe the function you're looking for is
	already there.

	Second, if you instantiate a component, please use VHDL'87 style
	instantiation, that is:

		component blah
			...
		end component;
		...
		label : blah
			generic map (...)
			port map (...);

	The VHDL'93 `label : entity blah' instantiation style may be
	more convenient, but it requires blah to be analyzed first.
	With '87 style, you can analyze the source files in any order.
	And it will work with ALL tools (one never knows...).

(Yann, you can put this into the VHDL HOWTO).

In order to speed up simulation and synthesis, it's also a good idea to
avoid signal assignments whenever possible. Use processes and sequential
statements, and put temporary values into variables, not signals. Signal
assignments are only needed for inter-process communication, pipeline
registers and the like.

-- 
 Michael "Tired" Riepe <Michael.Riepe@stud.uni-hannover.de>
 "All I wanna do is have a little fun before I die"
*************************************************************
To unsubscribe, send an e-mail to majordomo@seul.org with
unsubscribe f-cpu       in the body. http://f-cpu.seul.org/