۰
subtitle
ارسال: #۱
  
سوال IT سراسری ۸۳
خواهشا و لطفا میشه اگه کسی می دونه بگه اینجور سوالا را چطوری می شه حل کرد؟
۳
ارسال: #۲
  
RE: سوال IT سراسری ۸۳
سلام.
اطلاعات لازم برای حل اینگونه سوالات به این صورت هست؛ ۳ قسمت مفروض در صورت سوال یعنی RAM.CPU.DMA را باید بصورت مفهومی ارتباط بین شان را درک کرده باشیم. DMA بصورت مستقیم و بدون واسطه CPU میتواند به حافظه دسترسی پیدا کند. گذرگاه مربوط به حافظه بین CPUوDMA به RAM مشترک است و هرگاه گذرگاه در اختیار DMA باشد،CPU نمیتواند از گذرگاه استفاده کند و بلعکس.
همونطور که اطلاع داریم سرعت دسترسی CPU به حافظه طبق گفته صورت مساله از DMA بیشتر است.
در صورت سوال ذکر کرده سرعت CPU برابر هست با ۱۰۰مگاهرتز، این یعنی نرخ کلاک برابر هست با ۱۰۰میلیون دستورالعمل در یک ثانیه؛ این یعنی در یک ثانیه ۱۰۰میلیون بار کلاک پالس تولید میشود. با یک تناسب ساده میتوان فهمید که زمان هرکلاک پالس ۱۰نانوثانیه است.
به این صورت.
۱۰۰/۰۰۰/۰۰۰دستورالعمل ........................................۱ ثانیه
۱دستورالعمل ......................................................... چندثانیه طول میکشد؟
که برابر هست با [tex]\frac{1}{100.000.000}[/tex] . (همان ۱۰ نانوثانیه).
(اطلاعات بالا صرفا جهت اطلاع شما در مورد رابطه بین نرخ کلاک و زمان کلاک پالس نوشته شد).
در صورت سوال گفته شده که نرخ انتقال بین DMA و RAM برابر هست با ۴۰Mbps یعنی حدودا ۴۰میلیون بیت در یک ثانیه. برای اینکه تبدیل بشه به کاراکتر بر ثانیه، باید ۴۰میلیون را بر ۸ تقسیم کرد(هر کاراکتر ۸ بیت). پس به این صورت عمل میکنیم: [tex]\frac{40*10^{6}}{8} = 5*10^{6}[/tex] . پس یعنی DMA میتواند ۵میلیون کاراکتر را در یک ثانیه انتقال بدهد.
همونطور که قبلا هم گفته شد، CPU میتواند ۱۰۰دستور العمل را در یک ثانیه واکشی (یا مثلا دسترسی) کند، اما DMA میتواند ۵میلیون دستور را در یک ثانیه انتقال (یا دسترسی) پیدا کند، پس در کل ۱/۲۰ سرعت سیستم بخاطر استفاده از DMA هدر میرود. اگر ۱/۲۰ را در ۱۰۰% ضرب کنیم جواب بدست امده ۵% خواهد بود که جواب سوال هم هست.
نکته: در این سوال گفته شده گذرگاه ۳۲ بیتی است، اما مشخص نکرده که واحد انتقال چند بیت است، پس طبق (طبق هیچ دلیل و مدرکی!) کاراکتر هارا ۸ بیتی درنظر میگیریم ، در صورتی که کاراکتر ها را ۳۲ بیتی درنظر بگیریم باید بجای تقسیم ۴۰میلیون بر ۸، ۴۰میلیون را بر ۳۲ تقسیم میکردیم. و مراحل را به همینصورت ادامه میدادیم. که در اون صورت میشد ۱/۲۵%
اگر جایی نامفهوم بود، بگیرد بیشتر توضیح خواهم داد.
اطلاعات لازم برای حل اینگونه سوالات به این صورت هست؛ ۳ قسمت مفروض در صورت سوال یعنی RAM.CPU.DMA را باید بصورت مفهومی ارتباط بین شان را درک کرده باشیم. DMA بصورت مستقیم و بدون واسطه CPU میتواند به حافظه دسترسی پیدا کند. گذرگاه مربوط به حافظه بین CPUوDMA به RAM مشترک است و هرگاه گذرگاه در اختیار DMA باشد،CPU نمیتواند از گذرگاه استفاده کند و بلعکس.
همونطور که اطلاع داریم سرعت دسترسی CPU به حافظه طبق گفته صورت مساله از DMA بیشتر است.
در صورت سوال ذکر کرده سرعت CPU برابر هست با ۱۰۰مگاهرتز، این یعنی نرخ کلاک برابر هست با ۱۰۰میلیون دستورالعمل در یک ثانیه؛ این یعنی در یک ثانیه ۱۰۰میلیون بار کلاک پالس تولید میشود. با یک تناسب ساده میتوان فهمید که زمان هرکلاک پالس ۱۰نانوثانیه است.
به این صورت.
۱۰۰/۰۰۰/۰۰۰دستورالعمل ........................................۱ ثانیه
۱دستورالعمل ......................................................... چندثانیه طول میکشد؟
که برابر هست با [tex]\frac{1}{100.000.000}[/tex] . (همان ۱۰ نانوثانیه).
(اطلاعات بالا صرفا جهت اطلاع شما در مورد رابطه بین نرخ کلاک و زمان کلاک پالس نوشته شد).
در صورت سوال گفته شده که نرخ انتقال بین DMA و RAM برابر هست با ۴۰Mbps یعنی حدودا ۴۰میلیون بیت در یک ثانیه. برای اینکه تبدیل بشه به کاراکتر بر ثانیه، باید ۴۰میلیون را بر ۸ تقسیم کرد(هر کاراکتر ۸ بیت). پس به این صورت عمل میکنیم: [tex]\frac{40*10^{6}}{8} = 5*10^{6}[/tex] . پس یعنی DMA میتواند ۵میلیون کاراکتر را در یک ثانیه انتقال بدهد.
همونطور که قبلا هم گفته شد، CPU میتواند ۱۰۰دستور العمل را در یک ثانیه واکشی (یا مثلا دسترسی) کند، اما DMA میتواند ۵میلیون دستور را در یک ثانیه انتقال (یا دسترسی) پیدا کند، پس در کل ۱/۲۰ سرعت سیستم بخاطر استفاده از DMA هدر میرود. اگر ۱/۲۰ را در ۱۰۰% ضرب کنیم جواب بدست امده ۵% خواهد بود که جواب سوال هم هست.
نکته: در این سوال گفته شده گذرگاه ۳۲ بیتی است، اما مشخص نکرده که واحد انتقال چند بیت است، پس طبق (طبق هیچ دلیل و مدرکی!) کاراکتر هارا ۸ بیتی درنظر میگیریم ، در صورتی که کاراکتر ها را ۳۲ بیتی درنظر بگیریم باید بجای تقسیم ۴۰میلیون بر ۸، ۴۰میلیون را بر ۳۲ تقسیم میکردیم. و مراحل را به همینصورت ادامه میدادیم. که در اون صورت میشد ۱/۲۵%
اگر جایی نامفهوم بود، بگیرد بیشتر توضیح خواهم داد.
ارسال: #۳
  
RE: سوال IT سراسری ۸۳
(۱۷ مهر ۱۳۹۲ ۱۰:۵۱ ب.ظ)azad_ahmadi نوشته شده توسط: سلام.
اطلاعات لازم برای حل اینگونه سوالات به این صورت هست؛ ۳ قسمت مفروض در صورت سوال یعنی RAM.CPU.DMA را باید بصورت مفهومی ارتباط بین شان را درک کرده باشیم. DMA بصورت مستقیم و بدون واسطه CPU میتواند به حافظه دسترسی پیدا کند. گذرگاه مربوط به حافظه بین CPUوDMA به RAM مشترک است و هرگاه گذرگاه در اختیار DMA باشد،CPU نمیتواند از گذرگاه استفاده کند و بلعکس.
همونطور که اطلاع داریم سرعت دسترسی CPU به حافظه طبق گفته صورت مساله از DMA بیشتر است.
در صورت سوال ذکر کرده سرعت CPU برابر هست با ۱۰۰مگاهرتز، این یعنی نرخ کلاک برابر هست با ۱۰۰میلیون دستورالعمل در یک ثانیه؛ این یعنی در یک ثانیه ۱۰۰میلیون بار کلاک پالس تولید میشود. با یک تناسب ساده میتوان فهمید که زمان هرکلاک پالس ۱۰نانوثانیه است.
به این صورت.
۱۰۰/۰۰۰/۰۰۰دستورالعمل ........................................۱ ثانیه
۱دستورالعمل ......................................................... چندثانیه طول میکشد؟
که برابر هست با [tex]\frac{1}{100.000.000}[/tex] . (همان ۱۰ نانوثانیه).
(اطلاعات بالا صرفا جهت اطلاع شما در مورد رابطه بین نرخ کلاک و زمان کلاک پالس نوشته شد).
در صورت سوال گفته شده که نرخ انتقال بین DMA و RAM برابر هست با ۴۰Mbps یعنی حدودا ۴۰میلیون بیت در یک ثانیه. برای اینکه تبدیل بشه به کاراکتر بر ثانیه، باید ۴۰میلیون را بر ۸ تقسیم کرد(هر کاراکتر ۸ بیت). پس به این صورت عمل میکنیم: [tex]\frac{40*10^{6}}{8} = 5*10^{6}[/tex] . پس یعنی DMA میتواند ۵میلیون کاراکتر را در یک ثانیه انتقال بدهد.
همونطور که قبلا هم گفته شد، CPU میتواند ۱۰۰دستور العمل را در یک ثانیه واکشی (یا مثلا دسترسی) کند، اما DMA میتواند ۵میلیون دستور را در یک ثانیه انتقال (یا دسترسی) پیدا کند، پس در کل ۱/۲۰ سرعت سیستم بخاطر استفاده از DMA هدر میرود. اگر ۱/۲۰ را در ۱۰۰% ضرب کنیم جواب بدست امده ۵% خواهد بود که جواب سوال هم هست.
نکته: در این سوال گفته شده گذرگاه ۳۲ بیتی است، اما مشخص نکرده که واحد انتقال چند بیت است، پس طبق (طبق هیچ دلیل و مدرکی!) کاراکتر هارا ۸ بیتی درنظر میگیریم ، در صورتی که کاراکتر ها را ۳۲ بیتی درنظر بگیریم باید بجای تقسیم ۴۰میلیون بر ۸، ۴۰میلیون را بر ۳۲ تقسیم میکردیم. و مراحل را به همینصورت ادامه میدادیم. که در اون صورت میشد ۱/۲۵%
اگر جایی نامفهوم بود، بگیرد بیشتر توضیح خواهم داد.
خیلی لطف کردین هم بابت جواب کاملتون و هم وقتتون
اگه بخواهیم از اینجور سوالا بیشتر حل کنیم از چه منبعی می تونیم پیدا کنیم و یا تو اینترنت هست از این قبیل سوال ها؟
ارسال: #۴
  
RE: سوال IT سراسری ۸۳
(۱۸ مهر ۱۳۹۲ ۰۱:۳۱ ب.ظ)آسمان ابری نوشته شده توسط: اگه بخواهیم از اینجور سوالا بیشتر حل کنیم از چه منبعی می تونیم پیدا کنیم و یا تو اینترنت هست از این قبیل سوال ها؟
سلام.
خواهش میکنم.
این سوالات رو باید بصورت مفهومی درک کرد، یعنی کارکرد DMA و CPU و دسترسی شون به حافظه و همچنین درک کلاک پالس و نرخ کلاک و تبدیل و بدست اوردنشون از روی همدیگه و ... (چقدر "و" داشت )
منبع خاصی مد نظرم نیست، صرفا باید مفهومی درک بشه.
Can I see some ID?
Feeling left out?
نگران نباش، فقط روی این لینک برای ثبت نام کلیک کن. رمزت رو فراموش کردی؟ اینجا به یادت میاریم! close