CommonEvaluationPlatform / CEP

The Common Evaluation Platform (CEP), based on UCB's Chipyard Framework, is an SoC design that contains only license-unencumbered, freely available components.
BSD 3-Clause "New" or "Revised" License
21 stars 6 forks source link

COSIM: Virtual Mode ISA Tests now failing after Chipyard bump to v1.7.0 #6

Open bchetwynd opened 1 year ago

bchetwynd commented 1 year ago

Seems like they have been failing for a while... as there seems to be a failure with CEP v4.0 as well (prior to chipyard bump)

So, for some reason they fail on Ubuntu w/Questasim, but not RHEL7 w/XCellium. Further investigation required.

bchetwynd commented 1 year ago

They currently work on XCellium, but not Questasim. (v4.5_development_bchetwynd branch)

bchetwynd commented 1 year ago

Current log excerpt from virtual mode failures (both XCellium and Modelsim):

INFO:       15 cep_tb.cpuId[2].driver Entering shIpc_EnableMode Loop simTime = 1
INFO:       15 cep_tb.cpuId[3].driver Entering shIpc_EnableMode Loop simTime = 1
INFO:       15 cep_tb.system_driver Entering shIpc_EnableMode Loop simTime = 1
       0 cep_tb.system_driver C_LOG: loadMemory: Loading file ./riscv_wrapper.img to SCRATCHPAD RAM with maxByteCnt of 655360B , fileOffset = 0B, destOffset = 0B
       0 cep_tb.system_driver C_LOG: loadMemory: flushing cache line
       0 cep_tb.system_driver C_LOG: loadMemory: Setting program loaded flag AND releasing all tiles from reset...
INFO:    31985 cep_tb.system_driver Program is now loaded
INFO:    31995 cep_tb.system_driver Releasing all tiles from reset...
INFO:    35025 cep_tb.cpuId[1].driver SingleCoreOnly = 1
INFO:    35025 cep_tb.cpuId[2].driver SingleCoreOnly = 1
INFO:    35025 cep_tb.cpuId[3].driver SingleCoreOnly = 1
INFO:    35025 cep_tb.cpuId[2].driver C2 Pass/Fail Detected!!! 1/0... Put it to sleep
INFO:    35025 cep_tb.cpuId[3].driver C3 Pass/Fail Detected!!! 1/0... Put it to sleep
       0 cep_tb.cpuId[0].driver C_LOG: access::RunClk mSlotId=0 mLocalId=0 numClk=1000
       0 cep_tb.cpuId[1].driver C_LOG: access::RunClk mSlotId=0 mLocalId=1 numClk=1000
       0 cep_tb.cpuId[2].driver C_LOG: access::RunClk mSlotId=0 mLocalId=2 numClk=1000
       0 cep_tb.cpuId[3].driver C_LOG: access::RunClk mSlotId=0 mLocalId=3 numClk=1000
INFO:    35065 cep_tb.cpuId[1].driver C1 Pass/Fail Detected!!! 1/0... Put it to sleep
       0 cep_tb.cpuId[0].driver C_LOG: OK: Program loading is completed
       0 cep_tb.cpuId[1].driver C_LOG: OK: Program loading is completed
       0 cep_tb.cpuId[2].driver C_LOG: OK: Program loading is completed
       0 cep_tb.cpuId[3].driver C_LOG: OK: Program loading is completed
       0 cep_tb.cpuId[0].driver C_LOG: Current Pass = 0x0 Fail = 0x0 maxTimeOut = 100
       0 cep_tb.cpuId[1].driver C_LOG: Current Pass = 0x1 Fail = 0x0 maxTimeOut = 100
       0 cep_tb.cpuId[2].driver C_LOG: Current Pass = 0x1 Fail = 0x0 maxTimeOut = 100
       0 cep_tb.cpuId[3].driver C_LOG: Current Pass = 0x1 Fail = 0x0 maxTimeOut = 100
       0 cep_tb.cpuId[0].driver C_LOG: access::RunClk mSlotId=0 mLocalId=0 numClk=1000
       0 cep_tb.cpuId[1].driver C_LOG: access::RunClk mSlotId=0 mLocalId=1 numClk=100
       0 cep_tb.cpuId[2].driver C_LOG: access::RunClk mSlotId=0 mLocalId=2 numClk=100
       0 cep_tb.cpuId[3].driver C_LOG: access::RunClk mSlotId=0 mLocalId=3 numClk=100
       0 cep_tb.cpuId[1].driver C_LOG: ======== TEST PASS ========== 
       0 cep_tb.cpuId[2].driver C_LOG: ======== TEST PASS ========== 
       0 cep_tb.cpuId[3].driver C_LOG: ======== TEST PASS ========== 
cep_tb.cpuId[1].driver InactiveStatus detected..Shutting down!!!
cep_tb.cpuId[2].driver InactiveStatus detected..Shutting down!!!
cep_tb.cpuId[3].driver InactiveStatus detected..Shutting down!!!
       0 cep_tb.cpuId[0].driver C_LOG: Current Pass = 0x0 Fail = 0x0 maxTimeOut = 99
       0 cep_tb.cpuId[0].driver C_LOG: access::RunClk mSlotId=0 mLocalId=0 numClk=1000
       0 cep_tb.cpuId[0].driver C_LOG: Current Pass = 0x0 Fail = 0x0 maxTimeOut = 98
       0 cep_tb.cpuId[0].driver C_LOG: access::RunClk mSlotId=0 mLocalId=0 numClk=1000
       0 cep_tb.cpuId[0].driver C_LOG: Current Pass = 0x0 Fail = 0x0 maxTimeOut = 97
       0 cep_tb.cpuId[0].driver C_LOG: access::RunClk mSlotId=0 mLocalId=0 numClk=1000
       0 cep_tb.cpuId[0].driver C_LOG: Current Pass = 0x0 Fail = 0x0 maxTimeOut = 96
       0 cep_tb.cpuId[0].driver C_LOG: access::RunClk mSlotId=0 mLocalId=0 numClk=1000
       0 cep_tb.cpuId[0].driver C_LOG: Current Pass = 0x0 Fail = 0x0 maxTimeOut = 95
       0 cep_tb.cpuId[0].driver C_LOG: access::RunClk mSlotId=0 mLocalId=0 numClk=1000
bchetwynd commented 6 months ago

Virtual mode tests need to be revisited based on reviewing legacy code when it was passing.