اطلاعیه

Collapse
No announcement yet.

فرق بین to و downto در تعریف یک سیگنال چند بیتی؟؟؟؟

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

    فرق بین to و downto در تعریف یک سیگنال چند بیتی؟؟؟؟

    سلام فرق بین دو خط زیر چیه؟؟؟؟ :redface:

    کد:
    signal a : bit_vector(3 downto 0);
    و

    کد:
    signal a : bit_vector(3 to 0);
    اللَّهُمَّ صَلِّ عَلَى مُحَمَّدٍ وآلِ مُحَمَّدٍ وعَجِّلْ فَرَجَهُمْ

    اگه دوس دارید سریع به جواب برسید :
    1) قبل از پرسیدن سوال، بسرچید.
    2) سوالاتون رو با جزئیات کامل مطرح کنید.

    #2
    پاسخ : فرق بین to و downto در تعریف یک سیگنال چند بیتی؟؟؟؟

    از لحاظ مقداری فرقی ندارند. تو دو تا آرایه 4 بیتی داری. فقط به نظرم جای بیت پرارزش توشون فرق داره. مگر اینکه بیای و پایینی رو اینطوری بنویسی :
    [code=vhdl]Signal a : bit_vector(0 to 3) ;[/code]
    ---------
    .
    .
    ...........

    دیدگاه


      #3
      پاسخ : فرق بین to و downto در تعریف یک سیگنال چند بیتی؟؟؟؟

      همونطوری که دوست عزیزمون اشاره کردن فرقشون در محل قرارگیری بیت های پر ارزش و کم ارزش هست یعنی MSB و LSB
      البته این خطی که نوشتین :
      signal a : bit_vector(3 to 0);
      اشتباه هست و جای 0 و سه باید عوض بشه
      You never know how strong you are , until being strong is your only choice

      دیدگاه


        #4
        پاسخ : فرق بین to و downto در تعریف یک سیگنال چند بیتی؟؟؟؟

        یعنی تو کد زیر
        کد:
         signal a : bit_vector(3 downto 0);
        بیت ها از سمت راست به چپ ارزششون زیاد میشه (مثال : 00001 یعنی الان 1 کم ارزش ترین و هرچی به چپ میریم ارزش زیاد میشه)

        ودر کد زیر هم
        کد:
         signal a : bit_vector(0 to 3);
        بیت ها از چپ به راست ارزششون زیاد میشه....


        درست گفتم؟؟
        اللَّهُمَّ صَلِّ عَلَى مُحَمَّدٍ وآلِ مُحَمَّدٍ وعَجِّلْ فَرَجَهُمْ

        اگه دوس دارید سریع به جواب برسید :
        1) قبل از پرسیدن سوال، بسرچید.
        2) سوالاتون رو با جزئیات کامل مطرح کنید.

        دیدگاه


          #5
          پاسخ : فرق بین to و downto در تعریف یک سیگنال چند بیتی؟؟؟؟

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

          دیدگاه


            #6
            پاسخ : فرق بین to و downto در تعریف یک سیگنال چند بیتی؟؟؟؟

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


            الان این دو تا با هم فرق دارن یا نه؟؟؟؟؟
            گیج گیج شدم الان...به معنای کلمه
            اللَّهُمَّ صَلِّ عَلَى مُحَمَّدٍ وآلِ مُحَمَّدٍ وعَجِّلْ فَرَجَهُمْ

            اگه دوس دارید سریع به جواب برسید :
            1) قبل از پرسیدن سوال، بسرچید.
            2) سوالاتون رو با جزئیات کامل مطرح کنید.

            دیدگاه


              #7
              پاسخ : فرق بین to و downto در تعریف یک سیگنال چند بیتی؟؟؟؟

              نوشته اصلی توسط ajapyy
              خودتو گیج نکن. تو دیجیتال همیشه بیت سمت راست کم ارزش ترین بیت هستش.
              تأیید میشه.

              در ضمن سعی کن همیشه:
              1- از نوع داده std_logic_vector استفاده کنی به جای bit_vector (همچنین std_logic به جای bit)
              2- از downto استفاده کنی.
              3- اندیس low صفر باشه.
              بعداً که جلوتر بری دلیل این توصیه رو متوجه میشی.

              البته این قانون برای آرایه ها لازم نیست استفاده کنی مثلاً میتونی یک آرایه به شکل زیر استفاده کنی:
              [code=vhdl]subtype Byte_stype is std_logic_vector(7 downto 0);
              type Byte_Array_type is array (integer range<&gt of Byte_stype;
              signal Serial_String : Byte_Array_type(1 to 10) := (others => (others => '0&#039);[/code]

              نکته دیگری که در مورد to و downto وجود داره اینه که وقتی متغیر/سیگنالی از نوع to تعریف شده باشه، نمیشه به متغیر/سیگنال دیگه که با downto تعریف شده انتساب داده بشه و برعکس. مثلاً کد زیر با خطا مواجه میشه:
              [code=vhdl]signal a : std_logic_vector(7 downto 0);
              signal b : std_logic_vector(0 to 7);
              .
              .
              .
              a <= b;

              OR

              b <= a;[/code]
              لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
              لطفاً سؤالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
              با تمام وجود گناه کرديم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنيم چه مي کند؟"دکتر شريعتي"
              اگر جايي که ايستاده ايد را نمي پسنديد، عوضش کنيد شما درخت نيستيد!! "پاسكال"
              يا به اندازه ي آرزوهايت تلاش کن يا به اندازه تلاشت آرزو کن. "شکسپير"

              دیدگاه


                #8
                پاسخ : فرق بین to و downto در تعریف یک سیگنال چند بیتی؟؟؟؟

                والا فرقشون رو هنوز نفهمیدم.......که به نظرم فعلا زیاد مهم نیست.... و همون حرف دوستمون رو گوش میکنیم و موارد 2 و 3 رو قبول میکنیم ^_^....
                فقط میشه برا مورد 1 دلیلش رو بگی؟؟؟؟
                اللَّهُمَّ صَلِّ عَلَى مُحَمَّدٍ وآلِ مُحَمَّدٍ وعَجِّلْ فَرَجَهُمْ

                اگه دوس دارید سریع به جواب برسید :
                1) قبل از پرسیدن سوال، بسرچید.
                2) سوالاتون رو با جزئیات کامل مطرح کنید.

                دیدگاه


                  #9
                  پاسخ : فرق بین to و downto در تعریف یک سیگنال چند بیتی

                  سلام

                  مهندس اصلا خودت رو گیج نکن چیز خاصی نیست. به مثال زیر توجه کن:

                  [code=vhdl]

                  signal t1 : std_logic_vector(7 downto 0); --7th bit is MSB and 0th bit is LSB here.
                  signal t2 : std_logic_vector(0 to 7); --0th bit is MSB and 7th bit is LSB here.

                  [/code]

                  تنها دلیلش هم که هر دو دستور موجود هست اینه که توی نوشتار همیشه بیت پر ارزش سمت چپ قرار داره همین!

                  دیدگاه


                    #10
                    پاسخ : فرق بین to و downto در تعریف یک سیگنال چند بیتی؟؟؟؟

                    نوشته اصلی توسط md3848
                    والا فرقشون رو هنوز نفهمیدم.......که به نظرم فعلا زیاد مهم نیست.... و همون حرف دوستمون رو گوش میکنیم و موارد 2 و 3 رو قبول میکنیم ^_^....
                    فقط میشه برا مورد 1 دلیلش رو بگی؟؟؟؟
                    1- نوع std_logic علاوه بر مقادیر 0 و 1 از X, U, Z, - هم پشتیبانی میکنه که در شبیه سازی میتونه مفید باشه.
                    2- Core های نرم افزاری از این نوع استفاده می کنند.
                    3- همه برنامه نویس های FPGA از این نوع استفاده می کنند.
                    لطفاً برای انجام پروژه های دانشجویی پیام خصوصی نفرستید.
                    لطفاً سؤالاتی که در انجمن قابل طرح شدن هستند پیام خصوصی نکنید.
                    با تمام وجود گناه کرديم اما نه نعمتش را از ما گرفت نه گناهان ما را فاش کرد اطاعتش کنيم چه مي کند؟"دکتر شريعتي"
                    اگر جايي که ايستاده ايد را نمي پسنديد، عوضش کنيد شما درخت نيستيد!! "پاسكال"
                    يا به اندازه ي آرزوهايت تلاش کن يا به اندازه تلاشت آرزو کن. "شکسپير"

                    دیدگاه

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