So are you saying that this would work if it were written for PLI2 instead of PLI1? I have no attachment to PLI1, but no real experience programming for either one. In reality, I'm just trying to get a decent sin and cos routine, since my taylor series in pure verilog is slow as hell.
Matt On Dec 17, 2007 5:52 PM, Stephen Williams <[EMAIL PROTECTED]> wrote: > > I believe the current Icarus Verilog vvp now has all the infrastructure > needed to support real-valued system functions, and there are some PLI2 > functions that return real values. So the PLI1 support is just a matter > of providing the right translation layer code to make it work. Any > volunteers? > > Larry Doolittle wrote: > > Matt - > > > > On Sun, Dec 16, 2007 at 10:43:38PM -0800, Larry Doolittle wrote: > >> On Sun, Dec 16, 2007 at 06:19:38PM -0800, Matt Ettus wrote: > >>> http://www.chris.spear.net/pli/math.htm > >> Unfortunately, when I go to use the result I still get the > >> messages that Matt reports. Steve, what am I missing? > >> [patch to math.c] > > > > Using that patch and the appended Makefile, I can get Icarus to at least > > attempt to load the VPI module. Now the problem is that Icarus (git as > > of last week) does not support VPI routines of type 3 (userrealfunction). > > See line 104 of libveriuser/veriusertfs.c , and the results of > > find verilog-0.9 -type f | xargs grep userrealfunction > > > > The error messages from "vvp math.vvp" are: > > > > veriusertfs: $exp, forcing forwref = true > > veriusertfs: $exp, unsupported type 3 > > veriusertfs: $log, forcing forwref = true > > veriusertfs: $log, unsupported type 3 > > veriusertfs: $log10, forcing forwref = true > > veriusertfs: $log10, unsupported type 3 > > veriusertfs: $sin, forcing forwref = true > > veriusertfs: $sin, unsupported type 3 > > veriusertfs: $sqrt, forcing forwref = true > > veriusertfs: $sqrt, unsupported type 3 > > veriusertfs: $pow, forcing forwref = true > > veriusertfs: $pow, unsupported type 3 > > $exp: This task not defined by any modules. I cannot compile it. > > $log: This task not defined by any modules. I cannot compile it. > > $log10: This task not defined by any modules. I cannot compile it. > > $log10: This task not defined by any modules. I cannot compile it. > > $sin: This task not defined by any modules. I cannot compile it. > > $sqrt: This task not defined by any modules. I cannot compile it. > > $pow: This task not defined by any modules. I cannot compile it. > > math.vvp: Program not runnable, 7 errors. > > > -- > Steve Williams "The woods are lovely, dark and deep. > steve at icarus.com But I have promises to keep, > http://www.icarus.com and lines to code before I sleep, > http://www.picturel.com And lines to code before I sleep." > > > _______________________________________________ > geda-dev mailing list > [email protected] > http://www.seul.org/cgi-bin/mailman/listinfo/geda-dev > _______________________________________________ geda-dev mailing list [email protected] http://www.seul.org/cgi-bin/mailman/listinfo/geda-dev
