فرمت : pdf
تعداد صفحات : 119 صفحه
تهیه و تنظیم : مهدی جلمبادانی
تجزیه و تحلیل سیستم ها
فرمت : pdf
تعداد صفحات : 119 صفحه
تهیه و تنظیم : مهدی جلمبادانی
نمونه سوال سیگنال
پیام نور
نیمسال اول 94-95
موضوع فارسی: انتخاب کانال بهینه برای آنالیز تک کاناله سیگنال EEG تنومند
موضوع انگلیسی: Optimal Channel Selection for Robust EEG Single-trial Analysis
تعداد صفحه: 8
فرمت فایل: PDF
سال انتشار: 2014
زبان مقاله: انگلیسی
چکیده: EEG یک ابزار قدرتمند مورد استفاده گسترده برای واسط مغز و رایانه به دلیل قدرت تفکیک زمانی خوب و سهولت استفاده است. سیگنال های گرفته شده توسط ضبط EEG چند به داده های بزرگ کمک می کنند و اغلب به بار محاسباتی بالا بر روی کامپیوتر منجر شود. تعداد بهینه از برق که سیگنال ضبط مغز مربوط به هدف می توان استفاده کرد، به استثنای برق کار برکنار شده و غیر موثر. در این مطالعه، ما یک روش بهینه سازی در الگوی مکانی مشترک برای انتخاب کانال ارائه شده است. اجرای بهینه سازی به عنوان یک مشکل ترتیبی برنامه نویسی درجه دوم از همگرایی سریع انجام می شود. آزمایش گسترده انجام شده است نشان می دهد که روش ارائه شده باعث واریانس بزرگ بین دو وظایف عمل مغز مربوط به زیر vocalized سخنرانی.
طراحی و ساخت سیستم ضبط و پخش سیگنال با میکروکنترلر AVRو کارت حافظه ی MM
مقدمه:
در این پروژه سعی بر این است که علاوه بر آشنایی با میکروکنترلر AVRو محیط نرم افزاری (labview) سخت افزار،به گونه ای طراحی شود که با دریافت سیگنال آنالوگ ورودی (صوت) از میکروفن ، از طریق واحدADC میکرو این سیگنال به دیجیتال تبدیل شود و با توجه به برنامهای که در داخل میکرو تعبیه شده است،این اطلاعات به داخل MMC ریخته شده ومیکرو با دریافت فرمان از کامپیوتر به صورت ارتباط سریال دستور پخش را دریافت میکند و از طریق واحد تایمر/ کانترکه در مد PWM کار میکند,اطلاعات ذخیره شده در MMC را با آشکار سازی موج PWM توسط یک انتگرال گیر،باز سازی و به آنالوگ تبدیل میکند و این سیگنال آنالوگ بوسیله یک سری مدارات مورد نیاز برای پخش از طریق یک هدفن پخش میگردد.
فصل اول :
نگاهی اجمالی به میکروکنترلرها
بخش اول : میکروکنترلرها
سیر تکاملی میکروکنترلرها :
اولین میکروکنترلرها در اواسط دهه 1970 ساخته شدند. این میکروکنترلرها در ابتدا پردازندههای ماشین حساب بودند که دارای حافظه برنامه کوچکی از نوع ROM ، حافظ داده از نوعRAM وتعدادی درگاه ورودی وخروجی بودند.
با توسعه فناوری سیلیکون ، میکرو کنترلرهای 8 بیتی قویتری ساخته شدند . در این میکروکنترلرها علاوه بر بهینه شدن دستورالعمل ها، تایمر /شمارنده روی تراشه، امکانات وقفه و کنترل بهینه شده خطوط ورودی وخروجی نیز به آن اضافه شده است. حافظه موجود بر روی تراشه هنوز هم محدود میباشد و دربسیاری موارد کافی نیست .یکی از پیشرفتهای قابل توجه در آن زمان، قابلیت استفاده از حافظه EPROM قابل پاک شدن با اشعه ماورا بنفش، روی تراشه بود این قابلیت، زمان طراحی و پیاده سازی محصول را بطور محسوسی کاهش داد و نیز برای اولین بار امکان استفاده از میکروکنترلرها را در کاربردهایی که حجم تولید پایینی دارند، فراهم ساخت.
خانواده 8051 در اوایل دهه 1980 توسط شرکت اینتل معرفی گردید . از آن زمان تاکنون 8051 یکی از محبوبترین میکروکنترلرها بوده و بسیاری از شرکتها دیگر نیز به تولید آن اقدام کردهاند . در حال حاضر مدلهای مختلفی از 8051 وجود دارد که در بسیاری از آنها امکاناتی نظیر مبدل آنالوگ به دیجیتال حجم نسبتاً بزرگ از حافظه برنامه و حافظه داده،مدولاتور عرض پالس(PWM) در خروجیها که امکان پاک کردن و برنامه ریزی مجدد آن توسط سیگنالهای الکتریکی وجود دارد،تعبیه شده است.
میکروکنترلرها اکنون به سمت 16 بیتی شدن در حرکت هستند . میکروکنترلر های 16 بیتی، پردازندههایی با کارایی بالا (نظیر پردازش سیگنالهای دیجیتال ) میباشند که در کنترل فرایندهای بلادرنگ و در مواردی که حجم زیادی از عملیات محاسباتی مورد نیاز است، به کار برده میشوند.
بسیاری از میکروکنترلرهای 16 بیتی، امکاناتی نظیر حجم زیاد حافظه برنامه و حافظه داده، مبدل های آنالوگ به دیجیتال چند کانالی، تعداد زیادی درگاهI/O ، چندین درگاه سریال، عملکردهای بسیار سریع ریاضی و منطقی و مجموعه دستورالعملهای بسیار قدرتمند با قابلیت پردازش سیگنال را دارا میباشند .
معماری داخلی میکرو کنترلرها:
ساده ترین معماری میکروکنترلر، متشکل از یک ریز پردازنده، حافظه و درگاه ورودی/خروجی است. ریز پردازنده نیز متشکل از واحد پردازش مرکزی (CPU)و واحد کنترل(CU) است.
CPUدر واقع مغز یک ریز پردازنده است و محلی است که در آنجا تمام عملیات ریاضی و منطقی ،انجام میشود. واحد کنترل ، عملیات داخلی ریزپردازنده را کنترل میکند و سیگنالهای کنترلی را به سایر بخشهای ریز پردازنده ارسال میکند تا دستورالعملهای مورد نظر انجام شوند.
حافظه بخش بسیار مهمی از یک سیستم میکروکامپیوتری است.ما میتوانیم بر اساس بکارگیری حافظه ،آن را به دو گروه دستهبندی میکنیم: حافظه برنامه و حافظه داده . حافظه برنامه ، تمام کد برنامه را ذخیره میکند .این حافظه معمولا از نوع فقط خواندنی (ROM) می باشد. انواع دیگری از حافظهها نظیرEPROM وحافظههای فلش EEPROM برای کاربردهایی که حجم تولید پایینی دارند وهمچنین هنگام پیادهسازی برنامه به کار میروند . حافظه داده از نوع حافظه خواندن/نوشتن(RAM) میباشد. در کاربردهای پیچیده که به حجم بالایی از حافظه RAM نیاز داریم ، امکان اضافه کردن تراشه های حافظه بیرونی به اغلب میکروکنترلر ها وجود دارد.
در گاههای ورودی / خروجی (I/O) به سیگنالهای دیجیتال بیرونی امکان میدهند که با میکروکنترلر ارتباط پیدا کند .درگاههای (I/O) معمولاً به صورت گروههای 8 بیتی دسته بندی میشوند و به هر گروه نیز نام خاصی اطلاق می¬¬شود به عنوان مثال ، میکروکنترلر 8051 دارای 4 درگاه ورودی / خروجی 8 بیت میباشد که P3,P2,P1,P0 نامیده میشوند. در تعدادی از میکروکنترلرها ، جهت خطوط درگاه I/O قابل برنامه ریزی میباشد . لذا بیتهای مختلف یک درگاه را می توان به صورت ورودی یا خروجی برنامهریزی نمود. در برخی دیگر از میکروکنترلرها (از جمله میکروکنترلرهای 8051) درگاههای I/O به صورت دو طرفه میباشند . هر خط از درگاه I/O این گونه میکرو کنترلرها را می توان به صورت ورودی و یا خروجی مورد استفاده قرار داد . معمولاً ، این گونه خطوط خروجی ، به همراه مقاومتهای بالا کش بیرونی به کار برده میشوند.
خانواده AVR :
میکروکنترولر AVR به منظور اجرای دستورالعملهای قدرتمند در یک سیکل کلاک (ساعت) به اندازه کافی سریع است و میتواند برای شما آزادی عملی را که احتیاج دارید به منظور بهینه سازی توان مصرفی فراهم کند . میکروکنترلر AVR بر مبنای معماری(RISC کاهش مجموعهی دستورالعملهای کامپیوتر ) پایه گذاری شده و مجموعه ای از دستورالعملها را که با 32 ثبات کار میکنند ترکیب میکند . به کارگرفتن حافظه از نوع Flash که AVR ها به طور یکسان از آن بهره میبرند از جمله مزایای آنها است.یک میکرو AVR میتواند با استفاده از یک منبع تغذیه 2.7 تا 5.5 ولتی از طریق شش پین ساده در عرض چند ثانیه برنامه ریزی شود یا Program شود.
میکروهای AVR در هرجا که باشند با 1.8 ولت تا 5.5 ولت تغذیه میشوند البته انواع توان پایین نیز وجود دارند که بهLow Power معروفند. ویژگیهایی که سبب شد، AVRها جای 8051 را بگیرند،عبارتست از:
1. توان مصرفی پایین: توان مصرفی پایین آنها برای استفاده بهینه از باتری و همچنین کاربرد میکرو در وسایل سیار و سفری طراحی شده که میکروهای جدید AVR با توان مصرفی کم از شش روش اضافی در مقدار توان مصرفی ، برای انجام عملیات بهره میبرند. این میکروها تا مقدار 1.8 ولت قابل تغذیه هستند که این امر باعث طولانی تر شدن عمر باتری میشود. در میکروهای با توان پایین ، عملیات شبیه حالت Standby است یعنی میکرو میتواند تمام اعمال داخلی و جنبی را متوقف کند و کریستال خارجی را به همان وضعیت شش کلاک در هر چرخه رها کند !
2. حافظه ی فلش خود برنامه ریز با امکانات خاص
3. قابلیت دوباره برنامه ریزی کردن بدون احتیاج به اجزای خارجی
4. بایت کوچک که به صورت فلش سکتور بندی شده اند
5. داشتن مقدار متغیر در سایز بلوک بوت
6. خواندن به هنگام نوشتن
7. بسیار آسان برای استفاده
8. کاهش یافتن زمان برنامه ریزی
9. کنترل کردن برنامه ریزی به صورت سخت افزاری
10. استفاده از فیوزها و بیتهای قفل
11. ایزوله بودن نسبت به نویز که باعث کابرد آن در محیط صنعتی می شود.
راههای مختلف عمل برنامه ریزی :
موازی یاparallel یکی از سریعترین روشهای برنامه ریزی.
خود برنامه ریزی توسط هر اتصال فیزیکی.
برنامه ریزی توسط هر نوع واسطی از قبیل TWIو SPI و غیره، دارا بودن امنیت صد درصد در بروزرسانی و کد کردن.
: SPI واسطه سه سیمی محلی برای بروزرسانی سریع ، آسان و موثر در استفاده.
واسط JTAG : واسطه ای که تسلیم قانون IEEE 1149.1 است و میتواند به صورت NVM برنامهریزی کند یعنی هنگام قطع جریان برق دادهها از بین نروند .
AVR همچنین مجهز به امکانات دیگر مانند تایمر واچ داگ و مبدلهای ADC و PWM است.
یکی از مهمترین بخشهای AVR که کمتر در هر میکروکنترلرهای دیگر دیده میشود مقایسه کننده آنالوگ با گین 1 و 200 و ... می باشد. لازم به ذکر است که در 8051 باید از فلش(EEPROM) وADC و کریستال مولد ساعت به صورت بیرونی استفاده میکردیم اما در AVR این امکانات به صورت درونی وجود دارد .
انواع میکروهایAVR :
شرکتATMEL که شرکت اصلی تولید کننده میکروهایAVR میباشد, سه نوع میکروکنترلر AVR تولید میکند :
(1سری Tiny (2 سری AT90s (3 سریATmega
که هر سری از این میکروها ویژگیهای خاصی داشته و در مصارف خاصی کاربرد بیشتری دارند که در ذیل به توضیح مختصری پیرامون هر یک از این سریها پرداخته میشود :
سریTiny:
میکروهای این سری برای : 1- کاهش قیمت 2- صرفه جویی در وقت بهینه شدهاند ، میزان مصرف ، حجم حافظه و تعداد پایه ها در میکروهای این سری کم است.
از جمله میکروهای این سری میتوان موارد زیر را نام برد :
• AT tiny 10
• AT tiny 11
• AT tiny 12
• AT tiny 15 L
• AT tiny 26
• AT tiny 26 L
• AT tiny 28 L
سری 90s:
از نظر حجم حافظه و تعداد پین ورودی / خروجی و توان مصرفی متوسط میباشد و به آن AVR معمولی هم می-گویند.چند نمونه معروف از این میکروها در زیر نام برده شده است :
• AT 90s 1200
• AT 90s 2313
• AT 90s2323/LS2323/S2343/LS2343
• AT 90s 2333/LS2333/S4433/LS4433
• AT 90s 8515
• AT 90s 8535/LS8535
سری MEGA:
این میکروها نسبت به دو سری قبل دارای قابلیتهای بیشتری میباشد ؛ تعداد ورودی / خروجی(I/O) بیشتر و فضای حافظه گستردهتر و به طبع اینها مصرف بالاتر.چند نمونه از AVR های موجود در بازار این سری ، در زیر لیست شدهاند :
• AT MEGA 323 , AT MEGA 323 L
• AT MEGA 32 , AT MEGA 32 L
• AT MEGA 128 , AT MEGA 128 L
• AT MEGA 163 , AT MEGA 163 L
• AT MEGA 8 , AT MEGA 8 L
• AT MEGA 8515 , AT MEGA 8515 L
• AT MEGA 8535 , AT MEGA 8535 L
• AT MEGA 161 , AT MEGA 161L
• AT MEGA 162 V , AT MEGA 162
• AT MEGA 16 , AT MEGA 16 L
• AT MEGA 100 , AT MEGA 103 L
• AT MEGA 169 V , AT MEGA 169 , AT MEGA 169 L
• AT MEGA 64 L , AT MEGA 64
نگاهی گذرا به معماری درونی میکروکنترلرهایAVR :
میکروکنترلرهای 8 بیتی AVR دارای 32 ثبات 8 بیتی همه منظوره هستند .(یعنی R0 تا R31 ) سه ثبات آدرس شانزده بیتی با نام مستعارX,Y,Z که هر کدام از این سه ثبات دو ثبات از همان 32 ثبات 8 بیتی هستند یعنی:
(R28:R29) =رجیسترY (R26:R27)=رجیستر X
(R30:R31)=رجیسترZ
یک ثبات 16 بیتی به منظور اشاره گر پشته که در آدرسهای ورودی /خروجی :
SPH(0x3e)و SPL (0x3d) قرارگرفته اند .همچنین این آدرسها در حافظه داده با آدرسهای 0x5e و0x5d هستند .
یک ثبات 8 بیتی به منظور سنجش وضعیت یا همان ثبات پرچم با نامSREG
I : فعال ساز و غیرفعال ساز عمومی وقفه یا Global Interrupt Enable/Disable Flag
T : بیت انتقالی مورد استفاده دستورالعملهای BLD وBST
H: Half Carry Flag
S : بیت علامت یاSigned tests Instruction Set
V : سرریزنما برای مکمل دو یا Two's Complement Overflow Indicator
N : بیت منفی یا Negative Flag
Z : بیت صفر یا Zero Flag
C :Carry Flag
حافظه داده و ثباتهای AVR :
32 آدرس اول حافظه یعنی 0x0000)تا (0x001f متعلق به ثباتهای R0 تا R31 هستند البته در برخیMCU ها برای ثبات ها از فضای حافظه ی داده استفاده میشود.
آدرس های 0x0020تا 0x005f از حافظه داده در دسترس آدرسهای ورودی / خروجی0x00 تا 0x3f است.از آدرس0x006 حافظه ی داده به بعد فقط شامل حافظه استاتیک است یعنی SRAM است.
دو ثبات برای واحد ریاضی منطقی ALU :
تعداد زیادی از دستورالعملهایALU شامل دو ثبات هستند یکی مقصد یا (Destination(Rd و یکی منبع یا (Source(Rr که نحوه کدگشایی دستورالعمل را در زیر میبینید :
بیتهایی که در آن حرف i قرار گرفته دستورالعمل و حرفd بیت های مقصد هستند وحرف r بیتهای منبع. ثبات منبع از بهم پیوستن بیتهای r0 :r1 :r2 :r3 :r9 ثبات مقصد از بهم پیوستن بیتهای d4 :d5 :d6 :d7 : d8 مشخص می¬-شوند همچنین بیتهای باقی مانده i10 :i11 :i12 :i13 :i14 :i15 خود دستورالعمل را مشخص میکنند .
به عنوان مثال حاصل جمع r17 وr2 که همانAdd r17,r2 است به صورت زیر کدگشایی یاEncode میشود
که در این صورت خروجی از این قرار است:
Hex : 0 :12 0d add r17 , r2
توجه داشته باشید که یک کلمه ی 16 بیتی از هشت بیت کم ارزش آن در حافظه ذخیره می شود.
فصل دوم:
مختصری درباره MMC و واسط SPI در میکروکنترلرهای AVR
پروتکل های ارتباطی درMMC
پروتکلهای ارتباطی آن دردومد MMC وSPI میباشند. بیشترین فرکانس پالس ساعت هر هر دو مد 20MHZ است. اگرچه نحوه کار واسطها در دو مد متفاوت است، ولی داده های نوشته شده در هرمد، در مد دیگر قابل خواندن است.تفاوت عملکرد پایه ها در مد در جدول زیر آمده است.
Multimedia card(MMC)
امروزه اکثر دستگاه های دیجیتال که به بازار ارائه می شوند معمولاً شامل هستند و دلایل استفاده از این است که آنها از طریق سریال داده ها را انتقال می دهند و سرعت بالایی در حدود Mbit/s 20 یا به عبارت دیگر چیزی حدود Mbyte/s 2.5 دارند.
همچنین یکی دیگر از دلایل استفاده از mmc این است که به راحتی می توان اطلاعات را بر روی آنها ذخیره و بازیابی کرد.
مقدمه:
شکل زیر ساختار درونی را نشان می دهد که از بلوک های جداگانه تشکیل شده است . همه این بلوک ها به وسیله یک اسیلاتور داخلی کلاک می خورند.
چون دارای اسیلاتور داخلی با فرکانس مشخص است بنابراین برای انتقال داده توسط خطوط (دستور) و (داده) باید فرکانس اسیلاتور داخلی با فرکانس خط (کلاک) که توسط (کنترلر) بوجود می آید سکنرون (همزمان) شود. این کارت توسط واحد انجام می شود.
ها به وسیله 3 پین (خط داده) کنترل می شوند که هریک از این خطوط داده کار خاصی را در طول انتقال داده انجام می دهند.
همچنین ها دارای 4 رجیستر داخلی هستند که از این رجیستر ها برای شناسایی و یک سری از خصوصیات استفاده می شود. این رجیستر ها عبارتند از:
• OCR : این رجیستر رنج ولتاژهایی را که توسط کارت پشتیبانی می شود نشان می دهد.
• رجیستر شناسایی کارت
• رجیستر تعیین داده ( دانستن محتویات این رجیستر مهم است)
• رجیستر تخصیص آدرس برای انتقال داده بین و دانستن محتویات این رجیستر ها حائز اهمیت است.
برای انتقال داده از دو پروتکل پشتیبانی می کند یا به عبارت دیگر به دو روش می توان داده را بین و تبادل کرد که عبارتند از :
در هریک از دو پروتکل بالا طریقه اتصال بین و تفاوت دارد(به شکل زیر توجه کنید)
(mmc mode) Multimedia mode :
در این روش برای انتقال داده از کمترین خط داده استفاده شده است که عبارتند از:
CLK : با هر دوره تناوب از سیگنال ورودی به این پین یک بیت داده بر روی خط یا جابجا می شود . فرکانس این خط می تواند بین صفر و ماکزیمم فرکانس ممکنه باشد() و این فرکانس می تواند در حین انتقال داده تغییر کند(این یک مزیت است).
CMD : این خط یک خط داده دو طرفه است(ورودی و خروجی) که برای فعال کردن و دستور انتقال داده و پاسخ مورد استفاده قرار می گیرد . این خط داده به دو روش عمل می کند :
1- برای فعال سازی
2- برای انتقال سریع داده
دستور همیشه توسط اما پاسخ توسط فرستاده می شود.
DAT : این خط یک خط داده دو طرفه است وبرای انتقال داده ای که باید بر روی حافظه ذخیره یا از حافظه خوانده شود مورد استفاده قرار می گیرد.
RSV : این خط در این روش بدون استفاده است اما در به عنوان خط انتخاب تراشه به کار می رود.
SPI mode :
پروتکل توسط شرکت ارائه شد و توسط اکثر میکروکنترلرهای پشتیبانی می شود . این مزیت باعث شده که بیشتر پروژه های امروزی از این کارت استفاده کنند.
در پروژه انجام شده مذکور نیز از این پروتکل استفاده شده است.
خطوط داده در این پروتکل عبارتند از:
CLK :سیگنال کلاک برای سنکرون سازی انتقال داده است.
Data In : این خط داده ورودی است. بر روی میکرو کنترلر خط داده باید به این پین وصل شود. زیرا به عنوان و به عنوان عمل می کند.
Data Out : این خط داده ورودی است . بر روی میکرو خط داده(پین) باید به این پین وصل شود.
CS :() از این خط داده برای انتخاب و فعال سازی استفاده می شود. در پروتکل به وسیله آدرس مخصوصی که توسط (کنترلر) به آن اختصاص داده, شناسایی می شود. اما در پروتکل شناسایی کارت توسط خط انجام می گیرد که برای انتخاب هر کارت می توانیم به وسیله خط (وقتی که 0 می شود کارت فعال می شود) را انتخاب کنیم و باید توجه کنیم که در طول انتقال داده این خط باید فعال باشد . همچنین در پروتکل بر خلاف پروتکل که خطوط دو طرفه بود, خطوط یک طرفه است یعنی یا ورودی است یا خروجی و این باعث کاهش سرعت و کاهش دستورات انتقال داده در پروتکل است.
رجیسترهای
ها دارای 4 رجیستر هستند که در جدول زیر مشاهده می کنید:
چون این رجیسترها رجیستری هستند که اطلاعات کاملی در مورد و چگونگی انتقال داده بین و را به ما می دهند بنابراین دانستن اطلاعات داخلی این رجیسترها و برای انتقال داده مهم می باشند.
درجدول بالا رجیستر برای مشخص کردن رنج ولتاژهایی است که توسط این پشتیبانی می شود. رجیسترهای و برای شناسایی و آدرس دهی به استفاده می شود
امروزه کارت های حافظه به طور گسترده دردستگاه های الکترونیک به عنوان حافظه های با ظرفیت و قابلیت اطمینان بالا به کار برده می شود.
حافظه ///////نوعی کارت حافظه از نوع// بوده و معمولا دارای ظرفیت های بالا تا 1 و از کاربردهای آن می توان در موبایل , , دوربین های دیجیتال و // نام برد.
دارای یک میکروکنترلر داخلی جهت عملیاتهای پاک کردن خواندن و نوشتن کنترل خطا در حافظه می باشد.
کارتهای حافظه دارای 7 پایه می باشند.
پایه های کارت عبارتند از:
1-پایه
با فعال کردن //// این پایه کارت انتخاب خواهد شد.
2. پایه///
ورودی سریال داده به کارت حافظه
3. پایه////
اتصال به زمین
4.پایه
برای تغذیه کارت حافظه باید ولتاژ مابین 2.7تا3.6ولت به این پایه اعمال شود.
5.پایه
پالس ساعت ورودی به کارت حافظه
6.پایه
اتصال به زمین
7.پایه
خروجی سریال داده از کارت حافظه
اتصال کارت حافظه به میکرو مطابق شکل انجام می شود. کارتهای حافظه برای فعالیت به یک ولتاژ تغذیه بین 2.7 تا 3.6 ولت با حداکثر جریان دهی 100 میلی آمپر نیاز دارند.
همان طور که در شکل ملاحظه می فرمایید بعلت آنکه ولتاژهای تغذیه کارت حافظه 3.3 ولت و میکرو 5 ولت است برای تطابق بین این دو ولتاژ از یک شبکه تقسیم کننده مقاومتی استفاده می شود. این شبکه مقاومتی در حال انتقال اطلاعات از میکرو به کارت ولتاژ 5 ولت را به حدود 3.3 ولت کاهش داده و در جهت عکس همان 3.3 ولت کارت را به میکرو تحویل می دهد.
مد عملیاتی SPI
مد عملیاتی در کارتهای پشتیبانی می شود. کارت حافظه به سادگی از طریق واسط با میکروهایی که دارای این واسط می باشند ارتباط برقرار می کند. مد اطلاعاتی در باید در حالت صفر انتخاب شود .برای اطلاعات بیشتر در مورد واسط به فصل ؟ مراجعه کنید.
پیکر بندی پایه ها در مد MMC وSPI:
مد ارتباطی SPI در مقایسه با MMC :
1. در کارت MMC مجموعه دستورات SPI زیر مجموعه دستورات در مد MMC میباشند.
2. در مد SPI انتخاب چیپ (کارت حافظه ) به صورت سخت افزاری( توسط پایه CS ) بوده و در حالی که درMMC به صورت نرم افزاری و از طریق آدرسی که در ابتدای ارتباط تنظیم میشود میباشد.
3. با توجه به مورد 2 برای ارتباط با یک کارت علاوه بر GNDدر مد MMC به3خط (Data,CMD,CLK) و در مد SPI به 4خط (DI,DO,SCK,CS ) نیاز داریم.
4. با توجه به مورد 2 به ازای هر کارت در مد SPI یک خط انتخاب (CS) به مدار اظافه میشود. این در حالی است که درMMC تعداد خطوط ارتباطی همان 3 خط خواهد بود.
5. موردی که تحت عنوان یک مزیت در مدSPI نسبت به مد MMC میتواند مورد توجه قرار بگیرد این است که دراین مد بر خلاف مد MMC با افزایش تعداد کارتها کارایی (Performance) مدار تغییر چندانی ندارد.
6. ارسال ها در مد MMC با یک بیت آغازگر(Start Bit ) شروع و با یک بیت پایانی (Stop Bit) خاتمه می یابد ولی مد SPI بایت گرا (بایت مبنا (Byte Oriented میباشد یعنی همه دستورات، پاسخها و ارسال و دریافت داده ها به صورت 8 بیتی انجام میپذیرد.
7. در مد MMC و SPI خواندن و نوشتن به روشها زیر صورت میپذیرد:
:Single Blockدر این روش در هر مرحله فقط یک بلوک انتقال داده میشود .
فرمت این مقاله به صورت Word و با قابلیت ویرایش میباشد
تعداد صفحات این مقاله 79 صفحه
پس از پرداخت ، میتوانید مقاله را به صورت انلاین دانلود کنید
سیگنال ها و پروتکل ها
لینک پرداخت و دانلود *پایین مطلب*
فرمت فایل:Word (قابل ویرایش و آماده پرینت)
تعداد صفحه:150
فهرست مطالب :
فصل اول ....................................................................................... 1
سیگنال ها و پروتکل ها
فصل دوم ...................................................................................... 39
مدل OSI
فصل سوم..................................................................................... 54
پروتکل TCP/IP
فصل چهارم..................................................................................... 81
لایه اینترنت
فصل پنجم..................................................................................... 121
ارسال اطلاعات با استفاده از TCP/IP
فصل ششم.................................................................................. 129
مسیریابی
چکیده :
سیگنال ها و پروتکل ها
کامپیوتر های موجود در یک شبکه به طرق مختلفی می توانند با همدیگر ارتباط برقرار کنند اما بخش بزرگی از این فرآیند ربطی به ماهیت داده هایی که از طریق رسانه شبکه عبور می کند ندارد . قبل از اینکه داده هایی که کامپیوتر فرستنده تولید کرده است به کابل یا نوع دیگری از رسانه برسد به سیگنال هایی که متناسب با آن رسانه می باشد تجزیه می شود.این سیگنال ها ممکن است مثلا برای سیم های مسی ولتاژهای الکتریکی برای فیبر نوری پالس های نور و در شبکه های بی سیم امواج رادیویی و مادون قرمز باشند.این سیگنال ها کدی را تشکیل می دهند که رابط شبکه هر کامپیوتر گیرنده ای ٬آنرا به داده های باینری قابل درک با نرم افزار در حال اجرای روی آن کامپیوتر تبدیل می کند .
بعضی از شبکه ها متشکل از کامپیوتر های مشابهی هستند که دارای سیستم عامل و برنامه های یکسانی می باشند در صورتی که شبکه هایی هم وجود دارند که دارای سکوهای (platform) متفاوتی هستند و نرم افزارهایی را اجرا می کنند که کاملا با یکدیگر تفاوت دارند . ممکن است اینطور به نظر آید که برقراری ارتباط بین کامپیوترهای یکسان ساده تر از بین کامپیوتر های متفاوت است و البته در بعضی از موارد این نتیجه گیری صحیح می باشد. صرفنظر از نرم افزارهایی که در یک شبکه روی کامپیوترها اجرا می شود و صرفنظر از نوع آن کامپیوترها ، باید زبان مشترکی بین آنها وجود داشته باشد تا برقراری ارتباط میسر شود . این زبان مشترک پروتکل نامیده می شود و حتی در ساده ترین نوع تبادل اطلاعات ، کامپیوترها از تعداد زیادی از آنها استفاده می کنند.در واقع همانطور که برای اینکه دو نفر بتوانند با یکدیگر صحبت کنند باید از زبان مشترکی استفاده کنند کامپیوترها هم برای تبادل اطلاعات نیاز به یک یا چند پروتکل مشترک دارند .
یک پروتکل شبکه می تواند نسبتا ساده یا کاملا پیچیده باشد .در بعضی موارد پروتکل فقط یک کد است (مثلا الگویی از ولتاژهای الکتریکی ) که مقدار دودویی یک بیت را نشان می دهد و همانطور که می دانید این مقدار می تواند 0 یا 1 باشد. پروتکل های پیچیده تر شبکه می توانند سرویس هایی را ارائه دهند که بعضی از آنها در اینجا نام برده شده است:
اعلام دریافت بسته (packet acknowledgment) :که ارسال یک پیغام از طرف گیرنده به فرستنده مبنی بر دریافت یک یا چند بسته می باشد. یک بسته جزء بنیادی اطلاعات فرستاده شده روی یک شبکه محلی (LAN) می باشد.
بخش بندی (segmentation) : که در واقع به تقسیم کردن یک جریان داده طولانی به بخش های کوچکتر می باشد به صورتی که بتوان آنرا در داخل بسته ها ، روی یک شبکه انتقال داد .
کنترل جریان (flow control) : شامل پیغام هایی می باشد که از طرف گیرنده به فرستنده مبنی بر بالا یا پایین بردن سرعت انتقال داده فرستاده می شود .
تشخیص خطا (error detection) : شامل کدهای بخصوصی می باشد که در یک بسته وجود دارد و سیستم گیرنده از آنها برای اطمینان از اینکه داده های آن بسته سالم به مقصد رسیده است یا نه استفاده می کند .
تصحیح خطا (error correction) : پیغام هایی که توسط سیستم گیرنده تولید می شود و به اطلاع فرستنده می رسانند که بسته های معینی آسیب دیدند و باید دوباره فرستاده شوند .
فشرده سازی (data compression) : مکانیزمی است که در آن با حذف اطلاعات اضافه، مقدار داده ای را که باید از طریق شبکه فرستاده شود در حد امکان کم می کنند .
کدگذاری داده (data encryption) : مکانیزمی است برای محافظت از داده هایی که قرار است از طریق شبکه منتقل شود و در آن توسط کلیدی که سیستم گیرنده از آن مطلع است داده ها کد گذاری می شوند.
اغلب پروتکل ها بر مبنای استاندارد های عمومی می باشند که توسط یک کمیته مستقل تولید شده اند نه یک تولید کننده بخصوص. بدین صورت این تضمین وجود دارد که سیستم های مختلف می توانند از آنها به راحتی استفاده کنند .
معهذا هنوز تعدادی پروتکل وجود دارد که اختصاصی هستند و هرگز در بین عموم معرفی نشده اند مسئله مهمی که همیشه باید در نظر داشت این است که همه ی کامپیوتر های موجود در یک شبکه در طول فرآیند برقراری ارتباط و تبادل اطلاعات از پروتکل های گوناگون استفاده می کنند .کارهایی که پروتکل های مختلف در یک شبکه انجام می دهند در بخش هایی به نام لایه تقسیم می شوند که مدل OSI را تشکیل می دهند .
رابطه ی بین پروتکل ها
اغلب به مجموع پروتکل هایی که در لایه های مختلف مدل OSI وجود دارد پشته پروتکل اطلاق می شود .این مجموعه پروتکل ها به کمک همدیگر سرویس هایی را که یک برنامه بخصوص ممکن است نیاز داشته باشد ، ارائه می کنند و هیچ یک از آنها قابلیت انجام کار دیگری را ندارند به عنوان مثال اگر پروتکلی در یک لایه سرویس خاصی را ارائه می کند ، پروتکل های موجود در لایه های دیگر دقیقا آن سرویس خاص را ارائه تامین نمی کنند . نسبت به جهت جریان داده ها ، پروتکل های لایه های کنار همدیگر سرویس هایی را برای همدیگر تامین می کنند در یک شبکه ، اطلاعات از یک برنامه که در لایه بالایی پشته پروتکل قرار دارد سرچشمه می گیرد و متعاقبا لایه ها را به سمت پایین طی می کند .
پایین ترین بخش پشته پروتکل را رسانه شبکه تشکیل می دهد که وظیفه انتقال داده ها به کامپیوتر های دیگر موجود در شبکه را دارد .
وقتی داده ها از طریق شبکه به مقصد می رسند ، کامپیوتر گیرنده دقیقا عکس عملیاتی را که کامپیوتر فرستنده انجام داده است باید انجام دهد .
اطلاعات از لایه پایینی پشته به سمت برنامه گیرنده که در لایه بالایی قرار دارد عبور می کند و در هر لایه عملیاتی مشابه با آنچه در فرستنده در همان لایه انجام شده است ،اعمال می شود به عنوان مثال اگر پروتکلی در لایه سوم فرستنده مسئول کد گذاری اطلاعات می باشد ، همان پروتکل در لایه سوم گیرنده مسئول کد گشایی اطلاعات می باشد .به این صورت پروتکل های موجود در لایه های مختلف سیستم فرستنده با پروتکل های معادل خود که در همان لایه اولی در بخش گیرنده وجود دارند ارتباط بر قرار می کنند .شکل 2 این مطلب را نمایش می دهد.
تاریخچه پیدایش شبکه
در سال 1957 نخستین ماهواره، یعنی اسپوتنیک توسط اتحاد جماهیر شوروی سابق به فضا پرتاب شد. در همین دوران رقابت سختی از نظر تسلیحاتی بین دو ابرقدرت آن زمان جریان داشت و دنیا در دوران رقابت سختی از نظر تسلیحاتی بین دو ابر قدرت آن زمان جریان داشت و دنیا در دوران جنگ سرد به سر می برد. وزارت دفاع امریکا در واکنش به این اقدام رقیب نظامی خود، آژانس پروژه های تحقیقاتی پیشرفته یا آرپا (ARPA) را تاسیس کرد. یکی از پروژه های مهم این آژانس تامین ارتباطات در زمان جنگ جهانی احتمالی تعریف شده بود. در همین سال ها در مراکز تحقیقاتی غیر نظامی که بر امتداد دانشگاه ها بودند، تلاش برای اتصال کامپیوترها به یکدیگر در جریان بود. در آن زمان کامپیوتر های Mainframe از طریق ترمینال ها به کاربران سرویس می دادند. در اثر اهمیت یافتن این موضوع آژانس آرپا (ARPA) منابع مالی پروژه اتصال دو کامپیوتر از راه دور به یکدیگر را در دانشگاه MIT بر عهده گرفت. در اواخر سال 1960 اولین شبکه کامپیوتری بین چهار کامپیوتر که دو تای آنها در MIT، یکی در دانشگاه کالیفرنیا و دیگری در مرکز تحقیقاتی استنفورد قرار داشتند، راه اندازی شد. این شبکه آرپانت نامگذاری شد. در سال 1965 نخستین ارتباط راه دور بین دانشگاه MIT و یک مرکز دیگر نیز برقرار گردید.
در سال 1970 شرکت معتبر زیراکس یک مرکز تحقیقاتی در پالوآلتو تاسیس کرد. این مرکز در طول سال ها مهمترین فناوری های مرتبط با کامپیوتر را معرفی کرده است و از این نظریه به یک مرکز تحقیقاتی افسانه ای بدل گشته است. این مرکز تحقیقاتی که پارک (PARC) نیز نامیده می شود، به تحقیقات در زمینه شبکه های کامپیوتری پیوست. تا این سال ها شبکه آرپانت به امور نظامی اختصاص داشت، اما در سال 1927 به عموم معرفی شد. در این سال شبکه آرپانت مراکز کامپیوتری بسیاری از دانشگاه ها و مراکز تحقیقاتی را به هم متصل کرده بود. در سال 1927 نخستین نامه الکترونیکی از طریق شبکه منتقل گردید.
در این سال ها حرکتی غیر انتفاعی به نام MERIT که چندین دانشگاه بنیان گذار آن بوده اند، مشغول توسعه روش های اتصال کاربران ترمینال ها به کامپیوتر مرکزی یا میزبان بود. مهندسان پروژه MERIT در تلاش برای ایجاد ارتباط بین کامپیوتر ها، مجبور شدند تجهیزات لازم را خود طراحی کنند. آنان با طراحی تجهیزات واسطه برای مینی کامپیوتر DECPDP-11 نخستین بستر اصلی یا Backbone شبکه کامپیوتری را ساختند. تا سال ها نمونه های اصلاح شده این کامپیوتر با نام PCP یا Primary Communications Processor نقش میزبان را در شبکه ها ایفا می کرد. نخستین شبکه از این نوع که چندین ایالت را به هم متصل می کرد Michnet نام داشت.
روش اتصال کاربران به کامپیوتر میزبان در آن زمان به این صورت بود که یک نرم افزار خاص بر روی کامپیوتر مرکزی اجرا می شد. و ارتباط کاربران را برقرار می کرد. اما در سال 1976 نرم افزار جدیدی به نام Hermes عرضه شد که برای نخستین بار به کاربران اجازه می داد تا از طریق یک ترمینال به صورت تعاملی مستقیما به سیستم MERIT متصل شوند.این، نخستین باری بود که کاربران می توانستند در هنگام برقراری ارتباط از خود بپرسند: کدام میزبان؟
از وقایع مهم تاریخچه شبکه های کامپیوتری، ابداع روش سوئیچینگ بسته ای یا Packet Switching است. قبل از معرفی شدن این روش از سوئیچینگ مداری یا Circuit Switching برای تعیین مسیر ارتباطی استفاده می شد. اما در سال 1974 با پیدایش پروتکل ارتباطی TCP/IP از مفهوم Packet Switching استفاده گسترده تری شد. این پروتکل در سال 1982 جایگزین پروتکل NCP شد و به پروتکل استاندارد برای آرپانت تبدیل گشت. در همین زمان یک شاخه فرعی بنام MILnet در آرپانت همچنان از پروتکل قبلی پشتیبانی می کرد و به ارائه خدمات نظامی می پرداخت. با این تغییر و تحول، شبکه های زیادی به بخش تحقیقاتی این شبکه متصل شدند و آرپانت به اینترنت تبدیل گشت. در این سال ها حجم ارتباطات شبکه ای افزایش یافت و مفهوم ترافیک شبکه مطرح شد.
مفهوم شبکه
هسته اصلی سیستم های توزیع اطلاعات را شبکه های کامپیوتری تشکیل می دهند. مفهوم شبکه های کامپیوتری بر پایه اتصال کامپیوتر ها و دیگر تجهیزات سخت افزاری به یکدیگر برای ایجاد امکان ارتباط و تبادل اطلاعات استوار شده است. گروهی از کامپیوتر ها و دیگر تجهیزات متصل به هم را یک شبکه می نامند.
ساده ترین نوع شبکه با متصل کردن چند کامپیوتر به وسیله کابل های خاصی به وجود می آید . ممکن است یک چاپگر به یکی از کامپیوترها متصل باشد و با استفاده از این سیستم شبکه ٬ این چاپگر به اشتراک بقیه کامپیوترها نیز گذاشته شود . همچنین ممکن است چاپگر مستقیما به شبکه متصل شده باشد . سایر تجهیزات جانبی کامپیوتر نیز می توانند برای استفاده همه کاربران در یک شبکه به اشتراک گذاشته شوند . هر دستگاه با یک کابل به شبکه اتصال می یابد و دارای یک آدرس یگانه و منحمصر به فرد است ٬ که در شبکه با آن آدرس شناخته می شود . به همین دلیل اطلاعات دقیقا به همان کامپیوتری که مد نظر است فرستاده می شود و خطایی رخ نمی دهد . دسترسی به منابع به اشتراک گذاشته دارای ارزش بسیار زیادی است . یک منبع می تواند یک فایل ٬ متن ٬ چاپگر ٬ دیسک سخت ٬ مودم یا دسترسی به اینترنت باشد و حتی توانایی پردازش کامپیوترها نیز می تواند به اشتراک گذاشته شود . به اشتراک گذاشتن منابع بیان شده نوعی قابلیت سیستم عامل تحت شبکه است که به کاربر امکان دسترسی به اطلاعات موجود در سایر کامپیوترهای شبکه را می دهد . نکته مهم در این سیستم این است که سیستم عامل باید دارای امنیت باشد و باید بتواند در دسترسی به اطلاعات (به خصوص داده ها ) محدودیت ایجاد کند.
و...