R
rickman
Guest
I was reading in Ben Cohen's book that OPEN has some restrictions.
One is that it can not be used with a specified set of items in an
array when the other items are mapped to other signals. Here is an
example.
Mul: multiply
PORT MAP (
SysClk => SysClk, -- System clock, 12.288 MHz?
Start => Start, -- Load multiplican and init result
Multiplicand => LinDat,
Multiplier => std_logic_vector(AudioGain),
Product(ProdHigh downto ProdHigh - MulOut'high) => MulOut,
Product(ProdHigh - MulOut'high - 1 downto 0) => OPEN,
Done => Done
);
According to Ben Cohen book, the product can not be split this way
using OPEN. When I tried it with Synplicity it seems to accept this
syntax. Ben's book is a bit older and refers to the '93 standard. I
believe there is a newer VHDL standard, 200x. Is this something that
has changed since '93 or is the Synplicity tool just being
magnanimous? Should I change it so that it will work with other tools
or do most tools accept this?
Rick
PS Don't ask me the name of the book, I don't have it with me. It was
a larger book and consisted of many examples of specific aspects of
the language rather than a general explanation of the language. I
like paper books, but sometimes I like the portability of e-books
(pdf).
One is that it can not be used with a specified set of items in an
array when the other items are mapped to other signals. Here is an
example.
Mul: multiply
PORT MAP (
SysClk => SysClk, -- System clock, 12.288 MHz?
Start => Start, -- Load multiplican and init result
Multiplicand => LinDat,
Multiplier => std_logic_vector(AudioGain),
Product(ProdHigh downto ProdHigh - MulOut'high) => MulOut,
Product(ProdHigh - MulOut'high - 1 downto 0) => OPEN,
Done => Done
);
According to Ben Cohen book, the product can not be split this way
using OPEN. When I tried it with Synplicity it seems to accept this
syntax. Ben's book is a bit older and refers to the '93 standard. I
believe there is a newer VHDL standard, 200x. Is this something that
has changed since '93 or is the Synplicity tool just being
magnanimous? Should I change it so that it will work with other tools
or do most tools accept this?
Rick
PS Don't ask me the name of the book, I don't have it with me. It was
a larger book and consisted of many examples of specific aspects of
the language rather than a general explanation of the language. I
like paper books, but sometimes I like the portability of e-books
(pdf).