কোপ্রসেসর: আর্কিটেকচার, কাজ, প্রকার এবং এর অ্যাপ্লিকেশন

সমস্যাগুলি দূর করার জন্য আমাদের উপকরণটি ব্যবহার করে দেখুন





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


কোপ্রসেসর কি?

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



  কোপ্রসেসর
কোপ্রসেসর

কোপ্রসেসর আর্কিটেকচার

8087 আর্কিটেকচারের মতো কপ্রসেসর নীচে দেখানো হয়েছে। সাধারণত, এই কো-প্রসেসর মাইক্রোপ্রসেসরের সাথে সমান্তরালভাবে কাজ করে। এই কোপ্রসেসরটি ইন্টেল দ্বারা তৈরি করা হয়েছে এবং 16-বিট 8086 ফ্যামিলি মাইক্রোপ্রসেসরের সাথে ব্যবহার করা হয়েছে। যখন প্রসেসর মাইক্রোপ্রসেসরের সংমিশ্রণে কাজ করে, তখন গণনার অংশটি কেবল প্রসেসর দ্বারা পরিচালনা করা হয় এবং এটি CPU-কে অন্যান্য বিভিন্ন কার্যক্রম চালানোর জন্য সংস্থানগুলিকে ব্যবহার করার অনুমতি দেয়।

নিচের চিত্রটি 8087 কোপ্রসেসরের আর্কিটেকচারের প্রতিনিধিত্ব করে। এই আর্কিটেকচারে দুটি প্রধান ইউনিট যেমন কন্ট্রোল ইউনিট এবং একটি সংখ্যাসূচক এক্সিকিউশন ইউনিট রয়েছে যাকে NEUও বলা হয়।



  8087 কোপ্রসেসর আর্কিটেকচার
8087 কোপ্রসেসর আর্কিটেকচার

কন্ট্রোল ইউনিটে, ডেটা বাফার, কন্ট্রোল এবং স্ট্যাটাস ওয়ার্ড রেজিস্টার, শেয়ার্ড অপারেন্ড কিউ, এক্সেপশন পয়েন্টার এবং অ্যাড্রেসিং এবং বাস ট্র্যাকিং ইউনিটের মতো বিভিন্ন ইউনিট রয়েছে। নিউমেরিক এক্সিকিউশন ইউনিট বা NEU প্রধানত একটি মাইক্রোকোড কন্ট্রোল ইউনিট, রেজিস্টার স্ট্যাক, প্রোগ্রামেবল শিফটার, অস্থায়ী নিবন্ধন , পাটিগণিত মডিউল, এক্সপোনেন্ট মডিউল এবং ভাগ করা অপারেন্ড সারি।

কপ্রসেসরের কন্ট্রোল ইউনিট হল নির্দেশ নির্বাহ (IE) নিয়ন্ত্রণ করা যার জন্য নিউমেরিক এক্সিকিউশন ইউনিট দায়ী। বেশিরভাগ ক্ষেত্রে, সাংখ্যিক এক্সিকিউশন ইউনিটের মাইক্রোকোড কন্ট্রোল ইউনিট (CU) কপ্রসেসরের কন্ট্রোল ইউনিট থেকে সংখ্যাসূচক নির্দেশাবলী পায়। এই কপ্রসেসরে 80 বিটের সম্পূর্ণ 8-রেজিস্টার রয়েছে এবং এর প্রতিটি LIFO স্ট্যাকে ব্যবহার করা হয়। সহ-প্রসেসর নির্দেশাবলী যে অপারেন্ডের উপর থাকবে তা রেজিস্টার স্ট্যাকে বিদ্যমান।

  পিসিবিওয়ে

বিদ্যমান স্ট্যাকটি 3-বিট এসপি (স্ট্যাক পয়েন্টার) এর মাধ্যমে নির্দেশিত হয় যা 8 স্ট্যাক রেজিস্টার দেখানোর জন্য 000 - 111 পর্যন্ত বাইনারি মান ধারণ করে। এটি LIFO মোডে একটি বৃত্তাকার স্ট্যাক উপায়ে কাজ করে। কিন্তু, একবার রিসেট ক্রিয়াটি ঘটলে পয়েন্টারটি বাইনারি মান '000' দ্বারা আরম্ভ করা যেতে পারে।

সাংখ্যিক ডেটা তিনটি শ্রেণীবিভাগ যার উপর সহ-প্রসেসর ফাংশনগুলি দশমিক সংখ্যা, বাস্তব সংখ্যা এবং বাইনারি পূর্ণসংখ্যার প্যাক করা হয়। বাইনারি পূর্ণসংখ্যা তিনটি প্রকার 16-বিট শব্দ পূর্ণসংখ্যা, 32-বিট সংক্ষিপ্ত পূর্ণসংখ্যা এবং 64-বিট দীর্ঘ পূর্ণসংখ্যা। 80-বিট বিসিডি ফরম্যাট প্যাকড দশমিক সংখ্যা নির্দেশ করে যখন বাস্তব সংখ্যা 3 প্রকার; 32-বিট সংক্ষিপ্ত বাস্তব, 64-বিট দীর্ঘ বাস্তব, এবং 80-বিট অস্থায়ী বাস্তব।

কপ্রসেসরে সাংখ্যিক তথ্য স্থানান্তরের জন্য হয় a 16-বিট এক্সপোনেন্ট বাস বা একটি 64-বিট ম্যান্টিসা বাস ব্যবহার করা হয় . কোপ্রসেসরে একটি 16-বিট নিয়ন্ত্রণ শব্দ এবং একটি 16-বিট স্ট্যাটাস শব্দ রয়েছে।

কন্ট্রোল শব্দটি কন্ট্রোল রেজিস্টারে লেখা হয় এবং এটি এমনভাবে ঘটে যে কপ্রসেসর প্রাথমিকভাবে মেমরির অবস্থানের মধ্যে নিয়ন্ত্রণ শব্দটি লিখে। এর পরে, কপ্রসেসর কেবল মেমরি অবস্থান ব্যবহার করে নিয়ন্ত্রণ শব্দটি পড়ে এবং নিয়ন্ত্রণ রেজিস্টারে সংরক্ষণ করে।

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

কোপ্রসেসর কিভাবে কাজ করে?

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

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

কপ্রসেসরের প্রকারভেদ

নিম্নলিখিত মত নির্মাতাদের উপর ভিত্তি করে উপলব্ধ বিভিন্ন কোপ্রসেসর আছে.

ইন্টেল 8087 কোপ্রসেসর

Intel 8087 হল একটি বিশেষভাবে ডিজাইন করা কো-প্রসেসর যা গাণিতিক গণনা করতে ব্যবহৃত হয় যাতে ফ্লোটিং-পয়েন্ট এবং পূর্ণসংখ্যার মান অন্তর্ভুক্ত থাকে। কখনও কখনও, এটি একটি সংখ্যাসূচক ডেটা প্রসেসর এবং গণিত প্রসেসর হিসাবেও পরিচিত। এটি ইন্টেল 80188, 8086, 80186 এবং 8088 প্রসেসরের জন্য একটি সংখ্যাসূচক সহ-প্রসেসর। 8087 কোপ্রসেসরে আটটি 80-বিট সাধারণ রেজিস্টার রয়েছে যা স্ট্যাক হিসাবে কার্যকর করা হয়। সুতরাং, সমস্ত ফ্লোটিং পয়েন্ট অপারেশনগুলি স্ট্যাক থেকে এবং বাহ্যিক মেমরি থেকে ডেটা দিয়ে সঞ্চালিত হয়।

  ইন্টেল 8087 কোপ্রসেসর
ইন্টেল 8087 কোপ্রসেসর

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

তাই দ্বৈত-নির্ভুল সংখ্যা থেকে একটি একক-নির্ভুল সংখ্যায় স্যুইচ করা অন্যথায় 64-বিট পূর্ণসংখ্যা - 32-বিট/16-বিট পূর্ণসংখ্যা থেকে কোনো উল্লেখযোগ্য বুস্ট কর্মক্ষমতা দেয় না। 8087 কোপ্রসেসরগুলি শুধুমাত্র ইন্টেল দ্বারা তৈরি করা হয়নি কিন্তু AMD, Cyrix এবং IBMও এই কপ্রসেসরগুলি তৈরি করে।

মটোরোলা 68881

Motorola 68881 হল একটি কপ্রসেসর যা মূলত Motorola 68K এর ২য় প্রজন্মের সাথে ব্যবহৃত হয় মাইক্রোপ্রসেসর মটোরোলা 68030 এবং 68020 এর মত। তাত্ত্বিকভাবে, এই কোপ্রসেসরটি পেরিফেরাল ডিভাইস হিসাবে আগের 68000 বা 68010 CPU-এর সাথে ব্যবহার করা হয়।

  মটোরোলা 68881
মটোরোলা 68881

Motorola 68881 সহ-প্রসেসরটি কেবল একটি মেমরি-ম্যাপ করা ডিভাইসের মতো কাজ করে। একবার প্রধান CPU সহ-প্রসেসরের নির্দেশ লোড করে, তারপর এটি CIR (Co-processor Interface Registers) এ নির্দেশনা কোড লিখে, যা CPU-এর ঠিকানা স্থানের মধ্যে ম্যাপ করা হয় এবং এর পরে, এটির প্রতিক্রিয়া পড়ে। সিআইআর রেজিস্টারের একটি থেকে সহ-প্রসেসর।

Motorola 68881/68882 কোপ্রসেসর IBM RT PC ওয়ার্কস্টেশন, Sun Microsystems Sun-3 ওয়ার্কস্টেশন, NeXT Computer, Apple Computer Macintosh II ফ্যামিলি, Amiga 3000, Sharp X68000, Convergent Technologies, FTTconalga Mighty, FTTconalga MightyF-এ ব্যবহার করা হয়েছে। এই প্রসেসরগুলি 68000-এ মেমরি-ম্যাপ করা ডিভাইসের মতো কিছু তৃতীয়-পক্ষ Atari এবং Amiga পণ্যগুলিতেও ব্যবহৃত হয়।

অ্যাপল মোশন কপ্রসেসর

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

  অ্যাপল মোশন কপ্রসেসর
অ্যাপল মোশন কপ্রসেসর

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

প্রসেসর এবং কপ্রসেসরের মধ্যে পার্থক্য

প্রসেসর এবং কপ্রসেসরের মধ্যে পার্থক্য নিম্নলিখিতগুলি অন্তর্ভুক্ত করে।

প্রসেসর

কোপ্রসেসর

প্রসেসর হল কম্পিউটারের প্রধান প্রসেসিং ইউনিট যা নির্দেশের উপর ভিত্তি করে বিভিন্ন পাটিগণিত, যুক্তি ও নিয়ন্ত্রণ ক্রিয়া সম্পাদন করে। কোপ্রসেসর হল একটি বিশেষ প্রসেসর যা মূল প্রসেসরকে সমর্থন দেয়।

প্রসেসর সমস্ত প্রধান কাজের যত্ন নেয়

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

সুবিধাদি

একটি কোপ্রসেসরের সুবিধার মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত রয়েছে।

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

অসুবিধা

কোপ্রসেসরগুলির অসুবিধাগুলির মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত রয়েছে।

  • কোপ্রসেসর মেমরি থেকে নির্দেশাবলী পুনরুদ্ধার করতে, নির্দেশাবলী সরাসরি কার্যকর করতে, মেমরি পরিচালনা করতে, I/O ক্রিয়াকলাপ সম্পাদন করতে সক্ষম নয়
  • এটি প্রধান প্রসেসরের উপর নির্ভর করে কোপ্রসেসর নির্দেশাবলী পুনরুদ্ধার করা এবং অন্যান্য সমস্ত ক্রিয়াকলাপের যত্ন নেওয়া যা কপ্রসেসরের সাথে সম্পর্কিত নয়।
  • এটি সিস্টেমের প্রধান প্রসেসর নয়।
  • কোপ্রসেসর প্রধান মাইক্রোপ্রসেসর ছাড়া কাজ করতে পারে না।

অ্যাপ্লিকেশন

কোপ্রসেসরের অ্যাপ্লিকেশনগুলির মধ্যে নিম্নলিখিতগুলি অন্তর্ভুক্ত রয়েছে।

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

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