Hi,
In this case, normally as you mentioned you will create 2 separate vlans, data vlan and the voice vlan. Cisco switches will have the command "switchport voice vlan xx" this command is apply to the phone interfaces and for the data vlan you use the switchport access vlan xx command.
This will ensure that voice traffic is not mixed with data. Also you need trunks to carry that over and virtual vlan interfaces (SVIs) in order to route traffic out for those networks.
As per QOS, below you have a link with the best practices and design:
Enterprise QoS Solution Reference Network Design Guide
http://www.cisco.com/c/en/us/td/docs/solutions/Enterprise/WAN_and_MAN/QoS_SRND/QoS-SRND-Book/QoSIntro.html
Hope this helps!
Leo