ورود به حساب ثبت نام جدید فراموشی کلمه عبور
برای ورود به حساب کاربری خود، نام کاربری و کلمه عبورتان را در زیر وارد کرده و روی «ورود به سایت» کلیک کنید.





اگر فرم ورود برای شما نمایش داده نمیشود، اینجا را کلیک کنید.









اگر فرم ثبت نام برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.









اگر فرم بازیابی کلمه عبور برای شما نمایش داده نمی‌شود، اینجا را کلیک کنید.





کاربران برچسب زده شده

نمایش نتایج: از 1 به 6 از 6
  1. #1
    2012/10/06
    قم
    23
    0

    شمارش تعداد بیت های یک در vhdl



    سلام خدمت دوستان عزیز و خداقوت



    بنده یه پروژه دارم که عملکرد آن به این شکله

    در صورت یک بودن بیت start،ورودی را گرفته و تعداد بیت های یک آن را بشمارد. سپس در صورت زوج بودن نتیجه، عدد یک و در غیر اینصورت، عدد صفر را به خروجی انتساب دهد. و همین روند تکرار شود.

    میخوام با برنامه modelsim پروژه رو بنویسم

    اگر دوستان لطف کنند به بنده کمک کنند ممنون میشم
  2. #2
    2012/05/06
    27
    0

    پاسخ : شمارش تعداد بیت های یک در vhdl

    سلام دوست عزیز
    اگر هدفت فقط مشخص کردن تعداد 1 ها هست که بنظرم از xor استفاده کن
    به این صورت که همه بیت های داده ها رو با هم xor کن که اگر تعداد 1ها زوج باشه صفر میده و اگر فرد باشه 0 میده که میتونی با ی not همون خروجی ای رو که میخوای بسازی .
    MRM
  3. #3
    2014/11/30
    38
    0

    پاسخ : شمارش تعداد بیت های یک در vhdl

    سلام
    ورودی پرالل هست یا سریال؟
    اگه پارالل باشه همه را به هم xnor کن و بده به خروجی. به عنوان مثال اگه ورودیت چهاربیت موازی هست:

    کد:
    assign out = start ? (in1 ^~ in2 ^~in3 ^~in4) : 1b'0;
    کد به زبان وریلاگ هست!
    اگه سریال وارد میشه با توجه به تعداد بیت های ها یه کانتر بذار یه پکیج ذخیره کن اخرین داده را که گرفتی xnor کن و بده به خروجی.
  4. #4
    2012/10/06
    قم
    23
    0

    پاسخ : شمارش تعداد بیت های یک در vhdl

    ممنون از راهنمایی تون
    نه ورودی رو خودم وارد میکنم یعنی کاربر وارد میکنه

  5. #5
    2012/10/06
    قم
    23
    0

    پاسخ : شمارش تعداد بیت های یک در vhdl

    کدی که قبل از ایجاد تایپیک نوشتم این بود
    ولی خب ارور میده و بنده متوجه نمیشم مشکلش چیه
    کد:
    entity shomaresh is
     port (
      output : out std_logic;
      start: in std_logic ;
      clk: in std_logic ;
      input: in bit_vector (3 downto 0));
    end entity;
    architecture pr_arch of shomaresh is
     begin
      process (clk)
       variable temp : integer range 0 to 3 :=0;
       variable temp2 : integer range 0 to 3 :=0;
       begin
       if(clk'event and clk='1') then
        if (start='1') then
         
         if (input(0)='1') then 
           temp:=temp+1;
          elsif (input(1)='1') then
          temp:=temp+1;
          elsif (input(2)='1') then
          temp:=temp+1;
          elsif (input(3)='1') then
          temp:=temp+1;
         end if;
         temp2 := temp mod 2;
        
             output <= '1' when temp2="xxxx" else
                  '0';
        end if;
      end if;
     end process;
    end pr_arch;
  6. #6
    2012/05/06
    27
    0

    پاسخ : شمارش تعداد بیت های یک در vhdl

    این نمونه کد آسنکرون
    کد:
    entity shomaresh is
     port (
      output : out std_logic;
      start: in std_logic ;
      clk: in std_logic ;
      input: in std_logic_vector (3 downto 0));
    end entity;
    architecture pr_arch of shomaresh is
     begin
      output <= (input(0) xnor input(1) xnor input(2) xnor input(3)) when start = '1' else 'Z';
    end pr_arch;
    اینم نمونه کد سنکرون
    کد:
    entity shomaresh is
     port (
      output : out std_logic;
      start: in std_logic ;
      clk: in std_logic ;
      input: in std_logic_vector (3 downto 0));
    end entity;
    architecture pr_arch of shomaresh is
     begin
      process(clk)
    	 
    		begin
    			if rising_edge(clk) then
    				if start = '1' then
    					output <= input(0) xnor input(1) xnor input(2) xnor input(3);
    				else
    					output <= 'Z';
    				end if;
    			end if;
    	end process;
    end pr_arch;
    هر دوتا کد تست شدن و جواب میدن
    موفق باشید
    MRM
نمایش نتایج: از 1 به 6 از 6

موضوعات مشابه

  1. شمارش تعداد پالس در یک ثانیه
    توسط saeid93 در انجمن PLD , SPLD , GAL , CPLD , FPGA
    پاسخ: 0
    آخرين نوشته: 2015/08/25, 15:22
  2. روشي جهت شمارش تعداد اجسام
    توسط asp.net در انجمن ابزار دقیق
    پاسخ: 14
    آخرين نوشته: 2013/07/15, 18:06
  3. کمک در شمارش تعداد کلیک بر روی سوئیچ ها
    توسط orbital1 در انجمن میکروکنترلرهای AVR
    پاسخ: 2
    آخرين نوشته: 2012/06/23, 15:50
  4. شمارش تعداد دور موتور با سنسور اثر هال؟
    توسط majid.4206 در انجمن میکروکنترلرهای AVR
    پاسخ: 10
    آخرين نوشته: 2010/08/11, 15:52
  5. شمارش تعداد حرکت رفت و بر گشتی
    توسط glorious_rs در انجمن سایر مطالب مرتبط با ميکرو ها و پروسسورها
    پاسخ: 7
    آخرين نوشته: 2008/08/06, 14:52

کلمات کلیدی این موضوع

علاقه مندي ها (Bookmarks)

علاقه مندي ها (Bookmarks)

مجوز های ارسال و ویرایش

  • شما نمیتوانید موضوع جدیدی ارسال کنید
  • شما امکان ارسال پاسخ را ندارید
  • شما نمیتوانید فایل پیوست کنید.
  • شما نمیتوانید پست های خود را ویرایش کنید
  •