۱
subtitle
ارسال: #۱
  
از فصل حافظه سوال دارم؟؟
سلام
فصل حافظه پوران پژوهش قسمت برگ برگ سازی رو توضیح نداده از جزوه استاد اجلالی هم چیزی متوجه نشدم اگه از دوستان کسی توضیح بده ممنون میشم.
فرمول های کارایی که توی قسمت سازمان حافظه پوران هست رو اگه توضیح بدید عالی میشه
فصل حافظه پوران پژوهش قسمت برگ برگ سازی رو توضیح نداده از جزوه استاد اجلالی هم چیزی متوجه نشدم اگه از دوستان کسی توضیح بده ممنون میشم.
فرمول های کارایی که توی قسمت سازمان حافظه پوران هست رو اگه توضیح بدید عالی میشه
۳
ارسال: #۲
  
از فصل حافظه سوال دارم؟؟
مفهوم برگ برگ سازی مفهوم ساده ای هست و خودتون رو با درگیر کردن جزئیاتی که زیاد مهم نیست گیج نکنید.
مثلا اونجایی که ۶۴ را به شکل ۰۰۰۰ نوشته منظورش اینه که ما یک حافظ ۶۴ کیلو بایتی داردیم پس متقابلا این حافظه ۱۶ خط ادرس داره که رنج این ادرسها در مبنای hex از ۰۰۰۰ تا FFFF میباشد دقت کنید که هر رقم معادل چهار بیت که جمعا شانزده بیت در مبنای داریم .
اما خود مفهوم برگ برگ سازی:
فرض کنید میخواهیم یک حافظه چهار کیلو بایتی با چهار حافظه یک کیلو بایتی بسازیم .
یک حافظه چهار کیلو بایتی ۱۲ خط ادرس دارد و حافظه های یک کیلو بایتی ده خط ادرس دارند .
طبیعتا من باید ده خط از دوازده خط ادرسم رو برای هر چهار حافظه یک کیلو بایتی مشترکا استفاده کنم و با دو خط ادرس باقی مانده رو برای انتخاب بین این چهار حافظه استفاده کنم که درو واقع این دو خط ادرس به عنوان ورودی ادرس یک مالتی پلکسر عمل میکند . تا اینجا همه چیز واضح هست .
اما مسئله اصلی در انتخاب این ده خط ادرس مشترک برای خطوط ادرس هر یک از چهار حافظه یک کیلو بایتی و همچنین انتخاب دو خط ادرس برای ورودی انتخاب مالتی پلکسر هست . که باید به نحوی انتخاب کنیم .
روشهای مختلفی برای این انتساب وجود دارد و بسته به سیاستی که سیستم یا ماشین ما دنبال میکند میتوان اینکار رو انجام داد.
دو تا از معروفترین این روشها یکی High Order و یکی هم Low order هست .
هر یکی از این سیاستها ویژگیها و معایبی دارند که در جزوه توضیح داده و حتی در کتاب .
اما سیاست high order چیه ؟
سیاست این روش اینه که سعی میکنه خانه های مجاور را تا حد امکان در یک حافظه نگه داری کند .
مثلا خانه هایی با ادرس ۰ ,۱ ,۲, ۳ ۴, ۵ ,۶ ,۷ , . . . تا ادرس یک کیلو را در حافظه اول قرار دهد
و
ادرسهای یک کیلو تا دو کیلو را در حافظه یا برگ دوم و به همین ترتیب
از اینجا اجازه بدین ادرسهای موجود در یک حافظه را ادرسهای هم برگ بنامیم یعنی ادرسهای که در یک حافظه قرار گرفته اند .
خب وقتی سیاستمان مشخص شد باید به دنبال ویژگی هایی متمایز میان برگها باشیم که در عین حال که در ادرسهای هم برگ مشترک است با سایر ادرسها در برگهای دیگر متمایز است .
اگر ادرس های دوازده بیتی رو بنویسیم متوجه خواهیم شد که دو بیت پر ارزش تمام ادرسهای موجود در برگ اول ۰۰ است و در برگ دوم ۰۱ ودر برگ دوم ۱۰ و در برگ چهارم ۱۱ است .
خب ما هم از همین ویژگی استفاده میکنیم و ده بیت کم ارزشتر را به ورودی تمام برگها وصل کرده (A0--A9) و دو بیت پر ارزش را به عنوان مالتی پلکسر انتخاب میکنیم.
و اما سیاست Low Order:
این روش این سیاست رو دنبال میکند که:
ادرسهایی که باقیمانده انها برچهار برابر با صفر است در اولین برگ مستقر شوند یعنی ادرس های ۰ , ۴ ,۸ , ...
و ادرسهایی که باقیمانده انها بر چهار برابر با یک هست در دومین برگ یعنی ادرس های ۱ , ۵ , ۹ , . . .
و ادرسهایی که باقیمانده انها بر چهار برابر با دو هست در سومین برگ یعنی ادرسهای ۲, ۶, ۱۰ , ...
و ادرسهایی که باقیمانده انها بر چهار برابر با سه هست در اخرین برگ مستقر شوند یعنی ادرسهای ۳, ۷ , ۱۱, ..
وقتی دوباره به سراغ ویژگی ادرسهای هم برگ و با سایر برگها نگاه مکینیم به این خصیصه پی خواهیم برد که اینبار ادرسهای هم برگ در برگ اول دارای دوبیت کم ارزش یکسان میباشند .
تذکر: کافیه واسه چند ادرس اول از هر برگ ادرس باینری را بنوسید وانها را با هم مقایسه کنید مطمئنا خودتان به این خصیصه پی خواهید برد .
خب بنابرین در این روش هم مشخص هست که دو بیت کم ارزش را باید به عنوان ادرس مالتی پلکسر استفاده کنیم و مابقی رو به عنوان ادرس برگها .
درنهایت این دو روش معروف برای برگ سازی هست و بر حسب مورد میتواند تغیر کند کمکا که در تسها شما باید این کار رو انجام بدین یعنی مراحل کار رو الگوریتم وار میگم .
۱- بعد از مشخص کردن تعاداد برگها باید مشخص کنید که هر برگ باید شامل چه ادرسهایی باشد و این کار رو به تفکیک هر برگ انجام میدهید.
۲- در این مرحله باید ادرس باینری چندین عنصر از هر برگ را بنویسد و به دنبال خصیصه ای باشید که دو ویژگی داشته باشد:
اول تمام ادرسهای هم برگ حاوی اون ویژگی باشند
دوم اینکه ادرسهای موجود در سایر برگها در این ویژگی با هم تفاوت داشته باشند .
درنهایت کار تمام است .
امیدوارم تونسته باشم که روند کار رو تا حدودی توضیح داده باشم اما در هر حال با کمی دقت خودتان به این تبحر دست پیدا خواهید کرد که به سادگی تشخیص بدهید که چگونه برگ برگ سازی کنید کما که در مثالها سعی بر این داره که شماخودتان به این مهارت دست پیدا کنید.
اگر توضیحات کم وکسری داشت ببخشید.
مثلا اونجایی که ۶۴ را به شکل ۰۰۰۰ نوشته منظورش اینه که ما یک حافظ ۶۴ کیلو بایتی داردیم پس متقابلا این حافظه ۱۶ خط ادرس داره که رنج این ادرسها در مبنای hex از ۰۰۰۰ تا FFFF میباشد دقت کنید که هر رقم معادل چهار بیت که جمعا شانزده بیت در مبنای داریم .
اما خود مفهوم برگ برگ سازی:
فرض کنید میخواهیم یک حافظه چهار کیلو بایتی با چهار حافظه یک کیلو بایتی بسازیم .
یک حافظه چهار کیلو بایتی ۱۲ خط ادرس دارد و حافظه های یک کیلو بایتی ده خط ادرس دارند .
طبیعتا من باید ده خط از دوازده خط ادرسم رو برای هر چهار حافظه یک کیلو بایتی مشترکا استفاده کنم و با دو خط ادرس باقی مانده رو برای انتخاب بین این چهار حافظه استفاده کنم که درو واقع این دو خط ادرس به عنوان ورودی ادرس یک مالتی پلکسر عمل میکند . تا اینجا همه چیز واضح هست .
اما مسئله اصلی در انتخاب این ده خط ادرس مشترک برای خطوط ادرس هر یک از چهار حافظه یک کیلو بایتی و همچنین انتخاب دو خط ادرس برای ورودی انتخاب مالتی پلکسر هست . که باید به نحوی انتخاب کنیم .
روشهای مختلفی برای این انتساب وجود دارد و بسته به سیاستی که سیستم یا ماشین ما دنبال میکند میتوان اینکار رو انجام داد.
دو تا از معروفترین این روشها یکی High Order و یکی هم Low order هست .
هر یکی از این سیاستها ویژگیها و معایبی دارند که در جزوه توضیح داده و حتی در کتاب .
اما سیاست high order چیه ؟
سیاست این روش اینه که سعی میکنه خانه های مجاور را تا حد امکان در یک حافظه نگه داری کند .
مثلا خانه هایی با ادرس ۰ ,۱ ,۲, ۳ ۴, ۵ ,۶ ,۷ , . . . تا ادرس یک کیلو را در حافظه اول قرار دهد
و
ادرسهای یک کیلو تا دو کیلو را در حافظه یا برگ دوم و به همین ترتیب
از اینجا اجازه بدین ادرسهای موجود در یک حافظه را ادرسهای هم برگ بنامیم یعنی ادرسهای که در یک حافظه قرار گرفته اند .
خب وقتی سیاستمان مشخص شد باید به دنبال ویژگی هایی متمایز میان برگها باشیم که در عین حال که در ادرسهای هم برگ مشترک است با سایر ادرسها در برگهای دیگر متمایز است .
اگر ادرس های دوازده بیتی رو بنویسیم متوجه خواهیم شد که دو بیت پر ارزش تمام ادرسهای موجود در برگ اول ۰۰ است و در برگ دوم ۰۱ ودر برگ دوم ۱۰ و در برگ چهارم ۱۱ است .
خب ما هم از همین ویژگی استفاده میکنیم و ده بیت کم ارزشتر را به ورودی تمام برگها وصل کرده (A0--A9) و دو بیت پر ارزش را به عنوان مالتی پلکسر انتخاب میکنیم.
و اما سیاست Low Order:
این روش این سیاست رو دنبال میکند که:
ادرسهایی که باقیمانده انها برچهار برابر با صفر است در اولین برگ مستقر شوند یعنی ادرس های ۰ , ۴ ,۸ , ...
و ادرسهایی که باقیمانده انها بر چهار برابر با یک هست در دومین برگ یعنی ادرس های ۱ , ۵ , ۹ , . . .
و ادرسهایی که باقیمانده انها بر چهار برابر با دو هست در سومین برگ یعنی ادرسهای ۲, ۶, ۱۰ , ...
و ادرسهایی که باقیمانده انها بر چهار برابر با سه هست در اخرین برگ مستقر شوند یعنی ادرسهای ۳, ۷ , ۱۱, ..
وقتی دوباره به سراغ ویژگی ادرسهای هم برگ و با سایر برگها نگاه مکینیم به این خصیصه پی خواهیم برد که اینبار ادرسهای هم برگ در برگ اول دارای دوبیت کم ارزش یکسان میباشند .
تذکر: کافیه واسه چند ادرس اول از هر برگ ادرس باینری را بنوسید وانها را با هم مقایسه کنید مطمئنا خودتان به این خصیصه پی خواهید برد .
خب بنابرین در این روش هم مشخص هست که دو بیت کم ارزش را باید به عنوان ادرس مالتی پلکسر استفاده کنیم و مابقی رو به عنوان ادرس برگها .
درنهایت این دو روش معروف برای برگ سازی هست و بر حسب مورد میتواند تغیر کند کمکا که در تسها شما باید این کار رو انجام بدین یعنی مراحل کار رو الگوریتم وار میگم .
۱- بعد از مشخص کردن تعاداد برگها باید مشخص کنید که هر برگ باید شامل چه ادرسهایی باشد و این کار رو به تفکیک هر برگ انجام میدهید.
۲- در این مرحله باید ادرس باینری چندین عنصر از هر برگ را بنویسد و به دنبال خصیصه ای باشید که دو ویژگی داشته باشد:
اول تمام ادرسهای هم برگ حاوی اون ویژگی باشند
دوم اینکه ادرسهای موجود در سایر برگها در این ویژگی با هم تفاوت داشته باشند .
درنهایت کار تمام است .
امیدوارم تونسته باشم که روند کار رو تا حدودی توضیح داده باشم اما در هر حال با کمی دقت خودتان به این تبحر دست پیدا خواهید کرد که به سادگی تشخیص بدهید که چگونه برگ برگ سازی کنید کما که در مثالها سعی بر این داره که شماخودتان به این مهارت دست پیدا کنید.
اگر توضیحات کم وکسری داشت ببخشید.
ارسال: #۳
  
RE: از فصل حافظه سوال دارم؟؟
اقای hadi_m
واقعا ازتون خیلی ممنون بابت توضیحات خوب و وقتی که گذاشتید توضیحات رو خونم حالا سراغ تستها و سوالات باید برم
واقعا ازتون خیلی ممنون بابت توضیحات خوب و وقتی که گذاشتید توضیحات رو خونم حالا سراغ تستها و سوالات باید برم
۱
ارسال: #۴
  
از فصل حافظه سوال دارم؟؟
بله منظورم همان بود. من مال اجلالی را ندیدم. به هر حال ممنون از این چیزی که گفتین اصلا اطلاعی نداشتم. ممنون که گفتین.
۰
ارسال: #۶
  
RE: از فصل حافظه سوال دارم؟؟
پاییز ۸۹
پوران فقط در حد یه مثال ماتریس گفته اما جزوه اجلالی یه مدل دیگه براش توضیح داده که من متوجه نشدم
پوران فقط در حد یه مثال ماتریس گفته اما جزوه اجلالی یه مدل دیگه براش توضیح داده که من متوجه نشدم
۰
ارسال: #۷
  
از فصل حافظه سوال دارم؟؟
مال من چاپ ۹۰ هست. با چاپ ۸۹ نباید زیاد فرقی داشته باشه (فکر کنم نسبت به چاپ ۸۸ زیاد تغییر داره) سه تا مثال زده . برگ برگ سازی مطالب بیشتری داره؟
ارسال: #۸
  
RE: از فصل حافظه سوال دارم؟؟
اگه منظورتون مثالهای که در مورد ساخت cpu با چند رم هست منم اینها رو دارم ولی مدل توضیحات جزوه اجلالی برای برگ برگ سازی شبیه مثال ماتریس هست که به نظر من ربط زیادی بامثال cpu نداره
۰
ارسال: #۹
  
از فصل حافظه سوال دارم؟؟
می شه سوال و بزارید؟اونی که می گین از جزوهی اجلالی هست؟
ارسال: #۱۰
  
RE: از فصل حافظه سوال دارم؟؟
اگر جزوه اجلالی رو دارید ص ۴۰
حالت کلی توضیح داده
اگه کسی از دوستان جزوه رو داره وایی قسمت رو فهمیده لطفا توضیح بده
حالت کلی توضیح داده
اگه کسی از دوستان جزوه رو داره وایی قسمت رو فهمیده لطفا توضیح بده
۰
ارسال: #۱۱
  
از فصل حافظه سوال دارم؟؟
۰
ارسال: #۱۲
  
از فصل حافظه سوال دارم؟؟
سوال ۴۱ ص ۲۱۶
برای ساخت یک کش ب ساختار ۴way چه تعداد مقایسه کننده لازم است؟
۱) ۱ ۲)۲ ۳)۴ ۴)۱۰
جواب ۳ است
راستش من نمی فهمم چجوری ۳ تا میشه
اگه میشه توضیح بدین
سوال ۴۲ ش هم که محدوده ی آدرس ها رو می خواد ، اونم لطفا توضیح بدین
thnx
یه سوال دیگه
س ۳۸ همون ص ۲۱۶
من البته تو قسمت دوم ش مشکل دارم و اونم اینه که چرا اگر کش به صورت fully باشه نرخ برخوردش ۰ میشه ؟؟؟
چون فکر میکنم برای بار اول خب میگیم ۰ باشه hitش ولی تو بار دوم که همه اینا از حافظه اصلی اومده ، چرا این بار نرخ اصابت ۰ است؟؟؟؟
برای ساخت یک کش ب ساختار ۴way چه تعداد مقایسه کننده لازم است؟
۱) ۱ ۲)۲ ۳)۴ ۴)۱۰
جواب ۳ است
راستش من نمی فهمم چجوری ۳ تا میشه
اگه میشه توضیح بدین
سوال ۴۲ ش هم که محدوده ی آدرس ها رو می خواد ، اونم لطفا توضیح بدین
thnx
یه سوال دیگه
س ۳۸ همون ص ۲۱۶
من البته تو قسمت دوم ش مشکل دارم و اونم اینه که چرا اگر کش به صورت fully باشه نرخ برخوردش ۰ میشه ؟؟؟
چون فکر میکنم برای بار اول خب میگیم ۰ باشه hitش ولی تو بار دوم که همه اینا از حافظه اصلی اومده ، چرا این بار نرخ اصابت ۰ است؟؟؟؟
-۲
ارسال: #۱۳
  
از فصل حافظه سوال دارم؟؟
منظورتون از جزوه دکتر اجلالی همونیه که روی مانشت هست؟
آقا هادی که توصیح دادند اما کلا اگر از اون مشکلی داشتید بفرمائید من براتون بیشتر توضیح میدم، اگر جایی اش هم ناخوانا یا مبهمه توضیح بدم
آقا هادی که توصیح دادند اما کلا اگر از اون مشکلی داشتید بفرمائید من براتون بیشتر توضیح میدم، اگر جایی اش هم ناخوانا یا مبهمه توضیح بدم
ارسال: #۱۴
  
RE: از فصل حافظه سوال دارم؟؟
(۲۶ آذر ۱۳۹۰ ۰۸:۵۸ ب.ظ)هاتف نوشته شده توسط: منظورتون از جزوه دکتر اجلالی همونیه که روی مانشت هست؟آره همون جزوه هست.
آقا هادی که توصیح دادند اما کلا اگر از اون مشکلی داشتید بفرمائید من براتون بیشتر توضیح میدم، اگر جایی اش هم ناخوانا یا مبهمه توضیح بدم
میشه مثالهای صفحه ۴۲ یکی از اون را خوب توضیح بدین تا ابهام من درمورد نحوه حل کردن ونوشتن یه این مدل حل شود؟
Can I see some ID?
Feeling left out?
نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close