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

Subversion Repositories amber

Compare Revisions

  • This comparison shows the changes necessary to convert path
    /amber/trunk/hw/tests
    from Rev 17 to Rev 20
    Reverse comparison

Rev 17 → Rev 20

/timeouts.txt
1,59 → 1,60
flow4 3936
tmp 3396
add 1740
adc 1380
sub 1560
sbc 2676
barrel_shift 1560
barrel_shift_rs 1380
change_sbits 2340
change_mode 1692
bl 1572
bcc 1200
ldr 4432
ldr_str_pc 1612
strb 2288
ldm1 2628
ldm2 2052
ldm3 1868
ldm4 1856
stm1 7588
stm2 2440
ldm_stm_onetwo 4840
stm_stream 52276
mul 186960
mla 377424
swp 2084
irq 103828
firq 30540
swi 1620
undefined_ins 2748
addr_ex 1772
irq_stm 10220
cache1 16308
cache2 1460
cache3 106064
cache_swap 69276
cacheable_area 5952
cache_flush 18408
flow1 2976
flow2 4960
flow3 3348
hiboot_mem 1424
ddr31 102880
ddr32 205992
ddr33 21792
ethmac_reg 4776
ethmac_mem 75844
ethmac_tx 18172
uart_reg 1824
uart_tx 136588
uart_rx 132384
uart_rxint 127204
bic_bug 1524
movs_bug 1592
flow_bug 1500
mlas_bug 1996
inflate_bug 1420
swp_lock_bug 1368
cache_swap_bug 29620
tmp 3376
add 1704
adc 1368
sub 1500
sbc 2484
barrel_shift 1524
barrel_shift_rs 1368
change_sbits 2184
change_mode 1656
bl 1548
bcc 1188
ldr 4000
ldr_str_pc 1564
strb 2120
ldm1 2544
ldm2 2016
ldm3 1832
ldm4 1820
stm1 7024
stm2 2296
ldm_stm_onetwo 4748
stm_stream 49188
mul 177660
mla 365076
swp 2004
irq 97644
firq 28764
swi 1596
undefined_ins 2616
addr_ex 1724
irq_stm 9812
cache1 16296
cache2 1456
cache3 98884
cache_swap 66196
cacheable_area 5580
cache_flush 17572
flow1 2972
flow2 4800
flow3 3292
hiboot_mem 1376
ddr31 96676
ddr32 193584
ddr33 20820
ethmac_reg 4596
ethmac_mem 75708
ethmac_tx 16692
uart_reg 1800
uart_tx 137764
uart_rx 132024
uart_rxint 125032
bic_bug 1512
movs_bug 1532
flow_bug 1428
mlas_bug 1948
inflate_bug 1360
swp_lock_bug 1320
cache_swap_bug 29504
conflict_rd 2552
/conflict_rd.S
0,0 → 1,127
/*****************************************************************
// //
// Amber 2 Core Instruction Test //
// //
// This file is part of the Amber project //
// http://www.opencores.org/project,amber //
// //
// Description //
// Tests that a register conflict between a ldr and a regop //
// that changes the value of the same register is handled //
// correctly. //
// //
// Author(s): //
// - Conor Santifort, csantifort.amber@gmail.com //
// //
//////////////////////////////////////////////////////////////////
// //
// Copyright (C) 2010 Authors and OPENCORES.ORG //
// //
// This source file may be used and distributed without //
// restriction provided that this copyright statement is not //
// removed from the file and that any derivative work contains //
// the original copyright notice and the associated disclaimer. //
// //
// This source file is free software; you can redistribute it //
// and/or modify it under the terms of the GNU Lesser General //
// Public License as published by the Free Software Foundation; //
// either version 2.1 of the License, or (at your option) any //
// later version. //
// //
// This source is distributed in the hope that it will be //
// useful, but WITHOUT ANY WARRANTY; without even the implied //
// warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR //
// PURPOSE. See the GNU Lesser General Public License for more //
// details. //
// //
// You should have received a copy of the GNU Lesser General //
// Public License along with this source; if not, download it //
// from http://www.opencores.org/lgpl.shtml //
// //
*****************************************************************/
 
#include "amber_registers.h"
 
.section .text
.globl main
main:
 
@ Run through the test 4 times
@ 1 - cache off
@ 2 - cache on but empty
@ 3 - cache on and loaded
@ 4 - same as 3
mov r10, #40
1: mov r1, #1
mov r2, #2
mov r3, #3
mov r4, #4
mov r5, #0x1000
mov r6, #6
str r6, [r5]
mov sp, #0x800
@ --------------------------
tst r3, #1
add r0, r6, r4
ldr r1, Data1
ldr r3, Data2
ldr r2, Data3
movne r2, r3 @ always executed
ldr r3, [r5]
bl 2f
nop
nop
nop
2: stmdb sp!, {r1, r2, r3}
 
nop
nop
ldr r8, [sp, #4]
ldr r9, Data2
cmp r8, r9
addne r10, #1
bne testfail
@ ---------------------
@ Enable the cache
@ ---------------------
mvn r0, #0
mcr 15, 0, r0, cr3, cr0, 0 @ cacheable area
mov r0, #1
mcr 15, 0, r0, cr2, cr0, 0 @ cache enable
 
subs r10, r10, #10
bne 1b
b testpass
testfail:
ldr r11, AdrTestStatus
str r10, [r11]
b testfail
testpass:
ldr r11, AdrTestStatus
mov r10, #17
str r10, [r11]
b testpass
 
/* Write 17 to this address to generate a Test Passed message */
AdrTestStatus: .word ADR_AMBER_TEST_STATUS
AdrHiBootBase: .word ADR_HIBOOT_BASE
 
Data1: .word 0x1000
Data2: .word 0x2000
Data3: .word 0x3000
 
/* ========================================================================= */
/* ========================================================================= */

powered by: WebSVN 2.1.0

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