DE2-70 vývojová deska pro FPGA, programování ve VHDL a Verilog


obr.1 - vývojová deska DE2-70
|
DE2-70 je vývojová a výuková deska firmy Altera, založená na FPGA Cyclone II 2C70. Slouží k vývoji, testování projektů s FPGA, k výuce programování v jazyce VHDL a Verilog.
DE2-70 je podporována vývojovým software Quartus 9.1 a simulačním software DEEDS.
Na desce se kromě FPGA obvodu Cyclone II 2SC70, nachází konfigurační obvod EPCS16 a USB Blaster k programování v režimu JTAG a Active serial.

obr.2 - nastavení přepinače k programování v režimu JTAG

obr.3 - nastavení přepinače k programování v režimu AS
Další vybavení vývojové desky:
- 2 Mbyte SSRAM
- 2x 32 Mbyte SDRAM
- 8 Mbyte Flash
- patice pro SD kartu
- 4 tlačítka
- 18 přepínačů
- 18 červených LED diod
- 8 zelených LED diod
- 2 oscilátory: 50 MHz a 28.63 MHz
- 24-bitový audio CODEC v kvalitě CD se vstupem line-in a pro mikrofon a výstupem line-out
- trojnásobný rychlý video DA převodník s výstupem na VGA
- 2 TV dekodéry (NTSC/PAL/SECAM)
- 10/100 Ethernet inteface
- USB Host/Slave obvod s konektory USB typ A a B
- RS-232 inteface s konektorem DB9
- PS/2 konektor pro klávesnici a myš
- 8-místný 7-segmentový LED displej
- 2-řádkový 16-místný LCD displej
- IrDA vysílač
- SMA konektor pro externí oscilátor
- 2 rozšiřující konektory, každý 40 pinů s ochrannými diodami
Následující obrázek ukazuje blokové schema desky DE2-70:

obr.4 - blokové schema desky DE2-70
Všechny obvody jsou napojeny na centrální FPGA obvod Cyclone II 2SC70. Jednotlivé obvody je možno nastavit konfíguračním programem.
Cyclone II 2C70 FPGA
- 68,416 LE
- 250 M4K RAM blocků
- 1,152,000 RAM bitů
- 150 násobiček
- 4 PLLs
- 622 vývodů vstup/výstup pro uživatele
- pouzdro BGA s 896 vývody
Paměť
- 2-Mbyte standardní synchronní SRAM organizované do bloků 512K x 36 bitů
- dvě paměti 32-Mbyte Single Data Rate Synchronous Dynamic RAM, organizované do bloků 4M x 16 bity x 4 banky
- 8-Mbyte NOR Flash memory
- SD kartu připojenou přes SPI
Všechny tyo paměti jsou přístupné pro Nios II procesor a z kontrolního panelu DE2-70.
Tlačítka a spínače
4 tlačítka, jsou opatřeny obvody k potlačení zákmitů. Normálně jsou ve stavu "high", stlačením generují puls "low".
18 přepinačů, jsou ve stavu "low" pokud jsou na pozici blíže k okraji desky DE2-70. Přesunutím nahoru, dále od okraje desky DE2-70 jsou ve stavu "high".
Signály hodin
Dva oscilátory generují frekvence 50 MHz a 28.63 MHz. Kromě těchto zdrojů signálu lze použít vstup přes SMA konektor pro signál z externího generátoru.

obr.5 - zdroje hodinových signálů a jejich připojení
Audio CODEC
na desce DE2-70 je použit 24-bitový sigma-delta audio CODEC Wolfson WM8731 se vzorkovací frekvencí 8 až 96 kHz. K dispozici jsou vstupy pro mikrofon a line-in a výstup line-out.
VGA výstup
Pro připojení VGA monitoru je použit trojnásobný 10-bitový rychlý 140-MHz video DA převodník Analog Devices ADV7123, který je připojený na 15-pinový miniaturní D-sub konektor. Lze nastavit rozlišení max. 1600 x 1200 bodů s frekvencí 100 Hz.

tab.1 - horizontální časování

tab.2 - vertikální časování
Dekodér NTSC/PAL/ SECAM TV
DE2-70 používá dva víceformátové SDTV videodekodéry Analog Devices ADV7180 s podporou systémů NTSC, PAL a SECAM. Jedná se o 10-bitový AD převodník se 4-násobným převzorkováním CVBS. Podporuje kompozitní video přes vstup RCA video jack.
Digitální výstupy jsou ve formátu 8-bit ITU-R BT.656 YCrCb 4:2:2 výstup + HS, VS a FIELD.
10/100 Ethernet rozhraní
- používá Fast Ethernet řadič Davicom DM9000A s integrovaným MAC a PHY, s 16 kByte SRAM a s připojením na mikroprocesory
- podpora aplikací 100Base-T a 10Base-T
- podpora full-duplex při 10 Mb/s a 100 Mb/s, auto-MDIX
- generování a ověřování checksum IP/TCP/UDP
USB Host/Slave rozhraní
- používá USB 2.0 OTG řadič Philips ISP1362 s podporou režimů USB host a USB device
- podporuje rychlý a pomalý přenost dat
- režimy PIO (Programmed I/O) a DMA (Direct Memory Access)
- dva USB porty - jeden typu A pro host režim, druhý typu B pro device režim
- paralelní rychlé rozhraní k většině mikroprocesorů, připojení na CPU Nios II s ovladačem Terasic
sériové rozhraní
- jeden port RS232C s konektorem DB-9
- jeden port PS/2 pro připojení PS/2 klávesnice nebo PS2 myši

obr.6 - schema zapojení PS/2 portu
IrDA vysílač
používá infračervený vysílač s rychlostí 115.2-kb/s, buzením IR LED proudem 32 mA, integrovanou EMI ochranou a vstupní detekcí hran signálu.
40-pinové konektory
DE2-70 má pro uživatele dva 40-pinové konektory určené pro další rozšiřování hardware. Na těchto konektorech je 72 vývodů FPGA Cyclone II, dále 8 linek napájení a zemnění. Pro připojení na konektory lze použít běžný 40-pinový plochý kabel, používaný v PC počítačích pro připojení IDE hard disků. Všechny piny na konektorech mají ochranu pomocí diod a odporů.
Napájení
je řešeno pomocí externího síťového napáječe s napětím +12V/2A.
Kontrolní panel
Vývojová deska DE2-70 se ovládá z kontrolního panelu. K tomu je nutné mít připojený VGA monitor a v PC počítači instalovaný ovladač "Altera USB Blaster". Ten se instaluje ze software Quartus. Deska DE2-70 se připojí k PC počítači USB kabelem, na straně DE2-70 zasunutým v USB konektoru USB Blaster Port. Po zapnutí napájení se rozblikají barevné LED, 7-segmentový displej postupně ukazuje číslice a písmena od 0 do F. Na LCD displeji se objeví text "Welcome to the Altera DE2-70". Na připojeném VGA montoru se objeví logo DE2-70:

obr.7 - úvodní logo na VGA monitoru po zapnutí DE2-70
Spuštěním programu “DE2_70_Control_Panel.exe” v PC počítači se do DE2-70 vkládají soubory s řídícími kódy, včetně dvou souborů s příponami .sof a .elf. Jejich vložení je nutné potvrdit. Soubor .sof se uloží do FPGA. Soubor .elf se uloží buďto do SDRAM-U2 nebo do SSRAM, podle uživatelského nastavení.
Pro správnou funkci kontrolního panelu musí být splněny tyto předpoklady:
- v PC počítači musí být instalován software Quartus II a NIOS II
- PC počítač musí být připojen k DE2-70 USB kabelem do USB Blaster port
- musí být zapnuto napájení +12V
- přepínač "RUN/PROG" na DE2-70 musí být v pozici "RUN"
- z PC počítače musí být spuštěn program “DE2_70_Control_Panel.exe”
- na kontrolním panelu nutno zvolit cílovou paměť, SDRAM-U2 nebo SSRAM. Soubor .elf se uloží do cílové paměti a ta bude později přístupná pouze pro čtení.
Poznámka: kontrolní panel okupuje USB port, dokud není uzavřen. To znamená, do té doby nelze uložit konfigurační soubor z programu Quartus II do FPGA.
Následující obrázek ukazuje část kontrolního panelu pro nastavení LED diod. U každé diody lze nastavit, zda má být používána, nebo ne.

obr.8 - kontrolní panel, nastavení LED diod
Volbou záložky v horní části kontrolního panelu se vybere ta část DE2-70, která má být nastavena. Následující obrázek ukazuje strukturu kontrolního panelu:

obr.9 - struktura kontrolního panelu
pomocí kontrolního panelu je možno nastavovat LED diody, měnit hodnoty na 7-segmentov=m LED displeji, text na LCD displeji, lze monitorovat stav tlačítek a spínačů, číst a zapisovat data do SDRAM, SSRAM a Flash paměti, monitorovat pozici myši, číst data z klávesnice a některé informace z SD karty. Následující obrázek ukazuje záložku kontrolního panelu pro nastavení 7-segmentových LED ukazatelů:

obr.10 - kontrolní panel, nastavení LED displejů
Zobrazení textu na LCD displeji je možné řešit zápisem textu na kontrolním panelu. Tímto způsobem se ověří správná funkce řadiče LCD displeje a vlastního LCD displeje.

obr.11 - kontrolní panel, nastavení LCD displeje
Volbou záložky pro tlačítka a spínače je možné ověřit správnou funkci jednotlivých tlačítek a spínačů:

obr.12 - kontrolní panel, nastavení tlačítek a spínačů
Přes kontrolní panel je možný přímý přístup na paměti SDRAM, SSRAM a FLASH. Volbou záložky "Memory" a volbou paměti “SDRAM-U1” se objeví následující okno v kontrolním panelu:

obr.13 - kontrolní panel, test pamětí
Vložením adresy, kam má být zapisováno, se do SDRAM se po stisknutí tlačtka "Write" zapíše 16-bitové slovo. Obsah pak lze zpětně číst stiskem tlačítka "Read".
Následujícím způsobem je možné postupně zapsat celý soubor do SDRAM:
- určíte počáteční adresu v "Address box"
- do "Length box" zapíšete počet byte, které mají být zapsány. Má-li být zapsán soubor, je potřeba jej vyznačit.
- pro spuštění zápisu zvolte "Write" a "File to Memory"
- program reaguje standardním dotazem Windows dialogového okna odkud má být soubor vložen. Kontrolní panel dovoluje vložit také soubory s příponou .hex. Tyto soubory jsou ASCII textové soubory.
Podobně lze postupně přečíst data z paměti a uložit je do souboru:
- určíte počáteční adresu v "Address box"
- do "Length box" zapíšete počet byte, které mají přečteny. Má-li být přečten celý obsah paměti (32 Mbyte), je potřeba jej vyznačit.
- pro spuštění čtení zvolte "Load Memory Content to a File"
- program reaguje standardním dotazem Windows dialogového okna kam má být soubor vložen.
Stejným způsobem je možné přistupovat k pamětím SSRAM a Flash. Před zápisem do Flash paměti je nutné tuto paměť nejprve vymazat.
Kontrolní panel umožňuje uživateli monitorovat polohu USB myši připojené k DE2-70. Souřadnice myši a status tlačítek myši jsou zobrazovány graficky na kontrolním panelu. Pohyb myši připojené k USB HOST portu je přepočten na souřadnice (0,0) až (1023,767):

obr.14 - kontrolní panel, test USB portu myší
PS/2 klávesnici lze testovat pomocí kontrolního panelu v reálném čase. Kódy přicházející z PS/2 klávesnice jsou převáděny do ASCII znaků a zobrazovány v okně kontrolního panelu:

obr.15 - kontrolní panel, test PS/2 klávesnice
Záložka SD Card kontrolního panelu umožňuje identifikovat SD kartu v 1-bitovém režimu. Pro tento test je nutno nejprve zvolit záložku SD Card a potom vložit SD kartu do slotu. Stisknutím tlačítka "Read" budou přečteny informace SD karty a zobrazeny v okně kontrolního panelu:

obr.16 - kontrolní panel, test SD karty
Volbou poslední záložky vpravo (Audio) je možné provést audio testy přes audio obvod na desce DE2-70. Můžete přehrát WAVE soubor, přehrát zvuk a uložit zvukový signál jako WAVE soubor. WAVE soubor musí být nekompresovaný, stereo (2 kanály na vzorek) a 16-bitů na kanál. Vzorkování musí být některé z následujících: 96K, 48K, 44.1K, 32K nebo 8K.

obr.17 - kontrolní panel, přehrávání zvukového WAVE souboru
Pro nahrávání zvuku připojte mikrofon do MIC portu na desce DE2-70 , zvolte “Record MIC”, nastavte požadované vzorkování. Stiskem tlačítka “Start Record” začnete nahrávat. Signál z mikrofonu bude ukládán do SDRAM-U1. Zastavení nahrávání provedete stiskem “Stop Record”. Nakonec data uložená v SDRAM-U1 budou přenesena na PC počítač a zobrazena ve formě průběhu v okně. Stiskem “Save Wave” se uloží do WAV souboru.

obr.18 - kontrolní panel, nahrávání zvukového souboru
Celková struktura kontrolního panelu
Kontrolní panel DE2-70 je realizován na NIOS II systému, který běží na FPGA Cyclone II s SDRAM-U2 nebo SSRAM. Softwarová část je vytvořena v C kódu. Hardwarová část je vytvořena v kódech Verilog. Tento způsob umožňuje uživatelům obměňovat kódy a měnit kontrolní panel.

obr.19 - struktura kontrolního panelu
|