ইন্টেল-লোগো

ইন্টেল FPGA প্রোগ্রামেবল অ্যাক্সিলারেশন কার্ড D5005

Intel.-FPGA-প্রোগ্রামেবল-এক্সিলারেশন-কার্ড-D5005-পণ্য

এই নথি সম্পর্কে

এই নথিটি সরাসরি মেমরি অ্যাক্সেস (DMA) এক্সিলারেটর ফাংশনাল ইউনিট (AFU) বাস্তবায়ন এবং হার্ডওয়্যারে বা সিমুলেশনে চালানোর জন্য কীভাবে ডিজাইন তৈরি করতে হয় তা বর্ণনা করে।

উদ্দেশ্য শ্রোতা

ইন্টেল এফপিজিএ ডিভাইসের সাথে সংযুক্ত মেমরিতে স্থানীয়ভাবে ডেটা বাফার করার জন্য হার্ডওয়্যার বা সফ্টওয়্যার ডেভেলপারদের উদ্দিষ্ট শ্রোতাদের একটি অ্যাক্সিলারেটর ফাংশন (AF) প্রয়োজন।

কনভেনশন

ডকুমেন্ট কনভেনশন

কনভেনশন বর্ণনা
# একটি কমান্ডের আগে যা নির্দেশ করে যে কমান্ডটি রুট হিসাবে প্রবেশ করতে হবে।
$ নির্দেশ করে যে একটি কমান্ড ব্যবহারকারী হিসাবে প্রবেশ করতে হবে।
এই ফন্ট Fileনাম, কমান্ড এবং কীওয়ার্ড এই ফন্টে মুদ্রিত হয়। এই ফন্টে লম্বা কমান্ড লাইন প্রিন্ট করা হয়। যদিও দীর্ঘ কমান্ড লাইন পরবর্তী লাইনে মোড়ানো হতে পারে, রিটার্ন কমান্ডের অংশ নয়; এন্টার চাপবেন না।
কোণ বন্ধনীগুলির মধ্যে উপস্থিত স্থানধারক পাঠ্যটিকে একটি উপযুক্ত মান দিয়ে প্রতিস্থাপন করা আবশ্যক। কোণ বন্ধনী প্রবেশ করবেন না.

সংক্ষিপ্ত শব্দ

সংক্ষিপ্ত শব্দ

সংক্ষিপ্ত শব্দ সম্প্রসারণ বর্ণনা
AF অ্যাক্সিলারেটর ফাংশন কম্পাইল করা হার্ডওয়্যার অ্যাক্সিলারেটর ইমেজ FPGA লজিকে প্রয়োগ করা হয়েছে যা একটি অ্যাপ্লিকেশনকে ত্বরান্বিত করে।
এএফইউ অ্যাক্সিলারেটর ফাংশনাল ইউনিট হার্ডওয়্যার অ্যাক্সিলারেটর FPGA লজিকে প্রয়োগ করা হয়েছে যা কর্মক্ষমতা উন্নত করতে CPU থেকে একটি অ্যাপ্লিকেশনের জন্য একটি গণনামূলক অপারেশন অফলোড করে।
API অ্যাপ্লিকেশন প্রোগ্রামিং ইন্টারফেস সফ্টওয়্যার অ্যাপ্লিকেশন তৈরির জন্য সাবরুটিন সংজ্ঞা, প্রোটোকল এবং সরঞ্জামগুলির একটি সেট।
সিসিআই-পি কোর ক্যাশে ইন্টারফেস CCI-P হল আদর্শ ইন্টারফেস AFU গুলি হোস্টের সাথে যোগাযোগ করতে ব্যবহার করে।
ডিএফএইচ ডিভাইস বৈশিষ্ট্য শিরোনাম বৈশিষ্ট্য যুক্ত করার একটি এক্সটেনসিবল উপায় প্রদান করতে বৈশিষ্ট্য শিরোনামগুলির একটি লিঙ্কযুক্ত তালিকা তৈরি করে৷
অব্যাহত…

ইন্টেল কর্পোরেশন। সমস্ত অধিকার সংরক্ষিত. ইন্টেল, ইন্টেল লোগো এবং অন্যান্য ইন্টেল চিহ্নগুলি হল ইন্টেল কর্পোরেশন বা এর সহযোগী সংস্থাগুলির ট্রেডমার্ক৷ ইন্টেল তার এফপিজিএ এবং সেমিকন্ডাক্টর পণ্যগুলির কার্যকারিতাকে ইন্টেলের স্ট্যান্ডার্ড ওয়ারেন্টি অনুসারে বর্তমান স্পেসিফিকেশনের জন্য ওয়ারেন্টি দেয়, তবে নোটিশ ছাড়াই যে কোনও সময় যে কোনও পণ্য এবং পরিষেবাতে পরিবর্তন করার অধিকার সংরক্ষণ করে। ইন্টেল এখানে বর্ণিত কোনো তথ্য, পণ্য, বা পরিষেবার প্রয়োগ বা ব্যবহারের ফলে উদ্ভূত কোনো দায় বা দায়ভার গ্রহণ করে না, যা Intel দ্বারা লিখিতভাবে স্পষ্টভাবে সম্মত হয়েছে। Intel গ্রাহকদের কোনো প্রকাশিত তথ্যের উপর নির্ভর করার আগে এবং পণ্য বা পরিষেবার জন্য অর্ডার দেওয়ার আগে ডিভাইসের স্পেসিফিকেশনের সর্বশেষ সংস্করণ পেতে পরামর্শ দেওয়া হয়। *অন্যান্য নাম এবং ব্র্যান্ড অন্যদের সম্পত্তি হিসাবে দাবি করা যেতে পারে।

সংক্ষিপ্ত শব্দ সম্প্রসারণ বর্ণনা
FIM FPGA ইন্টারফেস ম্যানেজার FPGA হার্ডওয়্যার যাতে FPGA ইন্টারফেস ইউনিট (FIU) এবং মেমরি, নেটওয়ার্কিং ইত্যাদির জন্য বাহ্যিক ইন্টারফেস থাকে।

অ্যাক্সিলারেটর ফাংশন (AF) রান টাইমে FIM-এর সাথে ইন্টারফেস করে।

এফআইইউ FPGA ইন্টারফেস ইউনিট FIU হল একটি প্ল্যাটফর্ম ইন্টারফেস স্তর যা PCIe*, UPI এবং AFU-সাইড ইন্টারফেস যেমন CCI-P-এর মতো প্ল্যাটফর্ম ইন্টারফেসের মধ্যে সেতু হিসেবে কাজ করে।
এমপিএফ মেমরি প্রোপার্টি ফ্যাক্টরি MPF হল একটি বেসিক বিল্ডিং ব্লক (BBB) ​​যা AFU গুলি FIU-এর সাথে লেনদেনের জন্য CCI-P ট্রাফিক শেপিং অপারেশন প্রদান করতে ব্যবহার করতে পারে।

ত্বরণ শব্দকোষ

FPGAs শব্দকোষ সহ Intel® Xeon® CPU-এর জন্য অ্যাক্সিলারেশন স্ট্যাক

মেয়াদ সংক্ষিপ্ত রূপ বর্ণনা
FPGA সহ Intel Xeon® CPU-এর জন্য Intel® ত্বরণ স্ট্যাক ত্বরণ স্ট্যাক সফ্টওয়্যার, ফার্মওয়্যার এবং সরঞ্জামগুলির একটি সংগ্রহ যা একটি Intel FPGA এবং একটি Intel Xeon প্রসেসরের মধ্যে পারফরম্যান্স-অপ্টিমাইজড সংযোগ প্রদান করে।
ইন্টেল FPGA প্রোগ্রামেবল অ্যাক্সিলারেশন কার্ড ইন্টেল FPGA PAC PCIe FPGA এক্সিলারেটর কার্ড।

একটি FPGA ইন্টারফেস ম্যানেজার (FIM) রয়েছে যা PCIe বাসের উপর একটি Intel Xeon প্রসেসরের সাথে জোড়া দেয়।

  • DMA অ্যাক্সিলারেটর ফাংশনাল ইউনিট ইউজার গাইড: ইন্টেল FPGA প্রোগ্রামেবল অ্যাক্সিলারেশন কার্ড D5005

DMA AFU বর্ণনা

ভূমিকা

ডাইরেক্ট মেমরি অ্যাক্সেস (DMA) AFU প্রাক্তনample দেখায় কিভাবে হোস্ট প্রসেসর এবং FPGA এর মধ্যে মেমরি স্থানান্তর পরিচালনা করতে হয়। হোস্ট মেমরি এবং FPGA লোকাল মেমরির মধ্যে ডেটা স্থানান্তর করতে আপনি আপনার ডিজাইনে DMA AFU-কে সংহত করতে পারেন৷ DMA AFU নিম্নলিখিত সাবমডিউলগুলি নিয়ে গঠিত:

  • মেমরি প্রপার্টিজ ফ্যাক্টরি (MPF) বেসিক বিল্ডিং ব্লক (BBB)
  • Avalon® মেমরি-ম্যাপড (Avalon-MM) অ্যাডাপ্টারের সাথে কোর ক্যাশে ইন্টারফেস (CCI-P)
  • DMA টেস্ট সিস্টেম যা DMA BBB ধারণ করে

এই সাবমডিউলগুলি নীচের DMA AFU হার্ডওয়্যার উপাদানগুলির বিষয়ে আরও বিশদে বর্ণনা করা হয়েছে।

সম্পর্কিত তথ্য

  • পৃষ্ঠা 6-এ DMA AFU হার্ডওয়্যার উপাদান
  • অ্যাভালন ইন্টারফেস স্পেসিফিকেশন

Avalon-MM প্রোটোকল সম্পর্কে আরও তথ্যের জন্য, লেনদেন পড়ার এবং লেখার জন্য টাইমিং ডায়াগ্রাম সহ।

DMA AFU সফটওয়্যার প্যাকেজ

FPGAs প্যাকেজ সহ Intel Xeon CPU-এর জন্য Intel Acceleration Stack file (*.tar.gz), ডিএমএ AFU প্রাক্তন অন্তর্ভুক্তampলে এই প্রাক্তনample একটি ব্যবহারকারী স্থান ড্রাইভার প্রদান করে. হোস্ট অ্যাপ্লিকেশন এই ড্রাইভার ব্যবহার করে যাতে DMA হোস্ট এবং FPGA মেমরির মধ্যে ডেটা স্থানান্তর করে। হার্ডওয়্যার বাইনারি, উত্স, এবং ব্যবহারকারী স্পেস ড্রাইভার নিম্নলিখিত ডিরেক্টরিতে উপলব্ধ: $OPAE_PLATFORM_ROOT/hw/samples/dma_afu। DMA AFU নিয়ে পরীক্ষা করার আগে, আপনাকে অবশ্যই Open Programmable Acceleration Engine (OPAE) সফটওয়্যার প্যাকেজ ইনস্টল করতে হবে। Intel FPGA Programmable Acceleration Card D5005-এর জন্য Intel Acceleration Stack Quick Start Guide-এ OPAE সফ্টওয়্যার প্যাকেজ ইনস্টল করার নির্দেশাবলী পড়ুন। এই কুইক স্টার্ট গাইডে ওপেন প্রোগ্রামেবল অ্যাক্সিলারেশন ইঞ্জিন (OPAE) এবং একটি AFU কনফিগার করার প্রাথমিক তথ্যও রয়েছে। Open Programmable Acceleration Engine (OPAE) সফ্টওয়্যার প্যাকেজ ইনস্টল করার পরে, হিসাবেample হোস্ট অ্যাপ্লিকেশন এবং DMA AFU ব্যবহারকারী স্পেস ড্রাইভার নিম্নলিখিত ডিরেক্টরিতে উপলব্ধ: $OPAE_PLATFORM_ROOT/hw/samples/dma_afu/sw. এস চালানোর জন্যample হোস্ট অ্যাপ্লিকেশন, আপনার Intel FPGA PAC D5005 হার্ডওয়্যারে fpga_dma_test, DMA AFU এক্স চালানোর বিভাগে ধাপগুলি পড়ুনampলে ইন্টেল কর্পোরেশন। সমস্ত অধিকার সংরক্ষিত. ইন্টেল, ইন্টেল লোগো এবং অন্যান্য ইন্টেল চিহ্নগুলি হল ইন্টেল কর্পোরেশন বা এর সহযোগী সংস্থাগুলির ট্রেডমার্ক৷ ইন্টেল তার এফপিজিএ এবং সেমিকন্ডাক্টর পণ্যগুলির কার্যকারিতাকে ইন্টেলের স্ট্যান্ডার্ড ওয়ারেন্টি অনুসারে বর্তমান স্পেসিফিকেশনের জন্য ওয়ারেন্টি দেয়, তবে নোটিশ ছাড়াই যে কোনও সময় যে কোনও পণ্য এবং পরিষেবাতে পরিবর্তন করার অধিকার সংরক্ষণ করে। ইন্টেল লিখিতভাবে স্পষ্টভাবে সম্মত হওয়া ছাড়া এখানে বর্ণিত কোনো তথ্য, পণ্য বা পরিষেবার আবেদন বা ব্যবহারের ফলে উদ্ভূত কোনো দায়িত্ব বা দায়ভার গ্রহণ করে না। 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 প্রয়োগ করে

  • এএফইউ। প্ল্যাটফর্ম ডিজাইনার সিস্টেমে বাস্তবায়িত 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 অ্যাক্সিলারেটর ফাংশনাল ইউনিট ইউজার গাইড: ইন্টেল FPGA প্রোগ্রামেবল অ্যাক্সিলারেশন কার্ড D5005

DMA AFU হার্ডওয়্যার ব্লক ডায়াগ্রাম

Intel.-FPGA-প্রোগ্রামেবল-এক্সিলারেশন-কার্ড-D5005-fig-1

DMA AFU FPGA ইন্টারফেস ইউনিট (FIU) এর সাথে ইন্টারফেস করার জন্য নিম্নলিখিত অভ্যন্তরীণ মডিউলগুলি অন্তর্ভুক্ত করে:

  • মেমরি-ম্যাপড IO (MMIO) ডিকোডার লজিক: MMIO রিড এবং রাইট লেনদেন সনাক্ত করে এবং CCI-P RX চ্যানেল 0 থেকে আলাদা করে যেখান থেকে তারা আসে। এটি নিশ্চিত করে যে MMIO ট্র্যাফিক কখনই MPF BBB-এ পৌঁছায় না এবং একটি স্বাধীন MMIO কমান্ড চ্যানেল দ্বারা পরিষেবা দেওয়া হয়।
  • মেমরি প্রপার্টিজ ফ্যাক্টরি (MPF): এই মডিউলটি নিশ্চিত করে যে ডিএমএ রিটার্ন থেকে প্রতিক্রিয়াগুলি যে ক্রমে ইস্যু করা হয়েছিল সেই ক্রমে পড়ে। 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-এর চারপাশে একটি মোড়ক হিসাবে কাজ করে যাতে DMA মাস্টারদের AFU-এর বাকি লজিকের কাছে তুলে ধরা হয়। এটি ডিএমএ বিবিবি এবং সিসিআই-পি থেকে অ্যাভালন অ্যাডাপ্টারের মধ্যে ইন্টারফেস সরবরাহ করে। এটি DMA BBB এবং স্থানীয় FPGA SDRAM ব্যাঙ্কগুলির মধ্যে ইন্টারফেস প্রদান করে।

সম্পর্কিত তথ্য
Intel FPGA প্রোগ্রামেবল অ্যাক্সিলারেশন কার্ড D5005 এর জন্য FPGA ইন্টারফেস ম্যানেজার ডেটা শীট

ডিএমএ টেস্ট সিস্টেম

DMA টেস্ট সিস্টেম DMA BBB কে CCI-P অভিযোজন এবং স্থানীয় FPGA মেমরি সহ বাকি FPGA ডিজাইনের সাথে সংযুক্ত করে।

ডিএমএ টেস্ট সিস্টেম ব্লক ডায়াগ্রাম
এই ব্লক ডায়াগ্রামটি ডিএমএ টেস্ট সিস্টেমের অভ্যন্তরীণ অংশগুলি দেখায়। DMA পরীক্ষা পদ্ধতিকে 1 পৃষ্ঠায় চিত্র 7-এ একচেটিয়া ব্লক হিসাবে দেখানো হয়েছে।Intel.-FPGA-প্রোগ্রামেবল-এক্সিলারেশন-কার্ড-D5005-fig-2

ডিএমএ পরীক্ষা পদ্ধতিতে নিম্নলিখিত অভ্যন্তরীণ মডিউলগুলি অন্তর্ভুক্ত রয়েছে:

  • ফার রিচ ব্রিজ/পাইপলাইন ব্রিজ: সামঞ্জস্যযোগ্য লেটেন্সি সহ একটি পাইপলাইন সেতু যা টপোলজি নিয়ন্ত্রণ এবং ডিজাইন Fmax উন্নত করতে অন্তর্ভুক্ত।
  • DMA AFU ডিভাইস ফিচার হেডার (DFH): এটি DMA AFU-এর জন্য একটি DFH। এই DFH অফসেট 0x100 (DMA BBB DFH) এ অবস্থিত পরবর্তী DFH-এর দিকে নির্দেশ করে।
  • নাল DFH: এই উপাদানটি DFH লিঙ্কযুক্ত-তালিকাকে বন্ধ করে দেয়। আপনি যদি ডিজাইনে আরও DMA BBB যোগ করেন, তাহলে নিশ্চিত করুন যে নাল DFH বেস ঠিকানাটি DFH লিঙ্কড-লিস্টের শেষে অবস্থিত।
  • MA বেসিক বিল্ডিং ব্লক (BBB): এই ব্লক হোস্ট এবং স্থানীয় FPGA মেমরির মধ্যে ডেটা স্থানান্তর করে। এটি বর্ণনাকারী চেইন অ্যাক্সেস করতে হোস্ট মেমরি অ্যাক্সেস করে।

ডিএমএ বিবিবি

DMA BBB সাবসিস্টেম Avalon-MM লেনদেন ব্যবহার করে উৎস থেকে গন্তব্য ঠিকানায় ডেটা স্থানান্তর করে। ডিএমএ ড্রাইভার সিস্টেমের অভ্যন্তরে বিভিন্ন উপাদানের কন্ট্রোল এবং স্ট্যাটাস রেজিস্টার অ্যাক্সেস করে ডিএমএ বিবিবি নিয়ন্ত্রণ করে। DMA ড্রাইভারও DMA BBB কে নিয়ন্ত্রণ করে শেয়ার্ড মেমরি ব্যবহার করে ট্রান্সফার ডিসক্রিপ্টরদের সাথে যোগাযোগ করার জন্য। DMA BBB অফসেট 0x0 এ FPGA মেমরিতে ডেটা অ্যাক্সেস করে। DMA BBB অফসেট 0x1_0000_0000_0000 এ হোস্ট মেমরিতে ডেটা এবং বর্ণনাকারী অ্যাক্সেস করে।

DMA BBB প্ল্যাটফর্ম ডিজাইনার ব্লক ডায়াগ্রাম
এই ব্লক ডায়াগ্রামে কিছু অভ্যন্তরীণ পাইপলাইন ব্রিজ আইপি কোর বাদ দেওয়া হয়েছে।Intel.-FPGA-প্রোগ্রামেবল-এক্সিলারেশন-কার্ড-D5005-fig-6

DMA অ্যাক্সিলারেটর ফাংশনাল ইউনিট ইউজার গাইড: ইন্টেল FPGA প্রোগ্রামেবল অ্যাক্সিলারেশন কার্ড D5005

DMA AFU বর্ণনা

DMA BBB প্ল্যাটফর্ম ডিজাইনারের উপাদানগুলি নিম্নলিখিত ফাংশনগুলি বাস্তবায়ন করে:

  • দূরবর্তী সেতু/পাইপলাইন সেতু: সামঞ্জস্যযোগ্য লেটেন্সি সহ একটি পাইপলাইন সেতু টপোলজি নিয়ন্ত্রণ এবং ডিজাইন Fmax উন্নত করতে অন্তর্ভুক্ত।
  • এমএ বিবিবি ডিএফএইচ: এটি DMA BBB-এর জন্য একটি ডিভাইস বৈশিষ্ট্য শিরোনাম। এই ডিএফএইচ অফসেট 0x100 (নাল ডিএফএইচ) এ অবস্থিত পরবর্তী ডিএফএইচকে নির্দেশ করে।
  • বর্ণনাকারী ফ্রন্টেন্ড: বর্ণনাকারী আনয়ন এবং প্রেরণকারীর কাছে স্থানান্তর করার জন্য দায়ী৷ যখন একটি ডিএমএ ট্রান্সফার সম্পূর্ণ হয় তখন ফ্রন্টএন্ড ডিসপ্যাচার থেকে স্ট্যাটাস গঠন পায় এবং হোস্ট মেমরিতে বর্ণনাকারীকে ওভাররাইট করে।
  • প্রেরণকারী: এই ব্লকটি ডিএমএ রিড অ্যান্ড রাইট মাস্টারের কাছে অনুরোধ স্থানান্তরের সময়সূচী করে।
  • পড়ুন মাস্টার: এই ব্লক হোস্ট বা স্থানীয় FPGA মেমরি থেকে ডেটা পড়ার জন্য এবং এটি স্ট্রিমিং ডেটা হিসাবে Write Master-এ পাঠানোর জন্য দায়ী।
  • মাস্টার লিখুন: এই ব্লকটি রিড মাস্টার থেকে স্ট্রিমিং ডেটা গ্রহণ এবং হোস্ট বা স্থানীয় FPGA মেমরিতে বিষয়বস্তু লেখার জন্য দায়ী।

মানচিত্র এবং ঠিকানা স্থান নিবন্ধন

DMA AFU দুটি মেমরি সমর্থন করে views: ডিএমএ view এবং হোস্ট view. ডিএমএ view একটি 49-বিট ঠিকানা স্থান সমর্থন করে। DMA এর নিচের অর্ধেক view স্থানীয় FPGA মেমরি মানচিত্র. DMA এর উপরের অর্ধেক view মেমরি হোস্ট মানচিত্র. হোস্ট view DFH টেবিলের মতো MMIO অ্যাক্সেসের মাধ্যমে অ্যাক্সেসযোগ্য সমস্ত রেজিস্টার এবং DMA AFU-এর ভিতরে ব্যবহৃত বিভিন্ন আইপি কোরের নিয়ন্ত্রণ/স্ট্যাটাস রেজিস্টার অন্তর্ভুক্ত করে। MMIO DMA BBB এবং AFU-তে 32- এবং 64-বিট অ্যাক্সেস সমর্থন করে। DMA AFU 512-বিট MMIO অ্যাক্সেস সমর্থন করে না। DMA BBB-এর ভিতরে ডিসপ্যাচার রেজিস্টারগুলিতে অ্যাক্সেস অবশ্যই 32 বিট হতে হবে (ডেসক্রিপ্টর ফ্রন্টএন্ড 64-বিট রেজিস্টার প্রয়োগ করে)।

DMA AFU রেজিস্টার মানচিত্র

DMA AFU রেজিস্টার মানচিত্র ইউনিটের মধ্যে সমস্ত অবস্থানের পরম ঠিকানা প্রদান করে। এই রেজিস্টারগুলো হোস্টে আছে view কারণ এটি শুধুমাত্র হোস্ট যে তাদের অ্যাক্সেস করতে পারে।

DMA AFU মেমরি ম্যাপ

বাইট ঠিকানা অফসেট নাম বাইটে স্প্যান বর্ণনা
0x0 ডিএমএ এএফইউ ডিএফএইচ 0x40 DMA AFU-এর জন্য ডিভাইস বৈশিষ্ট্য শিরোনাম। ID_L 0x9081f88b8f655caa এবং ID_H 0x331db30c988541ea তে সেট করা হয়েছে৷ পরবর্তী DFH (DMA BBB DFH) খুঁজে পেতে অফসেট 0x100 নির্দেশ করার জন্য DMA AFU DFH প্যারামিটারাইজ করা হয়েছে। আপনি অবশ্যই DMA AFU DFH-এর মূল ঠিকানা পরিবর্তন করবেন না কারণ এটি অবশ্যই CCIP স্পেসিফিকেশন দ্বারা সংজ্ঞায়িত 0x0 ঠিকানায় অবস্থিত হবে।
0x100 ডিএমএ বিবিবি 0x100 DMA BBB কন্ট্রোল এবং স্ট্যাটাস রেজিস্টার ইন্টারফেস নির্দিষ্ট করে। আরও তথ্যের জন্য আপনি DMA BBB রেজিস্টার ম্যাপ দেখতে পারেন। অফসেট 0 এ DMA BBB-এর মধ্যে DMA BBB এর নিজস্ব DFH অন্তর্ভুক্ত। এই DFH অফসেট 0x100 (NULL DFH) এ পরবর্তী DFH খুঁজতে সেট করা হয়েছে। আপনি যদি আরও DMA BBB যোগ করেন, সেগুলিকে 0x100 আলাদা করে রাখুন এবং NULL DFH 0x100 দ্বারা শেষ DMA অনুসরণ করে তা নিশ্চিত করুন।
0x200 NULL DFH 0x40 DFH লিঙ্কড-তালিকা বন্ধ করে। ID_L 0x90fe6aab12a0132f এবং ID_H 0xda1182b1b3444e23 এ সেট করা হয়েছে। NULL DFH কে হার্ডওয়্যারের শেষ DFH হিসাবে প্যারামিটারাইজ করা হয়েছে। এই কারণে NULL DFH ঠিকানা 0x200 এ অবস্থিত। আপনি যদি সিস্টেমে অতিরিক্ত DMA BBB যোগ করেন, তাহলে আপনাকে সেই অনুযায়ী NULL DFH বেস ঠিকানা বাড়াতে হবে যাতে এটি সর্বোচ্চ ঠিকানায় থাকে। DMA ড্রাইভার এবং পরীক্ষা অ্যাপ্লিকেশন এই হার্ডওয়্যার ব্যবহার করে না।

ইন্টেল কর্পোরেশন। সমস্ত অধিকার সংরক্ষিত. ইন্টেল, ইন্টেল লোগো এবং অন্যান্য ইন্টেল চিহ্নগুলি হল ইন্টেল কর্পোরেশন বা এর সহযোগী সংস্থাগুলির ট্রেডমার্ক৷ ইন্টেল তার এফপিজিএ এবং সেমিকন্ডাক্টর পণ্যগুলির কার্যকারিতাকে ইন্টেলের স্ট্যান্ডার্ড ওয়ারেন্টি অনুসারে বর্তমান স্পেসিফিকেশনের জন্য ওয়ারেন্টি দেয়, তবে নোটিশ ছাড়াই যে কোনও সময় যে কোনও পণ্য এবং পরিষেবাতে পরিবর্তন করার অধিকার সংরক্ষণ করে। ইন্টেল এখানে বর্ণিত কোনো তথ্য, পণ্য, বা পরিষেবার প্রয়োগ বা ব্যবহারের ফলে উদ্ভূত কোনো দায় বা দায়ভার গ্রহণ করে না, যা Intel দ্বারা লিখিতভাবে স্পষ্টভাবে সম্মত হয়েছে। Intel গ্রাহকদের কোনো প্রকাশিত তথ্যের উপর নির্ভর করার আগে এবং পণ্য বা পরিষেবার জন্য অর্ডার দেওয়ার আগে ডিভাইসের স্পেসিফিকেশনের সর্বশেষ সংস্করণ পেতে পরামর্শ দেওয়া হয়। *অন্যান্য নাম এবং ব্র্যান্ড অন্যদের সম্পত্তি হিসাবে দাবি করা যেতে পারে।

মানচিত্র এবং ঠিকানা স্থান নিবন্ধন

DMA BBB মেমরি ম্যাপ
নিম্নলিখিত বাইট ঠিকানাগুলি DMA AFU সিস্টেমে (0x100) DMA BBB বেস ঠিকানা থেকে আপেক্ষিক অফসেট।

বাইট ঠিকানা অফসেট নাম বাইটে স্প্যান বর্ণনা
0x0 ডিএমএ বিবিবি ডিএফএইচ 0x40 DMA AFU-এর জন্য ডিভাইস বৈশিষ্ট্য শিরোনাম। ID_L 0xa9149a35bace01ea এবং ID_H 0xef82def7f6ec40fc এ সেট করা হয়েছে। পরবর্তী DFH অফসেটের জন্য DMA BBB DFH কে 0x100 নির্দেশ করার জন্য প্যারামিটারাইজ করা হয়েছে। এই পরবর্তী অফসেট অন্য DMA BBB, অন্য DFH (এই ডিজাইনে অন্তর্ভুক্ত নয়), অথবা NULL DFH হতে পারে।
0x40 প্রেরণকারী 0x40 প্রেরণকারীর জন্য নিয়ন্ত্রণ পোর্ট। DMA ড্রাইভার DMA নিয়ন্ত্রণ করতে বা এর স্থিতি জিজ্ঞাসা করতে এই অবস্থানটি ব্যবহার করে।
0x80 বর্ণনাকারী ফ্রন্টএন্ড 0x40 বর্ণনাকারী ফ্রন্টএন্ড হল একটি কাস্টম উপাদান যা হোস্ট মেমরি থেকে বর্ণনাকারী পড়ে এবং ডিএমএ স্থানান্তর সম্পূর্ণ হলে বর্ণনাকারীকে ওভাররাইট করে। ড্রাইভার ফ্রন্টএন্ডকে নির্দেশ দেয় যেখানে প্রথম বর্ণনাকারী হোস্ট মেমরিতে থাকে এবং তারপরে ফ্রন্টএন্ড হার্ডওয়্যার মূলত ড্রাইভারের সাথে যোগাযোগ করে যদিও বর্ণনাকারী হোস্ট মেমরিতে সংরক্ষিত থাকে।

DMA AFU ঠিকানার স্থান

হোস্ট 4 পৃষ্ঠায় টেবিল 12 এবং 5 পৃষ্ঠার টেবিল 13-এ তালিকাভুক্ত রেজিস্টারগুলি অ্যাক্সেস করতে পারে। DMA BBB সাবসিস্টেমের সম্পূর্ণ 49-বিট ঠিকানা স্থানের অ্যাক্সেস রয়েছে। এই ঠিকানা স্থানের নীচের অর্ধেক স্থানীয় FPGA স্মৃতি অন্তর্ভুক্ত করে। এই ঠিকানা স্থানের উপরের অর্ধেক 48-বিট হোস্ট ঠিকানা মেমরি অন্তর্ভুক্ত। নিম্নলিখিত চিত্র হোস্ট এবং DMA দেখায় viewস্মৃতির s.

ডিএমএ এএফইউ এবং হোস্ট Viewস্মৃতির s

Intel.-FPGA-প্রোগ্রামেবল-এক্সিলারেশন-কার্ড-D5005-fig-3

ডিভাইস বৈশিষ্ট্য শিরোনাম লিঙ্ক-তালিকা

ডিএমএ এএফইউ ডিজাইন প্রাক্তনample এ তিনটি ডিভাইস বৈশিষ্ট্য শিরোনাম (DFH) রয়েছে যা একটি লিঙ্কযুক্ত তালিকা তৈরি করে। এই লিঙ্কযুক্ত তালিকাটি অনুমতি দেয়ampDMA BBB সনাক্ত করার জন্য DMA AFU এর পাশাপাশি ড্রাইভারকে সনাক্ত করার জন্য le অ্যাপ্লিকেশন। DFH তালিকার শেষে একটি NULL DFH অন্তর্ভুক্ত। লিঙ্ক করা তালিকার শেষে নাল DFH এর অন্তর্ভুক্তি আপনাকে আপনার ডিজাইনে আরও DMA BBB যোগ করতে দেয়। আপনাকে অন্য BBB-এর পরে একটি ঠিকানায় NULL DFH সরাতে হবে। প্রতিটি DMA BBB আশা করে যে পরবর্তী DFH BBB-এর ভিত্তি ঠিকানা থেকে 0x100 বাইট অবস্থিত হবে। নিম্নোক্ত চিত্রটি DMA AFU ডিজাইন প্রাক্তনের লিঙ্কযুক্ত তালিকাকে চিত্রিত করে৷ampলে

মানচিত্র এবং ঠিকানা স্থান নিবন্ধন

DMA AFU ডিভাইস ফিচার হেডার (DFH) চেইনিং

Intel.-FPGA-প্রোগ্রামেবল-এক্সিলারেশন-কার্ড-D5005-fig-4

সফটওয়্যার প্রোগ্রামিং মডেল

DMA AFU-তে একটি সফ্টওয়্যার ড্রাইভার রয়েছে যা আপনি আপনার নিজের হোস্ট অ্যাপ্লিকেশনে ব্যবহার করতে পারেন। fpga_dma.cpp এবং fpga_dma.h fileনিম্নলিখিত অবস্থানে অবস্থিত সফ্টওয়্যার ড্রাইভার প্রয়োগ করুন: $OPAE_PLATFORM_ROOT/hw/samples/dma_afu/sw এই ড্রাইভার নিম্নলিখিত ফাংশন সমর্থন করে:

API বর্ণনা
fpgaCountDMAC চ্যানেল DMA BBB-এর জন্য ডিভাইস ফিচার চেইন স্ক্যান করে এবং সমস্ত উপলব্ধ চ্যানেল গণনা করে।
fpgaDMAOpen DMA চ্যানেলে একটি হ্যান্ডেল খোলে।
fpgaDMAC বন্ধ DMA চ্যানেলের একটি হ্যান্ডেল বন্ধ করে।
fpgaDMATtransferInit DMA স্থানান্তর প্রতিনিধিত্ব করে এমন একটি বস্তুর সূচনা করে।
fpgaDMATtransferReset ডিফল্ট মানগুলিতে ডিএমএ ট্রান্সফার অ্যাট্রিবিউট অবজেক্ট রিসেট করে।
fpgaDMATtransferDestroy ডিএমএ ট্রান্সফার অ্যাট্রিবিউট অবজেক্টকে ধ্বংস করে।
fpgaDMATtransferSetSrc স্থানান্তরের উৎস ঠিকানা সেট করে। এই ঠিকানাটি অবশ্যই 64 বাইট সারিবদ্ধ হতে হবে।
fpgaDMATtransferSetDst স্থানান্তরের গন্তব্য ঠিকানা সেট করে। এই ঠিকানাটি অবশ্যই 64 বাইট সারিবদ্ধ হতে হবে।
fpgaDMATtransferSetLen স্থানান্তরের দৈর্ঘ্য বাইটে সেট করে। নন-প্যাকেট স্থানান্তরের জন্য, আপনাকে অবশ্যই 64 বাইটের একাধিক ট্রান্সফার দৈর্ঘ্য সেট করতে হবে। প্যাকেট স্থানান্তরের জন্য, এটি একটি প্রয়োজনীয়তা নয়।
fpgaDMATtransferSetTransferType স্থানান্তরের ধরন সেট করে। আইনি মান হল:

• HOST_MM_TO_FPGA_MM = TX (AFU হোস্ট)

• FPGA_MM_TO_HOST_MM = RX (হোস্ট করতে AFU)

fpgaDMATtransferSetTransferCallback অ্যাসিঙ্ক্রোনাস স্থানান্তর সমাপ্তির বিজ্ঞপ্তির জন্য কলব্যাক নিবন্ধন করে। আপনি যদি একটি কলব্যাক নির্দিষ্ট করেন, fpgaDMATtransfer অবিলম্বে ফেরত দেয় (অসিঙ্ক্রোনাস স্থানান্তর)।

যদি আপনি একটি কলব্যাক নির্দিষ্ট না করেন, fpgaDMATtransfer স্থানান্তর সম্পূর্ণ হওয়ার পরে ফেরত আসে (সিঙ্ক্রোনাস/ব্লকিং ট্রান্সফার)।

fpgaDMATtransferSetLast শেষ স্থানান্তর নির্দেশ করে যাতে DMA প্রিফেচ করা স্থানান্তর প্রক্রিয়া করা শুরু করতে পারে। ডিফল্ট মান হল পাইপলাইনে 64টি স্থানান্তর ডিএমএ ট্রান্সফারে কাজ শুরু করার আগে।
fpgaDMAT ট্রান্সফার একটি DMA স্থানান্তর সম্পাদন করে।

API, ইনপুট এবং আউটপুট আর্গুমেন্ট সম্পর্কে আরও তথ্যের জন্য, শিরোনাম দেখুন file $OPAE_PLATFORM_ROOT/hw/s অবস্থিত৷amples/dma_afu/sw/fpga_dma.hIntel কর্পোরেশন। সমস্ত অধিকার সংরক্ষিত. ইন্টেল, ইন্টেল লোগো এবং অন্যান্য ইন্টেল চিহ্নগুলি হল ইন্টেল কর্পোরেশন বা এর সহযোগী সংস্থাগুলির ট্রেডমার্ক৷ ইন্টেল তার এফপিজিএ এবং সেমিকন্ডাক্টর পণ্যগুলির কার্যকারিতাকে ইন্টেলের স্ট্যান্ডার্ড ওয়ারেন্টি অনুসারে বর্তমান স্পেসিফিকেশনের জন্য ওয়ারেন্টি দেয়, তবে নোটিশ ছাড়াই যে কোনও সময় যে কোনও পণ্য এবং পরিষেবাতে পরিবর্তন করার অধিকার সংরক্ষণ করে। ইন্টেল লিখিতভাবে স্পষ্টভাবে সম্মত হওয়া ছাড়া এখানে বর্ণিত কোনো তথ্য, পণ্য বা পরিষেবার আবেদন বা ব্যবহারের ফলে উদ্ভূত কোনো দায়িত্ব বা দায়ভার গ্রহণ করে না। 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 ড্রাইভার এটির উপর নির্ভর করে।
  • এস চালানোর জন্য আপনাকে অবশ্যই দুটি 1 জিবি বিশাল পেজ সেট আপ করতে হবে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 FPGA প্রোগ্রামেবল অ্যাক্সিলারেশন কার্ড D5005 ইন্টেল কর্পোরেশনের জন্য দ্রুত শুরু নির্দেশিকা। সমস্ত অধিকার সংরক্ষিত. ইন্টেল, ইন্টেল লোগো এবং অন্যান্য ইন্টেল চিহ্নগুলি হল ইন্টেল কর্পোরেশন বা এর সহযোগী সংস্থাগুলির ট্রেডমার্ক৷ ইন্টেল তার এফপিজিএ এবং সেমিকন্ডাক্টর পণ্যগুলির কার্যকারিতাকে ইন্টেলের স্ট্যান্ডার্ড ওয়ারেন্টি অনুসারে বর্তমান স্পেসিফিকেশনের জন্য ওয়ারেন্টি দেয়, তবে নোটিশ ছাড়াই যে কোনও সময় যে কোনও পণ্য এবং পরিষেবাতে পরিবর্তন করার অধিকার সংরক্ষণ করে। ইন্টেল লিখিতভাবে স্পষ্টভাবে সম্মত হওয়া ছাড়া এখানে বর্ণিত কোনো তথ্য, পণ্য বা পরিষেবার আবেদন বা ব্যবহারের ফলে উদ্ভূত কোনো দায়িত্ব বা দায়ভার গ্রহণ করে না। 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 প্রজন্মের স্ক্রিপ্ট একই বেস সহ AF চিত্র তৈরি করে fileAFU এর প্ল্যাটফর্ম কনফিগারেশন হিসাবে নাম file (.json) অবস্থানে একটি .gbs প্রত্যয় সহ:$OPAE_PLATFORM_ROOT/hw/samples/build_synth/dma_afu_s10.gbs ইন্টেল কর্পোরেশন। সমস্ত অধিকার সংরক্ষিত. ইন্টেল, ইন্টেল লোগো এবং অন্যান্য ইন্টেল চিহ্নগুলি হল ইন্টেল কর্পোরেশন বা এর সহযোগী সংস্থাগুলির ট্রেডমার্ক৷ ইন্টেল তার এফপিজিএ এবং সেমিকন্ডাক্টর পণ্যগুলির কার্যকারিতাকে ইন্টেলের স্ট্যান্ডার্ড ওয়ারেন্টি অনুসারে বর্তমান স্পেসিফিকেশনের জন্য ওয়ারেন্টি দেয়, তবে নোটিশ ছাড়াই যে কোনও সময় যে কোনও পণ্য এবং পরিষেবাতে পরিবর্তন করার অধিকার সংরক্ষণ করে। ইন্টেল লিখিতভাবে স্পষ্টভাবে সম্মত হওয়া ছাড়া এখানে বর্ণিত কোনো তথ্য, পণ্য বা পরিষেবার আবেদন বা ব্যবহারের ফলে উদ্ভূত কোনো দায়িত্ব বা দায়ভার গ্রহণ করে না। Intel গ্রাহকদের কোনো প্রকাশিত তথ্যের উপর নির্ভর করার আগে এবং পণ্য বা পরিষেবার জন্য অর্ডার দেওয়ার আগে ডিভাইসের স্পেসিফিকেশনের সর্বশেষ সংস্করণ পেতে পরামর্শ দেওয়া হয়। *অন্যান্য নাম এবং ব্র্যান্ড অন্যদের সম্পত্তি হিসাবে দাবি করা যেতে পারে।

AFU প্রাক্তন অনুকরণample

Intel সুপারিশ করে যে আপনি Intel Accelerator Functional Unit (AFU) সিমুলেশন এনভায়রনমেন্ট (ASE) কুইক স্টার্ট গাইড দেখুন যাতে আপনার Intel FPGA PAC অনুরূপ প্রাক্তন অনুকরণের সাথে পরিচিত হয়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হার্ডওয়্যার সিমুলেটর থেকে আউটপুট:

[সিম] ** মনোযোগ: সফ্টওয়্যার অ্যাপ্লিকেশন চালানোর আগে ** [সিম] টার্মিনালে env(ASE_WORKDIR) সেট করুন যেখানে অ্যাপ্লিকেশন চলবে (কপি-এন্ড-পেস্ট) => [সিম] $শেল | চালান:[SIM] ———+———————————————— [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 গ্রাহকদের কোনো প্রকাশিত তথ্যের উপর নির্ভর করার আগে এবং পণ্য বা পরিষেবার জন্য অর্ডার দেওয়ার আগে ডিভাইসের স্পেসিফিকেশনের সর্বশেষ সংস্করণ পেতে পরামর্শ দেওয়া হয়। *অন্যান্য নাম এবং ব্র্যান্ড অন্যদের সম্পত্তি হিসাবে দাবি করা যেতে পারে।

AFU প্রাক্তন অনুকরণample

  1. হার্ডওয়্যার সিমুলেশনের উপরের ধাপগুলি থেকে টার্মিনাল উইন্ডোতে পরিবেশ সেটআপ স্ট্রিং (আপনার শেলের জন্য উপযুক্ত স্ট্রিং চয়ন করুন) অনুলিপি করুন। s এর নিচের লাইনগুলো দেখুনampহার্ডওয়্যার সিমুলেটর থেকে আউটপুট। [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

সম্পর্কিত তথ্য
ইন্টেল অ্যাক্সিলারেটর ফাংশনাল ইউনিট (AFU) সিমুলেশন এনভায়রনমেন্ট (ASE) কুইক স্টার্ট ইউজার গাইড

উন্নত DMA কর্মক্ষমতা জন্য অপ্টিমাইজেশান

fpga_dma_test.cpp-এ NUMA (নন-ইউনিফর্ম মেমরি অ্যাক্সেস) অপ্টিমাইজেশনের বাস্তবায়ন প্রসেসরকে অ-স্থানীয় মেমরি (অন্য প্রসেসরে মেমরি স্থানীয়) অ্যাক্সেস করার চেয়ে দ্রুত নিজস্ব স্থানীয় মেমরি অ্যাক্সেস করতে দেয়। একটি সাধারণ NUMA কনফিগারেশন নীচের চিত্রে দেখানো হয়েছে৷ স্থানীয় অ্যাক্সেস একটি কোর থেকে মেমরি স্থানীয় একই কোরে অ্যাক্সেস প্রতিনিধিত্ব করে। নোড 0-এর একটি কোর যখন নোড 1-এর স্থানীয় মেমরিতে থাকে এমন মেমরি অ্যাক্সেস করে তখন রিমোট অ্যাক্সেসটি নেওয়া পথকে চিত্রিত করে।

সাধারণ NUMA কনফিগারেশন

Intel.-FPGA-প্রোগ্রামেবল-এক্সিলারেশন-কার্ড-D5005-fig-5

আপনার পরীক্ষা অ্যাপ্লিকেশনে NUMA অপ্টিমাইজেশান বাস্তবায়ন করতে নিম্নলিখিত কোড ব্যবহার করুন:

// অনুরোধ করা হলে যথাযথ অ্যাফিনিটি সেট আপ করুন যদি (cpu_affinity || memory_affinity) {unsigned 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(&টপোলজি); hwloc_topology_set_flags(টপোলজি, HWLOC_TOPOLOGY_FLAG_IO_DEVICES); ইন্টেল কর্পোরেশন। সমস্ত অধিকার সংরক্ষিত. ইন্টেল, ইন্টেল লোগো এবং অন্যান্য ইন্টেল চিহ্নগুলি হল ইন্টেল কর্পোরেশন বা এর সহযোগী সংস্থাগুলির ট্রেডমার্ক৷ ইন্টেল তার এফপিজিএ এবং সেমিকন্ডাক্টর পণ্যগুলির কার্যকারিতাকে ইন্টেলের স্ট্যান্ডার্ড ওয়ারেন্টি অনুসারে বর্তমান স্পেসিফিকেশনের জন্য ওয়ারেন্টি দেয়, তবে নোটিশ ছাড়াই যে কোনও সময় যে কোনও পণ্য এবং পরিষেবাতে পরিবর্তন করার অধিকার সংরক্ষণ করে। ইন্টেল লিখিতভাবে স্পষ্টভাবে সম্মত হওয়া ছাড়া এখানে বর্ণিত কোনো তথ্য, পণ্য বা পরিষেবার আবেদন বা ব্যবহারের ফলে উদ্ভূত কোনো দায়িত্ব বা দায়ভার গ্রহণ করে না। 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->নোডসেট); printf(“NODESET হল %s\n”, str);#endif if (মেমরি_অ্যাফিনিটি) { #if HWLOC_API_VERSION > 0x00020000 retval = hwloc_set_membind(টপোলজি, obj2->নোডসেট,HWLOC_MEMBIND, HWLOC_MEMBIND, HWLOC_MEMBIND, HB_MEMBIND_MEMBIND, HW_MEMBIND_MEMBIND, HW_MEMBIND,, #else retval =hwloc_set_membind_nodeset(topology, 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)

 

এএফ ইমেজ সংশোধন file বিভাগে নাম DMA AFU কম্পাইল করা হচ্ছে Example.

 

 

2020.04.17

2.0.1 (Intel এর সাথে সমর্থিত

কোয়ার্টাস প্রাইম প্রো সংস্করণ সংস্করণ 19.2)

 

 

মধ্যে একটি বিবৃতি সংশোধন উদ্দেশ্য শ্রোতা বিভাগ

 

 

2020.02.20

2.0.1 (Intel এর সাথে সমর্থিত

কোয়ার্টাস প্রাইম প্রো সংস্করণ সংস্করণ 19.2)

 

 

স্থির টাইপো।

 

 

 

 

2019.11.04

 

 

2.0.1 (Intel এর সাথে সমর্থিত

কোয়ার্টাস প্রাইম প্রো সংস্করণ সংস্করণ 19.2)

• বিভাগে প্রিবিল্ড AFU-এর সাথে FPGA কনফিগার করার সময় fpgaconf-কে fpgasupdate দিয়ে প্রতিস্থাপন করা হয়েছে DMA এএফইউ এক্স চালাচ্ছেনample.

• সাবটাইটেল যোগ করা হয়েছে ইন্টেল FPGA প্রোগ্রামেবল অ্যাক্সিলারেশন কার্ড D5005 নথির শিরোনামে।

• এনভায়রনমেন্ট ভেরিয়েবল $OPAE_PLATFORM_ROOT যোগ করা হয়েছে।

• পরিবর্তিত বিভাগ সফটওয়্যার প্রোগ্রামিং মডেল ছোটখাট সম্পাদনার জন্য।

• নতুন বিভাগ যোগ করা হয়েছে DMA AFU কম্পাইল করা হচ্ছে Example.

• পরিবর্তিত বিভাগ উন্নত DMA কর্মক্ষমতা জন্য অপ্টিমাইজেশান ছোটখাট সম্পাদনার জন্য।

 

 

2019.08.05

2.0 (Intel এর সাথে সমর্থিত

কোয়ার্টাস প্রাইম প্রো সংস্করণ 18.1.2)

 

 

প্রাথমিক মুক্তি।

ইন্টেল কর্পোরেশন। সমস্ত অধিকার সংরক্ষিত. ইন্টেল, ইন্টেল লোগো এবং অন্যান্য ইন্টেল চিহ্নগুলি হল ইন্টেল কর্পোরেশন বা এর সহযোগী সংস্থাগুলির ট্রেডমার্ক৷ ইন্টেল তার এফপিজিএ এবং সেমিকন্ডাক্টর পণ্যগুলির কার্যকারিতাকে ইন্টেলের স্ট্যান্ডার্ড ওয়ারেন্টি অনুসারে বর্তমান স্পেসিফিকেশনের জন্য ওয়ারেন্টি দেয়, তবে নোটিশ ছাড়াই যে কোনও সময় যে কোনও পণ্য এবং পরিষেবাতে পরিবর্তন করার অধিকার সংরক্ষণ করে। ইন্টেল লিখিতভাবে স্পষ্টভাবে সম্মত হওয়া ছাড়া এখানে বর্ণিত কোনো তথ্য, পণ্য বা পরিষেবার আবেদন বা ব্যবহারের ফলে উদ্ভূত কোনো দায়িত্ব বা দায়ভার গ্রহণ করে না। Intel গ্রাহকদের কোনো প্রকাশিত তথ্যের উপর নির্ভর করার আগে এবং পণ্য বা পরিষেবার জন্য অর্ডার দেওয়ার আগে ডিভাইসের স্পেসিফিকেশনের সর্বশেষ সংস্করণ পেতে পরামর্শ দেওয়া হয়।

  • অন্যান্য নাম এবং ব্র্যান্ডগুলি অন্যের সম্পত্তি হিসাবে দাবি করা যেতে পারে।

 

দলিল/সম্পদ

ইন্টেল FPGA প্রোগ্রামেবল অ্যাক্সিলারেশন কার্ড D5005 [পিডিএফ] ব্যবহারকারীর নির্দেশিকা
FPGA প্রোগ্রামেবল অ্যাক্সিলারেশন কার্ড, D5005, FPGA প্রোগ্রামেবল অ্যাক্সিলারেশন কার্ড D5005, DMA অ্যাক্সিলারেটর ফাংশনাল ইউনিট

তথ্যসূত্র

একটি মন্তব্য করুন

আপনার ইমেল ঠিকানা প্রকাশ করা হবে না. প্রয়োজনীয় ক্ষেত্রগুলি চিহ্নিত করা হয়েছে *