logo ng intelIntel® FPGA P-Tile Avalon ®
Streaming IP para sa PCI Express*
Disenyo Halample Gabay sa Gumagamit
Na-update para sa Intel®
Quartus® Prime Design Suite: 21.3
Bersyon ng IP: 6.0.0
Gabay sa Gumagamit

Disenyo Halample Paglalarawan

1.1. Functional na Paglalarawan para sa Programmed Input/Output (PIO) Design Halample

Ang disenyo ng PIO halampnagsasagawa ng mga paglilipat ng memorya mula sa isang host processor patungo sa isang target na aparato. Sa ex na itoample, ang host processor ay humihiling ng single-dword MemRd at emWr
Mga TLP.
Ang disenyo ng PIO halample awtomatikong lumilikha ng files kinakailangan upang gayahin at i-compile sa Intel Prime software. Ang disenyo exampSinasaklaw ng le ang isang malawak na hanay ng mga parameter. Gayunpaman, hindi nito saklaw ang lahat ng posibleng parameterization ng P-Tile Hard IP para sa PCIe.
Itong design exampKasama sa le ang mga sumusunod na sangkap:

  • Ang nabuong P-Tile Avalon Streaming Hard IP Endpoint variant (DUT) kasama ang mga parameter na iyong tinukoy. Ang bahaging ito ay nagtutulak ng TLP data na natanggap sa PIO application
  • Ang bahagi ng PIO Application (APPS), na nagsasagawa ng kinakailangang pagsasalin sa pagitan ng mga PCI Express TLP at simpleng Avalon-MM ay nagsusulat at nagbabasa sa memorya ng onchip.
  • Isang bahagi ng on-chip memory (MEM). Para sa 1×16 na disenyo halampSa gayon, ang on-chip memory ay binubuo ng isang 16 KB memory block. Para sa 2×8 na disenyo halampSa gayon, ang on-chip memory ay binubuo ng dalawang 16 KB na bloke ng memorya.
  • I-reset ang Release IP: Hawak ng IP na ito ang control circuit sa pag-reset hanggang sa ganap na makapasok ang device sa user mode. Iginiit ng FPGA ang INIT_DONE na output upang hudyat na ang device ay nasa user mode. Ang Reset Release IP ay bumubuo ng isang baligtad na bersyon ng panloob na INIT_DONE signal upang gawin ang nINIT_DONE output na magagamit mo para sa iyong disenyo. Ang nINIT_DONE signal ay mataas hanggang sa ang buong device ay pumasok sa user mode. Pagkatapos igiit ng nINIT_DONE (mababa), nasa user mode ang lahat ng logic at normal na gumagana. Maaari mong gamitin ang signal ng nINIT_DONE sa isa sa mga sumusunod na paraan:
    • Upang i-gate ang isang panlabas o panloob na pag-reset.
    • Upang i-gate ang reset input sa transceiver at I/O PLLs.
    • Upang paganahin ang pagsulat ng mga bloke ng disenyo tulad ng mga naka-embed na bloke ng memorya, makina ng estado, at mga rehistro ng shift.
    • Upang sabay-sabay na magmaneho magparehistro, i-reset ang mga input port sa iyong disenyo.

Ang simulation testbench ay nagpapakita ng PIO design example at isang Root Port BFM upang mag-interface sa target na Endpoint.
Intel Corporation. Lahat ng karapatan ay nakalaan. Ang Intel, ang logo ng Intel, at iba pang mga marka ng Intel ay mga trademark ng Intel Corporation o mga subsidiary nito. Ginagarantiyahan ng Intel ang pagganap ng mga produktong FPGA at semiconductor nito sa kasalukuyang mga detalye alinsunod sa karaniwang warranty ng Intel, ngunit inilalaan ang karapatang gumawa ng mga pagbabago sa anumang produkto at serbisyo anumang oras nang walang abiso. Walang pananagutan o pananagutan ang Intel na nagmumula sa aplikasyon o paggamit ng anumang impormasyon, produkto, o serbisyong inilarawan dito maliban kung hayagang sinang-ayunan ng Intel. Pinapayuhan ang mga customer ng Intel na kunin ang pinakabagong bersyon ng mga detalye ng device bago umasa sa anumang nai-publish na impormasyon at bago maglagay ng mga order para sa mga produkto o serbisyo. *Ang ibang mga pangalan at tatak ay maaaring i-claim bilang pag-aari ng iba.
ISO 9001:2015 Nakarehistro
Larawan 1. Block Diagram para sa Platform Designer PIO 1×16 Design Halampang Simulation Testbench

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 5

Larawan 2. Block Diagram para sa Platform Designer PIO 2×8 Design Halampang Simulation Testbench

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 6

Ang test program ay nagsusulat at nagbabasa pabalik ng data mula sa parehong lokasyon sa on-chip memory. Inihahambing nito ang data na nabasa sa inaasahang resulta. Ang mga ulat ng pagsubok, "Nahinto ang simulation dahil sa matagumpay na pagkumpleto" kung walang mga error na nangyari. Ang P-Tile Avalon
Disenyo ng streaming halampSinusuportahan ng le ang mga sumusunod na configuration:

  • Gen4 x16 Endpoint
  • Gen3 x16 Endpoint
  • Gen4 x8x8 Endpoint
  • Gen3 x8x8 Endpoint

Tandaan: Ang simulation testbench para sa PCIe x8x8 PIO design exampAng le ay na-configure para sa isang link ng PCIe x8 bagaman ang aktwal na disenyo ay nagpapatupad ng dalawang link ng PCIe x8.
Tandaan: Itong design exampSinusuportahan lamang ng le ang mga default na setting sa Parameter Editor ng P-tile Avalon Streaming IP para sa PCI Express.
Larawan 3. Mga Nilalaman ng Platform Designer System para sa P-Tile Avalon Streaming PCI Express 1×16 PIO Design Halample
Binubuo ng Platform Designer ang disenyong ito para sa hanggang Gen4 x16 na mga variant.

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 7

Larawan 4. Mga Nilalaman ng Platform Designer System para sa P-Tile Avalon Streaming PCI Express 2×8 PIO Design Halample
Binubuo ng Platform Designer ang disenyong ito para sa hanggang Gen4 x8x8 na mga variant.

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 8

1.2. Functional na Paglalarawan para sa Single Root I/O Virtualization (SR-IOV) Design Halample
Ang disenyo ng SR-IOV halampnagsasagawa ng mga paglilipat ng memorya mula sa isang host processor patungo sa isang target na aparato. Sinusuportahan nito ang hanggang dalawang PF at 32 VF bawat PF.
Ang disenyo ng SR-IOV halample awtomatikong lumilikha ng files kinakailangan upang gayahin at i-compile sa Intel Quartus Prime software. Maaari mong i-download ang pinagsama-samang disenyo sa
isang Intel Stratix® 10 DX Development Kit o isang Intel Agilex™ Development Kit.
Itong design exampKasama sa le ang mga sumusunod na sangkap:

  • Ang nabuong P-Tile Avalon Streaming (Avalon-ST) IP Endpoint variant (DUT) kasama ang mga parameter na iyong tinukoy. Ang bahaging ito ay nagtutulak sa natanggap na data ng TLP sa SR-IOV application.
  • Ang bahagi ng SR-IOV Application (APPS), na nagsasagawa ng kinakailangang pagsasalin sa pagitan ng mga PCI Express TLP at simpleng Avalon-ST ay nagsusulat at nagbabasa sa on-chip memory. Para sa bahagi ng SR-IOV APPS, ang isang memory read na TLP ay bubuo ng Pagkumpleto na may data.
    • Para sa isang SR-IOV na disenyo halampna may dalawang PF at 32 VF bawat PF, mayroong 66 na lokasyon ng memorya na ang dating disenyoampmakaka-access ako. Maaaring ma-access ng dalawang PF ang dalawang lokasyon ng memorya, habang ang 64 VFs (2 x 32) ay maaaring ma-access ang 64 na lokasyon ng memorya.
  • Isang Reset Release IP.
    Ang simulation testbench ay nagpapakita ng SR-IOV na disenyo halample at isang Root Port BFM upang mag-interface sa target na Endpoint.

Larawan 5. Block Diagram para sa Platform Designer SR-IOV 1×16 Design Halampang Simulation Testbench

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 1

Larawan 6. Block Diagram para sa Platform Designer SR-IOV 2×8 Design Halampang Simulation Testbench

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 2

Ang test program ay nagsusulat at nagbabasa pabalik ng data mula sa parehong lokasyon sa on-chip memory sa 2 PF at 32 VF bawat PF. Inihahambing nito ang data na binasa sa inaasahan
resulta. Ang mga ulat ng pagsubok, "Nahinto ang simulation dahil sa matagumpay na pagkumpleto" kung walang mga error na nangyari.
Ang disenyo ng SR-IOV halampSinusuportahan ng le ang mga sumusunod na configuration:

  • Gen4 x16 Endpoint
  • Gen3 x16 Endpoint
  • Gen4 x8x8 Endpoint
  • Gen3 x8x8 Endpoint

Larawan 7. Mga Nilalaman ng Platform Designer System para sa P-Tile Avalon-ST na may SR-IOV para sa PCI Express 1×16 Design Example

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 3

Larawan 8. Mga Nilalaman ng Platform Designer System para sa P-Tile Avalon-ST na may SR-IOV para sa PCI Express 2×8 Design Example

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 4

Gabay sa Mabilis na Pagsisimula

Gamit ang software ng Intel Quartus Prime, maaari kang bumuo ng naka-program na I/O (PIO) na disenyo halamppara sa Intel FPGA P-Tile Avalon-ST Hard IP para sa PCI Express* IP core. Ang nabuong disenyo halample sumasalamin sa mga parameter na iyong tinukoy. Ang PIO exampAng paglilipat ng data mula sa isang host processor patungo sa isang target na device. Ito ay angkop para sa mga lowbandwidth na application. Itong design example awtomatikong lumilikha ng files kinakailangan upang gayahin at i-compile sa Intel Quartus Prime software. Maaari mong i-download ang pinagsama-samang disenyo sa iyong FPGA Development Board. Para mag-download sa custom na hardware, i-update ang Intel Quartus Prime Settings File (.qsf) gamit ang tamang mga pagtatalaga ng pin . Larawan 9. Mga Hakbang sa Pagbuo para sa Disenyo Halample

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 9

Intel Corporation. Lahat ng karapatan ay nakalaan. Ang Intel, ang logo ng Intel, at iba pang mga marka ng Intel ay mga trademark ng Intel Corporation o mga subsidiary nito. Ginagarantiyahan ng Intel ang pagganap ng mga produktong FPGA at semiconductor nito sa kasalukuyang mga detalye alinsunod sa karaniwang warranty ng Intel, ngunit inilalaan ang karapatang gumawa ng mga pagbabago sa anumang produkto at serbisyo anumang oras nang walang abiso. Walang pananagutan o pananagutan ang Intel na nagmumula sa aplikasyon o paggamit ng anumang impormasyon, produkto, o serbisyong inilarawan dito maliban kung hayagang sinang-ayunan ng Intel. Pinapayuhan ang mga customer ng Intel na kunin ang pinakabagong bersyon ng mga detalye ng device bago umasa sa anumang nai-publish na impormasyon at bago maglagay ng mga order para sa mga produkto o serbisyo. *Ang ibang mga pangalan at tatak ay maaaring i-claim bilang pag-aari ng iba.
ISO 9001:2015 Nakarehistro
2.1. Istruktura ng Direktoryo
Figure 10. Istruktura ng Direktoryo para sa Binuo na Disenyo Halample

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 10

2.2. Pagbuo ng Disenyo Halample
Larawan 11. Pamamaraan

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 11

  1. Sa software ng Intel Quartus Prime Pro Edition, lumikha ng bagong proyekto (File ➤ Bagong Project Wizard).
  2. Tukuyin ang Direktoryo, Pangalan, at Top-Level Entity.
  3. Para sa Uri ng Proyekto, tanggapin ang default na halaga, Empty project. I-click ang Susunod.
  4. Para sa Add Files i-click ang Susunod.
  5. Para sa Mga Setting ng Pamilya, Device at Board sa ilalim ng Pamilya, piliin ang Intel Agilex o Intel Stratix 10.
  6. Kung pinili mo ang Intel Stratix 10 sa huling hakbang, piliin ang Stratix 10 DX sa pull-down menu ng Device.
  7. Piliin ang Target na Device para sa iyong disenyo.
  8. I-click ang Tapos na.
  9. Sa IP Catalog hanapin at idagdag ang Intel P-Tile Avalon-ST Hard IP para sa PCI Express.
  10. Sa dialog box ng Bagong IP Variant, tumukoy ng pangalan para sa iyong IP. I-click ang Gumawa.
  11. Sa mga tab na Top-Level Settings at PCIe* Settings, tukuyin ang mga parameter para sa iyong IP variation. Kung ikaw ay gumagamit ng SR-IOV na disenyo halample, gawin ang mga sumusunod na hakbang upang paganahin ang SR-IOV:
    a. Sa tab na PCIe* Device sa ilalim ng tab na PCIe* PCI Express / PCI Capabilities, lagyan ng check ang kahon na Paganahin ang maraming pisikal na function.
    b. Sa tab na PCIe* Multifunction at SR-IOV System Settings, lagyan ng check ang kahon Paganahin ang suporta sa SR-IOV at tukuyin ang bilang ng mga PF at VF. Para sa mga x8 configuration, lagyan ng check ang mga kahon na Paganahin ang maramihang pisikal na paggana at Paganahin ang suporta sa SR-IOV para sa parehong mga tab na PCIe0 at PCIe1.
    c. Sa tab na PCIe* MSI-X sa ilalim ng tab na PCIe* PCI Express / PCI Capabilities, paganahin ang feature na MSI-X kung kinakailangan.
    d. Sa tab na PCIe* Base Address Registers, paganahin ang BAR0 para sa parehong PF at VF.
    e. Ang iba pang mga setting ng parameter ay hindi sinusuportahan para sa disenyo na ito halample.
  12. Sa Example Designs tab, gawin ang mga sumusunod na pagpipilian:
    a. Para kay Example Disenyo Files, i-on ang mga opsyon sa Simulation at Synthesis.
    Kung hindi mo kailangan ang mga simulation o synthesis na ito files, ang pag-iwan sa kaukulang (mga) opsyon na naka-off ay makabuluhang binabawasan ang examporas ng pagbuo ng disenyo.
    b. Para sa Generated HDL Format, ang Verilog lang ang available sa kasalukuyang release.
    c. Para sa Target Development Kit, piliin ang alinman sa Intel Stratix 10 DX P-Tile ES1 FPGA Development Kit, ang Intel Stratix 10 DX P-Tile Production FPGA Development Kit o ang Intel Agilex F-Series P-Tile ES0 FPGA Development Kit.
    13. Piliin ang Bumuo ng Halample Disenyo upang lumikha ng isang disenyo halample na maaari mong gayahin at i-download sa hardware. Kung pipiliin mo ang isa sa mga P-Tile development board, io-overwrite ng device sa board na iyon ang device na dating pinili sa proyekto ng Intel Quartus Prime kung iba ang mga device. Kapag hiniling sa iyo ng prompt na tukuyin ang direktoryo para sa iyong exampsa disenyo, maaari mong tanggapin ang default na direktoryo, ./intel_pcie_ptile_ast_0_example_design, o pumili ng ibang direktoryo.
    Larawan 12. Example Tab ng Mga Disenyo
    intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 12
  13. I-click ang Tapos na. Maaari mong i-save ang iyong .ip file kapag sinenyasan, ngunit hindi kinakailangan na magamit ang exampang disenyo.
  14. Buksan ang exampang disenyo ng proyekto.
  15. I-compile ang exampAng disenyo ng proyekto upang makabuo ng .sof file para sa kumpletong exampang disenyo. Ito file ay kung ano ang iyong dina-download sa isang board upang magsagawa ng pag-verify ng hardware.
  16. Close mo yung ex moampang disenyo ng proyekto.
    Tandaan na hindi mo mababago ang mga alokasyon ng PCIe pin sa proyekto ng Intel Quartus Prime. Gayunpaman, upang mapagaan ang pagruruta ng PCB, maaari kang kumuha ng advantage ng mga tampok na pagbabaliktad ng lane at polarity inversion na sinusuportahan ng IP na ito.

2.3. Pagtulad sa Disenyo Halample
Kasama sa simulation setup ang paggamit ng Root Port Bus Functional Model (BFM) para gamitin ang P-tile Avalon Streaming IP para sa PCIe (DUT) tulad ng ipinapakita sa sumusunod
pigura.
Larawan 13. Disenyo ng PIO Halampang Simulation Testbench

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 13

Para sa higit pang mga detalye sa testbench at ang mga module sa loob nito, sumangguni sa Testbench sa pahina 15.
Ang sumusunod na flow diagram ay nagpapakita ng mga hakbang upang gayahin ang disenyo halample:
Larawan 14. Pamamaraan

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 14

  1.  Baguhin sa direktoryo ng simulation ng testbench, / pcie_ed_tb/pcie_ed_tb/sim/ /simulator.
  2. Patakbuhin ang simulation script para sa simulator na gusto mo. Sumangguni sa talahanayan sa ibaba.
  3. Pag-aralan ang mga resulta.

Tandaan: Hindi sinusuportahan ng P-Tile ang parallel PIPE simulation.
Talahanayan 1. Mga Hakbang sa Pagpapatakbo ng Simulation

Simulator Direktoryo ng Paggawa Mga tagubilin
ModelSim* SE, Siemens* EDA QuestaSim*- Intel FPGA Edition <example_design>/pcie_ed_tb/ pcie_ed_tb/sim/mentor/ 1. I-invoke ang vsim (sa pamamagitan ng pag-type ng vsim, na nagdudulot ng console window kung saan maaari mong patakbuhin ang mga sumusunod na command).
2. gawin ang msim_setup.tcl
Tandaan: Bilang kahalili, sa halip na gawin ang Hakbang 1 at 2, maaari mong i-type ang: vsim -c -do msim_setup.tcl.
3. ld_debug
4. tumakbo -lahat
5. Ang matagumpay na simulation ay nagtatapos sa sumusunod na mensahe, "Nahinto ang simulation dahil sa matagumpay na pagkumpleto!"
VCS* <example_design>/pcie_ed_tb/ pcie_ed_tb/sim/synopsys/vcs 1. I-type ang sh vcs_setup.sh USER_DEFINED_COMPILE_OPTIONS=”” USER_DEFINED_ELAB_OPTIONS=”-xlrm\ uniq_prior_final” USER_DEFINED_SIM_OPTIONS=””
nagpatuloy...
Simulator Direktoryo ng Paggawa Mga tagubilin
    Tandaan: Ang command sa itaas ay isang single-line na command.
2. Ang matagumpay na simulation ay nagtatapos sa sumusunod na mensahe, "Nahinto ang simulation dahil sa matagumpay na pagkumpleto!"
Tandaan: Upang magpatakbo ng simulation sa interactive mode, gamitin ang mga sumusunod na hakbang: (kung nakabuo ka na ng simv executable sa non-interactive mode, tanggalin ang simv at simv.diadir)
1. Buksan ang vcs_setup.sh file at magdagdag ng opsyon sa pag-debug sa utos ng VCS: vcs -debug_access+r
2. Buuin ang disenyo halample: sh vcs_setup.sh USER_DEFINED_ELAB_OPTIONS=”- xlrm\ uniq_prior_final” SKIP_SIM=1
3. Simulan ang simulation sa interactive na mode:
simv -gui &

Ginagaya ng testbench na ito ang hanggang sa isang variant ng Gen4 x16.
Ang simulation ay nag-uulat, "Nahinto ang simulation dahil sa matagumpay na pagkumpleto" kung walang mga error na nangyari.
2.3.1. Testbench
Gumagamit ang testbench ng test driver module, altpcietb_bfm_rp_gen4_x16.sv, upang simulan ang configuration at mga transaksyon sa memorya. Sa startup, ang test driver module ay nagpapakita ng impormasyon mula sa Root Port at Endpoint Configuration Space registers, para maiugnay mo ang mga parameter na iyong tinukoy gamit ang Parameter Editor.
Ang exampAng disenyo at testbench ay dynamic na nabuo batay sa configuration na pipiliin mo para sa P-Tile IP para sa PCIe. Ginagamit ng testbench ang mga parameter na iyong tinukoy sa Parameter Editor sa Intel Quartus Prime. Ginagaya ng testbench na ito ang hanggang sa isang ×16 PCI Express na link gamit ang serial interface ng PCI Express. Ang disenyo ng testbench ay nagbibigay-daan sa higit sa isang link ng PCI Express na ma-simulate sa isang pagkakataon. Ang sumusunod na figure ay nagpapakita ng isang mataas na antas view ng disenyo ng PIO halample.
Larawan 15. Disenyo ng PIO Halampang Simulation Testbench

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 15

Ang pinakamataas na antas ng testbench ay nagpapakita ng mga sumusunod na pangunahing module:

  • altpcietb_bfm_rp_gen4x16.sv —Ito ang Root Port PCIe BFM.
    //Dad ng direktoryo
    /intel_pcie_ptile_ast_0_example_design/pcie_ed_tb/ip/
    pcie_ed_tb/dut_pcie_tb_ip/intel_pcie_ptile_tbed_ /sim
  • pcie_ed_dut.ip: Ito ang disenyo ng Endpoint na may mga parameter na iyong tinukoy.
    //Dad ng direktoryo
    /intel_pcie_ptile_ast_0_example_design/ip/pcie_ed
  • pcie_ed_pio0.ip: Ang module na ito ay isang target at pasimuno ng mga transaksyon para sa PIO design example.
    //Dad ng direktoryo
    /intel_pcie_ptile_ast_0_example_design/ip/pcie_ed
  • pcie_ed_sriov0.ip: Ang module na ito ay isang target at pasimuno ng mga transaksyon para sa disenyo ng SR-IOV example.
    //Dad ng direktoryo
    /intel_pcie_ptile_ast_0_example_design/ip/pcie_ed

Larawan 16. Disenyo ng SR-IOV Halampang Simulation Testbench

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 16

Bilang karagdagan, ang testbench ay may mga gawain na nagsasagawa ng mga sumusunod na gawain:

  • Bumubuo ng reference na orasan para sa Endpoint sa kinakailangang frequency.
  • Nagbibigay ng pag-reset ng PCI Express sa pagsisimula.

Para sa higit pang mga detalye sa Root Port BFM, sumangguni sa TestBench chapter ng Intel FPGA P-Tile Avalon streaming IP para sa Gabay sa Gumagamit ng PCI Express.
Kaugnay na Impormasyon
Intel FPGA P-Tile Avalon streaming IP para sa PCI Express User Guide
2.3.1.1. Test Driver Module
Ang module ng driver ng pagsubok, intel_pcie_ptile_tbed_hwtcl.v, ay nagpapakilala sa pinakamataas na antas ng BFM,altpcietb_bfm_top_rp.v.
Kinukumpleto ng top-level na BFM ang mga sumusunod na gawain:

  1. I-instantiates ang driver at monitor.
  2. Pinapasigla ang Root Port BFM.
  3. I-instantiates ang serial interface.

Ang configuration module, altpcietb_g3bfm_configure.v, ay gumaganap ng mga sumusunod na gawain:

  1. Kino-configure at itinatalaga ang mga BAR.
  2. Kino-configure ang Root Port at Endpoint.
  3. Nagpapakita ng komprehensibong Configuration Space, BAR, MSI, MSI-X, at mga setting ng AER.

2.3.1.2. Disenyo ng PIO Halampang Testbench

Ipinapakita ng figure sa ibaba ang disenyo ng PIO halampang hierarchy ng disenyo ng simulation. Ang mga pagsubok para sa disenyo ng PIO halampTinutukoy ang mga ito gamit ang apps_type_hwtcl parameter na nakatakda sa
3. Ang mga pagsubok na tumatakbo sa ilalim ng halaga ng parameter na ito ay tinukoy sa ebfm_cfg_rp_ep_rootport, find_mem_bar at downstream_loop.
Larawan 17. Disenyo ng PIO Halample Simulation Design Hierarchy

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 17

Ang testbench ay nagsisimula sa link training at pagkatapos ay ina-access ang configuration space ng IP para sa enumeration. Isang gawain na tinatawag na downstream_loop (tinukoy sa Root Port
PCIe BFM altpcietb_bfm_rp_gen4_x16.sv) pagkatapos ay nagsasagawa ng PCIe link test. Ang pagsusulit na ito ay binubuo ng mga sumusunod na hakbang:

  1. Mag-isyu ng memory write command para magsulat ng isang dword ng data sa on-chip memory sa likod ng Endpoint.
  2. Mag-isyu ng memory read command upang basahin muli ang data mula sa on-chip memory.
  3. Ihambing ang nabasang data sa pagsulat ng data. Kung magkatugma ang mga ito, ibibilang ito ng pagsubok bilang Pass.
  4. Ulitin ang Hakbang 1, 2 at 3 para sa 10 pag-ulit.

Ang unang memory write ay nagaganap sa paligid ng 219 sa amin. Sinusundan ito ng memory read sa Avalon-ST RX interface ng P-tile Hard IP para sa PCIe. Ang Completion TLP ay lilitaw sa ilang sandali pagkatapos ng memory read request sa Avalon-ST TX interface.
2.3.1.3. Disenyo ng SR-IOV Halampang Testbench
Ang figure sa ibaba ay nagpapakita ng SR-IOV na disenyo halampang hierarchy ng disenyo ng simulation. Ang mga pagsubok para sa disenyo ng SR-IOV halample ay ginagampanan ng gawaing tinatawag na sriov_test,
na tinukoy sa altpcietb_bfm_cfbp.sv.
Larawan 18. Disenyo ng SR-IOV Halample Simulation Design Hierarchy

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 18

Sinusuportahan ng SR-IOV testbench ang hanggang dalawang Physical Functions (PF) at 32 Virtual Functions (VFs) bawat PF.
Ang testbench ay nagsisimula sa link training at pagkatapos ay ina-access ang configuration space ng IP para sa enumeration. Pagkatapos nito, ginagawa nito ang mga sumusunod na hakbang:

  1. Magpadala ng memory write request sa isang PF na sinusundan ng memory read request para basahin muli ang parehong data para sa paghahambing. Kung ang read data ay tumutugma sa write data, ito ay
    isang Pass. Ang pagsusulit na ito ay isinasagawa ng gawaing tinatawag na my_test (tinukoy sa altpcietb_bfm_cfbp.v). Ang pagsusulit na ito ay inuulit ng dalawang beses para sa bawat PF.
  2. Magpadala ng memory write request sa isang VF na sinusundan ng memory read request para basahin muli ang parehong data para sa paghahambing. Kung ang read data ay tumutugma sa write data, ito ay
    isang Pass. Ang pagsusulit na ito ay isinasagawa ng gawaing tinatawag na cfbp_target_test (tinukoy sa altpcietb_bfm_cfbp.v). Ang pagsusulit na ito ay paulit-ulit para sa bawat VF.

Ang unang memory write ay nagaganap sa paligid ng 263 sa amin. Sinusundan ito ng memory read sa Avalon-ST RX interface ng PF0 ng P-tile Hard IP para sa PCIe. Ang Completion TLP ay lilitaw sa ilang sandali pagkatapos ng memory read request sa Avalon-ST TX interface.
2.4. Pag-iipon ng Disenyo Halample

  1. Mag-navigate sa /intel_pcie_ptile_ast_0_example_design/ at buksan ang pcie_ed.qpf.
  2. Kung pipiliin mo ang alinman sa dalawang sumusunod na development kit, ang mga setting na nauugnay sa VID ay kasama sa .qsf file ng nabuong disenyo halample, at hindi mo kinakailangang idagdag ang mga ito nang manu-mano. Tandaan na ang mga setting na ito ay partikular sa board.
    • Intel Stratix 10 DX P-Tile ES1 FPGA development kit
    • Intel Stratix 10 DX P-Tile Production FPGA development kit
    • Intel Agilex F-Series P-Tile ES0 FPGA development kit
  3. Sa Processing menu, piliin ang Start Compilation.

2.5. Pag-install ng Linux Kernel Driver

Bago mo masubukan ang disenyo halampsa hardware, dapat mong i-install ang Linux kernel
driver. Maaari mong gamitin ang driver na ito upang maisagawa ang mga sumusunod na pagsubok:
• Isang pagsubok sa link ng PCIe na nagsasagawa ng 100 pagsusulat at pagbabasa
• Memory space DWORD
nagbabasa at nagsusulat
• Ang Configuration Space DWORD ay nagbabasa at nagsusulat
(1)
Bilang karagdagan, maaari mong gamitin ang driver upang baguhin ang halaga ng mga sumusunod na parameter:
• Ang BAR na ginagamit
• Ang napiling aparato (sa pamamagitan ng pagtukoy sa mga numero ng bus, device at function (BDF) para sa
ang aparato)
Kumpletuhin ang mga sumusunod na hakbang upang i-install ang kernel driver:

  1. Mag-navigate sa ./software/kernel/linux sa ilalim ng exampAng direktoryo ng pagbuo ng disenyo.
  2. Baguhin ang mga pahintulot sa pag-install, pag-load, at pag-unload files:
    $ chmod 777 i-install ang load unload
  3. I-install ang driver:
    $ sudo ./install
  4. I-verify ang pag-install ng driver:
    $ lsmod | grep intel_fpga_pcie_drv
    Inaasahang resulta:
    intel_fpga_pcie_drv 17792 0
  5. I-verify na kinikilala ng Linux ang disenyo ng PCIe halample:
    $ lspci -d 1172:000 -v | grep intel_fpga_pcie_drv
    Tandaan: Kung binago mo ang Vendor ID, palitan ang bagong Vendor ID para sa Intel's
    Vendor ID sa command na ito.
    Inaasahang resulta:
    Ginagamit ang driver ng kernel: intel_fpga_pcie_drv

2.6. Pagpapatakbo ng Disenyo Halample
Narito ang mga pagsubok na operasyon na maaari mong gawin sa P-Tile Avalon-ST PCIe na disenyo halamples:

  1. Sa buong gabay ng gumagamit na ito, ang mga terminong salita, DWORD at QWORD ay may parehong kahulugan na mayroon sila sa PCI Express Base Specification. Ang isang salita ay 16 bits, ang DWORD ay 32 bits, at ang QWORD ay 64 bits.

Talahanayan 2. Mga Operasyon ng Pagsubok na Sinusuportahan ng P-Tile Avalon-ST PCIe Design Halamples

 Mga operasyon  Kinakailangang BAR Sinusuportahan ng P-Tile Avalon-ST PCIe Design Example
0: Pagsubok sa link – 100 pagsusulat at pagbabasa 0 Oo
1: Sumulat ng memory space 0 Oo
2: Basahin ang memory space 0 Oo
3: Sumulat ng espasyo sa pagsasaayos N/A Oo
4: Basahin ang espasyo sa pagsasaayos N/A Oo
5: Baguhin ang BAR N/A Oo
6: Baguhin ang device N/A Oo
7: Paganahin ang SR-IOV N/A Oo (*)
8: Magsagawa ng link test para sa bawat pinaganang virtual function na kabilang sa kasalukuyang device  N/A  Oo (*)
9: Magsagawa ng DMA N/A Hindi
10: Ihinto ang programa N/A Oo

Tandaan: (*) Ang mga pagsubok na operasyon na ito ay magagamit lamang kapag ang disenyo ng SR-IOV halampnapili si le.
2.6.1. Pagpapatakbo ng PIO Design Halample

  1. Mag-navigate sa ./software/user/example sa ilalim ng disenyo halampang direktoryo.
  2. Buuin ang disenyo halampang aplikasyon:
    $ gumawa
  3. Patakbuhin ang pagsubok:
    $ sudo ./intel_fpga_pcie_link_test
    Maaari mong patakbuhin ang pagsubok ng link ng Intel FPGA IP PCIe sa manual o awtomatikong mode. Pumili mula sa:
    • Sa awtomatikong mode, awtomatikong pinipili ng application ang device. Pinipili ng pagsubok ang Intel PCIe device na may pinakamababang BDF sa pamamagitan ng pagtutugma sa Vendor ID.
    Pinipili din ng pagsusulit ang pinakamababang magagamit na BAR.
    • Sa manual mode, ang pagsubok ay nagtatanong sa iyo para sa bus, device, at function number at BAR.
    Para sa Intel Stratix 10 DX o Intel Agilex Development Kit, matutukoy mo ang
    BDF sa pamamagitan ng pag-type ng sumusunod na command:
    $ lspci -d 1172:
    4. Narito ang mga sampMga transcript para sa awtomatiko at manu-manong mga mode:
    Awtomatikong mode:

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 19intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 20

Manual mode:

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 21

Kaugnay na Impormasyon
Tapos na ang PCIe Link Inspectorview
Gamitin ang PCIe Link Inspector para subaybayan ang link sa Physical, Data Link at Transaction Layers.
2.6.2. Pagpapatakbo ng SR-IOV Design Halample

Narito ang mga hakbang upang subukan ang disenyo ng SR-IOV halampsa hardware:

  1. Patakbuhin ang pagsubok ng link ng Intel FPGA IP PCIe sa pamamagitan ng pagpapatakbo ng sudo ./
    intel_fpga_pcie_link_test command at pagkatapos ay piliin ang opsyon 1:
    Manu-manong pumili ng device.
  2. Ipasok ang BDF ng pisikal na function kung saan inilalaan ang mga virtual na function.
  3. Ipasok ang BAR "0" upang magpatuloy sa menu ng pagsubok.
  4. Ipasok ang opsyon 7 upang paganahin ang SR-IOV para sa kasalukuyang device.
  5. Ilagay ang bilang ng mga virtual na function na paganahin para sa kasalukuyang device.
    intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 22
  6. Ipasok ang opsyon 8 upang magsagawa ng link test para sa bawat pinaganang virtual function na inilaan para sa pisikal na function. Ang link test application ay gagawa ng 100 memory writes na may isang solong dword ng data bawat isa at pagkatapos ay basahin ang data pabalik para sa pagsusuri. Ipi-print ng application ang bilang ng mga virtual na function na nabigo sa pagsubok ng link sa pagtatapos ng pagsubok.
    intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 237. Sa isang bagong terminal, patakbuhin ang lspci –d 1172: | grep -c “Altera” na utos para i-verify ang enumeration ng mga PF at VF. Ang inaasahang resulta ay ang kabuuan ng bilang ng mga pisikal na pag-andar at bilang ng mga virtual na pag-andar.

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - 24

P-tile Avalon Streaming IP para sa PCI Express Design

Example User Guide Archives

Bersyon ng Intel Quartus Prime Gabay sa Gumagamit
21.2 P-tile Avalon Streaming IP para sa PCI Express Design Halample Gabay sa Gumagamit
20.3 P-tile Avalon Streaming IP para sa PCI Express Design Halample Gabay sa Gumagamit
20.2 P-tile Avalon Streaming IP para sa PCI Express Design Halample Gabay sa Gumagamit
20.1 P-tile Avalon Streaming IP para sa PCI Express Design Halample Gabay sa Gumagamit
19.4 P-tile Avalon Streaming IP para sa PCI Express Design Halample Gabay sa Gumagamit
19.1.1 P-tile Avalon Streaming IP para sa PCI Express Design Halample Gabay sa Gumagamit

Intel Corporation. Lahat ng karapatan ay nakalaan. Ang Intel, ang logo ng Intel, at iba pang mga marka ng Intel ay mga trademark ng Intel Corporation o mga subsidiary nito. Ginagarantiyahan ng Intel ang pagganap ng mga produktong FPGA at semiconductor nito sa kasalukuyang mga detalye alinsunod sa karaniwang warranty ng Intel, ngunit inilalaan ang karapatang gumawa ng mga pagbabago sa anumang produkto at serbisyo anumang oras nang walang abiso. Walang pananagutan o pananagutan ang Intel na nagmumula sa aplikasyon o paggamit ng anumang impormasyon, produkto, o serbisyong inilarawan dito maliban kung hayagang sinang-ayunan ng Intel. Pinapayuhan ang mga customer ng Intel na kunin ang pinakabagong bersyon ng mga detalye ng device bago umasa sa anumang nai-publish na impormasyon at bago maglagay ng mga order para sa mga produkto o serbisyo. *Ang ibang mga pangalan at tatak ay maaaring i-claim bilang pag-aari ng iba.
ISO
9001:2015
Nakarehistro

Kasaysayan ng Pagbabago ng Dokumento para sa Intel P-Tile Avalon

Pag-stream ng Hard IP para sa PCIe Design Halample Gabay sa Gumagamit

Bersyon ng Dokumento Bersyon ng Intel Quartus Prime Bersyon ng IP Mga pagbabago
2021.10.04 21.3 6.0.0 Binago ang mga sinusuportahang configuration para sa SR-IOV na disenyo halampmula sa Gen3 x16 EP at Gen4 x16 EP hanggang Gen3 x8 EP at Gen4 x8 EP sa Functional na Paglalarawan para sa Single Root I/O Virtualization (SR-IOV) Design Exampang seksyon.
Idinagdag ang suporta para sa Intel Stratix 10 DX P-tile Production FPGA Development Kit sa Generating the Design Exampang seksyon.
2021.07.01 21.2 5.0.0 Inalis ang mga simulation waveform para sa PIO at SR-IOV na disenyo halamples mula sa seksyong Simulating the Design Example.
Na-update ang command upang ipakita ang BDF sa seksyon
Pagpapatakbo ng PIO Design Halample.
2020.10.05 20.3 3.1.0 Inalis ang seksyong Mga Register mula noong disenyo ng Avalon Streaming halampwalang control register ang mga les.
2020.07.10 20.2 3.0.0 Nagdagdag ng mga simulation waveform, mga paglalarawan ng test case at mga paglalarawan ng resulta ng pagsubok para sa disenyo halamples.
Nagdagdag ng mga tagubilin sa simulation para sa ModelSim simulator sa Simulating the Design Exampang seksyon.
2020.05.07 20.1 2.0.0 Na-update ang pamagat ng dokumento sa Intel FPGA P-Tile Avalon streaming IP para sa PCI Express Design Example User Guide upang matugunan ang mga bagong alituntunin ng legal na pagpapangalan.
Na-update ang VCS interactive mode simulation command.
2019.12.16 19.4 1.1.0 Idinagdag ang disenyo ng SR-IOV halampang paglalarawan.
2019.11.13 19.3 1.0.0 Idinagdag ang Gen4 x8 Endpoint at Gen3 x8 Endpoint sa listahan ng mga sinusuportahang configuration.
2019.05.03 19.1.1 1.0.0 Paunang paglabas.

Intel Corporation. Lahat ng karapatan ay nakalaan. Ang Intel, ang logo ng Intel, at iba pang mga marka ng Intel ay mga trademark ng Intel Corporation o mga subsidiary nito. Ginagarantiyahan ng Intel ang pagganap ng mga produktong FPGA at semiconductor nito sa kasalukuyang mga detalye alinsunod sa karaniwang warranty ng Intel, ngunit inilalaan ang karapatang gumawa ng mga pagbabago sa anumang produkto at serbisyo anumang oras nang walang abiso. Walang pananagutan o pananagutan ang Intel na nagmumula sa aplikasyon o paggamit ng anumang impormasyon, produkto, o serbisyong inilarawan dito maliban kung hayagang sinang-ayunan ng Intel. Pinapayuhan ang mga customer ng Intel na kunin ang pinakabagong bersyon ng mga detalye ng device bago umasa sa anumang nai-publish na impormasyon at bago maglagay ng mga order para sa mga produkto o serbisyo. *Ang ibang mga pangalan at tatak ay maaaring i-claim bilang pag-aari ng iba.
ISO
9001:2015
Nakarehistro

logo ng intelSIMBOL Online na Bersyon
intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example - icon Magpadala ng Feedback
ID: 683038
UG-20234
Bersyon: 2021.10.04

Mga Dokumento / Mga Mapagkukunan

intel FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example [pdf] Gabay sa Gumagamit
FPGA P-Tile, Avalon Streaming IP para sa PCI Express Design Example, FPGA P-Tile Avalon Streaming IP para sa PCI Express Design Example, FPGA P-Tile Avalon Streaming IP

Mga sanggunian

Mag-iwan ng komento

Ang iyong email address ay hindi maipa-publish. Ang mga kinakailangang field ay minarkahan *