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

Subversion Repositories ao68000

[/] [ao68000/] [trunk/] [doc/] [doxygen/] [html/] [classbus__control.html] - Blame information for rev 12

Go to most recent revision | Details | Compare with Previous | View Log

Line No. Rev Author Line
1 12 alfik
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
2
<html xmlns="http://www.w3.org/1999/xhtml">
3
<head>
4
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
5
<title>ao68000: bus_control Module Reference</title>
6
<link href="tabs.css" rel="stylesheet" type="text/css"/>
7
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
8
</head>
9
<body>
10
<!-- Generated by Doxygen 1.7.2 -->
11
<div class="navigation" id="top">
12
  <div class="tabs">
13
    <ul class="tablist">
14
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
15
      <li><a href="modules.html"><span>Modules</span></a></li>
16
      <li class="current"><a href="annotated.html"><span>Design&#160;Unit&#160;List</span></a></li>
17
      <li><a href="files.html"><span>Files</span></a></li>
18
    </ul>
19
  </div>
20
  <div class="tabs2">
21
    <ul class="tablist">
22
      <li><a href="annotated.html"><span>Class&#160;List</span></a></li>
23
      <li><a href="hierarchy.html"><span>Design&#160;Unit&#160;Hierarchy</span></a></li>
24
      <li><a href="functions.html"><span>Design&#160;Unit&#160;Members</span></a></li>
25
    </ul>
26
  </div>
27
</div>
28
<div class="header">
29
  <div class="summary">
30
<a href="#Inputs">Inputs</a> &#124;
31
<a href="#Outputs">Outputs</a> &#124;
32
<a href="#Signals">Signals</a> &#124;
33
<a href="#Parameters">Parameters</a> &#124;
34
<a href="#Always Constructs">Always Constructs</a>  </div>
35
  <div class="headertitle">
36
<h1>bus_control Module Reference</h1>  </div>
37
</div>
38
<div class="contents">
39
<!-- doxytag: class="bus_control" -->
40
<p>Initiate WISHBONE MASTER bus cycles.
41
<a href="#_details">More...</a></p>
42
<!-- startSectionHeader --><div class="dynheader">
43
Inheritance diagram for bus_control:<!-- endSectionHeader --></div>
44
<!-- startSectionSummary --><!-- endSectionSummary --><!-- startSectionContent --><div class="dyncontent">
45
 <div class="center">
46
  <img src="classbus__control.png" usemap="#bus_control_map" alt=""/>
47
  <map id="bus_control_map" name="bus_control_map">
48
<area href="classao68000.html" alt="ao68000" shape="rect" coords="0,56,78,80"/>
49
</map>
50
 </div><!-- endSectionContent --></div>
51
 
52
<p><a href="classbus__control-members.html">List of all members.</a></p>
53
<table class="memberdecls">
54
<tr><td colspan="2"><h2><a name="Always Constructs"></a>
55
Always Constructs</h2></td></tr>
56
 <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#ad06cdf24c29b1b82596011bac2c9169c">ALWAYS_0</a>&#160;</td><td class="memItemRight" valign="bottom"><b> ( <b><b><a class="el" href="classbus__control.html#aacaad5f66b9a4472407b0faf8e442865">CLK_I</a></b> <span class="vhdlchar"> </span></b> , <b><b><a class="el" href="classbus__control.html#afd26d1fcca322ac5eb9bd1d8e40070d2">reset_n</a></b> <span class="vhdlchar"> </span></b> )</b></td></tr>
57
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#af34450e53e6fd2fd36db7dff17caf063">ALWAYS_1</a>&#160;</td><td class="memItemRight" valign="bottom"><b> ( <b><b><a class="el" href="classbus__control.html#aacaad5f66b9a4472407b0faf8e442865">CLK_I</a></b> <span class="vhdlchar"> </span></b> , <b><b><a class="el" href="classbus__control.html#afd26d1fcca322ac5eb9bd1d8e40070d2">reset_n</a></b> <span class="vhdlchar"> </span></b> )</b></td></tr>
58
<tr><td colspan="2"><h2><a name="Inputs"></a>
59
Inputs</h2></td></tr>
60
 <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#aacaad5f66b9a4472407b0faf8e442865">CLK_I</a> &#160;</td><td class="memItemRight" valign="bottom"></td></tr>
61
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#afd26d1fcca322ac5eb9bd1d8e40070d2">reset_n</a> &#160;</td><td class="memItemRight" valign="bottom"></td></tr>
62
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlchar">[</span><span class="vhdldigit">31</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b>  </td></tr>
63
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#aacaa0a0a5bd2fca75fd2a87952a3c096">ACK_I</a> &#160;</td><td class="memItemRight" valign="bottom"></td></tr>
64
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#aebe818eef013f4d18ba9b260bb976433">ERR_I</a> &#160;</td><td class="memItemRight" valign="bottom"></td></tr>
65
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a36e423840bd01f096de364f3569f1ceb">RTY_I</a> &#160;</td><td class="memItemRight" valign="bottom"></td></tr>
66
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a8faad005aacd91a426d31af2f821a20b">ipl_i</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlchar">[</span><span class="vhdldigit">2</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b>  </td></tr>
67
<tr><td colspan="2"><h2><a name="Outputs"></a>
68
Outputs</h2></td></tr>
69
 <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar"> </span></b>  </td></tr>
70
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar">[</span><span class="vhdldigit">31</span><span class="vhdlchar">:</span><span class="vhdldigit">2</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b>  </td></tr>
71
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#accc5324e304fe8ed513657f707c70031">DAT_O</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar">[</span><span class="vhdldigit">31</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b>  </td></tr>
72
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar">[</span><span class="vhdldigit">3</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b>  </td></tr>
73
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar"> </span></b>  </td></tr>
74
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a24f98645faa8b5c8b6a919708770b3d8">WE_O</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar"> </span></b>  </td></tr>
75
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a1faf237291fb36f519f228b5ff5d005b">SGL_O</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar"> </span></b>  </td></tr>
76
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a185308dd649e2e113012e2fa73a636fa">BLK_O</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar"> </span></b>  </td></tr>
77
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a84b20fe40418386b65f4491f83d18f0d">RMW_O</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar"> </span></b>  </td></tr>
78
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar">[</span><span class="vhdldigit">2</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b>  </td></tr>
79
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#aa9086d66846a169134be074f709515d4">BTE_O</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlchar">[</span><span class="vhdldigit">1</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b>  </td></tr>
80
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar">[</span><span class="vhdldigit">2</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b>  </td></tr>
81
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a16e985d728c3c6cfc9d386fa89e77b98">reset_o</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar"> </span></b>  </td></tr>
82
<tr><td colspan="2"><h2><a name="Parameters"></a>
83
Parameters</h2></td></tr>
84
 <tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#ae669ea2b686fa66a91981cb250ebc3b1">S_INIT</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlchar">[</span><span class="vhdldigit">4</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b>  <b><span class="vhdldigit">5'd0</span><span class="vhdlchar"> </span></b></td></tr>
85
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#aef163f53a4eb195d45cfcb9027fcaf69">S_RESET</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd1</span><span class="vhdlchar"> </span></b></td></tr>
86
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#ae9a3815417309441fdd6154254f2ff5f">S_BLOCKED</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd2</span><span class="vhdlchar"> </span></b></td></tr>
87
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a129f99705777db3b90b7fd721f7ba7e1">S_INT_1</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd3</span><span class="vhdlchar"> </span></b></td></tr>
88
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a253dfab6448dcef96d643494637743a2">S_READ_1</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd4</span><span class="vhdlchar"> </span></b></td></tr>
89
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a2b4b67ddbe9f19ba9bb0d0868a887213">S_READ_2</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd5</span><span class="vhdlchar"> </span></b></td></tr>
90
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a3d60da96931415e47d0ace64778dddfa">S_READ_3</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd6</span><span class="vhdlchar"> </span></b></td></tr>
91
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd7</span><span class="vhdlchar"> </span></b></td></tr>
92
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a711b0f070226bfd72354cc22c5f0ba96">S_WRITE_1</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd8</span><span class="vhdlchar"> </span></b></td></tr>
93
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#adc8b50505723a4b117436e8c5f6834b2">S_WRITE_2</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd9</span><span class="vhdlchar"> </span></b></td></tr>
94
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a4036f3844054e5be6679c98c159d747a">S_WRITE_3</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd10</span><span class="vhdlchar"> </span></b></td></tr>
95
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a5cd75eaf03abba5a5ad4cf6ae14a0614">S_PC_0</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd11</span><span class="vhdlchar"> </span></b></td></tr>
96
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a8a9e94dfe7411c15ca111736893cdf91">S_PC_1</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd12</span><span class="vhdlchar"> </span></b></td></tr>
97
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a148ea98b9f651aca240d70af989075b9">S_PC_2</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd13</span><span class="vhdlchar"> </span></b></td></tr>
98
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#ad385dc358e8b88671205229d0a99bf1f">S_PC_3</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd14</span><span class="vhdlchar"> </span></b></td></tr>
99
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#acd4ae966e48176307fbfbe75f30d5a4a">S_PC_4</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd15</span><span class="vhdlchar"> </span></b></td></tr>
100
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#aa8a3b2bf084e2a3f1736940575538cd7">S_PC_5</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd16</span><span class="vhdlchar"> </span></b></td></tr>
101
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a754163aa3bf48e5904b596cee69af182">S_PC_6</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">5'd17</span><span class="vhdlchar"> </span></b></td></tr>
102
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a7e192ec9ff8cd25d0b7504db08ed441f">FC_USER_DATA</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlchar">[</span><span class="vhdldigit">2</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b>  <b><span class="vhdldigit">3'd1</span><span class="vhdlchar"> </span></b></td></tr>
103
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#ab691b086857ecfbec66dea2b591969c7">FC_USER_PROGRAM</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">3'd2</span><span class="vhdlchar"> </span></b></td></tr>
104
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a258422ffe3891c54d2241767c672463c">FC_SUPERVISOR_DATA</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">3'd5</span><span class="vhdlchar"> </span></b></td></tr>
105
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#afbd0803171f26175a2a3380def82a8f7">FC_SUPERVISOR_PROGRAM</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">3'd6</span><span class="vhdlchar"> </span></b></td></tr>
106
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#ae7000ccb647ae60f28953281953d9fc3">FC_CPU_SPACE</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">3'd7</span><span class="vhdlchar"> </span></b></td></tr>
107
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#a582f967db46f980510019079f564c019">CTI_CLASSIC_CYCLE</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlchar">[</span><span class="vhdldigit">2</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b>  <b><span class="vhdldigit">3'd0</span><span class="vhdlchar"> </span></b></td></tr>
108
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#ab07c676b4838f68108d87e9e64f42c95">CTI_CONST_CYCLE</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">3'd1</span><span class="vhdlchar"> </span></b></td></tr>
109
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#af8625ac9783130aa49bba8ae654ffce9">CTI_INCR_CYCLE</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">3'd2</span><span class="vhdlchar"> </span></b></td></tr>
110
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#acb4e09af86df2ea6f0da2a8f40728f33">CTI_END_OF_BURST</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">3'd7</span><span class="vhdlchar"> </span></b></td></tr>
111
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#ac907148aa83b25bcbfb6f83d70a54ca7">VECTOR_BUS_TRAP</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdlchar">[</span><span class="vhdldigit">7</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b>  <b><span class="vhdldigit">8'd2</span><span class="vhdlchar"> </span></b></td></tr>
112
<tr><td class="memItemLeft" align="right" valign="top"><a class="el" href="classbus__control.html#ab7c78d90089dcaa2127453f9006f82d8">VECTOR_ADDRESS_TRAP</a> &#160;</td><td class="memItemRight" valign="bottom"><b><span class="vhdldigit">8'd3</span><span class="vhdlchar"> </span></b></td></tr>
113
<tr><td colspan="2"><h2><a name="Signals"></a>
114
Signals</h2></td></tr>
115
 <tr><td class="memItemLeft" align="right" valign="top"><b><span class="vhdlkeyword">wire</span><span class="vhdlchar">[</span><span class="vhdldigit">31</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbus__control.html#accfafb28c124ffe3b1da8aec439bdf6e">pc_i_plus_6</a> </td></tr>
116
<tr><td class="memItemLeft" align="right" valign="top"><b><span class="vhdlkeyword">wire</span><span class="vhdlchar">[</span><span class="vhdldigit">31</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbus__control.html#a1677b7f33d7258a2506fcf16f1add1b0">pc_i_plus_4</a> </td></tr>
117
<tr><td class="memItemLeft" align="right" valign="top"><b><span class="vhdlkeyword">wire</span><span class="vhdlchar">[</span><span class="vhdldigit">31</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbus__control.html#a26acd69a146a7edd95e55bf45ee337c1">address_i_plus_4</a> </td></tr>
118
<tr><td class="memItemLeft" align="right" valign="top"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar">[</span><span class="vhdldigit">1</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbus__control.html#a61c78f21cff12a1119d1a1c59ed6eb9d">saved_pc_change</a> </td></tr>
119
<tr><td class="memItemLeft" align="right" valign="top"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar">[</span><span class="vhdldigit">4</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> </td></tr>
120
<tr><td class="memItemLeft" align="right" valign="top"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar">[</span><span class="vhdldigit">7</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbus__control.html#a596f7cdf5918ae5a1f87df17451fe122">reset_counter</a> </td></tr>
121
<tr><td class="memItemLeft" align="right" valign="top"><b><span class="vhdlkeyword">reg</span><span class="vhdlchar">[</span><span class="vhdldigit">2</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="classbus__control.html#a7975910cb7516716f91d194ff15e24d4">last_interrupt_mask</a> </td></tr>
122
</table>
123
<hr/><a name="_details"></a><h2>Detailed Description</h2>
124
<p>Initiate WISHBONE MASTER bus cycles. </p>
125
<p>The <a class="el" href="classbus__control.html" title="Initiate WISHBONE MASTER bus cycles.">bus_control</a> module is the only module that has contact with signals from outside of the IP core. It is responsible for initiating WISHBONE MASTER bus cycles. The cycles can be divided into:</p>
126
<ul>
127
<li>memory read cycles (supervisor data, supervisor program, user data, user program)</li>
128
<li>memory write cycles (supervisor data, user data),</li>
129
<li>interrupt acknowledge.</li>
130
</ul>
131
<p>Every cycle is supplemented with the following tags:</p>
132
<ul>
133
<li>standard WISHBONE cycle tags: SGL_O, BLK_O, RMW_O,</li>
134
<li>register feedback WISHBONE address tags: CTI_O and BTE_O,</li>
135
<li><a class="el" href="classao68000.html" title="ao68000 top level module.">ao68000</a> specific cycle tag: fc_o which is equivalent to MC68000 function codes.</li>
136
</ul>
137
<p>The <a class="el" href="classbus__control.html" title="Initiate WISHBONE MASTER bus cycles.">bus_control</a> module is also responsible for registering interrupt inputs and initiating the interrupt acknowledge cycle in response to a microcode request. Microcode requests a interrupt acknowledge at the end of instruction processing, when the interrupt privilege level is higher than the current interrupt privilege mask, as specified in the MC68000 User's Manual.</p>
138
<p>Finally, <a class="el" href="classbus__control.html" title="Initiate WISHBONE MASTER bus cycles.">bus_control</a> controls also two <a class="el" href="classao68000.html" title="ao68000 top level module.">ao68000</a> specific core outputs:</p>
139
<ul>
140
<li>blocked output, high when that the processor is blocked after encountering a double bus error. The only way to leave this block state is by reseting the <a class="el" href="classao68000.html" title="ao68000 top level module.">ao68000</a> by the asynchronous reset input signal.</li>
141
<li>reset output, high when processing the RESET instruction. Can be used to reset external devices. </li>
142
</ul>
143
 
144
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00748">748</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
145
<hr/><h2>Member Function Documentation</h2>
146
<a class="anchor" id="ad06cdf24c29b1b82596011bac2c9169c"></a><!-- doxytag: member="bus_control::ALWAYS_0" ref="ad06cdf24c29b1b82596011bac2c9169c" args="CLK_I, reset_n" -->
147
<div class="memitem">
148
<div class="memproto">
149
      <table class="memname">
150
        <tr>
151
          <td class="memname"><b><span class="vhdlchar"> </span></b>ALWAYS_0          <td></td>
152
          <td class="paramtype">(<span class="keywordtype"></span> <b><b><a class="el" href="classbus__control.html#aacaad5f66b9a4472407b0faf8e442865">CLK_I</a></b> <span class="vhdlchar"> </span></b>  <em><span class="vhdlkeyword"></span></em> , </td>
153
        </tr>
154
        <tr>
155
          <td class="paramkey"></td>
156
          <td></td>
157
          <td class="paramtype"><span class="keywordtype"></span> <b><b><a class="el" href="classbus__control.html#afd26d1fcca322ac5eb9bd1d8e40070d2">reset_n</a></b> <span class="vhdlchar"> </span></b>  <em><span class="vhdlkeyword"></span></em> ) </td>
158
        </tr>
159
<code> [Always Construct]</code></td>
160
        </tr>
161
      </table>
162
</div>
163
<div class="memdoc">
164
 
165
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00877">877</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
166
<div class="fragment"><pre class="fragment">
167
<a name="l00877"></a>00877 <span class="vhdlkeyword">always</span> @(<span class="vhdlkeyword">posedge</span> <a class="code" href="classbus__control.html#aacaad5f66b9a4472407b0faf8e442865">CLK_I</a> <span class="vhdlkeyword">or</span> <span class="vhdlkeyword">negedge</span> <a class="code" href="classbus__control.html#afd26d1fcca322ac5eb9bd1d8e40070d2">reset_n</a>) <span class="vhdlkeyword">begin</span>
168
<a name="l00878"></a>00878     <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#afd26d1fcca322ac5eb9bd1d8e40070d2">reset_n</a> == <span class="vhdllogic">1&#39;b0</span>) <span class="vhdlkeyword">begin</span>
169
<a name="l00879"></a>00879         <span class="vhdlchar">interrupt_mask_o</span> &lt;= <span class="vhdllogic">3&#39;b000</span>;
170
<a name="l00880"></a>00880         <a class="code" href="classbus__control.html#a7975910cb7516716f91d194ff15e24d4">last_interrupt_mask</a> &lt;= <span class="vhdllogic">3&#39;b000</span>;
171
<a name="l00881"></a>00881     <span class="vhdlkeyword">end</span>
172
<a name="l00882"></a>00882     <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#a8faad005aacd91a426d31af2f821a20b">ipl_i</a> &gt; <span class="vhdlchar">ipm_i</span> &amp;&amp; <span class="vhdlchar">do_interrupt_i</span> == <span class="vhdllogic">1&#39;b0</span>) <span class="vhdlkeyword">begin</span>
173
<a name="l00883"></a>00883         <span class="vhdlchar">interrupt_mask_o</span> &lt;= <a class="code" href="classbus__control.html#a8faad005aacd91a426d31af2f821a20b">ipl_i</a>;
174
<a name="l00884"></a>00884         <a class="code" href="classbus__control.html#a7975910cb7516716f91d194ff15e24d4">last_interrupt_mask</a> &lt;= <span class="vhdlchar">interrupt_mask_o</span>;
175
<a name="l00885"></a>00885     <span class="vhdlkeyword">end</span>
176
<a name="l00886"></a>00886     <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">do_interrupt_i</span> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
177
<a name="l00887"></a>00887         <span class="vhdlchar">interrupt_mask_o</span> &lt;= <a class="code" href="classbus__control.html#a7975910cb7516716f91d194ff15e24d4">last_interrupt_mask</a>;
178
<a name="l00888"></a>00888     <span class="vhdlkeyword">end</span>
179
<a name="l00889"></a>00889     <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
180
<a name="l00890"></a>00890         <span class="vhdlchar">interrupt_mask_o</span> &lt;= <span class="vhdllogic">3&#39;b000</span>;
181
<a name="l00891"></a>00891         <a class="code" href="classbus__control.html#a7975910cb7516716f91d194ff15e24d4">last_interrupt_mask</a> &lt;= <span class="vhdllogic">3&#39;b000</span>;
182
<a name="l00892"></a>00892     <span class="vhdlkeyword">end</span>
183
<a name="l00893"></a>00893 <span class="vhdlkeyword">end</span>
184
</pre></div>
185
</div>
186
</div>
187
<a class="anchor" id="af34450e53e6fd2fd36db7dff17caf063"></a><!-- doxytag: member="bus_control::ALWAYS_1" ref="af34450e53e6fd2fd36db7dff17caf063" args="CLK_I, reset_n" -->
188
<div class="memitem">
189
<div class="memproto">
190
      <table class="memname">
191
        <tr>
192
          <td class="memname"><b><span class="vhdlchar"> </span></b>ALWAYS_1          <td></td>
193
          <td class="paramtype">(<span class="keywordtype"></span> <b><b><a class="el" href="classbus__control.html#aacaad5f66b9a4472407b0faf8e442865">CLK_I</a></b> <span class="vhdlchar"> </span></b>  <em><span class="vhdlkeyword"></span></em> , </td>
194
        </tr>
195
        <tr>
196
          <td class="paramkey"></td>
197
          <td></td>
198
          <td class="paramtype"><span class="keywordtype"></span> <b><b><a class="el" href="classbus__control.html#afd26d1fcca322ac5eb9bd1d8e40070d2">reset_n</a></b> <span class="vhdlchar"> </span></b>  <em><span class="vhdlkeyword"></span></em> ) </td>
199
        </tr>
200
<code> [Always Construct]</code></td>
201
        </tr>
202
      </table>
203
</div>
204
<div class="memdoc">
205
 
206
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00897">897</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
207
<div class="fragment"><pre class="fragment">
208
<a name="l00897"></a>00897 <span class="vhdlkeyword">always</span> @(<span class="vhdlkeyword">posedge</span> <a class="code" href="classbus__control.html#aacaad5f66b9a4472407b0faf8e442865">CLK_I</a> <span class="vhdlkeyword">or</span> <span class="vhdlkeyword">negedge</span> <a class="code" href="classbus__control.html#afd26d1fcca322ac5eb9bd1d8e40070d2">reset_n</a>) <span class="vhdlkeyword">begin</span>
209
<a name="l00898"></a>00898     <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#afd26d1fcca322ac5eb9bd1d8e40070d2">reset_n</a> == <span class="vhdllogic">1&#39;b0</span>) <span class="vhdlkeyword">begin</span>
210
<a name="l00899"></a>00899         <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#ae669ea2b686fa66a91981cb250ebc3b1">S_INIT</a>;
211
<a name="l00900"></a>00900         <span class="vhdlchar">interrupt_trap_o</span> &lt;= <span class="vhdllogic">8&#39;d0</span>;
212
<a name="l00901"></a>00901         <span class="vhdlchar">prefetch_ir_valid_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
213
<a name="l00902"></a>00902         <span class="vhdlchar">prefetch_ir_valid_32_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
214
<a name="l00903"></a>00903         <span class="vhdlchar">prefetch_ir_valid_80_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
215
<a name="l00904"></a>00904
216
<a name="l00905"></a>00905         <span class="vhdlchar">jmp_address_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
217
<a name="l00906"></a>00906         <span class="vhdlchar">jmp_bus_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
218
<a name="l00907"></a>00907
219
<a name="l00908"></a>00908         <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
220
<a name="l00909"></a>00909         <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a> &lt;= <span class="vhdllogic">30&#39;d0</span>;
221
<a name="l00910"></a>00910         <a class="code" href="classbus__control.html#accc5324e304fe8ed513657f707c70031">DAT_O</a> &lt;= <span class="vhdllogic">32&#39;d0</span>;
222
<a name="l00911"></a>00911         <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;= <span class="vhdllogic">4&#39;b0</span>;
223
<a name="l00912"></a>00912         <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
224
<a name="l00913"></a>00913         <a class="code" href="classbus__control.html#a24f98645faa8b5c8b6a919708770b3d8">WE_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
225
<a name="l00914"></a>00914         <a class="code" href="classbus__control.html#a1faf237291fb36f519f228b5ff5d005b">SGL_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
226
<a name="l00915"></a>00915         <a class="code" href="classbus__control.html#a185308dd649e2e113012e2fa73a636fa">BLK_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
227
<a name="l00916"></a>00916         <a class="code" href="classbus__control.html#a84b20fe40418386b65f4491f83d18f0d">RMW_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
228
<a name="l00917"></a>00917         <a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &lt;= <span class="vhdllogic">3&#39;d0</span>;
229
<a name="l00918"></a>00918         <a class="code" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a> &lt;= <span class="vhdllogic">3&#39;d0</span>;
230
<a name="l00919"></a>00919         <a class="code" href="classbus__control.html#a16e985d728c3c6cfc9d386fa89e77b98">reset_o</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
231
<a name="l00920"></a>00920         <span class="vhdlchar">blocked_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
232
<a name="l00921"></a>00921         <span class="vhdlchar">data_read_o</span> &lt;= <span class="vhdllogic">32&#39;d0</span>;
233
<a name="l00922"></a>00922         <span class="vhdlchar">finished_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
234
<a name="l00923"></a>00923         <span class="vhdlchar">rw_state_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
235
<a name="l00924"></a>00924         <span class="vhdlchar">fc_state_o</span> &lt;= <span class="vhdllogic">3&#39;d0</span>;
236
<a name="l00925"></a>00925         <span class="vhdlchar">fault_address_state_o</span> &lt;= <span class="vhdllogic">32&#39;d0</span>;
237
<a name="l00926"></a>00926         <a class="code" href="classbus__control.html#a61c78f21cff12a1119d1a1c59ed6eb9d">saved_pc_change</a> &lt;= <span class="vhdllogic">2&#39;b0</span>;
238
<a name="l00927"></a>00927         <a class="code" href="classbus__control.html#a596f7cdf5918ae5a1f87df17451fe122">reset_counter</a> &lt;= <span class="vhdllogic">8&#39;d0</span>;
239
<a name="l00928"></a>00928     <span class="vhdlkeyword">end</span>
240
<a name="l00929"></a>00929     <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
241
<a name="l00930"></a>00930         <span class="vhdlkeyword">case</span>(<a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a>)
242
<a name="l00931"></a>00931             <a class="code" href="classbus__control.html#ae669ea2b686fa66a91981cb250ebc3b1">S_INIT</a>: <span class="vhdlkeyword">begin</span>
243
<a name="l00932"></a>00932                 <span class="vhdlchar">finished_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
244
<a name="l00933"></a>00933                 <span class="vhdlchar">jmp_address_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
245
<a name="l00934"></a>00934                 <span class="vhdlchar">jmp_bus_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
246
<a name="l00935"></a>00935                 <a class="code" href="classbus__control.html#a16e985d728c3c6cfc9d386fa89e77b98">reset_o</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
247
<a name="l00936"></a>00936                 <span class="vhdlchar">blocked_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
248
<a name="l00937"></a>00937
249
<a name="l00938"></a>00938                 <span class="keyword">// block</span>
250
<a name="l00939"></a>00939                 <span class="vhdlkeyword">if</span>(<span class="vhdlchar">do_blocked_i</span> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
251
<a name="l00940"></a>00940                     <span class="vhdlchar">blocked_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
252
<a name="l00941"></a>00941                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#ae9a3815417309441fdd6154254f2ff5f">S_BLOCKED</a>;
253
<a name="l00942"></a>00942                 <span class="vhdlkeyword">end</span>
254
<a name="l00943"></a>00943                 <span class="keyword">// reset</span>
255
<a name="l00944"></a>00944                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">do_reset_i</span> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
256
<a name="l00945"></a>00945                     <a class="code" href="classbus__control.html#a16e985d728c3c6cfc9d386fa89e77b98">reset_o</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
257
<a name="l00946"></a>00946                     <a class="code" href="classbus__control.html#a596f7cdf5918ae5a1f87df17451fe122">reset_counter</a> &lt;= <span class="vhdllogic">8&#39;d124</span>;
258
<a name="l00947"></a>00947                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#aef163f53a4eb195d45cfcb9027fcaf69">S_RESET</a>;
259
<a name="l00948"></a>00948                 <span class="vhdlkeyword">end</span>
260
<a name="l00949"></a>00949                 <span class="keyword">// read</span>
261
<a name="l00950"></a>00950                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">do_read_i</span> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
262
<a name="l00951"></a>00951                     <a class="code" href="classbus__control.html#a24f98645faa8b5c8b6a919708770b3d8">WE_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
263
<a name="l00952"></a>00952                     <span class="vhdlkeyword">if</span>(<span class="vhdlchar">supervisor_i</span> == <span class="vhdllogic">1&#39;b1</span>)    <a class="code" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a> &lt;= (<span class="vhdlchar">address_type_i</span> == <span class="vhdllogic">1&#39;b0</span>) ? <a class="code" href="classbus__control.html#a258422ffe3891c54d2241767c672463c">FC_SUPERVISOR_DATA</a> : <a class="code" href="classbus__control.html#afbd0803171f26175a2a3380def82a8f7">FC_SUPERVISOR_PROGRAM</a>;
264
<a name="l00953"></a>00953                     <span class="vhdlkeyword">else</span>                        <a class="code" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a> &lt;= (<span class="vhdlchar">address_type_i</span> == <span class="vhdllogic">1&#39;b0</span>) ? <a class="code" href="classbus__control.html#a7e192ec9ff8cd25d0b7504db08ed441f">FC_USER_DATA</a> : <a class="code" href="classbus__control.html#ab691b086857ecfbec66dea2b591969c7">FC_USER_PROGRAM</a>;
265
<a name="l00954"></a>00954
266
<a name="l00955"></a>00955                     <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">0</span>] == <span class="vhdllogic">1&#39;b1</span> &amp;&amp; (<span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b01</span> || <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b10</span>)) <span class="vhdlkeyword">begin</span>
267
<a name="l00956"></a>00956                         <span class="vhdlchar">fault_address_state_o</span> &lt;= <span class="vhdlchar">address_i</span>;
268
<a name="l00957"></a>00957                         <span class="vhdlchar">rw_state_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
269
<a name="l00958"></a>00958                         <span class="vhdlchar">fc_state_o</span> &lt;= (<span class="vhdlchar">supervisor_i</span> == <span class="vhdllogic">1&#39;b1</span>) ?  ((<span class="vhdlchar">address_type_i</span> == <span class="vhdllogic">1&#39;b0</span>) ? <a class="code" href="classbus__control.html#a258422ffe3891c54d2241767c672463c">FC_SUPERVISOR_DATA</a> : <a class="code" href="classbus__control.html#afbd0803171f26175a2a3380def82a8f7">FC_SUPERVISOR_PROGRAM</a>) :
270
<a name="l00959"></a>00959                                                                 ((<span class="vhdlchar">address_type_i</span> == <span class="vhdllogic">1&#39;b0</span>) ? <a class="code" href="classbus__control.html#a7e192ec9ff8cd25d0b7504db08ed441f">FC_USER_DATA</a> : <a class="code" href="classbus__control.html#ab691b086857ecfbec66dea2b591969c7">FC_USER_PROGRAM</a>);
271
<a name="l00960"></a>00960                         <span class="vhdlchar">interrupt_trap_o</span> &lt;= <a class="code" href="classbus__control.html#ab7c78d90089dcaa2127453f9006f82d8">VECTOR_ADDRESS_TRAP</a>;
272
<a name="l00961"></a>00961
273
<a name="l00962"></a>00962                         <span class="vhdlchar">jmp_address_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
274
<a name="l00963"></a>00963                         <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
275
<a name="l00964"></a>00964                     <span class="vhdlkeyword">end</span>
276
<a name="l00965"></a>00965                     <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
277
<a name="l00966"></a>00966                         <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
278
<a name="l00967"></a>00967                         <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a> &lt;= <span class="vhdlchar">address_i</span>[<span class="vhdllogic">31</span>:<span class="vhdllogic">2</span>];
279
<a name="l00968"></a>00968                         <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;=    (<span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b00</span> &amp;&amp; <span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b00</span>)?                   <span class="vhdllogic">4&#39;b1000</span> :
280
<a name="l00969"></a>00969                                     (<span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b00</span> &amp;&amp; <span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b01</span>)?                   <span class="vhdllogic">4&#39;b0100</span> :
281
<a name="l00970"></a>00970                                     (<span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b00</span> &amp;&amp; <span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b10</span>)?                   <span class="vhdllogic">4&#39;b0010</span> :
282
<a name="l00971"></a>00971                                     (<span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b00</span> &amp;&amp; <span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b11</span>)?                   <span class="vhdllogic">4&#39;b0001</span> :
283
<a name="l00972"></a>00972                                     (<span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b01</span> &amp;&amp; <span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>] == <span class="vhdllogic">2&#39;b0</span>)?                      <span class="vhdllogic">4&#39;b1100</span> :
284
<a name="l00973"></a>00973                                     ((<span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b01</span> || <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b10</span>) &amp;&amp; <span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>] == <span class="vhdllogic">2&#39;b1</span>)? <span class="vhdllogic">4&#39;b0011</span> :
285
<a name="l00974"></a>00974                                                                                                     <span class="vhdllogic">4&#39;b1111</span>;
286
<a name="l00975"></a>00975                         <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
287
<a name="l00976"></a>00976
288
<a name="l00977"></a>00977                         <span class="vhdlkeyword">if</span>(<span class="vhdlchar">read_modify_write_i</span> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
289
<a name="l00978"></a>00978                             <a class="code" href="classbus__control.html#a1faf237291fb36f519f228b5ff5d005b">SGL_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
290
<a name="l00979"></a>00979                             <a class="code" href="classbus__control.html#a185308dd649e2e113012e2fa73a636fa">BLK_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
291
<a name="l00980"></a>00980                             <a class="code" href="classbus__control.html#a84b20fe40418386b65f4491f83d18f0d">RMW_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
292
<a name="l00981"></a>00981                             <a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &lt;= <a class="code" href="classbus__control.html#acb4e09af86df2ea6f0da2a8f40728f33">CTI_END_OF_BURST</a>;
293
<a name="l00982"></a>00982                         <span class="vhdlkeyword">end</span>
294
<a name="l00983"></a>00983                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b10</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b10</span>) <span class="vhdlkeyword">begin</span>
295
<a name="l00984"></a>00984                             <a class="code" href="classbus__control.html#a1faf237291fb36f519f228b5ff5d005b">SGL_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
296
<a name="l00985"></a>00985                             <a class="code" href="classbus__control.html#a185308dd649e2e113012e2fa73a636fa">BLK_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
297
<a name="l00986"></a>00986                             <a class="code" href="classbus__control.html#a84b20fe40418386b65f4491f83d18f0d">RMW_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
298
<a name="l00987"></a>00987                             <a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &lt;= <a class="code" href="classbus__control.html#af8625ac9783130aa49bba8ae654ffce9">CTI_INCR_CYCLE</a>;
299
<a name="l00988"></a>00988                         <span class="vhdlkeyword">end</span>
300
<a name="l00989"></a>00989                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
301
<a name="l00990"></a>00990                             <a class="code" href="classbus__control.html#a1faf237291fb36f519f228b5ff5d005b">SGL_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
302
<a name="l00991"></a>00991                             <a class="code" href="classbus__control.html#a185308dd649e2e113012e2fa73a636fa">BLK_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
303
<a name="l00992"></a>00992                             <a class="code" href="classbus__control.html#a84b20fe40418386b65f4491f83d18f0d">RMW_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
304
<a name="l00993"></a>00993                             <a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &lt;= <a class="code" href="classbus__control.html#acb4e09af86df2ea6f0da2a8f40728f33">CTI_END_OF_BURST</a>;
305
<a name="l00994"></a>00994                         <span class="vhdlkeyword">end</span>
306
<a name="l00995"></a>00995
307
<a name="l00996"></a>00996                         <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a253dfab6448dcef96d643494637743a2">S_READ_1</a>;
308
<a name="l00997"></a>00997                     <span class="vhdlkeyword">end</span>
309
<a name="l00998"></a>00998                 <span class="vhdlkeyword">end</span>
310
<a name="l00999"></a>00999                 <span class="keyword">// write</span>
311
<a name="l01000"></a>01000                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">do_write_i</span> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
312
<a name="l01001"></a>01001                     <a class="code" href="classbus__control.html#a24f98645faa8b5c8b6a919708770b3d8">WE_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
313
<a name="l01002"></a>01002                     <span class="vhdlkeyword">if</span>(<span class="vhdlchar">supervisor_i</span> == <span class="vhdllogic">1&#39;b1</span>)    <a class="code" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a> &lt;= <a class="code" href="classbus__control.html#a258422ffe3891c54d2241767c672463c">FC_SUPERVISOR_DATA</a>;
314
<a name="l01003"></a>01003                     <span class="vhdlkeyword">else</span>                        <a class="code" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a> &lt;= <a class="code" href="classbus__control.html#a7e192ec9ff8cd25d0b7504db08ed441f">FC_USER_DATA</a>;
315
<a name="l01004"></a>01004
316
<a name="l01005"></a>01005                     <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">0</span>] == <span class="vhdllogic">1&#39;b1</span> &amp;&amp; (<span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b01</span> || <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b10</span>)) <span class="vhdlkeyword">begin</span>
317
<a name="l01006"></a>01006                         <span class="vhdlchar">fault_address_state_o</span> &lt;= <span class="vhdlchar">address_i</span>;
318
<a name="l01007"></a>01007                         <span class="vhdlchar">rw_state_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
319
<a name="l01008"></a>01008                         <span class="vhdlchar">fc_state_o</span> &lt;= (<span class="vhdlchar">supervisor_i</span> == <span class="vhdllogic">1&#39;b1</span>) ? <a class="code" href="classbus__control.html#a258422ffe3891c54d2241767c672463c">FC_SUPERVISOR_DATA</a> : <a class="code" href="classbus__control.html#a7e192ec9ff8cd25d0b7504db08ed441f">FC_USER_DATA</a>;
320
<a name="l01009"></a>01009                         <span class="vhdlchar">interrupt_trap_o</span> &lt;= <a class="code" href="classbus__control.html#ab7c78d90089dcaa2127453f9006f82d8">VECTOR_ADDRESS_TRAP</a>;
321
<a name="l01010"></a>01010
322
<a name="l01011"></a>01011                         <span class="vhdlchar">jmp_address_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
323
<a name="l01012"></a>01012                         <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
324
<a name="l01013"></a>01013                     <span class="vhdlkeyword">end</span>
325
<a name="l01014"></a>01014                     <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
326
<a name="l01015"></a>01015                         <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
327
<a name="l01016"></a>01016                         <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a> &lt;= <span class="vhdlchar">address_i</span>[<span class="vhdllogic">31</span>:<span class="vhdllogic">2</span>];
328
<a name="l01017"></a>01017                         <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
329
<a name="l01018"></a>01018
330
<a name="l01019"></a>01019                         <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b10</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b10</span>) <span class="vhdlkeyword">begin</span>
331
<a name="l01020"></a>01020                             <a class="code" href="classbus__control.html#accc5324e304fe8ed513657f707c70031">DAT_O</a> &lt;= { <span class="vhdllogic">16&#39;b0</span>, <span class="vhdlchar">data_write_i</span>[<span class="vhdllogic">31</span>:<span class="vhdllogic">16</span>] };
332
<a name="l01021"></a>01021                             <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;= <span class="vhdllogic">4&#39;b0011</span>;
333
<a name="l01022"></a>01022                         <span class="vhdlkeyword">end</span>
334
<a name="l01023"></a>01023                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b00</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b10</span>) <span class="vhdlkeyword">begin</span>
335
<a name="l01024"></a>01024                             <a class="code" href="classbus__control.html#accc5324e304fe8ed513657f707c70031">DAT_O</a> &lt;= <span class="vhdlchar">data_write_i</span>[<span class="vhdllogic">31</span>:<span class="vhdllogic">0</span>];
336
<a name="l01025"></a>01025                             <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;= <span class="vhdllogic">4&#39;b1111</span>;
337
<a name="l01026"></a>01026                         <span class="vhdlkeyword">end</span>
338
<a name="l01027"></a>01027                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b10</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b01</span>) <span class="vhdlkeyword">begin</span>
339
<a name="l01028"></a>01028                             <a class="code" href="classbus__control.html#accc5324e304fe8ed513657f707c70031">DAT_O</a> &lt;= { <span class="vhdllogic">16&#39;b0</span>, <span class="vhdlchar">data_write_i</span>[<span class="vhdllogic">15</span>:<span class="vhdllogic">0</span>] };
340
<a name="l01029"></a>01029                             <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;= <span class="vhdllogic">4&#39;b0011</span>;
341
<a name="l01030"></a>01030                         <span class="vhdlkeyword">end</span>
342
<a name="l01031"></a>01031                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b00</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b01</span>) <span class="vhdlkeyword">begin</span>
343
<a name="l01032"></a>01032                             <a class="code" href="classbus__control.html#accc5324e304fe8ed513657f707c70031">DAT_O</a> &lt;= { <span class="vhdlchar">data_write_i</span>[<span class="vhdllogic">15</span>:<span class="vhdllogic">0</span>], <span class="vhdllogic">16&#39;b0</span> };
344
<a name="l01033"></a>01033                             <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;= <span class="vhdllogic">4&#39;b1100</span>;
345
<a name="l01034"></a>01034                         <span class="vhdlkeyword">end</span>
346
<a name="l01035"></a>01035                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b11</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b00</span>) <span class="vhdlkeyword">begin</span>
347
<a name="l01036"></a>01036                             <a class="code" href="classbus__control.html#accc5324e304fe8ed513657f707c70031">DAT_O</a> &lt;= { <span class="vhdllogic">24&#39;b0</span>, <span class="vhdlchar">data_write_i</span>[<span class="vhdllogic">7</span>:<span class="vhdllogic">0</span>] };
348
<a name="l01037"></a>01037                             <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;= <span class="vhdllogic">4&#39;b0001</span>;
349
<a name="l01038"></a>01038                         <span class="vhdlkeyword">end</span>
350
<a name="l01039"></a>01039                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b10</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b00</span>) <span class="vhdlkeyword">begin</span>
351
<a name="l01040"></a>01040                             <a class="code" href="classbus__control.html#accc5324e304fe8ed513657f707c70031">DAT_O</a> &lt;= { <span class="vhdllogic">16&#39;b0</span>, <span class="vhdlchar">data_write_i</span>[<span class="vhdllogic">7</span>:<span class="vhdllogic">0</span>], <span class="vhdllogic">8&#39;b0</span> };
352
<a name="l01041"></a>01041                             <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;= <span class="vhdllogic">4&#39;b0010</span>;
353
<a name="l01042"></a>01042                         <span class="vhdlkeyword">end</span>
354
<a name="l01043"></a>01043                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b01</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b00</span>) <span class="vhdlkeyword">begin</span>
355
<a name="l01044"></a>01044                             <a class="code" href="classbus__control.html#accc5324e304fe8ed513657f707c70031">DAT_O</a> &lt;= { <span class="vhdllogic">8&#39;b0</span>, <span class="vhdlchar">data_write_i</span>[<span class="vhdllogic">7</span>:<span class="vhdllogic">0</span>], <span class="vhdllogic">16&#39;b0</span> };
356
<a name="l01045"></a>01045                             <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;= <span class="vhdllogic">4&#39;b0100</span>;
357
<a name="l01046"></a>01046                         <span class="vhdlkeyword">end</span>
358
<a name="l01047"></a>01047                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b00</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b00</span>) <span class="vhdlkeyword">begin</span>
359
<a name="l01048"></a>01048                             <a class="code" href="classbus__control.html#accc5324e304fe8ed513657f707c70031">DAT_O</a> &lt;= { <span class="vhdlchar">data_write_i</span>[<span class="vhdllogic">7</span>:<span class="vhdllogic">0</span>], <span class="vhdllogic">24&#39;b0</span> };
360
<a name="l01049"></a>01049                             <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;= <span class="vhdllogic">4&#39;b1000</span>;
361
<a name="l01050"></a>01050                         <span class="vhdlkeyword">end</span>
362
<a name="l01051"></a>01051
363
<a name="l01052"></a>01052                         <span class="vhdlkeyword">if</span>(<span class="vhdlchar">read_modify_write_i</span> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
364
<a name="l01053"></a>01053                             <a class="code" href="classbus__control.html#a1faf237291fb36f519f228b5ff5d005b">SGL_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
365
<a name="l01054"></a>01054                             <a class="code" href="classbus__control.html#a185308dd649e2e113012e2fa73a636fa">BLK_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
366
<a name="l01055"></a>01055                             <a class="code" href="classbus__control.html#a84b20fe40418386b65f4491f83d18f0d">RMW_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
367
<a name="l01056"></a>01056                             <a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &lt;= <a class="code" href="classbus__control.html#acb4e09af86df2ea6f0da2a8f40728f33">CTI_END_OF_BURST</a>;
368
<a name="l01057"></a>01057                         <span class="vhdlkeyword">end</span>
369
<a name="l01058"></a>01058                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b10</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b10</span>) <span class="vhdlkeyword">begin</span>
370
<a name="l01059"></a>01059                             <a class="code" href="classbus__control.html#a1faf237291fb36f519f228b5ff5d005b">SGL_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
371
<a name="l01060"></a>01060                             <a class="code" href="classbus__control.html#a185308dd649e2e113012e2fa73a636fa">BLK_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
372
<a name="l01061"></a>01061                             <a class="code" href="classbus__control.html#a84b20fe40418386b65f4491f83d18f0d">RMW_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
373
<a name="l01062"></a>01062                             <a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &lt;= <a class="code" href="classbus__control.html#af8625ac9783130aa49bba8ae654ffce9">CTI_INCR_CYCLE</a>;
374
<a name="l01063"></a>01063                         <span class="vhdlkeyword">end</span>
375
<a name="l01064"></a>01064                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
376
<a name="l01065"></a>01065                             <a class="code" href="classbus__control.html#a1faf237291fb36f519f228b5ff5d005b">SGL_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
377
<a name="l01066"></a>01066                             <a class="code" href="classbus__control.html#a185308dd649e2e113012e2fa73a636fa">BLK_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
378
<a name="l01067"></a>01067                             <a class="code" href="classbus__control.html#a84b20fe40418386b65f4491f83d18f0d">RMW_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
379
<a name="l01068"></a>01068                             <a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &lt;= <a class="code" href="classbus__control.html#acb4e09af86df2ea6f0da2a8f40728f33">CTI_END_OF_BURST</a>;
380
<a name="l01069"></a>01069                         <span class="vhdlkeyword">end</span>
381
<a name="l01070"></a>01070
382
<a name="l01071"></a>01071                         <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a711b0f070226bfd72354cc22c5f0ba96">S_WRITE_1</a>;
383
<a name="l01072"></a>01072                     <span class="vhdlkeyword">end</span>
384
<a name="l01073"></a>01073                 <span class="vhdlkeyword">end</span>
385
<a name="l01074"></a>01074                 <span class="keyword">// pc</span>
386
<a name="l01075"></a>01075                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">prefetch_ir_valid_o</span> == <span class="vhdllogic">1&#39;b0</span> || <span class="vhdlchar">pc_change_i</span> != <span class="vhdllogic">2&#39;b00</span>) <span class="vhdlkeyword">begin</span>
387
<a name="l01076"></a>01076
388
<a name="l01077"></a>01077                     <span class="vhdlkeyword">if</span>(<span class="vhdlchar">prefetch_ir_valid_o</span> == <span class="vhdllogic">1&#39;b0</span> || <span class="vhdlchar">pc_change_i</span> == <span class="vhdllogic">2&#39;b10</span> || <span class="vhdlchar">pc_change_i</span> == <span class="vhdllogic">2&#39;b11</span>) <span class="vhdlkeyword">begin</span>
389
<a name="l01078"></a>01078                         <span class="keyword">// load 4 words: [79:16] in 2,3 cycles</span>
390
<a name="l01079"></a>01079                         <span class="vhdlchar">prefetch_ir_valid_32_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
391
<a name="l01080"></a>01080                         <span class="vhdlchar">prefetch_ir_valid_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
392
<a name="l01081"></a>01081                         <span class="vhdlchar">prefetch_ir_valid_80_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
393
<a name="l01082"></a>01082
394
<a name="l01083"></a>01083                         <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a5cd75eaf03abba5a5ad4cf6ae14a0614">S_PC_0</a>;
395
<a name="l01084"></a>01084                     <span class="vhdlkeyword">end</span>
396
<a name="l01085"></a>01085                     <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">prefetch_ir_valid_80_o</span> == <span class="vhdllogic">1&#39;b0</span> &amp;&amp; <span class="vhdlchar">pc_change_i</span> == <span class="vhdllogic">2&#39;b01</span>) <span class="vhdlkeyword">begin</span>
397
<a name="l01086"></a>01086                         <span class="keyword">// load 2 words: [31:0] in 1 cycle</span>
398
<a name="l01087"></a>01087                         <span class="vhdlchar">prefetch_ir_valid_32_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
399
<a name="l01088"></a>01088                         <span class="vhdlchar">prefetch_ir_valid_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
400
<a name="l01089"></a>01089                         <span class="vhdlchar">prefetch_ir_valid_80_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
401
<a name="l01090"></a>01090
402
<a name="l01091"></a>01091                         <span class="vhdlchar">prefetch_ir_o</span> &lt;= { <span class="vhdlchar">prefetch_ir_o</span>[<span class="vhdllogic">63</span>:<span class="vhdllogic">0</span>], <span class="vhdllogic">16&#39;b0</span> };
403
<a name="l01092"></a>01092                         <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a5cd75eaf03abba5a5ad4cf6ae14a0614">S_PC_0</a>;
404
<a name="l01093"></a>01093                     <span class="vhdlkeyword">end</span>
405
<a name="l01094"></a>01094                     <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
406
<a name="l01095"></a>01095                         <span class="keyword">// do not load any words</span>
407
<a name="l01096"></a>01096                         <span class="vhdlchar">prefetch_ir_valid_32_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
408
<a name="l01097"></a>01097                         <span class="vhdlchar">prefetch_ir_valid_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
409
<a name="l01098"></a>01098                         <span class="vhdlchar">prefetch_ir_valid_80_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
410
<a name="l01099"></a>01099
411
<a name="l01100"></a>01100                         <span class="vhdlchar">prefetch_ir_o</span> &lt;= { <span class="vhdlchar">prefetch_ir_o</span>[<span class="vhdllogic">63</span>:<span class="vhdllogic">0</span>], <span class="vhdllogic">16&#39;b0</span> };
412
<a name="l01101"></a>01101                     <span class="vhdlkeyword">end</span>
413
<a name="l01102"></a>01102
414
<a name="l01103"></a>01103
415
<a name="l01104"></a>01104                 <span class="vhdlkeyword">end</span>
416
<a name="l01105"></a>01105                 <span class="keyword">// interrupt</span>
417
<a name="l01106"></a>01106                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">do_interrupt_i</span> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
418
<a name="l01107"></a>01107                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
419
<a name="l01108"></a>01108                     <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a> &lt;= { <span class="vhdllogic">27&#39;b111_1111_1111_1111_1111_1111_1111</span>, <a class="code" href="classbus__control.html#a7975910cb7516716f91d194ff15e24d4">last_interrupt_mask</a> };
420
<a name="l01109"></a>01109                     <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;= <span class="vhdllogic">4&#39;b1111</span>;
421
<a name="l01110"></a>01110                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
422
<a name="l01111"></a>01111                     <a class="code" href="classbus__control.html#a24f98645faa8b5c8b6a919708770b3d8">WE_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
423
<a name="l01112"></a>01112
424
<a name="l01113"></a>01113                     <a class="code" href="classbus__control.html#a1faf237291fb36f519f228b5ff5d005b">SGL_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
425
<a name="l01114"></a>01114                     <a class="code" href="classbus__control.html#a185308dd649e2e113012e2fa73a636fa">BLK_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
426
<a name="l01115"></a>01115                     <a class="code" href="classbus__control.html#a84b20fe40418386b65f4491f83d18f0d">RMW_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
427
<a name="l01116"></a>01116                     <a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &lt;= <a class="code" href="classbus__control.html#acb4e09af86df2ea6f0da2a8f40728f33">CTI_END_OF_BURST</a>;
428
<a name="l01117"></a>01117
429
<a name="l01118"></a>01118                     <a class="code" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a> &lt;= <a class="code" href="classbus__control.html#ae7000ccb647ae60f28953281953d9fc3">FC_CPU_SPACE</a>;
430
<a name="l01119"></a>01119
431
<a name="l01120"></a>01120                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a129f99705777db3b90b7fd721f7ba7e1">S_INT_1</a>;
432
<a name="l01121"></a>01121                 <span class="vhdlkeyword">end</span>
433
<a name="l01122"></a>01122             <span class="vhdlkeyword">end</span>
434
<a name="l01123"></a>01123
435
<a name="l01124"></a>01124             <a class="code" href="classbus__control.html#aef163f53a4eb195d45cfcb9027fcaf69">S_RESET</a>: <span class="vhdlkeyword">begin</span>
436
<a name="l01125"></a>01125                 <a class="code" href="classbus__control.html#a596f7cdf5918ae5a1f87df17451fe122">reset_counter</a> &lt;= <a class="code" href="classbus__control.html#a596f7cdf5918ae5a1f87df17451fe122">reset_counter</a> - <span class="vhdllogic">8&#39;d1</span>;
437
<a name="l01126"></a>01126
438
<a name="l01127"></a>01127                 <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#a596f7cdf5918ae5a1f87df17451fe122">reset_counter</a> == <span class="vhdllogic">8&#39;d0</span>) <span class="vhdlkeyword">begin</span>
439
<a name="l01128"></a>01128                     <span class="vhdlchar">finished_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
440
<a name="l01129"></a>01129                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
441
<a name="l01130"></a>01130                 <span class="vhdlkeyword">end</span>
442
<a name="l01131"></a>01131             <span class="vhdlkeyword">end</span>
443
<a name="l01132"></a>01132
444
<a name="l01133"></a>01133             <a class="code" href="classbus__control.html#ae9a3815417309441fdd6154254f2ff5f">S_BLOCKED</a>: <span class="vhdlkeyword">begin</span>
445
<a name="l01134"></a>01134             <span class="vhdlkeyword">end</span>
446
<a name="l01135"></a>01135
447
<a name="l01136"></a>01136             <a class="code" href="classbus__control.html#a129f99705777db3b90b7fd721f7ba7e1">S_INT_1</a>: <span class="vhdlkeyword">begin</span>
448
<a name="l01137"></a>01137                 <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aacaa0a0a5bd2fca75fd2a87952a3c096">ACK_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
449
<a name="l01138"></a>01138                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
450
<a name="l01139"></a>01139                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
451
<a name="l01140"></a>01140
452
<a name="l01141"></a>01141                     <span class="vhdlchar">interrupt_trap_o</span> &lt;= <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">7</span>:<span class="vhdllogic">0</span>];
453
<a name="l01142"></a>01142
454
<a name="l01143"></a>01143                     <span class="vhdlchar">finished_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
455
<a name="l01144"></a>01144                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
456
<a name="l01145"></a>01145                 <span class="vhdlkeyword">end</span>
457
<a name="l01146"></a>01146                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#a36e423840bd01f096de364f3569f1ceb">RTY_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
458
<a name="l01147"></a>01147                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
459
<a name="l01148"></a>01148                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
460
<a name="l01149"></a>01149
461
<a name="l01150"></a>01150                     <span class="vhdlchar">interrupt_trap_o</span> &lt;= <span class="vhdllogic">8&#39;d24</span> + { <span class="vhdllogic">5&#39;b0</span>, <span class="vhdlchar">interrupt_mask_o</span> };
462
<a name="l01151"></a>01151
463
<a name="l01152"></a>01152                     <span class="vhdlchar">finished_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
464
<a name="l01153"></a>01153                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
465
<a name="l01154"></a>01154                 <span class="vhdlkeyword">end</span>
466
<a name="l01155"></a>01155                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aebe818eef013f4d18ba9b260bb976433">ERR_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
467
<a name="l01156"></a>01156                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
468
<a name="l01157"></a>01157                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
469
<a name="l01158"></a>01158
470
<a name="l01159"></a>01159                     <span class="vhdlchar">interrupt_trap_o</span> &lt;= <span class="vhdllogic">8&#39;d24</span>; <span class="keyword">// spurious interrupt</span>
471
<a name="l01160"></a>01160
472
<a name="l01161"></a>01161                     <span class="vhdlchar">finished_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
473
<a name="l01162"></a>01162                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
474
<a name="l01163"></a>01163                 <span class="vhdlkeyword">end</span>
475
<a name="l01164"></a>01164             <span class="vhdlkeyword">end</span>
476
<a name="l01165"></a>01165
477
<a name="l01166"></a>01166             <a class="code" href="classbus__control.html#a5cd75eaf03abba5a5ad4cf6ae14a0614">S_PC_0</a>: <span class="vhdlkeyword">begin</span>
478
<a name="l01167"></a>01167                 <a class="code" href="classbus__control.html#a24f98645faa8b5c8b6a919708770b3d8">WE_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
479
<a name="l01168"></a>01168                 <span class="vhdlkeyword">if</span>(<span class="vhdlchar">supervisor_i</span> == <span class="vhdllogic">1&#39;b1</span>)    <a class="code" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a> &lt;= <a class="code" href="classbus__control.html#afbd0803171f26175a2a3380def82a8f7">FC_SUPERVISOR_PROGRAM</a>;
480
<a name="l01169"></a>01169                 <span class="vhdlkeyword">else</span>                        <a class="code" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a> &lt;= <a class="code" href="classbus__control.html#ab691b086857ecfbec66dea2b591969c7">FC_USER_PROGRAM</a>;
481
<a name="l01170"></a>01170
482
<a name="l01171"></a>01171                 <span class="vhdlkeyword">if</span>(<span class="vhdlchar">pc_i</span>[<span class="vhdllogic">0</span>] == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
483
<a name="l01172"></a>01172                     <span class="vhdlchar">prefetch_ir_valid_32_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
484
<a name="l01173"></a>01173                     <span class="vhdlchar">prefetch_ir_valid_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
485
<a name="l01174"></a>01174                     <span class="vhdlchar">prefetch_ir_valid_80_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
486
<a name="l01175"></a>01175
487
<a name="l01176"></a>01176                     <span class="vhdlchar">fault_address_state_o</span> &lt;= <span class="vhdlchar">pc_i</span>;
488
<a name="l01177"></a>01177                     <span class="vhdlchar">rw_state_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
489
<a name="l01178"></a>01178                     <span class="vhdlchar">fc_state_o</span> &lt;= (<span class="vhdlchar">supervisor_i</span> == <span class="vhdllogic">1&#39;b1</span>) ? <a class="code" href="classbus__control.html#afbd0803171f26175a2a3380def82a8f7">FC_SUPERVISOR_PROGRAM</a> : <a class="code" href="classbus__control.html#ab691b086857ecfbec66dea2b591969c7">FC_USER_PROGRAM</a>;
490
<a name="l01179"></a>01179                     <span class="vhdlchar">interrupt_trap_o</span> &lt;= <a class="code" href="classbus__control.html#ab7c78d90089dcaa2127453f9006f82d8">VECTOR_ADDRESS_TRAP</a>;
491
<a name="l01180"></a>01180
492
<a name="l01181"></a>01181                     <span class="vhdlchar">jmp_address_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
493
<a name="l01182"></a>01182                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
494
<a name="l01183"></a>01183                 <span class="vhdlkeyword">end</span>
495
<a name="l01184"></a>01184                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
496
<a name="l01185"></a>01185                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
497
<a name="l01186"></a>01186
498
<a name="l01187"></a>01187                     <span class="vhdlkeyword">if</span>(<span class="vhdlchar">prefetch_ir_valid_32_o</span> == <span class="vhdllogic">1&#39;b0</span>)                      <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a> &lt;= <span class="vhdlchar">pc_i</span>[<span class="vhdllogic">31</span>:<span class="vhdllogic">2</span>];
499
<a name="l01188"></a>01188                     <span class="vhdlkeyword">else</span>                                                    <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a> &lt;= <a class="code" href="classbus__control.html#accfafb28c124ffe3b1da8aec439bdf6e">pc_i_plus_6</a>[<span class="vhdllogic">31</span>:<span class="vhdllogic">2</span>];
500
<a name="l01189"></a>01189
501
<a name="l01190"></a>01190                     <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;=    (<span class="vhdlchar">pc_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b10</span>)?   <span class="vhdllogic">4&#39;b0011</span> :
502
<a name="l01191"></a>01191                                                         <span class="vhdllogic">4&#39;b1111</span>;
503
<a name="l01192"></a>01192                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
504
<a name="l01193"></a>01193
505
<a name="l01194"></a>01194                     <span class="vhdlkeyword">if</span>(<span class="vhdlchar">prefetch_ir_valid_32_o</span> == <span class="vhdllogic">1&#39;b0</span>) <span class="vhdlkeyword">begin</span>
506
<a name="l01195"></a>01195                         <a class="code" href="classbus__control.html#a1faf237291fb36f519f228b5ff5d005b">SGL_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
507
<a name="l01196"></a>01196                         <a class="code" href="classbus__control.html#a185308dd649e2e113012e2fa73a636fa">BLK_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
508
<a name="l01197"></a>01197                         <a class="code" href="classbus__control.html#a84b20fe40418386b65f4491f83d18f0d">RMW_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
509
<a name="l01198"></a>01198                         <a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &lt;= <a class="code" href="classbus__control.html#af8625ac9783130aa49bba8ae654ffce9">CTI_INCR_CYCLE</a>;
510
<a name="l01199"></a>01199                     <span class="vhdlkeyword">end</span>
511
<a name="l01200"></a>01200                     <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
512
<a name="l01201"></a>01201                         <a class="code" href="classbus__control.html#a1faf237291fb36f519f228b5ff5d005b">SGL_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
513
<a name="l01202"></a>01202                         <a class="code" href="classbus__control.html#a185308dd649e2e113012e2fa73a636fa">BLK_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
514
<a name="l01203"></a>01203                         <a class="code" href="classbus__control.html#a84b20fe40418386b65f4491f83d18f0d">RMW_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
515
<a name="l01204"></a>01204                         <a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &lt;= <a class="code" href="classbus__control.html#acb4e09af86df2ea6f0da2a8f40728f33">CTI_END_OF_BURST</a>;
516
<a name="l01205"></a>01205                     <span class="vhdlkeyword">end</span>
517
<a name="l01206"></a>01206
518
<a name="l01207"></a>01207                     <a class="code" href="classbus__control.html#a61c78f21cff12a1119d1a1c59ed6eb9d">saved_pc_change</a> &lt;= <span class="vhdlchar">pc_change_i</span>;
519
<a name="l01208"></a>01208                     <span class="vhdlchar">prefetch_ir_valid_32_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
520
<a name="l01209"></a>01209
521
<a name="l01210"></a>01210                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a8a9e94dfe7411c15ca111736893cdf91">S_PC_1</a>;
522
<a name="l01211"></a>01211                 <span class="vhdlkeyword">end</span>
523
<a name="l01212"></a>01212             <span class="vhdlkeyword">end</span>
524
<a name="l01213"></a>01213
525
<a name="l01214"></a>01214             <a class="code" href="classbus__control.html#a8a9e94dfe7411c15ca111736893cdf91">S_PC_1</a>: <span class="vhdlkeyword">begin</span>
526
<a name="l01215"></a>01215                 <span class="vhdlkeyword">if</span>(<span class="vhdlchar">pc_change_i</span> != <span class="vhdllogic">2&#39;b00</span>) <a class="code" href="classbus__control.html#a61c78f21cff12a1119d1a1c59ed6eb9d">saved_pc_change</a> &lt;= <span class="vhdlchar">pc_change_i</span>;
527
<a name="l01216"></a>01216
528
<a name="l01217"></a>01217                 <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aacaa0a0a5bd2fca75fd2a87952a3c096">ACK_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
529
<a name="l01218"></a>01218                     <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> == <a class="code" href="classbus__control.html#af8625ac9783130aa49bba8ae654ffce9">CTI_INCR_CYCLE</a>) <span class="vhdlkeyword">begin</span>
530
<a name="l01219"></a>01219                         <span class="keyword">//CYC_O &lt;= 1&#39;b1;</span>
531
<a name="l01220"></a>01220                         <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a> &lt;= <a class="code" href="classbus__control.html#a1677b7f33d7258a2506fcf16f1add1b0">pc_i_plus_4</a>[<span class="vhdllogic">31</span>:<span class="vhdllogic">2</span>];
532
<a name="l01221"></a>01221                         <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;= <span class="vhdllogic">4&#39;b1111</span>;
533
<a name="l01222"></a>01222                         <span class="keyword">//STB_O &lt;= 1&#39;b1;</span>
534
<a name="l01223"></a>01223                         <span class="keyword">//WE_O &lt;= 1&#39;b0;</span>
535
<a name="l01224"></a>01224
536
<a name="l01225"></a>01225                         <span class="vhdlkeyword">if</span>(<span class="vhdlchar">pc_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b10</span>) <span class="vhdlkeyword">begin</span>
537
<a name="l01226"></a>01226                             <a class="code" href="classbus__control.html#a1faf237291fb36f519f228b5ff5d005b">SGL_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
538
<a name="l01227"></a>01227                             <a class="code" href="classbus__control.html#a185308dd649e2e113012e2fa73a636fa">BLK_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
539
<a name="l01228"></a>01228                             <a class="code" href="classbus__control.html#a84b20fe40418386b65f4491f83d18f0d">RMW_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
540
<a name="l01229"></a>01229                             <a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &lt;= <a class="code" href="classbus__control.html#af8625ac9783130aa49bba8ae654ffce9">CTI_INCR_CYCLE</a>;
541
<a name="l01230"></a>01230                         <span class="vhdlkeyword">end</span>
542
<a name="l01231"></a>01231                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
543
<a name="l01232"></a>01232                             <a class="code" href="classbus__control.html#a1faf237291fb36f519f228b5ff5d005b">SGL_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
544
<a name="l01233"></a>01233                             <a class="code" href="classbus__control.html#a185308dd649e2e113012e2fa73a636fa">BLK_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
545
<a name="l01234"></a>01234                             <a class="code" href="classbus__control.html#a84b20fe40418386b65f4491f83d18f0d">RMW_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
546
<a name="l01235"></a>01235                             <a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &lt;= <a class="code" href="classbus__control.html#acb4e09af86df2ea6f0da2a8f40728f33">CTI_END_OF_BURST</a>;
547
<a name="l01236"></a>01236                         <span class="vhdlkeyword">end</span>
548
<a name="l01237"></a>01237
549
<a name="l01238"></a>01238                         <span class="keyword">//if(supervisor_i == 1&#39;b1)    fc_o &lt;= FC_SUPERVISOR_PROGRAM;</span>
550
<a name="l01239"></a>01239                         <span class="keyword">//else                        fc_o &lt;= FC_USER_PROGRAM;</span>
551
<a name="l01240"></a>01240
552
<a name="l01241"></a>01241                         <span class="vhdlkeyword">if</span>(<span class="vhdlchar">pc_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b10</span>)      <span class="vhdlchar">prefetch_ir_o</span> &lt;= { <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">15</span>:<span class="vhdllogic">0</span>], <span class="vhdllogic">64&#39;b0</span> };
553
<a name="l01242"></a>01242                         <span class="vhdlkeyword">else</span>                        <span class="vhdlchar">prefetch_ir_o</span> &lt;= { <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">31</span>:<span class="vhdllogic">0</span>], <span class="vhdllogic">48&#39;b0</span> };
554
<a name="l01243"></a>01243
555
<a name="l01244"></a>01244                         <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#ad385dc358e8b88671205229d0a99bf1f">S_PC_3</a>;
556
<a name="l01245"></a>01245                     <span class="vhdlkeyword">end</span>
557
<a name="l01246"></a>01246                     <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
558
<a name="l01247"></a>01247                         <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
559
<a name="l01248"></a>01248                         <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
560
<a name="l01249"></a>01249
561
<a name="l01250"></a>01250                         <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#a61c78f21cff12a1119d1a1c59ed6eb9d">saved_pc_change</a> == <span class="vhdllogic">2&#39;b10</span> || <a class="code" href="classbus__control.html#a61c78f21cff12a1119d1a1c59ed6eb9d">saved_pc_change</a> == <span class="vhdllogic">2&#39;b11</span> || <span class="vhdlchar">pc_change_i</span> == <span class="vhdllogic">2&#39;b10</span> || <span class="vhdlchar">pc_change_i</span> == <span class="vhdllogic">2&#39;b11</span>) <span class="vhdlkeyword">begin</span>
562
<a name="l01251"></a>01251                             <span class="keyword">// load 4 words: [79:16] in 2,3 cycles</span>
563
<a name="l01252"></a>01252                             <span class="vhdlchar">prefetch_ir_valid_32_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
564
<a name="l01253"></a>01253                             <span class="vhdlchar">prefetch_ir_valid_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
565
<a name="l01254"></a>01254                             <span class="vhdlchar">prefetch_ir_valid_80_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
566
<a name="l01255"></a>01255
567
<a name="l01256"></a>01256                             <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a5cd75eaf03abba5a5ad4cf6ae14a0614">S_PC_0</a>;
568
<a name="l01257"></a>01257                         <span class="vhdlkeyword">end</span>
569
<a name="l01258"></a>01258                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#a61c78f21cff12a1119d1a1c59ed6eb9d">saved_pc_change</a> == <span class="vhdllogic">2&#39;b01</span> || <span class="vhdlchar">pc_change_i</span> == <span class="vhdllogic">2&#39;b01</span>) <span class="vhdlkeyword">begin</span>
570
<a name="l01259"></a>01259                             <span class="keyword">// do not load any words</span>
571
<a name="l01260"></a>01260                             <span class="vhdlchar">prefetch_ir_valid_32_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
572
<a name="l01261"></a>01261                             <span class="vhdlchar">prefetch_ir_valid_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
573
<a name="l01262"></a>01262                             <span class="vhdlchar">prefetch_ir_valid_80_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
574
<a name="l01263"></a>01263
575
<a name="l01264"></a>01264                             <span class="vhdlchar">prefetch_ir_o</span> &lt;= { <span class="vhdlchar">prefetch_ir_o</span>[<span class="vhdllogic">63</span>:<span class="vhdllogic">32</span>], <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">31</span>:<span class="vhdllogic">0</span>], <span class="vhdllogic">16&#39;b0</span> };
576
<a name="l01265"></a>01265                             <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#ae669ea2b686fa66a91981cb250ebc3b1">S_INIT</a>;
577
<a name="l01266"></a>01266                         <span class="vhdlkeyword">end</span>
578
<a name="l01267"></a>01267                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
579
<a name="l01268"></a>01268                             <span class="vhdlchar">prefetch_ir_valid_32_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
580
<a name="l01269"></a>01269                             <span class="vhdlchar">prefetch_ir_valid_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
581
<a name="l01270"></a>01270                             <span class="vhdlchar">prefetch_ir_valid_80_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
582
<a name="l01271"></a>01271
583
<a name="l01272"></a>01272                             <span class="vhdlchar">prefetch_ir_o</span> &lt;= { <span class="vhdlchar">prefetch_ir_o</span>[<span class="vhdllogic">79</span>:<span class="vhdllogic">32</span>], <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">31</span>:<span class="vhdllogic">0</span>] };
584
<a name="l01273"></a>01273                             <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#ae669ea2b686fa66a91981cb250ebc3b1">S_INIT</a>;
585
<a name="l01274"></a>01274                         <span class="vhdlkeyword">end</span>
586
<a name="l01275"></a>01275                     <span class="vhdlkeyword">end</span>
587
<a name="l01276"></a>01276                 <span class="vhdlkeyword">end</span>
588
<a name="l01277"></a>01277                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#a36e423840bd01f096de364f3569f1ceb">RTY_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
589
<a name="l01278"></a>01278                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
590
<a name="l01279"></a>01279                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
591
<a name="l01280"></a>01280
592
<a name="l01281"></a>01281                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a148ea98b9f651aca240d70af989075b9">S_PC_2</a>;
593
<a name="l01282"></a>01282                 <span class="vhdlkeyword">end</span>
594
<a name="l01283"></a>01283                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aebe818eef013f4d18ba9b260bb976433">ERR_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
595
<a name="l01284"></a>01284                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
596
<a name="l01285"></a>01285                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
597
<a name="l01286"></a>01286
598
<a name="l01287"></a>01287                     <span class="vhdlchar">fault_address_state_o</span> &lt;= { <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a>, <span class="vhdllogic">2&#39;b00</span> };
599
<a name="l01288"></a>01288                     <span class="vhdlchar">rw_state_o</span> &lt;= ~<a class="code" href="classbus__control.html#a24f98645faa8b5c8b6a919708770b3d8">WE_O</a>;
600
<a name="l01289"></a>01289                     <span class="vhdlchar">fc_state_o</span> &lt;= <a class="code" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a>;
601
<a name="l01290"></a>01290                     <span class="vhdlchar">interrupt_trap_o</span> &lt;= <a class="code" href="classbus__control.html#ac907148aa83b25bcbfb6f83d70a54ca7">VECTOR_BUS_TRAP</a>;
602
<a name="l01291"></a>01291
603
<a name="l01292"></a>01292                     <span class="vhdlchar">jmp_bus_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
604
<a name="l01293"></a>01293                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
605
<a name="l01294"></a>01294                 <span class="vhdlkeyword">end</span>
606
<a name="l01295"></a>01295             <span class="vhdlkeyword">end</span>
607
<a name="l01296"></a>01296             <a class="code" href="classbus__control.html#a148ea98b9f651aca240d70af989075b9">S_PC_2</a>: <span class="vhdlkeyword">begin</span>
608
<a name="l01297"></a>01297                 <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
609
<a name="l01298"></a>01298                 <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
610
<a name="l01299"></a>01299
611
<a name="l01300"></a>01300                 <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a8a9e94dfe7411c15ca111736893cdf91">S_PC_1</a>;
612
<a name="l01301"></a>01301             <span class="vhdlkeyword">end</span>
613
<a name="l01302"></a>01302             <a class="code" href="classbus__control.html#ad385dc358e8b88671205229d0a99bf1f">S_PC_3</a>: <span class="vhdlkeyword">begin</span>
614
<a name="l01303"></a>01303                 <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aacaa0a0a5bd2fca75fd2a87952a3c096">ACK_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
615
<a name="l01304"></a>01304                     <span class="vhdlkeyword">if</span>(<span class="vhdlchar">pc_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b10</span>) <span class="vhdlkeyword">begin</span>
616
<a name="l01305"></a>01305                         <span class="keyword">//CYC_O &lt;= 1&#39;b1;</span>
617
<a name="l01306"></a>01306                         <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a> &lt;= <a class="code" href="classbus__control.html#accfafb28c124ffe3b1da8aec439bdf6e">pc_i_plus_6</a>[<span class="vhdllogic">31</span>:<span class="vhdllogic">2</span>];
618
<a name="l01307"></a>01307                         <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;= <span class="vhdllogic">4&#39;b1111</span>;
619
<a name="l01308"></a>01308                         <span class="keyword">//STB_O &lt;= 1&#39;b1;</span>
620
<a name="l01309"></a>01309                         <span class="keyword">//WE_O &lt;= 1&#39;b0;</span>
621
<a name="l01310"></a>01310
622
<a name="l01311"></a>01311                         <a class="code" href="classbus__control.html#a1faf237291fb36f519f228b5ff5d005b">SGL_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
623
<a name="l01312"></a>01312                         <a class="code" href="classbus__control.html#a185308dd649e2e113012e2fa73a636fa">BLK_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
624
<a name="l01313"></a>01313                         <a class="code" href="classbus__control.html#a84b20fe40418386b65f4491f83d18f0d">RMW_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
625
<a name="l01314"></a>01314                         <a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &lt;= <a class="code" href="classbus__control.html#acb4e09af86df2ea6f0da2a8f40728f33">CTI_END_OF_BURST</a>;
626
<a name="l01315"></a>01315
627
<a name="l01316"></a>01316                         <span class="keyword">//if(supervisor_i == 1&#39;b1)    fc_o &lt;= FC_SUPERVISOR_PROGRAM;</span>
628
<a name="l01317"></a>01317                         <span class="keyword">//else                        fc_o &lt;= FC_USER_PROGRAM;</span>
629
<a name="l01318"></a>01318
630
<a name="l01319"></a>01319                         <span class="vhdlchar">prefetch_ir_o</span> &lt;= { <span class="vhdlchar">prefetch_ir_o</span>[<span class="vhdllogic">79</span>:<span class="vhdllogic">64</span>], <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">31</span>:<span class="vhdllogic">0</span>], <span class="vhdllogic">32&#39;b0</span> };
631
<a name="l01320"></a>01320
632
<a name="l01321"></a>01321                         <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#aa8a3b2bf084e2a3f1736940575538cd7">S_PC_5</a>;
633
<a name="l01322"></a>01322                     <span class="vhdlkeyword">end</span>
634
<a name="l01323"></a>01323                     <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
635
<a name="l01324"></a>01324                         <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
636
<a name="l01325"></a>01325                         <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
637
<a name="l01326"></a>01326
638
<a name="l01327"></a>01327                         <span class="vhdlchar">prefetch_ir_o</span> &lt;= { <span class="vhdlchar">prefetch_ir_o</span>[<span class="vhdllogic">79</span>:<span class="vhdllogic">48</span>], <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">31</span>:<span class="vhdllogic">0</span>], <span class="vhdllogic">16&#39;b0</span> };
639
<a name="l01328"></a>01328
640
<a name="l01329"></a>01329                         <span class="vhdlchar">prefetch_ir_valid_32_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
641
<a name="l01330"></a>01330                         <span class="vhdlchar">prefetch_ir_valid_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
642
<a name="l01331"></a>01331                         <span class="vhdlchar">prefetch_ir_valid_80_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
643
<a name="l01332"></a>01332                         <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#ae669ea2b686fa66a91981cb250ebc3b1">S_INIT</a>;
644
<a name="l01333"></a>01333                     <span class="vhdlkeyword">end</span>
645
<a name="l01334"></a>01334                 <span class="vhdlkeyword">end</span>
646
<a name="l01335"></a>01335                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#a36e423840bd01f096de364f3569f1ceb">RTY_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
647
<a name="l01336"></a>01336                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
648
<a name="l01337"></a>01337                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
649
<a name="l01338"></a>01338
650
<a name="l01339"></a>01339                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#acd4ae966e48176307fbfbe75f30d5a4a">S_PC_4</a>;
651
<a name="l01340"></a>01340                 <span class="vhdlkeyword">end</span>
652
<a name="l01341"></a>01341                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aebe818eef013f4d18ba9b260bb976433">ERR_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
653
<a name="l01342"></a>01342                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
654
<a name="l01343"></a>01343                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
655
<a name="l01344"></a>01344
656
<a name="l01345"></a>01345                     <span class="vhdlchar">fault_address_state_o</span> &lt;= { <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a>, <span class="vhdllogic">2&#39;b00</span> };
657
<a name="l01346"></a>01346                     <span class="vhdlchar">rw_state_o</span> &lt;= ~<a class="code" href="classbus__control.html#a24f98645faa8b5c8b6a919708770b3d8">WE_O</a>;
658
<a name="l01347"></a>01347                     <span class="vhdlchar">fc_state_o</span> &lt;= <a class="code" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a>;
659
<a name="l01348"></a>01348                     <span class="vhdlchar">interrupt_trap_o</span> &lt;= <a class="code" href="classbus__control.html#ac907148aa83b25bcbfb6f83d70a54ca7">VECTOR_BUS_TRAP</a>;
660
<a name="l01349"></a>01349
661
<a name="l01350"></a>01350                     <span class="vhdlchar">jmp_bus_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
662
<a name="l01351"></a>01351                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
663
<a name="l01352"></a>01352                 <span class="vhdlkeyword">end</span>
664
<a name="l01353"></a>01353             <span class="vhdlkeyword">end</span>
665
<a name="l01354"></a>01354             <a class="code" href="classbus__control.html#acd4ae966e48176307fbfbe75f30d5a4a">S_PC_4</a>: <span class="vhdlkeyword">begin</span>
666
<a name="l01355"></a>01355                 <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
667
<a name="l01356"></a>01356                 <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
668
<a name="l01357"></a>01357
669
<a name="l01358"></a>01358                 <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#ad385dc358e8b88671205229d0a99bf1f">S_PC_3</a>;
670
<a name="l01359"></a>01359             <span class="vhdlkeyword">end</span>
671
<a name="l01360"></a>01360             <a class="code" href="classbus__control.html#aa8a3b2bf084e2a3f1736940575538cd7">S_PC_5</a>: <span class="vhdlkeyword">begin</span>
672
<a name="l01361"></a>01361                 <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aacaa0a0a5bd2fca75fd2a87952a3c096">ACK_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
673
<a name="l01362"></a>01362                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
674
<a name="l01363"></a>01363                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
675
<a name="l01364"></a>01364
676
<a name="l01365"></a>01365                     <span class="vhdlchar">prefetch_ir_o</span> &lt;= { <span class="vhdlchar">prefetch_ir_o</span>[<span class="vhdllogic">79</span>:<span class="vhdllogic">32</span>], <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">31</span>:<span class="vhdllogic">0</span>] };
677
<a name="l01366"></a>01366
678
<a name="l01367"></a>01367                     <span class="vhdlchar">prefetch_ir_valid_32_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
679
<a name="l01368"></a>01368                     <span class="vhdlchar">prefetch_ir_valid_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
680
<a name="l01369"></a>01369                     <span class="vhdlchar">prefetch_ir_valid_80_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
681
<a name="l01370"></a>01370                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#ae669ea2b686fa66a91981cb250ebc3b1">S_INIT</a>;
682
<a name="l01371"></a>01371                 <span class="vhdlkeyword">end</span>
683
<a name="l01372"></a>01372                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#a36e423840bd01f096de364f3569f1ceb">RTY_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
684
<a name="l01373"></a>01373                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
685
<a name="l01374"></a>01374                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
686
<a name="l01375"></a>01375
687
<a name="l01376"></a>01376                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a754163aa3bf48e5904b596cee69af182">S_PC_6</a>;
688
<a name="l01377"></a>01377                 <span class="vhdlkeyword">end</span>
689
<a name="l01378"></a>01378                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aebe818eef013f4d18ba9b260bb976433">ERR_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
690
<a name="l01379"></a>01379                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
691
<a name="l01380"></a>01380                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
692
<a name="l01381"></a>01381
693
<a name="l01382"></a>01382                     <span class="vhdlchar">fault_address_state_o</span> &lt;= { <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a>, <span class="vhdllogic">2&#39;b00</span> };
694
<a name="l01383"></a>01383                     <span class="vhdlchar">rw_state_o</span> &lt;= ~<a class="code" href="classbus__control.html#a24f98645faa8b5c8b6a919708770b3d8">WE_O</a>;
695
<a name="l01384"></a>01384                     <span class="vhdlchar">fc_state_o</span> &lt;= <a class="code" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a>;
696
<a name="l01385"></a>01385                     <span class="vhdlchar">interrupt_trap_o</span> &lt;= <a class="code" href="classbus__control.html#ac907148aa83b25bcbfb6f83d70a54ca7">VECTOR_BUS_TRAP</a>;
697
<a name="l01386"></a>01386
698
<a name="l01387"></a>01387                     <span class="vhdlchar">jmp_bus_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
699
<a name="l01388"></a>01388                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
700
<a name="l01389"></a>01389                 <span class="vhdlkeyword">end</span>
701
<a name="l01390"></a>01390             <span class="vhdlkeyword">end</span>
702
<a name="l01391"></a>01391             <a class="code" href="classbus__control.html#a754163aa3bf48e5904b596cee69af182">S_PC_6</a>: <span class="vhdlkeyword">begin</span>
703
<a name="l01392"></a>01392                 <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
704
<a name="l01393"></a>01393                 <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
705
<a name="l01394"></a>01394
706
<a name="l01395"></a>01395                 <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#aa8a3b2bf084e2a3f1736940575538cd7">S_PC_5</a>;
707
<a name="l01396"></a>01396             <span class="vhdlkeyword">end</span>
708
<a name="l01397"></a>01397
709
<a name="l01398"></a>01398             <span class="keyword">//*******************</span>
710
<a name="l01399"></a>01399             <a class="code" href="classbus__control.html#a253dfab6448dcef96d643494637743a2">S_READ_1</a>: <span class="vhdlkeyword">begin</span>
711
<a name="l01400"></a>01400                 <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aacaa0a0a5bd2fca75fd2a87952a3c096">ACK_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
712
<a name="l01401"></a>01401                     <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b10</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b10</span>) <span class="vhdlkeyword">begin</span>
713
<a name="l01402"></a>01402                         <span class="keyword">//CYC_O &lt;= 1&#39;b1;</span>
714
<a name="l01403"></a>01403                         <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a> &lt;= <a class="code" href="classbus__control.html#a26acd69a146a7edd95e55bf45ee337c1">address_i_plus_4</a>[<span class="vhdllogic">31</span>:<span class="vhdllogic">2</span>];
715
<a name="l01404"></a>01404                         <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;= <span class="vhdllogic">4&#39;b1100</span>;
716
<a name="l01405"></a>01405                         <span class="keyword">//STB_O &lt;= 1&#39;b1;</span>
717
<a name="l01406"></a>01406                         <span class="keyword">//WE_O &lt;= 1&#39;b0;</span>
718
<a name="l01407"></a>01407
719
<a name="l01408"></a>01408                         <span class="keyword">//SGL_O &lt;= 1&#39;b0;</span>
720
<a name="l01409"></a>01409                         <span class="keyword">//BLK_O &lt;= 1&#39;b1;</span>
721
<a name="l01410"></a>01410                         <span class="keyword">//RMW_O &lt;= 1&#39;b0;</span>
722
<a name="l01411"></a>01411                         <a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &lt;= <a class="code" href="classbus__control.html#acb4e09af86df2ea6f0da2a8f40728f33">CTI_END_OF_BURST</a>;
723
<a name="l01412"></a>01412
724
<a name="l01413"></a>01413                         <span class="keyword">//if(supervisor_i == 1&#39;b1)    fc_o &lt;= (address_type_i == 1&#39;b0) ? FC_SUPERVISOR_DATA : FC_SUPERVISOR_PROGRAM;</span>
725
<a name="l01414"></a>01414                         <span class="keyword">//else                        fc_o &lt;= (address_type_i == 1&#39;b0) ? FC_USER_DATA : FC_USER_PROGRAM;</span>
726
<a name="l01415"></a>01415
727
<a name="l01416"></a>01416                         <span class="vhdlchar">data_read_o</span> &lt;= { <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">15</span>:<span class="vhdllogic">0</span>], <span class="vhdllogic">16&#39;b0</span> };
728
<a name="l01417"></a>01417
729
<a name="l01418"></a>01418                         <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a2b4b67ddbe9f19ba9bb0d0868a887213">S_READ_2</a>;
730
<a name="l01419"></a>01419                     <span class="vhdlkeyword">end</span>
731
<a name="l01420"></a>01420                     <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
732
<a name="l01421"></a>01421                         <span class="vhdlkeyword">if</span>(<span class="vhdlchar">read_modify_write_i</span> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
733
<a name="l01422"></a>01422                             <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
734
<a name="l01423"></a>01423                             <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
735
<a name="l01424"></a>01424                         <span class="vhdlkeyword">end</span>
736
<a name="l01425"></a>01425                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
737
<a name="l01426"></a>01426                             <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
738
<a name="l01427"></a>01427                             <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
739
<a name="l01428"></a>01428                         <span class="vhdlkeyword">end</span>
740
<a name="l01429"></a>01429
741
<a name="l01430"></a>01430                         <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b00</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b10</span>)            <span class="vhdlchar">data_read_o</span> &lt;= <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">31</span>:<span class="vhdllogic">0</span>];
742
<a name="l01431"></a>01431                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b10</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b01</span>)        <span class="vhdlchar">data_read_o</span> &lt;= { {<span class="vhdllogic">16</span>{<a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">15</span>]}}, <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">15</span>:<span class="vhdllogic">0</span>] };
743
<a name="l01432"></a>01432                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b00</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b01</span>)        <span class="vhdlchar">data_read_o</span> &lt;= { {<span class="vhdllogic">16</span>{<a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">31</span>]}}, <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">31</span>:<span class="vhdllogic">16</span>] };
744
<a name="l01433"></a>01433                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b11</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b00</span>)        <span class="vhdlchar">data_read_o</span> &lt;= { {<span class="vhdllogic">24</span>{<a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">7</span>]}}, <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">7</span>:<span class="vhdllogic">0</span>] };
745
<a name="l01434"></a>01434                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b10</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b00</span>)        <span class="vhdlchar">data_read_o</span> &lt;= { {<span class="vhdllogic">24</span>{<a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">15</span>]}}, <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">15</span>:<span class="vhdllogic">8</span>] };
746
<a name="l01435"></a>01435                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b01</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b00</span>)        <span class="vhdlchar">data_read_o</span> &lt;= { {<span class="vhdllogic">24</span>{<a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">23</span>]}}, <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">23</span>:<span class="vhdllogic">16</span>] };
747
<a name="l01436"></a>01436                         <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b00</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b00</span>)        <span class="vhdlchar">data_read_o</span> &lt;= { {<span class="vhdllogic">24</span>{<a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">31</span>]}}, <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">31</span>:<span class="vhdllogic">24</span>] };
748
<a name="l01437"></a>01437
749
<a name="l01438"></a>01438                         <span class="vhdlchar">finished_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
750
<a name="l01439"></a>01439                         <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
751
<a name="l01440"></a>01440                     <span class="vhdlkeyword">end</span>
752
<a name="l01441"></a>01441                 <span class="vhdlkeyword">end</span>
753
<a name="l01442"></a>01442                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#a36e423840bd01f096de364f3569f1ceb">RTY_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
754
<a name="l01443"></a>01443                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
755
<a name="l01444"></a>01444                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
756
<a name="l01445"></a>01445
757
<a name="l01446"></a>01446                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#ae669ea2b686fa66a91981cb250ebc3b1">S_INIT</a>;
758
<a name="l01447"></a>01447                 <span class="vhdlkeyword">end</span>
759
<a name="l01448"></a>01448                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aebe818eef013f4d18ba9b260bb976433">ERR_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
760
<a name="l01449"></a>01449                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
761
<a name="l01450"></a>01450                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
762
<a name="l01451"></a>01451
763
<a name="l01452"></a>01452                     <span class="vhdlchar">fault_address_state_o</span> &lt;= { <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a>, <span class="vhdllogic">2&#39;b00</span> };
764
<a name="l01453"></a>01453                     <span class="vhdlchar">rw_state_o</span> &lt;= ~<a class="code" href="classbus__control.html#a24f98645faa8b5c8b6a919708770b3d8">WE_O</a>;
765
<a name="l01454"></a>01454                     <span class="vhdlchar">fc_state_o</span> &lt;= <a class="code" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a>;
766
<a name="l01455"></a>01455                     <span class="vhdlchar">interrupt_trap_o</span> &lt;= <a class="code" href="classbus__control.html#ac907148aa83b25bcbfb6f83d70a54ca7">VECTOR_BUS_TRAP</a>;
767
<a name="l01456"></a>01456
768
<a name="l01457"></a>01457                     <span class="vhdlchar">jmp_bus_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
769
<a name="l01458"></a>01458                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
770
<a name="l01459"></a>01459                 <span class="vhdlkeyword">end</span>
771
<a name="l01460"></a>01460             <span class="vhdlkeyword">end</span>
772
<a name="l01461"></a>01461             <a class="code" href="classbus__control.html#a2b4b67ddbe9f19ba9bb0d0868a887213">S_READ_2</a>: <span class="vhdlkeyword">begin</span>
773
<a name="l01462"></a>01462                 <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aacaa0a0a5bd2fca75fd2a87952a3c096">ACK_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
774
<a name="l01463"></a>01463                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
775
<a name="l01464"></a>01464                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
776
<a name="l01465"></a>01465
777
<a name="l01466"></a>01466                     <span class="vhdlchar">data_read_o</span> &lt;= { <span class="vhdlchar">data_read_o</span>[<span class="vhdllogic">31</span>:<span class="vhdllogic">16</span>], <a class="code" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a>[<span class="vhdllogic">31</span>:<span class="vhdllogic">16</span>] };
778
<a name="l01467"></a>01467
779
<a name="l01468"></a>01468                     <span class="vhdlchar">finished_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
780
<a name="l01469"></a>01469                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
781
<a name="l01470"></a>01470
782
<a name="l01471"></a>01471                 <span class="vhdlkeyword">end</span>
783
<a name="l01472"></a>01472                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#a36e423840bd01f096de364f3569f1ceb">RTY_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
784
<a name="l01473"></a>01473                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
785
<a name="l01474"></a>01474                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
786
<a name="l01475"></a>01475
787
<a name="l01476"></a>01476                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a3d60da96931415e47d0ace64778dddfa">S_READ_3</a>;
788
<a name="l01477"></a>01477                 <span class="vhdlkeyword">end</span>
789
<a name="l01478"></a>01478                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aebe818eef013f4d18ba9b260bb976433">ERR_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
790
<a name="l01479"></a>01479                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
791
<a name="l01480"></a>01480                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
792
<a name="l01481"></a>01481
793
<a name="l01482"></a>01482                     <span class="vhdlchar">fault_address_state_o</span> &lt;= { <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a>, <span class="vhdllogic">2&#39;b00</span> };
794
<a name="l01483"></a>01483                     <span class="vhdlchar">rw_state_o</span> &lt;= ~<a class="code" href="classbus__control.html#a24f98645faa8b5c8b6a919708770b3d8">WE_O</a>;
795
<a name="l01484"></a>01484                     <span class="vhdlchar">fc_state_o</span> &lt;= <a class="code" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a>;
796
<a name="l01485"></a>01485                     <span class="vhdlchar">interrupt_trap_o</span> &lt;= <a class="code" href="classbus__control.html#ac907148aa83b25bcbfb6f83d70a54ca7">VECTOR_BUS_TRAP</a>;
797
<a name="l01486"></a>01486
798
<a name="l01487"></a>01487                     <span class="vhdlchar">jmp_bus_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
799
<a name="l01488"></a>01488                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
800
<a name="l01489"></a>01489                 <span class="vhdlkeyword">end</span>
801
<a name="l01490"></a>01490
802
<a name="l01491"></a>01491             <span class="vhdlkeyword">end</span>
803
<a name="l01492"></a>01492             <a class="code" href="classbus__control.html#a3d60da96931415e47d0ace64778dddfa">S_READ_3</a>: <span class="vhdlkeyword">begin</span>
804
<a name="l01493"></a>01493                 <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
805
<a name="l01494"></a>01494                 <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
806
<a name="l01495"></a>01495
807
<a name="l01496"></a>01496                 <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a2b4b67ddbe9f19ba9bb0d0868a887213">S_READ_2</a>;
808
<a name="l01497"></a>01497             <span class="vhdlkeyword">end</span>
809
<a name="l01498"></a>01498
810
<a name="l01499"></a>01499
811
<a name="l01500"></a>01500             <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>: <span class="vhdlkeyword">begin</span>
812
<a name="l01501"></a>01501                 <span class="vhdlchar">jmp_address_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
813
<a name="l01502"></a>01502                 <span class="vhdlchar">jmp_bus_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
814
<a name="l01503"></a>01503
815
<a name="l01504"></a>01504                 <span class="vhdlkeyword">if</span>(<span class="vhdlchar">do_read_i</span> == <span class="vhdllogic">1&#39;b0</span> &amp;&amp; <span class="vhdlchar">do_write_i</span> == <span class="vhdllogic">1&#39;b0</span> &amp;&amp; <span class="vhdlchar">do_interrupt_i</span> == <span class="vhdllogic">1&#39;b0</span> &amp;&amp; <span class="vhdlchar">do_reset_i</span> == <span class="vhdllogic">1&#39;b0</span>) <span class="vhdlkeyword">begin</span>
816
<a name="l01505"></a>01505                     <span class="vhdlchar">finished_o</span> &lt;= <span class="vhdllogic">1&#39;b0</span>;
817
<a name="l01506"></a>01506                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#ae669ea2b686fa66a91981cb250ebc3b1">S_INIT</a>;
818
<a name="l01507"></a>01507                 <span class="vhdlkeyword">end</span>
819
<a name="l01508"></a>01508             <span class="vhdlkeyword">end</span>
820
<a name="l01509"></a>01509
821
<a name="l01510"></a>01510             <span class="keyword">//**********************</span>
822
<a name="l01511"></a>01511             <a class="code" href="classbus__control.html#a711b0f070226bfd72354cc22c5f0ba96">S_WRITE_1</a>: <span class="vhdlkeyword">begin</span>
823
<a name="l01512"></a>01512                 <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aacaa0a0a5bd2fca75fd2a87952a3c096">ACK_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
824
<a name="l01513"></a>01513                     <span class="vhdlkeyword">if</span>(<span class="vhdlchar">address_i</span>[<span class="vhdllogic">1</span>:<span class="vhdllogic">0</span>] == <span class="vhdllogic">2&#39;b10</span> &amp;&amp; <span class="vhdlchar">size_i</span> == <span class="vhdllogic">2&#39;b10</span>) <span class="vhdlkeyword">begin</span>
825
<a name="l01514"></a>01514                         <span class="keyword">//CYC_O &lt;= 1&#39;b1;</span>
826
<a name="l01515"></a>01515                         <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a> &lt;= <a class="code" href="classbus__control.html#a26acd69a146a7edd95e55bf45ee337c1">address_i_plus_4</a>[<span class="vhdllogic">31</span>:<span class="vhdllogic">2</span>];
827
<a name="l01516"></a>01516                         <span class="keyword">//STB_O &lt;= 1&#39;b1;</span>
828
<a name="l01517"></a>01517                         <span class="keyword">//WE_O &lt;= 1&#39;b1;</span>
829
<a name="l01518"></a>01518
830
<a name="l01519"></a>01519                         <a class="code" href="classbus__control.html#accc5324e304fe8ed513657f707c70031">DAT_O</a> &lt;= { <span class="vhdlchar">data_write_i</span>[<span class="vhdllogic">15</span>:<span class="vhdllogic">0</span>], <span class="vhdllogic">16&#39;b0</span> };
831
<a name="l01520"></a>01520                         <a class="code" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a> &lt;= <span class="vhdllogic">4&#39;b1100</span>;
832
<a name="l01521"></a>01521
833
<a name="l01522"></a>01522                         <span class="keyword">//SGL_O &lt;= 1&#39;b0;</span>
834
<a name="l01523"></a>01523                         <span class="keyword">//BLK_O &lt;= 1&#39;b1;</span>
835
<a name="l01524"></a>01524                         <span class="keyword">//RMW_O &lt;= 1&#39;b0;</span>
836
<a name="l01525"></a>01525                         <a class="code" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a> &lt;= <a class="code" href="classbus__control.html#acb4e09af86df2ea6f0da2a8f40728f33">CTI_END_OF_BURST</a>;
837
<a name="l01526"></a>01526
838
<a name="l01527"></a>01527                         <span class="keyword">//if(supervisor_i == 1&#39;b1)    fc_o &lt;= FC_SUPERVISOR_DATA;</span>
839
<a name="l01528"></a>01528                         <span class="keyword">//else                        fc_o &lt;= FC_USER_DATA;</span>
840
<a name="l01529"></a>01529
841
<a name="l01530"></a>01530                         <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#adc8b50505723a4b117436e8c5f6834b2">S_WRITE_2</a>;
842
<a name="l01531"></a>01531                     <span class="vhdlkeyword">end</span>
843
<a name="l01532"></a>01532                     <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">begin</span>
844
<a name="l01533"></a>01533                         <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
845
<a name="l01534"></a>01534                         <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
846
<a name="l01535"></a>01535
847
<a name="l01536"></a>01536                         <span class="vhdlchar">finished_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
848
<a name="l01537"></a>01537                         <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
849
<a name="l01538"></a>01538                     <span class="vhdlkeyword">end</span>
850
<a name="l01539"></a>01539                 <span class="vhdlkeyword">end</span>
851
<a name="l01540"></a>01540                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#a36e423840bd01f096de364f3569f1ceb">RTY_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
852
<a name="l01541"></a>01541                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
853
<a name="l01542"></a>01542                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
854
<a name="l01543"></a>01543
855
<a name="l01544"></a>01544                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#ae669ea2b686fa66a91981cb250ebc3b1">S_INIT</a>;
856
<a name="l01545"></a>01545                 <span class="vhdlkeyword">end</span>
857
<a name="l01546"></a>01546                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aebe818eef013f4d18ba9b260bb976433">ERR_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
858
<a name="l01547"></a>01547                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
859
<a name="l01548"></a>01548                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
860
<a name="l01549"></a>01549
861
<a name="l01550"></a>01550                     <span class="vhdlchar">fault_address_state_o</span> &lt;= { <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a>, <span class="vhdllogic">2&#39;b00</span> };
862
<a name="l01551"></a>01551                     <span class="vhdlchar">rw_state_o</span> &lt;= ~<a class="code" href="classbus__control.html#a24f98645faa8b5c8b6a919708770b3d8">WE_O</a>;
863
<a name="l01552"></a>01552                     <span class="vhdlchar">fc_state_o</span> &lt;= <a class="code" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a>;
864
<a name="l01553"></a>01553                     <span class="vhdlchar">interrupt_trap_o</span> &lt;= <a class="code" href="classbus__control.html#ac907148aa83b25bcbfb6f83d70a54ca7">VECTOR_BUS_TRAP</a>;
865
<a name="l01554"></a>01554
866
<a name="l01555"></a>01555                     <span class="vhdlchar">jmp_bus_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
867
<a name="l01556"></a>01556                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
868
<a name="l01557"></a>01557                 <span class="vhdlkeyword">end</span>
869
<a name="l01558"></a>01558
870
<a name="l01559"></a>01559             <span class="vhdlkeyword">end</span>
871
<a name="l01560"></a>01560             <a class="code" href="classbus__control.html#adc8b50505723a4b117436e8c5f6834b2">S_WRITE_2</a>: <span class="vhdlkeyword">begin</span>
872
<a name="l01561"></a>01561                 <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aacaa0a0a5bd2fca75fd2a87952a3c096">ACK_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
873
<a name="l01562"></a>01562                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
874
<a name="l01563"></a>01563                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
875
<a name="l01564"></a>01564
876
<a name="l01565"></a>01565                     <span class="vhdlchar">finished_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
877
<a name="l01566"></a>01566                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
878
<a name="l01567"></a>01567
879
<a name="l01568"></a>01568                 <span class="vhdlkeyword">end</span>
880
<a name="l01569"></a>01569                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#a36e423840bd01f096de364f3569f1ceb">RTY_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
881
<a name="l01570"></a>01570                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
882
<a name="l01571"></a>01571                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
883
<a name="l01572"></a>01572
884
<a name="l01573"></a>01573                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a4036f3844054e5be6679c98c159d747a">S_WRITE_3</a>;
885
<a name="l01574"></a>01574                 <span class="vhdlkeyword">end</span>
886
<a name="l01575"></a>01575                 <span class="vhdlkeyword">else</span> <span class="vhdlkeyword">if</span>(<a class="code" href="classbus__control.html#aebe818eef013f4d18ba9b260bb976433">ERR_I</a> == <span class="vhdllogic">1&#39;b1</span>) <span class="vhdlkeyword">begin</span>
887
<a name="l01576"></a>01576                     <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
888
<a name="l01577"></a>01577                     <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b0</span>;
889
<a name="l01578"></a>01578
890
<a name="l01579"></a>01579                     <span class="vhdlchar">fault_address_state_o</span> &lt;= { <a class="code" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a>, <span class="vhdllogic">2&#39;b00</span> };
891
<a name="l01580"></a>01580                     <span class="vhdlchar">rw_state_o</span> &lt;= ~<a class="code" href="classbus__control.html#a24f98645faa8b5c8b6a919708770b3d8">WE_O</a>;
892
<a name="l01581"></a>01581                     <span class="vhdlchar">fc_state_o</span> &lt;= <a class="code" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a>;
893
<a name="l01582"></a>01582                     <span class="vhdlchar">interrupt_trap_o</span> &lt;= <a class="code" href="classbus__control.html#ac907148aa83b25bcbfb6f83d70a54ca7">VECTOR_BUS_TRAP</a>;
894
<a name="l01583"></a>01583
895
<a name="l01584"></a>01584                     <span class="vhdlchar">jmp_bus_trap_o</span> &lt;= <span class="vhdllogic">1&#39;b1</span>;
896
<a name="l01585"></a>01585                     <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a>;
897
<a name="l01586"></a>01586                 <span class="vhdlkeyword">end</span>
898
<a name="l01587"></a>01587
899
<a name="l01588"></a>01588             <span class="vhdlkeyword">end</span>
900
<a name="l01589"></a>01589             <a class="code" href="classbus__control.html#a4036f3844054e5be6679c98c159d747a">S_WRITE_3</a>: <span class="vhdlkeyword">begin</span>
901
<a name="l01590"></a>01590                 <a class="code" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
902
<a name="l01591"></a>01591                 <a class="code" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a> &lt;= <span class="vhdllogic">1&#39;b1</span>;
903
<a name="l01592"></a>01592
904
<a name="l01593"></a>01593                 <a class="code" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a> &lt;= <a class="code" href="classbus__control.html#adc8b50505723a4b117436e8c5f6834b2">S_WRITE_2</a>;
905
<a name="l01594"></a>01594             <span class="vhdlkeyword">end</span>
906
<a name="l01595"></a>01595
907
<a name="l01596"></a>01596         <span class="vhdlkeyword">endcase</span>
908
<a name="l01597"></a>01597     <span class="vhdlkeyword">end</span>
909
<a name="l01598"></a>01598 <span class="vhdlkeyword">end</span>
910
</pre></div>
911
</div>
912
</div>
913
<hr/><h2>Member Data Documentation</h2>
914
<a class="anchor" id="ae9a3815417309441fdd6154254f2ff5f"></a><!-- doxytag: member="bus_control::S_BLOCKED" ref="ae9a3815417309441fdd6154254f2ff5f" args="5'd2" -->
915
<div class="memitem">
916
<div class="memproto">
917
      <table class="memname">
918
        <tr>
919
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#ae9a3815417309441fdd6154254f2ff5f">S_BLOCKED</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd2</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
920
        </tr>
921
      </table>
922
</div>
923
<div class="memdoc">
924
 
925
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
926
 
927
</div>
928
</div>
929
<a class="anchor" id="a129f99705777db3b90b7fd721f7ba7e1"></a><!-- doxytag: member="bus_control::S_INT_1" ref="a129f99705777db3b90b7fd721f7ba7e1" args="5'd3" -->
930
<div class="memitem">
931
<div class="memproto">
932
      <table class="memname">
933
        <tr>
934
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a129f99705777db3b90b7fd721f7ba7e1">S_INT_1</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd3</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
935
        </tr>
936
      </table>
937
</div>
938
<div class="memdoc">
939
 
940
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
941
 
942
</div>
943
</div>
944
<a class="anchor" id="a253dfab6448dcef96d643494637743a2"></a><!-- doxytag: member="bus_control::S_READ_1" ref="a253dfab6448dcef96d643494637743a2" args="5'd4" -->
945
<div class="memitem">
946
<div class="memproto">
947
      <table class="memname">
948
        <tr>
949
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a253dfab6448dcef96d643494637743a2">S_READ_1</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd4</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
950
        </tr>
951
      </table>
952
</div>
953
<div class="memdoc">
954
 
955
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
956
 
957
</div>
958
</div>
959
<a class="anchor" id="a2b4b67ddbe9f19ba9bb0d0868a887213"></a><!-- doxytag: member="bus_control::S_READ_2" ref="a2b4b67ddbe9f19ba9bb0d0868a887213" args="5'd5" -->
960
<div class="memitem">
961
<div class="memproto">
962
      <table class="memname">
963
        <tr>
964
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a2b4b67ddbe9f19ba9bb0d0868a887213">S_READ_2</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd5</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
965
        </tr>
966
      </table>
967
</div>
968
<div class="memdoc">
969
 
970
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
971
 
972
</div>
973
</div>
974
<a class="anchor" id="a3d60da96931415e47d0ace64778dddfa"></a><!-- doxytag: member="bus_control::S_READ_3" ref="a3d60da96931415e47d0ace64778dddfa" args="5'd6" -->
975
<div class="memitem">
976
<div class="memproto">
977
      <table class="memname">
978
        <tr>
979
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a3d60da96931415e47d0ace64778dddfa">S_READ_3</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd6</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
980
        </tr>
981
      </table>
982
</div>
983
<div class="memdoc">
984
 
985
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
986
 
987
</div>
988
</div>
989
<a class="anchor" id="a9cef5fece5563423981c8a2daf60b900"></a><!-- doxytag: member="bus_control::S_WAIT" ref="a9cef5fece5563423981c8a2daf60b900" args="5'd7" -->
990
<div class="memitem">
991
<div class="memproto">
992
      <table class="memname">
993
        <tr>
994
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a9cef5fece5563423981c8a2daf60b900">S_WAIT</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd7</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
995
        </tr>
996
      </table>
997
</div>
998
<div class="memdoc">
999
 
1000
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1001
 
1002
</div>
1003
</div>
1004
<a class="anchor" id="a711b0f070226bfd72354cc22c5f0ba96"></a><!-- doxytag: member="bus_control::S_WRITE_1" ref="a711b0f070226bfd72354cc22c5f0ba96" args="5'd8" -->
1005
<div class="memitem">
1006
<div class="memproto">
1007
      <table class="memname">
1008
        <tr>
1009
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a711b0f070226bfd72354cc22c5f0ba96">S_WRITE_1</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd8</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1010
        </tr>
1011
      </table>
1012
</div>
1013
<div class="memdoc">
1014
 
1015
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1016
 
1017
</div>
1018
</div>
1019
<a class="anchor" id="adc8b50505723a4b117436e8c5f6834b2"></a><!-- doxytag: member="bus_control::S_WRITE_2" ref="adc8b50505723a4b117436e8c5f6834b2" args="5'd9" -->
1020
<div class="memitem">
1021
<div class="memproto">
1022
      <table class="memname">
1023
        <tr>
1024
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#adc8b50505723a4b117436e8c5f6834b2">S_WRITE_2</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd9</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1025
        </tr>
1026
      </table>
1027
</div>
1028
<div class="memdoc">
1029
 
1030
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1031
 
1032
</div>
1033
</div>
1034
<a class="anchor" id="a4036f3844054e5be6679c98c159d747a"></a><!-- doxytag: member="bus_control::S_WRITE_3" ref="a4036f3844054e5be6679c98c159d747a" args="5'd10" -->
1035
<div class="memitem">
1036
<div class="memproto">
1037
      <table class="memname">
1038
        <tr>
1039
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a4036f3844054e5be6679c98c159d747a">S_WRITE_3</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd10</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1040
        </tr>
1041
      </table>
1042
</div>
1043
<div class="memdoc">
1044
 
1045
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1046
 
1047
</div>
1048
</div>
1049
<a class="anchor" id="a5cd75eaf03abba5a5ad4cf6ae14a0614"></a><!-- doxytag: member="bus_control::S_PC_0" ref="a5cd75eaf03abba5a5ad4cf6ae14a0614" args="5'd11" -->
1050
<div class="memitem">
1051
<div class="memproto">
1052
      <table class="memname">
1053
        <tr>
1054
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a5cd75eaf03abba5a5ad4cf6ae14a0614">S_PC_0</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd11</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1055
        </tr>
1056
      </table>
1057
</div>
1058
<div class="memdoc">
1059
 
1060
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1061
 
1062
</div>
1063
</div>
1064
<a class="anchor" id="a8a9e94dfe7411c15ca111736893cdf91"></a><!-- doxytag: member="bus_control::S_PC_1" ref="a8a9e94dfe7411c15ca111736893cdf91" args="5'd12" -->
1065
<div class="memitem">
1066
<div class="memproto">
1067
      <table class="memname">
1068
        <tr>
1069
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a8a9e94dfe7411c15ca111736893cdf91">S_PC_1</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd12</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1070
        </tr>
1071
      </table>
1072
</div>
1073
<div class="memdoc">
1074
 
1075
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1076
 
1077
</div>
1078
</div>
1079
<a class="anchor" id="a148ea98b9f651aca240d70af989075b9"></a><!-- doxytag: member="bus_control::S_PC_2" ref="a148ea98b9f651aca240d70af989075b9" args="5'd13" -->
1080
<div class="memitem">
1081
<div class="memproto">
1082
      <table class="memname">
1083
        <tr>
1084
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a148ea98b9f651aca240d70af989075b9">S_PC_2</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd13</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1085
        </tr>
1086
      </table>
1087
</div>
1088
<div class="memdoc">
1089
 
1090
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1091
 
1092
</div>
1093
</div>
1094
<a class="anchor" id="ad385dc358e8b88671205229d0a99bf1f"></a><!-- doxytag: member="bus_control::S_PC_3" ref="ad385dc358e8b88671205229d0a99bf1f" args="5'd14" -->
1095
<div class="memitem">
1096
<div class="memproto">
1097
      <table class="memname">
1098
        <tr>
1099
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#ad385dc358e8b88671205229d0a99bf1f">S_PC_3</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd14</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1100
        </tr>
1101
      </table>
1102
</div>
1103
<div class="memdoc">
1104
 
1105
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1106
 
1107
</div>
1108
</div>
1109
<a class="anchor" id="acd4ae966e48176307fbfbe75f30d5a4a"></a><!-- doxytag: member="bus_control::S_PC_4" ref="acd4ae966e48176307fbfbe75f30d5a4a" args="5'd15" -->
1110
<div class="memitem">
1111
<div class="memproto">
1112
      <table class="memname">
1113
        <tr>
1114
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#acd4ae966e48176307fbfbe75f30d5a4a">S_PC_4</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd15</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1115
        </tr>
1116
      </table>
1117
</div>
1118
<div class="memdoc">
1119
 
1120
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1121
 
1122
</div>
1123
</div>
1124
<a class="anchor" id="aa8a3b2bf084e2a3f1736940575538cd7"></a><!-- doxytag: member="bus_control::S_PC_5" ref="aa8a3b2bf084e2a3f1736940575538cd7" args="5'd16" -->
1125
<div class="memitem">
1126
<div class="memproto">
1127
      <table class="memname">
1128
        <tr>
1129
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#aa8a3b2bf084e2a3f1736940575538cd7">S_PC_5</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd16</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1130
        </tr>
1131
      </table>
1132
</div>
1133
<div class="memdoc">
1134
 
1135
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1136
 
1137
</div>
1138
</div>
1139
<a class="anchor" id="a754163aa3bf48e5904b596cee69af182"></a><!-- doxytag: member="bus_control::S_PC_6" ref="a754163aa3bf48e5904b596cee69af182" args="5'd17" -->
1140
<div class="memitem">
1141
<div class="memproto">
1142
      <table class="memname">
1143
        <tr>
1144
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a754163aa3bf48e5904b596cee69af182">S_PC_6</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd17</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1145
        </tr>
1146
      </table>
1147
</div>
1148
<div class="memdoc">
1149
 
1150
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1151
 
1152
</div>
1153
</div>
1154
<a class="anchor" id="a7e192ec9ff8cd25d0b7504db08ed441f"></a><!-- doxytag: member="bus_control::FC_USER_DATA" ref="a7e192ec9ff8cd25d0b7504db08ed441f" args="3'd1" -->
1155
<div class="memitem">
1156
<div class="memproto">
1157
      <table class="memname">
1158
        <tr>
1159
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a7e192ec9ff8cd25d0b7504db08ed441f">FC_USER_DATA</a></span> <b><span class="vhdlchar">[</span><span class="vhdldigit">2</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">3'd1</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1160
        </tr>
1161
      </table>
1162
</div>
1163
<div class="memdoc">
1164
 
1165
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00856">856</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1166
 
1167
</div>
1168
</div>
1169
<a class="anchor" id="ab691b086857ecfbec66dea2b591969c7"></a><!-- doxytag: member="bus_control::FC_USER_PROGRAM" ref="ab691b086857ecfbec66dea2b591969c7" args="3'd2" -->
1170
<div class="memitem">
1171
<div class="memproto">
1172
      <table class="memname">
1173
        <tr>
1174
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#ab691b086857ecfbec66dea2b591969c7">FC_USER_PROGRAM</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">3'd2</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1175
        </tr>
1176
      </table>
1177
</div>
1178
<div class="memdoc">
1179
 
1180
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00856">856</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1181
 
1182
</div>
1183
</div>
1184
<a class="anchor" id="a258422ffe3891c54d2241767c672463c"></a><!-- doxytag: member="bus_control::FC_SUPERVISOR_DATA" ref="a258422ffe3891c54d2241767c672463c" args="3'd5" -->
1185
<div class="memitem">
1186
<div class="memproto">
1187
      <table class="memname">
1188
        <tr>
1189
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a258422ffe3891c54d2241767c672463c">FC_SUPERVISOR_DATA</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">3'd5</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1190
        </tr>
1191
      </table>
1192
</div>
1193
<div class="memdoc">
1194
 
1195
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00856">856</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1196
 
1197
</div>
1198
</div>
1199
<a class="anchor" id="afbd0803171f26175a2a3380def82a8f7"></a><!-- doxytag: member="bus_control::FC_SUPERVISOR_PROGRAM" ref="afbd0803171f26175a2a3380def82a8f7" args="3'd6" -->
1200
<div class="memitem">
1201
<div class="memproto">
1202
      <table class="memname">
1203
        <tr>
1204
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#afbd0803171f26175a2a3380def82a8f7">FC_SUPERVISOR_PROGRAM</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">3'd6</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1205
        </tr>
1206
      </table>
1207
</div>
1208
<div class="memdoc">
1209
 
1210
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00856">856</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1211
 
1212
</div>
1213
</div>
1214
<a class="anchor" id="ae7000ccb647ae60f28953281953d9fc3"></a><!-- doxytag: member="bus_control::FC_CPU_SPACE" ref="ae7000ccb647ae60f28953281953d9fc3" args="3'd7" -->
1215
<div class="memitem">
1216
<div class="memproto">
1217
      <table class="memname">
1218
        <tr>
1219
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#ae7000ccb647ae60f28953281953d9fc3">FC_CPU_SPACE</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">3'd7</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1220
        </tr>
1221
      </table>
1222
</div>
1223
<div class="memdoc">
1224
 
1225
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00856">856</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1226
 
1227
</div>
1228
</div>
1229
<a class="anchor" id="a582f967db46f980510019079f564c019"></a><!-- doxytag: member="bus_control::CTI_CLASSIC_CYCLE" ref="a582f967db46f980510019079f564c019" args="3'd0" -->
1230
<div class="memitem">
1231
<div class="memproto">
1232
      <table class="memname">
1233
        <tr>
1234
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a582f967db46f980510019079f564c019">CTI_CLASSIC_CYCLE</a></span> <b><span class="vhdlchar">[</span><span class="vhdldigit">2</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">3'd0</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1235
        </tr>
1236
      </table>
1237
</div>
1238
<div class="memdoc">
1239
 
1240
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00863">863</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1241
 
1242
</div>
1243
</div>
1244
<a class="anchor" id="ab07c676b4838f68108d87e9e64f42c95"></a><!-- doxytag: member="bus_control::CTI_CONST_CYCLE" ref="ab07c676b4838f68108d87e9e64f42c95" args="3'd1" -->
1245
<div class="memitem">
1246
<div class="memproto">
1247
      <table class="memname">
1248
        <tr>
1249
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#ab07c676b4838f68108d87e9e64f42c95">CTI_CONST_CYCLE</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">3'd1</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1250
        </tr>
1251
      </table>
1252
</div>
1253
<div class="memdoc">
1254
 
1255
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00863">863</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1256
 
1257
</div>
1258
</div>
1259
<a class="anchor" id="af8625ac9783130aa49bba8ae654ffce9"></a><!-- doxytag: member="bus_control::CTI_INCR_CYCLE" ref="af8625ac9783130aa49bba8ae654ffce9" args="3'd2" -->
1260
<div class="memitem">
1261
<div class="memproto">
1262
      <table class="memname">
1263
        <tr>
1264
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#af8625ac9783130aa49bba8ae654ffce9">CTI_INCR_CYCLE</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">3'd2</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1265
        </tr>
1266
      </table>
1267
</div>
1268
<div class="memdoc">
1269
 
1270
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00863">863</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1271
 
1272
</div>
1273
</div>
1274
<a class="anchor" id="acb4e09af86df2ea6f0da2a8f40728f33"></a><!-- doxytag: member="bus_control::CTI_END_OF_BURST" ref="acb4e09af86df2ea6f0da2a8f40728f33" args="3'd7" -->
1275
<div class="memitem">
1276
<div class="memproto">
1277
      <table class="memname">
1278
        <tr>
1279
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#acb4e09af86df2ea6f0da2a8f40728f33">CTI_END_OF_BURST</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">3'd7</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1280
        </tr>
1281
      </table>
1282
</div>
1283
<div class="memdoc">
1284
 
1285
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00863">863</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1286
 
1287
</div>
1288
</div>
1289
<a class="anchor" id="ac907148aa83b25bcbfb6f83d70a54ca7"></a><!-- doxytag: member="bus_control::VECTOR_BUS_TRAP" ref="ac907148aa83b25bcbfb6f83d70a54ca7" args="8'd2" -->
1290
<div class="memitem">
1291
<div class="memproto">
1292
      <table class="memname">
1293
        <tr>
1294
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#ac907148aa83b25bcbfb6f83d70a54ca7">VECTOR_BUS_TRAP</a></span> <b><span class="vhdlchar">[</span><span class="vhdldigit">7</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">8'd2</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1295
        </tr>
1296
      </table>
1297
</div>
1298
<div class="memdoc">
1299
 
1300
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00869">869</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1301
 
1302
</div>
1303
</div>
1304
<a class="anchor" id="ab7c78d90089dcaa2127453f9006f82d8"></a><!-- doxytag: member="bus_control::VECTOR_ADDRESS_TRAP" ref="ab7c78d90089dcaa2127453f9006f82d8" args="8'd3" -->
1305
<div class="memitem">
1306
<div class="memproto">
1307
      <table class="memname">
1308
        <tr>
1309
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#ab7c78d90089dcaa2127453f9006f82d8">VECTOR_ADDRESS_TRAP</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">8'd3</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1310
        </tr>
1311
      </table>
1312
</div>
1313
<div class="memdoc">
1314
 
1315
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00869">869</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1316
 
1317
</div>
1318
</div>
1319
<a class="anchor" id="a68f32bd12ecea1bf538aeb6b59b7debb"></a><!-- doxytag: member="bus_control::current_state" ref="a68f32bd12ecea1bf538aeb6b59b7debb" args="reg[4:0]" -->
1320
<div class="memitem">
1321
<div class="memproto">
1322
      <table class="memname">
1323
        <tr>
1324
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a68f32bd12ecea1bf538aeb6b59b7debb">current_state</a></span> <b><span class="vhdlchar"> </span></b> <code> [reg[4:0]]</code></td>
1325
        </tr>
1326
      </table>
1327
</div>
1328
<div class="memdoc">
1329
 
1330
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00873">873</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1331
 
1332
</div>
1333
</div>
1334
<a class="anchor" id="a596f7cdf5918ae5a1f87df17451fe122"></a><!-- doxytag: member="bus_control::reset_counter" ref="a596f7cdf5918ae5a1f87df17451fe122" args="reg[7:0]" -->
1335
<div class="memitem">
1336
<div class="memproto">
1337
      <table class="memname">
1338
        <tr>
1339
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a596f7cdf5918ae5a1f87df17451fe122">reset_counter</a></span> <b><span class="vhdlchar"> </span></b> <code> [reg[7:0]]</code></td>
1340
        </tr>
1341
      </table>
1342
</div>
1343
<div class="memdoc">
1344
 
1345
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00874">874</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1346
 
1347
</div>
1348
</div>
1349
<a class="anchor" id="a7975910cb7516716f91d194ff15e24d4"></a><!-- doxytag: member="bus_control::last_interrupt_mask" ref="a7975910cb7516716f91d194ff15e24d4" args="reg[2:0]" -->
1350
<div class="memitem">
1351
<div class="memproto">
1352
      <table class="memname">
1353
        <tr>
1354
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a7975910cb7516716f91d194ff15e24d4">last_interrupt_mask</a></span> <b><span class="vhdlchar"> </span></b> <code> [reg[2:0]]</code></td>
1355
        </tr>
1356
      </table>
1357
</div>
1358
<div class="memdoc">
1359
 
1360
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00876">876</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1361
 
1362
</div>
1363
</div>
1364
<a class="anchor" id="aacaad5f66b9a4472407b0faf8e442865"></a><!-- doxytag: member="bus_control::CLK_I" ref="aacaad5f66b9a4472407b0faf8e442865" args="" -->
1365
<div class="memitem">
1366
<div class="memproto">
1367
      <table class="memname">
1368
        <tr>
1369
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#aacaad5f66b9a4472407b0faf8e442865">CLK_I</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Input]</code></td>
1370
        </tr>
1371
      </table>
1372
</div>
1373
<div class="memdoc">
1374
 
1375
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00751">751</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1376
 
1377
</div>
1378
</div>
1379
<a class="anchor" id="afd26d1fcca322ac5eb9bd1d8e40070d2"></a><!-- doxytag: member="bus_control::reset_n" ref="afd26d1fcca322ac5eb9bd1d8e40070d2" args="" -->
1380
<div class="memitem">
1381
<div class="memproto">
1382
      <table class="memname">
1383
        <tr>
1384
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#afd26d1fcca322ac5eb9bd1d8e40070d2">reset_n</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Input]</code></td>
1385
        </tr>
1386
      </table>
1387
</div>
1388
<div class="memdoc">
1389
 
1390
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00752">752</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1391
 
1392
</div>
1393
</div>
1394
<a class="anchor" id="aee5507af73854827318b25f1e9f8bab7"></a><!-- doxytag: member="bus_control::CYC_O" ref="aee5507af73854827318b25f1e9f8bab7" args="" -->
1395
<div class="memitem">
1396
<div class="memproto">
1397
      <table class="memname">
1398
        <tr>
1399
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#aee5507af73854827318b25f1e9f8bab7">CYC_O</a></span> <b><span class="vhdlkeyword">reg</span><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Output]</code></td>
1400
        </tr>
1401
      </table>
1402
</div>
1403
<div class="memdoc">
1404
 
1405
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00754">754</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1406
 
1407
</div>
1408
</div>
1409
<a class="anchor" id="a609f25fac6e0868c2ae27f9a624111c6"></a><!-- doxytag: member="bus_control::ADR_O" ref="a609f25fac6e0868c2ae27f9a624111c6" args="" -->
1410
<div class="memitem">
1411
<div class="memproto">
1412
      <table class="memname">
1413
        <tr>
1414
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a609f25fac6e0868c2ae27f9a624111c6">ADR_O</a></span> <b><span class="vhdlkeyword">reg</span><span class="vhdlchar">[</span><span class="vhdldigit">31</span><span class="vhdlchar">:</span><span class="vhdldigit">2</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Output]</code></td>
1415
        </tr>
1416
      </table>
1417
</div>
1418
<div class="memdoc">
1419
 
1420
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00755">755</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1421
 
1422
</div>
1423
</div>
1424
<a class="anchor" id="accc5324e304fe8ed513657f707c70031"></a><!-- doxytag: member="bus_control::DAT_O" ref="accc5324e304fe8ed513657f707c70031" args="" -->
1425
<div class="memitem">
1426
<div class="memproto">
1427
      <table class="memname">
1428
        <tr>
1429
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#accc5324e304fe8ed513657f707c70031">DAT_O</a></span> <b><span class="vhdlkeyword">reg</span><span class="vhdlchar">[</span><span class="vhdldigit">31</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Output]</code></td>
1430
        </tr>
1431
      </table>
1432
</div>
1433
<div class="memdoc">
1434
 
1435
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00756">756</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1436
 
1437
</div>
1438
</div>
1439
<a class="anchor" id="a8173d9b18b31cd85bb5edfd19f17e791"></a><!-- doxytag: member="bus_control::DAT_I" ref="a8173d9b18b31cd85bb5edfd19f17e791" args="" -->
1440
<div class="memitem">
1441
<div class="memproto">
1442
      <table class="memname">
1443
        <tr>
1444
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a8173d9b18b31cd85bb5edfd19f17e791">DAT_I</a></span> <b><span class="vhdlchar">[</span><span class="vhdldigit">31</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Input]</code></td>
1445
        </tr>
1446
      </table>
1447
</div>
1448
<div class="memdoc">
1449
 
1450
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00757">757</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1451
 
1452
</div>
1453
</div>
1454
<a class="anchor" id="a22bcd5e88645c2396ac629c7c3a6ddf4"></a><!-- doxytag: member="bus_control::SEL_O" ref="a22bcd5e88645c2396ac629c7c3a6ddf4" args="" -->
1455
<div class="memitem">
1456
<div class="memproto">
1457
      <table class="memname">
1458
        <tr>
1459
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a22bcd5e88645c2396ac629c7c3a6ddf4">SEL_O</a></span> <b><span class="vhdlkeyword">reg</span><span class="vhdlchar">[</span><span class="vhdldigit">3</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Output]</code></td>
1460
        </tr>
1461
      </table>
1462
</div>
1463
<div class="memdoc">
1464
 
1465
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00758">758</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1466
 
1467
</div>
1468
</div>
1469
<a class="anchor" id="a03f1c80679f703c6df02ce59e0f31fed"></a><!-- doxytag: member="bus_control::STB_O" ref="a03f1c80679f703c6df02ce59e0f31fed" args="" -->
1470
<div class="memitem">
1471
<div class="memproto">
1472
      <table class="memname">
1473
        <tr>
1474
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a03f1c80679f703c6df02ce59e0f31fed">STB_O</a></span> <b><span class="vhdlkeyword">reg</span><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Output]</code></td>
1475
        </tr>
1476
      </table>
1477
</div>
1478
<div class="memdoc">
1479
 
1480
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00759">759</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1481
 
1482
</div>
1483
</div>
1484
<a class="anchor" id="a24f98645faa8b5c8b6a919708770b3d8"></a><!-- doxytag: member="bus_control::WE_O" ref="a24f98645faa8b5c8b6a919708770b3d8" args="" -->
1485
<div class="memitem">
1486
<div class="memproto">
1487
      <table class="memname">
1488
        <tr>
1489
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a24f98645faa8b5c8b6a919708770b3d8">WE_O</a></span> <b><span class="vhdlkeyword">reg</span><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Output]</code></td>
1490
        </tr>
1491
      </table>
1492
</div>
1493
<div class="memdoc">
1494
 
1495
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00760">760</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1496
 
1497
</div>
1498
</div>
1499
<a class="anchor" id="aacaa0a0a5bd2fca75fd2a87952a3c096"></a><!-- doxytag: member="bus_control::ACK_I" ref="aacaa0a0a5bd2fca75fd2a87952a3c096" args="" -->
1500
<div class="memitem">
1501
<div class="memproto">
1502
      <table class="memname">
1503
        <tr>
1504
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#aacaa0a0a5bd2fca75fd2a87952a3c096">ACK_I</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Input]</code></td>
1505
        </tr>
1506
      </table>
1507
</div>
1508
<div class="memdoc">
1509
 
1510
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00762">762</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1511
 
1512
</div>
1513
</div>
1514
<a class="anchor" id="aebe818eef013f4d18ba9b260bb976433"></a><!-- doxytag: member="bus_control::ERR_I" ref="aebe818eef013f4d18ba9b260bb976433" args="" -->
1515
<div class="memitem">
1516
<div class="memproto">
1517
      <table class="memname">
1518
        <tr>
1519
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#aebe818eef013f4d18ba9b260bb976433">ERR_I</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Input]</code></td>
1520
        </tr>
1521
      </table>
1522
</div>
1523
<div class="memdoc">
1524
 
1525
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00763">763</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1526
 
1527
</div>
1528
</div>
1529
<a class="anchor" id="a36e423840bd01f096de364f3569f1ceb"></a><!-- doxytag: member="bus_control::RTY_I" ref="a36e423840bd01f096de364f3569f1ceb" args="" -->
1530
<div class="memitem">
1531
<div class="memproto">
1532
      <table class="memname">
1533
        <tr>
1534
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a36e423840bd01f096de364f3569f1ceb">RTY_I</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Input]</code></td>
1535
        </tr>
1536
      </table>
1537
</div>
1538
<div class="memdoc">
1539
 
1540
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00764">764</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1541
 
1542
</div>
1543
</div>
1544
<a class="anchor" id="a1faf237291fb36f519f228b5ff5d005b"></a><!-- doxytag: member="bus_control::SGL_O" ref="a1faf237291fb36f519f228b5ff5d005b" args="" -->
1545
<div class="memitem">
1546
<div class="memproto">
1547
      <table class="memname">
1548
        <tr>
1549
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a1faf237291fb36f519f228b5ff5d005b">SGL_O</a></span> <b><span class="vhdlkeyword">reg</span><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Output]</code></td>
1550
        </tr>
1551
      </table>
1552
</div>
1553
<div class="memdoc">
1554
 
1555
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00767">767</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1556
 
1557
</div>
1558
</div>
1559
<a class="anchor" id="a185308dd649e2e113012e2fa73a636fa"></a><!-- doxytag: member="bus_control::BLK_O" ref="a185308dd649e2e113012e2fa73a636fa" args="" -->
1560
<div class="memitem">
1561
<div class="memproto">
1562
      <table class="memname">
1563
        <tr>
1564
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a185308dd649e2e113012e2fa73a636fa">BLK_O</a></span> <b><span class="vhdlkeyword">reg</span><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Output]</code></td>
1565
        </tr>
1566
      </table>
1567
</div>
1568
<div class="memdoc">
1569
 
1570
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00768">768</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1571
 
1572
</div>
1573
</div>
1574
<a class="anchor" id="a84b20fe40418386b65f4491f83d18f0d"></a><!-- doxytag: member="bus_control::RMW_O" ref="a84b20fe40418386b65f4491f83d18f0d" args="" -->
1575
<div class="memitem">
1576
<div class="memproto">
1577
      <table class="memname">
1578
        <tr>
1579
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a84b20fe40418386b65f4491f83d18f0d">RMW_O</a></span> <b><span class="vhdlkeyword">reg</span><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Output]</code></td>
1580
        </tr>
1581
      </table>
1582
</div>
1583
<div class="memdoc">
1584
 
1585
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00769">769</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1586
 
1587
</div>
1588
</div>
1589
<a class="anchor" id="a64204aad5c7fa47377c787e3a9335bf9"></a><!-- doxytag: member="bus_control::CTI_O" ref="a64204aad5c7fa47377c787e3a9335bf9" args="" -->
1590
<div class="memitem">
1591
<div class="memproto">
1592
      <table class="memname">
1593
        <tr>
1594
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a64204aad5c7fa47377c787e3a9335bf9">CTI_O</a></span> <b><span class="vhdlkeyword">reg</span><span class="vhdlchar">[</span><span class="vhdldigit">2</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Output]</code></td>
1595
        </tr>
1596
      </table>
1597
</div>
1598
<div class="memdoc">
1599
 
1600
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00772">772</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1601
 
1602
</div>
1603
</div>
1604
<a class="anchor" id="aa9086d66846a169134be074f709515d4"></a><!-- doxytag: member="bus_control::BTE_O" ref="aa9086d66846a169134be074f709515d4" args="" -->
1605
<div class="memitem">
1606
<div class="memproto">
1607
      <table class="memname">
1608
        <tr>
1609
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#aa9086d66846a169134be074f709515d4">BTE_O</a></span> <b><span class="vhdlchar">[</span><span class="vhdldigit">1</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Output]</code></td>
1610
        </tr>
1611
      </table>
1612
</div>
1613
<div class="memdoc">
1614
 
1615
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00773">773</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1616
 
1617
</div>
1618
</div>
1619
<a class="anchor" id="ad64aec2fa2fc3125040545969615651e"></a><!-- doxytag: member="bus_control::fc_o" ref="ad64aec2fa2fc3125040545969615651e" args="" -->
1620
<div class="memitem">
1621
<div class="memproto">
1622
      <table class="memname">
1623
        <tr>
1624
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#ad64aec2fa2fc3125040545969615651e">fc_o</a></span> <b><span class="vhdlkeyword">reg</span><span class="vhdlchar">[</span><span class="vhdldigit">2</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Output]</code></td>
1625
        </tr>
1626
      </table>
1627
</div>
1628
<div class="memdoc">
1629
 
1630
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00776">776</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1631
 
1632
</div>
1633
</div>
1634
<a class="anchor" id="a8faad005aacd91a426d31af2f821a20b"></a><!-- doxytag: member="bus_control::ipl_i" ref="a8faad005aacd91a426d31af2f821a20b" args="" -->
1635
<div class="memitem">
1636
<div class="memproto">
1637
      <table class="memname">
1638
        <tr>
1639
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a8faad005aacd91a426d31af2f821a20b">ipl_i</a></span> <b><span class="vhdlchar">[</span><span class="vhdldigit">2</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Input]</code></td>
1640
        </tr>
1641
      </table>
1642
</div>
1643
<div class="memdoc">
1644
 
1645
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00779">779</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1646
 
1647
</div>
1648
</div>
1649
<a class="anchor" id="a16e985d728c3c6cfc9d386fa89e77b98"></a><!-- doxytag: member="bus_control::reset_o" ref="a16e985d728c3c6cfc9d386fa89e77b98" args="" -->
1650
<div class="memitem">
1651
<div class="memproto">
1652
      <table class="memname">
1653
        <tr>
1654
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a16e985d728c3c6cfc9d386fa89e77b98">reset_o</a></span> <b><span class="vhdlkeyword">reg</span><span class="vhdlchar"> </span></b> <b><span class="vhdlchar"> </span></b> <code> [Output]</code></td>
1655
        </tr>
1656
      </table>
1657
</div>
1658
<div class="memdoc">
1659
 
1660
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00780">780</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1661
 
1662
</div>
1663
</div>
1664
<a class="anchor" id="accfafb28c124ffe3b1da8aec439bdf6e"></a><!-- doxytag: member="bus_control::pc_i_plus_6" ref="accfafb28c124ffe3b1da8aec439bdf6e" args="wire[31:0]" -->
1665
<div class="memitem">
1666
<div class="memproto">
1667
      <table class="memname">
1668
        <tr>
1669
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#accfafb28c124ffe3b1da8aec439bdf6e">pc_i_plus_6</a></span> <b><span class="vhdlchar"> </span></b> <code> [wire[31:0]]</code></td>
1670
        </tr>
1671
      </table>
1672
</div>
1673
<div class="memdoc">
1674
 
1675
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00826">826</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1676
 
1677
</div>
1678
</div>
1679
<a class="anchor" id="a1677b7f33d7258a2506fcf16f1add1b0"></a><!-- doxytag: member="bus_control::pc_i_plus_4" ref="a1677b7f33d7258a2506fcf16f1add1b0" args="wire[31:0]" -->
1680
<div class="memitem">
1681
<div class="memproto">
1682
      <table class="memname">
1683
        <tr>
1684
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a1677b7f33d7258a2506fcf16f1add1b0">pc_i_plus_4</a></span> <b><span class="vhdlchar"> </span></b> <code> [wire[31:0]]</code></td>
1685
        </tr>
1686
      </table>
1687
</div>
1688
<div class="memdoc">
1689
 
1690
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00828">828</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1691
 
1692
</div>
1693
</div>
1694
<a class="anchor" id="a26acd69a146a7edd95e55bf45ee337c1"></a><!-- doxytag: member="bus_control::address_i_plus_4" ref="a26acd69a146a7edd95e55bf45ee337c1" args="wire[31:0]" -->
1695
<div class="memitem">
1696
<div class="memproto">
1697
      <table class="memname">
1698
        <tr>
1699
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a26acd69a146a7edd95e55bf45ee337c1">address_i_plus_4</a></span> <b><span class="vhdlchar"> </span></b> <code> [wire[31:0]]</code></td>
1700
        </tr>
1701
      </table>
1702
</div>
1703
<div class="memdoc">
1704
 
1705
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00831">831</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1706
 
1707
</div>
1708
</div>
1709
<a class="anchor" id="a61c78f21cff12a1119d1a1c59ed6eb9d"></a><!-- doxytag: member="bus_control::saved_pc_change" ref="a61c78f21cff12a1119d1a1c59ed6eb9d" args="reg[1:0]" -->
1710
<div class="memitem">
1711
<div class="memproto">
1712
      <table class="memname">
1713
        <tr>
1714
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#a61c78f21cff12a1119d1a1c59ed6eb9d">saved_pc_change</a></span> <b><span class="vhdlchar"> </span></b> <code> [reg[1:0]]</code></td>
1715
        </tr>
1716
      </table>
1717
</div>
1718
<div class="memdoc">
1719
 
1720
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00834">834</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1721
 
1722
</div>
1723
</div>
1724
<a class="anchor" id="ae669ea2b686fa66a91981cb250ebc3b1"></a><!-- doxytag: member="bus_control::S_INIT" ref="ae669ea2b686fa66a91981cb250ebc3b1" args="5'd0" -->
1725
<div class="memitem">
1726
<div class="memproto">
1727
      <table class="memname">
1728
        <tr>
1729
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#ae669ea2b686fa66a91981cb250ebc3b1">S_INIT</a></span> <b><span class="vhdlchar">[</span><span class="vhdldigit">4</span><span class="vhdlchar">:</span><span class="vhdldigit">0</span><span class="vhdlchar">]</span><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd0</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1730
        </tr>
1731
      </table>
1732
</div>
1733
<div class="memdoc">
1734
 
1735
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1736
 
1737
</div>
1738
</div>
1739
<a class="anchor" id="aef163f53a4eb195d45cfcb9027fcaf69"></a><!-- doxytag: member="bus_control::S_RESET" ref="aef163f53a4eb195d45cfcb9027fcaf69" args="5'd1" -->
1740
<div class="memitem">
1741
<div class="memproto">
1742
      <table class="memname">
1743
        <tr>
1744
          <td class="memname"><span class="stringliteral"><a class="el" href="classbus__control.html#aef163f53a4eb195d45cfcb9027fcaf69">S_RESET</a></span> <b><span class="vhdlchar"> </span></b> <b><span class="vhdldigit">5'd1</span><span class="vhdlchar"> </span></b> <code> [Parameter]</code></td>
1745
        </tr>
1746
      </table>
1747
</div>
1748
<div class="memdoc">
1749
 
1750
<p>Definition at line <a class="el" href="ao68000_8v_source.html#l00836">836</a> of file <a class="el" href="ao68000_8v_source.html">ao68000.v</a>.</p>
1751
 
1752
</div>
1753
</div>
1754
<hr/>The documentation for this class was generated from the following file:<ul>
1755
<li><a class="el" href="ao68000_8v_source.html">ao68000.v</a></li>
1756
</ul>
1757
</div>
1758
<hr class="footer"/><address class="footer"><small>Generated on Sat Dec 11 2010 13:21:13 for ao68000 by&#160;
1759
<a href="http://www.doxygen.org/index.html">
1760
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.2 </small></address>
1761
</body>
1762
</html>

powered by: WebSVN 2.1.0

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