R
Rob Gaddi
Guest
Can someone tell me whether I'm doing this right (and have a tool bug)
or screwing something simple up? The point of the exercise, by the
way, is passing a record structure in and out of a block that's hidden
inside of a Qsys system, which means that the only data types I can
actually pass around are std_logic and std_logic_vector.
I've got a couple of types, and conversion functions.
type t_amm_rec is record
...
end record ;
subtype t_amm_rec_slv is std_logic_vector(179 downto 0);
function TO_SLV(rec : t_amm_rec) return t_amm_rec_slv;
function TO_AMM_REC(slv : t_amm_rec_slv) return t_amm_rec;
So I've got my top-level DUT, which has a t_amm_rec_slv port on it. My
testbench has:
signal rec : t_amm_rec := INIT_AMM_REC;
...
DUT : entity work.bfm_sim
port map(
TO_AMM_REC(coe_export) => TO_SLV(rec),
...
);
My Qsys entity, with a t_amm_rec_slv port on it called rec, then wraps
an internal entity with a t_amm_rec port on it, and has:
INTL : amm_master_bfm_intl
port map(
TO_SLV(rec_intl) => TO_AMM_REC(rec),
...
);
Again, all these ports are inout. So, do I have the syntax of this
correct, and Active-HDL just can't handle it? Or is this something I
screwed up?
Thanks,
Rob
--
Rob Gaddi, Highland Technology -- www.highlandtechnology.com
Email address domain is currently out of order. See above to fix.
or screwing something simple up? The point of the exercise, by the
way, is passing a record structure in and out of a block that's hidden
inside of a Qsys system, which means that the only data types I can
actually pass around are std_logic and std_logic_vector.
I've got a couple of types, and conversion functions.
type t_amm_rec is record
...
end record ;
subtype t_amm_rec_slv is std_logic_vector(179 downto 0);
function TO_SLV(rec : t_amm_rec) return t_amm_rec_slv;
function TO_AMM_REC(slv : t_amm_rec_slv) return t_amm_rec;
So I've got my top-level DUT, which has a t_amm_rec_slv port on it. My
testbench has:
signal rec : t_amm_rec := INIT_AMM_REC;
...
DUT : entity work.bfm_sim
port map(
TO_AMM_REC(coe_export) => TO_SLV(rec),
...
);
My Qsys entity, with a t_amm_rec_slv port on it called rec, then wraps
an internal entity with a t_amm_rec port on it, and has:
INTL : amm_master_bfm_intl
port map(
TO_SLV(rec_intl) => TO_AMM_REC(rec),
...
);
Again, all these ports are inout. So, do I have the syntax of this
correct, and Active-HDL just can't handle it? Or is this something I
screwed up?
Thanks,
Rob
--
Rob Gaddi, Highland Technology -- www.highlandtechnology.com
Email address domain is currently out of order. See above to fix.