cloudFPGA (cF) API  1.0
The documentation of the source code of cloudFPGA (cF)
nts_TcpIp_Arp.vhd
Go to the documentation of this file.
1 -- *******************************************************************************
2 -- * Copyright 2016 -- 2021 IBM Corporation
3 -- *
4 -- * Licensed under the Apache License, Version 2.0 (the "License");
5 -- * you may not use this file except in compliance with the License.
6 -- * You may obtain a copy of the License at
7 -- *
8 -- * http://www.apache.org/licenses/LICENSE-2.0
9 -- *
10 -- * Unless required by applicable law or agreed to in writing, software
11 -- * distributed under the License is distributed on an "AS IS" BASIS,
12 -- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 -- * See the License for the specific language governing permissions and
14 -- * limitations under the License.
15 -- *******************************************************************************
16 
17 -- ************************************************
18 -- Copyright (c) 2015, Xilinx, Inc.
19 --
20 -- All rights reserved.
21 -- Redistribution and use in source and binary forms, with or without modification,
22 -- are permitted provided that the following conditions are met:
23 -- 1. Redistributions of source code must retain the above copyright notice,
24 -- this list of conditions and the following disclaimer.
25 -- 2. Redistributions in binary form must reproduce the above copyright notice,
26 -- this list of conditions and the following disclaimer in the documentation
27 -- and/or other materials provided with the distribution.
28 -- 3. Neither the name of the copyright holder nor the names of its contributors
29 -- may be used to endorse or promote products derived from this software
30 -- without specific prior written permission.
31 -- THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
32 -- ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO,
33 -- THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
34 -- IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
35 -- INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
36 -- PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
37 -- INTERRUPT-- ION)
38 -- HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
39 -- OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE,
40 -- EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
41 -- ************************************************
42 
43 
44 -- ******************************************************************************
45 -- *
46 -- * Title : Address resolution process.
47 -- *
48 -- * File : nts_TcpIp_Arp.vhd
49 -- *
50 -- * Tools : Vivado v2016.4, v2017.4 (64-bit)
51 -- *
52 -- * Description : Structural implementation of the process that performs address
53 -- * resolution via the Address Resolution Protocol (ARP). This is essentially
54 -- * a wrapper for the Address Resolution Server (ARS) and its associated
55 -- * Content Addressable memory (CAM).
56 -- *
57 -- * Generics:
58 -- * gKeyLength : Sets the lenght of the CAM key.
59 -- * [ 32 (Default) ]
60 -- * gValueLength : Sets the length of the CAM value.
61 -- * [ 48 (Default) ]
62 -- * gDeprecated: Instanciates an ARS using depracted directives.
63 -- *
64 -- ******************************************************************************
65 
66 library IEEE;
67 use IEEE.STD_LOGIC_1164.ALL;
68 
69 library WORK;
70 use WORK.ArpCam_pkg.all;
71 
72 --*************************************************************************
73 --** ENTITY
74 --*************************************************************************
76  generic (
77  gKeyLength : integer := 32;
78  gValueLength : integer := 48;
79  gDeprecated : integer := 0
80  );
81  port (
82  --------------------------------------------------------
83  -- Clocks and Resets inputs
84  --------------------------------------------------------
85  piShlClk : in std_logic;
86  piMMIO_Rst : in std_logic;
87  --------------------------------------------------------
88  -- MMIO Interfaces
89  --------------------------------------------------------
90  piMMIO_MacAddress : in std_logic_vector(47 downto 0);
91  piMMIO_Ip4Address : in std_logic_vector(31 downto 0);
92  --------------------------------------------------------
93  -- IPRX Interface
94  --------------------------------------------------------
95  siIPRX_Data_tdata : in std_logic_vector(63 downto 0);
96  siIPRX_Data_tkeep : in std_logic_vector( 7 downto 0);
97  siIPRX_Data_tlast : in std_logic;
98  siIPRX_Data_tvalid : in std_logic;
99  siIPRX_Data_tready : out std_logic;
100  --------------------------------------------------------
101  -- ETH Interface
102  --------------------------------------------------------
103  soETH_Data_tdata : out std_logic_vector(63 downto 0);
104  soETH_Data_tkeep : out std_logic_vector( 7 downto 0);
105  soETH_Data_tlast : out std_logic;
106  soETH_Data_tvalid : out std_logic;
107  soETH_Data_tready : in std_logic;
108  --------------------------------------------------------
109  -- IPTX Interfaces
110  --------------------------------------------------------
111  siIPTX_MacLkpReq_TDATA : in std_logic_vector(gKeyLength-1 downto 0); -- (32)-1=31={IpKey}
112  siIPTX_MacLkpReq_TVALID : in std_logic;
113  siIPTX_MacLkpReq_TREADY : out std_logic;
114  --
115  soIPTX_MacLkpRep_TDATA : out std_logic_vector(55 downto 0); -- (8+48)-1=55={Hit+MacValue}
116  soIPTX_MacLkpRep_TVALID : out std_logic;
117  soIPTX_MacLkpRep_TREADY : in std_logic
118  );
120 
121 
122 --*************************************************************************
123 --** ARCHITECTURE
124 --*************************************************************************
125 architecture Structural of AddressResolutionProcess is
126 
127  -----------------------------------------------------------------
128  -- COMPONENT DECLARATIONS
129  -----------------------------------------------------------------
130  component AddressResolutionServer_Deprecated
131  port (
132  aclk : in std_logic;
133  aresetn : in std_logic;
134  -- MMIO Interfaces
135  piMMIO_MacAddress_V : in std_logic_vector(47 downto 0);
136  piMMIO_Ip4Address_V : in std_logic_vector(31 downto 0);
137  -- IPRX Interface
138  siIPRX_Data_TDATA : in std_logic_vector(63 downto 0);
139  siIPRX_Data_TKEEP : in std_logic_vector( 7 downto 0);
140  siIPRX_Data_TLAST : in std_logic;
141  siIPRX_Data_TVALID : in std_logic;
142  siIPRX_Data_TREADY : out std_logic;
143  -- ETH Interface
144  soETH_Data_TDATA : out std_logic_vector(63 downto 0);
145  soETH_Data_TKEEP : out std_logic_vector( 7 downto 0);
146  soETH_Data_TLAST : out std_logic;
147  soETH_Data_TVALID : out std_logic;
148  soETH_Data_TREADY : in std_logic;
149  -- IPTX Interfaces
150  siIPTX_MacLkpReq_TDATA : in std_logic_vector(gKeyLength-1 downto 0); -- (32)-1=31={IpKey}
151  siIPTX_MacLkpReq_TVALID : in std_logic;
152  siIPTX_MacLkpReq_TREADY : out std_logic;
153  --
154  soIPTX_MacLkpRep_TDATA : out std_logic_vector(55 downto 0); -- (8+48)-1=55={Hit+MacValue}
155  soIPTX_MacLkpRep_TVALID : out std_logic;
156  soIPTX_MacLkpRep_TREADY : in std_logic;
157  -- CAM Interfaces
158  soCAM_MacUpdReq_TDATA : out std_logic_vector(87 downto 0); -- (8+32+48)={Op+IpKey+MacValue}
159  soCAM_MacUpdReq_TVALID : out std_logic;
160  soCAM_MacUpdReq_TREADY : in std_logic;
161  --
162  siCAM_MacUpdRep_TDATA : in std_logic_vector(55 downto 0); -- (8+48)-1=55={Op+MacValue}
163  siCAM_MacUpdRep_TVALID : in std_logic;
164  siCAM_MacUpdRep_TREADY : out std_logic;
165  --
166  soCAM_MacLkpReq_TDATA : out std_logic_vector(31 downto 0); -- (32)={IpKey}
167  soCAM_MacLkpReq_TVALID : out std_logic;
168  soCAM_MacLkpReq_TREADY : in std_logic;
169  --
170  siCAM_MacLkpRep_TDATA : in std_logic_vector(55 downto 0); -- (8+48)-1=55{Hit+MacValue}
171  siCAM_MacLkpRep_TVALID : in std_logic;
172  siCAM_MacLkpRep_TREADY : out std_logic
173  );
174  end component AddressResolutionServer_Deprecated;
175 
176  component AddressResolutionServer
177  port (
178  ap_clk : in std_logic;
179  ap_Rst_n : in std_logic;
180  -- MMIO Interfaces
181  piMMIO_MacAddress_V : in std_logic_vector(47 downto 0);
182  piMMIO_Ip4Address_V : in std_logic_vector(31 downto 0);
183  -- IPRX Interface
184  siIPRX_Data_TDATA : in std_logic_vector(63 downto 0);
185  siIPRX_Data_TKEEP : in std_logic_vector( 7 downto 0);
186  siIPRX_Data_TLAST : in std_logic;
187  siIPRX_Data_TVALID : in std_logic;
188  siIPRX_Data_TREADY : out std_logic;
189  -- ETH Interface
190  soETH_Data_TDATA : out std_logic_vector(63 downto 0);
191  soETH_Data_TKEEP : out std_logic_vector( 7 downto 0);
192  soETH_Data_TLAST : out std_logic;
193  soETH_Data_TVALID : out std_logic;
194  soETH_Data_TREADY : in std_logic;
195  -- IPTX Interfaces
196  siIPTX_MacLkpReq_V_V_TDATA : in std_logic_vector(gKeyLength-1 downto 0); -- (32)-1=31={IpKey}
197  siIPTX_MacLkpReq_V_V_TVALID : in std_logic;
198  siIPTX_MacLkpReq_V_V_TREADY : out std_logic;
199  --
200  soIPTX_MacLkpRep_V_TDATA : out std_logic_vector(55 downto 0); -- (8+48)-1=55={Hit+MacValue}
201  soIPTX_MacLkpRep_V_TVALID : out std_logic;
202  soIPTX_MacLkpRep_V_TREADY : in std_logic;
203  -- CAM Interfaces
204  soCAM_MacUpdReq_V_TDATA : out std_logic_vector(87 downto 0); -- (8+32+48)={Op+IpKey+MacValue}
205  soCAM_MacUpdReq_V_TVALID : out std_logic;
206  soCAM_MacUpdReq_V_TREADY : in std_logic;
207  --
208  siCAM_MacUpdRep_V_TDATA : in std_logic_vector(55 downto 0); -- (8+48)-1=55={Op+MacValue}
209  siCAM_MacUpdRep_V_TVALID : in std_logic;
210  siCAM_MacUpdRep_V_TREADY : out std_logic;
211  --
212  soCAM_MacLkpReq_V_key_V_TDATA : out std_logic_vector(31 downto 0); -- (32)={IpKey}
213  soCAM_MacLkpReq_V_key_V_TVALID : out std_logic;
214  soCAM_MacLkpReq_V_key_V_TREADY : in std_logic;
215  --
216  siCAM_MacLkpRep_V_TDATA : in std_logic_vector(55 downto 0); -- (8+48)-1=55{Hit+MacValue}
217  siCAM_MacLkpRep_V_TVALID : in std_logic;
218  siCAM_MacLkpRep_V_TREADY : out std_logic
219  );
220  end component AddressResolutionServer;
221 
222  -----------------------------------------------------------------
223  -- SIGNAL DECLARATIONS
224  -----------------------------------------------------------------
225  signal sReset_n : std_logic;
226 
227  signal ssARS_CAM_MacLkpReq_TDATA : std_logic_vector(31 downto 0); -- (32)={IpKey}
228  signal ssARS_CAM_MacLkpReq_TVALID : std_logic;
229  signal ssARS_CAM_MacLkpReq_TREADY : std_logic;
230  signal sHlsToRtl_MacLkpReq_TDATA : t_RtlLkpReq;
231 
232  signal ssCAM_ARS_MacLkpRep_TDATA : std_logic_vector(55 downto 0); -- (8+48)-1=55{Hit+MacValue}
233  signal ssCAM_ARS_MacLkpRep_TVALID : std_logic;
234  signal ssCAM_ARS_MacLkpRep_TREADY : std_logic;
235  signal sRtlToHls_MacLkpRep_TDATA : t_RtlLkpRep;
236 
237  signal ssARS_CAM_MacUpdReq_TDATA : std_logic_vector(87 downto 0); -- (8+32+48) = {Op+IpKey+MacValue}
238  signal ssARS_CAM_MacUpdReq_TVALID : std_logic;
239  signal ssARS_CAM_MacUpdReq_TREADY : std_logic;
240  signal sHlsToRtl_MacUpdReq_TDATA : t_RtlUpdReq;
241 
242  signal ssCAM_ARS_MacUpdRep_TDATA : std_logic_vector(55 downto 0); -- (8+48)-1=55={Op+MacValue}
243  signal ssCAM_ARS_MacUpdRep_TVALID : std_logic;
244  signal ssCAM_ARS_MacUpdRep_TREADY : std_logic;
245  signal sRtlToHls_MacUpdRep_TDATA : t_RtlUpdRep;
246 
247 begin
248 
249  sHlsToRtl_MacLkpReq_TDATA.srcBit <= '0'; -- NotUsed: Always '0'
250  sHlsToRtl_MacLkpReq_TDATA.ipKey <= ssARS_CAM_MacLkpReq_TDATA(31 downto 0);
251 
252  ssCAM_ARS_MacLkpRep_TDATA(47 downto 0) <= sRtlToHls_MacLkpRep_TDATA.macVal;
253  ssCAM_ARS_MacLkpRep_TDATA(48) <= sRtlToHls_MacLkpRep_TDATA.hitBit;
254  ssCAM_ARS_MacLkpRep_TDATA(49) <= sRtlToHls_MacLkpRep_TDATA.srcBit;
255  ssCAM_ARS_MacLkpRep_TDATA(55 downto 50) <= "000000";
256 
257  sHlsToRtl_MacUpdReq_TDATA.srcBit <= '0'; -- NotUsed: Always '0'
258  sHlsToRtl_MacUpdReq_TDATA.opCode <= ssARS_CAM_MacUpdReq_TDATA(80);
259  sHlsToRtl_MacUpdReq_TDATA.macVal <= ssARS_CAM_MacUpdReq_TDATA(47 downto 0);
260  sHlsToRtl_MacUpdReq_TDATA.ipKey <= ssARS_CAM_MacUpdReq_TDATA(79 downto 48);
261 
262  ssCAM_ARS_MacUpdRep_TDATA(47 downto 0) <= sRtlToHls_MacUpdRep_TDATA.macVal;
263  ssCAM_ARS_MacUpdRep_TDATA(48) <= sRtlToHls_MacUpdRep_TDATA.opCode;
264  ssCAM_ARS_MacUpdRep_TDATA(55 downto 49) <= "0000000";
265 
266  sReset_n <= not piMMIO_Rst;
267 
268  -----------------------------------------------------------------
269  -- INST: CONTENT ADDRESSABLE MEMORY
270  -----------------------------------------------------------------
271  CAM: entity work.ArpCam(Behavioral)
272  port map (
273  piClk => piShlClk,
274  piRst => piMMIO_Rst,
275  poCamReady => open,
276  --
277  siLkpReq_Data => sHlsToRtl_MacLkpReq_TDATA,
278  siLkpReq_Valid => ssARS_CAM_MacLkpReq_TVALID,
279  siLkpReq_Ready => ssARS_CAM_MacLkpReq_TREADY,
280  --
281  soLkpRep_Data => sRtlToHls_MacLkpRep_TDATA,
282  soLkpRep_Valid => ssCAM_ARS_MacLkpRep_TVALID,
283  soLkpRep_Ready => ssCAM_ARS_MacLkpRep_TREADY,
284  --
285  siUpdReq_Data => sHlsToRtl_MacUpdReq_TDATA,
286  siUpdReq_Valid => ssARS_CAM_MacUpdReq_TVALID,
287  siUpdReq_Ready => ssARS_CAM_MacUpdReq_TREADY,
288  --
289  soUpdRep_Data => sRtlToHls_MacUpdRep_TDATA,
290  soUpdRep_Valid => ssCAM_ARS_MacUpdRep_TVALID,
291  soUpdRep_Ready => ssCAM_ARS_MacUpdRep_TREADY,
292  --
293  poDebug => open
294  );
295 
296  -----------------------------------------------------------------
297  -- INST: ADDRESS RESOLUTION SERVER
298  -----------------------------------------------------------------
299  gArpServer : if gDeprecated = 1 generate
300  ARS: AddressResolutionServer_Deprecated
301  port map (
302  aclk => piShlClk,
303  aresetn => sReset_n,
304  -- MMIO Interfaces
305  piMMIO_MacAddress_V => piMMIO_MacAddress,
306  piMMIO_Ip4Address_V => piMMIO_Ip4Address,
307  -- IPRX Interface
308  siIPRX_Data_TDATA => siIPRX_Data_tdata,
309  siIPRX_Data_TKEEP => siIPRX_Data_tkeep,
310  siIPRX_Data_TLAST => siIPRX_Data_tlast,
311  siIPRX_Data_TVALID => siIPRX_Data_tvalid,
312  siIPRX_Data_TREADY => siIPRX_Data_tready,
313  -- ETH Interface
314  soETH_Data_TDATA => soETH_Data_tdata,
315  soETH_Data_TKEEP => soETH_Data_tkeep,
316  soETH_Data_TLAST => soETH_Data_tlast,
317  soETH_Data_TVALID => soETH_Data_tvalid,
318  soETH_Data_TREADY => soETH_Data_tready,
319  -- IPTX Interfaces
320  siIPTX_MacLkpReq_TDATA => siIPTX_MacLkpReq_TDATA,
321  siIPTX_MacLkpReq_TVALID => siIPTX_MacLkpReq_TVALID,
322  siIPTX_MacLkpReq_TREADY => siIPTX_MacLkpReq_TREADY,
323  --
324  soIPTX_MacLkpRep_TDATA => soIPTX_MacLkpRep_TDATA,
325  soIPTX_MacLkpRep_TVALID => soIPTX_MacLkpRep_TVALID,
326  soIPTX_MacLkpRep_TREADY => soIPTX_MacLkpRep_TREADY,
327  -- CAM Interfaces
328  soCAM_MacLkpReq_TDATA => ssARS_CAM_MacLkpReq_TDATA,
329  soCAM_MacLkpReq_TVALID => ssARS_CAM_MacLkpReq_TVALID,
330  soCAM_MacLkpReq_TREADY => ssARS_CAM_MacLkpReq_TREADY,
331  --
332  siCAM_MacLkpRep_TDATA => ssCAM_ARS_MacLkpRep_TDATA,
333  siCAM_MacLkpRep_TVALID => ssCAM_ARS_MacLkpRep_TVALID,
334  siCAM_MacLkpRep_TREADY => ssCAM_ARS_MacLkpRep_TREADY,
335  --
336  soCAM_MacUpdReq_TDATA => ssARS_CAM_MacUpdReq_TDATA,
337  soCAM_MacUpdReq_TVALID => ssARS_CAM_MacUpdReq_TVALID,
338  soCAM_MacUpdReq_TREADY => ssARS_CAM_MacUpdReq_TREADY,
339  --
340  siCAM_MacUpdRep_TDATA => ssCAM_ARS_MacUpdRep_TDATA,
341  siCAM_MacUpdRep_TVALID => ssCAM_ARS_MacUpdRep_TVALID,
342  siCAM_MacUpdRep_TREADY => ssCAM_ARS_MacUpdRep_TREADY
343  );
344  else generate
345  ARS: AddressResolutionServer
346  port map (
347  ap_clk => piShlClk,
348  ap_rst_n => sReset_n,
349  -- MMIO Interfaces
350  piMMIO_MacAddress_V => piMMIO_MacAddress,
351  piMMIO_Ip4Address_V => piMMIO_Ip4Address,
352  -- IPRX Interface
353  siIPRX_Data_TDATA => siIPRX_Data_tdata,
354  siIPRX_Data_TKEEP => siIPRX_Data_tkeep,
355  siIPRX_Data_TLAST => siIPRX_Data_tlast,
356  siIPRX_Data_TVALID => siIPRX_Data_tvalid,
357  siIPRX_Data_TREADY => siIPRX_Data_tready,
358  -- ETH Interface
359  soETH_Data_TDATA => soETH_Data_tdata,
360  soETH_Data_TKEEP => soETH_Data_tkeep,
361  soETH_Data_TLAST => soETH_Data_tlast,
362  soETH_Data_TVALID => soETH_Data_tvalid,
363  soETH_Data_TREADY => soETH_Data_tready,
364  -- IPTX Interfaces
365  siIPTX_MacLkpReq_V_V_TDATA => siIPTX_MacLkpReq_TDATA,
366  siIPTX_MacLkpReq_V_V_TVALID => siIPTX_MacLkpReq_TVALID,
367  siIPTX_MacLkpReq_V_V_TREADY => siIPTX_MacLkpReq_TREADY,
368  --
369  soIPTX_MacLkpRep_V_TDATA => soIPTX_MacLkpRep_TDATA,
370  soIPTX_MacLkpRep_V_TVALID => soIPTX_MacLkpRep_TVALID,
371  soIPTX_MacLkpRep_V_TREADY => soIPTX_MacLkpRep_TREADY,
372  -- CAM Interfaces
373  soCAM_MacLkpReq_V_key_V_TDATA => ssARS_CAM_MacLkpReq_TDATA,
374  soCAM_MacLkpReq_V_key_V_TVALID => ssARS_CAM_MacLkpReq_TVALID,
375  soCAM_MacLkpReq_V_key_V_TREADY => ssARS_CAM_MacLkpReq_TREADY,
376  --
377  siCAM_MacLkpRep_V_TDATA => ssCAM_ARS_MacLkpRep_TDATA,
378  siCAM_MacLkpRep_V_TVALID => ssCAM_ARS_MacLkpRep_TVALID,
379  siCAM_MacLkpRep_V_TREADY => ssCAM_ARS_MacLkpRep_TREADY,
380  --
381  soCAM_MacUpdReq_V_TDATA => ssARS_CAM_MacUpdReq_TDATA,
382  soCAM_MacUpdReq_V_TVALID => ssARS_CAM_MacUpdReq_TVALID,
383  soCAM_MacUpdReq_V_TREADY => ssARS_CAM_MacUpdReq_TREADY,
384  --
385  siCAM_MacUpdRep_V_TDATA => ssCAM_ARS_MacUpdRep_TDATA,
386  siCAM_MacUpdRep_V_TVALID => ssCAM_ARS_MacUpdRep_TVALID,
387  siCAM_MacUpdRep_V_TREADY => ssCAM_ARS_MacUpdRep_TREADY
388  );
389  end generate;
390 
391 end Structural;
in piMMIO_Ip4Addressstd_logic_vector(31 downto 0)
in siIPTX_MacLkpReq_TVALIDstd_logic
in siIPRX_Data_tvalidstd_logic
in siIPTX_MacLkpReq_TDATAstd_logic_vector( gKeyLength- 1 downto 0)
out soIPTX_MacLkpRep_TVALIDstd_logic
in siIPRX_Data_tdatastd_logic_vector(63 downto 0)
out soETH_Data_tvalidstd_logic
out siIPRX_Data_treadystd_logic
out soIPTX_MacLkpRep_TDATAstd_logic_vector(55 downto 0)
out soETH_Data_tdatastd_logic_vector(63 downto 0)
out soETH_Data_tkeepstd_logic_vector(7 downto 0)
in piMMIO_MacAddressstd_logic_vector(47 downto 0)
in siIPRX_Data_tkeepstd_logic_vector(7 downto 0)
in soIPTX_MacLkpRep_TREADYstd_logic
out siIPTX_MacLkpReq_TREADYstd_logic
out soLkpRep_Validstd_logic
out soUpdRep_Datat_RtlUpdRep
in piClkstd_logic
in siLkpReq_Datat_RtlLkpReq
out poDebugstd_logic_vector(179 downto 0)
in siUpdReq_Datat_RtlUpdReq
out soUpdRep_Validstd_logic
in soUpdRep_Readystd_logic
out poCamReadystd_logic
in piRststd_logic
in siLkpReq_Validstd_logic
in siUpdReq_Validstd_logic
out siUpdReq_Readystd_logic
in soLkpRep_Readystd_logic
out siLkpReq_Readystd_logic
out soLkpRep_Datat_RtlLkpRep