Перейти к содержанию
    

как работать с std_logic_vector?

доброго времени суток.

я очень часто видел код vhdl, где происходило прибовление 1 в типу std_logic_vector

почему у меня подобный код не работает

 

Library IEEE;
use IEEE.std_logic_1164.all;
use std.textio.all;    


entity fb is
    port ( 
clk : in std_logic_vector;
    );
end; 

architecture fr of fb is 


begin
    
    process (clk)
    variable tmp : std_logic_vector (10 downto 0);
    variable tt : std_logic_vector (10 downto 0);
    begin                                         
        
        if rising_edge ( clk ) then
            tmp := tt +1;
        end if;            
        
        
    end process;
    
end;

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

я очень часто видел код vhdl, где происходило прибовление 1 в типу std_logic_vector

почему у меня подобный код не работает

 

use IEEE.numeric_std.all;

 

предыдущий совет уже лет 5 как устарел :)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ввиду бесполезности моего ответа, удалил свое сообщение... :crying:

Изменено пользователем Vadim_nsk

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

доброго времени суток.

я очень часто видел код vhdl, где происходило прибовление 1 в типу std_logic_vector

почему у меня подобный код не работает

Начнём с того, что фраза "код не работает" ни о чём не говорит. Если вы хотите, чтобы вам помогли быстро, потрудитесь сразу предоставить макисмум информации. В первую очередь, сообщения об ошибках компилятора.

 

Library IEEE;
     use IEEE.std_logic_1164.all;
     use std.textio.all;    
     
     
     entity fb is
         port ( 
     clk : in std_logic_vector;
         );
     end;

Здесь тип сигнала немного не тот.

 

            if rising_edge ( clk ) then
                 tmp := tt +1;
             end if;

Вся математика в VHDL (за исключением "встроенных в язык" типов) находится в библиотеках. Вам уже ответили, что надо использовать стандартный пакет numeric_std из библиотеки IEEE.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

use IEEE.numeric_std.all;

 

предыдущий совет уже лет 5 как устарел :)

 

Поясните, плиз, преимущества (и недостатки, если они имеются) использования ieee.numeric_std.all по сравнению с ieee.std_logic_unsigned.all

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Поясните, плиз, преимущества (и недостатки, если они имеются) использования ieee.numeric_std.all по сравнению с ieee.std_logic_unsigned.all
Это обсуждалось не один раз. Воспользуйтесь поиском по форуму.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...