Microsemi AC490 RTG4 FPGA: Изграждане на Mi-V процесорна подсистема
История на ревизиите
Историята на ревизиите описва промените, които са въведени в документа. Промените са изброени по редакция, започвайки с най-актуалната публикация.
Ревизия 3.0
Следното е обобщение на промените, направени в тази редакция.
- Актуализира документа за Libero SoC v2021.2.
- Актуализирана Фигура 1, страница 3 до Фигура 3, страница 5.
- Заменени Фигура 4, страница 5, Фигура 5, страница 7 и Фигура 18, страница 17.
- Актуализирана таблица 2, страница 6 и таблица 3, страница 7.
- Добавено приложение 1: Програмиране на устройството чрез FlashPro Express, страница 14.
- Добавено приложение 3: Изпълнение на TCL скрипта, страница 20.
- Премахнати са препратките към номерата на версията на Libero.
Ревизия 2.0
Следното е обобщение на промените, направени в тази редакция.
- Добавена е информация относно избора на COM порт в Настройка на хардуера, страница 9.
- Актуализирано как да изберете подходящия COM порт в Пускане на демонстрацията, страница 11.
Ревизия 1.0
Първата публикация на документа.
Изграждане на Mi-V процесорна подсистема
Microchip предлага Mi-V процесор IP, 32-битов RISC-V процесор и софтуерна верига от инструменти за разработване на дизайни, базирани на RISC-V процесор. RISC-V, стандартна отворена архитектура на набор от инструкции (ISA) под управлението на RISC-V Foundation, предлага многобройни предимства, които включват възможност на общността с отворен код да тества и подобрява ядрата с по-бързо темпо от затворените ISA.
RTG4® FPGA поддържат софтуерен процесор Mi-V за стартиране на потребителски приложения. Тази бележка за приложението описва как да се изгради процесорна подсистема Mi-V, за да се изпълни потребителско приложение от определените плат RAM или DDR памет.
Изисквания за проектиране
Следната таблица изброява хардуерните и софтуерните изисквания за изпълнение на демонстрацията.
Таблица 1 • Изисквания за проектиране
Софтуер
- Libero® система върху чип (SoC)
- FlashPro Express
- SoftConsole
Забележка: Обърнете се към readme.txt file предвидени в проекта files за софтуерните версии, използвани с този референтен дизайн.
Забележка: Libero SmartDesign и екранните снимки на конфигурацията, показани в това ръководство, са само за илюстрация.
Отворете дизайна на Libero, за да видите последните актуализации.
Предпоставки
Преди да започнете:
- Изтеглете и инсталирайте Libero SoC (както е посочено в webсайт за този дизайн) на хост компютъра от следното местоположение: https://www.microsemi.com/product-directory/design-resources/1750-libero-soc
- За демо дизайн files връзка за изтегляне: http://soc.microsemi.com/download/rsc/?f=rtg4_ac490_df
Описание на дизайна
Размерът на RTG4 μPROM е 57 KB. Потребителските приложения, които не надвишават размера на μPROM, могат да се съхраняват в μPROM и да се изпълняват от вътрешни големи SRAM памети (LSRAM). Потребителските приложения, които надвишават размера на μPROM, трябва да се съхраняват във външна енергонезависима памет. В този случай се изисква буутлоудър, изпълняващ се от μPROM, за да инициализира вътрешна или външна SRAM памет с целевото приложение от енергонезависимата памет.
Референтният дизайн демонстрира способността на буутлоудъра да копира целевото приложение (с размер 7 KB) от SPI флаш в DDR памет и да се изпълнява от DDR паметта. Буутлоудърът се изпълнява от вътрешни памети. Секцията с код се намира в μPROM, а секцията с данни се намира във вътрешната голяма SRAM (LSRAM).
Забележка: За повече информация относно това как да изградите проекта Libero за зареждане на Mi-V и как да изградите проекта SoftConsole, вижте TU0775: PolarFire FPGA: Урок за изграждане на подсистема за процесор Mi-V
Фигура 1 показва блоковата диаграма от най-високо ниво на дизайна.
Фигура 1 • Блокова диаграма от най-високо ниво
Както е показано на фигура 1, следните точки описват потока от данни на дизайна:
- Процесорът Mi-V изпълнява буутлоудъра от μPROM и определените LSRAM. Буутлоудърът се свързва с GUI чрез блока CoreUARTapb и чака командите.
- Когато командата за SPI флаш програма бъде получена от GUI, буутлоудърът програмира SPI флаш с целевото приложение, получено от GUI.
- Когато командата за стартиране се получи от GUI, буутлоудърът копира кода на приложението от SPI флаш в DDR и след това го изпълнява от DDR.
Тактова структура
В дизайна има два тактови домейна (40 MHz и 20 MHz). Вграденият 50 MHz кристален осцилатор е свързан към блока PF_CCC, който генерира 40 MHz и 20 MHz часовници. Системният часовник от 40 MHz управлява цялата подсистема на процесора Mi-V с изключение на μPROM. Тактовата честота от 20 MHz задвижва RTG4 μPROM и RTG4 μPROM APB интерфейса. RTG4 μPROM поддържа тактова честота до 30 MHz. DDR_FIC е конфигуриран за интерфейса на шината AHB, който работи на 40 MHz. DDR паметта работи на 320 MHz.
Фигура 2 показва тактовата структура.
Фигура 2 • Тактова структура
Нулиране на структурата
Сигналите POWER_ON_RESET_N и LOCK са AND и изходният сигнал (INIT_RESET_N) се използва за нулиране на блока RTG4FDDRC_INIT. След освобождаване на FDDR нулирането, FDDR контролерът се инициализира и след това се подава сигналът INIT_DONE. Сигналът INIT_DONE се използва за нулиране на Mi-V процесора, периферните устройства и други блокове в дизайна.
Фигура 3 • Нулиране на структура
Хардуерна реализация
Фигура 4 показва дизайна на Libero на референтния дизайн на Mi-V.
Фигура 4 • Модул SmartDesign
Забележка: Екранната снимка на Libero SmartDesign, показана в тази бележка за приложението, е само за илюстрация. Отворете проекта Libero, за да видите най-новите актуализации и IP версии.
IP блокове
Фигура 2 изброява IP блоковете, използвани в референтния дизайн на подсистемата на процесора Mi-V и тяхната функция.
Таблица 2 • IP блокове1
Всички потребителски ръководства и наръчници за IP са достъпни от Libero SoC -> Каталог.
RTG4 μPROM съхранява до 10,400 36 374,400-битови думи (32 0 бита данни). Той поддържа само операции за четене по време на нормална работа на устройството, след като устройството е програмирано. Ядрото на процесора MIV_RV32_C0 се състои от единица за извличане на инструкции, тръбопровод за изпълнение и система за памет за данни. Системата с памет на процесора MIV_RV32_C0 включва кеш за инструкции и кеш за данни. Ядрото MIV_RVXNUMX_CXNUMX включва два външни AHB интерфейса - главния интерфейс на AHB памет (MEM) и главния интерфейс на AHB Memory Mapped I/O (MMIO). Кеш контролерът използва интерфейса AHB MEM, за да презареди инструкциите и кешовете за данни. Интерфейсът AHB MMIO се използва за некеширан достъп до I/O периферни устройства.
Картите на паметта на интерфейса AHB MMIO и интерфейса MEM са съответно 0x60000000 до 0X6FFFFFFF и 0x80000000 до 0x8FFFFFFF. Векторният адрес за нулиране на процесора може да се конфигурира. Нулирането на MIV_RV32_C0 е сигнал с активно ниско ниво, който трябва да бъде деактивиран в синхрон със системния часовник чрез синхронизатор за нулиране.
Процесорът MIV_RV32_C0 осъществява достъп до паметта за изпълнение на приложението, използвайки интерфейса AHB MEM. Екземплярът на шината CoreAHBLite_C0_0 е конфигуриран да предоставя 16 подчинени слота, всеки с размер 1 MB. Паметта RTG μPROM и блоковете RTG4FDDRC са свързани към тази шина. μPROM се използва за съхраняване на приложението за зареждащо устройство.
Процесорът MIV_RV32_C0 насочва транзакциите с данни между адреси 0x60000000 и 0x6FFFFFFF към интерфейса MMIO. Интерфейсът MMIO е свързан към шината CoreAHBLite_C1_0, за да комуникира с периферни устройства, свързани към неговите подчинени слотове. Екземплярът на шината CoreAHBLite_C1_0 е конфигуриран да предоставя 16 подчинени слота, всеки с размер 256 MB. Периферните устройства UART, CoreSPI и CoreGPIO са свързани към шината CoreAHBLite_C1_0 чрез моста CoreAHBTOAPB3 и шината CoreAPB3.
Карта на паметта
Таблица 3 изброява картата на паметта на паметите и периферните устройства.
Таблица 3 • Карта на паметта
Внедряване на софтуер
Референтният дизайн fileвключва работното пространство SoftConsole, което съдържа следните софтуерни проекти:
- Буутлоудър
- Целево приложение
Буутлоудър
Приложението за зареждащо устройство се програмира на μPROM по време на програмирането на устройството. Буутлоудърът изпълнява следните функции:
- Програмиране на SPI Flash с целевото приложение.
- Копиране на целевото приложение от SPI Flash в DDR3 памет.
- Превключване на изпълнението на програмата към целевото приложение, налично в DDR3 памет.
Приложението за зареждане трябва да се изпълни от μPROM с LSRAM като стек. Следователно, адресите на ROM и RAM в скрипта за свързване са зададени съответно на началния адрес на μPROM и обозначените LSRAM. Секцията с код се изпълнява от ROM, а секцията с данни се изпълнява от RAM, както е показано на фигура 5.
Фигура 5 • Скрипт за свързване на зареждащото устройство
Скриптът за свързване (microsemi-riscv-ram_rom.ld) е достъпен на
SoftConsole_Project\mivrv32im-bootloader папка на дизайна files.
Целево приложение
Целевото приложение мига вградените светодиоди 1, 2, 3 и 4 и отпечатва UART съобщения. Целевото приложение трябва да се изпълнява от DDR3 памет. Следователно секциите на кода и стека в скрипта за свързване са зададени на началния адрес на DDR3 паметта, както е показано на фигура 6.
Фигура 6 • Целеви скрипт за свързване на приложения
Скриптът за свързване (microsemi-riscv-ram.ld) е достъпен в папката на приложението SoftConsole_Project\miv-rv32imddr- на дизайна files.
Настройка на хардуера
Следните стъпки описват как да настроите хардуера:
- Уверете се, че платката е изключена, като използвате превключвателя SW6.
- Свържете джъмперите на комплекта за разработка RTG4, както е показано в следната таблица:
Таблица 4 • ДжъмпериДжъмпър Фиксиране от Фиксиране към Коментари J11, J17, J19, J23, J26, J21, J32 и J27 1 2 По подразбиране J16 2 3 По подразбиране J33 1 2 По подразбиране 3 4 - Свържете хост компютъра към конектора J47 с помощта на USB кабела.
- Уверете се, че драйверите за мост от USB към UART се откриват автоматично. Това може да се провери в диспечера на устройствата на хост компютъра.
- Както е показано на фигура 7, свойствата на порта на COM13 показват, че той е свързан към USB сериен конвертор C. Следователно COM13 е избран в този примерampле. Номерът на COM порта е специфичен за системата.
Фигура 7 • Диспечер на устройства
Забележка: Ако драйверите за USB към UART мост не са инсталирани, изтеглете и инсталирайте драйверите от www.microsemi.com//documents/CDM_2.08.24_WHQL_Certified.zip. - Свържете захранването към конектор J9 и включете превключвателя на захранването, SW6.
Фигура 8 • Комплект за разработка на RTG4
Стартиране на демонстрацията
Тази глава описва стъпки за програмиране на устройството RTG4 с референтния дизайн, програмиране на SPI Flash с целевото приложение и зареждане на целевото приложение от DDR памет с помощта на GUI на Mi-V Bootloader.
Изпълнението на демонстрацията включва следните стъпки:
- Програмиране на устройството RTG4, страница 11
- Изпълнение на Mi-V Bootloader, страница 11
Програмиране на устройството RTG4
Устройството RTG4 може да се програмира с помощта на FlashPro Express или Libero SOC.
- За програмиране на комплекта за разработка RTG4 с заданието file предоставен като част от дизайна fileс използване на софтуера FlashPro Express, вижте Приложение 1: Програмиране на устройството чрез FlashPro Express, страница 14.
- За да програмирате устройството с помощта на Libero SoC, вижте Приложение 2: Програмиране на устройството с помощта на Libero SoC, страница 17.
Стартиране на Mi-V Bootloader
При успешно завършване на програмирането изпълнете следните стъпки:
- Стартирайте setup.exe file налични в следния дизайн files местоположение.
<$Download_Directory>\rtg4_ac490_df\GUI_Installer\Mi-V Bootloader_Installer_V1.4 - Следвайте съветника за инсталиране, за да инсталирате GUI приложението Bootloader.
Фигура 9 показва GUI на RTG4 Mi-V Bootloader.
Фигура 9 • GUI на Mi-V Bootloader - Изберете COM порта, свързан към USB сериен конвертор C, както е показано на фигура 7.
- Щракнете върху бутона за свързване. След успешно свързване червеният индикатор става зелен, както е показано на фигура 10.
Фигура 10 • Свързване на COM порт - Щракнете върху бутона Импортиране и изберете целевото приложение file (.bin). След импортирането, пътят на file се показва в GUI, както е показано на фигура 11.
<$Download_Directory>\rtg4_ac490_df\Source_files
Фигура 11 • Импортиране на целевото приложение File - Както е показано на фигура 11, щракнете върху опцията Program SPI Flash, за да програмирате целевото приложение на SPI Flash. Показва се изскачащ прозорец, след като SPI Flash бъде програмиран, както е показано на Фигура 12. Щракнете върху OK.
Фигура 12 • Програмиран SPI Flash - Изберете опцията Start Boot, за да копирате приложението от SPI Flash в DDR3 памет и да започнете да изпълнявате приложението от DDR3 памет. След успешно зареждане на целевото приложение от DDR3 памет, приложението отпечатва UART съобщения и мига вградените потребителски LED1, 2, 3 и 4, както е показано на фигура 13.
Фигура 13 • Изпълнение на приложение от DDR - Приложението работи от DDR3 памет и това приключва демонстрацията. Затворете GUI на Mi-V Bootloader.
Програмиране на устройството чрез FlashPro Express
Този раздел описва как да програмирате устройството RTG4 с заданието за програмиране file използвайки FlashPro Express.
За да програмирате устройството, изпълнете следните стъпки:
- Уверете се, че настройките на джъмпера на платката са същите като посочените в таблица 3 на UG0617:
Ръководство за потребителя на комплекта за разработка на RTG4. - По желание джъмпер J32 може да бъде настроен да свързва щифтове 2-3, когато използвате външен FlashPro4, FlashPro5 или FlashPro6 програматор, вместо настройката на джъмпера по подразбиране за използване на вградения FlashPro5.
Забележка: Превключвателят на захранването, SW6, трябва да бъде изключен, докато правите джъмперните връзки. - Свържете захранващия кабел към конектора J9 на платката.
- Включете превключвателя на захранването SW6.
- Ако използвате вградения FlashPro5, свържете USB кабела към конектор J47 и хост компютъра.
Като алтернатива, ако използвате външен програматор, свържете лентовия кабел към JTAG заглавка J22 и свържете програмиста към хост компютъра. - На хост компютъра стартирайте софтуера FlashPro Express.
- Щракнете върху New или изберете New Job Project от FlashPro Express Job от менюто Project, за да създадете нов проект за работа, както е показано на следващата фигура.
Фигура 14 • FlashPro Express Job Project - Въведете следното в диалоговия прозорец New Job Project от FlashPro Express Job:
- Работа по програмиране file: Щракнете върху Преглед и отидете до мястото, където е .job file се намира и изберете file. Местоположението по подразбиране е: \rtg4_ac490_df\Programming_Job
- Местоположение на проекта за задание на FlashPro Express: Щракнете върху Преглед и отидете до желаното местоположение на проект на FlashPro Express.
Фигура 15 • Нов проект за работа от FlashPro Express Job
- Натиснете OK. Необходимото програмиране file е избрано и готово за програмиране в устройството.
- Прозорецът FlashPro Express се появява, както е показано на следващата фигура. Уверете се, че в полето Програмист се появява номер на програмист. Ако не стане, потвърдете връзките на платката и щракнете върху Refresh/Rescan Programmers.
Фигура 16 • Програмиране на устройството - Натиснете RUN. Когато устройството е програмирано успешно, се показва статус RUN PASSED, както е показано на следващата фигура.
Фигура 17 • FlashPro Express — ИЗПЪЛНЕНИЕТО УСПЯЛО - Затворете FlashPro Express или щракнете върху Изход в раздела Проект.
Програмиране на устройството с помощта на Libero SoC
Референтният дизайн fileвключват проекта за процесорна подсистема Mi-V, създаден с помощта на Libero SoC. Устройството RTG4 може да се програмира с помощта на Libero SoC. Проектът Libero SoC е напълно изграден и се изпълнява от синтез, място и маршрут, проверка на времето, генериране на данни от FPGA масив, актуализиране на съдържанието на паметта μPROM, генериране на битов поток, програмиране на FPGA.
Дизайнерският поток на Libero е показан на следващата фигура.
Фигура 18 • Поток на дизайна Libero
За да програмирате устройството RTG4, проектът на подсистемата на процесора Mi-V трябва да бъде отворен в Libero SoC и следните стъпки трябва да бъдат изпълнени отново:
- Актуализиране на съдържанието на паметта uPROM: В тази стъпка μPROM се програмира с приложението за зареждане.
- Generation Bitstream: В тази стъпка работата file се генерира за устройството RTG4.
- FPGA програмиране: В тази стъпка устройството RTG4 се програмира с помощта на заданието file.
Следвайте тези стъпки:
- От Libero Design Flow изберете Update uPROM Memory Content.
- Създайте клиент с помощта на опцията Добавяне.
- Изберете клиента и след това изберете опцията Редактиране.
- Изберете Съдържание от file и след това изберете опцията Преглед, както е показано на фигура 19.
Фигура 19 • Редактиране на клиент за съхранение на данни - Придвижете се до следния дизайн files местоположение и изберете miv-rv32im-bootloader.hex file както е показано на фигура 20. <$Download_Directory>\rtg4_ac490_df
- Задайте File Въведете като Intel-Hex (*.hex).
- Изберете Използване на относителен път от директорията на проекта.
- Натиснете OK.
Фигура 20 • Импортиране на памет File
- Натиснете OK.
Съдържанието на μPROM се актуализира. - Щракнете двукратно върху Generate Bitstream, както е показано на фигура 21.
Фигура 21 • Генериране на битов поток - Щракнете двукратно върху Run PROGRAM Action, за да програмирате устройството, както е показано на фигура 21.
Устройството RTG4 е програмирано. Вижте Изпълнение на демонстрацията, страница 11.
Изпълнение на TCL скрипта
TCL скриптовете са предоставени в дизайна files папка в директория TCL_Scripts. Ако е необходимо, проектният поток може да бъде възпроизведен от изпълнението на дизайна до генерирането на задание file.
За да стартирате TCL, следвайте стъпките по-долу:
- Стартирайте софтуера Libero.
- Изберете Проект > Изпълнение на скрипт....
- Щракнете върху Преглед и изберете script.tcl от изтеглената директория TCL_Scripts.
- Щракнете върху Изпълнение.
След успешното изпълнение на TCL скрипта, проектът Libero се създава в директорията TCL_Scripts.
За повече информация относно TCL скриптовете вижте rtg4_ac490_df/TCL_Scripts/readme.txt.
Обърнете се към Libero® SoC TCL Reference Guide за повече подробности относно TCL командите. Контакт
Техническа поддръжка за всякакви заявки, възникнали при изпълнение на TCL скрипта.
Microsemi не дава никаква гаранция, представяне или гаранция относно информацията, съдържаща се тук, или пригодността на своите продукти и услуги за конкретна цел, нито Microsemi поема каквато и да е отговорност, произтичаща от приложението или използването на който и да е продукт или схема. Продуктите, продавани по-долу, и всички други продукти, продавани от Microsemi, са били обект на ограничени тестове и не трябва да се използват заедно с оборудване или приложения, които са изключително важни. Всички спецификации за производителност се считат за надеждни, но не са проверени и Купувачът трябва да проведе и завърши всички тестове за производителност и други тестове на продуктите, самостоятелно и заедно с или инсталирани в крайни продукти. Купувачът няма да разчита на никакви данни и спецификации за изпълнение или параметри, предоставени от Microsemi. Отговорност на Купувача е самостоятелно да определи пригодността на всеки продукт и да тества и проверява същото. Информацията, предоставена от Microsemi по-долу, се предоставя „както е, къде е“ и с всички неизправности, а целият риск, свързан с такава информация, е изцяло върху Купувача. Microsemi не предоставя, изрично или имплицитно, на която и да е страна каквито и да е патентни права, лицензи или каквито и да било други права на интелектуална собственост, независимо дали по отношение на самата такава информация или нещо, описано в такава информация. Информацията, предоставена в този документ, е собственост на Microsemi и Microsemi си запазва правото да прави промени в информацията в този документ или на продукти и услуги по всяко време без предизвестие.
Относно Microsemi
Microsemi, изцяло притежавано дъщерно дружество на Microchip Technology Inc. (Nasdaq: MCHP), предлага изчерпателно портфолио от полупроводникови и системни решения за космически и отбранителни, комуникационни, центрове за данни и индустриални пазари. Продуктите включват високопроизводителни и радиационно закалени аналогови интегрални схеми със смесен сигнал, FPGA, SoC и ASIC; продукти за управление на захранването; устройства за отчитане и синхронизация и прецизни времеви решения, поставящи световния стандарт за времето; устройства за обработка на глас; RF решения; дискретни компоненти; корпоративни решения за съхранение и комуникация, технологии за сигурност и мащабируеми анти-тamper продукти; Ethernet решения; Power-over-Ethernet ИС и midspans; както и възможности за персонализиран дизайн и услуги. Научете повече на www.microsemi.com.
Щабът на Microsemi
One Enterprise, Алисо Виехо,
CA 92656 САЩ
В САЩ: +1 800-713-4113
Извън САЩ: +1 949-380-6100
Продажби: +1 949-380-6136
Факс: +1 949-215-4996
Имейл: sales.support@microsemi.com
www.microsemi.com
©2021 Microsemi, изцяло притежавано дъщерно дружество на Microchip Technology Inc. Всички права запазени. Microsemi и логото на Microsemi са регистрирани търговски марки на Microsemi Corporation. Всички други търговски марки и марки за услуги са собственост на съответните им собственици
Документи / Ресурси
![]() |
Microsemi AC490 RTG4 FPGA: Изграждане на Mi-V процесорна подсистема [pdf] Ръководство за потребителя AC490 RTG4 FPGA Изграждане на Mi-V процесорна подсистема, AC490 RTG4, FPGA Изграждане на Mi-V процесорна подсистема, Mi-V процесорна подсистема |