Intel-logo

इंटेल FPGA प्रोग्रामेबल एक्सेलेरेशन कार्ड D5005

Intel.-FPGA-प्रोग्रामेबल-एक्सेलेरेशन-कार्ड-D5005-उत्पादन

यस कागजातको बारेमा

यस कागजातले डाइरेक्ट मेमोरी एक्सेस (DMA) एक्सेलेरेटर फंक्शनल युनिट (AFU) कार्यान्वयन र हार्डवेयर वा सिमुलेशनमा चलाउनको लागि डिजाइन कसरी निर्माण गर्ने भनेर वर्णन गर्दछ।

अभिप्रेत दर्शक

अभिप्रेत दर्शकहरूमा हार्डवेयर वा सफ्टवेयर विकासकर्ताहरू समावेश हुन्छन् जसलाई Intel FPGA उपकरणमा जडान भएको मेमोरीमा स्थानीय रूपमा डेटा बफर गर्न एक्सेलरेटर फंक्शन (AF) आवश्यक हुन्छ।

अधिवेशनहरू

दस्तावेज सम्मेलनहरू

महाधिवेशन विवरण
# कमाण्डलाई रूटको रूपमा प्रविष्ट गर्नु पर्ने संकेत गर्ने आदेश अघि।
$ प्रयोगकर्ताको रूपमा कमाण्ड प्रविष्ट गर्नुपर्ने संकेत गर्दछ।
यो फन्ट Fileनाम, आदेश, र कुञ्जी शब्दहरू यस फन्टमा छापिएका छन्। लामो कमाण्ड लाइनहरू यस फन्टमा छापिएका छन्। यद्यपि लामो कमाण्ड लाइनहरू अर्को लाइनमा र्‍याप हुन सक्छ, फिर्ता आदेशको अंश होइन; इन्टर थिच्नु हुँदैन।
कोण कोष्ठकहरू बीच देखा पर्ने प्लेसहोल्डर पाठलाई उपयुक्त मानको साथ प्रतिस्थापन गर्नुपर्दछ। कोण कोष्ठक प्रविष्ट नगर्नुहोस्।

एक्रोनिम्स

एक्रोनिम्स

एक्रोनिम्स विस्तार विवरण
AF एक्सेलेरेटर प्रकार्य कम्पाइल गरिएको हार्डवेयर एक्सेलेरेटर छवि FPGA तर्कमा लागू गरियो जसले अनुप्रयोगलाई गति दिन्छ।
AFU एक्सेलेरेटर कार्यात्मक एकाइ हार्डवेयर एक्सेलेरेटर FPGA तर्कमा लागू गरियो जसले CPU बाट कार्यसम्पादन सुधार गर्नको लागि कम्प्युटेशनल अपरेशन अफलोड गर्दछ।
API एप्लिकेसन प्रोग्रामिङ इन्टरफेस सफ्टवेयर अनुप्रयोगहरू निर्माण गर्न सबरुटिन परिभाषाहरू, प्रोटोकलहरू र उपकरणहरूको सेट।
CCI-P कोर क्यास इन्टरफेस CCI-P मानक इन्टरफेस हो जुन AFUs होस्टसँग सञ्चार गर्न प्रयोग गरिन्छ।
DFH उपकरण सुविधा हेडर सुविधाहरू थप्ने एक्स्टेन्सिबल तरिका प्रदान गर्न सुविधा हेडरहरूको लिङ्क गरिएको सूची सिर्जना गर्दछ।
जारी…

इंटेल कर्पोरेशन। सबै अधिकार सुरक्षित। Intel, Intel लोगो, र अन्य Intel मार्कहरू Intel Corporation वा यसको सहायक कम्पनीहरूको ट्रेडमार्क हुन्। Intel ले आफ्नो FPGA र अर्धचालक उत्पादनहरूको प्रदर्शनलाई Intel को मानक वारेन्टी अनुसार हालको विशिष्टताहरूमा वारेन्टी दिन्छ, तर सूचना बिना कुनै पनि समयमा कुनै पनि उत्पादन र सेवाहरूमा परिवर्तन गर्ने अधिकार सुरक्षित गर्दछ। Intel ले यहाँ वर्णन गरिएको कुनै पनि जानकारी, उत्पादन, वा सेवाको आवेदन वा प्रयोगबाट उत्पन्न हुने कुनै जिम्मेवारी वा दायित्व ग्रहण गर्दैन बाहेक Intel द्वारा लिखित रूपमा स्पष्ट रूपमा सहमत भए। Intel ग्राहकहरूलाई कुनै पनि प्रकाशित जानकारीमा भर पर्नु अघि र उत्पादन वा सेवाहरूको लागि अर्डर राख्नु अघि उपकरण विशिष्टताहरूको नवीनतम संस्करण प्राप्त गर्न सल्लाह दिइन्छ। *अन्य नाम र ब्रान्डहरू अरूको सम्पत्तिको रूपमा दाबी गर्न सकिन्छ।

एक्रोनिम्स विस्तार विवरण
FIM FPGA इन्टरफेस प्रबन्धक FPGA हार्डवेयर FPGA इन्टरफेस एकाइ (FIU) र मेमोरी, नेटवर्किङ, आदिका लागि बाह्य इन्टरफेसहरू समावेश गर्दछ।

एक्सेलेटर फंक्शन (AF) ले FIM सँग रन टाइममा इन्टरफेस गर्छ।

FIU FPGA इन्टरफेस एकाइ FIU एउटा प्लेटफर्म इन्टरफेस तह हो जसले PCIe*, UPI र AFU-साइड इन्टरफेसहरू जस्तै CCI-P जस्ता प्लेटफर्म इन्टरफेसहरू बीच पुलको रूपमा काम गर्दछ।
MPF मेमोरी गुण कारखाना MPF आधारभूत बिल्डिङ ब्लक (BBB) ​​हो जसलाई AFU ले FIU सँग लेनदेनको लागि CCI-P ट्राफिक आकार दिने कार्यहरू प्रदान गर्न प्रयोग गर्न सक्छ।

एक्सेलेरेशन शब्दावली

FPGAs शब्दावलीको साथ Intel® Xeon® CPU को लागि एक्सेलेरेशन स्ट्याक

अवधि संक्षिप्त नाम विवरण
FPGAs को साथ Intel Xeon® CPU को लागि Intel® एक्सेलेरेशन स्ट्याक एक्सेलेरेशन स्ट्याक Intel FPGA र Intel Xeon प्रोसेसर बीच प्रदर्शन-अनुकूलित जडान प्रदान गर्ने सफ्टवेयर, फर्मवेयर, र उपकरणहरूको संग्रह।
इंटेल FPGA प्रोग्रामेबल एक्सेलेरेशन कार्ड इंटेल FPGA PAC PCIe FPGA एक्सेलेरेटर कार्ड।

FPGA इन्टरफेस प्रबन्धक (FIM) समावेश गर्दछ जसले PCIe बसमा Intel Xeon प्रोसेसरसँग जोड्दछ।

  • DMA एक्सेलेरेटर कार्यात्मक एकाइ प्रयोगकर्ता गाइड: Intel FPGA प्रोग्रामेबल एक्सेलेरेशन कार्ड D5005

DMA AFU विवरण

परिचय

प्रत्यक्ष मेमोरी एक्सेस (DMA) AFU पूर्वample ले होस्ट प्रोसेसर र FPGA बीच मेमोरी स्थानान्तरण कसरी व्यवस्थापन गर्ने भनेर देखाउँछ। होस्ट मेमोरी र FPGA स्थानीय मेमोरी बीचको डाटा सार्नको लागि तपाईंले DMA AFU लाई आफ्नो डिजाइनमा एकीकृत गर्न सक्नुहुन्छ। DMA AFU मा निम्न सबमोड्युलहरू समावेश छन्:

  • मेमोरी प्रोपर्टीज फ्याक्ट्री (MPF) बेसिक बिल्डिङ ब्लक (BBB)
  • कोर क्यास इन्टरफेस (CCI-P) Avalon® मेमोरी-म्याप गरिएको (Avalon-MM) एडाप्टरमा
  • DMA परीक्षण प्रणाली जसमा DMA BBB समावेश छ

यी सबमोड्युलहरूलाई तलको DMA AFU हार्डवेयर कम्पोनेन्ट शीर्षकमा थप विवरणमा वर्णन गरिएको छ।

सम्बन्धित जानकारी

  • पृष्ठ 6 मा DMA AFU हार्डवेयर कम्पोनेन्टहरू
  • Avalon इन्टरफेस निर्दिष्टीकरण

Avalon-MM प्रोटोकल बारे थप जानकारीको लागि, लेनदेनहरू पढ्न र लेख्नका लागि समय रेखाचित्रहरू सहित।

DMA AFU सफ्टवेयर प्याकेज

FPGAs प्याकेजको साथ Intel Xeon CPU को लागि Intel एक्सेलेरेशन स्ट्याक file (*.tar.gz), DMA AFU पूर्व समावेश गर्दछample। यो पूर्वample ले प्रयोगकर्ता स्पेस चालक प्रदान गर्दछ। होस्ट अनुप्रयोगले यो ड्राइभर प्रयोग गर्दछ कि DMA ले होस्ट र FPGA मेमोरी बीच डाटा सार्छ। हार्डवेयर बाइनरीहरू, स्रोतहरू, र प्रयोगकर्ता स्पेस ड्राइभर निम्न डाइरेक्टरीमा उपलब्ध छन्: $OPAE_PLATFORM_ROOT/hw/samples/dma_afu। DMA AFU प्रयोग गर्नु अघि, तपाईंले ओपन प्रोग्रामेबल एक्सेलेरेशन इन्जिन (OPAE) सफ्टवेयर प्याकेज स्थापना गर्नुपर्छ। Intel FPGA Programmable Acceleration Card D5005 स्थापना निर्देशनहरूको लागि Intel Acceleration Stack Quick Start Guide मा OPAE सफ्टवेयर प्याकेज स्थापना गर्ने सन्दर्भ गर्नुहोस्। यो द्रुत सुरुवात गाइडले ओपन प्रोग्रामेबल एक्सेलेरेशन इन्जिन (OPAE) र AFU कन्फिगर गर्ने बारे आधारभूत जानकारी पनि समावेश गर्दछ। ओपन प्रोग्रामेबल एक्सेलेरेशन इन्जिन (OPAE) सफ्टवेयर प्याकेज स्थापना गरेपछि, जस्तैample होस्ट अनुप्रयोग र DMA AFU प्रयोगकर्ता स्पेस ड्राइभर निम्न डाइरेक्टरीमा उपलब्ध छन्: $OPAE_PLATFORM_ROOT/hw/samples/dma_afu/sw. चलाउन एसample होस्ट एप्लिकेसन, fpga_dma_test तपाईंको Intel FPGA PAC D5005 हार्डवेयरमा, DMA AFU Ex चलिरहेको खण्डमा चरणहरू हेर्नुहोस्।ample। इंटेल कर्पोरेशन। सबै अधिकार सुरक्षित। Intel, Intel लोगो, र अन्य Intel मार्कहरू Intel Corporation वा यसको सहायक कम्पनीहरूको ट्रेडमार्क हुन्। Intel ले आफ्नो FPGA र अर्धचालक उत्पादनहरूको प्रदर्शनलाई Intel को मानक वारेन्टी अनुसार हालको विशिष्टताहरूमा वारेन्टी दिन्छ, तर सूचना बिना कुनै पनि समयमा कुनै पनि उत्पादन र सेवाहरूमा परिवर्तन गर्ने अधिकार सुरक्षित गर्दछ। Intel ले यहाँ वर्णन गरिएको कुनै पनि जानकारी, उत्पादन, वा सेवाको आवेदन वा प्रयोगबाट उत्पन्न हुने कुनै जिम्मेवारी वा दायित्व ग्रहण गर्दैन बाहेक Intel द्वारा लिखित रूपमा स्पष्ट रूपमा सहमत भए। Intel ग्राहकहरूलाई कुनै पनि प्रकाशित जानकारीमा भर पर्नु अघि र उत्पादन वा सेवाहरूको लागि अर्डर राख्नु अघि उपकरण विशिष्टताहरूको नवीनतम संस्करण प्राप्त गर्न सल्लाह दिइन्छ। *अन्य नाम र ब्रान्डहरू अरूको सम्पत्तिको रूपमा दाबी गर्न सकिन्छ।

सम्बन्धित जानकारी

  • इंटेल एफपीजीए प्रोग्रामेबल एक्सेलेरेसन कार्ड D5005 को लागि इंटेल एक्सेलेरेशन स्ट्याक क्विक स्टार्ट गाइड
  • OPAE सफ्टवेयर प्याकेज स्थापना गर्दै

DMA AFU हार्डवेयर कम्पोनेन्टहरू

DMA AFU ले FPGA इन्टरफेस इकाई (FIU) र FPGA मेमोरीसँग इन्टरफेस गर्दछ। FPGA मेमोरीको विस्तृत विवरणहरूको लागि Intel FPGA प्रोग्रामेबल एक्सेलेरेशन कार्ड D5005 को लागि FPGA इन्टरफेस प्रबन्धक डेटा पानालाई सन्दर्भ गर्नुहोस्। हाल उपलब्ध हार्डवेयरले यो मेमोरी कन्फिगरेसनलाई निर्देशन गर्छ। भविष्यको हार्डवेयरले विभिन्न मेमोरी कन्फिगरेसनहरूलाई समर्थन गर्न सक्छ। तपाईंले निम्न स्रोत र गन्तव्य स्थानहरू बीचको डाटा प्रतिलिपि गर्न DMA AFU प्रयोग गर्न सक्नुहुन्छ:

  • यन्त्र FPGA मेमोरीमा होस्ट
  • होस्टमा यन्त्र FPGA मेमोरी

प्लेटफर्म डिजाइनर प्रणाली, $OPAE_PLATFORM_ROOT/hw/samples/ dma_afu/hw/rtl/TEST_dma/ /dma_test_system.qsys ले धेरै जसो DMA लागू गर्दछ

  • AFU। प्लेटफर्म डिजाइनर प्रणालीमा लागू गरिएको DMA AFU को अंश निम्नमा फेला पार्न सकिन्छ

स्थान: $OPAE_PLATFORM_ROOT/hw/samples/dma_afu/hw/rtl/TEST_dma/ तपाईंले निम्न स्थानमा DMA BBB फेला पार्न सक्नुहुन्छ:

  • $OPAE_PLATFORM_ROOT/hw/samples/dma_afu/hw/rtl/dma_bbb

DMA एक्सेलेरेटर कार्यात्मक एकाइ प्रयोगकर्ता गाइड: Intel FPGA प्रोग्रामेबल एक्सेलेरेशन कार्ड D5005

DMA AFU हार्डवेयर ब्लक रेखाचित्र

Intel.-FPGA-Programmable-Acceleration-Card-D5005-fig-1

DMA AFU ले FPGA इन्टरफेस इकाई (FIU) सँग इन्टरफेस गर्न निम्न आन्तरिक मोड्युलहरू समावेश गर्दछ:

  • मेमोरी-म्याप गरिएको IO (MMIO) डिकोडर तर्क: MMIO पढ्न र लेख्ने लेनदेनहरू पत्ता लगाउँदछ र तिनीहरूलाई CCI-P RX च्यानल 0 बाट अलग गर्दछ जुन तिनीहरू आइपुग्छन्। यसले सुनिश्चित गर्दछ कि MMIO ट्राफिक MPF BBB मा कहिल्यै पुग्दैन र एक स्वतन्त्र MMIO आदेश च्यानल द्वारा सेवा गरिन्छ।
  • मेमोरी प्रोपर्टीज फ्याक्ट्री (MPF): यो मोड्युलले DMA रिटर्नबाट पठाइएका प्रतिक्रियाहरू जारी गरिएको क्रममा सुनिश्चित गर्दछ। Avalon-MM प्रोटोकललाई सही क्रममा फर्कनका लागि पढ्ने प्रतिक्रियाहरू आवश्यक छ।
  • CCI-P देखि Avalon-MM एडाप्टर: यो मोड्युल CCI-P र Avalon-MM लेनदेनहरू बीचको अनुवाद गर्दछ, निम्नानुसार:
  • CCI-P देखि Avalon-MMIO एडाप्टर: यो पथले CCI-P MMIO लेनदेनहरूलाई Avalon-MM लेनदेनहरूमा अनुवाद गर्छ।
  • Avalon to CCI-P होस्ट एडाप्टर: यी पथहरूले DMA को लागि होस्ट मेमोरी पहुँच गर्नको लागि छुट्टै पढ्न-मात्र र लेख्न-मात्र पथहरू सिर्जना गर्दछ।
  • DMA परीक्षण प्रणाली: यो मोड्युलले DMA BBB वरिपरि AFU मा DMA मास्टरहरूलाई बाँकी तर्कहरूमा पर्दाफास गर्नको लागि र्‍यापरको रूपमा काम गर्दछ। यसले DMA BBB र CCI-P को Avalon Adapter बीचको इन्टरफेस प्रदान गर्दछ। यसले DMA BBB र स्थानीय FPGA SDRAM बैंकहरू बीचको इन्टरफेस पनि प्रदान गर्दछ।

सम्बन्धित जानकारी
Intel FPGA प्रोग्रामेबल एक्सेलेरेशन कार्ड D5005 को लागि FPGA इन्टरफेस प्रबन्धक डाटा पाना

DMA परीक्षण प्रणाली

DMA परीक्षण प्रणालीले DMA BBB लाई CCI-P अनुकूलन र स्थानीय FPGA मेमोरी सहितको बाँकी FPGA डिजाइनमा जडान गर्दछ।

DMA परीक्षण प्रणाली ब्लक रेखाचित्र
यो ब्लक रेखाचित्रले DMA परीक्षण प्रणालीको भित्री भागहरू देखाउँछ। DMA परीक्षण प्रणालीलाई पृष्ठ ७ मा चित्र १ मा मोनोलिथिक ब्लकको रूपमा देखाइएको छ।Intel.-FPGA-Programmable-Acceleration-Card-D5005-fig-2

DMA परीक्षण प्रणालीले निम्न आन्तरिक मोड्युलहरू समावेश गर्दछ:

  • फर रिच ब्रिज/पाइपलाइन ब्रिज: टोपोलोजी नियन्त्रण गर्न र Fmax को डिजाइन सुधार गर्न समायोज्य विलम्बता सहितको पाइपलाइन पुल।
  • DMA AFU उपकरण सुविधा हेडर (DFH): यो DMA AFU को लागि DFH हो। यो DFH अफसेट 0x100 (DMA BBB DFH) मा अवस्थित अर्को DFH लाई संकेत गर्दछ।
  • Null DFH: यो कम्पोनेन्टले DFH लिङ्क गरिएको सूचीलाई समाप्त गर्छ। यदि तपाइँ डिजाइनमा थप DMA BBBs थप्नुहुन्छ भने, DFH लिङ्क गरिएको सूचीको अन्त्यमा शून्य DFH आधार ठेगाना अवस्थित छ भनेर सुनिश्चित गर्नुहोस्।
  • MA बेसिक बिल्डिङ ब्लक (BBB): यो ब्लकले होस्ट र स्थानीय FPGA मेमोरी बीचको डाटा सार्छ। यसले वर्णनकर्ता चेनहरू पहुँच गर्न होस्ट मेमोरी पनि पहुँच गर्दछ।

DMA BBB

DMA BBB उपप्रणालीले Avalon-MM लेनदेनहरू प्रयोग गरेर स्रोतबाट गन्तव्य ठेगानाहरूमा डेटा स्थानान्तरण गर्दछ। DMA ड्राइभरले DMA BBB लाई प्रणाली भित्र विभिन्न घटकहरूको नियन्त्रण र स्थिति दर्ता पहुँच गरेर नियन्त्रण गर्दछ। DMA ड्राइभरले स्थानान्तरण वर्णनकर्ताहरू सञ्चार गर्न साझा मेमोरी प्रयोग गरेर DMA BBB लाई पनि नियन्त्रण गर्दछ। DMA BBB ले FPGA मेमोरीमा अफसेट 0x0 मा डेटा पहुँच गर्छ। DMA BBB ले अफसेट 0x1_0000_0000_0000 मा होस्ट मेमोरीमा डेटा र वर्णनकर्ताहरू पहुँच गर्दछ।

DMA BBB प्लेटफर्म डिजाइनर ब्लक रेखाचित्र
यो ब्लक रेखाचित्रले केही आन्तरिक पाइपलाइन ब्रिज आईपी कोरहरू समावेश गर्दैन।Intel.-FPGA-Programmable-Acceleration-Card-D5005-fig-6

DMA एक्सेलेरेटर कार्यात्मक एकाइ प्रयोगकर्ता गाइड: Intel FPGA प्रोग्रामेबल एक्सेलेरेशन कार्ड D5005

DMA AFU विवरण

DMA BBB प्लेटफर्म डिजाइनरका कम्पोनेन्टहरूले निम्न कार्यहरू लागू गर्दछ:

  • टाढाको पुल/पाइपलाइन पुल: टोपोलोजी नियन्त्रण गर्न र Fmax डिजाइन सुधार गर्न समायोज्य विलम्बता सहितको पाइपलाइन पुल।
  • MA BBB DFH: यो DMA BBB को लागि एक उपकरण सुविधा हेडर हो। यो DFH अफसेट 0x100 (Null DFH) मा अवस्थित अर्को DFH लाई संकेत गर्दछ।
  • वर्णनकर्ता फ्रन्टएन्ड: वर्णनकर्ताहरू ल्याउन र डिस्प्याचरमा स्थानान्तरण गर्न जिम्मेवार। जब एक DMA स्थानान्तरण पूरा हुन्छ फ्रन्टएन्डले डिस्प्याचरबाट स्थिति गठन प्राप्त गर्दछ र होस्ट मेमोरीमा वर्णनकर्तालाई अधिलेखन गर्दछ।
  • डिस्प्याचर: यो ब्लकले DMA ट्रान्सफर अनुरोधहरू पढ्न र लेख्ने मास्टरलाई अनुसूचित गर्दछ।
  • पढ्नुहोस् मास्टर: यो ब्लक होस्ट वा स्थानीय FPGA मेमोरीबाट डाटा पढ्न र स्ट्रिमिङ डाटाको रूपमा राइट मास्टरमा पठाउन जिम्मेवार छ।
  • मास्टर लेख्नुहोस्: यो ब्लक रिड मास्टरबाट स्ट्रिमिङ डेटा प्राप्त गर्न र होस्ट वा स्थानीय FPGA मेमोरीमा सामग्रीहरू लेख्न जिम्मेवार छ।

नक्सा र ठेगाना स्पेसहरू दर्ता गर्नुहोस्

DMA AFU ले दुई मेमोरी समर्थन गर्दछ views: DMA view र होस्ट view। DMA view 49-बिट ठेगाना स्पेस समर्थन गर्दछ। DMA को तल्लो आधा view स्थानीय FPGA मेमोरीमा नक्साहरू। DMA को माथिल्लो आधा view मेमोरी होस्ट गर्न नक्सा। होस्ट view DFH तालिकाहरू जस्ता MMIO पहुँचहरू मार्फत पहुँचयोग्य सबै दर्ताहरू, र DMA AFU भित्र प्रयोग गरिएका विभिन्न IP कोरहरूको नियन्त्रण/स्थिति दर्ताहरू समावेश गर्दछ। MMIO DMA BBB र AFU मा 32- र 64-बिट पहुँच समर्थन गर्दछ। DMA AFU ले 512-bit MMIO पहुँचहरूलाई समर्थन गर्दैन। DMA BBB भित्र डिस्प्याचर दर्ताहरूमा पहुँच 32 बिट हुनुपर्छ (डिस्क्रिप्टर फ्रन्टएन्डले 64-बिट दर्ताहरू लागू गर्दछ)।

DMA AFU दर्ता नक्सा

DMA AFU दर्ता नक्साले इकाई भित्रका सबै स्थानहरूको पूर्ण ठेगानाहरू प्रदान गर्दछ। यी दर्ताहरू होस्टमा छन् view किनभने यो केवल होस्ट हो जसले तिनीहरूलाई पहुँच गर्न सक्छ।

DMA AFU मेमोरी नक्सा

बाइट ठेगाना अफसेटहरू नाम स्प्यान बाइटमा विवरण
८x४० DMA AFU DFH ८x४० DMA AFU को लागि उपकरण सुविधा हेडर। ID_L लाई 0x9081f88b8f655caa र ID_H लाई 0x331db30c988541ea मा सेट गरिएको छ। DMA AFU DFH लाई अर्को DFH (DMA BBB DFH) फेला पार्न अफसेट 0x100 मा पोइन्ट गर्न प्यारामिटराइज गरिएको छ। तपाईंले DMA AFU DFH को आधार ठेगाना परिमार्जन गर्नु हुँदैन किनभने यो CCIP स्पेसिफिकेशनले परिभाषित गरे अनुसार ०x0 ठेगानामा अवस्थित हुनुपर्छ।
८x४० DMA BBB ८x४० DMA BBB नियन्त्रण र स्थिति दर्ता इन्टरफेस निर्दिष्ट गर्दछ। थप जानकारीको लागि तपाईंले DMA BBB दर्ता नक्सा हेर्न सक्नुहुन्छ। अफसेट ० मा DMA BBB भित्र DMA BBB ले यसको आफ्नै DFH समावेश गर्दछ। यो DFH अफसेट 0x0 (NULL DFH) मा अर्को DFH फेला पार्न सेट गरिएको छ। यदि तपाईंले थप DMA BBB हरू थप्नुभयो भने, तिनीहरूलाई 100x0 अलग गर्नुहोस् र NULL DFH ले अन्तिम DMA 100x0 लाई फलो गरेको सुनिश्चित गर्नुहोस्।
८x४० NULL DFH ८x४० DFH लिङ्क गरिएको सूची समाप्त गर्दछ। ID_L लाई 0x90fe6aab12a0132f मा सेट गरिएको छ र ID_H लाई 0xda1182b1b3444e23 मा सेट गरिएको छ। NULL DFH लाई हार्डवेयरमा अन्तिम DFH हुन प्यारामिटराइज गरिएको छ। यस कारणले गर्दा NULL DFH ठेगाना 0x200 मा अवस्थित छ। यदि तपाइँ प्रणालीमा अतिरिक्त DMA BBB हरू थप्नुहुन्छ भने, तपाइँले NULL DFH आधार ठेगाना बढाउनुपर्छ ताकि यो उच्चतम ठेगानामा रहन्छ। DMA चालक र परीक्षण अनुप्रयोगले यो हार्डवेयर प्रयोग गर्दैन।

इंटेल कर्पोरेशन। सबै अधिकार सुरक्षित। Intel, Intel लोगो, र अन्य Intel मार्कहरू Intel Corporation वा यसको सहायक कम्पनीहरूको ट्रेडमार्क हुन्। Intel ले आफ्नो FPGA र अर्धचालक उत्पादनहरूको प्रदर्शनलाई Intel को मानक वारेन्टी अनुसार हालको विशिष्टताहरूमा वारेन्टी दिन्छ, तर सूचना बिना कुनै पनि समयमा कुनै पनि उत्पादन र सेवाहरूमा परिवर्तन गर्ने अधिकार सुरक्षित गर्दछ। Intel ले यहाँ वर्णन गरिएको कुनै पनि जानकारी, उत्पादन, वा सेवाको आवेदन वा प्रयोगबाट उत्पन्न हुने कुनै जिम्मेवारी वा दायित्व ग्रहण गर्दैन बाहेक Intel द्वारा लिखित रूपमा स्पष्ट रूपमा सहमत भए। Intel ग्राहकहरूलाई कुनै पनि प्रकाशित जानकारीमा भर पर्नु अघि र उत्पादन वा सेवाहरूको लागि अर्डर राख्नु अघि उपकरण विशिष्टताहरूको नवीनतम संस्करण प्राप्त गर्न सल्लाह दिइन्छ। *अन्य नाम र ब्रान्डहरू अरूको सम्पत्तिको रूपमा दाबी गर्न सकिन्छ।

नक्सा र ठेगाना स्पेसहरू दर्ता गर्नुहोस्

DMA BBB मेमोरी नक्सा
निम्न बाइट ठेगानाहरू DMA AFU प्रणाली (0x100) मा DMA BBB आधार ठेगानाबाट सापेक्ष अफसेटहरू हुन्।

बाइट ठेगाना अफसेटहरू नाम स्प्यान बाइटमा विवरण
८x४० DMA BBB DFH ८x४० DMA AFU को लागि उपकरण सुविधा हेडर। ID_L लाई 0xa9149a35bace01ea र ID_H लाई 0xef82def7f6ec40fc मा सेट गरिएको छ। DMA BBB DFH लाई अर्को DFH अफसेटको लागि 0x100 मा पोइन्ट गर्न प्यारामिटराइज गरिएको छ। यो अर्को अफसेट अर्को DMA BBB, अर्को DFH (यस डिजाइनमा समावेश गरिएको छैन), वा NULL DFH हुन सक्छ।
८x४० डिस्प्याचर ८x४० प्रेषकको लागि नियन्त्रण पोर्ट। DMA ड्राइभरले DMA नियन्त्रण गर्न वा यसको स्थिति सोध्न यो स्थान प्रयोग गर्दछ।
८x४० वर्णनकर्ता फ्रन्टएन्ड ८x४० वर्णनकर्ता फ्रन्टएन्ड एउटा अनुकूलन घटक हो जसले होस्ट मेमोरीबाट वर्णनकर्ताहरू पढ्छ र DMA स्थानान्तरण पूरा भएपछि वर्णनकर्तालाई अधिलेखन गर्दछ। ड्राइभरले फ्रन्टएन्डलाई निर्देशन दिन्छ जहाँ पहिलो वर्णनकर्ता होस्ट मेमोरीमा रहन्छ र त्यसपछि फ्रन्टएन्ड हार्डवेयरले ड्राइभरसँग मुख्य रूपमा संवाद गर्दछ यद्यपि होस्ट मेमोरीमा भण्डारण गरिएका वर्णनकर्ताहरू।

DMA AFU ठेगाना स्पेस

होस्टले पृष्ठ 4 मा तालिका 12 र पृष्ठ 5 मा तालिका 13 मा सूचीबद्ध दर्ताहरू पहुँच गर्न सक्छ। DMA BBB उपप्रणालीको पूर्ण 49-बिट ठेगाना स्पेसमा पहुँच छ। यस ठेगाना स्पेसको तल्लो आधामा स्थानीय FPGA सम्झनाहरू समावेश छन्। यस ठेगाना स्पेसको माथिल्लो आधामा 48-बिट होस्ट ठेगाना मेमोरी समावेश छ। निम्न चित्रले होस्ट र DMA देखाउँछ viewस्मृति को s।

DMA AFU र होस्ट Viewमेमोरी को s

Intel.-FPGA-Programmable-Acceleration-Card-D5005-fig-3

उपकरण विशेषता हेडर लिङ्क गरिएको सूची

DMA AFU डिजाइन पूर्वample मा तीनवटा उपकरण फिचर हेडरहरू (DFH) समावेश छन् जसले लिङ्क गरिएको सूची बनाउँछ। यो लिङ्क गरिएको सूचीले s लाई अनुमति दिन्छampDMA AFU पहिचान गर्न र DMA BBB पहिचान गर्न ड्राइभरको लागि आवेदन। DFH सूचीको अन्त्यमा NULL DFH समावेश छ। लिङ्क गरिएको सूचीको अन्त्यमा नल DFH को समावेशले तपाईंलाई आफ्नो डिजाइनमा थप DMA BBBs थप्न अनुमति दिन्छ। तपाईले केवल NULL DFH लाई अन्य BBBs पछि ठेगानामा सार्न आवश्यक छ। प्रत्येक DMA BBB ले अर्को DFH BBB को आधार ठेगानाबाट 0x100 बाइटमा अवस्थित हुने अपेक्षा गर्दछ। निम्न चित्रले DMA AFU डिजाइन पूर्वको लागि लिङ्क गरिएको सूची चित्रण गर्दछample।

नक्सा र ठेगाना स्पेसहरू दर्ता गर्नुहोस्

DMA AFU उपकरण सुविधा हेडर (DFH) चेनिङ

Intel.-FPGA-Programmable-Acceleration-Card-D5005-fig-4

सफ्टवेयर प्रोग्रामिङ मोडेल

DMA AFU ले एउटा सफ्टवेयर ड्राइभर समावेश गर्दछ जुन तपाईंले आफ्नै होस्ट अनुप्रयोगमा प्रयोग गर्न सक्नुहुन्छ। fpga_dma.cpp र fpga_dma.h fileनिम्न स्थानमा अवस्थित s सफ्टवेयर चालक लागू गर्नुहोस्: $OPAE_PLATFORM_ROOT/hw/samples/dma_afu/sw यो ड्राइभरले निम्न प्रकार्यहरूलाई समर्थन गर्दछ:

API विवरण
fpgaCountDMAC च्यानलहरू DMA BBBs को लागि यन्त्र सुविधा श्रृंखला स्क्यान गर्नुहोस् र सबै उपलब्ध च्यानलहरू गणना गर्नुहोस्।
fpgaDMA खोल्नुहोस् DMA च्यानलमा ह्यान्डल खोल्छ।
fpgaDMAC बन्द DMA च्यानलमा ह्यान्डल बन्द गर्दछ।
fpgaDMATtransferInit DMA स्थानान्तरण प्रतिनिधित्व गर्ने वस्तु प्रारम्भ गर्दछ।
fpgaDMATtransferReset DMA स्थानान्तरण विशेषता वस्तुलाई पूर्वनिर्धारित मानहरूमा रिसेट गर्छ।
fpgaDMATtransferDestroy DMA स्थानान्तरण विशेषता वस्तु नष्ट गर्दछ।
fpgaDMATtransferSetSrc स्थानान्तरणको स्रोत ठेगाना सेट गर्दछ। यो ठेगाना 64 बाइट पङ्क्तिबद्ध हुनुपर्छ।
fpgaDMATtransferSetDst स्थानान्तरणको गन्तव्य ठेगाना सेट गर्दछ। यो ठेगाना 64 बाइट पङ्क्तिबद्ध हुनुपर्छ।
fpgaDMATtransferSetLen स्थानान्तरण लम्बाइ बाइटहरूमा सेट गर्दछ। गैर-प्याकेट स्थानान्तरणहरूको लागि, तपाईंले स्थानान्तरण लम्बाइलाई 64 बाइट्सको बहुमा सेट गर्नुपर्छ। प्याकेट स्थानान्तरणको लागि, यो आवश्यकता छैन।
fpgaDMATransferSetTransferType स्थानान्तरण प्रकार सेट गर्दछ। कानूनी मानहरू हुन्:

• HOST_MM_TO_FPGA_MM = TX (एएफयूलाई होस्ट)

• FPGA_MM_TO_HOST_MM = RX (एएफयू होस्ट गर्न)

fpgaDMATransferSetTransferCallback एसिन्क्रोनस स्थानान्तरण समाप्तिमा सूचनाको लागि कलब्याक दर्ता गर्दछ। यदि तपाईंले कलब्याक निर्दिष्ट गर्नुभयो भने, fpgaDMATransfer तुरुन्तै फर्काउँछ (एसिन्क्रोनस स्थानान्तरण)।

यदि तपाईंले कलब्याक निर्दिष्ट गर्नुभएन भने, स्थानान्तरण पूरा भएपछि fpgaDMATransfer फर्किन्छ (सिंक्रोनस/ब्लकिङ ट्रान्सफर)।

fpgaDMATtransferSetLast DMA ले प्रिफेच गरिएका स्थानान्तरणहरू प्रशोधन गर्न सुरु गर्न सकून् भनेर अन्तिम स्थानान्तरणलाई सङ्केत गर्छ। DMA ले स्थानान्तरणमा काम सुरु गर्नु अघि पाइपलाइनमा 64 स्थानान्तरणहरू पूर्वनिर्धारित मान हो।
fpgaDMAT स्थानान्तरण DMA स्थानान्तरण कार्य गर्दछ।

API, इनपुट, र आउटपुट तर्कहरूको बारेमा थप जानकारीको लागि, हेडरलाई सन्दर्भ गर्नुहोस् file $OPAE_PLATFORM_ROOT/hw/s स्थितamples/dma_afu/sw/fpga_dma.hIntel Corporation। सबै अधिकार सुरक्षित। Intel, Intel लोगो, र अन्य Intel मार्कहरू Intel Corporation वा यसको सहायक कम्पनीहरूको ट्रेडमार्क हुन्। Intel ले आफ्नो FPGA र अर्धचालक उत्पादनहरूको प्रदर्शनलाई Intel को मानक वारेन्टी अनुसार हालको विशिष्टताहरूमा वारेन्टी दिन्छ, तर सूचना बिना कुनै पनि समयमा कुनै पनि उत्पादन र सेवाहरूमा परिवर्तन गर्ने अधिकार सुरक्षित गर्दछ। Intel ले यहाँ वर्णन गरिएको कुनै पनि जानकारी, उत्पादन, वा सेवाको आवेदन वा प्रयोगबाट उत्पन्न हुने कुनै जिम्मेवारी वा दायित्व ग्रहण गर्दैन बाहेक Intel द्वारा लिखित रूपमा स्पष्ट रूपमा सहमत भए। Intel ग्राहकहरूलाई कुनै पनि प्रकाशित जानकारीमा भर पर्नु अघि र उत्पादन वा सेवाहरूको लागि अर्डर गर्नु अघि उपकरण विशिष्टताहरूको नवीनतम संस्करण प्राप्त गर्न सल्लाह दिइन्छ। अन्य नाम र ब्रान्डहरू अरूको सम्पत्तिको रूपमा दाबी गर्न सकिन्छ।

सफ्टवेयर प्रोग्रामिङ मोडेल

सफ्टवेयर चालक प्रयोग मोडेल बारे थप जान्नको लागि, README हेर्नुहोस् file $OPAE_PLATFORM_ROOT/hw/s मा अवस्थितamples/dma_afu/README.md

चलिरहेको DMA AFU Example

तपाईंले सुरु गर्नु अघि:

  • तपाईं पूर्व संग परिचित हुनुपर्छampIntel FPGA Programmable Acceleration Card D5005 को लागि Intel Acceleration Stack Quick Start Guide मा।
  • तपाईंले वातावरण चर परिभाषित गर्नुपर्छ। वातावरण चर तपाईंले प्रयोग गरिरहनुभएको इंटेल एक्सेलेरेशन स्ट्याक संस्करणमा निर्भर छ:
    • हालको संस्करणको लागि, वातावरण चरलाई $OPAE_PLATFORM_ROOT मा सेट गर्नुहोस्
  • तपाईंले Intel Threading Building Blocks (TBB) लाईब्रेरी स्थापना गर्नुपर्छ किनभने DMA ड्राइभर यसमा निर्भर हुन्छ।
  • तपाईंले s चलाउन दुई 1 GB विशाल पृष्ठहरू पनि सेट अप गर्नुपर्छampआवेदन। $ sudo sh -c "echo 2 > /sys/kernel/mm/hugepages/hugepages-1048576kB/ nr_hugepages"

DMA एक्सेलेरेटर फंक्शन (AF) बिटस्ट्रीम डाउनलोड गर्न, एप र ड्राइभर निर्माण गर्न र डिजाइन पूर्व चलाउन निम्न चरणहरू पूरा गर्नुहोस्।ampLe:

  1. DMA अनुप्रयोग र ड्राइभर डाइरेक्टरीमा परिवर्तन गर्नुहोस्: cd $OPAE_PLATFORM_ROOT/hw/samples/dma_afu/sw
  2. ड्राइभर र अनुप्रयोग बनाउनुहोस्: बनाउनुहोस्
  3. DMA AFU बिटस्ट्रीम डाउनलोड गर्नुहोस्: sudo fpgasupdate ../bin/dma_afu_unsigned.gbs
  4. होस्ट मेमोरीबाट FPGA यन्त्र मेमोरीमा 100 MB भागहरूमा 1 MB लेख्नको लागि होस्ट अनुप्रयोगलाई कार्यान्वयन गर्नुहोस् र यसलाई फिर्ता पढ्नुहोस्: ./ fpga_dma_test -s 104857600 -p 1048576 -r mtom

सम्बन्धित जानकारी
Intel Acceleration Stack Quick Start Guide Intel FPGA Programmable Acceleration Card D5005 Intel Corporation को लागी। सबै अधिकार सुरक्षित। Intel, Intel लोगो, र अन्य Intel मार्कहरू Intel Corporation वा यसको सहायक कम्पनीहरूको ट्रेडमार्क हुन्। Intel ले आफ्नो FPGA र अर्धचालक उत्पादनहरूको प्रदर्शनलाई Intel को मानक वारेन्टी अनुसार हालको विशिष्टताहरूमा वारेन्टी दिन्छ, तर सूचना बिना कुनै पनि समयमा कुनै पनि उत्पादन र सेवाहरूमा परिवर्तन गर्ने अधिकार सुरक्षित गर्दछ। Intel ले यहाँ वर्णन गरिएको कुनै पनि जानकारी, उत्पादन, वा सेवाको आवेदन वा प्रयोगबाट उत्पन्न हुने कुनै जिम्मेवारी वा दायित्व ग्रहण गर्दैन बाहेक Intel द्वारा लिखित रूपमा स्पष्ट रूपमा सहमत भए। Intel ग्राहकहरूलाई कुनै पनि प्रकाशित जानकारीमा भर पर्नु अघि र उत्पादन वा सेवाहरूको लागि अर्डर गर्नु अघि उपकरण विशिष्टताहरूको नवीनतम संस्करण प्राप्त गर्न सल्लाह दिइन्छ। *अन्य नाम र ब्रान्डहरू अरूको सम्पत्तिको रूपमा दाबी गर्न सकिन्छ।

DMA AFU को संकलन गर्दै Example

AF कम्पाइल गर्नको लागि संश्लेषण निर्माण वातावरण उत्पन्न गर्न, निम्नको रूपमा afu_synth_setup आदेश प्रयोग गर्नुहोस्:

  1. DMA AFU s मा परिवर्तन गर्नुहोस्ample निर्देशिका: $OPAE_PLATFORM_ROOT/hw/samples/dma_afu
  2. डिजाइन निर्माण निर्देशिका उत्पन्न गर्नुहोस्: afu_synth_setup –source hw/rtl/filelist.txt build_synth
  3. afu_synth_setup द्वारा उत्पन्न सिन्थेसिस बिल्ड डाइरेक्टरीबाट, लक्ष्य हार्डवेयर प्लेटफर्मको लागि AF उत्पन्न गर्न टर्मिनल सञ्झ्यालबाट निम्न आदेशहरू प्रविष्ट गर्नुहोस्: cd build_synth run.sh run.sh AF जेनेरेसन स्क्रिप्टले एएफ छवि समान आधारसँग सिर्जना गर्दछ। fileAFU को प्लेटफर्म कन्फिगरेसनको रूपमा नाम file (.json) स्थानमा .gbs प्रत्यय सहित:$OPAE_PLATFORM_ROOT/hw/samples/build_synth/dma_afu_s10.gbs Intel Corporation। सबै अधिकार सुरक्षित। Intel, Intel लोगो, र अन्य Intel मार्कहरू Intel Corporation वा यसको सहायक कम्पनीहरूको ट्रेडमार्क हुन्। Intel ले आफ्नो FPGA र अर्धचालक उत्पादनहरूको प्रदर्शनलाई Intel को मानक वारेन्टी अनुसार हालको विशिष्टताहरूमा वारेन्टी दिन्छ, तर सूचना बिना कुनै पनि समयमा कुनै पनि उत्पादन र सेवाहरूमा परिवर्तन गर्ने अधिकार सुरक्षित गर्दछ। Intel ले यहाँ वर्णन गरिएको कुनै पनि जानकारी, उत्पादन, वा सेवाको आवेदन वा प्रयोगबाट उत्पन्न हुने कुनै जिम्मेवारी वा दायित्व ग्रहण गर्दैन बाहेक Intel द्वारा लिखित रूपमा स्पष्ट रूपमा सहमत भए। Intel ग्राहकहरूलाई कुनै पनि प्रकाशित जानकारीमा भर पर्नु अघि र उत्पादन वा सेवाहरूको लागि अर्डर गर्नु अघि उपकरण विशिष्टताहरूको नवीनतम संस्करण प्राप्त गर्न सल्लाह दिइन्छ। *अन्य नाम र ब्रान्डहरू अरूको सम्पत्तिको रूपमा दाबी गर्न सकिन्छ।

AFU पूर्व अनुकरण गर्दैample

Intel सिफारिस गर्दछ कि तपाइँ तपाइँको Intel FPGA PAC को लागी Intel Accelerator Functional Unit (AFU) सिमुलेशन वातावरण (ASE) Quick Start Guide लाई सन्दर्भ गर्नुहोस्।ampलेस र आफ्नो वातावरण सेटअप गर्न। तपाईंले निम्न चरणहरू मार्फत अगाडि बढ्नु अघि, OPAE_PLATFORM_ROOT वातावरण चर OPAE SDK स्थापना डाइरेक्टरीमा सेट गरिएको छ भनी प्रमाणित गर्नुहोस्। DMA AFU को लागि हार्डवेयर सिम्युलेटर सेटअप गर्न निम्न चरणहरू पूरा गर्नुहोस्:

  1. DMA AFU s मा परिवर्तन गर्नुहोस्ample निर्देशिका: cd $OPAE_PLATFORM_ROOT/hw/samples/dma_afu
  2. नयाँ डाइरेक्टरीमा ASE वातावरण सिर्जना गर्नुहोस् र AFU: afu_sim_setup –source hw/rtl/ सिमुलेट गर्नको लागि कन्फिगर गर्नुहोस्।filelist.txt build_ase_dir
  3. ASE निर्माण निर्देशिकामा परिवर्तन गर्नुहोस्: cd build_ase_dir
  4. ड्राइभर र अनुप्रयोग बनाउनुहोस्: बनाउनुहोस्
  5. सिमुलेशन बनाउनुहोस्: सिम बनाउनुहोस्

Sampहार्डवेयर सिम्युलेटरबाट le आउटपुट:

[सिम] ** ध्यान दिनुहोस्: सफ्टवेयर अनुप्रयोग चलाउनु अघि ** [सिम] टर्मिनलमा env(ASE_WORKDIR) सेट गर्नुहोस् जहाँ अनुप्रयोग चल्नेछ (प्रतिलिपि-र-पेस्ट) => [SIM] $SHELL | रन: [सिम] ———+——————————————— [SIM] bash/zsh | निर्यात ASE_WORKDIR=$OPAE_PLATFORM_ROOT/hw/samples/dma_afu/ase_mkdir/work [SIM] tcsh/csh | setenv ASE_WORKDIR $OPAE_PLATFORM_ROOT/hw/samples/dma_afu/ase_mkdir/work [SIM] अन्य कुनै पनि $SHELL को लागि, आफ्नो लिनक्स प्रशासकलाई सल्लाह दिनुहोस् [SIM] [SIM] सिमुलेशनको लागि तयार छ... [SIM] सिम्युलेटर बन्द गर्न CTRL-C थिच्नुहोस्...

सिमुलेशन वातावरणमा DMA AFU सफ्टवेयर कम्पाइल र कार्यान्वयन गर्न निम्न चरणहरू पूरा गर्नुहोस्:

  1. नयाँ टर्मिनल सञ्झ्याल खोल्नुहोस्।
  2. डाइरेक्टरीलाई यसमा परिवर्तन गर्नुहोस्: cd $OPAE_PLATFORM_ROOT/hw/samples/dma_afu/sw

इंटेल कर्पोरेशन। सबै अधिकार सुरक्षित। Intel, Intel लोगो, र अन्य Intel मार्कहरू Intel Corporation वा यसको सहायक कम्पनीहरूको ट्रेडमार्क हुन्। Intel ले आफ्नो FPGA र अर्धचालक उत्पादनहरूको प्रदर्शनलाई Intel को मानक वारेन्टी अनुसार हालको विशिष्टताहरूमा वारेन्टी दिन्छ, तर सूचना बिना कुनै पनि समयमा कुनै पनि उत्पादन र सेवाहरूमा परिवर्तन गर्ने अधिकार सुरक्षित गर्दछ। Intel ले यहाँ वर्णन गरिएको कुनै पनि जानकारी, उत्पादन, वा सेवाको आवेदन वा प्रयोगबाट उत्पन्न हुने कुनै जिम्मेवारी वा दायित्व ग्रहण गर्दैन बाहेक Intel द्वारा लिखित रूपमा स्पष्ट रूपमा सहमत भए। Intel ग्राहकहरूलाई कुनै पनि प्रकाशित जानकारीमा भर पर्नु अघि र उत्पादन वा सेवाहरूको लागि अर्डर राख्नु अघि उपकरण विशिष्टताहरूको नवीनतम संस्करण प्राप्त गर्न सल्लाह दिइन्छ। *अन्य नाम र ब्रान्डहरू अरूको सम्पत्तिको रूपमा दाबी गर्न सकिन्छ।

AFU पूर्व अनुकरण गर्दैample

  1. टर्मिनल सञ्झ्यालमा हार्डवेयर सिमुलेशनमा माथिका चरणहरूबाट वातावरण सेटअप स्ट्रिङ (तपाईंको शेलको लागि उपयुक्त स्ट्रिङ छनौट गर्नुहोस्) प्रतिलिपि गर्नुहोस्। s मा निम्न लाइनहरू हेर्नुहोस्ampहार्डवेयर सिम्युलेटरबाट le आउटपुट। [SIM] bash/zsh | निर्यात ASE_WORKDIR=$OPAE_PLATFORM_ROOT/hw/samples/dma_afu/build_ase_dir/work [SIM] tcsh/csh | setenv ASE_WORKDIR $OPAE_PLATFORM_ROOT/hw/samples/dma_afu/build_ase_dir/work
  2. सफ्टवेयर कम्पाइल गर्नुहोस्: $ make USE_ASE=1
  3. लूपब्याक मोडमा होस्ट मेमोरीबाट FPGA यन्त्र मेमोरीमा 4 KB भागहरूमा 1 KB लेख्नको लागि होस्ट अनुप्रयोग कार्यान्वयन गर्नुहोस्: ./ fpga_dma_test -s 4096 -p 1024 -r mtom

सम्बन्धित जानकारी
Intel Accelerator Functional Unit (AFU) सिमुलेशन वातावरण (ASE) Quick Start User Guide

सुधारिएको DMA प्रदर्शनको लागि अनुकूलन

fpga_dma_test.cpp मा NUMA (गैर-एकसमान मेमोरी पहुँच) अप्टिमाइजेसनको कार्यान्वयनले प्रोसेसरलाई गैर-स्थानीय मेमोरी (मेमोरी स्थानीय अर्को प्रोसेसरमा) पहुँच गर्नु भन्दा छिटो आफ्नै स्थानीय मेमोरी पहुँच गर्न अनुमति दिन्छ। एउटा सामान्य NUMA कन्फिगरेसन तलको रेखाचित्रमा देखाइएको छ। स्थानीय पहुँचले कोरबाट मेमोरी स्थानीयको समान कोरमा पहुँच प्रतिनिधित्व गर्दछ। रिमोट पहुँचले नोड 0 मा कोरले मेमोरी पहुँच गर्दा लिइएको मार्गलाई चित्रण गर्दछ जुन मेमोरी स्थानीय नोड 1 मा रहन्छ।

विशिष्ट NUMA कन्फिगरेसन

Intel.-FPGA-Programmable-Acceleration-Card-D5005-fig-5

तपाइँको परीक्षण आवेदन मा NUMA अनुकूलन लागू गर्न निम्न कोड प्रयोग गर्नुहोस्:

// यदि अनुरोध गरियो भने उचित सम्बद्धता सेट अप गर्नुहोस् यदि (cpu_affinity || मेमोरी_affinity) {असाइन गरिएको dom = 0, bus = 0, dev = 0, func = 0; fpga_properties props;int retval; #if(FPGA_DMA_DEBUG) char str[4096]; #endifres = fpgaGetProperties(afc_token, &props); ON_ERR_GOTO(res, out_destroy_tok, "fpgaGetProperties"); res = fpgaPropertiesGetBus(props, (uint8_t *) & bus);ON_ERR_GOTO(res, out_destroy_tok, "fpgaPropertiesGetBus"); res = fpgaPropertiesGetDevice(props, (uint8_t *) & dev);ON_ERR_GOTO(res, out_destroy_tok, "fpgaPropertiesGetDevice") res = fpgaPropertiesGetFunction(props, (uint8_t *) & func); ON_ERR_GOTO (प्रॉप्स, स्ट्रोक आउट गर्नुहोस्); // टोपोलोजी hwloc_topology_t टोपोलोजीबाट उपकरण फेला पार्नुहोस्; hwloc_topology_init(&topology); hwloc_topology_set_flags(टोपोलोजी, HWLOC_TOPOLOGY_FLAG_IO_DEVICES); Intel Corporation। सबै अधिकार सुरक्षित। Intel, Intel लोगो, र अन्य Intel मार्कहरू Intel Corporation वा यसको सहायक कम्पनीहरूको ट्रेडमार्क हुन्। Intel ले आफ्नो FPGA र अर्धचालक उत्पादनहरूको प्रदर्शनलाई Intel को मानक वारेन्टी अनुसार हालको विशिष्टताहरूमा वारेन्टी दिन्छ, तर सूचना बिना कुनै पनि समयमा कुनै पनि उत्पादन र सेवाहरूमा परिवर्तन गर्ने अधिकार सुरक्षित गर्दछ। Intel ले यहाँ वर्णन गरिएको कुनै पनि जानकारी, उत्पादन, वा सेवाको आवेदन वा प्रयोगबाट उत्पन्न हुने कुनै जिम्मेवारी वा दायित्व ग्रहण गर्दैन बाहेक Intel द्वारा लिखित रूपमा स्पष्ट रूपमा सहमत भए। Intel ग्राहकहरूलाई कुनै पनि प्रकाशित जानकारीमा भर पर्नु अघि र उत्पादन वा सेवाहरूको लागि अर्डर राख्नु अघि उपकरण विशिष्टताहरूको नवीनतम संस्करण प्राप्त गर्न सल्लाह दिइन्छ। *अन्य नाम र ब्रान्डहरू अरूको सम्पत्तिको रूपमा दाबी गर्न सकिन्छ।

सुधारिएको DMA प्रदर्शनको लागि अनुकूलन

hwloc_topology_load(टोपोलोजी); hwloc_obj_t obj = hwloc_get_pcidev_by_busid(टोपोलॉजी, डोम, बस, देव, फंक); hwloc_obj_t obj2 = hwloc_get_non_io_ancestor_obj(टोपोलोजी, obj); #if (FPGA_DMA_DEBUG) hwloc_obj_type_snprintf(str, 4096, obj2, 1); printf(“%s\n”, str);hwloc_obj_attr_snprintf(str, 4096, obj2, ” :: “, 1);printf(“%s\n”, str); hwloc_bitmap_taskset_snprintf(str, 4096, obj2->cpuset); printf (“CPUSET %s\n”, str) हो; hwloc_bitmap_taskset_snprintf(str, 4096, obj2->nodeset); printf(“NODESET हो %s\n”, str);#endif if (memory_affinity) { #if HWLOC_API_VERSION > 0x00020000 retval = hwloc_set_membind(टोपोलॉजी, obj2->नोडेसेट,HWLOC_MEMBIND, HWLOC_MEMBIND, HWLOC_MEMBIND, HWMB_MEMBIND_MEMBRET, HWLOC_MEMBIND,HB_MEMBINDLOCMEBRET; #else retval =hwloc_set_membind_nodeset(टोपोलॉजी, obj2->nodeset, HWLOC_MEMBIND_THREAD,HWLOC_MEMBIND_MIGRATE); #endifON_ERR_GOTO(retval, out_destroy_tok, "hwloc_set_membind"); } यदि (cpu_affinity) { retval = hwloc_set_cpubind(टोपोलॉजी, obj2->cpuset, HWLOC_CPUBIND_STRICT); ON_ERR_GOTO(retval, out_destroy_tok, "hwloc_set_cpubind"); } }

DMA एक्सेलेरेटर कार्यात्मक एकाइ प्रयोगकर्ता गाइड अभिलेख

इंटेल एक्सेलेरेशन स्ट्याक संस्करण प्रयोगकर्ता गाइड (पीडीएफ)
2.0 DMA एक्सेलेरेटर फंक्शनल युनिट (AFU) प्रयोगकर्ता गाइड

DMA एक्सेलेरेटर कार्यात्मक एकाइ प्रयोगकर्ता गाइडको लागि कागजात संशोधन इतिहास

 

कागजात संस्करण

इंटेल एक्सेलेरेशन स्ट्याक संस्करण  

परिवर्तनहरू

 

 

2020.08.03

2.0.1 (Intel सँग समर्थित

Quartus® प्राइम प्रो संस्करण संस्करण 19.2)

 

AF छवि सच्यायो file खण्डमा नाम DMA AFU को संकलन गर्दै Example.

 

 

2020.04.17

2.0.1 (Intel सँग समर्थित

क्वार्टस प्राइम प्रो संस्करण संस्करण १९.२)

 

 

मा एक कथन सच्यायो अभिप्रेत दर्शक खण्ड।

 

 

2020.02.20

2.0.1 (Intel सँग समर्थित

क्वार्टस प्राइम प्रो संस्करण संस्करण १९.२)

 

 

फिक्स्ड टाइपो।

 

 

 

 

2019.11.04

 

 

2.0.1 (Intel सँग समर्थित

क्वार्टस प्राइम प्रो संस्करण संस्करण १९.२)

• fpgaconf लाई fpgasupdate सँग प्रतिस्थापन गर्दा FPGA लाई खण्डमा प्रिबिल्ड AFU सँग कन्फिगर गर्दा DMA AFU Example.

• उपशीर्षक थपियो इंटेल FPGA प्रोग्रामेबल एक्सेलेरेशन कार्ड D5005 कागजात शीर्षकमा।

• वातावरणीय चर $OPAE_PLATFORM_ROOT थपियो।

• परिमार्जित खण्ड सफ्टवेयर प्रोग्रामिङ मोडेल सानो सम्पादनको लागि।

• नयाँ खण्ड थपियो DMA AFU को संकलन गर्दै Example.

• परिमार्जित खण्ड सुधारिएको DMA प्रदर्शनको लागि अनुकूलन सानो सम्पादनको लागि।

 

 

2019.08.05

2.0 (Intel सँग समर्थित

क्वार्टस प्राइम प्रो संस्करण 18.1.2)

 

 

प्रारम्भिक रिलीज।

इंटेल कर्पोरेशन। सबै अधिकार सुरक्षित। Intel, Intel लोगो, र अन्य Intel मार्कहरू Intel Corporation वा यसको सहायक कम्पनीहरूको ट्रेडमार्क हुन्। Intel ले आफ्नो FPGA र अर्धचालक उत्पादनहरूको प्रदर्शनलाई Intel को मानक वारेन्टी अनुसार हालको विशिष्टताहरूमा वारेन्टी दिन्छ, तर सूचना बिना कुनै पनि समयमा कुनै पनि उत्पादन र सेवाहरूमा परिवर्तन गर्ने अधिकार सुरक्षित गर्दछ। Intel ले यहाँ वर्णन गरिएको कुनै पनि जानकारी, उत्पादन, वा सेवाको आवेदन वा प्रयोगबाट उत्पन्न हुने कुनै जिम्मेवारी वा दायित्व ग्रहण गर्दैन बाहेक Intel द्वारा लिखित रूपमा स्पष्ट रूपमा सहमत भए। Intel ग्राहकहरूलाई कुनै पनि प्रकाशित जानकारीमा भर पर्नु अघि र उत्पादन वा सेवाहरूको लागि अर्डर गर्नु अघि उपकरण विशिष्टताहरूको नवीनतम संस्करण प्राप्त गर्न सल्लाह दिइन्छ।

  • अन्य नाम र ब्रान्डहरू अरूको सम्पत्तिको रूपमा दाबी गर्न सकिन्छ।

 

कागजातहरू / स्रोतहरू

इंटेल FPGA प्रोग्रामेबल एक्सेलेरेशन कार्ड D5005 [pdf] प्रयोगकर्ता गाइड
FPGA प्रोग्रामेबल एक्सेलेरेशन कार्ड, D5005, FPGA प्रोग्रामेबल एक्सेलेरेशन कार्ड D5005, DMA एक्सेलेरेटर फंक्शनल युनिट

सन्दर्भहरू

एक टिप्पणी छोड्नुहोस्

तपाईंको इमेल ठेगाना प्रकाशित गरिने छैन। आवश्यक क्षेत्रहरू चिन्ह लगाइएका छन् *