Preheat oven to 350 degrees F. Spray a 9x9 baking dish with non-stick cooking spray; set aside.
Stir sugar, melted butter and vanilla together in large bowl.
Add eggs and mix until incorporated.
In a medium bowl combine flour, cocoa, baking powder and salt.
Slowly add to egg mixture. Add nuts if desired.
Pour into prepared baking dish.
Bake for 20-25 minutes or until toothpick inserted comes out clean.
Cool completely before frosting.
While brownies are cooling, add all the frosting ingredients to a bowl and using a handheld mixer, mix until creamy.
Spread on top of cooled brownies, let set for 30 minutes or until frosting has harden.
Cut into squares, serve & enjoy!