Giter Site home page Giter Site logo

axi_node's Introduction

AXI Interconnect

This repository has been archived. A fully AXI compliant replacement for this interconnect can be found in pulp-platform/axi.

axi_node's People

Contributors

andreaskurth avatar atraber avatar bluewww avatar fabianschuiki avatar francescoconti avatar msfschaffner avatar vogelpi avatar zarubaf avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar

axi_node's Issues

Rework the arbiter to not change requests once made

Currently the way the arbiter is organized can cause the payload of AXI beats (address, data, etc.) to change after the valid signals has been asserted. This violates the AXI4 standard. Rework the arbiter such that it holds on to its decision until the request is cleared. This should be easily doable by having the round-robin flag jump to the selected master.

Crossbar fails verification IP check

Having a hint that all is not well with the crossbar, I tried simulating in the verification environment that is provided for Xilinx crossbar. The Xilinx crossbar passes but this one gives the following errors:

(The references to PASSED refer to the Xilinx crossbar that runs in parallel for comparison)

A test case is available but after minimisation it was still too large to upload here.

Chronologic VCS simulator copyright 1991-2017
Contains Synopsys proprietary information.
Compiler version M-2017.03-SP2-5_Full64; Runtime version M-2017.03-SP2-5_Full64; Nov 13 12:07 2018
0: exdes_tb: Starting testbench
0: exdes_tb: System reset detected: 1
2500000: exdes_tb: System reset detected: 0
7885000 : exdes_tb.exdes_top.exdes_top_pulp.genblk1[0].proto_master.inst.REP : BIT( 79) : ERROR : AXI_AUXM_RCAM_UNDERFLOW. Read CAM underflow.
$stop at time 7885000 Scope: exdes_tb.exdes_top.exdes_top_pulp.genblk1[0].proto_master.inst.REP File: ./../../axi_crossbar_0_ex/axi_crossbar_0_ex.ip_user_files/ipstatic/hdl/axi_protocol_checker_v2_0_vl_rfs.sv Line: 5250
ucli% run
7985000 : exdes_tb.exdes_top.exdes_top_pulp.genblk1[0].proto_master.inst.REP : BIT( 58) : ERROR : Invalid state x
7985000 : exdes_tb.exdes_top.exdes_top_pulp.genblk1[0].proto_master.inst.REP : BIT( 59) : ERROR : AXI_ERRS_RID: A slave can only give read data with an ID to match an outstanding read transaction. Spec: section A5.3.1.
$stop at time 7985000 Scope: exdes_tb.exdes_top.exdes_top_pulp.genblk1[0].proto_master.inst.REP File: ./../../axi_crossbar_0_ex/axi_crossbar_0_ex.ip_user_files/ipstatic/hdl/axi_protocol_checker_v2_0_vl_rfs.sv Line: 5230
ucli%
ucli%
ucli% run
8485000 : exdes_tb.exdes_top.exdes_top_pulp.genblk1[0].proto_master.inst.REP : BIT( 32) : ERROR : AXI_ERRS_BRESP_AW: A slave must not give a write response before the write address. Spec: section A3.3.1 and figure A3-7.
$stop at time 8485000 Scope: exdes_tb.exdes_top.exdes_top_pulp.genblk1[0].proto_master.inst.REP File: ./../../axi_crossbar_0_ex/axi_crossbar_0_ex.ip_user_files/ipstatic/hdl/axi_protocol_checker_v2_0_vl_rfs.sv Line: 5203
ucli% run
92085000 : exdes_tb.exdes_top.exdes_top_pulp.genblk1[0].proto_master.inst.REP : BIT( 58) : ERROR : AXI_ERRS_RDATA_NUM: The number of read data items must match the corresponding ARLEN. Spec: section A3.4.1.
$stop at time 92085000 Scope: exdes_tb.exdes_top.exdes_top_pulp.genblk1[0].proto_master.inst.REP File: ./../../axi_crossbar_0_ex/axi_crossbar_0_ex.ip_user_files/ipstatic/hdl/axi_protocol_checker_v2_0_vl_rfs.sv Line: 5229
ucli% run
147090000: exdes_tb: SIMULATION PASSED
147090000: exdes_tb: Test Completed Successfully
$stop at time 147090000 Scope: exdes_tb File: ./../imports/axi_crossbar_0_example_design_tb.v Line: 102
ucli% run
147095000: exdes_tb: SIMULATION PASSED
147095000: exdes_tb: Test Completed Successfully
$stop at time 147095000 Scope: exdes_tb File: ./../imports/axi_crossbar_0_example_design_tb.v Line: 102
ucli% exit
V C S S i m u l a t i o n R e p o r t
Time: 147095000 ps
CPU Time: 1.380 seconds; Data structure size: 3.0Mb
Tue Nov 13 12:07:33 2018

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.