Скачиваний:
31
Добавлен:
29.12.2022
Размер:
8.96 Mб
Скачать

Обращение к элементам вектора (3)

nЕсли число разрядов в левой части выражения больше чем в правой, то недостающие разряды правой части дополняются нулями (старшие разряды).

nЕсли число разрядов в левой части выражения меньше чем в правой, то лишние разряды (старшие разряды) отбрасываются

91

Массив для класса данных Net

nВ стандарте 2001 года определен массив для класса

Net:

nЗадание:

-net_type [ vector range ] net_name { [ first adr : last adr] …};

n Размерность массива может быть любая

n Диапазон элементов массива (для каждого измерения) может указываться в возрастающей и убывающей последовательности.

n Максимальный размер массива по каждому измерению – 2**24 элементов

n Если vector range не задан – массив цепей (каждый элемент массива – цепь), если задан – массив векторов (каждый элемент массива – вектор)

92

Объявление и использование массива цепей

93

Объявление и использование многомерного

массива цепей

94

Цепи со знаком

nШину (вектор) можно определить как знаковую – старший разряд

– знаковый разряд и данные представлены в доп.коде.

n Задание:

net_type signed [ vector range ] net_name { [ first adr : last adr] …};

n Выводы модуля также можно определить как знаковые цепи.

95

Непрерывное назначение

Continuous Assignment

n Описывает поведение комбинационных схем

nМожет быть сделано при объявлении цепи

или

nИспользуя оператор assign

wire [15:0] tmp = d_in ;

/*implicit continuous assignment */

эквивалентно

wire [15:0] tmp; assign tmp = d_in;

Особенности непрерывного назначения

nЛевая часть оператора Left-Hand Side (LHS) должна иметь тип данных Net

nПри изменении любого операнда в правой части оператора - Right-Hand Side (RHS) оценивается значение выражения и значение цепи LHS обновляется

nRHS может быть выражением, содержащим тип net, тип variable, вызов функции (или их комбинации)

n В оператор может быть добавлена задержка

Операторы

Операторы

nГруппы операторов:

-Арифметические - Arithmetic

-Побитовые – Bit-wise

-Свертки - Reduction

-Отношения - Relational

-Равенства - Equality

-Логические - Logical

-Сдвига - Shift

nОтдельные операторы:

-Сцепления – Concatenation

-Повторения - Replication

-Проверки условия - Conditional

Операторы отношения - Relational

 

Символ

 

Функция

 

Пример

 

 

 

оператора

 

 

ain = 3’b101 ; bin = 3’b110 ; cin = 3’b01x

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

>

 

Greater than

 

ain > bin Ю 1’b0

bin > cin Ю 1’bx

 

 

 

 

 

 

 

 

 

 

<

 

Less than

 

ain < bin Ю 1’b1

bin < cin Ю 1’bx

 

 

 

 

 

 

 

 

 

 

>=

 

Greater than or

 

ain >= bin Ю 1’b0

bin >= cin Ю 1’bx

 

 

 

 

equal to

 

 

 

 

 

 

 

 

 

 

 

 

 

<=

 

Less than or

 

ain <= bin Ю 1’b1

bin <= cin Ю 1’bx

 

 

 

 

equal to

 

 

 

 

 

 

 

 

 

 

 

 

n Используется для сравнения значений

nЕсли один из операндов имеет меньший размер, то он дополняется слева необходимым числом разрядов

(дополняется нулями).

n

Возвращает 1-битное значение true (1) / false (0)

n

X и Z рассматриваются как неизвестные значения