module ghrd_10as066n2_pr_region_controller_0_altera_pr_region_controller_171_lvntgla (
		input  wire        avl_csr_read,                   //        avl_csr.read
		input  wire        avl_csr_write,                  //               .write
		input  wire [1:0]  avl_csr_address,                //               .address
		input  wire [31:0] avl_csr_writedata,              //               .writedata
		output wire [31:0] avl_csr_readdata,               //               .readdata
		output wire        bridge_freeze0_freeze,          // bridge_freeze0.freeze
		input  wire        bridge_freeze0_illegal_request, //               .illegal_request
		output wire        bridge_freeze1_freeze,          // bridge_freeze1.freeze
		input  wire        bridge_freeze1_illegal_request, //               .illegal_request
		input  wire        clock_clk,                      //          clock.clk
		output wire        pr_handshake_start_req,         //   pr_handshake.start_req
		input  wire        pr_handshake_start_ack,         //               .start_ack
		output wire        pr_handshake_stop_req,          //               .stop_req
		input  wire        pr_handshake_stop_ack,          //               .stop_ack
		input  wire        reset_reset,                    //          reset.reset
		output wire        reset_source_reset              //   reset_source.reset
	);

	wire        freeze_control_freeze_if_freeze_in;                 // freeze_control:freeze -> conduit_merger:freeze_in
	wire  [1:0] conduit_merger_conduit_ctrl_if_illegal_request_out; // conduit_merger:illegal_request_out -> freeze_control:illegal_request
	wire  [1:0] freeze_control_conduit_control_illegal_req;         // freeze_control:illegal_req -> freeze_csr:illegal_req
	wire        freeze_csr_conduit_control_freeze_req;              // freeze_csr:freeze_req -> freeze_control:freeze_req
	wire        freeze_csr_conduit_control_unfreeze_req;            // freeze_csr:unfreeze_req -> freeze_control:unfreeze_req
	wire        freeze_control_conduit_control_unfreeze_status;     // freeze_control:unfreeze_status -> freeze_csr:unfreeze_status
	wire        freeze_csr_conduit_control_reset;                   // freeze_csr:reset_req -> freeze_control:reset_req
	wire        freeze_control_conduit_control_freeze_status;       // freeze_control:freeze_status -> freeze_csr:freeze_status

	altera_freeze_control #(
		.NUM_INTF_BRIDGE (2)
	) freeze_control (
		.clk             (clock_clk),                                          //   input,  width = 1,      clock_sink.clk
		.reset_n         (~reset_reset),                                       //   input,  width = 1,           reset.reset_n
		.start_req       (pr_handshake_start_req),                             //  output,  width = 1,    pr_handshake.start_req
		.start_ack       (pr_handshake_start_ack),                             //   input,  width = 1,                .start_ack
		.stop_req        (pr_handshake_stop_req),                              //  output,  width = 1,                .stop_req
		.stop_ack        (pr_handshake_stop_ack),                              //   input,  width = 1,                .stop_ack
		.freeze_status   (freeze_control_conduit_control_freeze_status),       //  output,  width = 1, conduit_control.freeze_status
		.freeze_req      (freeze_csr_conduit_control_freeze_req),              //   input,  width = 1,                .freeze_req
		.unfreeze_req    (freeze_csr_conduit_control_unfreeze_req),            //   input,  width = 1,                .unfreeze_req
		.unfreeze_status (freeze_control_conduit_control_unfreeze_status),     //  output,  width = 1,                .unfreeze_status
		.reset_req       (freeze_csr_conduit_control_reset),                   //   input,  width = 1,                .reset
		.illegal_req     (freeze_control_conduit_control_illegal_req),         //  output,  width = 2,                .illegal_req
		.freeze          (freeze_control_freeze_if_freeze_in),                 //  output,  width = 1,       freeze_if.freeze_in
		.illegal_request (conduit_merger_conduit_ctrl_if_illegal_request_out), //   input,  width = 2,                .illegal_request_out
		.region_reset    (reset_source_reset)                                  //  output,  width = 1,    reset_source.reset
	);

	ghrd_10as066n2_pr_region_controller_0_altera_conduit_merger_171_nva7cjy #(
		.NUM_INTF_BRIDGE (2)
	) conduit_merger (
		.freeze_in           (freeze_control_freeze_if_freeze_in),                 //   input,  width = 1,    conduit_ctrl_if.freeze_in
		.illegal_request_out (conduit_merger_conduit_ctrl_if_illegal_request_out), //  output,  width = 2,                   .illegal_request_out
		.freeze0             (bridge_freeze0_freeze),                              //  output,  width = 1, conduit_bridge_if0.freeze
		.illegal_request0    (bridge_freeze0_illegal_request),                     //   input,  width = 1,                   .illegal_request
		.freeze1             (bridge_freeze1_freeze),                              //  output,  width = 1, conduit_bridge_if1.freeze
		.illegal_request1    (bridge_freeze1_illegal_request),                     //   input,  width = 1,                   .illegal_request
		.pr_freeze0          ()                                                    // (terminated),                                
	);

	altera_freeze_csr #(
		.NUM_INTF_BRIDGE (2)
	) freeze_csr (
		.clk             (clock_clk),                                      //   input,   width = 1,      clock_sink.clk
		.reset_n         (~reset_reset),                                   //   input,   width = 1,           reset.reset_n
		.avl_csr_read    (avl_csr_read),                                   //   input,   width = 1,         avl_csr.read
		.avl_csr_write   (avl_csr_write),                                  //   input,   width = 1,                .write
		.avl_csr_addr    (avl_csr_address),                                //   input,   width = 2,                .address
		.avl_csr_wrdata  (avl_csr_writedata),                              //   input,  width = 32,                .writedata
		.avl_csr_rddata  (avl_csr_readdata),                               //  output,  width = 32,                .readdata
		.freeze_status   (freeze_control_conduit_control_freeze_status),   //   input,   width = 1, conduit_control.freeze_status
		.freeze_req      (freeze_csr_conduit_control_freeze_req),          //  output,   width = 1,                .freeze_req
		.unfreeze_req    (freeze_csr_conduit_control_unfreeze_req),        //  output,   width = 1,                .unfreeze_req
		.reset_req       (freeze_csr_conduit_control_reset),               //  output,   width = 1,                .reset
		.unfreeze_status (freeze_control_conduit_control_unfreeze_status), //   input,   width = 1,                .unfreeze_status
		.illegal_req     (freeze_control_conduit_control_illegal_req),     //   input,   width = 2,                .illegal_req
		.irq             ()                                                // (terminated),                              
	);

endmodule