Use the built-in function date_trunc(text, timestamp), for example:
select date_trunc('minute', now())
Edit: This truncates to the most recent minute. To get a rounded result, add 30 seconds to the timestamp first, for example:
select date_trunc('minute', now() + interval '30 second')
This returns the nearest minute.
See Postgres Date/Time Functions and Operators for more info