There are separate blobs for data, separate for gradients and separate for weight matrices. If you look into
header of the base layer class, you'll find the following:
vector<shared_ptr<Blob<Dtype> > > blobs_;which holds weights for each layer. Data/gradient blobs are stored separately (they are not "parts" of any layer).
Exact way of accessing this depends on the interface you're using (C++, Python or MATLAB).