-
-
Notifications
You must be signed in to change notification settings - Fork 303
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
add combStage() to rename returned Stream #749
base: dev
Are you sure you want to change the base?
Conversation
What's the rationale for this? Also it's best not to reformat a bunch of code you're not adding anything to. It makes the diff much larger than it needs to be. |
Is it about preserving as much as possible naming ? |
Sorry this PR is not done yet. val myStreamName = StreamMux(...) // the generated Verilog use myStreamName as prefix |
Yes. |
Normaly it should be possible. But one question is :
So far, i was more for 2) in order to avoid generating "duplicated" signals" |
What about this case: val someQueue = StreamFifo(...)
val queuePop = someQueue.io.pop Will 2) keep the name prefix of By stick to the name explicitly defined, it's easier to debug. But like you mentioned, it might have duplicate signals. |
So, the case of the val someQueue = StreamFifo(...)
val queuePop = someQueue.io.pop Is one where a .combStage is good to do, as the someQueue.io.pop is already strongly named by the fifo (will not be renamed by futher val xxx = yyy |
OK, let me update my PR. |
Hi @pwang7 What is the status of this PR? |
Hmm i think when there is patterns like : def xxx() : Stream[T] = {
val ret = Stream(T())
...
ret //Should not use combStage on ret, as that Stream can be named by val zzz = stream.xxx()
} For all things where the returned value is a stream from a sub component, then yes, combStage is 100 % good. (i think) |
@Dolu1990 I don't understand, what should we do with this PR? |
@numero-744 Keep the .combStage() when it wrap a subcomponent io, but remove the .combStage() when it wrap stuff from the current component (ex in an Area / Composable) Ex to remove : Also, i think the following is broken : |
Ping @pwang7 |
Let me fix this PR later. |
No description provided.