134 lines
3.0 KiB
Plaintext
134 lines
3.0 KiB
Plaintext
FILE_TYPE = MACRO_DRAWING;
|
|
FORCENOTE
|
|
THEORY OF OPERATION
|
|
(1250 4400) 0;
|
|
DISPLAY 1.488 (1250 4400);
|
|
WIRE 0 -1 (3100 4500)(3100 4350);
|
|
WIRE 0 -1 (650 4500)(3100 4500);
|
|
WIRE 0 -1 (650 4350)(650 4500);
|
|
WIRE 0 -1 (650 4350)(650 3550);
|
|
WIRE 0 -1 (3100 4350)(650 4350);
|
|
WIRE 0 -1 (3100 3550)(3100 4350);
|
|
WIRE 0 -1 (650 3550)(3100 3550);
|
|
FORCENOTE
|
|
IT WITH A SIGNAL PROPERTY (\R). ONLY THE DESIRED NUMBER
|
|
(700 3700) 0;
|
|
FORCENOTE
|
|
IS REPLICATED BY GIVING IT A LOCAL NAME AND REPLICATING
|
|
(700 3750) 0;
|
|
FORCENOTE
|
|
CONCATENATING THE OUTPUT SIGNAL WITH ANOTHER NC. THE MSB
|
|
(700 3800) 0;
|
|
FORCENOTE
|
|
THE EXTRA SIGNAL (NC) IS EXTRACTED FROM THE OUTPUT BY
|
|
(700 3850) 0;
|
|
FORCENOTE
|
|
SIGNAL IS ALWAYS AT LEAST 2 BITS WIDE (INPUT AND THE NC).
|
|
(700 3900) 0;
|
|
FORCENOTE
|
|
WHICH ENSURE THAT THE INPUT TO THE 2 MERGE WITH THE INPUT
|
|
(700 3950) 0;
|
|
FORCENOTE
|
|
BIT WIDE IS COVERED THROUGH THE USE OF THE TWO NC SIGNALS
|
|
(700 4000) 0;
|
|
FORCENOTE
|
|
2 MERGE. THE CASE IN WHICH THE INPUT SIGNAL IS ONE
|
|
(700 4050) 0;
|
|
FORCENOTE
|
|
SIGNIFICANT BIT OF THE INPUT SIGNAL IS EXTRACTED WITH A
|
|
(700 4100) 0;
|
|
FORCENOTE
|
|
CONNECTED TO SIGNALS OF ANY WIDTH. SECOND, THE MOST
|
|
(700 4150) 0;
|
|
FORCENOTE
|
|
NAMES HAVE THE \NWC PROPERTY ALLOWING THEM TO BE
|
|
(700 4200) 0;
|
|
FORCENOTE
|
|
THIS SIGN EXTENDER USES TWO TRICKS. FIRST, THE PIN
|
|
(700 4250) 0;
|
|
WIRE 0 -1 (700 2800)(500 2800);
|
|
FORCEPROP 0 LAST SIG_NAME INPUT \I : NC \R 1
|
|
J 0
|
|
(-300 2800);
|
|
WIRE 0 -1 (3050 3000)(3250 3000);
|
|
FORCEPROP 0 LAST SIG_NAME OUTPUT <SIZE-1..0> \I : NC\R 1
|
|
J 0
|
|
(3300 3000);
|
|
WIRE 0 -1 (850 2850)(1500 2850);
|
|
FORCEPROP 0 LAST SIG_NAME MSB OF INPUT \L
|
|
J 0
|
|
(900 2900);
|
|
WIRE 0 -1 (2600 2950)(2900 2950);
|
|
WIRE 0 -1 (2600 2750)(2600 2950);
|
|
WIRE 0 -1 (850 2750)(2600 2750);
|
|
FORCEADD 2 MERGE..1
|
|
(3000 3000);
|
|
FORCEPROP 0 LAST NEEDS_NO_SIZE TRUE
|
|
J 0
|
|
(3025 3075);
|
|
DISPLAY I (3025 3075);
|
|
FORCEPROP 0 LAST PATH 1P
|
|
J 0
|
|
(3000 2950);
|
|
FORCEADD 2 MERGE..2
|
|
(750 2800);
|
|
FORCEPROP 0 LAST NEEDS_NO_SIZE TRUE
|
|
J 0
|
|
(775 2875);
|
|
DISPLAY I (775 2875);
|
|
FORCEPROP 0 LAST PATH 2P
|
|
J 0
|
|
(650 2700);
|
|
FORCEADD DRAWING..1
|
|
(2250 2500);
|
|
FORCEPROP 0 LAST ABBREV SGNX
|
|
J 0
|
|
(2050 2350);
|
|
DISPLAY B (2050 2350);
|
|
FORCEPROP 0 LAST TITLE SIGN EXTEND
|
|
J 0
|
|
(2050 2400);
|
|
DISPLAY B (2050 2400);
|
|
FORCEPROP 0 LAST LAST_MODIFIED Thu Mar 29 17:59:46 1984
|
|
J 0
|
|
(2050 2250);
|
|
DISPLAY B (2050 2250);
|
|
FORCEADD DEFINE..1
|
|
(1250 2500);
|
|
FORCEPROP 0 LAST X_STEP SIZE
|
|
J 0
|
|
(1025 2300);
|
|
DISPLAY B (1025 2300);
|
|
FORCEPROP 0 LAST X_FIRST 0
|
|
J 0
|
|
(1075 2400);
|
|
DISPLAY B (1075 2400);
|
|
FORCEADD 2 MERGE..2
|
|
(2000 3250);
|
|
FORCEPROP 0 LAST NEEDS_NO_SIZE TRUE
|
|
J 0
|
|
(2025 3325);
|
|
DISPLAY I (2025 3325);
|
|
FORCEPROP 0 LAST PATH 3P
|
|
J 0
|
|
(1900 3150);
|
|
WIRE 0 -1 (500 3250)(1950 3250);
|
|
FORCEPROP 0 LAST SIG_NAME NC \R 1 : MSB OF INPUT \L \R SIZE
|
|
J 0
|
|
(500 3300);
|
|
WIRE 0 -1 (2100 3200)(2600 3200);
|
|
WIRE 0 -1 (2600 3200)(2600 3050);
|
|
WIRE 0 -1 (2600 3050)(2900 3050);
|
|
WIRE 0 -1 (2100 3300)(2600 3300);
|
|
FORCEPROP 0 LAST SIG_NAME NC
|
|
J 0
|
|
(2650 3300);
|
|
FORCENOTE
|
|
OF THESE REPLICATED SIGNALS ARE CONCATENATED TO THE OUTPUT
|
|
(700 3650) 0;
|
|
FORCENOTE
|
|
SIGNAL TO CONSTRUCT A SIGNAL OF SIZE BITS.
|
|
(700 3600) 0;
|
|
GRID .100 5 OFF;
|
|
QUIT
|