intel - logoFPGA SDK por OpenCL
Uzantgvidilo

UG-OCL009
2017.05.08
Laste ĝisdatigita por Intel® Quartus® Prime Design Suite: 17.0

RENPHO RF FM059HS WiFi Smart Foot Massager - ikono 5Abonu
SAMSUNG SM A136UZKZAIO Galaxy A13 5G Smartphone - ikono 12Sendu Rimarkojn

Intel® FPGA SDK por OpenCL™ Intel® Cyclone®V SoC Development Kit Reference Platform Porting Guide

V SoC Development Kit Reference Platform Porting Guide priskribas la aparataron kaj programaran dezajnon de la Intel Cyclone V SoC Development Kit Reference Platform (c5soc) por uzo kun la Intel Software Development Kit (SDK) por OpenCL La Intel ® FPGA SDK por OpenCL ™ Intel Cyclone ® . Antaŭ ol komenci, Intel forte rekomendas, ke vi konatiĝu kun la enhavo de la sekvaj dokumentoj:

  1. Intel FPGA SDK por OpenCLIntel Cyclone V SoC Komenca Gvidilo
  2. Intel FPGA SDK for OpenCL Custom Platform Toolkit User Guide
  3. Cyclone V Device Handbook, Volumo 3: Malmola Procesoro Sistemo Teknika Referenca Manlibro Krome, raportu al la Cyclone V SoC Development Kit kaj SoC Embedded Design Suite paĝo de la Altera webretejo por pliaj informoj. 1 2

Atentu: Intel supozas, ke vi havas profundan komprenon pri la Uzanto-Gvidilo de Intel FPGA SDK por OpenCL Custom Platform Toolkit. La Cyclone V SoC Development Kit Reference Platform Porting Guide ne priskribas la uzadon de la Propra Platform Toolkit de la SDK por efektivigi Propran Platformon por la Cyclone V SoC Development Kit. Ĝi nur priskribas la diferencojn inter la SDK-subteno sur la Cyclone V SoC Development Kit kaj senmarka Intel FPGA SDK por OpenCL Propra Platformo.

Rilataj Ligiloj

  • Intel FPGA SDK por OpenCL Cyclone V SoC Komenca Gvidilo
  • Intel FPGA SDK for OpenCL Custom Platform Toolkit User Guide
  • Cyclone V Device Handbook, Volumo 3: Hard Processor System Technical Reference Manual
  • Cyclone V SoC Development Kit kaj paĝo SoC Embedded Design Suite sur la Altera webretejo
  1. OpenCL kaj la emblemo de OpenCL estas varmarkoj de Apple Inc. uzataj laŭ permeso de Khronos Group™.
  2. La Intel FPGA SDK por OpenCL baziĝas sur publikigita Khronos Specification, kaj trapasis la Khronos Conformance Testing Process. Nuna konforma stato troveblas ĉe www.khronos.org/conformance.

Intel Corporation. Ĉiuj rajtoj rezervitaj. Intel, la Intel-emblemo, Altera, Arria, Cyclone, Enpirion, MAX, Nios, Quartus kaj Stratix vortoj kaj emblemoj estas varmarkoj de Intel Corporation aŭ ĝiaj filioj en Usono kaj/aŭ aliaj landoj. Intel garantias rendimenton de siaj FPGA kaj duonkonduktaĵoproduktoj laŭ nunaj specifoj konforme al la norma garantio de Intel, sed rezervas la rajton fari ŝanĝojn al ajnaj produktoj kaj servoj iam ajn sen avizo. Intel supozas neniun respondecon aŭ respondecon de la apliko aŭ uzo de ajna informo, produkto aŭ servo priskribita ĉi tie krom kiel eksplicite konsentite skribe de Intel. Intel-klientoj estas konsilitaj akiri la lastan version de aparato-specifoj antaŭ ol fidi iun ajn publikigitan informon kaj antaŭ ol fari mendojn por produktoj aŭ servoj.
*Aliaj nomoj kaj markoj povas esti postulataj kiel posedaĵo de aliaj.

1.1.1 Cyclone V SoC Development Kit Reference Platform Board Variants
La Intel FPGA SDK por OpenCL Cyclone V SoC Development Kit Reference Platform inkluzivas du tabulvariaĵojn.

  • c5soc tabulo
    Ĉi tiu defaŭlta tabulo disponigas aliron al du DDR-memorbankoj. La HPS DDR estas alirebla de kaj la FPGA kaj la CPU. La FPGA DDR estas nur alirebla de la FPGA.
  • c5soc_sharedonly tabulo
    Ĉi tiu tabulo-variaĵo enhavas nur HPS DDR-konektecon. La FPGA DDR ne estas alirebla. Ĉi tiu tabulo-variaĵo estas pli efika ĉar malpli da aparataro estas necesa por subteni unu DDR-memorbankon. La c5soc_sharedonly-tabulo ankaŭ estas bona prototipa platformo por fina produktadtabulo kun ununura DDR-memorbanko.
    Por celi ĉi tiun tabulvariaĵon dum kompilado de via OpenCL-kerno, inkludu la opcion -board c5soc_sharedonly en via aoc-komando.
    Por pliaj informoj pri la –tabulo opcio de la aoc-komando, raportu al la Intel FPGA SDK por OpenCL-Programming Guide.

Rilataj Ligiloj
Kompilante Kernon por Specifa FPGA-Estraro (-tabulo )
1.1.2 Enhavo de la Referenca Platformo de Cyclone V SoC Development Kit
La Referenca Platformo de Cyclone V SoC Development Kit konsistas el la jenaj files kaj adresaroj:

File aŭ Dosierujo Priskribo
board_env.xml Etendebla Markada Lingvo (XML) file tio priskribas c5soc al la Intel FPGA SDK por OpenCL.
linux_sd_card_image.tgz Bildo de kunpremita fulmkarto SD file kiu enhavas ĉion, kion SDK-uzanto bezonas por uzi la Cyclone V SoC Development Kit kun la SDK.
brako32 Dosierujo kiu enhavas la jenon:

1.1.3 Rilataj Trajtoj de la Cyclone V SoC Development Kit

La sekva listo elstarigas la komponantojn kaj funkciojn de Cyclone V SoC Development Kit, kiuj rilatas al la Intel FPGA SDK por OpenCL:

  • Du-kerna ARM Cortex-A9 CPU funkcianta 32-bitan Linukso.
  • Altnivela eXtensible Interface (AXI) buso inter la HPS kaj la FPGA-kernŝtofo.
  • Du harditaj DDR-memorregiloj, ĉiu konektanta al 1 gigabajto (GB) DDR3 SDRAM.
    — Unu DDR-regilo estas alirebla nur por la FPGA-kerno (tio estas, FPGA DDR).
    — La alia DDR-regilo estas alirebla por kaj la HPS kaj la FPGA (tio estas, HPS DDR). Ĉi tiu komuna regilo permesas senpage kundividon de memoro inter la CPU kaj la FPGA-kerno.
  • La CPU povas reagordi la FPGA-kernŝtofon.

1.1.3.1 Cyclone V SoC Development Kit Referenca Platformo Dezajnaj Celoj kaj Decidoj Intel bazas la efektivigon de la Cyclone V SoC Development Kit Referenca Platformo sur pluraj dezajnaj celoj kaj decidoj. Intel rekomendas, ke vi pripensu ĉi tiujn celojn kaj decidojn kiam vi portas ĉi tiun Referencan Platformon al via SoC FPGA-tabulo.
Malsupre estas la c5soc-dezajnaj celoj:

  1. Provizu la plej altan eblan bendolarĝon inter kernoj sur la FPGA kaj la DDR-memorsistemo(j).
  2. Certigu, ke komputadoj sur la FPGA (t.e., OpenCL-kernoj) ne malhelpas aliajn CPU-taskojn, kiuj povus inkluzivi priservajn ekstercentrajn.
  3. Lasu kiel eble plej multe da FPGA-resursoj por kernaj komputadoj anstataŭ interfacaj komponantoj.

Malsupre estas la altnivelaj projektaj decidoj, kiuj estas la rektaj sekvoj de la dezajnaj celoj de Intel:

  1. La Referenca Platformo nur uzas malmolajn DDR-memorregilojn kun la plej larĝa ebla agordo (256 bitoj).
  2. La FPGA komunikas kun la HPS DDR-memorregilo rekte, sen implikado de la AXI-buso kaj la L3-ŝaltilo ene de la HPS. La rekta komunikado disponigas la plej bonan eblan bendolarĝon al DDR, kaj konservas FPGA-komputadon de interferado kun komunikadoj inter la CPU kaj ĝia periferio.
  3. Disvast-kolekta rekta memoraliro (SG-DMA) ne estas parto de la FPGA-interfaca logiko. Anstataŭ transdoni grandajn kvantojn da datumoj inter DDR-memorsistemoj, stoku la datumojn en la komuna HPS DDR. Rekta aliro al CPU-memoro de la FPGA estas pli efika ol DMA. Ĝi ŝparas aparatajn rimedojn (tio estas, FPGA-areo) kaj simpligas la Linuksan kernan pelilon.
    Averto: Memortranslokigo inter la komuna HPS DDR-sistemo kaj la DDR-sistemo alirebla nur al la FPGA estas tre malrapida. Se vi elektas
    translokigi memoron tiamaniere, uzu ĝin nur por tre malgrandaj kvantoj da datumoj.
  4. La gastiganto kaj la aparato elfaras ne-DMA datumtranslokigon inter unu la alian per la HPS-al-FPGA (H2F) ponto, uzante nur ununuran 32-bitan havenon. La kialo estas, sen DMA, la Linukso-kerno povas nur eldoni ununuran 32-bitan legadon aŭ skribpeton, do ne necesas havi pli larĝan konekton.
  5. La gastiganto sendas kontrolsignalojn al la aparato per malpeza H2F (LH2F) ponto.
    Ĉar kontrolsignaloj de la gastiganto ĝis la aparato estas malaltaj bendolarĝaj signaloj, LH2F-ponto estas ideala por la tasko.

1.2 Porti la Referencan Platformon al Via SoC FPGA-Estraro
Por porti la Referencan Platformon de Cyclone V SoC Development Kit al via SoC FPGA-tabulo, plenumu la sekvajn taskojn:

  1. Elektu la unu DDR-memoron aŭ la du DDR-memorversion de la Referenca Platformo c5soc kiel la deirpunkton de via dezajno.
  2. Ĝisdatigu la pinlokojn en la ALTERAOCLSDKROOT/board/c5soc/ /top.qsf file, kie ALTERAOCLSDKROOT estas la vojo al la loko de la Intel FPGA SDK por OpenCL-instalado, kaj estas la dosieruja nomo de la tabulvariaĵo. La dosierujo c5soc_sharedonly estas por la tabulvariaĵo kun unu DDR-memorsistemo. La dosierujo c5soc estas por la tabulvariaĵo kun du DDR-memorsistemoj.
  3.  Ĝisdatigu la DDR-agordojn por la HPS kaj/aŭ FPGA SDRAM-blokoj en la ALTERAOCLSDKROOT/board/c5soc/ /system.qsys file.
    4. Ĉiuj Intel FPGA SDK por OpenCL preferataj tabuldezajnoj devas atingi garantiitan tempan fermon. Kiel tia, la allokigo de la dezajno devas esti pura. Por porti la c5soc-tabuldiskon (acl_iface_partition.qxp) al via SoC FPGA-tabulo, plenumu la sekvajn taskojn:
    Por detalaj instrukcioj pri modifado kaj konservado de la tabulosekcio, raportu al la Quartus
    Prime Incremental Compilation for Hierarchical and Team-Based Design ĉapitro de la Quartus Prime Standard Edition Handbook.
    a. Forigu la acl_iface_partition.qxp el la dosierujo ALTERAOCLSDKROOT/board/c5soc/c5soc.
    b. Ebligu la regionon acl_iface_region LogicLock™ ŝanĝante la Tcl-ordon set_global_assignment -name LL_ENABLED OFF -section_id acl_iface_region al set_global_assignment -name LL_ENABLED ON -section_id acl_iface_region
    c. Kompilu OpenCL-kernon por via tabulo.
    d. Se necese, ĝustigu la grandecon kaj lokon de la regiono LogicLock.
    e. Kiam vi estas kontenta, ke la lokigo de via dezajno estas ĝustatempe pura, eksportu tiun sekcion kiel la acl_iface_partition.qxp Quartus Prime Exported Partition File.
    Kiel priskribite en la sekcio Establigo de Garantiita Tempofluo de la AIntel FPGA SDK por OpenCL Custom Platform Toolkit User Guide, per importado de ĉi tiu .qxp  file en la altnivelan dezajnon, vi plenumas la postulon provizi tabuldezajnon kun garantiita temp-fermfluo.
    Por faktoroj, kiuj povus influi la kvaliton de rezultoj (QoR) de via eksportita sekcio, referu al la Ĝenerala Kvalito de Rezultaj Konsideroj por la Eksportita Tabulo-Sekcio en la Gvidilo de Uzanto de Intel FPGA SDK por OpenCL Custom Platform Toolkit.
    f. Malebligu la regionon LogicLock de acl_iface_region per revenado de la komando en Paŝo 2 reen al set_global_assignment -name LL_ENABLED OFF section_id acl_iface_region.
  4. Se via SoC FPGA-tabulo uzas malsamajn pinglojn kaj periferiojn de la HPS-bloko, regeneru la antaŭŝargilon kaj la aparatan arbofonton (DTS) file. Se vi ŝanĝas la agordojn de la memorregilo de HPS DDR, regeneru la antaŭŝargilon.
  5. Kreu la bildon de la fulmkarto SD.
  6. Kreu vian Propran Platformon, kiu inkluzivas la bildon de la fulmkarto SD.
  7. Konsideru krei rultempan medioversion de via Propra Platformo por uzi kun la Intel FPGA Runtime Environment (RTE) por OpenCL. La RTE-versio de via Propra Platformo ne inkluzivas aparatarajn dosierujojn kaj la bildon de SDa fulmkarto. Ĉi tiu Propra Platformo ŝarĝas sur la SoC FPGA-sistemo por permesi al gastigaj aplikoj funkcii. Kontraste, la SDK-versio de la Propra Platformo estas necesa por la SDK por kompili OpenCL-kernojn.
    Konsilo: Vi povas uzi la SDK-version de via Propra Platformo por la RTE. Ŝpari
    spaco, forigu la bildon de la SDa fulmkarto de la RTE-versio de via Propra Platformo.
  8. Testu vian Propran Platformon.
    Raportu la sekcion Testing the Hardware Design de la Intel FPGA SDK for OpenCL Custom Platform Toolkit User Guide por pliaj informoj.

Rilataj Ligiloj

  • Testante la Aparataro-Dezajno
  • Quartus Prime Incremental Compilation por Hierarkia kaj Team-Bazita Dezajno
  • Establante Garantiitan Tempofluon
  • Ĝenerala Kvalito de Rezultaj Konsideroj por la Eksportita Estraro-Dispartigo

1.2.1 Ĝisdatigi Portitan Referencan Platformon
En la nuna versio de la Cyclone V SoC Development Kit Reference Platform, la HPS-bloko estas ene de la sekcio, kiu difinas ĉiun nekernan logikon. Tamen, vi ne povas eksporti la HPS kiel parto de la .qxp file. Por ĝisdatigi ekzistantan Propran Platformon, kiun vi modifis de antaŭa versio de c5soc, efektivigu la QXP-konservan fluon, ĝisdatigu la bildon de la SDa fulmkarto por akiri la lastan rultempan medion, kaj ĝisdatigu la board_spec.xml. file por ebligi aŭtomigradon.
La Altera® SDK por OpenCL versio 14.1 kaj plie sondas la board_spec.xml file por informoj pri estraro, kaj efektivigas aŭtomatajn ĝisdatigojn. Ĉar vi modifas la
desegno per efektivigado de la QXP-konserva fluo, vi devas ĝisdatigi la board_spec.xml file al ĝia formato en la nuna versio. Ĝisdatigante la file permesas al la SDK distingi inter nekonservitaj Propraj Platformoj kaj la nunaj QXP-bazitaj Propraj Platformoj. Vidu al Propra Platforma Aŭtomigrado por Antaŭen Kongruo en la Uzanto-Gvidilo de Intel FPGA SDK por OpenCL Propra Platformo Toolkit por pliaj informoj.

  1. Por efektivigi la QXP-konservan fluon en Cyclone V SoC FPGA-hardvaro-dezajno kiu estas adaptita de antaŭa versio de c5soc, faru la sekvajn paŝojn por krei subsekcion por ekskludi la HPS de la .qxp. file:
    a. Antaŭ krei sekcion ĉirkaŭ la nekerna logiko, kreu vadon ĉirkaŭ la HPS en la .qsf Quartus Prime Settings. File.
    Por ekzample:
    # Mane dispartigu la petskribon kiu modeligas la HPS-dediĉitan I/O set_instance_assignment -name PARTITION_HIERARCHY borde_18261 -al "system:the_system|system_acl_iface:acl_iface|system_acl_iface_hps_0:hps_0|system_acl_iface_hps__:0_hps_hps_io system_acl_iface_hps_0_hps_io_border:limo” -section_id “system_acl_iface_hps_0_hps_io_border:limo”
    # Agordu sekcion por esti HPS_PARTITION-tipo por esti ĝuste prilaborita de la resto de Quartus
    set_global_assignment -name PARTITION_TYPE HPS_PARTITION -section_id “system_acl_iface_hps_0_hps_io_border:border”
    quartus_cdb supro -c supro
    –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
    Post kiam vi ekskludas la HPS de la sekcio, vi povas importi la .qxp file kaj kompilu vian dezajnon.
  2. Ĝisdatigu la bildon de la fulmkarto SD kun la nuna versio de la Intel FPGA RTE por OpenCL plenumante la sekvajn taskojn:
    a. Muntu la file asignotabelo (fat32) kaj etendita file sistemo (ext3) sekcioj en la ekzistanta bildo kiel buklo-reen aparatoj. Por detalaj instrukcioj, raportu al Paŝo 2 en Konstruado de Bildo de SDa Flash Card.
    b. En la dosierujo /home/root/opencl_arm32_rte, forigu la files de la antaŭa versio de la RTE.
    c. Elŝutu kaj malpaku la nunan version de la RTE en la dosierujon /home/root/opencl_arm32_rte.
    d. En la /driver/version.h file de via Propra Platformo, ĝisdatigu la taskon ACL_DRIVER_VERSION al . (ekzample, 16.1.x, kie 16.1 estas la SDK-versio, kaj x estas la ŝofora versio, kiun vi starigis).
    e. Rekonstruu la ŝoforon.
    f. Forigu la aparataron(j)n de via Propra Platformo. Kopiu la Propran Platformon, kune kun la ĝisdatigita pelilo, al la dosierujo /home/root/opencl_arm_rte/board.
    g. Kopiu la Altera.icd file el la dosierujo /home/root/opencl_arm32_rte kaj aldonu ĝin al la dosierujo /etc/OpenCL/vendors.
    h. Malmuntu kaj provu la novan bildon. Por detalaj instrukcioj, raportu al Paŝoj 8 ĝis 11 en Konstruado de Bildo de SDa Flash Card.

Rilataj Ligiloj

  • Krei Bildon de SD Flash Card sur paĝo 14
    Vi ankaŭ havas la eblon krei novan bildon de SDa fulmkarto.
  • Propra Platforma Aŭtomigrado por Antaŭen-Kongruo

1.3 Programaro-Subteno por Komuna Memoro
Komuna fizika memoro inter FPGA kaj CPU estas la preferata memoro por OpenCL-kernoj kurantaj sur SoC FPGAoj. Ĉar la FPGA aliras komunan fizikan memoron, kontraste al komuna virtuala memoro, ĝi ne havas aliron al la paĝtabeloj de la CPU kiuj mapas uzantajn virtualajn adresojn al fizikaj paĝaj adresoj.
Koncerne la aparataron, OpenCL-kernoj aliras komunan fizikan memoron per rekta ligo al la malmola memorregilo HPS DDR. Koncerne la programaron, subteno por komuna fizika memoro implikas la sekvajn konsiderojn:

  1. Tipaj programarefektivigoj por asignado de memoro sur la CPU (ekzample, la malloc() funkcio) ne povas asigni memorregionon kiun la FPGA povas uzi.
    Memoro kiun la malloc() funkcio asignas estas apuda en la virtuala memora adresspaco, sed ajnaj subestaj fizikaj paĝoj verŝajne ne estos apudaj fizike. Kiel tia, la gastiganto devas povi asigni fizike apudajn memorregionojn. Tamen, ĉi tiu kapablo ne ekzistas en uzantspacaj aplikoj sur Linukso. Tial, la Linuksa kerno-ŝoforo devas plenumi la asignon.
  2. La OpenCL SoC FPGA Linukso-kerna ŝoforo inkluzivas la mmap() funkcion por asigni komunan fizikan memoron kaj mapi ĝin en la uzantspacon. La mmap() funkcio uzas la norman Linuksan kernelvokon dma_alloc_coherent() por peti fizike apudajn memorregionojn por kunhavigi kun aparato.
  3. En la defaŭlta Linukso-kerno, dma_alloc_coherent () ne asignas fizike apudan memoron pli ol 0.5 megabajtojn (MB) en grandeco. Por permesi al dma_alloc_coherent() asigni grandajn kvantojn da fizike apuda memoro, ebligu la funkcion de apuda memor-asignilo (CMA) de la Linukso-kerno kaj tiam rekompilu la Linuksan kernon.
    Por la Cyclone V SoC Development Kit Reference Platform, CMA administras 512 MB el 1 GB de fizika memoro. Vi povas pliigi aŭ malpliigi ĉi tiun valoron, depende de la kvanto de komuna memoro, kiun la aplikaĵo postulas. La dma_alloc_coherent()-voko eble ne povas asigni la plenajn 512 MB da fizike apuda memoro; tamen, ĝi povas rutine akiri proksimume 450 MB da memoro.
  4. La CPU povas konservi memoron, kiun la dma_alloc_coherent() alvoko asignas. Aparte, skribaj operacioj de la gastiga aplikaĵo ne estas videblaj al la OpenCL-kernoj. La mmap() funkcio en la OpenCL SoC FPGA Linukso-kerna pelilo ankaŭ enhavas vokojn al la pgprot_noncached() aŭ remap_pf_range() funkcio por malŝalti kaŝmemoron por ĉi tiu regiono de memoro eksplicite.
  5. Post kiam la dma_alloc_coherent() funkcio asignas la fizike apudan memoron, la mmap() funkcio resendas la virtualan adreson al la komenco de la intervalo, kiu estas la adresperiodo de la memoro, kiun vi asignas. La gastiga aplikaĵo postulas ĉi tiun virtualan adreson por aliri la memoron. Aliflanke, la OpenCL-kernoj postulas fizikajn adresojn. La Linuksa kerno-ŝoforo observas la virtualan-al-fizikan adreson mapadon. Vi povas mapi la fizikajn adresojn, kiujn mmap() resendas al realaj fizikaj adresoj aldonante demandon al la pelilo.
    La alvoko de aocl_mmd_shared_mem_alloc() MMD-aplika interfaco (API) enhavas la sekvajn demandojn:
    a. La mmap() funkcio kiu asignas memoron kaj resendas la virtualan adreson.
    b. La ekstra demando, kiu mapas la revenitan virtualan adreson al fizika adreso.
    La aocl_mmd_shared_mem_alloc() MMD API-voko tiam resendas du adresojn
    —la fakta redonita adreso estas la virtuala adreso, kaj la fizika adreso iras al device_ptr_out.
    Notu: La ŝoforo povas nur mapi la virtualajn adresojn, kiujn la funkcio mmap() resendas al fizikaj adresoj. Se vi petas la fizikan adreson de iu alia virtuala montrilo, la pelilo resendas NULL-valoron.

Averto: La Intel FPGA SDK por OpenCL rultempaj bibliotekoj supozas ke la komuna memoro estas la unua memoro listigita en la board_spec.xml file. Alivorte, la fizika adreso, kiun la Linuksa kerno-ŝoforo akiras, fariĝas la Avalon®-adreso, kiun la OpenCL-kerno pasas al la HPS SDRAM.
Koncerne al la rultempa biblioteko, uzu la clCreateBuffer() alvokon por asigni la komunan memoron kiel aparatbufron jene:

  • Por la varianto de du-DDR-tabulo kun ambaŭ komuna kaj nekomunigita memoro, clCreateBuffer() asignas komunan memoron se vi specifas la flagon CL_MEM_USE_HOST_PTR. Uzado de aliaj flagoj igas clCreateBuffer() asigni bufron en la nedividita memoro.
  • Por la unu-DDR-tabulo-variaĵo kun nur komuna memoro, clCreateBuffer() asignas komunan memoron sendepende de kiu flago vi specifas.
    Nuntempe, 32-bita Linukso-subteno sur ARM-CPU regas la amplekson de komuna memorsubteno en la SDK-rultempaj bibliotekoj. Alivorte, rultempaj bibliotekoj kompilitaj al aliaj medioj (ekzample, x86_64 Linukso aŭ 64-bita Vindozo) ne subtenas komunan memoron.
    C5soc ne efektivigis heterogenan memoron por distingi inter komuna kaj nedividita memoro pro la sekvaj kialoj:
    1. Historio—Heterogena memorsubteno ne estis havebla kiam komuna memorsubteno estis origine kreita.
    2. Unuforma interfaco—Ĉar OpenCL estas malferma normo, Intel konservas konsistencon inter heterogenaj komputikplatformvendistoj. Tial, la sama interfaco kiel la arkitekturoj de aliaj tabulvendistoj estas utiligita por asigni kaj uzi komunan memoron.

1.4 FPGA-Reagordo
Por SoC FPGAoj, la CPU povas reagordi la FPGA-kernŝtofon sen interrompi la operacion de la CPU. La hardvarbloko de FPGA Manager, kiu interkrurigas la HPS kaj la kerna FPGA faras la reagordon. La Linukso-kerno inkluzivas pelilon, kiu ebligas facilan aliron al la FPGA-Manaĝero.

  • Al view la statuso de la FPGA-kerno, alvoku la katon /sys/class/fpga/fpga0/ status-komando.
    La programo Intel FPGA SDK por OpenCL disponebla kun la Referenca Platformo de Cyclone V SoC Development Kit uzas ĉi tiun interfacon por programi la FPGA. Dum reprogramado de FPGA-kerno kun kuranta CPU, la programa utileco plenumas ĉiujn jenajn taskojn:
    1. Antaŭ reprogramado, malŝaltu ĉiujn komunikajn pontojn inter la FPGA kaj la HPS, ambaŭ H2F kaj LH2F-pontoj.
    Reŝaltu ĉi tiujn pontojn post finiĝo de reprogramado.
    Atentu: La OpenCL-sistemo ne uzas la ponton FPGA-al-HPS (F2H). Vidu al la sekcio de HPS-FPGA-Interfacoj en la Manlibro pri Aparato de Cyclone V, Volumo 3: Manlibro pri Teknika Referenca Sistemo de Malmola Procesoro por pliaj informoj.
    2. Certigu, ke la ligo inter la FPGA kaj la HPS DDR-regilo estas malŝaltita dum reprogramado.
    3. Certigu, ke la FPGA-interrompoj sur la FPGA estas malŝaltitaj dum reprogramado.
    Ankaŭ sciigu la ŝoforon malakcepti iujn ajn interrompojn de la FPGA dum reprogramado.

Konsultu la fontkodon de la programa utileco por detaloj pri la efektiva efektivigo.

Averto: Ne ŝanĝu la agordon de la HPS DDR-regilo kiam la CPU funkcias.
Fari tion povus kaŭzi mortigan sistemaran eraron ĉar vi eble ŝanĝos la agordon de la DDR-regilo kiam estas elstaraj memortransakcioj de la CPU. Ĉi tio signifas, ke kiam la CPU funkcias, vi eble ne reprogramas la FPGA-kernon kun bildo, kiu uzas HPS DDR en malsama agordo.
Memoru, ke la OpenCL-sistemo, kaj la Golden Hardware referenca dezajno disponebla kun la Intel SoC FPGA Embedded Design Suite (EDS), metas la HPS DDR en ununuran 256-bitan reĝimon.
CPU-sistempartoj kiel ekzemple la branĉa prognozilo aŭ la paĝtabelo prefetcher eble elsendi DDR-komandojn eĉ kiam ŝajnas, ke nenio funkcias sur la CPU.
Tial, lanĉtempo estas la nura sekura tempo por agordi la agordon de HPS DDR-regilo.
Ĉi tio ankaŭ implicas, ke U-boto devas havi krudan binaron file (.rbf) bildo por ŝargi en memoron. Alie, vi eble ebligos la HPS DDR kun neuzataj havenoj sur la FPGA kaj poste eble ŝanĝus la havenajn agordojn. Tial, la kerno-ŝoforo de OpenCL Linukso ne plu inkluzivas la logikon necesan por agordi la agordon de la regilo HPS DDR.
La SW3 duobla en-linia pakaĵo (DIP) ŝaltiloj sur la Cylone V SoC Development Kit kontrolas la atendatan formon de la .rbf bildo (tio estas, ĉu la file estas kunpremita kaj/aŭ ĉifrita). C5soc, kaj la Golden Hardware Reference Design havebla kun la SoC EDS, inkluzivas kunpremitajn sed neĉifritajn .rbf-bildojn. La SW3 DIP-ŝaltilo-agordoj priskribitaj en la Intel FPGA SDK por OpenCL Cyclone V SoC Getting Started Guide kongruas kun ĉi tiu .rbf-bilda agordo.

Rilataj Ligiloj

  • HPS-FPGA-Interfacoj
  • Agordante la SW3-Ŝaltiloj

1.4.1 FPGA-Sistema Arkitekturo-Detaloj
Subteno por la Cyclone V SoC Development Kit Reference Platform baziĝas sur la Stratix® V Reference Platform (s5_ref), havebla kun la Intel FPGA SDK por OpenCL.
La ĝenerala organizo de la c5soc Qsys-sistemo kaj la kernelŝoforo estas tre similaj al tiuj en s5_ref.
La sekvaj FPGA-kernkomponentoj estas la samaj en kaj c5soc kaj s5_ref:

  • VERSION_ID bloko
  • Ripoza mekanismo
  • Memorbanka disigilo
  • Cache-snoop-interfaco
  • Kerna horloĝo
  • Kontrolu registro-aliron (CRA) blokojn

1.5 Konstruado de Bildo de SD Flash Card
Ĉar la Cyclone V SoC FPGA estas plena sistemo sur blato, vi respondecas pri liveri la plenan difinon de la sistemo. Intel rekomendas, ke vi liveru ĝin en formo de bildo de SD-karto. La Intel FPGA SDK por OpenCL-uzanto povas simple skribi la bildon al la mikro SD-flash-karto kaj la SoC FPGA-tabulo estas preta por uzo.
Modifante Ekzistantan Bildon de Flash Card SD sur paĝo 13
Intel rekomendas, ke vi simple modifi la disponeblan bildon per la Referenca Platformo de Cyclone V SoC Development Kit. Vi ankaŭ havas la eblon krei novan bildon de SDa fulmkarto.
Krei Bildon de SD Flash Card sur paĝo 14
Vi ankaŭ havas la eblon krei novan bildon de SDa fulmkarto.

1.5.1 Modifante Ekzistantan Bildon de Flash Card SD
Intel rekomendas, ke vi simple modifu la disponeblan bildon kun la Cyclone V SoC
Referenca Platformo pri Disvolviĝo. Vi ankaŭ havas la eblon krei novan bildon de SDa fulmkarto.
La bildo c5soc linux_sd_card_image.tgz file disponeblas en la dosierujo ALTERAOCLSDKROOT/board/c5soc, kie ALTERAOCLSDKROOT montras la vojon de la instal-dosierujo de Intel FPGA SDK por OpenCL.

Atentu: Por modifi la bildon de la SDa fulmkarto, vi devas havi root- aŭ sudo-privilegiojn.

  1. Por malkunpremi la $ALTERAOCLSDKROOT/board/c5soc/linux_sd_card_image.tgz file, rulu la komandon tar xvfzlinux_sd_card_image.tgz.
  2. Kompilu la hello_world OpenCL ekzampLe dezajno uzante vian Propra Platforma subteno. Alinomi la .rbf file ke la Intel FPGA SDK por OpenCL Offline Compiler generas kiel opencl.rbf, kaj metu ĝin sur la fat32-diskon ene de la bildo de la fulmkarto SD.
    Vi povas elŝuti la hello_world eksampla dezajno de la OpenCL Design Examples paĝo sur la Altera webretejo.
  3. Metu la .rbf file en la fat32-sekcion de la bildkarto.
    Atentu: La fat32-diskodo devas enhavi ambaŭ la zImage file kaj la .rbf file. Sen .rbf file, fatala eraro okazos kiam vi enmetas la ŝoforon.
  4. Post kiam vi kreas la bildon de SD-karto, skribu ĝin al mikro SD-karto alvokante la jenan komandon: sudo dd if=/path/to/sdcard/image.bin of=/dev/sdcard
  5. Por testi la bildon de via SDa fulmkarto, faru la sekvajn taskojn:
    a. Enmetu la mikro-SD-karton en la SoC FPGA-tabulo.
    b. Ebligu la tabulon.
    c. Alvoku la aocl-diagnozi ilan komandon.

1.5.2 Krei bildon de SD-Fulmkarto
Vi ankaŭ havas la eblon krei novan bildon de SDa fulmkarto. Ĝeneralaj instrukcioj pri konstruado de nova SD-karto-bildo kaj rekonstruado de ekzistanta SD-karto-bildo estas haveblaj sur la paĝo GSRD v14.0.2 - SD Card de la RocketBoards.org webretejo.
La paŝoj malsupre priskribas la proceduron por krei la bildon linux_sd_card_image.tgz el la bildo de la SDa flash-karto de Golden System Reference Design (GSRD):
Notu:
Por krei la bildon el la bildo c5soc, plenumu ĉiujn aplikeblajn taskojn priskribitajn en ĉi tiu proceduro.

  1. Elŝutu kaj malpaku la GSRD SD-bildkarton versio 14.0 de Rocketboards.org.
  2. Muntu la file asignotabelo (fat32) kaj etendita file sistemo (ext3) subdiskoj en ĉi tiu bildo kiel loop-back aparatoj. Por munti sekcion, faru la sekvajn paŝojn:
    a. Determinu la bajtan komencon de la sekcio ene de la bildo alvokante la /sbin/fdisk -lu image_file komando.
    Por ekzample, subdisko numero 1 de tipo W95 FAT havas blokan ofseton de 2121728. Kun 512 bajtoj per bloko, la bajta ofseto estas 512 bajtoj x 2121728 = 1086324736 bajtoj.
    b. Identigu senpagan buklan aparaton (ekzample, /dev/loop0) tajpante la komandon losetup -f.
    c. Supozante /dev/loop0 estas la senpaga buklo-aparato, asignu vian fulmkartbildon al la buklobloka aparato alvokante la losetup /dev/loop0 image_file -0 1086324736 komando.
    d. Muntu la buklan aparaton alvokante la komandon mount /dev/loop0 /media/disk1.
    Ene de la bildo file, /media/disk1 nun estas muntita fat32-disko.
    e. Ripetu paŝojn a ĝis d por la diskparto ext3.
  3. Elŝutu la Cyclone V SoC FPGA-version de la pakaĵo Intel FPGA Runtime Environment por OpenCL de la Elŝuta Centro sur la Altera webretejo.
    a. Alklaku la butonon Elŝuti apud la programara eldono de Quartus Prime.
    b. Indiku la eldonversion, la operaciumon kaj la elŝutan metodon.
    c. Alklaku la langeton Aldonan Programaron kaj elektu elŝuti Intel FPGA
    Runtime Environment por OpenCL Linux Cyclone V SoC TGZ.
    d. Post kiam vi elŝutas la aocl-rte- .arm32.tgz file, malpaku ĝin al
    dosierujo kiun vi posedas.
  4. Metu la malpakitan aocl-rte- .arm32 dosierujo en la dosierujon /home/root/opencl_arm32_rte sur la ekst3-diskodo de la bildo file.
  5. Forigu la aparataron(j)n de via Propra Platformo, kaj poste metu la Propran Platformon en la tabulsubdosierujon de /home/root/opencl_arm32_rte.
  6. Kreu la init_opencl.sh file en la dosierujo /home/root kun jena enhavo: eksporti ALTERAOCLSDKROOT=/home/root/opencl_arm32_rte eksporti AOCL_BOARD_PACKAGE_ROOT=$ALTERAOCLSDKROOT/board/ eksporti PATH=$ALTERAOCLSDKROOT/bin:$PATH eksporti LD_LIBRARY_PATH=$ALTERAOCLSDKROOT/host/arm32/lib:$LD_LIBRARY_PATH insmod $AOCL_BOARD_PACKAGE_ROOT/driver/aclsoc_drv.ko
    La SDK-uzanto rulas la komandon fonto ./init_opencl.sh por ŝargi la mediovariablojn kaj la kernan pelilon de OpenCL Linukso.
  7. Se vi bezonas ĝisdatigi la antaŭŝargilon, la DTS files, aŭ la Linukso-kerno, vi bezonas la kompililon arm-linux-gnueabihf-gcc de la SoC EDS. Sekvu la instrukciojn priskribitajn en la Intel SoC FPGA Embedded Design Suite User Guide por akiri la programaron, rekompili ilin kaj ĝisdatigi la koncernajn. files sur la muntita fat32 vando.
    Atentu: Plej verŝajne vi devas ĝisdatigi la antaŭŝargilon se via Propra Platformo havas malsamajn pin-uzadojn ol tiuj en c5soc.
    Memoru: Se vi rekompilas la Linuksan kernon, rekompilu la Linuksan kernan pelilon kun la sama Linuksa kerno-fonto files. Se estas miskongruo inter la Linuksa kerno-ŝoforo kaj la Linukso-kerno, la ŝoforo ne ŝargiĝos. Ankaŭ vi devas ebligi la CMA.
    Vidu al Rekompilado de la Linuksa Kerno por pliaj informoj.
  8. Kompilu la hello_world OpenCL ekzampLe dezajno uzante vian Propra Platforma subteno. Alinomi la .rbf file ke la Intel FPGA SDK por OpenCL Offline Compiler generas kiel opencl.rbf, kaj metu ĝin sur la fat32-diskon ene de la bildo de la fulmkarto SD.
    Vi povas elŝuti la hello_world eksampla dezajno de la OpenCL Design Examples paĝo sur la Altera webretejo.
    9. Post kiam vi stokas ĉiujn necesajn files sur la bildon de la fulmkarto, alvoku la jenajn komandojn:
    a. sinkronigi
    b. malmunti /media/disk1
    c. malmunti kie estas la dosieruja nomo, kiun vi uzas por munti la ekst3-diskon en 3 sur paĝo 3 (ekzample, /media/disk2).
    d. losetup -d /dev/loop0
    e. losetup -d /dev/loop1
  9. Kunpremu la bildon de la SDa fulmkarto alvokante la jenan komandon: tar cvfz .tgz linux_sd_card_image
  10. Liveru la .tgz file en la radika dosierujo de via Propra Platformo.
  11. Por testi la bildon de via SDa fulmkarto, faru la sekvajn taskojn:
    a. Skribu la rezultan nekunpremitan bildon sur mikro SD-fŝkarton.
    b. Enmetu la mikro-SD-karton en la SoC FPGA-tabulo.
    c. Ebligu la tabulon.
    d. Alvoku la aocl-diagnozi ilan komandon.

Rilataj Ligiloj

  • Intel SoC FPGA Embedded Design Suite User Guide
  • OpenCL Design Examples paĝo sur la Altera webretejo
  • Rekompili la Linuksan Kernon sur paĝo 16
    Por ebligi la CMA, vi unue devas rekompili la Linuksan kernon.
  • Pridemando de la Aparato Nomo de Via FPGA-Estraro (diagnozo)

1.6 Kompilante la Linuksan Kernon por Cyclone V SoC FPGA
Antaŭ ol ruli OpenCL-aplikaĵojn sur la Cyclone V SoC FPGA-tabulo, vi devas kompili la Linuksan kernan fonton, kaj kompili kaj instali la OpenCL-Linuksan kernan pelilon.

  1. Rekompili la Linuksan Kernon sur paĝo 16
    Por ebligi la CMA, vi unue devas rekompili la Linuksan kernon.
  2. Kompilado kaj Instalado de la OpenCL-Linuksa Kernel Driver sur paĝo 17 Kompilu la OpenCL-Linuksan kernan pelilon kontraŭ la kompilita kernfonto.

1.6.1 Rekompilo de la Linuksa Kerno
Por ebligi la CMA, vi unue devas rekompili la Linuksan kernon.

  1. Alklaku la ligilon GSRD v14.0 - Kompilado de Linukso sur la paĝo de Rimedoj de RocketBoards.org webretejo por aliri instrukciojn pri elŝuto kaj rekonstruado de la Linukso-kerna fontkodo.
    Por uzo kun la ™ Intel FPGA SDK por OpenCL, specifu socfpga-3.13-rel14.0 kiel la .
  2. Noto: La konstruprocezo kreas la arch/arm/configs/socfpga_defconfig file. Ĉi tio file specifas la agordojn por la defaŭlta agordo de socfpga.
    Aldonu la sekvajn liniojn al la fundo de la arch/arm/configs/socfpga_defconfig file.
    CONFIG_MEMORY_IZOLATION=j
    CONFIG_CMA=y
    CONFIG_DMA_CMA=y
    CONFIG_CMA_DEBUG=y
    CONFIG_CMA_SIZE_MBYTES=512
    CONFIG_CMA_SIZE_SEL_MBYTES=j
    CONFIG_CMA_ALIGNMENT=8
    CONFIG_CMA_AREAS=7
    La CONFIG_CMA_SIZE_MBYTES agorda valoro fiksas la supran limon de la totala nombro de fizike apuda memoro disponebla. Vi povas pliigi ĉi tiun valoron se vi bezonas pli da memoro.
  3. Atentu: La totala kvanto de fizika memoro disponebla por la ARM-procesoro sur la SoC FPGA-tabulo estas 1 GB. Intel ne rekomendas, ke vi agordu la CMA-administranton proksime al 1 GB.
  4. Rulu la komandon make mrproper por purigi la nunan agordon.
  5. Rulu la komandon make ARCH=arm socfpga_deconfig.
    ARCH=arm indikas, ke vi volas agordi la ARM-arkitekturon.
    socfpga_defconfig indikas ke vi volas uzi la defaŭltan socfpga agordon.
  6. Rulu la komandon eksport CROSS_COMPILE=arm-linux-gnueabihf-.
    Ĉi tiu komando fiksas la mediovariablon CROSS_COMPILE por specifi la prefikson de la dezirata ilĉeno.
  7. Rulu la komandon make ARCH=arm zImage. La rezulta bildo disponeblas en la arch/arm/boot/zImage file.
  8. Metu la zImage file en la fat32-sekcion de la bildkarto. Por detalaj instrukcioj, raportu al la Cyclone V SoC FPGA-specifa GSRD-UzantManlibro ĉe Rocketboards.org.
  9. Noto: Por ĝuste enigi la OpenCL-Linuksan kernan pelilon, unue ŝarĝu SDKgenerated.rbf file al la FPGA.
    Por krei la .rbf file, kompilu SDK-dezajnon ekzample kun la Cyclone V SoC Development Kit Reference Platform kiel la celita Propra Platformo.
    9. Metu la .rbf file en la fat32-sekcion de la bildkarto.
    Atentu: La fat32-diskodo devas enhavi ambaŭ la zImage file kaj la .rbf file. Sen .rbf file, fatala eraro okazos kiam vi enmetas la ŝoforon.
  10. Enmetu la programitan mikro SD-karton, kiu enhavas la bildon de SD-karto, kiun vi modifis aŭ kreis antaŭe, en la Cyclone V SoC Development Kit kaj tiam ŝaltu la SoC FPGA-tabulo.
  11. Kontrolu la version de la instalita Linukso-kerno rulante la komandon uname -r.
  12. Por kontroli, ke vi ebligas la CMA sukcese en la kerno, kun la SoC FPGA-tabulo ŝaltita, rulu la komandon grep init_cma /proc/kallsyms.
    CMA estas ebligita se la eligo estas ne-malplena.
  13. Por uzi la rekompilitan Linuksan kernon kun la SDK, kompilu kaj instalu la Linuksan kernon-ŝoforon.

Rilataj Ligiloj

  • Golden System Reference Design (GSRD) Uzantmanlibroj
  • Konstruado de Bildo de SD Flash Card sur paĝo 13
    Ĉar la Cyclone V SoC FPGA estas plena sistemo sur blato, vi respondecas pri liveri la plenan difinon de la sistemo.

1.6.2 Kompilado kaj Instalado de la Linukso Kernel Driver de OpenCL
Kompilu la OpenCL-Linuksan kernan pelilon kontraŭ la kompilita kernfonto.

La ŝoforfonto estas havebla en la Cyclone V SoC FPGA-versio de la Intel FPGA Runtime Environment por OpenCL. Krome, certigu, ke vi ŝargis Intel FPGA SDK por OpenCL-generita .rbf file en la FPGA por malhelpi malĝustan instaladon de la Linuksa kernomodulo.

  1. Elŝutu la Cyclone V SoC FPGA-version de la pakaĵo Intel FPGA Runtime Environment por OpenCL de la Elŝuta Centro sur la Altera webretejo.
    a. Alklaku la butonon Elŝuti apud la programara eldono de Quartus Prime.
    b. Indiku la eldonversion, la operaciumon kaj la elŝutan metodon.
    c. Alklaku la langeton Aldonan Programaron kaj elektu elŝuti Intel FPGA
    Runtime Environment por OpenCL Linux Cyclone V SoC TGZ.
    d. Post kiam vi elŝutas la aocl-rte- .arm32.tgz file, malpaku ĝin al
    dosierujo kiun vi posedas.
    La ŝoforfonto estas en la aocl-rte- .arm32/board/c5soc/ driver-dosierujo.
  2. Por rekompili la OpenCL-Linuksan kernan pelilon, agordu la KDIR-valoron en la Make de la pelilofile al la dosierujo enhavanta la Linukso-kernfonton files.
  3. Rulu la komandon export CROSS_COMPILE=arm-linux-gnueabihf- por indiki la prefikson de via ilĉeno.
  4. Rulu la komandon fari pura.
  5. Rulu la make komandon por krei la aclsoc_drv.ko file.
  6. Transloku la dosierujon opencl_arm32_rte al la Cyclone V SoC FPGA-tabulo.
    Rulante la scp -r radiko@via-adreso: komando metas la rultempan medion en la dosierujon/home/root.
  7. Rulu la skripton init_opencl.sh, kiun vi kreis kiam vi konstruis la SD-kartbildon.
  8.  Alvoku la aocl-diagnozi ilan komandon. La diagnoza ilo redonos preterpasantan rezulton post kiam vi rulos init_opencl.sh sukcese.

1.7 Konataj Problemoj
Nuntempe ekzistas iuj limigoj pri la uzado de la Intel FPGA SDK por OpenCL kun la Referenca Platformo de Cyclone V SoC Development Kit.

  1. Vi ne povas anstataŭi la nomojn de vendisto kaj tabulo raportitaj de la CL_DEVICE_VENDOR kaj CL_DEVICE_NAME ĉenoj de la clGetDeviceInfo() alvoko.
  2. Se la gastiganto asignas konstantan memoron en komuna DDR-sistemo (t.e., HPS DDR) kaj ĝi modifas la konstantan memoron post kernelekzekuto, la datenoj en memoro eble iĝos malmodernaj. Ĉi tiu problemo aperas ĉar la FPGA-kerno ne povas fiŝi pri CPU-al-HPS DDR-transakcioj.
    Por eviti ke postaj kernaj ekzekutoj aliru malmodernajn datumojn, efektivigu unu el la sekvaj solvoj:
    • Ne modifi konstantan memoron post ĝia inicialigo.
    • Se vi postulas plurajn __konstantajn datumajn arojn, kreu plurajn konstantajn memorbufrojn.
    • Se disponebla, asignu konstantan memoron en la FPGA DDR sur via akcelila tabulo.
  3. La SDK-utilo sur ARM nur subtenas la programon kaj diagnozas servaĵojn.
    La komandoj de fulmo, instalo kaj malinstalo de utileco ne aplikeblas al la Cyclone V SoC Development Kit pro la sekvaj kialoj:
    a. La instala ilo devas kompili la aclsoc_drv Linuksan kernan pelilon kaj ebligi ĝin sur la SoC FPGA. La evolumaŝino devas plenumi la kompilon; tamen, ĝi jam enhavas Linuksan kernfontojn por la SoC FPGA. La Linukso-kernfontoj por la evolumaŝino diferencas de tiuj por la SoC FPGA. La loko de la Linukso-kernfontoj por la SoC FPGA verŝajne estas nekonata al la SDK-uzanto. Simile, la malinstala ilo ankaŭ estas neatingebla por la Cyclone V SoC Development Kit.
    Ankaŭ, liveri aclsoc_drv al la SoC-estraro estas malfacila ĉar la defaŭlta distribuo de la Cyclone V SoC Development Kit ne enhavas Linuksan kernon. files aŭ la kompililo de GNU Compiler Collection (GCC).
    b. La fulma utileco postulas meti .rbf file de OpenCL-dezajno sur la FAT32-sekcion de la mikro SD-flash-karto. Nuntempe, ĉi tiu sekcio ne estas muntita kiam la SDK-uzanto ŝaltas la tabulon. Sekve, la plej bona maniero ĝisdatigi la sekcion estas uzi fulmkartlegilon kaj la evolumaŝinon.
  4. Kiam vi ŝanĝas inter la realigebla Intel FPGA SDK por OpenCL Offline Compiler files (.aocx) kiuj respondas al malsamaj tabulvariaĵoj (tio estas, c5soc kaj c5soc_sharedonly), vi devas uzi la program-utilon de la SDK por ŝargi la .aocx. file por la nova tabulvariaĵo unuafoje. Se vi simple rulas la gastigan aplikaĵon uzante novan tabulvariaĵon sed la FPGA enhavas la bildon de alia tabulo-variaĵo, fatala eraro povus okazi.
  5. La .qxp file ne inkludas la interfacajn sekciotaskojn ĉar la Quartus Prime-softvaro konstante renkontas temppostulojn de tiu sekcio.
  6. Kiam vi ŝaltas la tabulon, ĝia adreso de kontrolo de amaskomunikiloj (MAC) estas agordita al hazarda nombro. Se via LAN-politiko ne permesas ĉi tiun konduton, agordu la MAC-adreson plenumante la jenajn taskojn:
    a. Dum la ekfunkciigo de U-Boot, premu ajnan klavon por eniri la komandon de U-Boot.
    b. Tajpu setenv ethaddr 00:07:ed:00:00:03 ĉe la komanda prompto.
    Vi povas elekti ajnan MAC-adreson.
    c. Tajpu la komandon saveenv.
    d. Rekomencu la tabulon.

1.8 Dokumenta Revizia Historio
Tabelo 1.
Dokumenta Reviziohistorio de la Intel FPGA SDK por OpenCL Cyclone V SoC
Disvolva Kit Referenca Platformo Porting Guide

Dato Versio Ŝanĝoj
Majo-17 2017.05.08 •Prizorga liberigo.
Oktobro 2016 2016.10.31 • Remarkita Altera SDK por OpenCL al Intel FPGA SDK por OpenCL.
• Remarkita Altera Senreta Kompililo al Intel FPGA SDK por OpenCL Senreta Kompililo.
Majo-16 2016.05.02 •Modifitaj instrukcioj pri konstruado kaj modifo de bildo de SDa fulmkarto.
•Modifitaj instrukcioj pri rekompilo de la Linukso-kerno kaj la OpenCL-Linuksa kerno-ŝoforo.
Novembro-15 2015.11.02 •Prizorga liberigo, kaj ŝanĝitaj okazoj de Quartus II al Quartus Prime.
Majo-15 15.0.0 •En FPGA Rekonfigurado, forigita instrukcio por reprogrami la FPGA-kernon
kun . rbf-bildo alvokante la katon filenomo>. rbf
> Komando /dev/ fpga0 ĉar ĉi tiu metodo ne estas rekomendita.
Decembro-14 14.1.0 • Renomis la dokumenton kiel Altera Cyclone V SoC Development Kit Reference Platform Porting Guide.
• Ĝisdatigis la reprograman ilon al la programo aoclfilenomo>.aocx utileco komando.
• Ĝisdatigis la diagnozan ilon al la aocl-diagnozo kaj aocl-diagnozo komando de utileco.
• Ĝisdatigis la proceduron en la sekcio Porting the Reference Platform to Your SoC Board (Portado de la Referenca Platformo al Via SoC-Estraro) por inkluzivi instrukciojn pri portado kaj modifado de la c5soc-tabuldisko por krei temppuran sekcion por la garantiita temp-fermfluo.
•Enmetis la temon Ĝisdatigi Portitan Referencan Platformon por skizi la procedurojn por la sekvaj taskoj:
1.Ekskludante la blokon de malmola procesoro-sistemo (HPS) en la tabulo
2.Ĝisdatigi la bildon de la SDa fulmkarto
• Ĝisdatigis la sekcion Konstruado de SD Flash Card Bildo. Rekomendite uzi version 14.0 de la bildo de Golden System Reference Design (GSRD) kiel deirpunkto anstataŭ la bildo disponebla kun SoC Embedded Design Suite (EDS).
• Ĝisdatigis la sekcion Rekompilado de Linuksa Kerno kaj OpenCL-Linuksa Kerno-Piloilo:
1.Aldonita instrukcio por agordi la variablon CROSS COMPILE.
2.Ŝanĝis la komandon, kiun vi rulas por kontroli, ke la CMA estas ebligita sukcese.
julio-14 14.0.0 • Komenca Eldono.

Dokumentoj/Rimedoj

Intel FPGA SDK por OpenCL [pdf] Uzantogvidilo
FPGA SDK por OpenCL, FPGA SDK, SDK por OpenCL, SDK

Referencoj

Lasu komenton

Via retadreso ne estos publikigita. Bezonataj kampoj estas markitaj *