Verilog-HDL для моделирования и синтеза цифровых электронных схем 966-7458-67-9

Учебное пособие содержит описание языка Verilog для автоматизации процессов синтеза и моделирования цифровых электронных

348 56 6MB

Russian Pages [221] Year 2002

Report DMCA / Copyright

DOWNLOAD PDF FILE

Verilog-HDL для моделирования и синтеза цифровых электронных схем
 966-7458-67-9

  • 0 0 0
  • Like this paper and download? You can publish your own PDF file online for free in a few minutes! Sign Up
File loading please wait...
Citation preview

я ы . «К У

я

-

У ы

ы

ы я

я»

ы .

К

Ю. .

В.В.

.А.

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 –



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

-



. :