電源起動時の動作が不安定なのはROMのアクセスタイミングが合ってない可能性があります。現状CPUのアクセスタイミングを取る/RdCEnと/AckはCPLDで常時Lでアサート状態になってます。/RdCEnは信号説明によるとリードトランザクションの完了を示すものとされていて

詳細をタイミングチャートで見ると/RdCEnをSysclkの立上がりでサンプリングしてアサート状態であればその周期の立下りでリード完了、/RDをネゲートするようです

最初から/RdCEnがLだとトランザクション開始1周期後、sysclk=20MHzなら50ns後にいきなりROMを読んでしまう訳でROMのアクセススピードに間に合ってません。ROMのマーキングがHN27C4096ACC-10なのでおそらく100ns。
そこで/RdCEnをちゃんと作ることにします。ROMへの読出し信号RDEN&ROMCSをD-FF2段で遅延させ/RdCEnとして遅れた分だけStallサイクルが挿入されるはず

修正したロジックの波形を見てみました。GNDの取回しでリンギングが酷いのと/RdCEnの前縁にカーソルを当てるべきでしたが1.5sysclk、75ns遅延してるのが判ります
ch1(黄):SYSCLK(20MHz)、ch2(水色):/(RDEN&ROMCS)、ch3(紫):/RdCEn



















