Verilog: como instanciar um módulo

Se eu tiver um módulo Verilog 'top' e um módulo verilog 'subcomponent' como instanciar o subcomponente no topo?

topo:

module top(
   input        clk,
   input        rst_n,
   input        enable,
   input  [9:0] data_rx_1,
   input  [9:0] data_rx_2,
   output [9:0] data_tx_2
);

subcomponente:

module subcomponent(
   input        clk,
   input        rst_n,
   input  [9:0] data_rx,
   output [9:0] data_tx
);

Nota
Isto foi escrito como uma questão genérica que continua surgindo de vez em quando, está seguindo oauto-resposta formato. Respostas adicionais e atualizações são incentivadas.

questionAnswers(2)

yourAnswerToTheQuestion