You could put your verification ID in a comment Or, in its own meta tag Or, as one of your keywords
Your content is here. The verification ID will NOT be detected if you put it here.
دانشگاهی مدیریت ارشد وب |
|||
سه شنبه 22 / 12 / 1389برچسب:تکنولوزی AVR,Working Registe,ثباتهای AVR,معماری AVR,تکنولوزی AVR,Working Registe,ثباتهای AVR,معماری AVR,تکنولوزی AVR,Working Registe,ثباتهای AVR,معماری AVR,, :: 9:1 :: نويسنده : محمود کهن
مقدمه ای بر AVR تکنولوزی AVR برای اولین بار در سال 1997 توسط شرکت Atmel ارائه شد و بعد از آن جزء تولیدات محبوب این شرکت قرار گرفت.مزیت اصلی این تکنولوژی داشتن هسته RISC همراه با تعداد زیادی ثبات کاری یا Working Register است.این ثباتها به ALU مرتبط هستند و توسط آنها می توان تعداد زیادی ریز دستورالعمل را در مدت زمان یک پالس ساعت اجرا کرد به عبارتی دیگر اجرای هر دستورالعمل یک پالس ساعت لازم دارد در حالیکه اجرای این ریز دستورالعملها در میکروکنترلرهای دیگر در تعداد زیادتری از پالس ساعت اجرا می شوند بنابراین AVR ها می توانند بسیار سریعتر عمل کنند و همچنین کدهای با حجم بالایی را اجرا کنند.به عنوان مثال کارایی یک AVR که با سرعت4MHz کار می کند با کارایی میکروی PIC با سرعت 16MHz و همچنین میکروی 8051 با سرعت 48MHz برابر است! معماری AVR ثباتهای AVR میکروکنترلرهای 8 بیتی AVR 32 ثبات 8 بیتی همه منظوره دارند یعنی r0 تا r31 . سه ثبات آدرس شانزده بیتی با نام مستعار X و Y و Z که هر کدام از این سه ثبات دو ثبات از همان 32 ثبات 8 بیتی هستند یعنی X(r27:r26), Y(r29:r28), Z(r31:r30)) . یک ثبات 16 بیتی به منظور اشاره گر پشته که در آدرسهای ورودی/خروجی: 0x3e(SPH) و 0x3d(SPL) قرارگرفته اند.همچنین این آدرسها در حافظه داده با آدرسهای 0x5e و 0x5d هستند یک ثبات 8بیتی به منظور سنجش وضعیت یا همان ثبات پرچم با نام SREG . ITHSVNZC I : فعال ساز و غیرفعال ساز عمومی وقفه SREG7 یا Global Interrupt Enable/Disable Flag T: بیت انتقالی مورد استفاده دستورالعملهای BLD وBST با نام SREG6 H: Half Carry Flag, SREG5 S : بیت علامت یا Signed tests Instruction Set, SREG4 V : سرریزنما برای مکمل دو یا Two's Complement Overflow Indicator, SREG3 N : بیت منفی یا Negative Flag, SREG2 Z : بیت صفر یا Zero Flag, SREG1 C : Carry Flag, SREG0
حافظه داده و ثباتهای AVR 32 آدرس اول حافظه یعنی (0x0000 تا 0x001f ) متعلق به ثباتهای r0 تا r31 هستند.البته در برخی MCU (MicroController Unit) ها برای ثباتها از فضای حافظه ی داده استفاده می شود. آدرسهای ( 0x0020 تا 0x005f ) از حافظه ی داده در دسترس آدرسهای ورودی/خروجی (0x00 تا 0x3f ) است. از آدرس 0x0060 حافظه ی داده به بعد فقط شامل حافظه استاتیک است یعنی SRAM .
دو ثبات برای واحد ریاضی منطقی ALU تعداد زیادی از دستورالعملهای ALU شامل دو ثبات هستند یکی مقصد یا Destination(Rd) و یکی منبع یا Source(Rr) که نحوه کدگشایی دستورالعمل را در زیر می بینید: بیتهایی که در آن حرف i قرار گرفته دستورالعملند و حرف d بیتهای مقصد هستند و حرف r بیتهای منبع هستند ثبات منبع از بهم پیوستن بیتهای (r9 : r3 : r2 : r1 : r0) و ثبات مقصد از بهم پیوستن بیتهای (d8 : d7 : d6 : d5 : d4)مشخص می شوند همچنین بیتهای باقی مانده (i15 : i14 : i13 : i12 : i11 : i10) خود دستورالعمل را مشخص می کنند. به عنوان مثال حاصل جمع r17 و r2 که همان Add r17 , r2 است به صورت زیر کدگشایی یا Encode می شود: 0000110100010010 که در این صورت خروجی AVR-OBJDUMP از این قرار استHex : 0: 12 0d add r17, r2 توجه داشته باشید که یک کلمه ی 16 بیتی از هشت بیت کم ارزش آن در حافظه ذخیره می شود.
Immediate ALU Encoding
کدگشایی به روش فوری به شکل قالب زیر صورت می گیرد:
ثباتهای R16 تا R31 توسط چهار بیت نوع d قابل دسترسی هستند.بیتهای نوع I شامل Opcode هستند و هشت بیت نوع k شامل داده های فوری می شوند که از این هشت بیت ، چهار بیت با ارزش بالا یا High nybble آن عبارت است از (k12 , k11 , k10 , k9) و همچنین چهار بیت با ارزش پایین یا Low nybble آن برابر است با (k3 , k2 , k1 , k0.) به عنوان مثال دستور العمل LDI r27, 0xac به صورت زیر کدگشایی خواهد شد:
avr-objdump: 0: bc ea ldi r27, 0xAC Opcode در این مثال برابر است با 1110 که معادل است با 0xe HEX
دستورالعملهای پرشی میکروهای AVR می توانند به اندازه63+k<>64- کلمه از محل دستورالعمل جاری با حفظ وابستگی به یکی از هشت بیت ثبات پرچم پرش نمایند به جدول زیر توجه فرمایید
دستورالعملهای انتقال داده:
خواص AVR
دارای بهترین MCU برای حافظه فلش در جهان ! (MCU: Master Control Unit) دارای سیستمی با بهترین هماهنگی دارای بالاترین کارایی و اجرا در CPU (یک دستورالعمل در هر سیکل کلاک) دارای کدهایی با کوچکترین سایز دارای حافظه خود برنامه ریز دارای واسطه JTAG که با IEEE 1149.1 سازگار است (IEEE: Institute of Electrical and Electronics Engineers.) دارای سخت افزار ضرب کننده روی خود دارای بهترین ابزارها برای پیشرفت و ترقی دارای حالات زیادی برای ترفیع دادن یا Upgrade
Jtag
Jtag استانداردری است که توسط شرکتهای تولیدکنندهpcb وic تهیه وتولیدگردیده وازسال1990 به عنوان استانداردieee باشماره ieee1194.1-1990 به ثبت رسیدحال این استانداردسخت افزارونرافزارموردنیازبرای فعال کردن قابلیت تست وارتباط بادنیای خارج ازic .میکروکنترلرهاراارایه کرده است وبه یادداشته باشیم درسال1993 باشمارهieee1194.1a-1993 ودرسال1995 باشمارهieee1194.1b-1995 تجدیدنظروترمیم نهایی شده است
نظرات شما عزیزان:
پيوندها ما را با نام افزایش بازدید رایگان سایت و وبلاگ لینک کنید و ادرس خود را نیز ثبت کنید نويسندگان |
|||
|