Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

DSKEB KS10 - Cache Diagnostic Failure #6

Closed
jfcl opened this issue May 29, 2016 · 2 comments
Closed

DSKEB KS10 - Cache Diagnostic Failure #6

jfcl opened this issue May 29, 2016 · 2 comments
Assignees
Labels

Comments

@jfcl
Copy link
Member

jfcl commented May 29, 2016

This documents cache diagnostic failures. The diagnostic should fail because all of main memory is as fast as the cache - and therefore the cache is not implemented. However the diagnostic crashes which should not occur.

SMMON CMD - DSKEB
DSKEB - KS10 CACHE DIAGNOSTIC
VERSION 0.1, SV=0.3, CPU#=4097, MCV=130, MCO=470, HO=0, KASW=000000 000000

TTY SWITCH CONTROL ? - 0,S OR Y <CR> - 0
SWITCHES = 000000 000000

PC=  032044
SWITCHES = 000000 000000
ERROR IN DSKEB - KS10 CACHE DIAGNOSTIC VERSION 0,1 - PHYSICAL EXEC CACHE CHECK
ACTUAL:   000000 001530
CACHE HITS WHEN MISSES EXPECTED

PC=  032122
SWITCHES = 000000 000000
ERROR IN DSKEB - KS10 CACHE DIAGNOSTIC VERSION 0,1 - USER/EXEC CACHEABLE/UNCACHEABLE TEST
ACTUAL:   000000 001524
EXEC UNCACHED PAGE GOT CACHE HITS

PC=  032135
SWITCHES = 000000 000000
ERROR IN DSKEB - KS10 CACHE DIAGNOSTIC VERSION 0,1 - USER/EXEC CACHEABLE/UNCACHEABLE TEST
ACTUAL:   000000 001540
USER UNCACHED PAGE GOT CACHE HITS

KS10> ha
KS10: Halted.
KS10: Halt Cause: Console Halt. (PC=000002)
  Halt Status Block Address is 000000
  PC  is 000000000002     HR  is 000000000000
  MAG is 000000000002     ONE is 000000000000
  AR  is 000000000000     ARX is 000000000000
  BR  is 000000000000     BRX is 000000000000
  EBR is 000000000000     UBR is 000000000000
  MSK is 000000000000     FLG is 000000000000
  PI  is 000000000000     X1  is 000000000000
  TO  is 000000000000     T1  is 000000000000
  VMA is 000000020004

Halted

The halt status block above is invalid. Note the Halt Status Block Address is 000002.

@jfcl jfcl changed the title DSKEBA0 KS10 - CACHE DIAGNOSTIC DSKEB KS10 - CACHE DIAGNOSTIC May 29, 2016
@jfcl jfcl changed the title DSKEB KS10 - CACHE DIAGNOSTIC DSKEB KS10 - Cache Diagnostic Failure May 29, 2016
@jfcl jfcl self-assigned this Jun 2, 2016
@jfcl jfcl added the bug label Feb 17, 2018
@jfcl
Copy link
Member Author

jfcl commented May 4, 2021

The current implementation does the following:

SMMON CMD - DSKEB
DSKEB - KS10 CACHE DIAGNOSTIC
VERSION 0.1, SV=0.3, CPU#=2020, MCV=130, MCO=470, HO=0, KASW=000000 000000

TTY SWITCH CONTROL ? - 0,S OR Y  - 0
SWITCHES = 000000 000000

PC=  032044
SWITCHES = 000000 000000
ERROR IN DSKEB - KS10 CACHE DIAGNOSTIC VERSION 0,1 - PHYSICAL EXEC CACHE CHECK
ACTUAL:   000000 001520
CACHE HITS WHEN MISSES EXPECTED

This is the expected results. The diagnostic measures the execution time of a simple loop with the cache enabled and with the cache disabled. The diagnostic expects the execution time of the un-cached loop to be longer than the cached loop.

As noted above, the KS10 FPGA uses single-cycle synchronous SRAM for main memory which operates as fast as a cache would - therefore the execution time is identical.

I could add a conditional compile which adds a wait-state to main memory when the cache was disable in order to provoke this diagnostic to pass.

@jfcl
Copy link
Member Author

jfcl commented Apr 18, 2022

Won't fix.

@jfcl jfcl closed this as completed Apr 18, 2022
@jfcl jfcl added wontfix and removed bug labels Apr 18, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

1 participant