Line 197... |
Line 197... |
reg dma_req;
|
reg dma_req;
|
wire enable;
|
wire enable;
|
|
|
// Write and read enable signals
|
// Write and read enable signals
|
assign write_en = PSEL & PENABLE & PWRITE;
|
assign write_en = PSEL & PENABLE & PWRITE;
|
assign read_en = (PSEL & ~PWRITE & (ccf_set | ccf))?1'b1:
|
assign read_en = (PSEL & ~PWRITE)?1'b1:1'b0;
|
((PSEL & ~PWRITE)&(PADDR >= AES_KEYR0 & PADDR <= AES_IVR3 ))?1'b1:1'b0;
|
//((PSEL & ~PWRITE)&(PADDR >= AES_KEYR0 & PADDR <= AES_IVR3))?1'b1:1'b0;
|
|
|
// Configuration Register Logic
|
// Configuration Register Logic
|
assign dma_out_en = aes_cr[10];
|
assign dma_out_en = aes_cr[10];
|
assign dma_in_en = aes_cr[9];
|
assign dma_in_en = aes_cr[9];
|
assign err_ie = aes_cr[8];
|
assign err_ie = aes_cr[8];
|
Line 271... |
Line 271... |
|
|
// Computation Complete Flag
|
// Computation Complete Flag
|
if(ccf_set)
|
if(ccf_set)
|
ccf <= 1'b1;
|
ccf <= 1'b1;
|
else
|
else
|
if(ccfc && aes_cr_wr_en)// && access_permission)
|
if(ccfc && aes_cr_wr_en && access_permission)
|
ccf <= 1'b0;
|
ccf <= 1'b0;
|
end
|
end
|
end
|
end
|
// Interruption on erros Signals
|
// Interruption on erros Signals
|
assign int_ccf = ccf_ie & ccf_set;
|
assign int_ccf = ccf_ie & ccf_set;
|
Line 427... |
Line 427... |
bus_out_mux = 32'd0;
|
bus_out_mux = 32'd0;
|
case(PADDR)
|
case(PADDR)
|
AES_CR:
|
AES_CR:
|
bus_out_mux = {{19{1'b0}}, aes_cr[10:7], 2'b00, aes_cr[6:0]};
|
bus_out_mux = {{19{1'b0}}, aes_cr[10:7], 2'b00, aes_cr[6:0]};
|
AES_SR:
|
AES_SR:
|
bus_out_mux = {{29{1'b0}}, wr_err, rd_err, (ccf && ~PENABLE)?1'b1:((ccf_set && PENABLE))?1'b0:(ccfc && aes_cr_wr_en)?1'b0:1'b1};
|
bus_out_mux = {{29{1'b0}}, wr_err, rd_err, (ccf_set && ~PENABLE)? 1'b1:(ccfc && aes_cr_wr_en)?1'b0:ccf};
|
AES_DINR, AES_DOUTR:
|
AES_DINR, AES_DOUTR:
|
|
begin
|
|
if(~PWRITE && PADDR == AES_DOUTR && (ccf_set || ccf ))
|
bus_out_mux = col_bus;
|
bus_out_mux = col_bus;
|
|
end
|
AES_KEYR0, AES_KEYR1, AES_KEYR2, AES_KEYR3:
|
AES_KEYR0, AES_KEYR1, AES_KEYR2, AES_KEYR3:
|
if(!enable)
|
if(!enable)
|
bus_out_mux = key_bus;
|
bus_out_mux = key_bus;
|
AES_IVR0, AES_IVR1, AES_IVR2, AES_IVR3:
|
AES_IVR0, AES_IVR1, AES_IVR2, AES_IVR3:
|
if(!enable)
|
if(!enable)
|