NOR flash replacement
اگرچہ فلیش میموری اپنے غیر اتار چڑھاؤ، شاک مزاحمت، چھوٹے سائز اور کم توانائی کی کھپت کی وجہ سے سرایت شدہ نظاموں میں سب سے زیادہ مقبول اسٹوریج میں سے ایک ہے، لیکن اس کی درخواست اس کے اصل ڈیزائن سے کہیں زیادہ بڑھ گئی ہے۔ اس کے اصل ڈیزائن کی بنیاد پر، این او آر فلیش میموری کو پروگراموں کے بائنری کوڈ کو اسٹور کرنے کے لیے ڈیزائن کیا گیا ہے کیونکہ یہ ایکس آئی پی (ایکزیکٹ-ان-پلیس) اور ریڈ آپریشنز میں اعلی کارکردگی کی حمایت کرتا ہے، جبکہ این اے این ڈی فلیش میموری کو ڈیٹا اسٹوریج کے طور پر استعمال کیا جاتا ہے کیونکہ اس کی کم قیمت اور رائٹ/ایرس آپریشنز میں اعلی کارکردگی، این او آر فلیش کے مقابلے میں ہوتی ہے۔ حالیہ برسوں میں NAND فلیش کی قیمت NOR فلیش کے مقابلے میں بہت تیزی سے کم ہوئی ہے۔ اس طرح، ہارڈ ویئر کی لاگت کو بالآخر کم کرنے کے لیے، این او آر فلیش (مارکیٹ کی مضبوط مانگ سے متاثر) کو تبدیل کرنے کے لیے این اے این ڈی فلیش کا استعمال سرایت شدہ نظام کے ڈیزائنوں میں ایک نیا رجحان بن جاتا ہے، خاص طور پر موبائل فونز اور آرکیڈ گیمز پر۔ جائزہ متبادل کا انحصار فلیش میموری کے اچھی طرح سے ڈیزائن کردہ انتظام پر ہوتا ہے، جو کہ میزبان نظام پر سافٹ ویئر (خام میڈیم کے طور پر) یا اس کے آلات کے اندر ہارڈ ویئر سرکٹس/فرم ویئر کے ذریعے انجام دیا جاتا ہے۔ یہاں، محدود میموری-اسپیس کی ضروریات اور ایک موثر نفاذ کے ساتھ ایک موثر پیشن گوئی کا طریقہ کار تجویز کیا گیا ہے۔ پیشن گوئی کا طریقہ کار کام کرنے والے سیٹ کے تصور کو اپنا کر پیشن گوئی گراف کی تعمیر کے لیے پروگرام پر عمل درآمد کے رسائی کے نمونوں کو جمع کرتا ہے۔ پیشن گوئی کے گراف کے مطابق، پیشن گوئی کا طریقہ کار ڈیٹا (/کوڈ) کو ایس آر اے ایم کیش میں پہلے سے حاصل کرتا ہے، تاکہ کیش مس ریٹ کو کم کیا جا سکے۔ لہذا، پروگرام کے نفاذ کی کارکردگی کو بہتر بنایا جاتا ہے اور NAND اور NOR کے درمیان پڑھنے کی کارکردگی کے فرق کو مؤثر طریقے سے پر کیا جاتا ہے۔ بوٹ کوڈ کے لیے NAND فلیش کا استعمال کرنے کے لیے کوڈ کو شیڈو کرنے کے لیے DRAM کے استعمال کی ضرورت ہوتی ہے۔ ایک موثر پیشگی حکمت عملی میموری کے درجہ بندی میں مقبول کیشنگ آئیڈیاز سے مختلف، اس نقطہ نظر کا مقصد ایک ایپلی کیشن پر مبنی کیشنگ میکانزم ہے، جو ایپلی کیشنز کے دیئے گئے نفاذ کے نشانات کی بنیاد پر پیشن گوئی کی مدد سے پیشگی حاصل کرنے کو اپناتا ہے۔ سرایت شدہ نظاموں کے ڈیزائنوں کو ایپلی کیشنز کے ایک محدود سیٹ کے ساتھ سمجھا جاتا ہے، جیسے کہ موبائل فون میں منتخب کردہ سسٹم پروگراموں کا ایک سیٹ یا تفریحی پارک مشینوں کے آرکیڈ گیمز۔ اس کے علاوہ، ایس آر اے ایم کی صلاحیت اور کمپیوٹنگ کی طاقت نفاذ میں محدود ہیں۔ ہارڈ ویئر فن تعمیر ہارڈ ویئر ڈیزائن میں چار ضروری اجزاء شامل ہیں: میزبان انٹرفیس، ایس آر اے ایم (کیش)، این اے این ڈی فلیش میموری، اور کنٹرول منطق۔ این اے این ڈی اور این او آر کے درمیان کارکردگی کے فرق کو پر کرنے کے لیے، ایس آر اے ایم این اے این ڈی پر ڈیٹا تک رسائی کے لیے کیش پرت کے طور پر کام کرتا ہے۔ میزبان انٹرفیس ایڈریس اور ڈیٹا بسوں کے ذریعے میزبان نظام کے ساتھ بات چیت کا ذمہ دار ہے۔ سب سے اہم بات یہ ہے کہ کنٹرول منطق کیشنگ سرگرمی کا انتظام کرتی ہے اور نینڈ فلیش اور ایس آر اے ایم کے ساتھ این او آر فلیش کی سروس ایمولیشن فراہم کرتی ہے۔ اس میں سسٹم کی کارکردگی کو بہتر بنانے کے لیے ایک ذہین پیشن گوئی کا طریقہ کار نافذ ہونا چاہیے۔ کنٹرول منطق میں دو بڑے اجزاء ہوتے ہیں: کنورٹر ایس آر اے ایم کیش کے ساتھ این اے این ڈی فلیش پر این او آر فلیش رسائی کی تقلید کرتا ہے، جہاں ایڈریس کا ترجمہ بائٹ ایڈریسنگ (این او آر کے لیے) سے لاجیکل بلاک ایڈریس (ایل بی اے) ایڈریسنگ (این اے این ڈی کے لیے) میں کیا جانا چاہیے۔ نوٹ کریں کہ ہر 512B/2KB NAND صفحہ بالترتیب ایک اور چار LBA سے مطابقت رکھتا ہے۔ پری فیچ طریقہ کار نینڈ سے ایس آر اے ایم تک ڈیٹا کو پہلے سے حاصل کرنے کی کوشش کرتا ہے تاکہ ایس آر اے ایم پر این او آر تک رسائی کی ہٹ ریٹ زیادہ ہو۔ طریقہ کار کو جمع شدہ نشانات کے ایک سیٹ کے ذریعے ٹارگٹ ایپلی کیشن کے رویے کو تجزیہ اور نکالنا چاہیے۔ جمع شدہ نشانات سے نکالے گئے رسائی کے نمونوں کے مطابق، طریقہ کار پیشن گوئی کی معلومات پیدا کرتا ہے، جسے پیشن گوئی گراف کہا جاتا ہے۔ پیشن گوئی گراف این او آر (یا این اے این ڈی) پر ایپلی کیشن پر عمل درآمد کا رسائی کا نمونہ ایل بی اے کی ترتیب پر مشتمل ہوتا ہے۔ چونکہ ایک ایپلیکیشن متعدد بار چلتی ہے، اس لیے ایپلیکیشن پر عمل درآمد کے ممکنہ رسائی کے نمونے کی "عملی طور پر" مکمل تصویر ظاہر ہو سکتی ہے۔ چونکہ زیادہ تر ایپلی کیشن پر عمل درآمد ان پٹ پر منحصر یا ڈیٹا پر مبنی ہوتے ہیں، اس لیے کسی دیئے گئے ایل بی اے کے بعد ایک سے زیادہ بعد کے ایل بی اے ہو سکتے ہیں، جہاں ہر ایل بی اے گراف میں ایک نوڈ سے مطابقت رکھتا ہے۔ ایک سے زیادہ بعد کے ایل بی اے والے نوڈس کو برانچ نوڈس کہا جاتا ہے، اور دیگر کو باقاعدہ نوڈس کہا جاتا ہے۔ وہ گراف جو رسائی کے نمونوں سے مطابقت رکھتا ہے اسے مخصوص ایپلیکیشن کا پیشن گوئی گراف کہا جاتا ہے۔ اگر نینڈ فلیش میں صفحات کو وقت پر پہلے سے حاصل کیا جا سکتا ہے، اور کیشنگ کے لیے کافی ایس آر اے ایم جگہ ہے، تو تمام ڈیٹا تک رسائی ایس آر اے ایم پر کی جا سکتی ہے۔ پیشین گوئی کے گراف کو کم سے کم اوور ہیڈز (ایس آر اے ایم کی صلاحیت) کے ساتھ فلیش میموری پر محفوظ کرنے کے لیے، ہر باقاعدہ نوڈ کی بعد کی ایل بی اے معلومات کو متعلقہ صفحہ کے اسپیئر ایریا میں محفوظ کیا جاتا ہے۔ اس کی وجہ یہ ہے کہ موجودہ نفاذ میں کسی پیج کے اسپیئر ایریا میں غیر استعمال شدہ جگہ ہوتی ہے، اور کسی پیج کو پڑھنا عام طور پر اس کے ڈیٹا اور اسپیئر ایریا کو بیک وقت پڑھنے کے ساتھ آتا ہے۔ اس طرح، باقاعدہ نوڈ کی بعد کی ایل بی اے معلومات تک رسائی بغیر کسی اضافی لاگت کے آتی ہے۔ چونکہ برانچ نوڈ میں ایک سے زیادہ بعد کے ایل بی اے ہوتے ہیں، اس لیے متعلقہ پیج کے اسپیئر ایریا میں معلومات کو ذخیرہ کرنے کے لیے کافی خالی جگہ نہیں ہو سکتی ہے۔ اس طرح، تمام برانچ نوڈس کی بعد کی ایل بی اے معلومات کو محفوظ کرنے کے لیے ایک برانچ ٹیبل برقرار رکھا جاتا ہے۔ برانچ ٹیبل کا ابتدائی اندراج کا پتہ جو برانچ نوڈ سے مطابقت رکھتا ہے، متعلقہ صفحہ کے اسپیئر ایریا میں محفوظ کیا جا سکتا ہے۔ ابتدائی اندراج برانچ نوڈ کے بعد کے ایل بی اے کی تعداد کو ریکارڈ کرتا ہے، اور اس کے بعد کے ایل بی اے کو ابتدائی اندراج کے بعد اندراجات میں محفوظ کیا جاتا ہے۔ برانچ ٹیبل کو فلیش میموری پر محفوظ کیا جا سکتا ہے۔ رن ٹائم کے دوران، بہتر کارکردگی کے لیے پوری ٹیبل کو ایس آر اے ایم میں لوڈ کیا جا سکتا ہے۔ اگر کافی ایس آر اے ایم جگہ نہیں ہے، تو میز کے حصوں کو آن ڈیمانڈ انداز میں لوڈ کیا جا سکتا ہے۔ پریفیچ طریقہ کار پریفیچ طریقہ کار کا مقصد ایک دی گئی پیشن گوئی گراف کی بنیاد پر نینڈ سے ڈیٹا کو پہلے سے حاصل کرنا ہے تاکہ زیادہ تر ڈیٹا تک رسائی ایس آر اے ایم پر ہو۔ بنیادی خیال یہ ہے کہ گراف میں ایل بی اے آرڈر پر عمل کرتے ہوئے ڈیٹا کو پہلے سے حاصل کیا جائے۔ کیش میں ایک منتخب صفحہ کو مؤثر طریقے سے تلاش کرنے کے لیے، کیش مینجمنٹ میں ایک چکور قطار کو اپنایا جاتا ہے۔ این اے این ڈی فلیش سے پہلے سے حاصل کردہ ڈیٹا کو انکیو کیا جاتا ہے، جبکہ دوسری طرف میزبان کو منتقل کردہ ڈیٹا کو ڈیکیو کیا جاتا ہے۔ پیشگی طریقہ کار لالچی انداز میں کیا جاتا ہے: پی 1 کو آخری پیشگی صفحہ ہونے دیں۔ اگر پی 1 باقاعدہ نوڈ سے مطابقت رکھتا ہے، تو وہ صفحہ جو بعد کے ایل بی اے سے مطابقت رکھتا ہے اسے پہلے سے حاصل کیا جاتا ہے۔ اگر پی 1 برانچ نوڈ سے مطابقت رکھتا ہے، تو طریقہ کار کو تمام ممکنہ اگلے ایل بی اے لنکس کو مساوی بنیاد اور راؤنڈ رابن طریقے سے پیروی کرکے صفحات کو پہلے سے حاصل کرنا چاہئے۔ 2 ڈی نینڈ کو 3 ڈی نینڈ سے تبدیل کرنا 2021 تک، 2 ڈی نینڈ کو 3 ڈی نینڈ سے تبدیل کرنا شروع ہو چکا ہے۔ تھری ڈی نینڈ میں فی بٹ کم لاگت اور بہتر وشوسنییتا کے لیے جدید ترین کنٹرولر ٹیکنالوجی کے فوائد ہیں۔ نتیجتا، کم جی بی کی سطح پر بھی، کوڈ اسٹوریج کے لیے تھری ڈی نینڈ ترجیحی آپشن ہے۔ NAND فلیش میموری NAND بمقابلہ NOR سیمسنگ ونینڈ فلیش بیرونی لنکس فلیش میموری ریسرچ گروپ ایک غیر مستحکم میموری جائزہ NAND فلیش NAND فلیش ایپلی کیشنز سالڈ اسٹیٹ کمپیوٹر اسٹوریج میڈیا کمپیوٹر میموری غیر مستحکم میموری کیا ہے