اطلاعیه

Collapse
No announcement yet.

ایجاد تعداد زیادی pwm موازی در fpga

Collapse
X
 
  • فیلتر
  • زمان
  • Show
Clear All
new posts

    ایجاد تعداد زیادی pwm موازی در fpga

    سلام. من اطلاعات زیادی در مورد انواع fpga,cpld ندارم ولی یه خورده VHDL بلدم . میخوام که حدود 100 تا pwm generator داشته باشم که همزمان باهم کار کنند و فرکانس هر pwm هم 2 مگاهرتز باشه. آیا همچین امکانی وجود داره؟ ممکنه چند تا نوع fpga که همچین قابلیتی رو داشته باشه معرفی کنید و کمی هم در مورد طریقه پیاده سازی pwm توضیح بدین؟

    ممنون
    "در عجبم از مردمي که خود زير شلاق ظلم و ستم زندگي مي کنند و بر حسيني مي گريند که آزادنه زيست" شريعتي
    در جهان روشنايي هايي وجوددارد كه در عميق ترين ظلمات نهانند.

    #2
    پاسخ : ایجاد تعداد زیادی pwm موازی در fpga

    با سلام
    تا حد زیادی بستگی به رزولوشن مورد نظرتان دارد. چون فرکانس تقریبا زیادی میآ‌خواهید اگر تعداد بیتآ‌ها را زیاد کنید سرعت کلاک کل مدار خیلی باید بالا باشد. اگر اشتباه نکنم برای ۸ بیت، کلاک داخلی fpga شما باید حدود ۵۱۲ مگ باشد. در این حالت هم حتما باید دنبال FPGAهای سریآ‌های سریع باشید مثل ٰVirtex شرکت xilinx. سنتز کردن هم برای این فرکانس کار به نسبت پیچیدهآ‌ای است.
    من دوست دارم آزاد فکر کنم، نرمآ‌افزارآ‌ و سختآ‌افزارهای آزاد را به کار ببرم و اگر توانستم نرمآ‌افزار، سختآ‌افزار و محتوای آزاد درست کنم!

    دیدگاه


      #3
      پاسخ : ایجاد تعداد زیادی pwm موازی در fpga

      سلام

      . اگر اشتباه نکنم برای ۸ بیت، کلاک داخلی fpga شما باید حدود ۵۱۲ مگ باشد.
      آقای مانیان ،آ‌ به نظر من اگه 8 بیت باشه کلاک 256 مگ نمیشه ؟ البته این حدس من هستش.

      کاری که من میخوام انجام بدم این هستش که حدود حداکثر 10 میکروثانیه زمان لازم هستش تا 100 تا RGB LED تنظیم رنگ بشن . هر led همونطور که میدونین 3 تا پایه رنگ داره من برای هر یه دونه led میخوام که از یک pwm استفاده کنم . و خروجی pwm رو به یک سوییچ بدم تا روی 3 تا پایه led ولتاژهای بوجود اومده توسط pwm رو ذخیره کنه. به طور خلاصه اگه بگم مراحل کار اینطوری میشه.

      1- pwm دیوتی سایکل مربوط به پایه شماره 1 از led1 رو ایجاد میکنه
      2- این دیوتی سایکل بوجود آمده توسط مداری باید به سطح ولتاژ متناظر تبدیل بشه
      3-این ولتاژ داخل یک دیمولتی پلکسر آنالوگ با قابلیت لچ ولتاژ بره
      4- خروجی شماره یک این مولتی پلکسر فعال بشه و ولتاژ در اون پایه لچ بشه
      5- خروجی شماره 1 دیمولتی پلکسر غیرفعال بشه و خروجی شماره 2 دیمولتی پلکسر فعال بشه
      6- pwm دیوتی سایکل مربوط به پایه شماره 2 از led1 رو ایجاد کنه
      7- مرحله 2
      8- مرحله 3
      9- دوباره این 4 مرحله برای پایه شماره 3 از led1 انجام بشه.

      حالا کل این مراحل در زمان 10 میکرو ثانیه باید انجام بشه.
      رزولوشن 8 بیت هم خیلی خوبه . ولی فکر کنم یه خورده زیاد هم باشه . میشه برای اینکه سرعت pwm و بالطبع سرعت پردازنده هم پایین بیاد یک pwm با رزولوشن 5 بیت ساخته بشه؟
      این دیمولتی پلکسر رو میشه داخل fpga قرارش داد یا اینکه چون آنالوگ هست امکان پذیر نیست؟

      ببخشید که یه خورده زیاد شد. شرمنده
      ممنون
      "در عجبم از مردمي که خود زير شلاق ظلم و ستم زندگي مي کنند و بر حسيني مي گريند که آزادنه زيست" شريعتي
      در جهان روشنايي هايي وجوددارد كه در عميق ترين ظلمات نهانند.

      دیدگاه


        #4
        پاسخ : ایجاد تعداد زیادی pwm موازی در fpga

        غلط نکنم شما میخوای از این تابلو تبلیغاتی ها بسازی. اگر اینجوری باشه شما نبایستی روی فرم 16 میلیون رنگ حساب کنی بلکه یک pwm سه بیتی هم برات کافیه. که به این صورت شما میتونی 512 رنگ هم براحتی نولید کنی. که البته کیفیت رنگ مانیتور رو نداره ولی برای نمایش فیلم و اینجور چیزا کفایت میکنه. بنابراین فرکانس ماکزیمم شما چیزی حدود16 مگا هرتز میشه.

        بنابراین با سری 9500XL هم میشه کارو پیش برد.

        ضمنا شما داری pwm میسازی که به نوعی شبیه سازی تغییر سطح ولتاژ حساب میشه. دیگه مدار اضافه ای نمیخواد. فقط همیشه باید در حالت بازسازی باشه. برای 3 بیت هم حداکثر زمان بازسازی روی 2 مگا هرتز میشه 4 میکرو ثانیه که خیلی برای led کمه. یعنی شاید حتی یک فرکانس 8 تا 10 کیلو هرتزی برای رسیدن به زمان پایه 1 میلی ثانیه کفایت کنه.

        دیدگاه


          #5
          پاسخ : ایجاد تعداد زیادی pwm موازی در fpga

          خیلی ممنون از راهنمایی خوبتون
          دقیقا درست گفتین. ولی یه تابلو چرخنده هستش . من قبلا یه مدل تک رنگش رو ساخته بودم که فقط عکس باهاش میشد نمایش داد ولی الان میخوام که رنگی باشه و فیلم هم نشون بده.
          پس اینطوری با همین 3 بیت هم کار انجام میشه . خیلی کمک کردین. :applause: :applause:
          ممکنه بفرمایین که 16 مگ رو چه جوری بدست آوردین؟ الان ما یک pwm میخواهیم که رزلوشن 3 بیت داشته باشه. یعنی 8 حالت. حالا برای این 8 حالت چه جوری فرکانس کلاک بدست میاد؟

          برای 3 بیت هم حداکثر زمان بازسازی روی 2 مگا هرتز میشه 4 میکرو ثانیه که خیلی برای led کمه
          بله شما درست میفرمایین . ولی من این زمان رو برای تنظیم رنگ میخوام و بعد از تنظیم ولتاژ پایه تمام led ها ، حالا وقتشه که اونها روشن بشن و حدود 130 میکرو ثانیه در همون وضیعت باقی بمونن بعد دوباره خاموش می شوند بعد دوباره یک رنگ بندی دیگه روی led ها تنظیم میشه بعد دوباره تمام led ها روشن میشوند بعد از یک زمان 130 میکرو ثانیه خاموش میشوند . حالا هرچی که زمان تنظیم رنگ ها سریعتر باشه به زمان روشن موندن led ها اضافه میشه و تصویر پر نور تر به نظر میرسه.

          حالا از اونجایی که یک pwm رو برای 3 تا پایه یک led استفاده میکنیم و زمان 130 میکرو ثانیه ای که این led باید روشن بمونه به نظر من این مقدار ولتاژ ها باید یه جوری مقدارش لچ بشه تا بتونیم مقدار ولتاژ 2 تا پایه دیگه از led رو هم ایجاد کنیم. من گفتم که یه دیمولتی پلکسر با قابلیت لچ کردن ولتاژ آنالوگ میتونه مفید باشه ولی مثل اینکه نظر جنابعالی یه چیز دیگه ای هستش. میشه بیشتر توضیح بفرمایین؟ مخلصیم

          با تشکر
          "در عجبم از مردمي که خود زير شلاق ظلم و ستم زندگي مي کنند و بر حسيني مي گريند که آزادنه زيست" شريعتي
          در جهان روشنايي هايي وجوددارد كه در عميق ترين ظلمات نهانند.

          دیدگاه


            #6
            پاسخ : ایجاد تعداد زیادی pwm موازی در fpga

            شما مجبور نیستین که یک خروجی آنالوگ تولید کنین. بعد اونو لچ کنین و بعد از مدت زمانی سراغ سیکل بعدی برین. چرا؟ چون چه فرقی میکنه که شما بطور مرتب اون سیگنال آنالوگ رو سنتز کنین یا یکبار سنتز بشه و تا مدتی بافر بشه؟ شما مقادیر آنالوگ رو با نرم افزار تولید نمیکنین که از سرعت <<ساخته شدن سیگنال آنالوگ>> بترسین. یا لااقل اینجوری فکر نکنین. این اصل و اساس استفاده از pwm هست. وقتی میگیم مدولاسیون پهنای پالس یعنی در طی زمان به طول پالس توجهی نداریم ولی در طی یک زمان به اندازه کافی بلند <<بنظر میاد>> که ولتاژی رو که میخواییم روی خروجی ایجاد کردیم. چون اصل بر کمبود دقت در تشخیص استواره.

            ضمنا شما 3 بیت دارین و 8 حالت بنابراین برای یک فرکانس pwm خروجی بایستی کل حالات یعنی 8 حالت تولید بشه یعنی 2 مگا هرتز ضربدر 8 ترکیب که میشه 16 مگا هرتز.

            از طرف دیگه. چشم انسان نمیتونه فریم های متوالی که کمتر از 50 تا 100 میلی ثانیه ثابت باشند رو از هم تشخیص بده بنا براین بالای این فرکانس رو متوالی میبینه. این اصل در انیمیشن سازی استفاده میشه. مهمتر از این مسئله نقاط یک مانیتور برای <<تغییر رنگ>> ... دقت کنین: <<تغییر رنگ>> نمیان نقاط رو اول خاموش کنن بعد با رنگ جدید روشن کنن. چون اولا چشم تغییر رنگ با این سرعت رو متوجه نمیشه و ثانیا بر خلاف انتظار شما مشکی خودش یک رنگه. ضمنا شما با انجام اینکار مثل این میمونه که بین هر دو فریم یک فریم مشکی ایجاد کنین که هم باعث چشمک یا فلیکر میشه و هم فیلم رو تاریک میکنه. شما فقط کافیه مقادیر رنگی مورد نیاز برای led ها رو در memory map خودتون عوض کنین. در زمان بازسازی فریم جدید این اطلاعات به خروجی منتقل میشه. درست عین مانیتور و تلویزیون.

            ضمنا من منظورم این بود که شاید بشه دقیقا یک pwm رو به ازای هر led یا هر رنگ led تولید کرد که در این صورت شما به تعداد پایه های متفاوت led پایه خروجی با بافر احتیاج دارین.

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

            دیدگاه


              #7
              پاسخ : ایجاد تعداد زیادی pwm موازی در fpga

              ممنون از توضیحاتتون. پس دیگه به قسمت لچ نیازی نداریم چون وقتی با سرعت بالا هر پایه led رو تنظیم رنگ کنیم مثل این می مونه که در یک بازه زمانی مشخص ولتاژها لچ شده باشند. ولی به یک دیمولتی پلکسر احتیاج داریم که خروجی یک pwm رو به 3 تا پایه از led برسونه و در هر مرحله در یک زمان خیلی کم (مثلا همون 1 میکرو ثانیه) تنظیم رنگ رو برای یک پایه انجام بده بعد بره سراغ 2 تا پایه بعدی. ولی یه موردی به ذهنم رسید. توی این فاصله زمانی که خروجی دیمولتی پلکسر از پایه 1 به پایه 2 انتقال پیدا کرده چه بلایی سر پایه 1 و 3 میاد؟! رنگ قبلی که برای اونها تنظیم کرده بودیم توی این فاصله زمانی چطور میشه؟ مثلا فرض کنیم که اون خروجی دیمولتی پلکسر که به پایه 1 وصل شده در این لحظه high Z بشه و یک رنگ دیگه ای خود به خود روی اون پایه ست بشه . حالا کار به مشکل میخوره !! ولی اگر این سوییچ کردن با سرعت زیاد انجام بشه شاید به نظر نیاد . ولی اگه یه مدار لچی این وسط باشه بهتر نیست؟ من فکر میکنم که اگه رنگ اتفاقی روی پایه 1 ست بشه همه چی بهم میخوره. نظر شما چیه؟

              ممنون
              "در عجبم از مردمي که خود زير شلاق ظلم و ستم زندگي مي کنند و بر حسيني مي گريند که آزادنه زيست" شريعتي
              در جهان روشنايي هايي وجوددارد كه در عميق ترين ظلمات نهانند.

              دیدگاه


                #8
                پاسخ : ایجاد تعداد زیادی pwm موازی در fpga

                شما به یک سرعت بالایی احتیاج داری که اولا زمان مابین رفرش یک led در دو سیکل متوالی کوتاه باشه تا led نورش رو از دست نده و در ثانی به زمان بالایی برای زمانبندی احتیاج هست که نور led چشم رو تحریک کنه که این هم بستگی به زمان تغییر مقادیر هر مولفه رنگی برمیگرده. توی مانیتورها سرعت رفرش نقاط برای ایجاد روشنایی بطور پشت سرهم چیزی حدود 50 تا 100 کیلو هرتز هست. چون هم تعداد نقاط خیلی زیاده (مثلا نزدیک به یک میلیون نقطه) و هم یک منبع سیگنال وجود داره بنابراین فسفر ها انرژی و به ما تبع اون نورشون رو از دست میدن. ولی اینجا شما قراره برای هر گروه یک سیگنال (مکانیسم رفرش) یا برای هر led یک سیگنال (مکانیسم بافر) در نظر بگیری. بنابراین با این اوصاف به اون لچی که مد نظرت هست احتیاجی نداریم.
                یک کمی فکر کنی متوجه میشی منظورم چیه. شرایط رو در حد نانو ثانیه تحلیل نکن. یک led وقتی جریان ورودیش قطع میشه بلافاصله خاموش نمیشه. زمانی هر چند کوتاه احتیاج داره تا خاموش بشه. درست عین یه خازن عدسی کوچیک. dram و پیکسل های مانیتور و led های شما از یک تکنیک مشابه استفاده میکنن. یک کمی فکر کن.....

                دیدگاه


                  #9
                  پاسخ : ایجاد تعداد زیادی pwm موازی در fpga

                  پس یک مدار دیمولتی پلکسر دیجیتال سریع هم برای انجام کار کفایت میکنه. من در حد خیلی کمی با fpga آشنا هستم. میشه که این دیمولتی پلکسر رو هم داخل fpga قرار داد؟ آیا امکانش هست که ولتاژ آنالوگ بوجود آمده حاصل از دیوتی سایکلهای مختلف رو از پایه های fpga بگیریم؟ راستی میشه یه لینک برای 9500XL بزارین تا ببینم که چه مشخصاتی داره؟ من بیشتر ترجیح میدم که از Altera استفاده کنم. چون خیلی ها رو دیدم که با این کار میکنند ولی تعصب خاصی ندارم و مزایا و معایب استفاده از xillin FPGA و یا Altera رو نمیدونم. میشه یه راهنمایی بکنید؟
                  سرعت اینکه با VHDL تمام مدار رو پیاده سازی کنم بهتر وسریعتره و یا اینکه از گیت های cpld استفاده کنم؟

                  ممنون
                  "در عجبم از مردمي که خود زير شلاق ظلم و ستم زندگي مي کنند و بر حسيني مي گريند که آزادنه زيست" شريعتي
                  در جهان روشنايي هايي وجوددارد كه در عميق ترين ظلمات نهانند.

                  دیدگاه


                    #10
                    پاسخ : ایجاد تعداد زیادی pwm موازی در fpga

                    راسیتش من رشته ام اینجور چیزا نیست. سری9500 هم بیشتر برای تست بدرد میخوره نه با این حجم مداری که شما داری. شاید سری spartan بهتر باشه. اما اینکه من میگم xilinx چون اونموقع که شروع کردم maxplus با کرک نداشتم. ولی ISE WebPack احتیاجی به کرک نداشت. ولی خوب البته Flex10K هم میدونم آی سی خوبیه. اما لایسنس Quartus رو دارین؟ من که نتونستم راهش بندازم. این ایده ای هم که خدمتتون گفتم بنظر میاد ساده ترین روش باشه. اما ممکنه بهترین روش نباشه. چون به ازای هر pwm به یک مقایسه کننده و سه بیت فلیپ فلاپ احتیاج هست. برای کار تستی با گیت های پایین 9500 چیز نازیه مضاف بر اینکه eeprom based هست و احتیاجی به config memory نداره. علاوه بر اون با اینکه خودش 3.3 ولتیه میتونه خروجی 5 ولت هم بده. اما فرم 144 اون یعنی 95144 فقط 144 رجیستر و حدود 3000 گیت داره که احتمالا برای تست شما با 10 تا led بیشتر کفایت نمیکنه. شاید مجبور باشین بجای اینکه در مدل بیت های ورودی مقایسه کننده بافر شده باشن خروجی ها رو بافر کنین تا مدل رجیستر کمتری مصرف کنه. بذارین یه چک روی webpack میکنم....

                    دیدگاه


                      #11
                      پاسخ : ایجاد تعداد زیادی pwm موازی در fpga

                      من یک مدل تستی نوشتم با این فرض که اطلاعات هر پیکسل شامل مقادیر R و G هر کدوم 3 بیت و برای B تنها 2 بیت. چون چشم نسبت به رنگ آبی حساسیت کمتری از خودش نشون میده. اطلاعات هر پیکسل در یک بایت از یک SRAM ذخیره شده و با یک سیکل متغیر بسته به سرعت SRAM شما مثلا 60 نانو ثانیه اطلاعات رو از روی SRAM خونده و یک PWM با فرکانس دلخواه شما از روی این مقادیر تولید میشه. با استفاده از یک آی سی 9572XL-TQ144 که 144 پین هست و 72 پین io داره با استفاده از تقریبا همه ماکرو سل های آی سی (البته محدودیت بیشتر مربوط به تعداد io ها میشه) میشه 16 پیکسل و به عبارت 48 LED رو ساپورت کرد. البته اگر مدل مقداری تغییر کنه شاید بشه از یک sram برای نگهداری اطلاعات بطور مشترک استفاده کرد.



                      شاید بشه حتی با استفاده از یک منطق اضافه با استفاده از یک سری شیفت رجیستر همین منطق رو برای تعداد بالاتر LED های مورد نیازتون توسعه داد. که احتمال خیلی قوی این فرم تغییر داده شده باز هم در همین آی سی فیت میشه.

                      دیدگاه


                        #12
                        پاسخ : ایجاد تعداد زیادی pwm موازی در fpga

                        سلام . آقا رضا خیلی ممنون که وقت گذاشتین و تست کردین
                        شرمنده سوالهای ابتدایی میپرسم . الان شما برای XC9572 که یک cpld هستش یه برنامه vhdl نوشتین؟
                        والا من یه برد آموزشی CycloneII دارم ولی هنوز باهاش کاری نکردم میخواستم بدونم که برای شروع یادگیری هم میشه با این آی سی شروع کرد؟ یا بهتره که از یک cpld استفاده کنم؟
                        من راجع به بهتر بودن altera و یا Xilinx چیزی نمیدونم. میشه یه راهنمایی هم در این مورد بکنید؟
                        برای اینکه تعداد خروجی pwm رو بالاتر ببریم و سرعت هم بالاتر باشه بهتر نیست از مولتی پلکسر استفاده کنیم؟ یعنی مثلا همین 48 تا pwm که شما گفتین رو یه بار به 16 led اول بدیم بعد به 16 تای بعدی و همینطوری تا آخر.

                        میشه 16 پیکسل و به عبارت 48 LED رو ساپورت کرد
                        منظور شما 16 پیکسل و 48 تا خط pwm هستش؟

                        ممنون
                        "در عجبم از مردمي که خود زير شلاق ظلم و ستم زندگي مي کنند و بر حسيني مي گريند که آزادنه زيست" شريعتي
                        در جهان روشنايي هايي وجوددارد كه در عميق ترين ظلمات نهانند.

                        دیدگاه


                          #13
                          پاسخ : ایجاد تعداد زیادی pwm موازی در fpga

                          من فرض رو بر این گذاشتم که شما میخوایین مستقیما بدون مالتی پلکس کردن 16 RGB-LED رو روشن کنین. یعنی خواندن 16 بایت از حافظه و نهایتا ساختن 48 کانال pwm برای تمامی 16*3 led ها. من در مدل مربوطه که به verilog نوشتم با فرض استفاده از حافظه 60 نانو ثانیه ای میتونم کل led ها رو در طی 4*16*60 نانو ثانیه یا 3.8 میکرو ثانیه رفرش کنم. حالا اگه بخوایین میشه این میزان رو با مالتی پلکس کردن اضافه کرد. ضمنا شما میتونین با یک مالتی پلکسر ساده مثلا 8 سطر متفاوت رو آدرس دهی کنین که هر سطر با تاخیر یک میلی ثانیه انتخاب بشه که البته زمان بازسازی فریم به 8 میلی ثانیه افزایش پیدا میکنه. که این خودش میشه سرعت بازسازی 125 هرتز. که خیلی بیشتره از اون چیزی که بخوایین. فکر میکنم بشه این تعداد خطوط رو به 16 تا هم افزایش داد. یعنی در اصل سرعت بازسازی 60 هرتز و 256 نقطه RGB (یا 768 LED). از بابت آی سی هم خیلی مهم نیست. ببینین با کدوم راحتترین. ارزونتره. کارتون رو راه میندازه. برنامه و پروگرامر راحتتر و ارزونتر و بی دردسر تری داره. من خودم 9500XL رو ترجیح میدم.
                          اما با توجه به تعداد پایه های این مدل تعداد ماکزیمم خطوط 7 تا میشه. البته اگر از 74138 خارجی استفاده نکنین.

                          دیدگاه


                            #14
                            پاسخ : ایجاد تعداد زیادی pwm موازی در fpga

                            حالا اگه بخوایین میشه این میزان رو با مالتی پلکس کردن اضافه کرد. ضمنا شما میتونین با یک مالتی پلکسر ساده مثلا 8 سطر متفاوت رو آدرس دهی کنین که هر سطر با تاخیر یک میلی ثانیه انتخاب بشه که البته زمان بازسازی فریم به 8 میلی ثانیه افزایش پیدا میکنه
                            آقا رضا میشه تاخیر رو کمتر کرد ؟ 1 میلی ثانیه به نظر من زیاد هستش. ما میتونیم بعد از زمان 3.8 میکرو ثانیه که شما برای 16 پیکسل حساب کردین سطر بعد رو فعال کنیم حالا فرض کنیم تعداد سطرها رو 6 در نظر بگیریم که بشه جمعا 96 تا پیکسل. حالا این 6 تا سطر رو مرتبا سوییچ کنیم (با توجه به سرعت رفرش بالا خطای دید بوجود میاد )و در یک مدت زمان مشخصی به این 96 تا پیکسل یک تنظیم رنگ ثابت بدیم و بعدش با توجه به اطلاعات بعدی که از حافظه میخونیم توی بازه زمانی بعدی یه سری تنظیم رنگ دیگه رو برای 96 تا پیکسل ست کنیم و همینطوری الی آخر.


                            ممنون
                            "در عجبم از مردمي که خود زير شلاق ظلم و ستم زندگي مي کنند و بر حسيني مي گريند که آزادنه زيست" شريعتي
                            در جهان روشنايي هايي وجوددارد كه در عميق ترين ظلمات نهانند.

                            دیدگاه


                              #15
                              پاسخ : ایجاد تعداد زیادی pwm موازی در fpga

                              آقا جون 1 میلی ثانیه برای ایجاد زمان مورد نیاز برای روشنایی led هاست و ربطی به pwm نداره. ضمنا این سرعت دست شماست. چون یکی از کلاک های مورد نیاز مدلتون میشه. در طول این زمان یک میلی ثانیه سطر انتخابی شما مرتبا با pwm مربوطه با سرعت 3.8 میکرو ثانیه داره بازسازی میشه. ولی برای قابل دید بودن این میزان تاخیر ضروریه.
                              من این 1 میلی ثانیه رو برای ایجاد یک پترن ثابت روی 8 سون سگمنت استفاده کردم که بنظر خیلی خوب میومد. حالا شما اینجا بجای یک سیگنال ثابت روی اون سون سگمنت من یک سری pwm برای تولید سطوح رنگی متفاوت روی 16*3 led در هر سطر دارین.
                              تازه اینجا این زمان 3.8 میکرو ثانیه یک زمان امن هست. ولی شاید بشه با همین مدل و با استفاده از یک sram سریعتر مثلا 20 نانو ثانیه تا حد 4*20*16 یا 1.3 میکرو ثانیه کاهشش داد.

                              ضمنا این مدل بطور نا همزمان کار میکنه. و شما زمانی که میخوایین اطلاعات رو در حافظه sram خودتون قرار بدین دسترسی cpld رو به sram قطع و سپس دوباره وصل کنین. و این بر خلاف انتظار شما اثری روی کیفیت تصویر نمیذاره. حتی بهتون بگم که برای این کار شما به cpld هم احتیاج ندارین و با یک میکرو هم میتونین این کارو بکنین.

                              دیدگاه

                              لطفا صبر کنید...
                              X