Microsemi AC490 RTG4 FPGA: Izgradnja Mi-V procesorskog podsistema
Istorija revizija
Historija revizija opisuje promjene koje su implementirane u dokument. Promjene su navedene po reviziji, počevši od najnovije publikacije.
Revizija 3.0
Sljedeći je sažetak promjena napravljenih u ovoj reviziji.
- Ažuriran dokument za Libero SoC v2021.2.
- Ažurirana slika 1, stranica 3 do slike 3, stranica 5.
- Zamijenjena slika 4, stranica 5, slika 5, stranica 7 i slika 18, stranica 17.
- Ažurirana tabela 2, stranica 6 i tabela 3, stranica 7.
- Dodan Dodatak 1: Programiranje uređaja pomoću FlashPro Expressa, stranica 14.
- Dodan Dodatak 3: Pokretanje TCL skripte, stranica 20.
- Uklonjene reference na brojeve verzija Libera.
Revizija 2.0
Sljedeći je sažetak promjena napravljenih u ovoj reviziji.
- Dodate informacije o izboru COM porta u Postavljanje hardvera, stranica 9.
- Ažurirano kako odabrati odgovarajući COM port u Pokretanju demonstracije, stranica 11.
Revizija 1.0
Prvo objavljivanje dokumenta.
Izgradnja Mi-V procesorskog podsistema
Microchip nudi Mi-V procesor IP, 32-bitni RISC-V procesor i softverski alat za razvoj dizajna zasnovanih na RISC-V procesorima. RISC-V, standardna otvorena arhitektura skupa instrukcija (ISA) pod upravom RISC-V fondacije, nudi brojne prednosti, koje uključuju omogućavanje zajednici otvorenog koda da testira i poboljša jezgra bržim tempom od zatvorenih ISA.
RTG4® FPGA podržavaju Mi-V meki procesor za pokretanje korisničkih aplikacija. Ova napomena o aplikaciji opisuje kako izgraditi Mi-V procesorski podsistem za izvršavanje korisničke aplikacije iz određenih RAM-ova ili DDR memorije.
Zahtjevi za dizajn
Sljedeća tabela navodi hardverske i softverske zahtjeve za pokretanje demonstracije.
Tabela 1 • Zahtjevi za dizajn
Softver
- Libero® sistem-na-čipu (SoC)
- FlashPro Express
- SoftConsole
Napomena: Pogledajte readme.txt file predviđeno u dizajnu files za verzije softvera koje se koriste s ovim referentnim dizajnom.
Napomena: Libero SmartDesign i snimci ekrana konfiguracije prikazani u ovom vodiču služe samo u svrhu ilustracije.
Otvorite Libero dizajn da vidite najnovija ažuriranja.
Preduvjeti
Prije nego počnete:
- Preuzmite i instalirajte Libero SoC (kao što je navedeno u websajt za ovaj dizajn) na glavnom računaru sa sledeće lokacije: https://www.microsemi.com/product-directory/design-resources/1750-libero-soc
- Za demo dizajn filelink za preuzimanje: http://soc.microsemi.com/download/rsc/?f=rtg4_ac490_df
Opis dizajna
Veličina RTG4 μPROM je 57 KB. Korisničke aplikacije koje ne prelaze veličinu μPROM mogu se pohraniti u μPROM i izvršiti iz internih velikih SRAM memorija (LSRAM). Korisničke aplikacije koje premašuju veličinu μPROM moraju biti pohranjene u vanjskoj nepromjenjivoj memoriji. U ovom slučaju, pokretač koji se izvršava iz μPROM-a je neophodan za inicijalizaciju internih ili eksternih SRAM memorija sa ciljnom aplikacijom iz nepromjenjive memorije.
Referentni dizajn pokazuje sposobnost pokretača da kopira ciljnu aplikaciju (veličine 7 KB) sa SPI flash memorije u DDR memoriju i izvrši iz DDR memorije. Bootloader se izvršava iz internih memorija. Odjeljak koda nalazi se u μPROM, a odjeljak s podacima nalazi se u internom Large SRAM-u (LSRAM).
Napomena: Za više informacija o tome kako izgraditi Mi-V bootloader Libero projekat i kako izgraditi projekat SoftConsole, pogledajte TU0775: PolarFire FPGA: Vodič za pravljenje Mi-V procesorskog podsistema
Slika 1 prikazuje blok dijagram najviše razine dizajna.
Slika 1 • Blok dijagram najvišeg nivoa
Kao što je prikazano na slici 1, sljedeće točke opisuju tok podataka dizajna:
- Mi-V procesor izvršava bootloader iz μPROM-a i određenih LSRAM-ova. Bootloader se povezuje sa GUI kroz CoreUARTapb blok i čeka komande.
- Kada se naredba SPI flash programa primi iz GUI-ja, pokretač programira SPI flash sa ciljnom aplikacijom primljenom od GUI-ja.
- Kada se naredba za pokretanje primi iz GUI-ja, pokretač kopira kod aplikacije sa SPI flash memorije u DDR i zatim ga izvršava iz DDR-a.
Clocking Structure
Postoje dva domena takta (40 MHz i 20 MHz) u dizajnu. Ugrađeni kristalni oscilator od 50 MHz povezan je sa blokom PF_CCC koji generiše taktove od 40 MHz i 20 MHz. Sistemski takt od 40 MHz pokreće kompletan Mi-V procesorski podsistem osim μPROM-a. Takt od 20 MHz pokreće RTG4 μPROM i RTG4 μPROM APB interfejs. RTG4 μPROM podržava frekvenciju takta do 30 MHz. DDR_FIC je konfigurisan za AHB bus interfejs, koji radi na 40 MHz. DDR memorija radi na 320 MHz.
Slika 2 prikazuje strukturu takta.
Slika 2 • Struktura sata
Resetuj strukturu
Signali POWER_ON_RESET_N i LOCK su AND, a izlazni signal (INIT_RESET_N) se koristi za resetiranje bloka RTG4FDDRC_INIT. Nakon otpuštanja FDDR resetiranja, FDDR kontroler se inicijalizira, a zatim se potvrđuje signal INIT_DONE. Signal INIT_DONE se koristi za resetiranje Mi-V procesora, perifernih uređaja i drugih blokova u dizajnu.
Slika 3 • Resetuj strukturu
Implementacija hardvera
Slika 4 prikazuje Libero dizajn referentnog dizajna Mi-V.
Slika 4 • SmartDesign modul
Napomena: Snimak ekrana Libero SmartDesign prikazan u ovoj napomeni o aplikaciji je samo u svrhu ilustracije. Otvorite Libero projekat da vidite najnovija ažuriranja i IP verzije.
IP Blocks
Slika 2 navodi IP blokove koji se koriste u referentnom dizajnu Mi-V procesorskog podsistema i njihovu funkciju.
Tabela 2 • IP blokovi1
Svi IP korisnički vodiči i priručnici dostupni su na Libero SoC -> Katalog.
RTG4 μPROM pohranjuje do 10,400 36-bitnih riječi (374,400 bita podataka). Podržava samo operacije čitanja tokom normalnog rada uređaja nakon što je uređaj programiran. MIV_RV32_C0 procesorsko jezgro se sastoji od jedinice za dohvaćanje instrukcija, cevovoda za izvršavanje i sistema memorije podataka. Sistem memorije procesora MIV_RV32_C0 uključuje keš instrukcija i keš podataka. MIV_RV32_C0 jezgro uključuje dva eksterna AHB interfejsa - master interfejs sabirnice AHB memorije (MEM) i master interfejs sabirnice AHB memorijski mapiran I/O (MMIO). Kontroler keš memorije koristi AHB MEM sučelje za ponovno punjenje instrukcija i keša podataka. AHB MMIO sučelje se koristi za nekeširani pristup I/O periferijama.
Memorijske mape AHB MMIO sučelja i MEM sučelja su 0x60000000 do 0X6FFFFFFF i 0x80000000 do 0x8FFFFFFF, respektivno. Vektorska adresa za resetovanje procesora se može konfigurisati. Resetovanje MIV_RV32_C0 je aktivni-niski signal, koji se mora poništiti sinhronizovano sa sistemskim satom preko sinhronizatora za resetovanje.
Procesor MIV_RV32_C0 pristupa memoriji za izvršavanje aplikacije koristeći AHB MEM sučelje. Instanca sabirnice CoreAHBLite_C0_0 je konfigurisana da obezbedi 16 slave slotova, svaki veličine 1 MB. RTG μPROM memorija i RTG4FDDRC blokovi su povezani na ovu magistralu. μPROM se koristi za pohranjivanje bootloader aplikacije.
MIV_RV32_C0 procesor usmjerava transakcije podataka između adresa 0x60000000 i 0x6FFFFFFF na MMIO sučelje. MMIO interfejs je povezan na sabirnicu CoreAHBLite_C1_0 za komunikaciju sa perifernim uređajima povezanim na njegove slave slotove. Instanca sabirnice CoreAHBLite_C1_0 je konfigurisana da obezbedi 16 slave slotova, svaki veličine 256 MB. UART, CoreSPI i CoreGPIO periferne jedinice su povezane na CoreAHBLite_C1_0 magistralu preko CoreAHBTOAPB3 mosta i CoreAPB3 magistrale.
Mapa memorije
Tabela 3 navodi memorijsku mapu memorija i perifernih uređaja.
Tabela 3 • Mapa memorije
Implementacija softvera
Referentni dizajn fileuključuje radni prostor SoftConsole koji sadrži sljedeće softverske projekte:
- Bootloader
- Ciljna aplikacija
Bootloader
Aplikacija bootloader programira se na μPROM tokom programiranja uređaja. Bootloader implementira sljedeće funkcije:
- Programiranje SPI Flash-a sa ciljnom aplikacijom.
- Kopiranje ciljne aplikacije sa SPI Flash u DDR3 memoriju.
- Prebacivanje izvršenja programa na ciljnu aplikaciju dostupnu u DDR3 memoriji.
Aplikacija bootloader mora se izvršiti iz μPROM-a sa LSRAM-om kao stogom. Dakle, adrese ROM-a i RAM-a u linker skripti su postavljene na početnu adresu μPROM-a i naznačene LSRAM-ove, respektivno. Sekcija koda se izvršava iz ROM-a, a sekcija podataka se izvršava iz RAM-a kao što je prikazano na slici 5.
Slika 5 • Bootloader Linker Script
Linker skripta (microsemi-riscv-ram_rom.ld) je dostupna na
SoftConsole_Project\mivrv32im-bootloader folder dizajna files.
Ciljna aplikacija
Ciljna aplikacija treperi ugrađenim LED diodama 1, 2, 3 i 4 i ispisuje UART poruke. Ciljna aplikacija se mora izvršiti iz DDR3 memorije. Dakle, sekcije koda i steka u linker skripti su postavljene na početnu adresu DDR3 memorije kao što je prikazano na slici 6.
Slika 6 • Ciljna skripta povezivača aplikacije
Skripta za povezivanje (microsemi-riscv-ram.ld) dostupna je u SoftConsole_Project\miv-rv32imddr- aplikacijskoj fascikli dizajna files.
Postavljanje hardvera
Sljedeći koraci opisuju kako postaviti hardver:
- Uvjerite se da je ploča isključena pomoću prekidača SW6.
- Povežite džampere na razvojnom kompletu RTG4, kao što je prikazano u sljedećoj tabeli:
Tabela 4 • DžemperiJumper Pin From Pin To Komentari J11, J17, J19, J23, J26, J21, J32 i J27 1 2 Default J16 2 3 Default J33 1 2 Default 3 4 - Povežite glavni računar na J47 konektor pomoću USB kabla.
- Uvjerite se da su upravljački programi za USB na UART most automatski otkriveni. Ovo se može provjeriti u upravitelju uređaja glavnog računara.
- Kao što je prikazano na slici 7, svojstva porta COM13 pokazuju da je spojen na USB serijski pretvarač C. Stoga je COM13 odabran u ovom primjeru.ample. Broj COM porta je specifičan za sistem.
Slika 7 • Upravljač uređajima
Napomena: Ako upravljački programi za USB na UART most nisu instalirani, preuzmite i instalirajte drajvere sa www.microsemi.com//documents/CDM_2.08.24_WHQL_Certified.zip. - Spojite napajanje na J9 konektor i uključite prekidač napajanja, SW6.
Slika 8 • RTG4 razvojni komplet
Pokretanje demo verzije
Ovo poglavlje opisuje korake za programiranje RTG4 uređaja sa referentnim dizajnom, programiranje SPI Flash-a sa ciljnom aplikacijom i dizanje ciljne aplikacije iz DDR memorije koristeći Mi-V Bootloader GUI.
Pokretanje demo-a uključuje sljedeće korake:
- Programiranje RTG4 uređaja, stranica 11
- Pokretanje Mi-V Bootloadera, stranica 11
Programiranje RTG4 uređaja
RTG4 uređaj se može programirati koristeći FlashPro Express ili Libero SOC.
- Za programiranje RTG4 razvojnog kompleta sa poslom file predviđeno kao dio dizajna files pomoću softvera FlashPro Express, pogledajte Dodatak 1: Programiranje uređaja pomoću FlashPro Expressa, stranica 14.
- Za programiranje uređaja pomoću Libero SoC-a, pogledajte Dodatak 2: Programiranje uređaja pomoću Libero SoC-a, stranica 17.
Pokretanje Mi-V Bootloader-a
Nakon uspješnog završetka programiranja, slijedite ove korake:
- Pokrenite setup.exe file dostupno u sljedećem dizajnu files lokacija.
<$Download_Directory>\rtg4_ac490_df\GUI_Installer\Mi-V Bootloader_Installer_V1.4 - Slijedite čarobnjaka za instalaciju da biste instalirali Bootloader GUI aplikaciju.
Slika 9 prikazuje RTG4 Mi-V Bootloader GUI.
Slika 9 • Mi-V Bootloader GUI - Odaberite COM port spojen na USB serijski pretvarač C kao što je prikazano na slici 7.
- Kliknite na dugme za povezivanje. Nakon uspješnog povezivanja crveni indikator postaje zelen kao što je prikazano na slici 10.
Slika 10 • Povežite COM port - Kliknite na dugme Uvezi i odaberite ciljnu aplikaciju file (.bin). Nakon uvoza, put do file je prikazan na GUI kao što je prikazano na slici 11.
<$Download_Directory>\rtg4_ac490_df\Source_files
Slika 11 • Uvezite ciljnu aplikaciju File - Kao što je prikazano na slici 11, kliknite na opciju Programiraj SPI Flash da programirate ciljnu aplikaciju na SPI Flash-u. Iskačući prozor se prikazuje nakon što je SPI Flash programiran kao što je prikazano na slici 12. Kliknite OK.
Slika 12 • Programiran SPI Flash - Odaberite opciju Start Boot da kopirate aplikaciju iz SPI Flash u DDR3 memoriju i započnete izvršavanje aplikacije iz DDR3 memorije. Nakon uspješnog pokretanja ciljne aplikacije iz DDR3 memorije, aplikacija ispisuje UART poruke i treperi LED LED1, 2, 3 i 4 korisnika kao što je prikazano na slici 13.
Slika 13 • Izvrši aplikaciju iz DDR-a - Aplikacija radi iz DDR3 memorije i ovim je demo završen. Zatvorite GUI Mi-V Bootloader.
Programiranje uređaja pomoću FlashPro Expressa
Ovaj odjeljak opisuje kako programirati RTG4 uređaj sa zadatkom programiranja file koristeći FlashPro Express.
Za programiranje uređaja izvršite sljedeće korake:
- Uvjerite se da su postavke kratkospojnika na ploči iste kao one navedene u tabeli 3 UG0617:
RTG4 Development Kit Uputstvo za upotrebu. - Opciono, kratkospojnik J32 se može postaviti za povezivanje pinova 2-3 kada se koristi eksterni FlashPro4, FlashPro5 ili FlashPro6 programator umjesto zadane postavke kratkospojnika za korištenje ugrađenog FlashPro5.
Napomena: Prekidač za napajanje, SW6 mora biti ISKLJUČEN prilikom povezivanja kratkospojnika. - Povežite kabl za napajanje sa J9 konektorom na ploči.
- Uključite prekidač napajanja SW6.
- Ako koristite ugrađeni FlashPro5, povežite USB kabl na konektor J47 i glavni računar.
Alternativno, ako koristite eksterni programator, spojite trakasti kabl na JTAG zaglavlje J22 i povežite programator sa glavnim računarom. - Na glavnom računaru pokrenite softver FlashPro Express.
- Kliknite New ili izaberite New Job Project iz FlashPro Express Job iz menija Project da kreirate novi projekat posla, kao što je prikazano na sledećoj slici.
Slika 14 • FlashPro Express Job Project - Unesite sljedeće u okvir za dijalog New Job Project iz FlashPro Express Job:
- Posao programiranja file: Kliknite na Pregledaj i idite do lokacije na kojoj se nalazi .posao file se nalazi i odaberite file. Zadana lokacija je: \rtg4_ac490_df\Programiranje_Posao
- Lokacija projekta FlashPro Express posla: Kliknite na Pregledaj i idite do željene lokacije FlashPro Express projekta.
Slika 15 • Novi Job Project iz FlashPro Express Job
- Kliknite OK. Potrebno programiranje file je odabran i spreman za programiranje u uređaju.
- Pojavljuje se prozor FlashPro Express kao što je prikazano na sljedećoj slici. Potvrdite da se broj programera pojavljuje u polju Programer. Ako se ne dogodi, potvrdite veze na ploči i kliknite na Osvježi/Ponovo skeniraj programere.
Slika 16 • Programiranje uređaja - Kliknite na RUN. Kada je uređaj uspješno programiran, prikazuje se status RUN PASSED kao što je prikazano na sljedećoj slici.
Slika 17 • FlashPro Express—RUN PASSED - Zatvorite FlashPro Express ili kliknite na Exit na kartici Projekt.
Programiranje uređaja pomoću Libero SoC-a
Referentni dizajn files uključuju projekt Mi-V procesorskog podsistema kreiranog pomoću Libero SoC-a. RTG4 uređaj se može programirati pomoću Libero SoC-a. Libero SoC projekat je u potpunosti izgrađen i pokrenut od sinteze, mesta i rute, verifikacije vremena, generisanja podataka FPGA niza, ažuriranja μPROM memorijskog sadržaja, generisanja bitova, FPGA programiranja.
Tok Libero dizajna prikazan je na sljedećoj slici.
Slika 18 • Libero Design Flow
Da biste programirali RTG4 uređaj, projekat podsistema procesora Mi-V mora biti otvoren u Libero SoC-u i moraju se ponovo pokrenuti sljedeći koraci:
- Ažuriranje uPROM memorijskog sadržaja: U ovom koraku, μPROM se programira sa aplikacijom za pokretanje.
- Generacija bitstreama: U ovom koraku, posao file generira se za RTG4 uređaj.
- FPGA programiranje: U ovom koraku, RTG4 uređaj se programira pomoću zadatka file.
Slijedite ove korake:
- Iz Libero Design Flow, odaberite Ažuriraj uPROM memorijski sadržaj.
- Kreirajte klijenta koristeći opciju Dodaj.
- Odaberite klijenta, a zatim odaberite opciju Uredi.
- Odaberite Sadržaj iz file a zatim odaberite opciju Browse kao što je prikazano na slici 19.
Slika 19 • Uredite klijenta za skladištenje podataka - Dođite do sljedećeg dizajna files lokaciju i odaberite miv-rv32im-bootloader.hex file kao što je prikazano na slici 20. <$Download_Directory>\rtg4_ac490_df
- Postavite File Unesite kao Intel-Hex (*.hex).
- Odaberite Koristi relativnu stazu iz direktorija projekta.
- Kliknite OK.
Slika 20 • Uvezi memoriju File
- Kliknite OK.
μPROM sadržaj je ažuriran. - Dvaput kliknite na Generate Bitstream kao što je prikazano na slici 21.
Slika 21 • Generiraj bitstream - Dvaput kliknite na Run PROGRAM Action da programirate uređaj kao što je prikazano na slici 21.
RTG4 uređaj je programiran. Pogledajte Pokretanje demonstracije, stranica 11.
Pokretanje TCL skripte
TCL skripte su date u dizajnu files folder u direktoriju TCL_Scripts. Ako je potrebno, tok dizajna se može reproducirati od implementacije dizajna do generiranja posla file.
Da biste pokrenuli TCL, slijedite dolje navedene korake:
- Pokrenite Libero softver.
- Odaberite Projekt > Izvrši skriptu….
- Kliknite na Browse i odaberite script.tcl iz preuzetog direktorija TCL_Scripts.
- Kliknite na Run.
Nakon uspješnog izvođenja TCL skripte, Libero projekt se kreira unutar TCL_Scripts direktorija.
Za više informacija o TCL skriptama, pogledajte rtg4_ac490_df/TCL_Scripts/readme.txt.
Pogledajte Libero® SoC TCL Referentni vodič za naredbe za više detalja o TCL komandama. Kontakt
Tehnička podrška za sve upite na koje naiđete prilikom pokretanja TCL skripte.
Microsemi ne daje nikakvu garanciju, zastupanje ili garanciju u vezi sa informacijama sadržanim u ovom dokumentu ili prikladnosti svojih proizvoda i usluga za bilo koju određenu svrhu, niti Microsemi preuzima bilo kakvu odgovornost koja proizilazi iz primene ili upotrebe bilo kog proizvoda ili kola. Proizvodi koji se prodaju u nastavku i svi drugi proizvodi koje prodaje Microsemi bili su podvrgnuti ograničenom testiranju i ne bi se trebali koristiti zajedno sa opremom ili aplikacijama kritičnim za misiju. Vjeruje se da su sve specifikacije performansi pouzdane, ali nisu provjerene, a Kupac mora provesti i završiti sva ispitivanja performansi i druga testiranja proizvoda, sami i zajedno sa, ili ugrađeni u bilo koji krajnji proizvod. Kupac se neće oslanjati ni na kakve podatke i specifikacije performansi ili parametre koje pruža Microsemi. Odgovornost Kupca je da samostalno utvrdi prikladnost bilo kojeg proizvoda te da istu testira i provjeri. Informacije koje Microsemi pruža u nastavku su date „kao što jesu, gdje je“ i sa svim greškama, a cijeli rizik povezan s takvim informacijama je u potpunosti na Kupcu. Microsemi ne dodeljuje, eksplicitno ili implicitno, nijednoj strani bilo kakva patentna prava, licence ili bilo koja druga prava intelektualne svojine, bilo u pogledu samih takvih informacija ili bilo čega što je opisano u takvim informacijama. Informacije navedene u ovom dokumentu su vlasništvo Microsemi-ja, a Microsemi zadržava pravo da izvrši bilo kakve izmjene informacija u ovom dokumentu ili bilo kojeg proizvoda i usluga u bilo koje vrijeme bez prethodne najave.
O Microsemi
Microsemi, podružnica u potpunom vlasništvu Microchip Technology Inc. (Nasdaq: MCHP), nudi sveobuhvatan portfelj poluvodičkih i sistemskih rješenja za svemirska i odbrambena tržišta, komunikacije, podatkovne centre i industrijska tržišta. Proizvodi uključuju analogna integrirana kola s mješovitim signalom visokih performansi i zračenjem ojačana, FPGA, SoC i ASIC; Proizvodi za upravljanje napajanjem; uređaji za merenje vremena i sinhronizacije i precizna vremenska rešenja, postavljajući svetske standarde za vreme; Uređaji za obradu glasa; RF rješenja; diskretne komponente; korporativna rješenja za pohranu i komunikaciju, sigurnosne tehnologije i skalabilni anti-tamper products; Ethernet rješenja; Power-over-Ethernet IC-ovi i srednji rasponi; kao i mogućnosti i usluge prilagođenog dizajna. Saznajte više na www.microsemi.com.
Microsemi Headquarters
One Enterprise, Aliso Viejo,
CA 92656 SAD
Unutar SAD-a: +1 800-713-4113
Izvan SAD: +1 949-380-6100
Prodaja: +1 949-380-6136
Fax: +1 949-215-4996
Email: sales.support@microsemi.com
www.microsemi.com
©2021 Microsemi, podružnica u potpunom vlasništvu Microchip Technology Inc. Sva prava zadržana. Microsemi i Microsemi logo su registrovani zaštitni znakovi Microsemi Corporation. Svi ostali zaštitni znakovi i uslužni znaci vlasništvo su njihovih vlasnika
Dokumenti / Resursi
![]() |
Microsemi AC490 RTG4 FPGA: Izgradnja Mi-V procesorskog podsistema [pdf] Korisnički priručnik AC490 RTG4 FPGA Izgradnja Mi-V procesorskog podsistema, AC490 RTG4, FPGA Izgradnja Mi-V procesorskog podsistema, Mi-V procesorskog podsistema |