DG0388 SmartFusion2 SoC FPGA грешка
Откриване и коригиране на Seram Memory
Ръководство за потребителя
©2021 Microsemi, изцяло притежавано дъщерно дружество на Microchip Technology Inc. Всички права запазени. Microsemi и логото Microsemi са регистрирани търговски марки на Microsemi Corporation. Всички други търговски марки и марки за услуги са собственост на съответните им собственици.
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.
История на ревизиите
Историята на ревизиите описва промените, които са били внедрени в документа. Промените са изброени по редакция, като се започне с текущата публикация.
1.1 Ревизия 11.0
Следното е обобщение на промените, направени в тази редакция.
- Актуализира документа за Libero SoC v12.6.
- Премахнати са препратките към номерата на версията на Libero.
1.2 Ревизия 10.0
Актуализиран документ за версия на софтуера Libero SoC v11.8 SP1.
1.3 Ревизия 9.0
Актуализиран документ за версия на софтуера Libero SoC v11.8.
1.4 Ревизия 8.0
Актуализиран документ за версия на софтуера Libero SoC v11.7 (SAR 77402).
1.5 Ревизия 7.0
Актуализиран документ за версия на софтуера Libero SoC v11.6 (SAR 72777).
1.6 Ревизия 6.0
Актуализиран документ за версия на софтуера Libero SoC v11.5 (SAR 64979).
1.7 Ревизия 5.0
Актуализиран документ за версия на софтуера Libero SoC v11.4 (SAR 60476).
1.8 Ревизия 4.0
Актуализиран документ за версия на софтуера Libero SoC v11.3 (SAR 56852).
1.9 Ревизия 3.0
Актуализиран документ за версия на софтуера Libero SoC v11.2 (SAR 52960).
1.10 Ревизия 2.0
Актуализиран документ за версия на софтуера Libero SoC v11.0 (SAR 47858).
1.11 Ревизия 1.0
Първата публикация на този документ.
SmartFusion2 SoC FPGA – Откриване на грешки и корекция на Seram памет
Въведение
Този документ описва възможностите за откриване и коригиране на грешки (EDAC) на устройствата SmartFusion® 2 на вградената статична памет с произволен достъп (Seram). Контролерите EDAC, внедрени в устройствата SmartFusion2, поддържат корекция на единична грешка и откриване на двойна грешка (SECDED). Всички памети в подсистемата на микроконтролера (MSS) на SmartFusion2 са защитени от SECDED. Паметта на Seram може да бъде eSRAM_0 или eSRAM_1. Диапазонът от адреси на eSRAM_0 е от 0x20000000 до 0x20007FFF, а диапазонът от адреси на eSRAM_1 е от 0x20008000 до 0x2000FFFF.
Когато SECDED е активиран:
- Операцията за запис изчислява и добавя 8 бита SECDED код към всеки 32 бита данни.
- Операция за четене чете и проверява данните спрямо съхранения SECDED код, за да поддържа 1-битово коригиране на грешки и 2-битово откриване на грешки.
В тази демонстрация EDAC може да бъде идентифициран чрез мигащия светодиод (LED) на платката и чрез графичния потребителски интерфейс (GUI).EDAC на eSRAM поддържа следните функции:
- SECDED механизъм
- Осигурява прекъсвания на процесора ARM Cortex-M3 и FPGA тъканта при откриване на 1-битова грешка или 2-битова грешка.
- Съхранява броя на 1-битовите и 2-битовите грешки в регистрите на брояча на грешки.
- Съхранява адреса на последното 1-битово или 2-битово засегнато от грешка място в паметта.
- Съхранява 1-битови или 2-битови данни за грешка в регистрите SECDED.
- Осигурява сигнали на шината за грешка към FPGA тъканта.
Обърнете се към главата за EDAC на UG0443: Ръководство за потребителя за сигурност и надеждност на SmartFusion2 и IGLOO2 FPGA и глава Seram на UG0331: Ръководство за потребителя на подсистемата на микроконтролера SmartFusion2.
2.2 Изисквания за демонстрация
Следващата таблица изброява хардуерните и софтуерните изисквания за изпълнение на демонстрационния дизайн.
Таблица 1 • Изисквания за проектиране
Изискване | Версия |
Операционна система | 64 битови Windows 7 и 10 |
Хардуер | |
Комплект за оценка на сигурността SmartFusion2: • Програматор FlashPro4 • USB A към Mini – B USB кабел • Адаптер 12 V |
Rev D или по-нова версия |
Софтуер | |
FlashPro Express | Обърнете се към readme.txt file предвидени в проекта files за софтуерните версии, използвани с този референтен дизайн. |
Либеро | |
Софтуер System-on-Chip (SoC). | |
SoftConsole | |
Драйвери за хост компютър | USB към UART драйвери |
За стартиране на демо GUI | Клиент на Microsoft.NET Framework 4 |
Забележка: Libero Smart Design и екранните снимки на конфигурацията, показани в това ръководство, са само за илюстрация.
Отворете дизайна на Libero, за да видите последните актуализации.
2.3 Предварителни условия
Преди да започнете:
Изтеглете и инсталирайте Libero SoC (както е посочено в webсайт за този дизайн) на хост компютъра от следното местоположение.
https://www.microsemi.com/product-directory/design-resources/1750-libero-soc
2.3.1 Design Files
Демо дизайнът files са достъпни за изтегляне от следния път в Microsemi webсайт: http://soc.microsemi.com/download/rsc/?f=m2s_dg0388_df
Дизайн files включват:
- GUI изпълним файл
- Проект Либеро
- Работа по програмиране
- Readme file
Следващата фигура показва структурата от най-високо ниво на дизайна fileс. За повече подробности вижте readme.txt file.2.4 Описание на демонстрационния дизайн
Всеки Seram в рамките на MSS е защитен от специален EDAC контролер. EDAC открива 1-битова грешка или 2-битова грешка, когато данните се четат от паметта. Ако EDAC открие 1-битовата грешка, EDAC контролерът коригира същия бит за грешка. Ако EDAC е активиран за всички 1-битови и 2-битови грешки, съответните броячи на грешки в системните регистри се увеличават и се генерират съответните прекъсвания и сигнали на шината за грешка към FPGA тъканта.
В среда, податлива на разстройство при едно събитие (SEU), паметта с произволен достъп (RAM) е податлива на преходни грешки, причинени от тежки йони. Това се случва в реално време. За да се демонстрира това, грешка се въвежда ръчно и се наблюдава откриване и коригиране.
Този демо дизайн включва изпълнение на следните задачи:
- Активирайте EDAC
- Запишете данни в Seram
- Прочетете данни от Seram
- Деактивирайте EDAC
- Повредете един или два бита
- Запишете данни в Seram
- Активирайте EDAC
- Прочетете данните
- В случай на 1-битова грешка, EDAC контролерът коригира грешката, актуализира съответните регистри за състояние и дава данните, записани в стъпка 2, при операцията за четене, извършена в стъпка 8.
- В случай на 2-битова грешка се генерира съответното прекъсване и приложението трябва да коригира данните или да предприеме подходящото действие в манипулатора на прекъсванията. Тези два метода са демонстрирани в тази демонстрация.
В тази демонстрация са внедрени два теста: цикличен тест и ръчен тест и те са приложими както за 1-битови, така и за 2-битови грешки.
2.4.1 Тест на веригата
Loop Test се изпълнява, когато SmartFusion2 получи команда за тестване на цикъл от GUI. Първоначално всички броячи на грешки и свързаните с EDAC регистри се поставят в състояние RESET.
За всяка итерация се изпълняват следните стъпки:
- Активирайте EDAC контролера.
- Запишете данните в конкретно място в паметта на Seram.
- Деактивирайте EDAC контролера.
- Запишете 1-битовите или 2-битовите данни, предизвикани от грешка, в едно и също място в паметта на Seram.
- Активирайте EDAC контролера.
- Прочетете данните от същото място в паметта на Seram.
- Изпращане на 1-битови или 2-битови данни за откриване на грешка и 1-битова корекция на грешка в случай на 1-битова грешка към GUI.
2.4.2 Ръчен тест
Този метод позволява ръчно тестване за активиране или деактивиране на EDAC и операция за запис или четене. Използвайки този метод, 1-битови или 2-битови грешки могат да бъдат въведени на всяко място в шева. Активирайте EDAC и запишете данни на посочения адрес, като използвате GUI полетата. Деактивирайте EDAC и запишете 1-битови или 2-битови повредени данни на същото местоположение на адреса. Активирайте EDAC и прочетете данните от същото местоположение на адреса, след което светодиодът на платката превключва, за да уведоми за откриване и коригиране на грешки. Съответният брояч на грешки се показва в GUI. GUI Serial Console регистрира всички действия, извършени в SmartFusion2.
Следващата фигура показва демонстрационните операции на Seram EDAC.2.5 Пускане на демонстрацията
Този раздел описва настройката на платката на комплекта за оценка на сигурността SmartFusion2, опциите на GUI и как да изпълните демонстрационния дизайн.
2.5.1 Демо настройка
Следните стъпки описват как да настроите демонстрацията:
- Свържете FlashPro4 програмиста към конектора J5 на SmartFusion2 Security Evaluation Kit платка.
- Свържете единия край на USB mini-B кабела към конектора J18, предоставен в платката на SmartFusion2 Security Evaluation Kit. Свържете другия край на USB кабела към хост компютъра. Уверете се, че драйверите за USB към UART Bridge се откриват автоматично (може да се провери в Device Manager), както е показано на Фигура 4, страница 7.
Забележка: Копирайте номера на COM порта за конфигурация на сериен порт. Уверете се, че местоположението на COM порта е указано като на USB сериен конвертор D, както е показано на следващата фигура. - Ако драйверите за USB към UART мост не са инсталирани, изтеглете и инсталирайте драйверите от www.microsemi.com/soc/documents/CDM_2.08.24_WHQL_Certified.zip
- Свържете джъмперите на платката на SmartFusion2 Security Evaluation Kit, както е показано на следващата фигура. Превключвателят на захранването SW7 трябва да бъде изключен, докато правите джъмперните връзки.
Таблица 2 • Настройки на джъмпера на комплекта за оценка на сигурността SmartFusion2Джъмпър ПИН (от) Фиксиране (към) Коментари J22, J23, J24, J8, J3 1 (по подразбиране) 2 Това са настройките на джъмпера по подразбиране на платката SmartFusion2 Security Evaluation Kit. Уверете се, че тези джъмпери са поставени по съответния начин. - Свържете захранването към конектор J18.
Следващата фигура показва настройката на платката за стартиране на демонстрацията на SmartFusion2 SecuEvaluation Kit.2.5.2 Графичен потребителски интерфейс
Следващият раздел описва за Seram – EDAC demo GUI.
GUI поддържа следните функции:
- Избор на COM порт и Baud Rate.
- Избор на 1-битов раздел за коригиране на грешки или 2-битов раздел за откриване на грешки.
- Избор на eSRAM0 или eSRAM1.
- Адресно поле за запис или четене на данни към или от определен адрес на Seram.
- Поле за данни за записване или четене на данни към или от определен адрес на Seram.
- Секция Serial Console за отпечатване на информацията за състоянието, получена от приложението.
- EDAC ON/OFF: Активира или деактивира EDAC.
- Запис: Позволява запис на данни на посочения адрес.
- Четене: Позволява четене на данни от посочения адрес.
- LOOP test ON/OFF: Позволява тестване на EDAC механизма в цикъл.
2.5.3 Изпълнение на дизайна
Следните стъпки описват как да стартирате дизайна:
- Включете превключвателя за захранване, SW7.
- Програмирайте платката на комплекта за оценка на сигурността SmartFusion2 със заданието file предоставен като част от дизайна files (\Programming job\eSRAM_0\eSRAM0.job или \Programming job\eSRAM_1\eSRAM1.job) с помощта на софтуера FlashPro Express, вижте Приложение: Програмиране на устройството с помощта на FlashPro Express, страница 12.
- Натиснете превключвателя SW6, за да нулирате платката след успешно програмиране.
- Стартирайте изпълнимия EDAC_eSRAM Demo GUI file налични в дизайна files (\GUI Executable\ EDAC_eSRAM.exe). Показва се прозорецът на GUI, както е показано на Фигура 6, страница 9.
- Изберете съответния COM порт (към който са насочени драйверите за USB към UART Bridge) от падащия списък COM Port.
- Изберете Baud Rate като 57600 и щракнете върху Свързване. След установяване на връзката Connect се променя на Disconnect.
- Изберете Seram 0 или Seram 1 в зависимост от програмирането file избран в стъпка 2.
- Изберете раздела 1-bit Error Correction или раздела 2-bit Error Detection, както е показано на Фигура 7, страница 10. и Фигура 8, страница 11.
- Могат да се извършат два вида тестове: ръчни и циклични.
2.5.3.1 Извършване на Loop Test
Щракнете върху Loop Test ON. Той работи в режим на цикъл, където се извършва непрекъсната корекция и откриване на грешки. Цикълът се изпълнява за 200 итерации. Всички действия, извършени в SmartFusion2, се записват в секцията Serial Console на GUI. 2-битовият цикличен тест за откриване на грешки отпечатва засегнатото от грешка отместване на адреса на Seram в серийната конзола. Щракнете върху Loop Test OFF след завършване на 200 итерации.
Таблица 3 • Адреси на паметта на Seram, използвани в Loop Test
Памет 1 | 1-битова корекция на грешки | Откриване на 2-битова грешка |
eSRAM0 | 0x20000000 | 0x20002000 |
eSRAM1 | 0x20008000 | 0x2000A000 |
2.5.3.2 Извършване на ръчен тест
При този метод грешките се въвеждат ръчно чрез GUI. Използвайте следните стъпки, за да изпълните 1-битова корекция на грешка или 2-битова откриване на грешка:
- Полета за въвеждане на адрес и данни (използвайте 32-битови шестнадесетични стойности).
- Щракнете върху EDAC ON.
- Щракнете върху Писане.
- Щракнете върху EDAC OFF.
- Просто променете 1-битов (в случай на 1-битова корекция на грешка) или 2 бита (в случай на 2-битова откриване на грешка) в полето за данни (въвеждаща грешка).
- Щракнете върху Писане.
- Щракнете върху EDAC ON.
- Щракнете върху Прочетете.
- Наблюдавайте показването на броя грешки и полето за данни в GUI. Стойността на броя грешки се увеличава с 1.
Всички действия, извършени в SmartFusion2, се регистрират в секцията Serial Console на GUI.
Забележка: За да превключите от 1-битов раздел за коригиране на грешки към 2-битов раздел за откриване на грешки или обратно в EDAC_eSRAM Demo GUI, нулирайте хардуерната платка.
2.6 Заключение
Тази демонстрация показва SmartFusion2 SECDED възможностите на Seram.
Приложение: Програмиране на устройството чрез FlashPro Express
Този раздел описва как да програмирате устройството SmartFusion2 със задачата за програмиране file използвайки FlashPro Express.
За да програмирате устройството, изпълнете следните стъпки:
- Уверете се, че настройките на джъмпера на платката са същите като посочените в таблица 2, страница 7.
Забележка: Превключвателят на захранването трябва да бъде изключен, докато правите джъмперните връзки. - Свържете захранващия кабел към конектора J6 на платката.
- Включете превключвателя на захранването SW7.
- На хост компютъра стартирайте софтуера FlashPro Express.
- Щракнете върху New или изберете New Job Project от FlashPro Express Job от менюто Project, за да създадете нов проект за работа, както е показано на следващата фигура.
- Въведете следното в диалоговия прозорец New Job Project от FlashPro Express Job:
• Работа по програмиране file: Щракнете върху Преглед и отидете до мястото, където е .job file се намира и изберете file. Местоположението по подразбиране е: \m2s_dg0388_df\Програмиране
• Име на проекта за задание на FlashPro Express: Щракнете върху Преглед и навигирайте до мястото, където искате да запишете проекта. - Натиснете OK. Необходимото програмиране file е избрано и готово за програмиране в устройството.
- Прозорецът FlashPro Express се появява, както е показано на следващата фигура. Уверете се, че в полето Програмист се появява номер на програмист. Ако не стане, потвърдете връзките на платката и щракнете върху Refresh/Rescan Programmers.
- Натиснете RUN. Когато устройството е програмирано успешно, се показва статус RUN PASSED, както е показано на следващата фигура.
- Затворете FlashPro Express или в раздела Проект щракнете върху Изход.
Щабът на 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
Собственост на Microsemi DG0388 Ревизия 11.0
Документи / Ресурси
![]() |
Microsemi DG0388 SmartFusion2 SoC FPGA Откриване на грешки и коригиране на eSRAM памет [pdf] Ръководство за потребителя DG0388, SmartFusion2 SoC FPGA Откриване на грешки и коригиране на eSRAM памет, DG0388 SmartFusion2 SoC FPGA Откриване на грешки и коригиране на eSRAM памет |