 السلام علیکم سٹورنٹس، ایم واسیم کرام یہ سرسیلیات first لیکٹر اے سیریزا 45 لیکٹر اون دیجٹل روجیک دیزائنگی کیا سی حالہ انشاء اللہ، اچھے ہوںکہ پشلے دو لیکٹر سے ہم ممبری پر دیسکشن کررے ہیں آج بھی انشاء اللہ ممبری پر یہ دیسکشن جاری رہے گی آئی اس سے پہلے کہ ہم آج کی دیسکشن شروع کرے لیسکی لیکٹر کے کونتنس کو روائز کر لیئے لہذا ہم نے دسکتشنہ شروع کی تھی سنکارنس سٹیٹک رام سنکارنس سٹیٹک رام بسکل کیا ہے ہم یہ کہہ رہے تھے کہ جو ایسیکرونس سٹیٹک رام ہے اس میں جو دفنٹ ایکٹیوٹیز ہو رہی ہیں جو سنگنلز میکپ رسیر جنویٹ کر رہے وہ ایسیکرونس ہے کلوک کے وضہ سبکٹو نہیں ہے سو میمری کا ایکسیس ٹائم ہے اس پر دپن کرتا ہے اگر فاسٹ میمری ہے آپ کم ٹائم میں ریڈرائٹ اوپیشن کر پاہنگے اگر سلو میمری ہے تو آپ کو ٹائم زیادہ لگے گا اس کو امپروف کرنے کے لی ہم سنکارنس میمری use کرتے ہیں سنکارنس میمری میں بسکل اسی طرح کی ارے ہوگی جس میں انفومیشن سٹور ہو رہی اسی طرح کی ادرس دیکورز ہوں گے ان کے علاوہ کچھ لچس ہم امپلیمٹ کرتے ہیں یہ لچس جو ہے جتنی بھی کنٹرولس سیکنلز ہیں ان کو لچ کر لیتی ہیں کلوک سیکنلز پر میکروپوسسر جو ہے سنکارنس سٹائٹک ریام کے ساتھ کنکٹڈ ہے توی ادرس پاس توی دیرہ لائنس کنٹروللائنس اور کلوک سیکنل کلوک سیکنل پر یہ ساری انفومیشن لچ ہو جائے گی اور پھر کلوک ریٹ پر جو میمری ہے وہ اپنا کام کرے گی ریڈ اوپیشن کر سکتے ہیں اس میں ہم نے ایک بات دیکھی تھی برسٹ مورٹ تھا برسٹ مورٹ میں وہ سنکارنس ریام ہے اسی وجہ سے برسٹ مورٹ ہمارے پاس اوپیشن ہے برسٹ مورٹ میں بسکلی ہوتا کیا ہے اگر آپ چار یا اٹ یا سولان جو ہے کانٹنیوز لکیشنز میمری لکیشنز کو ایکسس کرنا چاہ رہے ہیں تو عام میمری میں جو اے سنکارنس میمری ہے اس میں آپ کو چار یا اٹ یا سولان ڈیفنڈ ادرسز جنویٹ کرنے پرنے گے اور پھر ان لکیشنز سے آپ ریڈ یا رائٹ کر سکتے ہیں اس میں ٹائم زیادہ لگے گا برسٹ مورٹ میں ہم یہ کہہ رہے ہیں کہ آپ ایک ادرس جو بیس ادرس جس کو کہا جاتا ہے اس کو آپ لچ کرنے جو سنکارنس ریام میں ادرس ڈیگورر کے آگے جو ادرس ڈیگورر سے پہلے لچ لگیوی اس میں یہ انفارمیشن ادرس جو ہے لچ ہو جائے گا اس کے بعد برسٹ مورٹ اس کو آپ ایکٹیویٹ کر دیں گے برسٹ مورٹ میں بسکلی اس ادرس کو انٹرنلی انکریمنٹ کرے گا اور ہر کلوک پلس پر آپ بسکلی ایک ریڈ یا رائٹ اوپریشن پر فرم کر سکتے ہیں اس سے ایکسیس ٹائم کافی کم ہو جائے گا اور آپ بہت جل بہت کم ٹائم میں آپ ملٹپل بائٹس یا انفارمیشن لکھ سکتے ہیں یا پڑھ سکتے ہیں ایکسٹ ہم نے دینامیک رائم ممبری کو دیکھتا تھا اس کا سٹرکٹر دیکھتا تھا بسکلی دینامیک رائم کا ایک سل ہے جو کہ لوجک ٹ کو یا ٹ کو سٹور کرتا ہے وہ ایک ٹرانزیسٹر اور ایک کپاسٹرس ہے ٹرانزیسٹر کا جو گیٹ ہے وہ رو سلیکٹ لائن کے ساتھ کونکٹٹ ہے جو بھی رو لائن سلیکٹ ہوگی اس سے ٹرانزیسٹر آن ہو جائے گا ٹرانزیسٹر کے جو دو ٹرملز ہیں ایک کپاسٹر کے ساتھ کونکٹٹ ہے دوسرہ جو ٹرملز ہے وہ کولم لائن کے ساتھ کونکٹٹ ہے جو ہی ایک رو لائن سلیکٹ ہوگی ہے اس کے ساتھ جتنے بھی ٹرانزیسٹرس لگیں وہ آن ہو جائیں گے اور ان کے کپاسٹر ہے جو ایک ان کے کپاسٹر لگا وہ کونکٹ ہو جائے گا کولم لائن سے کولم لائن کے ساتھ انپٹ اور اوٹپٹ دیتا لائن کے ساتھ کونکٹٹ ہیں دیتا ان اور دیتا اوٹٹ through اپپروکٹ بافرز اوٹپٹ بافرز اور انپٹ بافرز کے through کولم لائن کے ساتھ کونکٹ کیا ہوئے ان دیتا لائنز کو اسی طرح ایک اور ریفریش بافر ہے جو ہم use کرنے for refreshing the کپاسٹر بیسکلی آپ ایک location پے کچھ انفارمیشن کو لکنا چا رہے ہیں logic one یا logic zero کو لکنا چا رہے ہیں تو appropriate address بھیجیں گے appropriate address جو ہے decode ہوگا appropriate row line سلیکٹ ہو جائے گی اس row line جب سلیکٹ ہوگی اس سے transistor سلیکٹ ہو جائے گا on ہو جائے گا transistor جو ہے اپنہ کپاسٹر appropriate corresponding جو کولم لائنے اس کے ساتھ کونکٹ کر دے گا اگر آپ نے انفارمیشن لکنی ہے through the بافر now read right signal کو ایکٹیویٹ کریں گے right کرنے تو right signal سے بافر ایکٹیویٹ ہو جائے گا جو انفارمیشن آپ نے ڈیٹا ان لائن پے اپلائے کیے وہ کپاسٹر پے جاگے سٹور ہو جائے گی کپاسٹر چاہج ہو جائے گا اگر logic one ہے اگر logic zero آپ نے سٹور کرنے اسی دنہاگر اپنے read کرنا ہے again address بھی جنگے address سے ایک row line جو ہے وہ سلکت ہو جائے گے row line جب سلکت ہوگی تو appropriate جو transistors جنکے gates اس row لائنے سے connected ہیں وہ سلکت ہو جائے گے transistor کے جو دو output tunnels ایک end پے کپاسٹر لگا ہے دوسی end پے کولم لائن ہے so a direct connection establish ہو جائے گا کپاسٹر میں and column لائن میں اب آپ نے اگر پرنا ہے تو basically جو دیٹا اوٹ لائن سے information آپ پرسکتے ہیں آپ نے ایک output buffer اس کو activate کرنا ہے read signal activate ہوگا جو کہ اس output buffer کو enable کر دے گا پھرنیلے ہم نے کہہتا کہ refle fresh کیسے کریں گے ایک کمیں بات کی تھی جو کپاسٹر ہے اس کو periodically charge کرنا ہوگا اگر battery جارج نہیں کریں گے لوز کر جائے گا. جب ریفریش کریں گے آپ کو یہ دیکھنا ہوگا کہ انفارمیشن کنسی سٹورڈ ہے کپاستر پہ. تو آپ بیسکلی ریٹ کریں گے اور through the ریفریش سرکٹری جو ریفریش بافر لگاوہ وہاپس وہاں انفارمیشن جو ہے امپلیفائے کر کے اس پے سٹور کر رہے ہیں. تیسر جو ہم نے طوپک دسکلز کیا تھا وہ بیسکلی تھا ایڈرس ملٹیپلیکسنگ. ایڈرس ملٹیپلیکسنگ کی ضرورت کیوں پڑھے گی. بیسکلی ہم دینامیک ریم جب چپ کو دیکھنے اس میں ایک سیل جو ہے وہ ایڈرس ملٹ کیا ہم نے ٹرانزیسٹر اور ایک کپاستری کی مدل سے جو کہ بہت کم سپیس اوکیپائی کر رہے ہیں. تو that means دینامیک ریم جو ہے کافی ڈنس ممری ہے. بہت سن انفارمیشن آپ چھوٹے سے ایڈرس میں سٹور کر رہے ہیں. اگر آپ کسی بھی انڈیگریڈرس سرکٹ کو دیکھیں. اس کے پاکچ کو دیکھیں تو ایک سیل جو انڈیگریڈرس سرکٹ ہے وہ بہت چھوٹا ہوتا ہے. جو پاکچ ہے اس کا سائیس کمپیریٹیوکلی کافی بڑا ہے. بڑا اس لی رکھتے ہیں کیونکہ اوٹپوٹ جو پنس ہیں جس کے ساتھ ہم کو دیفنٹ سرکٹ سے آپس میں کونک کرتے ہیں. وہ پنس اگر بڑا ہوگا تب ہی ہم کونک کر پائے گا. اگر بہتی منیوٹ ہو تو of course کونکشن پوسیبل نہیں ہے. جو پنس کافی جگہ اوکیپائے کرنی ہے ایک پاکچ میں اگر ان کو ردیوز کردیں تو پاکچ سائیس جو ہے وہ چھوٹا ہوگا ہے گا. جو اگر لیت سپوز ہمارے پس ایڈرس لینس 20 ہے جس میں کمپیٹ ایک ایڈرس آپ سپیسوائے کرتے ہیں جس کی مدد سے ہم ایک لکیشن میمری میں ڈانائمیکرام میں سلک کر رہے ہیں اس ایڈرس کو اگر آپ سپلٹ کر دیں انٹو ایک column ایڈرس and row ایڈرس تو آپ کے پاس دس صرف ایڈرس لینس چاہئے تو آپ جو ہے کمپیٹ ایڈرس ایک ٹائم میں اپلائی نہیں کریں گے پہلے row ایڈرس اپلائے کریں گے اس کو انٹرنالی ڈانائمیکرام جو ہے وہ لچ کر لے گی اس کے بعد آپ column ایڈرس اپلائے کریں گے اس کو بھی انٹرنالی لچ کر لیا جائے گا پھر row ایڈرس جو ہے اور column ایڈرس ہے اس کو ڈیکوٹ کر کے ایک لکیشن کو سلک کیا جاتا ہے. بیسکلی جو ڈرس ڈانائمیکرام وہ ٹنٹی پنس تھی تو وہ ڈس ہوگی اگر ڈھت تھی تو چار ہو جنگی اس طرح آپ بیسکلی ڈرس کو ملٹی پلیکس کر رہے ہیں. جو ڈرس کو ملٹی پلیکس کرنے کے لیے آپ کو دو کنٹرول سیکنلس چاہیے رو ڈرس ڈروب اور column ڈرس ڈروب. جو ہی آپ رو ڈرس سپلائے کرتے ہیں آپ نے اس کو لچ کرنے اس کے ساتھ ایک کنٹرول سیکنل ہوگا رو ڈرس ڈروب. اگر آپ ڈرس سپلائے کرتے ہیں اس کو بھی آپ نے ڈرس ڈروب کرنے اس کے لیے ڈرس ڈروب سیکنل سمال ہو رہا ہوتا ہے. آج ہم ڈسکاشن جو ہے ڈرس سے کانٹینو کریں گے بیسکلی ہم دیکھتے ہیں کہ ڈانائمیکرام کا ڈرس ڈرس ڈرس ڈروب جب رو ڈرس سپلائے ہوگا ڈرس ڈرس ڈلائیش پے ساتھ mے ڈرس ڈروب کو ڈرس ڈے سکتے ہیں影해 جو orchestral ڈرس difféانای ڈرس آخرенить تو جب رو ڈرس ڈرس ڈیس ڈرس لاج ہو جائے گی جب رو ڈرس وٹرس ڈرس لاج ہو جاتا ہے اس کے بعد titleívامی خعنای رو ڈرس ڈرس ڈے سکتے ہیں ڈرس週 activation ڈرس درو ایڈرس اور کالوم ایڈرس کی مدد سے ہم نے اپروپریٹ لکیشن جو ہے جو سل ہے جو انفارمیشن سٹور ہے وہ سلک کر لی ہوئی ہے. سو تھوڑی ڈیلے کے بعد ڈیٹا ان لائن پے ہم انفارمیشن اپلائے کریں گے جو کہ اس لکیشن پے ہم نے ڈائٹ کرنی ہے. سو جو ہی ڈائٹ سیکنولڈی ایکٹیویٹ ہوتا ہے بسیچلی اس کے بعد ڈیل کے لیے ویلٹ ڈیٹا کو سٹیبل رکھنا ہے جو کہ ڈائیٹ ہے اس سے پہلے ڈائٹی کو کچھ میرموم ڈائیٹ کے لیے ڈائیٹ ہونا چاہئے ابھی ہم نے ڈانمیک ڈیلے کا ڈائیٹ ڈائیٹ ڈائیٹ ڈائیٹ دیکھیا بسیچلی اگر آپ اس ڈائیٹ ڈائیٹ ڈائیٹ ڈائیٹ ڈائیٹ ڈائیٹ ڈائیٹ ڈائیٹ آپ کمپیر کریں، سٹیٹیک رام سے تو ملتے جلتے ہیں ان میں جو فرق ہے وہ صرف ras اور ces signals کا ہے اور row address اور column address کا ہے کیونکہ dynamic ram میں جس ہم نے پہلے بات کی تھی address information ملٹی پلک سٹ ہے جس طرح سٹیٹیک رام میں ہم نے read signal جب activیت کرتے ہیں تو read ہم کر سکتے ہیں right signal کو activیت کرتے ہیں تو information جو ہم memory میں store کر سکتے ہیں بالکل اسی طرح dynamic ram میں بھی ہو رہا ہے in timing diagram میں ہم نے chip select signals یا output enable signals وہ نہیں دکھائے تھے next ہم بات کرتے ہیں fast mode access basically dynamic ram میں جیسے کہ ہم نے بتایا دو internal latches ہیں جن میں a row address stored ہے اور a column address stored ہے اس کی organization پہ جو dynamic ram کی organization ہے اس کو زر آپ visualize اگر کریں آپ کے پاس جو information ہے وہ arranged in the form of rows and columns. so اگر کسی ایک row کو لے لیں اس کے ساتھ بہت سارے transistor and capacitor کی combination attached ہے let's say 1 024 by 1 024 memory 1 megabit memory ہے اس کے 1 024 rows ہیں اور 1 024 columns ہیں. so کسی ایک row کو اگر لے لیں اس کے ساتھ جو attached transistors and capacitors ہیں وہ 1 024 ہوں گے. so جب بھی اس row کو آپ سلک کریں گے سارے 1 024 transistors جو ہم وہ activate ہو جائیں گے اور ان کے جو corresponding capacitors ہیں وہ اپنے corresponding column lines کے ساتھ connect ہو جائیں گے ok اب ایک جو row ہے اس کو ہم ایک page کے طور پہ کنسرر کرتے ہیں بسکلی جب آپ program execute کرتے ہیں کوئی بھی computer program execute کرتا ہے تو instructions جو ہم وہ a sequence میں ہوتی ہیں unless کیا آپ کا کوئی jump یا conditional statement آئے. so اگر آپ پر program execute کر رہے ہیں تو ایک instruction پڑیں گے next instruction پڑیں گے تیسی ایک instruction پڑیں گے and so on. these instructions ہیں یہ بسکلی sequential locations میں پڑی ہوئی ہیں. so اسی طرح آپ ازیوں کر سکتے ہیں کہ جو آپ کی dynamic ram ہے ایک row میں جو conjective or sequence میں جو columns ہیں وہ conjective memory locations کو represent کر رہے ہیں. so اگر آپ نے ایک sequence میں information پڑھنی ہے تو آپ ایک row سلک کر لیں اس کا جو start address ہے وہ اب store کر لیں row کا اس کے بعد اگر dynamic ram میں یہ facility ہو کہ وہ column address ہے خود سے internally activate کر رہے ہو یا increment کر رہے ہو. so that means اب ہر row میں سے ایک column سے information باری باری پڑھ لیں. so basically fast mode access میں یہ ہور ہے آپ ایک row سلک کر لیں اس کے بعد internally dynamic ram وہ column کو جو column address latch ہے اس کے contents کو increment کر رہے ہیں. یہ information جو column decoder ہے اس کے پاس جا رہے ہیں. so column decoder جو ہے ایک column select کر رہے. so that means آپ different cell سے باری باری information پڑھنے ہیں. fast page اس لی کہہ رہے ہیں کہ یہ جو طریقہ ہے the information کو read or write کرنے کا یہ fast ہے compared to single read write cell کو. اگر آپ کے پاس let's say multiple cells ہیں انسانوں کو باری باری پڑھنے ہے. so basically آپ کو کیا کرنا ہوگا آپ کو row address بھیجنا ہوگا column address بھیجنا ہوگا. اس کے بعد دوارہ سے آپ row address بھیجنگے column address بھیجنگے دوسر cell آپ ایکسس کریں گے. so fast mode میں آپ کو باری باری یہاں repeated لی row address نہیں بھیجنا پڑھنا رہا ہے. row address سیم ہے اسی row میں سے different columns آپ پڑھنے ہیں. so یہ دیکھتے یہ timing diagram کیسا ہوگا fast mode ایکسس گئی. fast page mode read cycle timing diagram دکھائے گے. سب سے اوپر address signals دکھائے گے ہیں. so true میں row address apply کرتے ہیں row address lines پہ. ساتھ میں rs signal کو activate کر دیتے ہیں. active low ہے تو اس کو low کر دیئے. so جو ہی وہ low ہوگا row address latch ہو جائے گا row address latch میں. اس کے بعد جو column addresses ہیں وہ dynamic ram internally خود سے generate کر رہا ہے. externally جو column address top signal ہے اس کو بار بار پلس کرنا پڑے گا. so پہلی case میں جو ہی column address top signal low ہوتا ہے. پہلہ column address generate ہو جائے گا. اس کے بعد جب دوارہ c as signal کو low کرتے ہیں. column 2 address generate ہو جائے گا. اسی طرح end میں اگر آپ دیکھیں جو ہی column address top signal low ہوتا ہے column n کا address generate ہو جائے گا. read write signal بھی وہ column address top کے signal کے ساتھ activate یا deactivate کر سکتے ہیں. so timing diagram میں read cycle دکھائے گیا ہے. so column address top جو ہی active ہوگا. ساتھ میں read signal کو بھی active کر دی ہے. so data out پہ ایک valid data information available ہوگی جو کہ that means column 1 سے پڑکلوٹ column سے پڑی گئے. that means column 1 سے پڑکلوٹ column 2 کو گا دیکھیں. column 2 address جب ہم پڑکلے کرتے ہیں. address lines پہ c as signal کو بھی activate کر دیتے ہیں. اس کی وجہ سے column address latch ہو جائے گا. یہ decode ہوگا. a column line select ہوگی کیونکہ read signal ہم نے active کیا ہوا ہے. so ہمارے پس information آجائے گی valid data out line پہ. اسی طرح آخری جو column address ہے وہ address lines پہ apply کریں گے. column address top signal کو activate کر رہے ہیں. read signal بھی active کیا ہے. so output line پہ information آجائے گی جو کہ column n پہ store کیوئی ہے. اس timing diagram کو اگر آپ دیکھیں شروع میں صرف ایک row address latch ہوئا ہے. ras signal جو ہے through out the read cycle active low رہا ہے. اور control جو column address stop signal ہے وہ externally باری باری آپ pulse کر رہے ہیں to allow reading from different columns. ابھی ہم نے fast page mode access کو دیکھا جس کی help سے ہم ایک row سے complete information read کر سکتے ہیں یا write کر سکتے ہیں. صرف ایک row جو address ہے اس کو latch کرنا ہوگا اور externally جو column address signal ہے اس کو باری باری pulse کرنا ہوگا جس کی وجہ سے ہم sequential columns ہیں ان کو select کر رہے ہیں اور access کرنے ہیں. آئیہ ہم بات کرتے ہیں refresh cycle کی. dynamic ram کی ہم نے جب شروع میں بات کی تھی ہم نے کہا تھا کہ capacitors جو ہیں اپنی information lose کر دیتے ہیں. so periodically d ram کو refresh کرنا ہوگا. refresh basically دو قسم کا ہوتا ہے ایک burst mode ہوتا ہے اور ایک distributed mode ہوتا ہے. burst mode میں basically آپ جو read write normal operations ہو رہے ہیں جو microprocessor کے through ہو رہے ہیں ان کو آپ suspend کر دیتے ہیں ان کو نہیں ہونے دیتے ہیں اور آپ refresh cycle پورا ایک چلاتے ہیں. refresh cycle میں تمام جو rows ہیں one at a time activate ہوتی یا select ہوتی جس کی وجہ سے جو بھی جتنے بھی transistors ہیں یا cells ہیں اس row کے ساتھ connected وہ سارے کے سارے refresh ہو جاتے ہیں. so that means اگر آپ کے پاس one megabit dynamic ram ہے جس کی one zero two four row lines ہیں اور one zero two four columns ہیں. so آپ کو one zero two four rows کو one at a time select کرنا ہوگا. so first row select کریں گے اس میں جتنے بھی one zero two four cells ہیں وہ refresh ہو جائیں گے اس کے بعد second row کو select کریں گے اس میں one zero two four cells ہیں وہ refresh ہو جائیں گے. so basically one zero two four rows کو آپ اس refresh cycle میں باری باری select کریں گے. total your time لگتا ہے اس میں تقیمن roughly 8 milliseconds لگتا ہے. so 8 milliseconds کے لئے microprocessor کو suspend کریں گے وہ read write operation نہیں کرا. so the memory dynamic ram وہ refresh ہو جائے گے. distributed refresh method ہے اس میں آپ microprocessor کو suspend نہیں کرتے. basically microprocessor بھی اپنے read write کام کر رہا ہے اور جب آپ دیکھتے ہیں کہ microprocessor memory کو access نہیں کر رہا رہا رہا رہا رہا رہا تو اس time میں آپ کا refresh circuit وہ activate ہو جائے گا اور memory کو refresh کرنا شروع کر دے گا. اب کیونکہ ایک single sequence میں ساری rows لکھ نہیں ہو رہی تو آپ کو یہ خیال لکھنا پڑے گا کہ کونسی row last time select ہوئی تھی جس کی وجہ وہ refresh ہو گے اب کونسی next row اس کو refresh کرنے. so basically internal a counter ہوتا ہے جو اس کو اس پہ چیک رکھ رہا رکھتا ہے کونسی row پہلے refresh ہوئی تھی اور next row کونسی ہوگی. اب اگر آپ simple mathematics کو abuse کریں. 1024 rows 8 milliseconds میں refresh ہو رہے تو ایک row basically کتنے time میں refresh کرنا ضروری ہے basically 7 microseconds کے قریب time آتا ہے. so distributed mode میں یہ خیال لکھنا پڑے گا کہ ہر جو row ہے 7 microsecond کے بعد refresh ہو جائے. اگر یہ time آپ meet نہیں کریں گے basically information lose ہو جائے گی. refresh cycle کے بھی دو different types ہیں. ایک ہے row address stop only rs only اور دوسی جو طب ہے ces before rs. rs میں basically rs signal activate ہو جائے گا جس کی وجہ سے ہم ایک row کو select کرنے. ces signal جو ہے وہ inactive رہتا ہے externally ہم ایک counter لگانا پڑے گا جو کہ وہ خود سے increment ہو رہا ہے اور rows کو باری باری select کر رہا ہے. basically ہم یہ کہہ رہا ہے کہ refresh cycle میں باری باری آپ نے row select کرنے ہیں تو وہ کیسے ہو رہا ہے external counter کی مدد سے جو rs signal ہاں initially activate ہو جائے گا جو initial row ہے اس کو latch کر لے گا اس کے بعد external counter ہے وہ row addresses generate کرے گا اور ساری جو dynamic ram ہے وہ refresh ہو جائے گی. جو دوسرہ method ہے ces before rs. ces normally if you read write cycle کو دیکھا جائے تو rs signal پہلے activate ہوتا ہے اس کے بعد ces signal activate ہوتا ہے اگر ces signal پہلے activate ہو جائے اور اس کے بعد rs ہو تو basically یہ signal ہے ایک refresh cycle کو run کرنے کے لیے اس میں ہوتا یہ ہے کہ جو refresh control circuitry ہے dynamic ram کے اندر وہ ایک internal counter کو select کر دیے ہے. so internal counter جو ہے وہ responsible ہے different row addresses generate کرنے کے لیے اور اس کی مدد سے ہم جو ہے پوری dynamic ram کو refresh کر لیے. basically اگر آپ کے پاس وہ پورانہ دیگام ہو جو ہم نے Discuss کیا تھا اس کو اگر دیکھیں ایک data selector لگا ہو ہے. data selector کے دو انپٹس ہیں ایک جو انپٹ ہے internal counter ہے اس سے آر ہے اور دوسرہ جو انپٹ ہے Address latch سے آر ہے. Address latch basically external address lines کے ساتھ کونکٹ ہے. so ces before rs میں جو data selector ہے وہ select کر لیتا ہے internal counter کو. so internal counter سے جو addresses generate ہو رہے جو row addresses generate ہو رہے ہیں وہ آگے Address decorر کے پاس جا رہے ہیں row decorر کے پاس جا رہے ہیں جو کہ one row at a time select کر رہے ہیں. dynamic ram کی بھی different types ہوتی جس ہم نے static ram میں دیکھتا ہے synchronous ram تھی a synchronous ram تھی static ram تھی اسی طرح dynamic ram میں بھی different modes ہیں ایک تو fast page mode ہے fast page mode میں ہم نے بتایا ہے true میں ایک row select کر لیں گے then internally column addresses increment ہوں گے جو contents locations ہے اس row پہ cells جو ہیں وہ باری باری access ہوں گے read write کر سکتے ہیں اس کی وجہ سے ہم fast access کر سکتے ہیں information کو اس میں جو issue ہے بیسکلی جو ہی ca signal deactivate ہوتا ہے اس کی وجہ سے جو data out buffer ہے وہ بھی deselect ہو جاتا ہے. that means آپ information output پہ پر نہیں سکتے ہیں. that means آپ کو پہلے information جو ہے جو processor ہے microprocessor ہے وہ information پڑے گا اس کے بعد ca signal کو deactivate کرنا ہے. so if microprocessor let's say slow ہے یا کسی اور کام میں بزی ہے اس نے information نہیں پڑے تو ca signal کو deactivate نہیں کرنا اس کی وجہ سے جو data rate ہے جس پہ data transfer ہوتا ہے وہ slow down ہو جائے گا. now I have another type of dynamic ram ہے جس کو ہم کہتے ہیں extended output dynamic ram میں اسی طرح پیج موڈ ہوگا جس میں آپ row address specify کریں گے اس کے بعد internally column addresses جو ہیں increment ہو رہے ہیں جب آپ column address job apply کر رہے ہیں اس میں ہوتا یہ ہے کہ جو ca signal جب in deactivate ہوگا اس کی وجہ سے data output buffer جو ہے وہ deactivate نہیں ہوتا. that means data اس پہ موجود ہے یہ اس وقت deactivate ہوگا جب آپ next ca signal کو activate کر رہے ہیں. so آپ کے پاس مزید time مل جاتا ہے for reading the data. so basic difference دونوں میں یہ ہے تیسی جو تاپ ہے وہ synchronous dynamic ram ہے جو پہلے ہم دسکرس کرتے ہیں وہ ہے بیسکل a synchronous dynamic ram synchronous dynamic ram میں again latch اس ہیں and the information store ہو رہی ہے اور وہ microprocessor کے کلوک کی مدد سے چل رہی ہے. آئیے اب ہم بات کرتے ہیں read only memory پر. read only memory جب نشو میں دسکرس کیا تھا ہم کہہ رہے تھے کہ یہ اس memory سے ہم سب سے انفارمیشن ریٹ کر سکتے ہیں اس میں لکھ نہیں سکتے ہیں. use کیا ہوا ہو رہا ہے basically ہم یہ کہہ رہے تھے کہ کوئی بھی digital system ہے جب آپ اون کریں اس کو کچھ instructions چاہیں جاہاں تاکہ وہ آپ نے آپ کو initialize کر لے یا boot up جس کو کہتے ہیں. so basically یہ جو instructions ہے یہ بہت کم ہوتی ہیں جو کہ ایک چھوٹی سی ram میں آپ store کر سکتے ہیں. now of course اس کو اس انفارمیشن کو change آپ نے نہیں کرناگا اگر آپ change کریں گے تو that means next time جب اس system کو on کریں گے تو وہ properly on نہیں ہوگا initialize نہیں ہوگا اس میں. ram کا جو structure ہے کافی سیمپل ہے وہ ہم دیکھیں گے کہ کیا structure ہے کیسے انفارمیشن store ہو رہی ہے. ram کی different types ہیں. آئی پہلے ایک briefly دیکھ لے دیں کہ کتنی types ہیں اور کیسے ہم ان کو use کرتے ہیں. ram جو بیسک ram ہے اس کو ہم کہیں گے mask ram. یہ جو ہے manufacture یہ خود سے اس کو program کر دے گا. اس کے بعد آپ change نہیں کر سکتے. manufacture بھی اس کو change نہیں کر سکتا. so once only ہے manufacturing time پہ آپ انفارمیشن اس میں right کر رہے ہیں. ایک دوسی طیپ کی ram ہے جس کو ہم کہتے ہیں programmable ram. p-ram normally کتابوں میں books میں data sheets میں آپ کو نظر آئے گا. programmable ram ہے بیسکلی ایک دفعہ program کر سکتے ہیں. let's say آپ کوئی user ہیں کوئی application up بناتے ہیں. اس میں آپ کو ایک p-ram لگانی ہے. so information جو ہے p-ram میں آپ burn کر دیں گے. اس کے بعد آپ اس کو دوپارہ سے change نہیں کر سکتے. تو ایک بار program کرنے کی facility ہے آپ کے پاس. اس کے لعاوہ جو ہے erasable promise ہیں. that means ram بیسکلی ہے جن کو آپ بار بار erase کر سکتے ہیں. information جو ہے اس میں سے آپ remove کر سکتے ہیں اور اس کو دوپارہ سے program کر سکتے ہیں. بیسکلی اس کسم کی programmable ram ہے. erasable programmable ram ہے. یہ ادھر سمال ہوگی جیسے لب work میں آپ کو information جو آپ system design کر رہے ہیں تو آپ نے information پہلے ڈالی تست کیا. آپ کو نظر آتا ہے کہ this system ڈوپاری کام نہیں کر رہا. تو اب دوپارہ informations میں program کریں گے. جب finalize ہو جائے گا circuit تو پھر آپ بیسکلی ایک mask ram جو ہے اس کو program کر کے لگا سکتے ہیں اس میں. جو erasable programmable ram سے دو کسم کی ہوتی ہیں. ایک جو ہے اس کو uv e-prom کہتے ہیں uv کا مطلب ہے ultraviolet. بیسکلی جو ram ہے اس میں آپ نے program کر دے. information آپ نے eras کرنی ہیں تو اس کو ایک ultraviolet intense source of ultraviolet اس کے نیچے رکھیں گے اور کچھ منتز کے بعد جو information ہے وہ remove ہو جائے گے. دوسری جو e-prom ہے اس کو electrically erasable ram کہیں گے. electrically erasable جیسے نام سے زیر ہے اب electric pulses کی صورت میں اس کو program کریں گے اور اسی طرح اس کو erase بھی اسی طرح کریں گے. اب کیونکہ آپ کو prom جو ہے وہ circuit سے نکالنی نہیں پڑھتے uv light کے نیچے لیے. بیسکلی circuit میں رہتے ہوئے ادھر آپ درکلی program کر سکتے ہیں اور eras کر سکتے ہیں. بیسکلی یہ دو تین کسمیں ہیں ram کی. آئید دیکھتے ہیں کہ mask ram ہے اس کو implement کیسے کرتے ہیں. بیسکلی ایک cell جو ہے جو کے one یا zero کو store کرتا ہے وہ ایک transistor کی مدد سے implement کیا جاتا ہے. transistor جو پہلے ہم پڑھتے آ رہے ہیں MOSFET transistor ہے جس کا gate جو ہے وہ ایک row line کے ساتھ connected ہے اور transistor کا جو output ہے وہ ایک column line کے ساتھ connected ہے. جو بھی transistors ایک row کے ساتھ connected ہیں ان کے gates connected ہیں جو ہی ایک row select ہوتی ہے وہ سارے transistors بیسکلی activate ہو جائیں گے on ہو جائیں گے. ان سارے transistor کی output line ہے وہ column کے ساتھ connected ہے. so column پہ وہ information آ جائے گی. ایک transistor جو gate کے ساتھ جس کا gate row کے ساتھ connected ہے جب gate activate ہوگا transistor on ہوا output میں ہمیں five volts آ جائیں گے that means logic one آ جائے گا. اگر آپ نے logic zero program کرنا ہے تو بیسکلی کیا کریں گے جو connection ہے between the gate and the row وہ آپ نے remove کرنا ہے. بیسکلی آئی دیکھتے ہیں کہ جو ایک cell ہے جس میں آپ نے logic one program کیا ہوئے logic zero program کیا ہوئے یہ کیسے دکھائے دے رہے ہیں اور ان کے circuits کو دسکرس کرتے ہیں. rom cell کا circuit diagram دکھایا گیا ہے left hand side پہ ایک transistor ہے جس کا gate row line کے ساتھ connected ہے اس کا output جو ہے column line کے ساتھ connected ہے. جو ہی row select ہوگی transistor on ہو جائے گا اور output column line پہ five volts آ جائیں گے. five volts رپزن کرنے لوجک one کو. right hand side پہ اگر آپ دیکھیں اسی طرح کا transistor ہے اس کا gate وہ row کے ساتھ connected نہیں ہے. اب جب row select ہوتی ہے transistor select نہیں ہوگا so output پہ اس کے zero volts ہوں گے. zero volts رپزن کرنے لوجک zero کو. بیسکلی rom میں one store کرنے کے لیے یا logic one کو store کرنے کے لیے جو gate ہے اس کا connection row کے ساتھ ہے اور logic zero store کرنے کے لیے transistor کا show gate connection ہے وہ row کے ساتھ نہیں ہے disconnect کیا ہوا. ابھی ہم نے ایک rom کا structure دیکھے excel کا diagram دیکھا circuit diagram دیکھا جسے کہ diagram میں دکھائے گیا simply ایک transistor کی مدد سے ہم ایک bit of information کو store کر رہے ہیں. اگر transistor row کے ساتھ connected ہے one store ہو رہے اگر disconnected ہے اس کا gate جو ہے row کے ساتھ connection نہیں ہے zero store ہو رہے ہیں. بیسکلی rom جو ہے اسی طرح ایک array کی form میں organize ہوگی اس کے number of rows ہوں گے number of columns ہوں گے کوئی بھی cell اگر آپ نے access کرنے بسکلی read کرنے write تو کرنی سکتے. so again address بھیجیں گے address جو ہے وہ decode ہوگا appropriate row select ہوگی appropriate column select ہوگا or either سے information ہم پڑھ سکتے ہیں. ہم ایک example دیکھتے ہیں ایک simple let's say 8 rows ہیں اور 4 columns ہیں so basically کتنی information store ہوگی اور یہ transistor کیسے access ہوں گے basically 8 if rows ہیں اور 4 columns ہیں so we basically 4 bit information 8 location میں store کر رہے ہیں again ہر row کے ساتھ 4 transistors connected ہیں so let us suppose کہ پہلی row میں ہم 1 1 1 1 store کرنا چاہ رہے ہیں جو کہ ہم پڑھ سکتے ہیں so basically پہلی row کے ساتھ 4 transistor کے gates connected ہوگے so جو ہی آپ address بھیشتے ہیں پہلے location کا پہلی row select ہوگی جس کی مطلب سے 4 transistors on ہو جائیں گے ان 4 transistors کے output ہیں وہ appropriate corresponding column lines کے ساتھ connected ہیں and column lines سے ہم ڈیٹا پڑھ سکتے ہیں let us suppose جو 2nd row ہے یا 2nd location ہے اس میں سارے 0s store کیا ہوا سارے 0s store کرنے کا مطلب یہ ہے کہ اُس 2nd row پہ جو 4 transistors ہیں ان 4 کے gates جو ہیں row کے ساتھ connected نہیں ہیں so basically جب آپ address بھیشتے ہیں 2nd row کا 2nd row select ہوگی transistors کیونکہ select نہیں ہو رہے کیونکہ connection نہیں ان کا ان کے 4 corresponding columns output پہ 0s آئیں گے so اب جب information پڑیں گے آپ کو 4 0s ملیں گے اسی طرح let us suppose کی 3rd row میں جو 4 transistors ہیں 1 1 0 0 store کیا ہوا so again basically کیا ہوگا پہلے جو 2 transistors ہیں وہ row کے ساتھ connected ہیں ان کا gate کا connection ہوگا جو next 2 transistors ہیں ان کا gate connection row کے ساتھ نہیں ہوگا so again جب آپ address بھیشتے ہیں 3rd row select ہوگی پہلے 2 transistors کا output of course 5 volt 5 volt ہوگا logic 1 اور دوسرے جو next 2 transistors ہیں ان کا output 0 ہوگا تو آپ output پہ 1 1 0 0 پر سکتے ہیں جی جو بھی اپنے structure described کیا basically بڑا simple structure ہے ایک ہی decoder چاہئے جسے آپ row select کریں column select کرنے کی ضرورت نہیں ہیں جب آپ کا rom کا size بھڑ جاتا ہے so again اسے ہم نے ramen discuss کیا تھا decoder کا size بھی بھڑ جائے گا جس کی وجہ سے delay آئے گا excess time جو ہے بھڑ جائے گا so decoder کے size کو reduce کرنے کیلئے basically address کو split کرنے into row address and column address so اسی طریقے سے جب آپ address apply کرتے ہیں ان کو split کر لیا جاتا ہے row address decoder جو ہے row select کرے گا and column address decoder columns کو select کرے گا so جہاں ایک row and column intersect کریں basically وہ cell select کرنے other سے ہم information پڑھ لیتے ہیں read کر لیتے ہیں اس میں so آئی دیکھتے ہیں پہلے یہ جو ہم نے simple description کی تھی ایک rom کی structure کو دیکھ لیتے ہیں اور اس کے بعد پھر ایک actual rom کو دیکھتے ہیں جو کہ row and columns کی form organize ہے and select ہوتا ہے دیگرام میں rom کا general architecture دکھایا گیا جس میں صرف ایک address decoder ہے this rom میں basically 16 locations ہیں and 16 locations پر 1 byte store ہو رہے so at a time جب ایک location select ہوتی ہے 1 byte پڑھ سکتے ہیں so input lines of course 4 ہے کیونکہ 16 locations ہیں 2 raised to power 4 16 منتن address decoder کہ of course 4 inputs ہیں and 16 outputs ہیں depending on the address input 1 output select ہو گا جس کی مدد سے ہم 1 row کو select کریں جو squares دکھایا گے یہ basically represent کریں transistor کو جس کا gate row کے ساتھ جو ایک ایک ایک ڈیرسیپ پہلے ہی نہیں ہو سکتا ہے it depends on the logic one store ہوا بہایا یا zero store ہوا بہایا so let's suppose ایک ڈیرسیپ نے اپلائے کیا جس کی وجہ سے row 2 سلکت ہو جاتے ہیں row 2 میں جتنے بھی transistors ہیں وہ activate ہو جائیں گے اگر ان کا gate اس row کے ساتھ connect it ہے اگر ان کا gate connect it نہیں ہے so output پہ 0 آئے گا vertical lines دکھائے گی those column lines ہیں so inp information پر سکتے ہیں جیسا کہ ہم نے بتایا اکشال جو روم ہے اس کو оргانیس کیا جاتا ہے اندی فوم of a رے اس کے روز بھی ہیں ان کو ان کولمز بھی ہیں روز کو سپرٹلی سلک کرنے اور کولمز کو سپرٹلی سلک کرنا ہے دیگام میں ایک انٹرنل سٹرکچر آفے 264 انٹو 4 روم دکھایا گیا ہے that means 264 لکیشنز ہیں اور ہر لکیشن پے 4 بیٹس یا ایک نبل سٹورد ہے دیگام میں جیسا کہ میمری ارے میں دکھایا گیا ہے it's a 32 by 32 array that means 32 روز ہیں اور 32 کولمز ہیں so 264 انٹو 4 روم جو ہے 32 by 32 array میں کیسے implement ہو رہا ہے آئے زیادہ اس کو دسکس کرتے ہیں لیفٹن سیٹ پے ایک روڈیکوٹر دکھایا گیا جس کی 5 انپرٹ ادرس لائنز ہیں that means رو جو ڈیکوٹر ہے 5 ادرس بیٹس کو ڈیکوٹ کر رہا ہے اس کی ڈیکوٹر میں 32 لائنز ہوں گی that means 32 روز ہوں گے نیچے جو ہے کولم ڈیکوٹر اور ڈیکوٹر کے نام سے ایک بلک دکھایا گیا ہے جس کے انپرٹ پے 3 کولم ڈیکوٹر لائنز ہیں so ٹوٹرل جو ڈیکوٹر ہے 264 لکیشنز کو سلک کرنے کے لیے basically 8 لائنز چاہیے 5 جو لائنز ہیں وہ روڈیکوٹر ڈیکوٹ کر رہا ہے جس کی مدد سے ہم ایک روہ سلک کرنے out of 32 جو 3 مزید ڈیکوٹر لائنز ہیں ان کو کولم ڈیکوٹر جو وہ ڈیکوٹ کر رہا ہے جس کی وجہ سے ہم 8 basically output ڈیکوٹر لائنز کو یا ڈیکوٹر کو سلک کر سکتے ہیں ادر جو ڈیکوٹر کیا ہوا ہے اس میں basically ڈیکوٹر لائنز 32 ہے 8 نہیں ہے ڈیکوٹر basically implement کیا گیا ہے 8 x 1 ملٹی پلکسز کی مدد سے جو 4 8 x 1 ملٹی پلکسز دیوذ کیا گیا ہیں so 4 8 x 1 ملٹی پلکسز کرا Roberts还有 a ڈپلٹ کیا ہے so 48 x 1 ملٹی پلکسز جو اس יה抓 تو بیٹ ٹھا ہے فرماٹل 이번에 بہت وهاٹو返ش Push ایک نبل کا ایک bedsh جو pretty this is روڈکہا ڈپل کس ملٹی ڈپل ہے مت پل کیا سات جو جو즈سرہ defeat عنبال karma جو gis beت Hallo جوًا شاہدو رہا ہےADA مرے the new surely T وہ تیسرے 821 مٹیپلیکسر کے پہلے والے انپرٹ کے ساتھ کنکٹرد ہوگا اور اسی طرح چاہتھا جو بیٹھ ہے نیبلگہ وہ چاہتھے 821 مٹیپلیکسر کے پہلے والے انپرٹ کے ساتھ کنکٹرد ہوگا جو چاروہ مٹیپلیکسر ہیں وہ ساملٹینیسلی انپرٹس سلکت ہوتے ہیں اگر کالوم ایڈرس لائنس پہ 0000 ہے چاروہ مٹیپلیکسر کے پہلے والے انپرٹ سلکت ہو جائیں گے اور اوٹپوٹ پہ جو بھی انپرمیشن ہے پہلے والے انپرٹ پہ وہ اوٹپوٹ پہ آجائے گی اسی طرح جو نکسٹ نیبلگہ ہے اس کی چار پیٹھ جو ہیں سیکن انپرٹس چاروہ مٹیپلیکسر کے ساتھ کنکٹرد ہے اگر کالوم ایڈرس پہ 2 آرہا ہے تو سیکن انپرٹ سلکت ہو جائے گا اور اوٹپوٹ پہ سیکن نیبلگہ ہے وہ انپرمیشن ہم پڑھ سکتے ہیں سب سے نیچے چپ انیبلگہ سرکٹ دکھایا گیا بسکل ایک انگیٹ ہے جس کے انپرٹس ہیں چپ انیبلگہ ہم کریں گے تو اوٹپوٹ بفر وہ ایکٹیویٹ ہو رہا ہے اس کی مدد سے ہم انپرمیشن کو پڑھ سکتے ہیں اگر چپ انیبلگہ ایکٹیو نہیں ہے اوٹپوٹ بفر سلکت نہیں ہوں گے ہم انپرمیشن نہیں پڑھ سکتے ہیں ابھی ہم نے جنل آرکیٹیکشو دیکھا شروع میں جنل آرکیٹیکشو تسکیب کیا تھا جس میں ایک ہی دیکوٹر لگا ہوا تھا دیکوٹر کی مدد سے ہم دیکھا رو سلک کر رہے ہیں اور اس میں جو بھی انپرمیشن ہے وہ ہم پڑھ سکتے ہیں پھر ہم نے بات کی تھی جب آپ کا روم سائز انکریز ہو جاتا ہے تو ایک دیکوٹر ہم use نہیں کر سکتے ہیں کیونکہ دیکوٹر میں بہت سارے گیٹس جوز ہوں گے جس کی وجہ سے ایکسیس ٹائم بھر جائے گا آپ کو انپرمیشن لیٹھ پڑھیں گے ایکسیس ٹائم کو ردوز کرنے کے لی بسکلی آپ نے دیکوٹر دیزائنگ کو سیمپلیفائے کرنا ہے اسی طرح جس طرح ہم نے رام میں کیا تھا ایڈرس انپرٹ کو آپ سپٹ کرنے ہیں اور کولم ایڈرس اور رو ایڈرس دو بسکلی دیکوٹرز آپ use کر رہے ہیں جو کولم دیکوٹر ہے بسکلی وہ بھنا ہوا ہے ملٹی پلیکسس کی help سے این دو دیکوٹرز کی مدد سے ہم ایک پتریکولر لکیشن کو سلک کرتے ہیں وہ دوسرے انپرمیشن پڑھ لیے ایہی اب نیکس پات کرتے ہیں رام اپلکیشن پر رام کہاں اپلائے ہو رہا ہے سب سے پہلے ہم نے شروع میں بات کی تھی کہ رام بسکلی سیٹ آف انسٹرکشن ان کو سٹور کرنے کے لیے کام آتا ہے جب سسٹم آپ اون کریں گے وہ انپرمیشن رام سے پڑھے گا اپنے آپ کو انشلائس کر لے گا اس کے علاوہ رام ہم use کر سکتے ہیں for conversion بسکل conversion کیا ہے let's suppose کہ آپ کے پاس ایک binary information 4 bit binary information 0, 1, 2, 3, 4 اس کو آپ نے gray code میں binary code ہے gray code میں آپ نے convert کرنا ہے سب سے ایسان تا ایکہ یہ ہے کہ آپ ایک rom لیں اس کے address 0 پہ gray code کا equivalent 0 آپ سٹور کر دیں اسی طرح پہلی لکیشن پہ address 1 پہ gray code جو equivalent 1 وہ سٹور کر دیں اسی طرح لکیشن 10 ہوگی اس میں binary 10, 10, 10, 10 اس کا gray code equivalent وہ آپ سٹور کر دیں جب آپ نے convert کرنا ہے کسی بھی ایک number کو آپ number as an address generate کریں وہ rom کے input پہ apply کریں آپ read signal کو activate کردیں اس location پہ جو بھی information ہوگی وہ آپ پڑھ سکیں گے یہ تھوڑی دیر میں اس rom کو دیکھتے ہیں اس کے contents کو دیکھتے ہیں اور کن addresses پہ یہ contents پڑھیں گے اس کے بعد ہم دیکھیں گے read cycle of course rom میں جس ہم نے discuss کر رہے ہیں صرف read کر سکتے ہیں write نہیں کر سکتے ہیں تو read cycle کیسا ہوگا اس کے timing parameters وہ کیا ہوں گے وہ ہم next دیکھتے ہیں آئیے پہلے ہم دیکھتے ہیں rom کے contents کو جب rom use ہو رہا ہے for an application اس کے بعد read cycle کو before we have a look at the rom contents and read cycle کچھ اور application کی بات کر لیتے ہیں ایک application جو ہے basically look up table again conversion جو table ہے اس سے ملتا جلتا ہے look up table میں بھی کچھ values ہونگی آپ address generate کرتے ہیں جو appropriate value ہے اس کو آپ استعمال کریں so conversion table look up table ملتا جلتی چیزیں ہیں سا یہ دیکھتے ہیں ان کے contents کو diagram میں 16 location 4 bit rom دیکھایا گیا جس میں 16 different values stored ہیں ہر value جے 4 bit کی ہے so address 0 پے information جو store ہے وہ 0000 ہے اسی دنا پہلے address پے 1 store ہے address 2 پے 0011 ہے basically this گری گری کوڈ ہے for binary 2 اسی طرح address 3 پے 0010 store ہے گری کوڈ for binary 3 last location پے اگر آپ دیکھیں 1111 پے جو کہ 15 بھنتا ہے اس کا equivalent گری کوڈ equivalent ہے وہ 0000 ہے so اگر آپ نے binary کوڈ گری کوڈ میں convert کرنا ہے simply you address generate کریں گے اس ادرس پے جو بھی information ہوگی جو بھی data information ہوگی وہ represent کرے گا so let us suppose آپ address 0111 generate کریں جو کہ binary کوڈ 7 ہے اس لکیشن پے 0100 پڑھا ہو ہے جو کہ گری کوڈ 7 کا equivalent ہے اسی طرح اگر 1001 generate کرتے ہیں جو کہ represent کر رہا ہے binary 9 کو اس کا گری کوڈ equivalent ہے وہ 1101 ہے وہ اس کے corresponding data cells میں پڑھا ہو ہے جو کہ آپ read کر سکتے ہیں diagram میں rom کا read cycle time دکھایا گیا ہے کافی simple straight forward سا ہے شب سے پہلے جو ہے valid address signal دکھایا گیا ہے اس کے بعد chip select signal دکھایا گیا سب سے نیچے data signal دکھایا گیا کوئی بھی information rom سے پڑھنی ہے تو پہلے address apply کرنا ہوگا اس کو stable maintain کرنا ہے جب تک information پڑھنا لیجا so address valid ہو گیا اس کے بعد chip select either پہلے activate ہو رہا ہے بعد میں بھی activate کر سکتے ہیں اس میں اس کے بعد available ہوگا جس کو ہم کہتے ہیں access time address apply کیا address stable ہونے کے بعد just a minimum time لگیا ہے اس کے بعد information available ہے اس time کو access time گیا رہے ہیں rom کا read cycle دکھایا straight forward سا ہے جس طرح ہم ram میں کر رہے تھے بالکل اسی دریگے سے آپ نے address apply کرنا ہے chip select signal activate کرنا ہے اس کے تھوڑے دے بعد آپ کے پاس information data lines پہ آجائے گی جو address data کی availability میں جو delay ہے اس کو ہم ram rom کا access time گیا access time delay گیا گے اگر rom fast ہے تو یہ جو access time میں کم ہوگا اگر rom slow ہے اگر access time زیادہ ہوگا آئیے بات کرتے ہیں p rom سے programmable rom سے programmable rom جو پہلی type کی ہے جس کو ہم ایک دفعہ پرگم کر سکتے ہیں اس کے بعد پرگم نہیں کر سکتے ہیں اس کا structure کیا ہوگا اس کا structure جو mask rom میں انٹیکل ہے وہی transistor ہے جس کا gate row کے ساتھ connect ہے اور output column کے ساتھ connect ہے column اور output point transistor کا اس کے درمیان ایک fuse لگایا جاتا ہے اگر آپ نے پرگم کرنا شروع میں جب آپ پیرام کو پرگم کرنے سے پہلے سارے fuse intact ہیں جو ہی پرگم کریں گے آپ نے one store کرنا تو fuse کو آپ نے blow نہیں کرنا اس کو رہنے دینا جب بھی row سلکت ہوگی transistor activate ہو جائے گا on ہو جائے گا output پہ آپ کے پاس 5 volts آ جائیں گے logic one کر بزن کر رہا ہے اگر آپ fuse ہے transistor اور column کے درمیان اس کو آپ ہٹا دیتے ہیں that means connection transistor کے output کا column سے ختم ہو گیا جو again اگر transistor select ہوتا ہے selecting the row اس کے output وہ 5 volt ہوگا پر کیونکہ وہ connected نہیں column کے ساتھ تو ادر information نہیں آئی اب یہ fuse جو ہے کیونکہ آپ ایک دفعہ جب اس کو ہٹا دیں گے بن کر دیں گے تو دو بارہ fuse جو نہیں سکتے that's why ہم کہتے ہیں جو p rom its program once ایک دفعہ میں program کر دیا اس کے condens آپ دو بارہ change نہیں کر سکتے تھوڑی دل میں اس کا diagram کو دیکھتے ہیں کہ p rom کے transistors fuse کیسے لگے ہوئے column اور transistor کے درمیان جب blow کر دیں تو کیا ہوگا next جو ہے uv e prom uv e prom similar structure transistor so erase کر سکتے ہیں erase کیسے کرتے ہیں uv light کی نیچے رکھتے ہیں اس کا ہم internal structure تو نہیں دیکھتے اس کا ہم دیکھتے ہیں general symbol address lines کتنی ہیں data lines کتنی ہیں اور control signals وہ کنتے ہیں اور اس کو program کیسے کرتے ہیں ایک پلے دیکھتے ہیں p rom کا structure اس کے بعد e prom uv e prom اس کے symbol اور اس کے programming تیکنیک کو diagram میں ایک programmable rom array دکھائے گئے جس میں nine transistors دکھائے گئے so تین rows ہیں اور تین rows میں تین transistors لگے ہوئے transistors کے input جو ہے جو gate ہے وہ column row کے ساتھ connect it ہے اور جو output ہے وہ column کے ساتھ connect it ہے through a fuse اگر fuse intact ہے اور row select ہو جاتی let's say پلی والی row select ہوتی ہے تو تین own transistors وہ on ہو جائیں گے ان کے output 5 volt ہوں گے اور وہ corresponding تین columns ان پے دکھائے دیے جائیں گے اگر اسے انفارمیشن basically read کی جا سکتی ہے let's suppose جو last two transistors ان کے جو دو fuse ان کے transistors کے output کو column سے connect کر رہے ہیں ان کو ہم remove کر دیتے ہیں so next time جب row select ہوگی تو پیلہ والا transistors اس کا output پیلے والے column پے available ہوگا سیکن والا transistors اس کا output 5 volt ہوگا کیونکہ fuse ہم نے remove کر دیے column پے انفارمیشن نہیں آئے وہ بھی activate تو ہو جائے گا اس کا output 5 volt ہوگے پر وہ column پے انفارمیشن نہیں آئے گی کیونکہ fuse blow کر دیا now fuse ایک دفعہ جب blow کر دیا جائے دو بارہ سے ہم اس کو جوڑ نہیں سکتے so that means جو p rom وہ program once ہے دیگرام میں ایک 2 kilobyte کی e prom دکھائے گے جو کہ uv e prom ہے اس کو ultra wallet کے light کے نیچے رکھیں تو اس کے contents ڈیز ہو جائیں گے basically اس قسم کے اوپر center میں ایک quarts window ہوتیے جو memory circuit جو integrated circuit ہے اس کے نیچے اس کو expose کرتی ہے uv light کو یہ دیکھنے اس کے signals basically 2 kilobyte rom ہے so 11 address lines چاہیں 2k different locations کو access کرنے کے لیے 2k byte ہے that means ہر location پے a byte store ہو رہے so therefore آپ کو 8 data lines چاہیں جو output lines ہیں کیونکہ آپ e prom میں لکھ نہیں سکتے normally اس کو of course e prom programmer میں رکھ کے other information لکھی جا سکتی ہے with the help of some control signals normal use میں جو data lines ان کو as output lines ہی use کیا جائے گا left hand side پے نیچے output enable signal ہے active low signal ہے so normal operation میں e prom جب use ہو رہے information read کرنے کے لیے یہ signal active low سیٹ کیا جائے گا right hand side چپ enable active low ہے اور ساد میں oblique program پیجی ام لکھا ہوا ہے basically یہ signal use ہوتا ہے programming کے لیے اس کے نیچے vpp signal دکھایا گیا ہے so normal read operation میں جیسا گم میں پہلے بتا ہے output enable signal low ہو گا and chip enable signal بھی low ہو گا address سپلائے کریں گے address کی مدل سے ایک location سلکت ہوگی جس پے 8 bit stored ہیں وہ information program کرنے کے لیے جو ce program signal ہے اس کو use کرنے اور vpp signal use کرنا ہے vpp signal high dc voltage کے ساتھ connect کرتے ہیں and program جو signal اس پے ہم dc pulses apply کرتے ہیں so let's suppose پہلے address پے all once store کرنے ہیں so programming کرنے کے لیے address up apply کریں گے جس کے سارے bits 0 ہوگے کیونکہ پہلے location میں اپنے information نہیں ہے data lines پے سارے ones apply کریں گے vpp high dc voltage کے ساتھ connected ہے program pen پے pulse بھیجیں گے جس کی وجہ سے information پہلے address پے latch ہو جائے گے یا store ہو جائے گے اسی طرح آپ address اگر increment کرنے data information جو data lines پے apply ہی اس کو بھی change کرنے پیروم کو program کرنے کے لیے ایک counter use ہوگا جو کہ addresses کو increment کر رہے او ساتھ میں جو data information ہے وہ بھی change ہوگی ابھی ہم نے پیروم کا structure دیکھا basically fuses connect کریں column کو transistor کے output سے وہ blow کر دیں so information جو ہے وہ جو cell ہے 0 کو represent کر رہے 0 کو store کر رہے اگر fuse intact so one کو represent کر رہے ایک دفعہ fuse blow ہو گے تبارا سے آپ fuses کو نہیں جور سکتے that means اگر آپ نے بار بار program کرنے تو پھر آپ erasable prom use کریں گے erasable program prom میں ہم نے اس کا structure تو discuss نہیں گیا پر ہم نے ایک uvee prom کو دیکھا basically اس کی different pins ہیں control pins ہیں جس کی وجہ جس کی مدد سے ہم information normal use میں پڑ بھی سکتے ہیں اس کو program بھی کر سکتے ہیں اب ایک اور memory کی بات کرتے ہیں basically یہ memory جو ہے اس کو flash memory کہتے ہیں flash memory کیا ہے پہلے ہم جنولی memory کے کرکٹرسٹکس تسکیپ کرتے ہیں جو اچھی memory ہے اس کی کی ability کیا parameters ہونے جائیں basically memory جو ہے read write ہونے جائے ہم read بھی کر سکے write بھی کر سکے high density ہونے جائے تھوڑی سی جگہ میں بہت ساری information ہم store کر سکتے ہیں access time fast ہونا جائے جو یہی ہی ہم information read کر رہے ہیں write کر رہے ہیں وہ بہت جلسا ہمارے پاس available ہوں delay زیادہ نہیں ہونا چاہیے cost effective ہوں so these 4-5 parameters یہ ہونے ضروری ہیں ہم نے different memory study کی static RAM دیکھیں synchronous version asynchronous version dynamic RAM دیکھیں different types کے ہیں ہم نے ROMs دیکھیں ساری memories میں different کسیم کے characteristics ہیں تو یہ جو 4-5 ہم نے characteristics describe کیا because memory کے ہونے ضروری ہیں جو کے ہمارے digital system کو help کرتے ہیں وہ انساروں میں نہیں ہیں flash RAM ایک ایسی memory ہے جس میں سارے characteristics ہیں so basically flash RAM کام کیسے کرتے ہیں again ایک cell flash RAM کا وہ logic 0 کو store کر سکتے ہیں and logic 1 کو store کر سکتے ہیں basically store کیسے کرتے ہیں again transistor ہوتا ہے جس پہ ہم charge store کرتے ہیں so gate پے اگر negative charge store ہو جائے تو ہم یہ کہیں گے کہ اس میں logic 0 stored ہے اگر اس کے gate پے transistor کا جو gate ہے اس میں کوئی charge store نہیں تھا ہم کہیں گے logic 1 stored ہے یہ دیکھتے ہیں اس کا internal structure جو cell ہے جس میں charge store ہوتا اور نہیں ہوتا اس کے بعد اس پہ further discussion کرتے ہیں flash memory کا ایک cell ہم implement کرتے ہیں ایک mouse transistor کی مد سے جس کے diagram میں دیکھایا گیا ہے ایک transistor ہے جس کا control gate ہے ایک drain ہے اور ایک source ہے اس کے درمیان negative charges دکھائے گئے ہیں اگر control gate پے positive voltage apply کیا جائے negative charges source کے through اس کے پاس جمع ہو جائیں گے so negative charges کا presence around the control gate یہ represent کر رہا ہے logic 0 کو right hand side پے اگر دیکھیں وہی transistor ہے control gate ہے اس کا drain ہے and source ہے control gate پے کوئی positive voltage apply نہیں کریں تو کوئی negative charge store نہیں ہوگا یا بہت کم charges store ہوگے یہ basically represent کرنے logic 1 کو flash RAM کے 3 کسم کے operations ہیں ایک کو کہتے ہیں programming operation ایک کو کہتے ہیں arrays operation اور ایک تیسرہ جو operation اس کو کہتے ہیں read operation programming operation میں ہم basically information flash memory میں لکھ رہے ہیں arrays operation میں of course جو بھی information اس کو remove کرے ہیں ہم again program کر سکیں and read operation میں جو بھی information flash memory میں ہے اس کو ہم پڑھ سکتے ہیں اس میں programming میں basically کیا کرنا ہے information in the form of charges وہ store کرنے ہیں اگر آپ نے logic 0 store کرنا ہے تو وہ charges اس پتکلر cell میں آپ نے store کرنا ہے اگر logic 1 store کرنا ہے تو کوئی charge آپ store نہیں کریں گے تو یہ ہوگی programming جو آپ arrays کر رہے ہیں basically again ہم دیکھیں گے by applying certain voltages وہ charges اگر آپ remove کردیں جتنے بھی cells ہیں flash memory میں تو information آپ کے پاس کیا رہے گی memory جو ہے initial is ہو جائے گی logic 1 پہ کیونکہ ہم نے پہلے بتایا ہے logic 1 جو ہے charges کا نہ ہونا represent کر رہا ہے logic 1 کو تو آپ arrays جب کریں گے سارے charges remove ہو جائیں گے سارے cells جو ہیں ان میں logic 1 آجائے گا اسی طرح read کرنے کے لیے basically آپ نے cell select کیا charges اگر ایک پتکلر transistor پہ ہیں that would represent 0 اگر charges نہیں ہیں وہ 1 کو represent کرے گا سو آئیے پہلے دیکھتے ہیں کہ program کیسے کرنا ہے کہہاں voltage اپلائے کریں گے اور کیسے charges میں store ہو گیا اس کے بعد پھر ہم باکی جو operations ان کو دیکھیں گے diagram میں ایک flash memory cell programming operation دکھایا گیا left-hand side پے transistor ہے اس کا control source 0 volt پہ ہے اور drain وہ بھی ایک positive voltage پے connect کیا گیا during control gate پہ positive voltage apply کریں گے source pin سے negative charges gate کے پاس آکے جمع ہو جائیں گے so basically یہ 0 logic کو represent کر رہاں یا اس transistor یا اس cell کو program کر دیے for logic 0 right-hand side پے again way transistor دکھایا گیا ہے اس کا control gate پے کوئی voltage کی گئے drain پے positive vd voltage apply کریں گے کیونکہ gate پے کوئی positive voltage نہیں ہے تو کوئی negative electrons these charges will attract نہیں ہوگے that means اس پے کوئی charge نہیں ہوگا this represents logic 1 read operation کے لیے basically control gate اس کو positive voltage کے ساتھ connect کیا ہے drain اسی طرح positive voltage کے ساتھ اور source gate کے قریب accumulate ہوا ہوا ہے اس کا effect وہ cancel out ہو جائے گا drain car source کے ساتھ connection نہیں بنے گا so no current would flow so this means کہ اگر current flow نہیں کر رہا اس transistor پے logic 0 stored ہے right-hand side پے اگر دیکھیں control gate پے again positive voltage apply کی گئے اس پے کوئی charge نہیں ہے positive voltage کی وجہ سے transistor switch on ہو جائے گا drain اور source کے درمیان ایک path establish تو current کا flow ہونہ transistor میں سے represent کر رہا ہے کہ اس میں logic one store ہوا ہے erase operation کرنے کے لیے source پے positive voltage apply کیا جائے گا control gate پے zero voltage apply کیا جائے گا کیونکہ source پے positive voltage apply کیا جائے گا تو جو بھی electrons gate کے قریب accumulated تھے وہ flow out کر جائے گے so that means transistor erase ہو گیا اس پے ابھی ہم نے flash memory کو دیکھا اس کے تین operations programming erase and read operation ان کو دیکھا transistor میں جو charges accumulate ہو رہے ہیں ان کو remove کر رہے ہیں پڑھ رہے ہیں next lecture میں basically memory expansion پے بات کریں گے next lecture تک اپنا خیال رکھے گا انشاء اللہ دو بارا ملیں گے ہدا ہفز اسلام علیکم