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

`IOSync::mkOutputFor` does not work for a `Wire`

Aperta
#125 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
35/100
Tipo di issue
Bug
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Ambito
compilers

Direzione di ricerca

Inizia da IOSync::mkOutputFor e riproduci il malfunzionamento usando il caso Clocks.bsv descritto nel report, inclusa l’assegnazione da qsfps[15].lpmode. Confronta come vengono gestite le uscite Wire e RegU durante l’elaborazione; il lavoro è completato quando il caso Wire non attiva più l’implicita-condition assertion e non richiede il workaround riportato.

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

Descrizione

bsv compiler
Error: "Clocks.bsv", line 1743, column 9: (G0005)
  The assertion `clock_crossing_rule' failed for rule
  `qsfp15_lpmode_clock_domain_crossing'
  because it has an implicit condition
  During elaboration of rule `clock_domain_crossing' at "Clocks.bsv", line
  1743, column 9.
  During elaboration of `qsfp15_lpmode' at
  "../hdl/boards/sidecar/qsfp_x32/QsfpX32ControllerTop.bsv", line 517, column
  24.
  During elaboration of `mkQsfpX32ControllerTop' at
  "../hdl/boards/sidecar/qsfp_x32/QsfpX32ControllerTop.bsv", line 233, column
  8.

The offending line here was something like:

qsfp15_lpmode = qsfps[15].lpmode;

Where qsfps[15].lpmode is a Wire driven by a Reg in a different module. Changing it to a RegU fixed the issue.

Lingua principale
VHDL
Stelle
24
Fork
2
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

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 oxidecomputer/quartz

Tutte le issue di oxidecomputer/quartz

Issue simili

Altre issue su Compilers

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.