intel - logoFPGA SDK ho an'ny OpenCL
Torolàlana ho an'ny mpampiasa

UG-OCL009
2017.05.08
Nohavaozina farany ho an'ny Intel® Quartus® Prime Design Suite: 17.0

RENPHO RF FM059HS WiFi Smart Foot Massager - kisary 5Raiso amin ny
SAMSUNG SM A136UZKZAIO Galaxy A13 5G Smartphone - kisary 12Alefaso ny valiny

Intel® FPGA SDK ho an'ny OpenCL™ Intel® Cyclone®V SoC Development Kit Reference Platform Porting Guide

V SoC Development Kit Reference Platform Porting Guide dia manoritsoritra ny famolavolana fitaovana sy rindrambaiko an'ny Intel Cyclone V SoC Development Kit Reference Platform (c5soc) ampiasaina amin'ny Intel Software Development Kit (SDK) ho an'ny OpenCL Ny Intel ® FPGA SDK ho an'ny OpenCL ™ Intel Cyclone ® . Alohan'ny hanombohanao dia manoro hevitra mafy i Intel mba hahafantaranao ny votoatin'ireto antontan-taratasy manaraka ireto:

  1. Intel FPGA SDK ho an'ny OpenCLIntel Cyclone V SoC Torolàlana fanombohana
  2. Intel FPGA SDK ho an'ny OpenCL Custom Platform Toolkit Torolàlana ho an'ny mpampiasa
  3. Boky Torolàlana momba ny fitaovana Cyclone V, Boky 3: Boky Torolàlana ara-teknika momba ny rafi-pamokarana mafy Ho fanampin'izany, jereo ny Cyclone V SoC Development Kit sy SoC Embedded Design Suite amin'ny Altera webtranokala raha mila fanazavana fanampiny. 1 2

Attention: Intel dia mihevitra fa manana fahatakarana lalina momba ny Intel FPGA SDK ho an'ny OpenCL Custom Platform Toolkit User Guide ianao. Ny Cyclone V SoC Development Kit Reference Platform Porting Guide dia tsy mamaritra ny fampiasana ny SDK's Custom Platform Toolkit amin'ny fampiharana ny Custom Platform ho an'ny Cyclone V SoC Development Kit. Izy io dia mamaritra ny fahasamihafana misy eo amin'ny fanohanan'ny SDK ao amin'ny Cyclone V SoC Development Kit sy ny Intel FPGA SDK generic ho an'ny OpenCL Custom Platform.

Rohy mifandraika

  • Intel FPGA SDK ho an'ny OpenCL Cyclone V SoC Torolàlana fanombohana
  • Intel FPGA SDK ho an'ny OpenCL Custom Platform Toolkit Torolàlana ho an'ny mpampiasa
  • Boky Torolàlana momba ny fitaovana Cyclone V, Boky 3: Boky Torolàlana ara-teknika momba ny rafi-pamokarana mafy
  • Cyclone V SoC Development Kit sy SoC Embedded Design Suite pejy ao amin'ny Altera webtoerana
  1. Ny OpenCL sy ny logo OpenCL dia marika famantarana Apple Inc. nampiasain'ny Khronos Group™.
  2. Ny Intel FPGA SDK ho an'ny OpenCL dia mifototra amin'ny Khronos Specification navoaka, ary nandalo ny fizotran'ny fitsapana Khronos Conformance. Ny sata mifanaraka amin'izao fotoana izao dia azo jerena ao amin'ny www.khronos.org/conformance.

Intel Corporation. Zo rehetra voatokana. Intel, ny Intel logo, Altera, Arria, Cyclone, Enpirion, MAX, Nios, Quartus ary Stratix teny sy logos dia marika famantarana an'ny Intel Corporation na ireo sampan-draharahany any Etazonia sy/na firenena hafa. Ny Intel dia manome antoka ny fahombiazan'ny vokatra FPGA sy ny semiconductor amin'ny fepetra ankehitriny mifanaraka amin'ny fiantohana manara-penitra an'ny Intel, saingy manana zo hanova ny vokatra sy serivisy amin'ny fotoana rehetra tsy misy filazana. Tsy mandray andraikitra na andraikitra avy amin'ny fampiharana na fampiasana fampahalalana, vokatra na serivisy voalaza eto ny Intel afa-tsy izay neken'ny Intel an-tsoratra. Manoro hevitra ny mpanjifa Intel mba hahazo ny kinova farany amin'ny fanondroana fitaovana alohan'ny hianteherana amin'ny fampahalalana navoaka sy alohan'ny hametrahana baiko ho an'ny vokatra na serivisy.
* Ny anarana sy ny marika hafa dia azo lazaina ho fananan'ny hafa.

1.1.1 Cyclone V SoC Development Kit Reference Platform Board Variants
Ny Intel FPGA SDK ho an'ny OpenCL Cyclone V SoC Development Kit Reference Platform dia misy karazany roa.

  • c5soc board
    Ity birao default ity dia manome fidirana amin'ny banky fitadidiana DDR roa. Ny HPS DDR dia azon'ny FPGA sy ny CPU. Ny FPGA DDR dia tsy misy afa-tsy ny FPGA ihany.
  • c5soc_sharedonly board
    Ity variana board ity dia tsy misy afa-tsy fifandraisana HPS DDR. Ny FPGA DDR dia tsy azo idirana. Ity variana board ity dia mahomby kokoa amin'ny faritra satria kely kokoa ny fitaovana ilaina hanohanana banky fitadidiana DDR iray. Ny birao c5soc_sharedonly dia sehatra prototyping tsara ho an'ny birao famokarana farany miaraka amin'ny banky fitadidiana DDR tokana.
    Mba hikendry an'io variana board io rehefa manangona ny kernel OpenCL anao dia ampidiro ny safidy -board c5soc_sharedonly ao amin'ny baiko aoc.
    Raha mila fanazavana fanampiny momba ny –board safidy amin'ny baiko aoc, jereo ny Intel FPGA SDK ho an'ny OpenCL Programming Guide.

Rohy mifandraika
Manangona Kernel ho an'ny Birao FPGA manokana (–board )
1.1.2 Ny votoatin'ny Cyclone V SoC Development Kit Reference Platform
Ny Cyclone V SoC Development Kit Reference Platform dia ahitana ireto manaraka ireto files sy ny lahatahiry:

File na Directory Description
board_env.xml Fiteny marika azo havaozina (XML) file izay mamaritra ny c5soc amin'ny Intel FPGA SDK ho an'ny OpenCL.
linux_sd_card_image.tgz Sary karatra SD tselatra voaporitra file izay mirakitra ny zava-drehetra ilain'ny mpampiasa SDK hampiasa ny Cyclone V SoC Development Kit miaraka amin'ny SDK.
arm32 Directory misy ireto manaraka ireto:

1.1.3 Ireo endri-javatra mifandraika amin'ny Cyclone V SoC Development Kit

Ity lisitra manaraka ity dia manasongadina ny Cyclone V SoC Development Kit sy ny endri-javatra mifandraika amin'ny Intel FPGA SDK ho an'ny OpenCL:

  • Dual-core ARM Cortex-A9 CPU mandeha 32-bit Linux.
  • Fiarabe eXtensible Interface (AXI) mandroso eo anelanelan'ny HPS sy ny lamba fototra FPGA.
  • Mpandrindra fitadidiana DDR mafy roa, samy mifandray amin'ny 1 gigabyte (GB) DDR3 SDRAM.
    - Ny mpanara-maso DDR iray dia azo idirana amin'ny fototry ny FPGA ihany (izany hoe FPGA DDR).
    — Ny mpanara-maso DDR iray hafa dia azon'ny HPS sy ny FPGA (izany hoe HPS DDR). Ity controller ifampizarana ity dia mamela ny fizarana fahatsiarovana maimaim-poana eo amin'ny CPU sy ny FPGA core.
  • Ny CPU dia afaka manamboatra ny lamba fototra FPGA.

1.1.3.1 Cyclone V SoC Development Kit Reference Platform Design Tanjona sy fanapahan-kevitra Ny Intel dia mametraka ny fampiharana ny Cyclone V SoC Development Kit Reference Platform amin'ny tanjona sy fanapahan-kevitra maro. Manoro hevitra ny Intel mba handinika ireo tanjona sy fanapahan-kevitra ireo ianao rehefa mandefa an'ity Platform Reference ity amin'ny biraonao SoC FPGA.
Ireto ambany ireto ny tanjona famolavolana c5soc:

  1. Omeo ny bandwidth avo indrindra eo anelanelan'ny kernel ao amin'ny FPGA sy ny rafitra fitadidiana DDR.
  2. Ataovy azo antoka fa ny kajy ao amin'ny FPGA (izany hoe, OpenCL kernels) dia tsy hanelingelina ny asa CPU hafa izay mety ahitana ny servicing periferika.
  3. Avelao ny loharanon-karena FPGA betsaka araka izay azo atao ho an'ny kajy kernel fa tsy ny singa interface.

Ireto ambany ireto ny fanapahan-kevitra momba ny famolavolana avo lenta izay vokatry ny tanjon'ny famolavolana Intel:

  1. Ny Reference Platform dia tsy mampiasa afa-tsy ireo mpanara-maso fitadidiana DDR mafy miaraka amin'ny fikirakirana malalaka indrindra (256 bits).
  2. Ny FPGA dia mifandray mivantana amin'ny HPS DDR memory controller, tsy misy ny AXI bus sy ny L3 switch ao anatin'ny HPS. Ny fifandraisana mivantana dia manome ny bandwidth tsara indrindra ho an'ny DDR, ary mitazona ny kajy FPGA tsy hanelingelina ny fifandraisana eo amin'ny CPU sy ny manodidina azy.
  3. Ny fidirana amin'ny fitadidiana mivantana (SG-DMA) dia tsy ao anatin'ny lojika interface tsara FPGA. Raha tokony hamindra angon-drakitra betsaka eo amin'ny rafitra fitadidiana DDR, tehirizo ao amin'ny HPS DDR iombonana ny angona. Ny fidirana mivantana amin'ny fitadidiana CPU amin'ny alàlan'ny FPGA dia mahomby kokoa noho ny DMA. Mitahiry loharanom-pitaovana (izany hoe faritra FPGA) ary manatsotra ny mpamily kernel Linux.
    fampitandremana: Ny famindrana fahatsiarovana eo amin'ny rafitra HPS DDR iombonana sy ny rafitra DDR izay tsy azon'ny FPGA ihany no tena miadana. Raha misafidy ianao
    mamindra fitadidiana amin'io fomba io, ampiasao ho an'ny angona kely fotsiny.
  4. Ny mpampiantrano sy ny fitaovana dia manao famindrana angon-drakitra tsy DMA eo anelanelan'izy ireo amin'ny alàlan'ny tetezana HPS-to-FPGA (H2F), mampiasa seranana 32-bit tokana. Ny antony dia, raha tsy misy DMA, ny kernel Linux dia afaka mamoaka fangatahana mamaky na manoratra 32-bit tokana, noho izany dia tsy ilaina ny manana fifandraisana midadasika kokoa.
  5. Mandefa famantarana mifehy ny fitaovana amin'ny alalan'ny tetezana H2F (LH2F) maivana ny mpampiantrano.
    Satria ny famantarana fanaraha-maso avy amin'ny mpampiantrano mankany amin'ny fitaovana dia famantarana ambany bandwidth, ny tetezana LH2F dia mety amin'ny asa.

1.2 Fandefasana ny sehatra fanondro mankany amin'ny birao FPGA SoC anao
Mba hampidirana ny Cyclone V SoC Development Kit Reference Platform amin'ny solaitrao SoC FPGA dia ataovy ireto asa manaraka ireto:

  1. Safidio ny fahatsiarovana DDR iray na ny kinova fahatsiarovana DDR roa an'ny c5soc Reference Platform ho fanombohana ny famolavolanao.
  2. Havaozy ny toerana misy ny pin ao amin'ny ALTERAOCLSDKROOT/board/c5soc/ /top.qsf file, izay ALTERAOCLSDKROOT no lalana mankany amin'ny toerana misy ny Intel FPGA SDK ho an'ny fametrahana OpenCL, ary dia ny anaran'ny lahatahiry misy ny variana board. Ny lahatahiry c5soc_sharedonly dia ho an'ny variana board misy rafitra fitadidiana DDR iray. Ny lahatahiry c5soc dia ho an'ny variana board misy rafitra fitadidiana DDR roa.
  3.  Havaozy ny firafitry ny DDR ho an'ny sakana HPS sy/na FPGA SDRAM ao amin'ny ALTERAOCLSDKROOT/board/c5soc/ /system.qsys file.
    4. Ny Intel FPGA SDK rehetra ho an'ny endrika birao tian'ny OpenCL dia tsy maintsy mahatratra ny fanakatonana fotoana azo antoka. Noho izany, ny fametrahana ny famolavolana dia tokony ho madio ara-potoana. Mba hampidirana ny fisarahan'ny board c5soc (acl_iface_partition.qxp) amin'ny solaitrao SoC FPGA dia ataovy ireto asa manaraka ireto:
    Raha mila torolalana amin'ny antsipiriany momba ny fanovana sy ny fitehirizana ny fisarahan'ny solaitrabe dia jereo ny Quartus
    Fanangonam-bokatra voalohany ho an'ny famolavolana ambaratonga sy ekipa mifototra amin'ny fizarana Quartus Prime Standard Edition.
    a. Esory ny acl_iface_partition.qxp ao amin'ny lahatahiry ALTERAOCLSDKROOT/board/c5soc/c5soc.
    b. Alefaso ny faritra acl_iface_region LogicLock ™ amin'ny fanovana ny baiko Tcl set_global_assignment -name LL_ENABLED OFF -section_id acl_iface_region ho set_global_assignment -name LL_ENABLED ON -section_id acl_iface_region
    c. Manangona kernel OpenCL ho an'ny biraonao.
    d. Raha ilaina, amboary ny habeny sy ny toerana misy ny faritra LogicLock.
    e. Rehefa afa-po ianao fa ny fametrahana ny endrikao dia madio ara-potoana, manondrana izany fisarahana izany ho acl_iface_partition.qxp Quartus Prime Exported Partition File.
    Araka ny voalaza ao amin'ny fizarana Fametrahana ny fotoana azo antoka ao amin'ny AIntel FPGA SDK ho an'ny OpenCL Custom Platform Toolkit User Guide, amin'ny fanafarana ity .qxp ity  file Amin'ny endrika ambony indrindra, mahafeno ny fepetra takiana amin'ny fanomezana endrika birao miaraka amin'ny fikorianan'ny fotoana azo antoka ianao.
    Ho an'ny anton-javatra mety hisy fiantraikany amin'ny kalitaon'ny vokatra (QoR) amin'ny fizarazaranao aondrana, dia jereo ny Hevitra ankapobeny momba ny kalitaon'ny vokatra ho an'ny fizarana Board Exported Partition ao amin'ny Intel FPGA SDK ho an'ny OpenCL Custom Platform Toolkit User Guide.
    f. Atsaharo ny faritra LogicLock acl_iface_region amin'ny alàlan'ny famerenana ny baiko ao amin'ny dingana 2 mankany set_global_assignment -name LL_ENABLED OFF section_id acl_iface_region.
  4. Raha mampiasa tsimatra sy periferika samihafa amin'ny sakana HPS ny solaitrao SoC FPGA, dia avereno indray ny préloader sy ny loharanon-kazo (DTS) file. Raha ovainao ny fandrindrana mpanara-maso ny fitadidiana HPS DDR, dia avereno indray ny preloader.
  5. Mamorona sary karatra SD flash.
  6. Mamorona Platform Custom anao, izay ahitana ny sary karatra SD flash.
  7. Eritrereto ny mamorona kinova tontolo iainana mandritra ny fotoana fiasan'ny Platform Custom anao hampiasaina amin'ny Intel FPGA Runtime Environment (RTE) ho an'ny OpenCL. Ny kinova RTE an'ny Platform Custom anao dia tsy misy lahatahiry fitaovana sy ny sary karatra SD flash. Ity Platform Custom ity dia miditra amin'ny rafitra SoC FPGA mba ahafahan'ny fampiharana fampiantranoana mandeha. Mifanohitra amin'izany kosa, ny dikan-teny SDK an'ny Platform Custom dia ilaina amin'ny SDK mba hanangonana kernel OpenCL.
    Soso-kevitra: Azonao atao ny mampiasa ny kinova SDK an'ny Platform Custom anao ho an'ny RTE. Mamonjy
    eny amin'ny habaka, esory ny sarin'ny karatra tselatra SD amin'ny kinova RTE an'ny Platform Custom anao.
  8. Andramo ny Platform Custom anao.
    Jereo ny fizarana Testing the Hardware Design an'ny Intel FPGA SDK ho an'ny OpenCL Custom Platform Toolkit User Guide raha mila fanazavana fanampiny.

Rohy mifandraika

  • Fitsapana ny famolavolana Hardware
  • Quartus Prime Incremental Compilation for Hierarchical and Team-based Design
  • Mametraka ny fandehan'ny fotoana azo antoka
  • Fandinihana ny kalitao ankapoben'ny vokatra ho an'ny Fizarana Birao naondrana

1.2.1 Fanavaozana ny Sehatry ny Reference Ported
Ao amin'ny dikan-teny ankehitriny amin'ny Cyclone V SoC Development Kit Reference Platform, ny sakana HPS dia ao anatin'ny fizarazarana izay mamaritra ny lojika tsy misy kernel rehetra. Na izany aza, tsy afaka manondrana ny HPS ho ampahany amin'ny .qxp ianao file. Raha te hanavao ny Platform Custom efa misy izay novanao tamin'ny c5soc version teo aloha, ampiharo ny fikorianan'ny QXP, havaozy ny sarin'ny karatra tselatra SD mba hahazoana ny tontolo iainana farany indrindra, ary havaozy ny board_spec.xml file mba hahafahan'ny automatique.
Ny Altera® SDK ho an'ny OpenCL version 14.1 sy mihoatra dia manadihady ny board_spec.xml file ho an'ny fampahalalam-baovaon'ny birao, ary mampihatra fanavaozana mandeha ho azy. Satria ovainao ny
famolavolana amin'ny fampiharana ny fikorianan'ny fiarovana QXP, tsy maintsy manavao ny board_spec.xml ianao file amin'ny endriny amin'ny dikan-teny ankehitriny. Fanavaozana ny file mamela ny SDK hanavaka ny Platform Custom tsy voaaro sy ny Platform Custom miorina amin'ny QXP ankehitriny. Jereo ny Custom Platform Automigration ho an'ny Forward Compatibility ao amin'ny Intel FPGA SDK ho an'ny OpenCL Custom Platform Toolkit User Guide raha mila fanazavana fanampiny.

  1. Mba hampiharana ny fikorianan'ny fitehirizana QXP amin'ny famolavolana hardware Cyclone V SoC FPGA izay nalaina avy amin'ny c5soc teo aloha dia araho ireto dingana manaraka ireto mba hamoronana fizarazarana hanilihana ny HPS amin'ny .qxp. file:
    a. Alohan'ny hamoronana fizarazarana manodidina ny lojika tsy kernel, dia manaova fisarahana manodidina ny HPS ao amin'ny .qsf Quartus Prime Settings File.
    Ho an'ny example:
    # Zarao amin'ny tanana ny ohatra izay mamolavola ny HPS-natokana I/O set_instance_assignment -name PARTITION_HIERARCHY borde_18261 - amin'ny “system:the_system|system_acl_iface:acl_iface|system_acl_iface_hps_0:hps_0|system_acl_iface_hps| system_acl_iface_hps_0_hps_io_border:border" -section_id "system_acl_iface_hps_0_hps_io_border:border"
    # Mametraha fizarazarana ho karazana HPS_PARTITION mba hokarakarain'ny sisa amin'ny Quartus
    set_global_assignment -name PARTITION_TYPE HPS_PARTITION -section_id "system_acl_iface_hps_0_hps_io_border:border"
    quartus_cdb top -c top
    –incremental_compilation_export=acl_iface_partition.qxp
    –incremental_compilation_export_partition_name=acl_iface_partition
    –incremental_compilation_export_post_synth=on
    –incremental_compilation_export_post_fit=on
    –incremental_compilation_export_routing=on
    –incremental_compilation_export_flatten=off
    Aorian'ny fanesorana ny HPS amin'ny fisarahana dia azonao atao ny manafatra ny .qxp file ary alaivo ny drafitrao.
  2. Havaozy ny sarin'ny karatra tselatra SD miaraka amin'ny kinova Intel FPGA RTE ankehitriny ho an'ny OpenCL amin'ny fanatanterahana ireto asa manaraka ireto:
    a. Tendrombohitra ny file latabatra fizarana (fat32) ary nanitatra file rafitra (ext3) fizarazarana amin'ny sary efa misy ho toy ny fitaovana loop-back. Raha mila torolalana amin'ny antsipiriany, jereo ny Dingana 2 amin'ny fananganana sary karatra SD Flash.
    b. Ao amin'ny lahatahiry /home/root/opencl_arm32_rte, esory ny files avy amin'ny dikan-tenin'ny RTE teo aloha.
    c. Ampidino ary esory ny versione an'ny RTE amin'izao fotoana izao ao amin'ny lahatahiry /home/root/opencl_arm32_rte.
    d. Ao amin'ny /driver/version.h file amin'ny Platform Custom-nao, havaozy ny fanendrena ACL_DRIVER_VERSION amin'ny . (ho an'ny example, 16.1.x, izay 16.1 no SDK verison, ary x no dikan-tenin'ny mpamily napetrakao).
    e. Avereno indray ny mpamily.
    f. Fafao ny lahatahiry fitaovana amin'ny Platform Custom-nao. Adikao ao amin'ny lahatahiry /home/root/opencl_arm_rte/board ny Custom Platform, miaraka amin'ny mpamily nohavaozina.
    g. Adikao ny Altera.icd file avy amin'ny lahatahiry /home/root/opencl_arm32_rte ary ampio ao amin'ny lahatahiry /etc/OpenCL/vendor.
    h. Esory ary andramo ny sary vaovao. Raha mila torolalana amin'ny antsipiriany dia jereo ny Dingana 8 ka hatramin'ny 11 amin'ny fananganana sary karatra SD Flash.

Rohy mifandraika

  • Mamorona sary karatra SD Flash amin'ny pejy 14
    Manana safidy ihany koa ianao hamorona sary karatra SD flash vaovao.
  • Automigration Platform manokana ho an'ny fifanarahana mandroso

1.3 Fanohanana rindrambaiko ho an'ny fahatsiarovana iombonana
Ny fitadidiana ara-batana iombonana eo amin'ny FPGA sy ny CPU no fitadidiana tiana ho an'ny kernel OpenCL mandeha amin'ny SoC FPGAs. Satria ny FPGA dia miditra amin'ny fitadidiana ara-batana ifampizarana, mifanohitra amin'ny fitadidiana virtoaly zaraina, dia tsy afaka miditra amin'ny tabilaon'ny pejin'ny CPU izay mametraka ny adiresin'ny mpampiasa virtoaly amin'ny adiresin'ny pejy ara-batana.
Raha ny momba ny fitaovana, ny kernel OpenCL dia miditra amin'ny fahatsiarovana ara-batana amin'ny alàlan'ny fifandraisana mivantana amin'ny HPS DDR hard memory controller. Raha ny momba ny lozisialy, ny fanohanana ny fitadidiana ara-batana iombonana dia ahitana ireto hevitra manaraka ireto:

  1. Fampiharana rindrambaiko mahazatra amin'ny fametrahana fahatsiarovana amin'ny CPU (ohatraample, ny malloc() function) dia tsy afaka manome faritra fitadidiana izay mety ampiasain'ny FPGA.
    Ny fitadidiana izay atolotry ny malloc() dia mifanipaka amin'ny habaka adiresy fitadidiana virtoaly, fa ny pejy ara-batana rehetra dia tsy azo inoana fa mifandray ara-batana. Noho izany, ny mpampiantrano dia tsy maintsy afaka mizara faritra fitadidiana mifanakaiky ara-batana. Na izany aza, io fahaiza-manao io dia tsy misy amin'ny rindranasa mpampiasa-space amin'ny Linux. Noho izany, ny mpamily kernel Linux dia tsy maintsy manatanteraka ny fizarana.
  2. Ny mpamily kernel OpenCL SoC FPGA Linux dia ahitana ny fiasan'ny mmap() mba hanomezana fahatsiarovana ara-batana ifampizarana ary hanao sarintany ao amin'ny habaka mpampiasa. Ny fiasa mmap() dia mampiasa ny antsoina hoe kernel Linux manara-penitra dma_alloc_coherent() mba hangataka faritra fitadidiana mifanakaiky ara-batana mba hizarana amin'ny fitaovana iray.
  3. Ao amin'ny kernel Linux default, dma_alloc_coherent() dia tsy manome fahatsiarovana mifanakaiky ara-batana mihoatra ny 0.5 megabytes (MB) ny habeny. Mba hamelana ny dma_alloc_coherent() hizara fitadidiana mifanakaiky ara-batana be dia be, avelao ny endri-javatra mifanitsy fahatsiarovana (CMA) an'ny kernel Linux ary amboary indray ny kernel Linux.
    Ho an'ny Cyclone V SoC Development Kit Reference Platform, CMA dia mitantana 512 MB amin'ny fitadidiana ara-batana 1 GB. Azonao atao ny mampitombo na mampihena io sanda io, miankina amin'ny habetsahan'ny fitadidiana zaraina takian'ny fampiharana. Ny antso dma_alloc_coherent() dia mety tsy afaka manome ny 512 MB feno amin'ny fitadidiana mifanakaiky ara-batana; Na izany aza, dia afaka mahazo fahatsiarovana 450 MB eo ho eo.
  4. Ny CPU dia afaka mitahiry fahatsiarovana izay atolotry ny dma_alloc_coherent() antso. Indrindra indrindra, ny asa fanoratana avy amin'ny fampiharana mpampiantrano dia tsy hita amin'ny kernel OpenCL. Ny fiasan'ny mmap() ao amin'ny mpamily kernel OpenCL SoC FPGA Linux dia misy antso amin'ny pgprot_noncached() na remap_pf_range() mba hanesorana mazava ny caching ho an'ity faritra fitadidiana ity.
  5. Aorian'ny fanomezan'ny dma_alloc_coherent() ny fitadidiana mifanakaiky ara-batana, ny mmap() dia mamerina ny adiresy virtoaly any amin'ny fiandohan'ny faritra, izay ny adiresin'ny fahatsiarovana omenao. Ny fampiharana mpampiantrano dia mitaky ity adiresy virtoaly ity mba hidirana amin'ny fahatsiarovana. Amin'ny lafiny iray, ny kernel OpenCL dia mitaky adiresy ara-batana. Ny mpamily kernel Linux dia manara-maso ny fametahana adiresy virtoaly-to-fizika. Azonao atao ny manao sarintany ny adiresy ara-batana izay averin'ny mmap() amin'ny adiresy ara-batana tena izy amin'ny fampidirana fanontaniana amin'ny mpamily.
    Ny antso aocl_mmd_shared_mem_alloc() MMD application programming interface (API) dia ahitana ireto fanontaniana manaraka ireto:
    a. Ny fiasa mmap() izay manome fahatsiarovana ary mamerina ny adiresy virtoaly.
    b. Ny fanontaniana fanampiny izay mametraka sarintany ny adiresy virtoaly naverina amin'ny adiresy ara-batana.
    Ny antso aocl_mmd_shared_mem_alloc() MMD API dia mamerina adiresy roa avy eo
    —Ny adiresy virtoaly no tena averina, ary ny adiresy ara-batana dia mankany amin'ny device_ptr_out.
    Fanamarihana: Ny mpamily ihany no afaka manao sarintany ireo adiresy virtoaly izay averin'ny mmap() amin'ny adiresy ara-batana. Raha mangataka ny adiresin'ny tondro virtoaly hafa ianao, dia mamerina sanda NULL ny mpamily.

fampitandremana: Ny Intel FPGA SDK ho an'ny OpenCL runtime libraries dia mihevitra fa ny fahatsiarovana iombonana no fahatsiarovana voalohany voatanisa ao amin'ny board_spec.xml file. Raha lazaina amin'ny teny hafa, ny adiresy ara-batana izay azon'ny mpamily kernel Linux dia lasa adiresy Avalon® izay ampitan'ny kernel OpenCL amin'ny HPS SDRAM.
Raha ny momba ny tranomboky runtime dia ampiasao ny antso clCreateBuffer() mba hizarana ny fahatsiarovana iombonana ho toy ny buffer fitaovana amin'ny fomba manaraka:

  • Ho an'ny variana tabilao roa-DDR miaraka amin'ny fitadidiana zaraina sy tsy ifampizarana, clCreateBuffer() dia manome fahatsiarovana iombonana raha toa ka manondro ny saina CL_MEM_USE_HOST_PTR ianao. Ny fampiasana saina hafa dia mahatonga ny clCreateBuffer() hizara buffer ao amin'ny fahatsiarovana tsy mizara.
  • Ho an'ny variana birao iray-DDR miaraka amin'ny fitadidiana ifampizarana ihany, ny clCreateBuffer() dia manolotra fitadidiana iombonana na inona na inona sainao lazainao.
    Amin'izao fotoana izao, ny fanohanan'ny Linux 32-bit amin'ny CPU ARM dia mifehy ny halehiben'ny fanohanana fahatsiarovana iombonana ao amin'ny tranombokin'ny SDK runtime. Raha lazaina amin'ny teny hafa, ny tranomboky runtime natambatra amin'ny tontolo hafa (ohatraample, x86_64 Linux na Windows 64-bit) dia tsy mahazaka fahatsiarovana iombonana.
    C5soc dia tsy nampihatra fitadidiana heterogène mba hanavahana ny fahatsiarovana zaraina sy tsy zaraina noho ireto antony manaraka ireto:
    1. Tantara—Tsy nisy fanohanana fitadidiana heterogène rehefa noforonina tany am-boalohany ny fanohanana fahatsiarovana iombonana.
    2. Fanamafisana interface tsara—Satria OpenCL dia fenitra misokatra, ny Intel dia mitazona ny tsy fitoviana eo amin'ireo mpivarotra sehatra informatika samihafa. Noho izany, ny interface mitovy amin'ny maritrano mpivarotra board hafa dia ampiasaina amin'ny fizarana sy fampiasana fahatsiarovana iombonana.

1.4 Fanavaozana ny FPGA
Ho an'ny SoC FPGAs, ny CPU dia afaka manitsy ny lamba fototra FPGA tsy manapaka ny fiasan'ny CPU. Ny bloc hardware FPGA Manager izay mihodidina ny HPS ary ny FPGA fototra dia manao ny fanavaozana. Ny kernel Linux dia misy mpamily izay ahafahana miditra mora amin'ny mpitantana FPGA.

  • ny view ny satan'ny FPGA core, antsoy ny baiko saka /sys/class/fpga/fpga0/ status.
    Ny Intel FPGA SDK ho an'ny programa OpenCL azo alaina miaraka amin'ny Cyclone V SoC Development Kit Reference Platform dia mampiasa an'io interface tsara io handrindrana ny FPGA. Rehefa reprogramming ny FPGA core miaraka amin'ny CPU mandeha, ny programa utility dia manao ireto asa manaraka ireto:
    1. Alohan'ny hamerenana fandaharana, esory ny tetezana fifandraisana rehetra eo anelanelan'ny FPGA sy ny HPS, na ny tetezana H2F na LH2F.
    Avereno indray ireo tetezana ireo rehefa vita ny fandaharana.
    Fanamarihana: Ny rafitra OpenCL dia tsy mampiasa ny tetezana FPGA-to-HPS (F2H). Jereo ny fizarana HPS-FPGA Interfaces ao amin'ny Cyclone V Device Handbook, Volume 3: Hard Processor System Technical Reference Manual raha mila fanazavana fanampiny.
    2. Ataovy azo antoka fa ny rohy eo amin'ny FPGA sy ny HPS DDR controller dia kilemaina mandritra ny reprogramming.
    3. Ataovy azo antoka fa ny FPGA interrupts amin'ny FPGA dia kilemaina mandritra ny reprogramming.
    Ampahafantaro koa ny mpamily mba handà izay mety ho fahatapahan'ny FPGA mandritra ny reprogramming.

Jereo ny kaody loharanon'ny fampiasa amin'ny programa ho an'ny antsipiriany momba ny fampiharana tena izy.

fampitandremana: Aza ovaina ny fanamafisana ny HPS DDR controller rehefa mandeha ny CPU.
Ny fanaovana izany dia mety hiteraka fahadisoan'ny rafitra mahafaty satria mety hanova ny fanamafisam-peo DDR ianao rehefa misy fifanakalozana fahatsiarovana miavaka avy amin'ny CPU. Midika izany fa rehefa mandeha ny CPU, dia mety tsy hamerenanao indray ny foto-kevitry ny FPGA miaraka amin'ny sary mampiasa HPS DDR amin'ny endrika hafa.
Tsarovy fa ny rafitra OpenCL, ary ny famolavolana references Golden Hardware misy miaraka amin'ny Intel SoC FPGA Embedded Design Suite (EDS), dia mametraka ny HPS DDR ho fomba tokana 256-bit.
Ny ampahany amin'ny rafitra CPU toy ny sampana mpamantatra na ny prefetcher latabatra pejy dia mety hamoaka baiko DDR na dia toa tsy misy na inona na inona mandeha amin'ny CPU.
Noho izany, ny fotoana fandefasana no hany fotoana azo antoka hametrahana ny fikirakirana HPS DDR.
Midika koa izany fa tsy maintsy manana binary manta ny U-boot file (.rbf) sary hapetraka ao anaty fitadidiana. Raha tsy izany dia mety ho azonao atao ny manome ny HPS DDR miaraka amin'ny seranana tsy ampiasaina amin'ny FPGA ary mety hanova ny fanamafisana ny seranana avy eo. Noho izany antony izany, ny mpamily kernel OpenCL Linux dia tsy misy intsony ny lojika ilaina amin'ny fametrahana ny rafitra HPS DDR controller.
Ny SW3 dual in-line package (DIP) dia mandeha amin'ny Cylone V SoC Development Kit mifehy ny endrika andrasana amin'ny sary .rbf (izany hoe, na ny file dia voatsindry sy/na voafehy). C5soc, ary ny Golden Hardware Reference Design misy miaraka amin'ny SoC EDS, dia ahitana sary .rbf voaporitra nefa tsy voafehy. Ny firafitry ny switch SW3 DIP voalaza ao amin'ny Intel FPGA SDK ho an'ny OpenCL Cyclone V SoC Started Guide dia mifanandrify amin'ity .rbf sary ity.

Rohy mifandraika

  • Ireo singa mifandraika amin'ny HPS-FPGA
  • Fametrahana ny Switches SW3

1.4.1 Antsipirihan'ny Architecture System FPGA
Ny fanohanana ny Cyclone V SoC Development Kit Reference Platform dia mifototra amin'ny Stratix® V Reference Platform (s5_ref), azo alaina miaraka amin'ny Intel FPGA SDK ho an'ny OpenCL.
Ny fandaminana ankapobeny ny rafitra c5soc Qsys sy ny mpamily kernel dia mitovy amin'ny an'ny s5_ref.
Ireo singa fototra FPGA manaraka ireto dia mitovy amin'ny c5soc sy s5_ref:

  • VERSION_ID sakana
  • Mekanisma fialan-tsasatra
  • Mpizara banky fahatsiarovana
  • Cache snoop interface tsara
  • Kernel famantaranandro
  • Fanaraha-maso ny fidirana amin'ny fisoratana anarana (CRA).

1.5 Manangana sary karatra SD Flash
Satria rafitra feno amin'ny puce ny Cyclone V SoC FPGA, ianao no tompon'andraikitra amin'ny famoahana ny famaritana feno ny rafitra. Intel dia manoro hevitra ny hanaterana azy amin'ny endrika sary karatra SD flash. Ny Intel FPGA SDK ho an'ny mpampiasa OpenCL dia afaka manoratra fotsiny ny sary amin'ny karatra tselatra micro SD ary vonona ny hampiasaina ny birao SoC FPGA.
Manova sary karatra SD Flash efa misy eo amin'ny pejy 13
Manoro hevitra ny Intel mba hanovanao fotsiny ny sary misy amin'ny Cyclone V SoC Development Kit Reference Platform. Manana safidy ihany koa ianao hamorona sary karatra SD flash vaovao.
Mamorona sary karatra SD Flash amin'ny pejy 14
Manana safidy ihany koa ianao hamorona sary karatra SD flash vaovao.

1.5.1 Manova Sary karatra SD Flash efa misy
Manoro hevitra ny Intel mba hanovanao fotsiny ny sary misy amin'ny Cyclone V SoC
Sehatry ny Reference Kit Development. Manana safidy ihany koa ianao hamorona sary karatra SD flash vaovao.
Ny sary c5soc linux_sd_card_image.tgz file dia hita ao amin'ny lahatahiry ALTERAOCLSDKROOT/board/c5soc, izay i ALTERAOCLSDKROOT manondro ny lalan'ny Intel FPGA SDK ho an'ny lahatahiry fametrahana OpenCL.

Attention: Raha hanova ny sarin'ny karatra tselatra SD dia tsy maintsy manana tombontsoa faka na sudo ianao.

  1. Mba hanesorana ny $ALTERAOCLSDKROOT/board/c5soc/linux_sd_card_image.tgz file, mandehana ny baiko tar xvfzlinux_sd_card_image.tgz.
  2. Angony ny hello_world OpenCL example design mampiasa ny fanohananao Custom Platform. Avereno anarana ny .rbf file fa ny Intel FPGA SDK ho an'ny OpenCL Offline Compiler dia mamorona ho opencl.rbf, ary apetraho eo amin'ny fizarazarana fat32 ao anatin'ny sary karatra SD flash.
    Azonao atao ny misintona ny hello_world example design avy amin'ny OpenCL Design Examples page on the Altera website.
  3. Apetraho ny .rbf file ao amin'ny fizarana fat32 amin'ny sary karatra flash.
    Attention: Ny fizarana fat32 dia tsy maintsy ahitana ny zImage roa file sy rbf file. Tsy misy .rbf file, hisy hadisoana mahafaty hitranga rehefa ampidirinao ny mpamily.
  4. Rehefa avy namorona ny sarin'ny karatra SD ianao dia soraty amin'ny karatra micro SD izany amin'ny alalan'ny fiantsoana izao baiko manaraka izao: sudo dd if=/path/to/sdcard/image.bin of=/dev/sdcard
  5. Mba hitsapana ny sarin'ny karatra tselatra SD anao dia ataovy ireto asa manaraka ireto:
    a. Ampidiro ao amin'ny solaitrabe SoC FPGA ny karatra tselatra micro SD.
    b. Atsangano ny solaitrabe.
    c. Antsoy ny baikon'ny fitaovana fitiliana aocl.

1.5.2 Mamorona sary karatra SD Flash
Manana safidy ihany koa ianao hamorona sary karatra SD flash vaovao. Ny torolalana ankapobeny momba ny fananganana sary karatra tselatra SD vaovao sy ny fanamboarana ny sarin'ny karatra tselatra SD efa misy dia hita ao amin'ny GSRD v14.0.2 – pejin'ny karatra SD an'ny RocketBoards.org website.
Ny dingana etsy ambany dia mamaritra ny fomba hamoronana ny linux_sd_card_image.tgz sary avy amin'ny Golden System Reference Design (GSRD) sary karatra SD:
Fanamarihana:
Mba hamoronana ny sary avy amin'ny sary c5soc, ataovy ny asa azo ampiharina rehetra voasoritra amin'ity fomba ity.

  1. Ampidino ary esory ny sarin'ny karatra flash SD GSRD 14.0 avy amin'ny Rocketboards.org.
  2. Tendrombohitra ny file latabatra fizarana (fat32) ary nanitatra file rafitra (ext3) fizarazarana amin'ity sary ity ho fitaovana miverimberina. Mba hametrahana partition dia ataovy ireto dingana manaraka ireto:
    a. Farito ny fanombohana byte amin'ny fisarahana ao anatin'ny sary amin'ny alàlan'ny fiantsoana ny /sbin/fdisk -lu image_file baiko.
    Ho an'ny example, partition number 1 amin'ny karazana W95 FAT dia manana sakana 2121728. Miaraka amin'ny 512 bytes isaky ny sakana, ny byte offset dia 512 byte x 2121728 = 1086324736 bytes.
    b. Fantaro ny fitaovana loop maimaim-poana (ohatraample, /dev/loop0) amin'ny fanoratana ny baiko losetup -f.
    c. Raha heverina fa /dev/loop0 no fitaovana maimaim-poana, apetraho amin'ny fitaovana fanakanana loop ny sarin'ny karatra flash anao amin'ny fiantsoana ny losetup /dev/loop0 image_file -0 1086324736 baiko.
    d. Apetraho ny fitaovana loop amin'ny alàlan'ny fiantsoana ny baiko mount /dev/loop0 /media/disk1.
    Ao anatin'ny sary file, /media/disk1 dia fizarazarana fat32 napetraka.
    e. Avereno ny dingana a hatramin'ny d ho an'ny fizarazarana ext3.
  3. Ampidino ny Cyclone V SoC FPGA version of the Intel FPGA Runtime Environment for OpenCL package from the Download Center on the Altera website.
    a. Kitiho ny bokotra Download eo akaikin'ny fanontana rindrambaiko Quartus Prime.
    b. Lazao ny dikan-ny famoahana, ny rafitra fiasana ary ny fomba fampidinana.
    c. Kitiho ny tabilao fanampiny Software, ary mifidiana raha hisintona Intel FPGA
    Tontolo iainana mandritra ny fotoana maharitra ho an'ny OpenCL Linux Cyclone V SoC TGZ.
    d. Rehefa avy nisintona ny aocl-rte- .arm32.tgz file, sokafy ho
    lahatahiry anananao.
  4. Apetraho ny aocl-rte- .arm32 lahatahiry ao amin'ny lahatahiry /home/root/opencl_arm32_rte amin'ny fizarana ext3 amin'ny sary file.
  5. Fafao ny lahatahiry hardware ao amin'ny Platform Custom anao, ary apetraho ao amin'ny subdirectory board an'ny /home/root/ opencl_arm32_rte ny Custom Platform.
  6. Mamorona ny init_opencl.sh file ao amin'ny lahatahiry /home/root misy ireto atiny manaraka ireto: export ALTERAOCLSDKROOT=/home/root/opencl_arm32_rte export AOCL_BOARD_PACKAGE_ROOT=$ALTERAOCLSDKROOT/board/ export PATH=$ALTERAOCLSDKROOT/bin:$PATH export LD_LIBRARY_PATH=$ALTERAOCLSDKROOT/host/arm32/lib:$LD_LIBRARY_PATH insmod $AOCL_BOARD_PACKAGE_ROOT/driver/aclsoc_drv.ko
    Ny mpampiasa SDK dia mitantana ny loharano ./init_opencl.sh baiko mba hampidirana ny fari-piainan'ny tontolo iainana sy ny mpamily kernel OpenCL Linux.
  7. Raha mila manavao ny preloader ianao, ny DTS files, na ny kernel Linux, mila ny compiler arm-linux-gnueabihf-gcc avy amin'ny SoC EDS ianao. Araho ny toromarika voasoritra ao amin'ny Intel SoC FPGA Embedded Design Suite Torolàlana ho an'ny mpampiasa mba hahazoana ny rindrambaiko, mamerina azy ireo ary manavao ny mifandraika amin'izany. files amin'ny fizarazarana fat32 napetraka.
    Attention: Azo inoana fa mila manavao ny preloader ianao raha manana fampiasana pin hafa noho ny ao amin'ny c5soc ny Platform Custom anao.
    Tsarovy: Raha amboarinao indray ny kernel Linux dia avereno amboary ny mpamily kernel Linux miaraka amin'ny loharano kernel Linux mitovy files. Raha toa ka misy tsy fifankahazoana eo amin'ny mpamily kernel Linux sy ny kernel Linux dia tsy hampiditra ny mpamily. Ary koa, tsy maintsy avelanao ny CMA.
    Jereo ny famerenana ny Kernel Linux raha mila fanazavana fanampiny.
  8. Angony ny hello_world OpenCL example design mampiasa ny fanohananao Custom Platform. Avereno anarana ny .rbf file fa ny Intel FPGA SDK ho an'ny OpenCL Offline Compiler dia mamorona ho opencl.rbf, ary apetraho eo amin'ny fizarazarana fat32 ao anatin'ny sary karatra SD flash.
    Azonao atao ny misintona ny hello_world example design avy amin'ny OpenCL Design Examples page on the Altera website.
    9. Rehefa avy mitahiry ny ilaina rehetra files eo amin'ny sary karatra tselatra, antsoy ireto baiko manaraka ireto:
    a. mifandrindra
    b. unmount /media/disk1
    c. unmount AIZA dia ny anaran'ny lahatahiry ampiasainao amin'ny fametrahana ny fizarazarana ext3 amin'ny 3 amin'ny pejy 3 (ho an'ny example, /media/disk2).
    d. losetup -d /dev/loop0
    e. losetup -d /dev/loop1
  9. Kitiho ny sarin'ny karatra flash SD amin'ny alàlan'ny fiantsoana ity baiko manaraka ity: tar cvfz .tgz linux_sd_card_image
  10. Alefaso ny .tgz file ao anatin'ny lahatahiry fototry ny Custom Platform anao.
  11. Mba hitsapana ny sarin'ny karatra tselatra SD anao dia ataovy ireto asa manaraka ireto:
    a. Soraty amin'ny karatra tselatra micro SD ny sary tsy voatsindry vokatr'izany.
    b. Ampidiro ao amin'ny solaitrabe SoC FPGA ny karatra tselatra micro SD.
    c. Atsangano ny solaitrabe.
    d. Antsoy ny baikon'ny fitaovana fitiliana aocl.

Rohy mifandraika

  • Intel SoC FPGA Embedded Design Suite Torolàlana ho an'ny mpampiasa
  • OpenCL Design Examples page on the Altera webtoerana
  • Mamerina ny Kernel Linux amin'ny pejy 16
    Mba hahafahan'ny CMA dia tsy maintsy averinao indray aloha ny kernel Linux.
  • Manontany ny anaran'ny fitaovana ao amin'ny birao FPGA (diagnostika)

1.6 Manangona ny Linux Kernel ho an'ny Cyclone V SoC FPGA
Alohan'ny hampandehanana ny rindranasa OpenCL eo amin'ny biraon'ny Cyclone V SoC FPGA dia tsy maintsy manangona ny loharano kernel Linux ianao, ary manangona sy mametraka ny mpamily kernel OpenCL Linux.

  1. Mamerina ny Kernel Linux amin'ny pejy 16
    Mba hahafahan'ny CMA dia tsy maintsy averinao indray aloha ny kernel Linux.
  2. Manangona sy mametraka ny OpenCL Linux Kernel Driver amin'ny pejy 17 Angony ny mpamily kernel OpenCL Linux amin'ny loharano voaangona.

1.6.1 Mamerina ny Kernel Linux
Mba hahafahan'ny CMA dia tsy maintsy averinao indray aloha ny kernel Linux.

  1. Kitiho ny rohy GSRD v14.0 - Manangona Linux amin'ny pejy loharanon'ny RocketBoards.org webtranokala hidirana amin'ny toromarika momba ny fampidinana sy fananganana indray ny kaody loharano kernel Linux.
    Raha ampiasaina miaraka amin'ny ™ Intel FPGA SDK ho an'ny OpenCL, mariho ny socfpga-3.13-rel14.0 ho toy ny .
  2. Fanamarihana: Ny dingana fananganana dia mamorona ny arch/arm/configs/socfpga_defconfig file. izany file mamaritra ny firafitry ny socfpga default.
    Ampio ireto andalana manaraka ireto eo amin'ny faran'ny arch/arm/configs/socfpga_defconfig file.
    CONFIG_MEMORY_ISOLATION=y
    CONFIG_CMA=y
    CONFIG_DMA_CMA=y
    CONFIG_CMA_DEBUG=y
    CONFIG_CMA_SIZE_MBYTES=512
    CONFIG_CMA_SIZE_SEL_MBYTES=y
    CONFIG_CMA_ALIGNMENT=8
    CONFIG_CMA_AREAS=7
    Ny sandan'ny fanefena CONFIG_CMA_SIZE_MBYTES dia mametraka ny fetra ambony indrindra amin'ny fitambaran'ny fitadidiana mifanakaiky ara-batana misy. Mety hampitombo io sanda io ianao raha mila fitadidiana bebe kokoa.
  3. Attention: Ny fitambaran'ny fitadidiana ara-batana azon'ny processeur ARM ao amin'ny board SoC FPGA dia 1 GB. Intel dia tsy manoro hevitra ny hametraka ny mpitantana CMA manakaiky ny 1 GB.
  4. Alefaso ny baiko make mrproper mba hanadiovana ny fanitsiana ankehitriny.
  5. Alefaso ny baiko make ARCH=arm socfpga_deconfig.
    ARCH=arm dia manondro fa te hanamboatra ny maritrano ARM ianao.
    socfpga_defconfig dia manondro fa te hampiasa ny fanovana socfpga default ianao.
  6. Alefaso ny baiko fanondranana CROSS_COMPILE=arm-linux-gnueabihf-.
    Ity baiko ity dia mametraka ny fari-piainan'ny tontolo iainana CROSS_COMPILE mba hamaritana ny prefix amin'ny rojo fitaovana ilaina.
  7. Alefaso ny baiko manao ARCH=arm zImage. Ny sary vokarina dia hita ao amin'ny arch/arm/boot/zImage file.
  8. Apetraho ny zImage file ao amin'ny fizarana fat32 amin'ny sary karatra flash. Raha mila torolalana amin'ny antsipiriany dia jereo ny Cyclone V SoC FPGA-specific GSRD User Manual ao amin'ny Rocketboards.org.
  9. Fanamarihana: Mba hampidirana tsara ny mpamily kernel OpenCL Linux, ampidiro aloha ny SDKgenerated.rbf file Hiverina any amin'ny FPGA.
    Mba hamoronana ny .rbf file, manangona endrika SDK exampmiaraka amin'ny Cyclone V SoC Development Kit Reference Platform ho toy ny Platform Custom lasibatra.
    9. Apetraho ny .rbf file ao amin'ny fizarana fat32 amin'ny sary karatra flash.
    Fanamarihana: Ny fizarana fat32 dia tsy maintsy misy ny zImage file sy rbf file. Tsy misy .rbf file, hisy hadisoana mahafaty hitranga rehefa ampidirinao ny mpamily.
  10. Ampidiro ao amin'ny Cyclone V SoC Development Kit ny carte micro SD, izay misy ny sarin'ny karatra SD novanao na noforoninao teo aloha, ary atsangano ny solaitrabe SoC FPGA.
  11. Hamarino ny dikan'ny kernel Linux napetraka amin'ny alàlan'ny baiko uname -r.
  12. Mba hanamarinana fa azonao atao tsara ny CMA ao amin'ny kernel, miaraka amin'ny biraon'ny SoC FPGA dia mandehana ny baiko grep init_cma /proc/kallsyms.
    Mandeha ny CMA raha toa ka tsy foana ny vokatra.
  13. Raha hampiasa ny kernel Linux naverina miaraka amin'ny SDK dia amboary ary apetraho ny mpamily kernel Linux.

Rohy mifandraika

  • Golden System Reference Design (GSRD) User Manuals
  • Manangana sary karatra SD Flash amin'ny pejy 13
    Satria rafitra feno amin'ny puce ny Cyclone V SoC FPGA, ianao no tompon'andraikitra amin'ny famoahana ny famaritana feno ny rafitra.

1.6.2 Manangona sy mametraka ny OpenCL Linux Kernel Driver
Angony ny mpamily kernel OpenCL Linux amin'ny loharano kernel voaangona.

Ny loharanon'ny mpamily dia hita ao amin'ny Cyclone V SoC FPGA version of the Intel FPGA Runtime Environment for OpenCL. Ho fanampin'izay, ataovy azo antoka fa nampiditra Intel FPGA SDK ho an'ny .rbf vokarina OpenCL ianao file ao amin'ny FPGA mba hisorohana ny fametrahana diso ny module kernel Linux.

  1. Ampidino ny Cyclone V SoC FPGA version of the Intel FPGA Runtime Environment for OpenCL package from the Download Center on the Altera website.
    a. Kitiho ny bokotra Download eo akaikin'ny fanontana rindrambaiko Quartus Prime.
    b. Lazao ny dikan-ny famoahana, ny rafitra fiasana ary ny fomba fampidinana.
    c. Kitiho ny tabilao fanampiny Software, ary mifidiana raha hisintona Intel FPGA
    Tontolo iainana mandritra ny fotoana maharitra ho an'ny OpenCL Linux Cyclone V SoC TGZ.
    d. Rehefa avy nisintona ny aocl-rte- .arm32.tgz file, sokafy ho
    lahatahiry anananao.
    Ny loharanon'ny mpamily dia ao amin'ny aocl-rte- .arm32/board/c5soc/ lahatahiry mpamily.
  2. Mba hamerenana indray ny mpamily kernel OpenCL Linux dia apetraho ao amin'ny Make an'ny mpamily ny sanda KDIRfile mankany amin'ny lahatahiry misy loharano kernel Linux files.
  3. Alefaso ny baiko fanondranana CROSS_COMPILE=arm-linux-gnueabihf- hanondro ny tovan'ny rojo fitaovanao.
  4. Alefaso ny baiko make clean.
  5. Alefaso ny baiko manao hamoronana ny aclsoc_drv.ko file.
  6. Alefaso amin'ny tabilao FPGA Cyclone V SoC ny lahatahiry opencl_arm32_rte.
    Mandeha ny scp -r root@y-ipaddress: Ny baiko dia mametraka ny tontolon'ny runtime ao amin'ny lahatahiry/home/root.
  7. Alefaso ny script init_opencl.sh noforoninao tamin'ny nanangananao ny sary karatra SD.
  8.  Antsoy ny baikon'ny fitaovana fitiliana aocl. Hamerina valiny mandalo ny fitaovana fitiliana rehefa vita soa aman-tsara ny init_opencl.sh.

1.7 Olana fantatra
Amin'izao fotoana izao, misy fetrany ny fampiasana ny Intel FPGA SDK ho an'ny OpenCL miaraka amin'ny Cyclone V SoC Development Kit Reference Platform.

  1. Tsy azonao atao ny manafoana ny anaran'ny mpivarotra sy ny birao notaterin'ny tady CL_DEVICE_VENDOR sy CL_DEVICE_NAME an'ny antso clGetDeviceInfo().
  2. Raha manome fitadidiana tsy tapaka ao amin'ny rafitra DDR iombonana ny mpampiantrano (izany hoe, HPS DDR) ary manova ny fitadidiana tsy tapaka aorian'ny famonoana ny kernel, dia mety ho lany andro ny angona ao anaty fitadidiana. Mipoitra ity olana ity satria ny fototry ny FPGA dia tsy afaka mitsikilo ny fifanakalozana CPU-to-HPS DDR.
    Mba hisorohana ny famonoana kernel manaraka tsy hiditra amin'ny angona efa lany andro, ampiharo ny iray amin'ireto fomba fiasa manaraka ireto:
    • Aza ovaina ny fitadidiana tsy tapaka aorian'ny fanombohana azy.
    • Raha mila angon-drakitra __constant maromaro ianao dia mamorona buffer fitadidiana tsy tapaka.
    • Raha misy dia asio fitadidiana tsy tapaka ao amin'ny FPGA DDR eo amin'ny solaitrabenao.
  3. Ny fampitaovana SDK amin'ny ARM dia tsy manohana afa-tsy ny programa ary manamarina ny baiko fampiasa.
    Tsy azo ampiharina amin'ny Cyclone V SoC Development Kit noho ireto antony manaraka ireto ny baiko tselatra, fametrahana ary esory ny fitaovana ampiasaina:
    a. Ny fitaovana fametrahana dia tsy maintsy manangona ny mpamily kernel aclsoc_drv Linux ary mamela izany amin'ny SoC FPGA. Ny milina fampandrosoana dia tsy maintsy manatanteraka ny fanangonana; na izany aza, efa misy loharano kernel Linux ho an'ny SoC FPGA. Ny loharano kernel Linux ho an'ny milina fampandrosoana dia tsy mitovy amin'ny an'ny SoC FPGA. Ny toerana misy ny loharano kernel Linux ho an'ny SoC FPGA dia mety tsy fantatry ny mpampiasa SDK. Toy izany koa, tsy azo ampiasaina amin'ny Cyclone V SoC Development Kit ihany koa ny fampiasa fanesorana.
    Sarotra ihany koa ny fandefasana aclsoc_drv amin'ny biraon'ny SoC satria tsy misy kernel Linux ny fizarana default ny Cyclone V SoC Development Kit. files na ny GNU Compiler Collection (GCC) compiler.
    b. Mitaky fametrahana .rbf ny fitaovana flash file amin'ny endrika OpenCL eo amin'ny fizarana FAT32 amin'ny karatra tselatra micro SD. Amin'izao fotoana izao, ity fizarazarana ity dia tsy tafapetraka rehefa mampiasa ny SDK ny birao. Noho izany, ny fomba tsara indrindra hanavaozana ny fisarahana dia ny fampiasana mpamaky karatra flash sy ny milina fampandrosoana.
  4. Rehefa mifamadika eo anelanelan'ny Intel FPGA SDK ho an'ny OpenCL Offline Compiler azo tanterahina files (.aocx) izay mifanitsy amin'ny variana board samihafa (izany hoe c5soc sy c5soc_sharedonly), tsy maintsy mampiasa ny programa SDK ianao hampidirana ny .aocx file ho an'ny variana board vaovao sambany. Raha toa ianao ka mampandeha fotsiny ny fampiharana mpampiantrano amin'ny fampiasana variana birao vaovao fa ny FPGA dia misy ny sary avy amin'ny variana board hafa, dia mety hisy hadisoana mahafaty.
  5. Ny .qxp file dia tsy ahitana ny andraikitry ny fizarana interface tsara satria ny rindrambaiko Quartus Prime dia mahafeno hatrany ny fepetra takian'ny fotoana amin'ity fizarana ity.
  6. Rehefa mampatanjaka ny solaitrabe ianao dia apetraka amin'ny isa kisendrasendra ny adiresin'ny media access control (MAC). Raha tsy mamela an'io fihetsika io ny politikan'ny LAN anao, dia apetraho ny adiresy MAC amin'ny fanatanterahana ireto asa manaraka ireto:
    a. Mandritra ny fanamafisam-pahefana U-Boot, tsindrio ny fanalahidy rehetra mba hidirana amin'ny baikon'ny baiko U-Boot.
    b. Type setenv ethaddr 00:07:ed:00:00:03 amin'ny command prompt.
    Afaka misafidy adiresy MAC ianao.
    c. Soraty ny baiko saveenv.
    d. Avereno indray ny solaitrabe.

1.8 Tantaran'ny fanavaozana ny antontan-taratasy
Tabilao 1.
Tantara fanavaozana antontan-taratasy momba ny Intel FPGA SDK ho an'ny OpenCL Cyclone V SoC
Toro-làlana momba ny fampidiran-dresaka ho an'ny Sehatry ny Fampandrosoana Kit

Daty Malagasy Bible FIOVANA
Mey-17 2017.05.08 •Famotsorana fikojakojana.
Oktobra 2016 2016.10.31 Altera SDK nohavaozina ho an'ny OpenCL ho Intel FPGA SDK ho an'ny OpenCL.
Altera Offline Compiler nohavaozina ho Intel FPGA SDK ho an'ny OpenCL Offline Compiler.
Mey-16 2016.05.02 •Torolalana fanovana momba ny fananganana sy fanovana sary karatra SD flash.
• Toromarika novaina momba ny famerenana ny kernel Linux sy ny mpamily kernel OpenCL Linux.
Novambra-15 2015.11.02 • Famoahana fikojakojana, ary nanova ny trangan'ny Quartus II ho Quartus Prime.
Mey-15 15.0.0 • Ao amin'ny FPGA Reconfiguration, nesorina ny toromarika hamerenana ny FPGA core
miaraka amin'ny a. sary rbf amin'ny fiantsoana ny saka fileanarana>. rbf
> /dev/ fpga0 baiko satria tsy soso-kevitra ity fomba ity.
Desambra-14 14.1.0 •Novana anarana ho Altera Cyclone V SoC Development Kit Reference Platform Porting Guide.
• Nohavaozina tamin'ny programa aocl ny fampiasa reprogramafileanarana>.aocx utility command.
• Nohavaozina ny fitaovana diagnostika amin'ny diagnosy aocl sy ny diagnostika aocl baiko fampiasa.
• Nohavaozina ny fomba fiasa ao amin'ny fizarana Porting the Reference Platform amin'ny SoC Board anao mba hampidirana torolalana momba ny fandefasana sy fanovana ny fizarazaran'ny board c5soc mba hamoronana fisarahana manadio fotoana ho an'ny fikorianan'ny fotoana azo antoka.
•Nampiditra ny lohahevitra Fanavaozana ny Sehatry ny Reference Ported mba hamaritana ny fomba fiasa amin'ireto asa manaraka ireto:
1. Tsy tafiditra ao amin'ny fizarazaran'ny board ny hard processeur system (HPS).
2. Fanavaozana ny sary karatra SD flash
• Nohavaozina ny fizarana sary momba ny fananganana karatra SD Flash. Atolotra ny fampiasana ny kinova 14.0 amin'ny sary Golden System Reference Design (GSRD) ho toerana fiaingana fa tsy ilay sary misy amin'ny SoC Embedded Design Suite (EDS).
• Nohavaozina ny fizarana Recompile ny Linux Kernel sy ny OpenCL Linux Kernel Driver:
1. Nampiana toromarika mba hametrahana ny fari-piainana CROSS COMPILE.
2. Nanova ny baiko ataonao mba hanamarinana fa ny CMA dia nahomby.
Jolay-14 14.0.0 •Famoahana voalohany.

Documents / Loharano

intel FPGA SDK ho an'ny OpenCL [pdf] Torolàlana ho an'ny mpampiasa
FPGA SDK ho an'ny OpenCL, FPGA SDK, SDK ho an'ny OpenCL, SDK

References

Mametraha hevitra

Tsy havoaka ny adiresy mailakao. Voamarika ireo saha ilaina *