 اسلام علیکم سٹوڈنٹس، ایم وصیمی کرام، اسی دی ترینائنک ٹلکچر اور ایسیریز ٹلکچرز آن دیجٹل لوجیک دیزائن۔ کیسے آپ چلا، اچھے ہوں گے؟ لاغس ٹلکچر میں ہم کچھ تسکشن کر رہے تھے، ہم نے پہلے شروع کیا تھا ٹریفک لائٹ کنٹرولر پر تسکشن کی تھی، اس کے بعد ہم نے جو تھا انالیسس of سٹیٹ مشینس پر بات کی تھی آج ہم بسکلی دیسکشن شروع کریں گے، میمری پر، میمری کیا ہوتی ہے؟ کہاں استعمال ہوتی ہے؟ اس کا سٹرکچر کیا ہے؟ اس سے پہلے کہ آپ میمری پر دیسکشن شروع کریں، آئی پشلے لیکچر کو ضرح رویو کر لیتے ہیں لاغس ٹلکچر میں ہم دیسکشن اپنی کنٹنیو کر رہے تھے ٹریفک لائٹ کنٹرولر پر ٹریفک لائٹ کنٹرولر کا جس ہم نے سرکٹ دیکھا تھا دو گیل ڈیوائیس کے ساتھ انکلیمنٹ کیا تھا پہلی جو گیل ڈیوائیس تھی اس کو ہم نے پرگام کیا تھا as a sequential state machine بسکلی جو ڈیوٹریفک لائٹ کنٹرولر کی ڈیوٹسٹیٹس ہیں ڈیوٹسٹیٹس ہیں ان کو ہم نے پرگام کیا تھا اس کے انپورت پے جیسا کہ آپ کو یاد ہو سیکنلس تھے دو انپورت سیکنلس تھے جو سنسر سے آ رہ تھے اور دو انپورت سیکنلس تھے جو ڈائمر سے آ رہ تھے اوٹپٹ پہ ہمیرے ہمیرے پس چار سنلس تھے تین جو تھے ڈیوٹسٹیٹ سٹے تھی جنسے ہم ڈیٹرمین کر سکتے ہیں کونسی ڈیوٹسٹیٹس ہے آٹم سے کونسی ڈیوٹسٹیٹ ہے اور ایک ڈیوٹسٹ تھا جو کہ ڈیوٹسٹ کیا تھا ٹائمر کو ڈیوٹسٹ کیا تھا اگن آپ کو یاد ہو دو ڈیوٹسٹیٹس ڈیوٹسٹیٹس تھیں جن میں ڈیوٹسٹ کیا تھے نور سوث یلوٹ ٹو سٹیٹ تھی اور ای ای سٹویست یلوٹ ٹو یہ دوسی سٹیٹ تھی بیسکلی لہت سلاکچر میں ہم نے یہ دیکھا تھا کہ ان دو سٹیٹس کے لیے جب ریسیٹ سگنل کو دی ایکٹیویٹ کرتے ہیں جو کہ ٹائمر کو ریسیٹ کرتے تھے اس کی ہم نے ایکویزن لکھی تھی اس کے بعد ہم نے دسکل کیا تھا کہ جو دوسرا گیل ہے بیسکلی اس کو ہم نے از a کمبینیشنل سرکٹ کے طور پر پرگام کیا ہے اس کا کام کیا ہے انپوٹ پر وہ سٹیٹس جو ہیں تھی سٹیٹ ویریبلز جو ہیں جو ہیں کیو سیٹو کیو ٹو ٹو جو ہیں ان کو دیکھتے اور ان کی مدد سے اوٹپوٹ پر جو ٹیفک لائٹس ہیں گریینگریڈ یلو جو ہے نور سوٹ دیریکشن کے لیے اور اس ویس دیریکشن کے لیے ان کو آن یا آف کرتا ہے سو بیسکلی جو دوسرا گیل تھا جو کمبینیشنل سرکٹ کے طور پر ہم نے پرگام کیا تھا اس کے پن دسکیپشن تھی اس میں ایکویشنز ہم نے دیفائن کی تھی کہ انپوٹ پر یہ سٹیٹ ہو تو اوٹپوٹ کیسی ہوگی سو بیسکلی یہ ہم نے پورا پرگام کر لیا تھا اس کے بعد ہم نے دوسکشن جو تھی وشروع کی تھی جو ہے انالیسز of sequential state machines جس اگر ہم نے last lecture میں بتایا تھا کہ ہم بات کرتے آ رہے ہیں ابھی تھی کہ design کیسے کرنا ہے ہمارے پاس انپوٹ پرمیٹرز ہیں کہ اگر آپ نے کانٹر بنانا ہے جو آپ کانٹ کرے ہیں یا ڈون کانٹ کرے ہیں ایک traffic light کانٹرولر بنانا ہے یا کوئی اور چیز بنانی بیسکلی ہم اس کا state diagram بناتے ہیں state diagram سے ہم ایک state table بناتے ہیں state table کے بعد ہم انپوٹ table بناتے ہیں جو بیسٹ ہوتا ہے کہ کونسا ہم فرط فلپ use کر رہے ہیں انپوٹ جب table ہولا جاتا ہے وہ جو information ہم carnoff map میں دلتے ہیں اسے equation آتی ہیں اور circuit ہمارا implement ہو جاتا اگر آپ کے پاس sequential state machine کا circuit ہو آپ کیسے معلوم کریں گے کہ یہ کیا کام کرا ہے کانٹر ہے یا traffic light کانٹرولر ہے یا elevator کانٹرولر ہے اس کو بیسکلی اس کو کہیں گے analysis analysis ہم نے یہ کہتا ہے کہ تین steps ہیں پہلہ کام آپ نے یہ کرنا ہے کہ next state equation وہ determine کرنی ہے اور output equation وہ determine کرنی ہے یہ دو equations determine کرنی ہے یہ دو equations have determine ہو جنگی تو اس سے آپ ایک state table بنا لیں گے جب state table آجائے گا اس سے آپ کے پاس ایک state diagram آجائے گا next state equation ہے بیسکلی وہ depend کرتا ہے کہ present state کیا ہے اور external input کیا ہے جو function ہوگا next state کا it would depend on the present state and the external inputs اسی طرح جو output ہے وہ depend کرتا ہے flip flop کا جو output پہ جو state ہے وہ اور external input ہے so again output function جو ہوگا present state اور external input پہ depend کرے گا یہ دو functions جو ہیں basically ہم نے دو examples کی تھی ایک d flip flop پہ بیس تھی اور ایک شاہد jk flip flop پہ بیس تھی تریکہ کار ہم نے کیا استعمال کیا تھا ہم نے یہ کہتا ہے کہ جو بھی next state equations آ رہی ہیں وہ basically depend کرتی ہیں کہ کونس ہم flip flop use کر رہے ہیں so ہم flip flop کی characteristic equation میں انٹرسٹر تھے flip flop کی characteristic equation بسکلی کیا ہے یاد ہوگا آپ کو جب ہم again sequential machines state machines implement کر رہے تھے ہم نے transition table use کیا تھے so let's say jk flip flop ہے یا d flip flop ہے اس کا ہم نے transition table بنایا تھا اس کی مدد سے آگے ہم نے processing کی تھی use کیا تھا characteristic equation جو ہے کسی بھی flip flop کی وہ basically آپ کو بتا رہی ہے کہ next state کیا ہوگی depending on the present state and inputs characteristic equation کسی flip flop کی کیسے ہم اپٹین کرتے ہیں یا کیسے define کرتے ہیں basically جو transition table ہم نے use کیا تھے ان کو اگر آپ carnav map میں map کر دیں information کو ڈال دیں اور ادھر سے جب boolean expression بھنے گا that would be basically the characteristic equation of that particular flip flop so just like ہم نے discussed کیا تھا last to example میں d flip flop use کیا تھے jk flip flop use کیا تھے so ہمیں characteristic equation چاہیے d flip flop کی اور jk flip flop so جب ہمیں بس characteristic equation آجاتی ہیں اس کے ساتھ آگے ہم نے کیا کرنے basically characteristic equation کی مدد سے ہم ایک transition equation بنا رہے ہیں transition equation بسکل ہے کیا circuit میں اگر آپ کو یاد ہو ہم نے excitation inputs جو flip flops ہیں ان کے input میں کچھ excitation inputs آ رہے ہیں جو کہ combination circuit کی مدد سے generate ہو رہے ہیں so by looking at the combination circuits آپ جو ہے excitation inputs دیترمین کر سکتے ہیں let's say آپ کا d flip flop ہے اس کی جو بھی characteristic equation آئی یا jk flip flop ہے اس کی جو بھی characteristic equation آئی اس میں جو input variables ہیں وہ excitation جو آپ کے پاس input ہے وہ آپ رپلیس کر دیں تو آپ کے پاس ایک transition equation آ جائے گی transition equation کا اس کا next step ہے basically ایک transition table بنا دیں گے transition table it's very similar to the state table جو آپ نے پہلے دیکھا ہوا so transition table جو ہے directly state table بھن گیا state table basically آپ کو بتا رہا ہے that present state یہ ہے next state کیا ہوگی depending on the external inputs transition table جو ہے state table میں جب چینے جو ہوتا ہے تو ساتھ میں output کو بھی ہم ایک output column بھی define کر رہے ہیں کہ output جو ہے اگر present state یہ ہے external inputs یہ ہیں تو output کیا ہوگا state table کے بعد last step basically state diagram ہے so آپ نے دیکھے تھے دو ہم نے state diagram بنایا تھے پہلے یہ جو ایک سامپل تھی دوسرے ایک سامپل تھی so basically sequential state machine کی جو analysis ہے وہ اس طریقے سے ہو رہی ہیں آج کی دسکشن ہم شروع کرتے ہیں memory سے memory basically کیا ہے memory جس ہم پہلے define کرتے ہیں a storage space ہے کوئی چیز store کرنے کو information store کرنے تو آپ memory کو use کرنے memory ہم use کرتے آئے ہیں sequential circuits میں sequential circuits میں ہم نے بتایا تھا کہ جو essential element ہے basically memory ہے اور دوسرہ essential جو element ہے وہ combinational circuit ہے memory کیسے element کی تھی basically flip-flop کی مدد سے flip-flop جو تھے basically and gates تھے nand gate تھے یا nor gates تھے جن کو آپس میں connect کیا ہوا تھا flip-flop جو ہے ایک bit کو store کر سکتا ہے یا 0 کو store کرے گا یا 1 کو store کرے گا so یہ تو ہوگا ایک flip-flop and sequential circuits میں use کیا تھے یا memory element جو use کیا تھا basically کچھ bit store کر رہا ہے بائٹس میں کیلو بائٹس میں store نہیں کرے گا تیٹ کو ڈرمین کرنے کے لیے ہم ایک state variables چاہیں state variables basically ایک flip-flop سے implement ہو رہا ہے so اگر آپ کے پاس sequential circuits میں 4 state variables ہیں 4 flip-flops آپ use کریں گے sequential state machine کے علاوہ جو computer system ہے اس کو memory چاہئے کیوں چاہئے basically جو آپ program a click کے execute کر رہے تو وہ program کہاں پڑھا ہوا basically memory میں پڑھا ہوا ہے جو program ہے اس میں اچھی خاصی کافی لمبہ سارا program ہوتا ہے اس میں بہت ساری instructions ہوتی ہے اس کو execute کرنے کے لیے ضروری ہے کہ atleast اس کا بہت سارا portion یا کچھ set of instructions وہ memory میں موجود ہوں so that means آپ سیمپل ایک flip-flop سے آپ کا کام نہیں ہوگا یا 4-5 flip-flop سے کام نہیں ہوگا آپ کو اچھی خاصی memory چاہئے جس میں ایک portion of the program result کر سکے بسکلی دو essential requirements memory کی digital logic میں ایک sequential circuit کے لیے اور ایک general computation کے لیے جہاں آپ کا instructions program instructions وہ store ہوں گے اب memory میں data جو ہے کس طرح organize ہو رہا ہے اس کا size کیا ہوگا basically 1 bit کی information ہوگی 4 bit کی information ہوگی 8 bit کی ہوگی 16 bit کی ہوگی basically depend کرتا ہے کہ آپ کا جو machine ہے جو digital system ہے جو اس کو use کر رہا ہے information کو use کر رہا ہے وہ information کتنے size کی ہے اس کے پاس ایک چھوڑی سے example لیتے ہیں جو ہم نے ایک up and down counter بنایا تھا up and down counter کا ایک external input تھا جس کو ہم کہہ رہے تھے x اگر وہ 0 کرتے ہیں تو شاید وہ up count کرتے ہیں اور اگر 1 کرتے ہیں تو وہ down count کرتے ہیں let us suppose کہ آپ نے up and down counter بنا لیا circuit بھی implement کر دیا اب آپ دیکھنا چاہ رہے ہیں کہ بھی وہ circuit آپ نے connection جو proper کیے تھے کیا نہیں test کرنا بیسکل تو test کیسے کریں گے آپ ایک memory لیں گے جس میں آپ 1s and 0s ڈال لیں گے یہ جو memory ہے یہ رپزن کر رہی ہے اس external input x کو اب اس memory کو جس میں یہ 1s and 0s store کییں وہ آپ connect کر لیں اس آپ کا up and down counter اس کے x input کے ساتھ اب memory کے ساتھ آپ کوئی clock لگا لیں کوئی اور circuit لگا لیں جس سے ایک بٹ وہ memory سے پڑیں گے اور x input آپ کا up and down counter اس پہ آپ اپلائے کرتے جان گے تو depending on 0 اور 1 آپ کا جو counter آپ کونٹ کرے گا آپ کونٹ کرے گا تو آپ کے پاس وہ memory میں information ہے کہ بھی 0 اپلائے کیا یا 1 اپلائے کیا اور اسی طرح آپ کا جو counter اس کا output آپ دیکھ رہے ہیں تو آپ چک کر سکتے ہیں کہ اگر 0 آیا تو آپ کونٹ کر رہے ہیں کہ نہیں تو اس پرکلو ڈیمپل میں جو memory کی requirement ہے وہ 1 bit memory ہونی چاہیے کیونکہ ڈیمپلائے وہ 1 bit کا ہی ہے لیتا سپوز کہ آپ ایک alu کے مدد سے کالکلیٹر بناتے ہیں جو دو نمبر ڈیمپلائے کرتے ہیں یا ڈیمپلائے کرتے ہیں یا ڈیمپلائے کرتے ہیں بسکلی ڈیمپلائے کا ڈیمپلائے اس میں آپ نے بہت سار information سٹور کرنے جس کو ڈیمپلائے تو انفорمیشن کن سٹور کرنگے memory میں کریں گے Now, memory کیا سائز کیا ہوں ڈیمپلائے Basically ڈو ڈیمپلائے جو ڈیمپلائے تو ڈیمپلائے Porbit ڈیمپلائے ڈیمپلائے 4 bit information آپ ڈیمپلائے ڈیمپلائے Hypnotus ڈیمپلائے通常 منیمل ڈیمپلائے 8 bit ایک byte ڈیمپلائے ڈیمپلائے آپ کا mata کمپیوٹرز ہیں وہ 32 bit 64 that are کو بھی اندل کر رہے ہیں. So 32 bit 64 bit information کو organize کرنے کے لی آپ کو appropriate memory چاہی ہوگی جس میں آپ سیملٹینیسلی 32 bits 64 bits کو access کر سکتے ہیں اس میں. Basically جو smallest جونٹ ہے ممبری کا اس کو ہم کہیں گے cell cell جو ہے یا one store کرے گا یا zero store کرے گا جنرل جو architecture ہے یا organization جو ہے memory کی basically اس کو ایک 2 dimensional array کی صورت میں بنایا جاتا ہے یا implement کیا جاتا ہے آپ ٹیبل ایک بناتے ہیں ٹیبل میں columns ہوتے ہیں اور rows ہوتی ہیں تو آپ کہتے ہیں جی fifth row میں جو second column میں اس میں جو information ہے وہ آپ پڑھ لیں یا وہ دور آپ information add کر لیں اسی طریقے سے hardware میں جو memory بھنٹی ہے وہ بھی ایک 2 dimensional array کی صورت میں ہے rows ہوں گی اور columns ہوں گے. تو ایک row number اور column number کی مدد سے آپ ایک cell کو select کر سکتے ہیں access کر سکتے ہیں اس سے آپ ایک bit پڑھ سکتے ہیں یا وہ اس جگہ پہ اس cell میں ایک bit آپ لکھ سکتے ہیں. ایی دیکھیں کہ یہ جنرل architecture ہے memory کا جو 2 dimensional array کی بات کر رہے ہیں یہ کیسا نظر آرہا ہمیں اور cells کے در ہیں اور کیسا ہم information کو access کر سکتے ہیں دیگنام میں ایک 64 cell memory array دکھائے گے جس کے 8 rows دکھائے گئے ہیں اور 8 columns ہیں تو ٹوٹل جو cells ہیں وہ 64 ہیں row 1 میں اگر دیکھیں تو 8 bits لکھی ہوئی ہیں ایک جو square ہے وہ ایک cell رپزن کر رہا ہے پہلی row میں 8 cells ہیں جن میں information جو ہے 1 1 0 0 1 0 1 0 جو leftmost cell ہے جس کا address آپ کہالیں row 1 and column 1 اس میں جو information ہے وہ 1 ہے اسی طرح جو 2nd cell ہے پہلی ہی row میں اس کا address ہے row 1 column 2 next اگر چلے جائیں اس کا row 1 ہی ہے column 3 ہو جاتا ہے اور اسی طرح آخری جو cell ہے اسی row میں اس کا address جو ہے وہ row 1 ہے اور cell 8 ہے so آپ row number اور column number کی مدد سے کوئی سا بھی cell آپ access کر سکتے ہیں for example 5th row 4th column میں جو cell ہے اس جگہ میں جو cell ہے اس میں 1 پڑا ہوئے اسی طرح 6th row and 5th column میں اس جگہ میں جو cell ہے اس میں information جو ہے وہ 0 ہے bit 0 پڑے بھی ہے ابھی diagram میں ہم نے 64 cell memory array دیکھے جنرل architecture دکھایا گیا that means اس میں آپ 64 bits کو store کر سکتے ہیں لکھ سکتے ہیں اور پڑھ سکتے ہیں اس میں جس میں میں بتایا کہ جو data size ہے وہ depend کرتا ہے کہ آپ کا جو system ہے digital system ہے اس کو کس format میں information چاہئے one bit ہو سکتے ہیں four bit ہو سکتے ہیں eight bit ہو سکتے ہیں sixteen bit ہو سکتے ہیں so one bit جو ہے اس کو تو بٹ ہی کہیں گے ایک single جو ہے one ہو zero ہو اس کو bit کہیں گے four bits جو ہیں اس کی combination کو ہم nable کہتے ہیں اس تنا eight bits کی combination کو ہم a byte کہتے ہیں اور اگر sixteen bit کی combination اس کو word کہیں گے so generally ایک جو data unit ہے اس کو ہم کہیں گے word اب اس 64 جو cell کی array ہم نے دیکھی تھی اس کو organize کرنا ہے for a particular application وہی والی بات آگی کہ اگر ہمارے پاس up and down counter ہے جس میں one bit data چاہئے تو اس 64 cell array کو اس format میں ہم نے organize کرنا ہے تاکہ ہم ایک bit ایک location پے store کر سکیں اگر ہمارے پاس وہ alu ہے جو دو numbers کو four bit numbers کو add کر رہا ہے here subtract کر رہا ہے تو ہمیں memory جو چاہئے وہ ہمیں چاہئے nible format میں different locations ہوں ہر location پے ایک four bit value store ہو اسی طرح آپ کے پاس ایک computer ہے جو byte format میں data handle کر رہا ہے تو memory کو اپنے organize کرنا ہے تاکہ آپ کے پاس ہر ایک row پے ایک byte آپ کو ملے اور اسی طرح آپ کے پاس دوسرا modern computer ہے جو 32 bit information کو یا 64 bit information کو access کر رہا ہے تو ہر row پے آپ کو 32 bits information store کرنے کے capability ہونی چاہی یا 64 bit آپ access کر سکیں جو آئے دیکھتے ہیں memory organization کو کی جو 64 bit cell ہے رے ہے اس کو کیسے organize کریں گے memory organization میں اسی 64 bit cell کو ہم اگر ہمیں nible format میں چاہئے تو اس کے کتنے ہمارے پاس rows ہو جائیں گے اور کتنے columns ہو جائیں گے columns تو 4 ہو جائیں گے اور جو rows ہیں وہ بھڑکے ہمارے پاس 64 ہو جائیں گی رہا تھا 64 نہیں ہوگے 16 rows ہو جائیں گے اسی طرح آپ کے پاس bit memory چاہے جس میں ہر location پے 1 bit ہے تو آپ کے پاس total memory size جو ہوگا وہ 64 locations ہونگی اور ہر location پے 1 bit آپ store کر رہے ہوں گے سو آئی دیکھتے ہیں ان دونوں organizations کو nible format میں آپ memory کیسے organize کریں گے کتنے rows ہوگے کتنے columns ہوگے اور bit format میں اور memory کو کیسے organize کریں گے دیگرام میں وہ 64 bit memory جو originلی ہمارے آرے دیکھی تھی اس کو different طریقوں سے organize کیا ہوا ہے left side پے ہم نے 16 rows اور 4 columns میں اسی memory کو organize کر دیا total size جو ہیں وہ 64 ہی ہیں سو first row میں جو information ہے وہ 1100 ہے اسی طرح second row میں جو information پڑے ہوئے 0100 ہے سو basically 4 bit information ہر row پڑے ہوئے اور یہ 4 bits ہم اکٹھی لکھ سکتے ہیں یا پڑھ سکتے ہیں ایکسیس کر سکتے ہیں right side پی اگر آپ دیکھیں اسی 64 bit memory کو یا 64 cell memory کو ہم نے organize کر دیا ہے 1 into 64 basically 64 locations یا addresses ہیں اور ہر location پے 1 bit ہم نے store کیوئی ہے سو پہلی location پے 1 store کیا ہوا ہے 2nd location پے 0 store کیا ہوا ہے 3rd پے 0 ہے اور اسی طرح آخری 64th location اس پے 0 store کیا ہوا ہے سو اگر آپ 3rd location یا row کو سلک کریں اس میں آپ 0 پڑھ سکتے ہیں اگر 1 لکھنا چاہیں آپ لکھ بھی سکتے ہیں ابھی ہم نے دو طریقے دیکھیں memory organization کے اگر ہمیں nible format میں information چاہیے تو ہمیں وہی 64 cell جو ڈیو اس کو ہم نے organize کر دیا ہے into 16 rows and 4 columns 16 locations ہیں ہر location میں 4 bit information stored ہے ٹوٹل جو cells ہیں وہ 64 ہیں اسی طرح اگر آپ کو 1 bit information چاہیے تو آپ وہی 64 جو cell array تھا اس کو organize کر دیا ہے into 64 locations ہر location پے 1 bit stored ہے again ٹوٹل number of cells وہ 64 ہے اس سے پہلے ہم نے 2 dimensional دیکھتا array جو دیکھی دی جس میں 8 rows تھیں 8 columns تھیں basically وہ کیا ہے 8 locations پے 1 byte store کیوی ہے so 8 bytes اس memory میں آپ store کر سکتے ہیں ٹوٹل number of cells کتنے again 64 ہیں so 3 own cases میں ٹوٹل number of cells ایک ہی ہے basically ہم نے ان کو organize differently کر لیے for different applications جانلی جب آپ memory کی بات کرتے ہیں تو آپ کہتے ہیں کہ اس کی capacity کتنی ہے یا اس کی density کتنی ہے capacity جو ہے وہ زیادہ ہیوز ہوتا ہے capacity کا مطلب ہے کہ ٹوٹل cells کتنے ہے یا ٹوٹل bits کتنی store ہو سکتی ہے یا ٹوٹل bytes کتنی store ہو سکتی ہے جب آپ کہتے ہیں کہ 16 kilo byte that means 16 kilo کا مطلب ہے 1024 جو اسے ہم بائنر میں پڑھتے آ رہے ہیں 1024 means kilo so 16 into 1024 اتنی locations ہوں گی جب ہم کہتے ہیں 16 kilo byte so ہر location میں ایک آپ byte store کر سکتے ہیں تو اگر آپ انترستت ہیں کہ یہ معلوم کریں کہ ٹوٹل bits کتنی ہوں گی اس memory میں so 16 into 1024 into 8 کر دیں گے تو یہ ٹوٹل number of bits آپ کے باس آجائیں گے اس طرح جب آپ کہتے ہیں 1 megabyte memory 1 megabyte کا مطلب ہے 1 megalocations so کتنی locations ہوں گی 1 into 1024 into 1024 یہ locations ہو جائیں گی اور ہر location میں کتنی information store کر رہے ہیں ایک byte information store کر رہے ہیں ٹوٹل cells ٹوٹل bits جو اس memory میں stored ہیں وہ basically ہوگا 1 into 1024 into 1024 into 8 so یہ تو ہوگی capacity total amount of storage space دنسٹی جو ہے وہ ایک different چیز ہے جب ہم memory کو implement کرتے ہیں تو basically ہم نے کچھ circuit کو use کرتے ہوئے implement کرنا ہے circuit basically کیا ہوگا transistors ہوگے transistors basically جو nand gate یا 1 latch بنانی ہم نے شروع میں بھی کہا تھا کہ memory جو element 1 bit store کرنے کے لیے basically 1 latch چاہیے flip-flop چاہیے flip-flop میں ہم نے use کیا تھے 2 nand gate یا 2 nor gates in fact nand gate nor gate کیسے بنانا ہے basically with the help of transistors so ایک nand gate میں کتنی transistors چاہیے basically جو ہے چھے transistors چاہیے ایک flip-flop کو implement کرنے کے لیے تو ایک cell ایک memory cell جس میں آپ 1 یا 0 store کر سکتے ہیں چھے transistors چاہیے so اگر اسی طرح 10 cells ہوں تو آپ کو 60 transistors چاہیے اسی طرح اگر memory بھاڑتے جائیں تو number of transistors would increase اب اتنے بہت سرے transistors آپ کتنی جگہ میں پے آپ implement کر سکتے ہیں let's say آپ کا جو memory integrated circuit ایک square inch کا ہے ایک square inch میں آپ کتنے transistors implement کر سکتے ہیں جتنے transistors آپ اس میں implement کر سکتے ہیں وہ basically determine کرے گا کتنی information store کر سکتے ہیں let's suppose آپ ایک square inch میں 60 transistors implement کر سکتے ہیں so کیونکہ ایک flip-flop کے لیے 6 transistors چاہیے تو آپ چو ہے 10 basically bits store کر پرائیں گے so اگر ایک memory جو ہے جو high density memory that means per square inch کوئی بھی ایک area کے unit لے لیں اس میں بہت سارے transistors ہیں یا بہت سارے information store کر سکتے ہیں وہ آپ کہیں گے dense memory ہے so basically فائدہ کیا ہوگا less space میں زیادہ memory ہے again پڑیں گے جو dynamic RAM جو آپ کے computer میں use ہو رہی ہوتی basically وہ high density memory ہے small space میں بہت ساری memory آپ کے پاس available ہے ایک دوسرے قسم کی memory ہوتی static RAM جو کہ high density memory نہیں ہے اتنی space میں come information store ہو سکتے ہیں so دو چیزیں ہوگی ایک capacity total cells کتنے ہیں total اس میں storage capacity کتنے ہیں and density per unit area کتنے information store ہو سکتے ہیں آئیے بات کرتے ہیں memory signals کی let us suppose کہ آپ ایک electronic shop جاتے ہیں ایک memory chip خریتے ہیں کس قسم کی آپ کو signals جو ہاں pens ہیں اس memory کی ان پے کس قسم کی signals ملیں گے اور ان کا use کیا ہے basically کوئی بھی memory ہو اس کے تین قسم کی signal ہوتے ہیں address lines address signals data lines data signals and control lines and control signals address lines جو ہے basically اس پے جسے address کا لفس ہے that means address آپ اپلائے کریں ابھی ہم نے array دیکھی cell کی اس میں آپ نے organize کیا ہوا ہے 8 rows یا 8 columns میں 16 rows 4 columns میں 64 rows 1 column میں so basically یہ جو row and column جو آپ specify کر رہے ہیں یہ کیسے specify کر رہے ہیں in the form of an address so basically memory کو آپ ایک address بھیجیں گے جو آپ کا computer یا micro processor chip ہے وہ ایک address بھیجے گا جو کہ connect ہوگا through an address to the memory chip size کتنا ہونا چاہییں اپنی lines ہونی چاہییں address lines ہونی چاہییں depend کرتا ہے کہ memory کی capacity کتنی ہے اور information جو ہے کیسے organize کی ہے let us suppose کے 4 locations 4 cells ہیں اور آپ 4 bits 1 at a time پڑھ سکتے ہیں لکھ سکتے ہیں اس میں so 4 locations کو 4 cells کو uniquely identify کرنے کے لیے آپ کو 4 unique address چاہییں 4 unique address کیسے produce کریں گے basically 2 bits چاہیں 0 0 ہوگا تو 1 cell کو آپ address کریں 0 1 ہوگا 2nd cell 1 4th cell اسی طرح اگر آپ کے پاس 3 bit address ہو so basically using that 3 bit address آپ 8 different locations کو access کر سکتے ہیں اس طرح اگر 4 bits ہوں تو 16 locations ہو جائیں گے اور اس طرح ہم بھناتے جائیں number of locations uniquely identify ہو سکتے ہیں وہ بھرتی جائیں گے so basically the size of the address just indicate کر رہا ہے کہ اس memory کی locations unique locations کتنی ہے address ہے memory generate کبھی بھی نہیں کرے گی of course جو external device جو information memory میں store کر رہے ہیں یا اسے read کر رہے ہیں وہ device address generate کرے گی so اس کو ہم کہیں گے ایک unidirectional bus ہے bus کہتے ہیں in lines کا مجموہ group of address lines کو ہم address bus کریں گے دوسرے جو set of signals ہے وہ ہم کہیں گے data signals ہیں لیکن memory میں ہم نے بتاتا ہے آپ information لکھیں گے write کریں گے here read کریں گے so basically information store کر رہیں اگر آپ نے لکھنی ہے تو وہ information کیسے memory تک پہنچائیں گے through data lines اب یہ data line ایک نہیں ہوگی it depends on its organization اگر single bit memory ہے ہر location پہ 1 bit store کر رہا ہے تو ایک ہی data line ہوگی اگر ایک location پہ 4 bit store ہوری ہیں تو 4 data lines ہوں گی اگر 8 bit store ہوری ہیں ہر address پہ so that means 8 data lines ہوں گی جو information ہے آپ لکھ بھی سکتے ہیں اور پڑھ بھی سکتے ہیں that means تو نو دریکشن میں data move ہوگا so یہ جو مجموہ ہے data lines کا ان کو آپ data bus کہیں گے data bus چو ہے یہ کنک کرتی ہے memory کی data lines کو microprocessor کی data bus کیسا دیا data lines کے ساتھ so microprocessor نے اگر کوئی information memory میں لکھنی ہے تو microprocessor data bus پہ وہ information بھیجے گا وہ memory میں لکھیں جائے گی اسی طرح اگر microprocessor نے memory سے information پرنی ہے تو کچھ control signal بھیجے گا جس کی مدت سے information ہے وہ data bus پہ آجائے گی memory کیا وہ دے سے microprocessor جو ہے وہ پڑھ لے گا جیسے ہم نے بتا ہے کہ the number of lines in the data bus depends on the size of the data data unit جو ہے single bit ہے تو ایک line ہوگی 4 bit ہے 4 lines ہوگی 8 ہے تو 8 lines ہوگی جتنی wide data bus ہے یا جتنی lines ہیں data bus میں that means اتنی آپ اتنیا information آپ لکھ سکتے ہیں آپ کے بس دو memories ہیں ایک کی 8 bit data bus ہے ایک کی 16 bit data bus ہے بیسکلی کونسی بیتر ہوگی 16 bit data bus ہولی کیونکہ آپ دو byte set time لکھ سکتے ہیں پڑھ سکتے ہیں تو faster ہوگی as compared to the memory جس کی 8 bits ہیں so address must ہوگی data bus ہوگی جو کہ bidirectional ہے تیسے جو تیسے گزمی جو signals ہیں ہم کہتے ہیں control signals memories میں آپ information ڈال سکتے ہیں لکھ سکتے ہیں یا پڑھ سکتے ہیں تو یہ کیسے determine ہوگا بیسکلی آپ نے a control signal کی مدد سے memory کو بتانا ہے کہ یہ read کرنا ہے یا write کرنا ہے دوسرہ جو a control signal ہے وہ اس پوری memory chip سلک کرے گا کسی بھی digital system میں آپ کے پاس ایک سے زیادہ memory chip ہوگے تو کسی ایک time ایک location سے آپ information یہاں پڑے ہیں یا لکھ رہیں جو باقی memory chip ہیں وہ اس time پے selected نہیں ہوگے تو کسی ایک memory chip کو کیسے سلک کریں گے بیسکلی ایک chip select لائن ہوگی جو ایک سے زیادہ بھی ہو سکتے ہیں so control lines میں ایک تو read write لائن ہوگی اور ایک chip select لائن ہوگی read write لائن جو ہے وہ یان تو ایک ہوسکتی سنگل ہوسکتی اگر let's suppose اس کو آپ high کردیں logic high اس کو کردیں تو وہ memory سے information read کرے گا اگر اس کو آپ 0 کردیں so information write کرے گا کچھ memories میں 2 separate read write lines ہوگی تو اگر آپ نے read کرنے تو read والی line کو activate کردیں اور آپ نے information write کرنی write والی line کو activate کردیں address lines کی جو ہم نے بات کی بیسکلی ہم نے address bus میں جو information ہے اس کی مدد سے ایک cell یا group of cells کو ہم نے select کرنے کیسی select ہوگا بیسکلی جس ہم شروع میں جو diagram دیکھا تھا اس میں row سلک کرنے اور ایک column سلک کرنے memory کے اندر ایک decoder لگا ہوتا دپن کرتا ہے memory کی capacity پہ تو اگر let's say 8 cell کی memory ہے 8 locations ہیں تو ایک 3 to 8 decoder لگا ہوگا 3 input address ہوگا 3 bit کی address میں سے ایک location آپ سلک کریں گے so the decoder output ہے وہ بیسکلی ایک row کو یا ایک location کو سلک کر رہا ہوگا اگر اسی دن آپ کے پاس 16 location کی memory ہے اس میں 4 to 16 decoder لگا ہوگا input 4 bits کا ہوگا output میں 16 میں سے ایک line سلکٹ ہوگی جو اس پتکلر row کو یا location کو سلک کر رہے ہیں so memory کی اندر ایک decoder لگا ہوتا ہے جو کے external address lines کے ساتھ connected ہیں ایس دیر کام کو دیکھتے ہیں اور آگے پھر discussion کرتے ہیں اس میں diagram میں ایک read write memory کا block diagram دکھائے گے center میں a memory array دکھائے گئے اس کے different inputs ہیں address decoder سے آرہا ہے address decoder جیسے ہم نے discuss کیا اس کا input address pass that means microprocessor جو ہے ایک خاص address apply کرے گا جو کہ address decoder جو کے memory chip میں اس address کو decode کرے گا اور multiple output lines ان میں سے ایک line کو activate کر دے گا جس کو ہم کہیں گے row select line یہ جو row select line اس کی مد سے ہم یا ایک cell یا multiple cells enable کر دیں گے یا select کر دیں گے right side پہ ایک data bus دکھائے گئے جو کہ bidirectional ہے that means اگر آپ نے memory array سے information پڑنی ہے read کرنی ہے تو information اس data bus کی مدت سے ہم پڑھ سکتے ہیں out ہو گی اگر آپ نے اس میں information لکھنی ہے so data bus پہ آپ information apply کریں گے address بھیجیں گے جس کی وجہ سے اس پرکڑر location پے information لکھی جا سکتی ہے read یا write کیسے ہوگا بسکل یہ دیترمین ہوگا read and write control لائن سے جو کہ نیجے دکھائے گئے ہیں اس ٹائگرم میں دو separate read and write لائن سے دکھائے گئے ہیں so اگر information read کرنی ہے تو read signal activate ہو جائے گا اگر information write کرنی ہے write signal activate ہو جائے گا اس سے پہلے کہ read signal apply کریں یا write signal apply کریں اس پوری memory کو select کرنا ہو گا جو کہ اوپر جو signal دکھائے گے memory select signal write activate ہو جائیں گے اس کے بعد آپ information پڑھ سکتے ہیں یا لکھ سکتے ہیں اس میں ابھی ہم نے دیگرم دیکھا blog دیگرم دیکھا ہے ایک memory کا basically جو important parts memory array just information store ہوتی ہے ایک address decoder ہے جو address line کو or address input کو decode کرتا ہے اور ان میں سے ایک particular cell کو or group of cells کو select کرتا ہے some signals chip select جس کو اب activate کریں گے so memory address decoder یہ select ہو جائیں گے اگر deactivate کریں گے تو اف course یہ select نہیں ہو گے select کرناے کے بعد ہی آپ read یہاں write کر سکتے ہیں تو اگر read کرنا ہے تو read control signal کو activate کر دیں اگر write کرنا ہے write control signal کو activate کر دیں اگر write control signal کو activate کر دیں اب دیکھیں read ایک microprocessor basically جو ہے information کو اسٹور کرنا چاہا ہے اس کو ہم کہیں گے write operation read and write operations کیسے ہوں گے basically یہ جو different ہم نے signals discuss کیا ہے یہ ایک sequence میں apply ہوں گے so that means پہلے address آئے گا address کی وجہ سے ایک location select ہو جائے گی آپ نے chip select بھی apply کرنا ہے جس سے خاص memory chip select ہو گا let's say multiple memory chips ان میں سے read signal بھیجنا ہے یا write signal بھیجنا ہے اگر اپنے read کرنا ہے تو read signal کو activate کریں گے اگر write signal بھیجا تو write information ہو گی اگر write کرنی ہے information memory array میں لکنی ہے تو information بھی آپ کو provide کرنی پڑے گی وہ کہاں پڑائیٹ کریں گے data lines پے جو یہ دیکھتے ہیں کہ microprocessor اس memory کے ساتھ کیسے connected ہے کونسے buffers use ہو رہے اور یہ read operation and write operations کیسے ہو رہے memory read operation کا ایک diagram دکھا ہے ایک microprocessor جو ہے وہ address 4 سے ایک information پڑھا ہے byte information پڑھا ہے لفٹ سائٹ پے address buffer دکھا ہے جو کہ microprocessor کے اندر ہے microprocessor میں address buffer ہوتا ہے جو بھی جس address سے microprocessor نے information پڑھنی ہے وہ address buffer میں وہ address آجاد ہے address buffer کے ساتھ ایک address bus ہے جو کہ memory کے address decoder کے ساتھ connected ہے address bus جو ہے وہ بھی ایک external component ہے microprocessor جب memory کے ساتھ connect ہوگا through address bus connect ہوگا address bus جیسا ہم نے پہلے بتایا set of address lines جن پے آپ address information بھیجیں گے memory کو memory کے پاس جب information 1 0 0 پہنچے گی address decoder ایک output line address decoder کی ایک output line activate کر لے گا اگر اس diagram میں دیکھا جائے 8 rows ہیں پہلی row کے address 0 ہے second one ہے اسی تانا جو آخری ہے وہ 7 ہے so 0 سے لے کے 7 addresses ہیں 8 rows ٹوٹل بھن جاتی ہیں address buffer میں information 1 0 0 جو address ہے 1 0 0 پڑا ہوئے so address decoder جو ہے وہ line number 4 کو سلک کرے گا line number 4 جب سلکت ہوگی تو جو 8 cells ہیں اس پتکلر row میں وہ سارے کے سارے سلکت ہو جائیں گے memory select signal of course activate کیا ہوا ہے تاکہ address decoder بھی کام کرے and memory array بھی کام کرے کیونکہ read کر رہے ہیں so read signal بھی active ہے read signal کو active کرنے سے جو information ہے 8 cells میں row 4 پے وہ information data pins پے available ہو جائے گی جو memory کی data pins ہیں وہ connected ہیں ایک data buffer کے سال data buffer جو ہے microprocessor کے اندر ہے so memory کی data lines پے جو information ہے وہ formation جو ہے data buffer میں جا رہیں through the external database بسکلی data bus جو ہے set of data lines ہیں information جو ہی memory پے آئے گی microprocessor جو ہے وہ information کو latch کر لے گا so basically جو data buffer ہے یہ ایک latch ہے جس میں وہ information جو location 4 پے ہے وہ latch ہو گئی ہے diagram میں ایک memory right operation دکھایا گیا ہے اسی طرح وہی 8 row کی memory array ہے جس میں ہر row میں ایک byte store کی گئے so microprocessor جو ہے address location 3 پے information لکنا چاہ رہا ہے so address buffer میں جو address ہے 011 پڑا ہوا ہے یہ 011 apply ہو رہا ہے address decoder کے input پے through the address bus memory select ہوئی ہے memory select signal active ہے read signal کو deactivate کر دیے write signal کو activate کر دیے کیونکہ یہ information لکنی ہے کونسی information لکنی ہے وہ information microprocessor جو کہ اس کے data buffer میں موجود ہے so the information ہے وہ ہے 1 0 1 1 0 0 1 0 so جو ہی write signal apply ہو گا یہ information جو ہے memory کی data inputs پے available ہے through the the bus so write signal پے یہ information جو ہے address location 3 پے store ہو جائے گی so memory میں 1 0 1 1 0 0 1 0 memory location 3 پے store ہوتے ہوئے دکھایا گیا ابھی ہم نے memory read operation memory write operation کو diagram کی مدد سے دیکھا اس میں ہم نے جو different signals ہے ان کا correct sequence اس پے ہم نے کوئی زیادہ discussion نہیں کیا کہ address کب آئے گا information کب ملے گی read write signal کب activate ہوں گے chip select signals کب activate ہوں گے یہ ہم بعد میں ہم دیکھیں گے جب read write cycle کو Discuss کریں گے بل یہ زین میں رکھے گا یہ different signals ہے یہ an appropriate sequence میں apply ہو گے ابھی ہمارے پاس information properly read ہوگی یا information write ہوگی اب ہم بات کرتے ہیں memory types کی کسی بھی digital سسٹم میں ایک قسم کی memory نہیں ہوتی different types کی memory use ہوری ہوتی تو جو دو major types وہاں ram and rom ram جو ہے random access memory random access کا مطلب ہے کسی location سے کوئی بھی information access کر سکتے ہیں read کر سکتے ہیں یہاں write کر سکتے ہیں جیسا گیم نے read write operation میں دیکھا کوئی بھی آپ address بھیجیں اس سے ایک location سلکت ہو جائے گی اس پر آپ information read کر سکتے ہیں پڑھ سکتے ہیں یا لکھ سکتے ہیں بسکلی یہ جو ram یہ computer سسٹم میں بہت زادہ ہوتی اس کی capacity بہت زادہ ہوتی کیونکہ یہ بتایا تھا کہ جو program میں جو آپ نے execute کرنے وہ in the form of instructions اسی ram میں reside کرے گا جو آپ کا microprocessor اس ram سے وہ ایک instruction پک کرے گا اس کو decode کر کے جو ram جو ہے digital system میں usually بہت زادہ ہوتی as compared to the other type دوسی type کیا ہے basically rom read only memory read only memory جو ہے جیسے کہ نام سے زائر ہے ہم صرف پڑھ سکتے ہیں اس میں information لکھ نہیں سکتے بسکلی اگر ہم لکھ نہیں سکتے صرف پڑھ سکتے ہیں تو اس کا use کیا ہے جب بھی آپ computer سسٹم کو on کرتے ہیں تو اس کو کچھ instructions دینی ہوگی کہ بھی یہ کام کرنے ہے یہ sequence اس نے follow کرنا ہے تو وہ کہاں سے information دیں گے کیونکہ آپ جو ہی button پیس کیا ہے اس سے پہلے آپ نے کوئی program load نہیں کیا ہوا تو وہ جو important information ہے وہ بسکلی اسی قسم کی memory میں rom میں ہوگی جب بھی آپ ایک digital system کو on کریں گے اس کو permanently stored instructions چاہیے جو execute کرے گا اور اس کو کہیں گے boot up کرے گا آپ کو so basically یہ information read only memory میں ہوگی اب یہ instructions بہت کم ہوتی ہیں so therefore computer system میں rom کی جو capacity ہے یا rom جو chip ہے وہ comparatively بہت کم ہوتا ہے یہ چھوٹا ہوتا ہے اس compared to ram ram اور rom ایک جو اور خاص بات ہے ram جو ہے اس کو کہتے ہیں volatile memory volatile کا مطلب ہے کہ اگر آپ power apply کریں جو flip flops یہ transistors جن کی مدد سم information store کریں ان کو power چاہیے five word چاہیے اگر آپ five word remove کریں جو بھی information ram میں ہے وہ lose کر جائیں گے اس کو آپ retrieve نہیں کر سکتے تو اس لیے ام ram کو کہیں گے volatile memory اس لیے جو آپ program لکھتے ہیں execute کرتے ہیں اس کو اگر آپ store نہیں کریں computer کو switch off کردیں تو آپ کو دو بارہ سے program لکھنا پڑھے گا so ram basically volatile ہے rom جو ہے جس ہم نے بتایا ہے permit information چاہیے store کرنی ہے جو ہی آپ system کو on کرتے ہیں وہ information will سے پڑھے گا اور اپنا کام کرنا شروع کر دے گا اگر آپ نے power off کر دیا اور وہ information retain نہیں کر پایا تو پھر آپ کے پاس کچھ بھی نہیں ہے آپ کا system نہیں چلے گا so rom جو ہے وہ non volatile memory بھی کہلاتا ہے basically اگر power off بھی کر دن تب بھی information وہ retain رہے گے so two types ہوگی ram memory and rom memory so different attributes and characteristics ہم ram کو پہلے discuss کریں گے اس کے بعد ہم rom کو discuss کریں گے ram کی بھی آگے different types ہیں two major types static ram static ram جو ہے basically fast ہے اس کا جو access time ہے مدب آپ come time میں لکھ سکتے information or پڑھ سکتے ہیں so static ram کی جو density ہے وہ بھی low ہے that means per unit area جو memory storage ہے جو اس میں capacity ہے وہ come ہے dynamic ram جو ہے دوسی تاپ ہے ایک ram memory کی اس میں جو ہے access time the time in which you can read information or write information جو ہے slow ہے compared to static ram so that means static ram fast ہے dynamic ram slow ہے dynamic ram کی جو capacity ہے وہ بہت زیادہ ہے compared to static ram so upper unit area بہت ساری information store کر پاتے ہیں آپ کے جو computer system میں basically ram implement ہی وہ dynamic ram کی static ram جو ہے اس کو ہم نے جیسے بتایا ہے flip flop کی مدد سے implement کر رہے ہیں ایک cell static ram کی وہ ایک flip flop کی implement ہو رہا ہے ایک flip flop کی implement کرنے کے لیے تاکیمان چھے transistors چاہیں اگر d ram کو دیکھا جائے dynamic ram کو دیکھا جائے اس کا جو ایک cell ہے وہ implement کرتے ہیں ایک transistor ایک capacitor کی مد سے basically transistor as a switch کام کر رہا ہے so وہ basically allow کرتا ہے کہ capacitor وہ charge ہو جائے ہیں اگر capacitor charge ہو جائے تو اس میں جو information جو charge store ہے اس کو ہم کہتے ہیں کہ logic one store ہو گیا اگر capacitor uncharted ہے یہ discharge کر دی ہے اس پہ کوئی voltage نہیں ہے کوئی charge نہیں ہے اس کو ہم کہیں گے کہ zero logic ہے so basically charged capacitor store کر رہے logic one کو uncharted capacitor logic zero کو represent کر رہے یا store کر رہے ایک transistor اور ایک جو capacitor اس کو بہت تھوڑی space میں implement کر سکنے کیا نکلے گا آپ کی جو dynamic ram ہے وہ زیادہ دینس ہو جائے گی کیونکہ ایک جو cell ہے وہ کم جگہ میں آپ implement کر پا رہے ہیں capacitor کو charge discharge کرتے ہوئے جو access time ہے وہ slow ہو جاتا تھوڑا اس لی ہم کہتے ہیں جو s ram a static ram وہ fast ہے as compared to dynamic ram dynamic ram میں ایک اور issue ہے basically capacitor وہ forever اپنا charge retain نہیں کر سکتا ہے like you know تھوڑی time کے بعد وہ completely discharge ہو جائے گا اگر ہمار پس dynamic ram ہے جس میں آپ نے let's suppose ایک program store کیا ہوئے اور اس کو اگر dynamic ram کو now charge دوارہ سے نہیں کریں یا refresh نہیں کریں تو information lose ہو جائے گی so dynamic ram جہاں بھی ہوگی اس کے ساتھ ایک refresh circuitry ہوتی ہے جو periodically جدنے بھی capacitors ان ساروں کو charge کرتی ہے اس میں تاکہ جو information ہے کیونکہ اس میں کوئی refresh circuitry نہیں ہے پر density اس کی جو ہے وہ کم ہے on the other hand dynamic ram جو ہے اس میں circuit complexity وہ زیادہ ہے کیونکہ refresh circuit کی وجہ سے پر density زیادہ memory آپ less space میں implement کر سکتے ہیں ایہب دیکھتے ہیں static ram کا جو flip flop base cell اس کو کیسے implement کیا ہے static ram کا جو structure ہوتا ہے جو information کو store کرتا ہے اسی flip flop میں information پڑھا ہے یہ جو ہم نے signals discuss کیا تھے address signals dara signals control signals read write signals یہ بیسکلی اگر دیکھا جائے ایک cell کو control کر رہے ہیں اور اگر آپ کے پاس پوری complete memory ہے جس میں multiple cells ہیں تو یہ address lines again decoder کے through multiple cells کو access کر رہے ہیں select کر رہے ہیں اس میں اور یہ read write operations کیسے ہوتے ہیں dara میں ایک static memory cell دیکھایا گا جو کہ ایک d flip flop پے based ہے center میں d flip flop d input پے data in ہم apply کرے ہیں جو information اس memory cell میں store کرنی ہے وہ of course data in پے apply ہوگی one bit information store کرے گا of course اگر multiple bit store کرنی ہے تو اسی قسم کے multiple circuits ہوں گے کیو output جو ہے ایک connect ہوا ہے try state buffer کے ساتھ try state buffer کو enable کرتے ہیں ہم select input کے ساتھ show left hand side پے اگر دیکھیں ایک and gate ہے اس کے دو inputs ہیں select input اور right signal and gate کا output جو ہے جو clock signal d flip flop اس کے ساتھ connect ہوا ہے basically یہ جو d flip flop ہے یہ کام کرتا ہے as a latch latch جیسے آپ کو یاد ہو اس میں clock signal کی ضرورت نہیں جو ہی ہم clock input پے high level پل سپلائے کریں یا low level پل سپلائے کریں تو یہ transparent ہو جائے گا یہ information کو latch کرے گا جو آئی دیکھیں یہ کام کیسے کرتا ہے اگر ہم نے data پڑنا ہے اس میں سے read کرنا ہے تو right signal جو ہے وہ 0 ہو جائے گا inactive ہو جائے گا کیونکہ right signal اگر active ہے تو اس کا مذہب ہم لکھ رہے ہیں right کر رہے ہیں so read کرنے کے لیئے right signal اس کا مذہب ہے جو d flip-flop ہے وہ select نہیں ہوا so information جو ہے وہ q output پے اس کو ہم پڑھ سکتے ہیں اگر select input active ہو select input active ہو try straight buffer enable ہو جائے گا q output پے جو information ہے وہ data output available ہو جائے گے اگر ہم information لکھنا چاہے ہیں right کرنا چاہے ہیں تو select active ہو گا کیونکہ select کا active ہونا یہ اس کے بغیر کام جو سرکیٹ ہے نہیں کرے گا right signal ہے وہ بھی active ہو گا that means and gate کا output active ہو جائے گا one ہو جائے گا جب and gate کا output active ہو جائے گا one ہو جائے گا d flip-flop کا جو c input ہے وہ بھی of course active ہو جائے گا اور یہ as a transparent latch کے طور پے کام کرنا چاہے گا that means data in پے جو بھی information ہے وہ available ہو جائے گی q output پے جو ہی right signal disable کرتے ہیں جو information q output پے ہے وہ latch ہو جائے گی so that means data in پے جو information تھی وہ latch نے store کر لیے ابھی ہم نے a static ram کے single cell کے implementation دیکھیں جسے گا ہم نے دیکھا diagram میں ایک d flip-flop ہے جو کہ as a latch استعمال ہو رہا ہے اس میں کچھ control circuitry ایک and gate لگایا ہے جس کی مدد سے ہم information latch میں right کر سکتے ہیں یا read کر سکتے ہیں diagram میں دو data lines دکھائے گا basically ایک n تھا اور ایک data out تھا جسے گی memory میں ہم نے پہلے دسکس کیا تھا ایک ہی data bus ہے جو کہ bi-directional ہے basically data in line کو data out line کے ساتھ اکٹھیں ملا سکتے ہیں تو یہ آپ کے پاس ایک bi-directional data line بن جائے گی کیونکہ جب بھی آپ information memory میں لکھ رہے ہیں اس وقت آپ پر نہیں رہے ہو دے so that means read write جو ہے different time intervals پے ہو رہے so that means اگر آپ پر دیں some lines کو آپ ملا دیں تو آپ کی memory جو ہے وہ کام کرے گی اس میں جو ڈائیگام دیکھا تھا basically جو flip-flop ہے ایک ہی information ایک bit کو store کر رہا ہے ایک cell کو represent کر رہا ہے practically جساکہ آپ کو معلوم ہے ہمیں زیادہ capacity کی memory جائے that means multiple cells ہوں گے اسی قسم کے latch استعمال ہوگی اس کا control circuitry ہوگی basically organize ہوگی اسی طرح 2 dimensional ایک decoder ہوگا row addresses generate کرے گا column addresses generate کرے گا so row and column address ملکے ایک cell کو select کریں گے so let's suppose ایک location ہے 1, 2, 3 1, 2, 3 ایک address اس میں آپ نے 8 bit store کیا جو data unit ہے وہ 8 bit کا unit ہے کہ byte کا ہے so 1, 2, 3 address پے basically آپ کے پاس یہ جو latch اس ہم نے discuss کیا جو circuit تھا 8 copies ہوں گی اس میں so that means complete information جو ہی آپ address جو microprocessor ہے address 1, 2, 3 apply کرتا ہے address bus پے decoder جو ہیں جو پٹکلر row select کر دے گا particular column select کر دے گا جس کی مدد سے وہ 8 latch اس select ہو جائیں گے پھر depending on the read signal یا write signal up read یا write operation کر سکیں گے آئی دیکھیں اس 2 dimensional array کو اور latch اس کو کیسے یہ organized ہوں گی اور کیسے select ہو رہیں گے ڈائگرام میں internal structure دکھا 8 x 4 ڈائگرام کا 8 x 4 کا مطلب ہے 8 locations ہیچ location stores 4 bits جیسے گے ڈائگرام میں نظر آرہا ہے ہر row میں 4 latch اس ہیں اور جو ڈیکوڈر کی select line ہے ڈیکوڈر کی output جو select line ہے وہ ڈیکوڈر کے select input کے ساتھ ڈیکوڈر کے ساتھ ڈیکوڈر کے ساتھ ڈیکوڈر کے ساتھ ڈیکوڈر کے ساتھ ڈیکوڈر کے ساتھ ڈیکوڈر کے ساتھ ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی ڈیکوڈر کی پہلے والے انگیٹ کے انپوٹ پہ و رائٹ سیگنل ہے اور نیچے چیپ سلک سیگنل ہے اسی طرح نیچے انگیٹ ہے اس کے دو انپوٹس ہیں ایک چیپ سلکٹ اور ایک اوٹپوٹ انی بل یہ سارے اکٹیو ہائی سیگنل ہیں that means رائٹ اگر ہائی ہوگا تب انفارمیشن رائٹ ہوگی اگر رائٹ زیروں ہوگا تو اس کا مطلب ہے ہم ریٹ کر رہے ہیں انفارمیشن اس میمری اریس ہے چیپ سلکٹ بھی اکٹیو ہائی ہے اگر یہ ہائی ہوگا تب یہ میمری کام کرے گی اگر چیپ سلکٹ لو ہے تو تب میمری کام نہیں کرے گی پریٹ بھی نہیں کر سکیں گے رائٹ بھی نہیں کر سکیں گے اوٹپوٹ انیبل جو ہے یہ بیسکلی ریٹ کرنے کے لیے ہم use کر رہے ہیں اوٹپوٹ انیبل جس انگیٹ پہ لگا ہوا ہے اس کے اوٹپوٹ کو اگر دیکھیں وہ چار پری سٹیٹ بفرس کے اوٹپوٹ انیبل انپروٹ کے ساتھ کونکٹرٹ ہے لٹن سپوز کے چیپ سلکٹ جو ہے وہ اکٹیو ہے اور اوٹپوٹ انیبل بھی اکٹیو ہے اس کی وجہ سے سیکن انگیٹ ہے اس کا اوٹپوٹ جو ہے ایکٹیویٹ ہو جائے گا چارو جو پری سٹیٹ بفرس ہیں وہ ایکٹیویٹ ہو جائیں گے ادریس جو 0000 بھیجا ہے جس کی وجہ سے پہلی رور کی ساری لیچس جو ہیں چار لیچس وہ سلکٹ ہوگی ہیں ان کے اوٹپوٹ جو ہے وہ دیتہ ڈاوٹ ٹی دیتہ ڈو دیتہ ڈو انہوڈ اوٹ ٹیہ اوٹ ڈیتہ ڈو پی اوٹ پی اویلے بل ہو جائے گے کسی دوسری رور کی لیچ جو ہے وہ کیونکہ سلکٹ نہیں ہوئی اس کی انفارمیشن اوٹپوٹ پے اویلے بل نہیں ہوگے اسی طرح اگر رائٹ کرنا جائیں تو رائٹ سینل اکٹیو ہوگا چیپ سلکٹ اوٹپ ہونا چاہیے اوٹپوٹ انیبل جو ہے پہلے والے اینگیٹ کا اوٹپٹ جو ہے وہ تمام جو فلیپ فلوپس ہیں لیچس جو ہے ان کے right سیگنل کے ساتھ کنکٹرٹ ہے. شو دپن کرتا ہے کہ ایڈرس کو کنس اپلائے کیا لیٹسے 111 اپلائے کیا ہے آخری والی روٹ کی ساری جو فلیپ فلوپس ہیں چارو فلیپ فلوپس ہیں جو لیچس ہیں وہ سلکت ہو جائیں گی right سیگنل ایکٹیویٹ سٹاٹیک ریم کا انٹرنل سٹرکٹر بیسکلی ایٹ روز تھی یا ایٹ لکیشنز تھی اور ہر لکیشن جو تھی چار بیٹ کو سٹور کر رہے. سو بیسکلی آپ کے پاس 8 x 4 32 فلیپ فلوپس چاہیے اور کنٹرول سرکیٹری جو ہے جو ہے وہ کمن ہے ساروں کو جو چار فلیپ فلوپس ہیں ایک رو میں ان کو سملٹینسلی سلکتے ہیں اب ہم دیکھتے ہیں کہ جو بلوک ٹائیگرام ہے یا جو ایک میمری چپ ہے اس کا سیمبل کیسا ہوگا اس میں جو دفنٹ سیگنلز ہیں وہ کیسے نظر آتے ہیں اس میں سو ہم ایک ایک اگرامپل دیکھتے ہیں سکسٹین کلو بائٹ گرام چپ کی اس کے ایٹرس لائنس دیکھتے ہیں دیرہ لائنس دیکھتے ہیں اور جو کنٹرول سیگنلز ہیں نواملی جو دیرہ شیٹس میں آپ کو ایک رام کی جو سیمبل دکھایا جاتا ہے اس میں یہ والے سیمبل س ہوتے ہیں. سو یہ دیکھیں دیگرام میں ایک سکسٹین کلو بائٹ سٹیٹک رام کا سیمبل دیکھایا گے سکسٹین کلو بائٹ رام کو سلک کرنے کے لئے بسکلی آپ کو ٹین ایڈرس لائنس چاہئے جو فامولا ہے ٹو ریس ٹو پاور ان سو ٹو ریس ٹو پاور ٹین ہو اس سے آپ کے پاس سکسٹین کلو لوکیشنز یونیک ایڈرسیز آجاتے ہیں. سو لیفٹ ہینڈ سائٹ پے ای ٹی رو سے لے کے ای ٹھرٹین جو ہیں ٹو دا ایڈرس لائنز شو کر رہے ہیں یہ of course کنکٹ ہوں گی اکسٹرنل ایڈرس بس کے ساتھ ایڈرس بس کنکٹڈ ہے میکرو پرسیسر کی ایڈرس لائنز کے ساتھ سو میکرو پرسیسر اینی ایڈرس لائنز پے ایڈرس بھیجے گا جس سے ہم ایک لکیشن سلک کریں گے اور وہاں ہم انفارمیشن ریٹ کر سکتے ہیں یا ریٹ کر سکتے ہیں ریٹ ہینڈ سائٹ پے بی دریکشنل دیتہ لائنز دکھائے گئے ہیں کیونکہ ایٹی بٹ سٹور ہوری ایک لکیشن پے تو جب بھی آپ ریٹ کریں گے یا ریٹ کریں گے ایٹھ بیٹس ایڈر ٹائنگ کریں گے اب کیونکہ ریٹ کر سکتے ہیں ریٹ کر سکتے ہیں دیتر جو دیتہ لائنز ہیں ان کو بی دریکشنل دکھائے گے نیچے لفٹ اپنے سائٹ پر تین کنٹرول سیکنلس دکھائے گے چیپ سلکٹ بار رائٹ اینیبل بار این اوٹپوٹ اینیبل بار تینوں ایکٹف لو سیکنلز ہیں ضروری نہیں ہے کہ یہ ایکٹف لو ہوں ایکٹف ہی بھی ہو سکتے ہیں جنونلی ایکٹف لو سیکنلز use کیا جاتے ہیں چیپ سلکٹ سیکنلز جو ہے یہ اووراہل پوری میمری چپ کو سلکتے ہیں میمری ارے جو ہے وہ سلکتے ہیں اور ایڈرس دیکو رو جو ہیں انٹرنر ایڈرس دیکو رو جو ہیں ان کو سلک کرتے ہیں رائٹ اینیبل سیکنلز جو ہے یہ انفارمیشن ڈرائٹ جب کر رہے میمری کو اس کو ایکٹیویٹ کرتے ہیں لچ جو ہے اس کو ایکٹف کر دیتا ہے تاکہ انفارمیشن ڈرائٹ ہو جائے اوٹپوٹ اینیبل جو ہے وہ try state buffer کو کنٹرول کر رہے جب بھی ہم انفارمیشن اس رام سے پرنا چاہیں گے اوٹپوٹ اینیبل کو ایکٹف ہونا چاہیے ابھی ہم نے ایک 16 کے انٹو 8 ڈرائٹ جو ڈرائٹ ڈرائیم ہے اس کا سیمبل دیکھا ہے انٹرنر ڈرائٹ سیکنلز دیکھے ایندھا لیکچر میں ہم مزید اس پر دیسکشن کریں گے سپشل ہم دیکھیں گے کہ جو ڈرائٹ اینفارمیشن ڈرائٹ اینفارمیشن جو ہے یہ کیسے ہوتی اور سیکونز کیا ہے ڈرائٹ سیکلز اور ڈرائٹ سیکلز کو ہم ڈیٹیل میں دیکھیں گے نیکس لیکچر تا خدا حافظ اور اسلام علیکم