ዝርዝር ሁኔታ:
- ደረጃ 1 ቪቫዶ ኤችኤልኤስ ምንድን ነው?
- ደረጃ 2: HLS ቪዲዮ ቤተ -መጽሐፍት
- ደረጃ 3 - ውህደት
- ደረጃ 4 - ወደ ውጭ መላክ ሥሪት እና ሌላ መረጃ
- ደረጃ 5 - ወደ ቪቫዶ አይፒ ቤተ -መጽሐፍት መላክ
- ደረጃ 6 - ውህደት እና ወደ ውጭ መላክ ትንተና
- ደረጃ 7 - በቪቫዶ ውስጥ የአይፒ ቤተ -መጽሐፍትን ማከል
- ደረጃ 8 - ማሻሻያ ማድረግ
- ደረጃ 9 ተጨማሪ ዝርዝሮች እና መረጃ
- ደረጃ 10 - ውፅዓት እና ግብዓት
- ደረጃ 11: የ AXI መመዝገቢያ በይነገጽ
- ደረጃ 12 የውሂብ ፍሰት ፕራግማ
ቪዲዮ: ቪቫዶ HLS ቪዲዮ IP አግድ ውህደት: 12 ደረጃዎች
2024 ደራሲ ደራሲ: John Day | [email protected]. ለመጨረሻ ጊዜ የተሻሻለው: 2024-01-30 07:33
ብዙ መዘግየት ሳይጨምር ወይም በተከተተ ስርዓት ውስጥ በቪዲዮ ላይ በእውነተኛ-ጊዜ ማቀናበር ይፈልጋሉ? FPGAs (የመስክ መርሃ ግብር ሊሠራ የሚችል የጌት ድርድር) አንዳንድ ጊዜ ይህንን ለማድረግ ያገለግላሉ። ሆኖም እንደ VHDL ወይም Verilog ባሉ የሃርድዌር ዝርዝር ቋንቋዎች ውስጥ የቪዲዮ ማቀነባበሪያ ስልተ ቀመሮችን መፃፉ በጣም ተስፋ አስቆራጭ ነው። በ C ++ አካባቢ ውስጥ ፕሮግራም እንዲያወጡ እና ከእሱ የሃርድዌር ዝርዝር ቋንቋ ኮድ እንዲያመነጩ የሚያስችልዎ የ Xilinx መሣሪያ የሆነውን ቪቫዶ ኤችኤልኤስ ያስገቡ።
ተፈላጊ ሶፍትዌሮች;
- ቪቫዶ ኤች.ኤል.ኤስ
- ቪቫዶ
- (የ AXI መዝገቦችን የሚጠቀሙ ከሆነ) ቪቫዶ ኤስዲኬ
(ከተፈለገ) የ Xilinx የተሰሩ ምሳሌዎችን እዚህ ያውርዱ
የ Xilinx HLS ቪዲዮ ምሳሌዎች
ደረጃ 1 ቪቫዶ ኤችኤልኤስ ምንድን ነው?
ቪቫዶ ኤችኤልኤስ በ FPGA ላይ ሊተገበር ወደሚችል የሃርድዌር መዋቅሮች ሲ ++ ን እንደ ኮድ ለመቀየር የሚያገለግል መሣሪያ ነው። ይህንን ልማት ለማድረግ IDE ን ያጠቃልላል። አንዴ ለኤችኤልኤስ የኮድዎን ልማት ከጨረሱ በኋላ የመነጨውን አይፒዎን ቅርጸት ወደ ውጭ መላክ ይችላሉ። ከቪቫዶ ጋር ለመጠቀም።
የተያያዙትን ፋይሎች ያውርዱ እና ፕሮጀክትዎን በሚፈጥሩበት ቦታ አጠገብ ያድርጓቸው። (የዘፈቀደ ስም ካላቸው ወደ “top.cpp” እና “top.h” እንደገና ይመልሷቸው)
ደረጃ 2: HLS ቪዲዮ ቤተ -መጽሐፍት
የኤች.ኤል.ኤስ.ቪ ቪዲዮ ቤተ -መጽሐፍት በዚህ ጽሑፍ ውስጥ ከማጣቀሻ ዲዛይኖች ጋር ሰነዶች አሉት XAPP1167 ሌላ ጥሩ ሀብት ስለ እሱ የዚሊንክስ ዊኪ ገጽ ነው።
ቪቫዶ HLS ን ይጀምሩ።
አዲስ ፕሮጀክት ይፍጠሩ።
ባለፈው ደረጃ ያወረዷቸውን ፋይሎች ይውሰዱ እና እንደ ምንጭ ፋይሎች ያክሏቸው። (ማስታወሻ - ፋይሎቹ በፕሮጀክቱ ውስጥ አልተገለበጡም ፣ ይልቁንም ባሉበት ይቆዩ)
ከዚያ የላይኛውን ተግባር ለመምረጥ የአሰሳ ቁልፍን ይጠቀሙ።
በሚቀጥለው ገጽ ላይ የሚጠቀሙበትን የ Xilinx ክፍል ይምረጡ።
ደረጃ 3 - ውህደት
መፍትሔ => አሂድ ሲ ሲንተሲስ => ንቁ መፍትሔ
ከ ~ 227.218 ሰከንዶች በኋላ መደረግ አለበት። (ማስታወሻ -ትክክለኛው የመዋሃድ ጊዜዎ በብዙ ምክንያቶች ላይ የተመሠረተ ይሆናል)
ደረጃ 4 - ወደ ውጭ መላክ ሥሪት እና ሌላ መረጃ
በንድፍ ውስጥ አይፒውን ማዘመን እንዲችሉ የስሪት ቁጥሮች ከቪቫዶ ጋር መስተጋብር ይፈጥራሉ። የአነስተኛ ስሪት ለውጥ ከሆነ በቦታው ሊደረግ ይችላል ፣ ዋናዎቹ ለውጦች በአዲሱ እገዳ ውስጥ እራስዎ እንዲጨምሩ እና አሮጌውን እንዲያስወግዱ ሲፈልጉ የእርስዎ በይነገጾች ካልተለወጡ እና የስሪት ዝመናው ትንሽ ከሆነ ዝመናው ሊሆን ይችላል የዝማኔውን የአይፒ ቁልፍን በመጫን ሙሉ በሙሉ በራስ -ሰር ተከናውኗል። የአይፒዎን ሁኔታ ለማየት በ ‹Vivado tcl console ›ውስጥ‹ report_ip_status ›ን ማሄድ ይችላሉ።
በመፍትሔ => የመፍትሄ ቅንብሮች ውስጥ የስሪት ቁጥሮችን እና ሌላ መረጃን ያዘጋጁ…
በአማራጭ ፣ ወደ ውጭ በሚላኩበት ጊዜ እነዚህ ቅንብሮች ሊዘጋጁ ይችላሉ።
ደረጃ 5 - ወደ ቪቫዶ አይፒ ቤተ -መጽሐፍት መላክ
መፍትሄ => RTL ን ወደ ውጭ ይላኩ
በቀድሞው ደረጃ የአይፒ ቤተ -መጽሐፍት ዝርዝሮችን ካላዘጋጁ ፣ ያንን አሁን ማድረግ ይችላሉ።
ደረጃ 6 - ውህደት እና ወደ ውጭ መላክ ትንተና
በዚህ ማያ ገጽ ላይ ስለ እኛ ወደ ውጭ የተላከውን ሞጁል ስታቲስቲክስን ማየት እንችላለን ፣ ይህም የእኛን የ 10ns (100MHz) የሰዓት ጊዜያችንን እና እያንዳንዱን ሃብት ምን ያህል እንደሚጠቀም ያሳያል።
በዚህ ውህደት ፣ የእኛ የውህደት ዘገባ እና የእኛ የውሂብ ፍሰት ትንተና 317338 የሰዓት ዑደቶች * 10ns የሰዓት ክፍለ ጊዜ * 14 የቧንቧ መስመር ደረጃዎች = 0.04442732 ሰከንዶች እንደሚወስድ ማየት እንችላለን። ይህ ማለት በምስል አሠራራችን የተጨመረው አጠቃላይ መዘግየት ከአንድ ሃያ ሴኮንድ ያነሰ ነው (በታለመው 100 ሜኸ ላይ ሲጠጋ)።
ደረጃ 7 - በቪቫዶ ውስጥ የአይፒ ቤተ -መጽሐፍትን ማከል
የተዋሃደ የአይፒ ብሎክን ለመጠቀም ወደ ቪቫዶ ማከል ያስፈልግዎታል።
በቪቫዶ ውስጥ ወደ አይፒ ካታሎግ በመሄድ በፕሮጄክትዎ ላይ የአይፒ ማከማቻን ያክሉ እና “ማከማቻ አክል…” ን በመምረጥ በቀኝ ጠቅ ያድርጉ።
ወደ የእርስዎ ቪቫዶ HLS ፕሮጀክት ማውጫ ይሂዱ እና የመፍትሄ ማውጫዎን ይምረጡ።
ያገኘውን አይፒ ሪፖርት ማድረግ አለበት።
ደረጃ 8 - ማሻሻያ ማድረግ
አንዳንድ ጊዜ በቪቫዶ ዲዛይን ውስጥ ካካተቱት በኋላ በእርስዎ የኤችአይኤስ ብሎክ ላይ ለውጦችን ማድረግ ያስፈልግዎታል።
ይህንን ለማድረግ ለውጦቹን ማድረግ እና አይፒውን በከፍተኛ የስሪት ቁጥር እንደገና መላክ እና ወደ ውጭ መላክ ይችላሉ (ስለ ዋና/አናሳ የስሪት ቁጥር ለውጦች ቀደም ባለው ደረጃ ዝርዝሮችን ይመልከቱ)።
አዲሱን ስሪት ወደ ውጭ መላክ ከለወጡ በኋላ ፣ በቪቫዶ ውስጥ የእርስዎን የአይፒ ማከማቻዎች ያድሱ። ቪቫዶ በማከማቻው ውስጥ አይፒው እንደተለወጠ ሲመለከት ፣ ወይም በእጅ ሲሠራ ይህ ሊደረግ ይችላል። (ልብ ይበሉ ፣ ከጀመሩ በኋላ የአይፒ ማከማቻዎን ቢያድሱ ፣ ነገር ግን ወደ ውጭ መላክ በ HLS ውስጥ ከመጠናቀቁ በፊት አይፒው ለጊዜው አይኖርም ፣ እስኪጨርስ እና እንደገና እስኪታደስ ይጠብቁ።)
በዚህ ነጥብ ላይ አይፒው በዲስኩ ላይ እንደተለወጠ እና በ “የተመረጠ አሻሽል” ቁልፍ ለማዘመን አማራጭ ይሰጥዎታል። ለውጡ አነስተኛ የስሪት ለውጥ ከሆነ እና ምንም በይነገጽ ካልተቀየረ ፣ ከዚያ ያንን ቁልፍ መጫን የድሮውን አይፒ በራስ -ሰር በአዲሱ ይተካዋል ፣ አለበለዚያ ተጨማሪ ሥራ ሊያስፈልግ ይችላል።
ደረጃ 9 ተጨማሪ ዝርዝሮች እና መረጃ
የሚከተሉት ደረጃዎች የ HLS ውህደት እንዴት እንደሚሰራ እና ከእሱ ጋር ምን ማድረግ እንደሚችሉ የበለጠ መረጃ ይሰጣሉ።
የኤችአይኤልኤስ የተቀናጀ የአይፒ ብሎክን በመጠቀም ለፕሮጀክት ምሳሌ ፣ ይህንን አስተማሪ ይመልከቱ።
ደረጃ 10 - ውፅዓት እና ግብዓት
የውጤቶች እና ግብዓቶች ወደ የመጨረሻው የአይፒ ብሎክ የሚወሰነው ከላይኛው ተግባር ውስጥ እና ውጭ የውሂብ ፍሰት ሠራተኛው ከሚያደርገው ትንተና ነው።
ከ VHDL ወይም verilog ጋር ተመሳሳይ ፣ HLS በአይፒ መካከል ስላለው ግንኙነት ዝርዝሮችን እንዲገልጹ ያስችልዎታል። እነዚህ መስመሮች የዚህ ምሳሌዎች ናቸው
ባዶ image_filter (AXI_STREAM & video_in ፣ AXI_STREAM & video_out ፣ int & x ፣ int & y) {
#pragma HLS INTERFACE ዘንግ ወደብ = ቪዲዮ_በአንድ ጥቅል = INPUT_STREAM #pragma HLS INTERFACE ዘንግ ወደብ = የቪዲዮ_ውጥ ጥቅል = OUTPUT_STREAM #pragma HLS INTERFACE s_axilite ወደብ = x ጥቅል = CONTROL_BUS offset = 0x14 #pragma HLS
በአይፒ ብሎክ ላይ የታዩት ወደቦች በእነዚህ መመሪያዎች እንዴት እንደሚነኩ ማየት ይችላሉ።
ደረጃ 11: የ AXI መመዝገቢያ በይነገጽ
ከአይፒ ብሎክዎ ወደ PS/ግብዓት/ውፅዓት ለማግኘት ይህንን ለማድረግ ጥሩ መንገድ በ AXI በይነገጽ በኩል ነው።
እሴቱን እንደ በኋላ ለመድረስ ጥቅም ላይ የሚውሉ ማካካሻዎችን ጨምሮ በ HLS ኮድዎ ውስጥ ይህንን መግለፅ ይችላሉ-
ባዶ image_filter (AXI_STREAM & video_in ፣ AXI_STREAM & video_out ፣ int & x ፣ int & y) {
#pragma HLS INTERFACE s_axilite port = x bundle = CONTROL_BUS offset = 0x14
#pragma HLS INTERFACE s_axilite port = y bundle = CONTROL_BUS offset = 0x1C #pragma HLS የውሂብ ፍሰት
x = 42;
y = 0xDEADBEEF; }
አንዴ በቪቫዶ ውስጥ በትክክል ከተገናኙ በቪቫዶ ኤስዲኬ ውስጥ ይህንን ኮድ በመጠቀም እሴቶቹን መድረስ ይችላሉ-
#"መለኪያዎች. ኤች" ያካትቱ
#መግለፅ xregoff 0x14 #define yregoff 0x1c x = Xil_In32 (XPAR_IMAGE_FILTER_0_S_AXI_CONTROL_BUS_BASEADDR+xregoff); y = Xil_In32 (XPAR_IMAGE_FILTER_0_S_AXI_CONTROL_BUS_BASEADDR+yregoff);
ይህ በ 42 ውስጥ በ x እና 0xdeadbeef በ y ውስጥ እንዲጨርሱ ያደርግዎታል
ደረጃ 12 የውሂብ ፍሰት ፕራግማ
በ #pragma DATAFLOW ውስጥ ኮዱ የሚተገበርበት መንገድ ከመደበኛ C ++ ይለወጣል። በሁሉም የውሂብ ክፍሎች ውስጥ ሁሉም መመሪያዎች ሁል ጊዜ እንዲሠሩ ኮዱ ተዘርግቷል (በፋብሪካ ውስጥ እንደ የመሰብሰቢያ መስመር ያስቡ ፣ እያንዳንዱ ጣቢያ ያለማቋረጥ አንድ ተግባር በመስራት ወደ ቀጣዩ ጣቢያ ያስተላልፋል)
ከምስሉ እያንዳንዱን መመሪያዎች ማየት ይችላሉ
ምንም እንኳን የተለመዱ ተለዋዋጮች ቢመስሉም ፣ img ነገሮች በትእዛዞቹ መካከል እንደ ትናንሽ መያዣዎች ይተገበራሉ። ለአንድ ተግባር ምስልን እንደ ግብዓት መጠቀም እሱን “ይበላል” እና ከአሁን በኋላ ጥቅም ላይ እንዳይውል ያደርገዋል። (ስለዚህ የተባዙ ትዕዛዞች አስፈላጊነት)
የሚመከር:
የመጨረሻው ቢላዋ አግድ -11 ደረጃዎች (ከስዕሎች ጋር)
የመጨረሻው ቢላዋ አግድ - እኛ ሁላችንም በቦታው ተገኝተናል ፣ አትክልቶችን በቢላ በመቁረጥ የሻይ ማንኪያ መጠቀም የበለጠ ውጤታማ ይሆናል። በዚያ ቅጽበት እርስዎ እዚያ እንዴት እንደደረሱ ያንፀባርቃሉ -ቢላዎችዎ ሲገዙ እንደ ምላጭ ስለታም ነበሩ ፣ ግን አሁን ከሦስት ዓመት በታች ፣
ለአልጌ ሙከራዎች የቤት ውስጥ ጄንጋ አግድ ስፕሮፖቶሜትር - 15 ደረጃዎች
ለአልጌ ሙከራዎች የቤት ውስጥ ጄንጋ አግድ ስፔክትሮፖቶሜትር - አልጌ የፎቶሲንተሰቲክ ፕሮቲስቶች ናቸው ፣ እና እንደዚሁም ፣ በውኃ የምግብ ሰንሰለቶች ውስጥ ወሳኝ አካላት ናቸው። በፀደይ እና በበጋ ወራት ግን እነዚህ እና ሌሎች ረቂቅ ተሕዋስያን የተፈጥሮ የውሃ ሀብቶችን ማባዛት እና ማሸነፍ ስለሚችሉ የኦክስጂን መሟጠጥን ያስከትላል
ቪቫዶ አስመሳይን እንዴት መጠቀም እንደሚቻል -6 ደረጃዎች
ቪቫዶ አስመሳይን እንዴት መጠቀም እንደሚቻል - ይህንን የማስመሰል ፕሮጀክት ለኦንላይን ክፍል አድርጌአለሁ። ፕሮጀክቱ የተፃፈው በቬሪሎግ ነው። ቀደም ሲል ከተፈጠረው የማቆሚያ ሰዓት ፕሮጀክት በ activ_sr (አኃዝ አንቃ) ውስጥ የሞገድ ቅርፁን ለማየት በቪቫዶ ውስጥ ማስመሰል እንጠቀማለን። በተጨማሪም ፣ እኛ እናደርጋለን
ካማራ ዲ ቪዲዮ ኤን ካርሮ ዴ ሬዲዮ ቁጥጥር / ቪዲዮ ካሜራ በ R / C የጭነት መኪና ላይ - 5 ደረጃዎች
ካማራ ዲ ቪዲዮ ኤን ካርሮ ዴ ሬዲዮ ቁጥጥር / ቪዲዮ ካሜራ በ R / C የጭነት መኪና ላይ: Este Instruccionable presentado en Espanol e Ingles. እነዚህ አስተማሪ በስፓኒሽ እና በእንግሊዝኛ የቀረበ
ለፒሲ ቪዲዮ ማጫወቻ የታዳጊ ቪዲዮ የርቀት መቆጣጠሪያ - 6 ደረጃዎች
ታዳጊ ቪዲዮ የርቀት መቆጣጠሪያ ለፒሲ ቪዲዮ ማጫወቻ - እኔ ከዩኤስቢ ካለው ፒሲ ጋር የሚገናኝ የርቀት መቆጣጠሪያ እሠራለሁ። ትልቁ የርቀት መቆጣጠሪያ ታዳጊዬ በአሮጌ ኮምፒተር ላይ ቪዲዮዎችን እንዲመርጥ እና እንዲጫወት ያስችለዋል። ይህ በአንፃራዊነት ቀላል ፕሮጀክት ነው። ዋናው አካል የዩኤስቢ ቁልፍ ሰሌዳ ወይም ሽቦ አልባ የዩኤስቢ ቁልፍ ሰሌዳ ነው። ከዚያ