Q:

TIKZ - changing one block into parallel multiple blocks

I have the following code:
\documentclass[crop,tikz]{standalone}
\usepackage{tikz}
\usepackage{textcomp}
\usetikzlibrary{shapes,arrows}
\usetikzlibrary{positioning}

\usetikzlibrary{arrows,
    chains,
    decorations.markings,
    shadows, shapes.arrows,shapes}

\begin{document}

\begin{tikzpicture}
\begin{scope}[start chain = going below,
  every node/.append style={on chain,fill opacity=0.8,draw,
  join},every join/.style={thick,-latex},
  cs/.style={minimum width=4.5cm,copy shadow={shadow scale=1, shadow xshift=0.5ex, shadow yshift=-0.5ex}}
  ]

 \node[fill=white] (N1) {\begin{tabular}{p{1cm}cp{1cm}}
    IOH\\
    & \enspace\tiny $K\times K$\quad\quad \quad & 
    \end{tabular}};

 \node[fill=orange] (N2) {\begin{tabular}{p{4cm}cp{1cm}}
    COI\\
    \qquad\enspace\tiny\quad\quad\quad\quad $K\times K$ 
      \end{tabular}};

 \node[fill=white] (N3) {\begin{tabular}{p{4cm}cp{4cm}}
    \qquad
    \end{tabular}};

 \node[fill=white] (N4) {\begin{tabular}{p{1cm}cp{1cm}}
   GOH &\\
   & \tiny $K\times K$ \enspace\enspace& 
  \end{tabular}};
\end{scope}  
 \path (N1) -- (N2) coordinate[pos=0.5] (aux);
 \path (N2) -- (N3) node[pos=0.5,right,font=\bfseries\itshape]{};
 \path (N3) -- (N4) node[pos=0.5,right,font=\bfseries\itshape]{};
\end{tikzpicture}
\end{document}

which produces the following figure:

Now I want to change this code in order to get the new figure:

Note that above the character 'N' appears an underbrace.

A:

\documentclass[tikz, margin=3mm]{standalone}
\usetikzlibrary{arrows.meta,
                chains,
                decorations.pathreplacing,
                calligraphy,% has to be after decorations.pathreplacings
                }
\usepackage{textcomp}
\usepackage{array}

\begin{document}

\begin{tikzpicture}[
    node distance = 5mm and 7mm,
 start chain = going below,
  box/.style = {draw, fill=#1, minimum size=2em},
box/.default = white,
every edge/.style = {draw, -Latex},
   BC/.style = {decorate,
                decoration={calligraphic brace, amplitude=5pt,
                raise=1mm},
                very thick, pen colour=#1
                }
                    ]
    \begin{scope}[every node/.append style={on chain}]
\node (N1) [box]
            {\begin{tabular}{p{12mm} >{\tiny}c p{12mm}}
                 IOH    &               &   \\
                        & $K\times K$   &
            \end{tabular}};
\node (N2) [box=orange]
            {\begin{tabular}{p{12mm} >{\tiny}c p{12mm}}
                 COI    &               &   \\
                        & $K\times K$   &
            \end{tabular}};
\node (N3) [box, node font=\bfseries]  {A};
    \end{scope}
\node (N4) [box,below=11mm of N3]
            {\begin{tabular}{p{12mm} >{\tiny}c p{12mm}}
                 GOH    &               &   \\
                        & $K\times K$   &
            \end{tabular}};
\node (N3L) [box, node font=\bfseries, left=of N3] {A};
\node (N3R) [box, node font=\bfseries,right=of N3] {A};
%
\path   (N1) edge (N2)
        (N2) edge (N3)
        (N2) edge (N3L.north)
        (N2) edge (N3R.north);
\draw[BC]   (N3R.south east) -- node (aux) [below=2mm] {$N$} (N3L.south west);
\path[shorten >=1pt]    (aux -| N3L) edge (N4)
                        (aux)        edge (N4)
                        (aux -| N3R) edge (N4);
\draw[ultra thick, shorten <=1mm, shorten >=1mm, dotted]
        (N3L) edge[-]  (N3)
        (N3R) edge[-]  (N3);
\end{tikzpicture}
\end{document}

Note: from your MWE I remove all not used TikZ libraries and defined style and add arrows.meta (for arrows head), and decorations.pathreplacing and calligraphy for brace under nodes with text "A".

A:

This is a little variation on Zarko's excellent code. 
Node's contents are defined as labels instead of tabulars. This way, node's size must be declared.
Positions are defined with positioning library and no chains are used.
Nodes in third row are declared with a matrix node.
All edges are drawn using Zarko's code adapted to new names for third row nodes. 
\documentclass[tikz, margin=3mm]{standalone}
\usetikzlibrary{arrows.meta,
                decorations.pathreplacing,
                calligraphy,% had to be after lib. decorations.pathreplacings
                matrix,
                positioning
                }
\usepackage{textcomp}

\begin{document}

\begin{tikzpicture}[
    node distance = 5mm,
    box/.style = {draw, fill=#1, minimum height=1cm, minimum width=4.5cm},
    box/.default = white,
    every edge/.style = {draw, -Latex},
   BC/.style = {decorate,
                decoration={calligraphic brace, amplitude=5pt,
                raise=1mm},
                very thick, pen colour=#1
                }
                    ]
 \node (N1) [box, label={[anchor=north west]north west:IOH},
                label={[anchor=south, font=\tiny]south:$K\times K$}]
            {};                   
 \node (N2) [box=orange, label={[anchor=north west]north west:COI},
                label={[anchor=south, font=\tiny]south:$K\times K$},
                below=of N1]
            {};
 \matrix (N3) [matrix of nodes, inner sep=0pt, nodes={minimum size=1cm, draw, anchor=center, node font=\bfseries, node contents=A}, nodes in empty cells, column sep=.5cm,
        below=of N2]{&&\\};
  \node (N4) [box, label={[anchor=north west]north west:GOH},
                label={[anchor=south, font=\tiny]south:$K\times K$},
                below=1cm of N3]
            {};
\path   (N1) edge (N2)
        (N2) edge (N3-1-1.north)
        (N2) edge (N3-1-2)
        (N2) edge (N3-1-3.north);
\draw[BC]   (N3.south east) -- node (aux) [below=2mm] {$N$} (N3.south west);
\path[shorten >=1pt]    (aux -| N3-1-1) edge (N4)
                        (aux)        edge (N4)
                        (aux -| N3-1-3) edge (N4);
\draw[ultra thick, shorten <=1mm, shorten >=1mm, dotted]
        (N3-1-1) edge[-]  (N3-1-2)
        (N3-1-2) edge[-]  (N3-1-3);
\end{tikzpicture}
\end{document}

