pe1.v
Upload User: abszbd2002
Upload Date: 2020-10-12
Package Size: 33407k
Code Size: 1k
Development Platform:

VHDL

  1. module pe1(new_ina,new_inb,rb_in,pin,cbin,clk,sela,selb,
  2.           new_outa,new_outb,rb_out,pout,cbout,en_cb,en_new);
  3. input [7:0] new_ina,new_inb,rb_in,pin,cbin;
  4. input clk;
  5. input sela;
  6. input [1:0] selb;
  7. input en_cb,en_new;
  8. output [7:0] new_outa,new_outb,rb_out,pout,cbout;
  9. //output [7:0] sad;
  10. reg [7:0] sdba,sdbb,pr,rbr,cbr;
  11. assign new_outa=sdba;
  12. assign new_outb=sdbb;
  13. assign rb_out=rbr;
  14. assign pout=pr;
  15. assign cbout=cbr;
  16. always @ (posedge clk)
  17. if(en_new)
  18. begin
  19. sdba<=new_ina;
  20. sdbb<=new_inb;
  21. pr<=pin;
  22. end
  23. always @ (posedge clk)
  24. case(selb)
  25. 2'b01: rbr<=rb_in;
  26. 2'b10: rbr<=sdba;
  27. 2'b11: rbr<=sdbb;
  28. endcase
  29. always @ (posedge clk)
  30. if (en_cb)
  31. begin
  32. if(sela)
  33. cbr<=cbin;
  34. else cbr<=pr;
  35. end
  36. endmodule