fixed reset fan-out

This commit is contained in:
Blaise Tine
2021-01-03 20:06:36 -08:00
parent 4815ab099c
commit 4bc3b537bd
9 changed files with 1017 additions and 57 deletions

View File

@@ -8,7 +8,7 @@
#define CCI_RQ_SIZE 16
#define CCI_WQ_SIZE 16
#define RESET_DELAY 1
#define RESET_DELAY 2
#define ENABLE_DRAM_STALLS
#define DRAM_LATENCY 24
@@ -38,8 +38,10 @@ opae_sim::opae_sim() {
trace_->open("trace.vcd");
#endif
// reset the device
this->reset();
// launch execution thread
stop_ = false;
future_ = std::async(std::launch::async, [&]{
while (!stop_) {
@@ -140,7 +142,15 @@ void opae_sim::reset() {
vortex_afu_->reset = 0;
reset_time_ = timestamp;
for (int i = 0; i < RESET_DELAY; ++i) {
vortex_afu_->clk = 0;
this->eval();
vortex_afu_->clk = 1;
this->eval();
}
// Turn on assertion after reset
Verilated::assertOn(true);
}
void opae_sim::step() {
@@ -154,11 +164,6 @@ void opae_sim::step() {
vortex_afu_->clk = 1;
this->eval();
if ((timestamp - reset_time_) == (RESET_DELAY*2)) {
// Turn on assertion after reset
Verilated::assertOn(true);
}
#ifndef NDEBUG
fflush(stdout);
#endif