OpenCores
URL https://opencores.org/ocsvn/idea/idea/trunk

Subversion Repositories idea

[/] [idea/] [trunk/] [behavioral/] [inout_port/] [control_datain_bop.vbe] - Blame information for rev 9

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 6 marta
-- VHDL data flow description generated from `control_datain_bop`
2
--              date : Mon Aug 27 03:14:30 2001
3
 
4
 
5
-- Entity Declaration
6
 
7
ENTITY control_datain_bop IS
8
  PORT (
9
  clk : in BIT; -- clk
10
  rst : in BIT; -- rst
11
  dt_sended : in BIT;   -- dt_sended
12
  emp_buf : in BIT;     -- emp_buf
13
  en_bufin : out BIT;   -- en_bufin
14
  req_dt : out BIT;     -- req_dt
15
  dt_ready : out BIT;   -- dt_ready
16
  n_block : out BIT;    -- n_block
17
  vdd : in BIT; -- vdd
18
  vss : in BIT  -- vss
19
  );
20
END control_datain_bop;
21
 
22
 
23
-- Architecture Declaration
24
 
25
ARCHITECTURE behaviour_data_flow OF control_datain_bop IS
26
  SIGNAL current_state : REG_VECTOR(2 DOWNTO 0) REGISTER;       -- current_state
27
  SIGNAL auxinit1 : BIT;                -- auxinit1
28
  SIGNAL auxinit2 : BIT;                -- auxinit2
29
  SIGNAL auxinit3 : BIT;                -- auxinit3
30
 
31
BEGIN
32
  auxinit3 <= (not (current_state (2)) and not (rst) and dt_sended and not
33
((not (current_state (0)) and current_state (1))));
34
  auxinit2 <= (not ((not (current_state (2)) or not (current_state (0)) or
35
rst)) or (not (current_state (2)) and not (rst) and not (emp_buf)
36
and current_state (1)));
37
  auxinit1 <= (not (rst) and (current_state (2) xor current_state (0)));
38
  label0 : BLOCK ((clk and not (clk'STABLE)) = '1')
39
  BEGIN
40
    current_state (0) <= GUARDED auxinit1;
41
  END BLOCK label0;
42
  label1 : BLOCK ((clk and not (clk'STABLE)) = '1')
43
  BEGIN
44
    current_state (1) <= GUARDED auxinit2;
45
  END BLOCK label1;
46
  label2 : BLOCK ((clk and not (clk'STABLE)) = '1')
47
  BEGIN
48
    current_state (2) <= GUARDED auxinit3;
49
  END BLOCK label2;
50
 
51
n_block <= auxinit1;
52
 
53
dt_ready <= auxinit2;
54
 
55
req_dt <= ((not (current_state (2)) or not (current_state (0)) or rst)
56
and (rst or current_state (2) or (emp_buf and current_state
57
(1)) or (not (dt_sended) and not ((not (current_state (0)) and
58
current_state (1))))));
59
 
60
en_bufin <= auxinit3;
61
END;

powered by: WebSVN 2.1.0

© copyright 1999-2025 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.