I've downloaded your file and the problem appears to be twofold.
Firstly, there is a very large difference in mesh detail between the 'matress' and the 'quilt' meshes - due to the 'subdivision surface' modifier on the matress before the 'collision' modifier. This seems to be causing a lot of 'noise' in the interaction between the surfaces. The Cloth simulation is quite dependent on the scale of the subdivisions of both the cloth and the collision surface. The matress contains a large number of vertices around the edges and the subdivision surface modifier (set to 3) is exacerbating the problem.
The other issue (and possibly the most significant one) appears to be that the meshes are starting off intersecting. This means that the cloth solver is struggling to determine how to properly repel the cloth - and it therefore moves erratically until it can find a stable situation (which it never can since due to the intersection).
To resolve this I firstly moved the Collision on the matress object to be able the Subdivision Surface modifier in the modifier stack and moved the 'quilt' mesh above the surface so that it could fall down onto the matress at the start of the animation (you can suppress that part from your final animation) and found its own point of rest.
There is a further issue with the geometry of the folded over top edge of the duvet - some of the faces intersect with other faces in the mesh. This results in a similar problem with the self-collision - where faces are intersecting with faces and the cloth simulation is unable to determine how to move them apart so they continue to self-intersect and repel each other. You need to review the geometry and move apart the intersecting parts so it is a consistent cloth at the start.
Once the collision and intersection is resolved the cloth simulation should have more of a chance of settling down to a stable simulation.