URL
https://opencores.org/ocsvn/t48/t48/trunk
Subversion Repositories t48
Compare Revisions
- This comparison shows the changes necessary to convert path
/t48/tags/rel_0_5_beta/sw/verif/white_box
- from Rev 255 to Rev 292
- ↔ Reverse comparison
Rev 255 → Rev 292
/psen_rd_wr_timing/test.asm
0,0 → 1,59
;; ******************************************************************* |
;; $Id: test.asm,v 1.2 2004-09-12 00:28:58 arniml Exp $ |
;; |
;; Test overlap of PSEN and RD/WR. |
;; ******************************************************************* |
|
INCLUDE "cpu.inc" |
INCLUDE "pass_fail.inc" |
|
ORG 0 |
|
;; Start of test |
|
;; access external memory |
mov r0, #0FFH |
mov a, #001H |
movx @r0, a |
|
;; jump to external Program Memory |
jmp extern_rom |
|
pass: PASS |
|
fail: FAIL |
|
|
ORG 0800H |
extern_rom: |
;; write to external memory |
mov r0, #010H |
mov a, #0A5H |
movx @r0, a |
cpl a |
mov r1, a |
inc r0 |
movx @r0, a |
|
;; read back data |
movx a, @r0 |
cpl a |
add a, r1 |
cpl a |
jz read_next |
jmp fail |
|
read_next: |
mov a, r1 |
cpl a |
mov r1, a |
dec r0 |
movx a, @r0 |
cpl a |
add a, r1 |
cpl a |
jz read_ok |
jmp fail |
|
read_ok: |
jmp pass |
/p1_port_reg_conflict/no_dump_compare
0,0 → 1,2
Reason why this cell is exluded from dump compare: |
External ports not modelled in detail in i8039 emulator. |
/p1_port_reg_conflict/test.asm
0,0 → 1,119
;; ******************************************************************* |
;; $Id: test.asm,v 1.1 2004-05-17 14:34:41 arniml Exp $ |
;; |
;; Test P1 conflict for reading port or output register. |
;; ******************************************************************* |
|
INCLUDE "cpu.inc" |
INCLUDE "pass_fail.inc" |
|
ORG 0 |
|
;; Start of test |
|
;; access testbench peripherals |
mov r0, #0FFH |
mov a, #002H |
movx @r0, a |
|
;; check functionality of P1 testbench peripheral |
in a, p1 |
inc a |
jnz fail |
|
mov r0, #000H |
;; extern write 00H to P1 |
clr a |
movx @r0, a |
in a, p1 |
jnz fail |
;; extern write 0AAH to P1 |
mov a, #0AAH |
movx @r0, a |
clr a |
in a, p1 |
add a, #056H |
jnz fail |
;; extern write 055H to P1 |
mov a, #055H |
movx @r0, a |
clr a |
in a, p1 |
add a, #0ABH |
jnz fail |
|
;; reset extern P1 to 0FFH |
dec a |
movx @r0, a |
|
;; |
;; Start of real test |
;; |
|
;; Test ORL |
|
;; set internal P1 to 0AAH |
mov a, #0AAH |
outl p1, a |
in a, p1 |
add a, #056H |
jnz fail |
|
;; extern write 055H to P1 |
mov a, #055H |
movx @r0, a |
|
in a, p1 |
jnz fail |
|
;; set internal P1 to 0ABH, setting P1[0] to 1 |
orl P1, #001H |
in a, p1 |
dec a |
jnz fail |
|
;; reset extern P1 to 0FFH |
dec a |
movx @r0, a |
|
;; compare P1 vs. 0ABH |
in a, p1 |
cpl a |
add a, #0ABH |
cpl a |
jnz fail |
|
;; reset intern P1 to 0FFH |
dec a |
outl p1, a |
|
;; set internal P1 to 055H |
mov a, #055H |
outl p1, a |
clr a |
in a, p1 |
add a, #0ABH |
jnz fail |
|
;; external write 0AAH to P1 |
mov a, #0AAH |
movx @r0, a |
|
;; set internal P1 to 054H |
anl P1, #0FEH |
|
;; reset extern P1 to 0FFH |
mov a, #0FFH |
movx @r0, a |
|
;; compare P1 vs. 054H |
in a, p1 |
cpl a |
add a, #054H |
cpl a |
jnz fail |
|
|
pass: PASS |
|
fail: FAIL |
/p2_port_reg_conflict/no_dump_compare
0,0 → 1,2
Reason why this cell is exluded from dump compare: |
External ports not modelled in detail for i8039 emulator. |
/p2_port_reg_conflict/test.asm
0,0 → 1,119
;; ******************************************************************* |
;; $Id: test.asm,v 1.1 2004-05-17 13:47:32 arniml Exp $ |
;; |
;; Test P2 conflict for reading port or output register. |
;; ******************************************************************* |
|
INCLUDE "cpu.inc" |
INCLUDE "pass_fail.inc" |
|
ORG 0 |
|
;; Start of test |
|
;; access testbench peripherals |
mov r0, #0FFH |
mov a, #002H |
movx @r0, a |
|
;; check functionality of P2 testbench peripheral |
in a, p2 |
inc a |
jnz fail |
|
mov r0, #001H |
;; extern write 00H to P2 |
clr a |
movx @r0, a |
in a, p2 |
jnz fail |
;; extern write 0AAH to P2 |
mov a, #0AAH |
movx @r0, a |
clr a |
in a, p2 |
add a, #056H |
jnz fail |
;; extern write 055H to P2 |
mov a, #055H |
movx @r0, a |
clr a |
in a, p2 |
add a, #0ABH |
jnz fail |
|
;; reset extern P2 to 0FFH |
dec a |
movx @r0, a |
|
;; |
;; Start of real test |
;; |
|
;; Test ORL |
|
;; set internal P2 to 0AAH |
mov a, #0AAH |
outl p2, a |
in a, p2 |
add a, #056H |
jnz fail |
|
;; extern write 055H to P2 |
mov a, #055H |
movx @r0, a |
|
in a, p2 |
jnz fail |
|
;; set internal P2 to 0ABH, setting P2[0] to 1 |
orl P2, #001H |
in a, p2 |
dec a |
jnz fail |
|
;; reset extern P2 to 0FFH |
dec a |
movx @r0, a |
|
;; compare P2 vs. 0ABH |
in a, p2 |
cpl a |
add a, #0ABH |
cpl a |
jnz fail |
|
;; reset intern P2 to 0FFH |
dec a |
outl p2, a |
|
;; set internal P2 to 055H |
mov a, #055H |
outl p2, a |
clr a |
in a, p2 |
add a, #0ABH |
jnz fail |
|
;; external write 0AAH to P2 |
mov a, #0AAH |
movx @r0, a |
|
;; set internal P2 to 054H |
anl P2, #0FEH |
|
;; reset extern P2 to 0FFH |
mov a, #0FFH |
movx @r0, a |
|
;; compare P2 vs. 054H |
in a, p2 |
cpl a |
add a, #054H |
cpl a |
jnz fail |
|
|
pass: PASS |
|
fail: FAIL |