რა არის AI MPU?

ხელოვნური ინტელექტის მქონე MPU პლატფორმა აერთიანებს აპლიკაციის მიკროპროცესორს პროგრამულ უზრუნველყოფასა და აჩქარების რესურსებთან, რომლებიც საჭიროა მანქანათმცოდნეობის დატვირთვისთვის. დაიწყეთ იმის განსაზღვრით, თუ რომელი ამოცანები ეკუთვნის პროცესორს და რომელი სარგებლობს მხარდაჭერილი ამაჩქარებლით.

MPU ან აპლიკაციის მიკროპროცესორი, როგორც წესი, არის ჩაშენებული Linux სისტემის პროგრამული ცენტრი. „AI MPU“ არ არის ცალკეული პროცესორის კატეგორია იმდენად, რამდენადაც MPU პლატფორმა, რომელიც მოიცავს ან მჭიდროდ მუშაობს აჩქარების რესურსებთან, როგორიცაა NPU, GPU, DSP ან FPGA. MPU მასპინძლობს Linux, ქსელს, შენახვას, უსაფრთხოების სერვისებს, აპლიკაციის ლოგიკასა და მუშაობის დროს, რომელიც კოორდინაციას უწევს AI სამუშაო დატვირთვას.

MPU მანქანური სწავლისთვის პრაქტიკული კითხვა არ არის მხოლოდ პროცესორის სიჩქარე. მეხსიერების გამტარუნარიანობა, ამაჩქარებლის მხარდაჭერა, კამერა და მაღალი სიჩქარის I/O, Linux BSP ხარისხი, გრძელვადიანი ხელმისაწვდომობა, თერმული დიზაინი და მოდელი-ინსტრუმენტების ჯაჭვის სიმწიფე ხშირად უფრო მნიშვნელოვანია, ვიდრე სათაურის TOPS მნიშვნელობა.

რა ხდის MPU-ს ხელოვნური ინტელექტის კარგ პლატფორმად?

საუკეთესო MPU ხელოვნური ინტელექტისთვის არის სამუშაო დატვირთვის სპეციფიკური. ხედვის კარიბჭე შეიძლება იყოს პრიორიტეტული MIPI CSI, აპარატურის ვიდეო მილსადენები და NPU. უხეში მისიის კომპიუტერს შეიძლება დასჭირდეს PCIe, მრავალი Ethernet პორტი, დეტერმინისტული კომპანიონი ბირთვები და უფრო ძლიერი უსაფრთხოების მახასიათებლები. ინდუსტრიულ პლატფორმას შეუძლია დააფასოს პროდუქტის ხანგრძლივი სიცოცხლე, TSN, CAN-FD და სტაბილური Linux ეკოსისტემა.

მონიშნეთ რეალური მოდელი და სრული წინასწარი დამუშავების ჯაჭვი. ამაჩქარებლის დაბალი რეკლამირებული ფიგურის მქონე პლატფორმას შეუძლია გაიმარჯვოს, თუ ის თავს არიდებს მეხსიერების ასლებს, მხარს უჭერს საჭირო ოპერატორებს და შეინარჩუნებს სენსორიდან შედეგის გზას ეფექტური.

NPU: ეფექტური ნერვული დასკვნა კიდეზე

ზღვარი NPU აჩქარებს ნერვული ქსელის ოპერატორებს, როგორიცაა კონვოლუცია, მატრიცული ოპერაციები და საერთო აქტივაციის ფუნქციები. როგორც წესი, ეს არის ყველაზე ეფექტური ადგილი მხარდაჭერილი აღმოჩენის, კლასიფიკაციის, სეგმენტაციისა და ფუნქციების ამოღების მოდელებისთვის, როდესაც სიმძლავრე და მდგრადი დასკვნის გამტარუნარიანობა მნიშვნელოვანია.

NPU შესრულება დამოკიდებულია კომპილაციაზე და ოპერატორის დაფარვაზე. მხარდაუჭერელი ფენები შეიძლება დაუბრუნდეს პროცესორს ან სხვა ამაჩქარებელს. კვანტიზაციის მოთხოვნებს, ტენსორის განლაგებას, შეყვანის გარჩევადობას და მეხსიერების მოძრაობას ასევე შეუძლია მკვეთრად შეცვალოს რეალურ სამყაროში შესრულება. ყოველთვის შეაფასეთ წარმოების გრაფიკი, ვიდრე დაეყრდნოთ მხოლოდ თეორიულ TOPS-ს.

FPGA: დეტერმინისტული მილსადენები და AI დასკვნა, სადაც მოქნილობა მნიშვნელოვანია

FPGA გამოირჩევა დეტერმინისტული მონაცემების გადაადგილებით, მორგებული ინტერფეისებით და მასიურად პარალელური მილსადენებით. ზღვრულ სისტემებში მას შეუძლია სენსორების დესერიალიზება, დროის ანაბეჭდების გასწორება, მონაცემების გაფილტვრა, ინტერესის რეგიონების გენერირება, გამოსახულების წინასწარი დამუშავება და ამაჩქარებლის კვება პროგნოზირებადი შეყოვნებით. FPGA ხელოვნური ინტელექტის დასკვნა ასევე შესაძლებელია, როდესაც მოდელი კარგად ერგება ხელმისაწვდომ DSP-ს, მეხსიერებას და გამყიდველის აჩქარების დასტას.

კომპრომისი არის საინჟინრო ძალისხმევა. უნდა დაიგეგმოს RTL ან HLS დიზაინი, სიმულაცია, დროის დახურვა, გადამოწმება და განახლების სტრატეგია. FPGA უნდა იყოს არჩეული, რადგან დეტერმინისტული ქცევა ან მორგებული პარალელიზმი ქმნის სისტემის მნიშვნელობას და არა მხოლოდ იმიტომ, რომ მას შეუძლია არითმეტიკის გაშვება.

NPU vs FPGA edge AI-ისთვის

გადაწყვეტილება NPU vs FPGA ხშირად ყალბი ორობითია. NPU ზოგადად უფრო მარტივი არჩევანია მხარდაჭერილი ნერვული ქსელებისთვის და ძლიერი შესრულება თითო ვატზე. FPGA უფრო ძლიერია, როდესაც სისტემას სჭირდება სენსორული ინტერფეისები, დეტერმინისტული წინასწარი დამუშავება, მონაცემთა უჩვეულო ფორმატები ან მკაცრად კონტროლირებადი მილსადენი დასკვნამდე და შემდეგ.

საერთო არქიტექტურა იყენებს ორივეს: FPGA სენსორის ჩასმისა და წინასწარი დამუშავებისთვის, NPU ნერვული ქსელისთვის და MPU Linux ორკესტრირებისთვის. ეს ამცირებს არარეგულარული სამუშაოს რაოდენობას, რომელიც იძულებულია რომელიმე პროცესორზე.

რესურსისაუკეთესო მორგებული დატვირთვებიძირითადი შეზღუდვები
FPGAდეტერმინისტული მილსადენები, მორგებული I/O, დროის შტამპი, წინასწარი დამუშავება, სპეციალიზებული აჩქარებაRTL/HLS ძალისხმევა, გადამოწმება, მოწყობილობის რესურსები
NPUმხარდაჭერილი ნერვული დასკვნა კარგი შესრულებით თითო ვატზეოპერატორის მხარდაჭერა, შემდგენელი/გაშვების დრო, კვანტიზაცია და მეხსიერების მოძრაობა
MPULinux აპლიკაციები, ქსელი, საცავი, კიბერუსაფრთხოება, ორკესტრირებანაკლებად დეტერმინისტული შესრულება; ზოგადი დანიშნულების ზედნადები
MCU / RT ბირთვისაკონტროლო მარყუჟები, უსაფრთხოების ზედამხედველობა, სიმძლავრის თანმიმდევრობა, დეტერმინისტული I/Oშეზღუდული მეხსიერება და მაღალი დონის გამოთვლა
FPGAI/O
NPUAI
MPULinux · I/O

edge computing

  1. დაიწყეთ ვადები: იდენტიფიცირება, თუ რომელ სიგნალებს აქვთ რთული დროის მოთხოვნები და სენსორიდან მოქმედების მაქსიმალური დაყოვნება.
  2. რუქის მონაცემთა განაკვეთები: გამოთვალეთ სენსორის გამტარუნარიანობა, ტენსორის შუალედური ზომები და მეხსიერების ტრაფიკი ყველაზე უარესი შემთხვევისთვის.
  3. შეინახეთ დეტერმინისტული მიღება ინტერფეისთან ახლოს: FPGA, DMA ძრავები ან რეალურ დროში ბირთვები ხშირად შესაფერისია.
  4. განათავსეთ მხარდაჭერილი ნერვული მოდელები NPU-ზე: დაადასტურეთ ოპერატორის დაფარვა და ფაქტობრივი შედგენილი შესრულება.
  5. გამოიყენეთ MPU სისტემისთვის: ქსელი, შენახვა, განახლებები, ჟურნალი, API და აპლიკაციის პოლიტიკა ბუნებრივად ეკუთვნის Linux-ს.
  6. დაჯავშნე რეალურ დროში კონტროლი: MCU ან დეტერმინისტული ბირთვი უნდა აკონტროლებდეს დროის კრიტიკულ აქტივაციას და პლატფორმის სიჯანსაღეს, სადაც საჭიროა.

მეხსიერების გამტარუნარიანობა ხშირად ფარული ბოსტნეულია

ბევრი edge AI დიზაინი ფოკუსირებულია გამოთვლით პიკებზე და მოგვიანებით აღმოაჩენს, რომ ასლები, ფერის კონვერტაცია, ტენზორის რეფორმირება ან გაზიარებული DDR დომინირებს შეყოვნებაზე. ნულოვანი ასლის ან დაბალი ასლის ბილიკები, DMA ტოპოლოგია, ქეშის ქცევა და ამაჩქარებლის მეხსიერების წვდომა ადრე უნდა შეფასდეს. თერმულმა დაძაბვამ ასევე შეიძლება გადააქციოს ძლიერი საორიენტაციო მაჩვენებელი სუსტ მდგრად შესრულებად.

ეს განსაკუთრებით მნიშვნელოვანია, როდესაც რამდენიმე კამერა, რადარი, მოვლენის სენსორი ან მაღალსიჩქარიანი Ethernet ნაკადი იზიარებს მეხსიერების ერთსა და იმავე ქვესისტემას.

საცნობარო არქიტექტურის მაგალითები

ხედვის / მოვლენის სენსორის მილსადენი

სენსორი → FPGA მიღება და დროის შტამპი → NPU დასკვნა → MPU გადაწყვეტილების სერვისები → CAN-FD ან Ethernet გამომავალი. ეს არის დაბალი ლატენტური აღქმის ძლიერი ნიმუში და პირდაპირ უკავშირდება ჩვენს .

ჩაშენებული AI კომპიუტერი

მაღალსიჩქარიანი I/O → DMA / ამაჩქარებლის გზა → NPU ან GPU დასკვნა → Linux აპლიკაციის სერვისები → შენახვისა და ქსელის API. ჩვენი ჩაშენებული გამოთვლითი მოდული და უხეში კომპიუტერი პროდუქტის კლასები აგებულია ამ ტიპის დანაყოფის გარშემო.

სამრეწველო დეტერმინისტული კარიბჭე

CAN-FD / სერიული / Ethernet ინტერფეისები → FPGA ან MCU დროის შტამპი და პროტოკოლის დამუშავება → MPU სერვისები → არჩევითი NPU ანალიტიკა. აქ დეტერმინისტული I/O და პროგრამული უზრუნველყოფის გრძელვადიანი შენარჩუნება შეიძლება იყოს უფრო მნიშვნელოვანი, ვიდრე მაქსიმალური AI გამტარუნარიანობა.

როგორ ავირჩიოთ FPGA, NPU და MPU შორის

აირჩიეთ სრული დატვირთვიდან და არა პროცესორის ეტიკეტიდან. თუ დომინანტური პრობლემა არის ნერვული დასკვნა, დაიწყეთ NPU თავსებადობით. თუ მორგებული I/O და დეტერმინისტული წინასწარი დამუშავება დომინირებს, შეაფასეთ FPGA რესურსები. თუ Linux სერვისები, ქსელური და აპლიკაციის პროგრამული უზრუნველყოფა დომინირებს, დაიწყეთ MPU შესაძლებლობით. მაღალი ხარისხის ზღვრული პლატფორმების უმეტესობა აერთიანებს ამ რესურსებიდან მინიმუმ ორს.

ტექნიკის ჩადებამდე, გაუშვით წარმომადგენლობითი ნაკადები პროგრამული უზრუნველყოფის დაგეგმილ დასტაში და გაზომეთ ბოლოდან ბოლომდე შეყოვნება, სიმძლავრე, მეხსიერების გამტარუნარიანობა და თერმული. ეს მტკიცებულება უფრო ღირებულია, ვიდრე ზოგადი ამაჩქარებლის რეიტინგები.

სამუშაო მაგალითი: ოთხი კამერა და საერთო მეხსიერების ბიუჯეტი

განვიხილოთ დაგეგმვის მაგალითი ოთხი 1280 × 720 ნაკადით 30 კადრი წამში, წარმოდგენილი RGB სახით ერთი ბაიტით თითო არხზე სურათის კონვერტაციის შემდეგ. მათი კომბინირებული ლოგიკური გამოსახულების დატვირთვა არის 4 × 1280 × 720 × 30 × 3 = 331,776,000 ბაიტი წამში, დაახლოებით 332 MB/წმ ათობითი ერთეულებში. ეს არ არის ALVEXIS პროდუქტის კამერის ბმის სიხშირე ან გაზომილი შესრულება.

ერთი დამატებითი სრული კადრის ასლი კითხულობს და წერს ამ დატვირთვას, დაამატებს დაახლოებით 664 MB/წმ მეხსიერების ტრაფიკს ქეშის ქცევის ან სხვა ოპერაციების განხილვამდე. მოდელის ტენსორები, ფერის კონვერტაცია, ლოგინგი და თანმხლები სერვისები ამატებენ საკუთარ ტრაფიკს. ეს განმარტავს, თუ რატომ შეიძლება შეიზღუდოს დიზაინი მონაცემთა გადაადგილებით მაშინაც კი, როდესაც მისი სათაურის ამაჩქარებლის ნიშანი საკმარისია.

სამუშაო ადგილისთვისსაწყისი წერტილიმტკიცებულება ჩადენამდე
კამერის მიღება და სინქრონიზაციამხარდაჭერილი SoC ინტერფეისები, FPGA-ით ან კომპანიონი მოწყობილობით, სადაც საჭიროანაკადის ერთდროული გადაღება, დროის ანაბეჭდის ქცევა და დაკარგვა დატვირთვის ქვეშ
ნერვული დასკვნაNPU, როდესაც არჩეული გრაფიკი და სიზუსტე მხარდაჭერილიაკონვერტაციის სიზუსტე და მდგრადი მოწყობილობაზე განაცხადის გაზომვები
Linux მომსახურება და ჩაწერაMPU რესურსები და ცალსახად ბიუჯეტით განსაზღვრული შენახვის გზაCPU, მეხსიერება და I/O ქცევა, სანამ დასკვნა აქტიურია
დროის კრიტიკული გარე კონტროლიშესაფერისი რეალურ დროში კონტროლერი ან დადასტურებული დეტერმინისტული განხორციელებარეაგირების დროში მტკიცებულება შესაბამისი უარეს შემთხვევაში დატვირთვის პირობებში

დაყოფის მიზანია თითოეული დროისა და რესურსის მოთხოვნილება მკაფიო იყოს. ეს არ ნიშნავს, რომ ყველა დიზაინს სჭირდება ოთხი განსხვავებული პროცესორი. დაიწყეთ უმარტივესი არქიტექტურით, რომელიც აკმაყოფილებს მოთხოვნებს, შემდეგ დაამატეთ რესურსები, სადაც გაზომვები ან ინტერფეისის შეზღუდვები ამართლებს მათ.

ვალიდაციის გეგმა პროცესორის მიქსის არჩევისთვის

  1. შეყვანის კონტრაქტის გაყინვა: სენსორები, მონაცემთა ფორმატები, მოდელი, გარჩევადობა და მუშაობის პირობები.
  2. შეამოწმეთ მოდელის მხარდაჭერა და გამომავალი ხარისხი ამაჩქარებლის გამტარუნარიანობის შედარებამდე.
  3. ცალკე გაზომეთ შეძენა, წინასწარი დამუშავება, დასკვნა და მიწოდება, შემდეგ გაზომეთ სრული გზა.
  4. გაიმეორეთ მდგრადი თერმული დატვირთვით ჩაწერით, ქსელით და ყველა განკუთვნილი სენსორით აქტიური.
  5. ჩაწერეთ რიგის ასაკი, დაკარგული შეყვანები და კუდის შეყოვნება, ამიტომ მაღალი საშუალო მაჩვენებელი არ მალავს წყვეტილ შეფერხებებს.

შეინახეთ დაფის რევიზია, პროგრამული უზრუნველყოფის სურათი, ინსტრუმენტების ჯაჭვის ვერსიები და ტესტის მონაცემები შედეგებთან ერთად. Rockchip განხორციელებისთვის, RK3588 მოდელის განლაგების სახელმძღვანელო ავითარებს ამ სამუშაო პროცესს. მოვლენის კამერის მონაცემებისთვის გამოიყენეთ პროგრამული უზრუნველყოფის ინტეგრაციის სახელმძღვანელო დასკვნის გზის არჩევამდე დროის ანაბეჭდების და წარმოდგენების განსაზღვრა.

დატვირთვის დახასიათების შემდეგ, შეადარეთ SoM და SBC ინტეგრაციის ვარიანტები. ეს გადაწყვეტილება აკავშირებს გამოთვლით არქიტექტურას კონექტორებთან, სიმძლავრესთან, შიგთავსთან და წარმოების სამუშაოებთან.

პროცესორის შერჩევიდან დაწყებული ასაშენებელ პროდუქტამდე

პროცესორის მოკლე სია მხოლოდ მაშინ არის გამოსადეგი, როდესაც ის შეესაბამება სრულ პროდუქტს. მორგებული დაფის შეკვეთამდე, სამუშაო დატვირთვა გადააქციეთ მოკლე საინჟინრო ბრიფინგზე:

  • შეყვანები: სენსორების რაოდენობა, ინტერფეისები, ნიმუშის სიჩქარე და სინქრონიზაციის მოთხოვნები.
  • AI სამუშაო დატვირთვა: რეალური მოდელი, მხარდაჭერილი სიზუსტე და მისაღები გამომავალი ხარისხი.
  • ფიზიკური შეზღუდვები: ზომები, დენის წყარო, გაგრილება და სამუშაო გარემო.
  • მიწოდება: პროტოტიპის რაოდენობა, წარმოების მოცულობა, პროგრამული უზრუნველყოფის საკუთრება და მიღების ტესტები.

ინსპექტირების სადგურისთვის დააკავშირეთ კამერის მილსადენი ხაზის ტრიგერთან, ნაწილის იდენტიფიკატორთან და შედეგის ინტერფეისთან. ჩვენი სამრეწველო მანქანების ხედვა და ხარისხის კონტროლის გადაწყვეტა განმარტავს, თუ როგორ ხდება ეს მოთხოვნები პილოტი.

MPU, NPU და FPGA edge AI ხშირად დასმული კითხვები

რა არის MPU AI?

MPU AI აღწერს ხელოვნური ინტელექტის დატვირთვას, რომელიც განლაგებულია ჩაშენებულ მიკროპროცესორულ პლატფორმაზე, როგორც წესი, Linux და ხშირად ინტეგრირებული ან კომპანიონი აჩქარებით, როგორიცაა NPU, GPU ან FPGA. MPU ჩვეულებრივ მართავს აპლიკაციებს, ქსელს, შენახვას, უსაფრთხოებას და ორკესტრირებას დასკვნის მილსადენის გარშემო.

შეუძლია თუ არა MPU-ს მანქანური სწავლების გაშვება?

დიახ. MPU მანქანური სწავლების დატვირთვა შეიძლება იმუშაოს CPU ბირთვებზე ან გამოიყენოს ინტეგრირებული ამაჩქარებლები. წარმოების სისტემებისთვის, მოდელის მხარდაჭერა, მეხსიერების გამტარუნარიანობა, მდგრადი თერმული და ბოლო-ბოლო შეყოვნება უფრო მნიშვნელოვანია, ვიდრე მხოლოდ სათაური TOPS.

NPU vs FPGA: რომელია უკეთესი edge AI-ისთვის?

NPU, როგორც წესი, უფრო მარტივი არჩევანია მხარდაჭერილი ნერვული ქსელის დასკვნებისთვის, ძლიერი შესრულებით თითო ვატზე. FPGA სასურველია, როდესაც მორგებული სენსორის ინტერფეისები, დეტერმინისტული წინასწარი დამუშავება, მონაცემთა უჩვეულო ფორმატები ან სპეციალიზებული მილსადენები მთავარია დიზაინისთვის. ბევრი სისტემა იყენებს ორივეს.

შეგიძლიათ აწარმოოთ NPU დატვირთვა FPGA-ზე?

FPGA-ს შეუძლია ნერვული ქსელის ამაჩქარებლების ან დასკვნის მილსადენების დანერგვა, მაგრამ ის ავტომატურად არ არის გამოყოფილი NPU-ის ექვივალენტი. ვაჭრობა მოიცავს პროგრამირებად ლოგიკურ რესურსებს, მეხსიერებას, ინსტრუმენტთა ჯაჭვის სიმწიფეს, მოდელის მხარდაჭერას, გადამოწმების ძალისხმევას და ძალას.

როდის აქვს აზრი FPGA AI დასკვნას?

FPGA AI დასკვნა მიმზიდველია, როდესაც დასკვნა მჭიდროდ უნდა იყოს დაკავშირებული დეტერმინისტულ წინასწარ დამუშავებასთან, მორგებულ ინტერფეისებთან ან მონაცემთა სპეციალიზებულ გადაადგილებასთან. განსაკუთრებით სასარგებლოა, როდესაც სტანდარტული NPU გაშვების დრო არ შეესაბამება სენსორის გზას ან შეყოვნების შეზღუდვებს.

სადაც TinyML ჯდება ზღვარზე გამოთვლით

Edge computing აღწერს დამუშავებას მონაცემთა წყაროსთან ახლოს; edge AI იყენებს მანქანური სწავლების დასკვნას. TinyML მიმართავს განლაგების უფრო შეზღუდულ კლასს, ხშირად მიკროკონტროლერებზე შეზღუდული მეხსიერებითა და სიმძლავრით. ვიბრაციის მცირე კლასიფიკატორი და მრავალკამერიანი აღქმის მილსადენი, შესაბამისად, საჭიროებს ძალიან განსხვავებულ ტექნიკის ბიუჯეტს, მიუხედავად იმისა, რომ ორივე შეიძლება იყოს edge AI.

მიკროკონტროლერის მიზნისთვის, შეამოწმეთ მოდელის ზომა, გაშვების მეხსიერება, მხარდაჭერილი ოპერატორები და შეძენის ზედნადები. NPU ან FPGA-ზე დაფუძნებული დიზაინისთვის, ასევე შეაფასეთ მეხსიერების მოძრაობა და დაყოფა აჩქარებულ და არააჩქარებულ სამუშაოს შორის. აირჩიეთ უმცირესი არქიტექტურა, რომელიც აკმაყოფილებს გაზომილ ამოცანებსა და აღდგენის მოთხოვნებს, ვიდრე არ აირჩიოთ ტექნოლოგია მხოლოდ მისი აკრონიმიდან.

ტექნიკური ცნობები

გამტარუნარიანობის მაგალითი არის აშკარა გაანგარიშება და არა პროდუქტის საორიენტაციო ნიშანი. დაადასტურეთ არჩეული არქიტექტურა დაგეგმილ დატვირთვაზე.

გაანაწილეთ თქვენი რეალური edge AI დატვირთვა.

გაგზავნეთ სენსორის ინტერფეისები, მოდელის ტიპი, მონაცემთა სიხშირე, სიმძლავრის კონვერტი და განლაგების შეზღუდვები. ჩვენ შეგვიძლია მათი რუკა MPU/NPU/FPGA არქიტექტურისა და გამოთვლითი მოდულის შესაფერის კლასზე.