I am forwarding an email from John Shields relating to a discussion with
him about the VHPI issues. John
did not have access to Ajay's email, and I attempted to paraphrase,
perhaps poorly, since I don't yet fully understand
all the issues.
--
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
attached mail follows:
Chuck,
To be efficient about this, what is your plan or the ISAC plan? I gave
you my hallway conversation feedback an summarize it below. Maybe that
is enough. If there is going to be more, I would like to engage Ajay
and the VHPI folks on it constructively. Ideally, I'd like Ajay's
written feedback, the ISAC problem description, etc.
----
For me, the answer is that this does not affect VHDL model portability
and allows VPI to work with optimized or non-optimized simulators for
the intended purpose of that resume callback. That is an intentional
design feature and all the other options were considered in VHPI. The
other options are of less value because they blunt the performance of
simulation broadly. There is very little amenable fixes to that with
private tool options. Conversely, there are very reasonable private
tool options to control private optimizations. It is trivial to turn
off optimizations and get a portable result that apparently Ajay thinks
would be better. In either case, the VHPI debugger would be written the
same way.
While I wrestled with your statement (and you) that this means VHDL is
not portable because of VHPI, I can reconcile that. I would be OK if a
balanced summary statement about this aspect of VHPI applications was
made and it included that the same VHPI debugger would strictly behave
differently in different simulators. Specifically calling resume a
non-portable construct is OK. The balance is that is intended. The
VHPI committee believes it has more value because of it.
There is a lot of FYI about intent that one would only
get with a lot of experience with VHPI or a good book about it, which
doesn't exist. FYI, the resume callback does not have a role in
writing foreign models, or any form of backannotation, etc. It is key
only to debugging applications.
Regards, John
Received on Thu Mar 20 19:31:06 2008