isr.v
上传用户:tzxuweilin
上传日期:2022-08-10
资源大小:747k
文件大小:1k
源码类别:

VHDL/FPGA/Verilog

开发平台:

VHDL

  1. module isr(rd, set, clr, data, busdata, en);
  2. input rd;
  3. input[7:0] set;
  4. input[7:0] clr;
  5. output[7:0] data;
  6. output[7:0] busdata;
  7. output en;
  8. wire[7:0] isrreg;
  9. assign data = isrreg;
  10. assign busdata = isrreg;
  11. assign en = rd;
  12. assign isrreg[0] = clr[0] ? 0 : (set[0] ? 1 : isrreg[0]);
  13. assign isrreg[1] = clr[1] ? 0 : (set[1] ? 1 : isrreg[1]);
  14. assign isrreg[2] = clr[2] ? 0 : (set[2] ? 1 : isrreg[2]);
  15. assign isrreg[3] = clr[3] ? 0 : (set[3] ? 1 : isrreg[3]);
  16. assign isrreg[4] = clr[4] ? 0 : (set[4] ? 1 : isrreg[4]);
  17. assign isrreg[5] = clr[5] ? 0 : (set[5] ? 1 : isrreg[5]);
  18. assign isrreg[6] = clr[6] ? 0 : (set[6] ? 1 : isrreg[6]);
  19. assign isrreg[7] = clr[7] ? 0 : (set[7] ? 1 : isrreg[7]);
  20. // FOR /L %i in (0, 1, 7) do (ECHO  "assign isrreg[%i] = clr[%i] ? 0 : (set[%i] ? 1 : isrreg[%i]);" >>a.txt)
  21. endmodule