Preheat oven to 180 degrees. Line and grease a 13 x 9 inch pan well and set aside.
In a mixing bowl, beat the butter and sugar till soft and fluffy. Add eggs one at a time and beat to incorporate.
In another bowl, sift the dry ingredients - from flour to salt.
Add half the sifted ingredients along with half the sour cream into the butter mixture and beat till combined. Add the rest and vanilla and just beat. Do not overmix.
Pour into the prepared pan and tap lightly to flatten.
In a small bowl, mix all ingredients under "for topping". Spread evenly on top of the cake and press down slightly.
Bake for 30 to 35 minutes till skewer inserted comes out clean.
Cool in pan. Pull out the cake onto a rack and cool completely, before slicing and serving.