اطلاعیه

Collapse
No announcement yet.

انتقال اطلاعات

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

    انتقال اطلاعات

    دوستان سلام
    به یک شیفت رجیستر نیاز دارم که ورودیش یه دیتای 64 بیتی و خروجی اون یک بیت باشه . یعنی بعد از گرفتن دیتا مثلا روی لبه بالا رونده ورودی را تک بیت تک بیت به خروجی ارسال کنه . هر کاری می کنم تو مرحله شبیه سازی ERROR می ده . :angry:

    #2
    پاسخ : انتقال اطلاعات

    نوشته اصلی توسط sb_844110p
    دوستان سلام
    به یک شیفت رجیستر نیاز دارم که ورودیش یه دیتای 64 بیتی و خروجی اون یک بیت باشه . یعنی بعد از گرفتن دیتا مثلا روی لبه بالا رونده ورودی را تک بیت تک بیت به خروجی ارسال کنه . هر کاری می کنم تو مرحله شبیه سازی ERROR می ده . :angry:
    چیزی که میخواین دیگه از تعریف Shift Register خارجه، در حقیقت شما یک کانتر لازم دارید که با کلاک افزایش پیدا کنه و اگه به آخر رسید رول اور کنه بره از اول. این قسمت ترتیبی مدار و انتخاب خروجی که میشه یک مدار ترکیبی مثل کد زیر:

    library ieee;
    use ieee.std_logic_1164.all;


    entity shift64 is
    port( Clk : in std_logic;
    Data : in std_logic_Vector (63 downto 0);
    SO : out std_logic);
    end shift64;

    architecture archi of shift64 is
    signal Counter64: Integer range 0 to 63 := 0;
    begin

    SO <= Data(Counter64);

    process (Clk)
    begin
    if rising_edge(Clk) then
    if(Counter64 = 63)then
    Counter64 <= 0;
    else
    Counter64 <= Counter64 + 1;
    endif;
    end if;
    end process;

    end archi;
    اسمایل، تومورو ویل بی وُرس

    دیدگاه

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