In a large deep frying pan, heat the oil over moderately low heat.
Add the onion and cook, stirring occasionally, until starting to soften, about 3 minutes. Stir in the ginger; cook, stirring, 2 minutes longer.
Add the tomatoes and salt and bring to a simmer. Reduce the heat to low and cook, covered, for 10 minutes.
Add the fillets and black pepper to the pan and cook, covered, until just done, 10 to 12 minutes longer for 1-inch thick fillets. Stir the cilantro into the sauce.
Serve the fish topped with the sauce.
Fish Alternatives: Other relatively firm, thick fillets or steaks that would be good include orange roughy, grouper, and halibut.
Add 1 chopped jalapeo pepper to the sauce along with the fresh ginger.
Wine Recommendation: Look for an acidic white without too much personality, so the wine won't get in the way of the tomato ginger sauce. Try a Portuguese vinhoverde or a refreshing French Ctes de Gascogne.