Fill the bottom half of a double boiler with enough water so that it will touch the top pot when it is inserted. Bring the water to a boil over high heat, reduce the heat to low, and keep the water at a simmer in the bottom pan.
In a large separate saucepan, bring 4 cups of water to a boil. Place the pan with boiling water in the top pan of the double boiler. Stir in the salt. Add the polenta in a thin, steady stream, stirring constantly (if you add the polenta too quickly, the polenta becomes lumpy). Set this pan on top of the bottom half of the double boiler.
Bring the polenta mixture back to a boil. Cover the top pan very tightly with a lid or aluminum foil, reduce heat to medium-low and let simmer until the polenta is soft and tender. Every 20 minutes or so, remove the lid or foil, and stir the polenta using a long-handled wooden spoon (this is to keep the mixture loose and free of lumps). Continue this process, adding additional boiling water as necessary, until the polenta tender and pulls away, approximately 1 1/2 hours. or until the texture is to your liking.
NOTE: To test if the polenta is done, spoon a little polenta onto a plate. Set aside to cool slightly. Rub between your fingers - if the grains feel soft, the polenta is ready. If the polenta becomes too thick, simply add a bit more water. The consistency should be similar to sour cream.
During the last 10 minutes of cooking, add the butter, cream, grated Parmigiano-Regiano cheese, and pepper. If desired adjust the salt to taste.
You can keep the polenta warm in the double boiler over low heat for up to 2 hours. You may need to stir in additional boiling water to achieve the soft texture you desire. Just before serving, stir vigorously.
Serve either on a large platter or bowl, in individual dishes, or in an attractive mound on your serving plate. If desired, sprinkle with additional grate Parmigiano-Reggiano cheese. Serve immediately.
Makes 6 to 8 serving.