FreeCalypso > hg > freecalypso-schem2
annotate venus/src/primitives @ 98:3ab69117b09f default tip
minnie/doc/Design-spec: finished in the first pass
| author | Mychaela Falconia <falcon@freecalypso.org> | 
|---|---|
| date | Sun, 01 Oct 2023 08:17:05 +0000 | 
| parents | 0a26e46b2fc2 | 
| children | 
| rev | line source | 
|---|---|
| 6 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 1 /* | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 2 * This file defines the primitives to be instantiated from the structural | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 3 * Verilog source for the board: IC package types, basic components and | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 4 * subpackages to be mapped later in the MCL binding step. | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 5 */ | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 6 | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 7 resistor numpins 2; | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 8 capacitor numpins 2; | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 9 inductor numpins 2; | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 10 rlc_generic numpins 2; /* "any" RLC for matching network topologies */ | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 11 | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 12 resistor_slot mapped_pins (side1, side2); | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 13 transistor_slot mapped_pins (E, B, C); | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 14 mosfet mapped_pins (G, S, D); | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 15 | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 16 /* TI packages */ | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 17 pkg_179GHH grid "pkg_179GHH.bgadef"; | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 18 pkg_100GGM grid "pkg_100GGM.bgadef"; | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 19 pkg_Rita_RF numpins 49; | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 20 pkg_TPA6203A1 mapped_pins (BYPASS, GND, In_neg, In_pos, SHUTDOWN, VDD, | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 21 Out_pos, Out_neg); | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 22 | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 23 /* non-TI RF components */ | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 24 pkg_RF3166 numpins 31; | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 25 pkg_M034F numpins 19; | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 26 | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 27 /* Flash+RAM MCP (two possibilities) */ | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 28 pkg_TLA064 grid "pkg_TLA064.bgadef"; | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 29 pkg_TLC056 grid "pkg_TLC056.bgadef"; | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 30 | 
| 16 
3d5c40988a6b
Venus src: add 74LVC1G04 inverting buffer for SIM_CD
 Mychaela Falconia <falcon@freecalypso.org> parents: 
14diff
changeset | 31 /* misc IC packages */ | 
| 22 
22ac331aa0f8
Venus primitives: additions for USB
 Mychaela Falconia <falcon@freecalypso.org> parents: 
16diff
changeset | 32 pkg_LQFP48 numpins 48; | 
| 
22ac331aa0f8
Venus primitives: additions for USB
 Mychaela Falconia <falcon@freecalypso.org> parents: 
16diff
changeset | 33 pkg_IC_5pin numpins 5; | 
| 
22ac331aa0f8
Venus primitives: additions for USB
 Mychaela Falconia <falcon@freecalypso.org> parents: 
16diff
changeset | 34 pkg_IC_8pin numpins 8; | 
| 44 
04abc82f8280
MCL and primitives: LCD and MAX1916 from lunalcd2
 Mychaela Falconia <falcon@freecalypso.org> parents: 
40diff
changeset | 35 pkg_SOT23_6 numpins 6; | 
| 16 
3d5c40988a6b
Venus src: add 74LVC1G04 inverting buffer for SIM_CD
 Mychaela Falconia <falcon@freecalypso.org> parents: 
14diff
changeset | 36 pkg_XSON6 numpins 6; | 
| 
3d5c40988a6b
Venus src: add 74LVC1G04 inverting buffer for SIM_CD
 Mychaela Falconia <falcon@freecalypso.org> parents: 
14diff
changeset | 37 | 
| 14 
ff784add0889
Venus primitives: add logic IC subpackages
 Mychaela Falconia <falcon@freecalypso.org> parents: 
8diff
changeset | 38 /* logic IC subpackages */ | 
| 
ff784add0889
Venus primitives: add logic IC subpackages
 Mychaela Falconia <falcon@freecalypso.org> parents: 
8diff
changeset | 39 buffer_slot_basic mapped_pins (A, Y); | 
| 40 
9309cebe07b8
use buffer_slot_od primitive for slots of 74LVC2G07
 Mychaela Falconia <falcon@freecalypso.org> parents: 
35diff
changeset | 40 buffer_slot_od mapped_pins (A, Y); | 
| 14 
ff784add0889
Venus primitives: add logic IC subpackages
 Mychaela Falconia <falcon@freecalypso.org> parents: 
8diff
changeset | 41 buffer_slot_3state mapped_pins (A, nOE, Y); | 
| 
ff784add0889
Venus primitives: add logic IC subpackages
 Mychaela Falconia <falcon@freecalypso.org> parents: 
8diff
changeset | 42 logic_ic_common mapped_pins (Vcc, GND); | 
| 
ff784add0889
Venus primitives: add logic IC subpackages
 Mychaela Falconia <falcon@freecalypso.org> parents: 
8diff
changeset | 43 x541_common mapped_pins (Vcc, GND, nOE1, nOE2); | 
| 
ff784add0889
Venus primitives: add logic IC subpackages
 Mychaela Falconia <falcon@freecalypso.org> parents: 
8diff
changeset | 44 | 
| 6 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 45 /* crystal oscillator components */ | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 46 xtal_2pin_pkg numpins 2; | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 47 xtal_4pin_pkg numpins 4; | 
| 31 
d0b6c4915397
Venus MCL: use new ipc-diode.pinout, add SS34 for charging
 Mychaela Falconia <falcon@freecalypso.org> parents: 
25diff
changeset | 48 varactor_diode mapped_pins (A, C); | 
| 6 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 49 | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 50 /* | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 51 * The reference design we are copying calls for a couple of RF chip | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 52 * attenuators. They are symmetrical in that pins 1 and 2 are equally | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 53 * suitable as either the input or the output, but the package shape is | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 54 * asymmetrical, thus it is a PCB layout decision which pin will be the | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 55 * input and which will be the output. | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 56 * | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 57 * We shall use a mapped_pins primitive and two different pinout mappings | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 58 * at the MCL binding stage, to be selected at layout time. | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 59 */ | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 60 | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 61 chip_attenuator mapped_pins (In, Out, GND1, GND2); | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 62 | 
| 82 
541b55e6bf47
add UART rescue header
 Mychaela Falconia <falcon@freecalypso.org> parents: 
62diff
changeset | 63 /* headers */ | 
| 22 
22ac331aa0f8
Venus primitives: additions for USB
 Mychaela Falconia <falcon@freecalypso.org> parents: 
16diff
changeset | 64 header_2pin numpins 2; | 
| 82 
541b55e6bf47
add UART rescue header
 Mychaela Falconia <falcon@freecalypso.org> parents: 
62diff
changeset | 65 header_3pin numpins 3; | 
| 93 
0a26e46b2fc2
change VSP tap header to 6 pins, add CLK13M
 Mychaela Falconia <falcon@freecalypso.org> parents: 
92diff
changeset | 66 header_6pin numpins 6; | 
| 82 
541b55e6bf47
add UART rescue header
 Mychaela Falconia <falcon@freecalypso.org> parents: 
62diff
changeset | 67 header_10pin numpins 10; | 
| 
541b55e6bf47
add UART rescue header
 Mychaela Falconia <falcon@freecalypso.org> parents: 
62diff
changeset | 68 header_14pin numpins 14; | 
| 
541b55e6bf47
add UART rescue header
 Mychaela Falconia <falcon@freecalypso.org> parents: 
62diff
changeset | 69 | 
| 
541b55e6bf47
add UART rescue header
 Mychaela Falconia <falcon@freecalypso.org> parents: 
62diff
changeset | 70 /* other connectors */ | 
| 22 
22ac331aa0f8
Venus primitives: additions for USB
 Mychaela Falconia <falcon@freecalypso.org> parents: 
16diff
changeset | 71 conn_3pin numpins 3; | 
| 
22ac331aa0f8
Venus primitives: additions for USB
 Mychaela Falconia <falcon@freecalypso.org> parents: 
16diff
changeset | 72 pkg_SMA_F numpins 5; | 
| 
22ac331aa0f8
Venus primitives: additions for USB
 Mychaela Falconia <falcon@freecalypso.org> parents: 
16diff
changeset | 73 pkg_TRRS_jack numpins 6; | 
| 
22ac331aa0f8
Venus primitives: additions for USB
 Mychaela Falconia <falcon@freecalypso.org> parents: 
16diff
changeset | 74 conn_miniUSB_plus4 numpins 9; | 
| 6 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 75 | 
| 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 76 /* misc peripherals */ | 
| 44 
04abc82f8280
MCL and primitives: LCD and MAX1916 from lunalcd2
 Mychaela Falconia <falcon@freecalypso.org> parents: 
40diff
changeset | 77 lcd_module_fp numpins 36; | 
| 6 
64ce89bd3376
Venus primitives file started
 Mychaela Falconia <falcon@freecalypso.org> parents: diff
changeset | 78 pkg_SIM_socket numpins 8; | 
| 60 
c661a87159c2
buzzer component nailed down
 Mychaela Falconia <falcon@freecalypso.org> parents: 
56diff
changeset | 79 pkg_buzzer numpins 4; | 
| 31 
d0b6c4915397
Venus MCL: use new ipc-diode.pinout, add SS34 for charging
 Mychaela Falconia <falcon@freecalypso.org> parents: 
25diff
changeset | 80 basic_LED mapped_pins (A, C); | 
| 
d0b6c4915397
Venus MCL: use new ipc-diode.pinout, add SS34 for charging
 Mychaela Falconia <falcon@freecalypso.org> parents: 
25diff
changeset | 81 misc_diode mapped_pins (A, C); | 
| 62 
a1b55af7f04d
clamping diode pair for the buzzer driving circuit
 Mychaela Falconia <falcon@freecalypso.org> parents: 
60diff
changeset | 82 clamp_diode_pair mapped_pins (Signal, Pos_rail, Neg_rail); | 
| 25 
250fd753c0c5
Venus: preliminary choice of slide switch part for charging control
 Mychaela Falconia <falcon@freecalypso.org> parents: 
22diff
changeset | 83 switch_2pin numpins 2; | 
| 50 
3dbe73bbc0a4
Verilog src: preparations for adding the keypad
 Mychaela Falconia <falcon@freecalypso.org> parents: 
44diff
changeset | 84 switch_4pin numpins 4; | 
| 92 
148fab6e07e3
add RTC domain test points
 Mychaela Falconia <falcon@freecalypso.org> parents: 
82diff
changeset | 85 test_point numpins 1; | 
| 33 
1d2b57d4f1c9
intnoconn approach to charging current sense resistor
 Mychaela Falconia <falcon@freecalypso.org> parents: 
31diff
changeset | 86 | 
| 
1d2b57d4f1c9
intnoconn approach to charging current sense resistor
 Mychaela Falconia <falcon@freecalypso.org> parents: 
31diff
changeset | 87 /* | 
| 
1d2b57d4f1c9
intnoconn approach to charging current sense resistor
 Mychaela Falconia <falcon@freecalypso.org> parents: 
31diff
changeset | 88 * Resistor footprint with two extra "virtual pins" for sensing - see | 
| 
1d2b57d4f1c9
intnoconn approach to charging current sense resistor
 Mychaela Falconia <falcon@freecalypso.org> parents: 
31diff
changeset | 89 * ../doc/Charging-circuit for explanation. | 
| 
1d2b57d4f1c9
intnoconn approach to charging current sense resistor
 Mychaela Falconia <falcon@freecalypso.org> parents: 
31diff
changeset | 90 */ | 
| 
1d2b57d4f1c9
intnoconn approach to charging current sense resistor
 Mychaela Falconia <falcon@freecalypso.org> parents: 
31diff
changeset | 91 | 
| 
1d2b57d4f1c9
intnoconn approach to charging current sense resistor
 Mychaela Falconia <falcon@freecalypso.org> parents: 
31diff
changeset | 92 resistor_with_sense mapped_pins (side1_current, side1_sense, | 
| 
1d2b57d4f1c9
intnoconn approach to charging current sense resistor
 Mychaela Falconia <falcon@freecalypso.org> parents: 
31diff
changeset | 93 side2_current, side2_sense); | 
| 35 
971c05950675
starpoints in core: commit to using pcb-rnd intnoconn
 Mychaela Falconia <falcon@freecalypso.org> parents: 
33diff
changeset | 94 | 
| 
971c05950675
starpoints in core: commit to using pcb-rnd intnoconn
 Mychaela Falconia <falcon@freecalypso.org> parents: 
33diff
changeset | 95 /* | 
| 
971c05950675
starpoints in core: commit to using pcb-rnd intnoconn
 Mychaela Falconia <falcon@freecalypso.org> parents: 
33diff
changeset | 96 * The following primitives are entirely non-physical EDA artifacts | 
| 
971c05950675
starpoints in core: commit to using pcb-rnd intnoconn
 Mychaela Falconia <falcon@freecalypso.org> parents: 
33diff
changeset | 97 * for star routing. | 
| 
971c05950675
starpoints in core: commit to using pcb-rnd intnoconn
 Mychaela Falconia <falcon@freecalypso.org> parents: 
33diff
changeset | 98 */ | 
| 
971c05950675
starpoints in core: commit to using pcb-rnd intnoconn
 Mychaela Falconia <falcon@freecalypso.org> parents: 
33diff
changeset | 99 starpoint_2way numpins 2; | 
| 
971c05950675
starpoints in core: commit to using pcb-rnd intnoconn
 Mychaela Falconia <falcon@freecalypso.org> parents: 
33diff
changeset | 100 starpoint_3way numpins 3; | 
