According to NFL Network, the deal is worth $20.4 million, with $4.5 million guaranteed via roster bonus.
Hopkins, who is playing this season on a one-year deal worth $3.1 million, was set to become an unrestricted free agent in March.
After winning the position battle during the preseason, the fourth-year player out of Texas started all 15 games for Cincinnati (1-14). The Bengals have locked up the top overall pick in the 2020 draft ahead of Sunday’s season finale against Cleveland (6-9).
In four seasons with the franchise, the former undrafted free agent has played in 45 games and made 36 total starts.