\begin{tikzpicture} \newcommand{\scale}{1} \tikzstyle{BlockMain} =[draw=black, thick] \tikzstyle{Block} =[draw=black, thick, loosely dashed] \tikzstyle{Label} =[scale=1/\scale,font=\small] \newcommand{\MainBlockSize}{4} \newcommand{\NeighbourBlockSize}{.45} \draw[BlockMain] (0,0) rectangle ++(\MainBlockSize,\MainBlockSize); % \node[Label,text width=\MainBlockSize+25,text centered] at (\MainBlockSize/2,\MainBlockSize/2) {Current PU}; \draw[Block] (0,0) rectangle ++(-2*\NeighbourBlockSize,-2*\NeighbourBlockSize); \node[Label] at (-\NeighbourBlockSize,-\NeighbourBlockSize) {$A_0$}; \draw[Block] (0,0) rectangle ++(-2*\NeighbourBlockSize,2*\NeighbourBlockSize); \node[Label] at (-\NeighbourBlockSize,\NeighbourBlockSize) {$A_1$}; \draw[Block] (\MainBlockSize,\MainBlockSize) rectangle ++(2*\NeighbourBlockSize,2*\NeighbourBlockSize); \node[Label] at (\MainBlockSize + \NeighbourBlockSize,\MainBlockSize + \NeighbourBlockSize) {$B_0$}; \draw[Block] (\MainBlockSize,\MainBlockSize) rectangle ++(-2*\NeighbourBlockSize,2*\NeighbourBlockSize); \node[Label] at (\MainBlockSize-\NeighbourBlockSize,\MainBlockSize + \NeighbourBlockSize) {$B_1$}; \draw[Block] (0,\MainBlockSize) rectangle ++(-2*\NeighbourBlockSize,2*\NeighbourBlockSize); \node[Label] at (-\NeighbourBlockSize,\MainBlockSize + \NeighbourBlockSize) {$B_2$}; \draw[Block] (\MainBlockSize,0) rectangle ++(2*\NeighbourBlockSize,-2*\NeighbourBlockSize); \node[Label] at (\MainBlockSize + \NeighbourBlockSize,-\NeighbourBlockSize) {$T_{0}$}; \draw[Block] (\MainBlockSize/2,\MainBlockSize/2) rectangle ++(2*\NeighbourBlockSize,-2*\NeighbourBlockSize); \node[Label] at (\MainBlockSize/2 + \NeighbourBlockSize,\MainBlockSize/2 -\NeighbourBlockSize) {$T_{1}$}; \end{tikzpicture}