.


:




:

































 

 

 

 


process(st,one,two,three) begin




Case st is

when 1 => cntrl<= one;

when 2 to 3 => cntrl<= two; when others => cntrl<= three,- end case; end process;

, case. , , \\ . , , .

assert

, . , , assert .

, . , , wait - . , .


, , , wait. , .. .

, , . , , postponed, .

. :

\ ::= \ :

\ [generic (\ \ {, \ \});] [port map ( \ { \})]; \::= [component] \

I entity \ [ ] (configuration \ \

( - ) ( - ), , . , .

- . , . , , , .

\ \ - . , (), .


- , . "=>", . , .

, , use , . . , '' - . - " " (black box), EDIF- , .

out inout . , open.

. , , , :

u_rg: RG16 port map (clk=>clk,

E => \__\,

DI => D,

D0(15)=> open,

D0(14)=> \_\,

D0(13 downto 0)=>\_\);

, :

Dl => conv_integer(D(n-l downto 0)); To_Bit(DO(14)) => \_0\,

.. DI in D, DO(14) out \_\ .


, -, , . , , , DO(15)=>openf , - , , - , D0(15).

. , , , , , , , . , .

- .

, DI CLK:

entity RGn is

generi c(n: i nteger);

port(CLK:bit; DI, DO: bit_vector(n-l downto 0)); end entity;

architecture behav of RGn is begin process(CLK) begi n

if clk='1' and CLK'event then

DO<=Dl; end process; end architecture behav;

= 8:

U_RG8: entity RGn(behav) generic map(8),

port map (CLK,DI=>DATA_IN,DO=>DATA_OUT);

generate

, generate. :


\ generate\::= \\: for \\ in \\ generate

[{\ 6\} begin]

{ \ \} end generate [\\];

generate , \\ - generate, \\ - . , loop. , .

loop, , generate , .

generate FD Xilinx, UNlslM.umsim_viTAL DI do, - clk.

signal t: std_logic_vector(l to n+1);

t(i)<=DI;

FIFO: for i in 1 to n generate

u_ tt: fd(c=>clk, D=>t(i), Q=>t(i+1)); end generate; D0<=t(n+1);

, generate. :

generate\::=\MeTKa\:if \6 \ generate

[ {\ 6\} begin]

{ \ \} end generate [\\];

, , , . , . :


RESn: if \_1_1_\=1 generate

RESl:for i in DATA^BUS1range generate

U_ RES: PULLUP(DATA_BUS(i));

end generate; end generate;

\_1_1_\ 1, DATA_BUS PULLUP unisim.

block

VHDL . :

\ block\::=[\\]: block [\ ] [is] [(\ \

{; \ \});] [generic (\ \

{, \ \});] [port (\ \ {;\ \});] [port map (\ \

{ \})]; {\ 6\} begin

{\ \ } end block [\\];

generic , generic map, , , , . , .

guard, () guard. .

, VHDL : ( ). , .. .


. -, .

, , , . , VHDL .

, -, . -, , guarded. , 1 2:

signal ,,: out integer bus:=0; disconnect c:integer after 2 ns;

Bl: block (sel = 1) is begin

<= guarded A;

end block Bl;

B2: block (sel = 2) is begin

<= guarded D;

end block B2;

, , 1 sel (.. guard<=(sel = 1) true) D . guard = false, , .. . , disconnect, . 2 .

, , , register , bus. register bus . , - . , .. guard (guards) . ,


VHDL .

-. , , , register, bus, disconnect, , . .

, . , , .

, , , , . , , .

, , , . , , . , .

, , , generate block. , .

, , . , , , . , , block , .

, .





:


: 2017-02-11; !; : 383 |


:

:

: , .
==> ...

1688 - | 1653 -


© 2015-2024 lektsii.org - -

: 0.023 .