Logo MicrosemiSmartFusion2
DDR controller jeung Serial High Speed ​​controller
Métodologi Initialization
Guide pamaké

Bubuka

Nalika nyiptakeun desain nganggo alat SmartFusion2, upami anjeun nganggo salah sahiji tina dua pangendali DDR (FDDR atanapi MDDR) atanapi blok Serial High Speed ​​​​Control (SERDESIF), anjeun kedah ngamimitian ngadaptar konfigurasi blok-blok ieu nalika ngajalankeun-waktos sateuacan. aranjeunna tiasa dianggo. Pikeun example, pikeun controller DDR, anjeun kudu nyetél mode DDR (DDR3 / DDR2 / LPDDR), lebar PHY, modeu burst na ECC.
Nya kitu, pikeun blok SERDESIF dipaké salaku titik tungtung PCIe, Anjeun kudu nyetel PCIE BAR ka AXI (atanapi AHB) jandela.
Dokumén ieu ngajelaskeun léngkah-léngkah anu dipikabutuh pikeun nyiptakeun desain Libero anu otomatis ngamimitian pengontrol DDR sareng blok SERDESIF dina kakuatan up. Éta ogé ngajelaskeun kumaha carana ngahasilkeun kode firmware ti Libero SOC anu dianggo dina aliran desain anu dipasang.
Pedaran lengkep ngeunaan téori operasi disadiakeun munggaran.
Bagian salajengna ngajelaskeun kumaha cara nyiptakeun desain sapertos kitu nganggo Libero SoC System Builder, alat desain anu kuat anu, diantara fitur-fitur sanésna, nyiptakeun solusi 'inisialisasi' pikeun anjeun upami anjeun nganggo blok DDR atanapi SERDESIF dina desain anjeun.
Bagian salajengna ngajelaskeun kumaha carana nempatkeun solusi 'inisialisasi' lengkep babarengan tanpa nganggo SmartFusion2 System Builder. Ieu ngabantuan ngajelaskeun naon anu kudu dipigawé lamun teu hayang ngagunakeun System Builder, sarta ogé ngajelaskeun naon alat System Builder sabenerna dibangkitkeun pikeun anjeun. Bagian ieu alamat:

  • Kreasi data konfigurasi pikeun controller DDR na registers konfigurasi SERDESIF
  • Nyiptakeun logika FPGA diperlukeun pikeun mindahkeun data konfigurasi kana registers konfigurasi ASIC béda

Tungtungna urang ngajelaskeun dihasilkeun files patali jeung:

  • Nyiptakeun solusi 'inisialisasi' firmware.
  • Simulasi desain pikeun solusi 'initialization' DDR.

Pikeun rinci ngeunaan controller DDR na SERDESIF registers konfigurasi, tingal dina Microsemi SmartFusion2 High Speed ​​Serial na DDR Interfaces Guide pamaké.

Téori Operasi

Solusi initialization periferal ngagunakeun komponén utama handap:

  • Fungsi CMSIS SystemInit (), nu dijalankeun dina Cortex-M3 sarta orchestrates prosés initialization.
  • CoreConfigP inti IP lemes, nu initializes nu periferal 'register konfigurasi.
  • CoreResetP inti IP lemes, nu ngatur urutan reset tina MSS, controller DDR, sarta blok SERDESIF.

Prosés initialization periferal jalan saperti kieu:

  1. Saatos reset, Cortex-M3 ngajalankeun fungsi CMSIS SystemInit (). Pungsi ieu otomatis dieksekusi saméméh fungsi utama () aplikasi dieksekusi.
    Sinyal kaluaran CoreResetP MSS_HPMS_READY ditegeskeun dina awal prosés initialization, nunjukkeun yén MSS sareng sadaya périferal (iwal MDDR) parantos siap pikeun komunikasi.
  2. SystemInit () fungsi nyerat data konfigurasi ka controller DDR na registers konfigurasi SERDESIF via beus MSS FIC_2 APB3. Antarbeungeut ieu disambungkeun ka inti CoreConfigP lemes instantiated dina lawon FPGA.
  3. Barina ogé registers nu ngonpigurasi, nulis SystemInit () fungsi kana registers kontrol CoreConfigP pikeun nandaan parantosan fase konfigurasi register; sinyal kaluaran CoreConfigP CONFIG1_DONE na CONIG2_DONE lajeng negeskeun.
    Aya dua fase konfigurasi register (CONFIG1 jeung CONFIG2) gumantung kana périferal dipaké dina rarancang.
  4. Lamun salah sahiji atawa duanana MDDR / FDDR dipaké, sarta taya sahiji blok SERDESIF dipaké dina rarancang, aya ngan hiji fase konfigurasi register. Kadua sinyal kaluaran CoreConfigP CONFIG1_DONE sareng CONIG2_DONE ditegeskeun hiji-hiji tanpa ngantosan / reureuh.
    Lamun hiji atawa leuwih blok SERDESIF dina modeu non-PCIe dipaké dina rarancang, aya ngan hiji fase konfigurasi register. CONFIG1_DONE sareng CONIG2_DONE ditegeskeun hiji-hiji tanpa ngantosan / reureuh.
    Lamun hiji atawa leuwih blok SERDESIF dina modeu PCIe dipaké dina rarancang, aya dua fase konfigurasi register. CONFIG1_DONE ditegeskeun saatos fase kahiji tina konfigurasi ngadaptar parantos réngsé. Sistem SERDESIF sareng register jalur dikonpigurasi dina fase ieu. Upami SERDESIF dikonpigurasi dina modeu non-PCIE, sinyal CONFIG2_DONE ogé langsung ditegeskeun.
  5. Fase kadua konfigurasi register lajeng kieu (lamun SERDESIF ieu ngonpigurasi dina modeu PCIE). Di handap ieu mangrupakeun acara béda anu lumangsung dina fase kadua:
    – CoreResetP de-negeskeun PHY_RESET_N jeung CORE_RESET_N sinyal pakait jeung unggal blok SERDESIF dipaké. Ogé negeskeun sinyal kaluaran SDIF_RELEASED sanggeus sagala blok SERDESIF kaluar tina reset. Sinyal SDIF_RELEASED ieu dipaké pikeun nunjukkeun ka CoreConfigP yén inti SERDESIF kaluar tina reset sarta geus siap pikeun fase kadua konfigurasi register.
    - Sakali sinyal SDIF_RELEASED ditegeskeun, fungsi SystemInit () mimiti polling pikeun negeskeun PMA_READY dina jalur SERDESIF anu luyu. Sakali PMA_READY negeskeun, set kadua SERDESIF registers (PCIE registers) ngonpigurasi / ditulis ku SystemInit () fungsi.
  6. Sanggeus kabéh PCIE registers ngonpigurasi, nyerat SystemInit () fungsi ka CoreConfigP kontrol registers pikeun nandaan parantosan fase kadua konfigurasi register; sinyal kaluaran CoreConfigP CONIG2_DONE lajeng negeskeun.
  7. Salian ti assertions sinyal luhur / de-assertions, CoreResetP ogé ngatur initialization tina sagala rupa blok ku ngajalankeun fungsi handap:
    - De-asserting reset inti FDDR
    - De-negeskeun blok SERDESIF ngareset PHY sareng CORE
    - Ngawas sinyal konci FDDR PLL (FPLL). FPLL kedah dikonci pikeun ngajamin yén antarmuka data FDDR AXI/AHBLite sareng lawon FPGA tiasa komunikasi leres.
    - Ngawaskeun sinyal konci blok SERDESIF PLL (SPLL). SPLL kedah dikonci pikeun ngajamin yén SERDESIF ngahalangan antarmuka AXI / AHBLite (mode PCIe) atanapi antarmuka XAUI tiasa komunikasi leres sareng lawon FPGA.
    - Ngantosan kenangan DDR éksternal pikeun netep sareng siap diaksés ku pangendali DDR.
  8. Nalika sakabéh périferal geus réngsé initialization maranéhna, CoreResetP negeskeun sinyal INIT_DONE; nu CoreConfigP internal register INIT_DONE lajeng negeskeun.
    Lamun salah sahiji atawa duanana MDDR / FDDR dipaké, sarta waktu initialization DDR ngahontal, CoreResetP sinyal kaluaran DDR_READY negeskeun. Negeskeun sinyal ieu DDR_READY bisa diawaskeun salaku indikasi yén DDR (MDDR / FDDR) geus siap pikeun komunikasi.
    Lamun hiji atawa leuwih blok SERDESIF dipaké, sarta fase kadua tina konfigurasi register geus hasil réngsé, CoreResetP sinyal kaluaran SDIF_READY negeskeun. Negeskeun sinyal ieu SDIF_READY tiasa diawaskeun salaku indikasi yén sadaya blok SERDESIF parantos siap pikeun komunikasi.
  9. SystemInit () fungsi, nu geus ngantosan INIT_DONE a negeskeun, lengkep, sarta utama aplikasi urang () fungsi dieksekusi. Dina waktos éta, sadaya Controllers DDR anu dianggo sareng blok SERDESIF parantos diinisialisasi, sareng aplikasi firmware sareng logika lawon FPGA tiasa dipercaya komunikasi sareng aranjeunna.

Métodologi dijelaskeun dina dokumén ieu gumantung kana Cortex-M3 executing prosés initialization salaku bagian tina kode initialization sistem dieksekusi saméméh utama aplikasi urang () fungsi.
Tempo Bagan Aliran dina Gambar 1-1, Gambar 1-2 jeung Gambar 1-3 pikeun hambalan Initialization of FDDR / MDDR, SEREDES (mode non-PCIe) sarta SERDES (mode PCIe).
Gambar 1-4 nembongkeun diagram timing Initialization periferal.

Microsemi SmartFusion2 DDR Controller sareng Serial High Speed ​​Controller - diagram waktos 1 Microsemi SmartFusion2 DDR Controller sareng Serial High Speed ​​Controller - diagram waktos 2

Microsemi SmartFusion2 DDR Controller sareng Serial High Speed ​​Controller - diagram waktos 3Microsemi SmartFusion2 DDR Controller sareng Serial High Speed ​​Controller - diagram waktos 4Gambar 1-3 • SERDESIF (PCIe) Bagan Aliran Initialization
Prosedur initialization dijelaskeun dina dokumén ieu merlukeun anjeun ngajalankeun Cortex-M3 salila prosés initialization, sanajan anjeun teu rencanana ngajalankeun kode naon on Cortex-M3. Anjeun kedah nyiptakeun aplikasi firmware dasar anu henteu ngalakukeun nanaon (gelung saderhana, contonaample) sareng beban anu tiasa dieksekusi dina Mémori Non Volatile (eNVM) anu dipasang ku pangendali DDR sareng blok SERDESIF diinisialisasi nalika sapatu Cortex-M3.

Ngagunakeun System Builder pikeun Jieun Desain Ngagunakeun DDR na SERDESIF Blok

SmartFusion2 System Builder mangrupikeun alat desain anu kuat anu ngabantosan anjeun nyandak syarat tingkat sistem anjeun sareng ngahasilkeun desain anu ngalaksanakeun syarat-syarat éta. Fungsi anu penting pisan dina Pangwangun Sistem nyaéta nyiptakeun otomatis sub-sistem Initialization Periferal. "Nganggo SmartDesign pikeun nyiptakeun desain nganggo blok DDR sareng SERDESIF" dina kaca 17 ngajelaskeun sacara rinci kumaha cara nyiptakeun solusi sapertos kitu tanpa Pangwangun Sistem.
Upami anjeun nganggo System Builder, anjeun kedah ngalaksanakeun tugas-tugas di handap ieu pikeun nyiptakeun desain anu ngamimitian pengontrol DDR anjeun sareng blok SERDESIF nalika ngangkat:

  1. Dina kaca Fitur Alat (gambar 2-1), nangtukeun mana controller DDR dipaké jeung sabaraha blok SERDESIF dipaké dina rarancang Anjeun.
  2. Dina kaca Mémori, nangtukeun jenis DDR (DDR2 / DDR3 / LPDDR) jeung data konfigurasi pikeun memori DDR éksternal Anjeun. Tempo bagian Mémori Page pikeun detil.
  3. Dina kaca périferal, tambahkeun master lawon ngonpigurasi sakumaha AHBLite / AXI kana lawon DDR Subsistem jeung / atawa MSS DDR FIC Subsistem (pilihan).
  4. Dina kaca Setélan Jam, tangtukeun frékuénsi jam pikeun sub-sistem DDR.
  5. Lengkepan spésifikasi desain anjeun teras klik Rengse. Ieu ngahasilkeun desain anu diciptakeun ku Pembina Sistem, kalebet logika anu dipikabutuh pikeun solusi 'inisialisasi'.
  6. Upami Anjeun keur make blok SERDESIF, Anjeun kudu instantiate blok SERDESIF dina rarancang Anjeun tur sambungkeun port initializations maranéhna pikeun inti dihasilkeun System Builder.

System Pangwangun Alat Fitur Page
Dina kaca Fitur Alat, nangtukeun mana controller DDR (MDDR na / atawa FDDR) dipaké sarta sabaraha blok SERDESIF dipaké dina rarancang anjeun (gambar 2-1).

Microsemi SmartFusion2 DDR controller jeung Serial High Speed ​​controller - Fitur Alat Kacaangka 2-1 • System Pangwangun Alat Fitur Kaca

System Pangwangun Mémori Page
Pikeun ngagunakeun MSS DDR (MDDR) atanapi lawon DDR (FDDR), pilih Tipe Mémori tina daptar turun-handap (gambar 2-2).

Microsemi SmartFusion2 DDR controller jeung Serial High Speed ​​controller - Mémori éksternalangka 2-2 • MSS Mémori éksternal

Anjeun kedah:

  1. Pilih jinis DDR (DDR2, DDR3 atanapi LPDDR).
  2. Nangtukeun waktu netepkeun memori DDR. Taroskeun Spésifikasi Mémori DDR éksternal anjeun pikeun nyetél waktos setélan mémori anu leres. Mémori DDR bisa jadi gagal pikeun initialize neuleu lamun waktu netepkeun memori teu bener diatur.
  3. Boh ngimpor data konfigurasi register DDR atawa nyetel Parameter Mémori DDR Anjeun. Pikeun detil, tingal Microsemi SmartFusion2 High Speed ​​Serial na DDR Interfaces Guide pamaké.

data ieu dipaké pikeun ngahasilkeun DDR register BFM jeung konfigurasi firmware files sakumaha ditétélakeun dina "Nyiptakeun sareng Nyusun Aplikasi Firmware" dina kaca 26 sareng "BFM Files Dipaké pikeun Simulating Desain" dina kaca 27. Pikeun detil ngeunaan registers konfigurasi controller DDR, tingal Microsemi SmartFusion2 High Speed ​​Serial na DDR Interfaces Guide pamaké.
Tilasample tina konfigurasi file sintaksis ditémbongkeun dina Gambar 2-3. Ngaran register dipaké dina ieu file sami sareng anu dijelaskeun dina Microsemi SmartFusion2 High Speed ​​Serial na DDR Interfaces Guide pamaké

Microsemi SmartFusion2 DDR Controller sareng Serial High Speed ​​Controller - File Sintaksis Exampleangka 2-3 • Konfigurasi File Sintaksis Example
System Pangwangun périferal Page
Dina kaca périferal, pikeun tiap controller DDR dijieun subsistem misah (Lain DDR Subsistem pikeun FDDR jeung MSS DDR FIC Subsistem pikeun MDDR). Anjeun tiasa nambahkeun hiji lawon AMBA Master (konpigurasi sakumaha AXI / AHBLite) inti pikeun tiap subsistem ieu pikeun Aktipkeun aksés master lawon ka controller DDR. Kana generasi, System Builder otomatis instantiates cores beus (gumantung kana tipe AMBA Master ditambahkeun) jeung ngungkabkeun master BIF inti beus jeung jam na reset pin tina subsistem pakait (FDDR / MDDR) dina grup pin luyu, ka luhur. Sadaya anu anjeun kedah laksanakeun nyaéta nyambungkeun BIF kana inti Master Fabric anu pas anu anjeun badé instan dina desain. Dina kasus MDDR, éta pilihan pikeun nambahkeun hiji lawon AMBA Master core kana MSS DDR FIC Subsistem; Cortex-M3 mangrupikeun master standar dina subsistem ieu. angka 2-4 nembongkeun System Pangwangun périferal Page.

Microsemi SmartFusion2 DDR controller jeung Serial High Speed ​​controller - Pangwangun périferal Pageangka 2-4 • System Pangwangun périferal Page

Halaman Setélan Jam Pangwangun Sistim
Dina kaca Setélan Jam, pikeun tiap controller DDR, anjeun kudu nangtukeun frékuénsi jam patali unggal DDR (MDDR na / atawa FDDR) sub-sistem.
Pikeun MDDR, anjeun kedah netepkeun:

  • MDDR_CLK - jam ieu nangtukeun frékuénsi operasi DDR Controller sarta kudu cocog frékuénsi jam hayang memori DDR éksternal anjeun ngajalankeun di. jam ieu diartikeun sababaraha M3_CLK (Cortex-M3 sarta MSS Jam Utama, angka 2-5). MDDR_CLK kedah kirang ti 333 MHz.
  • DDR_FIC_CLK - Lamun geus milih aksés ogé MDDR ti lawon FPGA, anjeun kudu nangtukeun DDR_FIC_CLK. Frékuénsi jam ieu dihartikeun salaku rasio MDDR_CLK sareng kedah cocog sareng frékuénsi dimana sub-sistem lawon FPGA anu ngaksés MDDR jalan.

Microsemi SmartFusion2 DDR controller jeung Serial High Speed ​​controller - MDDR JamAngka 2-5 • Cortex-M3 sareng Jam Utama MSS; Jam MDDR

Pikeun FDDR, anjeun kedah netepkeun:

  • FDDR_CLK - Nangtukeun frékuénsi operasi tina Controller DDR jeung kudu cocog frékuénsi jam di mana anjeun hayang memori DDR éksternal anjeun ngajalankeun. Catet yén jam ieu diartikeun sababaraha M3_CLK (MSS na Cortex-M3 jam, angka 2-5). FDDR_CLK kedah aya dina 20 MHz sareng 333 MHz.
  • FDDR_SUBSYSTEM_CLK - Frékuénsi jam ieu didefinisikeun salaku babandingan FDDR_CLK sareng kedah cocog sareng frékuénsi dimana sub-sistem lawon FPGA anu ngaksés FDDR dijalankeun.

Microsemi SmartFusion2 DDR controller jeung Serial High Speed ​​controller - lawon DDR Jamangka 2-6 • lawon DDR Jam
Konfigurasi SERDESIF
Blok SERDESIF teu instantiated dina System Builder dihasilkeun desain. Najan kitu, pikeun sakabéh blok SERDESIF, sinyal initialization sadia dina panganteur inti System Pangwangun sarta bisa disambungkeun ka cores SERDESIF dina tingkat hirarki salajengna, ditémbongkeun saperti dina Gambar 2-7.Microsemi SmartFusion2 DDR controller jeung Serial High Speed ​​Controller - Periferal Initialization KonéktipitasGambar 2-7 • SERDESIF Periferal Initialization Konéktipitas
Sarupa jeung registers konfigurasi DDR, unggal blok SERDES ogé boga registers konfigurasi nu kudu dimuat dina runtime. Anjeun tiasa ngimpor nilai register ieu atanapi nganggo High Speed ​​​​Serial Interface Configurator (gambar 2-8) pikeun ngalebetkeun parameter PCIe atanapi EPCS anjeun sareng nilai register otomatis diitung pikeun anjeun. Pikeun detil, tingal SERDES Configurator Guide pamaké.Microsemi SmartFusion2 DDR controller jeung Serial High Speed ​​Controller - Serial Interface ConfiguratorGambar 2-8 • High Speed ​​Serial Interface Configurator
Sakali anjeun parantos ngahijikeun logika pangguna anjeun sareng blok Pangwangun Sistem sareng blok SERDES, anjeun tiasa ngahasilkeun SmartDesign tingkat luhur anjeun. Ieu ngahasilkeun sadaya HDL sareng BFM files anu diperlukeun pikeun nerapkeun sarta simulate desain Anjeun. Anjeun teras bisa neruskeun kalawan sesa Aliran Desain.

Ngagunakeun SmartDesign pikeun Jieun Desain Ngagunakeun DDR na SERDESIF Blok

Bagian ieu ngajelaskeun kumaha carana nempatkeun solusi 'inisialisasi' lengkep babarengan tanpa nganggo SmartFusion2 System Builder. Tujuanana nyaéta pikeun ngabantosan anjeun ngartos naon anu anjeun kedah laksanakeun upami anjeun henteu hoyong nganggo Pangwangun Sistem. Bagian ieu ogé ngajelaskeun naon anu dibangkitkeun ku alat System Builder pikeun anjeun. Bagian ieu ngajelaskeun kumaha carana:

  • Input data konfigurasi pikeun controller DDR na registers konfigurasi SERDESIF.
  • Instantiate tur sambungkeun Cores lawon diperlukeun pikeun mindahkeun data konfigurasi ka controller DDR na registers konfigurasi SERDESIF.

Konfigurasi DDR controller
Controllers MSS DDR (MDDR) jeung lawon DDR (FDDR) kudu ngonpigurasi dinamis (dina runtime) pikeun cocog sarat konfigurasi memori DDR éksternal (mode DDR, lebar PHY, mode burst, ECC, jeung sajabana). Data diasupkeun dina MDDR / FDDR configurator ditulis kana registers konfigurasi controller DDR ku CMSIS SystemInit () fungsi. Configurator boga tilu tab béda pikeun ngasupkeun tipena béda data konfigurasi:

  • Data umum (mode DDR, Lebar Data, Frékuénsi Jam, ECC, Antarmuka Fabric, Kakuatan Drive)
  • Data Initialization Mémori (Panjang Burst, Orde Burst, Modeu Timing, Latency, jsb.)
  • Mémori Timing data

Tingal spésifikasi memori DDR éksternal anjeun sarta ngonpigurasikeun controller DDR pikeun cocog sarat memori DDR éksternal Anjeun.
Pikeun detil ngeunaan konfigurasi DDR, tingal dina SmartFusion2 MSS DDR Konfigurasi Guide pamaké.
Konfigurasi SERDESIF
Klik dua kali blok SERDES dina kanvas SmartDesign pikeun muka Configurator pikeun ngonpigurasikeun SERDES (Gambar 3-1). Anjeun tiasa ngimpor nilai register ieu atanapi nganggo configurator SERDES pikeun ngalebetkeun parameter PCIe atanapi EPCS anjeun sareng nilai register otomatis diitung pikeun anjeun. Pikeun detil, tingal SERDES Configurator Guide pamaké.Microsemi SmartFusion2 DDR controller jeung Serial High Speed ​​Controller - High Speed ​​Serial Interface ConfiguratorGambar 3-1 • High Speed ​​Serial Interface Configurator
Nyieun FPGA Design Initialization Sub-System
Pikeun initialize blok DDR na SERDESIF, anjeun kudu nyieun subsistem initialization dina lawon FPGA. Subsistem inisialisasi lawon FPGA mindahkeun data tina Cortex-M3 ka register konfigurasi DDR sareng SERDESIF, ngatur urutan reset anu dipikabutuh pikeun blok ieu operasional sareng sinyal nalika blok ieu siap komunikasi sareng sesa desain anjeun. Pikeun nyieun subsistem inisialisasi, anjeun kedah:

  • Konpigurasikeun FIC_2 di jero MSS
  • Instantiate sareng ngonpigurasikeun inti CoreConfigP sareng CoreResetP
  • Instantiate on-chip 25/50MHz RC osilator
  • Instantiate nu System Reset (SYSRESET) makro
  • Sambungkeun komponén ieu ka interfaces konfigurasi unggal periferal urang, jam, resets jeung palabuhan konci PLL

MSS FIC_2 APB Konfigurasi
Pikeun ngonpigurasikeun MSS FIC_2:

  1. Buka kotak dialog FIC_2 configurator ti MSS configurator (Gambar 3-2).
  2. Pilih Initialize périferal maké Cortex-M3.
  3. Gumantung kana sistem anjeun, pariksa salah sahiji atawa duanana kotak centang ieu:
    - MSS DDR
    – lawon DDR jeung / atawa blok SERDES
  4. Pencét OK sareng teraskeun ngahasilkeun MSS (anjeun tiasa nolak tindakan ieu dugi ka parantos ngonpigurasi MSS sapinuhna kana syarat desain anjeun). Pelabuhan FIC_2 (FIC_2_APB_MASTER, FIC_2_APB_M_PCLK sareng FIC_2_APB_M_RESET_N) ayeuna kakeunaan dina antarmuka MSS sareng tiasa dihubungkeun kana inti CoreConfigP sareng CoreResetP.

Microsemi SmartFusion2 DDR controller jeung Serial High Speed ​​controller - MSS FIC 2 Configuratorangka 3-2 • MSS FIC_2 Configurator

CoreConfigP
Pikeun ngonpigurasikeun CoreConfigP:

  1. Instantiate CoreConfigP kana SmartDesign Anjeun (ilaharna hiji tempat MSS ieu instantiated).
    Inti ieu tiasa dipendakan dina Katalog Libero (dina périferal).
  2. Ganda-klik inti pikeun muka configurator nu.
  3. Konpigurasikeun inti pikeun nangtukeun périferal mana anu kudu diinisialisasi (Gambar 3-3)

Microsemi SmartFusion2 DDR controller jeung Serial High Speed ​​controller - Dialog BoxAngka 3-3 • Kotak Dialog CoreConfigP

CoreResetP
Pikeun ngonpigurasikeun CoreResetP:

  1. Instantiate CoreResetP kana SmartDesign Anjeun (ilaharna hiji mana MSS ieu instantiated).
    Inti ieu tiasa dipendakan dina Katalog Libero, handapeun Periferal.
  2. Ganda-klik inti jero SmartDesign Kanvas pikeun muka Configurator (Gambar 3-4).
  3. Konpigurasikeun inti pikeun:
    – Sebutkeun kabiasaan reset éksternal (EXT_RESET_OUT negeskeun). Pilih salah sahiji tina opat pilihan:
    o EXT_RESET_OUT henteu pernah ditegeskeun
    o EXT_RESET_OUT ditegeskeun lamun kakuatan up reset (POWER_ON_RESET_N) ditegeskeun
    o EXT_RESET_OUT ditegeskeun lamun FAB_RESET_N ditegeskeun
    o EXT_RESET_OUT ditegeskeun lamun kakuatan up reset (POWER_ON_RESET_N) atawa FAB_RESET_N ditegeskeun
    - Sebutkeun Vol Alattage. Nilai dipilih kedah cocog voltage anjeun milih dina kotak dialog Setélan Proyék Libero.
    - Cék kotak centang anu cocog pikeun nunjukkeun periferal mana anu anjeun anggo dina desain anjeun.
    - Sebutkeun waktos setelan memori DDR éksternal. Ieu nilai maksimum pikeun sakabéh memori DDR dipaké dina aplikasi Anjeun (MDDR na FDDR). Tingal lembar data vendor memori DDR éksternal pikeun ngonpigurasikeun parameter ieu. 200us mangrupakeun nilai standar alus keur DDR2 na DDR3 kenangan ngajalankeun pa 200MHz. Ieu mangrupikeun parameter anu penting pikeun ngajamin simulasi kerja sareng sistem kerja dina silikon. Nilai anu salah pikeun waktos netepkeun tiasa nyababkeun kasalahan simulasi. Tingal lembar data ngajual memori DDR pikeun ngonpigurasikeun parameter ieu.
    - Pikeun unggal blok SERDES dina desain anjeun, pariksa kotak anu cocog pikeun nunjukkeun naha:
    o PCIe dipaké
    o Rojongan pikeun PCIe Hot Reset diperlukeun
    o Rojongan pikeun PCIe L2 / P2 diperlukeun

Catetan: Upami Anjeun keur make 090 maot (M2S090) jeung desain anjeun migunakeun SERDESIF, anjeun teu kudu pariksa salah sahiji kotak centang handap: 'Dipaké pikeun PCIe', 'Kaasup rojongan PCIe HotReset' sarta 'Kaasup PCIe L2 / rojongan P2'. Upami anjeun nganggo alat non-090 sareng nganggo hiji atanapi langkung blok SERDESIF, anjeun kedah pariksa sadayana opat kotak centang dina bagian SERDESIF anu pas.
Catetan: Pikeun rinci ngeunaan pilihan sadia pikeun anjeun dina configurator ieu, tingal Buku Panduan CoreResetP.

Microsemi SmartFusion2 DDR controller jeung Serial High Speed ​​controller - CoreResetPConfiguratorangka 3-4 • CoreResetPConfigurator

25/50MHz osilator Instantiation
CoreConfigP na CoreResetP anu clocked ku on-chip 25/50MHz RC osilator. Anjeun kudu instantiate a 25/50MHz osilator tur sambungkeun ka cores ieu.

  1. Instantiate inti Chip Oscillators kana SmartDesign Anjeun (ilaharna hiji dimana MSS ieu instantiated). Inti ieu tiasa dipendakan dina Katalog Libero handapeun Jam & Manajemén.
  2. Konpigurasikeun inti ieu sahingga osilator RC drive lawon FPGA, ditémbongkeun saperti dina Gambar 3-5.

Microsemi SmartFusion2 DDR controller jeung Serial High Speed ​​controller - Oscillators Configuratorangka 3-5 • Chip osilator Configurator

System Reset (SYSRESET) Instantiation
Makro SYSRESET nyayogikeun fungsionalitas reset tingkat alat pikeun desain anjeun. Sinyal kaluaran POWER_ON_RESET_N ditegeskeun / dicabut iraha waé chip diaktipkeun atanapi pin éksternal DEVRST_N ditegeskeun / dicabut (Gambar 3-6).
Instantiate makro SYSRESET kana SmartDesign anjeun (biasana hiji tempat MSS instantiated). makro ieu bisa kapanggih dina Katalog Libero handapeun Macro Library.No konfigurasi makro ieu diperlukeun.

Microsemi SmartFusion2 DDR controller jeung Serial High Speed ​​controller - SYSRESET Macroangka 3-6 • SYSRESET Makro

Gemblengna Konéktipitas
Saanggeus instantiated jeung ngonpigurasi MSS, FDDR, SERDESIF, OSC, SYSRESET, CoreConfigP na CoreResetP cores dina rarancang Anjeun, Anjeun kudu nyambungkeun aranjeunna pikeun ngabentuk subsistem Initialization periferal. Pikeun nyederhanakeun pedaran konektipitas dina dokumen ieu, éta dirobih kana konektipitas jalur data konfigurasi patuh APB3 pakait sareng sambungan CoreConfigP sareng CoreResetP.
Konfigurasi Jalur Data Konéktipitas
Angka 3-7 nunjukkeun kumaha nyambungkeun CoreConfigP kana sinyal MSS FIC_2 sareng antarmuka konfigurasi patuh APB3 périferal.
Tabél 3-1 • Konfigurasi Data Path Port / BIF Sambungan

TI
Port / Antarbeungeut Beus
(BIF)/ Komponén
TO
Port / Interface Beus (BIF) / Komponén
APB S PRESET N/ CoreConfigP APB S PRESET N/ SDIF<0/1/2/3> APB S PRESET N/
FDDR
MDDR APB S PRESE TN / MSS
APB S PCLK / CoreConfigP APB S PCLK / SDIF APB S PCLK / FDDR MDDR APB S POLK / MSS
MDDR APBmslave / CoreConfig MDDR APB budak (BIF) / MSS
SDIF<0/1/2/ 3> APBmslave/Config APB budak (BIF)/ SDIF<0/1/2/3>
FDDR APBmslave APB budak (BIF) / FDDR
FIC 2 APBmmaster / CoreConfigP FIC 2 APB MASTER/ MSS

Microsemi SmartFusion2 DDR controller jeung Serial High Speed ​​Controller - Sub-System Konéktipitasangka 3-7 • FIC_2 APB3 Sub-System Konéktipitas

Jam sareng Reset Konéktipitas
Angka 3-8 nunjukkeun kumaha nyambungkeun CoreResetP kana sumber reset éksternal sareng sinyal reset inti periferal. Éta ogé nunjukkeun kumaha nyambungkeun CoreResetP kana sinyal status sinkronisasi jam périferal (sinyal konci PLL). Salaku tambahan, éta nunjukkeun kumaha CoreConfigP sareng CoreResetP disambungkeun.

Microsemi SmartFusion2 DDR Controller sareng Serial High Speed ​​Controller - Sub-System Connectivity 2angka 3-8 • Core SF2Reset Sub-System Konéktipitas

Nyiptakeun sareng Kompilasi Aplikasi Firmware

Nalika anjeun ngékspor firmware ti LiberoSoC (Desain Aliran Jandela> Ékspor Firmware> Ékspor Firmware), Libero ngahasilkeun ieu di handap. files dina / firmware / drivers_config / folder sys_config:

  • sys_config.c - Ngandung struktur data anu nyepeng nilai pikeun register periferal.
  • sys_config.h - Ngandung pernyataan #define anu nangtukeun périferal mana anu dianggo dina desain sareng kedah diinisialisasi.
  • sys_config_mddr_define.h - Ngandung data konfigurasi controller MDDR diasupkeun dina kotak dialog Registers Konfigurasi.
  • sys_config_fddr_define.h – Ngandung data konfigurasi controller FDDR diasupkeun dina kotak dialog Registers Konfigurasi.
  • sys_config_mss_clocks.h – Ieu file ngandung frékuénsi jam MSS sakumaha didefinisikeun dina MSS CCC configurator. Frékuénsi ieu dianggo ku kode CMSIS pikeun nyayogikeun inpormasi jam anu leres ka seueur supir MSS anu kedah gaduh aksés kana frékuénsi Jam Periferal (PCLK) (contona, pembagi laju baud MSS UART mangrupikeun fungsi tina baud rate sareng frekuensi PCLK. ).
  • sys_config_SERDESIF_ .c - Ngandung SERDESIF_ ngadaptar data konfigurasi disadiakeun salila SERDESIF_ konfigurasi blok dina kreasi desain.
  • sys_config_SERDESIF_ .h - Ngandung pernyataan #define anu nangtukeun jumlah pasangan konfigurasi ngadaptar sareng nomer jalur anu kedah ditaliti pikeun PMA_READY (ngan dina modeu PCIe).

Ieu files diperlukeun pikeun kode CMSIS mun compile leres tur ngandung émbaran ngeunaan desain anjeun ayeuna, kaasup data konfigurasi periferal sarta informasi konfigurasi jam pikeun MSS.
Ulah edit ieu files sacara manual; aranjeunna dijieun pikeun komponén pakait / directories periferal unggal waktos komponén SmartDesign ngandung périferal masing-masing dihasilkeun. Upami aya parobihan kana data konfigurasi tina périferal, anjeun kedah ngékspor deui proyék firmware supados firmware anu diropéa. files (tingali daptar di luhur) diékspor ka / firmware / drivers_config / folder sys_config.
Nalika anjeun ngékspor firmware, Libero SoC nyiptakeun proyék firmware: perpustakaan dimana konfigurasi desain anjeun files jeung drivers anu disusun.
Upami anjeun pariksa proyék Jieun kotak centang mun anjeun ngekspor firmware nu, software SoftConsole / IAR / proyék Keil dijieun pikeun nahan proyék aplikasi dimana anjeun bisa ngédit main.c jeung pamaké C / H. files. Buka proyék SoftConSole/IAR/Keil pikeun ngumpulkeun kode CMSIS nu bener tur boga aplikasi firmware Anjeun leres ngonpigurasi pikeun cocog desain hardware Anjeun.

BFM Files Dipaké pikeun Simulating Desain

Nalika anjeun ngahasilkeun komponén SmartDesign anu ngandung périferal anu aya hubunganana sareng desain anjeun, simulasi files pakait jeung périferal masing-masing dihasilkeun dina / diréktori simulasi:

  • test.bfm - Tingkat luhur BFM file nu munggaran dieksekusi salila sagala simulasi nu latihan SmartFusion2 MSS Cortex-M3 processor. Ieu executes peripheral_init.bfm na user.bfm, dina urutan éta.
  • MDDR_init.bfm - Upami desain anjeun nganggo MDDR, Libero ngahasilkeun ieu file; eta ngandung BFM Paréntah nulis nu simulate nulis tina MSS DDR konfigurasi register data anjeun diasupkeun (ngagunakeun Edit registers dialogbox atanapi dina MSS_MDDR GUI) kana registers MSS DDR Controller.
  • FDDR_init.bfm - Upami desain anjeun nganggo FDDR, Libero ngahasilkeun ieu file; Ieu ngandung paréntah nulis BFM nu simulate nulis data register konfigurasi lawon DDR anjeun diasupkeun (ngagunakeun Edit registers dialogbox atanapi di FDDR GUI) kana registers lawon DDR Controller.
  • SERDESIF_ _init.bfm - Upami desain anjeun nganggo hiji atanapi langkung blok SERDESIF, Libero ngahasilkeun ieu file pikeun tiap SERDESIF_ blok dipaké; Ieu ngandung paréntah nulis BFM nu simulate nyerat data register konfigurasi SERDESIF anjeun diasupkeun (ngagunakeun kotak dialog Edit Registers atawa dina SERDESIF_ GUI) kana SERDESIF_ ngadaptar. Lamun blok SERDESIF geus ngonpigurasi sakumaha PCIe, ieu file ogé boga sababaraha #define pernyataan nu ngadalikeun palaksanaan 2 fase konfigurasi register dina urutan sampurna.
  • pamaké.bfm - Ngandung paréntah pangguna. Paréntah ieu dieksekusi sanggeus peripheral_init.bfm geus réngsé. Édit ieu file pikeun nuliskeun paréntah BFM Anjeun.
  • SERDESIF_ _user.bfm - Ngandung paréntah pangguna. Édit ieu file pikeun nuliskeun paréntah BFM Anjeun. Anggo ieu upami anjeun parantos ngonpigurasi SERDESIF_ meungpeuk dina modeu simulasi BFM PCIe tur salaku master AXI / AHBLite. Upami anjeun parantos ngonpigurasikeun SERDESIF_ blok dina modeu simulasi RTL, anjeun moal butuh ieu file.

Lamun anjeun invoke simulasi unggal waktu, dua simulasi handap files anu ulang dijieun ka / diréktori simulasi kalawan eusi diropéa:

  • subsistem.bfm - Ngandung pernyataan #define pikeun tiap periferal dipaké dina desain Anjeun, nu nangtukeun bagian tinangtu peripheral_init.bfm bakal dieksekusi pakait jeung unggal periferal.
  • operipheral_init.bfm - Ngandung prosedur BFM nu emulates CMSIS :: SystemInit () fungsi dijalankeun dina Cortex-M3 saméméh anjeun asupkeun utama () prosedur. Éta nyalin data konfigurasi pikeun périferal naon waé anu dianggo dina desain kana régistrasi konfigurasi periferal anu leres teras ngantosan sadaya périferal siap sateuacan negeskeun yén anjeun tiasa nganggo périferal ieu. Ieu executes MDDR_init.bfm na FDDR_init.bfm.

Ngagunakeun ieu dihasilkeun files, Controllers DDR dina rarancang anjeun ngonpigurasi otomatis, simulating naon anu bakal kajadian dina alat SmartFusion2. Anjeun tiasa ngédit user.bfm file pikeun nambahkeun sagala paréntah diperlukeun pikeun simulate design Anjeun (Cortex-M3 nyaeta master). Paréntah ieu dieksekusi saatos périferal diinisialisasi. Ulah ngedit test.bfm, subsystem.bfm, peripheral_init.bfm, MDDR_init.bfm, FDDR_init.bfm files sareng SERDESIF_ _init.bfm files.

Rojongan produk

Microsemi SoC Products Group nyokong produkna sareng sababaraha jasa dukungan, kalebet Layanan Pelanggan, Pusat Dukungan Téknis Pelanggan, a websitus, surat éléktronik, sareng kantor penjualan sadunya.
Lampiran ieu ngandung inpormasi ngeunaan ngahubungan Microsemi SoC Products Group sareng nganggo jasa dukungan ieu.
Palayanan palanggan
Kontak Service Palanggan pikeun rojongan produk non-teknis, kayaning harga produk, upgrades produk, update informasi, status pesenan, jeung otorisasina.
Ti Amérika Kalér, nelepon 800.262.1060
Ti sakuliah dunya, nelepon 650.318.4460
Fax, ti mana waé di dunya, 408.643.6913
Customer Téknis Rojongan Center
Microsemi SoC Products Group staffs Pusat Dukungan Téknis Pelanggan sareng insinyur anu terampil anu tiasa ngabantosan ngajawab patarosan hardware, software, sareng desain anjeun ngeunaan Produk Microsemi SoC. Pusat Pangrojong Téknis Pelanggan nyéépkeun waktos anu ageung pikeun nyiptakeun catetan aplikasi, jawaban kana patarosan siklus desain umum, dokuméntasi masalah anu dipikanyaho, sareng sagala rupa FAQ. Janten, sateuacan ngahubungi kami, mangga buka sumber online kami. Sigana pisan kami parantos ngajawab patarosan anjeun.
Bantosan Téknis
Nganjang ka Rojongan Palanggan websitus (www.microsemi.com/soc/support/search/default.aspx) kanggo inpormasi sareng dukungan langkung seueur. Loba jawaban sadia dina searchable web sumberdaya ngawengku diagram, ilustrasi, sarta tumbu ka sumber sejenna dina websitus.
Websitus
Anjeun tiasa ngotéktak rupa-rupa informasi teknis jeung non-teknis dina kaca imah SoC, di www.microsemi.com/soc.
Ngahubungan Pusat Rojongan Téknis Pelanggan
Insinyur anu terampil pisan staf Pusat Rojongan Téknis. Pusat Dukungan Téknis tiasa dikontak ku email atanapi ngalangkungan Microsemi SoC Products Group websitus.
Surélék
Anjeun tiasa ngahubungkeun patarosan téknis anjeun ka alamat email kami sareng nampi jawaban deui ku email, fax, atanapi telepon. Ogé, upami anjeun gaduh masalah desain, anjeun tiasa email desain anjeun files pikeun nampa bantuan.
Urang terus-terusan ngawas akun surelek sapopoe. Nalika ngirim pamundut anjeun ka kami, pastikeun anjeun ngalebetkeun nami lengkep anjeun, nami perusahaan, sareng inpormasi kontak anjeun pikeun ngolah pamundut anjeun sacara efisien.
Alamat email dukungan téknis nyaéta soc_tech@microsemi.com.
Kasus abdi
Pelanggan Microsemi SoC Products Group tiasa ngalebetkeun sareng ngalacak kasus téknis sacara online ku jalan Kasus abdi.
Luar AS
Konsumén anu peryogi bantosan di luar zona waktos AS tiasa ngahubungi dukungan téknis via email (soc_tech@microsemi.com) atanapi ngahubungan kantor penjualan lokal. listings kantor jualan bisa kapanggih dina www.microsemi.com/soc/company/contact/default.aspx.
Rojongan Téknis ITAR
Kanggo dukungan téknis ngeunaan RH sareng RT FPGAs anu diatur ku International Traffic in Arms Regulations (ITAR), hubungi kami via soc_tech_itar@microsemi.com. Alternatipna, dina Kasus Kuring, pilih Sumuhun dina daptar turun-handap ITAR. Pikeun daptar lengkep ngeunaan Microsemi FPGAs ITAR-diatur, buka ITAR web kaca.
Microsemi Corporation (NASDAQ: MSCC) nawiskeun portopolio komprehensif solusi semikonduktor pikeun: aerospace, pertahanan jeung kaamanan; perusahaan sareng komunikasi; jeung pasar énérgi industri jeung alternatif. Produk kalebet kinerja tinggi, alat analog sareng RF anu tiasa dipercaya, sinyal campuran sareng sirkuit terpadu RF, SoC anu tiasa disaluyukeun, FPGA, sareng subsistem lengkep. Microsemi kantor pusatna di Aliso Viejo, California Diajar langkung di www.microsemi.com.
© 2014 Microsemi Corporation. Sadaya hak disimpen. Microsemi sareng logo Microsemi mangrupikeun mérek dagang Microsemi Corporation. Sadaya merek dagang sareng merek jasa sanés mangrupikeun hak milik nu gaduhna.

5-02-00384-1/08.14Logo MicrosemiMarkas Perusahaan Microsemi
Hiji perusahaan, Aliso Viejo CA 92656 AS
Di jero AS: +1 949-380-6100
Penjualan: +1 949-380-6136
Fax: +1 949-215-4996

Dokumén / Sumberdaya

Microsemi SmartFusion2 DDR controller jeung Serial High Speed ​​Controller [pdf] Pituduh pamaké
SmartFusion2 DDR Controller sareng Serial High Speed ​​Controller, SmartFusion2 DDR, Controller sareng Serial High Speed ​​Controller, High Speed ​​​​Controller

Rujukan

Ninggalkeun komentar

alamat surélék anjeun moal diterbitkeun. Widang diperlukeun ditandaan *