controlled.html 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112
  1. <html>
  2. <head>
  3. <title>Controlled Buffer/Inverter</title>
  4. </head>
  5. <body bgcolor="FFFFFF">
  6. <h1><img align="center" src="../../../icons/controlledBuffer.gif" width="32" height="32">
  7. <img align="center" src="../../../icons/controlledInverter.gif" width="32" height="32">
  8. <em>Controlled Buffer/Inverter</em></h1>
  9. <p><table>
  10. <tr><td><strong>Library:</strong></td>
  11. <td><a href="index.html">Gates</a></td></tr>
  12. <tr><td><strong>Introduced:</strong></td>
  13. <td>2.0 Beta 1</td></tr>
  14. <tr><td valign="top"><strong>Appearance:</strong></td>
  15. <td valign="top"><img src="../../../img-libs/controlled.png" width="74" height="20"></td></tr>
  16. </table></p>
  17. <h2>Behavior</h2>
  18. <p>The controlled buffer and inverter, often called <em>three-state
  19. buffers/inverters</em>, each have a one-bit "control"
  20. input pin on the south side. The value at this control pin affects how
  21. the component behaves:</p>
  22. <ul>
  23. <li>When the value on this pin is 1,
  24. then the component behaves just like the respective component (a <a
  25. href="buffer.html">buffer</a> or a <a href="not.html">inverter</a> (NOT
  26. gate)).</li>
  27. <li>When the value is 0 or unknown (i.e., floating), then the
  28. component's output is also floating.</li>
  29. <li>When the value is an error value (such as would occur when two
  30. conflicting values are being fed into the input), then the output is an
  31. error value.</li>
  32. </ul>
  33. <p>Controlled buffers can be useful when you have a wire (often called a
  34. <em>bus</em>) whose value should match the output of one of several
  35. components. By placing a controlled buffer between each component
  36. output and the bus, you can control whether that component's output is
  37. fed onto the bus or not.</p>
  38. <h2>Pins (assuming component faces east, control line right-handed)</h2>
  39. <dl>
  40. <dt>West edge (input, bit width matches Data Bits attribute)</dt>
  41. <dd>The component input that will be used to compute the output if the
  42. control input is 1.</dd>
  43. <dt>South edge (input, bit width 1)</dt>
  44. <dd>The component's control input.</dd>
  45. <dt>East edge (output, bit width matches Data Bits attribute)</dd>
  46. <dd>The component's output, which will be floating if the control input
  47. is 0 or floating, the error value if the control input is the error
  48. value, and will be computed based on the west-side input if the control
  49. input is 1.</dd>
  50. </dl>
  51. <h2>Attributes</h2>
  52. <p>When the component is selected or being added,
  53. Alt-0 through Alt-9 alter its <q>Data Bits</q> attribute
  54. and the arrow keys alter its <q>Facing</q> attribute.</p>
  55. <dl>
  56. <dt>Facing</dt>
  57. <dd>The direction of the component (its output relative to its input).</dd>
  58. <dt>Data Bits</dt>
  59. <dd>The bit width of the component's inputs and outputs.</dd>
  60. <dt>Gate Size</dt>
  61. <dd>(Controlled inverter only) Determines whether to draw a larger or a smaller
  62. version of the component.</dd>
  63. <dt>Control Line Location</dt>
  64. <dd>The location of the control line, imagining we are facing the output
  65. from the input: If the component faces east and is <q>right-handed,</q>
  66. the control line is to the south; but if it is <q>left-handed,</q>
  67. the control line is to the north.</dd>
  68. <dt>Label</dt>
  69. <dd>The text within the label associated with the gate.</dd>
  70. <dt>Label Font</dt>
  71. <dd>The font with which to render the label.</dd>
  72. </dl>
  73. <h2>Poke Tool Behavior</h2>
  74. <p>None.</p>
  75. <h2>Text Tool Behavior</h2>
  76. <p>Allows the label associated with the gate to be edited.</p>
  77. <p><a href="../index.html">Back to <em>Library Reference</em></a></p>
  78. </body>
  79. </html>