Entity: tb_avalon_master
- File: tb_avalon_master.vhd
 
Diagram
Description
This Source Code Form is subject to the terms of the Mozilla Public License, v. 2.0. If a copy of the MPL was not distributed with this file, You can obtain one at http://mozilla.org/MPL/2.0/.
Copyright (c) 2014-2021, Lars Asplund lars.anders.asplund@gmail.com Author Slawomir Siluk slaweksiluk@gazeta.pl
Generics
| Generic name | Type | Value | Description | 
|---|---|---|---|
| runner_cfg | string | ||
| encoded_tb_cfg | string | 
Signals
| Name | Type | Description | 
|---|---|---|
| clk | std_logic | |
| address | std_logic_vector(tb_cfg.addr_width-1 downto 0) | |
| writedata | std_logic_vector(tb_cfg.data_width-1 downto 0) | |
| readdata | std_logic_vector(tb_cfg.data_width-1 downto 0) | |
| byteenable | std_logic_vector(tb_cfg.data_width/8 -1 downto 0) | |
| burstcount | std_logic_vector(tb_cfg.burst_width -1 downto 0) | |
| write | std_logic | |
| read | std_logic | |
| readdatavalid | std_logic | |
| waitrequest | std_logic | 
Constants
| Name | Type | Value | Description | 
|---|---|---|---|
| tb_cfg | tb_cfg_t | decode(encoded_tb_cfg) | |
| master_logger | logger_t | get_logger("master") | |
| tb_logger | logger_t | get_logger("tb") | |
| master_actor | actor_t | new_actor("Avalon-MM Master") | |
| bus_handle | bus_master_t | new_bus(data_length => tb_cfg.data_width, address_length => tb_cfg.addr_width, logger => master_logger, actor => master_actor)  | 
|
| memory | memory_t | new_memory | |
| buf | buffer_t | allocate(memory, tb_cfg.transfers * byteenable'length)  | 
|
| avalon_slave | avalon_slave_t | new_avalon_slave(     memory => memory, readdatavalid_high_probability => tb_cfg.readdatavalid_prob, waitrequest_high_probability => tb_cfg.waitrequest_prob, name => "Avalon-MM Slave" )  | 
Types
| Name | Type | Description | 
|---|---|---|
| tb_cfg_t | 
Functions
- gen_rndburst ( variable rnd : inout RandomPType;
variable rndburst : inout positive;
variable transfers : inout natural ) return () 
Processes
- main_stim: ( )
 
Instantiations
- dut: work.avalon_master
 
- slave: work.avalon_slave