இன்டெல் - லோகோOpenCL க்கான FPGA SDK
பயனர் வழிகாட்டி

UG-OCL009
2017.05.08
Intel® Quartus® Prime Design Suiteக்காக கடைசியாகப் புதுப்பிக்கப்பட்டது: 17.0

RENPHO RF FM059HS WiFi ஸ்மார்ட் ஃபுட் மசாஜர் - ஐகான் 5குழுசேர்
SAMSUNG SM A136UZKZAIO Galaxy A13 5G ஸ்மார்ட்போன் - ஐகான் 12கருத்தை அனுப்பவும்

OpenCL™ Intel® Cyclone®V SoC டெவலப்மென்ட் கிட்க்கான Intel® FPGA SDK குறிப்பு தளம் போர்டிங் கையேடு

OpenCL இன் Intel ® FPGA SDK க்காக OpenCL ™ Intel Cyclone க்கான Intel மென்பொருள் டெவலப்மெண்ட் கிட் (SDK) உடன் பயன்படுத்துவதற்கு V SoC டெவலப்மென்ட் கிட் குறிப்பு தள போர்டிங் கையேடு Intel Cyclone V SoC டெவலப்மென்ட் கிட் குறிப்பு தளத்தின் (c5soc) வன்பொருள் மற்றும் மென்பொருள் வடிவமைப்பை விவரிக்கிறது. ® நீங்கள் தொடங்குவதற்கு முன், பின்வரும் ஆவணங்களின் உள்ளடக்கங்களை நீங்கள் நன்கு அறிந்திருக்குமாறு இன்டெல் கடுமையாக பரிந்துரைக்கிறது:

  1. OpenCLintel Cyclone V SoCக்கான Intel FPGA SDK தொடக்க வழிகாட்டி
  2. OpenCL தனிப்பயன் இயங்குதள கருவித்தொகுதி பயனர் வழிகாட்டிக்கான Intel FPGA SDK
  3. சைக்ளோன் வி சாதன கையேடு, தொகுதி 3: ஹார்ட் ப்ராசசர் சிஸ்டம் தொழில்நுட்ப குறிப்பு கையேடு கூடுதலாக, சைக்ளோன் V SoC டெவலப்மென்ட் கிட் மற்றும் ஆல்டெராவின் SoC உட்பொதிக்கப்பட்ட டிசைன் சூட் பக்கத்தைப் பார்க்கவும். webமேலும் தகவலுக்கு தளம். 1 2

கவனம்: OpenCL Custom Platform Toolkit பயனர் கையேடுக்கான Intel FPGA SDK பற்றிய ஆழமான புரிதல் உங்களுக்கு இருப்பதாக Intel கருதுகிறது. சைக்ளோன் V SoC டெவலப்மென்ட் கிட் குறிப்பு பிளாட்ஃபார்ம் போர்டிங் கையேடு, சைக்ளோன் V SoC டெவலப்மென்ட் கிட்டுக்கான தனிப்பயன் பிளாட்ஃபார்மைச் செயல்படுத்த SDK இன் தனிப்பயன் பிளாட்ஃபார்ம் டூல்கிட்டின் பயன்பாட்டை விவரிக்கவில்லை. இது Cyclone V SoC டெவலப்மென்ட் கிட்டில் உள்ள SDK ஆதரவுக்கும் OpenCL Custom Platformக்கான பொதுவான Intel FPGA SDKக்கும் உள்ள வேறுபாடுகளை மட்டுமே விவரிக்கிறது.

தொடர்புடைய இணைப்புகள்

  • OpenCL Cyclone V SoCக்கான Intel FPGA SDK தொடக்க வழிகாட்டி
  • OpenCL தனிப்பயன் இயங்குதள கருவித்தொகுதி பயனர் வழிகாட்டிக்கான Intel FPGA SDK
  • சைக்ளோன் V சாதன கையேடு, தொகுதி 3: ஹார்ட் பிராசசர் சிஸ்டம் தொழில்நுட்ப குறிப்பு கையேடு
  • ஆல்டெராவில் சைக்ளோன் V SoC டெவலப்மெண்ட் கிட் மற்றும் SoC உட்பொதிக்கப்பட்ட டிசைன் சூட் பக்கம் webதளம்
  1. OpenCL மற்றும் OpenCL லோகோ ஆகியவை க்ரோனோஸ் குழுவின் அனுமதியால் பயன்படுத்தப்படும் Apple Inc. வர்த்தக முத்திரைகள் ஆகும்.
  2. OpenCL க்கான Intel FPGA SDK வெளியிடப்பட்ட க்ரோனோஸ் விவரக்குறிப்பை அடிப்படையாகக் கொண்டது, மேலும் க்ரோனோஸ் கன்ஃபார்மன்ஸ் டெஸ்டிங் செயல்முறையில் தேர்ச்சி பெற்றுள்ளது. தற்போதைய இணக்க நிலையை இங்கு காணலாம் www.khronos.org/conformance.

இன்டெல் கார்ப்பரேஷன். அனைத்து உரிமைகளும் பாதுகாக்கப்பட்டவை. Intel, Intel லோகோ, Altera, Arria, Cyclone, Enpirion, MAX, Nios, Quartus மற்றும் Stratix வார்த்தைகள் மற்றும் லோகோக்கள் அமெரிக்கா மற்றும்/அல்லது பிற நாடுகளில் உள்ள Intel கார்ப்பரேஷன் அல்லது அதன் துணை நிறுவனங்களின் வர்த்தக முத்திரைகளாகும். இன்டெல் அதன் FPGA மற்றும் செமிகண்டக்டர் தயாரிப்புகளின் செயல்திறன் இன்டெல்லின் நிலையான உத்தரவாதத்தின்படி தற்போதைய விவரக்குறிப்புகளுக்கு உத்தரவாதம் அளிக்கிறது, ஆனால் எந்த நேரத்திலும் அறிவிப்பு இல்லாமல் எந்த தயாரிப்புகள் மற்றும் சேவைகளில் மாற்றங்களைச் செய்வதற்கான உரிமையை கொண்டுள்ளது. Intel எழுத்துப்பூர்வமாக ஒப்புக்கொண்டதைத் தவிர, இங்கு விவரிக்கப்பட்டுள்ள எந்தவொரு தகவல், தயாரிப்பு அல்லது சேவையின் பயன்பாடு அல்லது பயன்பாட்டிலிருந்து எழும் எந்தப் பொறுப்பு அல்லது பொறுப்பையும் இன்டெல் ஏற்காது. Intel வாடிக்கையாளர்கள் வெளியிடப்பட்ட எந்த தகவலையும் நம்புவதற்கு முன் மற்றும் தயாரிப்புகள் அல்லது சேவைகளுக்கான ஆர்டர்களை வழங்குவதற்கு முன்பு சாதன விவரக்குறிப்புகளின் சமீபத்திய பதிப்பைப் பெற அறிவுறுத்தப்படுகிறார்கள்.
*பிற பெயர்கள் மற்றும் பிராண்டுகள் மற்றவர்களின் சொத்தாக உரிமை கோரப்படலாம்.

1.1.1 சைக்ளோன் V SoC டெவலப்மென்ட் கிட் குறிப்பு பிளாட்ஃபார்ம் போர்டு மாறுபாடுகள்
OpenCL சைக்ளோன் V SoC டெவலப்மென்ட் கிட் குறிப்பு தளத்திற்கான Intel FPGA SDK இரண்டு பலகை வகைகளை உள்ளடக்கியது.

  • c5soc பலகை
    இந்த இயல்புநிலை பலகை இரண்டு DDR நினைவக வங்கிகளுக்கான அணுகலை வழங்குகிறது. HPS DDR ஆனது FPGA மற்றும் CPU இரண்டிலும் அணுகக்கூடியது. FPGA DDRஐ FPGA ஆல் மட்டுமே அணுக முடியும்.
  • c5soc_sharedonly பலகை
    இந்த போர்டு மாறுபாடு HPS DDR இணைப்பை மட்டுமே கொண்டுள்ளது. FPGA DDRஐ அணுக முடியாது. ஒரு DDR நினைவக வங்கியை ஆதரிக்க குறைந்த ஹார்டுவேர் தேவைப்படுவதால், இந்த போர்டு மாறுபாடு மிகவும் திறமையானது. c5soc_sharedonly போர்டு என்பது ஒரு டிடிஆர் மெமரி பேங்க் கொண்ட இறுதி தயாரிப்புப் பலகைக்கான நல்ல முன்மாதிரி தளமாகும்.
    உங்கள் OpenCL கர்னலைத் தொகுக்கும்போது இந்த போர்டு மாறுபாட்டை இலக்காகக் கொள்ள, உங்கள் aoc கட்டளையில் -board c5soc_sharedonly விருப்பத்தைச் சேர்க்கவும்.
    -போர்டு பற்றிய கூடுதல் தகவலுக்கு aoc கட்டளையின் விருப்பம், OpenCL நிரலாக்க வழிகாட்டிக்கு Intel FPGA SDK ஐப் பார்க்கவும்.

தொடர்புடைய இணைப்புகள்
ஒரு குறிப்பிட்ட FPGA போர்டுக்கான கர்னலைத் தொகுத்தல் (–போர்டு )
1.1.2 Cyclone V SoC டெவலப்மெண்ட் கிட் குறிப்பு தளத்தின் உள்ளடக்கம்
Cyclone V SoC டெவலப்மெண்ட் கிட் குறிப்பு தளம் பின்வருவனவற்றைக் கொண்டுள்ளது fileகள் மற்றும் கோப்பகங்கள்:

File அல்லது அடைவு விளக்கம்
board_env.xml விரிவாக்கக்கூடிய மார்க்அப் மொழி (எக்ஸ்எம்எல்) file இது OpenCL க்கான C5soc ஐ Intel FPGA SDK க்கு விவரிக்கிறது.
linux_sd_card_image.tgz சுருக்கப்பட்ட SD ஃபிளாஷ் கார்டு படம் file SDK பயனர் சைக்ளோன் V SoC டெவலப்மென்ட் கிட்டை SDK உடன் பயன்படுத்த வேண்டிய அனைத்தையும் கொண்டுள்ளது.
கை32 பின்வருவனவற்றைக் கொண்டிருக்கும் அடைவு:

1.1.3 Cyclone V SoC டெவலப்மெண்ட் கிட்டின் தொடர்புடைய அம்சங்கள்

பின்வரும் பட்டியல் சைக்ளோன் V SoC டெவலப்மெண்ட் கிட் கூறுகள் மற்றும் OpenCL க்கான Intel FPGA SDK க்கு தொடர்புடைய அம்சங்களை எடுத்துக்காட்டுகிறது:

  • Dual-core ARM Cortex-A9 CPU 32-பிட் லினக்ஸில் இயங்குகிறது.
  • ஹெச்பிஎஸ் மற்றும் எஃப்பிஜிஏ கோர் ஃபேப்ரிக் இடையே மேம்பட்ட எக்ஸ்டென்சிபிள் இன்டர்ஃபேஸ் (ஏஎக்ஸ்ஐ) பஸ்.
  • இரண்டு கடினப்படுத்தப்பட்ட DDR நினைவகக் கட்டுப்படுத்திகள், ஒவ்வொன்றும் 1 ஜிகாபைட் (GB) DDR3 SDRAM உடன் இணைக்கப்படுகின்றன.
    — ஒரு DDR கட்டுப்படுத்தி FPGA மையத்திற்கு மட்டுமே அணுகக்கூடியது (அதாவது FPGA DDR).
    — மற்ற DDR கட்டுப்படுத்தி HPS மற்றும் FPGA (அதாவது HPS DDR) இரண்டிற்கும் அணுகக்கூடியது. இந்த பகிரப்பட்ட கட்டுப்படுத்தி CPU மற்றும் FPGA கோர் இடையே இலவச நினைவக பகிர்வை அனுமதிக்கிறது.
  • CPU ஆனது FPGA கோர் துணியை மறுகட்டமைக்க முடியும்.

1.1.3.1 சைக்ளோன் V SoC டெவலப்மென்ட் கிட் ரெஃபரன்ஸ் பிளாட்ஃபார்ம் வடிவமைப்பு இலக்குகள் மற்றும் முடிவுகள் இன்டெல் சைக்ளோன் V SoC டெவலப்மென்ட் கிட் ரெஃபரன்ஸ் பிளாட்ஃபார்மை பல வடிவமைப்பு இலக்குகள் மற்றும் முடிவுகளின் அடிப்படையில் செயல்படுத்துகிறது. இந்த குறிப்பு தளத்தை உங்கள் SoC FPGA போர்டுக்கு போர்ட் செய்யும் போது இந்த இலக்குகள் மற்றும் முடிவுகளை நீங்கள் கருத்தில் கொள்ளுமாறு Intel பரிந்துரைக்கிறது.
கீழே c5soc வடிவமைப்பு இலக்குகள் உள்ளன:

  1. FPGA மற்றும் DDR நினைவக அமைப்பு(கள்) ஆகியவற்றில் உள்ள கர்னல்களுக்கு இடையே சாத்தியமான அதிகபட்ச அலைவரிசையை வழங்கவும்.
  2. FPGA இல் உள்ள கணக்கீடுகள் (அதாவது, OpenCL கர்னல்கள்) சேவை சாதனங்களை உள்ளடக்கிய பிற CPU பணிகளில் தலையிடாது என்பதை உறுதிப்படுத்தவும்.
  3. இடைமுகக் கூறுகளுக்குப் பதிலாக கர்னல் கணக்கீடுகளுக்கு முடிந்தவரை FPGA ஆதாரங்களை விடுங்கள்.

இன்டெல்லின் வடிவமைப்பு இலக்குகளின் நேரடி விளைவுகளான உயர்நிலை வடிவமைப்பு முடிவுகள் கீழே உள்ளன:

  1. குறிப்பு இயங்குதளமானது கடினமான DDR நினைவகக் கட்டுப்படுத்திகளை மட்டுமே பரந்த சாத்தியக்கூறு உள்ளமைவுடன் (256 பிட்கள்) பயன்படுத்தும்.
  2. FPGA ஆனது HPS DDR மெமரி கன்ட்ரோலருடன் நேரடியாக AXI பஸ் மற்றும் HPSன் உள்ளே L3 ஸ்விட்ச் சம்பந்தப்படாமல் தொடர்பு கொள்கிறது. நேரடி தகவல்தொடர்பு DDR க்கு சிறந்த அலைவரிசையை வழங்குகிறது, மேலும் CPU மற்றும் அதன் சுற்றளவுக்கு இடையேயான தகவல்தொடர்புகளில் FPGA கணக்கீடுகள் குறுக்கிடுவதைத் தடுக்கிறது.
  3. Scatter-gather direct memory access (SG-DMA) FPGA இன்டர்ஃபேஸ் லாஜிக்கின் ஒரு பகுதியாக இல்லை. DDR நினைவக அமைப்புகளுக்கு இடையே பெரிய அளவிலான தரவை மாற்றுவதற்குப் பதிலாக, பகிரப்பட்ட HPS DDR இல் தரவைச் சேமிக்கவும். FPGA மூலம் CPU நினைவகத்திற்கான நேரடி அணுகல் DMA ஐ விட திறமையானது. இது வன்பொருள் வளங்களை (அதாவது, FPGA பகுதி) சேமிக்கிறது மற்றும் லினக்ஸ் கர்னல் இயக்கியை எளிதாக்குகிறது.
    எச்சரிக்கை: பகிரப்பட்ட HPS DDR அமைப்புக்கும் FPGA க்கு மட்டுமே அணுகக்கூடிய DDR அமைப்புக்கும் இடையே நினைவக பரிமாற்றம் மிகவும் மெதுவாக உள்ளது. நீங்கள் தேர்வு செய்தால்
    இந்த முறையில் நினைவகத்தை மாற்றவும், மிக சிறிய அளவிலான தரவுகளுக்கு மட்டுமே பயன்படுத்தவும்.
  4. ஹோஸ்ட் மற்றும் சாதனம் HPS-to-FPGA (H2F) பிரிட்ஜ் வழியாக ஒரு 32-பிட் போர்ட்டை மட்டுமே பயன்படுத்தி ஒருவருக்கொருவர் DMA அல்லாத தரவு பரிமாற்றத்தைச் செய்கிறது. காரணம், டிஎம்ஏ இல்லாமல், லினக்ஸ் கர்னல் ஒரு 32-பிட் வாசிப்பு அல்லது எழுதும் கோரிக்கையை மட்டுமே வழங்க முடியும், எனவே பரந்த இணைப்பை வைத்திருப்பது தேவையற்றது.
  5. ஹோஸ்ட் ஒரு இலகுரக H2F (LH2F) பாலம் வழியாக சாதனத்திற்கு கட்டுப்பாட்டு சமிக்ஞைகளை அனுப்புகிறது.
    ஹோஸ்டில் இருந்து சாதனத்திற்கான கட்டுப்பாட்டு சமிக்ஞைகள் குறைந்த அலைவரிசை சமிக்ஞைகளாக இருப்பதால், ஒரு LH2F பாலம் பணிக்கு ஏற்றதாக இருக்கும்.

1.2 குறிப்பு தளத்தை உங்கள் SoC FPGA போர்டுக்கு அனுப்புதல்
Cyclone V SoC டெவலப்மெண்ட் கிட் குறிப்பு தளத்தை உங்கள் SoC FPGA போர்டுக்கு போர்ட் செய்ய, பின்வரும் பணிகளைச் செய்யவும்:

  1. உங்கள் வடிவமைப்பின் தொடக்கப் புள்ளியாக c5soc குறிப்பு தளத்தின் ஒரு DDR நினைவகம் அல்லது இரண்டு DDR நினைவகப் பதிப்பைத் தேர்ந்தெடுக்கவும்.
  2. ALTERAOCLSDKROOT/board/c5soc/ இல் பின் இருப்பிடங்களைப் புதுப்பிக்கவும் /top.qsf file, ALTERAOCLSDKROOT என்பது OpenCL நிறுவலுக்கான Intel FPGA SDK இன் இருப்பிடத்திற்கான பாதை, மற்றும் என்பது பலகை மாறுபாட்டின் அடைவுப் பெயர். c5soc_sharedonly கோப்பகம் ஒரு DDR நினைவக அமைப்பு கொண்ட போர்டு மாறுபாட்டிற்கானது. c5soc அடைவு இரண்டு DDR நினைவக அமைப்புகளுடன் கூடிய போர்டு மாறுபாட்டிற்கானது.
  3.  ALTERAOCLSDKROOT/board/c5soc/ இல் HPS மற்றும்/அல்லது FPGA SDRAM தொகுதிகளுக்கான DDR அமைப்புகளைப் புதுப்பிக்கவும் /system.qsys file.
    4. OpenCL விருப்பமான போர்டு வடிவமைப்புகளுக்கான அனைத்து Intel FPGA SDKகளும் உத்தரவாதமான டைமிங் க்ளோஷரை அடைய வேண்டும். எனவே, வடிவமைப்பின் இடம் சுத்தமாக இருக்க வேண்டும். c5soc போர்டு பகிர்வை (acl_iface_partition.qxp) உங்கள் SoC FPGA போர்டில் போர்ட் செய்ய, பின்வரும் பணிகளைச் செய்யவும்:
    போர்டு பகிர்வை மாற்றியமைத்தல் மற்றும் பாதுகாத்தல் பற்றிய விரிவான வழிமுறைகளுக்கு, குவார்டஸைப் பார்க்கவும்
    குவார்டஸ் பிரைம் ஸ்டாண்டர்ட் எடிஷன் கையேட்டின் படிநிலை மற்றும் குழு அடிப்படையிலான வடிவமைப்பு அத்தியாயத்திற்கான பிரைம் இன்கிரிமென்டல் தொகுப்பு.
    அ. ALTERAOCLSDKROOT/board/c5soc/c5soc கோப்பகத்திலிருந்து acl_iface_partition.qxp ஐ அகற்றவும்.
    பி. Tcl கட்டளை set_global_assignment -name LL_ENABLED OFF -section_id acl_iface_region க்கு set_global_assignment -name LL_ENABLED ON -section_id acl_iface_regionஐ மாற்றுவதன் மூலம் acl_iface_region LogicLock™ பகுதியை இயக்கவும்
    c. உங்கள் போர்டில் ஒரு OpenCL கர்னலை தொகுக்கவும்.
    ஈ. தேவைப்பட்டால், LogicLock பகுதியின் அளவையும் இடத்தையும் சரிசெய்யவும்.
    இ. உங்கள் வடிவமைப்பின் இடம் சரியானது என்று நீங்கள் திருப்தி அடைந்தால், அந்தப் பகிர்வை acl_iface_partition.qxp Quartus Prime Exported Partition ஆக ஏற்றுமதி செய்யவும். File.
    இந்த .qxp ஐ இறக்குமதி செய்வதன் மூலம், OpenCL Custom Platform Toolkit பயனர் வழிகாட்டிக்கான AIntel FPGA SDK இன் ஸ்தாபனிங் உத்திரவாத கால ஓட்டம் பிரிவில் விவரிக்கப்பட்டுள்ளது.  file உயர்மட்ட வடிவமைப்பில், உத்தரவாதமான நேர மூடல் ஓட்டத்துடன் பலகை வடிவமைப்பை வழங்குவதற்கான தேவையை நீங்கள் பூர்த்தி செய்கிறீர்கள்.
    உங்கள் ஏற்றுமதி செய்யப்பட்ட பகிர்வின் முடிவுகளின் தரத்தை (QoR) பாதிக்கக்கூடிய காரணிகளுக்கு, OpenCL Custom Platform Toolkit பயனர் கையேடுக்கான Intel FPGA SDK இல் உள்ள ஏற்றுமதி செய்யப்பட்ட போர்டு பகிர்வுப் பகுதிக்கான முடிவுகளின் பொதுத் தரம் பரிசீலனைகளைப் பார்க்கவும்.
    f. படி 2 இல் உள்ள கட்டளையை set_global_assignment -name LL_ENABLED OFF section_id acl_iface_region க்கு மாற்றுவதன் மூலம் acl_iface_region LogicLock பகுதியை முடக்கவும்.
  4. உங்கள் SoC FPGA போர்டு HPS பிளாக்கின் வெவ்வேறு பின்கள் மற்றும் சுற்றளவுகளைப் பயன்படுத்தினால், ப்ரீலோடரையும் சாதன மர மூலத்தையும் (DTS) மீண்டும் உருவாக்கவும். file. நீங்கள் HPS DDR நினைவகக் கட்டுப்படுத்தி அமைப்புகளை மாற்றினால், ப்ரீலோடரை மீண்டும் உருவாக்கவும்.
  5. SD ஃபிளாஷ் கார்டு படத்தை உருவாக்கவும்.
  6. SD ஃபிளாஷ் கார்டு படத்தை உள்ளடக்கிய உங்கள் தனிப்பயன் இயங்குதளத்தை உருவாக்கவும்.
  7. OpenCL க்கான Intel FPGA Runtime Environment (RTE) உடன் பயன்படுத்த உங்கள் தனிப்பயன் இயங்குதளத்தின் இயக்க நேர சூழல் பதிப்பை உருவாக்குவதைக் கவனியுங்கள். உங்கள் தனிப்பயன் இயங்குதளத்தின் RTE பதிப்பில் வன்பொருள் கோப்பகங்கள் மற்றும் SD ஃபிளாஷ் கார்டு படம் இல்லை. இந்த தனிப்பயன் இயங்குதளமானது, ஹோஸ்ட் பயன்பாடுகளை இயக்க அனுமதிக்க SoC FPGA அமைப்பில் ஏற்றப்படுகிறது. மாறாக, OpenCL கர்னல்களை தொகுக்க SDK க்கு தனிப்பயன் இயங்குதளத்தின் SDK பதிப்பு அவசியம்.
    உதவிக்குறிப்பு: RTEக்கு உங்கள் தனிப்பயன் இயங்குதளத்தின் SDK பதிப்பைப் பயன்படுத்தலாம். பாதுகாக்க
    இடம், உங்கள் தனிப்பயன் இயங்குதளத்தின் RTE பதிப்பிலிருந்து SD ஃபிளாஷ் கார்டு படத்தை அகற்றவும்.
  8. உங்கள் தனிப்பயன் தளத்தை சோதிக்கவும்.
    மேலும் தகவலுக்கு, OpenCL Custom Platform Toolkit பயனர் கையேடுக்கான Intel FPGA SDK இன் ஹார்டுவேர் வடிவமைப்புப் பகுதியைச் சோதித்துப் பார்க்கவும்.

தொடர்புடைய இணைப்புகள்

  • வன்பொருள் வடிவமைப்பை சோதிக்கிறது
  • படிநிலை மற்றும் குழு அடிப்படையிலான வடிவமைப்பிற்கான குவார்டஸ் பிரைம் அதிகரிக்கும் தொகுப்பு
  • உத்தரவாதமான நேர ஓட்டத்தை நிறுவுதல்
  • ஏற்றுமதி செய்யப்பட்ட வாரியப் பகிர்வுக்கான முடிவுகளின் பொதுவான தரம் பரிசீலனைகள்

1.2.1 போர்ட் செய்யப்பட்ட குறிப்பு தளத்தைப் புதுப்பித்தல்
Cyclone V SoC டெவலப்மென்ட் கிட் ரெஃபரன்ஸ் பிளாட்ஃபார்மின் தற்போதைய பதிப்பில், HPS தொகுதியானது அனைத்து கர்னல் அல்லாத தர்க்கங்களையும் வரையறுக்கும் பகிர்வுக்குள் உள்ளது. இருப்பினும், நீங்கள் .qxp இன் ஒரு பகுதியாக HPS ஐ ஏற்றுமதி செய்ய முடியாது file. c5soc இன் முந்தைய பதிப்பில் இருந்து நீங்கள் மாற்றியமைத்த ஏற்கனவே உள்ள தனிப்பயன் இயங்குதளத்தைப் புதுப்பிக்க, QXP பாதுகாப்பு ஓட்டத்தை செயல்படுத்தவும், சமீபத்திய இயக்க நேர சூழலைப் பெற SD ஃபிளாஷ் கார்டு படத்தைப் புதுப்பிக்கவும் மற்றும் board_spec.xml ஐப் புதுப்பிக்கவும். file ஆட்டோமிக்ரேஷனை செயல்படுத்த.
OpenCL பதிப்பு 14.1 மற்றும் அதற்கு அப்பால் உள்ள Altera® SDK board_spec.xml file போர்டு தகவலுக்காக, மற்றும் தானியங்கி புதுப்பிப்புகளை செயல்படுத்துகிறது. நீங்கள் மாற்றியமைப்பதால்
QXP பாதுகாப்பு ஓட்டத்தை செயல்படுத்துவதன் மூலம் வடிவமைக்க, நீங்கள் board_spec.xml ஐ புதுப்பிக்க வேண்டும் file தற்போதைய பதிப்பில் அதன் வடிவத்திற்கு. புதுப்பிக்கிறது file பாதுகாக்கப்படாத தனிப்பயன் பிளாட்ஃபார்ம்கள் மற்றும் தற்போதைய QXP அடிப்படையிலான தனிப்பயன் இயங்குதளங்களை வேறுபடுத்திப் பார்க்க SDKஐ அனுமதிக்கிறது. மேலும் தகவலுக்கு, OpenCL Custom Platform Toolkit பயனர் வழிகாட்டிக்கான Intel FPGA SDK இல் முன்னோக்கி இணக்கத்தன்மைக்கான தனிப்பயன் இயங்குதள ஆட்டோமிக்ரேஷனைப் பார்க்கவும்.

  1. C5soc இன் முந்தைய பதிப்பிலிருந்து போர்ட் செய்யப்பட்ட Cyclone V SoC FPGA வன்பொருள் வடிவமைப்பில் QXP பாதுகாப்பு ஓட்டத்தை செயல்படுத்த, .qxp இலிருந்து HPS ஐ விலக்க துணைப் பகிர்வை உருவாக்க பின்வரும் படிகளைச் செய்யவும். file:
    அ. கர்னல் அல்லாத தர்க்கத்தைச் சுற்றி ஒரு பகிர்வை உருவாக்கும் முன், .qsf Quartus Prime அமைப்புகளில் HPS ஐச் சுற்றி ஒரு பகிர்வை உருவாக்கவும். File.
    உதாரணமாகampலெ:
    # HPS-அர்ப்பணிக்கப்பட்ட I/O set_instance_assignment -பெயர் PARTITION_HIERARCHY borde_18261 -க்கு "அமைப்பு:அமைப்பு:அமைப்பு_acl_iface:acl_iface|system_acl_0_iface_pshps| hps_io| system_acl_iface_hps_0_hps_io_border:border” -section_id “system_acl_iface_hps_0_hps_io_border:எல்லை”
    # பகிர்வை HPS_PARTITION வகையாக அமைக்கவும், மீதமுள்ள குவார்டஸால் சரியாக செயலாக்கப்படும்
    set_global_assignment -name PARTITION_TYPE HPS_PARTITION -section_id “system_acl_iface_hps_0_hps_io_border:border”
    quartus_cdb மேல் -c மேல்
    –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
    பகிர்விலிருந்து HPS ஐ நீக்கிய பிறகு, நீங்கள் .qxp ஐ இறக்குமதி செய்யலாம் file மற்றும் உங்கள் வடிவமைப்பை தொகுக்கவும்.
  2. பின்வரும் பணிகளைச் செய்வதன் மூலம் OpenCLக்கான Intel FPGA RTE இன் தற்போதைய பதிப்போடு SD ஃபிளாஷ் கார்டு படத்தைப் புதுப்பிக்கவும்:
    அ. மவுண்ட் தி file ஒதுக்கீடு அட்டவணை (கொழுப்பு32) மற்றும் நீட்டிக்கப்பட்டது file கணினி (ext3) பகிர்வுகள் ஏற்கனவே உள்ள படத்தில் லூப்-பேக் சாதனங்களாக உள்ளன. விரிவான வழிமுறைகளுக்கு, SD ஃப்ளாஷ் கார்டு படத்தை உருவாக்குவதற்கான படி 2 ஐப் பார்க்கவும்.
    பி. /home/root/opencl_arm32_rte கோப்பகத்தில், அகற்றவும் fileRTE இன் முந்தைய பதிப்பிலிருந்து கள்.
    c. RTE இன் தற்போதைய சரிபார்ப்பை /home/root/opencl_arm32_rte கோப்பகத்தில் பதிவிறக்கம் செய்து திறக்கவும்.
    ஈ. இல் /driver/version.h file உங்கள் தனிப்பயன் இயங்குதளத்தில், ACL_DRIVER_VERSION ஒதுக்கீட்டைப் புதுப்பிக்கவும் . (எ.காample, 16.1.x, இதில் 16.1 என்பது SDK வெரிசன் மற்றும் x என்பது நீங்கள் அமைத்த இயக்கி பதிப்பு).
    இ. டிரைவரை மீண்டும் உருவாக்கவும்.
    f. உங்கள் தனிப்பயன் இயங்குதளத்தின் வன்பொருள் கோப்புறையை(களை) நீக்கவும். புதுப்பிக்கப்பட்ட இயக்கியுடன் தனிப்பயன் இயங்குதளத்தை /home/root/opencl_arm_rte/board கோப்பகத்திற்கு நகலெடுக்கவும்.
    g. Altera.icd ஐ நகலெடுக்கவும் file /home/root/opencl_arm32_rte கோப்பகத்திலிருந்து அதை /etc/OpenCL/vendors கோப்பகத்தில் சேர்க்கவும்.
    ம. புதிய படத்தை இறக்கி சோதிக்கவும். விரிவான வழிமுறைகளுக்கு, SD ஃப்ளாஷ் கார்டு படத்தை உருவாக்குவதற்கான படிகள் 8 முதல் 11 வரை பார்க்கவும்.

தொடர்புடைய இணைப்புகள்

  • பக்கம் 14 இல் SD ஃப்ளாஷ் கார்டு படத்தை உருவாக்குதல்
    புதிய SD ஃபிளாஷ் கார்டு படத்தை உருவாக்குவதற்கான விருப்பமும் உங்களுக்கு உள்ளது.
  • முன்னோக்கி இணக்கத்திற்கான தனிப்பயன் இயங்குதள ஆட்டோமிக்ரேஷன்

1.3 பகிரப்பட்ட நினைவகத்திற்கான மென்பொருள் ஆதரவு
SoC FPGA களில் இயங்கும் OpenCL கர்னல்களுக்கான விருப்பமான நினைவகம் FPGA மற்றும் CPU ஆகியவற்றுக்கு இடையே பகிரப்பட்ட உடல் நினைவகம். பகிரப்பட்ட மெய்நிகர் நினைவகத்திற்கு மாறாக, FPGA ஆனது பகிரப்பட்ட இயற்பியல் நினைவகத்தை அணுகுவதால், பயனர் மெய்நிகர் முகவரிகளை இயற்பியல் பக்க முகவரிகளுக்கு வரைபடமாக்கும் CPU இன் பக்க அட்டவணைகளுக்கு அணுகல் இல்லை.
வன்பொருளைப் பொறுத்தவரை, ஓபன்சிஎல் கர்னல்கள் ஹெச்பிஎஸ் டிடிஆர் ஹார்ட் மெமரி கன்ட்ரோலருடன் நேரடி இணைப்பு மூலம் பகிரப்பட்ட இயற்பியல் நினைவகத்தை அணுகுகின்றன. மென்பொருளைப் பொறுத்தமட்டில், பகிரப்பட்ட உடல் நினைவகத்திற்கான ஆதரவு பின்வரும் பரிசீலனைகளை உள்ளடக்கியது:

  1. CPU இல் நினைவகத்தை ஒதுக்குவதற்கான வழக்கமான மென்பொருள் செயலாக்கங்கள் (எ.காample, malloc() செயல்பாடு) FPGA பயன்படுத்தக்கூடிய நினைவகப் பகுதியை ஒதுக்க முடியாது.
    malloc() செயல்பாடு ஒதுக்கும் நினைவகம் மெய்நிகர் நினைவக முகவரி இடத்தில் தொடர்ச்சியாக உள்ளது, ஆனால் எந்த அடிப்படை இயற்பியல் பக்கங்களும் உடல் ரீதியாக நெருக்கமாக இருக்க வாய்ப்பில்லை. எனவே, ஹோஸ்ட் உடல் ரீதியாக-தொடர்ச்சியான நினைவகப் பகுதிகளை ஒதுக்க முடியும். இருப்பினும், இந்த திறன் Linux இல் உள்ள பயனர்-வெளி பயன்பாடுகளில் இல்லை. எனவே, லினக்ஸ் கர்னல் இயக்கி ஒதுக்கீடு செய்ய வேண்டும்.
  2. OpenCL SoC FPGA லினக்ஸ் கர்னல் இயக்கியானது, பகிரப்பட்ட இயற்பியல் நினைவகத்தை ஒதுக்குவதற்கும் அதை பயனர் இடத்திற்கு வரைபடமாக்குவதற்கும் mmap() செயல்பாட்டை உள்ளடக்கியது. mmap() செயல்பாடு நிலையான லினக்ஸ் கர்னல் அழைப்பு dma_alloc_coherent() ஐப் பயன்படுத்தி ஒரு சாதனத்துடன் பகிர்வதற்கு உடல் ரீதியாக-தொடர்ச்சியான நினைவகப் பகுதிகளைக் கோருகிறது.
  3. இயல்புநிலை லினக்ஸ் கர்னலில், dma_alloc_coherent() ஆனது 0.5 மெகாபைட் (MB) அளவுக்கு அதிகமான உடல்-தொடர்ச்சியான நினைவகத்தை ஒதுக்காது. dma_alloc_coherent() ஐ அதிக அளவு உடல்-தொடர்ச்சியான நினைவகத்தை ஒதுக்க அனுமதிக்க, Linux கர்னலின் தொடர்ச்சியான நினைவக ஒதுக்கி (CMA) அம்சத்தை இயக்கவும், பின்னர் Linux கர்னலை மீண்டும் தொகுக்கவும்.
    சைக்ளோன் V SoC டெவலப்மென்ட் கிட் ரெஃபரன்ஸ் பிளாட்ஃபார்மிற்கு, 512 ஜிபி உடல் நினைவகத்தில் 1 எம்பியை CMA நிர்வகிக்கிறது. பயன்பாட்டிற்குத் தேவைப்படும் பகிரப்பட்ட நினைவகத்தின் அளவைப் பொறுத்து, இந்த மதிப்பை நீங்கள் அதிகரிக்கலாம் அல்லது குறைக்கலாம். dma_alloc_coherent() அழைப்பால் முழு 512 MB உடல் ரீதியாக-தொடர்ச்சியான நினைவகத்தை ஒதுக்க முடியாமல் போகலாம்; இருப்பினும், இது வழக்கமாக தோராயமாக 450 MB நினைவகத்தைப் பெற முடியும்.
  4. dma_alloc_coherent() அழைப்பு ஒதுக்கும் நினைவகத்தை CPU கேச் செய்ய முடியும். குறிப்பாக, ஹோஸ்ட் பயன்பாட்டிலிருந்து எழுதும் செயல்பாடுகள் OpenCL கர்னல்களுக்குத் தெரிவதில்லை. OpenCL SoC FPGA லினக்ஸ் கர்னல் இயக்கியில் உள்ள mmap() செயல்பாடு, இந்த நினைவகப் பகுதிக்கான தற்காலிக சேமிப்பை வெளிப்படையாக முடக்க pgprot_noncached() அல்லது remap_pf_range() செயல்பாட்டிற்கான அழைப்புகளையும் கொண்டுள்ளது.
  5. dma_alloc_coherent() செயல்பாடு உடல்-தொடர்ச்சியான நினைவகத்தை ஒதுக்கிய பிறகு, mmap() செயல்பாடு மெய்நிகர் முகவரியை வரம்பின் தொடக்கத்திற்கு வழங்குகிறது, இது நீங்கள் ஒதுக்கும் நினைவகத்தின் முகவரி இடைவெளியாகும். நினைவகத்தை அணுக ஹோஸ்ட் பயன்பாட்டிற்கு இந்த மெய்நிகர் முகவரி தேவை. மறுபுறம், OpenCL கர்னல்களுக்கு இயற்பியல் முகவரிகள் தேவை. Linux கர்னல் இயக்கி மெய்நிகர்-இயற்பியல் முகவரி மேப்பிங்கைக் கண்காணிக்கும். இயக்கிக்கு வினவலைச் சேர்ப்பதன் மூலம் mmap() உண்மையான இயற்பியல் முகவரிகளுக்குத் திரும்பும் இயற்பியல் முகவரிகளை நீங்கள் வரைபடமாக்கலாம்.
    aocl_mmd_shared_mem_alloc() MMD பயன்பாட்டு நிரலாக்க இடைமுகம் (API) அழைப்பு பின்வரும் வினவல்களை உள்ளடக்கியது:
    அ. நினைவகத்தை ஒதுக்கி மெய்நிகர் முகவரியை வழங்கும் mmap() செயல்பாடு.
    பி. திரும்பிய மெய்நிகர் முகவரியை இயற்பியல் முகவரிக்கு வரைபடமாக்கும் கூடுதல் வினவல்.
    aocl_mmd_shared_mem_alloc() MMD API அழைப்பு இரண்டு முகவரிகளை வழங்கும்
    -உண்மையில் திரும்பிய முகவரி மெய்நிகர் முகவரி, மற்றும் இயற்பியல் முகவரி device_ptr_out க்கு செல்கிறது.
    குறிப்பு: mmap() செயல்பாடு இயற்பியல் முகவரிகளுக்குத் திரும்பும் மெய்நிகர் முகவரிகளை மட்டுமே இயக்கி வரைபடமாக்க முடியும். வேறு ஏதேனும் மெய்நிகர் சுட்டியின் இயற்பியல் முகவரியைக் கோரினால், இயக்கி ஒரு NULL மதிப்பை வழங்கும்.

எச்சரிக்கை: OpenCL இயக்க நேர நூலகங்களுக்கான Intel FPGA SDK ஆனது, பகிரப்பட்ட நினைவகம் board_spec.xml இல் பட்டியலிடப்பட்ட முதல் நினைவகம் என்று கருதுகிறது. file. வேறு வார்த்தைகளில் கூறுவதானால், லினக்ஸ் கர்னல் இயக்கி பெறும் இயற்பியல் முகவரி, ஓபன்சிஎல் கர்னல் HPS SDRAM க்கு அனுப்பும் Avalon® முகவரியாக மாறும்.
இயக்க நேர நூலகத்தைப் பொறுத்தவரை, பகிர்ந்த நினைவகத்தை பின்வரும் முறையில் சாதன இடையகமாக ஒதுக்க clCreateBuffer() அழைப்பைப் பயன்படுத்தவும்:

  • பகிரப்பட்ட மற்றும் பகிரப்படாத நினைவகம் கொண்ட இரண்டு டிடிஆர் போர்டு மாறுபாட்டிற்கு, நீங்கள் CL_MEM_USE_HOST_PTR கொடியைக் குறிப்பிட்டால், clCreateBuffer() பகிரப்பட்ட நினைவகத்தை ஒதுக்குகிறது. மற்ற கொடிகளைப் பயன்படுத்துவது clCreateBuffer() ஆனது பகிரப்படாத நினைவகத்தில் இடையகத்தை ஒதுக்குகிறது.
  • பகிரப்பட்ட நினைவகத்தை மட்டுமே கொண்ட ஒரு டிடிஆர் போர்டு மாறுபாட்டிற்கு, நீங்கள் எந்தக் கொடியைக் குறிப்பிட்டாலும் clCreateBuffer() பகிரப்பட்ட நினைவகத்தை ஒதுக்குகிறது.
    தற்போது, ​​ARM CPU இல் உள்ள 32-பிட் லினக்ஸ் ஆதரவு SDK இயக்க நேர நூலகங்களில் பகிரப்பட்ட நினைவக ஆதரவின் அளவைக் கட்டுப்படுத்துகிறது. வேறு வார்த்தைகளில் கூறுவதானால், இயக்க நேர நூலகங்கள் பிற சூழல்களில் தொகுக்கப்பட்டுள்ளன (எ.காample, x86_64 Linux அல்லது 64-bit Windows) பகிரப்பட்ட நினைவகத்தை ஆதரிக்காது.
    C5soc பின்வரும் காரணங்களுக்காக பகிரப்பட்ட மற்றும் பகிரப்படாத நினைவகத்தை வேறுபடுத்துவதற்கு பன்முக நினைவகத்தை செயல்படுத்தவில்லை:
    1. வரலாறு-பகிரப்பட்ட நினைவக ஆதரவு முதலில் உருவாக்கப்பட்டபோது, ​​பன்முக நினைவக ஆதரவு கிடைக்கவில்லை.
    2. ஒரே மாதிரியான இடைமுகம்—OpenCL ஒரு திறந்த தரநிலை என்பதால், இன்டெல் பன்முக கணினி இயங்குதள விற்பனையாளர்களிடையே நிலைத்தன்மையை பராமரிக்கிறது. எனவே, மற்ற பலகை விற்பனையாளர்களின் கட்டமைப்புகளைப் போன்ற அதே இடைமுகம் பகிரப்பட்ட நினைவகத்தை ஒதுக்கவும் பயன்படுத்தவும் பயன்படுத்தப்படுகிறது.

1.4 FPGA மறுகட்டமைப்பு
SoC FPGAக்களுக்கு, CPU செயல்பாட்டில் குறுக்கீடு இல்லாமல் FPGA கோர் ஃபேப்ரைரை CPU மறுகட்டமைக்க முடியும். FPGA மேலாளர் வன்பொருள் தொகுதி HPS மற்றும் கோர் FPGA ஆகியவை மறுகட்டமைப்பைச் செய்கிறது. Linux கர்னலில் FPGA மேலாளரை எளிதாக அணுகும் இயக்கி உள்ளது.

  • செய்ய view FPGA மையத்தின் நிலை, cat /sys/class/fpga/fpga0/ நிலை கட்டளையை அழைக்கவும்.
    Cyclone V SoC டெவலப்மென்ட் கிட் ரெஃபரன்ஸ் பிளாட்ஃபார்மில் கிடைக்கும் OpenCL நிரல் பயன்பாட்டுக்கான Intel FPGA SDK ஆனது FPGA ஐ நிரல் செய்ய இந்த இடைமுகத்தைப் பயன்படுத்துகிறது. இயங்கும் CPU உடன் FPGA கோர் மறுநிரலாக்கம் செய்யும் போது, ​​நிரல் பயன்பாடு பின்வரும் அனைத்து பணிகளையும் செய்கிறது:
    1. மறு நிரலாக்கத்திற்கு முன், FPGA மற்றும் HPS இடையேயான அனைத்து தொடர்பு பாலங்களையும், H2F மற்றும் LH2F பாலங்கள் இரண்டையும் முடக்கவும்.
    மறு நிரலாக்கம் முடிந்ததும் இந்த பாலங்களை மீண்டும் இயக்கவும்.
    கவனம்: OpenCL அமைப்பு FPGA-to-HPS (F2H) பிரிட்ஜைப் பயன்படுத்துவதில்லை. மேலும் தகவலுக்கு, Cyclone V Device Handbook, Volume 3: Hard Processor System Technical Reference Manual இல் உள்ள HPS-FPGA இடைமுகங்கள் பகுதியைப் பார்க்கவும்.
    2. மறு நிரலாக்கத்தின் போது FPGA மற்றும் HPS DDR கட்டுப்படுத்திக்கு இடையேயான இணைப்பு முடக்கப்பட்டிருப்பதை உறுதிசெய்யவும்.
    3. மறு நிரலாக்கத்தின் போது FPGA இல் FPGA குறுக்கீடுகள் முடக்கப்பட்டிருப்பதை உறுதி செய்யவும்.
    மேலும், மறு நிரலாக்கத்தின் போது FPGA இலிருந்து ஏதேனும் குறுக்கீடுகளை நிராகரிக்குமாறு இயக்கிக்குத் தெரிவிக்கவும்.

உண்மையான செயல்படுத்தல் பற்றிய விவரங்களுக்கு நிரல் பயன்பாட்டின் மூலக் குறியீட்டைப் பார்க்கவும்.

எச்சரிக்கை: CPU இயங்கும் போது HPS DDR கட்டுப்படுத்தியின் உள்ளமைவை மாற்ற வேண்டாம்.
அவ்வாறு செய்வது ஒரு அபாயகரமான கணினி பிழையை ஏற்படுத்தலாம், ஏனெனில் CPU இலிருந்து நிலுவையில் உள்ள நினைவக பரிவர்த்தனைகள் இருக்கும்போது DDR கட்டுப்படுத்தி உள்ளமைவை மாற்றலாம். CPU இயங்கும் போது, ​​HPS DDR ஐ வேறு உள்ளமைவில் பயன்படுத்தும் படத்துடன் FPGA கோர் மறுநிரல் செய்யக்கூடாது என்பதே இதன் பொருள்.
OpenCL அமைப்பு மற்றும் Intel SoC FPGA உட்பொதிக்கப்பட்ட வடிவமைப்பு தொகுப்பு (EDS) உடன் கிடைக்கும் கோல்டன் ஹார்டுவேர் குறிப்பு வடிவமைப்பு ஆகியவை HPS DDR ஐ ஒற்றை 256-பிட் பயன்முறையில் அமைக்கிறது என்பதை நினைவில் கொள்க.
CPU இல் எதுவும் இயங்கவில்லை என்று தோன்றினாலும், கிளை முன்கணிப்பு அல்லது பக்க அட்டவணை ப்ரீஃபெட்சர் போன்ற CPU அமைப்பின் பாகங்கள் DDR கட்டளைகளை வழங்கக்கூடும்.
எனவே, HPS DDR கன்ட்ரோலர் உள்ளமைவை அமைக்க பூட் நேரமே பாதுகாப்பான நேரமாகும்.
U-boot ஆனது மூல பைனரியைக் கொண்டிருக்க வேண்டும் என்பதையும் இது குறிக்கிறது file (.rbf) படம் நினைவகத்தில் ஏற்றப்படும். இல்லையெனில், நீங்கள் FPGA இல் பயன்படுத்தப்படாத போர்ட்களுடன் HPS DDR ஐ இயக்கலாம், பின்னர் போர்ட் உள்ளமைவுகளை மாற்றலாம். இந்த காரணத்திற்காக, OpenCL Linux கர்னல் இயக்கி HPS DDR கட்டுப்படுத்தி உள்ளமைவை அமைக்க தேவையான லாஜிக்கை இனி சேர்க்காது.
SW3 டூயல் இன்-லைன் தொகுப்பு (டிஐபி) சைலோன் V SoC டெவலப்மென்ட் கிட் மீது ஸ்விட்ச்கள் .rbf படத்தின் எதிர்பார்க்கப்படும் வடிவத்தைக் கட்டுப்படுத்துகிறது (அதாவது, file சுருக்கப்பட்டது மற்றும்/அல்லது குறியாக்கம் செய்யப்பட்டுள்ளது). C5soc, மற்றும் SoC EDS உடன் கிடைக்கும் கோல்டன் ஹார்டுவேர் குறிப்பு வடிவமைப்பு, சுருக்கப்பட்ட ஆனால் மறைகுறியாக்கப்படாத .rbf படங்கள் அடங்கும். Intel FPGA SDK இல் OpenCL Cyclone V SoC தொடங்குதல் வழிகாட்டியில் விவரிக்கப்பட்டுள்ள SW3 DIP சுவிட்ச் அமைப்புகள் இந்த .rbf பட உள்ளமைவுடன் பொருந்துகின்றன.

தொடர்புடைய இணைப்புகள்

  • HPS-FPGA இடைமுகங்கள்
  • SW3 சுவிட்சுகளை கட்டமைக்கிறது

1.4.1 FPGA சிஸ்டம் கட்டிடக்கலை விவரங்கள்
சைக்ளோன் V SoC டெவலப்மென்ட் கிட் ரெஃபரன்ஸ் பிளாட்ஃபார்மிற்கான ஆதரவு, OpenCLக்கான Intel FPGA SDK உடன் கிடைக்கும் Stratix® V குறிப்பு தளத்தை (s5_ref) அடிப்படையாகக் கொண்டது.
c5soc Qsys அமைப்பின் ஒட்டுமொத்த அமைப்பும் கர்னல் இயக்கியும் s5_ref இல் உள்ளவற்றைப் போலவே உள்ளது.
பின்வரும் FPGA முக்கிய கூறுகள் c5soc மற்றும் s5_ref இரண்டிலும் ஒரே மாதிரியாக இருக்கும்:

  • VERSION_ID தொகுதி
  • ஓய்வு வழிமுறை
  • நினைவக வங்கி பிரிப்பான்
  • கேச் ஸ்னூப் இடைமுகம்
  • கர்னல் கடிகாரம்
  • பதிவு அணுகல் (CRA) தொகுதிகளை கட்டுப்படுத்தவும்

1.5 SD ஃப்ளாஷ் கார்டு படத்தை உருவாக்குதல்
Cyclone V SoC FPGA ஒரு சிப்பில் முழு அமைப்பாக இருப்பதால், கணினியின் முழு வரையறையை வழங்குவதற்கு நீங்கள் பொறுப்பாவீர்கள். SD ஃபிளாஷ் கார்டு படத்தின் வடிவத்தில் அதை வழங்குமாறு இன்டெல் பரிந்துரைக்கிறது. OpenCL பயனருக்கான Intel FPGA SDK ஆனது மைக்ரோ SD ஃபிளாஷ் கார்டில் படத்தை எழுதலாம் மற்றும் SoC FPGA போர்டு பயன்படுத்த தயாராக உள்ளது.
பக்கம் 13 இல் இருக்கும் SD ஃபிளாஷ் கார்டு படத்தை மாற்றுதல்
Cyclone V SoC டெவலப்மென்ட் கிட் ரெஃபரன்ஸ் பிளாட்ஃபார்மில் உள்ள படத்தை மாற்றியமைக்க இன்டெல் பரிந்துரைக்கிறது. புதிய SD ஃபிளாஷ் கார்டு படத்தை உருவாக்குவதற்கான விருப்பமும் உங்களுக்கு உள்ளது.
பக்கம் 14 இல் SD ஃப்ளாஷ் கார்டு படத்தை உருவாக்குதல்
புதிய SD ஃபிளாஷ் கார்டு படத்தை உருவாக்குவதற்கான விருப்பமும் உங்களுக்கு உள்ளது.

1.5.1 ஏற்கனவே உள்ள SD ஃபிளாஷ் கார்டு படத்தை மாற்றுதல்
Cyclone V SoC உடன் கிடைக்கும் படத்தை மாற்றியமைக்க இன்டெல் பரிந்துரைக்கிறது
டெவலப்மெண்ட் கிட் குறிப்பு தளம். புதிய SD ஃபிளாஷ் கார்டு படத்தை உருவாக்குவதற்கான விருப்பமும் உங்களுக்கு உள்ளது.
c5soc linux_sd_card_image.tgz படம் file ALTERAOCLSDKROOT/board/c5soc கோப்பகத்தில் கிடைக்கிறது, அங்கு ALTERAOCLSDKROOT ஆனது OpenCL இன் நிறுவல் கோப்பகத்திற்கான Intel FPGA SDK இன் பாதையை சுட்டிக்காட்டுகிறது.

கவனம்: SD ஃபிளாஷ் கார்டு படத்தை மாற்ற, உங்களிடம் ரூட் அல்லது சூடோ சிறப்புரிமைகள் இருக்க வேண்டும்.

  1. $ALTERAOCLSDKROOT/board/c5soc/linux_sd_card_image.tgz ஐ சுருக்கவும் file, tar xvfzlinux_sd_card_image.tgz கட்டளையை இயக்கவும்.
  2. hello_world OpenCL ex தொகுக்கவும்ampஉங்கள் தனிப்பயன் இயங்குதள ஆதரவைப் பயன்படுத்தி வடிவமைக்கவும். .rbf ஐ மறுபெயரிடவும் file OpenCL ஆஃப்லைன் கம்பைலருக்கான Intel FPGA SDK ஆனது opencl.rbf ஆக உருவாக்குகிறது, மேலும் அதை SD ஃபிளாஷ் கார்டு படத்தில் உள்ள fat32 பகிர்வில் வைக்கவும்.
    நீங்கள் hello_world ex ஐப் பதிவிறக்கலாம்ampOpenCL வடிவமைப்பு Ex இலிருந்து le வடிவமைப்புampஅல்டெராவில் லெஸ் பக்கம் webதளம்.
  3. .rbf ஐ வைக்கவும் file ஃபிளாஷ் கார்டு படத்தின் fat32 பகிர்வில்.
    கவனம்: fat32 பகிர்வு zImage இரண்டையும் கொண்டிருக்க வேண்டும் file மற்றும் .rbf file. ஒரு .rbf இல்லாமல் file, நீங்கள் டிரைவரைச் செருகும்போது ஒரு அபாயகரமான பிழை ஏற்படும்.
  4. நீங்கள் SD கார்டு படத்தை உருவாக்கிய பிறகு, பின்வரும் கட்டளையை செயல்படுத்துவதன் மூலம் அதை மைக்ரோ SD கார்டில் எழுதவும்: sudo dd if=/path/to/sdcard/image.bin of=/dev/sdcard
  5. உங்கள் SD ஃபிளாஷ் கார்டு படத்தைச் சோதிக்க, பின்வரும் பணிகளைச் செய்யவும்:
    அ. SoC FPGA போர்டில் மைக்ரோ SD ஃபிளாஷ் கார்டைச் செருகவும்.
    பி. பலகையை பவர் அப் செய்யவும்.
    c. aocl கண்டறியும் பயன்பாட்டு கட்டளையை செயல்படுத்தவும்.

1.5.2 SD ஃப்ளாஷ் கார்டு படத்தை உருவாக்குதல்
புதிய SD ஃபிளாஷ் கார்டு படத்தை உருவாக்குவதற்கான விருப்பமும் உங்களுக்கு உள்ளது. புதிய SD ஃபிளாஷ் கார்டு படத்தை உருவாக்குவது மற்றும் ஏற்கனவே உள்ள SD ஃபிளாஷ் கார்டு படத்தை மீண்டும் உருவாக்குவது பற்றிய பொதுவான வழிமுறைகள் GSRD v14.0.2 – RocketBoards.org இன் SD கார்டு பக்கத்தில் கிடைக்கும். webதளம்.
கோல்டன் சிஸ்டம் ரெஃபரன்ஸ் டிசைன் (GSRD) SD ஃபிளாஷ் கார்டு படத்திலிருந்து linux_sd_card_image.tgz படத்தை உருவாக்கும் செயல்முறையை கீழே உள்ள படிகள் விவரிக்கின்றன:
குறிப்பு:
c5soc படத்திலிருந்து படத்தை உருவாக்க, இந்த நடைமுறையில் விவரிக்கப்பட்டுள்ள அனைத்து பொருந்தக்கூடிய பணிகளையும் செய்யவும்.

  1. Rocketboards.org இலிருந்து GSRD SD ஃபிளாஷ் கார்டு இமேஜ் பதிப்பு 14.0ஐ பதிவிறக்கம் செய்து திறக்கவும்.
  2. மவுண்ட் தி file ஒதுக்கீடு அட்டவணை (கொழுப்பு32) மற்றும் நீட்டிக்கப்பட்டது file கணினி (ext3) பகிர்வுகள் இந்தப் படத்தில் லூப்-பேக் சாதனங்களாக உள்ளன. ஒரு பகிர்வை ஏற்ற, பின்வரும் படிகளைச் செய்யவும்:
    அ. /sbin/fdisk -lu image_ ஐ செயல்படுத்துவதன் மூலம் படத்தில் உள்ள பகிர்வின் பைட் தொடக்கத்தை தீர்மானிக்கவும்.file கட்டளை.
    உதாரணமாகample, W1 FAT வகையின் பகிர்வு எண் 95 ஆனது 2121728 இன் பிளாக் ஆஃப்செட்டைக் கொண்டுள்ளது. ஒரு தொகுதிக்கு 512 பைட்டுகள், பைட் ஆஃப்செட் 512 பைட்டுகள் x 2121728 = 1086324736 பைட்டுகள்.
    பி. இலவச லூப் சாதனத்தை அடையாளம் காணவும் (எ.காample, /dev/loop0) Lostup -f கட்டளையை தட்டச்சு செய்வதன் மூலம்.
    c. /dev/loop0 என்பது இலவச லூப் சாதனம் எனக் கருதி, லாஸ்ட்அப் /dev/loop0 image_ஐ செயல்படுத்துவதன் மூலம் உங்கள் ஃபிளாஷ் கார்டு படத்தை லூப் பிளாக் சாதனத்திற்கு ஒதுக்கவும்.file -0 1086324736 கட்டளை.
    ஈ. mount /dev/loop0 /media/disk1 கட்டளையை செயல்படுத்துவதன் மூலம் லூப் சாதனத்தை ஏற்றவும்.
    படத்துக்குள் file, /media/disk1 இப்போது ஏற்றப்பட்ட fat32 பகிர்வாகும்.
    இ. ext3 பகிர்வுக்கு a முதல் d வரையிலான படிகளை மீண்டும் செய்யவும்.
  3. Intel FPGA இயக்க நேர சூழலின் Cyclone V SoC FPGA பதிப்பை OpenCL தொகுப்புக்கான ஆல்டெராவில் உள்ள பதிவிறக்க மையத்திலிருந்து பதிவிறக்கவும். webதளம்.
    அ. குவார்டஸ் பிரைம் மென்பொருள் பதிப்பிற்கு அருகில் உள்ள பதிவிறக்க பொத்தானைக் கிளிக் செய்யவும்.
    பி. வெளியீட்டு பதிப்பு, இயக்க முறைமை மற்றும் பதிவிறக்க முறை ஆகியவற்றைக் குறிப்பிடவும்.
    c. கூடுதல் மென்பொருள் தாவலைக் கிளிக் செய்து, Intel FPGA ஐப் பதிவிறக்க தேர்ந்தெடுக்கவும்
    OpenCL Linux சைக்ளோன் V SoC TGZ க்கான இயக்க நேர சூழல்.
    ஈ. நீங்கள் aocl-rte-ஐப் பதிவிறக்கிய பிறகு- .arm32.tgz file, அதைத் திறக்கவும்
    உங்களுக்கு சொந்தமான ஒரு அடைவு.
  4. தொகுக்கப்படாத aocl-rte-ஐ வைக்கவும். படத்தின் ext32 பகிர்வில் /home/root/opencl_arm32_rte கோப்பகத்தில் .arm3 கோப்பகம் file.
  5. உங்கள் தனிப்பயன் இயங்குதளத்தின் வன்பொருள் கோப்புறை(களை) நீக்கவும், பின்னர் தனிப்பயன் இயங்குதளத்தை /home/root/ opencl_arm32_rte இன் போர்டு துணை அடைவில் வைக்கவும்.
  6. init_opencl.sh ஐ உருவாக்கவும் file பின்வரும் உள்ளடக்கத்துடன் /home/root கோப்பகத்தில்: ஏற்றுமதி ALTERAOCLSDKROOT=/home/root/opencl_arm32_rte ஏற்றுமதி AOCL_BOARD_PACKAGE_ROOT=$ALTERAOCLSDKROOT/board/ ஏற்றுமதி PATH=$ALTERAOCLSDKROOT/bin:$PATH ஏற்றுமதி LD_LIBRARY_PATH=$ALTERAOCLSDKROOT/host/arm32/lib:$LD_LIBRARY_PATH insmod $AOCL_BOARD_PACKAGE_ROOT/driver/acls.
    சூழல் மாறிகள் மற்றும் OpenCL Linux கர்னல் இயக்கியை ஏற்றுவதற்கு SDK பயனர் source ./init_opencl.sh கட்டளையை இயக்குகிறார்.
  7. நீங்கள் ப்ரீலோடரைப் புதுப்பிக்க வேண்டும் என்றால், டி.டி.எஸ் files, அல்லது Linux கர்னல், SoC EDS இலிருந்து arm-linux-gnueabihf-gcc கம்பைலர் உங்களுக்குத் தேவை. மென்பொருளைப் பெறவும், அவற்றை மீண்டும் தொகுக்கவும் மற்றும் தொடர்புடையவற்றைப் புதுப்பிக்கவும் Intel SoC FPGA உட்பொதிக்கப்பட்ட வடிவமைப்பு சூட் பயனர் வழிகாட்டியில் குறிப்பிடப்பட்டுள்ள வழிமுறைகளைப் பின்பற்றவும் fileஏற்றப்பட்ட fat32 பகிர்வில் கள்.
    கவனம்: உங்கள் தனிப்பயன் இயங்குதளமானது c5soc இல் உள்ளதை விட வேறுபட்ட பின் பயன்பாடுகளைக் கொண்டிருந்தால், நீங்கள் ப்ரீலோடரைப் புதுப்பிக்க வேண்டியிருக்கும்.
    நினைவில் கொள்ளுங்கள்: நீங்கள் லினக்ஸ் கர்னலை மீண்டும் தொகுத்தால், அதே லினக்ஸ் கர்னல் மூலத்துடன் லினக்ஸ் கர்னல் இயக்கியை மீண்டும் தொகுக்கவும். fileகள். லினக்ஸ் கர்னல் இயக்கி மற்றும் லினக்ஸ் கர்னல் இடையே பொருந்தவில்லை என்றால், இயக்கி ஏற்றப்படாது. மேலும், நீங்கள் CMA ஐ இயக்க வேண்டும்.
    மேலும் தகவலுக்கு லினக்ஸ் கர்னலை மீண்டும் தொகுத்தல் என்பதைப் பார்க்கவும்.
  8. hello_world OpenCL ex தொகுக்கவும்ampஉங்கள் தனிப்பயன் இயங்குதள ஆதரவைப் பயன்படுத்தி வடிவமைக்கவும். .rbf ஐ மறுபெயரிடவும் file OpenCL ஆஃப்லைன் கம்பைலருக்கான Intel FPGA SDK ஆனது opencl.rbf ஆக உருவாக்குகிறது, மேலும் அதை SD ஃபிளாஷ் கார்டு படத்தில் உள்ள fat32 பகிர்வில் வைக்கவும்.
    நீங்கள் hello_world ex ஐப் பதிவிறக்கலாம்ampOpenCL வடிவமைப்பு Ex இலிருந்து le வடிவமைப்புampஅல்டெராவில் லெஸ் பக்கம் webதளம்.
    9. தேவையான அனைத்தையும் சேமித்த பிறகு fileஃபிளாஷ் கார்டு படத்தில், பின்வரும் கட்டளைகளை செயல்படுத்தவும்:
    அ. ஒத்திசைவு
    பி. /media/disk1ஐ அவிழ்த்து விடுங்கள்
    c. ஏற்றிவிடு எங்கே பக்கம் 3 இல் 3 இல் ext3 பகிர்வை ஏற்ற நீங்கள் பயன்படுத்தும் அடைவுப் பெயர்ample, /media/disk2).
    ஈ. லாஸ்டப் -d /dev/loop0
    இ. லாஸ்டப் -d /dev/loop1
  9. பின்வரும் கட்டளையை செயல்படுத்துவதன் மூலம் SD ஃபிளாஷ் கார்டு படத்தை சுருக்கவும்: tar cvfz .tgz linux_sd_card_image
  10. வழங்கவும் .tgz file உங்கள் தனிப்பயன் இயங்குதளத்தின் ரூட் கோப்பகத்தின் உள்ளே.
  11. உங்கள் SD ஃபிளாஷ் கார்டு படத்தைச் சோதிக்க, பின்வரும் பணிகளைச் செய்யவும்:
    அ. இதன் விளைவாக வரும் சுருக்கப்படாத படத்தை மைக்ரோ எஸ்டி ஃபிளாஷ் கார்டில் எழுதவும்.
    பி. SoC FPGA போர்டில் மைக்ரோ SD ஃபிளாஷ் கார்டைச் செருகவும்.
    c. பலகையை பவர் அப் செய்யவும்.
    ஈ. aocl கண்டறியும் பயன்பாட்டு கட்டளையை செயல்படுத்தவும்.

தொடர்புடைய இணைப்புகள்

  • Intel SoC FPGA உட்பொதிக்கப்பட்ட வடிவமைப்பு தொகுப்பு பயனர் வழிகாட்டி
  • OpenCL வடிவமைப்பு Exampஅல்டெராவில் லெஸ் பக்கம் webதளம்
  • பக்கம் 16 இல் லினக்ஸ் கர்னலை மீண்டும் தொகுத்தல்
    CMA ஐ இயக்க, நீங்கள் முதலில் லினக்ஸ் கர்னலை மீண்டும் தொகுக்க வேண்டும்.
  • உங்கள் FPGA போர்டின் சாதனப் பெயரை வினவுதல் (கண்டறிதல்)

1.6 Cyclone V SoC FPGA க்காக லினக்ஸ் கர்னலை தொகுத்தல்
Cyclone V SoC FPGA போர்டில் OpenCL பயன்பாடுகளை இயக்கும் முன், நீங்கள் Linux கர்னல் மூலத்தைத் தொகுத்து, OpenCL Linux கர்னல் இயக்கியைத் தொகுத்து நிறுவ வேண்டும்.

  1. பக்கம் 16 இல் லினக்ஸ் கர்னலை மீண்டும் தொகுத்தல்
    CMA ஐ இயக்க, நீங்கள் முதலில் லினக்ஸ் கர்னலை மீண்டும் தொகுக்க வேண்டும்.
  2. பக்கம் 17 இல் OpenCL லினக்ஸ் கர்னல் இயக்கியை தொகுத்தல் மற்றும் நிறுவுதல் தொகுக்கப்பட்ட கர்னல் மூலத்திற்கு எதிராக OpenCL Linux கர்னல் இயக்கியை தொகுக்கவும்.

1.6.1 லினக்ஸ் கர்னலை மீண்டும் தொகுத்தல்
CMA ஐ இயக்க, நீங்கள் முதலில் லினக்ஸ் கர்னலை மீண்டும் தொகுக்க வேண்டும்.

  1. RocketBoards.org இன் ஆதாரங்கள் பக்கத்தில் GSRD v14.0 – Compiling Linux இணைப்பைக் கிளிக் செய்யவும். webலினக்ஸ் கர்னல் மூலக் குறியீட்டைப் பதிவிறக்கம் செய்து மீண்டும் உருவாக்குவதற்கான வழிமுறைகளை அணுகுவதற்கான தளம்.
    OpenCL க்கான ™ Intel FPGA SDK உடன் பயன்படுத்த, socfpga-3.13-rel14.0 ஐக் குறிப்பிடவும் .
  2. குறிப்பு: கட்டிட செயல்முறை arch/arm/configs/socfpga_defconfig ஐ உருவாக்குகிறது file. இது file socfpga இயல்புநிலை கட்டமைப்பிற்கான அமைப்புகளை குறிப்பிடுகிறது.
    பின்வரும் வரிகளை 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
    CONFIG_CMA_SIZE_MBYTES உள்ளமைவு மதிப்பு, கிடைக்கும் மொத்த நினைவகத்தின் அதிகபட்ச வரம்பை அமைக்கிறது. உங்களுக்கு அதிக நினைவகம் தேவைப்பட்டால் இந்த மதிப்பை அதிகரிக்கலாம்.
  3. கவனம்: SoC FPGA போர்டில் உள்ள ARM செயலிக்கு கிடைக்கும் மொத்த நினைவக அளவு 1 GB ஆகும். CMA மேலாளரை 1 ஜிபிக்கு அருகில் அமைக்க Intel பரிந்துரைக்கவில்லை.
  4. தற்போதைய உள்ளமைவை சுத்தம் செய்ய make mrproper கட்டளையை இயக்கவும்.
  5. make ARCH=arm socfpga_deconfig கட்டளையை இயக்கவும்.
    நீங்கள் ARM கட்டமைப்பை உள்ளமைக்க விரும்புகிறீர்கள் என்பதை ARCH=arm குறிக்கிறது.
    socfpga_defconfig நீங்கள் இயல்புநிலை socfpga உள்ளமைவைப் பயன்படுத்த விரும்புகிறீர்கள் என்பதைக் குறிக்கிறது.
  6. ஏற்றுமதி CROSS_COMPILE=arm-linux-gnueabihf- கட்டளையை இயக்கவும்.
    இந்த கட்டளையானது CROSS_COMPILE சூழல் மாறியை விரும்பிய கருவிச் சங்கிலியின் முன்னொட்டைக் குறிப்பிட அமைக்கிறது.
  7. make ARCH=arm zImage கட்டளையை இயக்கவும். இதன் விளைவாக வரும் படம் arch/arm/boot/zImage இல் கிடைக்கும் file.
  8. zImage ஐ வைக்கவும் file ஃபிளாஷ் கார்டு படத்தின் fat32 பகிர்வில். விரிவான வழிமுறைகளுக்கு, Rocketboards.org இல் உள்ள Cyclone V SoC FPGA-குறிப்பிட்ட GSRD பயனர் கையேட்டைப் பார்க்கவும்.
  9. குறிப்பு: OpenCL Linux கர்னல் இயக்கியைச் சரியாகச் செருக, முதலில் SDKgenerated.rbf ஐ ஏற்றவும் file FPGA மீது.
    .rbf ஐ உருவாக்க file, ஒரு SDK வடிவமைப்பைத் தொகுக்கவும்ample Cyclone V SoC டெவலப்மென்ட் கிட் ரெஃபரன்ஸ் பிளாட்ஃபார்ம் இலக்கு தனிப்பயன் தளமாக உள்ளது.
    9. .rbf வைக்கவும் file ஃபிளாஷ் கார்டு படத்தின் fat32 பகிர்வில்.
    கவனம்: fat32 பகிர்வில் zImage இரண்டையும் கொண்டிருக்க வேண்டும் file மற்றும் .rbf file. ஒரு .rbf இல்லாமல் file, நீங்கள் டிரைவரைச் செருகும்போது ஒரு அபாயகரமான பிழை ஏற்படும்.
  10. Cyclone V SoC டெவலப்மென்ட் கிட்டில் நீங்கள் மாற்றியமைத்த அல்லது முன்பு உருவாக்கிய SD கார்டு படத்தைக் கொண்டிருக்கும் புரோகிராம் செய்யப்பட்ட மைக்ரோ SD கார்டைச் செருகவும், பின்னர் SoC FPGA போர்டை பவர் அப் செய்யவும்.
  11. uname -r கட்டளையை இயக்குவதன் மூலம் நிறுவப்பட்ட லினக்ஸ் கர்னலின் பதிப்பைச் சரிபார்க்கவும்.
  12. SoC FPGA போர்டுடன், கர்னலில் CMAஐ வெற்றிகரமாக இயக்கினீர்களா என்பதைச் சரிபார்க்க, grep init_cma /proc/kallsyms கட்டளையை இயக்கவும்.
    வெளியீடு காலியாக இல்லாவிட்டால் CMA இயக்கப்படும்.
  13. SDK உடன் மீண்டும் தொகுக்கப்பட்ட லினக்ஸ் கர்னலைப் பயன்படுத்த, Linux கர்னல் இயக்கியை தொகுத்து நிறுவவும்.

தொடர்புடைய இணைப்புகள்

  • கோல்டன் சிஸ்டம் குறிப்பு வடிவமைப்பு (ஜிஎஸ்ஆர்டி) பயனர் கையேடுகள்
  • பக்கம் 13 இல் SD ஃப்ளாஷ் கார்டு படத்தை உருவாக்குதல்
    Cyclone V SoC FPGA ஒரு சிப்பில் முழு அமைப்பாக இருப்பதால், கணினியின் முழு வரையறையை வழங்குவதற்கு நீங்கள் பொறுப்பாவீர்கள்.

1.6.2 OpenCL லினக்ஸ் கர்னல் இயக்கியை தொகுத்தல் மற்றும் நிறுவுதல்
தொகுக்கப்பட்ட கர்னல் மூலத்திற்கு எதிராக OpenCL Linux கர்னல் இயக்கியை தொகுக்கவும்.

OpenCL க்கான Intel FPGA இயக்க நேர சூழலின் Cyclone V SoC FPGA பதிப்பில் இயக்கி மூலம் கிடைக்கிறது. கூடுதலாக, OpenCL-உருவாக்கிய .rbf க்காக Intel FPGA SDKஐ ஏற்றியுள்ளீர்கள் என்பதை உறுதிப்படுத்தவும். file லினக்ஸ் கர்னல் தொகுதியின் தவறான நிறுவலைத் தடுக்க FPGA இல்.

  1. Intel FPGA இயக்க நேர சூழலின் Cyclone V SoC FPGA பதிப்பை OpenCL தொகுப்புக்கான ஆல்டெராவில் உள்ள பதிவிறக்க மையத்திலிருந்து பதிவிறக்கவும். webதளம்.
    அ. குவார்டஸ் பிரைம் மென்பொருள் பதிப்பிற்கு அருகில் உள்ள பதிவிறக்க பொத்தானைக் கிளிக் செய்யவும்.
    பி. வெளியீட்டு பதிப்பு, இயக்க முறைமை மற்றும் பதிவிறக்க முறை ஆகியவற்றைக் குறிப்பிடவும்.
    c. கூடுதல் மென்பொருள் தாவலைக் கிளிக் செய்து, Intel FPGA ஐப் பதிவிறக்க தேர்ந்தெடுக்கவும்
    OpenCL Linux சைக்ளோன் V SoC TGZ க்கான இயக்க நேர சூழல்.
    ஈ. நீங்கள் aocl-rte-ஐப் பதிவிறக்கிய பிறகு- .arm32.tgz file, அதைத் திறக்கவும்
    உங்களுக்கு சொந்தமான ஒரு அடைவு.
    இயக்கி மூலமானது aocl-rte- இல் உள்ளது. .arm32/board/c5soc/ இயக்கி அடைவு.
  2. OpenCL Linux கர்னல் இயக்கியை மீண்டும் தொகுக்க, இயக்கியின் தயாரிப்பில் KDIR மதிப்பை அமைக்கவும்.file லினக்ஸ் கர்னல் மூலத்தைக் கொண்ட கோப்பகத்திற்கு files.
  3. உங்கள் கருவிச் சங்கிலியின் முன்னொட்டைக் குறிக்க ஏற்றுமதி CROSS_COMPILE=arm-linux-gnueabihf- கட்டளையை இயக்கவும்.
  4. make clean கட்டளையை இயக்கவும்.
  5. aclsoc_drv.ko ஐ உருவாக்க make கட்டளையை இயக்கவும் file.
  6. opencl_arm32_rte கோப்பகத்தை Cyclone V SoC FPGA போர்டுக்கு மாற்றவும்.
    scp -rஐ இயக்குகிறது root@your-ipaddress: கட்டளை இயக்க நேர சூழலை/home/root கோப்பகத்தில் வைக்கிறது.
  7. SD கார்டிமேஜை உருவாக்கும்போது நீங்கள் உருவாக்கிய init_opencl.sh ஸ்கிரிப்டை இயக்கவும்.
  8.  aocl கண்டறியும் பயன்பாட்டு கட்டளையை செயல்படுத்தவும். நீங்கள் init_opencl.sh ஐ வெற்றிகரமாக இயக்கிய பிறகு, கண்டறியும் பயன்பாடானது ஒரு தேர்ச்சி முடிவை வழங்கும்.

1.7 அறியப்பட்ட சிக்கல்கள்
தற்போது, ​​Cyclone V SoC டெவலப்மென்ட் கிட் ரெஃபரன்ஸ் பிளாட்ஃபார்முடன் OpenCL க்காக Intel FPGA SDK ஐப் பயன்படுத்துவதில் சில வரம்புகள் உள்ளன.

  1. clGetDeviceInfo() அழைப்பின் CL_DEVICE_VENDOR மற்றும் CL_DEVICE_NAME சரங்களால் புகாரளிக்கப்பட்ட விற்பனையாளர் மற்றும் போர்டு பெயர்களை நீங்கள் மேலெழுத முடியாது.
  2. பகிர்ந்த DDR அமைப்பில் நிலையான நினைவகத்தை ஹோஸ்ட் ஒதுக்கினால் (அதாவது HPS DDR) அது கர்னல் செயல்பாட்டிற்குப் பிறகு நிலையான நினைவகத்தை மாற்றியமைத்தால், நினைவகத்தில் உள்ள தரவு காலாவதியாகிவிடும். CPU-to-HPS DDR பரிவர்த்தனைகளை FPGA கோர் ஸ்னூப் செய்ய முடியாது என்பதால் இந்தச் சிக்கல் எழுகிறது.
    காலாவதியான தரவை அணுகுவதிலிருந்து அடுத்தடுத்த கர்னல் செயலாக்கங்களைத் தடுக்க, பின்வரும் தீர்வுகளில் ஒன்றைச் செயல்படுத்தவும்:
    • அதன் துவக்கத்திற்குப் பிறகு நிலையான நினைவகத்தை மாற்ற வேண்டாம்.
    • உங்களுக்கு பல __நிலையான தரவுத் தொகுப்புகள் தேவைப்பட்டால், பல நிலையான நினைவக இடையகங்களை உருவாக்கவும்.
    • இருந்தால், உங்கள் முடுக்கி பலகையில் FPGA DDR இல் நிலையான நினைவகத்தை ஒதுக்கவும்.
  3. ARM இல் உள்ள SDK பயன்பாடு நிரலை மட்டுமே ஆதரிக்கிறது மற்றும் பயன்பாட்டு கட்டளைகளை கண்டறியும்.
    பின்வரும் காரணங்களுக்காக Cyclone V SoC டெவலப்மெண்ட் கிட்டுக்கு ஃபிளாஷ், நிறுவல் மற்றும் நிறுவல் நீக்குதல் பயன்பாட்டுக் கட்டளைகள் பொருந்தாது:
    அ. நிறுவல் பயன்பாடு aclsoc_drv Linux கர்னல் இயக்கியை தொகுத்து SoC FPGA இல் செயல்படுத்த வேண்டும். வளர்ச்சி இயந்திரம் தொகுப்பைச் செய்ய வேண்டும்; இருப்பினும், இது ஏற்கனவே SoC FPGAக்கான லினக்ஸ் கர்னல் மூலங்களைக் கொண்டுள்ளது. மேம்பாட்டு இயந்திரத்திற்கான லினக்ஸ் கர்னல் ஆதாரங்கள் SoC FPGA க்கு வேறுபட்டவை. SoC FPGAக்கான Linux கர்னல் மூலங்களின் இருப்பிடம் SDK பயனருக்குத் தெரியாமல் இருக்கலாம். இதேபோல், நிறுவல் நீக்குதல் பயன்பாடும் Cyclone V SoC டெவலப்மென்ட் கிட்டில் கிடைக்கவில்லை.
    மேலும், SoC போர்டில் aclsoc_drv வழங்குவது சவாலானது, ஏனெனில் Cyclone V SoC டெவலப்மென்ட் கிட்டின் இயல்புநிலை விநியோகம் Linux கர்னலைக் கொண்டிருக்கவில்லை. files அல்லது GNU Compiler Collection (GCC) கம்பைலர்.
    பி. ஃபிளாஷ் பயன்பாட்டுக்கு .rbf ஐ வைக்க வேண்டும் file மைக்ரோ எஸ்டி ஃபிளாஷ் கார்டின் FAT32 பகிர்வில் OpenCL வடிவமைப்பு. தற்போது, ​​SDK பயனர் பலகையை இயக்கும்போது இந்தப் பகிர்வு ஏற்றப்படாது. எனவே, பகிர்வை மேம்படுத்த சிறந்த வழி ஒரு ஃபிளாஷ் கார்டு ரீடர் மற்றும் மேம்பாட்டு இயந்திரத்தைப் பயன்படுத்துவதாகும்.
  4. OpenCL ஆஃப்லைன் கம்பைலர் இயங்கக்கூடிய இன்டெல் FPGA SDK க்கு இடையில் மாறும்போது files (.aocx) வெவ்வேறு போர்டு மாறுபாடுகளுடன் (அதாவது, c5soc மற்றும் c5soc_sharedonly), .aocxஐ ஏற்ற SDK இன் நிரல் பயன்பாட்டைப் பயன்படுத்த வேண்டும். file முதல் முறையாக புதிய போர்டு மாறுபாட்டிற்கு. புதிய போர்டு மாறுபாட்டைப் பயன்படுத்தி ஹோஸ்ட் பயன்பாட்டை இயக்கினால், FPGA மற்றொரு போர்டு மாறுபாட்டின் படத்தைக் கொண்டிருந்தால், ஒரு அபாயகரமான பிழை ஏற்படலாம்.
  5. .qxp file குவார்டஸ் பிரைம் மென்பொருள் இந்த பகிர்வின் நேரத் தேவைகளை தொடர்ந்து பூர்த்தி செய்வதால், இடைமுகப் பகிர்வு பணிகளை உள்ளடக்கவில்லை.
  6. நீங்கள் பலகையை இயக்கும்போது, ​​அதன் மீடியா அணுகல் கட்டுப்பாடு (MAC) முகவரி சீரற்ற எண்ணாக அமைக்கப்படும். உங்கள் LAN கொள்கை இந்த நடத்தையை அனுமதிக்கவில்லை என்றால், பின்வரும் பணிகளைச் செய்வதன் மூலம் MAC முகவரியை அமைக்கவும்:
    அ. U-Boot பவர்-அப் போது, ​​U-Boot கட்டளை வரியில் நுழைய எந்த விசையையும் அழுத்தவும்.
    பி. கட்டளை வரியில் setenv ethaddr 00:07:ed:00:00:03 என டைப் செய்யவும்.
    நீங்கள் எந்த MAC முகவரியையும் தேர்வு செய்யலாம்.
    c. saveenv கட்டளையை தட்டச்சு செய்யவும்.
    ஈ. பலகையை மீண்டும் துவக்கவும்.

1.8 ஆவண திருத்த வரலாறு
அட்டவணை 1.
OpenCL சைக்ளோன் V SoCக்கான Intel FPGA SDK இன் ஆவண மறுபார்வை வரலாறு
டெவலப்மெண்ட் கிட் குறிப்பு பிளாட்ஃபார்ம் போர்டிங் கையேடு

தேதி பதிப்பு மாற்றங்கள்
மே-17 2017.05.08 • பராமரிப்பு வெளியீடு.
அக்டோபர் 2016 2016.10.31 •OpenCL க்கு Intel FPGA SDK க்கு OpenCL க்கு மறுபெயரிடப்பட்ட Altera SDK.
ஓபன்சிஎல் ஆஃப்லைன் கம்பைலருக்காக இன்டெல் எஃப்பிஜிஏ எஸ்டிகேக்கு மறுபெயரிடப்பட்ட ஆல்டெரா ஆஃப்லைன் கம்பைலர்.
மே-16 2016.05.02 •எஸ்டி ஃபிளாஷ் கார்டு படத்தை உருவாக்குதல் மற்றும் மாற்றியமைத்தல் பற்றிய மாற்றியமைக்கப்பட்ட வழிமுறைகள்.
•லினக்ஸ் கர்னல் மற்றும் ஓபன்சிஎல் லினக்ஸ் கர்னல் இயக்கியை மீண்டும் தொகுத்தல் பற்றிய மாற்றியமைக்கப்பட்ட வழிமுறைகள்.
நவம்பர் -15 2015.11.02 •பராமரிப்பு வெளியீடு மற்றும் குவார்டஸ் II இன் நிகழ்வுகளை குவார்டஸ் பிரைமாக மாற்றியது.
மே-15 15.0.0 •FPGA மறுகட்டமைப்பில், FPGA மையத்தை மீண்டும் நிரல் செய்வதற்கான வழிமுறைகள் அகற்றப்பட்டன
உடன் ஒரு . பூனையை அழைப்பதன் மூலம் rbf படம் fileபெயர்>. rbf
> /dev/ fpga0 கட்டளை ஏனெனில் இந்த முறை பரிந்துரைக்கப்படவில்லை.
டிசம்பர் -14 14.1.0 •ஆல்டெரா சைக்ளோன் V SoC டெவலப்மெண்ட் கிட் ரெஃபரன்ஸ் ப்ளாட்ஃபார்ம் போர்டிங் கைடு என ஆவணம் மறுபெயரிடப்பட்டது.
•reprogram பயன்பாடு aocl நிரலுக்கு புதுப்பிக்கப்பட்டதுfilename>.aocx பயன்பாட்டு கட்டளை.
•ஏஓசிஎல் நோயறிதல் மற்றும் ஏஓசிஎல் நோயறிதலுக்கு கண்டறியும் பயன்பாடு புதுப்பிக்கப்பட்டது பயன்பாட்டு கட்டளை.
• உத்திரவாதமான டைமிங் க்ளோஷர் ஃப்ளோவுக்கான டைமிங்-க்ளீன் பார்ட்டிஷனை உருவாக்க, c5soc போர்டு பகிர்வை போர்ட்டிங் மற்றும் மாற்றியமைத்தல் பற்றிய வழிமுறைகளைச் சேர்க்க, குறிப்பு தளத்தை உங்கள் SoC போர்டுக்கு போர்ட்டிங் செய்யும் செயல்முறை புதுப்பிக்கப்பட்டது.
•பின்வரும் பணிகளுக்கான நடைமுறைகளைக் கோடிட்டுக் காட்ட, போர்ட்டட் ரெஃபரன்ஸ் பிளாட்ஃபார்மைப் புதுப்பித்தல் என்ற தலைப்பைச் செருகியது:
1. போர்டு பகிர்வில் கடினமான செயலி அமைப்பு (HPS) பிளாக் தவிர
2.SD ஃபிளாஷ் கார்டு படத்தைப் புதுப்பித்தல்
•எஸ்டி ஃபிளாஷ் கார்டு படப் பிரிவை உருவாக்குதல். SoC Embedded Design Suite (EDS) உடன் கிடைக்கும் படத்திற்குப் பதிலாக கோல்டன் சிஸ்டம் ரெஃபரன்ஸ் டிசைன் (GSRD) படத்தின் பதிப்பு 14.0ஐ தொடக்கப் புள்ளியாகப் பயன்படுத்த பரிந்துரைக்கப்படுகிறது.
•லினக்ஸ் கர்னல் மற்றும் ஓபன்சிஎல் லினக்ஸ் கர்னல் டிரைவர் பிரிவை மீண்டும் தொகுத்தல் புதுப்பிக்கப்பட்டது:
1. CROSS COMPILE மாறியை அமைப்பதற்கான வழிமுறைகள் சேர்க்கப்பட்டது.
2.CMA வெற்றிகரமாக இயக்கப்பட்டுள்ளதா என்பதைச் சரிபார்க்க நீங்கள் இயக்கும் கட்டளையை மாற்றியது.
ஜூலை-14 14.0.0 • ஆரம்ப வெளியீடு.

ஆவணங்கள் / ஆதாரங்கள்

OpenCL க்கான intel FPGA SDK [pdf] பயனர் வழிகாட்டி
OpenCL க்கான FPGA SDK, FPGA SDK, OpenCL க்கான SDK, SDK

குறிப்புகள்

கருத்து தெரிவிக்கவும்

உங்கள் மின்னஞ்சல் முகவரி வெளியிடப்படாது. தேவையான புலங்கள் குறிக்கப்பட்டுள்ளன *