Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

sky130hd.lydrc reports 160k-320k markers on the platform's own sky130ram macros (no SRAM core-area handling)

Aperta
#4,735 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
48/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Ambito
backend, testing

Direzione di ricerca

Start with flow/platforms/sky130hd/drc/sky130hd.lydrc and reproduce the reported counts using the KLayout command and SRAM GDS path in the issue. Inspect how the deck applies logic rules and whether areaid.ce regions can be excluded or checked with SRAM rules. Done when the SRAM macros no longer produce the reported logic-rule markers while real violations remain reportable.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Description

Running the sky130hd KLayout DRC deck on the OpenRAM macros that ship with ORFS in flow/platforms/sky130ram/, each macro on its own, gives:

rule sky130_sram_1rw1r_64x256_8 sky130_sram_1rw1r_128x256_8
m1.4 114,730 227,370
li.3 35,134 69,822
li.1 4,397 8,749
m3.2 2,871 5,619
m1.2 2,088 4,136
ct.2 780 1,548
via.2 779 1,547
via2.1a 520 1,032
m2.2 386 768
ct.4 11 11
li.5 2 2
total 161,698 320,604

Both macros mark their bit-cell arrays with areaid.ce (81/2): 18,980 and 37,668 shapes. The SKY130 SRAM bit cells are drawn to the foundry's SRAM-array rules, which are different from the logic rules this deck checks, and the deck has no handling for areaid.ce.

As a result, any design using these macros gets a DRC report dominated by macro-internal markers (in our designs every marker was inside the macro; standard cells and routing were clean), which makes it hard to see real violations. The same happens with other OpenRAM SKY130 macros (e.g. VLSIDA's sky130_sram_1kbyte_1rw1r_32x256_8: 79,522 markers, all inside the macro).

To reproduce

ORFS commit c06bf3c; flow/platforms/sky130hd/drc/sky130hd.lydrc is unchanged on current master (last changed 2022-12-19).

klayout -b -r flow/platforms/sky130hd/drc/sky130hd.lydrc \
  -rd in_gds=flow/platforms/sky130ram/sky130_sram_1rw1r_128x256_8/sky130_sram_1rw1r_128x256_8.gds \
  -rd report_file=sram.lyrdb

(about 2 minutes; KLayout 0.28.16)

Suggested fix

Exclude areaid.ce regions from the logic-rule checks that the SRAM array rules replace (or check them with SRAM-array rules); or, at least, document that macro-internal markers are expected and offer an option to skip macro cells (e.g. by checking the design with the SRAM GDS replaced by its LEF abstract).

Lingua principale
Verilog
Stelle
777
Fork
549
Merge medio
2g 16h
PR unite (30g)
92

Preparare l'ambiente

  • Include un Dockerfile o un file Docker Compose
  • Nessun modello di pull request
  • Nessuna guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di The-OpenROAD-Project/OpenROAD-flow-scripts

Tutte le issue di The-OpenROAD-Project/OpenROAD-flow-scripts

Issue simili

Altre issue su Backend & API Design

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.