Going back from a correlation matrix to the original matrix I have N sensors which are been sampled M times, so I have an N by M readout matrix. If I want to know the relation and dependencies of these sensors simplest thing is to do a Pearson's correlation which gives me an N by N correlation matrix. 
Now let's say if I have the correlation matrix but I want to explore tho possible readout space that can lead to such correlation matrix what can I do? 
So the question is: given an N by N correlation matrix how you can get to a matrix that would have such correlation matrix?
Any comment is appreciated. 
 A: What you want to do is called sampling from a multivariate distribution.  It's not hard to look up how to do this, although in your case if some of your variables are assumed normal and some Poisson you're going to have to calculate the joint PDF of your model yourself.  Rather than trying to explain the whole process here, I'll give you some things to read:
http://en.wikipedia.org/wiki/Multivariate_normal_distribution
EDIT: Had to remove some dead links that aren't archived.  Anyway, just google "sampling from a multivariate normal distribution" or something to that effect.
A: You could make your "10%" implementation faster by using gradient descent
Here's an example of doing it for covariance matrix because it's easier.
You have $k\times k$ covariance matrix C and you want to get $k \times n$ observation matrix $A$ that produces it.
The task is to find $A$ such that
$$A A' = n^2 C$$
You could start with a random guess for $A$ and try to minimize the sum of squared errors. Using Frobenius norm, we can write this objective as follows
$$J=\|A A'-n^2 C\|^2_F$$
Let $D$ be our matrix of errors, ie $D=A A'-n^2 C$.
Checking with the Matrix Cookbook I get the following for the gradient
$$\frac{\partial J}{\partial a_{iy}} \propto a_{iy} \sum_j D_{i,j}$$
In other words, your update to data matrix for sensor $i$, observation $y$ should be proportional to the sum of errors in $i$th row of covariance matrix multiplied by the value of $i,y$'th observation.
Gradient descent step would be to update all weights at once. It might be more robust to update just the worst rows, ie calculate sum of errors for every row, update entries corresponding to the worst rows, then recalculate errors.
A: May I tell you guys my silly solution to this problem? Only if you won't laugh at me! I thought I need to explore this space so I want to randomly sample it (the space of sensor readings). I know what the correlation matrix should look like and I know that the sensor readings are coming from a Gaussian distribution. So I generated a random N by M matrix and started tweaking the values in small steps. and check if each change moves the matriv toward the target or away and kept the changes toward the target. So I choose a random cell in this matrix and increase it by 10% and calculate the correlation matrix and compare it to the target correlation matrix the difference is smaller than what it was before the 10% increase I keep the change and move to next randomly selected cell and continue until I get close enough to the target correlation matrix.  This method, although it is silly, works well and I can get different samples of the sensor reading space.  What you guys think?! In practice I am working on rather large matrices like N = 8000, M = 1000  
