348 56 6MB
Russian Pages [221] Year 2002
я ы . «К У
я
-
У ы
ы
ы я
я»
ы .
К
Ю. .
В.В.
.А.
Verilog-HDL я э
я ы
ы
У П а ц Ю.П. К а
У
И а 2002
а
ф
. . .,
я
ы
ГГУ
а
.П
а
я
П
и лови
,
,
, .
-
, ,
-
(HDL). «
-
А) – » »,
» (
« « «
,
», ( «А »
,
«
, «
», »
Aldec Inc. .
,
,
-
Verilog. (
,
)– -
).
-
4
я
Verilog-HDL
я
ы э
ы
.
-
/
HDL,
, , .
. Verilog-
, ,
,
Verilog.
Verilog-
Active-HDL, . , . Verilog(
) . Verilog,
-
.
-
, ,
. .
Verilog
– , DRAM. (
)
,
, .
, -
, .
Verilog Active-HDL, .
У
5 ,
,
-
-
, . -
. -
, , – . А Aldec Inc. (
А),
-
.
А
Active-HDL 5.1 А .
А . .
, ),
( ,
. .
)
,
( . А. .
(
)
, , .
-
Р
П щ 1.
а ии итат ю
ч
ч Verilog:
К
:
Courier, module 2.
-
if
И
repeat
,
-
, Courier: Data_Flow Setting_Point RDX 3.
Ч
,
,
Courier:
8'b1011_0101 4.
4b'zz11 4e10
«String»
К Roman: // П
г
Times New
, е
щ
// Asynchronous connection
че ы ех
ы
че ч
Вв
ни
Verilog
, ,
,
-
Verilog . :
-
, , . . ,
HDL (Hardware Description Language – ), , , , . К ,
-
(
,
«А
VHDL
-
»)
HDL . Verilog –
.
-
, 70%
-
8
Verilog-HDL
я
ва я
а
вы э
ы
[26].
.К
, ,
.
: -
, , . . ,
,
, .
-
, . .
. HDL-
,
, ,
– , .
, -
-
-1я я
Verilog
я
FPGA-
CPLD-
1.1.
.
яя
я
1.1.1. О щ я х г
е е
я
ег
г (
х хе
)
FPGA
(Field
Programmable Gate Array) [2; 9; 14; 18].
, .Э , : ,
, ,
FPGA, , -
10
я
Verilog-HDL
я
ы э
ы
,
-
. ,
, [13]. ,
, FPGA
, .
-
FPGA[5; 6] [2; 10; 11; 21]. 1.1.2. И
ег
FPGA-
е хе [18]. / ,
,
-
FPGA-
(
-
,
).
, .
,
.
-
FPGA, , .
(
). « .
. ,
2000
2
,
,4
,
(
)
» -
. . .
-
§У 1. П
яы
я
Verilog
я
ы
11 [18] ,
-
. . FPGA.
-
, ,
. FPGA
-
, . Xilinx Inc. FPGA
,
[32]. ,
,
. FPGA , ,
, . -
, FPGA-
.
, FPGA. –
,
-
, ,
. .
-
, ,
,
.
12
я
Verilog-HDL
я
ы э
ы
CPLD. , ,
, .
-
CPLD-
. CPLD
-
. 1.1.3. А х
е
ИМС CPLD CPLD (Complex Programmable Logic ) Xilinx 9500 [18]. :
Device – І •
9500 JTAG-
• •
/ щ GSR,
(
IEEE Std. 1149.1) ИМС [30];
-
(І/О); :
GCK, GTS.
CPLD-
/
, ,
, , -
/ /
. , . (
) »
(
18
) 18
«36
36
–1
-
. /
, -
,
, /
(
). CPLD,
,
,
.
§У 1. П
яы
я
Verilog
LD (
я
ы
13
FPGA) ,
,
-
.
LD ) .
(
-
, CPLD
-
. LD-
FPGA-
, , .
§У 1. П
яы
я
Verilog
я
1.2.
а
я
ы
13
яя
а
а Verilog
а
,
,
[13; 28; 31].
1.2.1.
щ
ы
, -
«
» [28]
[13].
-
,
, ,
, . .
. ,
,
, .
,
14
я
Verilog-HDL
я
, Verilog , « Verilog,
ы э
ы
, (
)
.
-
» . -
. , ,
,
,
-
, .
.
(
-
) , .
. ,
. Verilog
CASE-
RASSP Taxonomy . ,
, Working Group [31].
, ,
. ., .
§У 1. П
яы
я
Verilog
я
1.2.2. К RASSP Taxonomy Working Group ,
ы
15 щ
–
[31]:
П в
ая -
.Э . .
,
-
, ,
. .,
– (
)
-
. . Ф
а
ая .
-
(
,
). .
.
С
-
. .
,
,
-
. . ,
.
, .
. -
16
Verilog-HDL
М
я
я
в
ы э
ы
– , . . .
М
а ,
,
,
-
. . . 1.2.3. 1.2.2,
-
,
,
. . / Accumulator of complex numbers),
(MAC – Multiplier/ . A˙
B˙,
-
Re˙s, . [24]
(
)
:
R e&s (τ ) = ∫ A& (t ) × B& (t ) dt , τ
0
A˙(t)
B˙(t) –
(1.1)
t, t ` [0, τ]; τ –
-
.
,
/ ,
§У 1. П
яы
я
Verilog
я
ы
17
. 1.1.
A: Complex
Res: Complex B: Complex
MAC /
. 1.1.
(1.1). ,
, . . , .
, (
)
(
.
T -
, ).
,
Verilog -
. Verilog(
).
. 1.2
MAC .
(
. 1.2) ,
,
-
18
я
Verilog-HDL
я
ы э
ы
.
Re Res [ n ] = ∑ (Re A[i ] ⋅ Re B[i ] − Im A[i ] ⋅ Im B[i ]);
:
n
i =1
Im Res [ n ] = ∑ (Im A[i ] ⋅ Re B[i ] − Re A[i ] ⋅ Im B[i ]),
(1.2)
n
i =1
Re Res –
(1.3)
MAC Re˙s; Im Res – Re˙s; Re A, Re B – A˙
B˙,
; Im A, Im B –
A˙
B˙,
.
Re_A: Real Im_A: Real Re_Res: Real Im_Res: Real Re_B: Real Im_B: Real
MAC MAC
. 1.2.
,
, (1.1),
(1.2), (1.3)
A˙(t)
,
i ∈ {0 ... n }, t = i × T , T = τ
B˙(t)
-
A[i], B[i].
n
.
, » ( . 1.2), (1.2), (1.3) –
«
-
MAC .
§У 1. П
яы
я
Verilog
я
ы
19 Verilog
,
real,
MAC
-
,
real .
, (
CLK
RST) MAC. . 1.3.
Re_A_Mantissa(42:0) Re_A_Order(4:0)
Im_A_Mantissa(42:0) Im_A_Order(4:0) Re_Res_Mantissa(42:0) Re_Res_Order(4:0) Im_Res_Mantissa(42:0) Im_Res_Order(4:0) Re_B_Mantissa(42:0) Re_B_Order(4:0)
Im_B_Mantissa(42:0) Im_B_Order(4:0) CLK RST
MAC . 1.3.
MAC
20
я
Verilog-HDL
я
ы э
ы
, «
-
/
Verilog-
».
,
,
,
-
. 1.2, , FPGA
CPLD.
Verilog (
MAC . 1.3) -
.
, , ., . 1.2.4. К ?
-
,
-
, ,
: .
,
, .
•
: щ
(
•
); .
( )
-
. , ,
.
§У 1. П
яы
я
Verilog
я
ы
21
. –
[1]. )
(
-
, . , Э
. -
( ) , • • • •
-
. Verilog
[28]: ; ; ,
,
;
.
( )
-
. , а Verilog
–
,
-
. ,
. . У
а
– .
,
Verilog, , .
,
-
22
Verilog-HDL
я
я
–
ы э
ы
,
, ,
( ,
. .). Verilog . В Verilog
–
,
. ,
-
. . [7; 19; 22]. FPGA-
,
, . -
,
. а
(Register transfer level), . Verilog, .
,
-2Э е е ты я ы а Verilog Д
Verilog, ,
,
.
, Verilog,
-
.
ASCII, VHDL, Verilog
Verilog
С .П (
Verilog ),
, , Verilog
2.1. К
,
. . .
е тар
в я ы е Verilog
С , (
).
, ( ).
-
24
Verilog-HDL
.Н
,
я
я
ы э
ы
Active-HDL , :
-
//------------------------------------------------// // Title : Full_Adder // Design : Verilog_book // Author : serh_syd // Company : NPK_SIGNAL // //------------------------------------------------// // File : a.v // Generated : Wed Jul 28 15:41:01 2002 // From : interface description file // By : Itf2Vhdl ver. 1.20 // //------------------------------------------------// // Description : // //-------------------------------------------------
П Active-HDL С . П
,
. . .
« // »
, .Д « /* » (
)
« */ » (
// К assign a = z // К
). Н :
-
§У 2. Э
ыя ы
25
Verilog
/* К К /* М ю module Reg01 (a, b, c)
*/ ,
ю
-
assign a = 1; */
Verilog ,
,
-
: /* ++ /*
*/ ++ */
: /* В // */ // Е
/*
*/
Учеб е
с бие
25
2.2. О е ации Verilog . У :
, , // ~ э // B – э
A = ~B;
–
я
и
я
ия НЕ,
З
: A = B + С; // + э
и
я
ия, B, С – э
ы
4.1.
26
Verilog-HDL
я
я
ы э
ы
.
2.3. Чи
вые
а
ы
Verilog
-
–
. :