1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 |
`timescale 1 ns/ 1 ps module pruebas; logic [3:0] a ,b,c; logic clk; logic [3:0] cola [$]; logic [3:0] cola_limited [$:3]; int tamanyo; int tamanyo_limited; initial begin @(posedge clk) a=1; $display("empezamos a escribir elementos por la derecha en ambas colas"); cola_limited.push_back(a); cola.push_back(a); tamanyo_limited=cola_limited.size(); tamanyo=cola.size(); $display("cola1=",cola); $display("cola2=",cola_limited); @(posedge clk) a=2; cola_limited.push_back(a); cola.push_back(a); tamanyo_limited=cola_limited.size(); tamanyo=cola.size(); $display("cola1=",cola); $display("cola2=",cola_limited); @(posedge clk) a=3; $display("empezamos a escribir elementos por la izquierda en ambas colas"); cola_limited.push_front(a); cola.push_front(a); tamanyo_limited=cola_limited.size(); tamanyo=cola.size(); $display("cola1=",cola); $display("cola2=",cola_limited); @(posedge clk) a=4; cola_limited.push_front(a); cola.push_front(a); tamanyo_limited=cola_limited.size(); tamanyo=cola.size(); $display("cola1=",cola); $display("cola2=",cola_limited); @(posedge clk) a=5; cola_limited.push_back(a); cola.push_back(a); tamanyo_limited=cola_limited.size(); tamanyo=cola.size(); $display("cola1=",cola); $display("cola2=",cola_limited); @(posedge clk) ; $display("empezamos a leer elementos de cola1 por la izquierda"); $display("empezamos a leer elementos de cola2 por la derecha"); b=cola_limited.pop_back(); c=cola.pop_front(); tamanyo_limited=cola_limited.size(); tamanyo=cola.size(); $display("cola1=",cola); $display("cola2=",cola_limited); @(posedge clk) ; b=cola_limited.pop_back(); c=cola.pop_front(); tamanyo_limited=cola_limited.size(); tamanyo=cola.size(); $display("cola1=",cola); $display("cola2=",cola_limited); end initial begin clk=0; forever #50 clk=~clk; end endmodule |