You can define a new environment.
\newcounter{defcounter}
\setcounter{defcounter}{0}
.
.
.
\newenvironment{myequation}{%
\addtocounter{equation}{-1}
\refstepcounter{defcounter}
\renewcommand\theequation{D\thedefcounter}
\begin{equation}}
{\end{equation}}
And use it like
\begin{myequation}\label{myeq:one}
a = b
\end{myequation}
You can use it any where and you get D1, D2 etc as the equation number.
Full code:
\documentclass{article}
\newcounter{defcounter}
\setcounter{defcounter}{0}
\usepackage{amsthm}
\newtheorem{defn}{Definition}
\newenvironment{myequation}{%
\addtocounter{equation}{-1}
\refstepcounter{defcounter}
\renewcommand\theequation{D\thedefcounter}
\begin{equation}}
{\end{equation}}
%
\begin{document}
Bbla bla
\begin{equation}
x = y
\end{equation}
\begin{defn}
bla bla
\begin{myequation}\label{myeq:one}
a = b
\end{myequation}
\begin{myequation}
a = b
\end{myequation}
\end{defn}
bla bla
\begin{equation}\label{eq:one}
x = yz
\end{equation}
\begin{myequation}
a = b
\end{myequation}
From equation~\ref{myeq:one} and~\ref{eq:one}...
\end{document}
