কেন এইচপিএমআই ভিডিও প্রকল্পের জন্য এফপিজিএগুলি প্রায়শই ব্যবহৃত হয়?


24

আপনি যদি হ্যাকডয়ের মতো কোনও সাইটে এইচডিএমআই প্রকল্পগুলি দেখেন তবে আপনি দেখতে পাবেন যে কেবলমাত্র তাদের প্রত্যেকটিতে একটি এফপিজিএ জড়িত। আমি মনে করি না আমি HDMI আউটপুট সহ এমন কোনও DIY প্রকল্প দেখেছি যা কোনও এফপিজিএ ব্যবহার করে নি।

কিন্তু কেন? আমি যতদূর বলতে পারি, এফপিজিএগুলি ব্যয়বহুল, প্রায় $ 70-। 100। এটিকে রাস্পবেরি পাই এর সাথে 35 ডলারে তুলনা করুন, যা আরও জটিল জিনিস এবং আউটপুট এইচডিএমআই করতে পারে। এআরএম কেন ব্যবহার হয় না? বা একটি এমনকি সস্তা মাইক্রোকন্ট্রোলার?

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


আপনি সস্তা জি পুসও পেতে পারেন (আরপিআই-এর মতো)। ক্যাচটি হ'ল তারা এমন কিছু করবেন না যা এইচডিএমআই লাইসেন্স লঙ্ঘন করে বা কিছু (ডিএমসিএ) দেশে সম্পূর্ণ অবৈধ। আপনি বেশিরভাগ প্রকল্পগুলির সাথে লিঙ্ক করেন। আপনি একটি আইপি কোর জিপিইউ কিনতে পারেন এবং এগুলি করতে এটি পরিবর্তন করতে পারেন ... তবে কে আপনার জন্য এটি কল্পিত করবে? এফপিজিএ হ'ল দরিদ্র মানুষ (বা জলদস্যুদের) কল্পিত।
ফিজে

উত্তর:


66

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

স্ট্রিমিং, সংকুচিত, হাই ডেফিনিশন ভিডিও সহ কাজ করার জন্য প্রচুর পরিমাণে ডেটা প্রক্রিয়াকরণ করা দরকার, এমন একটি কিছু যা সাধারণ উদ্দেশ্যে সিপিইউতে সম্ভব হয় না। 30 ফ্রেমের প্রতি সেকেন্ডে একটি 1080 পি ভিডিও সংকেতটিতে প্রতি সেকেন্ডে প্রায় 62 মিলিয়ন পিক্সেল রয়েছে। রাস্পবেরি পাই 700 মেগাহার্টজ এ চলে, তাই আপনার কাছে ওহ, পিক্সেল প্রতি 11 নির্দেশাবলী। এবং এটি 11 টি নির্দেশাবলী যা রিয়েল টাইমে অডবোল ভিডিও ফর্ম্যাটটিতে পড়ার, এটি পুনরুদ্ধার করা ইত্যাদি ইত্যাদি সম্ভব নয় etc. সময়কাল।

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

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

এই সমস্ত বাস্তবায়নের জন্য, ডিজিটাল যুক্তিই সত্যই একমাত্র সম্ভাব্য সমাধান। এবং যদি আপনি ডিজিটাল লজিকটি করেন তবে এফপিজিএগুলি হ'ল একমাত্র সম্ভাব্য সমাধান, কারণ এটি খুব দ্রুত এবং জটিল disc৪০০ যুক্তির পক্ষে জটিল এবং এএসআইসিগুলি হ'ল, বেশ কয়েকটি আদেশের দাম আরও ব্যয়বহুল।

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

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

সম্পাদনা: আমি কেবল বুঝতে পেরেছি যে fpga4fun সাইট এবং নব্য জিও ভিডিও প্রকল্প দুটিই পুরো এইচডি এর পরিবর্তে 640x480 এ চালিত। যাইহোক, অপারেশনটি খুব সরল করার সময় এটি সত্যিই এটি করে না। সর্বনিম্ন পিক্সেল ঘড়িটি 25 মেগাহার্টজ এবং 250 মেগাহার্টজ বিট ক্লক সহ। এর অর্থ হ'ল এফপিজিএ আসলে এইচডিএমআই প্রেরণের জন্য সিরিয়ালাইজারের প্রয়োজন হয় না, কেবল ডিডিআর ফ্লিপ ফ্লপ হয়। যদিও এটি এখনও ভিডিও ডেটাতে পড়ার বিষয়টি হ্রাস করে না। আপনি যদি কোনও হার্ডওয়ার সহায়তা ছাড়াই রাস্পবেরি পাইতে করতে চান তবে আপনাকে জিপিআইও থেকে নিয়মিত 25 মেগাহার্টজ পড়তে হবে read যা প্রতি 175 টি নির্দেশে একটি করে পড়ে। সম্ভাবনার রাজ্যে প্রবেশ করা, তবে আপনি যে কাজটি করতে পারবেন তার একমাত্র উপায় হ্যান্ড-কোডেড অ্যাসেম্বলি সহ খালি ধাতু (কোনও লিনাক্স নয়) on


2
এখন যেহেতু আমি 00৪০০ যুক্তির কথা উল্লেখ করেছি ... আমি অবাক হয়েছি যে যদি যুক্তিযুক্ত যুক্তি দিয়ে কোনও এইচডিএমআই সিগন্যাল তৈরি করা সম্ভব হয়। Fpga4fun সাইটটিতে 250 এমবি / সেকেন্ড বা 125 মেগাহার্টজ ডিডিআর বিট রেটের জন্য 25 মেগাহার্টজ এইচডিএমআই ক্লক সহ 640x480 ভিডিওর উদাহরণ রয়েছে। এটি এত বেশি নয় যে এটি পৃথক যুক্তিযুক্ত চিপগুলির সাথে কার্যকর হতে পারে। কারও জন্য একটি আকর্ষণীয় প্রকল্প হতে পারে।
alex.forencich

পিক্সেল প্রতি 11 নির্দেশাবলী - আপনি কিভাবে এই সংখ্যা গণনা করেছেন? আপনি কি প্রতি ক্লক টিকের জন্য একটি নির্দেশ অনুমান করছেন?
gronostaj

700 মেগাহার্টজ / 62 এমপিপিএস = 11.3। একক কোর সিপিইউয়ের জন্য প্রতি ঘড়ি চক্রের 1 পিপিইউর বলপার্ক অনুমান।
alex.forencich

এবং অন্য ধারনা যা আমি মনে করি যে আমি উল্লেখ করিনি তা হ'ল ইনপুট ভিডিও সিগন্যালটি কোনও হার্ডওয়্যার সহায়তা ছাড়াই জিপিআইও পিনগুলিতে বিট-ব্যঞ্জড হবে, সুতরাং এর জন্য নির্দেশাবলী সঠিক সময় সহ কোনওভাবে আন্তঃলিবিযুক্ত করতে হবে।
alex.forencich

15
টিএল; ডিআর: হার্ডওয়ারে করতে হবে। সফ্টওয়্যারটি খুব ধীর।
জেএস।
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.