33 个版本

0.5.3 2024年8月22日
0.4.13 2024年8月13日
0.4.11 2024年7月30日
0.4.0 2024年3月31日
0.1.1 2022年12月16日

#258 in 开发工具

Download history 1/week @ 2024-05-03 134/week @ 2024-05-10 134/week @ 2024-05-17 46/week @ 2024-05-24 1/week @ 2024-05-31 2/week @ 2024-06-07 101/week @ 2024-06-21 40/week @ 2024-06-28 1/week @ 2024-07-05 224/week @ 2024-07-26 28/week @ 2024-08-02 445/week @ 2024-08-09 253/week @ 2024-08-16

950 每月下载量

MIT 许可证

565KB
11K SLoC

liberty-db

pipeline pipeline License liberty-db liberty-macros Docs

开发中,不稳定

用法

[dependencies]
liberty_db = "0.5"

更多信息请参阅 文档

演示

# example0
cargo run --package example0_parse_fmt -- tests/tech/cases/ocv.lib
# example1
cargo run --package example1_prune_lib -- tests/tech/cases/ocv.lib

测试

cargo test --package liberty-tests --test tests

测试平台

cargo test --package liberty-tests --lib -- parser_bench::test_all_lib_files --exact --nocapture 
liberty-db liberty-io libertyparse 测试 Liberty 文件
402.79ms 115.81ms 342.70ms 测试/技术/SAED32_EDK/ccs/saed32hvt_pg_ff0p95v125c.lib
599.51ms 284.08ms 839.44ms 测试/技术/SAED32_EDK/ccs/saed32hvt_dlvl_ff0p85v25c_i0p85v.lib
83.12ms 40.12ms 122.26ms 测试/技术/SAED32_EDK/nldm/saed32hvt_dlvl_ff0p85v25c_i0p85v.lib
4.50s 1.48s 恐慌 测试/技术/SAED32_EDK/nldm/saed32hvt_ff0p85v25c.lib
3.00ms 20.58ms 5.08ms 测试/技术/freepdk45/gscl45nm.lib
125.41µs 失败 失败 测试/技术/案例/无分号.lib
66.77µs 失败 131.15µs 测试/技术/案例/公式.lib
16.04ms 8.67ms 25.57ms 测试/技术/案例/ocv.lib
13.69ms 6.76ms 失败 测试/技术/sky130/sky130_fd_sc_hs__bufinv_8__tt_1p80V_25C_ccsnoise.单元.lib
2.13s 870.17ms 2.85s 测试/技术/nangate/NangateOpenCellLibrary_typical.lib

待办事项列表

  • 在解析阶段合并 timing 字段
impl __timing::ImmutIdTiming { xxx }
  • 使用 PDFJS
  • 流输入
  • 链接组
  • 删除 GroupWapperComplexWapperSimpleWapper。至少在解析器和格式化器中删除
  • 修复末尾缺失的换行符
  • 递归解析布尔表达式
  • 格式化为 liberty
  • 支持多行 \
  • 支持注释
  • 使用 MutSet 存储GroupMap

依赖

~6–15MB
~160K SLoC