Jesse Cirimelli-Low
ce5001e0af
added config file to datasheet and output files
2018-10-31 12:29:13 -07:00
Hunter Nichols
62439bdac6
Fixed merge conflicts with sram.py
2018-10-22 17:29:14 -07:00
Matt Guthaus
7591f25a2e
Merge branch 'dev' into supply_routing
2018-10-20 14:29:19 -07:00
Jesse Cirimelli-Low
1b4383b945
moved flask_table warning from sram.py to datasheet_gen.py
2018-10-18 09:58:19 -07:00
Jesse Cirimelli-Low
b9990609bf
provides warning on missing flask packages, does not generate html on missing packages
2018-10-18 07:21:03 -07:00
Matt Guthaus
4932d83afc
Add design rules classes for complex design rules
2018-10-12 09:44:36 -07:00
Jesse Cirimelli-Low
cfb5921d98
reorganized code structure
2018-10-11 15:59:06 -07:00
Hunter Nichols
fd806077d2
Added class and test for testing the delay of several bitcells.
2018-10-08 15:50:52 -07:00
Matt Guthaus
a2b1d025ab
Merge multiport
2018-10-08 11:45:50 -07:00
Matt Guthaus
8499983cc2
Add supply router to top-level SRAM. Change get_pins to elegantly fail.
2018-10-06 08:30:38 -07:00
Matt Guthaus
68b30d601e
Move bitcells to their own directory in preparation for custom multiport cells.
2018-10-05 08:09:09 -07:00
Matt Guthaus
a7246f5e7f
Rename omits 0 size ports
2018-09-24 13:44:31 -07:00
Matt Guthaus
a3f13d6eab
Remove banks from test configs
2018-09-24 11:41:51 -07:00
Matt Guthaus
e591176211
Change default to scn4m
2018-09-13 15:26:03 -07:00
Matt Guthaus
2a27fbc98e
Fix temp directory preservation option.
...
Make labels in freepdk45 replica bitcell lower case.
2018-09-05 10:02:12 -07:00
Matt Guthaus
a346bddd88
Cleanup some items with new sram_config. Update unit tests accordingly.
2018-09-04 10:47:24 -07:00
Matt Guthaus
563ff77d44
Add sram_config class. Rename port variables for better description.
2018-08-31 12:03:28 -07:00
Matt Guthaus
41fba9d27c
Add sketch for power grid routing code
2018-08-29 15:34:16 -07:00
Matt Guthaus
e804f36bec
Add parameters to give preference to DRC/LVS/PEX tools like we do for spice.
2018-08-28 13:41:26 -07:00
Matt Guthaus
e17c69be3e
Clean up new code for add_modules, add_pins and netlist/layouts.
2018-08-28 10:24:09 -07:00
Matt Guthaus
9f051df18d
Added netlist only configuration option.
2018-08-27 14:33:02 -07:00
Matt Guthaus
64b3cfee26
Only print LVS/DRC stats when it is enabled
2018-07-25 13:44:34 -07:00
Matt Guthaus
7d8352a04d
Fix order of checkpointing so that it is done after characterizer and verify have found their executables.
2018-07-11 12:12:03 -07:00
Matt Guthaus
265b5d977a
Fix option reload problems and checkpointing so that it works properly.
2018-07-11 12:00:15 -07:00
Matt Guthaus
c6503dd771
Modify unit tests to reset options during init_openram so
...
that they don't use old parameters after a failure.
2018-07-10 16:39:32 -07:00
Matt Guthaus
8cee26bc8c
Allow python 3.5. Make easier to revise required version.
2018-06-29 09:23:43 -07:00
Matt Guthaus
f34c4eb7dc
Convert entire OpenRAM to use python3. Works with Python 3.6.
...
Major changes:
Remove mpmath library and use numpy instead.
Convert bytes to new bytearrays.
Fix class name check for duplicate gds instances.
Add explicit integer conversion from floats.
Fix importlib reload from importlib library
Fix new key/index syntax issues.
Fix filter and map conversion to lists.
Fix deprecation warnings.
Fix Circuits vs Netlist in Magic LVS results.
Fix file closing warnings.
2018-05-14 16:15:45 -07:00
Matt Guthaus
0e35937da5
Commit local changes. Forgot what the status is.
2018-05-11 09:15:29 -07:00
Matt Guthaus
929122b6dc
Change default to scmos. Refactor add column mux.
2018-04-20 12:52:41 -07:00
Matt Guthaus
a732405836
Add utility script gen_stimulus.py to help create simulations for debugging.
2018-02-26 08:54:35 -08:00
mguthaus
e210d3d49a
Make some common lib memory sizes. Update Makefile to auto build and char them all.
2018-02-12 12:00:59 -08:00
Matt Guthaus
a12ebeed9f
Add multiple process corners. Unit tests use nominal corner only. Add fake SCMOS nominal models, but they are broken.
2018-02-12 09:33:23 -08:00
Matt Guthaus
4d35972553
Get default corner options from tech file
2018-02-09 15:49:55 -08:00
Matt Guthaus
7c83ef3f04
Fix missing subdir name. Comment about organization.
2018-02-09 10:27:43 -08:00
Matt Guthaus
7100d6f904
Organize top-level files into subdirs.
2018-02-09 10:25:24 -08:00
mguthaus
5aa92a6549
Reorganize top-level functions a bit more. Add help info to banner.
2018-02-09 09:53:28 -08:00
mguthaus
8719a19377
Move parameter setting to config reading rather than status function.
2018-02-09 09:26:13 -08:00
Matt Guthaus
17716191c1
Clean up time statements in openram output
2018-02-08 13:11:18 -08:00
Matt Guthaus
6c89f7965d
Refactor openram.py.
2018-02-08 12:47:19 -08:00
Matt Guthaus
8e91faaccb
Remove version from OpenRAM. We will go bit git hashes.
2018-02-06 10:56:26 -08:00
Matt Guthaus
84b42b0170
Fix bug in trim netlist. Add info comments to spice netlist and trimmed netlist. Increase verbosity for simulations.
2018-02-02 19:33:07 -08:00
Matt Guthaus
9d043b904e
Remove unnecessary design reset
2018-02-02 14:26:53 -08:00
Matt Guthaus
d552d88f45
Add -d option to not delete temp directory on successful runs.
2018-02-01 11:53:02 -08:00
Matt Guthaus
10ced33127
Fixed command line arguments to take priority over config file. Any option can be specified in config file now.
2018-01-21 11:21:09 -08:00
Matt Guthaus
490a70dee9
Simplify configuration file to allow all options to be over-riden. Move default module types to options.py to simplify config file.
2018-01-19 16:38:19 -08:00
Matt Guthaus
1b30eb4b64
Initial DRC with Magic is done.
2018-01-12 14:39:42 -08:00
Matt Guthaus
7a172873a3
Update unit tests to load verify after config file. Start magic DRC.
2018-01-12 10:24:49 -08:00
Matt Guthaus
1701eac1a9
Added workaround to import layouts into Magic. Select and well layers in active contacts. Fixed missing implant enclose active DRC rule in parameterized cells.
2018-01-11 10:24:44 -08:00
mguthaus
09ca8ba17d
Improve output format. Rename option to be more sensible.
2017-11-22 15:57:29 -08:00
Matt Guthaus
6873342748
Prepend the config file path so it imports your local copy rather than example_config_freepdk, for example.
2017-11-20 11:57:41 -08:00
Matt Guthaus
88740c107f
Improve global and code structure using modules.
...
Comment and reorganize globals.py
Tests consistently use globals module for OPTions.
Add characterizer as module support.
Modify unit tests to reload new characterizer for ngspice/hspice.
Enable relative and absolute config file arguments so you can run
openram from anywhere on any config file.
2017-11-16 13:52:58 -08:00
mguthaus
2eb9f5c6bc
Move verify into a module. Make characterizer a module. Move exe searching to modules.
2017-11-15 17:02:53 -08:00
Matt Guthaus
658f794b12
Add draft of assura DRC/LVS
2017-11-15 12:07:10 -08:00
Matt Guthaus
4285e576f8
Change error to warning for magic/netgen.
2017-11-14 15:49:47 -08:00
Matt Guthaus
40410cc9f5
Clean up code to work when no drc/lvs/pex is found.
2017-11-14 15:31:58 -08:00
Matt Guthaus
257cd62d25
Remove tools from tech file and have search order preference like spice.
2017-11-14 15:27:03 -08:00
Matt Guthaus
3e0f39cd8e
Skeleton code for indirect DRC/LVS/PEX tools.
2017-11-14 14:59:14 -08:00
Matt Guthaus
29c5ab48f0
Add spice pruning for speed-up. Fix spice search bugs. Add time in stages to openram output.
2017-11-14 13:24:14 -08:00
Matt Guthaus
8071dcc0f3
Add customsim (xa) as optional simulator. Fix regex to support scientific notation. Go through list of preferred simulators in order. Always abort if command-line simulator not found.
2017-11-12 10:42:41 -08:00
Matt Guthaus
95f1a24f72
Change default delay modeling to analytical. Add command-line option characterization by simulation (-c).
2017-11-09 11:13:44 -08:00
Matt Guthaus
69e44c78d8
Upgrade version to 1.01
2017-10-04 20:18:30 -07:00
Matt Guthaus
20d8c0bc45
Improved characterizer.
2017-07-06 08:42:25 -07:00
Matt Guthaus
8a821e13ac
Convert print to functional type call like Python 3. Perform error checking that requires Python >2.7 <3.0 for better error checking.
2017-06-12 15:02:48 -07:00
mguthaus
6e90bf0d6d
Enable output filename and path to be in config file. Command line will over-ride config file.
2017-06-12 14:37:15 -07:00
mguthaus
f32912f07c
Removed name option from some modules and autogenerate unique names. Added check to design class to prevent duplicate names by accident. Reduced diff file output verbosity.
2017-06-02 11:11:57 -07:00
Matt Guthaus
424c7b7e64
Made back-annotation and analytical modelling boolean options. Default is false.
2017-05-31 08:12:17 -07:00
Matt Guthaus
34e180b901
Analytical delay model from Bin Wu. Unit test not passing.
2017-05-30 12:50:07 -07:00
Matt Guthaus
2e86da4cd1
Add router to the python path
2017-05-23 08:31:23 -07:00
Matt Guthaus
b16dd80088
Add checks for valid OPENRAM_HOME and OPENRAM_TECH directories and subdirs
2017-05-12 14:56:31 -07:00
Matt Guthaus
e46ff50269
Modified default tech back to freepdk. Config file overrides command line.
2017-01-11 11:47:58 -08:00
Matt Guthaus
a2b7636e58
Modify banner to output temp path
2016-11-15 10:13:57 -08:00
Matt Guthaus
d1f6f205c0
No output during level 0 debug.
2016-11-15 09:04:32 -08:00
Matt Guthaus
e95e9e8229
Change some debug levels. Fix ngspice test values. ix cwd warning in some tests.
2016-11-15 08:57:06 -08:00
Matt Guthaus
b82aaa4201
Merge use-temp-dir-pid
2016-11-12 08:55:42 -08:00
Matt Guthaus
9ea1a06244
Remove openram_temp at end of openram and unit tests.
2016-11-11 14:05:14 -08:00
Matt Guthaus
c318a7d1bb
Check if spice preferred version was found before fallback
2016-11-10 11:44:48 -08:00
Matt Guthaus
f3f2171f89
Add both ngspice and hspice timing tests. Add hidden option to force to a version. Otherwise, default to either version if found.
2016-11-10 11:33:10 -08:00
Matt Guthaus
7b90b9a0e6
Try alternative spice if not found.
2016-11-10 08:18:52 -08:00
Matt Guthaus
7a23550ae0
Improve error messages on misconfiguration of environment variables.
2016-11-09 12:00:16 -08:00
Matt Guthaus
f48272bde6
RELEASE 1.0
2016-11-08 09:57:35 -08:00