Comments (6)
Yes, I think that's correct!
from circt.
@hanchenye I think we can close this now.
from circt.
@hanchenye @stephenneuendorffer I started taking a look at this, and I have a question about the ops that implement the MergeLikeOpInterface
. In these ops, it seems like we should apply the SameOperandsAndResultType
trait. We don't have that right now, but does that constraint make sense here?
from circt.
@mikeurbach I think the select signal of MuxOp
is not necessary to have the same type with other operands.
from circt.
Ah, true. I guess I am specifically referring to the data operands (as returned by the dataOperands
method on MergeLikeOpInterface
). These operands should always have the same type (and have the same type as the result), correct?
from circt.
@hanchenye I have been looking into MergeOp
and ControlMergeOp
next, and I just want to check in before digging too far into the implementation. I reviewed Section 3.4 and Figure 7 here. My understanding is Handshake's ControlMergeOp
op is what they implement in Figure 7., i.e. it reports the index of the selected input as an output.
I had previously mentioned I would start with implementing MergeOp
since it is simpler, but now I'm thinking it would be advantageous to start with the trickier ControlMergeOp
. Then we can factor out the common part, and just leave off the unneeded aspects when implementing MergeOp
. If that all sounds good I'll plan on sharing a PR for ControlMergeOp
next.
from circt.
Related Issues (20)
- [FIRRTL] FART: Should not modify public module ports
- [SV] Add option to generate ram blocks without x assigns HOT 1
- [ESI] Add value validation to Channels and Bundles
- [FIRRTL] Inconsistency when compiling two semantically equivalent fir code HOT 2
- Main link on GH broken (circt.org rather than https://circt.llvm.org/) HOT 1
- Perf measurements link (https://circt.org/perf/) broken HOT 1
- [FIRRTL] Replace "noRefTypePorts" with Pass
- [README] what does "IR" stand for? HOT 1
- [FIRRTL] Feature Request: Have dedup report all errors, not just the first HOT 1
- [FIRRTL] Crash in LowerClasses related to StringMap buckets HOT 1
- [FIRRTL] Investigate LowerClasses namespace lifetimes
- [firtool] Not parsing enable/disable layers CLI option properly
- [LowerToHW] Crash involving `TestBenchDirAnnotation` HOT 1
- [FIRRTL] Incorrect Output Directory for Multiply Instantiate Module in Layer
- [FIRRTL] Canonicalization missing for narrow dynamic subindex
- [FIRRTL][LowerLayers] Cannot send rwprobe out of layer HOT 2
- [FIRRTL][Inliner][InstChoice] Basic example doesn't work
- [FIRRTL] Fix use of layer-enabled rwprobe's with force, force_initial HOT 1
- [Seq] Round tripping seq.clock fails
- [HW] Roundtrip test fail for !hw.union
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from circt.