S3AN01B_HW_Reference
MLAB
Vývojová deska s obvodem FPGA XILINX Spartan 3AN Milan Horkel
Před časem mne kluci na kroužku ukecali, abych udělal jednoduchou vývojovou desku s nějakým programovatelným obvodem. Nakonec jsem zvolil obvod FPGA od firmy XILINX z řady Spartan3AN, protože poskytuje rozumné možnosti za rozumnou cenu. Deska je osazena obvodem XC3S50AN v pouzdru TQFP 144. Tento dokument popisuje hardware desky, její testování a použití naleznete v dalších dokumentech.
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
1 / 20
S3AN01B_HW_Reference
MLAB
1. Technické parametry Parametr
Hodnota
Poznámka
Použitý obvod
XC3S50AN, TQFP144
XILINX FPGA Spartan 3AN
Napájení desky
+5V
Cca. 250mA (závisí na funkci)
Vnitřní napájení
+3.3V (napájení logiky)
Vlastní stabilizátor
+1.2V (napájení jádra FPGA)
Vlastní stabilizátor
LED displej 8 míst
Zapojený multiplexně
LED indikátory 8 bitů
Zapojené na samostatné výstupy
DIP spínače 8 bitů
Zapojené na samostatné vstupy
Tlačítka 4 bity
Zapojené na samostatné vstupy
VGA výstup
2 bity na barvu
PS/2 rozhraní 2 kusy
5V tolerantní
I2C rozhraní
5V tolerantní
Obvod 5V tolerantních vstupů
Celkem 32 vstupů
Jednoduchý A/D a D/A
Pomocí PWM
Interní paměť obvodu FPGA
Platí pro obvody řady AN
Volitelně paměť SPI FLASH
Pro obvody řady A i AN
Cca 112x122x20mm
Výška nad základnou
Periferie na desce
Konfigurace
Rozměry
Důrazně připomínám hned na začátku, že obvod FPGA není 5V tolerantní! Znamená to, že se na jeho vstupy smí připojit pouze signály do velikosti +3.3V (absolutní maximum je +4.6V). Stejně důrazně musím upozornit na to, že na vstupech obvodu nejsou ochranné diody mezi vstupem a kladným napájecím napětím! To je zásadní rozdíl od většiny jednočipových mikroprocesorů. Nelze se tedy spoléhat na to, že když budeme vstupy budit přes velký sériový odpor, že se nic nestane. Stane! Při zvýšeném napětí na vstupech může být životnost vstupních tranzistorů v řádu minut nebo hodin.
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
2 / 20
MLAB
S3AN01B_HW_Reference 2. Popis konstrukce 2.1. Úvodem
Školní deska pro práci s obvody FPGA XILINX řady Spartan 3AN vznikla na popud kluků v kroužku radiotechniky. Protože s obvody FPGA firmy XILINX pracuji, ujal jsem se tohoto úkolu. Nejdřív jsem uvažoval, že bychom začali s deskou s některým obvodem CPLD, ale po prozkoumání ceníku, jsem se přiklonil k obvodu FPGA řady Spartan3AN. Obvody FPGA mají mnohem propracovanější vnitřní architekturu a obsahují mnohem víc logiky než obvody CPLD. Obvod samotný stojí pouhých 210Kč včetně DPH (podzim 2010). Je to vlastně nejpokročilejší obvod FPGA v pouzdru TQFP, tedy v pouzdru, které si dokážeme sami připájet a v nouzi si dokonce dokážeme sami vyrobit i plošný spoj. Viz dokumentace od první verze této desky na adrese http://www.mlab.cz/PermaLink/S3AN01A Snad by měl existovat i obvod z řady Spartan6 v pouzdru TQFP, ale nikde jsem ho neviděl na skladě. Až ho uvidím, tak z něj možná taky něco udělám, pokud čas dovolí.
2.2. Zapojení modulu Zapojení desky odpovídá účelu desky. Jako vývojová a školní deska je vybavena obvody pro snadnou práci s obvodem FPGA. Na desce nalezneme LED displej, skupinu LED diod, několik tlačítek a DIP přepínačů. Vstupy a výstupy jsou vyvedeny na propojovací hřebínky.
2.2.1. Napájení Celá deska se napájí napětím +5V přivedeným na konektor J1. Opět důrazně připomínám, že použitý obvod FPGA vydrží na vývodech napětí 3.3V, ale ne 5V! VDD_3V3
+5V IN
+3.3V OUT
VDD_5V 3 4
2
OUT
3
D10 LED3mm_RED
A
ADJ U3 TS1117BCP12R0 TO252
C3 22uF/6.3V ELYTB
C
C
C2 22uF/6.3V ELY TB
A 1
A
R14 390
C
U2 AP1086K33G-13 TO263
C
1
A
C
C1 22uF/6.3V ELY TB A
D9 1N5820
IN
1
OUT OUT
IN ADJ
2
VDD_1V2
2
J1 JUMP2X3 1 3 5
J2 JUMP2X3 1 3 5
3.3V / 1500mA
1.2V / 800mA
POWER SUPPLY
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
3 / 20
MLAB
S3AN01B_HW_Reference
Z napětí +5V se lineárním stabilizátorem U2 vytváří napětí +3.3V pro napájení vstupů a výstupů obvodu FPGA. Přítomnost napětí +3.3V indikuje dioda D10 umístěná v rohu desky. Napětí +3.3V je vyvedeno na konektor J2 k dalšímu použití. Pozor, nezapojit sem napájení +5V, došlo by ke zničení obvodu FPGA! Abych na tento konektor omylem nepřipojil +5V, dávám si ta prostřední vývody zkratovací propojku. Dioda D9 slouží jako ochrana před přepólováním napájení. Z napětí +3.3V se lineárním stabilizátorem vytváří napětí +1.2V pro napájení jádra obvodu FPGA.
2.2.2. Konfigurace obvodu FPGA Po zapnutí napájení je obvod FPGA potřeba naplnit obsahem, tedy definovat, jak bude uvnitř zapojen. Toto vnitřní zapojení se nahrává do vnitřní konfigurační paměti RAM a lze to udělat několika způsoby: •
Prostřednictvím JTAG rozhraní přímo z návrhového systému
•
Z interní paměti obvodu FPGA
•
Z vnější SPI paměti FLASH (obvod U5/U6/U7 nebo U8) – volitelná možnost
•
Z nadřazeného procesoru (paralelně nebo sériově) – zde se tento způsob neužívá
Při úspěšném nahrání konfigurace obvodu FPGA se rozsvítí LED D8 s nápisem DONE. Při vypnutí napájení se samozřejmě obsah vnitřní konfigurační paměti RAM ztratí. Pro JTAG programování slouží konektor J3, který je zapojen obvyklým způsobem (jako například na programátoru XILINX Parallel Cable III). Jeho prostřednictví lze nahrát obsah do konfigurační paměti RAM obvodu FPGA, naprogramovat vnitřní paměť FLASH obvodu FPGA (jen obvod AN), nebo provádět další činnosti, které tento port umožňuje (pokud k tomu máte příslušné nástroje). JTAG rozhraní lze použít vždy. VDD_3V3 VCC GND TCK TDO TDI TMS
1 2 4 6 7 9
1 1 1 1
R1 2 100 R2 2 100 R3 2 100 R4 2 100
TCK TDO TDI TMS
J3 JUMP9_X3_X5_X8
JTAG Další způsoby načítání konfigurace se volí prostřednictvím signálů M0 M1 a M2 dle tabulky na schématu. Pro defaultní způsob konfigurace z interní FLASH paměti FPGA musí být zkratován signál M0 na zem prostřednictvím propojky mezi vývody J4.1 a J4.2. V takovém případě, pokud je nahraný platný obsah interní FLASH paměti obvodu FPGA dojde k automatické konfiguraci součástky při každém zapnutí napájení (konfigurace trvá řádově milisekundy).
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
4 / 20
MLAB
S3AN01B_HW_Reference
1 1
M0 M1
1
M2
1
2 4 6
1
R5 2 100 R6 2 100 R7 2 100
J4 JUMP2X3
0 0 0 0 1 1 1 1
0 0 1 1 0 0 1 1
0 1 0 1 0 1 0 1
Master Serial Master SPI BPI Internal Master SPI Reserved JTAG Slave Parallel Slave Serial
VS0 VS1 VS2
2 4 6
Mode
1 3 5
1 3 5
M2 M1 M0
1
R8 2 100 R9 2 100 R10 2 100
VS2 VS1 VS0
Mode
1 1 1
Fast Read 0x0B (66MHz) Read 0x03 (33MHz) Read Array 0xE8
1 0 1
1 1 0
J5 JUMP2X3
CONFIGURATION MODE Mode pins have internall pull-up
SPI VARIANT SELECT Mode pins have internall pull-up
Při načítání konfigurace z vnější SPI paměti FLASH je třeba podle použitého typu paměti nastavit propojky na konektoru J5 aby se použil správný příkaz pro čtení dat. Externí paměť SPI osazujeme samozřejmě jen jednu podle zapojení osazované paměti a velikosti jejího pouzdra. Tuto možnost využijeme zejména pokud osadíme obvod Spartan3A (nemá interní FLASH paměť) místo obvodu Spartan3AN (má interní FLASH paměť). V případě potřeby lze konfigurovat obvod FPGA i z nadřazeného systému, ale jen v režimu sériového přenosu (režim slave serial). K tomu slouží konektory J33 až J38.
2.2.3. Oscilátor Jako zdroj hodinového signálu je na desce osazen obvod U4, oscilátor s kmitočtem 100MHz. Pokud potřebuje aplikace jiný kmitočet, lze osadit oscilátor s odlišným kmitočtem, nebo využít vnitřních programovatelných obvodů (blok DCM) pro generování potřebného kmitočtu. Vnitřními obvody lze generovat kmitočty odvozené od externích hodin v dosti širokém rozmezí.
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
5 / 20
MLAB
S3AN01B_HW_Reference 2.2.4. Řada LED indikátorů
Asi první školní aplikací je blikání LED indikátory. Proto tu je osazeno 8 LED diod s příslušnými rezistory. Výstupy jsou dále vyvedeny na konektor J26. J26 JUMP2X8 1 3 5 7 9 11 13 15 2
2
2
2
A 1
A 1
C
C
R49 390
A 1
R50 390
C
A 1 C
R51 390
A 1
A 1 C
R52 390
C
A 1
R53 390
C
R54 390
A 1
R55 390
C
R56 390
2
2
2
2
LED0 LED1 LED2 LED3 LED4 LED5 LED6 LED7
D7 D6 D5 D4 D3 D2 D1 D0 LED3mm_RED LED3mm_RED LED3mm_RED LED3mm_RED LED3mm_RED LED3mm_RED LED3mm_RED LED3mm_RED
LED BAR 2.2.5. Display LED Pro sofistikovanější výpisy je zde umístěn osmimístný LED displej, který je zapojený v multiplexním režimu, abychom nespotřebovali zbytečně mnoho vývodů.
G D
B C
A B C F D E F G E DP
E G D
A
C
C
E
LD0 FT-M514RD 6
Q3 BC856
CA1
11 7 4 2 1 10 5 3
Q2 BC856
8
8
B
CA2
LD_SEG0#r LD_SEG1#r LD_SEG2#r LD_SEG3#r LD_SEG4#r LD_SEG5#r LD_SEG6#r LD_SEG7#r
Q1 BC856
E
820 1 B
6 CA1
A
CA2
9 CA3
A B C D F E F G E DP
R44 2
LD1 FT-M514RD
12 11 7 4 2 1 10 5 3
CA4
LD_SEG0#r LD_SEG1#r LD_SEG2#r LD_SEG3#r LD_SEG4#r LD_SEG5#r LD_SEG6#r LD_SEG7#r
820 1
Q0 BC856
C
LD_CA3#
R43 2
B
9
Q7 BC856
LD_CA2#
820 1
CA3
Q6 BC856
R42 2
B
E
B
LD_CA1#
820 1
12 C
820 1 B
Q5 BC856
R41 2
CA4
R48 2
B
LD_CA0#
C
820 1
E
R47 2
E
820 1
Q4 BC856
C
LD_CA7#
R46 2
B
C
LD_CA6#
820 1
C
LD_CA5#
R45 2
E
LD_CA4#
E
VDD_3V3
B C
LED DISPLAY
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
6 / 20
MLAB
S3AN01B_HW_Reference 2.2.6. Vstupní tlačítka a přepínače
Pro jednoduché vstupy jsou na desce umístěna 4 tlačítka a jeden osminásobný DIP přepínač. Vstupy jsou dále opatřeny hřebínky pro další využití vývodů. Protože se jedná o školní desku, jsou zde osazeny ochranné sériové rezistory. Použití tlačítek a přepínačů předpokládá, že jsou vstupy nakonfigurovány s pull-down odpory.
2 2 1
SW0 PUSH050x050
R29 390 1
R30 390 1
1
R31 390
1
R32 390
SW1 PUSH050x050 2 1
SW2 PUSH050x050 2 1
2 1
SW3 PUSH050x050
2
2
2
VDD_3V3
PB0 PB1 PB2 PB3
PUSH BUTTONS
16 15 14 13 12 11 10 9
VDD_3V3
SW4 DIPSW8
1 2 3 4 5 6 7 8
Switch 1 corespond with MSB (bit 7) R33 390 2 1 R34 390 2 1 R35 390 2 1 R36 390 2 1 R37 390 2 1 R38 390 2 1 R39 390 2 1 R40 390 2 1
J25 JUMP2X8 1 3 5 7 9 11 13 15
DIPSW0 DIPSW1 DIPSW2 DIPSW3 DIPSW4 DIPSW5 DIPSW6 DIPSW7
DIP SWITCHES
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
7 / 20
MLAB
S3AN01B_HW_Reference 2.2.7. Rozhraní PS/2 a I²C Deska je osazena dvěma porty PS/2 a jedním portem I²C.
Rozhraní PS/2 se používá pro připojení klávesnice a/nebo myši. Obě tyto periferie se liší pouze protokolem. Rozhraní I²C je určeno pro připojení periferií pro toto rozhraní. Obě rozhraní jsou po hardwarové stránce triviální, neboť se jedná vždy o dva vodiče (hodiny a data) buzené výstupy s otevřeným kolektorem. Komunikace je obousměrná. Protože signalizační napětí těchto rozhraní může být větší, než je +3.3V, je zde osazen omezovací obvod s tranzistorem FET, který zajistí, že napětí na vstupu FPGA nikdy nepřekročí napájecí napětí.
2
VDD_5V
2
VDD_3V3
D
1 2 3 4 5 6
1
S
1
PS2_DATA1
R73 4k7
G
R72 4k7
Q10 BS170SMD
2
VDD_5V
2
VDD_3V3
D
1
S
1
PS2_CLK1
DATA 2 GND +5V CLK 6 PS/2 MINIDIN6_PS2
R75 4k7
G
R74 4k7
J31
Q11 BS170SMD
PS/2 PORTS (5V TOLERANT) 2
VDD_5V
2
VDD_3V3
G
R69 #4k7
S
D
1
I2C_SCL
1
R68 4k7
Q8 BS170SMD
2
VDD_5V
2
VDD_3V3
S
G
R71 #4k7 D
1
1
R70 4k7 I2C_SDA
1 2 3 4
J30 JUMP4
Q9 BS170SMD
I2C INTERFACE (5V TOLERANT)
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
8 / 20
MLAB
S3AN01B_HW_Reference 2.2.8. VGA port
Pro připojení VGA monitoru k desce je zde realizováno triviální VGA rozhraní. Využívá se jen 4 úrovní (2 bity) pro každou základní barvu (tedy celkem 64 barev). Převod na analogové úrovně je realizován pomocí rezistorové sítě. Deska je osazena standardním VGA konektorem DB15. VGA_R0
2
R58 270
VGA_RED
1
VGA_GREEN
1 2
VGA_R1
2
R57 510
VGA_BLUE
1
R59 120
VGA_G0
2
R60 510 R61 270
1
J27
17
16 DB15F_3L_90
1 2
VGA_G1
2
6 1 11 7 2 12 8 3 13 9 4 14 10 5 15
1
R62 120
VGA_B0
2
R64 270
0.7 Vpp double terminated 75 Ohm 1
TTL Level Sync
1 2
VGA_B1
2
R63 510
1
R65 120
VGA_HS
VGA_VS
2
2
R66 100 R67 100
1
1
VGA VIDEO OUT
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
9 / 20
MLAB
S3AN01B_HW_Reference 2.2.9. Diferenciální signály
Protože obvod FPGA řady Spartan3A/3AN podporuje diferenciální signály, je několik těchto signálů vyvedeno na konektor. Hledal jsem vhodný konektor a na konec jsem použil konektor SATA, protože jej lze snadno získat ze šrotu. Standardně se tyto konektory neosazují. Signály z těchto konektorů jsou připojeny na vývody obvodu FPGA, které mohou sloužit i jako hodinové vstupy. J28 GND A+ AGND BB+ GND M M
1 2 3 4 5 6 7
J29 SD1AP SD1AN SD1BN SD1BP
8 9
GND A+ AGND BB+ GND M M
#SATA_DATA
1 2 3 4 5 6 7 8 9
SD2AP SD2AN SD2BN SD2BP
DIF OUTPUTS
#SATA_DATA
DIFERENCIAL IN/OUT
DIF1P DIF1N DIF2P DIF2N
1 3 5 7
J7 JUMP2X4 2 4 6 8
Další diferenciální signály jsou vyvedeny na hřebínek J7 k volnému použití. Protože jsou pro diferenciální signály využity banky 0 a 2, mohou být použity jako vstupní i výstupní. Banky 1 a 3 mají naproti tomu silnější výstupní budiče ale nepodporují diferenciální výstupy. Něco za něco.
2.2.10. 5V tolerantní vstupy Protože obvod FPGA samotný (stejně jako všechny novější a rychlejší obvody) nesnese na svých vstupech 5V signály, použili jsme na desce vstupní budiče SN74LVC16244, které poskytují 2x16 vstupů. Jsou to obvody U11 a U12 a prvních 22 signálů je připojeno rovnou na vstupy FPGA (zbývajících 10 signálů je vyvedeno na hřebínky). Kdo nepotřebuje 5V tolerantní vstupy, nemusí tyto obvody vůbec osazovat. Vstupní budiče je možné po čtveřicích (nibble) aktivovat propojkami J13 až J20. Zkratovací propojka povoluje příslušnou čtveřici budičů (otevírá třístavový výstup obvodu SN74LVC16244).. Použité budiče nemají na vstupu ochranné diody do plusu! Nesmějí se tedy budit signály většími než 5V a to ani přes velký sériová rezistor. Aby byla definována logická úroveň na vstupu budičů, jsou na všech vstupech rezistory 100KΩ do země.
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
10 / 20
MLAB
S3AN01B_HW_Reference
N2
R22 4k7 2
1
N3
J16 JUMP2 1 2
N3
R23 4k7 2
1
NIBBLE ENABLE
J10 JUMP22 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
J9 JUMP2X22 IP0 1 IP1 3 IP2 5 IP3 7 IP4 9 IP5 11 IP6 13 IP7 15 IP8 17 IP9 19 IP10 21 IP11 23 IP12 25 IP13 27 IP14 29 IP15 31 IP16 33 IP17 35 IP18 37 IP19 39 41 IP20 43 IP21
OE#
48 41 40 38 37
OE#
25 36 35 33 32
OE#
24 30 29 27 26
OE#
4 10 15 21 28 34 39 45
2 3 5 6 8 9 11 12 13 14 16 17 19 20 22 23 GND
VCC
GND
VCC
GND
VCC
GND
VCC
7 18 31 42
P15 P14 P13 P12
N3
P11 P10 P9 P8
N2
P7 P6 P5 P4
N1
P3 P2 P1 P0
N0
VDD_3V3
GND GND
C24 100nF
GND GND
U11 SN74LVC16244ADL
C25 100nF
2
N2
J15 JUMP2 1 2
C26 100nF
C27 100nF 1
1
2
R21 4k7 2
1
N1
2
N1
J14 JUMP2 1 2
1
1
1 47 46 44 43
VDD_3V3
2
N0
R20 4k7 2
1
N0
J13 JUMP2 1 2
5V TOLERANT INPUTS (BANK 1)
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
11 / 20
MLAB
S3AN01B_HW_Reference
N5
R25 4k7 2
1
N6
J19 JUMP2 1 2
N6
R26 4k7 2
1
N7
J20 JUMP2 1 2
N7
R27 4k7 2
1
J11 JUMP2X10 1 3 5 7 9 11 13 15 17 19
IX22 IX23 IX24 IX25 IX26 IX27 IX28 IX29 IX30 IX31
25 36 35 33 32
OE#
24 30 29 27 26
OE#
8 9 11 12
N6
13 14 16 17 19 20 22 23 VCC
GND
VCC
GND
VCC
GND
VCC
7 18 31 42
N5
P19 P18 P17 P16
N4
VDD_3V3
GND GND
C28 100nF
GND GND
U12 SN74LVC16244ADL
2
GND
P21 P20
2
4 10 15 21 28 34 39 45
N7
C29 100nF 1
J12 JUMP10 1 2 3 4 5 6 7 8 9 10
48 41 40 38 37
OE#
2 3 5 6
1
IP16 IP17 IP18 IP19 IP20 IP21
OE#
J21 JUMP10 1 2 3 4 5 6 7 8 9 10
X22 X23 X24 X25 X26 X27 X28 X29 X30 X31
2
N5
J18 JUMP2 1 2
C30 100nF
C31 100nF 1
1
1 47 46 44 43
VDD_3V3
2
N4
R24 4k7 2
1
N4
J17 JUMP2 1 2
5V TOLERANT INPUTS
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
12 / 20
MLAB
S3AN01B_HW_Reference 2.2.11. Analogové obvody
Pro pokusy s analogovými obvody je na desce osazen zesilovač s dolní propustí a komparátor. Lze tak realizovat jednoduchý D/A i A/D převodník. Viz aplikační poznámky XILINX XAPP154 a XAPP155. Nicméně neočekávejte zázraky, poctivý převodník tím nenhradíte.
R16 3k3
1
3 4
ANA_OUT 1 3 5
J8 JUMP2X3 2 4 6
2
2
C20 4n7
OA
1
1
ANA_IN
ANA_REF
VDD_3V3 1
4
COMP
2 C22 4n7
A/D D/A CONVERTER
1
ANA_IND
U10 MCP6546T-E/OT
1
1
C21 4n7
R19 3k3
3
2
1
1
U9 MCP6001T-I/OT
2
ANA_REFD
2
R17 3k3
2
R18 3k3
C23 100nF
1
2
2
1
5
R80 1k2
1
2
ANA_OUTD
2
VDD_3V3
5
2
C34 10nF
See XAPP154 and XAPP155 Low Pass 10KHz
2.3. Mechanická konstrukce Vývojová deska má standardní rozměry a upevňovací šrouby v rozích jako ostatní desky stavebnice MLAB.
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
13 / 20
S3AN01B_HW_Reference
MLAB
3. Osazení a oživení 3.1. Osazení Pro osazování je vhodné použít mikropáječku a postupovat obezřetně z hlediska elektrostatického náboje. Dále je potřeba jemná pinzeta a další obvyklé nářadí. Při osazování je vhodné nejprve osadit obvody napájecích zdrojů U2 a U3 a SMD součástky okolo nich. Poté je vhodné připojit +5V na vstup a zkontrolovat výstupní napětí +3.3V a +1.2V dokud nemáme osazeny další obvody. Poté osadíme obvod FPGA U1 a obvody budičů U11 a U12. Tyto obvody osazujeme s velkou pečlivostí, protože mají hodně vývodů s malou roztečí. Používáme minimální množství pájky a vhodné pastovité tavidlo. Obvod vždy nejprve připájíme za 2 protilehlé nožičky a teprve poté, co se ujistíme, že jsou obvody umístěny na všech stranách správně postupně zapájíme všechny vývody. Po osazení zkontrolujeme pod lupou kvalitu pájení a zda nejsou zkraty mezi vývody. Pak osadíme zbývající SMD součástky podle schématu a osazovacího plánu. Pak následují klasické součástky. Začínáme LED displejem, všemi hřebínky a nakonec konektory pro PS/2 a VGA port. Na závěr desku opticky zkontrolujeme (orientace součástek, zkraty, zapomenuté spoje a podobně) a přišroubujeme rohové šrouby se sloupky. Poslední operací je umytí zbytků tavidla, vysušení a finální optická kontrola.
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
14 / 20
S3AN01B_HW_Reference
MLAB
3.1.1. Osazovací plán, horní strana
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
15 / 20
S3AN01B_HW_Reference
MLAB
3.1.2. Osazovací plán, spodní strana
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
16 / 20
S3AN01B_HW_Reference
MLAB
3.1.3. Seznam součástek Ks
Reference
Hodnota
Pouzdro
Poznámka
Rezistory 1
R28
0R
20
R1-R10, R66, R67, R81-R88
100
R0805
3
R59, R62, R65
120
R0805
3
R58, R61, R64
270
R0805
22
R12, R14, R29, R30-R40, R49-R56
390
R0805
3
R57, R60, R63
510
R0805
9
R11, R41-R48
820
R0805
1
R80
1k2
R0805
4
R16, R17, R18, R19
3k3
R0805
21
R13, R15, R20-R27, R68, R70, R72-R79, R89
4k7
R0805
2
R69, R71
#4k7
R0805
32
R100-R131
100k
R0603
Neosazuje se
Kondenzátory keramické 3
C20-C22
4n7
C0805
1
C34
10nF
C0805
27
C4-C19, C23-C33
100nF
C0805
C1, C2, C3
22uF/6.3V
ELYTB
D9
1N5820
DO201
Kondenzátory tantalové 3 Diody 1
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
17 / 20
S3AN01B_HW_Reference Ks
Reference
MLAB
Hodnota
Pouzdro
Poznámka
Diody LED a displeje LED 10
D0-D8, D10
LED3mm_RED
LED3
2
LD0, LD1
FT-M514RD
4LED7_12PIN_14_2
Tranzistory 8
Q0-Q7
BC856
SOT23
6
Q8-Q13
BS170SMD
SOT23
Integrované obvody 1
U1
XC3S50AN-4TQG144C
TQFP144
1
U2
AP1086K33G-13
TO263
1
U3
TS1117BCP12R0
TO252
1
U4
CFPS-73-100M
SG8002
1
U5
AT45DB011D-SSH-B
SO8_150
Volitelné
1
U6
AT45DB011D-SH-B
SO8_210
Volitelné
1
U7
AT25DF0xxA-SSH
SO8_150
Volitelné
1
U8
SST24LF040A-33-4C-S2AE
SO8_210
Volitelné
1
U9
MCP6001T-I/OT
SOT23-5
1
U10
MCP6546T-E/OT
SOT23-5
2
U11, U12
SN74LVC16244ADL
SSOIII_48_300
Mechanické součástky 4
SW0-SW3
PUSH050x050
PUSH050x050
1
SW4
DIPSW8
DIPSW8
12
Propojka
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
18 / 20
S3AN01B_HW_Reference Ks
Reference
MLAB
Hodnota
Pouzdro
Poznámka
Konektory 1
J27
DB15F_3L_90
DB15F_3L_90
2
J31, J32
MINIDIN6_PS2
MINIDIN6
2
J28, J29
#SATA_DATA
SATA_DATA
Neosazuje se
Jednořadé hřebínky 1
J33+J34+J35+ J36+J37+J38
JUMP9
JUMP9
Nalámat
1
J22
#JUMP1
JUMP1
Neosazuje se
9
J6, J13, J14, J15, J16, J17, J18, J19, J20
JUMP2
JUMP2
Nalámat
1
J30
JUMP4
JUMP4
Nalámat
3
J12, J21, J100
JUMP10
JUMP10
Nalámat
1
J10
JUMP22
JUMP22
Nalámat
1
J3
JUMP9_X3_X5_X8
JUMP9_X3_X5_X8
Nalámat
Douřadé hřebínky 1
J24
JUMP2X2
JUMP2X2
Nalámat
5
J1, J2, J4, J5, J8
JUMP2X3
JUMP2X3
Nalámat
1
J7
JUMP2X4
JUMP2X4
Nalámat
2
J25, J26
JUMP2X8
JUMP2X8
Nalámat
1
J11
JUMP2X10
JUMP2X10
Nalámat
2
J9, J23
JUMP2X22
JUMP2X22
Nalámat
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
19 / 20
S3AN01B_HW_Reference Ks
Reference
Hodnota
MLAB Pouzdro
Poznámka
Konstrukční součástky 1
Plošný spoj
4
Šroub M3x12mm křížový, válcová hlava, pozinkovaný
4
Matice M3, pozinkovaná
4
Podložka M3, pozinkovaná
PCB S3AN01B
3.2. Oživení 3.2.1. První zapnutí Prvním krokem je připojení k laboratornímu zdroji a kontrola funkčnosti napájecích zdrojů. Postupně zvyšujeme napájecí napětí až k hranici +5V a měříme spotřebu (orientačně) a napětí na vnitřních stabilizátorech U2 a U3. Vnitřní napájecí napětí jsou +3.3V a +1.2V (mohou se lišit řekněme o desítky milivoltů). Spotřeba desky bez nahrané konfigurace je cca 50-60mA. Nyní je třeba ověřit, zda pracují ochranné obvody na PS/2 portech. Měříme napětí na Q10.D, které má být cca +5V a Q10.S, které má být o něco menší, než +3.3V. Toto měření opakujeme pro všechny 4 tranzistory, tedy pro Q10 až Q13. Podobně zkontrolujeme i ochranné obvody I²C portu. Jen je třeba z vnějšku připojit +4V na hřebínek J30.2 a J30.3 a měřit na tranzistorech Q8 a Q9. Opět se nesmí směrem k FPGA dostávat napětí větší, než je napájení +3.3V.
3.2.2. Testovací obsah Protože samotný obvod FPGA bez nahrané konfigurace je „mrtvým broukem“ je pro další oživování a testování potřeba použít nějaký vhodný obsah, aby bylo možno otestovat celou funkčnost desky. Testování desky je popsáno v dokumentu S3AN01B_HW_Test.
S3AN01B_HW_Reference.cs.doc / 2011-12-20 / miho / http://www.mlab.cz/PermaLink/S3AN01B
20 / 20