DHow2 - L5

Preview:

Citation preview

POLITECNICO DI MILANO

Creazione di un sistema embedded in EDK

DRESD How To (DHow2) - L5

Dynamic Reconfigurability in Embedded Systems Design

DRESD Team

info@dresd.org

2

Outline

ObiettivoIntroduzione a EDKDescrizione del progettoArchitetturaFile di progettoFlusso di progettoCreazione dell’architettura

3

Obiettivo

Creazione di un sistema embedded con processore PowerPC 405 (PPC405)

Sistema di sviluppo: Embedded Development Kit (EDK) versione 8.2iBoard: Virtex-II Pro Evaluation Board

XC2VP7-FF896-5 Virtex-II Pro FPGA

4

Introduzione a EDK

Framework di sviluppo di sistemi embedded completi con processore implementabili su FPGA della Xilinx

ComponentiXilinx Platform Studio (XPS)Software Development Kit (SDK): IDE basato su EclipseCompilatore e debugger GNU per lo sviluppo C per PowerPC e MicroBlazeIP-Core (processori e periferiche)Driver, librerie e microkernel per lo sviluppo softwareDocumentazioneProgetti di esempio

5

Descrizione del progetto

Base System Builder (BSB)Generazione del sistema embedded definito dall’utenteGenerazione di un programma di esempio: TestApp_Memory.c

Generazione bitstream

6

Architettura

PPC405 32-bit a 100 MHzBus PLBBus OPBBlocco RAM 64 KB connesso al bus PLB e usato per la memorizzazione di istruzioni e datiBlocco RAM 8 KB connesso al bus OPB e usato per eseguire un test sulla memoriaOPB_UARTlite: periferica UART connessa al bus OPB e usata per stdin e stdoutOPB_GPIO: periferica General Purpose I/O connessa al bus OPBOPB_Timer: periferica timer/contatore connessa al bus OPBOPB_Intc: interrupt controller connesso al bus OPB

7

File di progetto

system.xmp: file di progetto XPSposizione dei file MHS, MSS, Cdispositivo targetopzioni di progetto

system.mhs: Microprocessor Hardware Specificationprocessori, bus, periferiche, porte, parametri di configurazione delle periferiche

system.mss: Microprocessor Software Specificationlibrerie, driver, opzioni software del sistema

data/system.ucf: User Constraint Filepinoutfrequenza di clock

TestInterrupt/src/TestApp_Memory.c: applicazione

8

Flusso di progetto

Creazione dell’architetturaSintesi dell’architetturaMapping dell’architettura su FPGAGenerazione del bitstreamDownload del bitstream su FPGA

9

Creazione dell’architettura (1/3)

Lanciare XPSCreare un nuovo progetto usando Base System Builder WizardSpecificare la directory di progettoSelezionare “I would like to create a new design”Specificare la board

Selezionare “I would like to create a system for the following development board”Board Vendor: AvnetBoard Name: Avnet Virtex-II Pro Evaluation BoardRevision: 1.0

Selezionare il processorePowerPC

10

Creazione dell’architettura (2/3)

Configurare il PowerPCReference Clock Frequency: 100 MHz; Processor Clock Frequency: 100 MHz; Bus Clock Frequency: 100 MHzDebug Interface: FPGA JTAGOn-Chip Memory: Data: NONE; Instruction: NONE

Configurare le interfacce di I/OSelezionare RS232 con OPB UARTLITE, Baudrate 9600, Data bits 8, Parity NONE e uso di interruptSelezionare LEDs con OPB GPIO

Aggiungere le periferiche interneSelezionare PLB BRAM IF CNTRL da 64 KBAggiungere OPB BRAM IF CNTRL da 8 KBAggiungere OPB TIMER con Counter bit width 32, un timer e uso di interrupt

11

Creazione dell’architettura (3/3)

Eseguire il setup del softwareSpecificare STDIN: RS232; STDOUT: RS232Selezionare Memory test

Configurare l’applicazione di test della memoriaSpecificare Instruction: plb_bram_if_cntrl_1Specificare Data: plb_bram_if_cntrl_1Specificare Stack/Heap: plb_bram_if_cntrl_1

Generare l’architettura

12

Riferimenti

XilinxEmbedded System Tools Reference Manual - Embedded Development Kit, EDK 8.2i23 giugno 2006