Microsemi AC490 RTG4 FPGA: Construcció d'un subsistema de processador Mi-V
Historial de revisions
L'historial de revisions descriu els canvis que es van implementar al document. Els canvis s'enumeren per revisió, començant per la publicació més actual.
Revisió 3.0
A continuació es mostra un resum dels canvis fets en aquesta revisió.
- S'ha actualitzat el document per a Libero SoC v2021.2.
- S'ha actualitzat la figura 1, de la pàgina 3 a la figura 3, de la pàgina 5.
- S'ha substituït la figura 4, pàgina 5, figura 5, pàgina 7 i figura 18, pàgina 17.
- S'han actualitzat la Taula 2, pàgina 6 i la Taula 3, pàgina 7.
- Apèndix 1 afegit: Programació del dispositiu amb FlashPro Express, pàgina 14.
- Apèndix 3 afegit: Execució de l'script TCL, pàgina 20.
- S'han eliminat les referències als números de versió de Libero.
Revisió 2.0
A continuació es mostra un resum dels canvis fets en aquesta revisió.
- S'ha afegit informació sobre la selecció del port COM a Configuració del maquinari, pàgina 9.
- S'ha actualitzat com seleccionar el port COM adequat a Execució de la demostració, pàgina 11.
Revisió 1.0
La primera publicació del document.
Construcció d'un subsistema de processador Mi-V
Microchip ofereix la IP del processador Mi-V, un processador RISC-V de 32 bits i una cadena d'eines de programari per desenvolupar dissenys basats en el processador RISC-V. RISC-V, una arquitectura de conjunt d'instruccions oberta (ISA) estàndard sota el govern de la Fundació RISC-V, ofereix nombrosos avantatges, que inclouen permetre a la comunitat de codi obert provar i millorar els nuclis a un ritme més ràpid que els ISA tancats.
Els FPGA RTG4® admeten el processador suau Mi-V per executar aplicacions d'usuari. Aquesta nota d'aplicació descriu com construir un subsistema de processador Mi-V per executar una aplicació d'usuari a partir de la memòria RAM o DDR de teixit designada.
Requisits de disseny
La taula següent enumera els requisits de maquinari i programari per executar la demostració.
Taula 1 • Requisits de disseny
Programari
- Libero® System-on-Chip (SoC)
- FlashPro Express
- SoftConsole
Nota: Consulteu el fitxer readme.txt file prevista en el disseny files per a les versions de programari utilitzades amb aquest disseny de referència.
Nota: Les captures de pantalla de configuració i disseny intel·ligent de Libero que es mostren en aquesta guia només tenen finalitat il·lustrativa.
Obriu el disseny de Libero per veure les últimes actualitzacions.
Requisits previs
Abans de començar:
- Baixeu i instal·leu Libero SoC (tal com s'indica al document weblloc per a aquest disseny) a l'ordinador amfitrió des de la ubicació següent: https://www.microsemi.com/product-directory/design-resources/1750-libero-soc
- Per al disseny de demostració fileenllaç de descàrrega: http://soc.microsemi.com/download/rsc/?f=rtg4_ac490_df
Descripció del disseny
La mida de RTG4 μPROM és de 57 KB. Les aplicacions d'usuari que no superin la mida de la μPROM es poden emmagatzemar a la μPROM i executar-se des de les memòries internes de gran SRAM (LSRAM). Les aplicacions d'usuari que superin la mida de la μPROM s'han d'emmagatzemar en una memòria externa no volàtil. En aquest cas, es requereix un carregador d'arrencada que s'executa des de μPROM per inicialitzar les memòries SRAM internes o externes amb l'aplicació de destinació des de la memòria no volàtil.
El disseny de referència demostra la capacitat del carregador d'arrencada per copiar l'aplicació de destinació (de mida de 7 KB) des de la memòria flash SPI a la memòria DDR i executar-la des de la memòria DDR. El carregador d'arrencada s'executa des de les memòries internes. La secció de codi es troba a μPROM i la secció de dades es troba a la SRAM interna gran (LSRAM).
Nota: Per obtenir més informació sobre com crear el projecte Libero del carregador d'arrencada Mi-V i com crear el projecte SoftConsole, consulteu TU0775: PolarFire FPGA: Tutorial de construcció d'un subsistema de processador Mi-V
La figura 1 mostra el diagrama de blocs de nivell superior del disseny.
Figura 1 • Diagrama de blocs de nivell superior
Tal com es mostra a la figura 1, els punts següents descriuen el flux de dades del disseny:
- El processador Mi-V executa el carregador d'arrencada des de la μPROM i les LSRAM designades. El carregador d'arrencada es connecta amb la GUI a través del bloc CoreUARTapb i espera les ordres.
- Quan es rep l'ordre del programa flash SPI de la GUI, el carregador d'arrencada programa el flaix SPI amb l'aplicació de destinació rebuda de la GUI.
- Quan es rep l'ordre d'arrencada de la GUI, el carregador d'arrencada copia el codi de l'aplicació del flash SPI a DDR i després l'executa des de DDR.
Estructura de rellotge
Hi ha dos dominis de rellotge (40 MHz i 20 MHz) en el disseny. L'oscil·lador de cristall de 50 MHz integrat està connectat al bloc PF_CCC que genera rellotges de 40 MHz i 20 MHz. El rellotge del sistema de 40 MHz impulsa el subsistema complet del processador Mi-V excepte μPROM. El rellotge de 20 MHz controla la interfície RTG4 μPROM i RTG4 μPROM APB. RTG4 μPROM admet una freqüència de rellotge de fins a 30 MHz. DDR_FIC està configurat per a la interfície de bus AHB, que funciona a 40 MHz. La memòria DDR funciona a 320 MHz.
La figura 2 mostra l'estructura del rellotge.
Figura 2 • Estructura de rellotge
Restableix l'estructura
Els senyals POWER_ON_RESET_N i LOCK són AND, i el senyal de sortida (INIT_RESET_N) s'utilitza per restablir el bloc RTG4FDDRC_INIT. Després d'alliberar el restabliment FDDR, el controlador FDDR s'inicialitza i, a continuació, s'afirma el senyal INIT_DONE. El senyal INIT_DONE s'utilitza per restablir el processador Mi-V, els perifèrics i altres blocs del disseny.
Figura 3 • Restablir estructura
Implementació de maquinari
La figura 4 mostra el disseny Libero del disseny de referència Mi-V.
Figura 4 • Mòdul SmartDesign
Nota: La captura de pantalla de Libero SmartDesign que es mostra en aquesta nota d'aplicació només té finalitats il·lustratives. Obriu el projecte Libero per veure les últimes actualitzacions i versions IP.
Blocs IP
La figura 2 enumera els blocs IP utilitzats en el disseny de referència del subsistema del processador Mi-V i la seva funció.
Taula 2 • Blocs IP1
Totes les guies i manuals d'usuari IP estan disponibles a Libero SoC -> Catàleg.
RTG4 μPROM emmagatzema fins a 10,400 paraules de 36 bits (374,400 bits de dades). Només admet operacions de lectura durant el funcionament normal del dispositiu després de programar el dispositiu. El nucli del processador MIV_RV32_C0 inclou una unitat de recuperació d'instruccions, una canalització d'execució i un sistema de memòria de dades. El sistema de memòria del processador MIV_RV32_C0 inclou memòria cau d'instruccions i memòria cau de dades. El nucli MIV_RV32_C0 inclou dues interfícies AHB externes: la interfície mestra de bus de memòria AHB (MEM) i la interfície mestra de bus AHB Memory Mapped I/O (MMIO). El controlador de memòria cau utilitza la interfície AHB MEM per reomplir les instruccions i les memòria cau de dades. La interfície AHB MMIO s'utilitza per a un accés sense memòria cau als perifèrics d'E/S.
Els mapes de memòria de la interfície AHB MMIO i la interfície MEM són de 0x60000000 a 0X6FFFFFFF i 0x80000000 a 0x8FFFFFFF, respectivament. L'adreça vectorial de restabliment del processador es pot configurar. El restabliment del MIV_RV32_C0 és un senyal actiu-baix, que s'ha de desactivar sincronitzat amb el rellotge del sistema mitjançant un sincronitzador de restabliment.
El processador MIV_RV32_C0 accedeix a la memòria d'execució de l'aplicació mitjançant la interfície AHB MEM. La instància de bus CoreAHBLite_C0_0 està configurada per proporcionar 16 ranures esclaus, cadascuna de mida d'1 MB. La memòria RTG μPROM i els blocs RTG4FDDRC estan connectats a aquest bus. La μPROM s'utilitza per emmagatzemar l'aplicació del carregador d'arrencada.
El processador MIV_RV32_C0 dirigeix les transaccions de dades entre les adreces 0x60000000 i 0x6FFFFFFF a la interfície MMIO. La interfície MMIO està connectada al bus CoreAHBLite_C1_0 per comunicar-se amb perifèrics connectats a les seves ranures esclaus. La instància de bus CoreAHBLite_C1_0 està configurada per proporcionar 16 ranures esclaus, cadascuna amb una mida de 256 MB. Els perifèrics UART, CoreSPI i CoreGPIO estan connectats al bus CoreAHBLite_C1_0 mitjançant el pont CoreAHBTOAPB3 i el bus CoreAPB3.
Mapa de memòria
La taula 3 enumera el mapa de memòria de les memòries i perifèrics.
Taula 3 • Mapa de memòria
Implementació de programari
El disseny de referència files inclouen l'espai de treball de SoftConsole que conté els projectes de programari següents:
- Carregador d'arrencada
- Aplicació objectiu
Carregador d'arrencada
L'aplicació del carregador d'arrencada es programa a la μPROM durant la programació del dispositiu. El carregador d'arrencada implementa les funcions següents:
- Programació del SPI Flash amb l'aplicació de destinació.
- Còpia de l'aplicació de destinació des de la memòria SPI Flash a la memòria DDR3.
- Canviar l'execució del programa a l'aplicació de destinació disponible a la memòria DDR3.
L'aplicació del carregador d'arrencada s'ha d'executar des de μPROM amb LSRAM com a pila. Per tant, les adreces de ROM i RAM a l'script de l'enllaç s'estableixen a l'adreça inicial de μPROM i LSRAM designades, respectivament. La secció de codi s'executa des de la ROM i la secció de dades s'executa des de la RAM, tal com es mostra a la figura 5.
Figura 5 • Script d'enllaç del carregador d'arrencada
L'script d'enllaç (microsemi-riscv-ram_rom.ld) està disponible a
SoftConsole_Project\mivrv32im-bootloader carpeta del disseny files.
Aplicació objectiu
L'aplicació de destinació parpelleja els LED integrats 1, 2, 3 i 4 i imprimeix missatges UART. L'aplicació de destinació s'ha d'executar des de la memòria DDR3. Per tant, el codi i les seccions de pila de l'script de l'enllaç s'estableixen a l'adreça inicial de la memòria DDR3 tal com es mostra a la figura 6.
Figura 6 • Target Application Linker Script
L'script d'enllaç (microsemi-riscv-ram.ld) està disponible a la carpeta de l'aplicació SoftConsole_Project\miv-rv32imddr del disseny files.
Configuració del maquinari
Els passos següents descriuen com configurar el maquinari:
- Assegureu-vos que la placa estigui apagada mitjançant l'interruptor SW6.
- Connecteu els ponts del kit de desenvolupament RTG4, tal com es mostra a la taula següent:
Taula 4 • JumpersJumper Pin De Pin To Comentaris J11, J17, J19, J23, J26, J21, J32 i J27 1 2 Per defecte J16 2 3 Per defecte J33 1 2 Per defecte 3 4 - Connecteu l'ordinador amfitrió al connector J47 mitjançant el cable USB.
- Assegureu-vos que els controladors del pont USB a UART es detectin automàticament. Això es pot verificar al gestor de dispositius de l'ordinador amfitrió.
- Com es mostra a la figura 7, les propietats del port de COM13 mostren que està connectat a USB Serial Converter C. Per tant, COM13 està seleccionat en aquest exemple.ample. El número de port COM és específic del sistema.
Figura 7 • Gestor de dispositius
Nota: Si els controladors del pont USB a UART no estan instal·lats, descarregueu i instal·leu els controladors des de www.microsemi.com//documents/CDM_2.08.24_WHQL_Certified.zip. - Connecteu la font d'alimentació al connector J9 i engegueu l'interruptor de la font d'alimentació, SW6.
Figura 8 • Kit de desenvolupament RTG4
Execució de la demostració
Aquest capítol descriu els passos per programar el dispositiu RTG4 amb el disseny de referència, programar l'SPI Flash amb l'aplicació de destinació i arrencar l'aplicació de destinació des de la memòria DDR mitjançant la GUI del carregador d'arrencada Mi-V.
L'execució de la demostració implica els passos següents:
- Programació del dispositiu RTG4, pàgina 11
- Execució del gestor d'arrencada Mi-V, pàgina 11
Programació del dispositiu RTG4
El dispositiu RTG4 es pot programar mitjançant FlashPro Express o Libero SOC.
- Per programar el kit de desenvolupament RTG4 amb el treball file proporcionat com a part del disseny fileSi feu servir el programari FlashPro Express, consulteu l'Apèndix 1: Programació del dispositiu amb FlashPro Express, pàgina 14.
- Per programar el dispositiu amb Libero SoC, consulteu l'Apèndix 2: Programació del dispositiu amb Libero SoC, pàgina 17.
Executant el carregador d'arrencada Mi-V
En finalitzar correctament la programació, seguiu aquests passos:
- Executeu el setup.exe file disponible al disseny següent files ubicació.
<$Download_Directory>\rtg4_ac490_df\GUI_Installer\Mi-V Bootloader_Installer_V1.4 - Seguiu l'assistent d'instal·lació per instal·lar l'aplicació GUI del carregador d'arrencada.
La figura 9 mostra la GUI del carregador d'arrencada RTG4 Mi-V.
Figura 9 • GUI del carregador d'arrencada Mi-V - Seleccioneu el port COM connectat a USB Serial Converter C tal com es mostra a la figura 7.
- Feu clic al botó connectar. Després de la connexió correcta, l'indicador vermell es torna verd tal com es mostra a la figura 10.
Figura 10 • Connectar el port COM - Feu clic al botó Importa i seleccioneu l'aplicació de destinació file (.bin). Després d'importar, el camí de l' file es mostra a la GUI tal com es mostra a la figura 11.
<$Download_Directory>\rtg4_ac490_df\Source_files
Figura 11 • Importa l'aplicació de destinació File - Com es mostra a la figura 11, feu clic a l'opció Programa SPI Flash per programar l'aplicació de destinació a SPI Flash. Es mostra una finestra emergent després de programar el flaix SPI, tal com es mostra a la figura 12. Feu clic a D'acord.
Figura 12 • SPI Flash programat - Seleccioneu l'opció Inicia l'arrencada per copiar l'aplicació des de la memòria SPI Flash a la memòria DDR3 i començar a executar l'aplicació des de la memòria DDR3. Després d'arrencar correctament l'aplicació de destinació des de la memòria DDR3, l'aplicació imprimeix missatges UART i parpelleja els LED1, 2, 3 i 4 de l'usuari a bord, tal com es mostra a la figura 13.
Figura 13 • Executar l'aplicació des de DDR - L'aplicació s'està executant des de la memòria DDR3 i això conclou la demostració. Tanqueu la GUI del carregador d'arrencada Mi-V.
Programació del dispositiu amb FlashPro Express
Aquesta secció descriu com programar el dispositiu RTG4 amb la tasca de programació file utilitzant FlashPro Express.
Per programar el dispositiu, seguiu els passos següents:
- Assegureu-vos que la configuració del pont a la placa sigui la mateixa que la llista a la taula 3 de UG0617:
Guia d'usuari del kit de desenvolupament RTG4. - Opcionalment, el pont J32 es pot configurar per connectar els pins 2-3 quan s'utilitza un programador FlashPro4, FlashPro5 o FlashPro6 extern en lloc de la configuració predeterminada del pont per utilitzar el FlashPro5 incrustat.
Nota: L'interruptor d'alimentació, SW6, s'ha d'apagar mentre es fan les connexions de pont. - Connecteu el cable d'alimentació al connector J9 de la placa.
- Engegueu l'interruptor d'alimentació SW6.
- Si utilitzeu el FlashPro5 incrustat, connecteu el cable USB al connector J47 i al PC amfitrió.
Alternativament, si utilitzeu un programador extern, connecteu el cable de cinta al connector JTAG capçalera J22 i connecteu el programador a l'ordinador amfitrió. - A l'ordinador amfitrió, inicieu el programari FlashPro Express.
- Feu clic a Nou o seleccioneu Projecte de treball nou al treball FlashPro Express al menú Projecte per crear un projecte de feina nou, tal com es mostra a la figura següent.
Figura 14 • Projecte de treball FlashPro Express - Introduïu el següent al quadre de diàleg Nou projecte de treball des de FlashPro Express:
- Treball de programació file: Feu clic a Examinar i navegueu fins a la ubicació on es troba el .job file es troba i seleccioneu file. La ubicació per defecte és: \rtg4_ac490_df\Programming_Job
- Ubicació del projecte de treball FlashPro Express: feu clic a Navega i navegueu a la ubicació del projecte FlashPro Express desitjada.
Figura 15 • Projecte de treball nou de FlashPro Express Job
- Feu clic a D'acord. La programació requerida file està seleccionat i llest per ser programat al dispositiu.
- La finestra de FlashPro Express apareix com es mostra a la figura següent. Confirmeu que apareix un número de programador al camp Programador. Si no ho fa, confirmeu les connexions de la placa i feu clic a Actualitza/Reescaneja programadors.
Figura 16 • Programació del dispositiu - Feu clic a RUN. Quan el dispositiu es programa correctament, es mostra l'estat RUN PASSED, tal com es mostra a la figura següent.
Figura 17 • FlashPro Express: EXECUTA APROFIT - Tanqueu FlashPro Express o feu clic a Surt a la pestanya Projecte.
Programació del dispositiu amb Libero SoC
El disseny de referència files inclouen el projecte del subsistema del processador Mi-V creat amb Libero SoC. El dispositiu RTG4 es pot programar mitjançant Libero SoC. El projecte Libero SoC es construeix i s'executa completament des de Síntesi, Lloc i ruta, verificació de temps, generació de dades de matriu FPGA, actualització del contingut de memòria μPROM, generació de bitstream i programació FPGA.
El flux de disseny de Libero es mostra a la figura següent.
Figura 18 • Flux de disseny de Libero
Per programar el dispositiu RTG4, s'ha d'obrir el projecte del subsistema del processador Mi-V a Libero SoC i tornar a executar els passos següents:
- Actualitza el contingut de la memòria uPROM: en aquest pas, μPROM es programa amb l'aplicació del carregador d'arrencada.
- Generació de bitstream: en aquest pas, el treball file es genera per al dispositiu RTG4.
- Programació FPGA: en aquest pas, el dispositiu RTG4 es programa mitjançant el treball file.
Seguiu aquests passos:
- Des del Libero Design Flow, seleccioneu Actualitza el contingut de la memòria uPROM.
- Creeu un client mitjançant l'opció Afegeix.
- Seleccioneu el client i després trieu l'opció Edita.
- Seleccioneu Contingut de file i després seleccioneu l'opció Navega com es mostra a la figura 19.
Figura 19 • Edita el client d'emmagatzematge de dades - Navegueu fins al disseny següent files i seleccioneu el fitxer miv-rv32im-bootloader.hex file com es mostra a la figura 20. <$Download_Directory>\rtg4_ac490_df
- Estableix el File Escriviu com a Intel-Hex (*.hex).
- Seleccioneu Utilitza el camí relatiu del directori del projecte.
- Feu clic a D'acord.
Figura 20 • Importa memòria File
- Feu clic a D'acord.
S'actualitza el contingut de la μPROM. - Feu doble clic a Generar bitstream tal com es mostra a la figura 21.
Figura 21 • Generar flux de bits - Feu doble clic a Run PROGRAM Action per programar el dispositiu tal com es mostra a la figura 21.
El dispositiu RTG4 està programat. Vegeu Execució de la demostració, pàgina 11.
Execució de l'script TCL
Els scripts TCL es proporcionen al disseny files sota el directori TCL_Scripts. Si cal, el flux de disseny es pot reproduir des de la implementació del disseny fins a la generació del treball file.
Per executar el TCL, seguiu els passos següents:
- Inicieu el programari Libero.
- Seleccioneu Projecte > Execute Script....
- Feu clic a Navega i seleccioneu script.tcl al directori TCL_Scripts descarregat.
- Feu clic a Executar.
Després d'executar correctament l'script TCL, el projecte Libero es crea dins del directori TCL_Scripts.
Per obtenir més informació sobre els scripts TCL, consulteu rtg4_ac490_df/TCL_Scripts/readme.txt.
Consulteu la Guia de referència d'ordres TCL del SoC de Libero® per obtenir més detalls sobre les ordres TCL. Contacte
Suport tècnic per a qualsevol consulta que es trobi en executar l'script TCL.
Microsemi no fa cap garantia, representació o garantia sobre la informació continguda aquí o la idoneïtat dels seus productes i serveis per a cap propòsit particular, ni tampoc assumeix cap responsabilitat derivada de l'aplicació o l'ús de cap producte o circuit. Els productes que es venen a continuació i qualsevol altre producte venut per Microsemi han estat subjectes a proves limitades i no s'han d'utilitzar juntament amb equips o aplicacions crítiques. Es creu que qualsevol especificació de rendiment és fiable, però no es verifica, i el comprador ha de dur a terme i completar totes les proves de rendiment i altres dels productes, sols i juntament amb, o instal·lats en qualsevol producte final. El comprador no es basarà en les dades i les especificacions de rendiment o els paràmetres proporcionats per Microsemi. És responsabilitat del comprador determinar de manera independent la idoneïtat de qualsevol producte i provar-lo i verificar-lo. La informació proporcionada per Microsemi a continuació es proporciona "tal com és, on és" i amb tots els errors, i tot el risc associat amb aquesta informació és totalment del comprador. Microsemi no atorga, de manera explícita o implícita, a cap part cap dret de patent, llicència o qualsevol altre dret de propietat intel·lectual, ja sigui pel que fa a aquesta informació en si o a qualsevol cosa descrita per aquesta informació. La informació proporcionada en aquest document és propietat de Microsemi, i Microsemi es reserva el dret de fer qualsevol canvi a la informació d'aquest document o a qualsevol producte i servei en qualsevol moment sense previ avís.
Sobre Microsemi
Microsemi, una filial de propietat total de Microchip Technology Inc. (Nasdaq: MCHP), ofereix una cartera completa de solucions de sistemes i semiconductors per a l'aeronàutica i defensa, comunicacions, centres de dades i mercats industrials. Els productes inclouen circuits integrats de senyal mixt analògic d'alt rendiment i endurits per la radiació, FPGA, SoC i ASIC; productes de gestió d'energia; dispositius de cronometratge i sincronització i solucions de temps precises, establint l'estàndard mundial en temps; dispositius de processament de veu; solucions de RF; components discrets; solucions d'emmagatzematge i comunicació empresarial, tecnologies de seguretat i anti-t escalablesamper productes; solucions Ethernet; Circuits integrats i midspans d'alimentació a través d'Ethernet; així com capacitats i serveis de disseny personalitzat. Més informació a www.microsemi.com.
Seu Microsemi
One Enterprise, Aliso Viejo,
CA 92656 EUA
Dins dels EUA: +1 800-713-4113
Fora dels EUA: +1 949-380-6100
Vendes: +1 949-380-6136
Fax: +1 949-215-4996
Correu electrònic: sales.support@microsemi.com
www.microsemi.com
©2021 Microsemi, una filial de propietat total de Microchip Technology Inc. Tots els drets reservats. Microsemi i el logotip de Microsemi són marques registrades de Microsemi Corporation. Totes les altres marques comercials i marques de servei són propietat dels seus respectius propietaris
Documents/Recursos
![]() |
Microsemi AC490 RTG4 FPGA: Construcció d'un subsistema de processador Mi-V [pdfGuia de l'usuari AC490 RTG4 FPGA Construcció d'un subsistema de processador Mi-V, AC490 RTG4, FPGA Construcció d'un subsistema de processador Mi-V, subsistema de processador Mi-V |