ઇન્ટેલ FPGA પ્રોગ્રામેબલ એક્સિલરેશન કાર્ડ D5005
આ દસ્તાવેજ વિશે
આ દસ્તાવેજ ડાયરેક્ટ મેમરી એક્સેસ (DMA) એક્સિલરેટર ફંક્શનલ યુનિટ (AFU) અમલીકરણ અને હાર્ડવેર અથવા સિમ્યુલેશનમાં ચલાવવા માટે ડિઝાઇન કેવી રીતે બનાવવી તેનું વર્ણન કરે છે.
ઇચ્છિત પ્રેક્ષકો
ઇચ્છિત પ્રેક્ષકોમાં હાર્ડવેર અથવા સોફ્ટવેર ડેવલપર્સનો સમાવેશ થાય છે જેને ઇન્ટેલ FPGA ઉપકરણ સાથે જોડાયેલ મેમરીમાં સ્થાનિક રીતે ડેટા બફર કરવા માટે એક્સિલરેટર ફંક્શન (AF)ની જરૂર હોય છે.
સંમેલનો
દસ્તાવેજ સંમેલનો
સંમેલન | વર્ણન |
# | આદેશની આગળ આવે છે જે સૂચવે છે કે આદેશ રૂટ તરીકે દાખલ કરવાનો છે. |
$ | સૂચવે છે કે આદેશ વપરાશકર્તા તરીકે દાખલ કરવાનો છે. |
આ ફોન્ટ | Fileનામો, આદેશો અને કીવર્ડ આ ફોન્ટમાં છાપવામાં આવે છે. આ ફોન્ટમાં લાંબી કમાન્ડ લાઇન પ્રિન્ટ થાય છે. જો કે લાંબી કમાન્ડ લાઈનો આગલી લાઈનમાં લપેટાઈ શકે છે, રીટર્ન એ આદેશનો ભાગ નથી; એન્ટર દબાવશો નહીં. |
પ્લેસહોલ્ડર ટેક્સ્ટ સૂચવે છે કે જે કોણ કૌંસ વચ્ચે દેખાય છે તે યોગ્ય મૂલ્ય સાથે બદલવું આવશ્યક છે. કોણ કૌંસ દાખલ કરશો નહીં. |
સંક્ષિપ્ત શબ્દો
સંક્ષિપ્ત શબ્દો
સંક્ષિપ્ત શબ્દો | વિસ્તરણ | વર્ણન |
AF | પ્રવેગક કાર્ય | સંકલિત હાર્ડવેર એક્સિલરેટર ઇમેજ FPGA લોજિકમાં અમલમાં છે જે એપ્લિકેશનને વેગ આપે છે. |
એએફયુ | પ્રવેગક કાર્યાત્મક એકમ | FPGA લોજિકમાં અમલમાં આવેલ હાર્ડવેર એક્સિલરેટર જે કામગીરીને સુધારવા માટે CPU માંથી એપ્લિકેશન માટે કોમ્પ્યુટેશનલ ઑપરેશન ઑફલોડ કરે છે. |
API | એપ્લિકેશન પ્રોગ્રામિંગ ઈન્ટરફેસ | સૉફ્ટવેર ઍપ્લિકેશનો બનાવવા માટે સબરૂટિન વ્યાખ્યાઓ, પ્રોટોકોલ્સ અને સાધનોનો સમૂહ. |
સીસીઆઈ-પી | કોર કેશ ઈન્ટરફેસ | CCI-P એ પ્રમાણભૂત ઇન્ટરફેસ છે જે AFU નો ઉપયોગ હોસ્ટ સાથે વાતચીત કરવા માટે કરે છે. |
ડીએફએચ | ઉપકરણ લક્ષણ હેડર | સુવિધાઓ ઉમેરવાની એક્સ્ટેન્સિબલ રીત પ્રદાન કરવા માટે ફીચર હેડરોની લિંક કરેલી સૂચિ બનાવે છે. |
ચાલુ રાખ્યું… |
ઇન્ટેલ કોર્પોરેશન. બધા હકો અમારી પાસે રાખેલા છે. ઇન્ટેલ, ઇન્ટેલ લોગો અને અન્ય ઇન્ટેલ ચિહ્નો ઇન્ટેલ કોર્પોરેશન અથવા તેની પેટાકંપનીઓના ટ્રેડમાર્ક છે. ઇન્ટેલ તેના FPGA અને સેમિકન્ડક્ટર ઉત્પાદનોના પ્રદર્શનને ઇન્ટેલની માનક વોરંટી અનુસાર વર્તમાન સ્પષ્ટીકરણો માટે વોરંટી આપે છે, પરંતુ સૂચના વિના કોઈપણ સમયે કોઈપણ ઉત્પાદનો અને સેવાઓમાં ફેરફાર કરવાનો અધિકાર અનામત રાખે છે. Intel દ્વારા લેખિતમાં સ્પષ્ટપણે સંમત થયા સિવાય અહીં વર્ણવેલ કોઈપણ માહિતી, ઉત્પાદન અથવા સેવાના એપ્લિકેશન અથવા ઉપયોગથી ઉદ્ભવતી કોઈ જવાબદારી અથવા જવાબદારી સ્વીકારતી નથી. ઇન્ટેલ ગ્રાહકોને સલાહ આપવામાં આવે છે કે તેઓ કોઈપણ પ્રકાશિત માહિતી પર આધાર રાખતા પહેલા અને ઉત્પાદનો અથવા સેવાઓ માટે ઓર્ડર આપતા પહેલા ઉપકરણ વિશિષ્ટતાઓનું નવીનતમ સંસ્કરણ પ્રાપ્ત કરે. *અન્ય નામો અને બ્રાન્ડનો દાવો અન્યની મિલકત તરીકે થઈ શકે છે.
સંક્ષિપ્ત શબ્દો | વિસ્તરણ | વર્ણન |
FIM | FPGA ઈન્ટરફેસ મેનેજર | FPGA હાર્ડવેર જેમાં FPGA ઈન્ટરફેસ યુનિટ (FIU) અને મેમરી, નેટવર્કીંગ વગેરે માટે બાહ્ય ઈન્ટરફેસ છે.
એક્સિલરેટર ફંક્શન (AF) રન ટાઇમ પર FIM સાથે ઇન્ટરફેસ કરે છે. |
FIU | FPGA ઈન્ટરફેસ યુનિટ | FIU એ પ્લેટફોર્મ ઈન્ટરફેસ લેયર છે જે PCIe*, UPI અને AFU-સાઇડ ઈન્ટરફેસ જેમ કે CCI-P જેવા પ્લેટફોર્મ ઈન્ટરફેસ વચ્ચે પુલનું કામ કરે છે. |
એમપીએફ | મેમરી પ્રોપર્ટીઝ ફેક્ટરી | MPF એ બેઝિક બિલ્ડીંગ બ્લોક (BBB) છે જેનો ઉપયોગ AFU FIU સાથેના વ્યવહારો માટે CCI-P ટ્રાફિકને આકાર આપવાની કામગીરી પૂરી પાડવા માટે કરી શકે છે. |
પ્રવેગક શબ્દાવલિ
FPGAs ગ્લોસરી સાથે Intel® Xeon® CPU માટે પ્રવેગક સ્ટેક
મુદત | સંક્ષેપ | વર્ણન |
FPGAs સાથે Intel Xeon® CPU માટે Intel® Acceleration Stack | પ્રવેગક સ્ટેક | સોફ્ટવેર, ફર્મવેર અને ટૂલ્સનો સંગ્રહ જે Intel FPGA અને Intel Xeon પ્રોસેસર વચ્ચે પ્રદર્શન-ઑપ્ટિમાઇઝ કનેક્ટિવિટી પ્રદાન કરે છે. |
ઇન્ટેલ FPGA પ્રોગ્રામેબલ એક્સિલરેશન કાર્ડ | ઇન્ટેલ FPGA PAC | PCIe FPGA એક્સિલરેટર કાર્ડ.
એક FPGA ઈન્ટરફેસ મેનેજર (FIM) ધરાવે છે જે PCIe બસ પર Intel Xeon પ્રોસેસર સાથે જોડાય છે. |
- DMA એક્સિલરેટર ફંક્શનલ યુનિટ વપરાશકર્તા માર્ગદર્શિકા: Intel FPGA પ્રોગ્રામેબલ એક્સિલરેશન કાર્ડ D5005
DMA AFU વર્ણન
પરિચય
ડાયરેક્ટ મેમરી એક્સેસ (DMA) AFU example બતાવે છે કે હોસ્ટ પ્રોસેસર અને FPGA વચ્ચે મેમરી ટ્રાન્સફરનું સંચાલન કેવી રીતે કરવું. હોસ્ટ મેમરી અને FPGA લોકલ મેમરી વચ્ચે ડેટા ખસેડવા માટે તમે DMA AFU ને તમારી ડિઝાઇનમાં એકીકૃત કરી શકો છો. DMA AFU માં નીચેના સબમોડ્યુલ્સનો સમાવેશ થાય છે:
- મેમરી પ્રોપર્ટીઝ ફેક્ટરી (MPF) બેઝિક બિલ્ડીંગ બ્લોક (BBB)
- Avalon® Memory-Mapped (Avalon-MM) એડેપ્ટર માટે કોર કેશ ઈન્ટરફેસ (CCI-P)
- DMA ટેસ્ટ સિસ્ટમ જેમાં DMA BBB હોય છે
આ સબમોડ્યુલ્સ નીચે DMA AFU હાર્ડવેર ઘટકો વિષયમાં વધુ વિગતવાર વર્ણવેલ છે.
સંબંધિત માહિતી
- પૃષ્ઠ 6 પર DMA AFU હાર્ડવેર ઘટકો
- એવલોન ઈન્ટરફેસ વિશિષ્ટતાઓ
એવલોન-એમએમ પ્રોટોકોલ વિશે વધુ માહિતી માટે, જેમાં વ્યવહારો વાંચવા અને લખવા માટેના ટાઇમિંગ ડાયાગ્રામનો સમાવેશ થાય છે.
DMA AFU સોફ્ટવેર પેકેજ
FPGAs પેકેજ સાથે Intel Xeon CPU માટે ઇન્ટેલ એક્સિલરેશન સ્ટેક file (*.tar.gz), માં DMA AFU ભૂતપૂર્વનો સમાવેશ થાય છેample આ માજીample યુઝર સ્પેસ ડ્રાઈવર પૂરો પાડે છે. હોસ્ટ એપ્લિકેશન આ ડ્રાઈવરનો ઉપયોગ કરે છે કે DMA હોસ્ટ અને FPGA મેમરી વચ્ચે ડેટાને ખસેડે છે. હાર્ડવેર દ્વિસંગી, સ્ત્રોતો, અને વપરાશકર્તા જગ્યા ડ્રાઈવર નીચેની ડિરેક્ટરીમાં ઉપલબ્ધ છે: $OPAE_PLATFORM_ROOT/hw/sampલેસ/dma_afu . DMA AFU સાથે પ્રયોગ કરતા પહેલા, તમારે Open Programmable Acceleration Engine (OPAE) સોફ્ટવેર પેકેજ ઇન્સ્ટોલ કરવું આવશ્યક છે. ઇન્સ્ટોલેશન સૂચનાઓ માટે Intel FPGA પ્રોગ્રામેબલ એક્સિલરેશન કાર્ડ D5005 માટે ઇન્ટેલ એક્સિલરેશન સ્ટેક ક્વિક સ્ટાર્ટ ગાઇડમાં OPAE સૉફ્ટવેર પૅકેજ ઇન્સ્ટોલ કરવાનો સંદર્ભ લો. આ ક્વિક સ્ટાર્ટ માર્ગદર્શિકામાં ઓપન પ્રોગ્રામેબલ એક્સિલરેશન એન્જિન (OPAE) અને AFU ની ગોઠવણી વિશેની મૂળભૂત માહિતી પણ શામેલ છે. ઓપન પ્રોગ્રામેબલ એક્સિલરેશન એન્જિન (OPAE) સોફ્ટવેર પેકેજ ઇન્સ્ટોલ કર્યા પછી, જેમample હોસ્ટ એપ્લિકેશન અને DMA AFU વપરાશકર્તા જગ્યા ડ્રાઈવર નીચેની ડિરેક્ટરીમાં ઉપલબ્ધ છે: $OPAE_PLATFORM_ROOT/hw/samples/dma_afu/sw. એસ ચલાવવા માટેample હોસ્ટ એપ્લિકેશન, તમારા Intel FPGA PAC D5005 હાર્ડવેર પર fpga_dma_test, DMA AFU Ex રનિંગ વિભાગમાંનાં પગલાંનો સંદર્ભ લોample ઇન્ટેલ કોર્પોરેશન. બધા હકો અમારી પાસે રાખેલા છે. ઇન્ટેલ, ઇન્ટેલ લોગો અને અન્ય ઇન્ટેલ ચિહ્નો ઇન્ટેલ કોર્પોરેશન અથવા તેની પેટાકંપનીઓના ટ્રેડમાર્ક છે. ઇન્ટેલ તેના FPGA અને સેમિકન્ડક્ટર ઉત્પાદનોના પ્રદર્શનને ઇન્ટેલની માનક વોરંટી અનુસાર વર્તમાન સ્પષ્ટીકરણો માટે વોરંટી આપે છે, પરંતુ સૂચના વિના કોઈપણ સમયે કોઈપણ ઉત્પાદનો અને સેવાઓમાં ફેરફાર કરવાનો અધિકાર અનામત રાખે છે. Intel દ્વારા લેખિતમાં સ્પષ્ટપણે સંમત થયા સિવાય અહીં વર્ણવેલ કોઈપણ માહિતી, ઉત્પાદન અથવા સેવાના એપ્લિકેશન અથવા ઉપયોગથી ઉદ્ભવતી કોઈ જવાબદારી અથવા જવાબદારી સ્વીકારતી નથી. ઇન્ટેલ ગ્રાહકોને સલાહ આપવામાં આવે છે કે તેઓ કોઈપણ પ્રકાશિત માહિતી પર આધાર રાખતા પહેલા અને ઉત્પાદનો અથવા સેવાઓ માટે ઓર્ડર આપતા પહેલા ઉપકરણ વિશિષ્ટતાઓનું નવીનતમ સંસ્કરણ પ્રાપ્ત કરે. *અન્ય નામો અને બ્રાન્ડનો દાવો અન્યની મિલકત તરીકે થઈ શકે છે.
સંબંધિત માહિતી
- Intel FPGA પ્રોગ્રામેબલ એક્સિલરેશન કાર્ડ D5005 માટે ઇન્ટેલ એક્સિલરેશન સ્ટેક ક્વિક સ્ટાર્ટ ગાઇડ
- OPAE સોફ્ટવેર પેકેજ ઇન્સ્ટોલ કરી રહ્યું છે
DMA AFU હાર્ડવેર ઘટકો
DMA AFU FPGA ઇન્ટરફેસ યુનિટ (FIU) અને FPGA મેમરી સાથે ઇન્ટરફેસ કરે છે. FPGA મેમરીના વિગતવાર સ્પષ્ટીકરણો માટે Intel FPGA પ્રોગ્રામેબલ એક્સિલરેશન કાર્ડ D5005 માટે FPGA ઇન્ટરફેસ મેનેજર ડેટા શીટનો સંદર્ભ લો. હાલમાં ઉપલબ્ધ હાર્ડવેર આ મેમરી રૂપરેખાંકન નક્કી કરે છે. ભાવિ હાર્ડવેર વિવિધ મેમરી રૂપરેખાંકનોને સપોર્ટ કરી શકે છે. તમે નીચેના સ્ત્રોત અને ગંતવ્ય સ્થાનો વચ્ચેના ડેટાની નકલ કરવા માટે DMA AFU નો ઉપયોગ કરી શકો છો:
- ઉપકરણ FPGA મેમરી માટે હોસ્ટ
- યજમાનને ઉપકરણ FPGA મેમરી
પ્લેટફોર્મ ડિઝાઇનર સિસ્ટમ, $OPAE_PLATFORM_ROOT/hw/sampલેસ/ 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 એક્સિલરેટર ફંક્શનલ યુનિટ વપરાશકર્તા માર્ગદર્શિકા: Intel FPGA પ્રોગ્રામેબલ એક્સિલરેશન કાર્ડ D5005
DMA AFU હાર્ડવેર બ્લોક ડાયાગ્રામ
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 ની ફરતે રેપર તરીકે કામ કરે છે જેથી DMA માસ્ટર્સને AFU માં બાકીના તર્ક સાથે બહાર આવે. તે DMA BBB અને CCI-P થી Avalon Adapter વચ્ચેનું ઇન્ટરફેસ પૂરું પાડે છે. તે DMA BBB અને સ્થાનિક FPGA SDRAM બેંકો વચ્ચે ઇન્ટરફેસ પણ પ્રદાન કરે છે.
સંબંધિત માહિતી
Intel FPGA પ્રોગ્રામેબલ એક્સિલરેશન કાર્ડ D5005 માટે FPGA ઇન્ટરફેસ મેનેજર ડેટા શીટ
ડીએમએ ટેસ્ટ સિસ્ટમ
DMA ટેસ્ટ સિસ્ટમ DMA BBB ને CCI-P અનુકૂલન અને સ્થાનિક FPGA મેમરી સહિતની બાકીની FPGA ડિઝાઇન સાથે જોડે છે.
DMA ટેસ્ટ સિસ્ટમ બ્લોક ડાયાગ્રામ
આ બ્લોક ડાયાગ્રામ DMA ટેસ્ટ સિસ્ટમના આંતરિક ભાગને દર્શાવે છે. ડીએમએ ટેસ્ટ સિસ્ટમ પૃષ્ઠ 1 પર આકૃતિ 7 માં મોનોલિથિક બ્લોક તરીકે બતાવવામાં આવી છે.
DMA ટેસ્ટ સિસ્ટમમાં નીચેના આંતરિક મોડ્યુલોનો સમાવેશ થાય છે:
- ફાર રીચ બ્રિજ/પાઇપલાઇન બ્રિજ: એડજસ્ટેબલ લેટન્સી સાથેનો પાઇપલાઇન બ્રિજ જેમાં ટોપોલોજીને નિયંત્રિત કરવા અને Fmax ડિઝાઇનને સુધારવાનો સમાવેશ થાય છે.
- DMA AFU ડિવાઇસ ફીચર હેડર (DFH): આ DMA AFU માટે DFH છે. આ DFH ઑફસેટ 0x100 (DMA BBB DFH) પર સ્થિત આગામી DFH તરફ નિર્દેશ કરે છે.
- નલ DFH: આ ઘટક DFH લિંક કરેલ સૂચિને સમાપ્ત કરે છે. જો તમે ડિઝાઇનમાં વધુ DMA BBB ઉમેરો છો, તો ખાતરી કરો કે નલ DFH આધાર સરનામું DFH લિંક કરેલ-સૂચિના અંતે સ્થિત છે.
- MA બેઝિક બિલ્ડીંગ બ્લોક (BBB): આ બ્લોક હોસ્ટ અને સ્થાનિક FPGA મેમરી વચ્ચે ડેટાને ખસેડે છે. તે વર્ણનકર્તા સાંકળોને ઍક્સેસ કરવા માટે હોસ્ટ મેમરીને પણ ઍક્સેસ કરે છે.
DMA BBB
DMA BBB સબસિસ્ટમ એવલોન-એમએમ વ્યવહારોનો ઉપયોગ કરીને સ્રોતથી ગંતવ્ય સરનામાં પર ડેટા સ્થાનાંતરિત કરે છે. DMA ડ્રાઈવર સિસ્ટમની અંદરના વિવિધ ઘટકોના નિયંત્રણ અને સ્થિતિ રજિસ્ટરને ઍક્સેસ કરીને DMA BBB ને નિયંત્રિત કરે છે. ડીએમએ ડ્રાઇવર ટ્રાન્સફર વર્ણનકર્તાઓને સંચાર કરવા માટે વહેંચાયેલ મેમરીનો ઉપયોગ કરીને DMA BBB ને પણ નિયંત્રિત કરે છે. DMA BBB ઑફસેટ 0x0 પર FPGA મેમરીમાં ડેટા ઍક્સેસ કરે છે. DMA BBB ઑફસેટ 0x1_0000_0000_0000 પર હોસ્ટ મેમરીમાં ડેટા અને વર્ણનકર્તાઓને ઍક્સેસ કરે છે.
DMA BBB પ્લેટફોર્મ ડિઝાઇનર બ્લોક ડાયાગ્રામ
આ બ્લોક ડાયાગ્રામ કેટલાક આંતરિક પાઇપલાઇન બ્રિજ આઇપી કોરોને બાકાત રાખે છે.
DMA એક્સિલરેટર ફંક્શનલ યુનિટ વપરાશકર્તા માર્ગદર્શિકા: Intel FPGA પ્રોગ્રામેબલ એક્સિલરેશન કાર્ડ D5005
DMA AFU વર્ણન
DMA BBB પ્લેટફોર્મ ડિઝાઇનરમાં ઘટકો નીચેના કાર્યોને અમલમાં મૂકે છે:
- ફાર રીચ બ્રિજ/પાઈપલાઈન બ્રિજ: એડજસ્ટેબલ લેટન્સી સાથેનો પાઇપલાઇન બ્રિજ ટોપોલોજીને નિયંત્રિત કરવા અને Fmax ડિઝાઇનને બહેતર બનાવવાનો સમાવેશ કરે છે.
- MA BBB DFH: આ DMA BBB માટે ઉપકરણ લક્ષણ હેડર છે. આ DFH ઑફસેટ 0x100 (નલ DFH) પર સ્થિત આગામી DFH તરફ નિર્દેશ કરે છે.
- વર્ણનકર્તા અગ્રભાગ: વર્ણનકર્તાઓ મેળવવા અને તેમને ડિસ્પેચરને સ્થાનાંતરિત કરવા માટે જવાબદાર. જ્યારે DMA ટ્રાન્સફર પૂર્ણ થાય છે ત્યારે ફ્રન્ટએન્ડ ડિસ્પેચર પાસેથી સ્ટેટસ ફોર્મેશન મેળવે છે અને હોસ્ટ મેમરીમાં વર્ણનકર્તાને ઓવરરાઈટ કરે છે.
- ડિસ્પેચર: આ બ્લોક રીડ એન્ડ રાઈટ માસ્ટરને ડીએમએ ટ્રાન્સફર વિનંતીઓનું શેડ્યૂલ કરે છે.
- વાંચો માસ્ટર: આ બ્લોક હોસ્ટ અથવા સ્થાનિક FPGA મેમરીમાંથી ડેટા વાંચવા અને તેને રાઈટ માસ્ટરને સ્ટ્રીમિંગ ડેટા તરીકે મોકલવા માટે જવાબદાર છે.
- માસ્ટર લખો: આ બ્લોક રીડ માસ્ટર પાસેથી સ્ટ્રીમિંગ ડેટા મેળવવા અને હોસ્ટ અથવા સ્થાનિક FPGA મેમરીમાં સમાવિષ્ટો લખવા માટે જવાબદાર છે.
નકશો અને સરનામાંની જગ્યાઓ રજીસ્ટર કરો
DMA AFU બે મેમરીને સપોર્ટ કરે છે views: DMA view અને યજમાન view. ડીએમએ 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 મેમરી નકશો
બાઈટ એડ્રેસ ઓફસેટ્સ | નામ | બાઇટ્સમાં સ્પેન | વર્ણન |
0x0 | DMA AFU DFH | 0x40 | DMA AFU માટે ઉપકરણ સુવિધા હેડર. ID_L 0x9081f88b8f655caa પર સેટ છે અને ID_H 0x331db30c988541ea પર સેટ છે. DMA AFU DFH ને આગામી DFH (DMA BBB DFH) શોધવા માટે ઑફસેટ 0x100 પર નિર્દેશ કરવા માટે પેરામીટરાઇઝ્ડ કરવામાં આવ્યું છે. તમારે DMA AFU DFH ના મૂળ સરનામામાં ફેરફાર કરવો જોઈએ નહીં કારણ કે તે CCIP સ્પષ્ટીકરણ દ્વારા વ્યાખ્યાયિત કરેલ સરનામાં 0x0 પર સ્થિત હોવું આવશ્યક છે. |
0x100 | DMA BBB | 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 ડ્રાઇવર અને ટેસ્ટ એપ્લિકેશન આ હાર્ડવેરનો ઉપયોગ કરતા નથી. |
ઇન્ટેલ કોર્પોરેશન. બધા હકો અમારી પાસે રાખેલા છે. ઇન્ટેલ, ઇન્ટેલ લોગો અને અન્ય ઇન્ટેલ ચિહ્નો ઇન્ટેલ કોર્પોરેશન અથવા તેની પેટાકંપનીઓના ટ્રેડમાર્ક છે. ઇન્ટેલ તેના FPGA અને સેમિકન્ડક્ટર ઉત્પાદનોના પ્રદર્શનને ઇન્ટેલની માનક વોરંટી અનુસાર વર્તમાન સ્પષ્ટીકરણો માટે વોરંટી આપે છે, પરંતુ સૂચના વિના કોઈપણ સમયે કોઈપણ ઉત્પાદનો અને સેવાઓમાં ફેરફાર કરવાનો અધિકાર અનામત રાખે છે. Intel દ્વારા લેખિતમાં સ્પષ્ટપણે સંમત થયા સિવાય અહીં વર્ણવેલ કોઈપણ માહિતી, ઉત્પાદન અથવા સેવાના એપ્લિકેશન અથવા ઉપયોગથી ઉદ્ભવતી કોઈ જવાબદારી અથવા જવાબદારી સ્વીકારતી નથી. ઇન્ટેલ ગ્રાહકોને સલાહ આપવામાં આવે છે કે તેઓ કોઈપણ પ્રકાશિત માહિતી પર આધાર રાખતા પહેલા અને ઉત્પાદનો અથવા સેવાઓ માટે ઓર્ડર આપતા પહેલા ઉપકરણ વિશિષ્ટતાઓનું નવીનતમ સંસ્કરણ પ્રાપ્ત કરે. *અન્ય નામો અને બ્રાન્ડનો દાવો અન્યની મિલકત તરીકે થઈ શકે છે.
નકશો અને સરનામાંની જગ્યાઓ રજીસ્ટર કરો
DMA BBB મેમરી નકશો
નીચેના બાઈટ એડ્રેસ ડીએમએ AFU સિસ્ટમ (0x100) માં DMA BBB બેઝ એડ્રેસમાંથી સંબંધિત ઑફસેટ્સ છે.
બાઈટ એડ્રેસ ઓફસેટ્સ | નામ | બાઇટ્સમાં સ્પેન | વર્ણન |
0x0 | DMA BBB DFH | 0x40 | DMA AFU માટે ઉપકરણ સુવિધા હેડર. ID_L 0xa9149a35bace01ea અને ID_H 0xef82def7f6ec40fc પર સેટ કરેલ છે. DMA BBB DFH ને આગામી DFH ઑફસેટ માટે 0x100 પર નિર્દેશ કરવા માટે પેરામીટરાઇઝ્ડ કરવામાં આવ્યું છે. આ આગામી ઑફસેટ અન્ય DMA BBB, અન્ય DFH (આ ડિઝાઇનમાં સમાવિષ્ટ નથી), અથવા NULL DFH હોઈ શકે છે. |
0x40 | ડિસ્પેચર | 0x40 | ડિસ્પેચર માટે નિયંત્રણ પોર્ટ. DMA ડ્રાઇવર આ સ્થાનનો ઉપયોગ DMA ને નિયંત્રિત કરવા અથવા તેની સ્થિતિને પૂછવા માટે કરે છે. |
0x80 | વર્ણનકર્તા ફ્રન્ટએન્ડ | 0x40 | વર્ણનકર્તા ફ્રન્ટએન્ડ એ એક કસ્ટમ ઘટક છે જે હોસ્ટ મેમરીમાંથી વર્ણનકર્તાઓને વાંચે છે અને જ્યારે DMA ટ્રાન્સફર પૂર્ણ થાય છે ત્યારે વર્ણનકર્તાને ઓવરરાઈટ કરે છે. ડ્રાઇવર ફ્રન્ટએન્ડને સૂચના આપે છે કે જ્યાં પ્રથમ વર્ણનકર્તા હોસ્ટ મેમરીમાં રહે છે અને પછી ફ્રન્ટએન્ડ હાર્ડવેર ડ્રાઇવર સાથે વાતચીત કરે છે, જોકે વર્ણનકર્તાઓ હોસ્ટ મેમરીમાં સંગ્રહિત હોય છે. |
DMA AFU એડ્રેસ સ્પેસ
યજમાન પૃષ્ઠ 4 પર કોષ્ટક 12 અને પૃષ્ઠ 5 પર કોષ્ટક 13 માં સૂચિબદ્ધ રજિસ્ટરને ઍક્સેસ કરી શકે છે. DMA BBB સબસિસ્ટમ પાસે સંપૂર્ણ 49-બીટ સરનામાં સ્થાનની ઍક્સેસ છે. આ એડ્રેસ સ્પેસના નીચેના અડધા ભાગમાં સ્થાનિક FPGA સ્મૃતિઓનો સમાવેશ થાય છે. આ એડ્રેસ સ્પેસના ઉપરના અડધા ભાગમાં 48-બીટ હોસ્ટ એડ્રેસ મેમરીનો સમાવેશ થાય છે. નીચેનો આંકડો યજમાન અને DMA બતાવે છે views મેમરી.
DMA AFU અને યજમાન Views મેમરી
ડિવાઇસ ફીચર હેડર લિંક્ડ-લિસ્ટ
ડીએમએ એએફયુ ડિઝાઇન ભૂતપૂર્વample માં ત્રણ ડિવાઇસ ફીચર હેડર્સ (DFH) છે જે લિંક કરેલ યાદી બનાવે છે. આ લિંક કરેલ સૂચિ એસampDMA BBB ને ઓળખવા માટે DMA AFU તેમજ ડ્રાઇવરને ઓળખવા માટેની અરજી. DFH યાદીમાં અંતે NULL DFHનો સમાવેશ થાય છે. લિંક કરેલ સૂચિના અંતે નલ DFH નો સમાવેશ તમને તમારી ડિઝાઇનમાં વધુ DMA BBB ઉમેરવાની મંજૂરી આપે છે. તમારે ફક્ત NULL DFH ને અન્ય BBB પછી સરનામાં પર ખસેડવાની જરૂર છે. દરેક DMA BBB અપેક્ષા રાખે છે કે આગામી DFH BBB ના આધાર સરનામાથી 0x100 બાઇટ્સ સ્થિત હશે. નીચેનો આંકડો DMA AFU ડિઝાઇન એક્સ માટે લિંક કરેલ સૂચિ દર્શાવે છેample
નકશો અને સરનામાંની જગ્યાઓ રજીસ્ટર કરો
DMA AFU ડિવાઇસ ફીચર હેડર (DFH) ચેઇનિંગ
સોફ્ટવેર પ્રોગ્રામિંગ મોડલ
DMA AFU માં સોફ્ટવેર ડ્રાઇવરનો સમાવેશ થાય છે જેનો ઉપયોગ તમે તમારી પોતાની હોસ્ટ એપ્લિકેશનમાં કરી શકો છો. આ fpga_dma.cpp અને fpga_dma.h fileનીચેના સ્થાન પર સ્થિત s સોફ્ટવેર ડ્રાઇવરને અમલમાં મૂકે છે: $OPAE_PLATFORM_ROOT/hw/samples/dma_afu/sw આ ડ્રાઈવર નીચેના કાર્યોને આધાર આપે છે:
API | વર્ણન |
fpgaCountDMAC ચેનલ્સ | DMA BBBs માટે ઉપકરણ સુવિધાની સાંકળને સ્કેન કરે છે અને બધી ઉપલબ્ધ ચેનલોની ગણતરી કરે છે. |
fpgaDMAOpen | DMA ચેનલ પર હેન્ડલ ખોલે છે. |
fpgaDMACબંધ | DMA ચેનલનું હેન્ડલ બંધ કરે છે. |
fpgaDMATtransferInit | DMA ટ્રાન્સફરનું પ્રતિનિધિત્વ કરતા ઑબ્જેક્ટનો પ્રારંભ કરે છે. |
fpgaDMATtransferReset | ડીએમએ ટ્રાન્સફર એટ્રિબ્યુટ ઑબ્જેક્ટને ડિફૉલ્ટ મૂલ્યો પર ફરીથી સેટ કરે છે. |
fpgaDMATtransferDestroy | DMA ટ્રાન્સફર એટ્રિબ્યુટ ઑબ્જેક્ટનો નાશ કરે છે. |
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 ટ્રાન્સફર છે. |
fpgaDMATtransfer | DMA ટ્રાન્સફર કરે છે. |
API, ઇનપુટ અને આઉટપુટ દલીલો વિશે વધુ માહિતી માટે, હેડરનો સંદર્ભ લો file $OPAE_PLATFORM_ROOT/hw/s સ્થિત છેamples/dma_afu/sw/fpga_dma.hIntel Corporation. બધા હકો અમારી પાસે રાખેલા છે. ઇન્ટેલ, ઇન્ટેલ લોગો અને અન્ય ઇન્ટેલ ચિહ્નો ઇન્ટેલ કોર્પોરેશન અથવા તેની પેટાકંપનીઓના ટ્રેડમાર્ક છે. ઇન્ટેલ તેના FPGA અને સેમિકન્ડક્ટર ઉત્પાદનોના પ્રદર્શનને ઇન્ટેલની માનક વોરંટી અનુસાર વર્તમાન સ્પષ્ટીકરણો માટે વોરંટી આપે છે, પરંતુ સૂચના વિના કોઈપણ સમયે કોઈપણ ઉત્પાદનો અને સેવાઓમાં ફેરફાર કરવાનો અધિકાર અનામત રાખે છે. Intel દ્વારા લેખિતમાં સ્પષ્ટપણે સંમત થયા સિવાય અહીં વર્ણવેલ કોઈપણ માહિતી, ઉત્પાદન અથવા સેવાના એપ્લિકેશન અથવા ઉપયોગથી ઉદ્ભવતી કોઈ જવાબદારી અથવા જવાબદારી સ્વીકારતી નથી. ઇન્ટેલ ગ્રાહકોને સલાહ આપવામાં આવે છે કે તેઓ કોઈપણ પ્રકાશિત માહિતી પર આધાર રાખતા પહેલા અને ઉત્પાદનો અથવા સેવાઓ માટે ઓર્ડર આપતા પહેલા ઉપકરણ વિશિષ્ટતાઓનું નવીનતમ સંસ્કરણ પ્રાપ્ત કરે. અન્ય નામો અને બ્રાન્ડનો દાવો અન્યની મિલકત તરીકે થઈ શકે છે.
સોફ્ટવેર પ્રોગ્રામિંગ મોડલ
સૉફ્ટવેર ડ્રાઇવર ઉપયોગ મોડેલ વિશે વધુ જાણવા માટે, README નો સંદર્ભ લો file $OPAE_PLATFORM_ROOT/hw/s પર સ્થિત છેamples/dma_afu/README.md
ચાલી રહેલ DMA AFU Example
તમે પ્રારંભ કરો તે પહેલાં:
- તમે ભૂતપૂર્વ સાથે પરિચિત હોવા જોઈએampIntel FPGA પ્રોગ્રામેબલ એક્સિલરેશન કાર્ડ D5005 માટે ઇન્ટેલ એક્સિલરેશન સ્ટેક ક્વિક સ્ટાર્ટ ગાઇડમાં.
- તમારે પર્યાવરણ ચલ વ્યાખ્યાયિત કરવું આવશ્યક છે. એન્વાયર્નમેન્ટ વેરીએબલ તમે ઉપયોગ કરી રહ્યાં છો તે ઇન્ટેલ એક્સિલરેશન સ્ટેક વર્ઝન પર આધારિત છે:
- વર્તમાન સંસ્કરણ માટે, પર્યાવરણ ચલને $OPAE_PLATFORM_ROOT પર સેટ કરો
- તમારે ઇન્ટેલ થ્રેડિંગ બિલ્ડિંગ બ્લોક્સ (TBB) લાઇબ્રેરી ઇન્સ્ટોલ કરવી આવશ્યક છે કારણ કે DMA ડ્રાઇવર તેના પર આધાર રાખે છે.
- s ચલાવવા માટે તમારે બે 1 GB વિશાળ પૃષ્ઠો પણ સેટ કરવા પડશેampલે એપ્લિકેશન. $ sudo sh -c “echo 2 > /sys/kernel/mm/hugepages/hugepages-1048576kB/ nr_hugepages”
DMA એક્સિલરેટર ફંક્શન (AF) બિટસ્ટ્રીમ ડાઉનલોડ કરવા, એપ્લિકેશન અને ડ્રાઇવર બનાવવા અને ડિઝાઇન એક્સ ચલાવવા માટે નીચેના પગલાંઓ કરોampલે:
- DMA એપ્લિકેશન અને ડ્રાઇવર ડિરેક્ટરીમાં બદલો: cd $OPAE_PLATFORM_ROOT/hw/sampલેસ/dma_afu/sw
- ડ્રાઇવર અને એપ્લિકેશન બનાવો: બનાવો
- DMA AFU બિટસ્ટ્રીમ ડાઉનલોડ કરો: sudo fpgasupdate ../bin/dma_afu_unsigned.gbs
- હોસ્ટ મેમરીમાંથી FPGA ઉપકરણ મેમરીમાં 100 MB ભાગોમાં 1 MB લખવા માટે હોસ્ટ એપ્લિકેશનને એક્ઝિક્યુટ કરો અને તેને ફરીથી વાંચો: ./ fpga_dma_test -s 104857600 -p 1048576 -r mtom
સંબંધિત માહિતી
ઇન્ટેલ એફપીજીએ પ્રોગ્રામેબલ એક્સિલરેશન કાર્ડ D5005 ઇન્ટેલ કોર્પોરેશન માટે ઇન્ટેલ એક્સિલરેશન સ્ટેક ક્વિક સ્ટાર્ટ ગાઇડ. બધા હકો અમારી પાસે રાખેલા છે. ઇન્ટેલ, ઇન્ટેલ લોગો અને અન્ય ઇન્ટેલ ચિહ્નો ઇન્ટેલ કોર્પોરેશન અથવા તેની પેટાકંપનીઓના ટ્રેડમાર્ક છે. ઇન્ટેલ તેના FPGA અને સેમિકન્ડક્ટર ઉત્પાદનોના પ્રદર્શનને ઇન્ટેલની માનક વોરંટી અનુસાર વર્તમાન સ્પષ્ટીકરણો માટે વોરંટી આપે છે, પરંતુ સૂચના વિના કોઈપણ સમયે કોઈપણ ઉત્પાદનો અને સેવાઓમાં ફેરફાર કરવાનો અધિકાર અનામત રાખે છે. Intel દ્વારા લેખિતમાં સ્પષ્ટપણે સંમત થયા સિવાય અહીં વર્ણવેલ કોઈપણ માહિતી, ઉત્પાદન અથવા સેવાના એપ્લિકેશન અથવા ઉપયોગથી ઉદ્ભવતી કોઈ જવાબદારી અથવા જવાબદારી સ્વીકારતી નથી. ઇન્ટેલ ગ્રાહકોને સલાહ આપવામાં આવે છે કે તેઓ કોઈપણ પ્રકાશિત માહિતી પર આધાર રાખતા પહેલા અને ઉત્પાદનો અથવા સેવાઓ માટે ઓર્ડર આપતા પહેલા ઉપકરણ વિશિષ્ટતાઓનું નવીનતમ સંસ્કરણ પ્રાપ્ત કરે. *અન્ય નામો અને બ્રાન્ડનો દાવો અન્યની મિલકત તરીકે થઈ શકે છે.
DMA AFUનું સંકલન કરી રહ્યું છે Example
AF કમ્પાઇલ કરવા માટે સિન્થેસીસ બિલ્ડ એન્વાયર્નમેન્ટ જનરેટ કરવા માટે, નીચે પ્રમાણે afu_synth_setup આદેશનો ઉપયોગ કરો:
- DMA AFU s માં બદલોample ડિરેક્ટરી: $OPAE_PLATFORM_ROOT/hw/sampલેસ/dma_afu
- ડિઝાઇન બિલ્ડ ડિરેક્ટરી જનરેટ કરો: afu_synth_setup –source hw/rtl/filelist.txt build_synth
- 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 ઇન્ટેલ કોર્પોરેશન. બધા હકો અમારી પાસે રાખેલા છે. ઇન્ટેલ, ઇન્ટેલ લોગો અને અન્ય ઇન્ટેલ ચિહ્નો ઇન્ટેલ કોર્પોરેશન અથવા તેની પેટાકંપનીઓના ટ્રેડમાર્ક છે. ઇન્ટેલ તેના FPGA અને સેમિકન્ડક્ટર ઉત્પાદનોના પ્રદર્શનને ઇન્ટેલની માનક વોરંટી અનુસાર વર્તમાન સ્પષ્ટીકરણો માટે વોરંટી આપે છે, પરંતુ સૂચના વિના કોઈપણ સમયે કોઈપણ ઉત્પાદનો અને સેવાઓમાં ફેરફાર કરવાનો અધિકાર અનામત રાખે છે. Intel દ્વારા લેખિતમાં સ્પષ્ટપણે સંમત થયા સિવાય અહીં વર્ણવેલ કોઈપણ માહિતી, ઉત્પાદન અથવા સેવાના એપ્લિકેશન અથવા ઉપયોગથી ઉદ્ભવતી કોઈ જવાબદારી અથવા જવાબદારી સ્વીકારતી નથી. ઇન્ટેલ ગ્રાહકોને સલાહ આપવામાં આવે છે કે તેઓ કોઈપણ પ્રકાશિત માહિતી પર આધાર રાખતા પહેલા અને ઉત્પાદનો અથવા સેવાઓ માટે ઓર્ડર આપતા પહેલા ઉપકરણ વિશિષ્ટતાઓનું નવીનતમ સંસ્કરણ પ્રાપ્ત કરે. *અન્ય નામો અને બ્રાન્ડનો દાવો અન્યની મિલકત તરીકે થઈ શકે છે.
AFU Example
ઇન્ટેલ ભલામણ કરે છે કે તમે તમારા ઇન્ટેલ એફપીજીએ પીએસીને સમાન એક્સ સિમ્યુલેટિંગથી પરિચિત થવા માટે ઇન્ટેલ એક્સિલરેટર ફંક્શનલ યુનિટ (એએફયુ) સિમ્યુલેશન એન્વાયર્નમેન્ટ (એએસઇ) ક્વિક સ્ટાર્ટ ગાઇડનો સંદર્ભ લો.ampલેસ અને તમારા પર્યાવરણને સુયોજિત કરવા માટે. તમે નીચેના પગલાંઓ દ્વારા આગળ વધો તે પહેલાં, ચકાસો કે OPAE_PLATFORM_ROOT પર્યાવરણ ચલ OPAE SDK સ્થાપન નિર્દેશિકા પર સેટ છે. DMA AFU માટે હાર્ડવેર સિમ્યુલેટર સેટઅપ કરવા માટે નીચેના પગલાંઓ પૂર્ણ કરો:
- DMA AFU s માં બદલોample ડિરેક્ટરી: cd $OPAE_PLATFORM_ROOT/hw/sampલેસ/dma_afu
- નવી ડિરેક્ટરીમાં ASE પર્યાવરણ બનાવો અને AFUનું અનુકરણ કરવા માટે તેને ગોઠવો: afu_sim_setup –source hw/rtl/filelist.txt build_ase_dir
- ASE બિલ્ડ ડિરેક્ટરીમાં બદલો: cd build_ase_dir
- ડ્રાઇવર અને એપ્લિકેશન બનાવો: બનાવો
- સિમ્યુલેશન બનાવો: સિમ બનાવો
Sampહાર્ડવેર સિમ્યુલેટરમાંથી le આઉટપુટ:
[SIM] ** ધ્યાનઃ સોફ્ટવેર એપ્લિકેશન ચલાવતા પહેલા ** [SIM] ટર્મિનલમાં env(ASE_WORKDIR) સેટ કરો જ્યાં એપ્લિકેશન ચાલશે (કોપી-એન્ડ-પેસ્ટ) => [SIM] $SHELL | ચલાવો:[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 માટે, તમારા Linux એડમિનિસ્ટ્રેટરની સલાહ લો [SIM] [SIM] સિમ્યુલેશન માટે તૈયાર... [SIM] સિમ્યુલેટર બંધ કરવા માટે CTRL-C દબાવો...સિમ્યુલેશન એન્વાયર્નમેન્ટમાં DMA AFU સૉફ્ટવેરને કમ્પાઇલ અને એક્ઝિક્યુટ કરવા માટે નીચેના પગલાંઓ પૂર્ણ કરો:
- નવી ટર્મિનલ વિન્ડો ખોલો.
- ડિરેક્ટરીને આમાં બદલો: cd $OPAE_PLATFORM_ROOT/hw/sampલેસ/dma_afu/sw
ઇન્ટેલ કોર્પોરેશન. બધા હકો અમારી પાસે રાખેલા છે. ઇન્ટેલ, ઇન્ટેલ લોગો અને અન્ય ઇન્ટેલ ચિહ્નો ઇન્ટેલ કોર્પોરેશન અથવા તેની પેટાકંપનીઓના ટ્રેડમાર્ક છે. ઇન્ટેલ તેના FPGA અને સેમિકન્ડક્ટર ઉત્પાદનોના પ્રદર્શનને ઇન્ટેલની માનક વોરંટી અનુસાર વર્તમાન સ્પષ્ટીકરણો માટે વોરંટી આપે છે, પરંતુ સૂચના વિના કોઈપણ સમયે કોઈપણ ઉત્પાદનો અને સેવાઓમાં ફેરફાર કરવાનો અધિકાર અનામત રાખે છે. Intel દ્વારા લેખિતમાં સ્પષ્ટપણે સંમત થયા સિવાય અહીં વર્ણવેલ કોઈપણ માહિતી, ઉત્પાદન અથવા સેવાના એપ્લિકેશન અથવા ઉપયોગથી ઉદ્ભવતી કોઈ જવાબદારી અથવા જવાબદારી સ્વીકારતી નથી. ઇન્ટેલ ગ્રાહકોને સલાહ આપવામાં આવે છે કે તેઓ કોઈપણ પ્રકાશિત માહિતી પર આધાર રાખતા પહેલા અને ઉત્પાદનો અથવા સેવાઓ માટે ઓર્ડર આપતા પહેલા ઉપકરણ વિશિષ્ટતાઓનું નવીનતમ સંસ્કરણ પ્રાપ્ત કરે. *અન્ય નામો અને બ્રાન્ડનો દાવો અન્યની મિલકત તરીકે થઈ શકે છે.
AFU Example
- ટર્મિનલ વિન્ડોમાં હાર્ડવેર સિમ્યુલેશનમાં ઉપરના પગલાઓમાંથી પર્યાવરણ સેટઅપ સ્ટ્રિંગ (તમારા શેલ માટે યોગ્ય સ્ટ્રિંગ પસંદ કરો) ની નકલ કરો. 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
- સોફ્ટવેર કમ્પાઇલ કરો: $ make USE_ASE=1
- લૂપબેક મોડમાં હોસ્ટ મેમરીમાંથી પાછા 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 રૂપરેખાંકન
તમારી ટેસ્ટ એપ્લિકેશનમાં 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 Corporation. બધા હકો અમારી પાસે રાખેલા છે. ઇન્ટેલ, ઇન્ટેલ લોગો અને અન્ય ઇન્ટેલ ચિહ્નો ઇન્ટેલ કોર્પોરેશન અથવા તેની પેટાકંપનીઓના ટ્રેડમાર્ક છે. ઇન્ટેલ તેના એફપીજીએ અને સેમિકન્ડક્ટર ઉત્પાદનોના પ્રદર્શનને ઇન્ટેલની માનક વોરંટી અનુસાર વર્તમાન સ્પષ્ટીકરણો માટે વોરંટ આપે છે, પરંતુ સૂચના વિના કોઈપણ સમયે કોઈપણ ઉત્પાદનો અને સેવાઓમાં ફેરફાર કરવાનો અધિકાર અનામત રાખે છે. 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,HB_DLOC_MEMBIND,HB_MEMBIND,HD_MEMBIND,2// #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(ટોપોલોજી, objXNUMX->cpuset, HWLOC_CPUBIND_STRICT); ON_ERR_GOTO(retval, out_destroy_tok, “hwloc_set_cpubind”); } }
DMA પ્રવેગક કાર્યાત્મક એકમ વપરાશકર્તા માર્ગદર્શિકા આર્કાઇવ્સ
ઇન્ટેલ એક્સિલરેશન સ્ટેક વર્ઝન | વપરાશકર્તા માર્ગદર્શિકા (PDF) |
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 સાથે સપોર્ટેડ
ક્વાર્ટસ પ્રાઇમ પ્રો એડિશન એડિશન 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 AFU ચલાવી રહ્યા છે Example.
• ઉપશીર્ષક ઉમેર્યું ઇન્ટેલ FPGA પ્રોગ્રામેબલ એક્સિલરેશન કાર્ડ D5005 દસ્તાવેજના શીર્ષક માટે. • પર્યાવરણ ચલ $OPAE_PLATFORM_ROOT ઉમેર્યું. • સંશોધિત વિભાગ સોફ્ટવેર પ્રોગ્રામિંગ મોડલ નાના સંપાદનો માટે. • નવો વિભાગ ઉમેર્યો DMA AFUનું સંકલન કરી રહ્યું છે Example. • સંશોધિત વિભાગ સુધારેલ DMA પ્રદર્શન માટે ઓપ્ટિમાઇઝેશન નાના સંપાદનો માટે. |
2019.08.05 |
2.0 (Intel સાથે સપોર્ટેડ
ક્વાર્ટસ પ્રાઇમ પ્રો એડિશન 18.1.2) |
પ્રારંભિક પ્રકાશન. |
ઇન્ટેલ કોર્પોરેશન. બધા હકો અમારી પાસે રાખેલા છે. ઇન્ટેલ, ઇન્ટેલ લોગો અને અન્ય ઇન્ટેલ ચિહ્નો ઇન્ટેલ કોર્પોરેશન અથવા તેની પેટાકંપનીઓના ટ્રેડમાર્ક છે. ઇન્ટેલ તેના FPGA અને સેમિકન્ડક્ટર ઉત્પાદનોના પ્રદર્શનને ઇન્ટેલની માનક વોરંટી અનુસાર વર્તમાન સ્પષ્ટીકરણો માટે વોરંટી આપે છે, પરંતુ સૂચના વિના કોઈપણ સમયે કોઈપણ ઉત્પાદનો અને સેવાઓમાં ફેરફાર કરવાનો અધિકાર અનામત રાખે છે. Intel દ્વારા લેખિતમાં સ્પષ્ટપણે સંમત થયા સિવાય અહીં વર્ણવેલ કોઈપણ માહિતી, ઉત્પાદન અથવા સેવાના એપ્લિકેશન અથવા ઉપયોગથી ઉદ્ભવતી કોઈ જવાબદારી અથવા જવાબદારી સ્વીકારતી નથી. ઇન્ટેલ ગ્રાહકોને સલાહ આપવામાં આવે છે કે તેઓ કોઈપણ પ્રકાશિત માહિતી પર આધાર રાખતા પહેલા અને ઉત્પાદનો અથવા સેવાઓ માટે ઓર્ડર આપતા પહેલા ઉપકરણ વિશિષ્ટતાઓનું નવીનતમ સંસ્કરણ પ્રાપ્ત કરે.
- અન્ય નામો અને બ્રાન્ડનો દાવો અન્યની મિલકત તરીકે થઈ શકે છે.
દસ્તાવેજો / સંસાધનો
![]() |
ઇન્ટેલ FPGA પ્રોગ્રામેબલ એક્સિલરેશન કાર્ડ D5005 [પીડીએફ] વપરાશકર્તા માર્ગદર્શિકા FPGA પ્રોગ્રામેબલ એક્સિલરેશન કાર્ડ, D5005, FPGA પ્રોગ્રામેબલ એક્સિલરેશન કાર્ડ D5005, DMA એક્સિલરેટર ફંક્શનલ યુનિટ |