Commit Graph

291 Commits

Author SHA1 Message Date
Matt Liberty e3e1043830 Pre-merge https://github.com/parallaxsw/OpenSTA/pull/198
Signed-off-by: Matt Liberty <mliberty@precisioninno.com>
2025-01-30 21:16:37 +00:00
Eder Monteiro d940ab63c2 Merge remote-tracking branch 'parallaxsw/master' 2025-01-28 13:22:23 -03:00
James Cherry fb6e7f9fa7 liberty parser c++
commit 1abf72bc3430d34a51d82992f1c753f0274a662a
Author: James Cherry <cherry@parallaxsw.com>
Date:   Mon Jan 27 08:01:04 2025 -0700

    rm unused lib visitors

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 1e76acfc7829a8ba82f96d369fae6225a7361844
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Jan 26 21:15:46 2025 -0700

    verilog/sdf stream->is_open

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit c4a57c0354ffb6c4edfc3269d56a937c11ad9609
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Jan 26 19:54:41 2025 -0700

    leak

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit b992ed1124a862cb04f0c7617a4575f916c3fe01
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Jan 26 16:39:16 2025 -0700

    liberty mv string_buf to scanner

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 894cbfa5d5b731738dcc60d492689fad9d13bd40
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Jan 26 16:29:42 2025 -0700

    liberty use regex to parse include file

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 176225849d3fcac0b2be1a5b623270c386daed3d
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Jan 26 15:48:09 2025 -0700

    liberty include filename

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 516e12721d7185015d8c29e8b16fa185f0f46983
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Jan 26 15:31:18 2025 -0700

    liberty include

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 32098a2159798dfbb80140927949bb36f480093d
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Jan 26 15:01:47 2025 -0700

    liberty include

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 880214e632d756c3199b000fee88fd4fdffac371
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Jan 26 13:55:02 2025 -0700

    liberty include

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit ad1efca842a6d7ee608ffd5a19a69885786b77fa
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Jan 26 10:11:07 2025 -0700

    liberty passes all but include

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit e71cf1f39dd09e81cf2b0e5a12dcf51675f2a6fd
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Jan 26 10:01:08 2025 -0700

    liberty parser use class compiles

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 02dea0ff753b0fa12f280661a46e2c0ef2432357
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sat Jan 25 19:08:06 2025 -0700

    liberty parser compiles

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-01-27 08:33:35 -07:00
James Cherry 2a4fd08211 update copyright
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-01-21 18:54:33 -07:00
Eder Monteiro 32365d9bc4 Merge remote-tracking branch 'parallaxsw/master'
Signed-off-by: Eder Monteiro <emrmonteiro@precisioninno.com>
2025-01-21 08:50:02 -03:00
James Cherry 3797548fd8 liberty reader rm static_casts
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-01-15 12:21:57 -07:00
James Cherry 117e8dcce8 liberty seg fault when missing template and axis values
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2025-01-15 12:18:00 -07:00
Akash Levy 9c24e1a757
Ignore CCSN groups (#176) 2025-01-15 09:35:40 -08:00
James Molloy 7fbe386d35
[liberty] Fix use-before-free bug (#170)
Before this change, findTableTemplate captured `name` always. This caused a segfault
when LibertyReader::beginTable calls it with `template_name`:

  const char *template_name = group->firstName();
  if (library_ && template_name) {
    tbl_template_ = library_->findTableTemplate(template_name, type);

This pointer is owned by the group and is freed when we hit sta::libertyGroupEnd.

Ensure that findTableTemplate does not capture `name` by using findKey.

Co-authored-by: jmolloy <jmolloy@google.com>
2025-01-11 09:03:53 -08:00
Eder Monteiro 20cfa91047 Merge branch 'master' of https://github.com/parallaxsw/OpenSTA into update_sta 2024-12-23 11:47:33 -03:00
James Cherry a06c4fc7ac issue 149, 150, cmdNetwork->Sta::ensureLinked check libs
commit 6f3634724fa52fb9d88418c1fa550cc86f8bdf10
Author: James Cherry <cherry@parallaxsw.com>
Date:   Thu Dec 19 11:49:15 2024 -0700

    rm cmdLinkedNetwork

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 4d5339327d2c373c3628cafed4ecb243718dc769
Author: James Cherry <cherry@parallaxsw.com>
Date:   Thu Dec 19 10:13:03 2024 -0700

    Sta::ensureLinked

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit f17e408fcd10a72f2d8a627cfaf36f22be5c9ef3
Author: James Cherry <cherry@parallaxsw.com>
Date:   Wed Dec 18 15:54:34 2024 -0700

    Sta::ensureNetwork()

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-12-19 16:03:39 -07:00
Akash Levy adfafa9b10
Fix for non-standard latches (#151)
* latch_3port

* Smallfixes

* Review amendments

* Smallfix

* Add comments to describe cases
2024-12-19 15:02:03 -08:00
Eder Monteiro 3878318e50 Merge remote-tracking branch 'parallax/master'
Signed-off-by: Eder Monteiro <emrmonteiro@precisioninno.com>
2024-12-09 11:58:43 -03:00
James Cherry a82361ce3d timing models rm clk tree delay clk->output w/ideal clk conttext
commit 133cd3a33fe37d81a0a8f47c28c245b8de5507b4
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sat Dec 7 16:24:38 2024 -0800

    timing models rm clk tree delay clk->output w/ideal clk conttext

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 6d17e2e29788ffc5ba65a2d0c34eb840fdd41486
Author: James Cherry <cherry@parallaxsw.com>
Date:   Fri Dec 6 16:57:31 2024 -0800

    timing models rm clk tree delay from setup/hold w/ideal clk conttext

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-12-07 16:35:14 -08:00
Akash Levy 70d52c2fe0
Make `is_memory` property more sensitive for cells and libcells by also matching on `memory` groups (#129)
* Add `has_memory` property

* Whitespace fixes

* Remove unused argument name

* Review fixes

* Move gf180mcu_sram.lib.gz from examples/ to test/

* Fix tcl script

* Switch to is_memory

* Remove is_memory_cell
2024-11-20 15:10:12 -08:00
James Cherry 0d13839330 liberty test_cell port signal_type
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-11-15 15:53:02 -08:00
James Cherry 3f526873a3 Units use std::string
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-11-13 19:09:27 -08:00
James Cherry fba5a77d26 regression failures
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-11-09 20:41:15 -08:00
Matt Liberty aa598a2f14 Add the signal_type info to the test_cell pins.
Now that we have different pins on the cell and the test_cell we should
put the information on both.

Signed-off-by: Matt Liberty <mliberty@precisioninno.com>
2024-11-08 00:43:51 +00:00
James Cherry 23eccdd467 leak
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-11-07 08:55:10 -08:00
James Cherry 9f0997ef6f issue114 liberty colons round 3
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-11-05 08:38:59 -08:00
James Cherry 872047581f liberty seg fault
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-11-02 16:10:29 -07:00
James Cherry 54d85a97a8 issue114 liberty colons round 2
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-11-01 18:24:44 -07:00
James Cherry d889f03757 issue114 liberty colons
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-11-01 15:12:31 -07:00
James Cherry dfb95b1cfe liberty test_cell name
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-10-25 08:41:22 -07:00
James Cherry 21a62ebccf liberty test_cell parse internals
commit 6a290928a1e554df63682ec416ead0d463c89b4a
Author: James Cherry <cherry@parallaxsw.com>
Date:   Thu Oct 24 11:33:24 2024 -0700

    liberty test signal_types

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 662b68e3def20b467c5dc1a2d9ca14b399ad27c1
Author: James Cherry <cherry@parallaxsw.com>
Date:   Thu Oct 24 11:28:25 2024 -0700

    liberty test_cell

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit d91e9a824b46149fb1f803c76714971043fe21b6
Author: James Cherry <cherry@parallaxsw.com>
Date:   Thu Oct 24 10:35:17 2024 -0700

    readme

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit cbe980545669379ac25c5721c488168de98e9120
Author: James Cherry <cherry@parallaxsw.com>
Date:   Thu Oct 24 09:38:29 2024 -0700

    message ids

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit f0234ddefae5ad82bad75839afc18baf458ebdab
Author: James Cherry <cherry@parallaxsw.com>
Date:   Wed Oct 23 12:52:39 2024 -0700

    rm test_cell disable edge support

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit db798869bc85a6c7be5f938f4c4eb27402c177ad
Author: James Cherry <cherry@parallaxsw.com>
Date:   Wed Oct 23 08:20:24 2024 -0700

    liberty test_cell

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit d8fe710d551737f899a770abd2ca0b5e3a261d32
Author: James Cherry <cherry@parallaxsw.com>
Date:   Tue Oct 22 17:37:04 2024 -0700

    liberty test_cell

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 9ad676ec78df99223ecd82e27c941341b28eb4e4
Author: James Cherry <cherry@parallaxsw.com>
Date:   Mon Oct 21 19:50:44 2024 -0700

    liberty testcell

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-10-24 11:37:07 -07:00
James Cherry b0804a01f2 LibertyReader::visitCellUserFunctionClass remove redundant stringCopy
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-10-19 16:10:51 -07:00
Matt Liberty 26f20e48b5
Parse and store user_function_class from Liberty. (#90)
Added user_function_class and cell_footprint to LibertyWriter for testing.

Signed-off-by: Matt Liberty <mliberty@precisioninno.com>
2024-10-15 17:37:57 -07:00
James Cherry f71405fb40 leak
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-10-05 14:48:05 -07:00
Christian Costa 8cebb94303 Add support for pin name with ending '!'.
Used for power/ground pins that are inherited when importing netlist to
CDSOA.

Signed-off-by: Christian Costa <titan.costa@gmail.com>
2024-10-02 14:35:57 +02:00
Matt Liberty 432c04d6ce Avoid double stringCopy visitCellFootprint & setFootprint
Signed-off-by: Matt Liberty <mliberty@precisioninno.com>
2024-09-19 01:52:09 +00:00
James Cherry 46699727b0
Merge pull request #89 from maliberty/equiv-no-footprint
Remove the footprint check from equivCells
2024-09-12 17:05:53 -07:00
James Cherry 41fe4d2844 issue88 missing arc warning for liberty clock tree path
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-09-12 17:00:06 -07:00
Matt Liberty e45bc835f9 Remove the footprint check from equivCells
Signed-off-by: Matt Liberty <mliberty@precisioninno.com>
2024-09-12 22:07:58 +00:00
Arthur Koucher 2de024f6e8 return nullptr rather than empty string
Signed-off-by: Arthur Koucher <arthurkoucher@precisioninno.com>
2024-09-06 11:44:17 -03:00
Arthur Koucher c0cf80ef56 keep footprint string inside its cell
Signed-off-by: Arthur Koucher <arthurkoucher@precisioninno.com>
2024-09-04 18:17:47 -03:00
Arthur Koucher 253b6bf458 add cell footprint support
Signed-off-by: Arthur Koucher <arthurkoucher@precisioninno.com>
2024-09-03 19:02:55 -03:00
James Cherry f54ab5b170 prima thread safety
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-08-17 11:39:47 -07:00
James Cherry 81c68379a3 liberty delay_model default to table_lookup
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-08-10 17:17:19 -07:00
James Cherry 7091c00b1d liberty statetable auto dcl internal pins
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-08-10 07:59:06 -07:00
James Cherry 5261a2a91b liberty min_pulse_width missing related_pin
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-08-09 15:40:21 -07:00
James Cherry 7b8720985c liberty statetables
commit 02bf64b7d48b36a7ed68ee0781f3039d2cf86b4a
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sat Aug 3 15:20:51 2024 -0700

    power gated clk w/statetable

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 587c217900e92551393a882aa4792369760dbff9
Author: James Cherry <cherry@parallaxsw.com>
Date:   Fri Aug 2 16:59:11 2024 -0700

    statetable equivalence

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit 7093b22a41316b346834c63b1f3de132c4301105
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Jul 28 16:54:40 2024 -0700

    libert Statetable

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

commit becfdfc6852d01feb184256c8f966a19e57791d4
Author: James Cherry <cherry@parallaxsw.com>
Date:   Sun Jul 28 10:17:11 2024 -0700

    parse statetables

    Signed-off-by: James Cherry <cherry@parallaxsw.com>

Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-08-04 17:10:04 -07:00
Akash Levy 84847676b7
Merge branch 'parallaxsw:master' into master 2024-07-31 20:49:00 -07:00
Akash Levy 504ccb97eb One-to-one mismatched widths: partial timing arc creation 2024-07-31 20:48:36 -07:00
James Cherry ad83b05e5b liberty latches require matching when
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-07-31 19:47:15 -07:00
James Cherry 79c4fff78c leak
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-07-31 16:36:24 -07:00
James Cherry 5f6ff47d83 prima multi-corner
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-07-30 09:15:45 -07:00
James Cherry df346d3f51 liberty ccs bullet proofing
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-07-29 13:40:25 -07:00
James Cherry 0ed7383da8 liberty ccs bullet proofing
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-07-29 13:04:56 -07:00
James Cherry d315767d00 gcc compile warning
Signed-off-by: James Cherry <cherry@parallaxsw.com>
2024-07-28 22:51:39 -07:00