১. মাইক্রোপ্রসেসর এবং মাইক্রোকন্ট্রোলারের মধ্যে পার্থক্য


মাইক্রোকন্ট্রোলার এবং মাইক্রোপ্রসেসর এই দুটো নামই এম্বেডেড সিস্টেমের সাথে আসলে ওতপ্রোত ভাবে জড়িত। কিন্তু এই দুটোর মধ্যে আসলে কি পার্থক্য তা হয়ত আমাদের অনেকেরই জানা নেই। বাইরে থেকে দেখেও কোন পার্থক্য বোঝা যায়না। যেমন 8086 এবং 8051 অথবা Atmega32 এই চিপ গুলো যদি পাশাপাশি রাখা যায় তাহলে এগুলোর সাথে পরিচিত নয় এমন কোন মানুষের পক্ষে এদের মাঝে পার্থক্য করা মোটেও সম্ভব হবেনা। এদের মধ্যে কিন্তু প্রথম চিপটি মাইক্রোপ্রসেসর এবং পরের চিপ দুটি মাইক্রোকন্ট্রোলার। কিন্তু এদের প্রত্যেকের পিনই কিন্তু ৪০ টি করে এবং সাইজেও মোটামোটি একই রকমের (DIP package - Dual In Line package)।  



 8086 মাইক্রোপ্রসেসর



8051 মাইক্রোকন্ট্রোলার

Atmega32 মাইক্রোকন্ট্রোলার


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

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

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

এছাড়াও আরও কিছু পার্থক্য আছে। যেমন -

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

এই মোটামোটি ভাবে মাইক্রোকন্ট্রোলার এবং মাইক্রোপ্রসেসরের মধ্যকার পার্থক্য। মাইক্রোকন্ট্রোলার মোটামোটি ভাবে ৮ বিট, ১৬ বিট ,৩২ বিটের হয়ে থাকে। বিভিন্ন মাইক্রোকন্ট্রোলারের মধ্যে AVR,PIC,ST কম্পানির মাইক্রোকন্ট্রোলার গুলো বেশ জনপ্রিয়। তবে এই জনপ্রিয় মাইক্রোকন্ট্রোলারগুলো থাকতেও আমরা ইন্টেলের 8051 মাইক্রোকন্ট্রোলার নিয়ে আলচোনা করবো পরবর্তী পোস্টে।

মন্তব্যসমূহ

এই ব্লগটি থেকে জনপ্রিয় পোস্টগুলি