تبلیغات
" /> باران الکترونیک - مطالب FPGA
سه شنبه 28 مهر 1394  11:21 ب.ظ
نوع مطلب: (FPGA ،Xilinx ،Altera ،VHDL ،) توسط: امیرحسین رستمی

هدف

در این مقاله سعی شده است نحوه یاد گرفتن FPGA قدم به قدم توضیح داده شود. نظراتی که در این مقاله آمده است شخصی بوده و ممکن است شخص دیگری نظری پی رادیان مخالف داشته باشد (که نشان دهده سواد کم­تر او می­ باشد پس نگران نباشد و ادامه به خواندن این مطلب دهید.)

مغز


نظرات()       

این قسمت شامل:
-ChipScope چیست؟
-اضافه کردن ChipScope به طرح
-اضافه کردن سیگنال به ChipScope
-باز کردن ChipScope و ریختن برنامه روی FPGA
-نحوه کار با ChipScope
-اشکل زدایی (دیباگ) طرح با استفاده از ChipScope

[http://www.aparat.com/v/HmRzX]


نظرات()   
   
جمعه 29 خرداد 1394  06:27 ب.ظ
نوع مطلب: (FPGA ،Xilinx ،آموزش ISE ،) توسط: امیرحسین رستمی

این قسمت شامل بخش های زیر می باشد:

-تنظیمات پروژه : فعال سازی multithreading
-اضافه کردن IP Core: افزایش فرکانس FPGA با استفاده از PLL
-استفاده IMPACT برای ریختن برنامه روی FPGA
-چشمک زدن LED

[http://www.aparat.com/v/lgN6e]


نظرات()   
   

این قسمت شامل مطالب زیر می باشد:
-تنظیمات پروژه ISE
  • با پین های بدون استفاده چگونه رفتار شود
  • فشرده سازی bit.
  • انواع شبیه سازی: behavioral و POST-ROUTE
-نوشتن برنامه test bench
  • تولید کلاک در برنامه تست بنچ
  • تولید سیگنال های محرک
-شبیه سازی با استفاده از ISIM
  • کار با نرم افزار ISIM
  • اضافه کردن سیگنال

[http://www.aparat.com/v/qLSZ0]


نظرات()   
   

این جلسه شامل مطالب زیر می باشد:
-ساختن پروژه جدید
-اضافه کردن فایل شماتیک به پروژه
-ساختن و نوشتن یک برنامه VHDL
-ساختن بلوک از برنامه VHDL
- استفاده از نرم افزار PlanAhead برای Pin Assignment
-سنتز پروژه و ساختن فایل قابل برنامه زیری داخل FPGA

[http://www.aparat.com/v/2fQgl]


نظرات()   
   

از سری فیلم های آموزشی نرم افزار ISE
قسمت اول :آشنایی با پکیج نرم افزاری Xilinx
این قسمت شامل معرفی و آشنایی با بخش های زیر می باشد
ISE
XPS
SDK
EDK
Chipscope

[http://www.aparat.com/v/QYowA]


نظرات()   
   

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

دوربین دیجیتال

معمولا دو باس ارتباطی بین دوربین و پردازنده وجود دارد:

باس کنترلی: در بیشتر مواقع به فرمت i2c می­باشد و برای مقدار دهی رجیسترهای داخلی حسگر تصویر مورد استفاده قرار می­گیرد. این رجیسترها وظیفه تعیین فرمت پیکسل خروجی، اعمال فیلترهای مختلف به تصویر و .. را بر عهده دارند.

باس داده: داده­هایی که از دوربین به پردازنده منتقل می­شود می­تواند به صورت سریال یا موازی باشد:

الف) ارتباط موازی یا Camera Parallel Interface (CPI)

ارتباط موازی شامل 8 خط داده برای انتفال تصویر و چند خط sync برای کنترل دریافت این داده­ها می­باشد:

Vsync: شروع و پایان یک فریم تصویر را مشخص می­کند.

Hsync: شروع و پایان یک خط تصویر را مشخص می­کند.

Pixel clock: آمدن هر پیکسل را مشخص می­کند.

ب) ارتباط سریال Camera Serial Interface (CSI)

بیش­تر دوربین­هایی که در تلفن­های هوشمند و تبلت­های امروزی استفاده می­شوند از حسگرهای MIPI (Mobile Industry Processor Interface) استفاده می­کنند. رابط غالب برای این نوع حسگرهای تصویر CSI-2 (Camera Serial Interface 2) می­باشد.

سیگنال داده: تا چهار خط دیفرانسیلی

سیگنال کلاک: یک خط دیفرانسیلی (بیشینه سرعت Gbit/s 1)


نظرات()       
پنجشنبه 12 دی 1392  06:03 ب.ظ
نوع مطلب: (FPGA ،Xilinx ،Altera ،) توسط: امیرحسین رستمی


ایده FPGA

ایده اصلی FPGA از اینجا سر چشمه می­گیرد که هر تابع منطقی را می­تواند با یک حافظه جایگزین کرد. برای مثال یگ گیت منطقی XOR در شکل زیر نشان داده شده است. همان طور که مشخص است می­تواند یک گیت XOR  با دو ورودی را با یک حافظه 1×4 جایگزین کرد که ورودی گیت در واقع همان خط آدرس  و خروجی آن همان خط داده می­باشند.

همین ساختار با پیچیدگی بیشتر در FPGA مورد استفاده قرار می­گیرد. به حافظه­ای که در ساختار داخلی FPGA برای پیاده سازی توابع منطقی مورد استفاده قرار می­گیرد، Look Up Table یا به طور مختصر LUT گفته می­شود.

مزیت اصلی FPGA این است که دارای معماری خیلی انعطاف­پذیری می­باشد. اما این انعطاف پذیری با پرداخت هزینه­ی بیش­تر در سخت افزار همراه می­باشد. یعنی این که، انعطاف­پذیری بیش­تر به معنی گیت­های بیش­تر، مساحت سطح سیلیکون بیش­تر، منابع بیش­تر برای مسیریابی و در نتیجه مصرف توان بیش­تر می­باشد.

Altera یا Xilinx

در زمینه­ی تولید FPGA دو شرکت بزرگ آلترا[1] و زایلینکس[2] 89% FPGAهای بازار را تولید می­کنند. زالینکس برای سال­های متمادی است که بزرگ­ترین تولید کننده­ی  FPGAدر جهان می­باشد و دارای طیف گسترده­ای از FPGAها از لحاظ قیمت و عملکرد می­باشد. در شکل زیر سهم هر یک از تولید کننده­های FPGA در بازار نشان داده شده است.

شکل 1 بازار FPGA



[1] Altera

[2]  Xilinx


نظرات()       

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

دوربین دیجیتال

معمولا دو باس ارتباطی بین دوربین و پردازنده وجود دارد:

باس کنترلی: در بیشتر مواقع به فرمت i2c می­باشد و برای مقدار دهی رجیسترهای داخلی حسگر تصویر مورد استفاده قرار می­گیرد. این رجیسترها وظیفه تعیین فرمت پیکسل خروجی، اعمال فیلترهای مختلف به تصویر و .. را بر عهده دارند.

باس داده: داده­هایی که از دوربین به پردازنده منتقل می­شود می­تواند به صورت سریال یا موازی باشد:

الف) ارتباط موازی یا Camera Parallel Interface (CPI)

ارتباط موازی شامل 8 خط داده برای انتفال تصویر و چند خط sync برای کنترل دریافت این داده­ها می­باشد:

Vsync: شروع و پایان یک فریم تصویر را مشخص می­کند.

Hsync: شروع و پایان یک خط تصویر را مشخص می­کند.

Pixel clock: آمدن هر پیکسل را مشخص می­کند.

ب) ارتباط سریال Camera Serial Interface (CSI)

بیش­تر دوربین­هایی که در تلفن­های هوشمند و تبلت­های امروزی استفاده می­شوند از حسگرهای MIPI (Mobile Industry Processor Interface) استفاده می­کنند. رابط غالب برای این نوع حسگرهای تصویر CSI-2 (Camera Serial Interface 2) می­باشد.

سیگنال داده: تا چهار خط دیفرانسیلی

سیگنال کلاک: یک خط دیفرانسیلی (بیشینه سرعت Gbit/s 1)


نظرات()       
شنبه 30 آذر 1392  10:43 ب.ظ
نوع مطلب: (DSP ،FPGA ،) توسط: امیرحسین رستمی

یک تفاوت اساسی بین پردازنده های DSP ساختار محاسباتی آن ها است: ممیز ثابت یا ممیز شناور. برای طراحان سیستم، این مهمترین عاملی است که به کمک آن تشخیص می دهند که آیا یک پردازنده DSP برای یک کاربرد مشخص مناسب است یا نه. پردازنده های DSP ممیز ثابت ممکن است 16 بیتی یا 24 بیتی باشند، در حالی که پردازنده های ممیز شناور معمولاً 32 بیتی هستند. یک پردازنده 16 بیتی ممیز ثابت رایج مانند TMS320C55x، اعداد را به فرمت صحیح یا اعشاری 16 بیتی در یک محدوده ثابت ذخیره می کنند. اگرچه ضرایب و سیگنال ها با دقت 16 بیتی ذخیره می شوند، مقادیر میانی برای کاهش خطاهای رند کردن تجمعی، ممکن است با دقت 32 بیتی  در accumulator ، 40 بیتی ذخیره شوند. DSPهای ممیز ثابت معمولاً از DSPهای ممیز شناور ارزان تر و سریع تر هستند چون آن ها از سیلیکون کمتری استفاده می کنند، مصرف توان کمتری دارند و به پین های خارجی کمتری نیاز دارند. موارد استفادهء پردازنده های ممیز ثابت عبارتند از: کنترل دستگاه های برقی، موبایل، درایو هارد دیسک، مودم ها پخش کننده های صوتی و دوربین های دیجیتالی.

حساب ممیز شناور محدوده دینامیکی اعداد را به شدت افزایش می دهد. یک پردازنده DSP ممیز شناور 32 بیتی رایج مانند TMS320C67x، اعداد را به صورت 24 بیت مانتیس و 8 بیت نما نمایش می دهد. مانتیس یک عدد اعشاری را در محدوده 1- و 1+ نمایش می دهد در حالی که نما یک عدد صحیح است که تعداد مکانهایی که ممیز باینری باید به چپ یا راست منتقل شود تا یک مقدار حقیقی بدست آید، را نمایش می دهد. یک فرمت ممیز شناور 32 بیتی، محدوده دینامیکی وسیعی را نمایش می دهد. بنابراین محدودیت هایی که روی حدود دینامیکی داده وجود دارند، ممکن است در یک طراحی با استفاده از پردازنده های DSP ممیز شناور نادیده گرفته شوند. این در نقطه مقابل طراحی با استفاده از ممیز ثابت قرار دارد. در طراحی با استفاده از ممیز ثابت طراح باید ضرایب مقیاس بندی و تکنیک های دیگری را اعمال کند تا از سرریز محاسبات جلوگیری کند، که یک فرایند خیلی مشکل و وقت گیر می باشد. از این رو، به طور کلی پردازنده های DSP ممیز شناور از نظر برنامه نویسی و استفاده آسان هستند، اما معمولاً گران تر هستند و توان بیشتری مصرف می کنند.

دقت و حدود دینامیکی پردازنده های DSP ممیز ثابت 16 بیتی رایج در جدول زیر خلاصه شده است.

 

دقت پردازنده های DSP ممیز شناور 32 بیتی، 23-^2 است. چون دارای 24 بیت مانتیس می باشند. همچنین حدود دینامیکی آن ها    1.18 ×10−38x ≤ 3.4 × 1038  می­باشد.

طراحان سیستم باید حدود دینامیکی و دقت مورد نیاز را برای کاربردشان تعیین کنند.  پردازنده های ممیز شناور ممکن است در کاربردهایی که ضرایب متغییر با زمان هستند، سیگنال ها و ضرایب به حدود دینامیکی وسیع و دقت بالایی نیاز دارند و یا جایی که ساختار حافظهء وسیعی لازم باشد، مانند پردازش تصویر، نیاز شوند. همچنین پردازنده های DSP ممیز شناور استفاده موثری از کامپایلر های C می کنند، بنابراین هزینه توسعه و نگه داری را کاهش می دهند. سیکل توسعه سریع تر پردازنده های ممیز شناور ممکن است از قیمت اضافی آن ها مهم تر باشد.


نظرات()   
   
جمعه 22 آذر 1392  07:03 ب.ظ
نوع مطلب: (DSP ،FPGA ،برد مدار چاپی ،Altera ،) توسط: امیرحسین رستمی

هدف طراحی و ساخت یک سخت افزار برای پردازنده DSP ساخت شرکت TI، سری 5000 یعنی A 5509 و یک FPGA ساخت شرکت Altera سری Cyclone III می­باشد.

طراحی شماتیک

طراحی مدار شامل طراحی مدار تغذیه، مدار ارتباطی بین FPGA و DSP، حافظه­­ی uSD، پورت سریال، حافظه­ی فلش برای ذخیره­ی برنامه­ی DSP و مدار واسط دوربین می­باشد. در ادامه به طراحی قسمت­های مختلف مدار پرداخته شده است.

مدار تغذیه

با توجه به برگه­ی اطلاعات برای راه­اندازی FPGA و DSP، مدار تغذیه باید ولتاژهای 3/3، 6/1، 5/2، 2/1 ولت را فراهم آورد. برای این منظور از 5 رگولاتور استفاده کردیم. ابتدا ولتاژ ورودی را با استفاده از یک رگولاتر به سطح 5 ولت رساندیم. سپس با 4 رگولاتور دیگر ولتاژهای مناسب را ساختیم. مدار تغذیه­ی طراحی شده در شکل 1 نشان داده شده است.

لطفا به ادامه مطلب مراجعه کنید (به همرا دانلود فایل PDF و پروژه (protel (Altium و فوت پرینت ها)


نظرات()       
چهارشنبه 13 آذر 1392  11:16 ب.ظ
نوع مطلب: (FPGA ،Xilinx ،آموزش ISE ،) توسط: امیرحسین رستمی

مقدمه

برای افزایش فرکانس نیاز به PLL[1] داریم. در شکل زیر نمودار بلوکی PLL نشان داده شده است. PLL از یک شمارنده تقسیم کنند N، مدار آشکار ساز فاز-فرکانس PFD[2]، نوسان­گر کنترل شده با ولتاژ VCO[3] و چند شمارنده ضرب کنند تشکیل شده است.

حلقه قفل شده فاز (PLL) از یک فرکانس مرجع برای تولید مضارب مختلف آن استفاده می­کند. در ابتدا  اسیلاتور کنترل شده با ولتاژ (VCO) روی محدوده فرکانس مورد نظر تنظیم می­شود. سیگنال خروجی از VCO با استفاده از یک تقسیم کننده فرکانس بر همان عامل ضرب تقسیم می­شود. سیگنال تقسیم شده و فرکانس مرجع به یک مقایسه کننده فاز وارد می شوند. خروجی مقایسه کننده فاز ولتاژی است که متناسب با اختلاف فاز می باشد. پس از عبور از یک فیلتر پایین گذر و تبدیل به ولتاژ مناسب، این ولتاژ برای تنظیم فرکانس به VCO وارد می­شود. اگر فاز سیگنال VCO نسبت به فاز  سیگنال مرجع تاخیر داشته باشد، این تنظیم باعث افزایش فرکانس ‏ می­شود ولی اگر فاز سیگنال ‏VCO‏ نسبت به فاز  سیگنال مرجع جلوتر باشد، فرکانس کاهش می یابد. در نهایت VCO در مضرب فرکانس مرجع به پایداری می­رسد.

DCM

در FPGA های Xilinx به واحد ضرب کننده فرکانس، DCM[1] گفته می­شود. ساختار داخلی اسپارتان-3 در شکل زیر نشان داده شده است. همان طور که مشاهده می­شود4 عدد DCM در 4 گوشه تراشه قرار دارد.

برای استفاده از DCM در برنامه ها نیاز به استفاده از Core Generator داریم.

فراخانی DCM

ابتدا از منوی Project، New Source را انتخاب کنید. یک نام دلخواه وارد کنید و Next  بزنید.

در قسمت Search، DCM را وارد کنید و Next را بزنید.

در پنجره بعدی ‏Finish‏ را بزنید. ‏

در پنجره بعد زبان خروجی مورد نظر را انتخاب کنید و Next را بزنید.

در پنجره بعدی تنظیمات DCM نشان داده می­شود.

تنظیمات DCM در Core Generator

توضیح پین­ها به شرح زیر می­باشد:

CLK90 : کلاک خروجی از این پین 90 درجه با کلاک ورودی اختلاف فاز دارد.

CLK180 : کلاک خروجی ‏ از این پین 180 درجه با کلاک ورودی اختلاف فاز دارد.‏

CLK270 : کلاک خروجی ‏ از این پین 270 درجه با کلاک ورودی اختلاف فاز دارد.‏

CLKDV: کلاک خروجی ‏ از این پین کسری از کلاک ورودی است.‏ که مقدار تقسیم در قسمت Divide by value انتخاب می­شود.

CLK2X : فرکانس‏ کلاک خروجی ‏ از این پین دو برابر فرکانس کلاک ورودی است.‏

CLKFX : با انتخاب این پین می­توانید فرکانس دخواه را توسط PLL تولید کنید.

CLKFX180 : این پین با پین قبلی 180 درجه اختلاف فاز دارد.

LOCKED: بیانگر این است که چه زمانی فاز کلاک خروجی با فاز کلاک ورودی برابر می­باشد.

CLKFX‏ ‏ را انتخاب کنید و به صفحه بعد بروید.

در صفحه بعد روی Next کلیک کنید.

در این صفحه باید فرکانس خروجی مورد نظرتان را وارد کنید. سپس روی Calculate کلیک کنید تا ضرایب ضرب و تقسیم برای ساختن این فرکانس محاسبه شود. در نهایت روی Next کلیک کنید.

خلاصه ای از تنظیمات شما نمایش داده می­ شود.



به نرم افزار برگیردید. IP ساخته شده را انتخاب کنید و روی Create  Schematic Symbol کلیک کنید تا بلوک شماتیک برای آن ساخته شود.


با رفتن به صفحه شماتیک (که قبلا ایجاد کرده­اید) می­توانید به راحتی از DCM برای تولید کلاک مورد نظرتان استفاده کنید.

دانلود فایل PDF

سرور دوم

منبع

Using Digital Clock Managers (DCMs(


نظرات()   
   

حافظه FIFO (First In Last Out) در کاربردهایی که با یک جریانی از سیگنال مواجه هستیم مورد استفاده قرار می­گیرد. برای مثال، یک حسگر تصویر یا یک مبدل آنالوگ به دیجیتال که داده­های ورودی به صورت پیوسته وارد سیستم می­شود نیاز به یک حافظه FIFO برای ذخیره داده­ها و سپس پردازش آن­ها می­باشیم.

برای استفاده از FIFO در  باید از IP Core Xilinx، FIFO Generator استفاده می­کنیم. برای ایجاد این IP Core می­توان به دو روش زیر عمل کرد:

الف) به صورت مستقل از پروژه

از منوی start مسیری که در شکل نشان داده شده است را دنبال کنید تا نرم­افزار Core Generator باز شود.

ب) در داخل نرم­افزار ISE

از قسمت Project، New Source را انتخاب کنید. گزینه اول را انتخاب کنید و بعد از وارد کردن اسم فایل روی Next کلیک کنید.

در هر دو حالت به پنجره زیر می­رسید. در قسمت Search IP Catalog کلمه fifo را وارد کنید. FIFO Generator را انتخاب کنید و Next را بزنید.

در این مرحله پنجره FIFO Generator نمایش داده می­شود. روی Next کلیک کنید تا وارد صفحه 2 شوید. روی Next کلیک کنید.

در این صفحه نوع حافظه مورد استفاده برای ساختن FIFO را انتخاب کنید. همچنین می­توانید در این صفحه مشخص کنید که فرکانس نوشتن داده­ها با فرکانس خواندن داده­ها یکسان باشند یا متفاوت باشند.

Read Mode

·         Standard FIFO

یک فیفوی استاندارد بدون وجود هرگونه رجیستر برای خروجی ایجاد می­کند.

·         First-Word Fall-Through FIFO (FWFT)

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

Optional Flags, Handshaking, and Initialization

Optional Flags

·         Almost Full Flag

یک پورت خروجی تولید می­کند که نشان دهنده این است که فقط یک داده دیگر می­تواند داخل فیفو وارد شود.

·         Almost Empty Flag

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

Handshaking Options

·         Write Port Handshaking

o       Write Acknowledge

این سیگنال بیانگر این است که عملیات خواندن با موفقیت انجام شده است. می­تواند active high یا active low باشد.

o       Overflow (Write Error)

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

·         Read Port Handshaking

o       Valid (Read Acknowledge)

این فلگ مشخص می­کند که چه زمانی داده­ای که در باس خروجی قرار می­گیرد، معتبر می­باشد.

o       Underflow (Read Error)

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

Initialization and Programmable Flags

·         Reset Pin

با فعال شدن پین ریست، تمام شمارنده­ها، رجیسترهای خروجی و حافظه­ها ریست می­شود.

Programmable Flags

·         Programmable Full Type

می­توانید انتخاب کنید که با رسیدن داده­های داخل فیفو به تعداد مشخص توسط پین prog_full به شما خبر داده شود.

·         Programmable Empty Type

می­توانید انتخاب کنید که با کم شدن داده­های داخل فیفو از یک تعداد مشخص توسط پین prog_empty به شما خبر داده شود.

Data Count

·         Write Data Count (Synchronized with Write Clk)

تعداد داده­های نوشته شده در فیفو را مشخص می­کند.                  

·         Read Data Count (Synchronized with Read Clk)

بیانگر تعداد داده­های خوانده شده از فیفو می­باشد.             

Summary

در این پنجره خلاصه­ای از تنظیمات فیفو نشان داده می­شود.

بلوک فیفو در صفحه شماتیک در شکل زیر نشان داده شده است.

دانلود فایل PDF

منبع

LogiCORE IP FIFO Generator, Product Guide, PG057 December 18, 2012


نظرات()   
   

الف) مبدل عدد هگزادسیمال به 7-segment

هدف:

هدف راه­اندازی یک 7-segment‏ ‏می­باشد که هر لحظه یک واحد زیاد می­شود.

مقدمه:

تصویر 7-segment در شکل 1 نشان داده شده است. 7-segment شامل هفت عدد LED خطی و یک LED نقطه­ای می­باشند.

 

فرض کنید به FPGA دو عدد 7-segment‏ ‏با توجه به شکل 2 متصل می­باشد. همان­طور که مشاهده می­شود پین‎های مشترک 7-segment‏ ‏ها به زمین متصل می­باشد (LEDها کاتد مشترک می­باشند). این بدان معناست که ‏LED‏ ها ‏active high‏ می­باشند و برای این که ‏LED‏ ها روشن شوند روی پین مربوطه باید ولتاژ "1" قرار گیرد.‏

1) جدول تبدیل کد هگز به 7-segment در جدول 1 نشان داده شده است. می­خواهیم با استفاده از دستور with-select یک برنامه VHDL بنویسید تا عدد هگز را به عدد قابل نمایش روی 7-segment تبدیل کند.

با استفاده از دستور with-select می­توان کد هگز را به آسانی به کد ‎7-segment‏ ‏تبدیل کرد. در واقع با استفاده از این کد یک جدول جست و جو یا(Lock up Tabale (LUT  می­سازیم.


  • آخرین ویرایش:چهارشنبه 25 شهریور 1394
نظرات()       
جمعه 1 آذر 1392  12:36 ق.ظ
نوع مطلب: (FPGA ،VHDL ،Xilinx ،Altera ،) توسط: امیرحسین رستمی

می­خواهیم برنامه­ای بنویسیم که در آن رابطه بین ورودی و خروجی به صورت زیر باشد:

یعنی فرکانس کلاک خروجی برابر با تقسیم دلخواهی از فرکانس ورودی می­باشد. برای این منظور باید یک شمارنده تعریف کنیم که با آمدن پالس­های بالارونده ورودی یک واحد زیاد می­شود. سه حالت مختلف به وجود می­آید.

الف) m توانی از 2 باشد:

فرض کنید  باشد. n=3 یعنی فرکانس پالس خروجی  1/8 فرکانس پالس ورودی می­باشد. یک شمارنده 3 بیتی تعریف می­کنیم. شمارنده از 0 تا 7 می­شمارد. با توجه به شکل اگر با ارزش­ترین بیت MSB شمارنده را به خروجی بدهیم، به هدف خود رسیده­ایم.

برنامه تقسیم کننده فرکانس در ادامه آمده است:

به ادامه مطلب مراجعه کنید.
دانلود فایل PDF در ادامه مطلب


نظرات()       
  • تعداد کل صفحات :2  
  • 1  
  • 2  
آخرین پست ها