اطلاعیه

Collapse
No announcement yet.

مشکل در clock wizard 3.1 با sp6

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

    مشکل در clock wizard 3.1 با sp6

    سلام
    من می خوام با برد sp 6 که یه اسیلاتور 50mhz روش هست 2 تا فرکانس مختلف با clock wizard3.1 تولید کنم
    45.455mhz و 48.438mhz
    چون این 2 تا فرکانس رو نمیشه با یک core ساخت مجبور شدم از 2 تا core استفاده کنم
    یعنی core اول ورودی 50mhz و خروجی 48.438mhz
    core دوم ورودی 50mhz و خروجی 45.455mhz
    خوب حالا این دو تا core رو port map کردم داخل یه vhdl تا ازشون استفاده کنم
    synthes هم کردم بدون error و warning
    حالا برای impelimentation یه ucf ساختم که ورودی 50mhz اسیلاتور رو که فقط به پایه ی 14 sp6 وصل هست رو در ucf مشخص کردم ولی این error رو میده :
    NgdBuild:462 - input pad net 'i_CLK_50MHz' drives multiple buffers
    اومدم کلک بزنم و از خروجی core اول یه 50mhz هم گرفتم دادم به ورودی core دوم ولی بازم داخل impelimentation ارور داد
    خیلی خیلی واسم مهمه که این مشکل حل شه
    ممنون میشم کسی راهنمایی کنه .

    #2
    پاسخ : مشکل در clock wizard 3.1 با sp6

    برای کمک بهتر شماتیک رو بزار
    برو قسمت console و error ی که میده رو پیدا کن
    ببین روی کدوم نت ها error داده
    ---------------------------
    میتونی ورودی core دوم رو از خروجی core اول بگیری
    فقط
    تو صفحه اول تنظیمات clock wizard مطابق شکل زیر core اول و دوم را تنظیم کنید
    مهم نيست که کجايي هستي، چه رنگي هستي، به چه زبوني حرف مي زني. مهم اينه که انسان باشي.
    http://baranelec.mihanblog.com/
    آینده ای خواهم ساخت که گذشته ام در برابرش زانو بزند...

    دیدگاه


      #3
      پاسخ : مشکل در clock wizard 3.1 با sp6

      سلام masterwar_sg
      مشکلتون حل شد؟
      مهم نيست که کجايي هستي، چه رنگي هستي، به چه زبوني حرف مي زني. مهم اينه که انسان باشي.
      http://baranelec.mihanblog.com/
      آینده ای خواهم ساخت که گذشته ام در برابرش زانو بزند...

      دیدگاه


        #4
        پاسخ : مشکل در clock wizard 3.1 با sp6

        [s]سلام نه هنوز یه error جدید میده [/s]
        اطلاعات core اول : یه core با ورودی و خروجی 50 مگا هرتز در وضعیت single ended clock capable pin
        core1 : clk_gen_13
        PORT MAP
        (
        I => i_CLK_50MHz,
        O => s_CLK_50MHz
        );
        اطلاعات core دوم : یه core با ورودی 50 و خرجی مثلا 40 در وضعیت Global buffer که ورودی این core خروجی core اول هست

        core2 : clk_gen_13
        PORT MAP
        (
        I =>s_CLK_50MHz,
        O => s_CLK_40MHz
        );

        این هم error که میده

        ERROR:Place:1136 - This design contains a global buffer instance,
        <core1/clkout1_buf>, driving the net, <s_CLK_50MHz>, that is driving the
        following (first 30) non-clock load pins.
        < PIN:core2/clkin1_buf.I0; >
        This is not a recommended design practice in Spartan-6 due to limitations in
        the global routing that may cause excessive delay, skew or unroutable
        situations. It is recommended to only use a BUFG resource to drive clock
        loads. If you wish to override this recommendation, you may use the
        CLOCK_DEDICATED_ROUTE constraint (given below) in the .ucf file to demote
        this message to a WARNING and allow your design to continue.
        < PIN "core1/clkout1_buf.O" CLOCK_DEDICATED_ROUTE = FALSE; >
        ERROR:Pack:1654 - The timing-driven placement phase encountered an error.

        تو ارور راه حل رو نوشته بود : اینو به فایل ucf اضافه کردم درست شد
        PIN "core1/clkout1_buf.O" CLOCK_DEDICATED_ROUTE = FALSE;
        حالا من یه سرچ کردم خیلی جاها برای ساخت یه کلاک از درستور زیر استفاده میکنن ولی با این هم error داد
        BUFG_50MHz : BUFG
        PORT MAP
        (
        O => s_CLK_50MHz,
        I => s_CLK_50MHz_tmp
        );

        دیدگاه


          #5
          پاسخ : مشکل در clock wizard 3.1 با sp6

          حالا یه مشکل جدید
          اسپارتان من سری 6 مدل sc6slx9 هست که 2 تا pll بیشتر نداره
          اینجور که دیدم (شاید اشتباه میگم) با هر PLL میشه یه CORE ساخت
          من میخوام 30 تا کلاک تولید کنم پس حداقل 6 تا PLL لازم دارم
          آیا تکنیکی هست که دیگه این مشکل به وجود نیاد؟
          دوستان نظرتون چیه؟

          دیدگاه


            #6
            پاسخ : مشکل در clock wizard 3.1 با sp6

            راهی که من به ذهنم می رسه اینه که
            یک کلاک فرکانس بالا بسازی
            و بعد با استفاده از برنامه VHDL (تقسیم کننده فرکانس) کلاک های مورد نظرتو تولید کنی
            مهم نيست که کجايي هستي، چه رنگي هستي، به چه زبوني حرف مي زني. مهم اينه که انسان باشي.
            http://baranelec.mihanblog.com/
            آینده ای خواهم ساخت که گذشته ام در برابرش زانو بزند...

            دیدگاه


              #7
              پاسخ : مشکل در clock wizard 3.1 با sp6

              الا من یه سرچ کردم خیلی جاها برای ساخت یه کلاک از درستور زیر استفاده میکنن ولی با این هم error داد
              نقل قول
              BUFG_50MHz : BUFG
              PORT MAP
              (
              O => s_CLK_50MHz,
              I => s_CLK_50MHz_tmp
              );
              این فقط یه بافر گلوبال یا عمومیه و کلاک درست نمی کنه.
              مهم نيست که کجايي هستي، چه رنگي هستي، به چه زبوني حرف مي زني. مهم اينه که انسان باشي.
              http://baranelec.mihanblog.com/
              آینده ای خواهم ساخت که گذشته ام در برابرش زانو بزند...

              دیدگاه


                #8
                پاسخ : مشکل در clock wizard 3.1 با sp6

                یه ایراد جدید
                من با core clock wizard یه فرکانس 50MHz ساختم .بعد با کد vhdl فرکانس رو تقسیم کردم و 50khz درست کردم
                بعد پیاده کردم رو fpga
                بعد با اسکوپ دیجیتالی تست کردم
                حدود 3hz تلرانس داره
                این تلرانس خیلی زیاد هست برام
                من حدود0.5 هرتز تلرانس می خوام
                نظر شما چیه ؟؟

                دیدگاه

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