JUPITER, Fla. -- Chris Johnson broke an eighth-inning tie with an RBI double and helped spark a two-run frame that lifted the Marlins to a 5-2 victory over the Cardinals at Roger Dean Stadium on Sunday.
Both runs were scored off Cardinals reliever Kevin Siegrist, who entered the appearance having not allowed a run in four spring innings. He issued a leadoff walk to Justin Maxwell, who scored from first base on Johnson's extra-base hit. A sacrifice fly by J.T. Realmuto padded Miami's lead. Miami tacked on another run on Francisco Arcia's slow dribbler in the ninth.
Cardinals leadoff hitter Matt Carpenter gave his club an early advantage and posted his first multi-hit game of spring. He took Marlins starter David Phelps deep to open the bottom of the first, then extended the third with a two-out double.
Those were the only two hits Phelps allowed over his three-inning outing. Making his first start of spring, Phelps walked one batter and struck out five. He threw 47 pitches, 30 for strikes.
Phelps, who missed the final seven weeks of 2015 due to a stress fracture in his right forearm, is competing for a spot either in the rotation or bullpen. The Marlins announced on Sunday that Wei-Yin Chen will pitch Opening Day, and Jose Fernandez in the second game. Tom Koehler is lined up for the third spot, but that hasn't been officially set.
"It's my job to go out there and get outs," Phelps said. "When they tell me to pitch, I'm going to pitch. We've got the first two set. I assume Tommy has the No. 3, and it's just a matter of getting the last two set. ... If I did not face Matt Carpenter, I'd be alright. But my job is to go out there and get outs, whether it's in the first inning or seventh, eighth or 15th inning, whatever."
Opposing starter Mike Leake became the Cardinals' first pitcher to complete five innings this spring.
Leake scattered five hits and walked one but limited the Marlins to one run. That came in the third, which opened with Ichiro Suzuki being hit by a pitch and advancing to third on a Christian Yelich single. Suzuki then scored when Giancarlo Stanton grounded into a double play.
Leake, who threw 45 of his 69 pitches for strikes, notched four strikeouts.
"I think I used every pitch today," Leake said of working with catcher Yadier Molina. "I think it was pretty close to how we would do it in the season. We're not quite 100 percent there, but it's getting to the point where I'm starting to learn him, he's starting to learn me. I think it will get down to where we'll have to have a nice little talk before each game that way we're on the same page. I'm happy with where we are right now."
After Cardinals pinch-hitter Greg Garcia singled and scored in the fifth with the help of a Marlins error, Miami tied the game again with Derek Dietrich's sacrifice fly off reliever Seth Maness.
Up next for the Marlins:Jarred Cosart, making his case to be in the rotation, will start for the Marlins at 1:10 p.m. ET on Monday against the Mets at Port St. Lucie. It can be seen live on MLB.TV. New York is starting Jacob deGrom. Marcell Ozuna and Adeiny Hechavarria are among the regulars scheduled to make the trip.
Up next for the Cardinals: Lefty Marco Gonzales draws an unexpected start for the Cardinals on Monday after scheduled starter Jaime Garcia requested to get his work done in a Minor League game instead. Gonzales, who has allowed three earned runs on 12 hits in 7 2/3 innings this spring, will be opposed by Red Sox right-hander Clay Buchholz. First pitch for the final spring game between the Cardinals and Red Sox is slated for 12:05 p.m. CT and can be watched live on MLB.TV.