Deep DRC can miss violations when a cell has many shapes
Maintainer thường phản hồi trong vòng 1 ngày
Chưa có ai nhận issue này.
- #2547 của @nikosavola — đã đóng, không merge
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 52/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Sôi nổi
- Công nghệ
- cpp
- Lĩnh vực
- computer-graphics, testing
Hướng nghiên cứu
Read the box_scanner2 sweep and the instance to shape interaction scan in dbHierProcessor.cc, focusing on how reported pairs are keyed and how layer ids enter the scan. Reproduce the issue with the small box_scanner2 test described in the report, using duplicate insertions with different properties and enough boxes to cross the threshold. Done means the sweep reports both pairs and the deep DRC result retains all 4296 markers.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
On a clipped deep DRC run of the vexriscv layout, a via1 in metal1 enclosure check loses 2127 of its 4296 markers. Forcing the brute force path everywhere gives all 4296. Almost every via either keeps all of its markers or loses all of them.
The cause is in the box_scanner2 sweep. It remembers the pairs it has already reported in a set, and that set is keyed on the two object pointers only. In the instance to shape interaction scan in dbHierProcessor.cc the same shape can be inserted twice with two different intruder layer ids. The second pair then looks like a duplicate and is dropped. Small cells don't use the sweep, so there both pairs are reported and the result depends on how many shapes a cell has. A small box_scanner2 test shows the same thing when one object is inserted twice with different properties and there are enough other boxes to go over the threshold.
- Ngôn ngữ chính
- C++
- Star
- 1.2k
- Fork
- 305
- Merge trung bình
- 3 ngày 2 giờ
- Pull request đã merge (30 ngày)
- 11
Chuẩn bị môi trường
Dự án này không cung cấp dev container, Dockerfile hay hướng dẫn đóng góp, nên bạn cần tự thiết lập môi trường: hãy bắt đầu từ README và xem hướng dẫn đóng góp lần đầu của chúng tôi để biết các bước chung.
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của KLayout/klayout
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
KLayout/klayout#2554 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
KLayout/klayout#2412 · 3 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
DRC functions not working properly with clip in placeCó thể đã có người làm @klayoutmatthias đã nhận hôm nay. Đang mởbug
KLayout/klayout#2553 · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 50/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Python API: edge neighborhood nodes retain visitors after leaving scopeCó thể đã có người làm @klayoutmatthias đã nhận 4 ngày trước. Đang mởbug
KLayout/klayout#2542 · 1 bình luận · 1 người được giao ·
Maintainer thường phản hồi trong vòng 1 ngày
Tất cả issue của KLayout/klayout
Issue tương tự
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 70/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Integer underflow and buffer overrun in detail::count_rows on disconnected distance matricesĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 3 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
LaneDibello/Kotor-Patch-Manager#375 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 65/100
Maintainer thường phản hồi trong vòng 1 ngày