Microsemi логотипіSmartFusion2
DDR контроллері және жоғары жылдамдықты сериялық контроллер
Инициализация әдістемесі
Пайдаланушы нұсқаулығы

Кіріспе

SmartFusion2 құрылғысын пайдаланып дизайн жасаған кезде, екі DDR контроллерінің бірін (FDDR немесе MDDR) немесе сериялық жоғары жылдамдықты контроллердің (SERDESIF) кез келген блоктарын пайдалансаңыз, жұмыс уақытында осы блоктардың конфигурация регистрлерін инициализациялау қажет. оларды пайдалануға болады. Мысалыample, DDR контроллері үшін DDR режимін (DDR3/DDR2/LPDDR), PHY енін, жарылыс режимін және ECC орнатуыңыз керек.
Сол сияқты, PCIe соңғы нүктесі ретінде пайдаланылатын SERDESIF блогы үшін PCIE BAR терезесін AXI (немесе AHB) терезесіне орнату керек.
Бұл құжат қуат қосылғанда DDR контроллері мен SERDESIF блоктарын автоматты түрде инициализациялайтын Libero дизайнын жасау үшін қажетті қадамдарды сипаттайды. Ол сонымен қатар ендірілген дизайн ағынында қолданылатын Libero SOC жүйесінен микробағдарлама кодын жасау жолын сипаттайды.
Алдымен амалдар теориясының толық сипаттамасы берілген.
Келесі бөлімде дизайнда DDR немесе SERDESIF блоктарын пайдалансаңыз, басқа мүмкіндіктермен қатар сіз үшін «инициализация» шешімін жасайтын қуатты дизайн құралы болып табылатын Libero SoC System Builder көмегімен осындай дизайнды жасау жолы сипатталады.
Келесі бөлім SmartFusion2 System Builder қолданбасын толық «бастапқылау» шешімін біріктіру жолын сипаттайды. Бұл System Builder қолданбасын пайдаланғыңыз келмесе, не істеу керектігін түсіндіруге көмектеседі, сондай-ақ Жүйе құрастырушы құралының сіз үшін шын мәнінде не жасайтынын сипаттайды. Бұл бөлім мыналарды қамтиды:

  • DDR контроллері және SERDESIF конфигурация регистрлері үшін конфигурация деректерін жасау
  • Конфигурация деректерін әртүрлі ASIC конфигурация регистрлеріне тасымалдау үшін қажет FPGA логикасын жасау

Соңында біз жасалғанды ​​сипаттаймыз fileбайланысты:

  • Микробағдарламаны «инициализациялау» шешімін жасау.
  • DDR «инициализация» шешімі үшін дизайнды модельдеу.

DDR контроллері және SERDESIF конфигурация регистрлері туралы толық ақпаратты мына жерден қараңыз Microsemi SmartFusion2 Жоғары жылдамдықты сериялық және DDR интерфейстері пайдаланушы нұсқаулығы.

Жұмыс теориясы

Перифериялық баптандыру шешімі келесі негізгі құрамдастарды пайдаланады:

  • Cortex-M3 жүйесінде жұмыс істейтін және инициализация процесін ұйымдастыратын CMSIS SystemInit() функциясы.
  • Перифериялық құрылғылардың конфигурация регистрлерін инициализациялайтын CoreConfigP жұмсақ IP өзегі.
  • АЖ, DDR контроллерлерінің және SERDESIF блоктарының қалпына келтіру ретін басқаратын CoreResetP жұмсақ IP өзегі.

Перифериялық инициализация процесі келесідей жұмыс істейді:

  1. Қалпына келтіруден кейін Cortex-M3 CMSIS SystemInit() функциясын іске қосады. Бұл функция қолданбаның main() функциясы орындалмас бұрын автоматты түрде орындалады.
    CoreResetP шығыс сигналы MSS_HPMS_READY инициализация процесінің басында бекітіліп, АЖ және барлық перифериялық құрылғылар (MDDR-дан басқа) байланысқа дайын екенін көрсетеді.
  2. SystemInit() функциясы конфигурация деректерін DDR контроллерлеріне және MSS FIC_2 APB3 шинасы арқылы SERDESIF конфигурация регистрлеріне жазады. Бұл интерфейс FPGA матасында жасалған жұмсақ CoreConfigP өзегіне қосылған.
  3. Барлық регистрлер конфигурацияланғаннан кейін SystemInit() функциясы регистрді конфигурациялау кезеңінің аяқталғанын көрсету үшін CoreConfigP басқару регистрлеріне жазады; содан кейін CONFIG1_DONE және CONIG2_DONE CoreConfigP шығыс сигналдары бекітіледі.
    Жобада пайдаланылған перифериялық құрылғыларға байланысты регистр конфигурациясының екі фазасы бар (CONFIG1 және CONFIG2).
  4. MDDR/FDDR біреуі немесе екеуі де қолданылса және SERDESIF блоктарының ешқайсысы жобада пайдаланылмаса, тек бір регистрді конфигурациялау кезеңі болады. CoreConfigP шығыс сигналдарының екеуі де CONFIG1_DONE және CONIG2_DONE ешқандай күту/кідіріссіз бірінен соң бірі бекітіледі.
    Жобалауда PCIe емес режимдегі бір немесе бірнеше SERDESIF блоктары пайдаланылса, регистрді конфигурациялаудың тек бір фазасы бар. CONFIG1_DONE және CONIG2_DONE ешқандай күтусіз/кідіріссіз бірінен соң бірі бекітіледі.
    Егер дизайнда PCIe режиміндегі бір немесе бірнеше SERDESIF блоктары пайдаланылса, регистрді конфигурациялаудың екі фазасы бар. CONFIG1_DONE регистр конфигурациясының бірінші кезеңі аяқталғаннан кейін бекітіледі. Бұл кезеңде SERDESIF жүйесі мен жолақ регистрлері конфигурацияланады. Егер SERDESIF PCIE емес режимде конфигурацияланса, CONFIG2_DONE сигналы да дереу бекітіледі.
  5. Содан кейін тізілім конфигурациясының екінші кезеңі өтеді (егер SERDESIF PCIE режимінде конфигурацияланса). Төмендегілер екінші кезеңде орын алатын әртүрлі оқиғалар:
    – CoreResetP пайдаланылған SERDESIF блоктарының әрқайсысына сәйкес PHY_RESET_N және CORE_RESET_N сигналдарын растайды. Ол сонымен қатар барлық SERDESIF блоктары ысырудан шыққаннан кейін SDIF_RELEASED шығыс сигналын бекітеді. Бұл SDIF_RELEASED сигналы CoreConfigP жүйесіне SERDESIF ядросының қалпына келтірілмейтінін және регистр конфигурациясының екінші кезеңіне дайын екенін көрсету үшін пайдаланылады.
    – SDIF_RELEASED сигналы бекітілгеннен кейін SystemInit() функциясы сәйкес SERDESIF жолағында PMA_READY бекітуі үшін сұрауды бастайды. PMA_READY бекітілгеннен кейін, SERDESIF регистрлерінің екінші жинағы (PCIE регистрлері) SystemInit() функциясы арқылы конфигурацияланады/жазылады.
  6. Барлық PCIE регистрлері конфигурацияланғаннан кейін SystemInit() функциясы тізілім конфигурациясының екінші кезеңінің аяқталғанын көрсету үшін CoreConfigP басқару регистрлеріне жазады; содан кейін CoreConfigP шығыс сигналы CONIG2_DONE бекітіледі.
  7. Жоғарыда көрсетілген сигнал бекітулерінен/де-бекітулерінен басқа, CoreResetP келесі функцияларды орындау арқылы әртүрлі блоктарды инициализациялауды да басқарады:
    – FDDR негізгі ысыруын растаудан бас тарту
    – SERDESIF бекітуін жою PHY және CORE қалпына келтіруді блоктайды
    – FDDR PLL (FPLL) құлыптау сигналын бақылау. FDDR AXI/AHBLite деректер интерфейсі мен FPGA матасының дұрыс байланысуына кепілдік беру үшін FPLL құлыпталған болуы керек.
    – SERDESIF блогының PLL (SPLL) құлыптау сигналдарын бақылау. SERDESIF AXI/AHBLite интерфейсін (PCIe режимі) блоктайтынына немесе XAUI интерфейсінің FPGA матасымен дұрыс байланысуына кепілдік беру үшін SPLL құлыпталған болуы керек.
    – Сыртқы DDR жадтарының реттелуін және DDR контроллерлерінің қол жеткізуге дайын болуын күту.
  8. Барлық перифериялық құрылғылар инициализациясын аяқтаған кезде, CoreResetP INIT_DONE сигналын бекітеді; CoreConfigP ішкі регистрі INIT_DONE бекітіледі.
    MDDR/FDDR біреуі немесе екеуі де пайдаланылса және DDR баптандыру уақытына жетсе, CoreResetP шығыс сигналы DDR_READY бекітіледі. Бұл DDR_READY сигналының бекітілуін DDR (MDDR/FDDR) байланысқа дайын екендігінің көрсеткіші ретінде бақылауға болады.
    Бір немесе бірнеше SERDESIF блоктары пайдаланылса және регистр конфигурациясының екінші кезеңі сәтті аяқталса, CoreResetP шығыс сигналы SDIF_READY бекітіледі. Бұл SDIF_READY сигналының бекітілуін барлық SERDESIF блоктарының байланысқа дайын екендігінің көрсеткіші ретінде бақылауға болады.
  9. INIT_DONE бекітілуін күткен SystemInit() функциясы аяқталады және қолданбаның main() функциясы орындалады. Сол кезде барлық пайдаланылған DDR контроллерлері мен SERDESIF блоктары инициализацияланған және микробағдарлама қолданбасы және FPGA мата логикасы олармен сенімді байланыса алады.

Осы құжатта сипатталған әдістеме қосымшаның негізгі()функциясына дейін орындалған жүйені инициализациялау кодының бөлігі ретінде инициализациялау процесін орындайтын Cortex-M3 жүйесіне негізделген.
FDDR/MDDR, SEREDES (PCIe емес режим) және SERDES (PCIe режимі) инициализациялау қадамдары үшін 1-1-суреттегі, 1-2-суреттегі және 1-3-суреттегі ағын диаграммаларын қараңыз.
1-4 суретте перифериялық инициализацияның уақыт диаграммасы көрсетілген.

Microsemi SmartFusion2 DDR контроллері және жоғары жылдамдықты сериялық контроллер - уақыт диаграммасы 1 Microsemi SmartFusion2 DDR контроллері және жоғары жылдамдықты сериялық контроллер - уақыт диаграммасы 2

Microsemi SmartFusion2 DDR контроллері және жоғары жылдамдықты сериялық контроллер - уақыт диаграммасы 3Microsemi SmartFusion2 DDR контроллері және жоғары жылдамдықты сериялық контроллер - уақыт диаграммасы 4Сурет 1-3 • SERDESIF (PCIe) инициализация ағынының диаграммасы
Осы құжатта сипатталған инициализация процедурасы Cortex-M3 жүйесінде қандай да бір кодты іске қосуды жоспарламасаңыз да, баптандыру процесі кезінде Cortex-M3 іске қосуды талап етеді. Сіз ештеңе жасамайтын негізгі микробағдарлама қолданбасын жасауыңыз керек (қарапайым цикл, мысалыample) және DDR контроллерлері мен SERDESIF блоктары Cortex-M3 жүктелген кезде инициализацияланатын етіп енгізілген Тұрақты емес жадқа (eNVM) орындалатын файлды жүктеңіз.

DDR және SERDESIF блоктарын пайдаланып дизайн жасау үшін жүйе құрастырушысын пайдалану

SmartFusion2 System Builder - жүйе деңгейіндегі талаптарды қабылдауға көмектесетін және сол талаптарды орындайтын дизайнды жасайтын қуатты дизайн құралы. Жүйе құрастырушысының өте маңызды функциясы - перифериялық инициализация ішкі жүйесін автоматты түрде жасау. “DDR және SERDESIF блоктарын пайдаланып дизайн жасау үшін SmartDesign пайдалану” 17-бетте Жүйе құрастырушысыз мұндай шешімді жасау жолын егжей-тегжейлі сипаттайды.
Жүйе құрастырушысын пайдаланып жатсаңыз, қуат қосылған кезде DDR контроллерлері мен SERDESIF блоктарын инициализациялайтын дизайнды жасау үшін келесі тапсырмаларды орындау керек:

  1. Құрылғы мүмкіндіктері бетінде (2-1-сурет) қандай DDR контроллері пайдаланылатынын және дизайнда қанша SERDESIF блогы пайдаланылатынын көрсетіңіз.
  2. Жад бетінде DDR түрін (DDR2/DDR3/LPDDR) және сыртқы DDR жадтары үшін конфигурация деректерін көрсетіңіз. Мәліметтер алу үшін Жад беті бөлімін қараңыз.
  3. Перифериялық құрылғылар бетінде Fabric DDR ішкі жүйесіне және/немесе MSS DDR FIC ішкі жүйесіне AHBLite/AXI ретінде конфигурацияланған мата шеберлерін қосыңыз (қосымша).
  4. Сағат параметрлері бетінде DDR ішкі жүйелері үшін сағат жиіліктерін көрсетіңіз.
  5. Дизайн спецификациясын аяқтап, Аяқтау түймесін басыңыз. Бұл «инициализация» шешіміне қажетті логиканы қоса алғанда, Жүйе құрастырушысының жасалған дизайнын жасайды.
  6. SERDESIF блоктарын пайдаланып жатсаңыз, дизайныңызда SERDESIF блоктарын жасауыңыз және олардың инициализация порттарын Жүйе құрастырушысында жасалған ядроның порттарына қосуыңыз керек.

Жүйе құрастырушы құрылғысының мүмкіндіктері беті
Құрылғы мүмкіндіктері бетінде қандай DDR контроллері (MDDR және/немесе FDDR) пайдаланылатынын және дизайныңызда қанша SERDESIF блогы пайдаланылатынын көрсетіңіз (2-1-сурет).

Microsemi SmartFusion2 DDR контроллері және жоғары жылдамдықты сериялық контроллер - Құрылғы мүмкіндіктері бетіСурет 2-1 • Жүйе құрастырушы құрылғысының мүмкіндіктері беті

Жүйе құрастырушысының жады беті
MSS DDR (MDDR) немесе Fabric DDR (FDDR) пайдалану үшін ашылмалы тізімнен Жад түрін таңдаңыз (2-2-сурет).

Microsemi SmartFusion2 DDR контроллері және сериялық жоғары жылдамдықты контроллері - сыртқы жадыСурет 2-2 • АЖ сыртқы жады

Сен міндеттісің:

  1. DDR түрін таңдаңыз (DDR2, DDR3 немесе LPDDR).
  2. DDR жадын реттеу уақытын анықтаңыз. Жад орнату уақытын дұрыс орнату үшін сыртқы DDR жадының техникалық сипаттамаларын қараңыз. Жадты реттеу уақыты дұрыс орнатылмаған болса, DDR жады дұрыс іске қосылмауы мүмкін.
  3. DDR регистрінің конфигурация деректерін импорттаңыз немесе DDR жады параметрлерін орнатыңыз. Толық ақпаратты мына жерден қараңыз Microsemi SmartFusion2 Жоғары жылдамдықты сериялық және DDR интерфейстері пайдаланушы нұсқаулығы.

Бұл деректер DDR регистрі BFM және микробағдарлама конфигурациясын жасау үшін пайдаланылады files «Микробағдарлама қолданбасын жасау және құрастыру» 26-бетте және «BFM» бөлімдерінде сипатталғандай Files Дизайнды имитациялау үшін пайдаланылады” бетте 27. DDR контроллерінің конфигурация регистрлері туралы толық ақпаратты мына жерден қараңыз. Microsemi SmartFusion2 Жоғары жылдамдықты сериялық және DDR интерфейстері пайдаланушы нұсқаулығы.
Бұрынғыampконфигурацияның le file синтаксис 2-3 суретте көрсетілген. Мұнда қолданылатын регистр атаулары file бөлімінде сипатталғандармен бірдей Microsemi SmartFusion2 Жоғары жылдамдықты сериялық және DDR интерфейстері пайдаланушы нұсқаулығы

Microsemi SmartFusion2 DDR контроллері және сериялық жоғары жылдамдықты контроллері - File Синтаксис МысampleСурет 2-3 • Конфигурация File Синтаксис Мысample
Жүйе құрастырушысының перифериялық құрылғылар беті
Перифериялық құрылғылар бетінде әрбір DDR контроллері үшін жеке ішкі жүйе жасалады (FDDR үшін Fabric DDR ішкі жүйесі және MDDR үшін MSS DDR FIC ішкі жүйесі). DDR контроллеріне матаның негізгі қатынасын қосу үшін осы ішкі жүйелердің әрқайсысына Fabric AMBA Master (AXI/AHBLite ретінде конфигурацияланған) өзегін қосуға болады. Жасалғаннан кейін Жүйе құрастырушы автоматты түрде шиналар өзектерін (қосылған AMBA Master түріне байланысты) жасайды және шиналық ядроның негізгі BIF-ін және сәйкес ішкі жүйелердің (FDDR/MDDR) сағатын көрсетеді және тиісті түйреуіш топтары бойынша бастапқы қалпына келтіреді. жоғарғы. Сізге тек BIF файлдарын дизайнда жасайтын сәйкес Fabric Master өзектеріне қосу жеткілікті. MDDR жағдайында, MSS DDR FIC ішкі жүйесіне Fabric AMBA Master өзегін қосу міндетті емес; Cortex-M3 - бұл ішкі жүйедегі әдепкі негізгі. 2-4-суретте Жүйе құрастырушысының перифериялық құрылғылар беті көрсетілген.

Microsemi SmartFusion2 DDR контроллері және жоғары жылдамдықты сериялық контроллер - Builder перифериялық құрылғылар бетіСурет 2-4 • Жүйе құрастырушысының перифериялық құрылғылар беті

Жүйе құрастырушысының сағат параметрлері беті
Сағат параметрлері бетінде әрбір DDR контроллері үшін әрбір DDR (MDDR және/немесе FDDR) ішкі жүйесіне қатысты сағат жиіліктерін көрсету керек.
MDDR үшін мыналарды көрсету керек:

  • MDDR_CLK – Бұл сағат DDR контроллерінің жұмыс жиілігін анықтайды және сыртқы DDR жады жұмыс істегіңіз келетін жиілікке сәйкес келуі керек. Бұл сағат M3_CLK еселігі ретінде анықталады (Cortex-M3 және MSS негізгі сағаты, 2-5-сурет). MDDR_CLK 333 МГц-тен аз болуы керек.
  • DDR_FIC_CLK – FPGA матасынан MDDR-ге қол жеткізуді таңдасаңыз, DDR_FIC_CLK көрсетуіңіз керек. Бұл тактілік жиілік MDDR_CLK қатынасы ретінде анықталады және MDDR-ге қатынасатын FPGA матасының ішкі жүйесі жұмыс істейтін жиілікке сәйкес келуі керек.

Microsemi SmartFusion2 DDR контроллері және сериялық жоғары жылдамдықты контроллері - MDDR сағаттары2-5 сурет • Cortex-M3 және MSS негізгі сағаты; MDDR сағаттары

FDDR үшін мыналарды көрсету керек:

  • FDDR_CLK – DDR контроллерінің жұмыс жиілігін анықтайды және сыртқы DDR жады іске қосқыңыз келетін тактілік жиілікке сәйкес келуі керек. Бұл сағат M3_CLK еселігі ретінде анықталғанын ескеріңіз (MSS және Cortex-M3 сағаты, 2-5-сурет). FDDR_CLK 20 МГц және 333 МГц аралығында болуы керек.
  • FDDR_SUBSYSTEM_CLK – Бұл тактілік жиілік FDDR_CLK қатынасы ретінде анықталады және FDDR құралына қатынасатын FPGA мата ішкі жүйесі жұмыс істейтін жиілікке сәйкес келуі керек.

Microsemi SmartFusion2 DDR контроллері және сериялық жоғары жылдамдықты контроллері - матадан жасалған DDR сағаттарыСурет 2-6 • Маталық DDR сағаттары
SERDESIF конфигурациясы
SERDESIF блоктары Жүйе құрастырушысында жасалған дизайнда данасы жоқ. Дегенмен, барлық SERDESIF блоктары үшін инициализация сигналдары Жүйе құрастырушы ядросының интерфейсінде қол жетімді және 2-7 суретте көрсетілгендей иерархияның келесі деңгейінде SERDESIF өзектеріне қосылуы мүмкін.Microsemi SmartFusion2 DDR контроллері және сериялық жоғары жылдамдықты контроллері - перифериялық инициализация қосылымыСурет 2-7 • SERDESIF перифериялық инициализация қосылымы
DDR конфигурация регистрлеріне ұқсас, әрбір SERDES блогында орындау уақытында жүктелуі тиіс конфигурация регистрлері де бар. Сіз бұл регистр мәндерін импорттай аласыз немесе PCIe немесе EPCS параметрлерін енгізу үшін жоғары жылдамдықты сериялық интерфейс конфигураторын (2-8-сурет) пайдалана аласыз және регистр мәндері сіз үшін автоматты түрде есептеледі. Толық ақпаратты мына жерден қараңыз SERDES конфигураторының пайдаланушы нұсқаулығы.Microsemi SmartFusion2 DDR контроллері және сериялық жоғары жылдамдықты контроллері - сериялық интерфейс конфигураторы2-8 сурет • Жоғары жылдамдықты сериялық интерфейс конфигураторы
Пайдаланушы логикасын Жүйе құрастырушы блогымен және SERDES блогымен біріктіргеннен кейін, жоғары деңгейлі SmartDesign жасай аласыз. Бұл барлық HDL және BFM жасайды fileдизайнды іске асыру және имитациялау үшін қажет. Содан кейін дизайн ағынының қалған бөлігін жалғастыра аласыз.

DDR және SERDESIF блоктарын пайдаланып дизайн жасау үшін SmartDesign пайдалану

Бұл бөлім SmartFusion2 System Builder қолданбасын толық «бастапқылау» шешімін біріктіру жолын сипаттайды. Мақсат - Жүйе құрастырушысын пайдаланғыңыз келмесе, не істеу керектігін түсінуге көмектесу. Бұл бөлім сонымен қатар Жүйе құрастырушы құралының сіз үшін не жасайтынын сипаттайды. Бұл бөлімде мына жолдар сипатталады:

  • DDR контроллері және SERDESIF конфигурация регистрлері үшін конфигурация деректерін енгізіңіз.
  • Конфигурация деректерін DDR контроллерлеріне және SERDESIF конфигурация регистрлеріне тасымалдау үшін қажет Fabric Cores данасын жасаңыз және қосыңыз.

DDR контроллерінің конфигурациясы
MSS DDR (MDDR) және Fabric DDR (FDDR) контроллері сыртқы DDR жады конфигурациясының талаптарына (DDR режимі, PHY ені, жарылыс режимі, ECC және т.б.) сәйкес болу үшін динамикалық (орындалу уақытында) конфигурациялануы керек. MDDR/FDDR конфигураторына енгізілген деректер CMSIS SystemInit() функциясы арқылы DDR контроллерінің конфигурация регистрлеріне жазылады. Конфигураторда конфигурация деректерінің әртүрлі түрлерін енгізуге арналған үш түрлі қойындысы бар:

  • Жалпы деректер (DDR режимі, деректер ені, сағат жиілігі, ECC, мата интерфейсі, дискінің күші)
  • Жадты инициализациялау деректері (беру ұзақтығы, кезектілік, уақыт режимі, кідіріс, т.б.)
  • Жад уақыты деректері

Сыртқы DDR жадының техникалық сипаттамаларын қараңыз және DDR контроллерін сыртқы DDR жадының талаптарына сәйкестендіру үшін конфигурациялаңыз.
DDR конфигурациясы туралы толық ақпаратты мына жерден қараңыз SmartFusion2 MSS DDR конфигурациясының пайдаланушы нұсқаулығы.
SERDESIF конфигурациясы
SERDES конфигурациялау үшін конфигураторды ашу үшін SmartDesign кенепіндегі SERDES блогын екі рет басыңыз (3-1-сурет). Сіз осы регистр мәндерін импорттай аласыз немесе PCIe немесе EPCS параметрлерін енгізу үшін SERDES конфигураторын пайдалана аласыз және тізілім мәндері сіз үшін автоматты түрде есептеледі. Толық ақпаратты мына жерден қараңыз SERDES конфигураторының пайдаланушы нұсқаулығы.Microsemi SmartFusion2 DDR контроллері және жоғары жылдамдықты сериялық контроллер - жоғары жылдамдықты сериялық интерфейс конфигураторы3-1 сурет • Жоғары жылдамдықты сериялық интерфейс конфигураторы
FPGA дизайнын инициализациялау ішкі жүйесін құру
DDR және SERDESIF блоктарын инициализациялау үшін FPGA құрылымында баптандыру ішкі жүйесін жасау керек. FPGA құрылымды инициализациялау ішкі жүйесі деректерді Cortex-M3 құрылғысынан DDR және SERDESIF конфигурация регистрлеріне жылжытады, осы блоктардың жұмыс істеуі үшін қажетті қалпына келтіру ретін басқарады және осы блоктар дизайнның қалған бөлігімен байланысуға дайын болғанда сигнал береді. Инициализация ішкі жүйесін жасау үшін сізге қажет:

  • FIC_2 параметрін АЖ ішінде конфигурациялаңыз
  • CoreConfigP және CoreResetP өзектерін іске қосыңыз және конфигурациялаңыз
  • Чиптегі 25/50 МГц RC осцилляторын іске қосыңыз
  • Жүйені қалпына келтіру (SYSRESET) макросын іске қосыңыз
  • Осы құрамдастарды әрбір перифериялық құрылғының конфигурация интерфейстеріне, сағаттарға, қалпына келтіруге және PLL құлыптау порттарына қосыңыз

АЖ FIC_2 APB конфигурациясы
FIC_2 АЖ конфигурациялау үшін:

  1. АЖ конфигураторынан FIC_2 конфигураторының диалогтық терезесін ашыңыз (3-2-сурет).
  2. Cortex-M3 арқылы перифериялық құрылғыларды инициализациялау опциясын таңдаңыз.
  3. Жүйеге байланысты келесі құсбелгілердің біреуін немесе екеуін де белгілеңіз:
    – АЖ DDR
    – Мата DDR және/немесе SERDES блоктары
  4. OK түймесін басып, АЖ жасауды жалғастырыңыз (АЖ-ны дизайн талаптарына толық конфигурациялағанша бұл әрекетті кейінге қалдыра аласыз). FIC_2 порттары (FIC_2_APB_MASTER, FIC_2_APB_M_PCLK және FIC_2_APB_M_RESET_N) енді АЖ интерфейсінде көрсетіледі және оларды CoreConfigP және CoreResetP өзектеріне қосуға болады.

Microsemi SmartFusion2 DDR контроллері және сериялық жоғары жылдамдықты контроллері - MSS FIC 2 конфигураторыСурет 3-2 • MSS FIC_2 конфигураторы

CoreConfigP
CoreConfigP конфигурациялау үшін:

  1. CoreConfigP нұсқасын SmartDesign жүйесіне енгізіңіз (әдетте АЖ жасалған жерде).
    Бұл ядроны Libero каталогында (перифериялық құрылғылар астында) табуға болады.
  2. Конфигураторды ашу үшін өзегін екі рет басыңыз.
  3. Қандай перифериялық құрылғыларды инициализациялау қажет екенін көрсету үшін ядроны конфигурациялаңыз (3-3-сурет)

Microsemi SmartFusion2 DDR контроллері және жоғары жылдамдықты сериялық контроллер - диалогтық терезеСурет 3-3 • CoreConfigP тілқатысу терезесі

CoreResetP
CoreResetP конфигурациялау үшін:

  1. CoreResetP нұсқасын SmartDesign жүйесіне енгізіңіз (әдетте АЖ жасалған жерде).
    Бұл ядроны Libero каталогында, Перифериялық құрылғылар астында табуға болады.
  2. Конфигураторды ашу үшін SmartDesign кенеп ішіндегі өзегін екі рет басыңыз (3-4-сурет).
  3. Ядроны келесіге теңшеңіз:
    – Сыртқы қалпына келтіру әрекетін көрсетіңіз (EXT_RESET_OUT бекітілген). Төрт опцияның бірін таңдаңыз:
    o EXT_RESET_OUT ешқашан бекітілмейді
    o Қуатты қайта орнату (POWER_ON_RESET_N) расталса, EXT_RESET_OUT бекітіледі
    o FAB_RESET_N бекітілген болса, EXT_RESET_OUT бекітіледі
    o EXT_RESET_OUT қуат көзі қалпына келтірілсе (POWER_ON_RESET_N) немесе FAB_RESET_N бекітілсе
    – Құрылғы томын көрсетіңізtage. Таңдалған мән көлемге сәйкес келуі керекtage Libero Project Settings тілқатысу терезесінде таңдадыңыз.
    – Дизайныңызда қандай перифериялық құрылғыларды пайдаланып жатқаныңызды көрсету үшін сәйкес құсбелгілерді қойыңыз.
    – Сыртқы DDR жадының орнату уақытын көрсетіңіз. Бұл қолданбаңызда (MDDR және FDDR) пайдаланылатын барлық DDR жадтары үшін ең үлкен мән. Бұл параметрді конфигурациялау үшін сыртқы DDR жад жеткізушісінің деректер кестесін қараңыз. 200us - 2 МГц жиілікте жұмыс істейтін DDR3 және DDR200 жадтары үшін жақсы әдепкі мән. Бұл кремнийде жұмыс істейтін модельдеу мен жұмыс жүйесіне кепілдік беретін өте маңызды параметр. Орнату уақыты үшін қате мән модельдеу қателеріне әкелуі мүмкін. Бұл параметрді конфигурациялау үшін DDR жад жеткізушісінің деректер кестесін қараңыз.
    – Дизайндағы әрбір SERDES блогы үшін мыналарды көрсету үшін сәйкес ұяшықтарды белгілеңіз:
    o PCIe пайдаланылады
    o PCIe Hot Reset қолдауы қажет
    o PCIe L2/P2 қолдауы қажет

Ескерту: 090 die(M2S090) қолданып жатсаңыз және дизайныңызда SERDESIF пайдаланылса, келесі құсбелгілердің ешқайсысын белгілеудің қажеті жоқ: "PCIe үшін пайдаланылады", "PCIe HotReset қолдауын қосу" және "PCIe L2/P2 қолдауын қосу". Кез келген 090 емес құрылғыны пайдалансаңыз және бір немесе бірнеше SERDESIF блоктарын пайдалансаңыз, сәйкес SERDESIF бөліміндегі барлық төрт құсбелгіні қою керек.
Ескерту: Осы конфигураторда қол жетімді опциялар туралы толық ақпаратты CoreResetP анықтамалығынан қараңыз.

Microsemi SmartFusion2 DDR контроллері және сериялық жоғары жылдамдықты контроллері - CoreResetPConfiguratorСурет 3-4 • CoreResetPCConfigurator

25/50МГц осцилляторды іске қосу
CoreConfigP және CoreResetP чиптегі 25/50 МГц RC осцилляторы арқылы жиіленеді. Сіз 25/50 МГц осцилляторды жасап, оны осы ядроларға қосуыңыз керек.

  1. Чип осцилляторларының өзегін SmartDesign жүйесіне енгізіңіз (әдетте АЖ құрастырылған). Бұл ядроны Libero каталогында Clock & Management бөлімінде табуға болады.
  2. Бұл ядроны RC осцилляторы 3-5-суретте көрсетілгендей FPGA матасын басқаратындай етіп конфигурациялаңыз.

Microsemi SmartFusion2 DDR контроллері және жоғары жылдамдықты сериялық контроллер - осцилляторлар конфигураторыСурет 3-5 • Чиптік осцилляторлар конфигураторы

Жүйені қалпына келтіру (SYSRESET) данасы
SYSRESET макросы дизайныңызға құрылғы деңгейін қалпына келтіру мүмкіндігін береді. POWER_ON_RESET_N шығыс сигналы чип қосылғанда немесе DEVRST_N сыртқы істікшесі бекітілген/бекітілмеген кезде бекітіледі/десерттеледі (сурет 3-6).
SYSRESET макросын SmartDesign қолданбасына енгізіңіз (әдетте АЖ құрастырылған). Бұл макросты Libero каталогында Макро кітапханасының астынан табуға болады. Бұл макростың конфигурациясы қажет емес.

Microsemi SmartFusion2 DDR контроллері және сериялық жоғары жылдамдықты контроллері - SYSRESET макроСурет 3-6 • SYSRESET макрос

Жалпы байланыс
Дизайныңызда MSS, FDDR, SERDESIF, OSC, SYSRESET, CoreConfigP және CoreResetP өзектерін жасап, конфигурациялаған соң, оларды перифериялық инициализацияның ішкі жүйесін құру үшін қосу керек. Осы құжаттағы қосылым сипаттамасын жеңілдету үшін ол CoreConfigP және CoreResetP қатысты қосылымдармен байланысты APB3 үйлесімді конфигурация деректер жолы қосылымына бөлінген.
Конфигурация деректер жолы қосылымы
3-7 суретте CoreConfigP параметрін MSS FIC_2 сигналдарына және перифериялық құрылғылардың APB3 үйлесімді конфигурация интерфейстеріне қосу жолы көрсетілген.
Кесте 3-1 • Конфигурация деректер жолы порты/BIF қосылымдары

FROM
Порт/шиналық интерфейс
(BIF)/ Құрамдас
TO
Порт/шиналық интерфейс (BIF)/компонент
APB S АЛДЫН АЛА ОРНАТУ ЖОҚ/ CoreConfigP APB S АЛДЫН АЛА ОРНАТУ N/ SDIF<0/1/2/3> APB S АЛДЫНДАҒЫ ОРНАТУ ЖОҚ
FDDR
MDDR APB S PRESSE TN/MSS
APB S PCLK/CoreConfigP APB S PCLK/SDIF APB S PCLK/FDDR MDDR APB S POLK/ MSS
MDDR APBmsslave/CoreConfig MDDR APB SLAVE (BIF)/MSS
SDIF<0/1/2/ 3> APBmslave/Config APB SLAVE (BIF)/ SDIF<0/1/2/3>
FDDR APBmslave APB SLAVE (BIF)/ FDDR
FIC 2 APBmmaster/CoreConfigP FIC 2 APB MASTER/ MSS

Microsemi SmartFusion2 DDR контроллері және сериялық жоғары жылдамдықты контроллері - ішкі жүйе қосылымыСурет 3-7 • FIC_2 APB3 ішкі жүйе қосылымы

Сағаттар және қосылымды қалпына келтіреді
3-8 суретте CoreResetP құрылғысын сыртқы қалпына келтіру көздеріне және перифериялық құрылғылардың негізгі қалпына келтіру сигналдарына қосу жолы көрсетілген. Ол сондай-ақ CoreResetP құрылғысын перифериялық құрылғылардың сағатты синхрондау күй сигналдарына (PLL құлыптау сигналдары) қосу жолын көрсетеді. Бұған қоса, ол CoreConfigP және CoreResetP қалай қосылғанын көрсетеді.

Microsemi SmartFusion2 DDR контроллері және сериялық жоғары жылдамдықты контроллері - ішкі жүйе қосылымы 2Сурет 3-8 • Негізгі SF2Reset ішкі жүйе қосылымы

Микробағдарлама қолданбасын жасау және құрастыру

Микробағдарламаны LiberoSoC жүйесінен экспорттаған кезде (Дизайн ағыны терезесі > Микробағдарламаны экспорттау > Микробағдарламаны экспорттау), Libero келесіні жасайды fileлар /firmware/drivers_config/ sys_config қалтасы:

  • sys_config.c – Перифериялық регистрлердің мәндерін сақтайтын деректер құрылымдарын қамтиды.
  • sys_config.h – Құрамында дизайнда қандай перифериялық құрылғылар қолданылатынын және инициализациялау қажет екенін көрсететін #define операторлары бар.
  • sys_config_mddr_define.h – Регистрлерді конфигурациялау тілқатысу терезесіне енгізілген MDDR контроллерінің конфигурация деректерін қамтиды.
  • sys_config_fddr_define.h – Регистрлерді конфигурациялау тілқатысу терезесіне енгізілген FDDR контроллерінің конфигурация деректерін қамтиды.
  • sys_config_mss_clocks.h – Бұл file MSS CCC конфигураторында анықталғандай АЖ жиіліктерін қамтиды. Бұл жиіліктерді CMSIS коды өздерінің Перифериялық Clock (PCLK) жиілігіне рұқсаты болуы керек көптеген АЖ драйверлеріне дұрыс сағат ақпаратын беру үшін пайдаланылады (мысалы, MSS UART беру жылдамдығының бөлгіштері жіберу жылдамдығы мен PCLK жиілігінің функциясы болып табылады. ).
  • sys_config_SERDESIF_ .c – Құрамында SERDESIF_ SERDESIF_ кезінде берілген конфигурация деректерін тіркеу дизайнды құрудағы блок конфигурациясы.
  • sys_config_SERDESIF_ .h – Регистр конфигурация жұптарының санын және PMA_READY (тек PCIe режимінде) үшін сұрау керек жолақ нөмірін көрсететін #define мәлімдемелерін қамтиды.

Бұл files CMSIS кодын дұрыс құрастыру және ағымдағы дизайнға қатысты ақпаратты, соның ішінде перифериялық конфигурация деректерін және АЖ үшін сағат конфигурациясы туралы ақпаратты қамтуы үшін қажет.
Бұларды өңдемеңіз fileқолмен; олар тиісті перифериялық құрылғыларды қамтитын SmartDesign құрамдастары жасалған сайын сәйкес құрамдас/перифериялық каталогтарға жасалады. Кез келген перифериялық құрылғылардың конфигурация деректеріне қандай да бір өзгерістер енгізілсе, микробағдарлама жобаларын қайта экспорттау керек, осылайша жаңартылған микробағдарлама files (жоғарыдағы тізімді қараңыз) келесіге экспортталады / микробағдарлама/drivers_config/sys_config қалтасы.
Микробағдарламаны экспорттаған кезде, Libero SoC микробағдарлама жобаларын жасайды: сіздің дизайн конфигурацияңыз болатын кітапхана files және драйверлер құрастырылған.
Жасау жобасын тексерсеңіз микробағдарламаны экспорттаған кезде, негізгі.c және C/H пайдаланушысын өңдеуге болатын қолданба жобасын ұстау үшін бағдарламалық құрал SoftConsole/IAR/Keil жобасы жасалады. fileс. CMSIS кодын дұрыс құрастыру үшін SoftConSole/IAR/Keil жобасын ашыңыз және микробағдарлама қолданбасын аппараттық құрал дизайнына сәйкес келтіру үшін дұрыс конфигурациялаңыз.

BFM Files Дизайнды модельдеу үшін пайдаланылады

Дизайныңызбен байланысты перифериялық құрылғыларды қамтитын SmartDesign құрамдастарын жасаған кезде, модельдеу fileішінде сәйкес перифериялық құрылғыларға сәйкес s жасалады /симуляциялық каталог:

  • test.bfm – Жоғары деңгейдегі BFM file ол алдымен SmartFusion2 MSS Cortex-M3 процессорын қолданатын кез келген модельдеу кезінде орындалады. Ол peripheral_init.bfm және user.bfm файлдарын осы ретпен орындайды.
  • MDDR_init.bfm – Егер дизайныңызда MDDR пайдаланылса, Libero оны жасайды file; онда сіз енгізген (Тіркеулерді өңдеу диалогтық терезесін немесе MSS_MDDR GUI-де) MSS DDR конфигурациясының тіркелім деректерін MSS DDR контроллері регистрлеріне жазуды имитациялайтын BFM жазу пәрмендері бар.
  • FDDR_init.bfm – Егер дизайныңыз FDDR қолданса, Libero оны жасайды file; онда Fabric DDR контроллері регистрлеріне сіз енгізген (Тіркеулерді өңдеу диалогтық терезесін немесе FDDR GUI арқылы) Fabric DDR конфигурациясының тіркелім деректерін жазуды имитациялайтын BFM жазу пәрмендері бар.
  • SERDESIF_ _init.bfm – Егер дизайныңыз бір немесе бірнеше SERDESIF блоктарын пайдаланса, Libero оны жасайды file SERDESIF_ әрқайсысы үшін қолданылатын блоктар; онда сіз енгізген SERDESIF конфигурация тізілімінің деректерін жазуды имитациялайтын BFM жазу пәрмендері бар (Тіркеулерді өңдеу диалогтық терезесін немесе SERDESIF_ ішінде GUI) SERDESIF_ ішіне тіркеледі. SERDESIF блогы PCIe ретінде конфигурацияланса, бұл file сонымен қатар регистр конфигурациясының 2 фазасының тамаша ретпен орындалуын басқаратын кейбір #define мәлімдемелері бар.
  • user.bfm – Пайдаланушы пәрмендерін қамтиды. Бұл пәрмендер peripheral_init.bfm аяқталғаннан кейін орындалады. Бұны өңдеңіз file BFM пәрмендерін енгізу үшін.
  • SERDESIF_ _user.bfm – Пайдаланушы пәрмендерін қамтиды. Бұны өңдеңіз file BFM пәрмендерін енгізу үшін. SERDESIF_ конфигурациялаған болсаңыз, мұны пайдаланыңыз BFM PCIe модельдеу режимінде және AXI/AHBLite шебері ретінде блоктау. SERDESIF_ конфигурациялаған болсаңыз RTL модельдеу режимінде блоктасаңыз, бұл сізге қажет емес file.

Модельдеуді әр уақытта шақырған кезде, келесі екі модельдеу files қайта жасалады /жаңартылған мазмұны бар симуляциялық каталог:

  • subsystem.bfm – Құрамында әрбір перифериялық құрылғыға сәйкес орындалатын peripheral_init.bfm нақты бөлімін көрсететін дизайнда пайдаланылған әрбір перифериялық құрылғы үшін #define операторлары бар.
  • operipheral_init.bfm – Құрамында CMSIS:: SystemInit() функциясын эмуляциялайтын BFM процедурасы негізгі() процедурасына кірер алдында Cortex-M3 жүйесінде орындалады. Ол дизайнда пайдаланылған кез келген перифериялық құрылғының конфигурация деректерін дұрыс перифериялық конфигурация регистрлеріне көшіреді, содан кейін осы перифериялық құрылғыларды пайдалана алатыныңызды растамас бұрын барлық перифериялық құрылғылардың дайын болуын күтеді. Ол MDDR_init.bfm және FDDR_init.bfm орындайды.

Жасалғандарды пайдалану files, дизайндағы DDR контроллерлері SmartFusion2 құрылғысында не болатынын имитациялай отырып, автоматты түрде конфигурацияланады. user.bfm файлын өңдеуге болады file дизайнды имитациялау үшін қажетті кез келген пәрмендерді қосу үшін (Cortex-M3 - басты). Бұл командалар перифериялық құрылғылар инициализацияланғаннан кейін орындалады. test.bfm, subsystem.bfm, peripheral_init.bfm, MDDR_init.bfm, FDDR_init.bfm файлдарын өңдемеңіз. files және SERDESIF_ _init.bfm files.

Өнімді қолдау

Microsemi SoC Products Group өз өнімдерін тұтынушыларға қызмет көрсету, тұтынушыларды техникалық қолдау орталығы, т.б. webсайт, электрондық пошта және дүниежүзілік сату кеңселері.
Бұл қосымша Microsemi SoC өнімдер тобына хабарласу және осы қолдау қызметтерін пайдалану туралы ақпаратты қамтиды.
Клиенттерге қызмет көрсету
Өнім бағасы, өнімді жаңарту, жаңарту ақпараты, тапсырыс күйі және авторизация сияқты техникалық емес өнімге қолдау көрсету үшін тұтынушыларға қызмет көрсету орталығына хабарласыңыз.
Солтүстік Америкадан қоңырау шалыңыз 800.262.1060
Әлемнің басқа елдерінен қоңырау шалыңыз 650.318.4460
Әлемнің кез келген жерінен факс, 408.643.6913
Тұтынушыларды техникалық қолдау орталығы
Microsemi SoC Products Group компаниясы тұтынушыларға техникалық қолдау көрсету орталығын аппараттық, бағдарламалық қамтамасыз ету және Microsemi SoC өнімдері туралы дизайн сұрақтарына жауап беруге көмектесетін жоғары білікті инженерлермен қамтамасыз етеді. Тұтынушыларға техникалық қолдау көрсету орталығы қолданба жазбаларын, дизайн циклінің жалпы сұрақтарына жауаптарды, белгілі мәселелердің құжаттамасын және әртүрлі жиі қойылатын сұрақтарды жасауға көп уақыт жұмсайды. Сондықтан бізбен хабарласпас бұрын біздің онлайн ресурстарымызға кіріңіз. Біз сіздің сұрақтарыңызға жауап берген болармыз.
Техникалық көмек
Тұтынушыларды қолдау қызметіне кіріңіз webсайт (www.microsemi.com/soc/support/search/default.aspx) қосымша ақпарат пен қолдау алу үшін. Көптеген жауаптар іздеуге болады web ресурста диаграммалар, иллюстрациялар және басқа ресурстарға сілтемелер кіреді webсайт.
Webсайт
SoC басты бетінде әртүрлі техникалық және техникалық емес ақпаратты шолуға болады www.microsemi.com/soc.
Тұтынушыларды техникалық қолдау орталығына хабарласу
Техникалық қолдау орталығында жоғары білікті инженерлер жұмыс істейді. Техникалық қолдау орталығына электрондық пошта немесе Microsemi SoC өнімдер тобы арқылы хабарласуға болады webсайт.
Электрондық пошта
Сіз өзіңіздің техникалық сұрақтарыңызды біздің электрондық пошта мекенжайымызға жібере аласыз және жауаптарды электрондық пошта, факс немесе телефон арқылы ала аласыз. Сондай-ақ, дизайн мәселелеріңіз болса, дизайныңызды электрондық пошта арқылы жібере аласыз fileкөмек алу үшін.
Біз күні бойы электрондық пошта тіркелгісін үнемі бақылап отырамыз. Сұранысыңызды бізге жіберген кезде сұрауыңызды тиімді өңдеу үшін толық аты-жөніңізді, компанияңыздың аты-жөніңізді және байланыс ақпаратыңызды қосуды ұмытпаңыз.
Техникалық қолдау көрсету электрондық пошта мекенжайы soc_tech@microsemi.com.
Менің істерім
Microsemi SoC Products Group тұтынушылары мына мекенжайға өту арқылы техникалық істерді онлайн жіберіп, бақылай алады Менің істерім.
АҚШ-тан тыс
АҚШ-тың уақыт белдеулерінен тыс көмекке мұқтаж тұтынушылар электрондық пошта арқылы техникалық қолдау қызметіне хабарласа алады (soc_tech@microsemi.com) немесе жергілікті сату кеңсесіне хабарласыңыз. Сату кеңселерінің тізімін мына жерден табуға болады www.microsemi.com/soc/company/contact/default.aspx.
ITAR техникалық қолдауы
Халықаралық қару айналымы ережелерімен (ITAR) реттелетін RH және RT FPGA құрылғыларында техникалық қолдау алу үшін бізге мына арқылы хабарласыңыз. soc_tech_itar@microsemi.com. Немесе, Менің істерім ішінде ITAR ашылмалы тізімінде Иә опциясын таңдаңыз. ITAR реттейтін Microsemi FPGA толық тізімін алу үшін ITAR сайтына кіріңіз web бет.
Microsemi корпорациясы (NASDAQ: MSCC) жартылай өткізгіш шешімдердің жан-жақты портфолиосын ұсынады: аэроғарыш, қорғаныс және қауіпсіздік; кәсіпорын және байланыс; және өнеркәсіптік және баламалы энергия нарықтары. Өнімдерге өнімділігі жоғары, жоғары сенімді аналогтық және RF құрылғылары, аралас сигнал және РЖ интегралды схемалары, реттелетін SoC, FPGA және толық ішкі жүйелер кіреді. Microsemi штаб-пәтері Алисо Виехода, Калифорнияда орналасқан. Қосымша ақпаратты мына жерден қараңыз www.microsemi.com.
© 2014 Microsemi корпорациясы. Барлық құқықтар сақталған. Microsemi және Microsemi логотипі Microsemi корпорациясының сауда белгілері болып табылады. Барлық басқа сауда белгілері мен қызмет көрсету белгілері олардың тиісті иелерінің меншігі болып табылады.

5-02-00384-1/08.14Microsemi логотипіMicrosemi Корпоративтік штаб-пәтері
One Enterprise, Aliso Viejo CA 92656 АҚШ
АҚШ ішінде: +1 949-380-6100
Сатылым: +1 949-380-6136
Факс: +1 949-215-4996

Құжаттар / Ресурстар

Microsemi SmartFusion2 DDR контроллері және сериялық жоғары жылдамдықты контроллері [pdf] Пайдаланушы нұсқаулығы
SmartFusion2 DDR контроллері және сериялық жоғары жылдамдықты контроллер, SmartFusion2 DDR, контроллер және сериялық жоғары жылдамдықты контроллер, жоғары жылдамдықты контроллер

Анықтамалар

Пікір қалдырыңыз

Электрондық пошта мекенжайыңыз жарияланбайды. Міндетті өрістер белгіленген *