Giter Site home page Giter Site logo

Comments (4)

flandreas avatar flandreas commented on June 25, 2024

@richardabendroth There are several options here.

You can go to the circuit's properties and set "Wire Logic" to "Wired OR". This is a new feature we've introduced a year ago or so. It allows you to connect both outputs to the same wire, and Antares performs an OR operation in case the signals are in conflict.

In case it is primarily about the transmission gate, it is maybe a problem of this particular subcircuit. Output components of subcircuit have a property "Tri-State Output". If it is set, Antares allows to connect multiple such outputs to the same wire when the subcircuit is used in a parent circuit. Maybe we should set this property in the library component "Transmission Gate". But I guess your request is more general.

I'm aware what you are requesting has been asked for by other users in the past. I have to think about it. A modifier like CTRL is maybe a little bit too hidden. Perhaps a global user setting would be the better approach?

from antares.

richardabendroth avatar richardabendroth commented on June 25, 2024

Ah nice, I didn't know this is already possible! It's exactly what I was looking for! My question is why you decided to make this a property of the whole circuit and not of the individual net?

from antares.

flandreas avatar flandreas commented on June 25, 2024

@richardabendroth Well actually, I was first more leaning towards making this property for the entire project and not only for a circuit, but that was kind of harder to implement. It's interesting that you would want to have it per net.

I've developed this feature when I was trying to build the circuits from the book "But how do it know" by John C. Scott (https://www.antarescircuit.io/docs/examples/but-how-do-it-know/description/). The circuits in the book don't use tri-state logic, but rely entirely on wired-or logic. It would have been quite cumbersome to set the property on every individual net.

from antares.

richardabendroth avatar richardabendroth commented on June 25, 2024

That's interesting! I imagined the net being "conflict" protective in how it is now. It prevents the user from connecting outputs together. However, I imagined the net to always be able to handle implicit OR's. And when the user wants to override this "connection" protection, there would be some modifier key (like shift or sth.) that allows the user to connect the 2nd output to the net anyways. This net then could either have a different color indicating that there is an implicit OR in it, or the net node circle would become a square or diamond or something like that. I didn't imagine it working as a property at all but more of a safeguard that prevents the user from doing it. It's quite interesting to understand how you approached the problem completely from a different angle!

from antares.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.