1Rinse the beans well, place in a large bowl, and cover with cold water. Cover the bowl with plastic wrap and soak them overnight (at least 8 hours).
2Bring 6 cups of water to a boil, add the beans, stir well, and cook for about 1 hour, or until the beans are soft. When the beans are soft, remove them from the water and puree about 3/4 of them, and then put them back into the pot with the water. Leaving a few of the beans intact will help the look and the texture of the soup.
3In a large pan sauté the garlic and the rosemary (pancetta optional) in about 3 tablespoons of olive oil, until fragrant. Season the mixture with salt and pepper and hand crush the tomatoes into the sauté pan. Bring to a simmer so the flavors marry together.
4Stir the tomato mixture into the beans and bring to a simmer, and cook, while stirring on occasion, for about 25 minutes. Give the tomatoes a chance to break up, get into the sauce, and then be patient while the soup starts thickening.
5Meanwhile, in a pot of salted water, cook the pasta, and rinse it with a sprinkle of cold tap water, right after you drain it. Put it into a large bowl, add some oil and stir well; this will help the pasta stop cooking and stay separated, ready whenever you are, to be added to the soup.
6When the beans are ready serve them in individual bowls (with or without adding the meat, depending on your taste or your guests), add some pasta, sprinkle with pepper and some extra virgin olive oil and parmesan.