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

Как обрезать нижние биты параметра?

Предположим, у модуля есть некий вектор и параметр-число. Например:

parameter TEST_PARAM = 123;
reg [7:0]test_reg;

В блоке always этому регистру можно присвоить значение параметра:

test_reg[7:0] <= TEST_PARAM;

Возможно ли сообщить регистру только верхние биты параметра? Как-нибудь так:

test_reg[7:5] <= TEST_PARAM[7:5];

 

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


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

а стандарт что говорит на тему нетипизированных параметров?

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


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

3 hours ago, des00 said:

а стандарт что говорит на тему нетипизированных параметров?

Что без явного указания типа parameter принимает тип назначаемого значения.

То есть  в варианте TC это  будет  равнозначно  parameter integer TEST_PARAM  = 5;  и можно смело брать отдельные диапазоны бит. 

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


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

10 hours ago, RobFPGA said:

Что без явного указания типа parameter принимает тип назначаемого значения.

То есть  в варианте TC это  будет  равнозначно  parameter integer TEST_PARAM  = 5;  и можно смело брать отдельные диапазоны бит. 

вот если бы ТС так ответил, это означало бы что мой вопрос достиг своей цели: сподвигнуть его прочитать стандарт. А ответ от гуру, дал ему только рыбу вместо удочки (с). 

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


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

20 hours ago, VoltageCurrent said:

Предположим, у модуля есть некий вектор и параметр-число. Например:


parameter TEST_PARAM = 123;
reg [7:0]test_reg;

В блоке always этому регистру можно присвоить значение параметра:


test_reg[7:0] <= TEST_PARAM;

Возможно ли сообщить регистру только верхние биты параметра? Как-нибудь так:


test_reg[7:5] <= TEST_PARAM[7:5];

 

Рекомендую смело пробовать (не исключая раскуривание стандартов) и смотреть в тестах чего получается. В конечном итоге только там истина.

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


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

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

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

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

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

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

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

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

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

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