ዝርዝር ሁኔታ:

የዚንክ ምስል ማሻሻያ ስርዓት 7 ደረጃዎች
የዚንክ ምስል ማሻሻያ ስርዓት 7 ደረጃዎች

ቪዲዮ: የዚንክ ምስል ማሻሻያ ስርዓት 7 ደረጃዎች

ቪዲዮ: የዚንክ ምስል ማሻሻያ ስርዓት 7 ደረጃዎች
ቪዲዮ: Top 5 Jobs In Ethiopia : 5 በኢትዮጲያ ከፍተኛ ደሞዝ ተከፋይ ስራዎች 2024, ሀምሌ
Anonim
የዚንክ ምስል ማሻሻያ ስርዓት
የዚንክ ምስል ማሻሻያ ስርዓት
የዚንክ ምስል ማሻሻያ ስርዓት
የዚንክ ምስል ማሻሻያ ስርዓት

ምናልባት ከርዕሱ ሊወጡ እንደሚችሉ ፣ የዚህ ፕሮጀክት ዓላማ ZYNQ ApSOC ን በመጠቀም የምስል ማሻሻያ ስርዓትን መፍጠር ነው። ይበልጥ በተለይ ፣ ጭጋግን ከምስሎች ወይም ከቪዲዮ የሚያጸዳ ስርዓት መገንባት እንፈልጋለን። ይህ ስርዓት ደካማ ሁኔታዎችን የእይታ መረጃን እንደ ግብዓት ይወስዳል ፣ የምስል ማሻሻያ ቴክኒኮችን በመጠቀም ያስኬዳል እና ውጤቱን ያወጣል።

ፕሮጀክቱ የተገነባው በዲጂሊንት ዚቦ ቦርድ ላይ ነው እና ተፈትኗል ነገር ግን ሌሎች የ ZYNQ መሣሪያዎች እንዲሁ መስራት አለባቸው።

ይህንን ፕሮጀክት በ 3 ክፍሎች እንከፍላለን-

1) INPUT = ከኮምፒዩተር/ካሜራ በኤተርኔት በኩል የግቤት ምስል

2) ሂደት = ምስሉን ያስኬዱ

3) ውፅዓት = ምስሉን በኤችዲኤምአይ በይነገጽ በኩል ያውጡ

በጣም ተቃራኒ በሆነ መልኩ በፕሮጀክቱ የውጤት ክፍል እንጀምራለን (ይህ በመንገድ ላይ የተሻሉ የማረም እድሎችን ይሰጠናል) በመግቢያው ይቀጥሉ እና በማቀነባበሪያው ክፍል ያጠናቅቁ።

ደረጃ 1: ቁሳቁሶች

ቁሳቁሶች
ቁሳቁሶች

ይህንን ፕሮጀክት ለማጠናቀቅ የሚከተሉትን ያስፈልግዎታል

ሃርድዌር

- ኤችዲኤምአይ እና ኤተርኔት ያለው ማንኛውም የ ZYNQ ቦርድ መሥራት አለበት / እኔ Digilent Zybo ን እጠቀማለሁ

- ዩኤስቢ ሀ እስከ ማይክሮ ቢ ዩኤስቢ ገመድ

- የኤችዲኤምአይ ገመድ

- የኤተርኔት ገመድ

- በኤችዲኤምአይ ግብዓት ያሳዩ

SOFTWARE

- Xilinx Vivado

- Xilinx SDK

ደረጃ 2 - ውፅዓት - ቪጂኤ መቆጣጠሪያ ክፍል 1

ውፅዓት - ቪጂኤ መቆጣጠሪያ ክፍል 1
ውፅዓት - ቪጂኤ መቆጣጠሪያ ክፍል 1

በቦርዱ ላይ ያለውን የኤችዲኤምአይ ወደብ በመጠቀም የእይታ መረጃችንን እናወጣለን። የኤችዲኤምአይ ወደብ ከ ZYNQ ከ PL (Programmable Logic = FPGA) ጎን ጋር ተገናኝቷል እና ለእሱ በ VHDL ውስጥ መቆጣጠሪያ መንደፍ ያስፈልገናል። እርስዎ የ VGA መቆጣጠሪያን መቼም ዲዛይን ካደረጉ ይህንን በጣም ተመሳሳይ ያገኙታል። የኤችዲኤምአይ እና ቪጂኤ ጊዜዎች በእውነቱ አንድ ናቸው ፣ በእውነቱ የኤችዲኤምአይ መቆጣጠሪያን ለማግኘት አሁን ባለው ቪጂኤ መቆጣጠሪያ ላይ መገንባት ይችላሉ።

በትክክል ምን እየሆነ እንዳለ የተሻለ ግንዛቤ ለማግኘት በመጀመሪያ የቪጂኤ መቆጣጠሪያን እንቀርፃለን

በ 1920x1080 ጥራት ላይ ማሳየት እንፈልጋለን።

የቪጂኤ መቆጣጠሪያው የፒክሰል ውሂቡን (በ RGB ቅርጸት) በቅደም ተከተል ፣ ፒክሴልን በፒክሰል ወደ ማሳያው የማስተላለፍ ኃላፊነት አለበት። ከ 1920x1080 ከትክክለኛው የማሳያ ቦታ ውጭ እንዲሁ አንዳንድ “ድንበር” አከባቢዎች አሉ ፣ ማለትም የፊት በረንዳ ፣ የኋላ በረንዳ እና ወደኋላ መመለስ። በእነዚህ አካባቢዎች በፒክሰሎች ውስጥ ያለው መጠን መደበኛ እና ለእያንዳንዱ ጥራት የተወሰነ ነው። እነዚህ አካባቢዎች በማያ ገጹ ላይ በትክክል አይታዩም ፣ ግን እነሱ አስገዳጅ ናቸው እና በዚህ አካባቢ ያሉት የፒክሰሎች ቀለም ጥቁር መሆን አለበት። ትክክለኛ ጥያቄ እነዚህ ተጨማሪ አካባቢዎች ለምን ያስፈልጋሉ የሚለው ይሆናል። ይህ ጥያቄ የዚህን አስተማሪ ዓላማ ይቃወማል ፣ ግን የማወቅ ጉጉት ካደረብዎት በመስመር ላይ ተጨማሪ ምርምር እንዲያደርጉ እመክርዎታለሁ።

ይህ ቪጂኤ በይነገጽን የሚያብራራ ጥሩ ቪዲዮ ነው

በእኛ ሁኔታ በ 1920*1080 ጥራት ላይ ማሳያ እንዲደረግ እንፈልጋለን ፣ እና እነዚህ የጊዜ ሰሌዳዎች ናቸው

አግድም የማሳያ ቦታ = 1920 ፒክሰሎች

አግድም ፍሮን በረንዳ = 88 ፒክሰሎች

አግድም የኋላ በረንዳ = 148 ፒክሰሎች

አግድም ወደ ኋላ መመለስ = 44 ፒክሰሎች

አቀባዊ የማሳያ ቦታ = 1080 ፒክሰሎች

አቀባዊ የፊት በረንዳ = 4 ፒክሰሎች

አቀባዊ ተመለስ በረንዳ = 36 ፒክሰሎች

አቀባዊ ዳግመኛ መመለሻ = 5 ፒክሰሎች

(እዚህ ለሌሎች ውሳኔዎች ጊዜዎችን ማግኘት ይችላሉ

ስለዚህ የእኛ ትክክለኛ ጥራት 2200 x 1125 ይሆናል። እኛ 60 fps (ክፈፎች በሰከንድ) እንፈልጋለን ስለዚህ የፒክሰል ሰዓታችን 60*2200*1125 = 148.5 ሜኸዝ ይሆናል። በዝቦ ቦርድ ላይ 125 ሜኸዝ ሰዓት ተሰጥቷል። የሚያስፈልገንን 148.5 ሜኸዝ ፒክስል ሰዓት ለማመንጨት MMCM IP ን እንጠቀማለን።

ደረጃ 3 - ውፅዓት - ቪጂኤ መቆጣጠሪያ ክፍል 2

ውፅዓት - ቪጂኤ መቆጣጠሪያ ክፍል 2
ውፅዓት - ቪጂኤ መቆጣጠሪያ ክፍል 2

ከቀዳሚው ደረጃ በንድፈ ሀሳባዊ ዳራ እርስዎ የ VGA መቆጣጠሪያ ባለቤትዎን ዲዛይን ማድረግ መቻል አለብዎት። ያንን የሚያደርግ የቪቫዶ ፕሮጀክት እሰጥዎታለሁ ፣ ግን ቢያንስ መጀመሪያ በራስዎ ለማድረግ እንዲሞክሩ እመክርዎታለሁ።

አብዛኛዎቹ የ VGA ወደቦች በአንድ ፒክሰል በአንድ የቀለም ሰርጥ 8 ቢት አይሰጡዎትም (ከላይ ያለውን ምስል ይመልከቱ) ስለዚህ ንድፉን በቦርዱ በሚሰጡት ቀለም ካስማዎች ብዛት ጋር ማላመድ ያስፈልግዎታል (ይህ ለኤችዲኤምአይ ችግር አይደለም)።

ቀይ ከሆነው የላይኛው ግራ ፒክሰል በስተቀር ዲዛይኑ መላውን ማያ ገጽ በሰማያዊ ቀለም ይቀባል። ይህ ፕሮጀክት ለ ZYBO ቦርድ ገደቦችን እንደሚጠቀም ልብ ሊባል ይገባል። ስለዚህ ይህንን ፕሮጀክት በሌላ ቦርድ ላይ ማስኬድ ከፈለጉ የእገዳዎች ፋይልን ማዘመን እና በአንድ ቀለም የፒኖችን ብዛት ማመቻቸት አለብዎት።

ምስል nr ን ይመልከቱ። 2. ያስታውሱ የእኛ ቪጂኤ መቆጣጠሪያ በአንድ ቀለም 5/6 ቢት ሲያስወጣ ፣ እነዚያ ቁርጥራጮች ወደ ገመዱ ከመሄዳቸው በፊት ለእያንዳንዱ የቀለም ሰርጥ (ቀይ ፣ አረንጓዴ እና ሰማያዊ) ወደ አንድ የአናሎግ ምልክት ይቀየራሉ።

ደረጃ 4 - ውፅዓት - የኤችዲኤምአይ መቆጣጠሪያ ክፍል 1

ውፅዓት - የኤችዲኤምአይ ተቆጣጣሪ ክፍል 1
ውፅዓት - የኤችዲኤምአይ ተቆጣጣሪ ክፍል 1

አሁን የ VGA መቆጣጠሪያ እንዴት እንደሚሠራ እናውቃለን እና የሥራ ንድፍ አለን ፣ በኤችዲኤምአይ ተቆጣጣሪው መቀጠል እንችላለን። የኤችዲኤምአይ መቆጣጠሪያው በእውነቱ በቪጂኤ መቆጣጠሪያ ውስጥ ያዘጋጀነውን ሁሉንም ኮድ ይጠቀማል። ኤችዲኤምአይ እና ቪጂኤው ተመሳሳይ ጊዜዎችን እና ተመሳሳይ ምልክቶችን ይጠቀማሉ። ልዩነቱ በተሰነጣጠሉ ፒኖች ላይ ይታያል።

ቪጂኤ ለእያንዳንዱ ቀለም አንድ ሽቦ ሲጠቀም እና የአናሎግ ምልክቱን በእሱ ላይ ሲያስተላልፍ ፣ ኤችዲኤምአይ ለእያንዳንዱ ውሂብ በአንድ ጊዜ 1 ቢት በዲጂታል ያስተላልፋል እና ልዩ ምልክት ይጠቀማል። ልዩነት ምልክት ማለት ለእያንዳንዱ ቢት ኤችዲኤምአይ ከሌላው ተቃራኒ ጋር 2 ፒኖች አሉት ማለት ነው። ስለዚህ ‹1› የሚል ምልክት ለማስተላለፍ ከፈለግን ‹1 ›ን በሽቦ ላይ እና ‹1› ን በሌላኛው ሽቦ ላይ እናስተላልፋለን። ይህ የምልክት ታማኝነትን ያረጋግጣል እና እዚህ የበለጠ ማንበብ ይችላሉ https://goo.gl/6CPCzB። ከእነዚህ ሰርጦች ውስጥ ለእያንዳንዱ ቀለም ፣ ቀይ ፣ አረንጓዴ እና ሰማያዊ እና አንድ ለሰዓት አለን። በኤችዲኤምአይ የምንልካቸውን ምልክቶች ልዩነትን በማሳየቱ ምክንያት ዲሲ ሚዛናዊ መሆን አለበት ማለት የ 1 እና 0 ቁጥር በተወሰነ የጊዜ መስኮት ውስጥ በግምት እኩል መሆን አለበት ማለት ነው። ይህንን ለማሳካት 8b/10b ኢንኮዲንግ እንጠቀማለን። እዚህ ከ DVI ዝርዝር https://goo.gl/hhh8Ge (ዲቪአይ እና ኤችዲኤምአይ ተመሳሳይ የቪዲዮ ምልክቶችን ይጠቀማሉ) ልዩነት ምልክት ማድረጊያ እና 8b/10b ኢንኮዲንግ እንዴት እንደሚሰራ ብዙ መማር ይችላሉ።

ደረጃ 5 - ውፅዓት - የኤችዲኤምአይ መቆጣጠሪያ ክፍል 2

ውፅዓት - የኤችዲኤምአይ ተቆጣጣሪ ክፍል 2
ውፅዓት - የኤችዲኤምአይ ተቆጣጣሪ ክፍል 2

በቂ ንድፈ ሀሳብ ፣ ወደ ፕሮጀክታችን እንሂድ። በቪጂኤ መቆጣጠሪያ ውስጥ እኛ የ 148.5 ሜኸ ሰዓት ቆየን ፣ እዚህ 10 ጊዜ ያንን ድግግሞሽ ማቅረብ አለብን ምክንያቱም ለእያንዳንዱ ቀለም 8 ቢት ለማስተላለፍ እና በአንድ ፒክሰል እና 10 ቢት ወደ 10 ቢት የሚተረጎመውን 8b/10b ኢንኮዲንግ ስለምንፈልግ። *148.5 ሜኸ = 1485 ሜኸ በዛቦ ቦርድ ላይ ሊገኝ የማይችል በጣም ብዙ ድግግሞሽ ነው። እንደ እድል ሆኖ በእጃችን ላይ ጥቂት ብልሃቶችን አግኝተናል። እኛ 5*148.5 ሜኸዝ = 742.5 ሜኸዝ ማስተዳደር እንችላለን እና በ 742.5 ሜኸዝ ሰዓት መነሳት እና መውደቅ ጠርዝ ላይ መረጃን ለማስተላለፍ OSERDES (serializer) IP ን እንጠቀማለን ፣ ስለዚህ በእውነቱ በ 1485 ሜኸዝ የሚተላለፈ ውሂብ እናገኛለን። ቪቫዶ አንዳንድ የጊዜ ማስጠንቀቂያዎችን ይሰጠናል እናም ሁል ጊዜ በትንሽ ሰዓት ወደ ዝቅተኛ ጥራት መሄድ ይችላሉ ፣ ግን ስለሚሰራ ፣ ለአሁን እኛ አያስጨንቀንም (ማስጠንቀቂያዎቹ የሰዓት መያዣዎች በይፋ ስለማይሠሩ) የድግግሞሽ ድግግሞሾች ከ 464 ሜኸር በላይ)።

ስለዚህ እኛ ማድረግ ያለብን ከ VGA መቆጣጠሪያ ውፅዓት ውሂቡን በ 8b/10b ቅርጸት ማቀናበር እና ከዚያ ከላይ እንደተጠቀሰው ተከታታይ ማድረግ ነው። እንዲሁም ለተከታታይነት 742.5 ሜኸ ሰዓት ለማመንጨት በፕሮጀክቱ ላይ ሌላ MMCM ማከል አለብን።

እኔ ለኮድደር እና ለሲደርደር የ vhdl ፋይሎችን ከዚህ በታች ተያይዣለሁ። መጀመሪያ የ RGB ሰርጦችን ኢንኮዲንግ ማድረግ እና ከዚያ ተከታታይ ማድረግ አለብዎት።

ለቀይ ሰርጥ ምሳሌ -

TMDS_encoder_RED ፦ TMDS_encoder

የወደብ ካርታ (clk148 ፣ red_channel_8bits ፣ c_red ፣ video_on ፣ encoded_red_10bits);

Serialiser_RED: Serialiser10_1

የወደብ ካርታ (clk148 ፣ clk742 ፣ encoded_red_10bits ፣ ዳግም አስጀምር ፣ red_serial_1bit);

ለ TMDS_encoder የ "ሐ" ግብዓት ለቀይ እና አረንጓዴ "00" እና "vsync & hsync" ለሰማያዊ (ይህ የ DVI ዝርዝር መግለጫ https://goo.gl/hhh8Ge አካል ነው)።

ደረጃ 6 ምስሎችን ከ RAM ማሳየት

ከ RAM ምስሎችን ማሳየት
ከ RAM ምስሎችን ማሳየት

የኤችዲኤምአይ ተቆጣጣሪው ዓላማ የተቀናበሩ ምስሎችን ለማሳየት ነው። አሁን ፣ ተቆጣጣሪው ከተተገበረ እና ለመሄድ ዝግጁ ከሆነ ይህንን ተቆጣጣሪ በውሂብ ስለመመገብ ማሰብ አለብን። ብዙ የምስል ማሻሻያ ሂደት በ PS (የሂደት ስርዓት = አርኤም ፕሮሰሰር) ውስጥ እንደሚከሰት እና የተገኙት ምስሎች በ DDR ራም ውስጥ ይኖራሉ። ስለዚህ ውሂቡን ከ RAM ወደ ኤችዲኤምአይ መቆጣጠሪያ የምናገኝበት መንገድ እንፈልጋለን።

ይህንን ለማሳካት 3 አይፒዎች ያስፈልግዎታል

1) ቪዲኤምኤ (የቪዲዮ ቀጥታ ማህደረ ትውስታ መዳረሻ)

2) VTC (የቪዲዮ የጊዜ መቆጣጠሪያ)

3) ወደ ቪዲዮ ውፅዓት ይልቀቁ (ከአሁን በኋላ S2VO ብለን እንጠራዋለን)

S2VO በእውነቱ የ RGB 24BIT ምልክት ለውጤቱ እና ለሚፈለጉት የ HSYNC እና VSYNC ምልክቶች ይሰጣል። ስለዚህ ያንን የኤችዲኤምአይ ተቆጣጣሪ ክፍል መተው እንችላለን።

እነዚህን አይፒዎች ወደ ንድፍዎ ማከል ፣ ማዋቀር እና ተገቢ ግንኙነቶችን ማድረግ አለብዎት።

በመጨረሻም ከላይ ያለውን መርሃግብር የሚመስል ነገር ማግኘት አለብዎት።

ደረጃ 7 - ውፅዓት - ኤስዲኬ መጨረሻ

ውፅዓት - ኤስዲኬ መጨረሻ
ውፅዓት - ኤስዲኬ መጨረሻ

ሁሉም ሃርድዌር ተዘጋጅቶ ለመሄድ ዝግጁ ሆኖ አሁን በ PS ውስጥ ሶፍትዌሩን መገንባት አለብን። እኛ ሃርድዌር እና የትንሽ ዥረት ወደ ውጭ እንልካለን እና ኤስዲኬን እናስጀምራለን።

1) ፋይል -> ላክ -> ላክ ሃርድዌር -> ቼክ Bitstream ን ያካትቱ እና እሺን ይጫኑ

2) ፋይል -> ኤስዲኬን ያስጀምሩ

በ SDK ውስጥ አዲስ የትግበራ ፕሮጀክት ይፍጠሩ።

3) ፋይል -> አዲስ -> የትግበራ ፕሮጀክት

4) ለፕሮጀክትዎ ስም ይምረጡ እና ቀጣይ የሚለውን ይጫኑ

5) “ሰላም ዓለም” የሚለውን አብነት ይምረጡ እና ጨርስን ይጫኑ

በ SDK ውስጥ ያለው ትግበራ VDMA ን ማዘጋጀት አለበት። ይህንን ለማሳካት ጥቅም ላይ የዋሉ አንዳንድ መደበኛ ተግባራት አሉ (ጊዜ ሲኖረኝ ወደ ዝርዝሮች እገባለሁ)።

የእኛን ንድፍ ለመፈተሽ አንድ ምስል ወደ DDR ራም ማህደረ ትውስታ ውስጥ ለማስገባት እና የእኛን የኤችዲኤምአይ መቆጣጠሪያ በመጠቀም ለማሳየት የ SDK እነበረበት መልስ (Xilinx Tools -> Dump/Restore) ባህሪን እንጠቀማለን። በሚፈልጉት ቦታ ሁሉ ምስሉን መጫን ይችላሉ (በማስታወሻው መጀመሪያ ላይ ከአንዳንድ አነስተኛ የተከለከሉ አካባቢዎች በስተቀር)። ለኛ ምሳሌ አድራሻ 16777216 እና የፋይሉ መጠን 8294400 = 1920*1080*4 (4 ሰርጦች = RGB + አልፋ) መርጠናል።

ይሰራል !

ይቀጥላል

የሚመከር: