The altera_pr_wrapper_mux_out
module allows you to multiplex the outputs of all PR personas to the outputs of the PR
region wrapper.
Instantiate one multiplexer per output port. Specify the active
persona using the sel port of the multiplexer. The
pr_activate port allows you to drive the
multiplexer output to “x”, to emulate the unknown value of PR region outputs during
a PR operation. Parameterize the component to specify the number of persona inputs,
the multiplexer width, and the MUX output value when pr_activate asserts.
module altera_pr_wrapper_mux_out #(
parameter NUM_PERSONA = 1,
parameter WIDTH = 1,
parameter [0:0] DISABLED_OUTPUT_VAL = 1'bx
) (
input int sel,
input wire [WIDTH-1 : 0] mux_in [NUM_PERSONA-1:0],
output reg [WIDTH-1:0] mux_out,
input wire pr_activate
);
always_comb begin
if ((sel < NUM_PERSONA) && (!pr_activate))
mux_out = mux_in[sel];
else
mux_out = {WIDTH{DISABLED_OUTPUT_VAL}};
end
endmodule : altera_pr_wrapper_mux_out
The
<QUARTUS_INSTALL_DIR>
/eda/sim_lib/altera_lnsim.sv file defines the altera_pr_wrapper_mux_out component.