Komme i gang med Xilix Projekt Studio 7.1i En enkel men detaljert steg-for-steg veiledning til implementasjon av MicroBlase prosessoren på MEMEC protokort DS-BD-V4LX25MB. "Tor Aleksander Birk Danielsen", mailto:tordan@ift.uib.no, *Universitetet i Bergen, Institutt for fysikk og teknologi,* *Oktober 2005* Dette er en kort veiledning for å komme i gang med et enkelt microblaze system. Dette oppsettet basere seg på et prototypekort fra MEMEC samt bruk av "base System Builder" filer. Du vil trenge XPS innstalert på maskinen samt tilgang til hyperterminal eller annen terminal som kan lese com-portene på PC'en din.
I neste vindu får du to valg. Merk "I would like to create a new design" og klikk "next".
Her merker du "I would like to create a system for the following development board" og velger korekt prtotypekort fra menyen. Trykk så "next".
I neste vindu velger du "MicroBlaze" og trykker "next".
Du vil nå få opp et vindu hvor du kan sepsifisere MicroBlaze prosessorens egenskaper. Referanseklokken skal være 100MHz. Systemklokken
kan settes til 100MHz(eller lavere hvis det skulle være ønskelig). Prosessorconfigurasjonen settes til "On-chip H/W debug module".
Sett "Local data and instruction memory" til ønsket verdi, i vårt tilfelle 32kB. Velg "no cache". Klikk så "next".
Du vil nå få opp et vindu hvor du kan velge I/O interface for prosessoren. Merk vekk "Ethernet MAC" og sett hastigheten på "RS232_USB"
opp til maks (921600). Trykk så "next".
I dette vinduet lar du alt stå som det er og trykker "next".
Her settes minneområdene. La alt sto som det er og trykk "next".
I neste vindu får du spørsmål om å legge til enheter. Ikke gjør noe men trykk "next".
Du vil nå få opp et vindu med spørsmål om hva som skal være standar IO enhet. trykk også på valg for "Memory Test". Velg RS232 og trykk "next2.
I vinduet som nå kommer opp kan du velge hvor du vil plasere intruksjon, data og stack minne. La de valgte verdier stå og trykk "next".
Du vil nå få opp en oversikt over prosessoren og adresser til de forskjellige enhetene koblet til den. Trykk "Generate" og du vil få generert et
prosjekt basert på dine valg.
Du får så opp et vindu som sier at prosjektet er generert. Trykk "Finish".
Du vil nå se at prosjektet blir lastet inn i XPS. Du får også et lite vindu som heter "the next step". Velg "start using platform studio" og trykk "ok".
Når bitmap filen er ferdig vil du få følgende beskjed i outputvinduet:
Analyzing file TestApp_Memory/executable.elf... INFO:MDT - BRAM lmb_bram will be initialized with ELF of processor microblaze_0 Running Data2Mem with the following command: data2mem -bm implementation/system_bd -bt implementation/system.bit -bd TestApp_Memory/executable.elf tag lmb_bram -o b implementation/download.bit Memory Initialization completed successfully. Done.Eneable XMD debug Gå på "optionsmenyen" og velg "XMD debug Options". I vinduet som kommer opp merker du av "hardware" og trykker "save".
Kompilere programkoden
Til venstre i XPS åpner en vinduet som heter "Application". Høyreklikk på "xmdstud" og pass på at "mark to initialize BRAMs" er er umarkert. Gjør det samme
med "Project: TestApp_Memory" og sørg for at "mark to initialize BRAMs" er markert.
**** legg til options
I prosjektlista dobbelklikker du på source og åpner filen som ligger der. Du vil da få åpnet kildekoden din i hovedvinduet.
Bla deg ned i TestApp_Memory.c filen og finn main rutinen. Her legger du til "print("Dette er en test av 'ditt navn'\n\r");
".
//====================================================
int main (void) {
print("-- Entering main() --\r\n");
print("Dette er en test av 'ditt navn'\n\r");
/*
* MemoryTest routine will not be run for the memory at
* 0x00000000 (dlmb_cntlr)
* because it is being used to hold a part of this application program
*/
Trykk på lagre og åpne deretter menyen "tools" og velg "Build All User Aplication". All programkode vil da bli kompilert og du vil få en
utskrift som forteller størrelse på progamkoden.
mb-size TestApp_Memory/executable.elf text data bss dec hex filename 3968 300 8 4276 10b4 TestApp_Memory/executable.elf Done.Laste over bitfilen til virtex-4 Koble til parallellport-programereren fra xilinx til kortet og koble til en seriellkabel mellom kortet og PC'en. Start opp hyperterminal eller et alternativt program. Velg com1. I neste vindu setter du baudraten til 9600, databits til 8, velger "none" på parity, setter stopbit til 1 og velger hardware på "flow control". Trykk så på "apply".
Overføre sowftwaren til MicroBlaze prosessoren
Neste steg er nå å laste over prosessoren på FPGA'en. Slå på strømmen på prototypekortet. Velg så tools menyen og trykk på "Download". Når nedlastingen er
ferdig vil du få opp følgende tekst i outputvinduet:
INFO:iMPACT:579 - '1': Completed downloading bit file to device. INFO:iMPACT:580 - '1':Checking done pin ....done. '1': Programmed successfully. Elapsed time = 3 sec. // *** BATCH CMD : quit Done.Du vil nå starte kjøringen av programet straks nedlastingen er fredig. I hyperterminal vil du få opp en tekst som sier:
-- Entering main() -- Dette er en test av 'ditt navn' Starting MemoryTest for DDR_SDRAM_32Mx16: Running 32-bit test...PASSED! Running 16-bit test...PASSED! Running 8-bit test...PASSED! -- Exiting main() --Gratulerer!!! Du har nå implemenetert et enkelt softcore prosessorsytem på FPGA'en.