এফপিজিএগুলি সর্বব্যাপী নয় কেন?


65

এফপিজিএগুলি সম্পর্কে পড়া, যদি আমি সঠিকভাবে বুঝতে পারি তবে সেগুলি মূলত সম্পূর্ণরূপে কনফিগারযোগ্য লজিক গেট সার্কিট। এটি হওয়ার কারণে, কেউ তাদের সাথে যে কোনও কিছু ডিজাইন করতে পারে। একজন সম্ভাব্যতম উপায়ে সমস্ত কিছুর নকশা করতে পারেন এবং সেইজন্য একই প্রান্তকে আরও বেশি কার্যকর পদ্ধতিতে দেখাতে পারেন যা একটি মাইক্রোকন্ট্রোলার ব্যবহার করে নেওয়া যেতে পারে। এটি থাকার পরে দেখে মনে হচ্ছে কোনও এফপিজিএ কোনও সময়, যে কোনও দিন কোনও মাইক্রোকন্ট্রোলারকে মারধর করে। সুতরাং আমার প্রশ্নটি হ'ল, যদি এফপিজিএগুলি সত্যিই এই দুর্দান্ত হয় তবে মাইক্রোকন্ট্রোলারদের চেয়ে কী বেশি তাদের প্রচলিত থেকে বাধা দেয়? এই দৃষ্টিকোণ থেকে, আমার কাছে মনে হয় এফপিজিএগুলিকে অনেক আগে মাইক্রোকন্ট্রোলারদের নিশ্চিহ্ন করা উচিত ছিল। তাহলে কেন এটি হয় না? কোনও এফপিজিএ প্রোগ্রাম করতে ব্যয়, অসুবিধা বা অন্য কিছু?



আপনি এই থ্রেডটিও পড়তে চাইতে পারেন: ইলেক্ট্রনিক্স.সটাকেক্সচেঞ্জ
টম এল।

43
হেলিকপ্টারগুলি গাড়িগুলির চেয়ে আরও নমনীয়, তাই কেন কেউ এখনও গাড়িতে করে গাড়ী চালানোর জন্য গাড়ি ব্যবহার করে?
অলিন ল্যাথ্রপ

15
কারণ সমস্ত এফপিজিএ সংস্থাগুলি আপনাকে সম্পূর্ণ ভয়ঙ্কর মালিকানাধীন সরঞ্জাম দেয় যাগুলির একটি বিশাল শিক্ষার বক্ররেখা রয়েছে এবং বেশিরভাগ বিকাশকারীদের কাছে অ্যাক্সেসযোগ্য নয়। সম্পূর্ণ উন্মুক্ত সরঞ্জামচেন দিয়ে এটিকে প্রতিস্থাপন করুন এবং তারা সম্ভবত সর্বব্যাপী হবে।
আর ..

@ আর .. ... বা কমপক্ষে সর্বশেষ অবলম্বন বিকল্পের পছন্দ নয় of
ড্যান নিলি

উত্তর:


94

আপনি নকশার পছন্দগুলি করার ক্ষেত্রে অনেকগুলি কারণকে অগ্রাহ্য করছেন:

  1. ব্যয় । যুক্তিগুলির একই জটিলতার জন্য এফপিজিএগুলি মাইক্রোগুলির চেয়ে বেশি ব্যয়বহুল।

  2. যুক্তিযুক্ত জটিলতা । এক্সিকিউটেবল কোড সরাসরি ব্যবহৃত মাইক্রোতে একই সংখ্যক গেটের চেয়ে অনেক বেশি জটিল যুক্তি প্রয়োগ করতে পারে।

  3. উন্নয়নের স্বাচ্ছন্দ্য । ছোট ছোট সমস্যাগুলির জন্য যুক্তি সংজ্ঞায়নের চেয়ে এক্সিকিউটেবল কোড লেখা সহজ। এমনকি পরিমিত মাইক্রোকন্ট্রোলার প্রকল্পগুলিতে কয়েক হাজার লাইনের কোড রয়েছে। সমতুল্য যুক্তি সংজ্ঞা বিকাশ করতে অনেক বেশি সময় লাগবে এবং ডিবাগ করা এবং যাচাই করা আরও অনেক কঠিন হয়ে উঠবে।

  4. বিদ্যুৎ খরচ । যেহেতু এফপিজিএগুলি উচ্চ গতির ক্রিয়াকলাপগুলির জন্য লক্ষ্যযুক্ত যা মাইক্রোগুলি হ্যান্ডেল করতে পারে না (অন্যথায় আপনি একটি মাইক্রো ব্যবহার করতে চান) তাই তারা কম পাওয়ারের জন্য অনুকূলিত হন না। এটি কিছু কম শক্তি প্রয়োগের জন্য তাদের অনুপযুক্ত করে তোলে makes কিছু মাইক্রোতে 1 underA এর নিচে ঘুমের স্রোত থাকে এবং ধীর ঘড়ির হারে মাত্র কয়েক µA এ পরিচালনা করতে পারে। এমন কোনও এফপিজিএ অনুসন্ধান করার চেষ্টা করুন যা এটি করতে পারে।

মাইক্রো বনাম এফপিজিএর প্রধান সুবিধা হ'ল তারা দ্রুত এবং সমান্তরালে আরও কিছু করতে পারে। তা ছাড়া, আপনি বরং একটি মাইক্রো ব্যবহার করবেন। সুতরাং নকশা প্রক্রিয়াতে, আপনি সাধারণত একটি মাইক্রো দিয়ে শুরু করেন, তখন আপনার যখন সত্যিই গতি এবং / অথবা একযোগে উচ্চ গতির অপারেশন প্রয়োজন হয় তখন মুর্তিপূর্ণভাবে একটি এফপিজিএতে যান। তারপরেও আপনি একটি এফপিজিএতে কেবল গতি-সমালোচনামূলক অংশগুলি প্রয়োগ করেন এবং নিম্ন গতি নিয়ন্ত্রণের কার্যাদি এবং মাইক্রোতে রেখে যান।


2
"তারপরেও আপনি এফপিজিএতে কেবল গতি-সমালোচনামূলক অংশগুলি প্রয়োগ করেন এবং নিম্ন গতি নিয়ন্ত্রণের কার্যাদি এবং মাইক্রোতে রেখে যান" " এবং এর কারণ এফপিজিএর জন্য বিকাশ একটি ব্যথা, তাই না?
উতকু

2
@ উটকু: হ্যাঁ, এটি উপরে 3 কারণ, যদিও 1-2 কারণগুলি সাধারণত প্রয়োগ হয়। এফপিজিএগুলি একই কাজের জন্য মাইক্রোগুলির মতো ব্যয়বহুল হিসাবে কার্যকর হয় না, যদি না সেই টাস্কের এমন উচ্চ গতির প্রয়োজনীয়তা না থাকে যে কোনও মাইক্রো এটি না করতে পারে।
অলিন ল্যাথ্রপ

4
এটি সহজেই বলা যায় যে এই উত্তরটি কোনও সিপিইউ-ব্যবহারকারী দৃষ্টিকোণ থেকে লেখা হয়েছে। "যখন আপনার সত্যিকারের গতি এবং / অথবা একযোগে উচ্চ গতির অপারেশন দরকার হয় তখন কৃপণভাবে এফপিজিএতে যান"। তারা যে খারাপ না । এমন অ্যাপ্লিকেশন রয়েছে যেখানে কেউ এফপিজিএর উপরে সিপিইউ ব্যবহার করার কথা ভাবেন না ।
stanri

26
আমি সাধারণত যেভাবে এটি ব্যাখ্যা করি: একটি সিপিইউতে সমান্তরালভাবে কাজ করা শক্ত এবং এফপিজিএতে সিরিয়ালি জিনিসগুলি করা খুব কঠিন।
বেন জ্যাকসন

14
এফপিজিএ সম্পর্কে একটি বড় বিষয় মনে রাখবেন: যুক্তির পুনর্গঠনযোগ্যতা মূল্যে আসে - এফপিজিএ প্রয়োগকারী সমতুল্য যুক্তি এফপিজিএর চেয়ে অনেক কম জটিল। সমস্ত চেহারা সারণী, রাউটিং ম্যাট্রিক্স উপাদানগুলি ইত্যাদি শক্ত যুক্তিতে সমতুল্য প্রয়োগের চেয়ে অনেক বেশি সিলিকন অঞ্চল এবং শক্তি গ্রহণ করে। এর অর্থ হ'ল মাইক্রোকন্ট্রোলারগুলি, সাধারণ উদ্দেশ্যে সিপিইউগুলি এবং নিজেই এফপিজিএর মতো সিলিকনে একই কার্যকারিতা তৈরি করার চেয়ে সক্রিয় এবং নিষ্ক্রিয় বিদ্যুৎ খরচ, ঘনত্ব, ঘড়ির গতি ইত্যাদি - সব কর্মক্ষমতা মেট্রিকগুলিতে এফপিজিএগুলি আরও খারাপ।
অ্যালেক্স.ফরনচিচ

45

একটি পার্থক্য যা আমি এখানে বিশদভাবে দেখিনি তা হ'ল এফপিজিএগুলি প্রসেসরের সম্পূর্ণ ভিন্ন উপায়ে ব্যবহার করা হয়, এবং আচরণ করা হয়।

একটি এফপিজিএ বার বার একই একই কাজটি করতে সত্যিই ভাল। উদাহরণস্বরূপ, ভিডিও, অডিও বা আরএফ সংকেতগুলি প্রক্রিয়াজাতকরণ। অথবা ইথারনেট প্যাকেটগুলি রাউটিং করছে। বা তরল প্রবাহ অনুকরণ। আপনার কাছে একই ধরণের ডেটা ধরণের যে কোনও পরিস্থিতি আপনার কাছে সত্যিই দ্রুত ছুঁড়ে ফেলা হচ্ছে এবং আপনি এগুলি একইভাবে মোকাবেলা করতে চান। অথবা আপনি বার বার একই অ্যালগরিদম চালাতে চান। এফপিজিএতে আসলে 'টাস্ক' থাকে না যা শুরু করে এবং বন্ধ করে দেয় [1], এর পুরো কাজটি যতটা ডেটা পায় তার জন্য একই জিনিস করা যতক্ষণ তা চালু থাকে। এটি গিয়ার পরিবর্তন করে না, এটি অন্য কিছু করে না। এটি চূড়ান্ত প্রোডাকশন-লাইনের কর্মী। এটি একই কাজ বারবার করবে, যত তাড়াতাড়ি সম্ভব, চিরকালের জন্য।

অন্যদিকে সিপিইউ হ'ল নমনীয়তার প্রতিচ্ছবি। এগুলি যেকোন কিছু করার জন্য প্রোগ্রাম করা যেতে পারে এবং একই সাথে একাধিক বিভিন্ন কাজ করার জন্য তাদের প্রোগ্রাম করা যেতে পারে। তাদের কাজ রয়েছে যা শুরু এবং থামে, তারা গিয়ার পরিবর্তন করে, মাল্টিটাস্ক, ক্রমাগত স্যুইচ করে এবং ফাংশন পরিবর্তন করে।

এফপিজিএ এবং সিপিইউ সম্পূর্ণ বিপরীত। সিপিইউ এর পণ্য সময় - এটি অবশ্যই জিনিস দ্রুত সম্পন্ন করা উচিত। আপনার অ্যাপ্লিকেশনটি যত তাড়াতাড়ি চলে, তত ভাল।

এফপিজিএর পণ্য স্থান। আপনার এফপিজিএ কেবলমাত্র এত বড়, এবং আপনার প্রয়োজনীয় কাজটি সম্পাদন করার জন্য কেবলমাত্র অনেকগুলি উপলব্ধ গেট রয়েছে। বেশিরভাগ সময়, সমস্যাটি গতির চেয়ে বেশি আকারের হয় [2]।

কোনও সিপিইউর মতো এফপিজিএ আইন করা সম্ভব। আপনি একটি এফপিজিএতে সিপিইউ আইপি কোর রাখতে পারেন, তবে অন্যরা যে কারণগুলি বর্ণনা করেছেন তার কারণে এটি সমর্থন করা খুব কঠিন [3] এফপিজিএ এবং সিপিইউ উভয় পক্ষেরই নিজস্ব শক্তি এবং দুর্বলতা এবং ফলস্বরূপ উভয়ের নিজস্ব স্থান রয়েছে oppos


নোট:

1) একটি এফপিজিএ বিভিন্ন কার্য সম্পাদন করার জন্য ডিজাইন করা যেতে পারে তবে তারপরেও এটি একটি নির্দিষ্ট নম্বর হবে যার জন্য এটি পূর্বনির্ধারিত ছিল।

2) গতি একটি এফপিজিএ ডিজাইনের স্পেসিফিকেশনও। এটি সত্যই গতি এবং আকারের মধ্যে একটি বাণিজ্য।

3) একটি এফপিজিএতে সিপিইউ স্থাপন অপেক্ষাকৃত প্রায়শই করা হয়, তবে এটি নির্দিষ্ট অ্যাপ্লিকেশনগুলির উপর নির্ভর করে কেস-কেস-কেস ভিত্তিতে করা হয়। উদাহরণস্বরূপ, যদি আপনার খুব ছোট্ট একটি মাইক্রোকন্ট্রোলার প্রয়োজন হয় এবং অতিরিক্ত এফপিজিএ স্থান রয়েছে।

এবং পরিশেষে: এই উত্তরটি একটি বৃহত সরলিকরণ - এফপিজিএগুলি বিচিত্র এবং জটিল উপায়ে ব্যবহার করা হয় এবং এটি সাধারণভাবে যেভাবে ব্যবহৃত হয় সে সম্পর্কে এটি একটি খুব সংক্ষিপ্ত পর্যালোচনা।


1
"অথবা ইথারনেট প্যাকেটগুলি রাউটিং করছে fluid বা তরল প্রবাহকে অনুকরণ করে" " যদিও, আমি যতদূর জানি, এএসআইসি সাধারণত প্রাক্তনদের জন্য ব্যবহৃত হয় (কমপক্ষে কমপক্ষে) এবং জিপিইউ দ্রুত, কম, কম শক্তি এবং আধুনিকতার জন্য আরও সহজে প্রোগ্রামযোগ্য।

1
@ রিরাব এফপিজিএগুলি যে ধরণের অপারেশন করতে পারে তা উদাহরণ ছিল, তারা মনে রেখেছে কারণ তারা উভয় অ্যাপ্লিকেশন যার জন্য আমি ব্যক্তিগতভাবে এফপিজিএ কোড করেছি। বিড়ালের চামড়ার একাধিক উপায় রয়েছে। ডিভাইসের পছন্দ অনেকগুলি ডিজাইনের উপাদানগুলির উপর নির্ভর করে।
stanri

5
একটি এফপিজিএ কম ক্ষমতা এবং স্বল্প প্রান্তিক উত্পাদন ব্যয়ের জন্য এএসপিসি যা কিছু করতে পারে তা রিরেব @ এফপিজিএর সুবিধাগুলি প্রোটোটাইপিং এবং লো ভলিউম উত্পাদনে কারণ একটি এএসআইসির জন্য অগ্রণী ব্যয় অনেক বেশি; অর্থাত্ যদি নকশাটি চূড়ান্ত হয় এবং আপনি সেগুলি প্রচুর পরিমাণে তৈরি করেন তখনই বোঝা যায়।
ড্যান নিলি

এটি এফপিজিএর তুলনায় একটি সিপিইউ আরও নমনীয় দাবি করা অদ্ভুত, আপনি এফপিজিএ-র মধ্যে সহজেই সিপিইউ প্রয়োগ করতে পারেন (যে কোনও গুরুতর সিএস শিক্ষার্থী কমপক্ষে একবার এটি করা উচিত)। একটি এফপিজিএ একটি সিপিইউর তুলনায় অনেক কম ধারণা তাই সরাসরি তাদের সাথে সরাসরি তুলনা করতে খুব বেশি অর্থ হয় না im
ভু

এই উত্তরটি আমাকে সত্যিই বিরক্ত করে। "সিপিইউ'র পণ্য সময়", "এফপিজিএ পণ্য স্থান" " তাই না? এএসআইসি এবং সিপিইউগুলি মেরু বিপরীতমুখী এবং এফপিজিএগুলি উভয় বিশ্বের সেরা এবং খারাপ উভয়ই মাঝখানে বসে।
জোটারিয়াস

20

অলিন যেমন বলেছে, মাইক্রো জাতীয় কিছু অনেক কাজের জন্য আরও কার্যকর, এবং আপনি প্রায় সর্বদা একটি মাইক্রো ব্যবহার করতে পারেন যেখানেই কোনও এফপিজিএ প্রদর্শিত হয়। সিলিকনের ব্যবহৃত জমি (যা ননলাইনার ফ্যাশনে ব্যয়কে অনুবাদ করে) এবং বিদ্যুতের খরচ অনেক কম। যে কারণে, এফপিজিএতে একটি 'নরম' এমসিইউ প্রয়োগ করা অস্বাভাবিক কিছু নয়- তবে এই জাতীয় মাইক্রোটির ব্যয় এবং কর্মক্ষমতা হতাশাব্যঞ্জক।

কিছু আধুনিক এফপিজিএতে সর্বব্যাপী এআরএম সিরিজের মতো এক বা একাধিক 'হার্ড' কোর থাকে। এছাড়াও, এগুলিতে ডেডিকেটেড মেমরি ব্লক থাকতে পারে যেহেতু গেটগুলি সরিয়ে মেমরিটি তৈরি করা সত্যই এটি অক্ষম। একটি 32-বিট মাইক্রো কোর একটি সাধারণ এফপিজিএতে সিলিকন অঞ্চলটির একটি সামান্য বিট নেয়, যা আপনাকে আপেক্ষিক ব্যয়ের একটি ধারণা দেয়।

বিকাশ উল্লেখযোগ্যভাবে আরও কঠিন, এবং আইপি মাইক্রো এবং ডেডিকেটেড এসওসি সমাধানগুলির মতো নিখরচায়ভাবে উপলভ্য হতে পারে না - উদাহরণস্বরূপ, এলসিডি নিয়ন্ত্রণকারী, পিসিআই ইন্টারফেস, ইথারনেট ম্যাকস। আংশিক কারণটি হ'ল এইচডিএল যুক্তিযুক্ত বিবরণগুলি প্রকাশ করে তারা কেবল ডিজাইনের ইনস্ট্যান্টেশনই নয় নকশাটি স্থানান্তর করছে। আরেকটি কারণ হ'ল পারফরম্যান্স এফপিজিএতে যুক্তির বিন্যাসের উপর নির্ভরশীল, যার বিকাশের সময় প্রচুর পরিশ্রম প্রয়োজন।

আরও জটিলতা হ'ল বেশিরভাগ জটিল এফপিজিএগুলি কনফিগারেশনের জন্য র্যাম-ভিত্তিক এবং প্রক্রিয়া ব্যয় এমন হয় যে কোনও এমসিইউতে বোর্ডের জন্য কনফিগারেশন এবং প্রোগ্রাম মেমোরি সংরক্ষণ করার জন্য বাহ্যিক নন-ভোল্টাইল মেমরির প্রয়োজন হয়। এই স্মৃতিটি পাওয়ার আপ এ র্যামে লোড করতে হবে।

এফপিজিএগুলি সরঞ্জামবাক্সে অত্যন্ত দরকারী সরঞ্জাম, তবে শীঘ্রই তারা কখনই বিশ্বব্যাপী এমসিইউ বা এএসআইসিকে প্রতিস্থাপন করবে না।


10

একটি কাজের জন্য সিলিকনের সর্বোত্তম ব্যবহার হ'ল একটি এএসআইসি, কিছুই নষ্ট হয় না তবে তাদের প্রচুর শেখার বক্রতা, এনআরই এবং নমনীয়তা রয়েছে।

একটি চিপ মধ্যে নমনীয়তা তৈরি করার দুটি উপায় আছে। ক) একটি স্থান-অনুকূলিত ALU রাখুন এবং এটি বারবার সঞ্চয়কৃত ডেটাতে ব্যবহার করুন। একে এমসিইউ বলা হয় এবং এর জন্য সিলিকনের বিস্তৃত অঞ্চল প্রয়োজন যা 'কিছুই করছে না', প্রোগ্রামের মেমরি, ইউনিট থেকে ইউনিটে চলছে প্রশস্ত বাসগুলি এবং বাস অ্যাক্সেসের সুইচগুলি। খ) কয়েকটি বিকল্প spaceচ্ছিক অনুকূলিত অংশ যেমন মাল্টিপ্লায়ারস, ছোট র‌্যাম এবং সাধারণ সিপিইউ সহ সূক্ষ্ম দানযুক্ত যুক্তি রয়েছে। এটিকে এফপিজিএ বলা হয় এবং এর জন্য সিলিকনের বিস্তৃত অঞ্চল প্রয়োজন যা 'কিছু করছে না', প্রোগ্রামেবল সুইচ এবং সংযোগ লাইন।

স্পষ্টতই এই কাঠামোগুলির সাথে, এমসিইউগুলি সেই কাজগুলির জন্য সর্বোত্তম কাজ করে যা ভাঙা সিরিয়াল খণ্ডগুলিতে পরিণত হতে পারে এবং এফপিজিএগুলি উচ্চ গতির সমান্তরাল অপারেশনের জন্য প্রয়োজনীয় কাজের জন্য সর্বোত্তম কাজ করে। যখন অ্যাপ্লিকেশনটি ভারী থাকে এবং ব্যয় সিলিকন ব্যয়ের দ্বারা প্রভাবিত হয়, তখনই দুই প্রকারটি প্রাকৃতিকভাবে ব্যবহৃত হবে।

যখন অ্যাপ্লিকেশনটি হালকা তবে উচ্চমাত্রার হয় তখন সিলিকনের পরিবর্তে প্যাকেজিংয়ের মাধ্যমে ব্যয়টি প্রাধান্য পায় এবং উভয় প্রকারই কার্যকর। এক ডলার-মুষ্টিমেয় এমসিইউগুলির সাথে প্রতিযোগিতা করার জন্য আল্টেরার কাছে খুব কম ক্ষুদ্র ক্ষুদ্র এফপিজিএ রয়েছে।

স্বল্প ভলিউম অ্যাপ্লিকেশনগুলির জন্য, উন্নয়নের ব্যয় আধিপত্যের দিকে ঝুঁকছে এবং সেখানে এমসিইউগুলি জিতেছে, ধরে নিচ্ছে তাদের গতি আছে


9

বিদ্যুত ব্যবহার এবং সিলিকন ব্যবহারের ক্ষেত্রে মাইক্রোপ্রসেসরের তুলনায় একটি এফপিজিএ খুব দুর্বল।

কোনও এফপিজিএ তার সিলিকন অঞ্চলটির বেশিরভাগ অংশকে যুক্তিযুক্ত কনফিগারেশন সার্কিটরিতে গ্রাস করে যা কোনও মাইক্রোতে প্রযোজ্য না। একটি মাইক্রোপ্রসেসরের একটি নিবেদিত বাস্তবায়নের জন্য প্রয়োজনের তুলনায় আরও অনেকগুলি আন্তঃসংযোগ স্থাপন করতে হবে।

এফপিজিএ যেমন কোনও মাইক্রোপ্রসেসরের মতো ডেডিকেটেড ASIC এর চেয়ে বেশি শক্তি খরচ করে কারণ যুক্তিটি দক্ষতার সাথে কার্যকর হয় না।

কোনও এফপিজিএতে প্রয়োগ করা যেতে পারে এমন কোনও কার্যনির্বাহী এএসআইসিতে কম বিদ্যুত ব্যবহার, কম বোর্ড স্পেস ইত্যাদি সহ আরও দক্ষতার সাথে, সস্তা, সম্পন্ন করা যায়। এটি ধরে নিচ্ছে যে এনআরই অফসেট করার জন্য ভলিউমগুলি যথেষ্ট বড়।


লক্ষ্যটি যদি মাইক্রোপ্রসেসরের পুরো বৈশিষ্ট্য সেটটি বাস্তবায়িত করা হয় তবে নিশ্চিত। আপনি যখন কোনও নির্দিষ্ট কাজে নামেন, আপনি মাইক্রোকন্ট্রোলারের মধ্যে অনেকগুলি নষ্ট সিলিকনও সনাক্ত করতে পারেন - হতে পারে যে এনক্রিপশন ইঞ্জিনটি আপনার প্রকল্পে স্থান নষ্ট করে। নাকি পেরিফেরিয়াল ক্যান? নাকি ভাসমান পয়েন্ট ইউনিট? এফপিজিএর সর্বোত্তম ব্যবহার কম, তবে আপনিও মাইক্রোকন্ট্রোলার যেভাবে বড় ক্ষেত্রগুলিতে 0% ব্যবহারের শিকার হন না। (অন্যদিকে, ক্লক গেটিং সহ, 0% বড় সার্কিটের ব্যবহার পাওয়ার দৃষ্টিভঙ্গি থেকে খুব কাম্য)
বেন ভয়েগট

8

মাইক্রোপ্রসেসর-ভিত্তিক ডিস্টিমেটস এবং পরবর্তীকালে মাইক্রোকন্ট্রোলাররা বিভিন্ন সময়ে বিভিন্ন বিভিন্ন কাজ সম্পাদনের জন্য সেখানে পৃথক পৃথক টুকরো ব্যবহারের দক্ষতার দ্বারা বিশাল কার্যকারিতা অর্জন করতে সক্ষম হয়েছে। আমি মনে করি এটি ১৯ Com6 সালে ডিজাইন করা আরকেড মেশিন ট্যাঙ্কের সাথে তুলনা করা শিক্ষামূলক, যা বিশ্বের দ্বিতীয় মাইক্রোপ্রসেসর-নিয়ন্ত্রিত গেম মেশিন আটারি ২00০০-এর সাথে চালিত গেমস কম্ব্যাটের সাথে তুলনা করা শিক্ষণীয়। যদিও গেমপ্লেতে কিছু পার্থক্য রয়েছে, আটারি 2600 হার্ডওয়্যারটি মূলত ডিজাইন করা হয়েছিল ট্যাঙ্কের মতো গেমগুলি সর্বনিম্ন ব্যয়ে বাস্তবায়ন করতে; এটি বিভিন্ন রম কার্টিজ serুকিয়ে বিভিন্ন গেম খেলতে পারা যায় তা একটি দুর্দান্ত বোনাস ছিল।

গেম ট্যাঙ্ক দুটি খেলোয়াড়কে স্ক্রিনের চারপাশে ট্যাঙ্ক চালাতে এবং একে অপরকে ফায়ার শট করতে দেয়। এতে প্রতিটি ট্যাঙ্কের এক্স এবং ওয়াই অবস্থানের জন্য "স্লিপ" কাউন্টার রয়েছে, প্রতিটি খেলোয়াড়ের শটগুলির এক্স এবং ওয়াই অবস্থান রয়েছে, প্রতিটি খেলোয়াড়ের কোণ এবং প্রতিটি খেলোয়াড়ের শটের কোণের জন্য আপ / ডাউন কাউন্টার, প্রতিটি খেলোয়াড়ের স্কোরের জন্য একটি কাউন্টার, এক্স এবং ওয়াই রাস্টার-বিম রয়েছে - পজিশন কাউন্টারগুলি এবং সেইগুলির উপরে প্রচুর নিয়ন্ত্রণ সার্কিটরি। এটি রম থেকে প্লেফিল্ড ডেটা আনতে এবং এটি প্রদর্শনের জন্য হার্ডওয়্যার রয়েছে, পাশাপাশি দুটি প্লেয়ারের ট্যাঙ্ক এবং রম থেকে স্কোরগুলি সংগ্রহ করতে এবং সেগুলি প্রদর্শন করার জন্য হার্ডওয়্যার রয়েছে।

আটারি 2600 এর দুটি প্লেয়ার অবজেক্টের প্রতিটি, দুটি ক্ষেপণাস্ত্রের প্রতিটি বস্তুর প্রতিটিের অনুভূমিক অবস্থানের জন্য একটি স্লিপ কাউন্টার রয়েছে এবং "বল" নামে পরিচিত একটি অতিরিক্ত বস্তু যা যুদ্ধে ব্যবহৃত হয় না তবে এটি অন্য কয়েকটি গেমগুলিতে ব্যবহৃত হয়। খেলোয়াড়ের প্রতিটি বস্তুর জন্য, এটি 8-বিট ল্যাচগুলিতে সঞ্চিত একটি প্যাটার্ন আউটপুট দেওয়ার জন্য হার্ডওয়্যার এবং পাশাপাশি প্রতিটি খেলোয়াড়ের জন্য "বিলম্বিত" আট-বিট ল্যাচ যা অন্য খেলোয়াড়ের যখনই প্রাথমিক 8-বিট ল্যাচ অনুলিপি করে থাকে আকৃতি আপডেট করা হয়। এটিতে একটি অনুভূমিক বিম পজিশন কাউন্টার রয়েছে এবং একটি 20-বিট প্লেফিল্ড-আকৃতির ল্যাচ যা প্রতি স্ক্যান লাইনে দু'বার স্ক্রিনে আউটপুট হয়, ডানদিকের অনুলিপিটি হয় পুনরাবৃত্তি বা বামের প্রতিবিম্ব হিসাবে প্রদর্শিত হবে। সংঘর্ষগুলি সনাক্ত করার জন্য এটির হার্ডওয়্যার রয়েছে তবে সেগুলির ফলস্বরূপ কিছুই করতে হবে না। এটা না যেকোন বস্তুর উল্লম্ব অবস্থানের জন্য কোনও হার্ডওয়্যার নেই, বা রাস্টার বিমের উল্লম্ব অবস্থান (!), বা স্কোর কিপিং, স্কোর ডিসপ্লে, গেমের সময়কাল ইত্যাদির সাথে সম্পর্কিত কোনও হার্ডওয়্যার নেই nor

2600 হার্ডওয়্যার বাদ দেওয়া সমস্ত ফাংশন কার্ট্রিজে সফ্টওয়্যার দ্বারা পরিচালিত হয়। প্রতি স্ক্যান লাইনে একবার রাস্টার-বিম পজিশনের বিরুদ্ধে প্রতিটি বস্তুর উল্লম্ব অবস্থান যাচাই করা কেবলমাত্র প্রয়োজনীয়, প্লেয়ারের স্কোর আপডেট করতে হবে এবং প্রতি ফ্রেমে প্রতি এক সময়ে গেমের সময় বাকি থাকতে হবে, প্লেয়ারের স্কোরগুলি প্লেফিল্ডের উপরে স্ক্যান লাইনে সংরক্ষণ করা হয় এবং এইভাবে প্লেফিল্ড ইত্যাদির জন্য ব্যবহৃত একই হার্ডওয়্যারটি ভাগ করে নিতে পারে etc.

একটি এফপিজিএতে "ট্যাঙ্ক" এর মতো একটি খেলা বাস্তবায়নের স্বাভাবিক পদ্ধতির মধ্যে হ'ল 1976 আর্কেড মেশিনের মতো একইভাবে বিভিন্ন ফাংশনের জন্য পৃথক সার্কিট ব্যবহার করা। এই জাতীয় দৃষ্টিভঙ্গি কার্যকর হবে, তবে যথেষ্ট পরিমাণে হার্ডওয়্যার ব্যবহার করবে। একটি মাইক্রোপ্রসেসর-ভিত্তিক পদ্ধতিটি একটি মাইক্রোপ্রসেসর যুক্ত করার বিনিময়ে সেই হার্ডওয়ারের অর্ধেকেরও বেশি নির্মূল করতে পারে, এতে সম্ভবত এটি প্রতিস্থাপন করা হার্ডওয়ারের তুলনায় কম সার্কিটরি থাকতে পারে (2600 ট্যাঙ্কের চেয়ে আরও পরিশীলিত গেমগুলি বাস্তবায়ন করতে পারে, যার জন্য আরও অনেক হার্ডওয়্যার প্রয়োজন যদি তারা একটি মাইক্রোপ্রসেসর ব্যবহার না করে)।

এফপিজিএগুলি এমন ক্ষেত্রে দুর্দান্ত যেখানে একটির জন্য এমন ডিভাইস প্রয়োজন যা একইসাথে অনেকগুলি সাধারণ কাজ সম্পাদন করতে পারে । মাইক্রোপ্রসেসর-ভিত্তিক (বা মাইক্রোকন্ট্রোলার-ভিত্তিক) সিস্টেমগুলি সাধারণত আরও ভাল হয় তবে যেসব ক্ষেত্রে অনেকগুলি কাজ সম্পাদন করা প্রয়োজন সেখানে তাদের একসাথে প্রক্রিয়া করার দরকার নেই, কারণ এগুলি অল্প পরিমাণ ব্যবহার করা সহজ করে তোলে বিপুল সংখ্যক স্বতন্ত্র উদ্দেশ্য সাধনের জন্য সার্কিটরি অফ।


তুমি কি মাইন দিতে পারো না ?? ;-)
স্কট সিডম্যান

@ স্কটসিডম্যান: আরকেড মেশিনটিতে হার্ডওয়ার্ড পজিশনে কয়েকটি খনি ছিল, যা এক্স হিসাবে চিহ্নিত হয়েছিল। উভয় খেলোয়াড় এবং উভয় ক্ষেপণাস্ত্র দেখানোর সময় 2600 টি X হিসাবে খনির প্রদর্শন করা খুব কঠিন হত। যদি 60Hz এ খনিতে ঝাঁকুনির কথা মনে না করা হয় তবে পরে আবিষ্কার করা কিছু কৌশল ব্যবহার করা সম্ভব হত, তবে আরও কোডের প্রয়োজন হত (কমব্যাট একটি 2 কে কার্টিজ যা পুরোপুরি পূর্ণ - এমনকি অব্যবহৃত দুটি বাইট) K এফএফএফই / এফএফএফএফ-তে বিআরকে / আইআরকিউ ভেক্টর একটি দ্বি-বাইট টেবিল ধরে রাখতে ব্যবহৃত হয়!)।
সুপারক্যাট

লড়াইয়ের পক্ষে ঝাঁকুনির স্কোয়ার হিসাবে খনিগুলিকে ফ্ল্যাশিং স্কোয়ার হিসাবে বাস্তবায়ন করা সম্ভব হত যদি বাউন্সিং শট ইত্যাদির মতো এর কিছু অন্যান্য বিকল্পগুলি পূর্বে করতে ইচ্ছুক হত তবে আমি মনে করি জো ডেকুয়ার (প্রোগ্রামার) খেলতে পারা যায় এমন বিকল্পগুলি বেছে নেওয়ার জন্য একটি ভাল কাজ করেছে। আমার এক কৌম হ'ল বাইপ্লেইন-বনাম-বোম্বার যদি বোম্বারটি 4x স্প্রাইটের পরিবর্তে 2x হয় তবে আরও মজা হত।
সুপারক্যাট

5

এটি পুরোপুরি ব্যয়। যখন কোনও মাইক্রো 30 সেন্টের চেয়ে কম হতে পারে, তখন একটি সস্তা এফপিজিএ $ 5 অঞ্চলে থাকে। ব্যয়টি এটিকে উচ্চ বলে মনে হচ্ছে না, তবে আপনি যখন 10 মিলিয়ন ডলারে বিক্রি করতে একটি দুরত্বপূর্ণ অভিনব খেলনা তৈরি করেন তখন এফপিজিএর দামটি আপনার নীচের লাইনটি মেরে ফেলে।


6
ব্যয় অবশ্যই একটি ইস্যু, তবে পার্থক্যটি সম্পূর্ণরূপে বলতে গেলে ব্যয়টি এফপিজিএ দ্বারা সমস্ত মাইক্রো প্রতিস্থাপন করা যায় ভেবে যতটা নির্বোধ।
অলিন ল্যাথ্রপ

@ অলিনলথ্রপ যদি ব্যয় কোনও সমস্যা না হয়ে থাকে তবে কোনও মাইক্রো যা করতে পারে তা এফপিজিএ দ্বারা করা যায়। এটি একটি এফপিজিএর নরম মাইক্রোকন্ট্রোলার কোর ধরে রাখার ক্ষমতা সহ প্রদর্শিত হয়েছে। সমস্যাটি হ'ল এমন একটি এফপিজিএ যা এই ধরণের কোরকে ধারণ করতে পারে তা কমপক্ষে এবং আরও বেশি ব্যয়বহুলতার অর্ডার হয় তবে মাইক্রো হ'ল মূলটি অনুকরণ করা হচ্ছে।
vini_i

ব্যয়টি প্রতি ইউনিট দামের চেয়ে অনেক বেশি অর্থ হতে পারে তবে আপনি এই বিশ্লেষণটিই ফেলতে চান।
স্কট সিডম্যান

2
আপনি ইচ্ছাকৃতভাবে বিন্দুটি মিস করার ভান করছেন, বা কেবল ঘন করার জন্য আমি তা বলতে পারি না। যেভাবেই হোক, আপনি এমন কিছুতে সাড়া দিচ্ছেন যা কেউ বলেনি। সকলেই সম্মত হন যে এফপিজিএগুলির আরও বেশি দাম হয় এবং এটি ব্যয় একটি বিষয় a তবে আবার এটি দাবি করা একমাত্র সমস্যা ঠিক ভুল। আমি যদি আপনাকে একগুচ্ছ ফ্রি মাইক্রো এবং এফপিজিএ দিয়ে থাকি তবে এখনও অনেকগুলি ডিজাইনে আপনি এফপিজিএগুলিতে মাইক্রোটি ব্যবহার করার কেন তা উল্লেখযোগ্য কারণ রয়েছে।
অলিন ল্যাথ্রপ

4
@ স্লেব: না, ব্যয়ের পার্থক্য কেবলমাত্র ভলিউমের কারণে নয়। প্রতি বিতরণ গেটের জন্য প্রয়োজনীয় সিলিকন অঞ্চলটি একটি এফপিজিএতে মাইক্রোকন্ট্রোলারের মতো কাস্টম চিপের চেয়ে উল্লেখযোগ্য পরিমাণে বড়। গেটের আন্তঃসংযোগ স্তরের সমস্ত কনফিগারেশনের প্রয়োগ করতে সিলিকন অঞ্চল লাগে। উচ্চ পরিমাণে, একটি চিপের ব্যয় এর সিলিকন অঞ্চল সম্পর্কে সমস্ত।
অলিন ল্যাথ্রপ

5

অন্যান্য খুব ভাল উত্তরের সাথে যুক্ত করার জন্য, আমি মনে করি এফপিজিএ গ্রহণ করাও ডোমেনের বিষয়: উদাহরণস্বরূপ, নিউরোমর্ফিক ডিভাইসগুলির জন্য, এফপিজিএ বোর্ডগুলি বেশ সর্বব্যাপী হয়ে উঠছে কারণ সমান্তরালতার খুব প্রয়োজন রয়েছে, যা একটি শক্তিশালী বিষয় এফপিজিএর

নিউরোমর্ফিক ডিভাইসগুলির জন্য আমরা যে প্রবণতাটি দেখতে পাই তা যদি আপনি বহির্মুখী করে থাকেন তবে কেউ ভাবতে পারেন যে অন্যান্য ক্ষেত্রগুলি ভিত্তিক, বা সমালোচনামূলকভাবে প্রয়োজন হয়, সমান্তরালতা সম্ভবত আরও অনেক বেশি এফপিজিএ গ্রহণ করবে। সুতরাং সম্ভবত এফপিজিএ গ্রাহক গ্রেড পণ্যগুলির জন্য সর্বব্যাপী হয়ে উঠবে না, তবে এটি নির্দিষ্ট ডোমেনগুলির জন্য হতে পারে কারণ মনে হয় এটি বর্তমানে নিউরোমর্ফিক ডিভাইসের জন্য ঘটছে।


যদিও এটি সত্য হতে পারে, এটি সম্পূর্ণ উত্তরের জন্য যথেষ্ট বলে মনে হচ্ছে না। সম্ভবত এটি একটি মন্তব্য হিসাবে ভাল হবে, বা আপনি এটি প্রসারিত করতে পারে।
নাল

এটি প্রশ্নের উত্তর দেয় না। কোনও লেখকের সমালোচনা বা স্পষ্টতার জন্য অনুরোধ জানাতে, তাদের পোস্টের নীচে একটি মন্তব্য দিন leave
ফানকিগুয়ে

3
@ ফানকিগুয়ে, এটি প্রশ্নের উত্তর দেয়। তারা মূলত বলছেন যে এফপিজিএগুলি সর্বব্যাপী নয় কারণ সাধারণ গ্রাহক অ্যাপ্লিকেশনগুলিতে এফপিজিএর শক্তিশালী মামলা হিসাবে সমান্তরালতার প্রয়োজন হয় না।
stanri
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.