ATLANTA -- Andrelton Simmons and the Braves haven't said much about last year's NL wild-card loss to the Cardinals.

Beating the Cardinals in July won't make up for that playoff defeat. But Simmons said it's a start.

Simmons hit a two-run double in the eighth inning and the Braves, boosted by Julio Teheran's sharp outing, beat the Cardinals 2-0 Saturday in a matchup of NL division leaders.

The Braves have won the first two games of the first series between the teams this season. The Cardinals beat the Braves 6-3 at Turner Field in last season's wild-card game.

"They're a great team," said Simmons of the Cardinals. "They got us last year in a pretty big game. We owe them some. It's good to see this team beating them."

Teheran allowed two hits in seven innings, striking out six and walking one.

Simmons' bases-loaded, two-out double came on a 99 mph fastball from Trevor Rosenthal. With the count at 2-1, Simmons was looking for a fastball.

"I know he was behind in the count and I know he's comfortable with his fastball," Simmons said. "He throws pretty hard. I was ready for it. ... I was just looking for something over the plate and he threw it somewhere I could reach it."

Randy Choate (1-1) walked Freddie Freeman to open the eighth. Evan Gattis struck out and Brian McCann singled. Rosenthal relieved and struck out Dan Uggla before walking Chris Johnson to load the bases.

Luis Avilan (3-0) pitched a perfect eighth and Craig Kimbrel recorded three outs to earn his 30th save.

Cardinals starter Joe Kelly pitched 6 1/3 scoreless innings, allowing seven hits and walking three in only his fourth start of the season and first appearance since July 12.

"Very, very impressive," said Cardinals manager Mike Matheny. "It was maybe the best I've ever seen him throw. Everything. His aggressiveness, his slider, breaking ball, changeup, all of them were as good as I've seen.

"That was exactly what we were asking for, and then some."

Kelly may have earned himself another opportunity as the Cardinals' No. 5 starter.

"I like pitching, period," he said. "To be in the rotation would be awesome but I just take the ball when they tell me and take the opportunity when I get out there.

"I'm pitching right now in the moment. I feel like my stuff is there, in the zone."

Kelly matched Teheran through the sixth before finding trouble in the seventh.

With one out, Simmons singled and moved to third on pinch hitter Joey Terdoslavich's soft double to the left-center gap.

Kelly issued an intentional walk to Jason Heyward to load the bases. Right-hander Michael Maness replaced Kelly and got Justin Upton to ground into an inning-ending double play.

Teheran allowed a two-out double to Matt Holliday in the first and then walked Allen Craig. The right-hander permitted only one baserunner -- Jon Jay doubled in the fifth -- through the next six innings.

"I think that's the best game I've ever pitched," Teheran said. "The command I had today, I think that's the best I've had this year."

Holliday was activated off the 15-day disabled list before the game. He had been out since July 12 with a strained right hamstring.

Simmons hit eighth as Braves manager Fredi Gonzalez juggled his lineup. Heyward hit leadoff for only the second game this season. Upton, normally the No. 3 hitter, batted second for the first time in 2013.

Simmons had two hits. He ranks second on the team with 14 go-ahead RBIs, but said he was overdue to deliver the clutch hit.

"I know I've been struggling with runners in scoring position this year," Simmons said. "I've been trying, but it's nice to see results."

Game notes

With two hits and a walk, Johnson is hitting .332 to tie the Cardinals' Yadier Molina for the NL lead. Molina was 0 for 3. ... The Cardinals optioned OF-1B Brock Peterson to Triple-A Memphis to clear a roster spot for Holliday. ... Gonzalez said he is 95 percent certain RHP Brandon Beachy, returning from elbow ligament-replacement surgery in June 2012, will come off the DL to start Monday night's game against Colorado. ... The three-game series ends Sunday night when Atlanta RHP Kris Medlen faces St. Louis rookie RHP Shelby Miller.