ዝርዝር ሁኔታ:

የ FPGA አስቴሮይድ ጨዋታ 7 ደረጃዎች (ከስዕሎች ጋር)
የ FPGA አስቴሮይድ ጨዋታ 7 ደረጃዎች (ከስዕሎች ጋር)

ቪዲዮ: የ FPGA አስቴሮይድ ጨዋታ 7 ደረጃዎች (ከስዕሎች ጋር)

ቪዲዮ: የ FPGA አስቴሮይድ ጨዋታ 7 ደረጃዎች (ከስዕሎች ጋር)
ቪዲዮ: M9 - 3 - XADC - Configuration and Instantiation 2024, ጥቅምት
Anonim
የ FPGA አስቴሮይድ ጨዋታ
የ FPGA አስቴሮይድ ጨዋታ

ለኛ CPE 133 የመጨረሻ ፕሮጀክት ፣ ሁለት የግፋ አዝራር መቀያየሪያዎችን እና የ 7 ክፍል ማሳያውን በመጠቀም በእኛ FPGA ላይ የአስትሮይድ ጨዋታ ለመፍጠር ወሰንን። ጨዋታው አንድ አስትሮይድ በዘፈቀደ ከተመረጡ ሶስት ረድፎች በአንዱ ውስጥ እንዲበቅል እና በ 7-ክፍል ማሳያ በሌላኛው በኩል ወደ መርከቡ እየጎሰመ ይመጣል። የላይኛው አዝራር እና የታችኛው አዝራር መርከብዎን ከአስትሮይድ መንገድ ለማውጣት ሊያገለግል ይችላል። ይህንን ባለማድረጉ ማሳያው ለአፍታ ያህል ‹BANG ›ን ያነባል እና ተጠቃሚው እንደገና እንዲሞክር ጨዋታውን እንደገና በፍጥነት ይጀምራል። የሚከተለው ማንኛውም ተጠቃሚ የእኛን ንድፍ ማባዛት ወይም ማሻሻል እንዲችል ፕሮጀክቱ እንዴት እንደተሠራ አጭር መግለጫ ነው።

ደረጃ 1 አጠቃላይ እይታ

አጠቃላይ እይታ
አጠቃላይ እይታ
አጠቃላይ እይታ
አጠቃላይ እይታ

ፕሮጀክቱ በአብዛኛው የፊንቴጅ ማሽኖችን (ኤፍኤምኤስ) ያካተተ ነው ፣ ይህም የመርከብ እና የሮክ ቦታዎችን የተለያዩ እሴቶችን በሚያከማቹ እና በሚያሳዩ ግዛቶች መካከል FPGA ን ለማስተላለፍ አመክንዮ የሚጠቀም ነው። ሁለቱ ዋነኞቹ ሞጁሎች ለሮክ እና ለመርከብ ጨዋታው FSMs እና በ VHDL ውስጥ በጣም ቀላል የመዋቅር ሞዴልን በመጠቀም አንድ ላይ የተዋሃዱ ሁለትዮሽ ወደ 7-ክፍል ማሳያ ዲኮደር ኤፍኤስኤም ናቸው።

FSMs ለመርከቡ አቀማመጥ ፣ ለዓለቱ አቀማመጥ እና ለ 7-ክፍል ዲኮደር ተፈጥረዋል። የመርከቧ FSM ዓላማ ተጫዋቹ ወደ ላይ ወይም ወደ ታች ቁልፍ ሲጫን መርከቡ ወደ ትክክለኛው ቦታ እንዲሄድ ነው። ወደ ትክክለኛው ቦታ ለመሄድ የትኛውን ቦታ እንደነበረ ለማስታወስ ኤፍኤምኤስ ያስፈልጋል።

የሮክ ኤፍኤምኤስ ዓላማ ዓለቱን በየትኛው ረድፍ ላይ እና በዚያ ረድፍ ውስጥ ባለው የመጨረሻ ቦታ ላይ በመመርኮዝ ወደ ትክክለኛው ቦታ ማዛወር ነው። በተጨማሪም ፣ ለሚያሳየው ሞጁል ቦታውን ይከታተላል እና በሐሰተኛ-የዘፈቀደ በሚቀጥለው ላይ እንዲታይ አዲስ ረድፍ ይመርጣል።

FSM ለ 7-ክፍል ማሳያ ዲኮደር መርከቡን እና ዓለቱን ለማሳየት ብቻ ሳይሆን የመርከቡ አቀማመጥ እና የሮክ አቀማመጥ ተመሳሳይ ሲሆኑ “BAnG” ን ለማሳየትም ጥቅም ላይ ውሏል።

ደረጃ 2 - ቁሳቁሶች

በፕሮጀክቱ ውስጥ ጥቅም ላይ የዋሉ ቁሳቁሶች-

  • Basys3 ልማት ቦርድ ከ Digilent, Inc.
  • ቪቫዶ ዲዛይን ስብስብ
  • sseg_dec.vhd (ይህ ፋይል በፖሊላይን ላይ ተሰጥቶናል እና በብሪያን ሜሊ የተፃፈ ነው)
  • Clk_div.vhd (ይህ ፋይል በፖሊላይን ላይ ተሰጥቶናል እና በብሪያን ሜሊ የተፃፈ ነው)
  • ሶስት የመጨረሻ ግዛት ማሽኖች (ኤፍኤምኤስ)

ደረጃ 3 ጨዋታውን መሥራት

ጨዋታውን መሥራት
ጨዋታውን መሥራት
ጨዋታውን መሥራት
ጨዋታውን መሥራት
ጨዋታውን መሥራት
ጨዋታውን መሥራት
ጨዋታውን መሥራት
ጨዋታውን መሥራት

የጨዋታው ሞጁል የተፈጠረው የመርከቧን እና የሮክ ግዛቶችን ለየራሳቸው ኤፍኤምኤስ ለመግለፅ የባህሪ ሞዴልን በመጠቀም ነው። የዚህ ጥቅሙ ሃርድዌርን ለመንደፍ የሚያስፈልጉትን ሁሉንም ክፍሎች ከመገመት ይልቅ እሱ የሚያደርገውን በመግለጽ የወረዳውን ባህሪ መቅረጽ በጣም ቀላል ነው።

የሮክ ግዛቶች የተደረጉት ለዓለቱ የመጀመሪያ ቦታ በሐሰተኛ የዘፈቀደ ቁጥር ጄኔሬተር በመጠቀም ነው። ይህንን ለማሳካት ፣ ለጨዋታው ፍጥነት እጅግ በጣም ፈጣን የሆነውን የጄነሬተሩን የራሱን ሰዓት ሰጠነው። በእያንዳንዱ እየጨመረ ጠርዝ ላይ ፣ ሶስት ቢት ቁጥር ይጨምራል ፣ እና ሁሉም እሴቶቹ ከመርከቡ ከሶስቱ ጅምር ግዛቶች ውስጥ አንዱ ጋር ይዛመዳሉ። ስለዚህ ፣ ሶስት እሴቶች ከቦታ 3 (ከላይ በስተቀኝ) ፣ ሦስቱ ከቦታ 7 (መሃል) ፣ እና ሁለቱ ከቦታ 11 (ከታች በስተቀኝ) ጋር ይዛመዳሉ።

የዘፈቀደ ትውልድ ከተከሰተ እና አስትሮይድ የመነሻ ሁኔታ ከተሰጠ ፣ ያለምንም መቋረጥ ወደ አግድም ወደ መርከቡ ይፈስሳል።

0 ← 1 ← 2 ← 3

4 ← 5 ← 6 ← 7

11 ← 10 ← 9 ← 8

ለዓለቱ ቀጣዩ ግዛት አመክንዮ ጥቅም ላይ የዋለው ሰዓት የጨዋታውን ፍጥነት ይቆጣጠራል ፤ 9999999 ለከፍተኛው ቆጠራ ጥሩ ዋጋ መሆኑን በሙከራ እና በስህተት አግኝተናል።

የመርከቧ አመክንዮ በግራ በኩል በግራ በኩል ወደ መሃል ቦታ (ቦታ 4) በመጀመር ይሠራል። የላይኛው አዝራር ወይም የታችኛው አዝራር ከተጫነ መርከቡ ከተጫነው አዝራር ጋር ወደ ተዛመደ ወደ 0 እና 11 ቦታ ወደ ላይ እና ወደ ታች ይንቀሳቀሳል።

የመርከቡ እንቅስቃሴ ለተጠቃሚው ጥሩ ስሜት እንዲኖረው ፣ እንቅስቃሴውን አልተመሳሰለንም። ለክፍለ ግዛቱ ለውጦች አንድ ሰዓት ተጠቀምን ፣ እና ከፍተኛውን 5555555 ቆጠርን።

ደረጃ 4 ውጤቱን ማሳየት

ባለ ሁለትዮሽ ወደ 7-ክፍል ዲኮደር ለመርከብ እና ለአስትሮይድ ባለ 4-ቢት አቀማመጥ ተለዋዋጮችን ይወስዳል እና ተገቢውን ምስል (መርከቡ እና ዓለቱ ወይም “BAnG” መልእክት) ያሳያል።

ሁለቱ እኩል መሆናቸውን በመጀመሪያ በመፈተሽ ቼኩ እውነት ከተመለሰ “BAnG” የሚለውን መልእክት በማሳየት ይህንን ይፈፅማል።

እውነት ካልተመለሰ ዲኮደሩ መርከብውን እና ዓለቱን በጣም ከፍ ባለ የሰዓት ድግግሞሽ በመካከላቸው በመቀያየር እና በተመሳሳይ ጊዜ እንደሚታዩ ዓይንን በማየት በማታለል ያሳያል።

ደረጃ 5 ሁሉንም በአንድ ላይ ማዋሃድ

ሁሉንም በአንድ ላይ ማዋሃድ
ሁሉንም በአንድ ላይ ማዋሃድ

እኛ ወደ ማሳያ FSM ባገናኘነው በአንድ ትልቅ ኤፍኤስኤም ውስጥ የመርከቧን እና የሮክ FSM ን አካተናል። የጨዋታው ግብዓቶች በ BASYS3 ሰሌዳ እና በስርዓቱ ሰዓት ላይ የከፍተኛው ቁልፍ እና ታች ቁልፍ ናቸው። ውጤቶቹ ክፍል እና የአኖዴ ቬክተሮች ሰባት ክፍል-ማሳያ ናቸው።

እነዚህ ግብዓቶች እና ግብዓቶች ወደብ ካርታ በተዘጋጁበት የእገዳ ፋይል ውስጥ ይታያሉ።

ደረጃ 6 - የወደፊት ለውጦች

ለወደፊቱ በፕሮጀክቱ ላይ ተጨማሪ የመርከብ እንቅስቃሴ ተግባርን ማከል መሻሻል ይሆናል። 2 ተጨማሪ የአዝራር ግብዓቶችን በመስጠት እና መርከቡ ከ 0 ፣ 4 ፣ እና 8 ሌላ ቦታዎችን (ግዛቶችን) እንዲወስድ በመፍቀድ በቀላሉ ሊከናወን ይችላል። ሌላ የሚቻል ለውጥ ቀስ በቀስ እንዲጀምር እና ፍጥነትን በ እንደገና እስኪጀምር እና እንደገና ቀርፋፋ እስከሚሆን ድረስ መርከቧ በናፈቀች ቁጥር 1.5x። ይህ የጨዋታውን ችግር ይጨምራል እና ከተተገበረ ለተጠቃሚው የበለጠ አስደሳች ያደርገዋል ፣ እና ለሮክ ቀጣይ ግዛት ሰዓት ከፍተኛ ቆጠራ ተለዋዋጭ በመፍጠር ሊከናወን ይችላል ፣ አስቴሮይድ ባላደረገ ቁጥር ያንን ተለዋዋጭ በ 1.5 በማባዛት። አይመታ ፣ እና ድንጋዩ በሚመታበት ጊዜ ሁሉ ወደ መጀመሪያው እሴት እንደገና ያስጀምረው።

ደረጃ 7 መደምደሚያ

ይህ ፕሮጀክት ውስን የስቴት ማሽኖችን ፣ ሰዓቶችን እና በሰባቱ ክፍሎች ማሳያዎች ላይ በይነተገናኝነትን በተሻለ ሁኔታ እንድንረዳ ረድቶናል።

ስለ ውስን የግዛት ማሽኖች ትልቁ ነገር ወደ ቀጣዩ ተፈላጊ ሁኔታ ለመሸጋገር በአሁኑ ጊዜ ምን ዓይነት ሁኔታ እንዳለዎት ማወቅ (ማስታወስ) አስፈላጊ ነው። የሚገርመው ፣ ጥሩ የሕይወት ምክር; የት እንደሚሄዱ ለማወቅ የት እንዳሉ ማወቅ አለብዎት።

የተለያዩ የሰዓቶችን አጋጣሚዎች በማዛባት ፣ በዘፈቀደ ቁጥሮችን ማፍለቅ ፣ ዓለቱን ወደ ቀጣዩ ቦታ ማንቀሳቀስ እና የመርከቡን ፣ የሮክ እና የጨዋታ ጨዋታን ማሳያ ማስተዳደር ችለናል።

ከአንድ በላይ አኖዴ በአንድ ጊዜ ሊታይ እንደማይችል ተምረናል። ለእኛ የተሰጠን ሞጁል የሰው ዓይን ልዩነቱን እስከ አንድ የተወሰነ ድግግሞሽ ብቻ ማየት እንደሚችል ተጠቅሟል። ስለዚህ የአኖዶዶችን የመቀየር ከፍተኛ ድግግሞሽ ተመርጧል። መርከቡ እና ዓለቱ በተመሳሳይ ጊዜ መታየት በእርግጥ እያንዳንዳቸው ተለይተው ስለሚታዩ ፣ ግን በጣም በፍጥነት ስለሚታይ። ያ ጽንሰ -ሀሳብ የመርከቡን ፣ የድንጋዩን እና የ “BAnG” መልዕክቱን እንቅስቃሴ ለማሳየት ተተግብሯል።

የሚመከር: