My understanding is that when a dashboard is added to an object like a portfolio or project, its location layers an inherent filter to pull only data related to that object. So you could have one dashboard with no filter on a portfolio, but when you attach it to a specific portfolio, it should only pull from that portfolio. It sounds like you have your dashboard situated that way. Do you find that the attached dashboard is pulling in data from outside the portfolio?
Otherwise and for dashboards not attached to a specific object, I would look into using the report prompt function.