VeriFlow Technologies India (P) Ltd

Similar documents
AMBA 3 AHB Lite Bus Architecture

Ref: AMBA Specification Rev. 2.0

Lecture 10 Introduction to AMBA AHB

Verilog AHB Testbench User's Guide

Bus Interfaces and Standards. Zeljko Zilic

AHB-Lite Multilayer Interconnect IP. AHB-Lite Multilayer Interconnect IP User Guide Roa Logic, All rights reserved

EECS 373 Design of Microprocessor-Based Systems

White Paper AHB to Avalon & Avalon to AHB Bridges

Part A. Yunfei Gu Washington University in St. Louis

AHB Slave Decoder. User Guide. 12/2014 Capital Microelectronics, Inc. China

1. INTRODUCTION OF AMBA

Design And Implementation of Efficient FSM For AHB Master And Arbiter

5. On-chip Bus

Assertion Based Verification of AMBA-AHB Using System Verilog

Keywords- AMBA, AHB, APB, AHB Master, SOC, Split transaction.

iimplementation of AMBA AHB protocol for high capacity memory management using VHDL

SoC Interconnect Bus Structures

Design of an Efficient FSM for an Implementation of AMBA AHB in SD Host Controller

Embedded Busses. Large semiconductor. Core vendors. Interconnect IP vendors. STBUS (STMicroelectronics) Many others!

Design and Verification of AMBA AHB- Lite protocol using Verilog HDL

EECS 373. Design of Microprocessor-Based Systems. Prabal Dutta University of Michigan. Announcements. Homework #2 Where was I last week?

1 Contents. Version of EnSilica Ltd, All Rights Reserved

Developing a LEON3 template design for the Altera Cyclone-II DE2 board Master of Science Thesis in Integrated Electronic System Design

CoreAHB. Contents. Product Summary. General Description. Intended Use. Key Features. Benefits. Supported Device Families

CoreHPDMACtrl v2.1. Handbook

DesignCon AMBA Compliance Checking Using Static Functional Verification

Using formal techniques to Debug the AMBA System-on-Chip Bus Protocol

Buses. Maurizio Palesi. Maurizio Palesi 1

Universität Dortmund. ARM Cortex-M3 Buses

VERIFICATION ANALYSIS OF AHB-LITE PROTOCOL WITH COVERAGE

Design of Microprocessor-Based Systems Part II

CoreConfigMaster v2.1. Handbook

AMBA TLM API Quick Reference

VLSI DESIGN OF AMBA BASED AHB2APB BRIDGE

Design of an AMBA AHB Reconfigurable Arbiter for On-chip Bus Architecture

AMBA AHB Bus Protocol Checker

Interprocess Communication

Application Note. Implementing AHB Peripherals in Logic Tiles. Document number: ARM DAI 0119E Issued: January 2006 Copyright ARM Limited 2006

SEMICON Solutions. Bus Structure. Created by: Duong Dang Date: 20 th Oct,2010

International Journal of Scientific & Engineering Research, Volume 4, Issue 11, November-2013 ISSN

VERIFICATION OF AHB PROTOCOL USING SYSTEM VERILOG ASSERTIONS

VLSI Systems Design. Connection and Communication Models

CoreAHBtoAPB3 v3.1. Handbook

Improving Memory Access time by Building an AMBA AHB compliant Memory Controller

A Flexible SystemC Simulator for Multiprocessor Systemson-Chip

Design of AHB Arbiter with Effective Arbitration Logic for DMA Controller in AMBA Bus

ISSN: [IDSTM-18] Impact Factor: 5.164

AHB2APB Bridge. User Guide. 11/2013 Capital Microelectronics, Inc. China

BUILDING AN AMBA COMPLIANT MEMORY CONTROLLER

ECE 551 System on Chip Design

System Design Kit. Cortex-M. Technical Reference Manual. Revision: r0p0. Copyright 2011 ARM. All rights reserved. ARM DDI 0479B (ID070811)

Hardware Implementation of AMBA Processor Interface Using Verilog and FPGA

Errata and Clarifications to the PCI-X Addendum, Revision 1.0a. Update 3/12/01 Rev P

AHB Trace Macrocell (HTM) AMBA. Technical Reference Manual. Revision: r0p4. Copyright ARM Limited. All rights reserved.

Leon3 NoC System Generator

AHB CPU Wrappers. Technical Reference Manual. Copyright 2001, 2003 ARM Limited. All rights reserved. ARM DDI 0169D

ARM PrimeCell SDRAM Controller (PL170)

Formal Specification of an Asynchronous On-Chip Bus

ISSN Vol.03, Issue.08, October-2015, Pages:

SoC Design Lecture 11: SoC Bus Architectures. Shaahin Hessabi Department of Computer Engineering Sharif University of Technology

Smart Bus Arbiter for QoS control in H.264 decoders

Excalibur ARM-Based. Embedded Processors PLDs. Hardware Reference Manual January 2001 Version 1.0

Serial Peripheral Interface Design for Advanced Microcontroller Bus Architecture Based System-on- Chip

Design and Implementation of High-Performance Master/Slave Memory Controller with Microcontroller Bus Architecture

Design of AMBA Based AHB2APB Bridge

Pooja Kawale* et al ISSN: [IJESAT] [International Journal of Engineering Science & Advanced Technology] Volume-6, Issue-3,

IMPLEMENTATION OF AHB PROTOCOL USING FPGA

Cortex -M System Design Kit. Arm. Technical Reference Manual. Revision: r1p1

Design & Implementation of AHB Interface for SOC Application

LogiCORE IP AXI Video Direct Memory Access (axi_vdma) (v3.01.a)

Assertions: Too good to be reserved for verification only.

DEVELOPMENT AND VERIFICATION OF AHB2APB BRIDGE PROTOCOL USING UVM TECHNIQUE

Formal Specification of an Asynchronous On-Chip Bus

UART. User Guide. 04/2014 Capital Microelectronics, Inc. China

ARM Integrator/AM. User Guide ARM DUI 0133A

The CoreConnect Bus Architecture

Design of High Speed AMBA Advanced Peripheral Bus Master Data Transfer for Microcontroller

Novel and Robust Implementation of Register Abstraction on UVM Testbench

1553 BC/BM/RT VHDL CORE DATA SHEET

PrimeCell AHB SRAM/NOR Memory Controller (PL241)

Interface Development for the Point-of-care device based on SOPC

August Issue Page 96 of 107 ISSN

Bus AMBA. Advanced Microcontroller Bus Architecture (AMBA)

VLSI Design of Multichannel AMBA AHB

Bluetooth Development Platform

VERIFICATION OF AMBA AXI BUS PROTOCOL IMPLEMENTING INCR AND WRAP BURST USING SYSTEM VERILOG

Chapter 3. Top Level View of Computer Function and Interconnection. Yonsei University

Effective Verification of ARM SoCs

EBCP RoseRed. Bluetooth Development Platform User Guide. Copyright 2002 ARM Limited. All rights reserved. ARM DUI 0190A

Formal Performance Evaluation of AMBA-based System-on-Chip Designs

Chap 4 Connecting the Testbench and. Design. Interfaces Clocking blocks Program blocks The end of simulation Top level scope Assertions

LogiCORE IP AXI Video Direct Memory Access (axi_vdma) (v3.00.a)

IMPLEMENTATION OF LOW POWER INTERFACE FOR VERIFICATION IP (VIP) OF AXI4 PROTOCOL

LEON/AMBA VHDL model description. (leon-2.2) Prepared by J. Gaisler

SECA: Security-Enhanced Communication Architecture

Synchronous Bus. Bus Topics

Chapter 2 The AMBA SOC Platform

Embedded Systems 1: On Chip Bus

DATASHEET. Synchronous Serial Interface (SPI)

SONA: An On-Chip Network for Scalable Interconnection of AMBA-Based IPs*

Transcription:

AHB Monitor VIP Version 0.3, Dec 05, 2008 Prabuddha Khare

Rev. # Designer Description Date Released 0.1 Prabuddha Khare Initial Draft May 29, 2008 0.2 Prabuddha Khare Added more sections and TOC July 22, 2008 0.3 Prabuddha Khare Added missing features Dec 05, 2008

Table of Contents 1 INTRODUCTION 5 1.1 Intended Audience 5 1.2 Intended Usage 5 1.3 Delivery Overview 5 2 AHB MONITOR AND THE AHB SYSTEM-BUS 6 3 LEGAL TRANSACTIONS MONITORED AND REPORTED 7 4 VIOLATIONS MONITORED AND REPORTED 7 4.1 Multiple grant violation 8 4.2 Address misalignment 8 4.3 Address increment violation for bursts 8 4.4 1-k Boundary crossing for bursts 9 4.5 WRAP burst violation 9 4.6 Address decoding violation (Multiple HSEL) 10 4.7 Command sequence violation on HTRANS 10 4.8 Command-bus violation for bursts (HSIZE, HBURST, HWRITE) 10 4.9 Burst sequence violation on HTRANS 10 4.10 Normal response violation 11 4.11 2-cycle response violation 11 4.12 BUSY insertion violation for bursts 11 4.13 HREADY violation 11 4.14 Bus Grant to split-master violation 12 4.15 Split/un-split timing violations 12

4.16 Splitting the correct master on a split response 12 4.17 Un-splitting by inappropriate slave 12 4.18 HMASTLOCK timing violation 12 4.19 Pre-emption of locked transfer violation 13 5 USER TASKS FOR CONFIGURATION AND STATUS 14 5.1 Task: set_wait_limit (integer limit); 14 5.2 Function: get_total_violations(); 14 5.3 Task: transaction_logging (bit enable_disable); 14 5.4 Task: violation_logging (bit enable_disable); 14 6 USING THE MONITOR 14 6.1 Monitor port connections 14 6.2 Instantiation and task usage 15

1 Introduction This is a user-cum-specification document for the AHB monitor VIP. The document captures the usage-intent of the module and provides details of all the supported features. There is a section on usage where particulars about instantiation and interconnections are given. There is also a section showing sample messages generated by the VIP for normal transaction logging as well as for violations and abnormal bus behavior. 1.1 Intended Audience The AHB monitor VIP is targeted for use by ASIC verification teams working on projects that use the AHB bus as one of the main communication trunk line. Usually this involves several masters and slaves with one or more CPUs to form a system-on-chip or SOC. During development and debugging, therefore, the AHB monitor will prove to be an invaluable help to ensure transactions on AHB are following the standard protocol. 1.2 Intended Usage The AHB monitor VIP serves as verification component running in the background during simulation runs. By default it logs the AHB transactions onto standard output. It also logs violations as and when encountered. These logs can be selectively disabled. The monitor module should be instantiated and connected on the test-bench. In most SOC configurations, the port connections of the monitor will have to be hierarchically connected to the AHB bus, it being internal to the SOC. 1.3 Delivery Overview The VIP is delivery consists of the following two files. The first is the main module definition and the second is an include file containing constant definitions. AHBMonitor.sv AHBDefines.svh

2 AHB Monitor and the AHB system-bus The AHB monitor is a verification IP to be used in system level simulation environments which have multi-master multi-slave configurations with an arbiter/decoder/multiplexer system controller module. The diagram below shows the placement of the monitor with respect to the AHB bus. M0 S0 M1 Arbiter/Decoder/Mux S1 M15 S15 AHB sub-system HSPLIT Muxed Slave BUS AHB Monitor Muxed Master BUS Figure-1 Placement of AHB Monitor in the AHB sub-system As can be seen, the monitor must be connected to the muxed AHB buses and not to the point to point connections of masters and slaves to the Arbiter/decoder/mux module.

Apart from the bus connections the monitor must also be connected to certain signals from the arbiter/decoder/mux module. These connections have not been shown in the above diagram. For more details please refer to the signal list section of the monitor in this document. The example instantiation code may also be referred to. 3 Legal transactions monitored and reported By default the monitor shall report the on-going transactions in the following single line format: MONITOR-> STime: Master-ID-> Slave-ID Type-Command-Size A=Address D=Data-> Resp at ETime Where: <Type> is Single/INCR/INCR4/INCR8/INCR16/WRAP4/WRAP8/WRAP16 <Command> is READ or WRITE <Size> is WORD/HALF-WORD/BYTE <Resp> is the slave response OK/RETRY/SPLIT/ERROR <STime> is the start time of transaction <ETime> is the end time of transaction The logging of such legal transactions may be turned off as described later. 4 Violations monitored and reported The following is a list of AHB bus protocol related violations that the monitor shall check for and report. These may be selectively turned on/off. Since the AHB protocol specification is unclear on several points leaving them open to interpretation, the monitor has been designed to be configurable for some of these points and where such flexibility could not be built-in, the behavior has been clearly described to avoid any ambiguity in its usage by the end-user. When a violation is reported, the single line format shown above shall be logged as a prelude to the violation information with as much information as possible to report at that juncture. - Multiple grant violation - Address misalignment. - Address increment violation for bursts - 1-k Boundary crossing for bursts - WRAP burst violation - Address decoding violation (Multiple HSEL) - Command sequence violation on HTRANS - Command-bus violation for bursts (HSIZE, HBURST, HWRITE) - Burst sequence violation on HTRANS - Normal response violation

- 2-cycle response violation - BUSY insertion violation for bursts - HREADY violation - Bus Grant to split-master violation - Split/un-split timing violations - Splitting the correct master on a split response - Un-splitting by inappropriate slave - HMASTLOCK timing violation - Pre-emption of a locked transfer violation The violations are logged in the following format: MONITOR_VIOLATION-> STime: Master-ID-> Slave-ID Type-Command-Size A=Address D=Data-> Resp <Violation Details> at ETime Where: <Violation Details> are specific to the violation detected. <STime> is the time start time of transaction <ETime> is the time at which the violation was detected The monitor maintains a count of the total violations detected that can be queried anytime by a task call. The detailed description for these violations is described hereunder. 4.1 Multiple grant violation In the AHB sub-system, only one master is allowed to own the bus. If the arbiter asserts grants to multiple masters it is a violation. This feature can only be checked if the point to point connections between the masters and the arbiter for the signals HBUSREQ and HGRANT are also made to the monitor. The diagram in Figure-1 does not show this connectivity but the current release of the monitor has the necessary ports and supports this feature. Grant issued to multiple masters 4.2 Address misalignment The monitor shall decode the HSIZE and check whether the address is aligned for that transfer size. For word transfer, the address bits 0 and 1 must be 2 b00. For half-word transfer, address bit-0 must be 0. For byte transfer the address can be any value. Misaligned address at 4.3 Address increment violation for bursts

When a burst transfer is seen, the monitor shall check whether the address increments are commensurate with HSIZE. For word transfers, the increments must be by 4. For halfword transfers the increment must be by 2. For byte transfers the increment must be by 1. For wrap bursts also the increments are monitored. Bad INCR address at 4.4 1-k Boundary crossing for bursts When a burst is seen on the AHB bus, the monitor shall check whether it is a fixed length burst or not. If it is, then it shall check that the length of the burst does not cross 1-k boundary based on the HSIZE, HBURST and the starting address. It will be able to report the violation at the start of the transaction itself. For incremental burst, the monitor will have to wait till the actual boundary is reached before being able to decide whether the last beat violated the 1-K boundary crossing rule or not. For wrap bursts, this check is not necessary as once the boundary is reached, wrap logic should generate an address within the same 1k range. In case this is violated, it will be caught byte the wrap burst violation case mentioned below. Transfer length crosses 1-k boundary at 4.5 WRAP burst violation For wrap bursts, the monitor shall check that the address wraps at the wrap boundary as decided by HBURST and HSIZE. For wrap-16 the wrap size is 64 bytes for word transfers, 32 bytes for half-word transfers and 16 bytes for byte transfers. For wrap-8, the wrap size is 32 bytes for word transfer, 16 bytes for half-word transfers and 8 bytes for byte transfers. For wrap-4, the wrap size is 16 bytes for word transfer, 8 bytes for halfword transfer and 4 bytes for byte transfer. Thus for word transfer of wrap-16, the wrap blocks are: 0x0000_0000 to 0x0000_003f 0x0000_0040 to 0x0000_007f, and so on. For half-word transfer of wrap-16, the wrap blocks are: 0x0000_0000 to 0x0000_001f 0x0000_0020 to 0x0000_003f, and so on. Thus for byte transfer of wrap-16, the wrap blocks are:

0x0000_0000 to 0x0000_000f 0x0000_0010 to 0x0000_001f, and so on. Similar algorithm for other wrap sizes is used. When the starting address falls within these blocks, the wrap should happen when the end of the block is reached. Since the 1-K boundary is always aligned with wrap boundary, the 1-K boundary crossing for wrap transfers will be detected automatically as a wrap violation. WRAP address out of wrap-block 4.6 Address decoding violation (Multiple HSEL) The monitor shall check that only one slave is selected at any one time since AHB does not support overlapped slave addressing. AHB transactions being pipelined, it is possible that a slave gets de-selected during its data phase. Multiple HSEL active at 4.7 Command sequence violation on HTRANS A new transaction can begin only with a NON-SEQ command. If the monitor detects a SEQ command after IDLE, it shall report it as a violation. It shall also report a violation if a SEQ command is detected immediately following a burst transfer. Unexpected SEQ command after IDLE at Unexpected SEQ command beyond burst at 4.8 Command-bus violation for bursts (HSIZE, HBURST, HWRITE) During a burst, the AHB command bus signals namely HSIZE, HBURST and HWRITE are not allowed to change. The monitor shall check that this condition is satisfied. Command signals changed within a burst at 4.9 Burst sequence violation on HTRANS Burst sequence cannot have IDLEs inserted during the burst. Nor can there be a NON- SEQ command in the middle of a fixed burst length transfer. BUSY may be inserted during a burst.

IDLE within a BURST not allowed at Unexpected NON-SEQ command within a burst at 4.10 Normal response violation The monitor shall check that the slaves generate OK response with HREADY high. Any other type of response with HREADY high is considered a violation. Invalid response. Expected OK HRESP at 4.11 2-cycle response violation When a slave generates RETRY, SPLIT or ERROR responses, it should drive HRESP for two clocks with HREADY asserted low for the first clock and de-asserted on the 2 nd clock. The monitor shall check for any violation in this behavior. The monitor will also report it as a violation if the HRESP changes on the 2 nd clock of the two-cycle response. Two-cycle RESP has HREADY low for more than 1-clock at HRESP has changed in the 2nd clock of two-cycle response at 4.12 BUSY insertion violation for bursts During a burst BUSY may be inserted anywhere except before the last beat or after it. Violation of this requirement shall be reported by the monitor. Busy insertion before NON-SEQ is also allowed. BUSY insertion not allowed on last beat at BUSY insertion not allowed after end of burst at 4.13 HREADY violation Although there is no explicit rule about how log the HREADY may be held asserted, the monitor shall report a violation if it is held asserted low for more than a configurable value (default 16). It can also report which slave is driving wait states for so long, provided the HREADY signal from each slave is connected to the monitor. The diagram in Figure-1 does not show this configuration. The current release of the monitor does not report the slave ID. Another violation related to HREADY reported by the monitor is when it is driven LOW during IDLE command.

WAIT state with HREADY low exceeds nn clocks at Unexpected HREADY for IDLE command at 4.14 Bus Grant to split-master violation When a master is split, its request must not be honored by the arbiter until it is unsplit. In fact, the arbiter should remove the HGRANT immediately when a SPLIT response is detected. The monitor shall report a violation for both these conditions. Grant issued to split master Split master's hgrant not removed in time at 4.15 Split/un-split timing violations The AHB protocol says that a master cannot be unsplit at the same clock as the clock on which it is split. This means that there must be at least one clock delay between a split generation and an unsplit occurring. The monitor shall check that this requirement is satisfied by the system being monitored. Un-split happened in less than 1 clock after split for master 4.16 Splitting the correct master on a split response When a slave splits a master, it is its responsibility to unsplit it at the appropriate time. If the slave performs an unsplit of a master that it has not already split, it is considered a violation and the monitor shall report it as such. If a slave has split several masters then it can unsplit all of them together or unsplit them one by one but it must not unsplit a master more than once. Un-split issued for not-split master 4.17 Un-splitting by inappropriate slave If a master is split by one slave but gets unsplit by another, it is a violation. This condition cannot be checked by monitoring only the muxed HSPLIT bus. To support this feature the HSPLIT bus from all the slaves must be connected to the monitor. The diagram in Figure-1 does not show this configuration. The current release of the monitor does not support this feature. 4.18 HMASTLOCK timing violation

The HMASTLOCK is supposed to follow the HLOCK signal during a burst and must remain asserted throughout the burst if HLOCK was asserted at the start of transaction. The monitor shall report a violation if either of these requirements are not met. HMASTLOCK inconsistent with HLOCK at start of transaction HMASTLOCK changed in middle of transaction 4.19 Pre-emption of locked transfer violation A locked transfer cannot be pre-empted by the arbiter. Moreover, if a slave generates a RETRY response, then also the arbiter may not switch the grant even if it was the last beat. The arbiter is supposed to maintain the grant with the locked master for an extra cycle so that the response of the last beat can be handled without causing a pre-emption of the locked burst. The monitor checks for both these conditions and reports violation appropriately. Locked burst got pre-empted at Locked transfer with RETRY got pre-empted at

5 User tasks for configuration and status The following tasks are provided for configuring the monitor and extracting useful status information about the transactions at any time. 5.1 Task: set_wait_limit (integer limit); Sets the upper limit for the wait-state monitoring. When the monitor detects wait states exceeding the given limit, it shall log it as a violation. Default value is 16. Usage: set_wait_limit (20); --> Sets the wait limit to 20. 5.2 Function: get_total_violations(); This function returns the total violations detected by the monitor thus far. Usage: vcount = get_total_violations (); 5.3 Task: transaction_logging (bit enable_disable); This task may be used to enable or disable the logging of regular transactions. It does not affect the logging of violations. When the input to the task enable_disable is 1, the logging is enabled. When the input is 0, the logging is disabled. Default is enabled. Usage: transaction_logging (0); --> Transaction logging is disabled. 5.4 Task: violation_logging (bit enable_disable); This task may be used to enable or disable the logging of violations. It does not affect the logging of regular transactions. When violation logging is disabled, the violation counting is also suspended. The counter is not reset so that when logging is re-enabled subsequently the counting will resume from that point. When the input to the task enable_disable is 1, the logging is enabled. When the input is 0, the logging is disabled. Default is enabled. Usage: violation_logging (0); --> Violation logging is disabled. Counting is suspended. 6 Using the Monitor This section gives details about the Monitor entity with port connection details, instantiation and task usage examples. Sample log messages are also shown. 6.1 Monitor port connections The following figure shows the port connections and module definition for the behavioral model of the monitor VIP. module AHBMonitor ( hclk, hresetn, hready,

hresp, hrdata, hsplit, haddr, hwrite, hsize, htrans, hburst, hwdata, hsel, hmaster, hmastlock, hbusreq, hlock, hgrant ); // END module AHBMonitor input hclk; input hresetn; input hready; input [1:0] hresp; input [31:0] hrdata; input [15:0] hsplit; input [31:0] haddr; input hwrite; input [2:0] hsize; input [1:0] htrans; input [2:0] hburst; input [31:0] hwdata; input [15:0] hsel; input [3:0] hmaster; input hmastlock; input [15:0] hbusreq; input [15:0] hlock; input [15:0] hgrant; 6.2 Instantiation and task usage The monitor is instantiated in the test-bench as show in the example below: AHBMonitor u_ahbmonitor (.hclk (hclk),.hresetn (hresetn),.hready (hready),

.hresp (hresp),.hrdata (hrdata),.hsplit (hsplit_arb),.haddr (haddr),.hwrite (hwrite),.hsize (hsize),.htrans (htrans),.hburst (hburst),.hwdata (hwdata),.hsel ({12'h000, hsel}),.hmaster (hmaster),.hmastlock (hmastlock).hbusreq (hbusreq),.hlock (hlock).hgrant (hgrant), ); The following is a typical usage of the monitor from a user-test: initial begin // Wait for reset to complete // Configure monitor to allow wait-insertion for 20 clocks u_ahbmonitor. set_wait_limit (20); // Perform the test sequence // At the end of the test sequence (or at anytime) get violation count from monitor violation_cnt = u_ahbmonitor.get_total_violations (); if (violation_cnt!= 0) begin $display ("==================================================="); $display ("ERROR: Test FAILED with %d AHB violations", violation_cnt); $display ("==================================================="); end $finish(); end // End test case The following are sample log messages for legal transactions: MONITOR-> 255000ps: M3-> S0 INCR-WRITE-HALFWORD A=0e9c259e D=b5340000-> OK at 265000ps MONITOR-> 345000ps: M1-> S0 INCR4-WRITE-WORD A=0000224a-> ERROR at 385000ps MONITOR-> 1645000ps: M0-> S3 INCR-WRITE-BYTE A=300025c4-> RETRY at 1675000ps

The following are sample log messages for transactions that violated the AHB protocol: MONITOR_VIOLATION-> 92305000ps: M0-> S0 INCR-WRITE-WORD A=00001adc NA=00001ac0 EX=00001ae0 Bad INCR address at 92315000ps MONITOR_VIOLATION-> 285625000ps: M0-> S0 INCR-READ-WORD A=00001adc -> WAIT state with HREADY low exceeds 20 clocks at 285845000ps