Zestaw DSP60EX
Karta DSP60EX współpracuje z sterownikiem DSP60 i stanowi jego rozszerzenie o interfejs we/wy cyfrowy, analogowy oraz użytkownika. Karta z zamontowanym sterownikiem pozwala na wykorzystanie aż czterech procesorów: 2x TMS320C6713 (DSP), 1x ATMega128 (RISC), 1x NIOS2E (RISC)
1 2 3 4 5 6 18 wejść analogowych, 3x 16-bitowe przetworniki ADS8556 z konfigurowalnym zakresem napięć wejściowych oraz izolowaną magistralą cyfrową (względem fragmentu 4 z rys. 9.1) Gniazdo USB konwertera USB-RS232 (dwuprzewodowy) z izolacją magneto rezystancyjną względem 4. Prędkość transmisji do 3Mb/s. Konwerter jest podłączony do szeregowego portu procesora ATMega128 nr 0 4 izolowane wyjścia cyfrowe sterowane przez procesor ATMega128 dedykowane do pracy z stycznikami Główna część karty z osadzoną płytką sterownika DSP60, wyświetlaczem LCD (4x20) podłączonym do ATMega128, 4 przyciskami podłączonymi do ATMega128, 3 przełącznikami podłączonymi do układu FPGA oraz 12 diodami LED podłączonymi również do układu FPGA. Poza tym w części nr 4 znajdują się: buz zer, odbiornik podczerwieni zgodny z RC5 (pilot telewizyjny), karta SD/MMC, zegar RTC, złącze dla termometru 1-wire. Izolowane złącze RS232/RS485, podłączone do ATMega128 Separowane 36 wyjścia oraz 36 wejścia cyfrowe
1. Konfiguracja DSP 2. Konfiguracja FPGA 3. Wybór EPCS 4. Przyciski RESET oraz wyboru trybu 5. Szybki, separowany port komunikacji szeregowej 6. Główne wejście zasilania
Schemat blokowy sterownika DSP60
Zestawienie głównych układów scalonych sterownika DSP60: 1 2 3 4 5 Procesor sygnałowy DSP: TMS320C6713B, 300 MHz, BGA, HPI + 32-BIT EMIF, Texas Instruments Programowalny układ logiczny FPGA: EP3C40 w obudowie BGA484, Altera 2 pamięci równoległe flash po 2MB każda: EN29LV160BT, EON 4 pamięci SDRAM MT48LC16M16A2P-7E, łącznie do 128MB, Micron Bufor i powielacz (x4) sygnału zegarowego: CDCV304, Texas Instruments
Napięcia zasilania w sterowniku DSP60
CLOCK1 CLOCK2 CLOCK3 CLOCK0 DSP_POWER DSP60_POWER.SchDoc FPGA_M_RESET DSP_M_D[31..0] DSP_M_A[19..2] DSP_M_BE[3..0] DSP_M_AWE/SDWE DSP_M_ARE/SDCAS DSP_M_AOE/SDRAS DSP_M_ECLKOUT DSP_M_CLKOUT2/GP2 DSP_M_CE1 DSP_M_CE2 FLASH_M_RY/BY# FLASH_M_CE DSP_M_ARDY DSP_M_HOLD DSP_M_HOLDA DSP_M_BUSREQ DSP_MASTER_EINT7 DSP_M_EINT5 DSP_M_EINT4 DSP_M_TOUT0 DSP_M_TINP0 DSP_MASTER_CE3 DSP_MASTER_A4 DSP_MASTER_A3 DSP_MASTER_A2 DSP_MASTER_D[15..0] DSP_MASTER_AWE/SDWE DSP_MASTER_ARE/SDCAS CLOCK0 DSP_MASTER DSP60_C6713_MASTER.SchDoc FPGA_M_RESET DSP_M_CE1 DSP_M_D[31..0] DSP_M_A[19..2] DSP_M_BE[3..0] DSP_M_ECLKOUT DSP_M_ARE/SDCAS DSP_M_AWE/SDWE DSP_M_CLKOUT2/GP2 DSP_M_AOE/SDRAS DSP_M_CE2 DSP_M_ARDY FLASH_M_RY/BY# FLASH_M_CE DSP_M_HOLD DSP_M_HOLDA DSP_M_BUSREQ DSP_MASTER_EINT7 DSP_M_EINT5 DSP_M_EINT4 DSP_M_TOUT0 DSP_M_TINP0 FPGA_S_RESET DSP_S_D[31..0] DSP_S_A[19..2] DSP_S_BE[3..0] DSP_S_AWE/SDWE DSP_S_ARE/SDCAS DSP_S_AOE/SDRAS DSP_S_ECLKOUT DSP_S_CLKOUT2/GP2 DSP_S_CE1 DSP_S_CE2 FLASH_S_RY/BY# FLASH_S_CE DSP_S_ARDY DSP_S_HOLD DSP_S_HOLDA DSP_S_BUSREQ DSP_S_EINT6 DSP_S_EINT5 DSP_S_EINT4 DSP_S_TOUT0 DSP_S_TINP0 DSP_S_HPI_HINT DSP_S_HPI_HCS DSP_S_HPI_HDS1 DSP_S_HPI_HDS2 DSP_S_HPI_HHWIL DSP_S_HPI_HCNTL0 DSP_S_HPI_HCNTL1 DSP_S_HD[15..0] DSP_S_HPI_HRDY DSP_S_HPI_HR/W DSP_S_CE3 CLOCK1 EXT_CLK13 EXT_CLK14 EXT_CLK15 DSP_SLAVE DSP60_C6713_SLAVE.SchDoc FPGA_S_RESET DSP_S_CE1 DSP_S_D[31..0] DSP_S_A[19..2] DSP_S_BE[3..0] DSP_S_ECLKOUT DSP_S_ARE/SDCAS DSP_S_AWE/SDWE DSP_S_CLKOUT2/GP2 DSP_S_AOE/SDRAS DSP_S_CE2 DSP_S_ARDY FLASH_S_RY/BY# FLASH_S_CE DSP_S_HOLD DSP_S_HOLDA DSP_S_BUSREQ DSP_S_EINT6 DSP_S_EINT5 DSP_S_EINT4 DSP_S_TOUT0 DSP_S_TINP0 DSP_MASTER_CE3 DSP_MASTER_A2 DSP_MASTER_A3 DSP_MASTER_A4 DSP_MASTER_D[15..0] DSP_MASTER_A4 DSP_MASTER_A3 DSP_MASTER_A2 DSP_MASTER_D[15..0] DSP_MASTER_ARE/SDCAS DSP_MASTER_AWE/SDWE DSP_S_HPI_HRDY DSP_S_HPI_HR/W DSP_M_D[31..0] DSP_M_CLKOUT2/GP2 FPGA_M_RESET FLASH_M_CE DSP_M_A[19..2] DSP_M_BE[3..0] DSP_M_AWE/SDWE DSP_M_ARE/SDCAS DSP_M_AOE/SDRAS DSP_M_ECLKOUT DSP_M_CE1 DSP_M_CE2 FLASH_M_RY/BY# DSP_M_ARDY DSP_M_HOLD DSP_M_HOLDA DSP_M_BUSREQ DSP_M_EINT5 DSP_M_EINT4 DSP_M_TOUT0 DSP_M_TINP0 DSP_S_D[31..0] DSP_S_CLKOUT2/GP2 FPGA_S_RESET FLASH_S_CE DSP_S_A[19..2] DSP_S_BE[3..0] DSP_S_AWE/SDWE DSP_S_ARE/SDCAS DSP_S_AOE/SDRAS DSP_S_ECLKOUT DSP_S_CE1 DSP_S_CE2 DSP_S_CE3 FLASH_S_RY/BY# DSP_S_ARDY DSP_S_HOLD DSP_S_HOLDA DSP_S_BUSREQ DSP_S_EINT6 DSP_S_EINT5 DSP_S_EINT4 DSP_S_TOUT0 DSP_S_TINP0 DSP_S_HPI_HR/W DSP_S_HPI_HRDY CLOCK2 CLOCK3 EXT_CLK13 EXT_CLK14 EXT_CLK15 DSP_FPGA DSP60_FPGA.SchDoc DSP_S_CE3 CLOCK0 CLOCK1 CLOCK2 CLOCK3 CLOCK1 CLOCK2 CLOCK3 EXT_CLK13 EXT_CLK14 EXT_CLK15 Nadrzędny schemat ideowy sterownika DSP60
Złącza sterownika DSP60
J100, J200 Gniazda męskie 2x7 raster 2,54 mm do podłączenia emulatora JTAG XDS510USB, XDS510GalvanicUSB, XDS560. Należy zwrócić uwagę na pin nr 6. Jeśli wtyczka emulatora JTAG XDS510USB ma zaślepiony otwór nr 6 to pin ten należy wymontować. Odwrotne podłączenie wtyczki może spowodować uszkodzenie emulatora (przeważnie uszkodzeniu ulegają diody zabezpieczające i bufory). M_CFG, S_CFG Zworki konfiguracyjne procesora DSP Złącza konfiguracyjne dla procesorów DSP. U góry znajduje się widok na złącze M_CFG, gdzie HD[8] = HI, HD[4:3]= HI LO (0x10), HD[14] = LO. Aby uaktywnić interfejs HPI procesora DSP_MASTER należy HD[14] podłączyć do HI.
JTAG2 Standardowe złącze JTAG dla układów FPGA firmy Altera. Do złącza należy podłączyć programator USB_BLASTER, który jest wymagany dla konfigurowania układu FPGA oraz programowania pamięci EPCS. J300 Sterownik DSP60 oferuje dwie pamięci EPCS16. Aktywacja jednej z pamięci polega na ustawieniu zworek wg poniższego schematu (widok na płytce DSP60 jest odwrócony o 180 ).
SERIAL1 Do tego gniazda podłącza się wtyczkę IDC10 modułu separowanej transmisji szeregowej. Po stronie modułu należy wybrać odpowiednią opcję z dwóch możliwych: SERIAL1 tryb 1 4 dwuprzewodowe kanały RS232 Piny 1, 2, 3, 4 złącza SERIAL1 oraz SERIAL2 są niezmienne funkcjonalnie i należą do kanału C oraz D konwertera usb-serial FT4232H na ten czas przyjęta prędkość transmisji w każdym kanale wynosi 1Mb/s bufor sprzętowy każdego kanału wynosi 2kB bufor pośredniczący w FPGA ustalono na 256B transmisji pośredniczy specjalny blok w strukturze cyfrowej, dla każdego kanału jest on identyczny SERIAL2 tryb 2 2 kanały RS232 + interfejs SPI (MISO, MOSI, SCK, CS) prędkość maksymalna RS232 wynosi 12Mb/s prędkość maksymalna interfejsu SPI to 30Mb/s gdy opcja SERIAL2 nie jest wykorzystywana nie trzeba lutować wszystkich elementów w module separowanej transmisji szeregowej
RXD_INPUT_CX TXD_OUTPUT_CX TXD_OUTPUT_AX RXD_INPUT_AX RXD_INPUT_BX SERIAL1 1 2 3 4 5 6 7 8 9 10 HEADER 5X2 GND RXD_INPUT_DX TXD_OUTPUT_DX 3V3 TXD_OUTPUT_BX RXD_INPUT_CX TXD_OUTPUT_CX SPIX_CLK SPIX_DIN SPIX_CS SERIAL2 1 2 3 4 5 6 7 8 9 10 RXD_INPUT_DX TXD_OUTPUT_DX 3V3 SPIX_DOUT HEADER 5X2 GND Złącza SERIAL1 oraz SERIAL2 znajdujące się w module separowanej transmisji szeregowej Wykorzystanie kanałów konwertera FT4232H: kanał A : aplikacja StdOutPort dla procesora DSP MASTER kanał B : aplikacja StdOutPort dla procesora DSP SLAVE kanał C : aplikacja TmsProgrammer dla procesora DSP MASTER kanał D : aplikacja TmsProgrammer dla procesora DSP SLAVE
HDR100 Na złączu znajdują się piny: - interfejsu HPI DSP_M_HD14 DSP_M_HD12 DSP_M_HD10 DSP_M_HD8 DSP_M_HD6 DSP_M_HD4 DSP_M_HD2 DSP_M_HD0 DSP_M_HPI_HAS DSP_M_HPI_HDS2 DSP_M_HPI_HCNTL1 DSP_M_HPI_HCNTL0 DSP_M_HPI_HINT DSP_MASTER_SCL0 DSP_MASTER_DR1 DSP_MASTER_CLKX1 DSP_MASTER_FSX1 DSP_MASTER_DR0 DSP_MASTER_DX0 DSP_MASTER_CLKR0 DSP_MASTER_CLKS1 DSP_M_TOUT1 GND HDR100 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 HDR 100mils 3V3 DSP_M_HD15 DSP_M_HD13 DSP_M_HD11 DSP_M_HD9 DSP_M_HD7 DSP_M_HD5 DSP_M_HD3 DSP_M_HD1 DSP_M_HPI_HDS1 DSP_M_HPI_HCS DSP_M_HPI_HR/W DSP_M_HPI_HRDY DSP_M_HPI_HHWIL DSP_MASTER_SDA0 DSP_MASTER_FR1 DSP_MASTER_CLKR1 DSP_MASTER_DX1 DSP_MASTER_CLKS0 DSP_MASTER_FR0 DSP_MASTER_FSX0 DSP_MASTER_CLKX0 DSP_M_EINT6 DSP_M_TINP1 - szeregowej transmisji I2C (DSP_MASTER_SCL0, DSP_MASTER_SDA0) - interfejsu MCASP (mogą być skonfigurowane jako GPIO ale nie zostało to zweryfikowane praktycznie) - przerwanie zewnętrzne EINT[6] procesora DSP MASTER - timera nr 1 procesora DSP MASTER
HDR200 Na złączu znajdują się piny: - zasilania IN5V (5V) GND GND_BOTTOM EXT_CLK14 EXT_CLK13 DSP_SLAVE_CLKS1 DSP_S_TINP1 DSP_SLAVE_FSX0 DSP_SLAVE_CLKR0 DSP_SLAVE_FR0 DSP_SLAVE_FSX1 DSP_SLAVE_CLKX1 DSP_SLAVE_DR1 DSP_SLAVE_SDA0 IN5V HDR200 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 HDR 100mils FR200 EMITI0603U301 FR201 EMITI0603U301 GND 5V EKRAN NA STRONIE BOTTOM R251 GND_BOTTOM GND 0 EXT_CLK15 DSP_S_EINT7 DSP_S_TOUT1 DSP_SLAVE_CLKX0 DSP_SLAVE_DX0 DSP_SLAVE_DR0 DSP_SLAVE_CLKS0 DSP_SLAVE_DX1 DSP_SLAVE_CLKR1 DSP_SLAVE_FR1 DSP_SLAVE_SCL0 - szeregowej transmisji I2C (DSP_SLAVE_SCL0, DSP_SLAVE_SDA0) - interfejsu MCASP procesora SLAVE (mogą być skonfigurowane jako GPIO ale nie zostało to zweryfikowane praktycznie) - przerwanie zewnętrzne EINT[7] procesora DSP SLAVE - timera nr 1 procesora DSP SLAVE - 3 wejścia EXT_CLK[15..13]
Przykładowe połączenia komunikacyjne sterownika DSP60
PRZERWANIA DSP MASTER EXT_INT[7] Przerwanie to podłączone jest do procesora DSP SLAVE Przerwanie jest generowane przez wpis do rejestru kontrolnego HPI procesora DSP SLAVE EXT_INT[6] doprowadzone do złącza HDR100 może być wykorzystane do komunikacji z procesorem komunikacyjnym EXT_INT[5] Doprowadzone do układu FPGA może być wykorzystane do zadań związanych z komunikacją RS lub modulatorem EXT_INT[4] Doprowadzone do układu FPGA może być wykorzystane do zadań związanych z komunikacją RS lub modulatorem PRZERWANIA DSP SLAVE EXT_INT[7] doprowadzone do złącza HDR200 może być wykorzystane do komunikacji z procesorem komunikacyjnym EXT_INT[6] Doprowadzone do układu FPGA EXT_INT[5] Doprowadzone do układu FPGA EXT_INT[4] Doprowadzone do układu FPGA
PRZESTRZENIE CE CE[0] zarówno procesor MASTER jak i SLAVE połączono z pamięciami SDRAM, łączenie 32MB CE[1] podłączono do pamięci FLASH CE[2] podłączono do FPGA CE[3] procesora MASTER podłączono do HPI procesora SLAVE CE[3] procesora SLAVE wprowadzono do FPGA ale na ten czas przestrzeń nie jest wykorzystywana GPIO piny CLKOUT2/GP2 procesora DSP Zarówno DSP MASTER jak i DSP SLAVE są podłączone jedną linią GPIO z układem FPGA: MASTER linia DSP_M_CLKOUT2/GP2 SLAVE linia DSP_S_CLKOUT2/GP2 Sygnały te mogą być szczególnie przydatne w pomiarach czasów realizacji zadań DSP gdyż nie należą do grupy sygnałów portu równoległego EMIF. HOST PORT INTERFACE Przestrzeń CE[3] procesora MASTER jest połączona z interfejsem HPI procesora SLAVE. Port HPI procesora MASTER na ten czas nie jest wykorzystywany ale zgodnie z założeniami będzie on wykorzystywany do komunikacji z procesorem na karcie interfejsów.