Nhóm 14
1
z
z
-
Sequential Logic Using
UDP dùng Verilog :
:
:
1.
12
II. G 12
13
13
13
13
5. Cú pháp: 13
13
13
14
14
1.1. Cú pháp: 14
14
14
2.1. Cú pháp: 14
14
Nhóm 14
3
IV. 15
15
II. Wire: 16
III. Reg: 16
IV. Input, Output, Inout: 16
17
II. Supply 0, Supply1: 17
III. Time: 18
18
V 19
19
28
II 29
X. HÀM 30
I. Khai báo hàm: 30
30
m: 31
32
32
32
32
33
33
33
33
33
34
34
34
35
35
36
.37
a. 37
.38
Nhóm 14
5
39.40
Nhóm 14
6
1.1.
Nhóm 14
8
thái( finite-state-
Nhóm 14
9
-
-
-
-
parameter,
* which defaults to 1.
*
* RST Synchronous reset
* C Clock
* A[3:0] Data Input
* B[3:0] Data Input
* Q[9:0] Accumulator output
*/
module MAC1
(input RST, CLK,
input [3:0] A, B,
output [9:0] Q);
parameter stages = 1;
reg [7:0] mul;
Nhóm 14
11
reg [9:0] sum[stages-1:0];
integer i;
always @(posedge CLK) begin
for(i=stages-1; i>0; i = i-1)
sum[i] = sum[i-1];
if(RST)
sum[0] = 0;
n.
// Khai báo module
Module
tên file.v.
Input
Output [msb:lsb] b
Reg
Wire
Endmodule
Nhóm 14
13
II.
1. Khoảng trắng
Drive_strenght
strong1 và strong0 .
Delay
1. Các cổng cơ bản:
1.1. Cú pháp:
GATE (drive_strength)#(delays)
Delay
Nhóm 14
Nhóm 14
16
1. Cú pháp:
Wire [msb:lsb] tên
Wand
Wor
Tri
Wire c;
Wand d;
Assign d= a;
Assign
Wire
III. Reg:
Reg (register)
1. Cú pháp:
Integer
Integer
Assign
II. Supply 0, Supply1:
Nhóm 14
18
III. Time:
1. Cú pháp:
Time
Time c;
c = $time
IV. Parameter (Tham số):
1. Cú pháp:
Parameter
3b0-1< 6.
<, <=, >, >=, = =, !=.
III. Toán tử bit_wire:
~ (bitwire NOT), & (bitwire AND), | (bitwire OR), ^ (bitwire
OR).
IV. Toán tử logic:
!(NOT), && (AND), || (OR)
Wire [7:0] x, y, z;
Reg a;
if ((x= = y)&&(z)) a=1;
else a=! x;
Nhóm 14
20
V. Toán tử biến đổi:
Tên
[ ]
( )
!,~
&, |, ~&, ~|, ^, ~^
XNOR.
+, -
{ }
{{ } }
*, /, %
+, -
<<, >>
<, <=, >, >=
= =, !=
&
II. Chọn 1 phần tử bit và chọn 1 phần các bit.
1. Cú pháp:
Reg [7:0] a, b;
Reg [3:0] ls;
c = a[7] & b[7];
ls = a[7:4] + b[3:0];
III. Gọi hàm chức năng:
1. Cú pháp:
Assign a = b & c & chk_bc(b, c);
Function chk_bc;
Nhóm 14
Output [7:0] out;
Reg out;
Endmodule
Nhóm 14
24
II. Chỉ định liên tiếp:
1. Cú pháp:
Wire
Assign
Wire
Assign b = c &d;
Assign d = x | y;
III. Module instantiations:
I. Những chỉ định theo thủ tục:
II. Delay trong chỉ định:
-