Unverified Commit d56e2165 authored by John Ingalls's avatar John Ingalls Committed by GitHub
Browse files

Prevent TLWidthWidget from generating X outputs (#2815)



* Prevent TLWidthWidget from generating X outputs

Widening WidthWidgets contain an uninitialized data register.  The first
transaction through the widget may propagate that register's contents
on the bus, which is logically correct but can propagates a X, violating
our constraint that we never provide X in the payload of a valid xact.

Fix by propagating in.bits.data, rather than the register, until the
register has been written at least once.  This is cheaper than resetting
the register.

* Add comments to WidthWidget X fix

Co-authored-by: default avatarAndrew Waterman <andrew@sifive.com>
parent fbe0bb01
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment