آزمایشـــــگاه معمـــــاری کامپیـــــوتر
 
 
آموزش آنچه در آزمایشگاه معماری کامپیوتر خواهد گذشت ...
 

سلام . . .

تکیه بر تقوا و دانش  در طریقت کافریست   

                      راهرو گر صد هنر دارد توکل بایدش

پس با توکل به لطف خدا شروع می کنم به ارائه گزارش کاری از آنچه باید در کلاس درس آزمایشگاه معماری کامپیوتر یاد بگیریم . به امید اینکه بتوانم حق مطلب را آنگونه که در خور شما عزیزان است ادا کنم .قبل از هرچیز لازم می دونم که قدرانی کنم از استادم سرکار خانم مرتضوی و همچنین از راهنمایی های آقای محبی . چرا که لَم یَشکُر المخلوق لَم یَشکُر الخالق و من هر چیزی بلد هستم  از راهنمایی این عزیزان بوده و از شما هم می خواهم که

یاد بگیرید با کمال دقت         یاد بدهید بی منت(شاعر هم شدم ! )

و اما پیشنهادات من : سعی کنید نهایت دقت و پاکیزگی را در کار داشته باشید طوری که آخر کار به هیچ وجه دلتون نیاد مدارتون رو باز کنید ....

طبق قرار داد کلاسمون خط بیرونی بردبورد را زمین می گیریم و از سیمهای مشکی برای برقراری اتصالات و پلهای زمین استفاده می کنیم و خط درونی برد را به  VCC وصل و برای ایجاد پلها از رنگ قرمز استفاده می کنیم . دیگه ببخشید اگر عکسم کیفیت نداره . . .

 نمای برد با اتصالات کامل مثبت و منفی

پیشنهاد من این است که  وسایل پیاده سازی مدار را در صورت امکان خریداری کنید و گام به گام همراه توضیحات و شکل مدار را ببندید تا بهتر متوجه چگونگی کار شوید . ( البته اگر استاد و رئیس دانشگاه لارجی داشته و صد البته  دانشجوهای خوبی مثل ما باشید وسایل آزمایشگاه را با قید تعهد و امانت داری می دهند به خودتون ) در غیر اینصورت می توانید  از برنامه نرم افزاری پروتوس (protus) استفاده کنید . که برای آشنایی با این نرم افزار می تونید Pdf آموزش اون رو از آدرس وبلاگی که این مطلب آموزشی رو ازش دانلودکردید یعنی همین آدرس پاورقی دانلود کنید و استفاده کنید . من هم برای نمایش شکل ها از همین نرم افزار استفاده کردم . برای راحتی شما عزیزان مطالب این وبلاگ را به صورت پی دی اف هم تنظیم کردم .

آموزش پروتوس

پی دی اف آز معماری

 |+| نوشته شده در  ساعت   توسط مرضیه سادات نوابی   | 

خلاصه :

آنچه در آزمایشگاه خواهیم به آن پرداخت پیاده سازی یک کامپیوتر محاسباتی ( ماشین حساب ) دودویی است . یک چیزی شبیه این شکل که در آن بر روی دو عدد A و B در واحد alu پردازشی انجام شده و سپس وارد رجیستر خروجی و مانیتور می شود .

در پایان می خواهیم که مدار شکل2 را پیاده سازی کنیم

بنابراین به قطعات زیر نیاز داریم :

در این مدار امکانات سخت افزاری زیر را داریم :

الف) دو رجیستر ذخیره کننده اطلاعات 8 بیتی

ب) یک واحد محاسباتی 8 بیتی شامل دو alu ، 4 بیتی

ج) یک رجیستر خاص (اکومولاتور) که توانایی هایی بیش از 4 رجیستر عادی داشته باشد

د) یک خط دیتا واقعی

پس از

تراشه 74LS374 به عنوان رجیستر 8 بیتی

تراشه ی 74LS181 به عنوان یک ALU 4 بیتی

تراشه ی 74LS244 به عنوان بافر سه حالته

تراشه ی 74LS299 به عنوان اکومولاتور ، شیفت رجیستر

استفاده می کنیم .

 |+| نوشته شده در  ساعت   توسط مرضیه سادات نوابی   | 

جلسه اول :

در این جلسه با چگونگی حساس به لبه و یا حساس به سطح بودن رجیسترها ی 74374 آشنا می شویم . ساختمان داخلی 374 مطابق شکل زیر است .

 

دارای 20 پایه که پایه 20 به VCC و پایه 10 و 1 به زمین ، پایه 11 هم به کلاک CK وصل می شود . پایه ی D0 تا D7 که ورودی هستند از دیپ سوئیچ هشتایی گرفته می شود و خط Q0 تا Q7 که خروجی ما هستند به LED متصل می شوند .

در مورد دیپ سوئیچ ها باید بگم که همیشه باید بالای سر Dip را مقاومت مثلا10  کیلویی (چرا؟) و پایین آن را به زمین وصل کنیم  . اگر از مقاومت های تکی استفاده کردید باید یک سر آن به بالای دیپ و سر دیگر آن به مثبت وصل شود ( مطابق شکل ) و اگر از مقاومت آرایه ای استفاده می کنید پس خط مثبت فراموش نشه ...

از مقاومت به دلیل اینکه اتصال کوتاه در موقع بسته شدن کلید بین پایه مثبت و منفی پیش نیاید استفاده می کنیم .

مدارتون باید یه چیزی مثل شکل زیر باشه :

 

آشنایی با رجیستر 74374

حال برای اینکه ببینید آیا 374 حساس به سطح است یا نه باید خط Ck فعال و غیر فعال کنید و با دادن عدد متوجه تغییرات شوید . اگر با تغییر عدد ، عدد نمایش داده شده با استفاده از led نمایان شد آی سی شما حساس به سطح است . و اگر برای نمایش مجبور باشید تغییر کلاک دهید پس حساس به لبه است .

 

 |+| نوشته شده در  ساعت   توسط مرضیه سادات نوابی   | 

کــــــــــلام آخـــــــــــــــــر


کاش در کتاب قطور زندگی ، سطری باشیم فراموش نشدنی ، نه حاشیه ای از یاد رفتنی !. . .

با امید به اینکه مطالب این وبلاگ مفیدواقع شده باشه . اگر تنها به اندازه ی سرِ سوزنی تونستم به اطلاعاتتون اصافه کنم ازتون می خواهم برای سلامتی بابا و مامانم دعا کنید .

همینجا از تمام کسانی که دوست دارند دانستنی هاشون رو با دیگران تقسیم کنند دعوت به ثبت مطالب در همین وبلاگ می کنم .

با تشکر

نوابی

 |+| نوشته شده در  ساعت   توسط مرضیه سادات نوابی   | 

جلسه چهارم :

ایرادی که می توان به مدار جلسه ی قبل گرفت این است که ما نمی توانیم مقدار a و b را به تنهایی و هم زمان ببینیم و تنها نتیجه ی نهایی از طریق alu نمایش داده می شود . حال می خواهیم در طی دو مرحله کاری کنیم که این قابلیت نیز اضافه شود . 

مدار را مطابق شکل زیر ببندید:   



همانطور که در شکل می بینید یک 74244، دیپ دوتایی ،  NOT و رجیستر 374 به مدار قبلی اضافه شده است .

1. از D0 تا D7 دیپ سوئیچ به ورودی 244  (A0 تا A7) وصل کرده و سپس از خروجی 244 ( Q0 تا Q7) به ورودی عدد A . مطابق گذشته ورودی A  و B را به هم وصل می کنیم .

2.G1 و G2 از 244 را به هم متصل کرده و به D0 از دیپ دوتایی متصل می کنیم .

3.در مورد ALU کم ارزش و پر ارزش همان مراحل قبلی را انجام داده با این تفاوت که در این مرحله خروجی ALU کم ارزش یعنی F0 تا F3 را به ورودی رجیستر 374 یعنی D0 تا D3 وصل و برای ALU پر ارزش نیز به همین صورت F0 تا F3 به D4 تا D7 . 4.از پایه D0 مربوط به دیپ دوتایی جدید به A1 از NOT وصل می کنیم .

5.پایه Y1 (خروجی NOT ) را به OE مربوط به 374   وصل کرده .

6.از ورودی 244 به ورودی 374 نیز باید اتصال برقرار کرد .

 |+| نوشته شده در  ساعت   توسط مرضیه سادات نوابی   | 

جلسه سوم :

 

در این مرحله به صورت مجزا از یک 347 برای A و یک 374 دیگر برای B استفاده می کنیم . پس باید یک dip دوتایی برای انتخاب A و B در نظر گرفت

همچنین یک Alu181 برای کم ارزشترین مقادیر A و B و یک Alu181 دیگر برای پر ارزشترین مقدار A` و B` استفاده می کنیم.

مدار را مطابق شکل زیر می بندیم .

 

از dip 8 تایی (...D2D3D1D0) به ورودی رجیستر اول یعنی A اتصال برقرار کرده سپس D0 از A  را به D0 از B وصل کرده و همینطور برای تمامی D ها (ورودی ها ) این کار را ادامه می دهیم  . از یک DIP دوتایی برای کلاک A و B استفاده می کنیم .

حال به عنوان مثال رجیستر A خروجی های کم ارزش آن  یعنی (Q3Q2Q1Q0) را به ALUای که برای کم ارزشترین مقادیر اختصاص داده بودیم و به پایه های (A3A2A1A0) وصل می کنیم . حال برای مقادیر پر ارزش A یعنی (Q7Q6Q5Q4) این پایه های خروجی را به پایه های ورودی ALU مربوط به مقادیر پر ارزش یعنی  ALU سمت چپی در شکل ، پایه های (A3A2A1A0) قرار می دهیم .

برای رجیستر B نیز همین کار را انجام می دهیم . با یک DIP 4 تایی خطوط Select را alu پر ارزش و از آنجا s0 پر ارزش را به S0 کم ارزش و ... وصل می کنیم . یک dip دوتایی هم برای مقادیر cin و m قرار می دهیم . باید پایه 7 ام از alu (cin) را به پایه 16 از alu یعنی cout وصل کرده  و cn مربوط به alu دوم را به dip و m هر دو alu را به هم متصل کرده و بعد به m  از alu وصل می کنیم .

خُب مسلماً پایه های خروجی f ها را هم مطابق معمول led قرار می دهیم .

به نظر میاد کار تمام شده ، بیایید مدار را تست کنیم .

یک مقدار مثلاً 5 برای a  اختصاص دهید . 0000101 حال کلاک مربوط به a را یک بار بالا و پایین کنید .

یک مقدار به B بدهید مثلا3 000011 کلاک مربوط به B را برای ثبت عدد تغییر وضعیت دهید .

Normal 0 false false false EN-US X-NONE FA MicrosoftInternetExplorer4 /* /*]]>*/ /* Style Definitions */ table.MsoNormalTable {mso-style-name:"Table Normal"; mso-tstyle-rowband-size:0; mso-tstyle-colband-size:0; mso-style-noshow:yes; mso-style-priority:99; mso-style-qformat:yes; mso-style-parent:""; mso-padding-alt:0cm 5.4pt 0cm 5.4pt; mso-para-margin-top:0cm; mso-para-margin-right:0cm; mso-para-margin-bottom:10.0pt; mso-para-margin-left:0cm; line-height:115%; mso-pagination:widow-orphan; font-size:11.0pt; font-family:"Calibri","sans-serif"; mso-ascii-font-family:Calibri; mso-ascii-theme-font:minor-latin; mso-fareast-font-family:"Times New Roman"; mso-fareast-theme-font:minor-fareast; mso-hansi-font-family:Calibri; mso-hansi-theme-font:minor-latin;}

حال خطوط select را برای انجام عملیات و مقدار m را برای نوع عملیات (ریاضی یا منطقی) مشخص کنید

برای s=0000 و m=1 باید خروجی a` را نمایش دهد ...


 |+| نوشته شده در  ساعت   توسط مرضیه سادات نوابی   | 
جلسه دوم :

خُب در این جلسه می خواهیم با سازوکار 74181 آشنا شویم . یادتون باشه که هنوز کارمون را به طور قطعی شروع نکردیم و فقط داریم برای اینکه بهتر با IC ها آشنا شویم آنها را پیاده سازی و تست می کنیم . ساختمان داخلی 181 مطابق شکل زیر است .

ساختمان داخلی 181

می خواهیم یک عدد A و یک عدد دیگر B را اعمال کرده و یک عمل ریاضی یا منطقی رو ی آن اعمال  و نتیجه را مشاهده کنیم .

آشنایی با alu181


پس همانطور که می بینید ما به یک دیپ 8 تایی نیاز داریم که چهارتای اول آن را به A (A0A1A2A3) و 4 تای بعدی را به B (B0B1B2B3) اختصاص می دهیم .

 همچنین به یک دیپ 4 تایی برای خطوط select جهت انتخاب عمل ریاضی یا منطقی مورد نظر مطابق جدول 1 نیاز داریم .

خط خروجی با F نمایش داده می شود که ما LED قرار می دهیم . خط M مشخص کننده عملیات ریاضی حسابی یا منطقی ، پایه ی 12 به زمین  (-) ، پایه 24 به VCC (+) حال مثلاً عدد A را 3 (0011) و B را 2 (0010) انتخاب کرده خط select  را (1111) می گذاریم پس مطابق جدول خروجی با m=1 با ید A نمایش داده شود . همین طوره ؟؟؟

 |+| نوشته شده در  ساعت   توسط مرضیه سادات نوابی   | 
 
  بالا