FreeCalypso > hg > freecalypso-schem2
annotate venus/src/primitives @ 10:5ee03a306da3
Venus core: bring out SIM_CD
author | Mychaela Falconia <falcon@freecalypso.org> |
---|---|
date | Fri, 19 Nov 2021 06:09:13 +0000 |
parents | d23dae52cd7b |
children | ff784add0889 |
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 starpoint numpins 2; |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
12 |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
13 resistor_slot mapped_pins (side1, side2); |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
14 transistor_slot mapped_pins (E, B, C); |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
15 mosfet mapped_pins (G, S, D); |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
16 |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
17 /* TI packages */ |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
18 pkg_179GHH grid "pkg_179GHH.bgadef"; |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
19 pkg_100GGM grid "pkg_100GGM.bgadef"; |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
20 pkg_Rita_RF numpins 49; |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
21 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
|
22 Out_pos, Out_neg); |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
23 |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
24 /* non-TI RF components */ |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
25 pkg_RF3166 numpins 31; |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
26 pkg_M034F numpins 19; |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
27 |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
28 /* Flash+RAM MCP (two possibilities) */ |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
29 pkg_TLA064 grid "pkg_TLA064.bgadef"; |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
30 pkg_TLC056 grid "pkg_TLC056.bgadef"; |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
31 |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
32 /* crystal oscillator components */ |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
33 xtal_2pin_pkg numpins 2; |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
34 xtal_4pin_pkg numpins 4; |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
35 varactor_diode mapped_pins (Anode, Cathode); |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
36 |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
37 /* |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
38 * 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
|
39 * 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
|
40 * 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
|
41 * 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
|
42 * input and which will be the output. |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
43 * |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
44 * 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
|
45 * at the MCL binding stage, to be selected at layout time. |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
46 */ |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
47 |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
48 chip_attenuator mapped_pins (In, Out, GND1, GND2); |
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 /* connectors */ |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
51 header_2pin numpins 2; |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
52 conn_3pin numpins 3; |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
53 header_14pin numpins 14; |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
54 pkg_SMA_F numpins 5; |
8
d23dae52cd7b
Venus primitives: add TRRS jack
Mychaela Falconia <falcon@freecalypso.org>
parents:
6
diff
changeset
|
55 pkg_TRRS_jack numpins 6; |
6
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 /* misc peripherals */ |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
58 pkg_SIM_socket numpins 8; |
64ce89bd3376
Venus primitives file started
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff
changeset
|
59 basic_LED mapped_pins (Anode, Cathode); |