দুটি ডিজিটাল রয়েছে যা আপনি ডিজিটাল প্রকল্পের মূল্যায়নের জন্য ব্যবহার করতে পারেন যা কোন অংশটি আপনার মানদণ্ডের সাথে সবচেয়ে ভাল মেলে তা সিদ্ধান্ত নিতে সহায়তা করে। প্রথমটি হ'ল ডিজাইনের আকার / জটিলতা - কত যুক্তি যুক্ত involved দ্বিতীয়টি হল পিন গণনার ক্ষেত্রে ইনপুট এবং আউটপুট প্রয়োজনীয়তা। আপনার ধীরতম কর্মটি কী হবে তা আপনি যদি অনুমান করতে পারেন তবে গতিটি ফ্যাক্টর করা যেতে পারে। বিক্রেতার সরঞ্জামগুলি (আল্টেরা কোয়ার্টাস দ্বিতীয়, জিলিনেক্স আইএসই, ইত্যাদি) একবার আপনি ডান বলপার্কে উঠলে আপনাকে সহায়তা করবে।
পল / পিএলএ / জিএএল: এগুলি একটি ছোট থেকে মাঝারি আকারের সার্কিটগুলি প্রতিস্থাপনের উদ্দেশ্যে তৈরি করা হয়েছে যা আপনি সাধারণত এলএসআই লজিক চিপস (7400, 4000 সিরিজ) হিসাবে প্রয়োগ করতে পারেন। আই / ও রিম্যাপিং এবং প্রচুর সরল লজিক ফাংশনের কারণে এগুলি আরও ভাল বোর্ড লেআউট সরবরাহ করতে পারে। এই চিপগুলিতে অ-উদ্বায়ী মেমরি থাকে (বা এক সময়ের প্রোগ্রামেবল ফিউজ) এবং এতে পাওয়ার-আপ কনফিগারেশন সময় প্রয়োজন হয় না। এগুলিতে ডেটা স্টোরেজ উপাদান থাকতে পারে না।
সিপিএলডি: এগুলি পিএলএর বড় চাচাত ভাই। ডিজাইনগুলি ছোট রাষ্ট্রের মেশিন বা একটি খুব সাধারণ মাইক্রোপ্রসেসর কোরও হতে পারে। আমি দেখেছি বেশিরভাগ সিপিএলডি চিপগুলির কোনও অন-চিপ এসআরএএম নেই, যদিও আপনি সংযুক্ত বড় সাইপ্রাস সিপিএলডি করেন। সিপিএলডিগুলি ফ্ল্যাশ মেমরির সাথে পুনরায় প্রোগ্রামযোগ্য হওয়ার সম্ভাবনা বেশি থাকে এবং এগুলি পাওয়ার-আপের সময় কনফিগারেশনের সময়ও লাগে না।
এফপিজিএ: সিপিএলডির বিপরীতে, লজিক ব্লকগুলি ফ্ল্যাশ মেমরির পরিবর্তে এসআরএএম-এর উপর ভিত্তি করে তৈরি হয়, যার ফলে দ্রুত যুক্তির কাজ হয়। এফপিজিএগুলির প্রধান বিপরীত দিকটি হ'ল যেহেতু এসআরএমে কনফিগারেশনটি সংরক্ষণ করা থাকে, তাই প্রতিবার ডিভাইসটি এফপিজিএ চালিত হওয়ার পরে অবশ্যই এই এসআরএম-এ তার প্রোগ্রামিং লোড করতে হবে। আপনার ডিজাইনের আকার এবং আপনার অ-উদ্বায়ী স্টোরেজের গতির উপর নির্ভর করে এটি পাওয়ার-অন থেকে সম্পূর্ণরূপে কার্যক্ষম হওয়ার ক্ষেত্রে লক্ষণীয় বিলম্ব ঘটাতে পারে। কিছু এফপিজিএ-তে তাদের ডেটা সংরক্ষণের জন্য অন-চিপ ফ্ল্যাশ থাকে তবে বেশিরভাগই পৃথক মেমরি চিপ ব্যবহার করে। কম্পিউটিং গতি উন্নত করতে এফপিজিএগুলিতে প্রায়শই হার্ড-ওয়্যার্ড মাল্টিপ্লায়ারস, পিএলএল এবং অন্যান্য লজিক ফাংশন থাকবে। অন-চিপ র্যামের বৃহত ব্লকগুলিও উপলব্ধ। আপনি এলভিডিএস, পিসিআই, এবং পিসিআই-এক্সপ্রেসের মতো উচ্চ-পারফরম্যান্স আই / ও স্পেসিফিকেশন ব্যবহার করতে সক্ষম হবেন।
মাইক্রোপ্রসেসর হার্ড কোর সহ এফপিজিএ: আমি এগুলির সাথে পরিচিত নই, তবে আমি ধারণা করব যে আপনার নকশাটি মাইক্রোকন্ট্রোলার প্রোগ্রামিংয়ের চারপাশে থাকবে এবং এফপিজিএ মাইক্রোকন্ট্রোলারকে বাড়িয়ে তুলবে। আপনি চিহ্নিত অংশগুলি এটিকে দেখে মনে হচ্ছে আপনি নিজের নকশাটি একটি মাইক্রোকন্ট্রোলার এবং একটি এফপিজিএ দিয়ে শুরু করবেন এবং তারপরে দুটিকে একটি চিপ / প্যাকেজের সাথে একত্রিত করুন।
আপনার পক্ষে কোনটি সঠিক তা কীভাবে সিদ্ধান্ত নেবেন:
সর্বোত্তম উপায় হ'ল আপনার কোড (ভেরিলোগ / ভিএইচডিএল) শেষ হয়ে গেছে এবং তারপরে বিক্রেতার সরঞ্জামগুলি চেষ্টা করে এটি সম্ভব সবচেয়ে ছোট অংশে ফিট করতে। আমি জানি আল্টেরার সরঞ্জাম আপনাকে প্রোগ্রামিং লক্ষ্যগুলি মোটামুটি সহজে পরিবর্তন করতে দেয়, যাতে আপনি ছোট এফপিজিএ এবং তারপরে আরও ছোট সিপিএলডি তুলতে পারবেন যতক্ষণ না আপনার ডিজাইনের ব্যবহার প্রায় 75% না হয়ে যায়। আপনার যদি পারফরম্যান্স প্রয়োজন হয়, তবে যুক্তির গতির প্রয়োজনীয়তা হ্রাস করে এমন বৈশিষ্ট্য (দ্রুত গুণক) এমন ডিভাইসগুলি বেছে নেওয়ার চেষ্টা করুন। আবার, বিক্রেতার সরঞ্জামগুলি আপনাকে আপগ্রেড করতে হবে কিনা বা আপনি ডাউনগ্রেড করতে পারেন কিনা তা সনাক্ত করতে সহায়তা করবে।
কোন অংশটি ব্যবহার করবেন তার আরেকটি কারণ হ'ল সহজেই ব্যবহার। প্যাল / পিএলএ / জিএল লজিক ব্যবহার করা সম্ভবত যুক্তিযুক্ত গেটগুলি (74 এইচসি *, 4000, ইত্যাদি) ব্যবহার করে ফাংশনটি গঠনের চেয়ে বেশি প্রচেষ্টা। সিপিএলডি সাধারণত সাধারণত একটি একক সরবরাহের ভোল্টেজের প্রয়োজন হয় এবং অতিরিক্ত সার্কিটের প্রয়োজন হয় না। তারা কার্যকরভাবে একা। এফপিজিএগুলি I / O এবং লজিক কোর, জটিল I / O স্ট্যান্ডার্ড, পৃথক প্রোগ্রাম মেমরি, মাল্টি-লেয়ার (> 2) পিসিবি এবং বিজিএ প্যাকেজগুলির জন্য একাধিক পাওয়ার সাপ্লাই ব্যবহার শুরু করে।
আপনার নকশার প্রয়োজনীয়তাগুলি সঙ্কুচিত করার ধাপগুলির মধ্যে রয়েছে:
আপনার এফপিজিএ / সিপিএলডি জন্য সমস্ত ইনপুট এবং আউটপুট সনাক্ত করুন। এটি সাধারণত নকশার মঞ্চের একটি সহজ অংশ। আপনি কী প্যাকেজটি খুঁজছেন এবং আপনি কীভাবে এই মার্জিনে কাটতে পারেন তা আপনি জানেন।
অভ্যন্তরীণ যুক্তির একটি ব্লক ডায়াগ্রাম আঁকুন। যদি আপনার ব্লকগুলি দেখতে সাধারণ দেখায় (প্রতিটি ব্লকে লজিক গেটস এবং রেজিস্টারগুলিতে একটি হ্যান্ড-পূর্ণ থাকে), তবে আপনি সম্ভবত একটি সিপিএলডি ব্যবহার করতে পারেন। তবে, যদি আপনার ব্লকগুলিতে "ইথারনেট ট্রান্সসিভার", "পিসিআই-এক্সপ্রেস এক্স 16 ইন্টারফেস", "ডিডিআর 2 কন্ট্রোলার", বা "এইচ 264 এনকোড / ডিকোড" এর মতো লেবেল থাকে তবে আপনি অবশ্যই একটি এফপিজিএ খুঁজছেন এবং এইচডিএল ব্যবহার করছেন।
- আপনার ইন্টারফেসের বিশেষ আই / ও প্রয়োজনীয়তা রয়েছে যেমন বিশেষ ভোল্টেজ, এলভিডিএস, ডিডিআর বা উচ্চগতির SERDES রয়েছে কিনা তা দেখুন এবং দেখুন। অতিরিক্ত অনুবাদক চিপ পাওয়ার চেয়ে এমন একটি চিপ পাওয়া সহজ যা এটি সমর্থন করে।
সিপিএলডি অ্যাপ্লিকেশনগুলির উদাহরণ:
- এসপিআই ইন্টারফেস সহ মাল্টি-চ্যানেল পিডব্লিউএম
- আই / ও এক্সপেন্ডার
- সিপিইউ ঠিকানা স্পেস ডিকোডিং
- ঘড়ি (সময় রাখা)
- মাল্টিপ্লেক্সার প্রদর্শন করুন
- সাধারণ ডিএসপি
- কিছু সাধারণ প্রোগ্রাম সিপিএলডি ডিজাইনে রূপান্তরিত হতে পারে
শখের এফপিজিএ অ্যাপ্লিকেশনগুলির উদাহরণ:
- ছোট সিস্টেম-অন-চিপ (এসসি) ডিজাইন
- ভিডিও
- কমপ্লেক্স প্রোটোকল সেতু
- সংকেত প্রক্রিয়াজাতকরণ
- এনক্রিপশন / ডিক্রিপশন
- লিগ্যাসি সিস্টেম অনুকরণ
- লজিক বিশ্লেষক / প্যাটার্ন জেনারেটর
বেশিরভাগ শখের কাজের জন্য, আপনি বিজিএ প্যাকেজগুলি সোল্ডার না করতে চাইলে তুলনামূলকভাবে ছোট এফপিজিএ সীমাবদ্ধ থাকবেন। আমি একটি বৃহত সিপিএলডি বা একটি সস্তা এফপিজিএর মধ্যে নির্বাচন করব এবং আকার / গতির প্রয়োজনীয়তা আমার প্রয়োজন যা নির্ধারণ করবে।