Loading ...
Sorry, an error occurred while loading the content.

RE: [tinycad] Pin types

Expand Messages
  • Don Lucas
    Hi Mike - I usually keep a standard stock library symbol with the programmable I/O pins marked as input/output or passive. When I actually go to use the part
    Message 1 of 4 , Aug 30, 2005
    View Source
    • 0 Attachment

      Hi Mike –

       

      I usually keep a standard stock library symbol with the programmable I/O pins marked as input/output or passive.  When I actually go to use the part for a specific design, however, I make a copy of the part and change the pin types to match how I intend to program them.  Sometimes I even rename the pins appropriately.  Some schematic capture packages allow you to edit the symbol locally and change the pin type, but this also has its problems if you make updates to the library symbol (as opposed to the locally stored symbol).  Some schematic capture packages provide a matrix of pin types on a project by project basis so that every pin type occurs on both the row labels and the column labels of a table with duplicates dropped.  The contents of each cell in the table indicate whether you want the schematic capture package to flag this combination of pin types as an error or not (such as having an output pin and another output pin on the same net).  This must be coupled with an additional set of options that let you control things like whether you want to consider a net with no defined output pin (but perhaps all passive pin types) an error or not.  This method obviously also has its limitations and gotchas.

       

      IMHO, until the software development environment is tightly integrated with the schematic capture and pcb layout environments (yes, I’m aware that several companies already make this claim to some extent and even include the FPGA development environment), I don’t think that there is a particularly wonderful solution at hand except to tolerate it.  A very tightly integrated software development environment could permit one to program the output pins of the processor or gate array and even assign alternate pin names to them and have the usage of the symbol automatically change to match while retaining the ability to allow the overall symbol to be modified in the library and then updated to the schematic, retaining its modifications.  Almost all packages attempt to permit this in one fashion or another, but I am not yet a believer because I’ve been burned too many times.  I have made peace with the tools by just making a copy of the stock symbol and customizing it under a different name in another library (perhaps a project library) as appropriate.

       

      Best regards,

       

      Don

       

       

       


      From: tinycad@... [mailto: tinycad@... ] On Behalf Of flat_in_fifth
      Sent: Monday, August 29, 2005 6:46 AM
      To: tinycad@...
      Subject: [tinycad] Pin types

       

      I've just made a symbol for a 4052 Analog switch and a 16F687 PIC.
      I'm not sure what Electrical type should I set the PIC's I/O pins and
      the analog switch pins as, bearing in mind they could be inputs or
      outputs?

      If I set the pins as input/output I invariably get a design rule error
      saying I have connected a tristate to an output (when the pin would
      have been configured as an input).  If set as inputs (which the
      included PIC models seem to be) I get "this network has no output
      driving it" when the pin would clearly be configured as an output.

      By setting each pin to the use it will be put to in the circuit I can
      get the warnings/errors to go, but this obviously isn't very usefull
      on a libray part.  Should I be using the "passive" type?

      Regards

      Mike




    • flat_in_fifth
      ... the part ... the pin ... Thanks Don, I did consider this method before I posted, but wondered if there was something obvious I was missing. Making a copy
      Message 2 of 4 , Sep 1, 2005
      View Source
      • 0 Attachment
        --- In tinycad@..., "Don Lucas" <Don.Lucas@O...> wrote:
        > Hi Mike -
        >
        >
        >
        > I usually keep a standard stock library symbol with the programmable I/O
        > pins marked as input/output or passive. When I actually go to use
        the part
        > for a specific design, however, I make a copy of the part and change
        the pin
        > types to match how I intend to program them.

        Thanks Don,

        I did consider this method before I posted, but wondered if there was
        something obvious I was missing. Making a copy per project for this
        type of programmable part isn't ideal, but then again it's quick and
        easy so not too much of a chore.

        Regards

        Mike
      • Bob Feretich
        Creating new symbols for specific instantiations is poor design practice. A better way to handle this issue is to support connection properties with
        Message 3 of 4 , Jan 14, 2006
        View Source
        • 0 Attachment
          Creating new symbols for specific instantiations is poor design
          practice. A better way to handle this issue is to support "connection
          properties with inheritance".

          For example:
          1) A PIC library symbol is created with all Data Port pins defined as
          Electrical=Input/Output.

          2) The PIC is instantiated in a design that only uses Data Port A as
          Input. Each bit of this port is connected to a pin of
          Electrical=Output. Therefore, the design checker will complain about a
          non-tristate output being connected to a input/output pin.

          3) By assigning a property Electrical=Input to the pins of Data Port A
          of this instance of the PIC (to the connection), this property would
          supercede (have inheritance precedence over) the value of the library
          property and the design checker would accept the net.

          The lack of connection properties and net properties are the most
          significant deficiency that I have noticed in TinyCAD. The types of
          properties are very useful for passing design information to
          downstream tools.

          Regards,
          Bob


          --- In tinycad@..., "flat_in_fifth" <mikerj@c...> wrote:
          >
          > --- In tinycad@..., "Don Lucas" <Don.Lucas@O...> wrote:
          > > Hi Mike -
          > >
          > >
          > >
          > > I usually keep a standard stock library symbol with the
          programmable I/O
          > > pins marked as input/output or passive. When I actually go to use
          > the part
          > > for a specific design, however, I make a copy of the part and change
          > the pin
          > > types to match how I intend to program them.
          >
          > Thanks Don,
          >
          > I did consider this method before I posted, but wondered if there was
          > something obvious I was missing. Making a copy per project for this
          > type of programmable part isn't ideal, but then again it's quick and
          > easy so not too much of a chore.
          >
          > Regards
          >
          > Mike
          >
        Your message has been successfully submitted and would be delivered to recipients shortly.