Microsemi -LOGO

Microsemi DG0618 kļūdu noteikšana un labošana SmartFusion2 ierīcēs, izmantojot DDR atmiņu

Microsemi -DG0618-Kļūdas noteikšana un labošana SmartFusion2 ierīcēs, izmantojot DDR atmiņu, produkta attēls

Microsemi korporatīvā mītne
One Enterprise, Aliso Viejo,
CA 92656 ASV
ASV iekšienē: +1 800-713-4113
Ārpus ASV: +1 949-380-6100
Fakss: +1 949-215-4996
E-pasts: sales.support@microsemi.com
www.microsemi.com
© 2017 Microsemi Corporation. Visas tiesības aizsargātas. Microsemi un Microsemi logotips ir Microsemi Corporation preču zīmes. Visas pārējās preču zīmes un pakalpojumu zīmes ir to attiecīgo īpašnieku īpašums

Microsemi nesniedz nekādu garantiju, pārstāvību vai garantiju attiecībā uz šeit ietverto informāciju vai savu produktu un pakalpojumu piemērotību kādam noteiktam mērķim, kā arī Microsemi neuzņemas nekādu atbildību, kas izriet no jebkura produkta vai ķēdes lietojuma vai lietošanas. Šeit pārdotie produkti un visi citi Microsemi pārdotie produkti ir pakļauti ierobežotai pārbaudei, un tos nedrīkst izmantot kopā ar misijai kritisku aprīkojumu vai lietojumprogrammām. Tiek uzskatīts, ka jebkuras veiktspējas specifikācijas ir uzticamas, taču tās netiek pārbaudītas, un Pircējam ir jāveic un jāpabeidz visas produktu veiktspējas un citas pārbaudes gan atsevišķi, gan kopā ar jebkuriem galaproduktiem vai tajos uzstādītiem. Pircējs nedrīkst paļauties uz Microsemi sniegtajiem datiem un veiktspējas specifikācijām vai parametriem. Pircēja pienākums ir neatkarīgi noteikt jebkuras preces piemērotību, kā arī pārbaudīt un pārbaudīt to. Tālāk Microsemi sniegtā informācija tiek sniegta “tāda, kāda tā ir, kur ir” un ar visām kļūdām, un viss risks, kas saistīts ar šādu informāciju, pilnībā gulstas uz Pircēju. Uzņēmums Microsemi tieši vai netieši nepiešķir nevienai pusei nekādas patenta tiesības, licences vai jebkādas citas intelektuālā īpašuma tiesības neatkarīgi no tā, vai tas attiecas uz pašu informāciju vai jebko, kas aprakstīts šajā informācijā. Šajā dokumentā sniegtā informācija pieder uzņēmumam Microsemi, un Microsemi patur tiesības jebkurā laikā bez brīdinājuma veikt jebkādas izmaiņas šajā dokumentā ietvertajā informācijā vai produktos un pakalpojumos.

Par Microsemi
Microsemi Corporation (Nasdaq: MSCC) piedāvā visaptverošu pusvadītāju un sistēmu risinājumu portfeli aviācijas un aizsardzības, sakaru, datu centru un rūpniecības tirgiem. Produkti ietver augstas veiktspējas un pret radiāciju izturīgas analogās jaukto signālu integrālās shēmas, FPGA, SoC un ASIC; jaudas pārvaldības produkti; laika noteikšanas un sinhronizācijas ierīces un precīzi laika risinājumi, nosakot pasaules laika standartu; balss apstrādes ierīces; RF risinājumi; diskrēti komponenti; uzņēmumu uzglabāšanas un sakaru risinājumi, drošības tehnoloģijas un mērogojams anti-tamper produkti; Ethernet risinājumi; Power-over-Ethernet IC un midspans; kā arī pielāgotas dizaina iespējas un pakalpojumi. Microsemi galvenā mītne atrodas Aliso Viejo, Kalifornijā, un tajā visā pasaulē strādā aptuveni 4,800 darbinieku. Uzziniet vairāk vietnē www.microsemi.com.

Pārskatīšanas vēsture

Pārskatīšanas vēsturē ir aprakstītas izmaiņas, kas tika ieviestas dokumentā. Izmaiņas ir uzskaitītas pēc pārskatīšanas, sākot ar jaunāko publikāciju.

  • Pārskatīšana 4.0
    Atjaunināts Libero v11.8 programmatūras laidiena dokuments.
  • Pārskatīšana 3.0
    Atjaunināts Libero v11.7 programmatūras laidiena dokuments.
  • Pārskatīšana 2.0
    Atjaunināts Libero v11.6 programmatūras laidiena dokuments.
  • Pārskatīšana 1.0
    Sākotnējais Libero SoC v11.5 programmatūras laidiens.

Kļūdu noteikšana un labošana SmartFusion2 ierīcēs, izmantojot DDR atmiņu

Ievads
Viena notikuma traucējumu (SEU) jutīgā vidē brīvpiekļuves atmiņa (RAM) ir pakļauta pārejošām kļūdām, ko izraisa smagie joni.
Šajā dokumentā ir aprakstītas SoC FPGA EDAC iespējas, kas tiek izmantotas lietojumprogrammās ar atmiņām, kas savienotas, izmantojot mikrokontrollera apakšsistēmu (MSS) DDR (MDDR).
SmartFusion2 ierīcēs ieviestie EDAC kontrolleri atbalsta vienas kļūdas labošanu un dubulto kļūdu noteikšanu (SECDED). Visas atmiņas — uzlabotā statiskā brīvpiekļuves atmiņa (eSRAM), DDR, mazjaudas DDR (LPDDR) — SmartFusion2 MSS ierīcēs ir aizsargātas ar SECDED. DDR sinhronā dinamiskā brīvpiekļuves atmiņa (SDRAM) var būt DDR2, DDR3 vai LPDDR1 atkarībā no MDDR konfigurācijas un aparatūras ECC iespējām.
SmartFusion2 MDDR apakšsistēma atbalsta atmiņas blīvumu līdz 4 GB. Šajā demonstrācijā varat atlasīt jebkuru 1 GB atmiņas vietu DDR adrešu telpā (0xA0000000 līdz 0xDFFFFFFF).
Kad ir iespējots SECDED:

  • Rakstīšanas operācija aprēķina un pievieno 8 SECDED koda bitus (katriem 64 datu bitiem)
  • Lasīšanas darbība nolasa un pārbauda datus pret saglabāto SECDED kodu, lai atbalstītu 1 bitu kļūdu labošanu un 2 bitu kļūdu noteikšanu

Nākamajā attēlā ir aprakstīta SmartFusion2 EDAC blokshēma DDR SDRAM.

1. attēls • Augstākā līmeņa blokshēma

DDR EDAC līdzeklis atbalsta tālāk norādīto.

  1.  SECDED mehānisms
  2. Nodrošina pārtraukumus ARM Cortex-M3 procesoram un FPGA audumam, atklājot 1 bitu kļūdu vai 2 bitu kļūdu
  3. Saglabā 1 bitu un 2 bitu kļūdu skaitu kļūdu skaitītāju reģistros
  4. Saglabā pēdējās 1 bita vai 2 bitu kļūdas ietekmētās atmiņas vietas adresi
  5. Saglabā 1 bitu vai 2 bitu kļūdu datus SECDED reģistros
  6. nodrošina kļūdu kopnes signālus FPGA audumam

Lai iegūtu papildinformāciju par EDAC, skatiet UG0443: SmartFusion2 un IGLOO2 FPGA drošības un uzticamības lietotāja rokasgrāmatu un UG0446: SmartFusion2 un IGLOO2 FPGA ātrdarbīgu DDR interfeisu lietotāja rokasgrāmatu.

Dizaina prasības
Nākamajā tabulā ir norādītas dizaina prasības.

1. tabula • Projektēšanas prasības

  • Dizaina prasību apraksts
  • Aparatūras prasības
  • SmartFusion2 Advanced Development Kit plate Rev B vai jaunāka versija
  • Programmētājs FlashPro5 vai jaunāks
  • USB A līdz mini-B USB vads
  • Strāvas adapteris 12 V
  • DDR3 meitas plate
  • Operētājsistēma Jebkura 64 bitu vai 32 bitu Windows XP SP2
  • Jebkura 64 bitu vai 32 bitu Windows 7
  • Programmatūras prasības
  • Libero® System-on-Chip (SoC) v11.8
  • SoftConsole v4.0
  • Programmēšanas programmatūra FlashPro v11.8
  • Resursdatora draiveri USB uz UART draiveri
  • Framework demonstrācijas Microsoft .NET Framework 4 klienta palaišanai

Demo dizains
Demo dizains files ir pieejami lejupielādei no tālāk norādītā Microsemi ceļa webvietne: http://soc.microsemi.com/download/rsc/?f=m2s_dg0618_liberov11p8_df
Demo dizains files ietver:

  • DDR konfigurācija File
  • DDR_EDAC
  • Programmēšana files
  • GUI izpildāmā programma
  • Lasi mani file

Nākamajā attēlā ir aprakstīta dizaina augstākā līmeņa struktūra files. Papildinformāciju skatiet failā readme.txt file.

2. attēls • Demonstrācijas augstākā līmeņa struktūra

Microsemi -DG0618-Kļūdu noteikšana un labošana SmartFusion2 ierīcēs, izmantojot DDR atmiņu-2

Demo dizaina ieviešana
MDDR apakšsistēmai ir īpašs EDAC kontrolleris. EDAC nosaka 1 bitu kļūdu vai 2 bitu kļūdu, kad dati tiek nolasīti no atmiņas. Ja EDAC konstatē 1 bita kļūdu, EDAC kontrolleris izlabo kļūdas bitu. Ja EDAC ir iespējots visām 1 bitu un 2 bitu kļūdām, attiecīgie kļūdu skaitītāji sistēmas reģistros tiek palielināti un tiek ģenerēti atbilstoši pārtraukumi un kļūdu kopnes signāli uz FPGA audumu.
Tas notiek reāllaikā. Lai demonstrētu šo SECDED funkciju, manuāli tiek ieviesta kļūda un tiek novērota atklāšana un labošana.
Šis demonstrācijas dizains ietver šādu darbību ieviešanu:

  1. Iespējot EDAC
  2. Ierakstiet datus DDR
  3. Lasīt datus no DDR
  4. Atspējot EDAC
  5. Bojāti 1 vai 2 biti
  6. Ierakstiet datus DDR
  7. Iespējot EDAC
  8. Lasīt datus
  9. 1 bita kļūdas gadījumā EDAC kontrolleris izlabo kļūdu, atjaunina atbilstošos statusa reģistrus un sniedz 2. darbībā ierakstītos datus lasīšanas darbībā, kas veikta 8. darbībā.
  10. 2 bitu kļūdas gadījumā tiek ģenerēts atbilstošs pārtraukums, un lietojumprogrammai ir jālabo dati vai jāveic atbilstoša darbība pārtraukumu apstrādātājā. Šīs divas metodes ir parādītas šajā demonstrācijā.

Šajā demonstrācijā ir ieviesti divi testi: cilpas pārbaude un manuālā pārbaude, un tie ir piemērojami gan 1 bitu, gan 2 bitu kļūdām.

Cilpas pārbaude
Cikla pārbaude tiek izpildīta, kad SmartFusion2 ierīces saņem cilpas pārbaudes komandu no GUI. Sākotnēji visi kļūdu skaitītāji un ar EDAC saistītie reģistri tiek novietoti RESET stāvoklī.
Katrai iterācijai tiek veiktas šādas darbības.

  1. Iespējojiet EDAC kontrolieri
  2. Ierakstiet datus konkrētajā DDR atmiņas vietā
  3. Atspējojiet EDAC kontrolieri
  4. Ierakstiet 1 bitu vai 2 bitu kļūdu izraisītos datus tajā pašā DDR atmiņas vietā
  5. Iespējojiet EDAC kontrolieri
  6. Lasiet datus no tās pašas DDR atmiņas vietas
  7. Nosūtīt 1 bita vai 2 bitu kļūdu noteikšanas un 1 bita kļūdu labošanas datus 1 bita kļūdas gadījumā uz GUI

Manuāls tests
Šī metode ļauj manuāli pārbaudīt 1 bitu kļūdu noteikšanu un labošanu un 2 bitu kļūdu noteikšanu DDR atmiņas adresei (0xA0000000 līdz 0xDFFFFFFF) ar inicializāciju. Atlasītajā DDR atmiņas adresē manuāli tiek ievadīta 1 bitu/2 bitu kļūda. Dotie dati tiek ierakstīti izvēlētajā DDR atmiņas vietā ar iespējotu EDAC. Bojātie 1 bitu vai 2 bitu kļūdu dati tiek ierakstīti tajā pašā atmiņas vietā ar atspējotu EDAC. Informācija par konstatēto 1 bitu vai 2 bitu kļūdu tiek reģistrēta, kad dati tiek nolasīti no tās pašas atmiņas vietas ar iespējotu EDAC. Augstas veiktspējas DMA kontrolieris
(HPDMA) izmanto, lai nolasītu datus no DDR atmiņas. Divu bitu kļūdu noteikšanas pārtraukumu apstrādātājs ir ieviests, lai veiktu atbilstošu darbību, kad tiek atklāta 2 bitu kļūda.
Nākamajā attēlā ir aprakstītas EDAC demonstrācijas darbības.

3. attēls • Projektēšanas plūsma

Microsemi -DG0618-Kļūdu noteikšana un labošana SmartFusion2 ierīcēs, izmantojot DDR atmiņu-3

Piezīme: 2 bitu kļūdas gadījumā, kad Cortex-M3 procesors nolasa datus, koda izpilde tiek veikta cieto kļūdu apstrādātājā, jo saņemtais pārtraukums kavējas, lai procesors reaģētu. Līdz brīdim, kad tas reaģē uz pārtraukumu, tas, iespējams, jau ir nodevis datus un nejauši palaidis komandu. Rezultātā HRESP pārtrauc nepareizo datu apstrādi. 2 bitu kļūdu noteikšana izmanto HPDMA, lai nolasītu datus no DDR adreses atrašanās vietas, kas norāda procesoram, ka datu nolasīšanai ir 2 bitu kļūda, un sistēmai jāveic atbilstošas ​​darbības, lai atkoptu (ECC pārtraukuma apdarinātājs).

Demonstrācijas dizaina iestatīšana
Šajā sadaļā ir aprakstīta SmartFusion2 Advanced Development Kit plates iestatīšana, GUI opcijas un demonstrācijas dizaina izpilde.
Tālāk ir aprakstītas demonstrācijas iestatīšanas darbības.

  1. Savienojiet vienu USB mini-B kabeļa galu ar J33 savienotāju, kas atrodas SmartFusion2 Advanced Development Kit platē. Pievienojiet otru USB kabeļa galu saimniekdatoram. Gaismas diodei (LED) DS27 ir jāiedegas, norādot, ka ir izveidots UART savienojums. Nodrošiniet, lai USB uz UART tilta draiveri tiktu noteikti automātiski (to var pārbaudīt ierīču pārvaldniekā), kā parādīts nākamajā attēlā.
    4. attēls • USB uz UART tilta draiveri
    Microsemi -DG0618-Kļūdu noteikšana un labošana SmartFusion2 ierīcēs, izmantojot DDR atmiņu-4
    Ja USB uz UART tilta draiveri nav instalēti, lejupielādējiet un instalējiet draiverus no: www.microsemi.com/soc/documents/CDM_2.08.24_WHQL_Certified.zip.
  2. Savienojiet SmartFusion2 Advanced Development Kit plates džemperus, kā parādīts 4. tabulā, 11. lpp. Strāvas padeves slēdzim SW7 jābūt IZSLĒGTAam, veicot džemperu savienojumus.

5. attēls • SmartFusion2 Advanced Development Kit plates iestatīšana

Microsemi -DG0618-Kļūdu noteikšana un labošana SmartFusion2 ierīcēs, izmantojot DDR atmiņu-5

 Grafiskais lietotāja interfeiss
Šajā sadaļā ir aprakstīta DDR — EDAC demonstrācijas GUI.

6. attēls • DDR — EDAC demonstrācijas GUI

Microsemi -DG0618-Kļūdu noteikšana un labošana SmartFusion2 ierīcēs, izmantojot DDR atmiņu-6

GUI atbalsta šādas funkcijas:

  1. COM porta un pārraides ātruma izvēle
  2. 1 bitu kļūdu labošanas cilnes vai 2 bitu kļūdu noteikšanas izvēle
  3. Adreses lauks, lai rakstītu vai lasītu datus uz norādīto DDR adresi vai no tās
  4. Datu lauks datu ierakstīšanai vai lasīšanai uz norādīto DDR adresi vai no tās
  5. Sadaļa Serial Console, lai izdrukātu no lietojumprogrammas saņemto statusa informāciju
  6. Enable EDAC/Disable EDAC: Iespējo vai atspējo EDAC
  7. Rakstīt: ļauj rakstīt datus uz norādīto adresi
  8.  Lasīt: ļauj nolasīt datus no norādītās adreses
  9. Loop test ON/OFF: Ļauj pārbaudīt EDAC mehānismu cilpas metodē
  10.  Inicializēt: ļauj inicializēt iepriekš definētu atmiņas vietu (šajā demonstrācijā A0000000-A000CFFF)

Demonstrācijas dizaina palaišana
Tālāk ir aprakstīts, kā palaist noformējumu. Tālāk ir aprakstīts, kā palaist dizainu.

  1. IESLĒDZIET barošanas slēdzi, SW7.
  2. Programmējiet SmarFusion2 ierīci ar programmēšanu file paredzēts dizainā files.(\ProgrammēšanaFile\EDAC_DDR3.stp), izmantojot FlashPro dizaina programmatūru, kā parādīts nākamajā attēlā.
    7. attēls • FlashPro programmēšanas logs
    Microsemi -DG0618-Kļūdu noteikšana un labošana SmartFusion2 ierīcēs, izmantojot DDR atmiņu-7
  3. Nospiediet SW6 slēdzi, lai atiestatītu plati pēc veiksmīgas programmēšanas.
  4. Palaidiet EDAC_DDR demonstrācijas GUI izpildāmo failu file pieejams dizainā files (\GUI izpildāms\ EDAC_DDR.exe). Tiek parādīts GUI logs, kā parādīts 8. attēlā 9. lpp.
  5. Noklikšķiniet uz Savienot, tas atlasīs COM portu un izveido savienojumu. Savienojuma opcija mainās uz Atvienot.
  6. Atlasiet cilni 1 bitu kļūdu labošana vai 2 bitu kļūdu noteikšana.
  7. Var veikt manuālās un cilpas pārbaudes.
  8. Noklikšķiniet uz Inicializēt, lai inicializētu DDR atmiņu, lai veiktu manuālās un cilpas pārbaudes. Serial Console tiek parādīts inicializācijas pabeigšanas ziņojums, kā parādīts 8. attēlā, 9. lpp.

8. attēls • Inicializācijas pabeigšanas logs

Microsemi -DG0618-Kļūdu noteikšana un labošana SmartFusion2 ierīcēs, izmantojot DDR atmiņu-8

Tiek veikta cilpas pārbaude
Noklikšķiniet uz Loop Test ON. Tas darbojas cilpas režīmā, kurā tiek veikta nepārtraukta kļūdu labošana un noteikšana. Visas SmartFusion2 ierīcē veiktās darbības tiek reģistrētas GUI sadaļā Serial Console.

2. tabula • Cilpas testā izmantotās DDR3 atmiņas adreses

  • Atmiņa DDR3
  • 1 bita kļūdu labojums 0xA0008000
  • 2 bitu kļūdu noteikšana 0xA000C000

Manuālās pārbaudes veikšana
Izmantojot šo metodi, kļūdas tiek ievadītas manuāli, izmantojot GUI. Veiciet tālāk norādītās darbības, lai veiktu 1 bitu kļūdu labošanu vai 2 bitu kļūdu noteikšanu.

3. tabula • Manuālajā pārbaudē izmantotās DDR3 atmiņas adreses

Ievades adreses un datu lauki (izmantojiet 32 bitu heksadecimālās vērtības).

  • Atmiņa DDR3
  • 1 bita kļūdu labošana 0xA0000000-0xA0004000
  • 2 bitu kļūdu noteikšana 0xA0004000-0xA0008000
  1. Noklikšķiniet uz Iespējot EDAC.
  2. Noklikšķiniet uz Rakstīt.
  3. Noklikšķiniet uz Atspējot EDAC.
  4. Mainiet vienu bitu (1 bitu kļūdu labošanas gadījumā) vai divus bitus (2 bitu kļūdu noteikšanas gadījumā) datu laukā (ieviešot kļūdu).
  5. Noklikšķiniet uz Rakstīt.
  6. Noklikšķiniet uz Iespējot EDAC.
  7. Noklikšķiniet uz Lasīt.
  8. Ievērojiet kļūdu skaita displeja un datu lauku GUI. Kļūdu skaita vērtība palielinās par 1.

1 bita kļūdu cilpas labošanas logs ir parādīts nākamajā attēlā.

9. attēls • 1 bita kļūdu cilpas noteikšanas logs

Microsemi -DG0618-Kļūdu noteikšana un labošana SmartFusion2 ierīcēs, izmantojot DDR atmiņu-9

2 bitu kļūdu noteikšanas manuālais logs ir parādīts nākamajā attēlā.

10. attēls • 2 bitu kļūdu noteikšanas rokasgrāmatas logs

Microsemi -DG0618-Kļūdu noteikšana un labošana SmartFusion2 ierīcēs, izmantojot DDR atmiņu-10

Secinājums
Šajā demonstrācijā ir parādītas SmartFusion2 SECDED iespējas MDDR apakšsistēmai.

Pielikums: Džempera iestatījumi

Nākamajā tabulā parādīti visi nepieciešamie džemperi, kas jāiestata SmartFusion2 Advanced Development Kit.

4. tabula • SmartFusion2 Advanced Development Kit Jumper iestatījumi

Džemperis : Piesprausts (No) : Piesprausts (Kam): Komentāri

  • J116, J353, J354, J54 1 2 Šie ir papildu džempera noklusējuma iestatījumi
  • J123 2 3 izstrādes komplekta dēlis. Pārliecinieties, vai šie džemperi ir atbilstoši iestatīti.
  • J124, J121, J32 1 2 JTAG programmēšana, izmantojot FTDI

DG0618 demonstrācijas rokasgrāmatas versija 4.0

Dokumenti / Resursi

Microsemi DG0618 kļūdu noteikšana un labošana SmartFusion2 ierīcēs, izmantojot DDR atmiņu [pdfLietotāja rokasgrāmata
DG0618 kļūdu noteikšana un labošana SmartFusion2 ierīcēs, izmantojot DDR atmiņu, DG0618, kļūdu noteikšana un labošana SmartFusion2 ierīcēs, izmantojot DDR atmiņu, SmartFusion2 ierīces, kas izmanto DDR atmiņu, DDR atmiņu

Atsauces

Atstājiet komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti *