Error while building plugin using Buildxyceplugin

320 views
Skip to first unread message

Argonaut

unread,
Feb 3, 2022, 3:52:23 PM2/3/22
to xyce-users
Hello,
I have been trying to build the ReRAM xyce plugin given in skywater PDK using the Buildxyceplugin tool but unfortunately am getting this error. Could somebody point out the mistake?

```
[fatal..] ../../cells/reram_cell/sky130_fd_pr_reram__reram_cell.va: during lexical analysis syntax error at line 54 -- see '='
```
sky130_fd_pr_reram__reram_cell.va

xyce-users

unread,
Feb 3, 2022, 4:12:25 PM2/3/22
to xyce-users
While the syntax on that line is supposedly acceptable according to the Verilog-A 2.4 standard, ADMS does not recognize an attempt to initialize a variable on the same line as the declaration.  This is a limitation of ADMS itself, not of Xyce's use of ADMS.

Line 54, which is commented out in the version you have posted here, declares a variable "a0" and attempts to assign a value to it on the same line.  This is not recognized by ADMS.

There is another instance of the same thing on line 70, where "real p = 10;" appears.

If you break up these lines into a strict declaration (e.g. "real a0;" and "real p;") and move the assignment of a value elsewhere, the module gets past both problems.  In the case of the "a0" assignment, putting it inside the "initial_step" block is reasonable.  For the "p" assignment, put the assignment of value after the "begin" line of the analog function.

There are other problems with this module, though, including use of a flow probe in a manner not currently supported by Xyce/ADMS. 

But the killer is that the model doesn't work at all with Xyce because of how it attempts to perform time integration of the filament thickness (the technique used cannot work in Xyce at all in the manner in which it's written), and is known to be mathematically unsound:  https://github.com/google/skywater-pdk-libs-sky130_fd_pr_reram/issues/10
Reply all
Reply to author
Forward
Message has been deleted
Message has been deleted
0 new messages