My typical implementation of a Scrum Master was to get an individual trained up so she would understand the responsibilities and boundaries of the role (I didn't want her to inadvertently turn into a project manager). Once she understood the role clearly she would become a key component of the development process.
I observed that some of the beneficial side effects of being the Scrum Master were the interactions with the business and product owners along with a more direct perspective of the companies quarterly objectives.
It occurred to me that the whole engineering team would benefit from having such exposure so I decided to set up the role to be a rotating responsibility.
Each sprint that the team undertakes is owned by a new Scrum Master. Accordingly, the engineer who undertakes the role has her velocity docked a few points to account for the additional responsibility.
Since putting this policy in place, the rotating role has proved to be as worthwhile as I had estimated. Engineers are happy to take on the leadership task while the team dynamic for Scrum has been strengthened.
I'm a big believer in getting the engineering team more strategically integrated with the company at large. There are additional tactics to more completely achieve this goal but I'll leave those ideas for a future post.